From 8b888c292d64622d95f7e8d2a3895dbfc8eb180b Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 10:38:13 +0100 Subject: [PATCH 01/25] {astro,lib}[foss/2023b] DP3-6.0, WSClean 3.4 and deps --- .../a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb | 46 ++++++++++++++++ .../Armadillo/Armadillo-12.8.0-foss-2023b.eb | 24 +++++++++ .../a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb | 37 +++++++++++++ .../Boost.Python-1.83.0-GCC-13.2.0.eb | 24 +++++++++ .../c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb | 43 +++++++++++++++ ....5.0-add-C-style-header-for-GCC-13.1.patch | 21 ++++++++ .../c/casacore/casacore-3.5.0-foss-2023b.eb | 49 +++++++++++++++++ .../easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 45 ++++++++++++++++ .../e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb | 43 +++++++++++++++ .../l/Lua/Lua-5.4.6-GCCcore-13.2.0.eb | 28 ++++++++++ .../l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb | 27 ++++++++++ .../p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb | 38 +++++++++++++ .../p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb | 54 +++++++++++++++++++ .../pkg-config-0.29.2-GCCcore-13.2.0.eb | 35 ++++++++++++ .../w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb | 39 ++++++++++++++ .../w/WSClean/WSClean-3.4-foss-2023b.eb | 44 +++++++++++++++ .../w/wget/wget-1.21.4-GCCcore-13.2.0.eb | 49 +++++++++++++++++ 17 files changed, 646 insertions(+) create mode 100644 easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb create mode 100644 easybuild/easyconfigs/a/Armadillo/Armadillo-12.8.0-foss-2023b.eb create mode 100644 easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb create mode 100644 easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.83.0-GCC-13.2.0.eb create mode 100644 easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/c/casacore/casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch create mode 100644 easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb create mode 100644 easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb create mode 100644 easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb create mode 100644 easybuild/easyconfigs/l/Lua/Lua-5.4.6-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb create mode 100644 easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb create mode 100644 easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb create mode 100644 easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb new file mode 100644 index 000000000000..e211feb7aa3b --- /dev/null +++ b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'AOFlagger' +version = '3.4.0' + +homepage = 'https://aoflagger.readthedocs.io/' +description = """The AOFlagger is a tool that can find and remove radio-frequency interference (RFI) +in radio astronomical observations. It can make use of Lua scripts to make flagging strategies flexible, +and the tools are applicable to a wide set of telescopes.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [ + {'source_urls': ['https://gitlab.com/aroffringa/%(namelower)s/-/package_files/96704214/'], 'filename': '%(namelower)s-v%(version)s.tar.bz2', 'download_filename': 'download'}, +] +checksums = ['9560b7381b68f37d842599f222a8aa2a5d3d3d501d1277471e1a0ba3d7b2aeba'] + +builddependencies = [ + ('CMake', '3.27.6'), +] +dependencies = [ + ('casacore', '3.5.0'), + ('Boost', '1.83.0'), + ('CFITSIO', '4.3.1'), + ('GSL', '2.7'), + ('HDF5', '1.14.3'), + ('Python', '3.11.5'), + ('Lua', '5.4.6'), + ('libpng', '1.6.40'), + ('libxml2', '2.11.5'), +] + +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " + + +sanity_check_paths = { + 'files': ['include/%(namelower)s.h', 'bin/%(namelower)s'], + 'dirs': ['bin'], +} + +sanity_check_commands = [('%(namelower)s', '-v')] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/Armadillo/Armadillo-12.8.0-foss-2023b.eb b/easybuild/easyconfigs/a/Armadillo/Armadillo-12.8.0-foss-2023b.eb new file mode 100644 index 000000000000..cde4b18960cf --- /dev/null +++ b/easybuild/easyconfigs/a/Armadillo/Armadillo-12.8.0-foss-2023b.eb @@ -0,0 +1,24 @@ +name = 'Armadillo' +version = '12.8.0' + +homepage = 'https://arma.sourceforge.net/' +description = """Armadillo is an open-source C++ linear algebra library (matrix maths) aiming towards + a good balance between speed and ease of use. Integer, floating point and complex numbers are supported, + as well as a subset of trigonometric and statistics functions.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +source_urls = ['https://sourceforge.net/projects/arma/files'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['a89bb6fece5ce9fdd1d01a4bc145cf7cc0b939c5777cca46de69c2f5e3412cf0'] + +builddependencies = [ + ('CMake', '3.27.6'), +] +dependencies = [ + ('Boost', '1.83.0'), + ('arpack-ng', '3.9.0'), +] + + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb new file mode 100644 index 000000000000..0151ba327e0b --- /dev/null +++ b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb @@ -0,0 +1,37 @@ +# # +# Author: Robert Mijakovic +# # +easyblock = 'ConfigureMake' + +name = 'arpack-ng' +version = '3.9.0' + +homepage = 'https://github.com/opencollab/arpack-ng' +description = "ARPACK is a collection of Fortran77 subroutines designed to solve large scale eigenvalue problems." + +toolchain = {'name': 'foss', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['24f2a2b259992d3c797d80f626878aa8e2ed5009d549dad57854bbcfb95e1ed0'] + +builddependencies = [ + ('Autotools', '20220317'), + ('pkg-config', '0.29.2'), +] +dependencies = [ + ('Eigen', '3.4.0'), +] + +preconfigopts = "sh bootstrap && " +configopts = '--enable-mpi --with-pic --with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK"' + +github_account = 'opencollab' + +sanity_check_paths = { + 'files': ['lib64/libarpack.la', 'lib64/libarpack.so', 'lib64/libparpack.la', 'lib64/libparpack.so'], + 'dirs': [], +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.83.0-GCC-13.2.0.eb b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.83.0-GCC-13.2.0.eb new file mode 100644 index 000000000000..f7af796a853d --- /dev/null +++ b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.83.0-GCC-13.2.0.eb @@ -0,0 +1,24 @@ +easyblock = 'EB_Boost' + +name = 'Boost.Python' +version = '1.83.0' + +homepage = 'https://boostorg.github.io/python' +description = """Boost.Python is a C++ library which enables seamless interoperability between C++ + and the Python programming language.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://boostorg.jfrog.io/artifactory/main/release/%(version)s/source/'] +sources = ['boost_1_83_0.tar.gz'] +checksums = ['c0685b68dd44cc46574cce86c4e17c0f611b15e195be9848dfd0769a0a207628'] + +dependencies = [ + ('Boost', '1.83.0'), + ('Python', '3.11.5'), +] + +only_python_bindings = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..17dacb5ba4aa --- /dev/null +++ b/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb @@ -0,0 +1,43 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +easyblock = 'ConfigureMake' + +name = 'CFITSIO' +version = '4.3.1' + +homepage = 'https://heasarc.gsfc.nasa.gov/fitsio/' +description = """CFITSIO is a library of C and Fortran subroutines for reading and writing data files in +FITS (Flexible Image Transport System) data format.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-3.48_install_test_data.patch'] +checksums = [ + {SOURCELOWER_TAR_GZ: '2332b965d327a15c103a7d31d6d1afaf775d00e9785dd25332ae76b9725351e4'}, + {'%(name)s-3.48_install_test_data.patch': 'dbf16f857f133468fc1e6a793c6e89fca66d54796593e03606f2722a2a980c0c'}, +] + +builddependencies = [ + ('binutils', '2.40'), +] +# curl for HTTPs support +dependencies = [ + ('cURL', '8.3.0'), +] + +# make would create just static libcfitsio.a. +# Let's create dynamic lib and testprog too. +buildopts = "&& make shared && make testprog" + + +sanity_check_paths = { + 'files': ['lib/libcfitsio.a', 'lib/libcfitsio.so'], + 'dirs': ['include'], +} + +sanity_check_commands = ['cd %(installdir)s/share && testprog'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch new file mode 100644 index 000000000000..efef286e59a1 --- /dev/null +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch @@ -0,0 +1,21 @@ +From 68e43f489abd3d4f1e2fe54a42695396703aa81a Mon Sep 17 00:00:00 2001 +From: Chris Broekema +Date: Tue, 9 May 2023 12:43:34 +0200 +Subject: [PATCH] add C-style header to fix GCC 13.1 compile error on uint16_t + not being a valid type (#1309) + +--- + tables/Dysco/bytepacker.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tables/Dysco/bytepacker.h b/tables/Dysco/bytepacker.h +index d62754046..cb1193b41 100644 +--- a/tables/Dysco/bytepacker.h ++++ b/tables/Dysco/bytepacker.h +@@ -2,6 +2,7 @@ + #define DYSCO_BYTE_PACKER_H + + #include ++#include + + namespace dyscostman { diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb new file mode 100644 index 000000000000..362434327ee8 --- /dev/null +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb @@ -0,0 +1,49 @@ +easyblock = 'CMakeMake' + +name = 'casacore' +version = '3.5.0' + +homepage = 'https://github.com/casacore/casacore' +description = """A suite of C++ libraries for radio astronomy data processing. +The ephemerides data needs to be in DATA_DIR and the location must be specified at runtime. +Thus user's can update them. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +source_urls = ['https://github.com/%(name)s/%(name)s/archive'] +sources = ['v%(version)s.tar.gz'] +patches = ['casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch'] +checksums = ['63f1c8eff932b0fcbd38c598a5811e6e5397b72835b637d6f426105a183b3f91'] + +builddependencies = [ + ('CMake', '3.27.6'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('wget', '1.21.4'), +] +dependencies = [ + ('CFITSIO', '4.3.1'), + ('WCSLIB', '7.11'), + ('HDF5', '1.14.3'), + ('GSL', '2.7'), + ('Boost.Python', '1.83.0'), + ('SciPy-bundle', '2023.11'), + ('ncurses', '6.4'), +] + +configopts = '-DBUILD_PYTHON=NO -DBUILD_PYTHON3=YES -Wno-dev -DCXX11="ON" -DDATA_DIR=%(installdir)s/data -DUSE_OPENMP=ON -DUSE_HDF5=ON -DUSE_MPI=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' + +# Install casacore data +postinstallcmds = [ + "wget --retry-connrefused ftp://anonymous@ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar -O /tmp/WSRT_Measures.ztar && tar xfvz /tmp/WSRT_Measures.ztar --one-top-level=%(installdir)s/data", +] + +sanity_check_paths = { + 'files': ['lib/libcasa_casa.so', 'lib/libcasa_mirlib.so', 'lib/libcasa_ms.so'], + 'dirs': ['bin', 'include/%(name)s'], +} + +sanity_check_commands = [('measuresdata', '')] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb new file mode 100644 index 000000000000..f4c6964b32cf --- /dev/null +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -0,0 +1,45 @@ +easyblock = 'CMakeMake' + +name = 'DP3' +version = '6.0' + +homepage = 'https://dp3.readthedocs.io/' +description = "DP3: streaming processing pipeline for radio interferometric data." + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [ + {'filename': '%(name)s-v%(version)s.tar.gz', 'git_config': {'url': 'https://git.astron.nl/RD', 'repo_name': '%(name)s', 'tag': 'v%(version)s', 'clone_into': '%(name)s', 'recursive': True}}, +] +checksums = [None] + +builddependencies = [ + ('CMake', '3.27.6'), +] +dependencies = [ + ('casacore', '3.5.0'), + ('Boost', '1.83.0'), + ('CFITSIO', '4.3.1'), + ('WCSLIB', '7.11'), + ('GSL', '2.7'), + ('HDF5', '1.14.3'), + ('Python', '3.11.5'), + ('EveryBeam', '0.5.2'), + ('Armadillo', '12.8.0'), + ('AOFlagger', '3.4.0'), +] + +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " + + +sanity_check_paths = { + 'files': ['include/include/%(namelower)s/base/%(name)s.h', 'bin/%(name)s'], + 'dirs': ['bin'], +} + +sanity_check_commands = [('%(name)s', '--version')] + +moduleclass = 'astro' diff --git a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb new file mode 100644 index 000000000000..f67d1cba1622 --- /dev/null +++ b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb @@ -0,0 +1,43 @@ +easyblock = 'CMakeMake' + +name = 'EveryBeam' +version = '0.5.2' + +homepage = 'https://everybeam.readthedocs.io/' +description = """Library that provides the antenna response pattern for several instruments, +such as LOFAR (and LOBES), SKA (OSKAR), MWA, JVLA, etc.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [ + {'filename': '%(name)s-v%(version)s.tar.gz', 'git_config': {'url': 'https://git.astron.nl/RD', 'repo_name': '%(name)s', 'tag': 'v%(version)s', 'clone_into': '%(name)s', 'recursive': True}}, +] +checksums = [None] + +builddependencies = [ + ('CMake', '3.27.6'), + ('wget', '1.21.4'), +] +dependencies = [ + ('casacore', '3.5.0'), + ('Boost', '1.83.0'), + ('CFITSIO', '4.3.1'), + ('WCSLIB', '7.11'), + ('GSL', '2.7'), + ('HDF5', '1.14.3'), + ('Python', '3.11.5'), + ('libxml2', '2.11.5'), +] + +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " + + +sanity_check_paths = { + 'files': ['include/%(name)s/beamformer.h', 'lib/libeverybeam.so'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/Lua/Lua-5.4.6-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/Lua/Lua-5.4.6-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..b2b1eef5195d --- /dev/null +++ b/easybuild/easyconfigs/l/Lua/Lua-5.4.6-GCCcore-13.2.0.eb @@ -0,0 +1,28 @@ +name = 'Lua' +version = '5.4.6' + +homepage = 'https://www.lua.org/' +description = """Lua is a powerful, fast, lightweight, embeddable scripting language. + Lua combines simple procedural syntax with powerful data description constructs based + on associative arrays and extensible semantics. Lua is dynamically typed, + runs by interpreting bytecode for a register-based virtual machine, + and has automatic memory management with incremental garbage collection, + making it ideal for configuration, scripting, and rapid prototyping.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.%(namelower)s.org/ftp/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['7d5ea1b9cb6aa0b59ca3dde1c6adcb57ef83a1ba8e5432c0ecd06bf439b3ad88'] + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('ncurses', '6.4'), + ('libreadline', '8.2'), +] + + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..662ff77ec42b --- /dev/null +++ b/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'libidn2' +version = '2.3.2' + +homepage = 'http://www.gnu.org/software/%(name)s' +description = "Libidn2 implements the revised algorithm for internationalized domain names called IDNA2008/TR46." + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://ftp.gnu.org/gnu/libidn/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['76940cd4e778e8093579a9d195b25fff5e936e9dc6242068528b437a76764f91'] + +builddependencies = [ + ('binutils', '2.40'), +] + + +sanity_check_paths = { + 'files': ['bin/idn2', 'lib/%(name)s.so'], + 'dirs': ['include'], +} + +sanity_check_commands = ['idn2 --help'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..25eed8372357 --- /dev/null +++ b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'PCRE' +version = '8.45' + +homepage = 'https://www.pcre.org/' +description = """ + The PCRE library is a set of functions that implement regular expression + pattern matching using the same syntax and semantics as Perl 5. +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = [ + SOURCEFORGE_SOURCE, + 'https://ftp.%(namelower)s.org/pub/%(namelower)s/', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['4e6ce03e0336e8b4a3d6c2b70b1c5e18590a5673a98186da90d4f33c23defc09'] + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.13'), +] + +configopts = " --enable-utf --enable-unicode-properties --enable-pcre16 --enable-pcre32" + + +sanity_check_paths = { + 'files': ['bin/%(namelower)s-config', 'include/%(namelower)s.h', 'share/man/man3/%(namelower)s.3', 'lib/libpcre32.so'], + 'dirs': ['lib/pkgconfig', 'share/doc/%(namelower)s/html', 'share/man/man1'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..cad1999ca294 --- /dev/null +++ b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb @@ -0,0 +1,54 @@ +easyblock = 'CmdCp' + +name = 'PGPLOT' +version = '5.2.2' + +homepage = 'https://sites.astro.caltech.edu/~tjp/pgplot/' +description = """The PGPLOT Graphics Subroutine Library is a Fortran- or C-callable, +device-independent graphics package for making simple scientific graphs. It is intended +for making graphical images of publication quality with minimum effort on the part of +the user. For most applications, the program can be device-independent, and the output +can be directed to the appropriate device at run time.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['ftp://ftp.astro.caltech.edu/pub/%(namelower)s/'] +sources = ['%(namelower)s522.tar.gz'] +patches = ['%(name)s-%(version_major_minor)s.2_gfortran-deps-fixes.patch'] +checksums = [ + {'pgplot522.tar.gz': 'a5799ff719a510d84d26df4ae7409ae61fe66477e3f1e8820422a9a4727a5be4'}, + {'%(name)s-%(version_major_minor)s.2_gfortran-deps-fixes.patch': 'b1822eb32499dc18aa4aa4fae0b31c3c64ff8abb3a243716e78addafa7e58cec'}, +] + +builddependencies = [ + ('binutils', '2.40'), +] +dependencies = [ + ('libpng', '1.6.40'), + ('zlib', '1.2.13'), + ('X11', '20231019'), +] + +# create .so symlinks for shared libraries +postinstallcmds = [ + "cd %(installdir)s/lib && ln -s libcpgplot.so.%(version)s libcpgplot.so.5", + "cd %(installdir)s/lib && ln -s libcpgplot.so.%(version)s libcpgplot.so", + "cd %(installdir)s/lib && ln -s libpgplot.so.%(version)s libpgplot.so.5", + "cd %(installdir)s/lib && ln -s libpgplot.so.%(version)s libpgplot.so", +] +files_to_copy = [ + (['pgdemo*'], 'bin'), + (['libpgplot.*', 'libcpgplot.*'], 'lib'), + (['grfont.dat'], 'share'), + (['cpgplot.h'], 'include'), +] +cmds_map = [('.*', './makemake . linux g77_gcc && make && make shared && make cpg && make cpg-shared')] + +sanity_check_paths = { + 'files': ['include/cpgplot.h', 'lib/libpgplot.a', 'lib/libcpgplot.a', 'lib/libpgplot.so', 'lib/libcpgplot.so'], + 'dirs': ['bin'], +} + +modextravars = {'PGPLOT_FONT': '%(installdir)s/share/grfont.dat'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..b9bda34701d8 --- /dev/null +++ b/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'pkg-config' +version = '0.29.2' + +homepage = 'https://www.freedesktop.org/wiki/Software/pkg-config/' +description = """ + pkg-config is a helper tool used when compiling applications and libraries. + It helps you insert the correct compiler options on the command line so an + application can use gcc -o test test.c `pkg-config --libs --cflags glib-2.0` + for instance, rather than hard-coding values on where to find glib (or other + libraries). +""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = ['https://%(name)s.freedesktop.org/releases/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6fc69c01688c9458a57eb9a1664c9aba372ccda420a02bf4429fe610e7e7d591'] + +builddependencies = [ + ('binutils', '2.40'), +] + +configopts = " --with-internal-glib" + +# don't use PAX, it might break. +tar_config_opts = True + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb new file mode 100644 index 000000000000..9bc27997d319 --- /dev/null +++ b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb @@ -0,0 +1,39 @@ +easyblock = 'ConfigureMake' + +name = 'WCSLIB' +version = '7.11' + +homepage = 'https://www.atnf.csiro.au/people/mcalabre/WCS/' +description = """The FITS "World Coordinate System" (WCS) standard defines keywords +and usage that provide for the description of astronomical coordinate systems in a +FITS image header.""" + +toolchain = {'name': 'GCC', 'version': '13.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['ftp://ftp.atnf.csiro.au/pub/software/%(namelower)s/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['46befbfdf50cd4953896676a7d570094dc7661e2ae9677b092e7fb13cee3da5f'] + +builddependencies = [ + ('binutils', '2.40'), + ('M4', '1.4.19'), + ('flex', '2.6.4'), +] +dependencies = [ + ('CFITSIO', '4.2.0'), + ('PGPLOT', '5.2.2'), + ('X11', '20231019'), +] + +configopts = "--with-cfitsiolib=$EBROOTCFITSIO/lib --with-cfitsioinc=$EBROOTCFITSIO/include --with-pgplotlib=$EBROOTPGPLOT/lib --with-pgplotinc=$EBROOTPGPLOT/include " + + +sanity_check_paths = { + 'files': ['bin/wcsgrid', 'bin/wcsware', 'lib/libpgsbox-%(version)s.a', 'lib/libpgsbox.so'], + 'dirs': ['include'], +} + +sanity_check_commands = ["wcsgrid --help 2>&1 | grep '^Usage: wcsgrid'"] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb new file mode 100644 index 000000000000..1223c4d82d5a --- /dev/null +++ b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb @@ -0,0 +1,44 @@ +easyblock = 'CMakeMake' + +name = 'WSClean' +version = '3.4' + +homepage = 'https://wsclean.readthedocs.io/' +description = """WSClean (w-stacking clean) is a fast generic widefield imager. +It implements several gridding algorithms and offers fully-automated multi-scale +multi-frequency deconvolution.""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [ + {'source_urls': ['https://gitlab.com/aroffringa/%(namelower)s/-/package_files/97237455/'], 'filename': '%(namelower)s-v%(version)s.tar.bz2', 'download_filename': 'download'}, +] +checksums = ['b43d8ca490ccf34dd22aae6c5ca88a5dcb3cff0526835d3f97fa6d239745e641'] + +builddependencies = [ + ('CMake', '3.27.6'), +] +dependencies = [ + ('casacore', '3.5.0'), + ('EveryBeam', '0.5.2'), + ('Boost', '1.83.0'), + ('CFITSIO', '4.3.1'), + ('GSL', '2.7'), + ('HDF5', '1.14.3'), + ('Python', '3.11.5'), +] + +# Without this, the wrong (system) python is picked up by cmake +# in cases where the system python is newer than the one used in these EasyConfigs +# See PR # 19119 +configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " + + +sanity_check_paths = { + 'files': ['include/wscleaninterface.h', 'bin/%(namelower)s'], + 'dirs': ['bin'], +} + +sanity_check_commands = [('%(namelower)s', '--version')] + +moduleclass = 'astro' diff --git a/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb new file mode 100644 index 000000000000..352429157a29 --- /dev/null +++ b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb @@ -0,0 +1,49 @@ +easyblock = 'ConfigureMake' + +name = 'wget' +version = '1.21.4' + +homepage = 'https://www.gnu.org/software/wget' +description = """GNU Wget is a free software package for retrieving files using HTTP, HTTPS and FTP, + the most widely-used Internet protocols. It is a non-interactive commandline tool, + so it may easily be called from scripts, cron jobs, terminals without X-Windows support, etc.""" + +toolchain = {'name': 'GCCcore', 'version': '13.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['%(name)s-%(version_major_minor)s.3_fix_syntax_error_old_glibc_gcc11.patch'] +checksums = [ + {SOURCE_TAR_GZ: '81542f5cefb8faacc39bbbc6c82ded80e3e4a88505ae72ea51df27525bcde04c'}, + {'%(name)s-%(version_major_minor)s.3_fix_syntax_error_old_glibc_gcc11.patch': '0e0aa7a1a4afbe1eefbafb196f162fa5068a03325e342fdc212a16e3c4c946d4'}, +] + +builddependencies = [ + ('binutils', '2.40'), + ('pkg-config', '0.29.2'), + ('Perl', '5.38.0'), +] +dependencies = [ + ('PCRE', '8.45'), + ('libidn2', '2.3.2'), + ('zlib', '1.2.13'), + ('OpenSSL', '1.1', '', SYSTEM), + # OS dependency should be preferred if the os version is more recent then this version, + # it's nice to have an up to date gnutls for security reasons + # ('GnuTLS', '3.7.1'), +] + +preconfigopts = "export PKG_CONFIG_PATH=%(sysroot)s/usr/lib64/pkgconfig:%(sysroot)s/usr/lib/pkgconfig:%(sysroot)s/usr/lib/%(arch)s-linux-gnu/pkgconfig && " +configopts = "--with-ssl=openssl " + + +# Optionally, you can use gnutls (default) instead of OpenSSL. +# Do not forget to comment out configopts in that case. +# osdependencies = [('gnutls-devel', 'gnutls-dev', 'libgnutls-devel')] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +moduleclass = 'devel' From 8580b26c571c999e60e0903a5b4b1a1e494dfa1e Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 10:56:36 +0100 Subject: [PATCH 02/25] Fix CFITSIO checksum --- easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb index 17dacb5ba4aa..80c940b906bb 100644 --- a/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb @@ -16,7 +16,7 @@ source_urls = ['https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/'] sources = [SOURCELOWER_TAR_GZ] patches = ['%(name)s-3.48_install_test_data.patch'] checksums = [ - {SOURCELOWER_TAR_GZ: '2332b965d327a15c103a7d31d6d1afaf775d00e9785dd25332ae76b9725351e4'}, + {SOURCELOWER_TAR_GZ: '47a7c8ee05687be1e1d8eeeb94fb88f060fbf3cd8a4df52ccb88d5eb0f5062be'}, {'%(name)s-3.48_install_test_data.patch': 'dbf16f857f133468fc1e6a793c6e89fca66d54796593e03606f2722a2a980c0c'}, ] From bb93681b3eb617007b4c1caf2d252feb5afa9490 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 11:46:05 +0100 Subject: [PATCH 03/25] Fix test suite findings --- .../a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb | 8 +++++++- .../c/casacore/casacore-3.5.0-foss-2023b.eb | 15 ++++++++++++--- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 11 ++++++++++- .../e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb | 11 ++++++++++- .../p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb | 4 +++- .../p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb | 2 +- .../w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb | 6 +++--- .../w/WSClean/WSClean-3.4-foss-2023b.eb | 6 +++++- .../w/wget/wget-1.21.4-GCCcore-13.2.0.eb | 4 +--- 9 files changed, 52 insertions(+), 15 deletions(-) diff --git a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb index e211feb7aa3b..9504cae77048 100644 --- a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb +++ b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb @@ -11,7 +11,13 @@ and the tools are applicable to a wide set of telescopes.""" toolchain = {'name': 'foss', 'version': '2023b'} sources = [ - {'source_urls': ['https://gitlab.com/aroffringa/%(namelower)s/-/package_files/96704214/'], 'filename': '%(namelower)s-v%(version)s.tar.bz2', 'download_filename': 'download'}, + { + 'source_urls': [ + 'https://gitlab.com/aroffringa/%(namelower)s/-/package_files/96704214/' + ], + 'filename': '%(namelower)s-v%(version)s.tar.bz2', + 'download_filename': 'download' + }, ] checksums = ['9560b7381b68f37d842599f222a8aa2a5d3d3d501d1277471e1a0ba3d7b2aeba'] diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb index 362434327ee8..dd91ba4b0731 100644 --- a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb @@ -14,7 +14,10 @@ toolchain = {'name': 'foss', 'version': '2023b'} source_urls = ['https://github.com/%(name)s/%(name)s/archive'] sources = ['v%(version)s.tar.gz'] patches = ['casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch'] -checksums = ['63f1c8eff932b0fcbd38c598a5811e6e5397b72835b637d6f426105a183b3f91'] +checksums = [ + '63f1c8eff932b0fcbd38c598a5811e6e5397b72835b637d6f426105a183b3f91', # casacore-3.5.0.tar.gz + '7b35d21cd654a7a215d604310f5372319ad21b6261f4a7ae038912b97ef22983', # casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch +] builddependencies = [ ('CMake', '3.27.6'), @@ -32,11 +35,17 @@ dependencies = [ ('ncurses', '6.4'), ] -configopts = '-DBUILD_PYTHON=NO -DBUILD_PYTHON3=YES -Wno-dev -DCXX11="ON" -DDATA_DIR=%(installdir)s/data -DUSE_OPENMP=ON -DUSE_HDF5=ON -DUSE_MPI=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' +configopts = '-DBUILD_PYTHON=NO -DBUILD_PYTHON3=YES -Wno-dev -DCXX11="ON" ' +configopts += '-DDATA_DIR=%(installdir)s/data -DUSE_OPENMP=ON -DUSE_HDF5=ON ' +configopts += '-DUSE_MPI=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' + +download_cmd = 'wget --retry-connrefused ftp://anonymous@ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar ' +download_cmd += '-O /tmp/WSRT_Measures.ztar ' # Install casacore data postinstallcmds = [ - "wget --retry-connrefused ftp://anonymous@ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar -O /tmp/WSRT_Measures.ztar && tar xfvz /tmp/WSRT_Measures.ztar --one-top-level=%(installdir)s/data", + download_cmd, + "tar xfvz /tmp/WSRT_Measures.ztar --one-top-level=%(installdir)s/data", ] sanity_check_paths = { diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index f4c6964b32cf..d04a9372e56f 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -9,7 +9,16 @@ description = "DP3: streaming processing pipeline for radio interferometric data toolchain = {'name': 'foss', 'version': '2023b'} sources = [ - {'filename': '%(name)s-v%(version)s.tar.gz', 'git_config': {'url': 'https://git.astron.nl/RD', 'repo_name': '%(name)s', 'tag': 'v%(version)s', 'clone_into': '%(name)s', 'recursive': True}}, + { + 'filename': '%(name)s-v%(version)s.tar.gz', + 'git_config': { + 'url': 'https://git.astron.nl/RD', + 'repo_name': '%(name)s', + 'tag': 'v%(version)s', + 'clone_into': '%(name)s', + 'recursive': True + } + }, ] checksums = [None] diff --git a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb index f67d1cba1622..3f97c345d82c 100644 --- a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb +++ b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb @@ -10,7 +10,16 @@ such as LOFAR (and LOBES), SKA (OSKAR), MWA, JVLA, etc.""" toolchain = {'name': 'foss', 'version': '2023b'} sources = [ - {'filename': '%(name)s-v%(version)s.tar.gz', 'git_config': {'url': 'https://git.astron.nl/RD', 'repo_name': '%(name)s', 'tag': 'v%(version)s', 'clone_into': '%(name)s', 'recursive': True}}, + { + 'filename': '%(name)s-v%(version)s.tar.gz', + 'git_config': { + 'url': 'https://git.astron.nl/RD', + 'repo_name': '%(name)s', + 'tag': 'v%(version)s', + 'clone_into': '%(name)s', + 'recursive': True + } + }, ] checksums = [None] diff --git a/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb index 25eed8372357..ca479a2ca859 100644 --- a/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb @@ -31,7 +31,9 @@ configopts = " --enable-utf --enable-unicode-properties --enable-pcre16 sanity_check_paths = { - 'files': ['bin/%(namelower)s-config', 'include/%(namelower)s.h', 'share/man/man3/%(namelower)s.3', 'lib/libpcre32.so'], + 'files': [ + 'bin/%(namelower)s-config', 'include/%(namelower)s.h', 'share/man/man3/%(namelower)s.3', 'lib/libpcre32.so' + ], 'dirs': ['lib/pkgconfig', 'share/doc/%(namelower)s/html', 'share/man/man1'], } diff --git a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb index cad1999ca294..bc1093a8a5c1 100644 --- a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb @@ -17,7 +17,7 @@ sources = ['%(namelower)s522.tar.gz'] patches = ['%(name)s-%(version_major_minor)s.2_gfortran-deps-fixes.patch'] checksums = [ {'pgplot522.tar.gz': 'a5799ff719a510d84d26df4ae7409ae61fe66477e3f1e8820422a9a4727a5be4'}, - {'%(name)s-%(version_major_minor)s.2_gfortran-deps-fixes.patch': 'b1822eb32499dc18aa4aa4fae0b31c3c64ff8abb3a243716e78addafa7e58cec'}, + {'PGPLOT-5.2.2_gfortran-deps-fixes.patch': 'b1822eb32499dc18aa4aa4fae0b31c3c64ff8abb3a243716e78addafa7e58cec'}, ] builddependencies = [ diff --git a/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb index 9bc27997d319..c4429beadd36 100644 --- a/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb +++ b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb @@ -21,13 +21,13 @@ builddependencies = [ ('flex', '2.6.4'), ] dependencies = [ - ('CFITSIO', '4.2.0'), + ('CFITSIO', '4.3.1'), ('PGPLOT', '5.2.2'), ('X11', '20231019'), ] -configopts = "--with-cfitsiolib=$EBROOTCFITSIO/lib --with-cfitsioinc=$EBROOTCFITSIO/include --with-pgplotlib=$EBROOTPGPLOT/lib --with-pgplotinc=$EBROOTPGPLOT/include " - +configopts = "--with-cfitsiolib=$EBROOTCFITSIO/lib --with-cfitsioinc=$EBROOTCFITSIO/include " +configopts += --with-pgplotlib=$EBROOTPGPLOT/lib --with-pgplotinc=$EBROOTPGPLOT/include " sanity_check_paths = { 'files': ['bin/wcsgrid', 'bin/wcsware', 'lib/libpgsbox-%(version)s.a', 'lib/libpgsbox.so'], diff --git a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb index 1223c4d82d5a..1b02e0161d8f 100644 --- a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb +++ b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb @@ -11,7 +11,11 @@ multi-frequency deconvolution.""" toolchain = {'name': 'foss', 'version': '2023b'} sources = [ - {'source_urls': ['https://gitlab.com/aroffringa/%(namelower)s/-/package_files/97237455/'], 'filename': '%(namelower)s-v%(version)s.tar.bz2', 'download_filename': 'download'}, + { + 'source_urls': ['https://gitlab.com/aroffringa/%(namelower)s/-/package_files/97237455/'], + 'filename': '%(namelower)s-v%(version)s.tar.bz2', + 'download_filename': 'download' + }, ] checksums = ['b43d8ca490ccf34dd22aae6c5ca88a5dcb3cff0526835d3f97fa6d239745e641'] diff --git a/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb index 352429157a29..a29330d963b8 100644 --- a/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb @@ -12,10 +12,8 @@ toolchain = {'name': 'GCCcore', 'version': '13.2.0'} source_urls = [GNU_SOURCE] sources = [SOURCE_TAR_GZ] -patches = ['%(name)s-%(version_major_minor)s.3_fix_syntax_error_old_glibc_gcc11.patch'] checksums = [ {SOURCE_TAR_GZ: '81542f5cefb8faacc39bbbc6c82ded80e3e4a88505ae72ea51df27525bcde04c'}, - {'%(name)s-%(version_major_minor)s.3_fix_syntax_error_old_glibc_gcc11.patch': '0e0aa7a1a4afbe1eefbafb196f162fa5068a03325e342fdc212a16e3c4c946d4'}, ] builddependencies = [ @@ -33,7 +31,7 @@ dependencies = [ # ('GnuTLS', '3.7.1'), ] -preconfigopts = "export PKG_CONFIG_PATH=%(sysroot)s/usr/lib64/pkgconfig:%(sysroot)s/usr/lib/pkgconfig:%(sysroot)s/usr/lib/%(arch)s-linux-gnu/pkgconfig && " +preconfigopts = "export PKG_CONFIG_PATH=%s && " % local_pc configopts = "--with-ssl=openssl " From 3b244518601cb0bdafa6d0c227c3f5e7eb0570bf Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 14:18:50 +0100 Subject: [PATCH 04/25] Fix HDF5 version --- .../a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb | 2 +- .../c/casacore/casacore-3.5.0-foss-2023b.eb | 4 ++-- .../easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 2 +- .../e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb | 2 +- .../h/HDF5/HDF5-1.12.2-gompi-2023b.eb | 23 +++++++++++++++++++ .../w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb | 2 +- .../w/WSClean/WSClean-3.4-foss-2023b.eb | 2 +- .../w/wget/wget-1.21.4-GCCcore-13.2.0.eb | 7 ++++-- 8 files changed, 35 insertions(+), 9 deletions(-) create mode 100644 easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb diff --git a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb index 9504cae77048..4ab6c90ad077 100644 --- a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb +++ b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb @@ -29,7 +29,7 @@ dependencies = [ ('Boost', '1.83.0'), ('CFITSIO', '4.3.1'), ('GSL', '2.7'), - ('HDF5', '1.14.3'), + ('HDF5', '1.12.2'), ('Python', '3.11.5'), ('Lua', '5.4.6'), ('libpng', '1.6.40'), diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb index dd91ba4b0731..2ab3009fa2b2 100644 --- a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb @@ -16,7 +16,7 @@ sources = ['v%(version)s.tar.gz'] patches = ['casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch'] checksums = [ '63f1c8eff932b0fcbd38c598a5811e6e5397b72835b637d6f426105a183b3f91', # casacore-3.5.0.tar.gz - '7b35d21cd654a7a215d604310f5372319ad21b6261f4a7ae038912b97ef22983', # casacore-3.5.0-add-C-style-header-for-GCC-13.1.patch + '7b35d21cd654a7a215d604310f5372319ad21b6261f4a7ae038912b97ef22983', # add-C-style-header-for-GCC-13.1.patch ] builddependencies = [ @@ -28,7 +28,7 @@ builddependencies = [ dependencies = [ ('CFITSIO', '4.3.1'), ('WCSLIB', '7.11'), - ('HDF5', '1.14.3'), + ('HDF5', '1.12.2'), ('GSL', '2.7'), ('Boost.Python', '1.83.0'), ('SciPy-bundle', '2023.11'), diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index d04a9372e56f..de0158ef1fa1 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -31,7 +31,7 @@ dependencies = [ ('CFITSIO', '4.3.1'), ('WCSLIB', '7.11'), ('GSL', '2.7'), - ('HDF5', '1.14.3'), + ('HDF5', '1.12.2'), ('Python', '3.11.5'), ('EveryBeam', '0.5.2'), ('Armadillo', '12.8.0'), diff --git a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb index 3f97c345d82c..b058202ca703 100644 --- a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb +++ b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb @@ -33,7 +33,7 @@ dependencies = [ ('CFITSIO', '4.3.1'), ('WCSLIB', '7.11'), ('GSL', '2.7'), - ('HDF5', '1.14.3'), + ('HDF5', '1.12.2'), ('Python', '3.11.5'), ('libxml2', '2.11.5'), ] diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb new file mode 100644 index 000000000000..95203788995e --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb @@ -0,0 +1,23 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.12.2' + +homepage = 'https://portal.hdfgroup.org/display/support' +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': 'gompi', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://support.hdfgroup.org/ftp/%(name)s/releases/%(namelower)s-%(version_major_minor)s/%(namelower)s-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14'] + +dependencies = [ + ('zlib', '1.2.13'), + ('Szip', '2.1.1'), +] + + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb index c4429beadd36..98d3625f6852 100644 --- a/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb +++ b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb @@ -27,7 +27,7 @@ dependencies = [ ] configopts = "--with-cfitsiolib=$EBROOTCFITSIO/lib --with-cfitsioinc=$EBROOTCFITSIO/include " -configopts += --with-pgplotlib=$EBROOTPGPLOT/lib --with-pgplotinc=$EBROOTPGPLOT/include " +configopts += "--with-pgplotlib=$EBROOTPGPLOT/lib --with-pgplotinc=$EBROOTPGPLOT/include " sanity_check_paths = { 'files': ['bin/wcsgrid', 'bin/wcsware', 'lib/libpgsbox-%(version)s.a', 'lib/libpgsbox.so'], diff --git a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb index 1b02e0161d8f..6782b9644c93 100644 --- a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb +++ b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb @@ -28,7 +28,7 @@ dependencies = [ ('Boost', '1.83.0'), ('CFITSIO', '4.3.1'), ('GSL', '2.7'), - ('HDF5', '1.14.3'), + ('HDF5', '1.12.2'), ('Python', '3.11.5'), ] diff --git a/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb index a29330d963b8..5219243fcbc7 100644 --- a/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb @@ -31,9 +31,12 @@ dependencies = [ # ('GnuTLS', '3.7.1'), ] +# make sure pkg-config picks up system packages (OpenSSL & co) +local_pc = "%(sysroot)s/usr/lib64/pkgconfig:" +local_pc += "%(sysroot)s/usr/lib/pkgconfig:" +local_pc += "%(sysroot)s/usr/lib/x86_64-linux-gnu/pkgconfig" preconfigopts = "export PKG_CONFIG_PATH=%s && " % local_pc -configopts = "--with-ssl=openssl " - +configopts = '--with-ssl=openssl ' # Optionally, you can use gnutls (default) instead of OpenSSL. # Do not forget to comment out configopts in that case. From 8f265dbd8e41ac749d0e4eca80568c06eac087e8 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 14:25:27 +0100 Subject: [PATCH 05/25] Fix trailing whitespace in HDF5 filename --- .../h/HDF5/HDF5-1.12.2-gompi-2023b.eb | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb deleted file mode 100644 index 95203788995e..000000000000 --- a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb +++ /dev/null @@ -1,23 +0,0 @@ -name = 'HDF5' -# Note: Odd minor releases are only RCs and should not be used. -version = '1.12.2' - -homepage = 'https://portal.hdfgroup.org/display/support' -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': 'gompi', 'version': '2023b'} -toolchainopts = {'pic': True, 'usempi': True} - -source_urls = ['https://support.hdfgroup.org/ftp/%(name)s/releases/%(namelower)s-%(version_major_minor)s/%(namelower)s-%(version)s/src'] -sources = [SOURCELOWER_TAR_GZ] -checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14'] - -dependencies = [ - ('zlib', '1.2.13'), - ('Szip', '2.1.1'), -] - - -moduleclass = 'data' From 828c5b243a850033b0ace212126297eb1c216de1 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 15:00:33 +0100 Subject: [PATCH 06/25] Fix trailing whitespace in HDF5 filename --- .../c/casacore/casacore-3.5.0-foss-2023b.eb | 6 ++--- .../h/HDF5/HDF5-1.12.2-gompi-2023b.eb | 23 +++++++++++++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb index 2ab3009fa2b2..9c92ba1d075d 100644 --- a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb @@ -39,12 +39,12 @@ configopts = '-DBUILD_PYTHON=NO -DBUILD_PYTHON3=YES -Wno-dev -DCXX11="ON" ' configopts += '-DDATA_DIR=%(installdir)s/data -DUSE_OPENMP=ON -DUSE_HDF5=ON ' configopts += '-DUSE_MPI=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' -download_cmd = 'wget --retry-connrefused ftp://anonymous@ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar ' -download_cmd += '-O /tmp/WSRT_Measures.ztar ' +local_download_cmd = 'wget --retry-connrefused ftp://anonymous@ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar ' +local_download_cmd += '-O /tmp/WSRT_Measures.ztar ' # Install casacore data postinstallcmds = [ - download_cmd, + local_download_cmd, "tar xfvz /tmp/WSRT_Measures.ztar --one-top-level=%(installdir)s/data", ] diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb new file mode 100644 index 000000000000..95203788995e --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb @@ -0,0 +1,23 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.12.2' + +homepage = 'https://portal.hdfgroup.org/display/support' +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': 'gompi', 'version': '2023b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://support.hdfgroup.org/ftp/%(name)s/releases/%(namelower)s-%(version_major_minor)s/%(namelower)s-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14'] + +dependencies = [ + ('zlib', '1.2.13'), + ('Szip', '2.1.1'), +] + + +moduleclass = 'data' From 0a49a066392f388d3854ba73324c88ecd96a1dc3 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 15:55:58 +0100 Subject: [PATCH 07/25] Change HDF5 to 1.14.3 in AOFlagger --- easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb index 4ab6c90ad077..9504cae77048 100644 --- a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb +++ b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb @@ -29,7 +29,7 @@ dependencies = [ ('Boost', '1.83.0'), ('CFITSIO', '4.3.1'), ('GSL', '2.7'), - ('HDF5', '1.12.2'), + ('HDF5', '1.14.3'), ('Python', '3.11.5'), ('Lua', '5.4.6'), ('libpng', '1.6.40'), From faed7bca8b34e20786cc349ead3056058e2e9bd7 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 16:01:17 +0100 Subject: [PATCH 08/25] Change HDF5 to 1.14.3 --- easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb | 2 +- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 2 +- easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb | 2 +- easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb index 9c92ba1d075d..f101eaf6ee91 100644 --- a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb @@ -28,7 +28,7 @@ builddependencies = [ dependencies = [ ('CFITSIO', '4.3.1'), ('WCSLIB', '7.11'), - ('HDF5', '1.12.2'), + ('HDF5', '1.14.3'), ('GSL', '2.7'), ('Boost.Python', '1.83.0'), ('SciPy-bundle', '2023.11'), diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index de0158ef1fa1..d04a9372e56f 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -31,7 +31,7 @@ dependencies = [ ('CFITSIO', '4.3.1'), ('WCSLIB', '7.11'), ('GSL', '2.7'), - ('HDF5', '1.12.2'), + ('HDF5', '1.14.3'), ('Python', '3.11.5'), ('EveryBeam', '0.5.2'), ('Armadillo', '12.8.0'), diff --git a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb index b058202ca703..3f97c345d82c 100644 --- a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb +++ b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb @@ -33,7 +33,7 @@ dependencies = [ ('CFITSIO', '4.3.1'), ('WCSLIB', '7.11'), ('GSL', '2.7'), - ('HDF5', '1.12.2'), + ('HDF5', '1.14.3'), ('Python', '3.11.5'), ('libxml2', '2.11.5'), ] diff --git a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb index 6782b9644c93..1b02e0161d8f 100644 --- a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb +++ b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb @@ -28,7 +28,7 @@ dependencies = [ ('Boost', '1.83.0'), ('CFITSIO', '4.3.1'), ('GSL', '2.7'), - ('HDF5', '1.12.2'), + ('HDF5', '1.14.3'), ('Python', '3.11.5'), ] From ecc9614b16c8d72389036ef74530455f4c5ff9a3 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 13 Feb 2024 16:09:16 +0100 Subject: [PATCH 09/25] Remove h/HDF5/HDF5-1.12.2-gompi-2023b.eb --- .../h/HDF5/HDF5-1.12.2-gompi-2023b.eb | 23 ------------------- 1 file changed, 23 deletions(-) delete mode 100644 easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb deleted file mode 100644 index 95203788995e..000000000000 --- a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2023b.eb +++ /dev/null @@ -1,23 +0,0 @@ -name = 'HDF5' -# Note: Odd minor releases are only RCs and should not be used. -version = '1.12.2' - -homepage = 'https://portal.hdfgroup.org/display/support' -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': 'gompi', 'version': '2023b'} -toolchainopts = {'pic': True, 'usempi': True} - -source_urls = ['https://support.hdfgroup.org/ftp/%(name)s/releases/%(namelower)s-%(version_major_minor)s/%(namelower)s-%(version)s/src'] -sources = [SOURCELOWER_TAR_GZ] -checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14'] - -dependencies = [ - ('zlib', '1.2.13'), - ('Szip', '2.1.1'), -] - - -moduleclass = 'data' From 1ee09d87c1c86e965b5397028b50087cd86f53df Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Wed, 14 Feb 2024 15:05:09 +0100 Subject: [PATCH 10/25] Switch pkgconf for pkg-config --- .../a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb | 2 +- .../pkg-config-0.29.2-GCCcore-13.2.0.eb | 35 ------------------- .../w/wget/wget-1.21.4-GCCcore-13.2.0.eb | 4 +-- 3 files changed, 3 insertions(+), 38 deletions(-) delete mode 100644 easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb diff --git a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb index 0151ba327e0b..eadec17227f4 100644 --- a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb +++ b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb @@ -18,7 +18,7 @@ checksums = ['24f2a2b259992d3c797d80f626878aa8e2ed5009d549dad57854bbcfb95e1ed0'] builddependencies = [ ('Autotools', '20220317'), - ('pkg-config', '0.29.2'), + ('pkgconf', '2.0.3'), ] dependencies = [ ('Eigen', '3.4.0'), diff --git a/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb deleted file mode 100644 index b9bda34701d8..000000000000 --- a/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-13.2.0.eb +++ /dev/null @@ -1,35 +0,0 @@ -easyblock = 'ConfigureMake' - -name = 'pkg-config' -version = '0.29.2' - -homepage = 'https://www.freedesktop.org/wiki/Software/pkg-config/' -description = """ - pkg-config is a helper tool used when compiling applications and libraries. - It helps you insert the correct compiler options on the command line so an - application can use gcc -o test test.c `pkg-config --libs --cflags glib-2.0` - for instance, rather than hard-coding values on where to find glib (or other - libraries). -""" - -toolchain = {'name': 'GCCcore', 'version': '13.2.0'} - -source_urls = ['https://%(name)s.freedesktop.org/releases/'] -sources = [SOURCELOWER_TAR_GZ] -checksums = ['6fc69c01688c9458a57eb9a1664c9aba372ccda420a02bf4429fe610e7e7d591'] - -builddependencies = [ - ('binutils', '2.40'), -] - -configopts = " --with-internal-glib" - -# don't use PAX, it might break. -tar_config_opts = True - -sanity_check_paths = { - 'files': ['bin/%(name)s'], - 'dirs': [], -} - -moduleclass = 'devel' diff --git a/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb index 5219243fcbc7..d77cd2923d7e 100644 --- a/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/w/wget/wget-1.21.4-GCCcore-13.2.0.eb @@ -18,7 +18,7 @@ checksums = [ builddependencies = [ ('binutils', '2.40'), - ('pkg-config', '0.29.2'), + ('pkgconf', '2.0.3'), ('Perl', '5.38.0'), ] dependencies = [ @@ -31,7 +31,7 @@ dependencies = [ # ('GnuTLS', '3.7.1'), ] -# make sure pkg-config picks up system packages (OpenSSL & co) +# make sure pkgconfig picks up system packages (OpenSSL & co) local_pc = "%(sysroot)s/usr/lib64/pkgconfig:" local_pc += "%(sysroot)s/usr/lib/pkgconfig:" local_pc += "%(sysroot)s/usr/lib/x86_64-linux-gnu/pkgconfig" From 2e217a27a443d5ae4716d4eab1f53ea76b7b9223 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Wed, 14 Feb 2024 16:20:27 +0100 Subject: [PATCH 11/25] Process comments --- .../a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb | 6 ------ .../a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb | 7 ++++--- .../c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb | 2 +- .../c/casacore/casacore-3.5.0-foss-2023b.eb | 8 ++++++-- .../easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 5 ----- .../e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb | 7 +------ .../l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb | 2 +- .../p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb | 7 +++++-- .../p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb | 16 +++++++++++----- .../w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb | 2 +- .../w/WSClean/WSClean-3.4-foss-2023b.eb | 5 ----- 11 files changed, 30 insertions(+), 37 deletions(-) diff --git a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb index 9504cae77048..d1fe2a3f7dd3 100644 --- a/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb +++ b/easybuild/easyconfigs/a/AOFlagger/AOFlagger-3.4.0-foss-2023b.eb @@ -36,12 +36,6 @@ dependencies = [ ('libxml2', '2.11.5'), ] -# Without this, the wrong (system) python is picked up by cmake -# in cases where the system python is newer than the one used in these EasyConfigs -# See PR # 19119 -configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " - - sanity_check_paths = { 'files': ['include/%(namelower)s.h', 'bin/%(namelower)s'], 'dirs': ['bin'], diff --git a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb index eadec17227f4..04b73ebc183e 100644 --- a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb +++ b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb @@ -12,6 +12,8 @@ description = "ARPACK is a collection of Fortran77 subroutines designed to solve toolchain = {'name': 'foss', 'version': '2023b'} toolchainopts = {'pic': True, 'usempi': True} +github_account = 'opencollab' + source_urls = [GITHUB_SOURCE] sources = ['%(version)s.tar.gz'] checksums = ['24f2a2b259992d3c797d80f626878aa8e2ed5009d549dad57854bbcfb95e1ed0'] @@ -27,10 +29,9 @@ dependencies = [ preconfigopts = "sh bootstrap && " configopts = '--enable-mpi --with-pic --with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK"' -github_account = 'opencollab' - sanity_check_paths = { - 'files': ['lib64/libarpack.la', 'lib64/libarpack.so', 'lib64/libparpack.la', 'lib64/libparpack.so'], + 'files': ['lib64/libarpack.la', 'lib64/libarpack.%s' % SHLIB_EXT, + 'lib64/libparpack.la', 'lib64/libparpack.%s' % SHLIB_EXT], 'dirs': [], } diff --git a/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb b/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb index 80c940b906bb..c22b4a16118e 100644 --- a/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/c/CFITSIO/CFITSIO-4.3.1-GCCcore-13.2.0.eb @@ -34,7 +34,7 @@ buildopts = "&& make shared && make testprog" sanity_check_paths = { - 'files': ['lib/libcfitsio.a', 'lib/libcfitsio.so'], + 'files': ['lib/libcfitsio.a', 'lib/libcfitsio.%s' % SHLIB_EXT], 'dirs': ['include'], } diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb index f101eaf6ee91..d83d40387f2c 100644 --- a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb @@ -37,7 +37,7 @@ dependencies = [ configopts = '-DBUILD_PYTHON=NO -DBUILD_PYTHON3=YES -Wno-dev -DCXX11="ON" ' configopts += '-DDATA_DIR=%(installdir)s/data -DUSE_OPENMP=ON -DUSE_HDF5=ON ' -configopts += '-DUSE_MPI=ON -DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python ' +configopts += '-DUSE_MPI=ON ' local_download_cmd = 'wget --retry-connrefused ftp://anonymous@ftp.astron.nl/outgoing/Measures/WSRT_Measures.ztar ' local_download_cmd += '-O /tmp/WSRT_Measures.ztar ' @@ -49,7 +49,11 @@ postinstallcmds = [ ] sanity_check_paths = { - 'files': ['lib/libcasa_casa.so', 'lib/libcasa_mirlib.so', 'lib/libcasa_ms.so'], + 'files': [ + 'lib/libcasa_casa.%s' % SHLIB_EXT, + 'lib/libcasa_mirlib.%s' % SHLIB_EXT, + 'lib/libcasa_ms.%s' % SHLIB_EXT, + ], 'dirs': ['bin', 'include/%(name)s'], } diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index d04a9372e56f..03532ba746d2 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -38,11 +38,6 @@ dependencies = [ ('AOFlagger', '3.4.0'), ] -# Without this, the wrong (system) python is picked up by cmake -# in cases where the system python is newer than the one used in these EasyConfigs -# See PR # 19119 -configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " - sanity_check_paths = { 'files': ['include/include/%(namelower)s/base/%(name)s.h', 'bin/%(name)s'], diff --git a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb index 3f97c345d82c..6192a7ace663 100644 --- a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb +++ b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb @@ -38,14 +38,9 @@ dependencies = [ ('libxml2', '2.11.5'), ] -# Without this, the wrong (system) python is picked up by cmake -# in cases where the system python is newer than the one used in these EasyConfigs -# See PR # 19119 -configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " - sanity_check_paths = { - 'files': ['include/%(name)s/beamformer.h', 'lib/libeverybeam.so'], + 'files': ['include/%(name)s/beamformer.h', 'lib/libeverybeam.%s' % SHLIB_EXT], 'dirs': [], } diff --git a/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb index 662ff77ec42b..042215912d5e 100644 --- a/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb @@ -18,7 +18,7 @@ builddependencies = [ sanity_check_paths = { - 'files': ['bin/idn2', 'lib/%(name)s.so'], + 'files': ['bin/idn2', 'lib/%(name)s.%s' % SHLIB_EXT], 'dirs': ['include'], } diff --git a/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb index ca479a2ca859..6815128938a1 100644 --- a/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PCRE/PCRE-8.45-GCCcore-13.2.0.eb @@ -27,12 +27,15 @@ dependencies = [ ('zlib', '1.2.13'), ] -configopts = " --enable-utf --enable-unicode-properties --enable-pcre16 --enable-pcre32" +configopts = "--enable-utf --enable-unicode-properties --enable-pcre16 --enable-pcre32" sanity_check_paths = { 'files': [ - 'bin/%(namelower)s-config', 'include/%(namelower)s.h', 'share/man/man3/%(namelower)s.3', 'lib/libpcre32.so' + 'bin/%(namelower)s-config', + 'include/%(namelower)s.h', + 'share/man/man3/%(namelower)s.3', + 'lib/libpcre32.%s' % SHLIB_EXT ], 'dirs': ['lib/pkgconfig', 'share/doc/%(namelower)s/html', 'share/man/man1'], } diff --git a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb index bc1093a8a5c1..d2e3d25fb6d6 100644 --- a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb @@ -31,10 +31,10 @@ dependencies = [ # create .so symlinks for shared libraries postinstallcmds = [ - "cd %(installdir)s/lib && ln -s libcpgplot.so.%(version)s libcpgplot.so.5", - "cd %(installdir)s/lib && ln -s libcpgplot.so.%(version)s libcpgplot.so", - "cd %(installdir)s/lib && ln -s libpgplot.so.%(version)s libpgplot.so.5", - "cd %(installdir)s/lib && ln -s libpgplot.so.%(version)s libpgplot.so", + "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s.5" % SHLIB_EXT, + "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s" % SHLIB_EXT, + "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s.5" % SHLIB_EXT, + "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s" % SHLIB_EXT, ] files_to_copy = [ (['pgdemo*'], 'bin'), @@ -45,7 +45,13 @@ files_to_copy = [ cmds_map = [('.*', './makemake . linux g77_gcc && make && make shared && make cpg && make cpg-shared')] sanity_check_paths = { - 'files': ['include/cpgplot.h', 'lib/libpgplot.a', 'lib/libcpgplot.a', 'lib/libpgplot.so', 'lib/libcpgplot.so'], + 'files': [ + 'include/cpgplot.h', + 'lib/libpgplot.a', + 'lib/libcpgplot.a', + 'lib/libpgplot.%s' % SHLIB_EXT, + 'lib/libcpgplot.%s' % SHLIB_EXT + ], 'dirs': ['bin'], } diff --git a/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb index 98d3625f6852..4a6ebb8aacfa 100644 --- a/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb +++ b/easybuild/easyconfigs/w/WCSLIB/WCSLIB-7.11-GCC-13.2.0.eb @@ -30,7 +30,7 @@ configopts = "--with-cfitsiolib=$EBROOTCFITSIO/lib --with-cfitsioinc=$EBROOTCFIT configopts += "--with-pgplotlib=$EBROOTPGPLOT/lib --with-pgplotinc=$EBROOTPGPLOT/include " sanity_check_paths = { - 'files': ['bin/wcsgrid', 'bin/wcsware', 'lib/libpgsbox-%(version)s.a', 'lib/libpgsbox.so'], + 'files': ['bin/wcsgrid', 'bin/wcsware', 'lib/libpgsbox-%(version)s.a', 'lib/libpgsbox.%s' % SHLIB_EXT], 'dirs': ['include'], } diff --git a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb index 1b02e0161d8f..9be780efeb39 100644 --- a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb +++ b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb @@ -32,11 +32,6 @@ dependencies = [ ('Python', '3.11.5'), ] -# Without this, the wrong (system) python is picked up by cmake -# in cases where the system python is newer than the one used in these EasyConfigs -# See PR # 19119 -configopts = "-DPython3_EXECUTABLE=$EBROOTPYTHON/bin/python " - sanity_check_paths = { 'files': ['include/wscleaninterface.h', 'bin/%(namelower)s'], From e4d995d5edac69183296455f15f2548feec99d55 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Wed, 14 Feb 2024 17:29:57 +0100 Subject: [PATCH 12/25] Fix linting errors --- .../easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb | 2 +- .../easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb | 2 +- .../easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb index d83d40387f2c..741298d14886 100644 --- a/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb +++ b/easybuild/easyconfigs/c/casacore/casacore-3.5.0-foss-2023b.eb @@ -52,7 +52,7 @@ sanity_check_paths = { 'files': [ 'lib/libcasa_casa.%s' % SHLIB_EXT, 'lib/libcasa_mirlib.%s' % SHLIB_EXT, - 'lib/libcasa_ms.%s' % SHLIB_EXT, + 'lib/libcasa_ms.%s' % SHLIB_EXT, ], 'dirs': ['bin', 'include/%(name)s'], } diff --git a/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb index 042215912d5e..fea33552f7a9 100644 --- a/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/l/libidn2/libidn2-2.3.2-GCCcore-13.2.0.eb @@ -18,7 +18,7 @@ builddependencies = [ sanity_check_paths = { - 'files': ['bin/idn2', 'lib/%(name)s.%s' % SHLIB_EXT], + 'files': ['bin/idn2', 'lib/%s.%s' % (name, SHLIB_EXT)], 'dirs': ['include'], } diff --git a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb index d2e3d25fb6d6..96edad225253 100644 --- a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb @@ -31,10 +31,10 @@ dependencies = [ # create .so symlinks for shared libraries postinstallcmds = [ - "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s.5" % SHLIB_EXT, - "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s" % SHLIB_EXT, - "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s.5" % SHLIB_EXT, - "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s" % SHLIB_EXT, + "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s.5" % (SHLIB_EXT, SHLIB_EXT), + "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s" % (SHLIB_EXT, SHLIB_EXT), + "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s.5" % (SHLIB_EXT, SHLIB_EXT), + "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s" % (SHLIB_EXT, SHLIB_EXT), ] files_to_copy = [ (['pgdemo*'], 'bin'), From ee21e00bf7b6704a98bb7afbb3a7546f73864035 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Wed, 14 Feb 2024 17:59:12 +0100 Subject: [PATCH 13/25] Fix linting errors --- .../easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb index 96edad225253..2550198c98c5 100644 --- a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb @@ -31,10 +31,10 @@ dependencies = [ # create .so symlinks for shared libraries postinstallcmds = [ - "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s.5" % (SHLIB_EXT, SHLIB_EXT), - "cd %(installdir)s/lib && ln -s libcpgplot.%s.%(version)s libcpgplot.%s" % (SHLIB_EXT, SHLIB_EXT), - "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s.5" % (SHLIB_EXT, SHLIB_EXT), - "cd %(installdir)s/lib && ln -s libpgplot.%s.%(version)s libpgplot.%s" % (SHLIB_EXT, SHLIB_EXT), + "cd %(installdir)s/lib && ln -s libcpgplot.%(SHLIB_EXT)s.%(version)s libcpgplot.%(SHLIB_EXT)s.5", + "cd %(installdir)s/lib && ln -s libcpgplot.%(SHLIB_EXT)s.%(version)s libcpgplot.%(SHLIB_EXT)s", + "cd %(installdir)s/lib && ln -s libpgplot.%(SHLIB_EXT)s.%(version)s libpgplot.%(SHLIB_EXT)s.5", + "cd %(installdir)s/lib && ln -s libpgplot.%(SHLIB_EXT)s.%(version)s libpgplot.%(SHLIB_EXT)s", ] files_to_copy = [ (['pgdemo*'], 'bin'), From 860f1bdae59d2a071d3c5c9780e2d0781812b16d Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Wed, 14 Feb 2024 18:07:48 +0100 Subject: [PATCH 14/25] Fix linting errors --- .../easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb index 2550198c98c5..526fb7c27d59 100644 --- a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb @@ -31,11 +31,12 @@ dependencies = [ # create .so symlinks for shared libraries postinstallcmds = [ - "cd %(installdir)s/lib && ln -s libcpgplot.%(SHLIB_EXT)s.%(version)s libcpgplot.%(SHLIB_EXT)s.5", - "cd %(installdir)s/lib && ln -s libcpgplot.%(SHLIB_EXT)s.%(version)s libcpgplot.%(SHLIB_EXT)s", - "cd %(installdir)s/lib && ln -s libpgplot.%(SHLIB_EXT)s.%(version)s libpgplot.%(SHLIB_EXT)s.5", - "cd %(installdir)s/lib && ln -s libpgplot.%(SHLIB_EXT)s.%(version)s libpgplot.%(SHLIB_EXT)s", + "cd %%(installdir)s/lib && ln -s libcpgplot.%s.%%(version)s libcpgplot.%s.5" % (SHLIB_EXT, SHLIB_EXT), + "cd %%(installdir)s/lib && ln -s libcpgplot.%s.%%(version)s libcpgplot.%s" % (SHLIB_EXT, SHLIB_EXT), + "cd %%(installdir)s/lib && ln -s libpgplot.%s.%%(version)s libpgplot.%s.5" % (SHLIB_EXT, SHLIB_EXT), + "cd %%(installdir)s/lib && ln -s libpgplot.%s.%%(version)s libpgplot.%s" % (SHLIB_EXT, SHLIB_EXT), ] + files_to_copy = [ (['pgdemo*'], 'bin'), (['libpgplot.*', 'libcpgplot.*'], 'lib'), From f3ab2f24b487395e9e29bdbe8460538ef580cc67 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 19 Feb 2024 12:59:26 +0100 Subject: [PATCH 15/25] Add IDG as a dependency --- .../easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 1 + .../easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb | 52 +++++++++++++++++++ .../w/WSClean/WSClean-3.4-foss-2023b.eb | 1 + 3 files changed, 54 insertions(+) create mode 100644 easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index 03532ba746d2..4bb7e93399d6 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -36,6 +36,7 @@ dependencies = [ ('EveryBeam', '0.5.2'), ('Armadillo', '12.8.0'), ('AOFlagger', '3.4.0'), + ('IDG', '1.2.0'), ] diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb new file mode 100644 index 000000000000..c073781571a4 --- /dev/null +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb @@ -0,0 +1,52 @@ +easyblock = 'CMakeMake' + +name = 'IDG' +version = '1.2.0' + +homepage = 'https://idg.readthedocs.io/' +description = """Image Domain Gridding (IDG) is a fast method for convolutional resampling (gridding/degridding) +of radio astronomical data (visibilities). Direction dependent effects (DDEs) or A-tems can be applied +in the gridding process. +The algorithm is described in "Image Domain Gridding: a fast method for convolutional resampling of visibilities", +Van der Tol (2018). +The implementation is described in "Radio-astronomical imaging on graphics processors", Veenboer (2020). +Please cite these papers in publications using IDG. +""" + +toolchain = {'name': 'foss', 'version': '2023b'} + +sources = [ + { + 'filename': '%(name)s-v%(version)s.tar.gz', + 'git_config': { + 'url': 'https://gitlab.com/astron-idg', + 'repo_name': '%(name)s', + 'tag': '%(version)s', + 'clone_into': '%(name)s', + 'recursive': True + } + }, +] +checksums = [None] + +builddependencies = [ + ('CMake', '3.27.6'), +] +dependencies = [ + ('Boost', '1.83.0'), + ('Python', '3.11.5'), +] + + +configopts = "-DBUILD_WITH_MPI=ON -DBUILD_WITH_PYTHON=ON " +configopts += "-DBUILD_WITH_DEMOS=ON " + +sanity_check_paths = { + 'files': [ + 'include/%(namelower)s-api.h', 'include/%(namelower)s.h', + 'lib/libidg.%s' % SHLIB_EXT, 'lib/libidg-api.%s' % SHLIB_EXT, + ], + 'dirs': ['include', 'lib', 'lib64'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb index 9be780efeb39..b1bdea0de218 100644 --- a/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb +++ b/easybuild/easyconfigs/w/WSClean/WSClean-3.4-foss-2023b.eb @@ -30,6 +30,7 @@ dependencies = [ ('GSL', '2.7'), ('HDF5', '1.14.3'), ('Python', '3.11.5'), + ('IDG', '1.2.0'), ] From 68d46560f1fc71a3c3812f39167b31ad912ae865 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 20 Feb 2024 14:32:34 +0100 Subject: [PATCH 16/25] Change author arpack + use variable for PGPlot source --- .../easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb | 3 +-- easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb index 04b73ebc183e..10d825ca22fa 100644 --- a/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb +++ b/easybuild/easyconfigs/a/arpack-ng/arpack-ng-3.9.0-foss-2023b.eb @@ -1,6 +1,5 @@ -# # # Author: Robert Mijakovic -# # + easyblock = 'ConfigureMake' name = 'arpack-ng' diff --git a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb index 526fb7c27d59..fef204118222 100644 --- a/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb +++ b/easybuild/easyconfigs/p/PGPLOT/PGPLOT-5.2.2-GCCcore-13.2.0.eb @@ -13,7 +13,7 @@ can be directed to the appropriate device at run time.""" toolchain = {'name': 'GCCcore', 'version': '13.2.0'} source_urls = ['ftp://ftp.astro.caltech.edu/pub/%(namelower)s/'] -sources = ['%(namelower)s522.tar.gz'] +sources = ['%%(namelower)s%s.tar.gz' % version.replace('.', '')] patches = ['%(name)s-%(version_major_minor)s.2_gfortran-deps-fixes.patch'] checksums = [ {'pgplot522.tar.gz': 'a5799ff719a510d84d26df4ae7409ae61fe66477e3f1e8820422a9a4727a5be4'}, From 9c8529ed16c580412151b4ac89d8be2a735450a2 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Tue, 20 Feb 2024 14:57:16 +0100 Subject: [PATCH 17/25] Add comment to explain git_config usage --- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 2 ++ easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb | 2 ++ easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb | 2 ++ 3 files changed, 6 insertions(+) diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index 4bb7e93399d6..72d2b54bee75 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -11,6 +11,8 @@ toolchain = {'name': 'foss', 'version': '2023b'} sources = [ { 'filename': '%(name)s-v%(version)s.tar.gz', + # Repo uses git submodules, which are not included in the release tarballs. + # Thus, we let EasyBuild download directly from the git repository. 'git_config': { 'url': 'https://git.astron.nl/RD', 'repo_name': '%(name)s', diff --git a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb index 6192a7ace663..bec1bf004e74 100644 --- a/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb +++ b/easybuild/easyconfigs/e/EveryBeam/EveryBeam-0.5.2-foss-2023b.eb @@ -12,6 +12,8 @@ toolchain = {'name': 'foss', 'version': '2023b'} sources = [ { 'filename': '%(name)s-v%(version)s.tar.gz', + # Repo uses git submodules, which are not included in the release tarballs. + # Thus, we let EasyBuild download directly from the git repository. 'git_config': { 'url': 'https://git.astron.nl/RD', 'repo_name': '%(name)s', diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb index c073781571a4..910c9ac70963 100644 --- a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb @@ -18,6 +18,8 @@ toolchain = {'name': 'foss', 'version': '2023b'} sources = [ { 'filename': '%(name)s-v%(version)s.tar.gz', + # Repo uses git submodules, which are not included in the release tarballs. + # Thus, we let EasyBuild download directly from the git repository. 'git_config': { 'url': 'https://gitlab.com/astron-idg', 'repo_name': '%(name)s', From 61f73927a1550c3a3fca069e63d5886e05edaa4e Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Fri, 1 Mar 2024 17:48:15 +0100 Subject: [PATCH 18/25] Temporarily remove IDG from DP3 dependencies --- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index 72d2b54bee75..d1040f85e886 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -38,7 +38,7 @@ dependencies = [ ('EveryBeam', '0.5.2'), ('Armadillo', '12.8.0'), ('AOFlagger', '3.4.0'), - ('IDG', '1.2.0'), + # ('IDG', '1.2.0'), # test build in EESSI without IDG dependency ] From c3cf0dd0ce8e692dc0ebf6f11af0480c8393faf6 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 11 Mar 2024 10:54:19 +0100 Subject: [PATCH 19/25] Uncomment IDG from DP3 dependencies --- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index d1040f85e886..72d2b54bee75 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -38,7 +38,7 @@ dependencies = [ ('EveryBeam', '0.5.2'), ('Armadillo', '12.8.0'), ('AOFlagger', '3.4.0'), - # ('IDG', '1.2.0'), # test build in EESSI without IDG dependency + ('IDG', '1.2.0'), ] From 1c19ed10e93f7ccca098c20f25973aec7f23b85e Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 11 Mar 2024 11:31:40 +0100 Subject: [PATCH 20/25] Add patches to IDG-1.2.0 and DP3-6.0 for xsimd error on neoverse v1 --- .../easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 1 + ...0_fix-for-xsimd-error-on-neoverse-v1.patch | 16 +++ .../easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb | 1 + ...0_fix-for-xsimd-error-on-neoverse-v1.patch | 101 ++++++++++++++++++ 4 files changed, 119 insertions(+) create mode 100644 easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch create mode 100644 easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index 72d2b54bee75..4ea0deb57a99 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -22,6 +22,7 @@ sources = [ } }, ] +patches = ['DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch'] checksums = [None] builddependencies = [ diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch b/easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch new file mode 100644 index 000000000000..3eff93a30e6a --- /dev/null +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch @@ -0,0 +1,16 @@ +--- DP3.orig/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:20:32.024804259 +0100 ++++ DP3/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:21:32.851493709 +0100 +@@ -6,7 +6,7 @@ + set(xtl_GIT_TAG b3d0091a77af52f1b479b5b768260be4873aa8a7) + endif() + if (NOT xsimd_GIT_TAG) +- set(xsimd_GIT_TAG 2f5eddf8912c7e2527f0c50895c7560b964d29af) ++ set(xsimd_GIT_TAG 1d8536b393171b899031f01b7c2d63858b05665c) + endif() + if (NOT xtensor_GIT_TAG) + set(xtensor_GIT_TAG 0.24.2) +@@ -65,3 +65,4 @@ + endif() + + endforeach() ++ diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb index 910c9ac70963..b0640ef930b1 100644 --- a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb @@ -29,6 +29,7 @@ sources = [ } }, ] +patches = ['IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch'] checksums = [None] builddependencies = [ diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch b/easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch new file mode 100644 index 000000000000..921ed4fa3676 --- /dev/null +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch @@ -0,0 +1,101 @@ +--- IDG.orig/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:27:53.254059321 +0100 ++++ IDG/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:28:41.974412520 +0100 +@@ -1,35 +1,68 @@ +-#Allow overriding XTensor versions +-if (NOT XTL_GIT_TAG) +- set(XTL_GIT_TAG 0.7.4) ++#Allow overriding XTensor versions, e.g., for testing a new version in DP3. ++#For avoiding ODR violations, repositories that use aocommon should not override ++#these versions in their master branch. That way, the XTensor versions will ++#be equal in all repositories. ++if (NOT xtl_GIT_TAG) ++ set(xtl_GIT_TAG b3d0091a77af52f1b479b5b768260be4873aa8a7) + endif() +-if (NOT XSIMD_GIT_TAG) +- set(XSIMD_GIT_TAG 8.1.0) ++if (NOT xsimd_GIT_TAG) ++ set(xsimd_GIT_TAG 1d8536b393171b899031f01b7c2d63858b05665c) + endif() +-if (NOT XTENSOR_GIT_TAG) +- set(XTENSOR_GIT_TAG 0.24.2) ++if (NOT xtensor_GIT_TAG) ++ set(xtensor_GIT_TAG 0.24.2) ++endif() ++if (NOT xtensor-blas_GIT_TAG) ++ set(xtensor-blas_GIT_TAG 0.20.0) ++endif() ++if (NOT xtensor-fftw_GIT_TAG) ++ set(xtensor-fftw_GIT_TAG e6be85a376624da10629b6525c81759e02020308) ++endif() ++ ++# By default, only load the basic 'xtensor' and 'xtl' modules. ++if (NOT XTENSOR_LIBRARIES) ++ set(XTENSOR_LIBRARIES xtl xtensor) # Load xtl first, since xtensor uses it. + endif() + + include(FetchContent) + +-FetchContent_Declare( +- xtl +- GIT_REPOSITORY https://github.com/xtensor-stack/xtl.git +- GIT_SHALLOW TRUE +- GIT_TAG ${XTL_GIT_TAG}) +-FetchContent_Declare( +- xsimd +- GIT_REPOSITORY https://github.com/xtensor-stack/xsimd.git +- GIT_SHALLOW TRUE +- GIT_TAG ${XSMID_GIT_TAG}) +-FetchContent_Declare( +- xtensor +- GIT_REPOSITORY https://github.com/xtensor-stack/xtensor.git +- GIT_SHALLOW TRUE +- GIT_TAG ${XTENSOR_GIT_TAG}) +- +-# Ensure XTensor headers are included as system headers. +-foreach(LIB xtl;xsimd;xtensor) +- FetchContent_MakeAvailable(${LIB}) +- get_target_property(IID ${LIB} INTERFACE_INCLUDE_DIRECTORIES) +- set_target_properties(${LIB} PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${IID}") +-endforeach() +\ No newline at end of file ++foreach(LIB ${XTENSOR_LIBRARIES}) ++ set(XT_GIT_TAG "${${LIB}_GIT_TAG}") ++ if (NOT XT_GIT_TAG) ++ message(FATAL_ERROR "Unknown git tag for XTensor library '${LIB}'") ++ endif() ++ ++ # Checking out a specific git commit hash does not (always) work when ++ # GIT_SHALLOW is TRUE. See the documentation for GIT_TAG in ++ # https://cmake.org/cmake/help/latest/module/ExternalProject.html ++ # -> If the GIT_TAG is a commit hash, use a non-shallow clone. ++ string(LENGTH "${XT_GIT_TAG}" XT_TAG_LENGTH) ++ set(XT_SHALLOW TRUE) ++ if(XT_TAG_LENGTH EQUAL 40 AND XT_GIT_TAG MATCHES "^[0-9a-f]+$") ++ set(XT_SHALLOW FALSE) ++ endif() ++ ++ FetchContent_Declare( ++ ${LIB} ++ GIT_REPOSITORY https://github.com/xtensor-stack/${LIB}.git ++ GIT_SHALLOW ${XT_SHALLOW} ++ GIT_TAG ${XT_GIT_TAG}) ++ ++ if ("${LIB}" STREQUAL "xtensor-fftw") ++ # Unlike the other libraries, xtensor-fftw does not define a CMake target. ++ # Its CMakeLists.txt also loads FFTW using custom options. ++ # -> Do not build this library, and define an INTERFACE target manually. ++ FetchContent_GetProperties(${LIB}) ++ if(NOT ${${LIB}_POPULATED}) ++ FetchContent_Populate(${LIB}) ++ endif() ++ add_library(${LIB} INTERFACE) ++ target_include_directories(${LIB} SYSTEM INTERFACE "${${LIB}_SOURCE_DIR}/include") ++ else() ++ FetchContent_MakeAvailable(${LIB}) ++ # Ensure XTensor headers are included as system headers. ++ get_target_property(IID ${LIB} INTERFACE_INCLUDE_DIRECTORIES) ++ set_target_properties(${LIB} PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${IID}") ++ endif() ++ ++endforeach() ++ From b8185d173bc8a6d28dd082d4a40f051d79a8266a Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 11 Mar 2024 11:52:35 +0100 Subject: [PATCH 21/25] Add checksums for patch files --- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 5 ++++- easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index 4ea0deb57a99..adf88bc98449 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -23,7 +23,10 @@ sources = [ }, ] patches = ['DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch'] -checksums = [None] +checksums = [ + None, # checksum for git clone source is non-deterministic + '8dab4757929966e8a8d19bf5e1e5491ad8df8dcd728c4fff414e284f87be5a85', # DP3-6.0_fix-for-xsimd-error-on-neoverse-v1 +] builddependencies = [ ('CMake', '3.27.6'), diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb index b0640ef930b1..5d25803f6ed5 100644 --- a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb @@ -30,7 +30,10 @@ sources = [ }, ] patches = ['IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch'] -checksums = [None] +checksums = [ + None, # checksum for git clone source is non-deterministic + '02542eb931f3dd0bb220084e753a9982c155c58ec2e6731fc64f42692eefe4a5', # IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch +] builddependencies = [ ('CMake', '3.27.6'), From 1d6d6a9bafe79480f03f7d62ac2c6d0f0397a36d Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 11 Mar 2024 13:08:06 +0100 Subject: [PATCH 22/25] Add description to patch files --- .../d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch | 3 +++ .../i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch | 3 +++ 2 files changed, 6 insertions(+) diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch b/easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch index 3eff93a30e6a..abfd8e34f069 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch @@ -1,3 +1,6 @@ +# Fix for XSIMD build error on Neoverse V1 +# See: https://github.com/xtensor-stack/xsimd/issues/1005 and https://github.com/xtensor-stack/xsimd/commit/1d8536b +# Mar 11th 2024 by T. Kok (SURF) --- DP3.orig/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:20:32.024804259 +0100 +++ DP3/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:21:32.851493709 +0100 @@ -6,7 +6,7 @@ diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch b/easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch index 921ed4fa3676..619cd243570f 100644 --- a/easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch @@ -1,3 +1,6 @@ +# Fix for XSIMD build error on Neoverse V1 +# See: https://github.com/xtensor-stack/xsimd/issues/1005 and https://github.com/xtensor-stack/xsimd/commit/1d8536b +# Mar 11th 2024 by T. Kok (SURF) --- IDG.orig/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:27:53.254059321 +0100 +++ IDG/external/aocommon/CMake/FetchXTensor.cmake 2024-03-11 11:28:41.974412520 +0100 @@ -1,35 +1,68 @@ From 11ff54d922be2cde2be01dc27390c9c0db887ff2 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 11 Mar 2024 13:23:12 +0100 Subject: [PATCH 23/25] Fix checksum for IDG patch --- easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb index 5d25803f6ed5..d88e2712bda8 100644 --- a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb @@ -32,7 +32,7 @@ sources = [ patches = ['IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch'] checksums = [ None, # checksum for git clone source is non-deterministic - '02542eb931f3dd0bb220084e753a9982c155c58ec2e6731fc64f42692eefe4a5', # IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch + '3811028d7757cd7085501bf3209f8eb526eafb67caf2950110a25a7a072df3c1', # IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch ] builddependencies = [ From d32b4c03a14b6882549c1ac1f479a709f46b0646 Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 11 Mar 2024 13:36:00 +0100 Subject: [PATCH 24/25] Fix checksum for DP3 patch --- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index adf88bc98449..02cb233ed6ea 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -25,7 +25,7 @@ sources = [ patches = ['DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch'] checksums = [ None, # checksum for git clone source is non-deterministic - '8dab4757929966e8a8d19bf5e1e5491ad8df8dcd728c4fff414e284f87be5a85', # DP3-6.0_fix-for-xsimd-error-on-neoverse-v1 + '7f5069388846c9c715013d5a3a267a6d8e266520445a6427e63e9d52d3046c9d', # DP3-6.0_fix-for-xsimd-error-on-neoverse-v1 ] builddependencies = [ From 0cd024d185a969cda196b5a1f54a1d2e6edcf40a Mon Sep 17 00:00:00 2001 From: Tim Kok Date: Mon, 11 Mar 2024 13:55:31 +0100 Subject: [PATCH 25/25] Remove patch comment to above line --- easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb | 3 ++- easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb index 02cb233ed6ea..8373cc5f8bdf 100644 --- a/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb +++ b/easybuild/easyconfigs/d/DP3/DP3-6.0-foss-2023b.eb @@ -25,7 +25,8 @@ sources = [ patches = ['DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch'] checksums = [ None, # checksum for git clone source is non-deterministic - '7f5069388846c9c715013d5a3a267a6d8e266520445a6427e63e9d52d3046c9d', # DP3-6.0_fix-for-xsimd-error-on-neoverse-v1 + # DP3-6.0_fix-for-xsimd-error-on-neoverse-v1.patch + '7f5069388846c9c715013d5a3a267a6d8e266520445a6427e63e9d52d3046c9d', ] builddependencies = [ diff --git a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb index d88e2712bda8..1efa15553447 100644 --- a/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb +++ b/easybuild/easyconfigs/i/IDG/IDG-1.2.0-foss-2023b.eb @@ -32,7 +32,8 @@ sources = [ patches = ['IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch'] checksums = [ None, # checksum for git clone source is non-deterministic - '3811028d7757cd7085501bf3209f8eb526eafb67caf2950110a25a7a072df3c1', # IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch + # IDG-1.2.0_fix-for-xsimd-error-on-neoverse-v1.patch + '3811028d7757cd7085501bf3209f8eb526eafb67caf2950110a25a7a072df3c1', ] builddependencies = [