Skip to content
Snippets Groups Projects
Commit 8d90c450 authored by Sebastian Lührs's avatar Sebastian Lührs
Browse files

add netCDF to npsmpic toolchain

parent 78c69b5d
No related branches found
No related tags found
No related merge requests found
...@@ -88,8 +88,8 @@ class Nvhpc(Compiler): ...@@ -88,8 +88,8 @@ class Nvhpc(Compiler):
# C++ compiler command is version-dependent, see below # C++ compiler command is version-dependent, see below
COMPILER_CXX = 'nvc++' COMPILER_CXX = 'nvc++'
# COMPILER_F77 = 'pgf77' COMPILER_F77 = 'nvfortran'
# COMPILER_F90 = 'pgf90' COMPILER_F90 = 'nvfortran'
COMPILER_FC = 'nvfortran' COMPILER_FC = 'nvfortran'
LINKER_TOGGLE_STATIC_DYNAMIC = { LINKER_TOGGLE_STATIC_DYNAMIC = {
......
easyblock = 'ConfigureMake'
name = 'netCDF-C++4'
version = '4.3.1'
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.
"""
site_contacts = 's.luehrs@fz-juelich.de'
toolchain = {'name': 'npsmpic', 'version': '2020'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/']
sources = ['v%(version)s.tar.gz']
checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc']
dependencies = [('netCDF', '4.7.4')]
sanity_check_paths = {
'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT],
'dirs': [],
}
moduleclass = 'data'
name = 'netCDF-Fortran'
version = '4.5.3'
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.
"""
site_contacts = 's.luehrs@fz-juelich.de'
toolchain = {'name': 'npsmpic', 'version': '2020'}
toolchainopts = {'pic': True}
source_urls = [
'ftp://ftp.unidata.ucar.edu/pub/netcdf/',
'ftp://ftp.unidata.ucar.edu/pub/netcdf/old',
]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['123a5c6184336891e62cf2936b9f2d1c54e8dee299cfd9d2c1a1eb05dd668a74']
dependencies = [('netCDF', '4.7.4')]
moduleclass = 'data'
name = 'netCDF'
version = '4.7.4'
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.
"""
site_contacts = 's.luehrs@fz-juelich.de'
toolchain = {'name': 'npsmpic', 'version': '2020'}
toolchainopts = {'pic': True, 'usempi': True}
source_urls = ['https://github.com/Unidata/netcdf-c/archive/']
sources = ['v%s.tar.gz' % (version)]
checksums = ['99930ad7b3c4c1a8e8831fb061cb02b2170fc8e5ccaeda733bd99c3b9d31666b']
dependencies = [
('HDF5', '1.10.6'),
('cURL', '7.71.1'),
('Szip', '2.1.1'),
('parallel-netcdf', '1.12.1')
]
builddependencies = [
('CMake', '3.18.0'),
('Doxygen', '1.8.18'),
]
patches = ['remove_double_shared_in_link_command.patch']
# make sure both static and shared libs are built
configopts = [
"-DCURL_LIBRARY=$EBROOTCURL/lib/libcurl.so -DCURL_INCLUDE_DIR=$EBROOTCURL/include " +
"-DENABLE_PNETCDF=ON -DBUILD_SHARED_LIBS=ON",
"-DCURL_LIBRARY=$EBROOTCURL/lib/libcurl.so -DCURL_INCLUDE_DIR=$EBROOTCURL/include " +
"-DENABLE_PNETCDF=ON -DBUILD_SHARED_LIBS=OFF",
]
sanity_check_paths = {
'files': ["include/netcdf_mem.h", "include/netcdf_par.h"],
'dirs': [],
}
moduleclass = 'data'
diff -Nru netcdf-c-4.7.4.orig/liblib/CMakeLists.txt netcdf-c-4.7.4/liblib/CMakeLists.txt
--- netcdf-c-4.7.4.orig/liblib/CMakeLists.txt 2020-09-20 20:17:25.395953767 +0200
+++ netcdf-c-4.7.4/liblib/CMakeLists.txt 2020-09-20 20:17:54.671071349 +0200
@@ -111,11 +111,11 @@
)
ENDIF()
-IF(NOT MSVC)
- IF(BUILD_SHARED_LIBS)
- SET_TARGET_PROPERTIES(netcdf PROPERTIES LINK_FLAGS -shared)
- ENDIF()
-ENDIF()
+#IF(NOT MSVC)
+# IF(BUILD_SHARED_LIBS)
+# SET_TARGET_PROPERTIES(netcdf PROPERTIES LINK_FLAGS -shared)
+# ENDIF()
+#ENDIF()
IF(ENABLE_SHARED_LIBRARY_VERSION)
SET_TARGET_PROPERTIES(netcdf PROPERTIES
easyblock = 'ConfigureMake'
name = 'parallel-netcdf'
version = '1.12.1'
homepage = 'http://trac.mcs.anl.gov/projects/parallel-netcdf'
description = """PnetCDF is a library providing high-performance parallel I/O while still maintaining file-format
compatibility with Unidata's NetCDF, specifically the formats of CDF-1 and CDF-2.
Although NetCDF supports parallel I/O starting from version 4, the files must be in HDF5 format. PnetCDF is currently
the only choice for carrying out parallel I/O on files that are in classic formats
"""
site_contacts = 's.luehrs@fz-juelich.de'
toolchain = {'name': 'npsmpic', 'version': '2020'}
toolchainopts = {'usempi': True, 'pic': True}
source_urls = ['https://parallel-netcdf.github.io/Release/']
sources = ['pnetcdf-%(version)s.tar.gz']
checksums = ['56f5afaa0ddc256791c405719b6436a83b92dcd5be37fe860dea103aee8250a2']
configopts = '--enable-shared'
builddependencies = [
('M4', '1.4.18'),
]
sanity_check_paths = {
'files': ['include/pnetcdf.h', 'include/pnetcdf.inc', 'include/pnetcdf.mod', 'lib/libpnetcdf.a'],
'dirs': [],
}
moduleclass = 'data'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment