new file: b/binutils/binutils-2.28-GCCcore-7.1.0.eb

new file:   b/binutils/binutils-2.28.eb
	new file:   g/GCCcore/GCCcore-7.1.0.eb
	new file:   i/icc/icc-2017.4.196-GCC-7.1.0-2.28.eb
	new file:   i/iccifort/iccifort-2017.4.196-GCC-7.1.0-2.28.eb
	new file:   i/ifort/ifort-2017.4.196-GCC-7.1.0-2.28.eb
	new file:   i/iimpi/iimpi-2017.05-GCC-7.1.0-2.28.eb
	new file:   i/imkl/imkl-2017.3.196-iimpi-2017.05-GCC-7.1.0-2.28.eb
	new file:   i/impi/impi-2017.3.196-iccifort-2017.4.196-GCC-7.1.0-2.28.eb
	new file:   i/intel/intel-2017.05.eb
This commit is contained in:
Lukáš Krupčík 2017-05-22 09:32:49 +02:00
parent 7c988d66a6
commit e290a694eb
10 changed files with 296 additions and 0 deletions

View File

@ -0,0 +1,21 @@
name = 'binutils'
version = '2.28'
homepage = 'http://directory.fsf.org/project/binutils/'
description = "binutils: GNU binary utilities"
toolchain = {'name': 'GCCcore', 'version': '7.1.0'}
sources = [SOURCE_TAR_GZ]
source_urls = [GNU_SOURCE]
builddependencies = [
('flex', '2.6.3', '', True),
('Bison', '3.0.4', '', True),
# zlib required, but being linked in statically, so not a runtime dep
('zlib', '1.2.11', '', 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,19 @@
name = 'binutils'
version = '2.28'
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 = [
('flex', '2.6.3', '', True),
('Bison', '3.0.4', '', True),
# zlib required, but being linked in statically, so not a runtime dep
('zlib', '1.2.11', '', True),
]
moduleclass = 'tools'

View File

@ -0,0 +1,54 @@
easyblock = 'EB_GCC'
name = 'GCCcore'
version = '7.1.0'
homepage = 'http://gcc.gnu.org/'
description = """The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada,
as well as libraries for these languages (libstdc++, libgcj,...)."""
toolchain = {'name': 'dummy', 'version': ''}
mpfr_version = '3.1.5'
source_urls = [
'http://ftpmirror.gnu.org/gcc/gcc-%(version)s', # GCC auto-resolving HTTP mirror
'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
'http://gcc.cybermirror.org/infrastructure/', # HTTP mirror for GCC dependencies
'http://isl.gforge.inria.fr/', # original HTTP source for ISL
]
sources = [
'gcc-%(version)s.tar.bz2',
'gmp-6.1.2.tar.bz2',
'mpfr-%s.tar.bz2' % mpfr_version,
'mpc-1.0.3.tar.gz',
'isl-0.16.1.tar.bz2',
]
builddependencies = [
('M4', '1.4.18', '', True),
('binutils', '2.28', '', True),
]
patches = [
('mpfr-%s-allpatches-20161219.patch' % mpfr_version, '../mpfr-%s' % mpfr_version),
'GCCcore-6.2.0-fix-find-isl.patch',
]
checksums = [
'6bf56a2bca9dac9dbbf8e8d1036964a8', # gcc-7.1.0.tar.bz2
'8ddbb26dc3bd4e2302984debba1406a5', # gmp-6.1.2.tar.bz2
'b1d23a55588e3b2a13e3be66bc69fd8d', # mpfr-3.1.5.tar.gz
'd6a1d5f8ddea3abd2cc3e98f58352d26', # mpc-1.0.3.tar.gz
'ac1f25a0677912952718a51f5bc20f32', # isl-0.16.1.tar.bz2
]
languages = ['c', 'c++', 'fortran']
withisl = True
moduleclass = 'compiler'

View File

@ -0,0 +1,33 @@
# This is an easyconfig file for EasyBuild, see http://hpcugent.github.io/easybuild
name = 'icc'
version = '2017.4.196'
homepage = 'http://software.intel.com/en-us/intel-compilers/'
description = "C and C++ compiler from Intel"
toolchain = {'name': 'dummy', 'version': 'dummy'}
sources = ['parallel_studio_xe_%(version_major)s_update%(version_minor)s_composer_edition_for_cpp.tgz']
checksums = ['6502a5763c2e2ec5755f7e4a3b5ce678']
gccver = '7.1.0'
binutilsver = '2.28'
versionsuffix = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [
('GCCcore', gccver),
('binutils', binutilsver, '', ('GCCcore', gccver)),
]
# list of regex for components to install
# full list of components can be obtained from pset/mediaconfig.xml in unpacked sources
# cfr. https://software.intel.com/en-us/articles/intel-composer-xe-2015-silent-installation-guide
components = ['intel-comp', 'intel-ccomp', 'intel-icc', 'intel-openmp', 'intel-ipsc?_', 'intel-gdb(?!.*mic)']
dontcreateinstalldir = 'True'
license_file = '/apps/licenses/intel/license.lic'
moduleclass = 'compiler'

View File

@ -0,0 +1,19 @@
# This is an easyconfig file for EasyBuild, see http://hpcugent.github.io/easybuild
easyblock = 'Toolchain'
name = 'iccifort'
version = '2017.4.196'
versionsuffix = '-GCC-7.1.0-2.28'
homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-compiler/'
description = """Intel Cluster Toolkit Compiler Edition provides Intel C,C++ and fortran compilers, Intel MPI and
Intel MKL"""
toolchain = {'name': 'dummy', 'version': 'dummy'}
dependencies = [
('icc', version, versionsuffix),
('ifort', version, versionsuffix),
]
moduleclass = 'toolchain'

View File

@ -0,0 +1,36 @@
# This is an easyconfig file for EasyBuild, see http://hpcugent.github.io/easybuild
name = 'ifort'
version = '2017.4.196'
homepage = 'http://software.intel.com/en-us/intel-compilers/'
description = "Fortran compiler from Intel"
toolchain = {'name': 'dummy', 'version': 'dummy'}
sources = ['parallel_studio_xe_%(version_major)s_update%(version_minor)s_composer_edition_for_fortran.tgz']
checksums = ['c7670e3fd211ac2c48d5d50e72b26cda']
# remove dependency on intel-mpi-rt-mic
patches = ['ifort_2017_no_mpi_mic_dependency.patch']
gccver = '7.1.0'
binutilsver = '2.28'
versionsuffix = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [
('GCCcore', gccver),
('binutils', binutilsver, '', ('GCCcore', gccver)),
]
# list of regex for components to install
# full list of components can be obtained from pset/mediaconfig.xml in unpacked sources
# cfr. https://software.intel.com/en-us/articles/intel-composer-xe-2015-silent-installation-guide
components = ['intel-comp', 'intel-fcomp', 'intel-ifort', 'intel-openmp', 'intel-ipsf?_', 'intel-gdb(?!.*mic)']
dontcreateinstalldir = 'True'
license_file = '/apps/licenses/intel/license.lic'
moduleclass = 'compiler'

View File

@ -0,0 +1,20 @@
# This is an easyconfig file for EasyBuild, see http://hpcugent.github.io/easybuild
easyblock = "Toolchain"
name = 'iimpi'
version = '2017.05'
versionsuffix = '-GCC-7.1.0-2.28'
homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-compiler/'
description = """Intel C/C++ and Fortran compilers, alongside Intel MPI."""
toolchain = {'name': 'dummy', 'version': 'dummy'}
compver = '2017.4.196'
dependencies = [
('icc', compver, versionsuffix),
('ifort', compver, versionsuffix),
('impi', '2017.3.196', '', ('iccifort', '%s%s' % (compver, versionsuffix))),
]
moduleclass = 'toolchain'

View File

@ -0,0 +1,36 @@
# This is an easyconfig file for EasyBuild, see http://hpcugent.github.io/easybuild
name = 'imkl'
version = '2017.3.196'
homepage = 'http://software.intel.com/en-us/intel-mkl/'
description = """Intel Math Kernel Library is a library of highly optimized,
extensively threaded math routines for science, engineering, and financial
applications that require maximum performance. Core math functions include
BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more."""
toolchain = {'name': 'iimpi', 'version': '2017.05-GCC-7.1.0-2.28'}
sources = ['l_mkl_%(version)s.tgz']
checksums = ['4a2eb4bee789391d9c07d7c348a80702']
dontcreateinstalldir = 'True'
interfaces = True
postinstallcmds = [
# extract the examples
'tar xvzf %(installdir)s/mkl/examples/examples_cluster_c.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_cluster_f.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_core_c.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_core_f.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_f95.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_mic_f.tgz -C %(installdir)s/mkl/examples/',
'tar xvzf %(installdir)s/mkl/examples/examples_mic_c.tgz -C %(installdir)s/mkl/examples/',
]
modextravars = {
'MKL_EXAMPLES': '%(installdir)s/mkl/examples/',
}
moduleclass = 'numlib'

View File

@ -0,0 +1,33 @@
# This is an easyconfig file for EasyBuild, see http://hpcugent.github.io/easybuild
name = 'impi'
version = '2017.3.196'
homepage = 'http://software.intel.com/en-us/intel-mpi-library/'
description = """The Intel(R) MPI Library for Linux* OS is a multi-fabric message
passing library based on ANL MPICH2 and OSU MVAPICH2. The Intel MPI Library for
Linux OS implements the Message Passing Interface, version 2 (MPI-2) specification."""
toolchain = {'name': 'iccifort', 'version': '2017.4.196-GCC-7.1.0-2.28'}
sources = ['l_mpi_%(version)s.tgz']
checksums = ['721ecd5f6afa385e038777e5b5361dfb']
dontcreateinstalldir = 'True'
components = ['intel-mpi', 'intel-psxe', 'intel-imb']
# set up all the mpi commands to default to intel compilers
# set_mpi_wrappers_all = 'True'
postinstallcmds = [
'ln -s %(installdir)s/lib64/libmpi.so %(installdir)s/lib64/libmpich.so',
'ln -s %(installdir)s/lib64/libmpigc4.so %(installdir)s/lib64/libmpichcxx.so',
'ln -s %(installdir)s/lib64/libmpigf.so %(installdir)s/lib64/libfmpich.so',
'ln -s %(installdir)s/lib64/libmpigf.so %(installdir)s/lib64/libmpichf90.so',
'ln -s %(installdir)s/lib64/libmpi.so %(installdir)s/lib64/libmpl.so',
'ln -s %(installdir)s/lib64/libmpi.so %(installdir)s/lib64/libopa.so'
]
moduleclass = 'mpi'

25
i/intel/intel-2017.05.eb Normal file
View File

@ -0,0 +1,25 @@
easyblock = 'Toolchain'
name = 'intel'
version = '2017.05'
homepage = 'http://software.intel.com/en-us/intel-cluster-toolkit-compiler/'
description = """Intel Cluster Toolkit Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MPI &
Intel MKL."""
toolchain = {'name': 'dummy', 'version': 'dummy'}
compver = '2017.4.196'
gccver = '7.1.0'
binutilsver = '2.28'
gccsuff = '-GCC-%s-%s' % (gccver, binutilsver)
dependencies = [
('GCCcore', gccver),
('binutils', binutilsver, '-GCCcore-%s' % gccver),
('icc', compver, gccsuff),
('ifort', compver, gccsuff),
('impi', '2017.3.196', '', ('iccifort', '%s%s' % (compver, gccsuff))),
('imkl', '2017.3.196', '', ('iimpi', version + gccsuff)),
]
moduleclass = 'toolchain'