new file: b/Bison/Bison-2.7.eb

new file:   b/binutils/binutils-2.25-GCCcore-4.9.3.eb
	new file:   b/binutils/binutils-2.25.eb
	new file:   b/byacc/byacc-20120526.eb
	modified:   f/FFTW/FFTW-3.3.5-gompi-2016a.eb
	modified:   f/flex/flex-2.5.39.eb
	new file:   f/foss/foss-2016a.eb
	modified:   g/GCCcore/GCCcore-4.9.3.eb
	modified:   g/GCCcore/GCCcore-5.4.0.eb
	modified:   g/GCCcore/GCCcore-8.1.0.eb
	modified:   g/GROMACS/GROMACS-5.1.4-foss-2016a-hybrid-single-PLUMED.eb
	new file:   g/gompi/gompi-2016a.eb
	new file:   h/hwloc/hwloc-1.11.7-GCC-4.9.3-2.25.eb
	new file:   i/icc/icc-2018.1.163-GCC-6.3.0-2.27.eb
	new file:   i/iccifort/iccifort-2018.1.163-GCC-6.3.0-2.27.eb
	new file:   i/ifort/ifort-2018.1.163-GCC-6.3.0-2.27.eb
	modified:   i/iimpi/iimpi-2018a.eb
	new file:   i/impi/impi-2018.1.163-iccifort-2018.1.163-GCC-6.3.0-2.27.eb
	modified:   i/intel/intel-2018a.eb
	modified:   l/libarchive/libarchive-3.3.2.eb
	new file:   l/libmatheval/libmatheval-1.1.8.eb
	new file:   n/numactl/numactl-2.0.11-GCC-4.9.3-2.25.eb
	modified:   n/numactl/numactl-2.0.11-GCC-6.3.0-2.27.eb
	modified:   o/ORCA/ORCA-4.0.1.2.eb
	modified:   o/OpenMPI/OpenMPI-1.10.2-GCC-4.9.3-2.25.eb
	new file:   o/OpenMPI/OpenMPI-1.10.7-GCC-4.9.3-2.25.eb
	modified:   o/OpenMPI/OpenMPI-2.0.1-iccifort-2017.1.132-GCC-6.3.0-2.27.eb
	deleted:    i/icc/icc-2018.1.163-GCC-6.4.0-2.28.eb
	deleted:    i/iccifort/iccifort-2018.1.163-GCC-6.4.0-2.28.eb
	deleted:    i/ifort/ifort-2018.1.163-GCC-6.4.0-2.28.eb
	deleted:    i/impi/impi-2018.1.163-iccifort-2018.1.163-GCC-6.4.0-2.28.eb
This commit is contained in:
Lukáš Krupčík 2018-12-10 14:43:59 +01:00
parent 41ff79b13e
commit 6d3e1102d5
27 changed files with 364 additions and 27 deletions

24
b/Bison/Bison-2.7.eb Normal file

@ -0,0 +1,24 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'Bison'
version = '2.7'
homepage = 'http://www.gnu.org/software/bison'
description = """Bison is a general-purpose parser generator that converts an annotated context-free grammar
into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables."""
toolchain = {'name': 'dummy', 'version': ''}
sources = [SOURCELOWER_TAR_GZ]
source_urls = [GNU_SOURCE]
builddependencies = [('M4', '1.4.18')]
sanity_check_paths = {
'files': ["bin/%s" % x for x in ["bison", "yacc"]] + ["lib/liby.a"],
'dirs': [],
}
moduleclass = 'lang'

@ -0,0 +1,24 @@
# IT4Innovations 2018
name = 'binutils'
version = '2.25'
homepage = 'http://directory.fsf.org/project/binutils/'
description = "binutils: GNU binary utilities"
toolchain = {'name': 'GCCcore', 'version': '4.9.3'}
sources = [SOURCE_TAR_GZ]
source_urls = [GNU_SOURCE]
builddependencies = [
('M4', '1.4.18', '', True),
('flex', '2.5.39', '', True),
('Bison', '3.0.4', '', True),
# zlib required, but being linked in statically, so not a runtime dep
('zlib', '1.2.8', '', True),
# use same binutils version that was used when building GCC toolchain, to 'bootstrap' this binutils
('binutils', version, '', True)
]
moduleclass = 'tools'

