diff --git a/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-13.3.0-Java-21.0.2.eb b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-13.3.0-Java-21.0.2.eb new file mode 100644 index 000000000000..333a0374279c --- /dev/null +++ b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-13.3.0-Java-21.0.2.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'ANTLR' +version = '2.7.7' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.antlr2.org/' +description = """ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) + is a language tool that provides a framework for constructing recognizers, + compilers, and translators from grammatical descriptions containing + Java, C#, C++, or Python actions.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://www.antlr2.org/download/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_includes.patch'] +checksums = [ + '853aeb021aef7586bda29e74a6b03006bcb565a755c86b66032d8ec31b67dbb9', # antlr-2.7.7.tar.gz + 'd167d3248a03301bc93efcb37d5df959aae6794968e42231af0b0dd26d6a2e66', # ANTLR-2.7.7_includes.patch +] + +builddependencies = [('binutils', '2.42')] + +dependencies = [('Java', '21.0.2', '', SYSTEM)] + +configopts = '--disable-examples --disable-csharp --disable-python' + +sanity_check_paths = { + 'files': ['bin/antlr', 'bin/antlr-config'], + 'dirs': ['include'], +} + +sanity_check_commands = ["antlr --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/ESMF/ESMF-8.7.0-foss-2024a.eb b/easybuild/easyconfigs/e/ESMF/ESMF-8.7.0-foss-2024a.eb new file mode 100644 index 000000000000..a659656f7541 --- /dev/null +++ b/easybuild/easyconfigs/e/ESMF/ESMF-8.7.0-foss-2024a.eb @@ -0,0 +1,37 @@ +name = 'ESMF' +version = '8.7.0' + +homepage = 'https://www.earthsystemcog.org/projects/esmf/' +description = """The Earth System Modeling Framework (ESMF) is a suite of software tools for developing + high-performance, multi-component Earth science modeling applications.""" + +toolchain = {'name': 'foss', 'version': '2024a'} +toolchainopts = {'usempi': True, 'openmp': True, 'cstd': 'c++11', 'pic': True} + +source_urls = ['https://github.com/esmf-org/esmf/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['ESMF-6.1.1_libopts.patch'] +checksums = [ + {'v8.7.0.tar.gz': 'd7ab266e2af8c8b230721d4df59e61aa03c612a95cc39c07a2d5695746f21f56'}, + {'ESMF-6.1.1_libopts.patch': '3851627f07c32a7da55d99072d619942bd3a1d9dd002e1557716158e7aacdaf4'}, +] + +builddependencies = [('CMake', '3.29.3')] + +dependencies = [ + ('netCDF', '4.9.2'), + ('netCDF-Fortran', '4.6.1'), + ('netCDF-C++4', '4.3.1'), + ('libarchive', '3.7.4'), +] + +# disable errors from GCC 10 on mismatches between actual and dummy argument lists (GCC 9 behaviour) +prebuildopts = 'ESMF_F90COMPILEOPTS="${ESMF_F90COMPILEOPTS} -fallow-argument-mismatch"' + +buildopts = 'ESMF_NETCDF_INCLUDE=$EBROOTNETCDFMINFORTRAN/include ' +buildopts += 'ESMF_NETCDF_LIBS="`nc-config --libs` `nf-config --flibs` `ncxx4-config --libs`"' + +# too parallel causes the build to become really slow +maxparallel = 8 + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/l/libdap/libdap-3.21.0-131-GCCcore-13.3.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.21.0-131-GCCcore-13.3.0.eb new file mode 100644 index 000000000000..ef7029f258f9 --- /dev/null +++ b/easybuild/easyconfigs/l/libdap/libdap-3.21.0-131-GCCcore-13.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'libdap' +version = '3.21.0-131' + +homepage = 'https://www.opendap.org/software/libdap' +description = """A C++ SDK which contains an implementation of DAP 2.0 and + DAP4.0. This includes both Client- and Server-side support classes.""" + +toolchain = {'name': 'GCCcore', 'version': '13.3.0'} + +source_urls = ['https://github.com/OPENDAP/libdap4/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['c06b30e108608bc40dcb15df57302af4511023801dca004edb3f2df2cc0a72cc'] + +builddependencies = [ + ('binutils', '2.42'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('Autotools', '20231222'), +] + +dependencies = [ + ('cURL', '8.7.1'), + ('libxml2', '2.12.7'), + ('libtirpc', '1.3.5'), + ('PCRE', '8.45'), + ('util-linux', '2.40'), +] + +preconfigopts = "autoreconf -fi && " +configopts = 'TIRPC_LIBS="-ltirpc"' + + +sanity_check_paths = { + 'files': ['bin/getdap', 'bin/getdap4', 'bin/dap-config', 'lib/libdap.a', 'lib/libdap.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/n/NCO/NCO-5.2.9-foss-2024a.eb b/easybuild/easyconfigs/n/NCO/NCO-5.2.9-foss-2024a.eb new file mode 100644 index 000000000000..cf83d3657859 --- /dev/null +++ b/easybuild/easyconfigs/n/NCO/NCO-5.2.9-foss-2024a.eb @@ -0,0 +1,44 @@ +easyblock = 'ConfigureMake' + +name = 'NCO' +version = '5.2.9' + +homepage = "https://github.com/nco/nco" +description = """The NCO toolkit manipulates and analyzes data stored in netCDF-accessible formats, +including DAP, HDF4, and HDF5.""" + +toolchain = {'name': 'foss', 'version': '2024a'} + +source_urls = ['https://github.com/nco/nco/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['6245886e2a18a4821b0fb768cf9906de09aeb47c303462c8e85f0d1a4f34956d'] + +builddependencies = [ + ('Bison', '3.8.2'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('UDUNITS', '2.2.28'), + ('expat', '2.6.2'), + ('ANTLR', '2.7.7', '-Java-21.0.2'), + ('libdap', '3.21.0-131'), + ('GSL', '2.8'), + ('netCDF', '4.9.2'), + ('ESMF', '8.7.0'), # ncremap needs ESMF_RegridWeightGen +] + +configopts = "--enable-nco_cplusplus" + +sanity_check_paths = { + 'files': ['bin/nc%s' % x for x in ('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'], +} +sanity_check_commands = [ + "ncks -O -7 --cnk_dmn time,10 " + "%(builddir)s/%(namelower)s-%(version)s/data/in.nc %(builddir)s/%(namelower)s-%(version)s/data/in4.cdl" +] + +moduleclass = 'tools'