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
View 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'

View File

@ -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'

View File

@ -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
View 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'

View File

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

View File

@ -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
View 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'

View File

@ -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',

View File

@ -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 = [

View File

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

View File

@ -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
View 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'

View File

@ -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'

View File

@ -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 = [

View File

@ -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"

View File

@ -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 = [

View File

@ -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),

View File

@ -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']

View File

@ -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),

View File

@ -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 = [

View File

@ -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'

View File

@ -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'

View File

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

View File

@ -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': [],
}

View File

@ -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'

View File

@ -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'

View File

@ -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",