Browse Source

New netCDF toolchain in thread-safe mode

Pierre-Yves Barriat 6 years ago
parent
commit
6abf038dc4

+ 33 - 0
intel-2018/CDO-1.9.2-intel-2018.eb

@@ -0,0 +1,33 @@
+easyblock = 'ConfigureMake'
+
+name = 'CDO'
+version = '1.9.2'
+
+homepage = 'https://code.zmaw.de/projects/cdo'
+description = """CDO is a collection of command line Operators to manipulate and analyse Climate and NWP model Data."""
+
+toolchain = {'name': 'intel', 'version': '2018'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+sources = [SOURCELOWER_TAR_GZ]
+source_urls = ['https://code.mpimet.mpg.de/attachments/download/16035/']
+checksums = ['d1c5092167034a48e4b8ada24cf78a1d4b84e364ffbb08b9ca70d13f428f300c']
+
+dependencies = [
+    ('HDF5', '1.10.1'),
+    ('netCDF', '4.6.0'),
+    ('YAXT', '0.5.1'),
+    ('grib_api', '1.26.1'),
+]
+
+configopts = "--with-hdf5=$EBROOTHDF5 --with-netcdf=$EBROOTNETCDF --with-grib_api=$EBROOTGRIB_API"
+
+# fix for linking issues with HDF5 libraries for libcdi, should link with both -lnetcdf and -lhdf5_hl -lhdf5
+prebuildopts = "find libcdi -name Makefile | xargs sed -i 's/-lnetcdf -lnetcdf/-lnetcdf -lhdf5_hl -lhdf5/g' && "
+
+sanity_check_paths = {
+    'files': ['bin/cdo'],
+    'dirs': [],
+}
+
+moduleclass = 'data'

+ 27 - 0
intel-2018/HDF5-1.10.1-intel-2018.eb

@@ -0,0 +1,27 @@
+name = 'HDF5'
+version = '1.10.1'
+
+homepage = 'https://support.hdfgroup.org/HDF5/'
+description = """HDF5 is a data model, library, and file format for storing and managing data.
+ It supports an unlimited variety of datatypes, and is designed for flexible
+ and efficient I/O and for high volume and complex data."""
+
+toolchain = {'name': 'intel', 'version': '2018'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src']
+sources = [SOURCELOWER_TAR_GZ]
+patches = ['HDF5-%(version)s-mpiifort-2018.0.128-fix.patch']
+checksums = [
+    '048a9d149fb99aaa1680a712963f5a78e9c43b588d0e79d55e06760ec377c172',  # hdf5-1.10.1.tar.gz
+    'f1494f42ce547572e026d3eb5bdc93311204946fe9d00163294371116e5557e7',  # HDF5-1.10.1-mpiifort-2018.0.128-fix.patch
+]
+
+configopts = "--enable-threadsafe --with-pthread"
+
+dependencies = [
+    ('zlib', '1.2.11'),
+    ('Szip', '2.1'),
+]
+
+moduleclass = 'data'

+ 36 - 0
intel-2018/NCO-4.7.1-intel-2018.eb

@@ -0,0 +1,36 @@
+easyblock = 'ConfigureMake'
+
+name = 'NCO'
+version = '4.7.1'
+
+homepage = "http://nco.sourceforge.net"
+description = """manipulates and analyzes data stored in netCDF-accessible formats, including DAP, HDF4, and HDF5"""
+
+toolchain = {'name': 'intel', 'version': '2018'}
+
+source_urls = ['http://nco.sourceforge.net/src']
+sources = [SOURCELOWER_TAR_GZ]
+checksums = ['3e350658117e12f0f102de0c3d1ad1756b7ebf7f43821f3d2044b4659633938b']
+
+builddependencies = [
+    ('Bison', '3.0.4'),
+    ('flex', '2.6.4'),
+]
+
+dependencies = [
+    ('UDUNITS', '2.2.24'),
+    ('expat', '2.2.4'),
+    ('ANTLR', '2.7.7'),
+    ('libdap', '3.19.1'),
+    ('GSL', '2.3'),
+    ('netCDF', '4.6.0'),
+]
+
+sanity_check_paths = {
+    'files': ['bin/nc%s' % x for x in ('ap', 'ap2', 'atted', 'bo', 'diff', 'ea', 'ecat', 'es',
+                                       'flint', 'ks', 'pdq', 'ra', 'rcat', 'rename', 'wa')] +
+             ['lib/libnco.a', 'lib/libnco.%s' % SHLIB_EXT, 'lib/libnco_c++.a', 'lib/libnco_c++.%s' % SHLIB_EXT],
+    'dirs': ['include'],
+}
+
+moduleclass = 'tools'

+ 32 - 0
intel-2018/libdap-3.19.1-intel-2018.eb

@@ -0,0 +1,32 @@
+easyblock = 'ConfigureMake'
+
+name = 'libdap'
+version = '3.19.1'
+
+homepage = 'http://opendap.org/download/libdap'
+description = """A C++ SDK which contains an implementation of DAP 2.0
+ and the development versions of DAP3, up to 3.4.
+ This includes both Client- and Server-side support classes."""
+
+toolchain = {'name': 'intel', 'version': '2018'}
+
+source_urls = ['http://www.opendap.org/pub/source/']
+sources = [SOURCE_TAR_GZ]
+
+builddependencies = [
+    ('Bison', '3.0.4'),
+    ('flex', '2.6.4'),
+]
+
+dependencies = [
+    ('cURL', '7.58.0'),
+    ('libxml2', '2.9.4'),
+    ('LibUUID', '1.0.3'),
+]
+
+sanity_check_paths = {
+    'files': ['bin/getdap', 'bin/getdap4', 'bin/dap-config', 'lib/libdap.a', 'lib/libdap.%s' % SHLIB_EXT],
+    'dirs': ['include'],
+}
+
+moduleclass = 'lib'

+ 1 - 1
intel-2018/ncview-2.1.7-intel-2018.eb

@@ -30,7 +30,7 @@ configopts = "--with-udunits2_incdir=$EBROOTUDUNITS/include --with-udunits2_libd
 configopts += "--with-nc-config=$EBROOTNETCDF/bin/nc-config"
 
 dependencies = [
-    ('netCDF', '4.4.1.1'),
+    ('netCDF', '4.6.0'),
     ('netCDF-Fortran', '4.4.4'),
     ('UDUNITS', '2.2.24'),
     ('X11', '20170805'),

+ 34 - 0
intel-2018/netCDF-4.6.0-intel-2018.eb

@@ -0,0 +1,34 @@
+name = 'netCDF'
+version = '4.6.0'
+
+homepage = 'http://www.unidata.ucar.edu/software/netcdf/'
+description = """NetCDF (network Common Data Form) is a set of software libraries 
+ and machine-independent data formats that support the creation, access, and sharing of array-oriented 
+ scientific data."""
+
+toolchain = {'name': 'intel', 'version': '2018'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+sources = ['v%(version)s.tar.gz']
+source_urls = ['https://github.com/Unidata/netcdf-c/archive/']
+checksums = ['6d740356399aac12290650325a05aec2fe92c1905df10761b2b0100994197725']
+
+dependencies = [
+    ('HDF5', '1.10.1'),
+    ('cURL', '7.58.0'),
+    ('Szip', '2.1.1'),
+]
+
+builddependencies = [
+    ('Autotools', '20170619'),
+    ('CMake', '3.10.2'),
+    ('Doxygen', '1.8.13'),
+]
+
+# make sure both static and shared libs are built
+configopts = [
+    "-DBUILD_SHARED_LIBS=OFF ",
+    "-DBUILD_SHARED_LIBS=ON ",
+]
+
+moduleclass = 'data'

+ 1 - 1
intel-2018/netCDF-Fortran-4.4.4-intel-2018.eb

@@ -12,6 +12,6 @@ toolchainopts = {'pic': True}
 source_urls = ['https://github.com/Unidata/netcdf-fortran/archive/']
 sources = ['v%(version)s.tar.gz']
 
-dependencies = [('netCDF', '4.4.1.1')]
+dependencies = [('netCDF', '4.6.0')]
 
 moduleclass = 'data'