@ -0,0 +1,22 @@
# IT4Innovations 2018
name = 'binutils'
version = '2.25'
homepage = 'http://directory.fsf.org/project/binutils/'
description = "binutils: GNU binary utilities"
toolchain = {'name': 'dummy', 'version': ''}
sources = [SOURCE_TAR_GZ]
source_urls = [GNU_SOURCE]
builddependencies = [
('M4', '1.4.18'),
('flex', '2.5.39'),
('Bison', '3.0.4'),
# zlib required, but being linked in statically, so not a runtime dep
('zlib', '1.2.8'),
]
moduleclass = 'tools'

23
b/byacc/byacc-20120526.eb Normal file

@ -0,0 +1,23 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'byacc'
version = '20120526'
homepage = 'http://invisible-island.net/byacc/byacc.html'
description = """Berkeley Yacc (byacc) is generally conceded to be the best yacc variant available.
In contrast to bison, it is written to avoid dependencies upon a particular compiler."""
toolchain = {'name': 'dummy', 'version': ''}
sources = [SOURCELOWER_TGZ]
source_urls = ['https://invisible-mirror.net/archives/byacc/']
sanity_check_paths = {
'files': ["bin/yacc"],
'dirs': []
}
moduleclass = 'lang'

@ -1,3 +1,5 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'FFTW'

@ -1,3 +1,5 @@
# IT4Innovations 2018
name = 'flex'
version = '2.5.39'
@ -11,6 +13,6 @@ toolchainopts = {'pic': True}
sources = [SOURCELOWER_TAR_GZ]
source_urls = ['http://prdownloads.sourceforge.net/%(namelower)s']
builddependencies = [('M4', '1.4.17')]
builddependencies = [('M4', '1.4.18')]
moduleclass = 'lang'

37
f/foss/foss-2016a.eb Normal file

@ -0,0 +1,37 @@
# IT4Innovations 2018
easyblock = 'Toolchain'
name = 'foss'
version = '2016a'
homepage = '(none)'
description = """GNU Compiler Collection (GCC) based compiler toolchain, including
OpenMPI for MPI support, OpenBLAS (BLAS and LAPACK support), FFTW and ScaLAPACK."""
toolchain = {'name': 'dummy', 'version': 'dummy'}
gccver = '4.9.3-2.25'
blaslib = 'OpenBLAS'
blasver = '0.2.15'
blas = '%s-%s' % (blaslib, blasver)
blassuff = '-LAPACK-3.6.0'
# toolchain used to build foss dependencies
comp_mpi_tc_name = 'gompi'
comp_mpi_tc = (comp_mpi_tc_name, version)
# compiler toolchain depencies
# we need GCC and OpenMPI as explicit dependencies instead of gompi toolchain
# because of toolchain preperation functions
# For binutils, stick to http://wiki.osdev.org/Cross-Compiler_Successful_Builds
dependencies = [
('GCC', gccver),
('OpenMPI', '1.10.7', '', ('GCC', gccver)),
(blaslib, blasver, blassuff, ('GCC', gccver)),
('FFTW', '3.3.5', '', comp_mpi_tc),
('ScaLAPACK', '2.0.2', '-%s%s' % (blas, blassuff), comp_mpi_tc),
]
moduleclass = 'toolchain'

