diff --git a/Custom_EasyBlocks/juliapackage.py b/Custom_EasyBlocks/juliapackage.py index 58cf4cd4b285828e0e936c14f9c31a1806565a50..f0c334623cb0b3bfd1e96f732e90edaa9a406b85 100644 --- a/Custom_EasyBlocks/juliapackage.py +++ b/Custom_EasyBlocks/juliapackage.py @@ -147,7 +147,10 @@ class JuliaPackage(ExtensionEasyBlock): Custom sanity check for Julia packages """ #NOTE: we don't use Pkg.status with arguments as only supported for Julia >=v1.1 - cmd = "unset EBJULIA_USER_DEPOT_PATH && unset EBJULIA_ADMIN_DEPOT_PATH && export JULIA_DEPOT_PATH=%s && export JULIA_PROJECT=%s && julia --eval 'using Pkg; Pkg.status()'" % (self.depot, self.projectdir) + # if juliaver >= 1.1: + cmd = "unset EBJULIA_USER_DEPOT_PATH && unset EBJULIA_ADMIN_DEPOT_PATH && export JULIA_DEPOT_PATH=%s && export JULIA_PROJECT=%s && julia --eval 'using Pkg; Pkg.status(\"%s\")'" % (self.depot, self.projectdir, self.package_name) + # else: + # cmd = "unset EBJULIA_USER_DEPOT_PATH && unset EBJULIA_ADMIN_DEPOT_PATH && export JULIA_DEPOT_PATH=%s && export JULIA_PROJECT=%s && julia --eval 'using Pkg; Pkg.status()'" % (self.depot, self.projectdir) cmdttdouterr, _ = run_cmd(cmd, log_all=True, simple=False, regexp=False) self.log.error("Julia package %s sanity returned %s" % (self.name, cmdttdouterr)) return len(parse_log_for_error(cmdttdouterr, regExp="%s\s+v%s" % (self.package_name, self.version))) != 0 diff --git a/Golden_Repo/a/ADIOS2/ADIOS2-2.8.3-gompi-2022a.eb b/Golden_Repo/a/ADIOS2/ADIOS2-2.8.3-gompi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..d919a7aac5c953a05f551d59f3a4216f7d20505d --- /dev/null +++ b/Golden_Repo/a/ADIOS2/ADIOS2-2.8.3-gompi-2022a.eb @@ -0,0 +1,163 @@ +easyblock = 'CMakeMake' + +name = 'ADIOS2' +version = '2.8.3' + +homepage = 'https://www.olcf.ornl.gov/center-projects/adios/' +description = """The Adaptable IO System (ADIOS) provides a simple, +flexible way for scientists to describe the data in their code that may +need to be written, read, or processed outside of the running +simulation.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'pic': True, 'usempi': False} + +github_account = 'ornladios' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v2.8.3.tar.gz': '4906ab1899721c41dd918dddb039ba2848a1fb0cf84f3a563a1179b9d6ee0d9f'}, +] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-Stack', '2022a', '', ('gcccoremkl', '11.3.0-2022.1.0')), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('Szip', '2.1.1'), + ('SZ', '2.1.12.5'), + ('zfp', '0.5.5'), + ('Blosc', '1.21.3'), + ('HDF5', '1.12.2'), + ('mpi4py', '3.1.4'), + ('libpng', '1.6.37'), + ('ZeroMQ', '4.3.4'), + ('nlohmann_json', '3.10.5'), + ('pybind11', '2.9.2'), +] + +separate_build_dir = True + +configopts = "-DCMAKE_VERBOSE_MAKEFILE=ON " + +configopts += "-DADIOS2_USE_Fortran=ON " +configopts += "-DADIOS2_USE_MPI=ON " + +# Examples/Testing +configopts += "-DADIOS2_BUILD_EXAMPLES=OFF " +configopts += "-DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF " +configopts += "-DADIOS2_BUILD_TESTING=OFF " + +# Compression +configopts += "-DADIOS2_USE_BZip2=ON " +configopts += "-DBZIP2_DIR=${EBROOTBZIP2} " + +configopts += "-DADIOS2_USE_PNG=ON " +configopts += "-DPNG_DIR=${EBROOTLIBPNG} " + +configopts += "-DADIOS2_USE_SZ=ON " +configopts += "-DSZ_DIR=${EBROOTSZ} " + +configopts += "-DADIOS2_USE_ZFP=ON " +configopts += "-DZFP_DIR=${EBROOTZFP} " + +configopts += "-DADIOS2_USE_Blosc=ON " +configopts += "-DBLOSC_DIR=${EBROOTBLOSC} " + +configopts += "-DZLIB_DIR=${EBROOTZLIB} " +configopts += "-DADIOS2_USE_MGARD=OFF " + +# HDF5 +configopts += "-DADIOS2_USE_HDF5=ON " +configopts += "-DHDF5_DIR=${EBROOTHDF5} " + +# ZeroMQ +configopts += "-DADIOS2_USE_ZeroMQ=ON " +configopts += "-DZeroMQ_DIR=${EBROOTZEROMQ} " + +# Python +configopts += "-DADIOS2_USE_Python=ON " +configopts += "-DPython_DIR=${EBROOTPYTHON} " + +# System Virtual Shared Memory +configopts += "-DADIOS2_USE_SysVShMem=ON " + +# Strong Staging Coupler +# https://adios2.readthedocs.io/en/latest/engines/engines.html#ssc-strong-staging-coupler +configopts += "-DADIOS2_USE_SSC=ON " + +# Sustainable Staging Transport +# https://adios2.readthedocs.io/en/latest/engines/engines.html#sst-sustainable-staging-transport +configopts += "-DADIOS2_USE_SST=ON " +# Can optionally use LibFabric for RDMA transport: if -DLIBFABRIC_ROOT=<path> is set. + +# DataMan +# https://adios2.readthedocs.io/en/latest/engines/engines.html#dataman-for-wide-area-network-data-staging +configopts += "-DADIOS2_USE_DataMan=ON " + +# DataSpaces (mind. version 1.8) +configopts += "-DADIOS2_USE_DataSpaces=OFF " + +# external libs +configopts += "-DADIOS2_USE_EXTERNAL_PYBIND11=ON " +configopts += "-Dpybind11_DIR=${EBROOTPYBIND11} " +configopts += "-DADIOS2_USE_EXTERNAL_NLOHMANN_JSON=ON " +configopts += "-Dnlohmann_json_DIR=${EBROOTNLOHMANNMINJSON} " + +# more options +configopts += "-DADIOS2_USE_IME=OFF " +configopts += "-DADIOS2_USE_Profiling=OFF " +configopts += "-DADIOS2_USE_Table=OFF " +# configopts += "-DADIOS2_USE_Endian_Reverse=ON " + +runtest = False + +# create pkgconfig files +postinstallcmds = [ + 'ln -s %(installdir)s/lib64 %(installdir)s/lib', + 'mkdir %(installdir)s/lib/pkgconfig', + """echo -e "Name: adios2 +Description: ADIOS2 I/O library +Version: %(version)s +Requires: bzip2, zfp, sz, libpng, blosc +Libs: $(%(installdir)s/bin/adios2-config --c-libs) +Cflags: $(%(installdir)s/bin/adios2-config --c-flags)" > %(installdir)s/lib/pkgconfig/adios2.pc""", + """echo -e "Name: adios2_cxx +Description: ADIOS2 I/O library (C++) +Version: %(version)s +Libs: $(%(installdir)s/bin/adios2-config --cxx-libs) +Cflags: $(%(installdir)s/bin/adios2-config --cxx-flags)" > %(installdir)s/lib/pkgconfig/adios2_cxx.pc""", + """echo -e "Name: adios2_f +Description: ADIOS2 I/O library (Fortran) +Version: %(version)s +Libs: $(%(installdir)s/bin/adios2-config --fortran-libs) +Cflags: $(%(installdir)s/bin/adios2-config --fortran-flags)" > %(installdir)s/lib/pkgconfig/adios2_f.pc""", +] + +sanity_check_paths = { + 'files': [ + 'bin/adios2-config', 'bin/bpls', 'bin/bp4dbg', + 'include/adios2.h', 'include/adios2_c.h', 'include/adios2/fortran/adios2.mod', + 'lib64/libadios2_core.so', 'lib64/libadios2_core_mpi.so', 'lib64/cmake/adios2/adios2-config.cmake', + 'lib64/libadios2_c.so', 'lib64/libadios2_c_mpi.so', 'lib64/libadios2_cxx11.so', + 'lib64/libadios2_cxx11_mpi.so', 'lib64/libadios2_fortran.so', 'lib64/libadios2_fortran_mpi.so' + ], + 'dirs': ['bin', 'include', 'lib'] +} + +# modextrapaths = { +# 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +# } + +modextravars = { + 'ADIOS2_PKGCONFIG_LIBS': 'adios2', + 'ADIOS2_CXX_PKGCONFIG_LIBS': 'adios2_cxx', + 'ADIOS2_FORTRAN_PKGCONFIG_LIBS': 'adios2_f', +} + +moduleclass = 'data' diff --git a/Golden_Repo/a/ADIOS2/ADIOS2-2.8.3-gpsmkl-2022a.eb b/Golden_Repo/a/ADIOS2/ADIOS2-2.8.3-gpsmkl-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..0fc2729db8570e1eedcd20fbf1d8529fc5f3ab9d --- /dev/null +++ b/Golden_Repo/a/ADIOS2/ADIOS2-2.8.3-gpsmkl-2022a.eb @@ -0,0 +1,163 @@ +easyblock = 'CMakeMake' + +name = 'ADIOS2' +version = '2.8.3' + +homepage = 'https://www.olcf.ornl.gov/center-projects/adios/' +description = """The Adaptable IO System (ADIOS) provides a simple, +flexible way for scientists to describe the data in their code that may +need to be written, read, or processed outside of the running +simulation.""" + +toolchain = {'name': 'gpsmkl', 'version': '2022a'} +toolchainopts = {'pic': True, 'usempi': False} + +github_account = 'ornladios' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = [ + {'v2.8.3.tar.gz': '4906ab1899721c41dd918dddb039ba2848a1fb0cf84f3a563a1179b9d6ee0d9f'}, +] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-Stack', '2022a', '', ('gcccoremkl', '11.3.0-2022.1.0')), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('Szip', '2.1.1'), + ('SZ', '2.1.12.5'), + ('zfp', '0.5.5'), + ('Blosc', '1.21.3'), + ('HDF5', '1.12.2'), + ('mpi4py', '3.1.4'), + ('libpng', '1.6.37'), + ('ZeroMQ', '4.3.4'), + ('nlohmann_json', '3.10.5'), + ('pybind11', '2.9.2'), +] + +separate_build_dir = True + +configopts = "-DCMAKE_VERBOSE_MAKEFILE=ON " + +configopts += "-DADIOS2_USE_Fortran=ON " +configopts += "-DADIOS2_USE_MPI=ON " + +# Examples/Testing +configopts += "-DADIOS2_BUILD_EXAMPLES=OFF " +configopts += "-DADIOS2_BUILD_EXAMPLES_EXPERIMENTAL=OFF " +configopts += "-DADIOS2_BUILD_TESTING=OFF " + +# Compression +configopts += "-DADIOS2_USE_BZip2=ON " +configopts += "-DBZIP2_DIR=${EBROOTBZIP2} " + +configopts += "-DADIOS2_USE_PNG=ON " +configopts += "-DPNG_DIR=${EBROOTLIBPNG} " + +configopts += "-DADIOS2_USE_SZ=ON " +configopts += "-DSZ_DIR=${EBROOTSZ} " + +configopts += "-DADIOS2_USE_ZFP=ON " +configopts += "-DZFP_DIR=${EBROOTZFP} " + +configopts += "-DADIOS2_USE_Blosc=ON " +configopts += "-DBLOSC_DIR=${EBROOTBLOSC} " + +configopts += "-DZLIB_DIR=${EBROOTZLIB} " +configopts += "-DADIOS2_USE_MGARD=OFF " + +# HDF5 +configopts += "-DADIOS2_USE_HDF5=ON " +configopts += "-DHDF5_DIR=${EBROOTHDF5} " + +# ZeroMQ +configopts += "-DADIOS2_USE_ZeroMQ=ON " +configopts += "-DZeroMQ_DIR=${EBROOTZEROMQ} " + +# Python +configopts += "-DADIOS2_USE_Python=ON " +configopts += "-DPython_DIR=${EBROOTPYTHON} " + +# System Virtual Shared Memory +configopts += "-DADIOS2_USE_SysVShMem=ON " + +# Strong Staging Coupler +# https://adios2.readthedocs.io/en/latest/engines/engines.html#ssc-strong-staging-coupler +configopts += "-DADIOS2_USE_SSC=ON " + +# Sustainable Staging Transport +# https://adios2.readthedocs.io/en/latest/engines/engines.html#sst-sustainable-staging-transport +configopts += "-DADIOS2_USE_SST=ON " +# Can optionally use LibFabric for RDMA transport: if -DLIBFABRIC_ROOT=<path> is set. + +# DataMan +# https://adios2.readthedocs.io/en/latest/engines/engines.html#dataman-for-wide-area-network-data-staging +configopts += "-DADIOS2_USE_DataMan=ON " + +# DataSpaces (mind. version 1.8) +configopts += "-DADIOS2_USE_DataSpaces=OFF " + +# external libs +configopts += "-DADIOS2_USE_EXTERNAL_PYBIND11=ON " +configopts += "-Dpybind11_DIR=${EBROOTPYBIND11} " +configopts += "-DADIOS2_USE_EXTERNAL_NLOHMANN_JSON=ON " +configopts += "-Dnlohmann_json_DIR=${EBROOTNLOHMANNMINJSON} " + +# more options +configopts += "-DADIOS2_USE_IME=OFF " +configopts += "-DADIOS2_USE_Profiling=OFF " +configopts += "-DADIOS2_USE_Table=OFF " +# configopts += "-DADIOS2_USE_Endian_Reverse=ON " + +runtest = False + +# create pkgconfig files +postinstallcmds = [ + 'ln -s %(installdir)s/lib64 %(installdir)s/lib', + 'mkdir %(installdir)s/lib/pkgconfig', + """echo -e "Name: adios2 +Description: ADIOS2 I/O library +Version: %(version)s +Requires: bzip2, zfp, sz, libpng, blosc +Libs: $(%(installdir)s/bin/adios2-config --c-libs) +Cflags: $(%(installdir)s/bin/adios2-config --c-flags)" > %(installdir)s/lib/pkgconfig/adios2.pc""", + """echo -e "Name: adios2_cxx +Description: ADIOS2 I/O library (C++) +Version: %(version)s +Libs: $(%(installdir)s/bin/adios2-config --cxx-libs) +Cflags: $(%(installdir)s/bin/adios2-config --cxx-flags)" > %(installdir)s/lib/pkgconfig/adios2_cxx.pc""", + """echo -e "Name: adios2_f +Description: ADIOS2 I/O library (Fortran) +Version: %(version)s +Libs: $(%(installdir)s/bin/adios2-config --fortran-libs) +Cflags: $(%(installdir)s/bin/adios2-config --fortran-flags)" > %(installdir)s/lib/pkgconfig/adios2_f.pc""", +] + +sanity_check_paths = { + 'files': [ + 'bin/adios2-config', 'bin/bpls', 'bin/bp4dbg', + 'include/adios2.h', 'include/adios2_c.h', 'include/adios2/fortran/adios2.mod', + 'lib64/libadios2_core.so', 'lib64/libadios2_core_mpi.so', 'lib64/cmake/adios2/adios2-config.cmake', + 'lib64/libadios2_c.so', 'lib64/libadios2_c_mpi.so', 'lib64/libadios2_cxx11.so', + 'lib64/libadios2_cxx11_mpi.so', 'lib64/libadios2_fortran.so', 'lib64/libadios2_fortran_mpi.so' + ], + 'dirs': ['bin', 'include', 'lib'] +} + +# modextrapaths = { +# 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +# } + +modextravars = { + 'ADIOS2_PKGCONFIG_LIBS': 'adios2', + 'ADIOS2_CXX_PKGCONFIG_LIBS': 'adios2_cxx', + 'ADIOS2_FORTRAN_PKGCONFIG_LIBS': 'adios2_f', +} + +moduleclass = 'data' diff --git a/Golden_Repo/a/ant/ant-1.10.13-Java-11.eb b/Golden_Repo/a/ant/ant-1.10.13-Java-11.eb new file mode 100644 index 0000000000000000000000000000000000000000..dee56183ce012ce98dc6e7bdd6f91da7b710860e --- /dev/null +++ b/Golden_Repo/a/ant/ant-1.10.13-Java-11.eb @@ -0,0 +1,27 @@ +easyblock = 'PackedBinary' + +name = 'ant' +version = '1.10.13' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://ant.apache.org/' +description = """Apache Ant is a Java library and command-line tool whose mission is to drive processes described in + build files as targets and extension points dependent upon each other. The main known usage of Ant is the build of + Java applications.""" + +toolchain = SYSTEM + +source_urls = ['https://archive.apache.org/dist/ant/binaries/'] +sources = ['apache-%(name)s-%(version)s-bin.tar.gz'] +checksums = ['776be4a5704158f00ef3f23c0327546e38159389bc8f39abbfe114913f88bab1'] + +dependencies = [('Java', '11')] + +sanity_check_paths = { + 'files': ['bin/ant', 'lib/ant.jar'], + 'dirs': [], +} + +modextravars = {'ANT_HOME': '%(installdir)s'} + +moduleclass = 'devel' diff --git a/Golden_Repo/c/ceres-solver/ceres-solver-2.1.0-gcccoremkl-11.3.0-2022.1.0.eb b/Golden_Repo/c/ceres-solver/ceres-solver-2.1.0-gcccoremkl-11.3.0-2022.1.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..927d32c82838e9b88b9d09a8707f8c44dcf2bf70 --- /dev/null +++ b/Golden_Repo/c/ceres-solver/ceres-solver-2.1.0-gcccoremkl-11.3.0-2022.1.0.eb @@ -0,0 +1,38 @@ +easyblock = 'CMakeMake' + +name = 'ceres-solver' +version = '2.1.0' + +homepage = 'http://ceres-solver.org' +description = """ +Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems. +""" + +toolchain = {'name': 'gcccoremkl', 'version': '11.3.0-2022.1.0'} +toolchainopts = {'pic': True} + +source_urls = ['http://ceres-solver.org/'] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['f7d74eecde0aed75bfc51ec48c91d01fe16a6bf16bce1987a7073286701e2fc6'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1') +] + +dependencies = [ + ('Eigen', '3.4.0'), + ('SuiteSparse', '5.13.0', '-nompi'), # ('gcccoremkl', '11.3.0-2022.1.0')), + ('gflags', '2.2.2'), + ('glog', '0.6.0'), +] + +configopts = '-DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF ' +configopts += '-DBUILD_SHARED_LIBS=on ' + +sanity_check_paths = { + 'files': ['lib/libceres.so', 'include/ceres/ceres.h'], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/Golden_Repo/e/Embree/Embree-3.13.5-GCC-11.3.0.eb b/Golden_Repo/e/Embree/Embree-3.13.5-GCC-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..403a9b8158dd994dafd5a8c49750f1d84f4cf0a8 --- /dev/null +++ b/Golden_Repo/e/Embree/Embree-3.13.5-GCC-11.3.0.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakeMake' + +name = 'Embree' +version = '3.13.5' + +homepage = 'https://www.embree.org/' +description = """ +Embree is a collection of high-performance ray tracing kernels, developed at Intel. The target user of Embree are +graphics application engineers that want to improve the performance of their application by leveraging the optimized ray +tracing kernels of Embree. The kernels are optimized for photo-realistic rendering on the latest Intel processors with +support for SSE, AVX, AVX2, and AVX512. +""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'optarch': True, 'pic': True} + +source_urls = ['https://github.com/embree/embree/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b8c22d275d9128741265537c559d0ea73074adbf2f2b66b0a766ca52c52d665b'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), + ('ispc', '1.18.1', '', SYSTEM), +] + +dependencies = [ + ('X11', '20220504'), + ('OpenGL', '2022a'), + ('freeglut', '3.4.0'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.1.3'), + ('ImageMagick', '7.1.0-37'), + ('OpenEXR', '3.1.5'), +] + +separate_build_dir = True + +configopts = '-DCMAKE_BUILD_TYPE=Release ' +configopts += '-DEMBREE_ISPC_SUPPORT=ON ' +configopts += '-DEMBREE_TASKING_SYSTEM=INTERNAL ' +# Select highest supported ISA (SSE2, SSE4.2, AVX, AVX2, AVX512KNL, AVX512SKX, or NONE) +configopts += '-DEMBREE_MAX_ISA=AVX2 ' +configopts += '-DEMBREE_GEOMETRY_HAIR:BOOL=ON ' +configopts += '-DEMBREE_GEOMETRY_LINES:BOOL=OFF ' +configopts += '-DEMBREE_GEOMETRY_QUADS:BOOL=OFF ' +configopts += '-DEMBREE_GEOMETRY_SUBDIV:BOOL=OFF ' +configopts += '-DEMBREE_TUTORIALS=OFF ' + +sanity_check_paths = { + 'dirs': ['include/embree3'], + 'files': ['lib64/libembree3.so'] +} + +modextrapaths = { + 'CMAKE_MODULE_PATH': 'lib64/cmake/embree-%(version)s/' +} + +moduleclass = 'vis' diff --git a/Golden_Repo/j/Julia/Julia-1.8.5-gcccoremkl-11.3.0-2022.1.0.eb b/Golden_Repo/j/Julia/Julia-1.8.5-gcccoremkl-11.3.0-2022.1.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..0bc41079a8aaf8f7bb84c1f2d09e65bf3cd2fa15 --- /dev/null +++ b/Golden_Repo/j/Julia/Julia-1.8.5-gcccoremkl-11.3.0-2022.1.0.eb @@ -0,0 +1,234 @@ +name = 'Julia' +version = '1.8.5' + +homepage = 'https://julialang.org/' +description = """Julia was designed from the beginning for high performance. +Julia programs compile to efficient native code for multiple platforms via LLVM +""" + +toolchain = {'name': 'gcccoremkl', 'version': '11.3.0-2022.1.0'} +toolchainopts = {'pic': True, 'verbose': True} + +source_urls = ['https://github.com/JuliaLang/julia/releases/download/v%(version)s/'] +sources = ['julia-%(version)s-full.tar.gz'] +checksums = ['35554080a4b4d3ce52ef220254306bd42ac0d88eff9eb85592a57d0663db5df2'] + +builddependencies = [ + ('binutils', '2.38'), + ('git', '2.36.0', '-nodocs'), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('GMP', '6.2.1'), + ('CUDA', '11.7', '', SYSTEM), + ('SciPy-bundle', '2022.05'), + ('matplotlib', '3.5.2'), + # ('OpenGL', '2022a'), # build segfaults starting with version 1.8.1 + ('OpenSSL', '1.1', '', SYSTEM), +] + +skipsteps = ['configure'] +buildopts = " USE_SYSTEM_GMP=1 USE_INTEL_MKL=1 " +installopts = "prefix=%(installdir)s " + +arch_name = 'gpu' + +exts_defaultclass = 'JuliaPackage' +exts_list = [ + # General Purpose + ('PackageCompiler.jl', '2.1.4', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/JuliaLang/PackageCompiler.jl/archive/'], + 'checksums': ['2fd6f50003d995624374900e7e0220cd7cd8386a317e0070d2b4b9b9d61c5e88'], + }), + ('HTTP.jl', '1.7.4', { + 'source_tmpl': 'v1.7.4.tar.gz', + 'source_urls': ['https://github.com/JuliaWeb/HTTP.jl/archive/'], + 'checksums': ['95e4079f12983ad5008cca2505a5408b6f0146a9ed8f247361e090004030613d'], + }), + ('Parsers.jl', '2.5.1', { + 'source_tmpl': 'v2.5.1.tar.gz', + 'source_urls': ['https://github.com/JuliaData/Parsers.jl/archive/'], + 'checksums': ['72494acac42c7dff16e1a6ac1305f13001f3743e0021d158d097399f0567d926'], + }), + ('VersionParsing.jl', '1.3.0', { + 'source_tmpl': 'v1.3.0.tar.gz', + 'source_urls': ['https://github.com/JuliaInterop/VersionParsing.jl/archive/'], + 'checksums': ['f90fe419e1a40ef0eccfaaed1d1b7792d9115a059a82d0c23e3c04c944d0f8ca'], + }), + ('JSON.jl', '0.21.3', { + 'source_tmpl': 'v0.21.3.tar.gz', + 'source_urls': ['https://github.com/JuliaIO/JSON.jl/archive/'], + 'checksums': ['bd02a015da24b03f79d55967b29f5ceaba2477b559242576d74f02623bb1b6b1'], + }), + ('WebIO.jl', '0.8.20', { + 'source_tmpl': 'v0.8.20.tar.gz', + 'source_urls': ['https://github.com/JuliaGizmos/WebIO.jl/archive/'], + 'checksums': ['d8c45c0be367963539cf7bdf748d16b4f6065fa5113e353ad57872980fc56b39'], + }), + ('ProgressMeter.jl', '1.7.2', { + 'source_tmpl': 'v1.7.2.tar.gz', + 'source_urls': ['https://github.com/timholy/ProgressMeter.jl/archive/'], + 'checksums': ['3591ea33d0ad7576bbb7d430ba94a988274af6434fbd7f3d0dc7fc2655dc888c'], + }), + ('Conda.jl', '1.7.0', { + 'source_tmpl': 'v1.7.0.tar.gz', + 'source_urls': ['https://github.com/JuliaPy/Conda.jl/archive/'], + 'checksums': ['2077b1192e1cfa206caf441d9d91b0ca83aa935db89918f1fd69cd25c2415ced'], + }), + ('PyCall.jl', '1.95.1', { + 'source_tmpl': 'v1.95.1.tar.gz', + 'source_urls': ['https://github.com/JuliaPy/PyCall.jl/archive/'], + 'checksums': ['8746b3ecc54fd670e5983945bec205ff65cdb4b9e395a79f887cc28741b05e87'], + }), + ('LaTeXStrings.jl', '1.3.0', { + 'source_tmpl': 'v1.3.0.tar.gz', + 'source_urls': ['https://github.com/stevengj/LaTeXStrings.jl/archive/'], + 'checksums': ['f90fe419e1a40ef0eccfaaed1d1b7792d9115a059a82d0c23e3c04c944d0f8ca'], + }), + ('DocumentFormat.jl', '4.0.3', { + 'source_tmpl': 'v4.0.3.tar.gz', + 'source_urls': ['https://github.com/julia-vscode/DocumentFormat.jl/archive/'], + 'checksums': ['4a7131590fa07d16d8b4998ef7570f797148e7ed622a0fa431a6ca3fe52156ab'], + }), + # Data Science + ('CSV.jl', '0.10.9', { + 'source_tmpl': 'v0.10.9.tar.gz', + 'source_urls': ['https://github.com/JuliaData/CSV.jl/archive/'], + 'checksums': ['e0958f0bf04e2b32bc4040e74ce9eed1e5be3947c03f381be1003ac197304d84'], + }), + ('DataFrames.jl', '1.4.4', { + 'source_tmpl': 'v1.4.4.tar.gz', + 'source_urls': ['https://github.com/JuliaData/DataFrames.jl/archive/'], + 'checksums': ['365877a405d1ba3af23ff5258424870cce434a13b02df34c7d8a78568ef2b87a'], + }), + ('Arrow.jl', '2.4.3', { + 'source_tmpl': 'v2.4.3.tar.gz', + 'source_urls': ['https://github.com/JuliaData/Arrow.jl/archive/'], + 'checksums': ['d65a8c803f9ac664b3afc878f1eba2c7fe99d91601aebc3dc288784585be80a2'], + }), + ('OnlineStats.jl', '1.5.14', { + 'source_tmpl': 'v1.5.14.tar.gz', + 'source_urls': ['https://github.com/joshday/OnlineStats.jl/archive/'], + 'checksums': ['b1c725a3de6cfde25271753b7cc341d2f565bc6aa74ae76394f845cb0339dc42'], + }), + ('Query.jl', '1.0.0', { + 'source_tmpl': 'v1.0.0.tar.gz', + 'source_urls': ['https://github.com/queryverse/Query.jl/archive/'], + 'checksums': ['76c05e3ffc8f3c2ce2cd3f6824f40a107cdba6fc58c4ce42de2289132de988e0'], + }), + # Scientific Domains + ('GSL.jl', '1.0.1', { + 'source_tmpl': 'v1.0.1.tar.gz', + 'source_urls': ['https://github.com/JuliaMath/GSL.jl/archive/refs/tags/'], + 'checksums': ['91a5acbb752610c5989b9acef126f2231f612debb7ba6d1d4625c68d2af5776e'], + }), + ('DifferentialEquations.jl', '7.6.0', { + 'source_tmpl': 'v7.6.0.tar.gz', + 'source_urls': ['https://github.com/SciML/DifferentialEquations.jl/archive/'], + 'checksums': ['32df0e2b2811567f5d58f5b88831e6a6c3c15b4d2f0bae6bde0a11a98b4e49d8'], + }), + ('Distributions.jl', '0.25.80', { + 'source_tmpl': 'v0.25.80.tar.gz', + 'source_urls': ['https://github.com/JuliaStats/Distributions.jl/archive/'], + 'checksums': ['0f457839d969dd5f8a12ba96fb3a3a728387945d98504ba3e7131178ef8e9ef7'], + }), + ('Optim.jl', '1.7.4', { + 'source_tmpl': 'v1.7.4.tar.gz', + 'source_urls': ['https://github.com/JuliaNLSolvers/Optim.jl/archive/'], + 'checksums': ['95e4079f12983ad5008cca2505a5408b6f0146a9ed8f247361e090004030613d'], + }), + ('IterativeSolvers.jl', '0.9.2', { + 'source_tmpl': 'v0.9.2.tar.gz', + 'source_urls': ['https://github.com/JuliaLinearAlgebra/IterativeSolvers.jl/archive/'], + 'checksums': ['95fbfa39aa68e989ae6bad2f51ce0fe5635ba3f3375d0ea4d9422e77ff924a9b'], + }), + ('AbstractFFTs.jl', '1.2.1', { + 'source_tmpl': 'v1.2.1.tar.gz', + 'source_urls': ['https://github.com/JuliaMath/AbstractFFTs.jl/archive/'], + 'checksums': ['58abf90b037c618daeed89940c77ac129b5155b26429ac77643cc9c5db453363'], + }), + ('OrdinaryDiffEq.jl', '6.42.0', { + 'source_tmpl': 'v6.42.0.tar.gz', + 'source_urls': ['https://github.com/SciML/OrdinaryDiffEq.jl/archive/'], + 'checksums': ['22af73320fd7577e3e4557e10f2b7cb0f77c03556499699033c47c8f56cbe482'], + }), + ('SpecialFunctions.jl', '1.8.7', { + 'source_tmpl': 'v1.8.7.tar.gz', + 'source_urls': ['https://github.com/JuliaMath/SpecialFunctions.jl/archive/'], + 'checksums': ['3f2ecec0506fe47cfa5e436ac510e2a82d39f74fceaeb422572cf06d90f2096a'], + }), + ('JuMP.jl', '1.7.0', { + 'source_tmpl': 'v1.7.0.tar.gz', + 'source_urls': ['https://github.com/jump-dev/JuMP.jl/archive/'], + 'checksums': ['2077b1192e1cfa206caf441d9d91b0ca83aa935db89918f1fd69cd25c2415ced'], + }), + # Visualization + ('GR.jl', '0.71.5', { + 'source_tmpl': 'v0.71.5.tar.gz', + 'source_urls': ['https://github.com/jheinen/GR.jl/archive/'], + 'checksums': ['d2b096241d8dfd3e16b1abcf2c0dd5664db025c1eeadf11145b9934284b112b7'], + }), + ('PlotlyJS.jl', '0.18.10', { + 'source_tmpl': 'v0.18.10.tar.gz', + 'source_urls': ['https://github.com/JuliaPlots/PlotlyJS.jl/archive/'], + 'checksums': ['b574113676080c14634118ce3a5ceda7562224039a2fd0ea3ad8bc5938700a49'], + }), + ('PyPlot.jl', '2.11.0', { + 'source_tmpl': 'v2.11.0.tar.gz', + 'source_urls': ['https://github.com/JuliaPy/PyPlot.jl/archive/'], + 'checksums': ['10498f5b7bd958c5e0dae33aa2514048005e4f5b037d9a73a09cb4231259cc13'], + }), + ('Plots.jl', '1.38.4', { + 'source_tmpl': 'v1.38.4.tar.gz', + 'source_urls': ['https://github.com/JuliaPlots/Plots.jl/archive/'], + 'checksums': ['d37a748e531b9970d1b5e552e069f8778f22f2e0508368bbd74f76b20dc51b1e'], + }), + ('UnicodePlots.jl', '3.3.4', { + 'source_tmpl': 'v3.3.4.tar.gz', + 'source_urls': ['https://github.com/Evizero/UnicodePlots.jl/archive/'], + 'checksums': ['7280b26b83dd03eaee21398de40cb83674c5e42037cad75f6e821cb0322ae9fd'], + }), + ('StatsPlots.jl', '0.15.4', { + 'source_tmpl': 'v0.15.4.tar.gz', + 'source_urls': ['https://github.com/JuliaPlots/StatsPlots.jl/archive/'], + 'checksums': ['451076c4d352ab88c8d0010320315a2f3d26ef0cc16007c7d0eb49eaa1105777'], + }), + # CUDA + ('CUDA.jl', '4.0.0', { + 'source_tmpl': 'v4.0.0.tar.gz', + 'source_urls': ['https://github.com/JuliaGPU/CUDA.jl/archive/'], + 'checksums': ['64fa7fe158c8cd56841b7906a4f57c53dbaa225fe8688bf3087b7951854b591b'], + }), +] + +modextrapaths = { + 'LD_LIBRARY_PATH': 'lib/julia', +} + +modextravars = { + 'JULIA_CUDA_USE_BINARYBUILDER': 'false', + # FYI: automatically added by EB_Julia + # 'EBJULIA_STD_DEPOT_PATH': '%(installdir)s/local/share/julia:%(installdir)s/share/julia', + # 'EBJULIA_USER_DEPOT_PATH': '~/.julia/%(version)s/default-%(arch_name)', + # 'EBJULIA_ADMIN_DEPOT_PATH': '%(installdir)s/extensions', + # 'EBJULIA_STD_LOAD_PATH': '@stdlib', + # 'EBJULIA_USER_LOAD_PATH': '@:@#.#.#-default-%(arch_name)' + # 'EBJULIA_ADMIN_LOAD_PATH': '%(installdir)s/extensions/environments/%(version)s-default-%(arch_name)s/', + # 'EBEXTSLISTJULIA': '<list of extensions installed>' + # 'EBJULIA_ENV_NAME': '%(version)s-default-%(arch_name)s' + # 'JULIA_INSTALL_FOLDER': '%(installdir)s', + # 'JULIA_DEPOT_PATH': + # '~/.julia/%(version)s/default-gpu:%(installdir)s/local/share/julia:%(installdir)s/share/julia', + # 'JULIA_LOAD_PATH': '@:@#.#.#-default-gpu:@stdlib', + # 'JULIA_PROJECT': ''%(installdir)s/extensions/environments/%(version)s-default-%(arch_name)s/Project.toml', +} + +sanity_check_paths = { + 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.so'], + 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] +} + +moduleclass = 'lang' diff --git a/Golden_Repo/j/Julia/Julia-1.8.5-gomkl-2023.eb b/Golden_Repo/j/Julia/Julia-1.8.5-gomkl-2023.eb new file mode 100644 index 0000000000000000000000000000000000000000..5f2e2da1bb20d98f34eff8228a3f59bf5f98d5ba --- /dev/null +++ b/Golden_Repo/j/Julia/Julia-1.8.5-gomkl-2023.eb @@ -0,0 +1,248 @@ +name = 'Julia' +version = '1.8.5' + +homepage = 'https://julialang.org/' +description = """Julia was designed from the beginning for high performance. +Julia programs compile to efficient native code for multiple platforms via LLVM +""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': False, 'pic': True} + +source_urls = ['https://github.com/JuliaLang/julia/releases/download/v%(version)s/'] +sources = ['julia-%(version)s-full.tar.gz'] +checksums = ['35554080a4b4d3ce52ef220254306bd42ac0d88eff9eb85592a57d0663db5df2'] + +builddependencies = [ + ('binutils', '2.38'), + ('git', '2.36.0', '-nodocs'), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('GMP', '6.2.1'), + ('CUDA', '11.7', '', SYSTEM), + ('SciPy-bundle', '2022.05', '', ('gcccoremkl', '11.3.0-2022.1.0')), + ('matplotlib', '3.5.2', '', ('gcccoremkl', '11.3.0-2022.1.0')), + # ('OpenGL', '2022a'), # build segfaults starting with version 1.8.1 + ('OpenSSL', '1.1', '', SYSTEM), +] + +skipsteps = ['configure'] +buildopts = " USE_SYSTEM_GMP=1 USE_INTEL_MKL=1 " +installopts = "prefix=%(installdir)s " + +arch_name = 'gpu' + +exts_defaultclass = 'JuliaPackage' +exts_list = [ + # General Purpose + ('PackageCompiler.jl', '2.1.4', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/JuliaLang/PackageCompiler.jl/archive/'], + 'checksums': ['2fd6f50003d995624374900e7e0220cd7cd8386a317e0070d2b4b9b9d61c5e88'], + }), + ('HTTP.jl', '1.7.4', { + 'source_tmpl': 'v1.7.4.tar.gz', + 'source_urls': ['https://github.com/JuliaWeb/HTTP.jl/archive/'], + 'checksums': ['95e4079f12983ad5008cca2505a5408b6f0146a9ed8f247361e090004030613d'], + }), + ('Parsers.jl', '2.5.1', { + 'source_tmpl': 'v2.5.1.tar.gz', + 'source_urls': ['https://github.com/JuliaData/Parsers.jl/archive/'], + 'checksums': ['72494acac42c7dff16e1a6ac1305f13001f3743e0021d158d097399f0567d926'], + }), + ('VersionParsing.jl', '1.3.0', { + 'source_tmpl': 'v1.3.0.tar.gz', + 'source_urls': ['https://github.com/JuliaInterop/VersionParsing.jl/archive/'], + 'checksums': ['f90fe419e1a40ef0eccfaaed1d1b7792d9115a059a82d0c23e3c04c944d0f8ca'], + }), + ('JSON.jl', '0.21.3', { + 'source_tmpl': 'v0.21.3.tar.gz', + 'source_urls': ['https://github.com/JuliaIO/JSON.jl/archive/'], + 'checksums': ['bd02a015da24b03f79d55967b29f5ceaba2477b559242576d74f02623bb1b6b1'], + }), + ('WebIO.jl', '0.8.20', { + 'source_tmpl': 'v0.8.20.tar.gz', + 'source_urls': ['https://github.com/JuliaGizmos/WebIO.jl/archive/'], + 'checksums': ['d8c45c0be367963539cf7bdf748d16b4f6065fa5113e353ad57872980fc56b39'], + }), + ('ProgressMeter.jl', '1.7.2', { + 'source_tmpl': 'v1.7.2.tar.gz', + 'source_urls': ['https://github.com/timholy/ProgressMeter.jl/archive/'], + 'checksums': ['3591ea33d0ad7576bbb7d430ba94a988274af6434fbd7f3d0dc7fc2655dc888c'], + }), + ('Conda.jl', '1.7.0', { + 'source_tmpl': 'v1.7.0.tar.gz', + 'source_urls': ['https://github.com/JuliaPy/Conda.jl/archive/'], + 'checksums': ['2077b1192e1cfa206caf441d9d91b0ca83aa935db89918f1fd69cd25c2415ced'], + }), + ('PyCall.jl', '1.95.1', { + 'source_tmpl': 'v1.95.1.tar.gz', + 'source_urls': ['https://github.com/JuliaPy/PyCall.jl/archive/'], + 'checksums': ['8746b3ecc54fd670e5983945bec205ff65cdb4b9e395a79f887cc28741b05e87'], + }), + ('LaTeXStrings.jl', '1.3.0', { + 'source_tmpl': 'v1.3.0.tar.gz', + 'source_urls': ['https://github.com/stevengj/LaTeXStrings.jl/archive/'], + 'checksums': ['f90fe419e1a40ef0eccfaaed1d1b7792d9115a059a82d0c23e3c04c944d0f8ca'], + }), + ('DocumentFormat.jl', '4.0.3', { + 'source_tmpl': 'v4.0.3.tar.gz', + 'source_urls': ['https://github.com/julia-vscode/DocumentFormat.jl/archive/'], + 'checksums': ['4a7131590fa07d16d8b4998ef7570f797148e7ed622a0fa431a6ca3fe52156ab'], + }), + # Data Science + ('CSV.jl', '0.10.9', { + 'source_tmpl': 'v0.10.9.tar.gz', + 'source_urls': ['https://github.com/JuliaData/CSV.jl/archive/'], + 'checksums': ['e0958f0bf04e2b32bc4040e74ce9eed1e5be3947c03f381be1003ac197304d84'], + }), + ('DataFrames.jl', '1.4.4', { + 'source_tmpl': 'v1.4.4.tar.gz', + 'source_urls': ['https://github.com/JuliaData/DataFrames.jl/archive/'], + 'checksums': ['365877a405d1ba3af23ff5258424870cce434a13b02df34c7d8a78568ef2b87a'], + }), + ('Arrow.jl', '2.4.3', { + 'source_tmpl': 'v2.4.3.tar.gz', + 'source_urls': ['https://github.com/JuliaData/Arrow.jl/archive/'], + 'checksums': ['d65a8c803f9ac664b3afc878f1eba2c7fe99d91601aebc3dc288784585be80a2'], + }), + ('OnlineStats.jl', '1.5.14', { + 'source_tmpl': 'v1.5.14.tar.gz', + 'source_urls': ['https://github.com/joshday/OnlineStats.jl/archive/'], + 'checksums': ['b1c725a3de6cfde25271753b7cc341d2f565bc6aa74ae76394f845cb0339dc42'], + }), + ('Query.jl', '1.0.0', { + 'source_tmpl': 'v1.0.0.tar.gz', + 'source_urls': ['https://github.com/queryverse/Query.jl/archive/'], + 'checksums': ['76c05e3ffc8f3c2ce2cd3f6824f40a107cdba6fc58c4ce42de2289132de988e0'], + }), + # Scientific Domains + ('GSL.jl', '1.0.1', { + 'source_tmpl': 'v1.0.1.tar.gz', + 'source_urls': ['https://github.com/JuliaMath/GSL.jl/archive/refs/tags/'], + 'checksums': ['91a5acbb752610c5989b9acef126f2231f612debb7ba6d1d4625c68d2af5776e'], + }), + ('DifferentialEquations.jl', '7.6.0', { + 'source_tmpl': 'v7.6.0.tar.gz', + 'source_urls': ['https://github.com/SciML/DifferentialEquations.jl/archive/'], + 'checksums': ['32df0e2b2811567f5d58f5b88831e6a6c3c15b4d2f0bae6bde0a11a98b4e49d8'], + }), + ('Distributions.jl', '0.25.80', { + 'source_tmpl': 'v0.25.80.tar.gz', + 'source_urls': ['https://github.com/JuliaStats/Distributions.jl/archive/'], + 'checksums': ['0f457839d969dd5f8a12ba96fb3a3a728387945d98504ba3e7131178ef8e9ef7'], + }), + ('Optim.jl', '1.7.4', { + 'source_tmpl': 'v1.7.4.tar.gz', + 'source_urls': ['https://github.com/JuliaNLSolvers/Optim.jl/archive/'], + 'checksums': ['95e4079f12983ad5008cca2505a5408b6f0146a9ed8f247361e090004030613d'], + }), + ('IterativeSolvers.jl', '0.9.2', { + 'source_tmpl': 'v0.9.2.tar.gz', + 'source_urls': ['https://github.com/JuliaLinearAlgebra/IterativeSolvers.jl/archive/'], + 'checksums': ['95fbfa39aa68e989ae6bad2f51ce0fe5635ba3f3375d0ea4d9422e77ff924a9b'], + }), + ('AbstractFFTs.jl', '1.2.1', { + 'source_tmpl': 'v1.2.1.tar.gz', + 'source_urls': ['https://github.com/JuliaMath/AbstractFFTs.jl/archive/'], + 'checksums': ['58abf90b037c618daeed89940c77ac129b5155b26429ac77643cc9c5db453363'], + }), + ('OrdinaryDiffEq.jl', '6.42.0', { + 'source_tmpl': 'v6.42.0.tar.gz', + 'source_urls': ['https://github.com/SciML/OrdinaryDiffEq.jl/archive/'], + 'checksums': ['22af73320fd7577e3e4557e10f2b7cb0f77c03556499699033c47c8f56cbe482'], + }), + ('SpecialFunctions.jl', '1.8.7', { + 'source_tmpl': 'v1.8.7.tar.gz', + 'source_urls': ['https://github.com/JuliaMath/SpecialFunctions.jl/archive/'], + 'checksums': ['3f2ecec0506fe47cfa5e436ac510e2a82d39f74fceaeb422572cf06d90f2096a'], + }), + ('JuMP.jl', '1.7.0', { + 'source_tmpl': 'v1.7.0.tar.gz', + 'source_urls': ['https://github.com/jump-dev/JuMP.jl/archive/'], + 'checksums': ['2077b1192e1cfa206caf441d9d91b0ca83aa935db89918f1fd69cd25c2415ced'], + }), + # Visualization + ('GR.jl', '0.71.5', { + 'source_tmpl': 'v0.71.5.tar.gz', + 'source_urls': ['https://github.com/jheinen/GR.jl/archive/'], + 'checksums': ['d2b096241d8dfd3e16b1abcf2c0dd5664db025c1eeadf11145b9934284b112b7'], + }), + ('PlotlyJS.jl', '0.18.10', { + 'source_tmpl': 'v0.18.10.tar.gz', + 'source_urls': ['https://github.com/JuliaPlots/PlotlyJS.jl/archive/'], + 'checksums': ['b574113676080c14634118ce3a5ceda7562224039a2fd0ea3ad8bc5938700a49'], + }), + ('PyPlot.jl', '2.11.0', { + 'source_tmpl': 'v2.11.0.tar.gz', + 'source_urls': ['https://github.com/JuliaPy/PyPlot.jl/archive/'], + 'checksums': ['10498f5b7bd958c5e0dae33aa2514048005e4f5b037d9a73a09cb4231259cc13'], + }), + ('Plots.jl', '1.38.4', { + 'source_tmpl': 'v1.38.4.tar.gz', + 'source_urls': ['https://github.com/JuliaPlots/Plots.jl/archive/'], + 'checksums': ['d37a748e531b9970d1b5e552e069f8778f22f2e0508368bbd74f76b20dc51b1e'], + }), + ('UnicodePlots.jl', '3.3.4', { + 'source_tmpl': 'v3.3.4.tar.gz', + 'source_urls': ['https://github.com/Evizero/UnicodePlots.jl/archive/'], + 'checksums': ['7280b26b83dd03eaee21398de40cb83674c5e42037cad75f6e821cb0322ae9fd'], + }), + ('StatsPlots.jl', '0.15.4', { + 'source_tmpl': 'v0.15.4.tar.gz', + 'source_urls': ['https://github.com/JuliaPlots/StatsPlots.jl/archive/'], + 'checksums': ['451076c4d352ab88c8d0010320315a2f3d26ef0cc16007c7d0eb49eaa1105777'], + }), + # MPI + ('MPI.jl', '0.20.8', { + 'mpi_path': '$EBROOTOPENMPI', + 'mpiexec': 'srun', + 'source_tmpl': 'v0.20.8.tar.gz', + 'source_urls': ['https://github.com/JuliaParallel/MPI.jl/archive/'], + 'checksums': ['f70a2710e4d1375be82f6838510980f6cb7d48caaad63ffecd2a296c39b80dba'], + }), + # CUDA + ('CUDA.jl', '4.0.0', { + 'source_tmpl': 'v4.0.0.tar.gz', + 'source_urls': ['https://github.com/JuliaGPU/CUDA.jl/archive/'], + 'checksums': ['64fa7fe158c8cd56841b7906a4f57c53dbaa225fe8688bf3087b7951854b591b'], + }), +] + +modextrapaths = { + 'LD_LIBRARY_PATH': 'lib/julia', +} + +modextravars = { + 'JULIA_MPICC': 'mpicc', + 'JULIA_MPIEXEC': 'srun', + # 'JULIA_MPIEXEC_ARGS': '', + 'JULIA_MPI_ABI': 'OpenMPI', + 'JULIA_MPI_BINARY': 'system', + 'JULIA_MPI_PATH': '$::env(EBROOTOPENMPI)', + 'JULIA_CUDA_USE_BINARYBUILDER': 'false', + # FYI: automaticall added by EB_Julia + # 'EBJULIA_STD_DEPOT_PATH': '%(installdir)s/local/share/julia:%(installdir)s/share/julia', + # 'EBJULIA_USER_DEPOT_PATH': '~/.julia/%(version)s/default-%(arch_name)', + # 'EBJULIA_ADMIN_DEPOT_PATH': '%(installdir)s/extensions', + # 'EBJULIA_STD_LOAD_PATH': '@stdlib', + # 'EBJULIA_USER_LOAD_PATH': '@:@#.#.#-default-%(arch_name)' + # 'EBJULIA_ADMIN_LOAD_PATH': '%(installdir)s/extensions/environments/%(version)s-default-%(arch_name)s/', + # 'EBEXTSLISTJULIA': '<list of extensions installed>' + # 'EBJULIA_ENV_NAME': '%(version)s-default-%(arch_name)s' + # 'JULIA_INSTALL_FOLDER': '%(installdir)s', + # 'JULIA_DEPOT_PATH': + # '~/.julia/%(version)s/default-gpu:%(installdir)s/local/share/julia:%(installdir)s/share/julia', + # 'JULIA_LOAD_PATH': '@:@#.#.#-default-gpu:@stdlib', + # 'JULIA_PROJECT': ''%(installdir)s/extensions/environments/%(version)s-default-%(arch_name)s/Project.toml', +} + +sanity_check_paths = { + 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.so'], + 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] +} + +moduleclass = 'lang' diff --git a/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..50ed6850d0a497990ee7ea3d71c66493c5a54cc0 --- /dev/null +++ b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'netCDF-C++4' +version = '4.3.1' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc'] + +dependencies = [('netCDF', '4.9.0')] + +sanity_check_paths = { + 'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gpsmpi-2022a.eb b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gpsmpi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..767674d4124fdb9595585bd1e0af733c3dba0b34 --- /dev/null +++ b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-gpsmpi-2022a.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'netCDF-C++4' +version = '4.3.1' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'gpsmpi', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc'] + +dependencies = [('netCDF', '4.9.0')] + +sanity_check_paths = { + 'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2022a.eb b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..28870b23937a14af7e469868fdcdd5b6aab999ce --- /dev/null +++ b/Golden_Repo/n/netCDF-C++4/netCDF-C++4-4.3.1-ipsmpi-2022a.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'netCDF-C++4' +version = '4.3.1' + +homepage = 'https://www.unidata.ucar.edu/software/netcdf/' +description = """NetCDF (network Common Data Form) is a set of software libraries + and machine-independent data formats that support the creation, access, and sharing of array-oriented + scientific data.""" + +toolchain = {'name': 'ipsmpi', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Unidata/netcdf-cxx4/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e3fe3d2ec06c1c2772555bf1208d220aab5fee186d04bd265219b0bc7a978edc'] + +dependencies = [('netCDF', '4.9.0')] + +sanity_check_paths = { + 'files': ['include/netcdf', 'lib/libnetcdf_c++4.a', 'lib/libnetcdf_c++4.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'data' diff --git a/Golden_Repo/n/netcdf4-python/netcdf4-python-1.1.8-avoid-diskless-test.patch b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.1.8-avoid-diskless-test.patch new file mode 100644 index 0000000000000000000000000000000000000000..d146f649548b0815386b6003647eb6cf37cee583 --- /dev/null +++ b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.1.8-avoid-diskless-test.patch @@ -0,0 +1,14 @@ +# this test seems to always fall. The diskless thing is not really diskless it seems +# By Ward Poelmans <ward.poelmans@ugent.be> +diff -ur netcdf4-python-1.1.8rel/test/tst_diskless.py netcdf4-python-1.1.8rel.new/test/tst_diskless.py +--- netcdf4-python-1.1.8rel/test/tst_diskless.py 2015-05-13 16:27:00.000000000 +0200 ++++ netcdf4-python-1.1.8rel.new/test/tst_diskless.py 2016-01-07 14:16:21.851971913 +0100 +@@ -65,7 +65,7 @@ + assert_array_almost_equal(foo[:], ranarr) + assert_array_almost_equal(bar[:], ranarr2) + # file does not actually exist on disk +- assert(os.path.isfile(self.file)==False) ++# assert(os.path.isfile(self.file)==False) + # open persisted file. + # first, check that file does actually exist on disk + assert(os.path.isfile(self.file2)==True) diff --git a/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-GCCcore-11.3.0-serial.eb b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-GCCcore-11.3.0-serial.eb new file mode 100644 index 0000000000000000000000000000000000000000..f5bceef51f279ec036d02f11c5d5849bf88c8643 --- /dev/null +++ b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-GCCcore-11.3.0-serial.eb @@ -0,0 +1,59 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.6.1' + +versionsuffix = '-serial' + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = """Python/numpy interface to netCDF.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {} + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05', '', ('gcccoremkl', '11.3.0-2022.1.0')), + ('netCDF', '4.9.0', '-serial'), + ('cURL', '7.83.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('cftime', '1.6.2', { + 'checksums': ['8614c00fb8a5046de304fdd86dbd224f99408185d7b245ac6628d0276596e6d2'], + }), + (name, version, { + 'patches': ['netcdf4-python-1.1.8-avoid-diskless-test.patch'], + 'source_tmpl': 'netCDF4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + {'netCDF4-1.6.1.tar.gz': 'ba8dc5d65293a99f1afb8c2acf588d903fdfdc1963a62545b677fa2734262a78'}, + {'netcdf4-python-1.1.8-avoid-diskless-test.patch': + 'a8b262fa201d55f59015e1bc14466c1d113f807543bc1e05a22481ab0d216d72'}, + ], + }), +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/nc3tonc4', 'bin/nc4tonc3', 'bin/ncinfo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "nc4tonc3 --help", + "nc3tonc4 --help", + "ncinfo --help", +] + +moduleclass = 'data' diff --git a/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-gompi-2022a.eb b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-gompi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..5ba2aeff9215232b53884aab8924bda4ca64020e --- /dev/null +++ b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-gompi-2022a.eb @@ -0,0 +1,60 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.6.1' + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = """Python/numpy interface to netCDF.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05', '', ('gcccoremkl', '11.3.0-2022.1.0')), + ('netCDF', '4.9.0'), + ('cURL', '7.83.0'), + ('mpi4py', '3.1.4'), +] + +use_pip = True +sanity_pip_check = True +runtest = False # mpirun problems #from 2022 +skipsteps = ['sanitycheck'] # mpirun problems #from 2022 + +exts_list = [ + ('cftime', '1.6.2', { + 'checksums': ['8614c00fb8a5046de304fdd86dbd224f99408185d7b245ac6628d0276596e6d2'], + }), + (name, version, { + 'patches': [ + 'netcdf4-python-1.1.8-avoid-diskless-test.patch', + 'netcdf4-python-1.6.1_relax_tolerance_compression_test.patch', + ], + 'source_tmpl': 'netCDF4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + # netCDF4-1.6.1.tar.gz + 'ba8dc5d65293a99f1afb8c2acf588d903fdfdc1963a62545b677fa2734262a78', + # netcdf4-python-1.1.8-avoid-diskless-test.patch + 'a8b262fa201d55f59015e1bc14466c1d113f807543bc1e05a22481ab0d216d72', + # netcdf4-python-1.6.1_relax_tolerance_compression_test.patch + '64d192a5d1e3e00af78f053da78f5a35015fa713c7f97b10b622be6a44347166', + ], + }), +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/nc3tonc4', 'bin/nc4tonc3', 'bin/ncinfo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "nc4tonc3 --help", + "nc3tonc4 --help", + "ncinfo --help", +] + +moduleclass = 'data' diff --git a/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-gpsmpi-2022a.eb b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-gpsmpi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..5ca6572ed7d26d1621a4a719488c076854a01f39 --- /dev/null +++ b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-gpsmpi-2022a.eb @@ -0,0 +1,60 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.6.1' + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = """Python/numpy interface to netCDF.""" + +toolchain = {'name': 'gpsmpi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05', '', ('gcccoremkl', '11.3.0-2022.1.0')), + ('netCDF', '4.9.0'), + ('cURL', '7.83.0'), + ('mpi4py', '3.1.4'), +] + +use_pip = True +sanity_pip_check = True +runtest = False # mpirun problems #from 2022 +skipsteps = ['sanitycheck'] # mpirun problems #from 2022 + +exts_list = [ + ('cftime', '1.6.2', { + 'checksums': ['8614c00fb8a5046de304fdd86dbd224f99408185d7b245ac6628d0276596e6d2'], + }), + (name, version, { + 'patches': [ + 'netcdf4-python-1.1.8-avoid-diskless-test.patch', + 'netcdf4-python-1.6.1_relax_tolerance_compression_test.patch', + ], + 'source_tmpl': 'netCDF4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + # netCDF4-1.6.1.tar.gz + 'ba8dc5d65293a99f1afb8c2acf588d903fdfdc1963a62545b677fa2734262a78', + # netcdf4-python-1.1.8-avoid-diskless-test.patch + 'a8b262fa201d55f59015e1bc14466c1d113f807543bc1e05a22481ab0d216d72', + # netcdf4-python-1.6.1_relax_tolerance_compression_test.patch + '64d192a5d1e3e00af78f053da78f5a35015fa713c7f97b10b622be6a44347166', + ], + }), +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/nc3tonc4', 'bin/nc4tonc3', 'bin/ncinfo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "nc4tonc3 --help", + "nc3tonc4 --help", + "ncinfo --help", +] + +moduleclass = 'data' diff --git a/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-ipsmpi-2022a.eb b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-ipsmpi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..c57b836642429b6c4ef9ded340fae82230657718 --- /dev/null +++ b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1-ipsmpi-2022a.eb @@ -0,0 +1,60 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.6.1' + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = """Python/numpy interface to netCDF.""" + +toolchain = {'name': 'ipsmpi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05', '', ('gcccoremkl', '11.3.0-2022.1.0')), + ('netCDF', '4.9.0'), + ('cURL', '7.83.0'), + ('mpi4py', '3.1.4'), +] + +use_pip = True +sanity_pip_check = True +runtest = False # mpirun problems #from 2022 +skipsteps = ['sanitycheck'] # mpirun problems #from 2022 + +exts_list = [ + ('cftime', '1.6.2', { + 'checksums': ['8614c00fb8a5046de304fdd86dbd224f99408185d7b245ac6628d0276596e6d2'], + }), + (name, version, { + 'patches': [ + 'netcdf4-python-1.1.8-avoid-diskless-test.patch', + 'netcdf4-python-1.6.1_relax_tolerance_compression_test.patch', + ], + 'source_tmpl': 'netCDF4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + # netCDF4-1.6.1.tar.gz + 'ba8dc5d65293a99f1afb8c2acf588d903fdfdc1963a62545b677fa2734262a78', + # netcdf4-python-1.1.8-avoid-diskless-test.patch + 'a8b262fa201d55f59015e1bc14466c1d113f807543bc1e05a22481ab0d216d72', + # netcdf4-python-1.6.1_relax_tolerance_compression_test.patch + '64d192a5d1e3e00af78f053da78f5a35015fa713c7f97b10b622be6a44347166', + ], + }), +] + +fix_python_shebang_for = ['bin/*'] + +sanity_check_paths = { + 'files': ['bin/nc3tonc4', 'bin/nc4tonc3', 'bin/ncinfo'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "nc4tonc3 --help", + "nc3tonc4 --help", + "ncinfo --help", +] + +moduleclass = 'data' diff --git a/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1_relax_tolerance_compression_test.patch b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1_relax_tolerance_compression_test.patch new file mode 100644 index 0000000000000000000000000000000000000000..57dda863c8b175277759c4c99a0771a791480f7e --- /dev/null +++ b/Golden_Repo/n/netcdf4-python/netcdf4-python-1.6.1_relax_tolerance_compression_test.patch @@ -0,0 +1,15 @@ +# Relax tolerance in the compression_szip test to avoid fails on some systems. +# author: maxim-masterov (SURF) +# +diff -Nru netcdf4-python-1.6.1.orig/test/tst_compression_szip.py netcdf4-python-1.6.1/test/tst_compression_szip.py +--- netcdf4-python-1.6.1.orig/test/tst_compression_szip.py 2022-10-11 14:47:31.830359000 +0200 ++++ netcdf4-python-1.6.1/test/tst_compression_szip.py 2022-10-11 14:48:13.300393000 +0200 +@@ -33,7 +33,7 @@ + assert_almost_equal(datarr,f.variables['data'][:]) + assert f.variables['data'].filters() ==\ + {'zlib':False,'szip':False,'zstd':False,'bzip2':False,'blosc':False,'shuffle':False,'complevel':0,'fletcher32':False} +- assert_almost_equal(datarr,f.variables['data_szip'][:]) ++ assert_almost_equal(datarr,f.variables['data_szip'][:], 6) + dtest = {'zlib': False, 'szip': {'coding': 'ec', 'pixels_per_block': 32}, 'zstd': False, 'bzip2': False, 'blosc': False, 'shuffle': False, 'complevel': 0, 'fletcher32': False} + assert f.variables['data_szip'].filters() == dtest + f.close() diff --git a/Golden_Repo/o/OSPRay/OSPRay-2.10.0-gpsmpi-2022a.eb b/Golden_Repo/o/OSPRay/OSPRay-2.10.0-gpsmpi-2022a.eb new file mode 100644 index 0000000000000000000000000000000000000000..6bbcf51f06067df2b11156d1cdb1cf4c9fa6c372 --- /dev/null +++ b/Golden_Repo/o/OSPRay/OSPRay-2.10.0-gpsmpi-2022a.eb @@ -0,0 +1,65 @@ +easyblock = 'CMakeMake' + +name = 'OSPRay' +version = '2.10.0' + +homepage = 'http://www.ospray.org/' +description = """ +OSPRay is an open source, scalable, and portable ray tracing engine for +high-performance, high-fidelity visualization on Intel® Architecture CPUs. +""" + +toolchain = {'name': 'gpsmpi', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/ospray/OSPRay/archive/'] +sources = ['v%(version)s.tar.gz'] + +checksums = ['bd478284f48d2cb775fc41a2855a9d9f5ea16c861abda0f8dc94e02ea7189cb8'] + +builddependencies = [ + ('ispc', '1.18.1', '', SYSTEM), + ('CMake', '3.23.1'), + ('Doxygen', '1.9.4') +] + +dependencies = [ + ('X11', '20220504'), + ('OpenGL', '2022a'), + ('freeglut', '3.4.0'), + ('Qt5', '5.15.5'), + ('tbb', '2021.5.0'), + ('Embree', '3.13.5'), + ('rkcommon', '1.10.0'), + ('openvkl', '1.3.1'), + ('OpenImageDenoise', '1.4.3', '', ('gcccoremkl', '11.3.0-2022.1.0')), +] + +separate_build_dir = True + +configopts = '-DCMAKE_VERBOSE_MAKEFILE=ON ' +configopts += '-DOSPRAY_INSTALL_DEPENDENCIES=OFF ' +configopts += '-DCMAKE_BUILD_TYPE=Release ' +configopts += '-DOSPRAY_BUILD_ISA=ALL ' +configopts += '-Dembree_DIR=$EBROOTEMBREE/lib64/cmake/embree-3.13.5 ' +configopts += '-DOSPRAY_ENABLE_APPS:BOOL=OFF ' +configopts += '-DOSPRAY_MODULE_DENOISER:BOOL=ON ' +configopts += '-DOSPRAY_MODULE_MPI:BOOL=True ' + +configopts += '-DOSPRAY_ENABLE_APPS:BOOL=OFF ' +configopts += '-DOSPRAY_ENABLE_APPS_BENCHMARK:BOOL=OFF ' +configopts += '-DOSPRAY_ENABLE_APPS_EXAMPLES:BOOL=OFF ' +configopts += '-DOSPRAY_ENABLE_APPS_TUTORIALS:BOOL=OFF ' +configopts += '-DOSPRAY_ENABLE_APPS_TESTING:BOOL=OFF ' + +sanity_check_paths = { + 'dirs': ['include/ospray/', + 'lib64/cmake/%(namelower)s-%(version)s', 'share/doc/OSPRay'], + 'files': ['include/ospray/version.h', + 'lib64/libospray.so', + 'share/doc/OSPRay/README.md'], +} + +modextrapaths = {'CMAKE_MODULE_PATH': ['lib64/cmake/ospray-%(version)s']} + +moduleclass = 'vis' diff --git a/Golden_Repo/o/OpenCV/OpenCV-4.7.0-gcccoremkl-11.3.0-2022.1.0-CUDA-12.0-contrib.eb b/Golden_Repo/o/OpenCV/OpenCV-4.7.0-gcccoremkl-11.3.0-2022.1.0-CUDA-12.0-contrib.eb new file mode 100644 index 0000000000000000000000000000000000000000..c67d261b950e9c6f68626ffbb73fe793d5efab48 --- /dev/null +++ b/Golden_Repo/o/OpenCV/OpenCV-4.7.0-gcccoremkl-11.3.0-2022.1.0-CUDA-12.0-contrib.eb @@ -0,0 +1,139 @@ +easyblock = 'CMakeMake' + +name = 'OpenCV' +version = '4.7.0' +versionsuffix = '-CUDA-%(cudaver)s-contrib' + +# the hash is version dependent! see 3rdparty/ippicv/ippicv.cmake +local_ippicv_hash = 'a56b6ac6f030c312b2dce17430eef13aed9af274' + +homepage = 'https://opencv.org/' +description = """OpenCV (Open Source Computer Vision Library) is an open source computer vision + and machine learning software library. OpenCV was built to provide + a common infrastructure for computer vision applications and to accelerate + the use of machine perception in the commercial products. + Includes extra modules for OpenCV from the contrib repository.""" + +toolchain = {'name': 'gcccoremkl', 'version': '11.3.0-2022.1.0'} +toolchainopts = {'pic': True, 'cstd': 'c++14', 'optarch': True} + +sources = [ + { + 'source_urls': ['https://github.com/%(namelower)s/%(namelower)s/archive/'], + 'download_filename': '%(version)s.zip', + 'filename': SOURCELOWER_ZIP + }, + { + 'source_urls': ['https://github.com/%(namelower)s/opencv_contrib/archive/'], + 'download_filename': '%(version)s.zip', + 'filename': '%(namelower)s_contrib-%(version)s.zip' + }, + { + 'source_urls': ['https://raw.githubusercontent.com/opencv/opencv_3rdparty/%s/ippicv' % local_ippicv_hash], + 'filename': 'ippicv_2020_lnx_intel64_20191018_general.tgz', + 'extract_cmd': 'cp %s %(builddir)s' + }, +] +checksums = [ + 'db6fb5e7dc76829d738fdbcdba11a810c66ca0a4752e531eaf3d793361e96de8', # opencv-4.7.0.zip + 'ef001813ec39215593ce9deb3aec70a85278f57a0ed88b18f6f615265855436c', # opencv_contrib-4.7.0.zip + '08627fa5660d52d59309a572dd7db5b9c8aea234cfa5aee0942a1dd903554246', # ippicv_2020_lnx_intel64_20191018_general.tgz +] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), # for numpy + ('zlib', '1.2.12'), + ('FFmpeg', '4.4.2'), + ('GStreamer', '1.20.2'), + ('freetype', '2.12.1'), + ('HarfBuzz', '4.2.1'), + ('libjpeg-turbo', '2.1.3'), + ('OpenJPEG', '2.5.0'), + ('libpng', '1.6.37'), + ('LibTIFF', '4.3.0'), + ('libwebp', '1.2.4'), + ('OpenEXR', '3.1.5'), + ('JasPer', '2.0.33'), + ('Java', '11', '', SYSTEM), + ('ant', '1.10.13', '-Java-%(javaver)s', SYSTEM), + ('GLib', '2.72.1'), + ('GTK+', '3.24.34',), + ('HDF5', '1.12.2', '-serial'), # needed by hdf from contrib + ('protobuf', '3.19.4'), + ('Eigen', '3.4.0'), + ('CUDA', '11.7', '', SYSTEM), + ('cuDNN', '8.6.0.163', '-CUDA-%(cudaver)s', SYSTEM), + ('nvidia-Video_Codec_SDK', '11.1.5', '', SYSTEM), + ('OpenGL', '2022a'), +] + +configopts = "-D CMAKE_BUILD_TYPE=RELEASE " +configopts += '-D CMAKE_CXX_FLAGS="-Wdeprecated-declarations" ' + +configopts += "-D OPENCV_GENERATE_PKGCONFIG=ON " +configopts += "-D ENABLE_PRECOMPILED_HEADERS=OFF " + +configopts += "-D BUILD_EXAMPLES=ON " +configopts += "-D INSTALL_PYTHON_EXAMPLES=ON " + +configopts += "-D WITH_CUDA=ON " +configopts += "-D WITH_CUDNN=ON " +configopts += "-D WITH_CUBLAS=ON " +configopts += "-D WITH_CUFFT=ON " +configopts += "-D CUDA_ARCH_BIN='%(cuda_cc_space_sep)s' " +# configopts += "-D CUDA_ARCH_PTX='' " +configopts += "-D BUILD_CUDA_STUBS=ON " +configopts += "-D OPENCV_DNN_CUDA=ON " +configopts += "-D BUILD_opencv_cudacodec=ON " + +configopts += "-D WITH_NVCUVID=ON " + +configopts += "-D WITH_GSTREAMER=ON " + +configopts += '-DOPENCV_EXTRA_MODULES_PATH=%(builddir)s/%(namelower)s_contrib-%(version)s/modules ' + +configopts += "-DProtobuf_INCLUDE_DIR=$EBROOTPROTOBUF/include " +configopts += "-DProtobuf_LIBRARY=$EBROOTPROTOBUF/lib64/libprotobuf.so " +configopts += "-DProtobuf_LITE_LIBRARY_RELEASE=$EBROOTPROTOBUF/lib64/libprotobuf-lite.so " +configopts += "-DProtobuf_PROTOC_LIBRARY_RELEASE=$EBROOTPROTOBUF/lib64/bprotoc.so " +configopts += "-DBUILD_PROTOBUF=OFF -DPROTOBUF_UPDATE_FILES=ON " + +# XXXX in configurations is a bug fix in OpenCV because ocv_check_modules is not able to recognize freetype and harfbuzz +# ref: https://github.com/opencv/opencv/blob/6e8daaec0f46aaba9ea22e2afce47307b1dbff9f/cmake/OpenCVUtils.cmake#L861 +configopts += " ".join([ + "-DOPENCV_EXTRA_MODULES_PATH=%(builddir)s/%(namelower)s_contrib-%(version)s/modules", + "-DFREETYPE_FOUND=ON", + "-DFREETYPE_INCLUDE_DIRS=$EBROOTFREETYPE/include/freetype2/", + "-DFREETYPE_LIBRARIES=$EBROOTFREETYPE/lib64/libfreetype.so", + "-DFREETYPE_LINK_LIBRARIES=$EBROOTFREETYPE/lib64/libfreetype.so", + "-DFREETYPE_LINK_LIBRARIES_XXXXX=ON", + "-DHARFBUZZ_FOUND=ON", + "-DHARFBUZZ_INCLUDE_DIRS=$EBROOTHARFBUZZ/include/harfbuzz", + "-DHARFBUZZ_LIBRARIES=$EBROOTHARFBUZZ/lib64/libharfbuzz.so", + "-DHARFBUZZ_LINK_LIBRARIES=$EBROOTHARFBUZZ/lib64/libharfbuzz.so", + "-DHARFBUZZ_LINK_LIBRARIES_XXXXX=ON", + "-DBUILD_opencv_python2=OFF", + "-DCUDA_NVCC_FLAGS=--std=c++14", +]) + +enhance_sanity_check = True + +local_contrib_libs = [ + 'aruco', 'bgsegm', 'bioinspired', 'ccalib', 'datasets', 'dnn_objdetect', 'dnn_superres', 'dpm', 'face', 'freetype', + 'fuzzy', 'hdf', 'hfs', 'img_hash', 'line_descriptor', 'optflow', 'phase_unwrapping', 'plot', 'quality', 'reg', + 'rgbd', 'saliency', 'shape', 'stereo', 'structured_light', 'superres', 'surface_matching', 'text', 'tracking', + 'videostab', 'xfeatures2d', 'ximgproc', 'xobjdetect', 'xphoto' +] + +sanity_check_paths = { + 'files': ['lib64/libopencv_%s.%s' % (x, SHLIB_EXT) for x in local_contrib_libs], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/Golden_Repo/o/OpenImageDenoise/OpenImageDenoise-1.4.3-gcccoremkl-11.3.0-2022.1.0.eb b/Golden_Repo/o/OpenImageDenoise/OpenImageDenoise-1.4.3-gcccoremkl-11.3.0-2022.1.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..e4a61dc3b4366d128441638ba094ac94e4ad2388 --- /dev/null +++ b/Golden_Repo/o/OpenImageDenoise/OpenImageDenoise-1.4.3-gcccoremkl-11.3.0-2022.1.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'OpenImageDenoise' +version = '1.4.3' + +homepage = 'https://www.openimagedenoise.org/' +description = """ +Intel Open Image Denoise is an open source library of high-performance, +high-quality denoising filters for images rendered with ray tracing. +""" + +toolchain = {'name': 'gcccoremkl', 'version': '11.3.0-2022.1.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/OpenImageDenoise/oidn/releases/download/v%(version)s/'] +sources = ['oidn-%(version)s.src.tar.gz'] +checksums = ['3276e252297ebad67a999298d8f0c30cfb221e166b166ae5c955d88b94ad062a'] + +builddependencies = [ + ('ispc', '1.18.1', '', SYSTEM), + ('CMake', '3.23.1'), + ('Python', '3.10.4'), +] + +dependencies = [ + ('tbb', '2021.5.0'), +] + +separate_build_dir = True +start_dir = 'oidn-%(version)s' + +configopts = '-DOIDN_APPS:BOOL=OFF ' + +sanity_check_paths = { + 'dirs': ['include/OpenImageDenoise'], + 'files': ['lib/libOpenImageDenoise.so'], +} + +moduleclass = 'vis' diff --git a/Golden_Repo/o/openvkl/openvkl-1.3.1-GCC-11.3.0.eb b/Golden_Repo/o/openvkl/openvkl-1.3.1-GCC-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..7c11c301e433e143bdb7a2859251a737a9a33732 --- /dev/null +++ b/Golden_Repo/o/openvkl/openvkl-1.3.1-GCC-11.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'CMakeMake' + +name = 'openvkl' +version = '1.3.1' + +homepage = 'http://www.openvkl.org/' +description = """ +Intel® Open Volume Kernel Library (Intel® Open VKL) is a collection +of high-performance volume computation kernels, developed at Intel. +""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openvkl/openvkl/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['c9cefb6c313f2b4c0331e9629931759a6bc204ec00deed6ec0becad1670a1933'] + +builddependencies = [ + ('ispc', '1.18.1', '', SYSTEM), + ('CMake', '3.23.1'), +] + +dependencies = [ + ('tbb', '2021.5.0'), + ('Embree', '3.13.5'), + ('rkcommon', '1.10.0'), +] + +separate_build_dir = True + +start_dir = '%(name)s-%(version)s' + +configopts = '-DBUILD_BENCHMARKS:BOOL=OFF ' +configopts += '-DBUILD_EXAMPLES:BOOL=OFF ' +configopts += '-DBUILD_TESTING:BOOL=OFF ' + +sanity_check_paths = { + 'dirs': ['include/openvkl'], + 'files': ['lib/libopenvkl.so'], +} + +moduleclass = 'vis' diff --git a/Golden_Repo/p/POV-Ray/POV-Ray-3.7.0.10-GCCcore-11.3.0.eb b/Golden_Repo/p/POV-Ray/POV-Ray-3.7.0.10-GCCcore-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..6f3668657b4990101c4654b4e018c2e4ff90d3b4 --- /dev/null +++ b/Golden_Repo/p/POV-Ray/POV-Ray-3.7.0.10-GCCcore-11.3.0.eb @@ -0,0 +1,64 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu, NTUA +# Authors:: Fotis Georgatos <fotis@cern.ch> +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# http://hpcbios.readthedocs.org/en/latest/ +## + +easyblock = 'ConfigureMake' + +name = 'POV-Ray' +version = '3.7.0.10' + +homepage = 'https://www.povray.org/' +description = """The Persistence of Vision Raytracer, or POV-Ray, is a ray tracing program + which generates images from a text-based scene description, and is available for a variety + of computer platforms. POV-Ray is a high-quality, Free Software tool for creating stunning + three-dimensional graphics. The source code is available for those wanting to do their own ports.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/POV-Ray/povray/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['POV-Ray-3.7.0.7_dont-touch-home.patch'] +checksums = [ + '7bee83d9296b98b7956eb94210cf30aa5c1bbeada8ef6b93bb52228bbc83abff', # v3.7.0.10.tar.gz + '45103afca808e279dcdee80194c65e2a760c76d011d351392a46e817b0b655f7', # POV-Ray-3.7.0.7_dont-touch-home.patch +] + +builddependencies = [ + ('Autotools', '20220317'), +] + +dependencies = [ + ('Boost', '1.79.0'), + ('zlib', '1.2.12'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.1.3'), + ('X11', '20220504'), + ('LibTIFF', '4.3.0'), + ('SDL2', '2.26.2', '', ('gcccoremkl', '11.3.0-2022.1.0')), +] + +preconfigopts = "cd unix && sed -i 's/^automake/automake --add-missing; automake/g' prebuild.sh && " +preconfigopts += " ./prebuild.sh && cd .. && " +configopts = "COMPILED_BY='EasyBuild' " +configopts += "--with-boost=$EBROOTBOOST --with-zlib=$EBROOTZLIB --with-libpng=$EBROOTLIBPNG " +configopts += "--with-libtiff=$EBROOTLIBTIFF --with-libjpeg=$EBROOTLIBJPEGMINTURBO --with-libsdl=$EBROOTSDL2 " +configopts += "CXXFLAGS='-DBOOST_BIND_GLOBAL_PLACEHOLDERS ' " +# configopts += " --with-libmkl=DIR " ## upstream needs to fix this, still in BETA + +runtest = 'check' + +sanity_check_paths = { + 'files': ['bin/povray'], + 'dirs': ['etc/povray/%(version_major_minor)s', 'share'] +} + +moduleclass = 'vis' diff --git a/Golden_Repo/p/POV-Ray/POV-Ray-3.7.0.7_dont-touch-home.patch b/Golden_Repo/p/POV-Ray/POV-Ray-3.7.0.7_dont-touch-home.patch new file mode 100644 index 0000000000000000000000000000000000000000..097174a9e0a4a91a3c5e7bd64c3da5c536b6da60 --- /dev/null +++ b/Golden_Repo/p/POV-Ray/POV-Ray-3.7.0.7_dont-touch-home.patch @@ -0,0 +1,25 @@ +# Do not let povray do anything in the user home directory +# wpoely86@gmail.com +diff -ur povray-3.7.0.7.orig/unix/prebuild.sh povray-3.7.0.7/unix/prebuild.sh +--- povray-3.7.0.7.orig/unix/prebuild.sh 2018-01-05 10:06:48.000000000 +0100 ++++ povray-3.7.0.7/unix/prebuild.sh 2018-04-10 10:14:08.621514093 +0200 +@@ -641,19 +641,6 @@ + for f in \$\$filelist ; do \\ + \$(INSTALL_DATA) \$(top_srcdir)/doc/\$\$f \$(DESTDIR)\$(povdocdir)/\$\$f && echo "\$(DESTDIR)\$(povdocdir)/\$\$f" >> \$(povinstall); \\ + done +- @echo "Creating user directories..."; \\ +- for p in \$(povuser) \$(povconfuser) ; do \\ +- \$(mkdir_p) \$\$p && chown \$(povowner) \$\$p && chgrp \$(povgroup) \$\$p && printf "%s\\n" "\$\$p" "\`cat \$(povinstall)\`" > \$(povinstall); \\ +- done +- @echo "Copying user configuration and INI files..."; \\ +- for f in povray.conf povray.ini ; do \\ +- if test -f \$(povconfuser)/\$\$f; then \\ +- echo "Creating backup of \$(povconfuser)/\$\$f"; \\ +- mv -f \$(povconfuser)/\$\$f \$(povconfuser)/\$\$f.bak; \\ +- fi; \\ +- done; \\ +- \$(INSTALL_DATA) \$(top_srcdir)/povray.conf \$(povconfuser)/povray.conf && chown \$(povowner) \$(povconfuser)/povray.conf && chgrp \$(povgroup) \$(povconfuser)/povray.conf && echo "\$(povconfuser)/povray.conf" >> \$(povinstall); \\ +- \$(INSTALL_DATA) \$(top_builddir)/povray.ini \$(povconfuser)/povray.ini && chown \$(povowner) \$(povconfuser)/povray.ini && chgrp \$(povgroup) \$(povconfuser)/povray.ini && echo "\$(povconfuser)/povray.ini" >> \$(povinstall) + + # Remove data, config, and empty folders for 'make uninstall'. + # Use 'hook' instead of 'local' so as to properly remove *empty* folders (e.g. scripts). diff --git a/Golden_Repo/p/ParaViewData/ParaViewData-5.11.0-GCCcore-11.3.0.eb b/Golden_Repo/p/ParaViewData/ParaViewData-5.11.0-GCCcore-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..181fc925f177107f9ed0ff2aac145de4b3200c30 --- /dev/null +++ b/Golden_Repo/p/ParaViewData/ParaViewData-5.11.0-GCCcore-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'Tarball' + +name = 'ParaViewData' +version = '5.11.0' + +homepage = 'https://www.paraview.org' +description = "Testdata for ParaView" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +local_dwnlsfx_src = 'download.php?submit=Download&version=v%(version_major_minor)s&type=data&os=Sources&downloadFile=' +source_urls = [ + ('https://www.paraview.org/paraview-downloads/%s' % local_dwnlsfx_src)] +sources = [ + ('ParaViewTestingDataFiles-v%(version)s.tar.xz'), + ('ParaViewTestingDataStore-v%(version)s.tar.xz'), +] +checksums = [ + ('sha256', '1fabddc33932986eb84cc7e5e08515aff0b9432d875f48ac87ba0285c856e7a2'), + ('sha256', '48b1e7bc38aac3696073cc6911cfb221832e4cc3787ea0010e80f9feb9f190cf'), +] + +sanity_check_paths = { + 'files': ['.ExternalData/README.rst'], + 'dirs': ['.ExternalData', 'Clients', 'Plugins', 'Remoting', 'Testing', 'VTKExtensions'], +} + +moduleclass = 'vis' diff --git a/Golden_Repo/p/PyGObject/PyGObject-3.42.2-GCCcore-11.3.0.eb b/Golden_Repo/p/PyGObject/PyGObject-3.42.2-GCCcore-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..13599cb11e3011ec3519cb024cb354f1fc0009ea --- /dev/null +++ b/Golden_Repo/p/PyGObject/PyGObject-3.42.2-GCCcore-11.3.0.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonPackage' + +name = 'PyGObject' +version = '3.42.2' + +homepage = 'https://pygobject.readthedocs.io' +description = """PyGObject is a Python package which provides bindings for GObject based +libraries such as GTK, GStreamer, WebKitGTK, GLib, GIO and many more. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['21524cef33100c8fd59dc135948b703d79d303e368ce71fa60521cc971cd8aa7'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('GLib', '2.72.1'), + ('GObject-Introspection', '1.72.0'), + ('PyCairo', '1.23.0'), + ('libffi', '3.4.2'), +] + +use_pip = False +sanity_pip_check = True +download_dep_fail = True + +# install data (pkg-config and include files) +installopts = '--root=/' + +sanity_check_paths = { + 'files': [ + 'include/pygobject-%(version_major)s.0/pygobject.h', + 'lib/pkgconfig/pygobject-%(version_major)s.0.pc', + ], + 'dirs': ['lib/python%(pyshortver)s/site-packages/gi'], +} + +options = {'modulename': 'gi'} + +moduleclass = 'vis' diff --git a/Golden_Repo/p/PyOpenCL/PyOpenCL-2021.2.13-gcccoremkl-11.3.0-2022.1.0.eb b/Golden_Repo/p/PyOpenCL/PyOpenCL-2022.2.4-gcccoremkl-11.3.0-2022.1.0.eb similarity index 100% rename from Golden_Repo/p/PyOpenCL/PyOpenCL-2021.2.13-gcccoremkl-11.3.0-2022.1.0.eb rename to Golden_Repo/p/PyOpenCL/PyOpenCL-2022.2.4-gcccoremkl-11.3.0-2022.1.0.eb diff --git a/Golden_Repo/s/SymEngine-python/SymEngine-python-0.9.2-GCC-11.3.0.eb b/Golden_Repo/s/SymEngine-python/SymEngine-python-0.9.2-GCC-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..e4abee3bc07b376ba3bfd45c84e7b6b453e684d4 --- /dev/null +++ b/Golden_Repo/s/SymEngine-python/SymEngine-python-0.9.2-GCC-11.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'SymEngine-python' +version = '0.9.2' + +homepage = 'https://github.com/symengine/symengine.py' +description = "Python wrappers to the C++ library SymEngine, a fast C++ symbolic manipulation library." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/symengine/symengine.py/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +patches = ['py_modules.patch'] +checksums = [ + '9da048692d741bb001d9947a0e2bdf8909600cb4e6f3b9273d518cf93300955d', + '8ad1b29de924ab8589ee86658c6a7bb6921f867b26b03fdf1491a109c7df1e97', +] + +builddependencies = [ + ('CMake', '3.23.1'), +] + +dependencies = [ + ('SymEngine', '0.9.0'), + ('Python', '3.10.4'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': 'symengine'} + +moduleclass = 'lib' diff --git a/Golden_Repo/s/SymEngine-python/py_modules.patch b/Golden_Repo/s/SymEngine-python/py_modules.patch new file mode 100644 index 0000000000000000000000000000000000000000..15a6235e12b25b9ef0ce2d1fd2e7b9753d47c41f --- /dev/null +++ b/Golden_Repo/s/SymEngine-python/py_modules.patch @@ -0,0 +1,11 @@ +diff -Naur symengine.py-0.9.2.orig/setup.py symengine.py-0.9.2/setup.py +--- symengine.py-0.9.2.orig/setup.py 2022-03-07 23:39:26.000000000 +0100 ++++ symengine.py-0.9.2/setup.py 2023-02-05 09:58:50.534749182 +0100 +@@ -238,5 +238,6 @@ + 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', +- ] ++ ], ++ py_modules=[] + ) diff --git a/Golden_Repo/v/VirtualGL/VirtualGL-3.1beta1-GCCcore-11.3.0.eb b/Golden_Repo/v/VirtualGL/VirtualGL-3.1beta1-GCCcore-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..1829196e5ea33b9af1e7d029b59c96f572b3a79d --- /dev/null +++ b/Golden_Repo/v/VirtualGL/VirtualGL-3.1beta1-GCCcore-11.3.0.eb @@ -0,0 +1,50 @@ +easyblock = 'CMakeMake' + +name = 'VirtualGL' +version = '3.1beta1' + +homepage = 'https://virtualgl.org/' +description = """VirtualGL is an open source toolkit that gives any Linux or +Unix remote display software the ability to run OpenGL applications with full +hardware acceleration.""" + + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/VirtualGL/virtualgl/archive/'] +sources = ['%(version)s.tar.gz'] +patches = [ + 'virtualgl_cmake_lib_path.patch', +] +checksums = [ + '67bb5d88e8a016ed92b2cb3708c49ba5d04cc086f39c85b6fa8f51403cc9d22e', + # virtualgl_cmake_lib_path.patch + 'aa185d038f5e47957bd8a163107d352a1675a224b5a41f167e5b75ae42c87f1d', +] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1') +] + +dependencies = [ + ('libjpeg-turbo', '2.1.3'), + ('OpenGL', '2022a'), +] + +separate_build_dir = True +configopts = '-DVGL_FAKEOPENCL=OFF' + +local_binaries = [ + 'cpustat', 'glreadtest', 'glxinfo', 'glxspheres64', 'nettest', 'tcbench', + 'vglclient', 'vglconfig', 'vglconnect', 'vglgenkey', 'vgllogin', 'vglrun', + 'vglserver_config' +] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binaries], + 'dirs': ['lib64', 'share', 'include'], +} + +moduleclass = 'vis' diff --git a/Golden_Repo/v/VirtualGL/virtualgl_cmake_lib_path.patch b/Golden_Repo/v/VirtualGL/virtualgl_cmake_lib_path.patch new file mode 100644 index 0000000000000000000000000000000000000000..f58d0cbe2a5f5836f79a646c40f4e703c61b46d3 --- /dev/null +++ b/Golden_Repo/v/VirtualGL/virtualgl_cmake_lib_path.patch @@ -0,0 +1,13 @@ +diff -ruN virtualgl-2.5.2/CMakeLists.txt virtualgl-2.5.2.old/CMakeLists.txt +--- virtualgl-2.5.2/CMakeLists.txt 2017-03-03 00:13:45.000000000 +0100 ++++ virtualgl-2.5.2.old/CMakeLists.txt 2017-03-20 16:14:04.908614846 +0100 +@@ -261,9 +261,6 @@ + + else() + +-if(CMAKE_SYSTEM_NAME STREQUAL "Linux") +- set(CMAKE_LIBRARY_PATH /usr/lib/${CPU_TYPE}-linux-gnu;/usr/lib${BITS};/usr/lib) +-endif() + include(FindX11) + include(FindOpenGL) + diff --git a/Golden_Repo/x/XServer/0002-Constant-DPI.patch b/Golden_Repo/x/XServer/0002-Constant-DPI.patch new file mode 100644 index 0000000000000000000000000000000000000000..f91e53d1e4934d615e16b7d975d2a6bb8ddc9238 --- /dev/null +++ b/Golden_Repo/x/XServer/0002-Constant-DPI.patch @@ -0,0 +1,96 @@ +--- a/src/dummy.h 2016-12-17 23:02:53.396287041 +0100 ++++ b/src/dummy.h 2016-12-17 23:03:30.319616550 +0100 +@@ -51,6 +51,7 @@ + /* options */ + OptionInfoPtr Options; + Bool swCursor; ++ Bool constantDPI; + /* proc pointer */ + CloseScreenProcPtr CloseScreen; + xf86CursorInfoPtr CursorInfo; +--- a/src/dummy_driver.c 2016-12-14 21:54:20.000000000 +0100 ++++ b/src/dummy_driver.c 2016-12-17 23:04:59.916416126 +0100 +@@ -17,6 +17,12 @@ + /* All drivers using the mi colormap manipulation need this */ + #include "micmap.h" + ++#ifdef RANDR ++#include "randrstr.h" ++#endif ++ ++#include "windowstr.h" ++ + /* identifying atom needed by magnifiers */ + #include <X11/Xatom.h> + #include "property.h" +@@ -115,11 +121,15 @@ + }; + + typedef enum { +- OPTION_SW_CURSOR ++ OPTION_SW_CURSOR, ++ OPTION_CONSTANT_DPI + } DUMMYOpts; + + static const OptionInfoRec DUMMYOptions[] = { + { OPTION_SW_CURSOR, "SWcursor", OPTV_BOOLEAN, {0}, FALSE }, ++#ifdef RANDR ++ { OPTION_CONSTANT_DPI, "ConstantDPI", OPTV_BOOLEAN, {0}, FALSE }, ++#endif + { -1, NULL, OPTV_NONE, {0}, FALSE } + }; + +@@ -359,6 +369,7 @@ + xf86ProcessOptions(pScrn->scrnIndex, pScrn->options, dPtr->Options); + + xf86GetOptValBool(dPtr->Options, OPTION_SW_CURSOR,&dPtr->swCursor); ++ xf86GetOptValBool(dPtr->Options, OPTION_CONSTANT_DPI, &dPtr->constantDPI); + + if (device->videoRam != 0) { + pScrn->videoRam = device->videoRam; +@@ -639,10 +650,45 @@ + return TRUE; + } + ++const char *XDPY_PROPERTY = "dummy-constant-xdpi"; ++const char *YDPY_PROPERTY = "dummy-constant-ydpi"; ++static int get_dpi_value(WindowPtr root, const char *property_name, int default_dpi) ++{ ++ PropertyPtr prop; ++ Atom type_atom = MakeAtom("CARDINAL", 8, TRUE); ++ Atom prop_atom = MakeAtom(property_name, strlen(property_name), FALSE); ++ ++ for (prop = wUserProps(root); prop; prop = prop->next) { ++ if (prop->propertyName == prop_atom && prop->type == type_atom && prop->data) { ++ int v = (int) (*((CARD32 *) prop->data)); ++ if ((v>0) && (v<4096)) { ++ xf86DrvMsg(0, X_INFO, "get_constant_dpi_value() found property \"%s\" with value=%i\n", property_name, (int) v); ++ return (int) v; ++ } ++ break; ++ } ++ } ++ return default_dpi; ++} ++ + /* Mandatory */ + Bool + DUMMYSwitchMode(SWITCH_MODE_ARGS_DECL) + { ++ SCRN_INFO_PTR(arg); ++#ifdef RANDR ++ DUMMYPtr dPtr = DUMMYPTR(pScrn); ++ if (dPtr->constantDPI) { ++ int xDpi = get_dpi_value(pScrn->pScreen->root, XDPY_PROPERTY, pScrn->xDpi); ++ int yDpi = get_dpi_value(pScrn->pScreen->root, YDPY_PROPERTY, pScrn->yDpi); ++ //25.4 mm per inch: (254/10) ++ pScrn->pScreen->mmWidth = mode->HDisplay * 254 / xDpi / 10; ++ pScrn->pScreen->mmHeight = mode->VDisplay * 254 / yDpi / 10; ++ xf86DrvMsg(pScrn->scrnIndex, X_INFO, "mm(dpi %ix%i)=%ix%i\n", xDpi, yDpi, pScrn->pScreen->mmWidth, pScrn->pScreen->mmHeight); ++ RRScreenSizeNotify(pScrn->pScreen); ++ RRTellChanged(pScrn->pScreen); ++ } ++#endif + return TRUE; + } + diff --git a/Golden_Repo/x/XServer/0003-fix-pointer-limits.patch b/Golden_Repo/x/XServer/0003-fix-pointer-limits.patch new file mode 100644 index 0000000000000000000000000000000000000000..3dbb6fd179ffde507036c62700c004914acc5cfb --- /dev/null +++ b/Golden_Repo/x/XServer/0003-fix-pointer-limits.patch @@ -0,0 +1,39 @@ +--- xf86-video-dummy-0.3.6/src/dummy_driver.c 2014-11-05 19:24:02.668656601 +0700 ++++ xf86-video-dummy-0.3.6.new/src/dummy_driver.c 2014-11-05 19:37:53.076061853 +0700 +@@ -55,6 +55,9 @@ + #include <X11/extensions/xf86dgaproto.h> + #endif + ++/* Needed for fixing pointer limits on resize */ ++#include "inputstr.h" ++ + /* Mandatory functions */ + static const OptionInfoRec * DUMMYAvailableOptions(int chipid, int busid); + static void DUMMYIdentify(int flags); +@@ -713,6 +716,26 @@ + RRTellChanged(pScrn->pScreen); + } + #endif ++ //ensure the screen dimensions are also updated: ++ pScrn->pScreen->width = mode->HDisplay; ++ pScrn->pScreen->height = mode->VDisplay; ++ pScrn->virtualX = mode->HDisplay; ++ pScrn->virtualY = mode->VDisplay; ++ pScrn->frameX1 = mode->HDisplay; ++ pScrn->frameY1 = mode->VDisplay; ++ ++ //ensure the pointer uses the new limits too: ++ DeviceIntPtr pDev; ++ SpritePtr pSprite; ++ for (pDev = inputInfo.devices; pDev; pDev = pDev->next) { ++ if (pDev->spriteInfo!=NULL && pDev->spriteInfo->sprite!=NULL) { ++ pSprite = pDev->spriteInfo->sprite; ++ pSprite->hotLimits.x2 = mode->HDisplay; ++ pSprite->hotLimits.y2 = mode->VDisplay; ++ pSprite->physLimits.x2 = mode->HDisplay; ++ pSprite->physLimits.y2 = mode->VDisplay; ++ } ++ } + return TRUE; + } + diff --git a/Golden_Repo/x/XServer/XServer-21.1.6-GCCcore-11.3.0.eb b/Golden_Repo/x/XServer/XServer-21.1.6-GCCcore-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..52e47fdb3bf7a8ca3c704a8690f534ae3070d847 --- /dev/null +++ b/Golden_Repo/x/XServer/XServer-21.1.6-GCCcore-11.3.0.eb @@ -0,0 +1,280 @@ +easyblock = 'Bundle' + +name = 'XServer' +version = '21.1.6' + +homepage = 'https://www.x.org' + +description = """ +XServer: X Window System display server. + +This module provides a stripped-down installation with minimal driver support. +""" + + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [ + 'https://www.x.org/archive/individual/xserver/', + 'https://www.x.org/archive/individual/driver/' +] + +# OS dependency should be preferred for security reasons +osdependencies = [ + ('openssl-devel', 'libssl-dev', 'libopenssl-devel'), +] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), + ('Bison', '3.8.2'), + ('Meson', '0.62.1'), + ('Ninja', '1.10.2'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), +] + +dependencies = [ + ('libdrm', '2.4.110'), + ('OpenGL', '2022a'), + ('pixman', '0.40.0'), + ('X11', '20220504'), + ('freetype', '2.12.1'), + ('fontconfig', '2.14.0'), + ('ncurses', '6.3'), + ('libepoxy', '1.5.10'), + ('eudev', '3.2.11'), + ('libtirpc', '1.3.2'), +] + +local_font_preconfigopts = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " +local_font_preconfigopts += "export PATH=%(installdir)s/bin:$PATH && " +local_font_preconfigopts += "export FONTCONFIG_FILE=%(installdir)s/config/fontconfig/fonts.conf && " + +# https://github.com/freedesktop/xorg-xserver/blob/master/meson_options.txt +local_xorg_configopts = "-D default_font_path=%(installdir)s/share/fonts/X11 " +local_xorg_configopts += "-D xorg=true " +local_xorg_configopts += "-D xvfb=true " +local_xorg_configopts += "-D xnest=true " +local_xorg_configopts += "-D xephyr=true " +local_xorg_configopts += "-D udev=true " +local_xorg_configopts += "-D glamor=true " +local_xorg_configopts += "-D systemd_logind=false " +# local_xorg_configopts += "-D suid_wrapper=true " +local_xorg_configopts += "-D xkb_dir=%(installdir)s/share/X11/xkb " +# local_xorg_configopts += "-D xkb_output_dir=/var/lib/xkb " + +default_easyblock = 'ConfigureMake' + +default_component_specs = { + 'sources': [SOURCE_TAR_GZ], + 'start_dir': '%(name)s-%(version)s', +} + +components = [ + ('fontconfig-config', '1.0.0', { + 'easyblock': 'Binary', + 'source_urls': ['https://gitlab.version.fz-juelich.de/goebbert1/fontconfig-config/-/archive/v%(version)s/'], + 'sources': ['%(name)s-v%(version)s.tar.gz'], + 'start_dir': '%(name)s-v%(version)s', + 'extract_sources': True, + 'install_cmd': ( + 'cp -a %(builddir)s/%(name)s-v%(version)s/* %(installdir)s/ && ' + 'sed -i \'s@$EBROOTXSERVER@\'"%(installdir)s"\'@g\' %(installdir)s/share/X11/xorg.conf.d/99-fonts.conf' + ), + 'checksums': [('sha256', '68544c183d153f34105fa08573174650bfe643a6d750bd9da4accac399d375db')], + # to activate this fontconfig you need to export FONTCONFIG_FILE=${EBROOTXSERVER}/config/fontconfig/fonts.conf + }), + ('mkfontscale', '1.2.2', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['4a5af55e670713024639a7f7d10826d905d86faf574cd77e0f5aef2d00e70168'], + }), + ('mkfontdir', '1.0.7', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['bccc5fb7af1b614eabe4a22766758c87bfc36d66191d08c19d2fa97674b7b5b7'], + }), + ('bdftopcf', '1.1', { + 'source_urls': ['https://www.x.org/archive/individual/app/'], + 'checksums': ['699d1a62012035b1461c7f8e3f05a51c8bd6f28f348983249fb89bbff7309b47'], + }), + ('font-util', '1.3.3', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', '2094dd4a1ca63a61deb101d2dc618682d6e287cdbe09679502223ac445d277dc')], + }), + ('encodings', '1.0.6', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', 'c89c0636cda8f34eb28304263fc9a5441635ac3cb9da23efefe8f584174cba29')], + }), + ('font-alias', '1.0.4', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', '49525fa6f2c3f3b54f461b2e0649b0ac61af50c36bf40069355a25ced8ce2028')], + }), + ('dejavu', '2.37', { + 'easyblock': 'Binary', + 'source_urls': [SOURCEFORGE_SOURCE], + 'sources': ['%(name)s-fonts-ttf-%(version)s.tar.bz2'], + 'extract_sources': True, + 'start_dir': 'dejavu-fonts-ttf-2.37', + 'install_cmd': ('install -v -d -m755 %(installdir)s/share/fonts/dejavu && ' + 'install -v -m644 ttf/*.ttf %(installdir)s/share/fonts/dejavu'), + 'checksums': [('sha256', 'fa9ca4d13871dd122f61258a80d01751d603b4d3ee14095d65453b4e846e17d7')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-adobe-75dpi', '1.0.3', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', '61eb1fcfec89f7435cb92cd68712fbe4ba412ca562b1f5feec1f6daa1b8544f6')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-adobe-100dpi', '1.0.3', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', '97d9c1e706938838e4134d74f0836ae9d9ca6705ecb405c9a0ac8fdcbd9c2159')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-cursor-misc', '1.0.3', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', 'a0b146139363dd0a704c7265ff9cd9150d4ae7c0d248091a9a42093e1618c427')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-adobe-utopia-type1', '1.0.4', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', 'd9e86a8805b0fb78222409169d839a8531a1f5c7284ee117ff2a0af2e5016c3f')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-misc-misc', '1.1.2', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', '46142c876e176036c61c0c24c0a689079704d5ca5b510d48c025861ee2dbf829')], + 'preconfigopts': local_font_preconfigopts, + }), + # Fails because it tries to create a directory outside of %(installdir)s + # => test -z "<PKG_CONFIG-Fontconfig>/etc/fonts/conf.avail" || + # /usr/bin/mkdir -p "<PKG_CONFIG-Fontconfig>/etc/fonts/conf.avail" + # ('font-bh-ttf', '1.0.3', { + # 'source_urls': ['https://www.x.org/pub/individual/font/'], + # 'sources': ['%(name)s-%(version)s.tar.gz'], + # 'checksums': [('sha256', 'c583b4b968ffae6ea30d5b74041afeac83126682c490a9624b770d60d0e63d59')], + # 'preconfigopts': local_font_preconfigopts, + # }), + ('font-bh-type1', '1.0.3', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', 'd5602f1d749ccd31d3bc1bb6f0c5d77400de0e5e3ac5abebd2a867aa2a4081a4')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-ibm-type1', '1.0.3', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', '4509703e9e581061309cf4823bffd4a93f10f48fe192a1d8be1f183fd6ab9711')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-misc-ethiopic', '1.0.4', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', 'f7901250fb746815065cfe13a814d92260348fede28d61dcab0d05c5d8eafd54')], + 'preconfigopts': local_font_preconfigopts, + }), + ('font-xfree86-type1', '1.0.4', { + 'source_urls': ['https://www.x.org/pub/individual/font/'], + 'sources': ['%(name)s-%(version)s.tar.gz'], + 'checksums': [('sha256', '02b3839ae79ba6a7750525bb3b0c281305664b95bf63b4a0baa230a277b4f928')], + 'preconfigopts': local_font_preconfigopts, + }), + ('xkbcomp', '1.4.6', { + 'source_urls': ['https://www.x.org/archive//individual/app/'], + 'checksums': ['b216a2c8c0eab83f3dc4a3d5ee2bdf7827b30e49c8907035d0f222138eca0987'], + }), + ('xkeyboard-config', '2.38', { + 'easyblock': 'MesonNinja', + 'source_urls': ['https://www.x.org/archive//individual/data/xkeyboard-config/'], + 'sources': ['%(name)s-%(version)s.tar.xz'], + 'checksums': ['0690a91bab86b18868f3eee6d41e9ec4ce6894f655443d490a2184bfac56c872'], + # https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/blob/master/meson_options.txt + 'configopts': '-Dxorg-rules-symlinks=true', + }), + ('xauth', '1.1', { + 'source_urls': ['https://www.x.org/releases/individual/app/'], + 'checksums': ['e9fce796c8c5c9368594b9e8bbba237fb54b6615f5fd60e8d0a5b3c52a92c5ef'], + }), + ('libxcvt', '0.1.2', { + 'easyblock': 'MesonNinja', + 'source_urls': ['https://www.x.org/archive/individual/lib/'], + 'sources': [SOURCE_TAR_XZ], + 'checksums': ['0561690544796e25cfbd71806ba1b0d797ffe464e9796411123e79450f71db38'], + }), + ('xorg-server', version, { + 'easyblock': 'MesonNinja', + 'patches': [('xvfb-run', '.')], + 'checksums': [ + ('sha256', '6f9c73ccc50e2731adac17671c8e33687738c8cd556b49ecb9f410ce7217be11'), + ('sha256', 'fd6d13182b77871d4f65fccdaebb8a72387a726426066d3f8e6aa26b010ea0e8'), + ], + 'configopts': local_xorg_configopts, + }), + ('xf86-video-dummy', '0.4.0', { + 'preconfigopts': 'PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%(installdir)s/lib/pkgconfig', + 'sources': ['%(name)s-%(version)s.tar.xz'], + 'checksums': [ + # xf86-video-dummy-0.4.0.tar.gz + ('sha256', 'e78ceae5c8c0588c7cb658f2afc3a9fac9ef665b52a75b01f8e9c5449a4e1e5a'), + # 0002-Constant-DPI.patch + ('sha256', '3add13392168d271822e694aba21327dc3219f61f2091a12ef7009d3f090c662'), + # 0003-fix-pointer-limits.patch + ('sha256', '8af95b0b0e7f4d7de3bd1654260c3677d76ef91b8d6a66cb57b9c3af1e024fa2'), + ], + 'patches': [ + '0002-Constant-DPI.patch', + '0003-fix-pointer-limits.patch', + ], + }), + ('xterm', '378', { + 'source_urls': ['http://invisible-mirror.net/archives/xterm/'], + 'sources': ['%(name)s-%(version)s.tgz'], + 'checksums': [ + # xterm-369.tgz + ('sha256', '649dfbfd5edd0ed9e47cf8e4d953b4b0d3c30bc280166dfc4ffd14973fec3e92'), + # xterm-cursesloc.patch + ('sha256', 'ff15331ba1a2c67f68e3da3595ffc457d7aea5392a75d8cdfe40e2126ece99a2'), + ], + 'patches': ['xterm-cursesloc.patch'], + 'configopts': " --with-app-defaults=%(installdir)s/app-defaults ", + }), +] + +# we need to set the permissions our self to ensure no-one messes in this directory +# FIXME: easybuild does not support this in 4.3.0 -> hence you have to do it manually +skipsteps = ['permissions'] +postinstallcmds = [ + 'chmod -R ugo-w %(installdir)s/config', + 'chmod -R ugo-w %(installdir)s/share', + 'install -m 0755 %(builddir)s/xorg-server-%(version)s/xvfb-run %(installdir)s/bin/', +] + +modextrapaths = { + 'XDG_CONFIG_DIRS': 'config', + 'XUSERFILESEARCHPATH': 'app-defaults/%N-%C', +} + +# FONTCONFIG_FILE is used to override the default configuration file +modextravars = { + 'FONTCONFIG_FILE': '%(installdir)s/config/fontconfig/fonts.conf'} + +sanity_check_paths = { + 'files': ['bin/Xorg', 'bin/Xvfb', 'bin/xvfb-run', + 'lib/xorg/modules/drivers/dummy_drv.la', 'lib/xorg/modules/drivers/dummy_drv.so', + 'bin/xterm'], + 'dirs': [], +} + +sanity_check_commands = [ + "xvfb-run --help", + "xvfb-run --error-file %(builddir)s/xvfb-run-test.err echo hello", +] + +moduleclass = 'vis' diff --git a/Golden_Repo/x/XServer/xterm-cursesloc.patch b/Golden_Repo/x/XServer/xterm-cursesloc.patch new file mode 100644 index 0000000000000000000000000000000000000000..033c2776b7838ae1907a69f31d75d7ce7d28175f --- /dev/null +++ b/Golden_Repo/x/XServer/xterm-cursesloc.patch @@ -0,0 +1,12 @@ +diff -Naur xterm-362.orig/xtermcap.h xterm-362/xtermcap.h +--- xterm-362.orig/xtermcap.h 2013-06-23 17:34:37.000000000 +0200 ++++ xterm-362/xtermcap.h 2021-02-16 14:00:48.976219215 +0100 +@@ -59,7 +59,7 @@ + #undef ERR /* workaround for glibc 2.1.3 */ + + #ifdef HAVE_NCURSES_CURSES_H +-#include <ncurses/curses.h> ++#include <curses.h> + #else + #include <curses.h> + #endif diff --git a/Golden_Repo/x/XServer/xvfb-run b/Golden_Repo/x/XServer/xvfb-run new file mode 100644 index 0000000000000000000000000000000000000000..237e0dfc5938430d50fe8d30fde1b6defa9c6e42 --- /dev/null +++ b/Golden_Repo/x/XServer/xvfb-run @@ -0,0 +1,194 @@ +#!/bin/sh + +# extracted from Debian package for xorg-server, +# via http://deb.debian.org/debian/pool/main/x/xorg-server/xorg-server_1.20.4-1.diff.gz + +# This script starts an instance of Xvfb, the "fake" X server, runs a command +# with that server available, and kills the X server when done. The return +# value of the command becomes the return value of this script. +# +# If anyone is using this to build a Debian package, make sure the package +# Build-Depends on xvfb and xauth. + +set -e + +PROGNAME=xvfb-run +SERVERNUM=99 +AUTHFILE= +ERRORFILE=/dev/null +XVFBARGS="-screen 0 1280x1024x24" +LISTENTCP="-nolisten tcp" +XAUTHPROTO=. + +# Query the terminal to establish a default number of columns to use for +# displaying messages to the user. This is used only as a fallback in the event +# the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the +# script is running, and this cannot, only being calculated once.) +DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true +case "$DEFCOLUMNS" in + *[!0-9]*|'') DEFCOLUMNS=80 ;; +esac + +# Display a message, wrapping lines at the terminal width. +message () { + echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} +} + +# Display an error message. +error () { + message "error: $*" >&2 +} + +# Display a usage message. +usage () { + if [ -n "$*" ]; then + message "usage error: $*" + fi + cat <<EOF +Usage: $PROGNAME [OPTION ...] COMMAND +Run COMMAND (usually an X client) in a virtual X server environment. +Options: +-a --auto-servernum try to get a free server number, starting at + --server-num +-e FILE --error-file=FILE file used to store xauth errors and Xvfb + output (default: $ERRORFILE) +-f FILE --auth-file=FILE file used to store auth cookie + (default: ./.Xauthority) +-h --help display this usage message and exit +-n NUM --server-num=NUM server number to use (default: $SERVERNUM) +-l --listen-tcp enable TCP port listening in the X server +-p PROTO --xauth-protocol=PROTO X authority protocol name to use + (default: xauth command's default) +-s ARGS --server-args=ARGS arguments (other than server number and + "-nolisten tcp") to pass to the Xvfb server + (default: "$XVFBARGS") +EOF +} + +# Find a free server number by looking at .X*-lock files in /tmp. +find_free_servernum() { + # Sadly, the "local" keyword is not POSIX. Leave the next line commented in + # the hope Debian Policy eventually changes to allow it in /bin/sh scripts + # anyway. + #local i + + i=$SERVERNUM + while [ -f /tmp/.X$i-lock ]; do + i=$(($i + 1)) + done + echo $i +} + +# Clean up files +clean_up() { + if [ -e "$AUTHFILE" ]; then + XAUTHORITY=$AUTHFILE xauth remove ":$SERVERNUM" >>"$ERRORFILE" 2>&1 + fi + if [ -n "$XVFB_RUN_TMPDIR" ]; then + if ! rm -r "$XVFB_RUN_TMPDIR"; then + error "problem while cleaning up temporary directory" + exit 5 + fi + fi + if [ -n "$XVFBPID" ]; then + kill "$XVFBPID" >>"$ERRORFILE" 2>&1 + fi +} + +# Parse the command line. +ARGS=$(getopt --options +ae:f:hn:lp:s:w: \ + --long auto-servernum,error-file:,auth-file:,help,server-num:,listen-tcp,xauth-protocol:,server-args:,wait: \ + --name "$PROGNAME" -- "$@") +GETOPT_STATUS=$? + +if [ $GETOPT_STATUS -ne 0 ]; then + error "internal error; getopt exited with status $GETOPT_STATUS" + exit 6 +fi + +eval set -- "$ARGS" + +while :; do + case "$1" in + -a|--auto-servernum) SERVERNUM=$(find_free_servernum); AUTONUM="yes" ;; + -e|--error-file) ERRORFILE="$2"; shift ;; + -f|--auth-file) AUTHFILE="$2"; shift ;; + -h|--help) SHOWHELP="yes" ;; + -n|--server-num) SERVERNUM="$2"; shift ;; + -l|--listen-tcp) LISTENTCP="" ;; + -p|--xauth-protocol) XAUTHPROTO="$2"; shift ;; + -s|--server-args) XVFBARGS="$2"; shift ;; + -w|--wait) shift ;; + --) shift; break ;; + *) error "internal error; getopt permitted \"$1\" unexpectedly" + exit 6 + ;; + esac + shift +done + +if [ "$SHOWHELP" ]; then + usage + exit 0 +fi + +if [ -z "$*" ]; then + usage "need a command to run" >&2 + exit 2 +fi + +if ! command -v xauth >/dev/null; then + error "xauth command not found" + exit 3 +fi + +# tidy up after ourselves +trap clean_up EXIT + +# If the user did not specify an X authorization file to use, set up a temporary +# directory to house one. +if [ -z "$AUTHFILE" ]; then + XVFB_RUN_TMPDIR="$(mktemp -d -t $PROGNAME.XXXXXX)" + AUTHFILE="$XVFB_RUN_TMPDIR/Xauthority" + # Create empty file to avoid xauth warning + touch "$AUTHFILE" +fi + +# Start Xvfb. +MCOOKIE=$(mcookie) +tries=10 +while [ $tries -gt 0 ]; do + tries=$(( $tries - 1 )) + XAUTHORITY=$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1 +add :$SERVERNUM $XAUTHPROTO $MCOOKIE +EOF + # handle SIGUSR1 so Xvfb knows to send a signal when it's ready to accept + # connections + trap : USR1 + (trap '' USR1; exec Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP -auth $AUTHFILE >>"$ERRORFILE" 2>&1) & + XVFBPID=$! + + wait || : + if kill -0 $XVFBPID 2>/dev/null; then + break + elif [ -n "$AUTONUM" ]; then + # The display is in use so try another one (if '-a' was specified). + SERVERNUM=$((SERVERNUM + 1)) + SERVERNUM=$(find_free_servernum) + continue + fi + error "Xvfb failed to start" >&2 + XVFBPID= + exit 1 +done + +# Start the command and save its exit status. +set +e +DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" +RETVAL=$? +set -e + +# Return the executed command's exit status. +exit $RETVAL + +# vim:set ai et sts=4 sw=4 tw=80: diff --git a/Golden_Repo/y/yuicompressor/yuicompressor-2.4.8-GCCcore-11.3.0.eb b/Golden_Repo/y/yuicompressor/yuicompressor-2.4.8-GCCcore-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..f4fc2a28aece72fd5d97e3b829fcd5a6180d5d88 --- /dev/null +++ b/Golden_Repo/y/yuicompressor/yuicompressor-2.4.8-GCCcore-11.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'yuicompressor' +version = '2.4.8' + +homepage = 'https://github.com/sprat/yuicompressor' +description = """YUI Compressor is a JavaScript and CSS minifier written in Java.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/sprat/yuicompressor/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['0054abb77cc151147597aeaa5b47b6843925d3293e2e44d5b36e68ee54a1154f'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('Java', '11', '', SYSTEM), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], +} + +moduleclass = 'vis' diff --git a/Golden_Repo/z/zfp/zfp-0.5.5-GCCcore-11.3.0.eb b/Golden_Repo/z/zfp/zfp-0.5.5-GCCcore-11.3.0.eb new file mode 100644 index 0000000000000000000000000000000000000000..39fbbbbce6fafdbb9a552a503c58f8ed157e535e --- /dev/null +++ b/Golden_Repo/z/zfp/zfp-0.5.5-GCCcore-11.3.0.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakeMake' + +name = 'zfp' +version = '0.5.5' + +homepage = "https://github.com/LLNL/zfp" +description = """Optionally error-bounded lossy compressor for HPC data +with high throughput read and write random access to individual array elements.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +github_account = 'LLNL' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['6a7f4934489087d9c117a4af327fd6495ea757924f4df467b9c537abf8bd86c4'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), + ('pkgconf', '1.8.0'), +] + +separate_build_dir = True + +configopts = '-DBUILD_SHARED_LIBS:BOOL=ON ' +configopts += '-DBUILD_EXAMPLES:BOOL=OFF ' +configopts += '-DBUILD_TESTING:BOOL=OFF ' + +configopts += '-DZFP_WITH_OPENMP:BOOL=ON ' +configopts += '-DZFP_WITH_CUDA:BOOL=OFF ' + +configopts += '-DBUILD_CFP:BOOL=ON ' +configopts += '-DBUILD_ZFPY:BOOL=OFF ' +configopts += '-DBUILD_ZFORP:BOOL=ON ' + +configopts += '-DBUILD_UTILITIES:BOOL=ON ' +configopts += '-DCMAKE_C_STANDARD_LIBRARIES="-lm" ' + +# create pkgconfig file +postinstallcmds = [ + "mkdir -p %(installdir)s/lib/pkgconfig", + """echo -e "prefix=%(installdir)s +libdir=\${prefix}/lib64 +includedir=\${prefix}/include +Name: %(name)s +Description: %(name)s compression library +Version: %(version)s +Requires: +Libs: -L\${libdir} -lzfp -lcfp +Cflags: -I\${includedir}" > %(installdir)s/lib/pkgconfig/%(name)s.pc""", +] + +sanity_check_paths = { + 'files': ['lib64/libzfp.so', 'lib64/libcfp.so', 'include/zfp.h'], + 'dirs': ['lib/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/acls.yml b/acls.yml index bbeabbf0d3013f741809620ca09846d4cbb68ffd..b61a429f0e770daaa852cfd76ee8f10527d40f29 100644 --- a/acls.yml +++ b/acls.yml @@ -103,7 +103,7 @@ software: base: True - name: 'Embree' owner: 'goebbert1' - base: True + compiler: True - name: 'freeglut' owner: 'goebbert1' base: True @@ -316,6 +316,9 @@ software: - name: 'PyQuil' owner: 'goebbert1' base: True + - name: 'PySCF' + owner: 'goebbert1' + compiler: True - name: 'qcint' owner: 'gonzalezcalaza1' base: True