@ -1,3 +1,5 @@
# IT4Innovations
easyblock = 'EB_GCC'
name = 'GCCcore'
@ -16,6 +18,7 @@ source_urls = [
'http://ftpmirror.gnu.org/gmp', # idem for GMP
'http://ftpmirror.gnu.org/mpfr', # idem for MPFR
'http://www.multiprecision.org/mpc/download', # MPC official
'https://ftp.gnu.org/gnu/mpc/',
]
sources = [
'gcc-%(version)s.tar.bz2',

@ -17,7 +17,8 @@ source_urls = [
'http://ftpmirror.gnu.org/gmp', # idem for GMP
'http://ftpmirror.gnu.org/mpfr', # idem for MPFR
'http://www.multiprecision.org/mpc/download', # MPC official
'ftp://gcc.gnu.org/pub/gcc/infrastructure/', # GCC dependencies
#'ftp://gcc.gnu.org/pub/gcc/infrastructure/', # GCC dependencies
'https://mirror.math.princeton.edu/pub/gcc/infrastructure/',
'http://gcc.cybermirror.org/infrastructure/', # HTTP mirror for GCC dependencies
]
@ -37,7 +38,7 @@ patches = [
builddependencies = [
('binutils', '2.26'),
('M4', '1.4.17'),
('M4', '1.4.18'),
]
checksums = [

@ -46,7 +46,6 @@ checksums = [
builddependencies = [
('M4', '1.4.18'),
('binutils', '2.30'),
('GCCcore', '6.3.0'),
]
languages = ['c', 'c++', 'fortran']

@ -1,6 +1,8 @@
# IT4Innovations 2018
name = 'GROMACS'
version = '5.1.4'
versionsuffix = '-hybrid-single-PLUMED-test'
versionsuffix = '-hybrid-single-PLUMED'
homepage = 'http://www.gromacs.org'
description = """GROMACS is a versatile package to perform molecular dynamics,

22
g/gompi/gompi-2016a.eb Normal file

@ -0,0 +1,22 @@
# IT4Innovations 2018
easyblock = "Toolchain"
name = 'gompi'
version = '2016a'
homepage = '(none)'
description = """GNU Compiler Collection (GCC) based compiler toolchain,
including OpenMPI for MPI support."""
toolchain = {'name': 'dummy', 'version': 'dummy'}
gccver = '4.9.3-2.25'
# compiler toolchain dependencies
dependencies = [
('GCC', gccver), # includes both GCC 4.9.3 and binutils 2.25
('OpenMPI', '1.10.7', '', ('GCC', gccver)),
]
moduleclass = 'toolchain'

@ -0,0 +1,28 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'hwloc'
version = '1.11.7'
homepage = 'http://www.open-mpi.org/projects/hwloc/'
description = """The Portable Hardware Locality (hwloc) software package provides a portable abstraction
(across OS, versions, architectures, ...) of the hierarchical topology of modern architectures, including
NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various
system attributes such as cache and memory information as well as the locality of I/O devices such as
network interfaces, InfiniBand HCAs or GPUs. It primarily aims at helping applications with gathering
information about modern computing hardware so as to exploit it accordingly and efficiently."""
toolchain = {'name': 'GCC', 'version': '4.9.3-2.25'}
source_urls = [
'http://www.open-mpi.org/software/hwloc/v%(version_major_minor)s/downloads/']
sources = [SOURCE_TAR_GZ]
dependencies = [
('numactl', '2.0.11', '', ('GCCcore', '4.9.3')),
]
configopts = "--enable-libnuma=$EBROOTNUMACTL"
moduleclass = 'system'

@ -1,3 +1,5 @@
# IT4Innovations 2018
name = 'icc'
version = '2018.1.163'
@ -11,8 +13,8 @@ sources = [
checksums = ['ddbfdf88eed095817650ec0a226ef3b9c07c41c855d258e80eaade5173fedb6e']
gccver = '6.4.0'
binutilsver = '2.28'
gccver = '6.3.0'
binutilsver = '2.27'
versionsuffix = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [

@ -2,7 +2,7 @@ easyblock = 'Toolchain'
name = 'iccifort'
version = '2018.1.163'
versionsuffix = '-GCC-6.4.0-2.28'
versionsuffix = '-GCC-6.3.0-2.27'
homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-compiler/'
description = "Intel C, C++ & Fortran compilers"

@ -1,3 +1,5 @@
# IT4Innovations 2018
name = 'ifort'
version = '2018.1.163'
@ -16,8 +18,8 @@ checksums = [
# ifort_2018.1.163_no_mpi_mic_dependency.patch
]
gccver = '6.4.0'
binutilsver = '2.28'
gccver = '6.3.0'
binutilsver = '2.27'
versionsuffix = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [

@ -9,7 +9,7 @@ description = """Intel C/C++ and Fortran compilers, alongside Intel MPI."""
toolchain = {'name': 'dummy', 'version': ''}
compver = '2018.1.163'
suff = '-GCC-6.4.0-2.28'
suff = '-GCC-6.3.0-2.27'
dependencies = [
('icc', compver, suff),
('ifort', compver, suff),

@ -1,10 +1,12 @@
# IT4Innovations 2018
name = 'impi'
version = '2018.1.163'
homepage = 'http://software.intel.com/en-us/intel-mpi-library/'
description = "Intel MPI Library, compatible with MPICH ABI"
toolchain = {'name': 'iccifort', 'version': '2018.1.163-GCC-6.4.0-2.28'}
toolchain = {'name': 'iccifort', 'version': '2018.1.163-GCC-6.3.0-2.27'}
sources = ['l_mpi_%(version)s.tgz']

@ -9,8 +9,8 @@ description = "Compiler toolchain including Intel compilers, Intel MPI and Intel
toolchain = {'name': 'dummy', 'version': ''}
compver = '2018.1.163'
gccver = '6.4.0'
binutilsver = '2.28'
gccver = '6.3.0'
binutilsver = '2.27'
gccsuff = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [
('GCCcore', gccver),

@ -15,7 +15,7 @@ source_urls = ['https://github.com/libarchive/libarchive/archive/']
sources = ['v3.3.2.tar.gz']
builddependencies = [
('CMake', '3.9.1'),
('CMake', '3.13.1'),
]
dependencies = [

@ -0,0 +1,36 @@
# IT4Innovations 2017
easyblock = 'ConfigureMake'
name = 'libmatheval'
version = '1.1.8'
homepage = 'http://www.gnu.org/software/libmatheval/'
description = """GNU libmatheval is a library (callable from C and Fortran) to parse
and evaluate symbolic expressions input as text."""
toolchain = {'name': 'dummy', 'version': ''}
toolchainopts = {'pic': True}
sources = [SOURCELOWER_TAR_GZ]
source_urls = [GNU_SOURCE]
dependencies = [
('flex', '2.6.4'),
('Bison', '3.0.4'),
('byacc', '20120526'),
('guile', '1.8.8'),
]
configopts = '--with-pic '
# fix for guile-config being broken because shebang line contains full
# path to bin/guile
configopts += 'GUILE_CONFIG="$EBROOTGUILE/bin/guile -e main -s $EBROOTGUILE/bin/guile-config"'
sanity_check_paths = {
'files': ['lib/libmatheval.a', 'include/matheval.h'],
'dirs': [],
}
moduleclass = 'lib'

@ -0,0 +1,28 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'numactl'
version = '2.0.11'
homepage = 'http://oss.sgi.com/projects/libnuma/'
description = """The numactl program allows you to run your application program on specific cpu's and memory nodes.
It does this by supplying a NUMA memory policy to the operating system before running your program.
The libnuma library provides convenient ways for you to add NUMA memory policies into your own program."""
toolchain = {'name': 'GCC', 'version': '4.9.3-2.25'}
source_urls = ['https://github.com/numactl/numactl/archive/']
sources = ['v%(version)s.tar.gz']
checksums = ['3e099a59b2c527bcdbddd34e1952ca87462d2cef4c93da9b0bc03f02903f7089']
builddependencies = [('Autotools', '20150215', '', True)]
preconfigopts = "./autogen.sh && "
sanity_check_paths = {
'files': ['bin/numactl', 'bin/numastat', 'lib/libnuma.%s' % SHLIB_EXT, 'lib/libnuma.a'],
'dirs': ['share/man', 'include']
}
moduleclass = 'tools'

@ -15,7 +15,6 @@ toolchainopts = {'pic': True}
source_urls = ['https://github.com/numactl/numactl/archive/']
sources = [SOURCE_TAR_GZ]
checksums = ['3e099a59b2c527bcdbddd34e1952ca87462d2cef4c93da9b0bc03f02903f7089']
preconfigopts = "./autogen.sh && "

@ -27,11 +27,7 @@ sanity_check_paths = {
['orca_%s' % x for x in ['2mkl', 'asa', 'chelpg', 'ciprep', 'eca', 'ecplib',
'euler', 'fci', 'fitpes', 'gstep', 'loc', 'mapspc',
'md', 'mergefrag', 'ndoint', 'numfreq', 'plot',
<< << << < HEAD
'pltvib', 'pop', 'rel', 'vib', 'vpot']],
== == == =
'pltvib', 'pop', 'rel', 'vib', 'vpot']],
>>>>>> > 96f1245aa28a346d2bdb7f950751af4e8748184f
'dirs': [],
}

@ -1,7 +1,9 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'OpenMPI'
version = '1.10.2'
version = '1.10.7'
homepage = 'http://www.open-mpi.org/'
description = """The Open MPI Project is an open source MPI-2 implementation."""
@ -12,10 +14,10 @@ sources = [SOURCELOWER_TAR_GZ]
source_urls = [
'http://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
dependencies = [('hwloc', '1.11.2')]
dependencies = [('hwloc', '1.11.7')]
builddependencies = [
('Java', '1.8.0_51', '', True)
('Java', '1.8.0_121', '', True)
]
configopts = '--with-threads=posix --enable-shared --enable-mpi-thread-multiple --with-verbs '
@ -31,7 +33,7 @@ configopts += '--enable-mpi-java ' # Java support RT#4090
preconfigopts = 'export LIBS="-ldl" && '
# needed for --with-verbs
osdependencies = [('libibverbs-dev', 'libibverbs-devel')]
osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')]
libs = [
"mpi_cxx",
@ -66,4 +68,8 @@ sanity_check_paths = {
'dirs': ["include/openmpi/ompi/mpi/cxx"],
}
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx4_0',
'OMPI_MCA_oob_tcp_if_include': '10.0.0.0/8',
}
moduleclass = 'mpi'

@ -0,0 +1,75 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'OpenMPI'
version = '1.10.7'
homepage = 'http://www.open-mpi.org/'
description = """The Open MPI Project is an open source MPI-2 implementation."""
toolchain = {'name': 'GCC', 'version': '4.9.3-2.25'}
sources = [SOURCELOWER_TAR_GZ]
source_urls = [
'http://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
dependencies = [('hwloc', '1.11.7')]
builddependencies = [
('Java', '1.8.0_121', '', True)
]
configopts = '--with-threads=posix --enable-shared --enable-mpi-thread-multiple --with-verbs '
# suppress failure modes in relation to mpirun path
configopts += '--enable-mpirun-prefix-by-default '
configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support
# statically link component, don't do dynamic loading
configopts += '--disable-dlopen '
configopts += '--with-tm=/opt/pbs/default ' # Enable PBS
configopts += '--enable-mpi-java ' # Java support RT#4090
# for PBS Pro 13
preconfigopts = 'export LIBS="-ldl" && '
# needed for --with-verbs
osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')]
libs = [
"mpi_cxx",
"mpi_mpifh",
"mpi",
"ompitrace",
"open-pal",
"open-rte",
"vt",
"vt-hyb",
"vt-mpi",
"vt-mpi-unify"]
sanity_check_paths = {
'files': [
"bin/%s" %
binfile for binfile in [
"ompi_info",
"opal_wrapper",
"orterun"]] +
[
"lib/lib%s.%s" %
(libfile,
SHLIB_EXT) for libfile in libs] +
[
"include/%s.h" %
x for x in [
"mpi-ext",
"mpif-config",
"mpif",
"mpi",
"mpi_portable_platform"]],
'dirs': ["include/openmpi/ompi/mpi/cxx"],
}
modextravars = {'OMPI_MCA_btl_openib_if_include': 'mlx4_0',
'OMPI_MCA_oob_tcp_if_include': '10.0.0.0/8',
}
moduleclass = 'mpi'

@ -1,3 +1,5 @@
# IT4Innovations 2018
easyblock = 'ConfigureMake'
name = 'OpenMPI'
@ -24,7 +26,8 @@ configopts = '--with-threads=posix --enable-shared --enable-mpi-thread-multiple
configopts += '--enable-mpirun-prefix-by-default '
configopts += '--with-hwloc=$EBROOTHWLOC ' # hwloc support
# statically link component, don't do dynamic loading
configopts += '--disable-dlopen '
# configopts += '--disable-dlopen ' # dont disable dlopen!
# https://github.com/open-mpi/ompi/issues/3630
configopts += '--with-tm=/opt/pbs/default ' # Enable PBS
configopts += '--enable-mpi-java ' # Java support RT#4090
@ -32,8 +35,7 @@ configopts += '--enable-mpi-java ' # Java support RT#4090
preconfigopts = 'export LIBS="-ldl" && '
# needed for --with-verbs
osdependencies = [('libibverbs-dev', 'libibverbs-devel'), ]
osdependencies = [('libibverbs-dev', 'libibverbs-devel', 'rdma-core-devel')]
libs = [
"mpi_cxx",
"mpi_mpifh",