diff --git a/.github/workflows/linting.yml b/.github/workflows/linting.yml index 9d5354858a14..6346d959773f 100644 --- a/.github/workflows/linting.yml +++ b/.github/workflows/linting.yml @@ -2,7 +2,7 @@ name: Static Analysis on: [push, pull_request] jobs: python-linting: - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index 02805c08dbcf..1a8e16547f51 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -2,7 +2,7 @@ name: easyconfigs unit tests on: [push, pull_request] jobs: test-suite: - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 strategy: matrix: python: [2.7, 3.6] @@ -148,7 +148,7 @@ jobs: eb --prefix /tmp/$USER/$GITHUB_SHA --sourcepath /tmp/sources M4-1.4.18.eb test-sdist: - runs-on: ubuntu-18.04 + runs-on: ubuntu-20.04 strategy: matrix: python: [2.7, 3.6, 3.7] diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 3349bc496501..698ecd7803e7 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -3,10 +3,102 @@ For more detailed information, please see the git log. These release notes can also be consulted at https://docs.easybuild.io/en/latest/Release_notes.html. -The latest version of easybuild-easyconfig provides 15,020 easyconfig files, for 2,736 different software packages, +The latest version of easybuild-easyconfig provides 15,332 easyconfig files, for 2,773 different software packages, incl. 37 different (compiler) toolchains. +v4.6.1 (September 12th 2022) +---------------------------- + +update/bugfix release + +- added example easyconfig files for 37 new software packages: + - AptaSUITE (#8583), BigDFT (#15860), colossalai (#15971), CrystFEL (#8407), Dakota (#15883, #16210), + FastFold (#15972), fastparquet (#15020), FOX-Toolkit (#15986), GLM-AED (#15879), hiredis (#16071), + how_are_we_stranded_here (#16220, #16227), indicators (#16209), JavaFX (#8583), json-fortran (#15979), + jupyter-resource-usage (#15834), libev (#16086), libmad (#16067), libplinkio (#13040), LuaJIT2-OpenResty (#16047), + MetaMorpheus (#15825), mgltools (#16226), miniasm (#15858), muMerge (#16115), nano (#16198), nghttp3 (#16097), + olaFlow (#16021), OpenFAST (#15983, #15983), OpenFold (#15971), Phantompeakqualtools (#15871), + pyGenomeTracks (#16143), QuickPIC (#15978), RheoTool (#16077), Satsuma2 (#16068), SMC++ (#16017), stripy (#15866), + UCC-CUDA (#15956), VESTA (#16217) +- added additional easyconfigs for various supported software packages, including: + - alevin-fry 0.6.0, AmberTools 22.3, arrow-R 8.0.0, ASE 3.22.1, BBMap 38.98, BCFtools 1.15.1, binutils 2.39, + BLAST+ 2.13.0, Bowtie2 2.4.5, BUSCO 5.4.3, CapnProto 0.10.2, Cartopy 0.20.3, ccache 4.6.1, cclib 1.7.2, CDO 2.0.5, + CellRanger-ATAC 2.1.0, CoordgenLibs 3.0.1, cURL 7.84.0, cuTENSOR 1.6.0.3, einops 0.4.1, Elk 8.5.2, Emacs 28.1, + Embree 3.13.4, FFmpeg 4.4.2 + 5.0.1, fio 3.32, Flask 2.2.2, Flye 2.9.1, fmt 9.1.0, FORD 6.1.15, FreeSurfer 7.3.2, + GATE 9.2, GATK 4.2.6.1, GCC(core) 12.2.0, GDB 12.1, Geant4 11.0.2, GetOrganelle 1.7.6.1, gifsicle 1.93, GLFW 3.3.8, + glib-networking 2.72.1, Globus-CLI 3.6.0, gnuplot 5.4.4, gperftools 2.10, Graphviz 5.0.0, Gurobi 9.5.2, HDF5 1.12.2, + HTSlib 1.15.1, Hypre 2.25.0, Jansson 2.14, jax 0.3.14, Kalign 3.3.2, kim-api 2.3.0, LAMMPS 23Jun2022, libcerf 2.1, + libdwarf 0.4.1, Libint 2.7.2, libQGLViewer 2.8.0, LibSoup 2.74.0, libzip 1.9.2, Lua 5.4.4, lxml 4.9.1, + maeparser 1.3.0, matplotlib 3.5.2, MATSim 14.0, MDAnalysis 2.2.0, medaka 1.6.0, Megalodon 2.5.0, Mercurial 6.2, + MetaEuk 6, Mini-XML-3.3.1, MUMmer 4.0.0rc1, MUMPS 5.5.1, netCDF-Fortran 4.6.0, NGSpeciesID 0.1.2.1, + ont-remora 1.0.0, OpenFOAM v2206, OTF2 3.0, parallel 20220722, ParaView 5.10.1, patchelf 0.15.0, Perl 5.36.0, + pftoolsV3 3.2.12, PLINK 2.00a3.6, pretty-yaml 21.10.1, PRSice 2.3.5, pugixml 1.12.1, Pyomo 6.4.2, + PyOpenCL 2021.2.13, Pysam 0.19.1, PyStan 3.5.0, PyYAML 6.0, RDKit 2022.03.5, scikit-bio 0.5.7, scikit-build 0.15.0, + scikit-learn 1.1.2, scikit-optimize 0.9.0, SCOTCH 7.0.1, SIONlib 1.7.7, SISSO 3.1, spglib-python 2.0.0, Stacks 2.62, + Stata 17, SUMO 1.14.1, tbb 2021.5.0, tqdm 4.64.0, Transformers 4.21.1, Trycycler 0.5.3, Unicycler 0.5.0, + Valgrind 3.19.0, ViennaRNA 2.5.1, VTune 2022.3.0.eb, wxPython 4.1.1, x264 20220620, Z3 4.10.2, zfp 1.0.0 +- minor enhancements, including: + - add alternate download URL for Voro++ (#15898) + - add extra symlinks and sanity checks for libtinfo in ncurses (#15903) + - include some easyconfig constants in flake8 configuration file (#16040) + - add pigz dependency for cutadapt v3.4 + v3.5 (#16056) + - add sanity check commands for recent gettext versions (>= 0.20.x) (#16091) +- various bug fixes, including: + - use correct Matlab Runtime Compiler (v8.4) for FreeSurfer v7.1.1 (#13375) + - fix set-alias statements for MaxQuant v2.0.3.0 (#15743) + - add Autotools build dependency to R 4.2.0 w/ foss 2021b (#15822) + - add patch for BLIS to fix auto-detection of POWER (#15826) + - downgrade SPAdes dependency to v3.13.1 for Unicycler 0.4.9 since v3.15.3 is too new (#15840) + - explicitly enable HDF5 from kallisto v0.46.2 onwards (#15843) + - add CVE patch for XZ 5.2.5 + attempt to fix symbol patch for all OSs (#15856) + - use build enviroment set by EasyBuild and add missing dependency on zlib to minimap2 (#15859) + - add missing dependencies and execute tests on Trycycler v0.5.2 (#15864) + - add patch for AlphaFold v2.2.2 to fix NaN problem with jax 0.3.9 (#15874) + - exclude (flaky) fault_tolerance_test and fix non-x86 build for TensorFlow 2.7.1 (#15882) + - work around miscompilation of OpenBLAS on POWER by compiling with -fstack-protector-strong (#15885) + - fix tests on POWER9 for BLIS 0.9.0 + fix auto-detect for POWER10 for BLIS (AMD) v2.0 + v3.0 (#15889) + - add and fix patches for PyTorch 1.9.0 on POWER (#15919) + - exclude Binary, PackedBinary and JAR easyblocks from binutils build requirements (#15932) + - consistently add libffi + elfutils dependencies to recent Clang easyconfigs (#15935, #16225) + - add patch to fix broken test on POWER for numpy in SciPy-bundle 2022.05 (#15968) + - refactor checksum test for extensions to use collect_exts_file_info (#15973) + - fix dependency on FOX Toolkit in SUMO (#15986) + - add missing SciPy-bundle dependency for rMATS-turbo (#15988) + - explictely download wannier90 source tarball from wannier90 GitHub repository in QuantumESPRESSO 7.1 easyconfigs (#15993) + - restore ploteig in EIGENSOFT 7.2.1 (#15996) + - add alternative checksum for plot3Drgl extension in R v4.1.x + v4.2.0 easyconfigs (#16011) + - add patch to fix missing sync in LINCS and SETTLE CUDA kernels for GROMACS 2020 (#16027) and 2021 (#16026) + - exclude failing test in TensorFlow 2.4.1 (#16042) + - skip NASA performance and remote server tests in netCDF v4.9.0 (#16050, #16158) + - use versioned symbols in ncurses built with system toolchain (by adding --with-versioned-syms configure option) (#16064) + - add patch to fix pkgconfig file for Blitz++ v1.0.2 (#16102) + - add missing BCFtools dependency for recent medaka versions (#16107) + - add GTK2 v2.24.33 as a dependency for Ghostscript v9.56.1 (#16112) + - fix checksum for Stacks v2.62 (due to silent re-release without version bump) (#16134) + - fix libsanitzer for glibc 2.36 to build GCCcore 11.3.0 (#16145) + - fix top level Makefile for AmberTools 20 and enable tests (#16150) + - add missing patches + enable running tests for AmberTools 21 with intel/2021a (#16151) and intel/2021b (#16152) + - replace HDF5 v1.13.1 with v1.12.1 as dependency, since we shouldn't use odd minor versions of HDF5 which are not stable releases (#16153) + - remove modextrapaths to add top-level install directory to $PATH for recent InterProScan easyconfigs (now done by default by Binary easyblock) (#16167) + - fix sources + source URL + homepage for Molekel v5.4.0 (#16219) + - consistently add maeparser + CoordgenLibs dependencies to OpenBabel 3.1.1 easyconfigs (#16231) + - fix checksum for CUDA 11.4.1 aarch64 installer (#16234) + - remove incorrect comment for Boost dependency in OpenBabel 3.1.1 easyconfigs (#16238) + - add direct Pango dependency in recent ImageMagick easyconfigs (#16237) +- other changes: + - remove superflous -DCMAKE_BUILD_TYPE=Release, use of 'build_type = Release', or enabling separate_build_dir from easyconfigs using CMakeMake easyblock (#13384) + - synchronize ncurses easyconfigs using system toolchain (#15903) + - stick to Java/11 as dependency for Bazel 5.1.1 (which is available for x86_64, aarch64, ppc64le) (#15906) + - speed up OpenMPI 4.1.4 configure by not running "autogen.pl --force", but only running required Autotools commands (#15957) + - replace sed commands by upstreamed patches for BLIS built with intel-compilers toolchain (#15958) + - simplify AlphaFold foss/2021a easyconfigs by using a fleshed out patched OpenMM dependency (#15981) + - update Java/11 to 11.0.16 and Java/17 to 17.0.4 (#16001) + - remove unecessary patch in recent JupyterLab (#16030) + - update CI workflows to use Ubuntu 20.04 (since Ubuntu 18.04 is deprecated) (#16070) + - make check for toolchain value in dependency spec in easyconfigs test suite aware that dumped easyconfig uses SYSTEM constant (#16126) + + v4.6.0 (July 8th 2022) ---------------------- diff --git a/easybuild/easyconfigs/a/ADIOS/ADIOS-1.13.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/a/ADIOS/ADIOS-1.13.1-foss-2020a-Python-3.8.2.eb new file mode 100644 index 000000000000..6df9ace119f3 --- /dev/null +++ b/easybuild/easyconfigs/a/ADIOS/ADIOS-1.13.1-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,73 @@ +# Based on ADIOS-1.13.1-foss-2019a-Python-2.7.15.eb +# Updated to foss-2020a toolchain and switched to ConfigureMake +# Mini-XML updated to latest 2.x. version +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'ConfigureMake' + +name = 'ADIOS' +version = '1.13.1' +versionsuffix = '-Python-%(pyver)s' + +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': 'foss', 'version': '2020a'} +toolchainopts = {'usempi': True, 'pic': True} + +github_account = 'ornladios' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s_force_use_of_mpi.patch', + '%(name)s-%(version)s_fix_missing_thread_lib.patch', + '%(name)s-%(version)s_fix_search_for_szip.patch', +] +checksums = [ + 'b1c6949918f5e69f701cabfe5987c0b286793f1057d4690f04747852544e157b', # v1.13.1.tar.gz + '81b9b0a77b23d6137f08900a3ecda4471b806c384cf4ad19c4370fc7ca8d9a82', # ADIOS-1.13.1_force_use_of_mpi.patch + 'a66fab38e5daf40978f9e961d810f9cbf189de8db924a403ae42a01d405f6fdc', # ADIOS-1.13.1_fix_missing_thread_lib.patch + '2e21a5041822c8b57554eb977a3135637c2714d377eee3b0194d377f1458cdab', # ADIOS-1.13.1_fix_search_for_szip.patch +] + +builddependencies = [ + ('Autotools', '20180311'), +] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('Szip', '2.1.1'), + ('lz4', '1.9.2'), + ('netCDF', '4.7.4'), + ('Mini-XML', '2.12'), +] + +preconfigopts = ' autoreconf -i && ' +configopts = '--with-zlib=$EBROOTZLIB -with-bzip2=$EBROOTBZIP2 --with-netcdf==$EBROOTNETCDF ' +configopts += '--with-lz4=$EBROOTLZ4 --with-mxml=$EBROOTMINIMINXML --with-phdf5=$EBROOTHDF5 ' + +fix_python_shebang_for = ['bin/gpp.py'] + +runtest = ' check' + +sanity_check_paths = { + 'files': ['bin/adios_list_methods', 'bin/bpappend'], + 'dirs': ['etc/skel/templates', 'lib/python'], +} + +sanity_check_commands = [ + 'adios_list_methods', + 'bpappend -h', +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python', +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/ADIOS/ADIOS-20210804-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/a/ADIOS/ADIOS-20210804-foss-2020a-Python-3.8.2.eb new file mode 100644 index 000000000000..03d791038bf0 --- /dev/null +++ b/easybuild/easyconfigs/a/ADIOS/ADIOS-20210804-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,78 @@ +# Based on ADIOS-1.13.1-foss-2019a-Python-2.7.15.eb +# Updated to foss-2020a toolchain and switched to ConfigureMake +# Latest version from GitHub +# Mini-XML updated to latest 2.x. version +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'ConfigureMake' + +name = 'ADIOS' +version = '20210804' +local_commit = 'de85222' +versionsuffix = '-Python-%(pyver)s' + +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': 'foss', 'version': '2020a'} +toolchainopts = {'usempi': True, 'pic': True} + +github_account = 'ornladios' +source_urls = [GITHUB_SOURCE] +sources = ['%s.tar.gz' % local_commit] + +patches = [ + '%(name)s-1.13.1_force_use_of_mpi.patch', + '%(name)s-1.13.1_fix_missing_thread_lib.patch', + '%(name)s-1.13.1_fix_search_for_szip.patch', +] +checksums = [ + 'c58af40cbdb13843de2c2c157379d069880835c9b932ad05e774910ec23a468f', # de85222.tar.gz + '81b9b0a77b23d6137f08900a3ecda4471b806c384cf4ad19c4370fc7ca8d9a82', # ADIOS-1.13.1_force_use_of_mpi.patch + 'a66fab38e5daf40978f9e961d810f9cbf189de8db924a403ae42a01d405f6fdc', # ADIOS-1.13.1_fix_missing_thread_lib.patch + '2e21a5041822c8b57554eb977a3135637c2714d377eee3b0194d377f1458cdab', # ADIOS-1.13.1_fix_search_for_szip.patch +] + +builddependencies = [ + ('Autotools', '20180311'), +] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('Szip', '2.1.1'), + ('lz4', '1.9.2'), + ('netCDF', '4.7.4'), + ('Mini-XML', '2.12'), + ('zfp', '1.0.0'), +] + +preconfigopts = ' autoreconf -i && export LIBS="-lgomp" && ' +configopts = '--with-zlib=$EBROOTZLIB -with-bzip2=$EBROOTBZIP2 --with-netcdf==$EBROOTNETCDF ' +configopts += '--with-lz4=$EBROOTLZ4 --with-mxml=$EBROOTMINIMINXML --with-phdf5=$EBROOTHDF5 ' +configopts += '--with-zfp=$EBROOTZFP ' + +fix_python_shebang_for = ['bin/gpp.py'] + +runtest = ' check' + +sanity_check_paths = { + 'files': ['bin/adios_list_methods', 'bin/bpappend'], + 'dirs': ['etc/skel/templates', 'lib/python'], +} + +sanity_check_commands = [ + 'adios_list_methods', + 'bpappend -h', +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python', +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-11.3.0-Java-11.eb b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-11.3.0-Java-11.eb new file mode 100644 index 000000000000..5c290512f99c --- /dev/null +++ b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-11.3.0-Java-11.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'ANTLR' +version = '2.7.7' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.antlr2.org/' +description = """ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) + is a language tool that provides a framework for constructing recognizers, + compilers, and translators from grammatical descriptions containing + Java, C#, C++, or Python actions.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://www.antlr2.org/download/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_includes.patch'] +checksums = [ + '853aeb021aef7586bda29e74a6b03006bcb565a755c86b66032d8ec31b67dbb9', # antlr-2.7.7.tar.gz + 'd167d3248a03301bc93efcb37d5df959aae6794968e42231af0b0dd26d6a2e66', # ANTLR-2.7.7_includes.patch +] + +builddependencies = [('binutils', '2.38')] + +dependencies = [('Java', '11', '', True)] + +configopts = '--disable-examples --disable-csharp --disable-python' + +sanity_check_paths = { + 'files': ['bin/antlr', 'bin/antlr-config'], + 'dirs': ['include'], +} + +sanity_check_commands = ["antlr --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/ANTs/ANTs-2.2.0-foss-2016b-Python-2.7.12.eb b/easybuild/easyconfigs/a/ANTs/ANTs-2.2.0-foss-2016b-Python-2.7.12.eb index 4f2d5cbbc194..a25812855470 100644 --- a/easybuild/easyconfigs/a/ANTs/ANTs-2.2.0-foss-2016b-Python-2.7.12.eb +++ b/easybuild/easyconfigs/a/ANTs/ANTs-2.2.0-foss-2016b-Python-2.7.12.eb @@ -24,8 +24,8 @@ dependencies = [ ('VTK', '6.3.0', versionsuffix), ] -configopts = '-DCMAKE_BUILD_TYPE=Release -DUSE_SYSTEM_ITK=ON ' -configopts += '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF' +configopts = '-DUSE_SYSTEM_ITK=ON ' +configopts += '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' configopts += '-DUSE_VTK=ON -DUSE_SYSTEM_VTK=ON -DITK_DIR=$EBROOTITK/lib/cmake/ITK-%s' % local_itkshortver skipsteps = ['install'] diff --git a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-foss-2017b-Python-2.7.14.eb b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-foss-2017b-Python-2.7.14.eb index d7d2d862a3ab..8e30688c8b71 100644 --- a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-foss-2017b-Python-2.7.14.eb +++ b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-foss-2017b-Python-2.7.14.eb @@ -24,8 +24,7 @@ dependencies = [ separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' -configopts += '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' configopts += '-DUSE_VTK=ON -DUSE_SYSTEM_VTK=ON ' configopts += '-DSuperBuild_ANTS_USE_GIT_PROTOCOL=OFF' diff --git a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-intel-2017b-Python-2.7.14.eb b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-intel-2017b-Python-2.7.14.eb index c6b610657388..a8ecce342bee 100644 --- a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-intel-2017b-Python-2.7.14.eb +++ b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.0-intel-2017b-Python-2.7.14.eb @@ -24,8 +24,7 @@ dependencies = [ separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' -configopts += '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' configopts += '-DUSE_VTK=ON -DUSE_SYSTEM_VTK=ON ' configopts += '-DSuperBuild_ANTS_USE_GIT_PROTOCOL=OFF' diff --git a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.1-foss-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.1-foss-2018b-Python-3.6.6.eb index 201663c8e6bd..e5f1a6528096 100644 --- a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.1-foss-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.1-foss-2018b-Python-3.6.6.eb @@ -28,8 +28,7 @@ dependencies = [ separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' -configopts += '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' configopts += '-DUSE_VTK=ON -DUSE_SYSTEM_VTK=ON ' configopts += '-DSuperBuild_ANTS_USE_GIT_PROTOCOL=OFF' diff --git a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.2-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.2-foss-2019b-Python-3.7.4.eb index da82f868f0a4..6b49020a633e 100644 --- a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.2-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.2-foss-2019b-Python-3.7.4.eb @@ -33,8 +33,7 @@ dependencies = [ separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' -configopts += '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' configopts += '-DUSE_VTK=ON -DUSE_SYSTEM_VTK=ON ' configopts += '-DSuperBuild_ANTS_USE_GIT_PROTOCOL=OFF' diff --git a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.5-foss-2021a.eb b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.5-foss-2021a.eb index fe0bc0c4e224..ec2c58de9856 100644 --- a/easybuild/easyconfigs/a/ANTs/ANTs-2.3.5-foss-2021a.eb +++ b/easybuild/easyconfigs/a/ANTs/ANTs-2.3.5-foss-2021a.eb @@ -21,10 +21,7 @@ dependencies = [ ('VTK', '9.0.1'), ] -separate_build_dir = True - -configopts = '-DCMAKE_BUILD_TYPE=Release ' -configopts += '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' +configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF ' configopts += '-DUSE_VTK=ON -DUSE_SYSTEM_VTK=ON ' configopts += '-DSuperBuild_ANTS_USE_GIT_PROTOCOL=OFF' diff --git a/easybuild/easyconfigs/a/AOCC/AOCC-3.2.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/a/AOCC/AOCC-3.2.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..e7b4a9c2e01b --- /dev/null +++ b/easybuild/easyconfigs/a/AOCC/AOCC-3.2.0-GCCcore-11.3.0.eb @@ -0,0 +1,27 @@ +## +# Author: Robert Mijakovic +## +name = 'AOCC' +version = '3.2.0' + +homepage = 'https://developer.amd.com/amd-aocc/' +description = "AMD Optimized C/C++ & Fortran compilers (AOCC) based on LLVM 13.0" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['http://developer.amd.com/wordpress/media/files/'] +sources = ['aocc-compiler-%(version)s.tar'] +checksums = ['8493525b3df77f48ee16f3395a68ad4c42e18233a44b4d9282b25dbb95b113ec'] + +clangversion = '13.0.0' + +dependencies = [ + ('binutils', '2.38'), + ('ncurses', '6.3'), + ('zlib', '1.2.12'), + ('libxml2', '2.9.13'), +] + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/a/ASE/ASE-3.22.1-foss-2022a.eb b/easybuild/easyconfigs/a/ASE/ASE-3.22.1-foss-2022a.eb new file mode 100644 index 000000000000..98481085f408 --- /dev/null +++ b/easybuild/easyconfigs/a/ASE/ASE-3.22.1-foss-2022a.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'ASE' +version = '3.22.1' + +homepage = 'https://wiki.fysik.dtu.dk/ase' +description = """ASE is a python package providing an open source Atomic Simulation Environment + in the Python scripting language. + +From version 3.20.1 we also include the ase-ext package, it contains optional reimplementations +in C of functions in ASE. ASE uses it automatically when installed.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('Flask', '2.2.2'), + ('matplotlib', '3.5.2'), + ('Tkinter', '%(pyver)s'), # Needed by GUI of ASE + ('spglib-python', '2.0.0'), # optional +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pytest-mock', '3.8.2', { + 'checksums': ['77f03f4554392558700295e05aed0b1096a20d4a60a4f3ddcde58b0c31c8fca2'], + }), + ('ase', version, { + 'checksums': ['004df6b0ea04b1114c790fadfe45d4125eb0e53125c66a93425af853d82ab432'], + }), + ('ase-ext', '20.9.0', { + 'checksums': ['a348b0e42cf9fdd11f04b3df002b0bf150002c8df2698ff08d3c8fc7a1223aed'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ase'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +# make sure Tkinter is available, otherwise 'ase gui' will not work +sanity_check_commands = ["python -c 'import tkinter' "] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/AUGUSTUS/AUGUSTUS-3.4.0-foss-2021a.eb b/easybuild/easyconfigs/a/AUGUSTUS/AUGUSTUS-3.4.0-foss-2021a.eb new file mode 100644 index 000000000000..cf9c1125f8b3 --- /dev/null +++ b/easybuild/easyconfigs/a/AUGUSTUS/AUGUSTUS-3.4.0-foss-2021a.eb @@ -0,0 +1,65 @@ +# Updated by: Pavel Grochal (INUITS) +# Updated by: Sebastien Moretti (SIB) + +easyblock = 'ConfigureMake' + +name = 'AUGUSTUS' +version = '3.4.0' + +homepage = 'https://bioinf.uni-greifswald.de/augustus/' +description = "AUGUSTUS is a program that predicts genes in eukaryotic genomic sequences" +# software_license = 'LicenseArtisticv1' + +toolchain = {'name': 'foss', 'version': '2021a'} + +# https://github.com/Gaius-Augustus/Augustus/archive +github_account = 'Gaius-Augustus' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +patches = ['AUGUSTUS-%(version)s_fix-hardcoding.patch'] +checksums = [ + '2c06cf5953da5afdce1478fa10fcd3c280a3b050f1b2367bf3e731d7374d9bb8', # v3.4.0.tar.gz + 'e74023f28ee3e76590f4534d195c313b88b66a92ec779da184d30d056fc8e052', # AUGUSTUS-3.4.0_fix-hardcoding.patch +] + +builddependencies = [ + ('Python', '3.9.5'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('Boost', '1.76.0'), + ('GSL', '2.7'), + ('SAMtools', '1.13'), + ('HTSlib', '1.12'), # also provides tabix + ('BCFtools', '1.12'), + ('lpsolve', '5.5.2.11'), + ('SuiteSparse', '5.10.1', '-METIS-5.1.0'), + ('BamTools', '2.5.2'), + ('SQLite', '3.35.4'), +] + +skipsteps = ['configure'] + +# run "make clean" to avoid using binaries included with the source tarball +prebuildopts = "make clean && " + +buildopts = 'COMPGENEPRED=true SQLITE=true ZIPINPUT=true MYSQL=false CXX="$CXX" LINK.cc="$CXX" ' +installopts = 'INSTALLDIR=%(installdir)s ' + +sanity_check_paths = { + 'files': ['bin/augustus', 'bin/bam2hints', 'bin/etraining', 'bin/fastBlockSearch', + 'bin/filterBam', 'bin/getSeq', 'bin/homGeneMapping', 'bin/joingenes', + 'bin/load2sqlitedb', 'bin/prepareAlign'], + 'dirs': ['config', 'scripts'], +} +sanity_check_commands = ['augustus --help'] + +modextrapaths = {'PATH': 'scripts'} +modextravars = { + 'AUGUSTUS_BIN_PATH': '%(installdir)s/bin', + 'AUGUSTUS_CONFIG_PATH': '%(installdir)s/config', + 'AUGUSTUS_SCRIPTS_PATH': '%(installdir)s/scripts', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/Advisor/Advisor-2022.1.0.eb b/easybuild/easyconfigs/a/Advisor/Advisor-2022.1.0.eb new file mode 100644 index 000000000000..58235ccff908 --- /dev/null +++ b/easybuild/easyconfigs/a/Advisor/Advisor-2022.1.0.eb @@ -0,0 +1,29 @@ +## +# Author: Robert Mijakovic +## +name = 'Advisor' +version = '2022.1.0' + +homepage = 'https://software.intel.com/intel-advisor-xe' +description = """Vectorization Optimization and Thread Prototyping + - Vectorize & thread code or performance “dies” + - Easy workflow + data + tips = faster code faster + - Prioritize, Prototype & Predict performance gain + """ + +toolchain = SYSTEM + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/18730/'] +sources = ['l_oneapi_advisor_p_%(version)s.171_offline.sh'] +checksums = ['b627dbfefa779b44e7ab40dfa37614e56caa6e245feaed402d51826e6a7cb73b'] + +dontcreateinstalldir = True + +sanity_check_paths = { + 'files': ['%(namelower)s/%(version)s/bin64/advisor'], + 'dirs': ['%(namelower)s/%(version)s/bin64', + '%(namelower)s/%(version)s/lib64', + '%(namelower)s/%(version)s/include/intel64'] +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a-CUDA-11.3.1.eb index d6332594c4b8..05ffdaeea4ed 100644 --- a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a-CUDA-11.3.1.eb +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a-CUDA-11.3.1.eb @@ -10,12 +10,9 @@ description = "AlphaFold can predict protein structures with atomic accuracy eve toolchain = {'name': 'foss', 'version': '2021a'} builddependencies = [ - # CMake/Doxygen/SWIG are required for building OpenMM - ('CMake', '3.20.1'), - ('Doxygen', '1.9.1'), # required for installing dm-tree ('Bazel', '3.7.2'), - ('SWIG', '4.0.2'), + ('CMake', '3.20.1'), ] dependencies = [ @@ -32,34 +29,14 @@ dependencies = [ ('UCX-CUDA', '1.10.0', versionsuffix), ('cuDNN', '8.2.1.32', versionsuffix, True), ('NCCL', '2.10.3', versionsuffix), + ('OpenMM', '7.5.1', '-DeepMind-patch'), ] -local_openmm_preinstallopts = "export OPENMM_INCLUDE_PATH=%(installdir)s/include && " -local_openmm_preinstallopts += " export OPENMM_LIB_PATH=%(installdir)s/lib && " - -# required to install OpenMM Python API; -# avoid that setup.py partially uninstalls existing OpenMM Python bindings... -local_openmm_installopts = " && cd python && sed -i 's/uninstall()/pass/g' setup.py && " -local_openmm_installopts += "python setup.py build && python setup.py install --prefix=%(installdir)s" # commit to use for downloading stereo_chemical_props.txt and copy to alphafold/common, # see docker/Dockerfile in AlphaFold repository local_scp_commit = '7102c6' components = [ - # for simtk - ('OpenMM', '7.5.1', { - 'easyblock': 'CMakeMake', - 'source_urls': ['https://github.com/openmm/openmm/archive/'], - 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], - 'patches': [('OpenMM-%(version)s_AlphaFold.patch', 'wrappers/python')], - 'checksums': [ - 'c88d6946468a2bde2619acb834f57b859b5e114a93093cf562165612e10f4ff7', # OpenMM-7.5.1.tar.gz - '1b109dfff3af5c6aa70690bca14618612953c68840a7e64f679db7ca33c1aff6', # OpenMM-7.5.1_AlphaFold.patch - ], - 'start_dir': 'openmm-%(version)s', - 'preinstallopts': local_openmm_preinstallopts, - 'installopts': local_openmm_installopts, - }), (name, version, { 'easyblock': 'PythonPackage', 'source_urls': [ @@ -163,8 +140,7 @@ postinstallcmds = [ ] sanity_check_paths = { - 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'lib/libOpenMM.%s' % SHLIB_EXT, - 'lib/python%(pyshortver)s/site-packages/simtk/openmm/openmm.py', 'stereo_chemical_props.txt'], + 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'stereo_chemical_props.txt'], 'dirs': ['lib/python%(pyshortver)s/site-packages', 'scripts'], } @@ -177,11 +153,6 @@ sanity_check_commands = [ sanity_pip_check = True -modextrapaths = { - 'OPENMM_INCLUDE_PATH': 'include', - 'OPENMM_LIB_PATH': 'lib', -} - # these allow to make predictions on proteins that would typically be too long to fit into GPU memory; # see https://github.com/deepmind/alphafold/blob/main/docker/run_docker.py modextravars = { diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a.eb b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a.eb index bb34b753f322..bb289e74a36d 100644 --- a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a.eb +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.1.2-foss-2021a.eb @@ -9,12 +9,9 @@ description = "AlphaFold can predict protein structures with atomic accuracy eve toolchain = {'name': 'foss', 'version': '2021a'} builddependencies = [ - # CMake/Doxygen/SWIG are required for building OpenMM - ('CMake', '3.20.1'), - ('Doxygen', '1.9.1'), # required for installing dm-tree ('Bazel', '3.7.2'), - ('SWIG', '4.0.2'), + ('CMake', '3.20.1'), ] dependencies = [ @@ -27,34 +24,14 @@ dependencies = [ ('HMMER', '3.3.2'), ('Kalign', '3.3.1'), ('jax', '0.2.24'), # also provides absl-py + ('OpenMM', '7.5.1', '-DeepMind-patch'), ] -local_openmm_preinstallopts = "export OPENMM_INCLUDE_PATH=%(installdir)s/include && " -local_openmm_preinstallopts += " export OPENMM_LIB_PATH=%(installdir)s/lib && " - -# required to install OpenMM Python API; -# avoid that setup.py partially uninstalls existing OpenMM Python bindings... -local_openmm_installopts = " && cd python && sed -i 's/uninstall()/pass/g' setup.py && " -local_openmm_installopts += "python setup.py build && python setup.py install --prefix=%(installdir)s" # commit to use for downloading stereo_chemical_props.txt and copy to alphafold/common, # see docker/Dockerfile in AlphaFold repository local_scp_commit = '7102c6' components = [ - # for simtk - ('OpenMM', '7.5.1', { - 'easyblock': 'CMakeMake', - 'source_urls': ['https://github.com/openmm/openmm/archive/'], - 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], - 'patches': [('OpenMM-%(version)s_AlphaFold.patch', 'wrappers/python')], - 'checksums': [ - 'c88d6946468a2bde2619acb834f57b859b5e114a93093cf562165612e10f4ff7', # OpenMM-7.5.1.tar.gz - '1b109dfff3af5c6aa70690bca14618612953c68840a7e64f679db7ca33c1aff6', # OpenMM-7.5.1_AlphaFold.patch - ], - 'start_dir': 'openmm-%(version)s', - 'preinstallopts': local_openmm_preinstallopts, - 'installopts': local_openmm_installopts, - }), (name, version, { 'easyblock': 'PythonPackage', 'source_urls': [ @@ -158,8 +135,7 @@ postinstallcmds = [ ] sanity_check_paths = { - 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'lib/libOpenMM.%s' % SHLIB_EXT, - 'lib/python%(pyshortver)s/site-packages/simtk/openmm/openmm.py', 'stereo_chemical_props.txt'], + 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'stereo_chemical_props.txt'], 'dirs': ['lib/python%(pyshortver)s/site-packages', 'scripts'], } @@ -172,11 +148,6 @@ sanity_check_commands = [ sanity_pip_check = True -modextrapaths = { - 'OPENMM_INCLUDE_PATH': 'include', - 'OPENMM_LIB_PATH': 'lib', -} - modextravars = { # 'ALPHAFOLD_DATA_DIR': '/path/to/AlphaFold_DBs', # please adapt } diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a-CUDA-11.3.1.eb index 5b482dfcfa1d..3307a0c7c2b0 100644 --- a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a-CUDA-11.3.1.eb +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a-CUDA-11.3.1.eb @@ -10,12 +10,9 @@ description = "AlphaFold can predict protein structures with atomic accuracy eve toolchain = {'name': 'foss', 'version': '2021a'} builddependencies = [ - # CMake/Doxygen/SWIG are required for building OpenMM - ('CMake', '3.20.1'), - ('Doxygen', '1.9.1'), # required for installing dm-tree ('Bazel', '3.7.2'), - ('SWIG', '4.0.2'), + ('CMake', '3.20.1'), ] dependencies = [ @@ -32,34 +29,14 @@ dependencies = [ ('UCX-CUDA', '1.10.0', versionsuffix), ('cuDNN', '8.2.1.32', versionsuffix, True), ('NCCL', '2.10.3', versionsuffix), + ('OpenMM', '7.5.1', '-DeepMind-patch'), ] -local_openmm_preinstallopts = "export OPENMM_INCLUDE_PATH=%(installdir)s/include && " -local_openmm_preinstallopts += " export OPENMM_LIB_PATH=%(installdir)s/lib && " - -# required to install OpenMM Python API; -# avoid that setup.py partially uninstalls existing OpenMM Python bindings... -local_openmm_installopts = " && cd python && sed -i 's/uninstall()/pass/g' setup.py && " -local_openmm_installopts += "python setup.py build && python setup.py install --prefix=%(installdir)s" # commit to use for downloading stereo_chemical_props.txt and copy to alphafold/common, # see docker/Dockerfile in AlphaFold repository local_scp_commit = '7102c6' components = [ - # for simtk - ('OpenMM', '7.5.1', { - 'easyblock': 'CMakeMake', - 'source_urls': ['https://github.com/openmm/openmm/archive/'], - 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], - 'patches': [('OpenMM-%(version)s_AlphaFold.patch', 'wrappers/python')], - 'checksums': [ - 'c88d6946468a2bde2619acb834f57b859b5e114a93093cf562165612e10f4ff7', # OpenMM-7.5.1.tar.gz - '1b109dfff3af5c6aa70690bca14618612953c68840a7e64f679db7ca33c1aff6', # OpenMM-7.5.1_AlphaFold.patch - ], - 'start_dir': 'openmm-%(version)s', - 'preinstallopts': local_openmm_preinstallopts, - 'installopts': local_openmm_installopts, - }), (name, version, { 'easyblock': 'PythonPackage', 'source_urls': [ @@ -83,6 +60,7 @@ components = [ 'AlphaFold-2.0.0_n-cpu.patch', 'AlphaFold-2.1.0_fix-scp-path.patch', 'AlphaFold-2.0.1_setup_rm_tfcpu.patch', + 'AlphaFold-2.2.2_jax038_NaN.patch', ], 'checksums': [ 'aa51dc4a1150b92310d20e63e9e4d9279b15b6a1f7e664360f52827f83256cdd', # v2.2.2.tar.gz @@ -92,6 +70,7 @@ components = [ 'dfda4dd5f9aba19fe2b6eb9a0ec583d12dcefdfee8ab8803fc57ad48d582db04', # AlphaFold-2.0.0_n-cpu.patch '5363d403baf5ab73f4d3ddd72e19af9ff832de4b1d7ba25a5fbcc5846c1c890f', # AlphaFold-2.1.0_fix-scp-path.patch '1a2e4e843bd9a4d15ee39e6c37cc63ba281311cc7a0a5610f0e43b52ef93faac', # AlphaFold-2.0.1_setup_rm_tfcpu.patch + '0b040ba99208cd9ad79b7d17db5720f7a447a019ac0ca786b3b019a55d1544e0', # AlphaFold-2.2.2_jax038_NaN.patch ], 'start_dir': 'alphafold-%(version)s', 'use_pip': True, @@ -164,8 +143,7 @@ postinstallcmds = [ ] sanity_check_paths = { - 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'lib/libOpenMM.%s' % SHLIB_EXT, - 'lib/python%(pyshortver)s/site-packages/simtk/openmm/openmm.py', 'stereo_chemical_props.txt'], + 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'stereo_chemical_props.txt'], 'dirs': ['lib/python%(pyshortver)s/site-packages', 'scripts'], } @@ -178,11 +156,6 @@ sanity_check_commands = [ sanity_pip_check = True -modextrapaths = { - 'OPENMM_INCLUDE_PATH': 'include', - 'OPENMM_LIB_PATH': 'lib', -} - # these allow to make predictions on proteins that would typically be too long to fit into GPU memory; # see https://github.com/deepmind/alphafold/blob/main/docker/run_docker.py modextravars = { diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a.eb b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a.eb index 468036147560..749bb12b07be 100644 --- a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a.eb +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2-foss-2021a.eb @@ -9,12 +9,9 @@ description = "AlphaFold can predict protein structures with atomic accuracy eve toolchain = {'name': 'foss', 'version': '2021a'} builddependencies = [ - # CMake/Doxygen/SWIG are required for building OpenMM - ('CMake', '3.20.1'), - ('Doxygen', '1.9.1'), # required for installing dm-tree ('Bazel', '3.7.2'), - ('SWIG', '4.0.2'), + ('CMake', '3.20.1'), ] dependencies = [ @@ -27,34 +24,14 @@ dependencies = [ ('HMMER', '3.3.2'), ('Kalign', '3.3.1'), ('jax', '0.3.9'), # also provides absl-py + ('OpenMM', '7.5.1', '-DeepMind-patch'), ] -local_openmm_preinstallopts = "export OPENMM_INCLUDE_PATH=%(installdir)s/include && " -local_openmm_preinstallopts += " export OPENMM_LIB_PATH=%(installdir)s/lib && " - -# required to install OpenMM Python API; -# avoid that setup.py partially uninstalls existing OpenMM Python bindings... -local_openmm_installopts = " && cd python && sed -i 's/uninstall()/pass/g' setup.py && " -local_openmm_installopts += "python setup.py build && python setup.py install --prefix=%(installdir)s" # commit to use for downloading stereo_chemical_props.txt and copy to alphafold/common, # see docker/Dockerfile in AlphaFold repository local_scp_commit = '7102c6' components = [ - # for simtk - ('OpenMM', '7.5.1', { - 'easyblock': 'CMakeMake', - 'source_urls': ['https://github.com/openmm/openmm/archive/'], - 'sources': [{'download_filename': '%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], - 'patches': [('OpenMM-%(version)s_AlphaFold.patch', 'wrappers/python')], - 'checksums': [ - 'c88d6946468a2bde2619acb834f57b859b5e114a93093cf562165612e10f4ff7', # OpenMM-7.5.1.tar.gz - '1b109dfff3af5c6aa70690bca14618612953c68840a7e64f679db7ca33c1aff6', # OpenMM-7.5.1_AlphaFold.patch - ], - 'start_dir': 'openmm-%(version)s', - 'preinstallopts': local_openmm_preinstallopts, - 'installopts': local_openmm_installopts, - }), (name, version, { 'easyblock': 'PythonPackage', 'source_urls': [ @@ -78,6 +55,7 @@ components = [ 'AlphaFold-2.0.0_n-cpu.patch', 'AlphaFold-2.1.0_fix-scp-path.patch', 'AlphaFold-2.0.1_setup_rm_tfcpu.patch', + 'AlphaFold-2.2.2_jax038_NaN.patch', ], 'checksums': [ 'aa51dc4a1150b92310d20e63e9e4d9279b15b6a1f7e664360f52827f83256cdd', # v2.2.2.tar.gz @@ -87,6 +65,7 @@ components = [ 'dfda4dd5f9aba19fe2b6eb9a0ec583d12dcefdfee8ab8803fc57ad48d582db04', # AlphaFold-2.0.0_n-cpu.patch '5363d403baf5ab73f4d3ddd72e19af9ff832de4b1d7ba25a5fbcc5846c1c890f', # AlphaFold-2.1.0_fix-scp-path.patch '1a2e4e843bd9a4d15ee39e6c37cc63ba281311cc7a0a5610f0e43b52ef93faac', # AlphaFold-2.0.1_setup_rm_tfcpu.patch + '0b040ba99208cd9ad79b7d17db5720f7a447a019ac0ca786b3b019a55d1544e0', # AlphaFold-2.2.2_jax038_NaN.patch ], 'start_dir': 'alphafold-%(version)s', 'use_pip': True, @@ -159,8 +138,7 @@ postinstallcmds = [ ] sanity_check_paths = { - 'files': ['bin/alphafold', 'bin/pdbfixer', 'bin/run_alphafold.py', 'lib/libOpenMM.%s' % SHLIB_EXT, - 'lib/python%(pyshortver)s/site-packages/simtk/openmm/openmm.py', 'stereo_chemical_props.txt'], + 'files': ['bin/alphafold', 'bin/pdbfixer', 'stereo_chemical_props.txt'], 'dirs': ['lib/python%(pyshortver)s/site-packages', 'scripts'], } @@ -173,11 +151,6 @@ sanity_check_commands = [ sanity_pip_check = True -modextrapaths = { - 'OPENMM_INCLUDE_PATH': 'include', - 'OPENMM_LIB_PATH': 'lib', -} - modextravars = { # 'ALPHAFOLD_DATA_DIR': '/path/to/AlphaFold_DBs', # please adapt } diff --git a/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2_jax038_NaN.patch b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2_jax038_NaN.patch new file mode 100644 index 000000000000..673945afa22f --- /dev/null +++ b/easybuild/easyconfigs/a/AlphaFold/AlphaFold-2.2.2_jax038_NaN.patch @@ -0,0 +1,16 @@ +# Thomas Hoffmann, EMBL Heidelberg, structures-it@embl.de +# Resulting pdb files contain NaNs because jax >= 0.3.8 is used. +# Fix according to https://github.com/deepmind/alphafold/issues/513 and +# https://jax.readthedocs.io/en/latest/changelog.html#jax-0-3-8-april-29-2022 +diff -ru alphafold-2.2.2/alphafold/model/utils.py alphafold-2.2.2_jax38_NaN/alphafold/model/utils.py +--- alphafold-2.2.2/alphafold/model/utils.py 2022-06-13 17:49:22.000000000 +0200 ++++ alphafold-2.2.2_jax38_NaN/alphafold/model/utils.py 2022-07-18 10:17:59.672423061 +0200 +@@ -34,7 +34,7 @@ + + def batched_gather(params, indices, axis=0, batch_dims=0): + """Implements a JAX equivalent of `tf.gather` with `axis` and `batch_dims`.""" +- take_fn = lambda p, i: jnp.take(p, i, axis=axis) ++ take_fn = lambda p, i: jnp.take(p, i, axis=axis, mode="clip") + for _ in range(batch_dims): + take_fn = jax.vmap(take_fn) + return take_fn(params, indices) diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-20-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/a/AmberTools/AmberTools-20-intel-2020a-Python-3.8.2.eb index f3bbb60dad07..c7813e12832e 100644 --- a/easybuild/easyconfigs/a/AmberTools/AmberTools-20-intel-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-20-intel-2020a-Python-3.8.2.eb @@ -14,7 +14,7 @@ toolchainopts = {'usempi': True} # download requires registration, see http://ambermd.org/AmberTools17-get.html local_download_credentials = '?Name=Easybuild&Institution=Easybuild&City=Internet&State=Other&Country=Belgium' -source_urls = ['https://ambermd.org/cgi-bin/AmberTools20-get.pl'] +source_urls = ['https://ambermd.org/cgi-bin/AmberTools%s-get.pl' % version] sources = [{ 'download_filename': local_download_credentials, 'filename': SOURCE_TAR_BZ2, @@ -23,6 +23,7 @@ patches = [ 'AmberTools-20_fix_missing_MPI_LIBRARY_error.patch', 'AmberTools-20_cmake-locate-netcdf.patch', 'AmberTools-20_fix_xblas_missing_make_dependency.patch', + 'AmberTools-21_dont_include_config.h_in_top_Makefile.patch', ] checksums = [ 'b1e1f8f277c54e88abc9f590e788bbb2f7a49bcff5e8d8a6eacfaf332a4890f9', # AmberTools-20.tar.bz2 @@ -30,7 +31,9 @@ checksums = [ '0b89a0624167bc23876bcdefcb1055f591e38e3bd559a71d5749e342bd311acc', '473e07c53b6f641d96d333974a6af2e03413fecef79f879d3fdecf7fecaab4d0', # AmberTools-20_cmake-locate-netcdf.patch # AmberTools-20_fix_xblas_missing_make_dependency.patch - 'ff25e91fdc72347a778c3837b581e174d6a8c71efa5b46e11391b18bca84fd65' + 'ff25e91fdc72347a778c3837b581e174d6a8c71efa5b46e11391b18bca84fd65', + # AmberTools-21_dont_include_config.h_in_top_Makefile.patch + 'b5a20a63904344fc3d1469841f0ea7d5ddaaa01462742bab958c3bba4a9b7ad9', ] builddependencies = [ @@ -54,6 +57,6 @@ prebuildopts = """sed -i 's/import sys/import sys; os.environ["LDSHARED"] = "icc prebuildopts += "%(builddir)s/AmberTools/src/pysander/setup.py && " # Tests use pmemd which is not part of AmberTools -runtest = False +runtest = True moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21-foss-2021a.eb b/easybuild/easyconfigs/a/AmberTools/AmberTools-21-foss-2021a.eb new file mode 100644 index 000000000000..7d0fdd0d4bcc --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21-foss-2021a.eb @@ -0,0 +1,84 @@ +easyblock = 'EB_Amber' + +name = 'AmberTools' +version = '21' + +homepage = 'https://ambermd.org/' +description = """AmberTools consists of several independently developed packages that work well by themselves, + and with Amber itself. The suite can also be used to carry out complete molecular dynamics simulations, + with either explicit water or generalized Born solvent models.""" + +toolchain = {'name': 'foss', 'version': '2021a'} +toolchainopts = {'usempi': True} + +# download requires registration, see http://ambermd.org/AmberTools17-get.html +local_download_credentials = '?Name=Easybuild&Institution=Easybuild&City=Internet&State=Other&Country=Belgium' +source_urls = ['https://ambermd.org/cgi-bin/AmberTools%s-get.pl' % version] +sources = [{ + 'download_filename': local_download_credentials, + 'filename': SOURCE_TAR_BZ2, +}] +patches = [ + 'AmberTools-20_cmake-locate-netcdf.patch', + 'AmberTools-20_fix_missing_MPI_LIBRARY_error.patch', + 'AmberTools-20_fix_xblas_missing_make_dependency.patch', + 'AmberTools-21_CMake-FlexiBLAS.patch', + 'AmberTools-21_fix_DGESVD_workspace_query.patch', + 'AmberTools-21_fix_incorrect_dvout_call.patch', + 'AmberTools-21_fix_incorrect_mexit_calls.patch', + 'AmberTools-21_fix_more_blas_argument_problems.patch', + 'AmberTools-21_fix_multiple_definition.patch', + 'AmberTools-21_fix_potential_use_before_init.patch', + 'AmberTools-21_fix_rism_argument_mismatch.patch', + 'AmberTools-21_fix_xray_fftpack_arg_mismatch.patch', + 'AmberTools-22_fix_test_missing_cuda_dir.patch', + 'AmberTools-21_dont_include_config.h_in_top_Makefile.patch', +] +checksums = [ + 'f55fa930598d5a8e9749e8a22d1f25cab7fcf911d98570e35365dd7f262aaafd', # AmberTools21.tar.bz2 + '473e07c53b6f641d96d333974a6af2e03413fecef79f879d3fdecf7fecaab4d0', # AmberTools-20_cmake-locate-netcdf.patch + # AmberTools-20_fix_missing_MPI_LIBRARY_error.patch + '0b89a0624167bc23876bcdefcb1055f591e38e3bd559a71d5749e342bd311acc', + # AmberTools-20_fix_xblas_missing_make_dependency.patch + 'ff25e91fdc72347a778c3837b581e174d6a8c71efa5b46e11391b18bca84fd65', + '9543812c24c4b7842f64f1f8abaf2c92b5c4c0fadcdbd9811e76b81a778f0d36', # AmberTools-21_CMake-FlexiBLAS.patch + # AmberTools-21_fix_DGESVD_workspace_query.patch + '560c73e9d8bd159c609098c63a0256cdee78f49e524d06ea94d16d3146f69bcd', + '1054d4007f5c79126a41582e1e80514267cf406416ed6c471574cd708b16319b', # AmberTools-21_fix_incorrect_dvout_call.patch + 'd1de8c596119dcedbb809515816f0c98762306c469e9caf2c0b878d9b0a1095f', # AmberTools-21_fix_incorrect_mexit_calls.patch + # AmberTools-21_fix_more_blas_argument_problems.patch + 'c6279b57752239184b942d37f760749494ae0eff95236f3368c76ac0d2726a7c', + 'ce30eeaba9feea53aa115e4b0dcc5be943b8a55abe322480c807ca7ea963d83b', # AmberTools-21_fix_multiple_definition.patch + # AmberTools-21_fix_potential_use_before_init.patch + '377e645b5bd2c91ebb4d0b6fbca0407a94289e5ddc5b1e7ed0cb0b0724ad2139', + # AmberTools-21_fix_rism_argument_mismatch.patch + '14255e5739cec39303df570f06820c7532f7395e1b73b1e4104377984e2c9fc1', + # AmberTools-21_fix_xray_fftpack_arg_mismatch.patch + '99c954e693659efc2a1d121f91510f56408006f0751d91595f45a34b03364e2f', + 'fb1ab74314d7816169bb9f3f527b78085654aae2825c52cebf50a5760401b737', # AmberTools-22_fix_test_missing_cuda_dir.patch + # AmberTools-21_dont_include_config.h_in_top_Makefile.patch + 'b5a20a63904344fc3d1469841f0ea7d5ddaaa01462742bab958c3bba4a9b7ad9', +] + +builddependencies = [ + ('Bison', '3.7.6'), + ('pkg-config', '0.29.2'), + ('CMake', '3.20.1'), + ('flex', '2.6.4'), + ('make', '4.3'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('matplotlib', '3.4.2'), + ('netCDF', '4.8.0'), + ('netCDF-Fortran', '4.5.3'), + ('FFTW', '3.3.9'), + ('Boost', '1.76.0'), + ('arpack-ng', '3.8.0'), + ('PnetCDF', '1.12.2'), +] + +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21-intel-2021b.eb b/easybuild/easyconfigs/a/AmberTools/AmberTools-21-intel-2021b.eb index 2ccde888920a..b149c772a4ab 100644 --- a/easybuild/easyconfigs/a/AmberTools/AmberTools-21-intel-2021b.eb +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21-intel-2021b.eb @@ -13,23 +13,51 @@ toolchainopts = {'usempi': True} # download requires registration, see http://ambermd.org/AmberTools17-get.html local_download_credentials = '?Name=Easybuild&Institution=Easybuild&City=Internet&State=Other&Country=Belgium' -source_urls = ['https://ambermd.org/cgi-bin/AmberTools21-get.pl'] +source_urls = ['https://ambermd.org/cgi-bin/AmberTools%s-get.pl' % version] sources = [{ 'download_filename': local_download_credentials, 'filename': SOURCE_TAR_BZ2, }] patches = [ - 'AmberTools-20_fix_missing_MPI_LIBRARY_error.patch', 'AmberTools-20_cmake-locate-netcdf.patch', + 'AmberTools-20_fix_missing_MPI_LIBRARY_error.patch', 'AmberTools-20_fix_xblas_missing_make_dependency.patch', + 'AmberTools-21_CMake-FlexiBLAS.patch', + 'AmberTools-21_fix_DGESVD_workspace_query.patch', + 'AmberTools-21_fix_incorrect_dvout_call.patch', + 'AmberTools-21_fix_incorrect_mexit_calls.patch', + 'AmberTools-21_fix_more_blas_argument_problems.patch', + 'AmberTools-21_fix_multiple_definition.patch', + 'AmberTools-21_fix_potential_use_before_init.patch', + 'AmberTools-21_fix_rism_argument_mismatch.patch', + 'AmberTools-21_fix_xray_fftpack_arg_mismatch.patch', + 'AmberTools-22_fix_test_missing_cuda_dir.patch', + 'AmberTools-21_dont_include_config.h_in_top_Makefile.patch', ] checksums = [ - 'f55fa930598d5a8e9749e8a22d1f25cab7fcf911d98570e35365dd7f262aaafd', # AmberTools-21.tar.bz2 + 'f55fa930598d5a8e9749e8a22d1f25cab7fcf911d98570e35365dd7f262aaafd', # AmberTools21.tar.bz2 + '473e07c53b6f641d96d333974a6af2e03413fecef79f879d3fdecf7fecaab4d0', # AmberTools-20_cmake-locate-netcdf.patch # AmberTools-20_fix_missing_MPI_LIBRARY_error.patch '0b89a0624167bc23876bcdefcb1055f591e38e3bd559a71d5749e342bd311acc', - '473e07c53b6f641d96d333974a6af2e03413fecef79f879d3fdecf7fecaab4d0', # AmberTools-20_cmake-locate-netcdf.patch # AmberTools-20_fix_xblas_missing_make_dependency.patch 'ff25e91fdc72347a778c3837b581e174d6a8c71efa5b46e11391b18bca84fd65', + '9543812c24c4b7842f64f1f8abaf2c92b5c4c0fadcdbd9811e76b81a778f0d36', # AmberTools-21_CMake-FlexiBLAS.patch + # AmberTools-21_fix_DGESVD_workspace_query.patch + '560c73e9d8bd159c609098c63a0256cdee78f49e524d06ea94d16d3146f69bcd', + '1054d4007f5c79126a41582e1e80514267cf406416ed6c471574cd708b16319b', # AmberTools-21_fix_incorrect_dvout_call.patch + 'd1de8c596119dcedbb809515816f0c98762306c469e9caf2c0b878d9b0a1095f', # AmberTools-21_fix_incorrect_mexit_calls.patch + # AmberTools-21_fix_more_blas_argument_problems.patch + 'c6279b57752239184b942d37f760749494ae0eff95236f3368c76ac0d2726a7c', + 'ce30eeaba9feea53aa115e4b0dcc5be943b8a55abe322480c807ca7ea963d83b', # AmberTools-21_fix_multiple_definition.patch + # AmberTools-21_fix_potential_use_before_init.patch + '377e645b5bd2c91ebb4d0b6fbca0407a94289e5ddc5b1e7ed0cb0b0724ad2139', + # AmberTools-21_fix_rism_argument_mismatch.patch + '14255e5739cec39303df570f06820c7532f7395e1b73b1e4104377984e2c9fc1', + # AmberTools-21_fix_xray_fftpack_arg_mismatch.patch + '99c954e693659efc2a1d121f91510f56408006f0751d91595f45a34b03364e2f', + 'fb1ab74314d7816169bb9f3f527b78085654aae2825c52cebf50a5760401b737', # AmberTools-22_fix_test_missing_cuda_dir.patch + # AmberTools-21_dont_include_config.h_in_top_Makefile.patch + 'b5a20a63904344fc3d1469841f0ea7d5ddaaa01462742bab958c3bba4a9b7ad9', ] builddependencies = [ @@ -52,7 +80,6 @@ dependencies = [ prebuildopts = """sed -i 's/import sys/import sys; os.environ["LDSHARED"] = "icc -shared "/g' """ prebuildopts += "%(builddir)s/AmberTools/src/pysander/setup.py && " -# Tests use pmemd which is not part of AmberTools -runtest = False +runtest = True moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21.12-foss-2021b.eb b/easybuild/easyconfigs/a/AmberTools/AmberTools-21.12-foss-2021b.eb new file mode 100644 index 000000000000..5d584ac7683b --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21.12-foss-2021b.eb @@ -0,0 +1,92 @@ +easyblock = 'EB_Amber' + +name = 'AmberTools' +local_ambertools_ver = 21 +# Patch levels from http://ambermd.org/AmberPatches.php and http://ambermd.org/ATPatches.php +patchlevels = (12, 0) # (AmberTools, Amber) +version = '%s.%s' % (local_ambertools_ver, patchlevels[0]) + +homepage = 'https://ambermd.org/' +description = """AmberTools consists of several independently developed packages that work well by themselves, + and with Amber itself. The suite can also be used to carry out complete molecular dynamics simulations, + with either explicit water or generalized Born solvent models.""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'usempi': True} + +# download requires registration, see http://ambermd.org/AmberTools17-get.html +local_download_credentials = '?Name=Easybuild&Institution=Easybuild&City=Internet&State=Other&Country=Belgium' +source_urls = ['https://ambermd.org/cgi-bin/AmberTools%s-get.pl' % local_ambertools_ver] +sources = [{ + 'download_filename': local_download_credentials, + 'filename': 'AmberTools%s.tar.bz2' % local_ambertools_ver, +}] +patches = [ + 'AmberTools-20_cmake-locate-netcdf.patch', + 'AmberTools-20_fix_missing_MPI_LIBRARY_error.patch', + 'AmberTools-20_fix_xblas_missing_make_dependency.patch', + 'AmberTools-21_CMake-FlexiBLAS.patch', + 'AmberTools-21_fix_DGESVD_workspace_query.patch', + 'AmberTools-21_fix_incorrect_dvout_call.patch', + 'AmberTools-21_fix_incorrect_mexit_calls.patch', + 'AmberTools-21_fix_more_blas_argument_problems.patch', + 'AmberTools-21_fix_multiple_definition.patch', + 'AmberTools-21_fix_potential_use_before_init.patch', + 'AmberTools-21_fix_rism_argument_mismatch.patch', + 'AmberTools-21_fix_xray_fftpack_arg_mismatch.patch', + 'AmberTools-22_fix_test_missing_cuda_dir.patch', + 'AmberTools-21_dont_include_config.h_in_top_Makefile.patch', +] +checksums = [ + 'f55fa930598d5a8e9749e8a22d1f25cab7fcf911d98570e35365dd7f262aaafd', # AmberTools21.tar.bz2 + '473e07c53b6f641d96d333974a6af2e03413fecef79f879d3fdecf7fecaab4d0', # AmberTools-20_cmake-locate-netcdf.patch + # AmberTools-20_fix_missing_MPI_LIBRARY_error.patch + '0b89a0624167bc23876bcdefcb1055f591e38e3bd559a71d5749e342bd311acc', + # AmberTools-20_fix_xblas_missing_make_dependency.patch + 'ff25e91fdc72347a778c3837b581e174d6a8c71efa5b46e11391b18bca84fd65', + '9543812c24c4b7842f64f1f8abaf2c92b5c4c0fadcdbd9811e76b81a778f0d36', # AmberTools-21_CMake-FlexiBLAS.patch + # AmberTools-21_fix_DGESVD_workspace_query.patch + '560c73e9d8bd159c609098c63a0256cdee78f49e524d06ea94d16d3146f69bcd', + '1054d4007f5c79126a41582e1e80514267cf406416ed6c471574cd708b16319b', # AmberTools-21_fix_incorrect_dvout_call.patch + 'd1de8c596119dcedbb809515816f0c98762306c469e9caf2c0b878d9b0a1095f', # AmberTools-21_fix_incorrect_mexit_calls.patch + # AmberTools-21_fix_more_blas_argument_problems.patch + 'c6279b57752239184b942d37f760749494ae0eff95236f3368c76ac0d2726a7c', + 'ce30eeaba9feea53aa115e4b0dcc5be943b8a55abe322480c807ca7ea963d83b', # AmberTools-21_fix_multiple_definition.patch + # AmberTools-21_fix_potential_use_before_init.patch + '377e645b5bd2c91ebb4d0b6fbca0407a94289e5ddc5b1e7ed0cb0b0724ad2139', + # AmberTools-21_fix_rism_argument_mismatch.patch + '14255e5739cec39303df570f06820c7532f7395e1b73b1e4104377984e2c9fc1', + # AmberTools-21_fix_xray_fftpack_arg_mismatch.patch + '99c954e693659efc2a1d121f91510f56408006f0751d91595f45a34b03364e2f', + 'fb1ab74314d7816169bb9f3f527b78085654aae2825c52cebf50a5760401b737', # AmberTools-22_fix_test_missing_cuda_dir.patch + # AmberTools-21_dont_include_config.h_in_top_Makefile.patch + 'b5a20a63904344fc3d1469841f0ea7d5ddaaa01462742bab958c3bba4a9b7ad9', +] + +builddependencies = [ + ('Bison', '3.7.6'), + ('pkg-config', '0.29.2'), + ('CMake', '3.21.1'), + ('flex', '2.6.4'), + ('make', '4.3'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('Perl', '5.34.0'), + ('Boost', '1.77.0'), + ('libreadline', '8.1'), + ('matplotlib', '3.4.3'), + ('netCDF', '4.8.1'), + ('netCDF-Fortran', '4.5.3'), + ('PnetCDF', '1.12.3'), + ('Tkinter', '%(pyver)s'), + ('X11', '20210802'), +] + +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_CMake-FlexiBLAS.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_CMake-FlexiBLAS.patch new file mode 100644 index 000000000000..669c7e3d3055 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_CMake-FlexiBLAS.patch @@ -0,0 +1,91 @@ +make CMake scripts that picks BLAS/LAPACK library aware of FlexiBLAS +author: Kenneth Hoste (HPC-UGent) +--- cmake/patched-cmake-modules/FindBLASFixed.cmake.orig 2022-05-04 18:53:42.410384491 +0200 ++++ cmake/patched-cmake-modules/FindBLASFixed.cmake 2022-05-04 18:54:39.034612008 +0200 +@@ -36,7 +36,7 @@ + # BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK + # + # ######### ## List of vendors (BLA_VENDOR) valid in this module # +-# Goto,OpenBLAS,ATLAS PhiPACK,CXML,DXML,SunPerf,SCSL,SGIMATH,IBMESSL, ++# Goto,OpenBLAS,FlexiBLAS ATLAS PhiPACK,CXML,DXML,SunPerf,SCSL,SGIMATH,IBMESSL, + # ACML,ACML_MP,ACML_GPU,Apple, NAS, Generic + + include(CMakePushCheckState) +@@ -49,8 +49,8 @@ + set(BLA_VENDOR_DEFAULT "All") + endif () + +-set(BLA_VENDOR ${BLA_VENDOR_DEFAULT} CACHE STRING "BLAS vendor to use for BLAS and Lapack. Valid values: All, Goto, OpenBLAS, ATLAS, PhiPACK, CXML, DXML, SunPerf, SCSL, SGIMATH, IBMESSL, ACML, ACML_MP, ACML_GPU, Apple, NAS, Generic") +-validate_configuration_enum(BLA_VENDOR All Goto OpenBLAS ATLAS PhiPACK CXML DXML SunPerf SCSL SGIMATH IBMESSL ACML ACML_MP ACML_GPU Apple NAS Generic) ++set(BLA_VENDOR ${BLA_VENDOR_DEFAULT} CACHE STRING "BLAS vendor to use for BLAS and Lapack. Valid values: All, Goto, OpenBLAS, FlexiBLAS, ATLAS, PhiPACK, CXML, DXML, SunPerf, SCSL, SGIMATH, IBMESSL, ACML, ACML_MP, ACML_GPU, Apple, NAS, Generic") ++validate_configuration_enum(BLA_VENDOR All Goto OpenBLAS FlexiBLAS ATLAS PhiPACK CXML DXML SunPerf SCSL SGIMATH IBMESSL ACML ACML_MP ACML_GPU Apple NAS Generic) + + if(DEFINED BLAS_FIND_QUIETLY) + set(CMAKE_REQUIRED_QUIET ${BLAS_FIND_QUIETLY}) +@@ -159,6 +159,20 @@ + endif() + endif () + ++if (BLA_VENDOR STREQUAL "FlexiBLAS" OR BLA_VENDOR STREQUAL "All") ++ if(NOT BLAS_LIBRARIES) ++ # FlexiBLAS (https://github.com/mpimd-csc/flexiblas) ++ check_fortran_libraries( ++ BLAS_LIBRARIES ++ BLAS ++ sgemm ++ "" ++ "flexiblas" ++ "" ++ ) ++ endif() ++endif () ++ + if (BLA_VENDOR STREQUAL "OpenBLAS" OR BLA_VENDOR STREQUAL "All") + if(NOT BLAS_LIBRARIES) + # OpenBLAS (http://www.openblas.net) +@@ -524,4 +538,4 @@ + endif() + + cmake_pop_check_state() +-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_blas_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) +\ No newline at end of file ++set(CMAKE_FIND_LIBRARY_SUFFIXES ${_blas_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) +--- cmake/patched-cmake-modules/FindLAPACKFixed.cmake.orig 2022-05-04 18:56:14.315407989 +0200 ++++ cmake/patched-cmake-modules/FindLAPACKFixed.cmake 2022-05-04 18:56:39.930772703 +0200 +@@ -36,7 +36,7 @@ + # BLA_F95 if set on tries to find the f95 interfaces for BLAS/LAPACK + # + # ## List of vendors (BLA_VENDOR) valid in this module: +-# OpenBLAS, ACML,Apple, NAS, Generic ++# OpenBLAS, FlexiBLAS, ACML,Apple, NAS, Generic + + set(_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES}) + +@@ -173,6 +173,20 @@ + endif() + endif () + ++ if(BLA_VENDOR STREQUAL "FlexiBLAS" OR BLA_VENDOR STREQUAL "All") ++ if(NOT LAPACK_LIBRARIES) ++ check_lapack_libraries( ++ LAPACK_LIBRARIES ++ LAPACK ++ cheev ++ "" ++ "flexiblas" ++ "${BLAS_LIBRARIES}" ++ "" ++ ) ++ endif() ++ endif() ++ + if(BLA_VENDOR STREQUAL "OpenBLAS" OR BLA_VENDOR STREQUAL "All") + if(NOT LAPACK_LIBRARIES) + check_lapack_libraries( +@@ -289,4 +303,4 @@ + endif() + + cmake_pop_check_state() +-set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) +\ No newline at end of file ++set(CMAKE_FIND_LIBRARY_SUFFIXES ${_lapack_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES}) diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_dont_include_config.h_in_top_Makefile.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_dont_include_config.h_in_top_Makefile.patch new file mode 100644 index 000000000000..2dd5245cfb96 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_dont_include_config.h_in_top_Makefile.patch @@ -0,0 +1,18 @@ +Don't include config.h in top Makefile. +Taken from AmberTools22 + +Åke Sandgren, 2022-08-29 +diff -ru amber20_src.orig/Makefile amber20_src/Makefile +--- amber20_src.orig/Makefile 2021-04-26 15:45:46.000000000 +0200 ++++ amber20_src/Makefile 2022-08-29 09:19:39.921375932 +0200 +@@ -1,7 +1,9 @@ + # Simple top-level Makefile to point users to those hidden below: + + CONFIG_FILE=config.h +-include $(CONFIG_FILE) ++# It was a bad idea to have this dependent on config.h; ++# this starts undoing that dependency. ++#include $(CONFIG_FILE) + + install: ambertools amber + diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_DGESVD_workspace_query.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_DGESVD_workspace_query.patch new file mode 100644 index 000000000000..444eff527ab8 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_DGESVD_workspace_query.patch @@ -0,0 +1,25 @@ +Fix DGESVD workspace query + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/sqm/qm2_scf.F90 b/AmberTools/src/sqm/qm2_scf.F90 +index 6185d93dba..93eb7f60e8 100644 +--- a/AmberTools/src/sqm/qm2_scf.F90 ++++ b/AmberTools/src/sqm/qm2_scf.F90 +@@ -2254,7 +2254,7 @@ SUBROUTINE SvdInvert_SymMat(n,a,ainv,thresh) ! THRESH,ERR + _REAL_ :: S(n) + _REAL_ :: U(n,n) + _REAL_ :: VT(n,n) +- _REAL_ :: twork ++ _REAL_ :: twork(1) + _REAL_,ALLOCATABLE :: WORK(:) + INTEGER :: LWORK + +@@ -2269,7 +2269,7 @@ SUBROUTINE SvdInvert_SymMat(n,a,ainv,thresh) ! THRESH,ERR + LWORK = -1 + CALL DGESVD("A","A",n,n, ainv,n, S,U,n, VT,n, twork,LWORK,my_err) + +- LWORK = NINT(twork) ++ LWORK = NINT(twork(1)) + ALLOCATE( WORK(LWORK) ) + WORK = 0.d0 + diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_incorrect_dvout_call.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_incorrect_dvout_call.patch new file mode 100644 index 000000000000..dd926c82c9f5 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_incorrect_dvout_call.patch @@ -0,0 +1,29 @@ +Fix incorrect parameter to dvout + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/arpack/dnaitr.f b/AmberTools/src/arpack/dnaitr.f +index 64b008617f..5d3c268a95 100644 +--- a/AmberTools/src/arpack/dnaitr.f ++++ b/AmberTools/src/arpack/dnaitr.f +@@ -373,7 +373,7 @@ c + if (msglvl .gt. 1) then + call ivout (logfil, 1, [j], ndigit, + & '_naitr: generating Arnoldi vector number') +- call dvout (logfil, 1, rnorm, ndigit, ++ call dvout (logfil, 1, [rnorm], ndigit, + & '_naitr: B-norm of the current residual is') + end if + c +diff --git a/AmberTools/src/arpack/dsaitr.f b/AmberTools/src/arpack/dsaitr.f +index f725e23de9..5a29f153e6 100644 +--- a/AmberTools/src/arpack/dsaitr.f ++++ b/AmberTools/src/arpack/dsaitr.f +@@ -366,7 +366,7 @@ c + if (msglvl .gt. 2) then + call ivout (logfil, 1, [j], ndigit, + & '_saitr: generating Arnoldi vector no.') +- call dvout (logfil, 1, rnorm, ndigit, ++ call dvout (logfil, 1, [rnorm], ndigit, + & '_saitr: B-norm of the current residual =') + end if + c diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_incorrect_mexit_calls.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_incorrect_mexit_calls.patch new file mode 100644 index 000000000000..617ce26cc7f3 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_incorrect_mexit_calls.patch @@ -0,0 +1,23 @@ +Fix incorrect parameter to mexit + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/sander/fastwt.F90 b/AmberTools/src/sander/fastwt.F90 +index 9863c12e27..f7e2bf1df4 100644 +--- a/AmberTools/src/sander/fastwt.F90 ++++ b/AmberTools/src/sander/fastwt.F90 +@@ -1058,13 +1058,13 @@ subroutine getwds(igraph ,nres ,ipres ,lbres , & + #ifndef API + write(iout,1001) + #endif +- call mexit(1) ++ call mexit(6,1) + end if + else if (abs(roh1-roh2) > small) then + #ifndef API + write(iout,1002) + #endif +- call mexit(1) ++ call mexit(6,1) + else + roh = roh1 + end if diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_more_blas_argument_problems.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_more_blas_argument_problems.patch new file mode 100644 index 000000000000..3298fccaf8ee --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_more_blas_argument_problems.patch @@ -0,0 +1,64 @@ +Fix some blas argument problems with newer GCC vewrsions. + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/rism/amber_rism_interface.F90 b/AmberTools/src/rism/amber_rism_interface.F90 +index 7d84de1b7f..2c2a2fa389 100644 +--- a/AmberTools/src/rism/amber_rism_interface.F90 ++++ b/AmberTools/src/rism/amber_rism_interface.F90 +@@ -3159,9 +3159,9 @@ contains + ! Outputting entropy map. + if (len_trim(entropyfile) /= 0 .and. rismprm%entropicDecomp == 1 .and. & + rism3d_canCalc_DT(rism_3d)) then +- call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map, 1, excessChemicalPotential_map, 1) ++ call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map(1,1,1), 1, excessChemicalPotential_map, 1) + call DAXPY(this%grid%totalLocalPointsR*this%solvent%numAtomTypes, -1d0, & +- solvationEnergy_V_map, 1, excessChemicalPotential_V_map, 1) ++ solvationEnergy_V_map(1,1,1,1), 1, excessChemicalPotential_V_map, 1) + call writeThermo(writeVolume,entropyfile, suffix, excessChemicalPotential_map,& + excessChemicalPotential_V_map) + end if +@@ -3200,9 +3200,9 @@ contains + end if + ! Outputting entropy map. + if (len_trim(entropyPCPLUSfile) /= 0) then +- call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map, 1, excessChemicalPotential_map, 1) ++ call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map(1,1,1), 1, excessChemicalPotential_map, 1) + call DAXPY(this%grid%totalLocalPointsR*this%solvent%numAtomTypes, -1d0, & +- solvationEnergy_V_map, 1, excessChemicalPotential_V_map, 1) ++ solvationEnergy_V_map(1,1,1,1), 1, excessChemicalPotential_V_map, 1) + call writeVolume(trim(entropyPCPLUSfile)//suffix, excessChemicalPotential_map, this%grid, & + this%solute, mpirank, mpisize, mpicomm) + end if +@@ -3247,9 +3247,9 @@ contains + end if + ! Outputting entropy map. + if (len_trim(entropyUCfile) /= 0) then +- call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map, 1, excessChemicalPotential_map, 1) ++ call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map(1,1,1), 1, excessChemicalPotential_map, 1) + call DAXPY(this%grid%totalLocalPointsR*this%solvent%numAtomTypes, -1d0, & +- solvationEnergy_V_map, 1, excessChemicalPotential_V_map, 1) ++ solvationEnergy_V_map(1,1,1,1), 1, excessChemicalPotential_V_map, 1) + call writeVolume(trim(entropyUCfile)//suffix, excessChemicalPotential_map, this%grid, & + this%solute, mpirank, mpisize, mpicomm) + end if +@@ -3299,9 +3299,9 @@ contains + ! Outputting entropy map. + if (len_trim(entropyGFfile) /= 0 .and. rismprm%entropicDecomp == 1 .and. & + rism3d_canCalc_DT(rism_3d)) then +- call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map, 1, excessChemicalPotential_map, 1) ++ call DAXPY(this%grid%totalLocalPointsR, -1d0, solvationEnergy_map(1,1,1), 1, excessChemicalPotential_map, 1) + call DAXPY(this%grid%totalLocalPointsR*this%solvent%numAtomTypes, -1d0, & +- solvationEnergy_V_map, 1, excessChemicalPotential_V_map, 1) ++ solvationEnergy_V_map(1,1,1,1), 1, excessChemicalPotential_V_map, 1) + call writeThermo(writeVolume,entropyGFfile, suffix, excessChemicalPotential_map, & + excessChemicalPotential_V_map) + end if +@@ -3415,7 +3415,7 @@ contains + excessChemicalPotential_V_map,1,solventEntropy_V_map,1) + + call DAXPY(this%grid%totalLocalPointsR*this%solvent%numAtomTypes, -1d0, & +- solvationEnergy_V_map, 1, solventEntropy_V_map, 1) ++ solvationEnergy_V_map(1,1,1,1), 1, solventEntropy_V_map, 1) + call writeVolume(trim(entropyfile)//'.mol'//suffix, & + solvententropy_V_map(:, :, :, center_site), this%grid, & + this%solute, mpirank, mpisize, mpicomm) diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_multiple_definition.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_multiple_definition.patch new file mode 100644 index 000000000000..b1d06ec5deb3 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_multiple_definition.patch @@ -0,0 +1,17 @@ +Fix multiple definition problem. +Not seen by Amber devs so something else might be the real problem. + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/cifparse/cifparse.h b/AmberTools/src/cifparse/cifparse.h +index 3b1f3bca57..4577abf458 100644 +--- a/AmberTools/src/cifparse/cifparse.h ++++ b/AmberTools/src/cifparse/cifparse.h +@@ -102,7 +102,7 @@ int ndb_cif_get_category_id(char*, char*); + + + #ifdef CIF_GLOBAL +- FILE *cifpin; ++ extern FILE *cifpin; + char TempKeyword[MxNameLen+1], TempValue[MAXVALUELENGTH+1]; + NdbCifDatablocksFormat cifFiles; + int lineNo; diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_potential_use_before_init.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_potential_use_before_init.patch new file mode 100644 index 000000000000..d37b0548614f --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_potential_use_before_init.patch @@ -0,0 +1,15 @@ +Fix potential use before init. + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/nmr_aux/prepare_input/makeDIST_RST.c b/AmberTools/src/nmr_aux/prepare_input/makeDIST_RST.c +index a455a8bc15..3d6f5baec6 100644 +--- a/AmberTools/src/nmr_aux/prepare_input/makeDIST_RST.c ++++ b/AmberTools/src/nmr_aux/prepare_input/makeDIST_RST.c +@@ -714,6 +714,7 @@ static int read_maplib( FILE *fp ) + printf( "%s: begin;\n", module ); + #endif + nm=0; ++ npseudo=0; + while ( getline ) { + lineno++; + diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_rism_argument_mismatch.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_rism_argument_mismatch.patch new file mode 100644 index 000000000000..277e402242c8 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_rism_argument_mismatch.patch @@ -0,0 +1,15 @@ +Fix rism argument mismatch problem with newer GCC versions. + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/rism/CMakeLists.txt b/AmberTools/src/rism/CMakeLists.txt +index d554714923..96a8367693 100644 +--- a/AmberTools/src/rism/CMakeLists.txt ++++ b/AmberTools/src/rism/CMakeLists.txt +@@ -127,6 +127,7 @@ install(TARGETS rism1d rism3d.thermo rism3d.orave DESTINATION ${BINDIR}) + # MPI version + # -------------------------------------------------------------------- + if(MPI) ++ add_compile_options(-fallow-argument-mismatch) + make_mpi_version(rism rism_mpi LANGUAGES Fortran SWAP_SOURCES ${RISM_LIB_SOURCES} TO ${RISM_MPI_SOURCES} INSTALL) + config_module_dirs(rism_mpi ${RISMLIB_MPI_MOD_DIR} ${AMBER_COMMON_MOD_DIR}) + target_link_libraries(rism_mpi fftw_mpi) diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_xray_fftpack_arg_mismatch.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_xray_fftpack_arg_mismatch.patch new file mode 100644 index 000000000000..5bfb50d13dd6 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-21_fix_xray_fftpack_arg_mismatch.patch @@ -0,0 +1,17 @@ +Fix xray argument mismatch problem with newer GCC versions. + +Åke Sandgren, 20220623 +diff --git a/AmberTools/src/sander/CMakeLists.txt b/AmberTools/src/sander/CMakeLists.txt +index 3bd5e182ac..79ba58cc6f 100644 +--- a/AmberTools/src/sander/CMakeLists.txt ++++ b/AmberTools/src/sander/CMakeLists.txt +@@ -241,6 +241,9 @@ apply_optimization_declarations(${ALL_FORTRAN_SOURCES}) + # reaxff-puremd QMMM extern interface module requires F2003 standard or later + set_source_files_properties(qm2_extern_reaxff_puremd_module.F90 PROPERTIES LANGUAGE Fortran COMPILE_FLAGS -std=f2003) + ++# xray_fftpack has argument mismatch problems ++set_source_files_properties(xray_fftpack.F90 PROPERTIES LANGUAGE Fortran COMPILE_FLAGS -fallow-argument-mismatch) ++ + set_property(SOURCE ${PLUMED_SOURCE} PROPERTY COMPILE_FLAGS ${OPT_CFLAGS_SPC}) + + if(plumed_ENABLED) diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-22.3-foss-2021b.eb b/easybuild/easyconfigs/a/AmberTools/AmberTools-22.3-foss-2021b.eb new file mode 100644 index 000000000000..a7fbe6089cc7 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-22.3-foss-2021b.eb @@ -0,0 +1,92 @@ +easyblock = 'EB_Amber' + +name = 'AmberTools' +local_ambertools_ver = 22 +# Patch levels from http://ambermd.org/AmberPatches.php and http://ambermd.org/ATPatches.php +patchlevels = (3, 0) # (AmberTools, Amber) +version = '%s.%s' % (local_ambertools_ver, patchlevels[0]) + +homepage = 'https://ambermd.org/' +description = """AmberTools consists of several independently developed packages that work well by themselves, + and with Amber itself. The suite can also be used to carry out complete molecular dynamics simulations, + with either explicit water or generalized Born solvent models.""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'usempi': True} + +# download requires registration +local_download_credentials = '?Name=Easybuild&Institution=Easybuild&City=Internet&State=Other&Country=Belgium' +source_urls = ['https://ambermd.org/cgi-bin/AmberTools%s-get.pl' % local_ambertools_ver] +sources = [{ + 'download_filename': local_download_credentials, + 'filename': 'AmberTools%s.tar.bz2' % local_ambertools_ver, +}] +patches = [ + 'AmberTools-20_cmake-locate-netcdf.patch', + 'AmberTools-20_fix_missing_MPI_LIBRARY_error.patch', + 'AmberTools-20_fix_xblas_missing_make_dependency.patch', + 'AmberTools-21_CMake-FlexiBLAS.patch', + 'AmberTools-21_fix_DGESVD_workspace_query.patch', + 'AmberTools-21_fix_incorrect_dvout_call.patch', + 'AmberTools-21_fix_incorrect_mexit_calls.patch', + 'AmberTools-21_fix_more_blas_argument_problems.patch', + 'AmberTools-21_fix_multiple_definition.patch', + 'AmberTools-21_fix_potential_use_before_init.patch', + 'AmberTools-21_fix_rism_argument_mismatch.patch', + 'AmberTools-21_fix_xray_fftpack_arg_mismatch.patch', + 'AmberTools-22_fix_test_missing_cuda_dir.patch', + 'AmberTools-22_fix_missing_error_check_on_test_run.patch', +] +checksums = [ + '1571d4e0f7d45b2a71dce5999fa875aea8c90ee219eb218d7916bf30ea229121', # AmberTools22.tar.bz2 + '473e07c53b6f641d96d333974a6af2e03413fecef79f879d3fdecf7fecaab4d0', # AmberTools-20_cmake-locate-netcdf.patch + # AmberTools-20_fix_missing_MPI_LIBRARY_error.patch + '0b89a0624167bc23876bcdefcb1055f591e38e3bd559a71d5749e342bd311acc', + # AmberTools-20_fix_xblas_missing_make_dependency.patch + 'ff25e91fdc72347a778c3837b581e174d6a8c71efa5b46e11391b18bca84fd65', + '9543812c24c4b7842f64f1f8abaf2c92b5c4c0fadcdbd9811e76b81a778f0d36', # AmberTools-21_CMake-FlexiBLAS.patch + # AmberTools-21_fix_DGESVD_workspace_query.patch + '560c73e9d8bd159c609098c63a0256cdee78f49e524d06ea94d16d3146f69bcd', + '1054d4007f5c79126a41582e1e80514267cf406416ed6c471574cd708b16319b', # AmberTools-21_fix_incorrect_dvout_call.patch + 'd1de8c596119dcedbb809515816f0c98762306c469e9caf2c0b878d9b0a1095f', # AmberTools-21_fix_incorrect_mexit_calls.patch + # AmberTools-21_fix_more_blas_argument_problems.patch + 'c6279b57752239184b942d37f760749494ae0eff95236f3368c76ac0d2726a7c', + 'ce30eeaba9feea53aa115e4b0dcc5be943b8a55abe322480c807ca7ea963d83b', # AmberTools-21_fix_multiple_definition.patch + # AmberTools-21_fix_potential_use_before_init.patch + '377e645b5bd2c91ebb4d0b6fbca0407a94289e5ddc5b1e7ed0cb0b0724ad2139', + # AmberTools-21_fix_rism_argument_mismatch.patch + '14255e5739cec39303df570f06820c7532f7395e1b73b1e4104377984e2c9fc1', + # AmberTools-21_fix_xray_fftpack_arg_mismatch.patch + '99c954e693659efc2a1d121f91510f56408006f0751d91595f45a34b03364e2f', + 'fb1ab74314d7816169bb9f3f527b78085654aae2825c52cebf50a5760401b737', # AmberTools-22_fix_test_missing_cuda_dir.patch + # AmberTools-22_fix_missing_error_check_on_test_run.patch + 'a86eee60bd65c16a849469e303cb99dfc207cbadd2ae9e70b9ff580ced785475', +] + +builddependencies = [ + ('CMake', '3.21.1'), + ('pkg-config', '0.29.2'), + ('Bison', '3.7.6'), + ('flex', '2.6.4'), + ('make', '4.3'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('Perl', '5.34.0'), + ('Boost', '1.77.0'), + ('libreadline', '8.1'), + ('matplotlib', '3.4.3'), + ('netCDF', '4.8.1'), + ('netCDF-Fortran', '4.5.3'), + ('PnetCDF', '1.12.3'), + ('Tkinter', '%(pyver)s'), + ('X11', '20210802'), +] + +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-22_fix_missing_error_check_on_test_run.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-22_fix_missing_error_check_on_test_run.patch new file mode 100644 index 000000000000..042fddaadffe --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-22_fix_missing_error_check_on_test_run.patch @@ -0,0 +1,27 @@ +Add missing "|| goto error" for test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite* + +Åke Sandgren, 2022-08-26 +diff -ru amber22_src.orig/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite amber22_src/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite +--- amber22_src.orig/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite 2022-04-09 03:11:47.000000000 +0200 ++++ amber22_src/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite 2022-08-26 09:27:51.875733539 +0200 +@@ -33,7 +33,7 @@ + / + EOF + +-$DO_PARALLEL $TESTsander -O -i mdin.0 -o out.0 -p solvated_prmtop -c solvated_rst -r restrt.0 ++$DO_PARALLEL $TESTsander -O -i mdin.0 -o out.0 -p solvated_prmtop -c solvated_rst -r restrt.0 || goto error + + ../../../dacdif out.0.save out.0 + +diff -ru amber22_src.orig/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite_vacuum amber22_src/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite_vacuum +--- amber22_src.orig/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite_vacuum 2022-04-09 03:11:47.000000000 +0200 ++++ amber22_src/test/pmemdTI/softcore/tishake2vsite/Run.tishake2vsite_vacuum 2022-08-26 09:28:11.971587948 +0200 +@@ -34,7 +34,7 @@ + / + EOF + +-$DO_PARALLEL $TESTsander -O -i mdin.0 -o out2.0 -p prmtop_vacuum -c rst_vacuum -r restrt2.0 ++$DO_PARALLEL $TESTsander -O -i mdin.0 -o out2.0 -p prmtop_vacuum -c rst_vacuum -r restrt2.0 || goto error + + ../../../dacdif out2.0.save out2.0 + diff --git a/easybuild/easyconfigs/a/AmberTools/AmberTools-22_fix_test_missing_cuda_dir.patch b/easybuild/easyconfigs/a/AmberTools/AmberTools-22_fix_test_missing_cuda_dir.patch new file mode 100644 index 000000000000..6ebca4c14590 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberTools/AmberTools-22_fix_test_missing_cuda_dir.patch @@ -0,0 +1,14 @@ +Make sure test_amber_clean.sh dosen't try to cd into a possibly missing directory. + +Åke Sandgren, 2022-08-26 +diff -ru amber22_src.orig/test/test_amber_clean.sh amber22_src/test/test_amber_clean.sh +--- amber22_src.orig/test/test_amber_clean.sh 2021-05-28 16:11:51.000000000 +0200 ++++ amber22_src/test/test_amber_clean.sh 2022-08-26 09:20:58.470586829 +0200 +@@ -1273,4 +1273,6 @@ + echo $delete_list | xargs /bin/rm -f + + # Remove cuda remd test output +-cd cuda/remd && make clean && cd ../.. ++if [ -d "cuda/remd" ]; then ++ cd cuda/remd && make clean && cd ../.. ++fi diff --git a/easybuild/easyconfigs/a/AptaSUITE/AptaSUITE-0.9.4-Java-11.eb b/easybuild/easyconfigs/a/AptaSUITE/AptaSUITE-0.9.4-Java-11.eb new file mode 100644 index 000000000000..b9a71cda4626 --- /dev/null +++ b/easybuild/easyconfigs/a/AptaSUITE/AptaSUITE-0.9.4-Java-11.eb @@ -0,0 +1,45 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics + +easyblock = 'Tarball' + +name = 'AptaSUITE' +version = '0.9.4' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://drivenbyentropy.github.io/' +description = """ A full-featured bioinformatics software collection for the + comprehensive analysis of aptamers in HT-SELEX experiments """ + +toolchain = SYSTEM + +source_urls = ['https://github.com/drivenbyentropy/aptasuite/releases/download/v%(version)s/'] +sources = ['%(namelower)s-%(version)s.zip'] +checksums = ['e7b86ddccac38ce11e620d65129654a6f8a2cfe5105c092baa12c8d6e643abc3'] + +dependencies = [ + ('Java', '11'), + ('JavaFX', '11.0.2', '_linux-x64_bin-sdk'), +] + +postinstallcmds = ["cd %(installdir)s && ln -s aptasuite-%(version)s.jar aptasuite.jar"] + +modaliases = { + 'aptasuite': 'java -jar ${EBROOTAPTASUITE}/aptasuite.jar', + 'aptasuite-gui': 'java -Dprism.order=sw --module-path ${EBROOTJAVAFX}/lib ' + + '--add-modules javafx.controls,javafx.fxml -jar ${EBROOTAPTASUITE}/aptasuite.jar', +} + +sanity_check_paths = { + 'files': ['aptasuite-%(version)s.jar', 'aptasuite.jar'], + 'dirs': [] +} + +modloadmsg = """ +To execute on command line run: aptasuite +To launch the graphical interface run: aptasuite-gui +""" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2022a.eb b/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2022a.eb new file mode 100644 index 000000000000..84ee66a73e28 --- /dev/null +++ b/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2022a.eb @@ -0,0 +1,69 @@ +easyblock = 'CMakeMake' + +name = 'Arrow' +version = '8.0.0' + +homepage = 'https://arrow.apache.org' +description = """Apache Arrow (incl. PyArrow Python bindings), a cross-language development platform + for in-memory data.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://archive.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s'] +sources = ['apache-arrow-%(version)s.tar.gz'] +checksums = ['ad9a05705117c989c116bae9ac70492fe015050e1b80fb0e38fde4b5d863aaa3'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('Autotools', '20220317'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('pkgconf', '1.8.0'), +] + +# Arrow strongly prefers included jemalloc, so not including it as a dependency +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), # for numpy + ('Boost', '1.79.0'), + ('lz4', '1.9.3'), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('zstd', '1.5.2'), + ('snappy', '1.1.9'), + ('RapidJSON', '1.1.0'), + ('RE2', '2022-06-01'), + ('utf8proc', '2.7.0'), +] + +start_dir = 'cpp' + +# see https://arrow.apache.org/docs/developers/python.html +configopts = "-DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib -DPython3_ROOT_DIR=$EBROOTPYTHON " +configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON " +configopts += "-DZSTD_ROOT=$EBROOTZSTD " + +# also install Python bindings +local_install_pyarrow_cmds = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " +local_install_pyarrow_cmds += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " +local_install_pyarrow_cmds += "cd %(builddir)s/*arrow-%(version)s/python && export XDG_CACHE_HOME=$TMPDIR && " +local_install_pyarrow_cmds += "sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml && " +local_install_pyarrow_cmds += "Python3_ROOT_DIR=$EBROOTPYTHON " +local_install_pyarrow_cmds += "PYARROW_WITH_PARQUET=1 pip install --prefix %(installdir)s ." +postinstallcmds = [local_install_pyarrow_cmds] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +sanity_check_paths = { + 'files': ['lib/libarrow.a', 'lib/libarrow.%s' % SHLIB_EXT, + 'lib/libarrow_python.a', 'lib/libarrow_python.%s' % SHLIB_EXT], + 'dirs': ['include/arrow', 'lib/cmake/arrow', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import pyarrow'", + "python -c 'import pyarrow.parquet'", +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/a/alevin-fry/alevin-fry-0.6.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/a/alevin-fry/alevin-fry-0.6.0-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..5e75334e4489 --- /dev/null +++ b/easybuild/easyconfigs/a/alevin-fry/alevin-fry-0.6.0-GCCcore-10.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'Binary' + +name = 'alevin-fry' +version = '0.6.0' + +homepage = 'https://github.com/COMBINE-lab/alevin-fry' +description = """alevin-fry is an efficient and flexible tool for processing single-cell sequencing data, + currently focused on single-cell transcriptomics and feature barcoding.""" +# software_license = 'LicenseBSD3' + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://github.com/COMBINE-lab/alevin-fry/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['8a368695da8e85826f3d72670c83c44344d5c184a7bccda4ab2dea486eb3e00b'] + +builddependencies = [ + ('binutils', '2.36.1'), + ('Rust', '1.60.0'), + ('CMake', '3.20.1'), +] +dependencies = [ + ('bzip2', '1.0.8'), +] + +extract_sources = True + +install_cmd = "cargo install --root %(installdir)s --path ." + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +sanity_check_commands = ["%(namelower)s --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/ant/ant-1.10.12-Java-11.eb b/easybuild/easyconfigs/a/ant/ant-1.10.12-Java-11.eb new file mode 100644 index 000000000000..9e7b8f9f8777 --- /dev/null +++ b/easybuild/easyconfigs/a/ant/ant-1.10.12-Java-11.eb @@ -0,0 +1,27 @@ +easyblock = 'PackedBinary' + +name = 'ant' +version = '1.10.12' +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 = ['4b3b557279bae4fb80210a5679180fdae3498b44cfd13368e3386e2a21dd853b'] + +dependencies = [('Java', '11')] + +sanity_check_paths = { + 'files': ['bin/ant', 'lib/ant.jar'], + 'dirs': [], +} + +modextravars = {'ANT_HOME': '%(installdir)s'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/a/ant/ant-1.10.12-Java-17.eb b/easybuild/easyconfigs/a/ant/ant-1.10.12-Java-17.eb new file mode 100644 index 000000000000..9347a656859d --- /dev/null +++ b/easybuild/easyconfigs/a/ant/ant-1.10.12-Java-17.eb @@ -0,0 +1,27 @@ +easyblock = 'PackedBinary' + +name = 'ant' +version = '1.10.12' +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 = ['4b3b557279bae4fb80210a5679180fdae3498b44cfd13368e3386e2a21dd853b'] + +dependencies = [('Java', '17')] + +sanity_check_paths = { + 'files': ['bin/ant', 'lib/ant.jar'], + 'dirs': [], +} + +modextravars = {'ANT_HOME': '%(installdir)s'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/a/aria2/aria2-1.36.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/a/aria2/aria2-1.36.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..591b1cbcd469 --- /dev/null +++ b/easybuild/easyconfigs/a/aria2/aria2-1.36.0-GCCcore-11.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'aria2' +version = '1.36.0' + +homepage = 'https://aria2.github.io' +description = "aria2 is a lightweight multi-protocol & multi-source command-line download utility." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/aria2/aria2/releases/download/release-%(version)s'] +sources = [SOURCE_TAR_GZ] +checksums = ['b593b2fd382489909c96c62c6e180054c3332b950be3d73e0cb0d21ea8afb3c5'] + +builddependencies = [ + ('binutils', '2.38'), + ('Autotools', '20220317'), + ('CppUnit', '1.15.1'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('libxml2', '2.9.13'), + ('SQLite', '3.38.3'), + ('c-ares', '1.18.1'), + ('OpenSSL', '1.1', '', True), +] + +configopts = "--without-gnutls --with-openssl --enable-libaria2 --enable-static" + +runtest = 'check' + +sanity_check_paths = { + 'files': ['bin/aria2c'], + 'dirs': ['share'], +} + +sanity_check_commands = ["aria2c --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/arrow-R/arrow-R-8.0.0-foss-2022a-R-4.2.1.eb b/easybuild/easyconfigs/a/arrow-R/arrow-R-8.0.0-foss-2022a-R-4.2.1.eb new file mode 100644 index 000000000000..df3e4e8a0a2c --- /dev/null +++ b/easybuild/easyconfigs/a/arrow-R/arrow-R-8.0.0-foss-2022a-R-4.2.1.eb @@ -0,0 +1,34 @@ +easyblock = 'RPackage' + +name = 'arrow-R' +version = '8.0.0' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cran.r-project.org/web/packages/arrow' +description = "R interface to the Apache Arrow C++ library" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = [ + 'https://cran.r-project.org/src/contrib/Archive/arrow', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages +] +sources = ['arrow_%(version)s.tar.gz'] +checksums = ['6c9aa08c68b7b39cb7d6b9394c0b94a566c0fe9a85cea61f5ed19e460bdb05ad'] + +dependencies = [ + ('R', '4.2.1'), + ('Arrow', '8.0.0'), +] + +preinstallopts = "export LIBARROW_BINARY=true && " + +sanity_check_paths = { + 'files': [], + 'dirs': ['arrow'], +} + +options = {'modulename': 'arrow'} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/attr/attr-2.5.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/a/attr/attr-2.5.1-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..a75ad1737e9b --- /dev/null +++ b/easybuild/easyconfigs/a/attr/attr-2.5.1-GCCcore-11.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'attr' +version = '2.5.1' + +homepage = 'https://savannah.nongnu.org/projects/attr' + +description = """Commands for Manipulating Filesystem Extended Attributes""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = [GNU_SAVANNAH_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['bae1c6949b258a0d68001367ce0c741cebdacdd3b62965d17e5eb23cd78adaf8'] + +builddependencies = [('binutils', '2.37')] + +sanity_check_paths = { + 'files': ['bin/attr', 'bin/getfattr', 'bin/setfattr', + 'include/%(name)s/attributes.h', 'include/%(name)s/error_context.h', + 'include/%(name)s/libattr.h', 'lib/libattr.a', + 'lib/libattr.%s' % SHLIB_EXT], + 'dirs': ['share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/BBMap/BBMap-38.96-GCC-10.3.0.eb b/easybuild/easyconfigs/b/BBMap/BBMap-38.96-GCC-10.3.0.eb new file mode 100644 index 000000000000..d3215416acf7 --- /dev/null +++ b/easybuild/easyconfigs/b/BBMap/BBMap-38.96-GCC-10.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'BBMap' +version = '38.96' + +homepage = 'https://sourceforge.net/projects/bbmap/' +description = """BBMap short read aligner, and other bioinformatic tools.""" + +toolchain = {'name': 'GCC', 'version': '10.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['18d9c89b02c0ab044b2795a65f6236b2262a494ed83d27e31750437b350ef080'] + +dependencies = [('Java', '11', '', True)] + +prebuildopts = 'cd jni && ' + +local_suff = {'Darwin': 'osx', 'Linux': 'linux'}[OS_TYPE] +buildopts = "-f makefile.%s" % local_suff + +files_to_copy = ['*'] + +sanity_check_paths = { + 'files': ['bbmap.sh', 'jni/libbbtoolsjni.%s' % SHLIB_EXT], + 'dirs': [] +} + +modextrapaths = {'PATH': ''} + +modloadmsg = "For improved speed, add 'usejni=t' to the command line of %(name)s tools which support the use of the" +modloadmsg += " compiled jni C code.\n" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BBMap/BBMap-38.98-GCC-11.2.0.eb b/easybuild/easyconfigs/b/BBMap/BBMap-38.98-GCC-11.2.0.eb new file mode 100644 index 000000000000..e2bd5bd40756 --- /dev/null +++ b/easybuild/easyconfigs/b/BBMap/BBMap-38.98-GCC-11.2.0.eb @@ -0,0 +1,34 @@ +easyblock = 'MakeCp' + +name = 'BBMap' +version = '38.98' + +homepage = 'https://sourceforge.net/projects/bbmap/' +description = """BBMap short read aligner, and other bioinformatic tools.""" + +toolchain = {'name': 'GCC', 'version': '11.2.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['cdc3b8e0530c4a83a728d28da31f0e7ead2bc233d4bf21cd1916572c9b2d0e0e'] + +dependencies = [('Java', '11', '', True)] + +prebuildopts = 'cd jni && ' + +local_suff = {'Darwin': 'osx', 'Linux': 'linux'}[OS_TYPE] +buildopts = "-f makefile.%s" % local_suff + +files_to_copy = ['*'] + +sanity_check_paths = { + 'files': ['bbmap.sh', 'jni/libbbtoolsjni.%s' % SHLIB_EXT], + 'dirs': [] +} + +modextrapaths = {'PATH': ''} + +modloadmsg = "For improved speed, add 'usejni=t' to the command line of %(name)s tools which support the use of the" +modloadmsg += " compiled jni C code.\n" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BCFtools/BCFtools-1.15.1-GCC-11.3.0.eb b/easybuild/easyconfigs/b/BCFtools/BCFtools-1.15.1-GCC-11.3.0.eb new file mode 100644 index 000000000000..2d4f97afdbda --- /dev/null +++ b/easybuild/easyconfigs/b/BCFtools/BCFtools-1.15.1-GCC-11.3.0.eb @@ -0,0 +1,38 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Author: Jonas Demeulemeester +# The Francis Crick Insitute, London, UK + +easyblock = 'ConfigureMake' + +name = 'BCFtools' +version = '1.15.1' + +homepage = 'https://www.htslib.org/' +description = """Samtools is a suite of programs for interacting with high-throughput sequencing data. + BCFtools - Reading/writing BCF2/VCF/gVCF files and calling/filtering/summarising SNP and short indel sequence + variants""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/samtools/%(namelower)s/releases/download/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['f21f9564873eb27ccf22d13b91a64acb8fbbfe4f9e4c37933a54b9a95857f2d7'] + +dependencies = [ + ('zlib', '1.2.12'), + ('HTSlib', '1.15.1'), + ('bzip2', '1.0.8'), + ('XZ', '5.2.5'), + ('GSL', '2.7'), +] + +configopts = "--with-htslib=$EBROOTHTSLIB --enable-libgsl" + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bcftools', 'plot-vcfstats', 'vcfutils.pl']], + 'dirs': ['libexec/bcftools'] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.30.0-GCC-11.3.0.eb b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.30.0-GCC-11.3.0.eb new file mode 100644 index 000000000000..3fe167c952e8 --- /dev/null +++ b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.30.0-GCC-11.3.0.eb @@ -0,0 +1,45 @@ +# Author: Maxime Schmitt, University of Luxembourg +# Author: Adam Huffman, The Francis Crick Institute +# +# Based on the work of: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics (SIB) +# Biozentrum - University of Basel + +easyblock = 'MakeCp' + +name = 'BEDTools' +version = '2.30.0' + +homepage = "https://bedtools.readthedocs.io/" +description = """BEDTools: a powerful toolset for genome arithmetic. +The BEDTools utilities allow one to address common genomics tasks such as finding feature overlaps and +computing coverage. +The utilities are largely based on four widely-used file formats: BED, GFF/GTF, VCF, and SAM/BAM.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/arq5x/bedtools2/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['333ad1ffcdc6e36005b4d6c9290677986ee97871cff92ed821c1b643d38150b8'] + +builddependencies = [('Python', '3.10.4')] + +dependencies = [ + ('XZ', '5.2.5'), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('BamTools', '2.5.2'), +] + +buildopts = 'CXX="$CXX"' + +files_to_copy = ["bin", "docs", "data", "genomes", "scripts", "test"] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bedtools', 'pairToBed', 'mergeBed', 'bedToBam', 'fastaFromBed']], + 'dirs': files_to_copy, +} + +sanity_check_commands = ['bedtools --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BLAST+/BLAST+-2.13.0-gompi-2022a.eb b/easybuild/easyconfigs/b/BLAST+/BLAST+-2.13.0-gompi-2022a.eb new file mode 100644 index 000000000000..fb96f2a98977 --- /dev/null +++ b/easybuild/easyconfigs/b/BLAST+/BLAST+-2.13.0-gompi-2022a.eb @@ -0,0 +1,51 @@ +# # +# EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos , Kenneth Hoste (UGent) +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of +# the policy: https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +# # + +easyblock = 'ConfigureMake' + +name = 'BLAST+' +version = '2.13.0' + +homepage = 'https://blast.ncbi.nlm.nih.gov/' +description = """Basic Local Alignment Search Tool, or BLAST, is an algorithm + for comparing primary biological sequence information, such as the amino-acid + sequences of different proteins or the nucleotides of DNA sequences.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['https://ftp.ncbi.nlm.nih.gov/blast/executables/%(namelower)s/%(version)s/'] +sources = ['ncbi-blast-%(version)s+-src.tar.gz'] +checksums = ['89553714d133daf28c477f83d333794b3c62e4148408c072a1b4620e5ec4feb2'] + +dependencies = [ + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('PCRE', '8.45'), + ('Boost', '1.79.0'), + ('GMP', '6.2.1'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.1.3'), + ('LMDB', '0.9.29'), +] + +configopts = "--with-64 --with-z=$EBROOTZLIB --with-bz2=$EBROOTBZIP2 " +configopts += "--with-pcre=$EBROOTPCRE --with-boost=$EBROOTBOOST " +configopts += "--with-gmp=$EBROOTGMP --with-png=$EBROOTLIBPNG " +configopts += "--with-jpeg=$EBROOTLIBJPEGMINTURBO --with-lmdb=$EBROOTLMDB" + +sanity_check_paths = { + 'files': ['bin/blastn', 'bin/blastp', 'bin/blastx'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-10.3.0.eb b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-10.3.0.eb index d5672a2ca4bb..368ad6ddca41 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-10.3.0.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-10.3.0.eb @@ -12,10 +12,13 @@ toolchain = {'name': 'GCC', 'version': '10.3.0'} source_urls = ['https://github.com/flame/blis/archive/'] sources = ['%(version)s.tar.gz'] patches = [ + '%(name)s-%(version)s_enable_ppc_autodetect.patch', '%(name)s-%(version)s_fix_dgemm-fpe-signalling-on-broadwell.patch', ] checksums = [ '729694128719801e82fae7b5f2489ab73e4a467f46271beff09588c9265a697b', # 0.8.1.tar.gz + # BLIS-0.8.1_enable_ppc_autodetect.patch + 'b8a3d564a8d4f205e70241765ddfd28331c3c12355ef9c44172c9a0cab9f0111', # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', ] diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-11.2.0.eb b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-11.2.0.eb index ccc928218633..6ce09ab62c37 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCC-11.2.0.eb @@ -12,10 +12,13 @@ toolchain = {'name': 'GCC', 'version': '11.2.0'} source_urls = ['https://github.com/flame/blis/archive/'] sources = ['%(version)s.tar.gz'] patches = [ + '%(name)s-%(version)s_enable_ppc_autodetect.patch', '%(name)s-%(version)s_fix_dgemm-fpe-signalling-on-broadwell.patch', ] checksums = [ '729694128719801e82fae7b5f2489ab73e4a467f46271beff09588c9265a697b', # 0.8.1.tar.gz + # BLIS-0.8.1_enable_ppc_autodetect.patch + 'b8a3d564a8d4f205e70241765ddfd28331c3c12355ef9c44172c9a0cab9f0111', # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', ] diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCCcore-10.3.0.eb index 754d814d8a51..3d9aa35b79d3 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1-GCCcore-10.3.0.eb @@ -12,10 +12,13 @@ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} source_urls = ['https://github.com/flame/blis/archive/'] sources = ['%(version)s.tar.gz'] patches = [ + '%(name)s-%(version)s_enable_ppc_autodetect.patch', '%(name)s-%(version)s_fix_dgemm-fpe-signalling-on-broadwell.patch', ] checksums = [ '729694128719801e82fae7b5f2489ab73e4a467f46271beff09588c9265a697b', # 0.8.1.tar.gz + # BLIS-0.8.1_enable_ppc_autodetect.patch + 'b8a3d564a8d4f205e70241765ddfd28331c3c12355ef9c44172c9a0cab9f0111', # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', ] diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1_enable_ppc_autodetect.patch b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1_enable_ppc_autodetect.patch new file mode 100644 index 000000000000..26e3951ebf9b --- /dev/null +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.8.1_enable_ppc_autodetect.patch @@ -0,0 +1,91 @@ +Add autodetection for POWER7, POWER9 & POWER10 +See https://github.com/amd/blis/pull/6 + +Author: Alexander Grund (TU Dresden) +diff -aur a/frame/base/bli_cpuid.c b/frame/base/bli_cpuid.c +--- a/frame/base/bli_cpuid.c 2021-03-22 23:42:33.000000000 +0100 ++++ b/frame/base/bli_cpuid.c 2022-07-07 14:05:13.627541000 +0200 +@@ -429,7 +429,7 @@ + return TRUE; + } + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + arch_t bli_cpuid_query_id( void ) + { +@@ -484,9 +484,14 @@ + return BLIS_ARCH_GENERIC; + } + } +- else if ( vendor == VENDOR_UNKNOWN ) ++ else if ( vendor == VENDOR_IBM ) + { +- return BLIS_ARCH_GENERIC; ++ if ( model == MODEL_POWER7) ++ return BLIS_ARCH_POWER7; ++ else if ( model == MODEL_POWER9) ++ return BLIS_ARCH_POWER9; ++ else if ( model == MODEL_POWER10) ++ return BLIS_ARCH_POWER10; + } + + return BLIS_ARCH_GENERIC; +@@ -985,7 +990,7 @@ + } + } + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + #define TEMP_BUFFER_SIZE 200 + +@@ -1007,6 +1012,20 @@ + char feat_str[ TEMP_BUFFER_SIZE ]; + char* r_val; + ++#ifdef _ARCH_PPC ++ r_val = find_string_in( "cpu", proc_str, TEMP_BUFFER_SIZE, pci_str ); ++ if ( r_val == NULL ) return VENDOR_IBM; ++ ++ if ( strstr( proc_str, "POWER7" ) != NULL ) ++ *model = MODEL_POWER7; ++ else if ( strstr( proc_str, "POWER9" ) != NULL ) ++ *model = MODEL_POWER9; ++ else if ( strstr( proc_str, "POWER10" ) != NULL ) ++ *model = MODEL_POWER10; ++ ++ return VENDOR_IBM; ++#endif ++ + //printf( "bli_cpuid_query(): beginning search\n" ); + + // Search /proc/cpuinfo for the 'Processor' entry. +diff -aur a/frame/base/bli_cpuid.h b/frame/base/bli_cpuid.h +--- a/frame/base/bli_cpuid.h 2021-03-22 23:42:33.000000000 +0100 ++++ b/frame/base/bli_cpuid.h 2022-07-07 13:59:51.620586000 +0200 +@@ -158,19 +158,23 @@ + FEATURE_AVX512VL = 0x4000 + }; + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + char* find_string_in( char* target, char* buffer, size_t buf_len, char* filepath ); + + enum + { + VENDOR_ARM = 0, ++ VENDOR_IBM, + VENDOR_UNKNOWN + }; + enum + { + MODEL_ARMV7 = 0, + MODEL_ARMV8, ++ MODEL_POWER7, ++ MODEL_POWER9, ++ MODEL_POWER10, + MODEL_UNKNOWN + }; + enum diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-GCC-11.3.0.eb b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-GCC-11.3.0.eb index bb3f72c370ad..a24a015854f9 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-GCC-11.3.0.eb @@ -11,8 +11,17 @@ toolchain = {'name': 'GCC', 'version': '11.3.0'} source_urls = ['https://github.com/flame/blis/archive/'] sources = ['%(version)s.tar.gz'] -checksums = ['1135f664be7355427b91025075562805cdc6cc730d3173f83533b2c5dcc2f308'] - +patches = [ + '%(name)s-%(version)s_disable_power9_kernels.patch', + '%(name)s-%(version)s_enable_ppc_autodetect.patch', +] +checksums = [ + '1135f664be7355427b91025075562805cdc6cc730d3173f83533b2c5dcc2f308', # 0.9.0.tar.gz + # BLIS-0.9.0_disable_power9_kernels.patch + 'ed7a326bc5c5c21c42faefbec2fd7be609d1c7236981b466475edace39307279', + # BLIS-0.9.0_enable_ppc_autodetect.patch + 'f373fb252c0d14036fb631f048091976cceb02abb3e570a97fbaeac2fbb12328', +] builddependencies = [ ('Python', '3.10.4', '-bare'), ('Perl', '5.34.1'), diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-intel-compilers-2022.1.0.eb b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-intel-compilers-2022.1.0.eb index 732b183a34d0..e0a1da068c00 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-intel-compilers-2022.1.0.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0-intel-compilers-2022.1.0.eb @@ -12,19 +12,23 @@ toolchainopts = {'oneapi': True} source_urls = ['https://github.com/flame/blis/archive/'] sources = ['%(version)s.tar.gz'] -checksums = ['1135f664be7355427b91025075562805cdc6cc730d3173f83533b2c5dcc2f308'] +patches = [ + '%(name)s-%(version)s_blastest-enable-complex-return-intel.patch', + '%(name)s-%(version)s_ifx-complex-return-intel.patch', +] +checksums = [ + '1135f664be7355427b91025075562805cdc6cc730d3173f83533b2c5dcc2f308', # 0.9.0.tar.gz + # BLIS-0.9.0_blastest-enable-complex-return-intel.patch + '0f1966b340d1f24cf02070f00f72f232b4cbfcd242ee9ce8c5f09f7220397cb4', + '097a2647b5c66386155cf6a33a2a617b876bd0f9096a2912359eb0897a29d2d5', # BLIS-0.9.0_ifx-complex-return-intel.patch +] builddependencies = [ ('Python', '3.10.4', '-bare'), ('Perl', '5.34.1'), ] -configopts = '--enable-cblas --enable-threading=openmp --enable-shared --complex-return=intel CC="$CC" auto' - -# Intel expects classic f2c-style calling convention. -pretestopts = 'for cu in c u; do for cz in c z; do ' -pretestopts += 'sed -i "s/\([^ ]*complex\) ${cz}dot${cu}_(/void ${cz}dot${cu}_(\\1 \*, /g;' -pretestopts += 's/\([qz]__1\) = ${cz}dot${cu}_(/${cz}dot${cu}_(\&\\1, /g" blastest/src/${cz}blat1.c; done; done && ' +configopts = '--enable-cblas --enable-threading=openmp --enable-shared CC="$CC" auto' runtest = 'check' diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_blastest-enable-complex-return-intel.patch b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_blastest-enable-complex-return-intel.patch new file mode 100644 index 000000000000..488a5e3f17ed --- /dev/null +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_blastest-enable-complex-return-intel.patch @@ -0,0 +1,169 @@ +From 9b1beec60be31c6ea20b85806d61551497b699e4 Mon Sep 17 00:00:00 2001 +From: bartoldeman +Date: Mon, 11 Jul 2022 20:15:12 -0400 +Subject: [PATCH] Use BLIS_ENABLE_COMPLEX_RETURN_INTEL in blastest files (#636) + +Details: +- Fixed a crash that occurs when either cblat1 or zblat1 are linked + with a build of BLIS that was compiled with '--complex-return=intel'. + This fix involved inserting preprocessor macro guards based on + BLIS_ENABLE_COMPLEX_RETURN_INTEL into blastest/src/cblat1.c and + blastest/src/zblat1.c to correctly handle situations where BLIS is + compiled with Intel/f2c-style calling conventions for complex numbers. +- Updated blastest/src/fortran/run-f2c.sh so that future executions + will insert the aforementioned cpp macro conditional where + appropriate. +--- + blastest/src/cblat1.c | 32 ++++++++++++++++++++++++++++---- + blastest/src/fortran/run-f2c.sh | 20 +++++++++++--------- + blastest/src/zblat1.c | 32 ++++++++++++++++++++++++++++---- + 3 files changed, 67 insertions(+), 17 deletions(-) + +diff --git a/blastest/src/cblat1.c b/blastest/src/cblat1.c +index daccb2f6c..606511662 100644 +--- a/blastest/src/cblat1.c ++++ b/blastest/src/cblat1.c +@@ -475,11 +475,23 @@ static real c_b52 = 0.f; + integer mx, my; + complex cdot[1]; + integer lenx, leny; +- extern /* Complex */ complex cdotc_(integer *, complex *, integer ++ extern /* Complex */ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ void cdotc_(complex *, ++#else ++complex cdotc_( ++#endif ++ integer *, complex *, integer + *, complex *, integer *); + extern /* Subroutine */ int ccopy_(integer *, complex *, integer *, + complex *, integer *); +- extern /* Complex */ complex cdotu_(integer *, complex *, integer ++ extern /* Complex */ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ void cdotu_(complex *, ++#else ++complex cdotu_( ++#endif ++ integer *, complex *, integer + *, complex *, integer *); + extern /* Subroutine */ int cswap_(integer *, complex *, integer *, + complex *, integer *), ctest_(integer *, complex *, complex *, +@@ -526,14 +538,26 @@ static real c_b52 = 0.f; + } + if (combla_1.icase == 1) { + /* .. CDOTC .. */ +- q__1 = cdotc_(&combla_1.n, cx, &combla_1.incx, cy, & ++ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ cdotc_(&q__1, ++#else ++ q__1 = cdotc_( ++#endif ++ &combla_1.n, cx, &combla_1.incx, cy, & + combla_1.incy); + cdot[0].r = q__1.r, cdot[0].i = q__1.i; + ctest_(&c__1, cdot, &ct6[kn + (ki << 2) - 5], &csize1[kn - 1], + sfac); + } else if (combla_1.icase == 2) { + /* .. CDOTU .. */ +- q__1 = cdotu_(&combla_1.n, cx, &combla_1.incx, cy, & ++ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ cdotu_(&q__1, ++#else ++ q__1 = cdotu_( ++#endif ++ &combla_1.n, cx, &combla_1.incx, cy, & + combla_1.incy); + cdot[0].r = q__1.r, cdot[0].i = q__1.i; + ctest_(&c__1, cdot, &ct7[kn + (ki << 2) - 5], &csize1[kn - 1], +diff --git a/blastest/src/fortran/run-f2c.sh b/blastest/src/fortran/run-f2c.sh +index fdad4fd34..f0df2f5b8 100755 +--- a/blastest/src/fortran/run-f2c.sh ++++ b/blastest/src/fortran/run-f2c.sh +@@ -50,13 +50,15 @@ recursive-sed.sh -c "s/-4.f };/-4.f }};/g" -p "s*1.c" + + # Convert from brain-dead f2c complex calling conventions to normal + # return-based conventions. +-recursive-sed.sh -c "s/void cdotc_(complex \*, /complex cdotc_(/g" -p "c*1.c" +-recursive-sed.sh -c "s/void cdotu_(complex \*, /complex cdotu_(/g" -p "c*1.c" +-recursive-sed.sh -c "s/cdotc_(&q__1, /q__1 = cdotc_(/g" -p "c*1.c" +-recursive-sed.sh -c "s/cdotu_(&q__1, /q__1 = cdotu_(/g" -p "c*1.c" +- +-recursive-sed.sh -c "s/void zdotc_(doublecomplex \*, /doublecomplex zdotc_(/g" -p "z*1.c" +-recursive-sed.sh -c "s/void zdotu_(doublecomplex \*, /doublecomplex zdotu_(/g" -p "z*1.c" +-recursive-sed.sh -c "s/zdotc_(\&z__1, /z__1 = zdotc_(/g" -p "z*1.c" +-recursive-sed.sh -c "s/zdotu_(\&z__1, /z__1 = zdotu_(/g" -p "z*1.c" ++subst1='\n#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL\n&\n#else\n' ++subst2='\n#endif\n' ++recursive-sed.sh -c "s/ void cdotc_(complex \*,/${subst1}complex cdotc_(${subst2}/g" -p "c*1.c" ++recursive-sed.sh -c "s/ void cdotu_(complex \*,/${subst1}complex cdotu_(${subst2}/g" -p "c*1.c" ++recursive-sed.sh -c "s/\(.*\)cdotc_(&q__1,/${subst1}\1q__1 = cdotc_(${subst2}\1/g" -p "c*1.c" ++recursive-sed.sh -c "s/\(.*\)cdotu_(&q__1,/${subst1}\1q__1 = cdotu_(${subst2}\1/g" -p "c*1.c" ++ ++recursive-sed.sh -c "s/ void zdotc_(doublecomplex \*,/${subst1}doublecomplex zdotc_(${subst2}/g" -p "z*1.c" ++recursive-sed.sh -c "s/ void zdotu_(doublecomplex \*,/${subst1}doublecomplex zdotu_(${subst2}/g" -p "z*1.c" ++recursive-sed.sh -c "s/\(.*\)zdotc_(\&z__1,/${subst1}\1z__1 = zdotc_(${subst2}\1/g" -p "z*1.c" ++recursive-sed.sh -c "s/\(.*\)zdotu_(\&z__1,/${subst1}\1z__1 = zdotu_(${subst2}\1/g" -p "z*1.c" + +diff --git a/blastest/src/zblat1.c b/blastest/src/zblat1.c +index c34a57262..b620910be 100644 +--- a/blastest/src/zblat1.c ++++ b/blastest/src/zblat1.c +@@ -459,12 +459,24 @@ static doublereal c_b52 = 0.; + integer lenx, leny; + extern /* Subroutine */ int ctest_(integer *, doublecomplex *, + doublecomplex *, doublecomplex *, doublereal *); +- extern /* Double Complex */ doublecomplex zdotc_(integer *, ++ extern /* Double Complex */ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ void zdotc_(doublecomplex *, ++#else ++doublecomplex zdotc_( ++#endif ++ integer *, + doublecomplex *, integer *, doublecomplex *, integer *); + integer ksize; + extern /* Subroutine */ int zcopy_(integer *, doublecomplex *, integer *, + doublecomplex *, integer *); +- extern /* Double Complex */ doublecomplex zdotu_(integer *, ++ extern /* Double Complex */ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ void zdotu_(doublecomplex *, ++#else ++doublecomplex zdotu_( ++#endif ++ integer *, + doublecomplex *, integer *, doublecomplex *, integer *); + extern /* Subroutine */ int zswap_(integer *, doublecomplex *, integer *, + doublecomplex *, integer *), zaxpy_(integer *, doublecomplex *, +@@ -508,14 +520,26 @@ static doublereal c_b52 = 0.; + } + if (combla_1.icase == 1) { + /* .. ZDOTC .. */ +- z__1 = zdotc_(&combla_1.n, cx, &combla_1.incx, cy, & ++ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ zdotc_(&z__1, ++#else ++ z__1 = zdotc_( ++#endif ++ &combla_1.n, cx, &combla_1.incx, cy, & + combla_1.incy); + cdot[0].r = z__1.r, cdot[0].i = z__1.i; + ctest_(&c__1, cdot, &ct6[kn + (ki << 2) - 5], &csize1[kn - 1], + sfac); + } else if (combla_1.icase == 2) { + /* .. ZDOTU .. */ +- z__1 = zdotu_(&combla_1.n, cx, &combla_1.incx, cy, & ++ ++#ifdef BLIS_ENABLE_COMPLEX_RETURN_INTEL ++ zdotu_(&z__1, ++#else ++ z__1 = zdotu_( ++#endif ++ &combla_1.n, cx, &combla_1.incx, cy, & + combla_1.incy); + cdot[0].r = z__1.r, cdot[0].i = z__1.i; + ctest_(&c__1, cdot, &ct7[kn + (ki << 2) - 5], &csize1[kn - 1], diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_disable_power9_kernels.patch b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_disable_power9_kernels.patch new file mode 100644 index 000000000000..98daaa8a02e0 --- /dev/null +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_disable_power9_kernels.patch @@ -0,0 +1,18 @@ +There seemingly are bugs in the Power9 kernels. +Workaround this by using the generic kernels on Power9 introduced by +https://github.com/flame/blis/commit/ee9ff988c49f16696679d4c6cd3dcfcac7295be7 +See https://github.com/flame/blis/issues/621 + +diff --git a/build/detect/config/config_detect.c b/build/detect/config/config_detect.c +index 5e29def..5603163 100644 +--- a/build/detect/config/config_detect.c ++++ b/build/detect/config/config_detect.c +@@ -70,6 +70,8 @@ + int main( int argc, char** argv ) + { + arch_t id = bli_cpuid_query_id(); ++ if(id == BLIS_ARCH_POWER9) ++ id = BLIS_ARCH_GENERIC; + char* s = bli_arch_string( id ); + + printf( "%s\n", s ); diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_enable_ppc_autodetect.patch b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_enable_ppc_autodetect.patch new file mode 100644 index 000000000000..3c6fca9fbecb --- /dev/null +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_enable_ppc_autodetect.patch @@ -0,0 +1,91 @@ +Add autodetection for POWER7, POWER9 & POWER10 +See https://github.com/amd/blis/pull/6 + +Author: Alexander Grund (TU Dresden) +diff -ur a/frame/base/bli_cpuid.c b/frame/base/bli_cpuid.c +--- a/frame/base/bli_cpuid.c 2022-04-01 15:12:06.000000000 +0200 ++++ b/frame/base/bli_cpuid.c 2022-07-07 16:15:43.724020000 +0200 +@@ -485,7 +485,7 @@ + return TRUE; + } + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + arch_t bli_cpuid_query_id( void ) + { +@@ -530,9 +530,14 @@ + return BLIS_ARCH_GENERIC; + } + } +- else if ( vendor == VENDOR_UNKNOWN ) ++ else if ( vendor == VENDOR_IBM ) + { +- return BLIS_ARCH_GENERIC; ++ if ( model == MODEL_POWER7) ++ return BLIS_ARCH_POWER7; ++ else if ( model == MODEL_POWER9) ++ return BLIS_ARCH_POWER9; ++ else if ( model == MODEL_POWER10) ++ return BLIS_ARCH_POWER10; + } + + return BLIS_ARCH_GENERIC; +@@ -1203,7 +1208,7 @@ + return VENDOR_ARM; + } + +-#elif defined(__arm__) || defined(_M_ARM) ++#elif defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + /* + I can't easily find documentation to do this as for aarch64, though +@@ -1240,6 +1245,20 @@ + char feat_str[ TEMP_BUFFER_SIZE ]; + char* r_val; + ++#ifdef _ARCH_PPC ++ r_val = find_string_in( "cpu", proc_str, TEMP_BUFFER_SIZE, pci_str ); ++ if ( r_val == NULL ) return VENDOR_IBM; ++ ++ if ( strstr( proc_str, "POWER7" ) != NULL ) ++ *model = MODEL_POWER7; ++ else if ( strstr( proc_str, "POWER9" ) != NULL ) ++ *model = MODEL_POWER9; ++ else if ( strstr( proc_str, "POWER10" ) != NULL ) ++ *model = MODEL_POWER10; ++ ++ return VENDOR_IBM; ++#endif ++ + //printf( "bli_cpuid_query(): beginning search\n" ); + + // Search /proc/cpuinfo for the 'Processor' entry. +diff -ur a/frame/base/bli_cpuid.h b/frame/base/bli_cpuid.h +--- a/frame/base/bli_cpuid.h 2022-04-01 15:12:06.000000000 +0200 ++++ b/frame/base/bli_cpuid.h 2022-07-07 16:09:22.617023000 +0200 +@@ -161,19 +161,23 @@ + FEATURE_AVX512VL = 0x4000 + }; + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + char* find_string_in( char* target, char* buffer, size_t buf_len, char* filepath ); + + enum + { + VENDOR_ARM = 0, ++ VENDOR_IBM, + VENDOR_UNKNOWN + }; + enum + { + MODEL_ARMV7 = 0, + MODEL_ARMV8, ++ MODEL_POWER7, ++ MODEL_POWER9, ++ MODEL_POWER10, + MODEL_UNKNOWN + }; + enum diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_ifx-complex-return-intel.patch b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_ifx-complex-return-intel.patch new file mode 100644 index 000000000000..334b576ee357 --- /dev/null +++ b/easybuild/easyconfigs/b/BLIS/BLIS-0.9.0_ifx-complex-return-intel.patch @@ -0,0 +1,38 @@ +From 98d467891b74021ace7f248cb0856bec734e39b6 Mon Sep 17 00:00:00 2001 +From: bartoldeman +Date: Mon, 11 Jul 2022 19:40:53 -0400 +Subject: [PATCH] Change complex_return='intel' for ifx. (#637) + +Details: +- When checking the version string of the Fortran compiler for the + purposes of determining a default return convention for complex + domain values, grep for "IFORT" instead of "ifort" since that string + is common to both the 'ifx' and 'ifort' binaries provided by Intel: + + $ ifx --version + ifx (IFORT) 2022.1.0 20220316 + Copyright (C) 1985-2022 Intel Corporation. All rights reserved. + + $ ifort --version + ifort (IFORT) 2021.6.0 20220226 + Copyright (C) 1985-2022 Intel Corporation. All rights reserved. +--- + configure | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure b/configure +index 5ff877317..a6018edab 100755 +--- a/configure ++++ b/configure +@@ -3688,9 +3688,9 @@ main() + # Query the compiler "vendor" (ie: the compiler's simple name). + # The last part ({ read first rest ; echo $first ; }) is a workaround + # to OS X's egrep only returning the first match. +- fc_vendor=$(echo "${vendor_string}" | egrep -o 'ifort|GNU' | { read first rest ; echo $first ; }) ++ fc_vendor=$(echo "${vendor_string}" | egrep -o 'IFORT|GNU' | { read first rest ; echo $first ; }) + +- if [ "x${fc_vendor}" = "xifort" ]; then ++ if [ "x${fc_vendor}" = "xIFORT" ]; then + complex_return='intel' + elif [ "x${fc_vendor}" = "xGNU" ]; then + complex_return='gnu' diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-2.2-GCCcore-9.3.0-amd.eb b/easybuild/easyconfigs/b/BLIS/BLIS-2.2-GCCcore-9.3.0-amd.eb index 6b363ab78153..8018fce99b42 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-2.2-GCCcore-9.3.0-amd.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-2.2-GCCcore-9.3.0-amd.eb @@ -12,11 +12,16 @@ toolchain = {'name': 'GCCcore', 'version': '9.3.0'} source_urls = ['https://github.com/amd/blis/archive/'] sources = ['%(version)s.tar.gz'] -patches = ['BLIS-2.2-amd_fix-undefined-reference-blist-abort.patch'] +patches = [ + '%(name)s-%(version)s-amd_fix-undefined-reference-blist-abort.patch', + '%(name)s-%(version)s_enable-ppc-autodetect.patch', +] checksums = [ 'e1feb60ac919cf6d233c43c424f6a8a11eab2c62c2c6e3f2652c15ee9063c0c9', # 2.2.tar.gz # BLIS-2.2-amd_fix-undefined-reference-blist-abort.patch 'e879bd79e4438f7e6905461af1d483d27d14945eb9e75509b22c7584b8ba93c4', + # BLIS-2.2_enable-ppc-autodetect.patch + '9abf334d0abb6cfdd18bec21c27d114b78a7d97be45883626a547eceea046ccd', ] builddependencies = [ diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-2.2_enable-ppc-autodetect.patch b/easybuild/easyconfigs/b/BLIS/BLIS-2.2_enable-ppc-autodetect.patch new file mode 100644 index 000000000000..e20eb44fa00e --- /dev/null +++ b/easybuild/easyconfigs/b/BLIS/BLIS-2.2_enable-ppc-autodetect.patch @@ -0,0 +1,91 @@ +Add autodetection for POWER7 & POWER9 +See https://github.com/amd/blis/pull/6 + +Author: Alexander Grund (TU Dresden) +diff --git a/frame/base/bli_cpuid.c b/frame/base/bli_cpuid.c +index 5858c88a..72ca4479 100644 +--- a/frame/base/bli_cpuid.c ++++ b/frame/base/bli_cpuid.c +@@ -428,7 +428,7 @@ bool_t bli_cpuid_is_bulldozer + return TRUE; + } + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + arch_t bli_cpuid_query_id( void ) + { +@@ -483,9 +483,12 @@ arch_t bli_cpuid_query_id( void ) + return BLIS_ARCH_GENERIC; + } + } +- else if ( vendor == VENDOR_UNKNOWN ) ++ else if ( vendor == VENDOR_IBM ) + { +- return BLIS_ARCH_GENERIC; ++ if ( model == MODEL_POWER7) ++ return BLIS_ARCH_POWER7; ++ else if ( model == MODEL_POWER9) ++ return BLIS_ARCH_POWER9; + } + + return BLIS_ARCH_GENERIC; +@@ -984,7 +987,7 @@ int vpu_count( void ) + } + } + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + #define TEMP_BUFFER_SIZE 200 + +@@ -1006,6 +1009,20 @@ uint32_t bli_cpuid_query + char feat_str[ TEMP_BUFFER_SIZE ]; + char* r_val; + ++#ifdef _ARCH_PPC ++ r_val = find_string_in( "cpu", proc_str, TEMP_BUFFER_SIZE, pci_str ); ++ if ( r_val == NULL ) return VENDOR_IBM; ++ ++ if ( strstr( proc_str, "POWER7" ) != NULL ) ++ *model = MODEL_POWER7; ++ else if ( strstr( proc_str, "POWER9" ) != NULL ) ++ *model = MODEL_POWER9; ++ else if ( strstr( proc_str, "POWER10" ) != NULL ) ++ *model = MODEL_POWER10; ++ ++ return VENDOR_IBM; ++#endif ++ + //printf( "bli_cpuid_query(): beginning search\n" ); + + // Search /proc/cpuinfo for the 'Processor' entry. +diff --git a/frame/base/bli_cpuid.h b/frame/base/bli_cpuid.h +index 9edaf47a..eca76794 100644 +--- a/frame/base/bli_cpuid.h ++++ b/frame/base/bli_cpuid.h +@@ -158,19 +158,23 @@ enum + FEATURE_AVX512VL = 0x4000 + }; + +-#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) ++#elif defined(__aarch64__) || defined(__arm__) || defined(_M_ARM) || defined(_ARCH_PPC) + + char* find_string_in( char* target, char* buffer, size_t buf_len, char* filepath ); + + enum + { + VENDOR_ARM = 0, ++ VENDOR_IBM, + VENDOR_UNKNOWN + }; + enum + { + MODEL_ARMV7 = 0, + MODEL_ARMV8, ++ MODEL_POWER7, ++ MODEL_POWER9, ++ MODEL_POWER10, + MODEL_UNKNOWN + }; + enum diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-3.0-GCCcore-10.3.0-amd.eb b/easybuild/easyconfigs/b/BLIS/BLIS-3.0-GCCcore-10.3.0-amd.eb index 0143981fdeb8..3e9b98dbcad2 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-3.0-GCCcore-10.3.0-amd.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-3.0-GCCcore-10.3.0-amd.eb @@ -15,8 +15,16 @@ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} source_urls = ['https://github.com/amd/blis/archive/'] sources = ['%(version)s.tar.gz'] +patches = [ + '%(name)s-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch', + '%(name)s-2.2_enable-ppc-autodetect.patch', +] checksums = [ 'ac848c040cd6c3550fe49148dbdf109216cad72d3235763ee7ee8134e1528517', # 3.0.tar.gz + # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch + '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', + # BLIS-2.2_enable-ppc-autodetect.patch + '9abf334d0abb6cfdd18bec21c27d114b78a7d97be45883626a547eceea046ccd', ] builddependencies = [ diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCC-11.2.0-amd.eb b/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCC-11.2.0-amd.eb index 8b98f370a164..0208b0c8be81 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCC-11.2.0-amd.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCC-11.2.0-amd.eb @@ -13,10 +13,13 @@ toolchain = {'name': 'GCC', 'version': '11.2.0'} source_urls = ['https://github.com/amd/blis/archive/'] sources = ['%(version)s.tar.gz'] patches = [ + '%(name)s-0.8.1_enable_ppc_autodetect.patch', '%(name)s-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch', ] checksums = [ 'dff643e6ef946846e91e8f81b75ff8fe21f1f2d227599aecd654d184d9beff3e', # 3.0.1.tar.gz + # BLIS-0.8.1_enable_ppc_autodetect.patch + 'b8a3d564a8d4f205e70241765ddfd28331c3c12355ef9c44172c9a0cab9f0111', # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', ] diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.2.0-amd.eb b/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.2.0-amd.eb index 58742db0fc13..4e65c629936c 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.2.0-amd.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.2.0-amd.eb @@ -15,7 +15,17 @@ toolchain = {'name': 'GCCcore', 'version': '10.2.0'} source_urls = ['https://github.com/amd/blis/archive/'] sources = ['%(version)s.tar.gz'] -checksums = ['dff643e6ef946846e91e8f81b75ff8fe21f1f2d227599aecd654d184d9beff3e'] +patches = [ + '%(name)s-0.8.1_enable_ppc_autodetect.patch', + '%(name)s-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch', +] +checksums = [ + 'dff643e6ef946846e91e8f81b75ff8fe21f1f2d227599aecd654d184d9beff3e', # 3.0.1.tar.gz + # BLIS-0.8.1_enable_ppc_autodetect.patch + 'b8a3d564a8d4f205e70241765ddfd28331c3c12355ef9c44172c9a0cab9f0111', + # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch + '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', +] builddependencies = [ ('binutils', '2.35'), diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.3.0-amd.eb b/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.3.0-amd.eb index 7a8a7f4e2e74..6705b1177a21 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.3.0-amd.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-3.0.1-GCCcore-10.3.0-amd.eb @@ -15,7 +15,17 @@ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} source_urls = ['https://github.com/amd/blis/archive/'] sources = ['%(version)s.tar.gz'] -checksums = ['dff643e6ef946846e91e8f81b75ff8fe21f1f2d227599aecd654d184d9beff3e'] +patches = [ + '%(name)s-0.8.1_enable_ppc_autodetect.patch', + '%(name)s-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch', +] +checksums = [ + 'dff643e6ef946846e91e8f81b75ff8fe21f1f2d227599aecd654d184d9beff3e', # 3.0.1.tar.gz + # BLIS-0.8.1_enable_ppc_autodetect.patch + 'b8a3d564a8d4f205e70241765ddfd28331c3c12355ef9c44172c9a0cab9f0111', + # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch + '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', +] builddependencies = [ ('binutils', '2.36.1'), diff --git a/easybuild/easyconfigs/b/BLIS/BLIS-3.1-GCCcore-11.2.0-amd.eb b/easybuild/easyconfigs/b/BLIS/BLIS-3.1-GCCcore-11.2.0-amd.eb index 70fc18ddbcff..36484cda2e54 100644 --- a/easybuild/easyconfigs/b/BLIS/BLIS-3.1-GCCcore-11.2.0-amd.eb +++ b/easybuild/easyconfigs/b/BLIS/BLIS-3.1-GCCcore-11.2.0-amd.eb @@ -13,14 +13,16 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} source_urls = ['https://github.com/amd/blis/archive/'] sources = ['%(version)s.tar.gz'] patches = [ + '%(name)s-0.8.1_enable_ppc_autodetect.patch', '%(name)s-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch', ] checksums = [ '2891948925b9db99eec02a1917d9887a7bee9ad2afc5421c9ba58602a620f2bf', # 3.1.tar.gz + # BLIS-0.8.1_enable_ppc_autodetect.patch + 'b8a3d564a8d4f205e70241765ddfd28331c3c12355ef9c44172c9a0cab9f0111', # BLIS-0.8.1_fix_dgemm-fpe-signalling-on-broadwell.patch '345fa39933e9d1442d2eb1e4ed9129df3fe4aefecf4d104e5d4f25b3bca24d0d', ] - builddependencies = [ ('binutils', '2.37'), ('Python', '3.9.6'), diff --git a/easybuild/easyconfigs/b/BUFRLIB/BUFRLIB-11.3.0.2-iccifort-2020.1.217.eb b/easybuild/easyconfigs/b/BUFRLIB/BUFRLIB-11.3.0.2-iccifort-2020.1.217.eb index cca75a1aa04a..d7e13667d5ad 100644 --- a/easybuild/easyconfigs/b/BUFRLIB/BUFRLIB-11.3.0.2-iccifort-2020.1.217.eb +++ b/easybuild/easyconfigs/b/BUFRLIB/BUFRLIB-11.3.0.2-iccifort-2020.1.217.eb @@ -14,7 +14,7 @@ sources = ['v%(version)s.tar.gz'] checksums = ['1023eb590e2112d5bc213c568a212390fc65ff98732ac8d2ccdda5062e6bc8c6'] builddependencies = [('CMake', '3.16.4')] -configopts = " -DBUILD_STATIC_LIBS=1 -DBUILD_SHARED_LIBS=1 -DCMAKE_BUILD_TYPE=Release " +configopts = " -DBUILD_STATIC_LIBS=1 -DBUILD_SHARED_LIBS=1" sanity_check_paths = { 'files': ['lib/libbufr.a', 'lib/libbufr.so'], diff --git a/easybuild/easyconfigs/b/BUSCO/BUSCO-5.4.2-foss-2021a.eb b/easybuild/easyconfigs/b/BUSCO/BUSCO-5.4.2-foss-2021a.eb new file mode 100644 index 000000000000..1360e985e3c8 --- /dev/null +++ b/easybuild/easyconfigs/b/BUSCO/BUSCO-5.4.2-foss-2021a.eb @@ -0,0 +1,56 @@ +# Updated by: Pavel Grochal (INUITS) +# Updated by: Sebastien Moretti (SIB) + +easyblock = 'PythonPackage' + +name = 'BUSCO' +version = '5.4.2' + +homepage = 'https://busco.ezlab.org/' +description = "BUSCO: assessing genome assembly and annotation completeness with single-copy orthologs" +# software_license = 'LicenseMIT' + +toolchain = {'name': 'foss', 'version': '2021a'} + +source_urls = ['https://gitlab.com/ezlab/%(namelower)s/-/archive/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['6fa268097c7fc570f013abd41186e4616a94da4f72ccb006aabe5fd917cb521f'] # busco-5.4.2.tar.bz2 + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), # for pandas + ('R', '4.1.0'), # for R and ggplot2 + ('Biopython', '1.79'), + ('BLAST+', '2.11.0'), + ('HMMER', '3.3.2'), + ('prodigal', '2.6.3'), + ('AUGUSTUS', '3.4.0'), + ('SEPP', '4.5.0'), + ('MetaEuk', '5'), + ('BBMap', '38.96'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +postinstallcmds = [ + 'mkdir -p %(installdir)s/bin %(installdir)s/doc', + 'cp %(builddir)s/%(namelower)s-%(version)s/scripts/* %(installdir)s/bin', + 'cp %(builddir)s/%(namelower)s-%(version)s/LICENSE %(installdir)s/doc', + 'cp -r %(builddir)s/%(namelower)s-%(version)s/test_data %(installdir)s', + 'cp -r %(builddir)s/%(namelower)s-%(version)s/config %(installdir)s', +] + +sanity_check_paths = { + 'files': ['bin/busco', 'bin/generate_plot.py'], + 'dirs': ['test_data', 'lib/python%(pyshortver)s/site-packages/busco'] +} + +sanity_check_commands = [ + "busco --help", + "busco -i %(installdir)s/test_data/bacteria/genome.fna --mode geno --out test_bacteria.out", + "busco -i %(installdir)s/test_data/eukaryota/genome.fna --mode geno --out test_eukaryota.out", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BUSCO/BUSCO-5.4.3-foss-2021b.eb b/easybuild/easyconfigs/b/BUSCO/BUSCO-5.4.3-foss-2021b.eb new file mode 100644 index 000000000000..9cd3dc82c011 --- /dev/null +++ b/easybuild/easyconfigs/b/BUSCO/BUSCO-5.4.3-foss-2021b.eb @@ -0,0 +1,56 @@ +# Updated by: Pavel Grochal (INUITS) +# Updated by: Sebastien Moretti (SIB) + +easyblock = 'PythonPackage' + +name = 'BUSCO' +version = '5.4.3' + +homepage = 'https://busco.ezlab.org/' +description = "BUSCO: assessing genome assembly and annotation completeness with single-copy orthologs" +# software_license = 'LicenseMIT' + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://gitlab.com/ezlab/%(namelower)s/-/archive/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['1d2c1a3ff4a847773f2b245b9b91c24ac6cd837b097ea467be07f5a37e460dd1'] + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), # for pandas + ('R', '4.1.2'), # for R and ggplot2 + ('Biopython', '1.79'), + ('BLAST+', '2.12.0'), + ('HMMER', '3.3.2'), + ('prodigal', '2.6.3'), + ('AUGUSTUS', '3.4.0'), + ('SEPP', '4.5.1'), + ('MetaEuk', '6'), + ('BBMap', '38.98'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +postinstallcmds = [ + 'mkdir -p %(installdir)s/bin %(installdir)s/doc', + 'cp %(builddir)s/%(namelower)s-%(version)s/scripts/* %(installdir)s/bin', + 'cp %(builddir)s/%(namelower)s-%(version)s/LICENSE %(installdir)s/doc', + 'cp -r %(builddir)s/%(namelower)s-%(version)s/test_data %(installdir)s', + 'cp -r %(builddir)s/%(namelower)s-%(version)s/config %(installdir)s', +] + +sanity_check_paths = { + 'files': ['bin/busco', 'bin/generate_plot.py'], + 'dirs': ['test_data', 'lib/python%(pyshortver)s/site-packages/busco'] +} + +sanity_check_commands = [ + "busco --help", + "busco -i %(installdir)s/test_data/bacteria/genome.fna --mode geno --out test_bacteria.out", + "busco -i %(installdir)s/test_data/eukaryota/genome.fna --mode geno --out test_eukaryota.out", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-11.3.0.eb b/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-11.3.0.eb new file mode 100644 index 000000000000..999529341126 --- /dev/null +++ b/easybuild/easyconfigs/b/BamTools/BamTools-2.5.2-GCC-11.3.0.eb @@ -0,0 +1,19 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +name = 'BamTools' +version = '2.5.2' + +homepage = 'https://github.com/pezmaster31/bamtools' +description = "BamTools provides both a programmer's API and an end-user's toolkit for handling BAM files." + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +# https://github.com/pezmaster31/bamtools +github_account = 'pezmaster31' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['4d8b84bd07b673d0ed41031348f10ca98dd6fa6a4460f9b9668d6f1d4084dfc8'] + +builddependencies = [('CMake', '3.23.1')] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Bazel/Bazel-5.1.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/b/Bazel/Bazel-5.1.1-GCCcore-11.3.0.eb index 666c940a93c1..793f0a2c12ff 100644 --- a/easybuild/easyconfigs/b/Bazel/Bazel-5.1.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/b/Bazel/Bazel-5.1.1-GCCcore-11.3.0.eb @@ -25,7 +25,7 @@ builddependencies = [ ('Zip', '3.0'), ] -dependencies = [('Java', '13', '', True)] +dependencies = [('Java', '11', '', True)] runtest = True testopts = "-- //examples/cpp:hello-success_test //examples/py/... //examples/py_native:test //examples/shell/..." diff --git a/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.10.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.10.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..6b744088b475 --- /dev/null +++ b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.10.0-GCCcore-11.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonBundle' + +name = 'BeautifulSoup' +version = '4.10.0' + +homepage = 'https://www.crummy.com/software/BeautifulSoup' +description = "Beautiful Soup is a Python library designed for quick turnaround projects like screen-scraping." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38') +] + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('soupsieve', '2.3.1', { + 'checksums': ['b8d49b1cd4f037c7082a9683dfa1801aa2597fb11c3a1155b7a5b94829b4f1f9'], + }), + (name, version, { + 'modulename': 'bs4', + 'source_tmpl': 'beautifulsoup4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/b/beautifulsoup4'], + 'checksums': ['c23ad23c521d818955a4151a67d81580319d4bf548d3d49f4223ae041ff98891'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/b/BigDFT/BigDFT-1.9.1-foss-2021b.eb b/easybuild/easyconfigs/b/BigDFT/BigDFT-1.9.1-foss-2021b.eb new file mode 100644 index 000000000000..cfe636d5d2b7 --- /dev/null +++ b/easybuild/easyconfigs/b/BigDFT/BigDFT-1.9.1-foss-2021b.eb @@ -0,0 +1,85 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +easyblock = 'Binary' + +name = 'BigDFT' +version = '1.9.1' + +homepage = 'https://gitlab.com/l_sim/bigdft-suite' +description = """BigDFT: electronic structure calculation based on Daubechies wavelets. +bigdft-suite is a set of different packages to run bigdft.""" + +toolchain = {'name': 'foss', 'version': '2021b'} +local_extra_flags = '-fallow-argument-mismatch' +toolchainopts = { + 'usempi': True, + 'extra_fflags': local_extra_flags, 'extra_fcflags': local_extra_flags, 'extra_f90flags': local_extra_flags, +} + +source_urls = ['https://gitlab.com/l_sim/bigdft-suite/-/archive/%(version)s/'] +sources = ['bigdft-suite-%(version)s.tar.gz'] +patches = ['BigDFT-1.9.1_fix-index-bug.patch'] +checksums = [ + '3c334da26d2a201b572579fc1a7f8caad1cbf971e848a3e10d83bc4dc8c82e41', # bigdft-suite-1.9.1.tar.gz + 'df887c4df1eb3aa4bfe70e52c405525079bcfa54ac26ec5b8f2511fb6204d179', # BigDFT-1.9.1_fix-index-bug.patch +] + +builddependencies = [ + ('CMake', '3.21.1'), + ('Autotools', '20210726'), +] + +dependencies = [ + ('Python', '3.9.6'), + ('OpenCV', '4.5.5', '-contrib'), + ('XZ', '5.2.5'), + ('libarchive', '3.5.1'), + ('bzip2', '1.0.8'), + ('attr', '2.5.1'), + ('libyaml', '0.2.5'), +] + +extract_sources = True + +local_install_opts = '--enable-mpi --with-yaml-path=\\"$EBROOTLIBYAML\\" ' +local_install_opts += '--with-ext-linalg=\\"-L$SCALAPACK_LIB_DIR $LIBSCALAPACK -L$LAPACK_LIB_DIR $LIBBLAS\\" ' +# make sure that Python packages like futile are installed to right location by BigDFT install script +local_install_opts += '--with-python_prefix=%(builddir)s/bigdft-suite-%(version)s/bigdft_builddir/install ' +local_install_opts += 'CC=\\"$MPICC\\" FC=\\"$MPIFC\\" ' +local_install_opts += 'FCFLAGS=\\"$CPPFLAGS $FCFLAGS -fallow-argument-mismatch -std=legacy\\" ' +local_install_opts += 'FFLAGS=\\"$CPPFLAGS $FFLAGS -fallow-argument-mismatch -std=legacy\\" ' +local_install_opts += 'F90FLAGS=\\"$CPPFLAGS $F90FLAGS -fallow-argument-mismatch -std=legacy\\" ' + +install_cmd = "mkdir bigdft_builddir && cd bigdft_builddir && " +install_cmd += "python3 ../Installer.py build bigdft -y -v -c %s && " % local_install_opts +install_cmd += "cp -a install/* %(installdir)s" + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +sanity_check_paths = { + 'files': ['bin/bigdft', 'bin/bigdftvars.sh', 'include/futile.mod', 'include/futile.h', + 'lib/python%(pyshortver)s/site-packages/BigDFT/Systems.py', + 'lib/libbigdft-1.a'], + 'dirs': [], +} + +local_test_script = """ +from BigDFT.Systems import System +from BigDFT.Fragments import Fragment +from BigDFT.IO import XYZReader +N2 = System() +with XYZReader("N2") as ifile: + N2["N:0"] = Fragment([next(ifile)]) + N2["N:1"] = Fragment([next(ifile)]) +print(N2.get_posinp()) +""" + +local_sanity_cmd = "tmpdir=$(mktemp -d) && echo '" + local_test_script + "' > " + "$tmpdir/bigdft_test.py && " +local_sanity_cmd += "python $tmpdir/bigdft_test.py && rm -r $tmpdir" + +sanity_check_commands = [ + "bigdft -h", + local_sanity_cmd, +] + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/b/BigDFT/BigDFT-1.9.1_fix-index-bug.patch b/easybuild/easyconfigs/b/BigDFT/BigDFT-1.9.1_fix-index-bug.patch new file mode 100644 index 000000000000..0aa60536adfa --- /dev/null +++ b/easybuild/easyconfigs/b/BigDFT/BigDFT-1.9.1_fix-index-bug.patch @@ -0,0 +1,22 @@ +# same effect as patch for futile (futile_index_bug.patch), except due to directory structure, must be regenerated +# fix the redefinition of an index variable caught by GCC 11 +# Author: Denis Kristak (Inuits) +diff -ruN bigdft-suite-1.9.1_orig/futile/flib/f_input_file.f90 bigdft-suite-1.9.1/futile/flib/f_input_file.f90 +--- bigdft-suite-1.9.1_orig/futile/flib/f_input_file.f90 2022-02-22 10:55:06.924505000 +0100 ++++ bigdft-suite-1.9.1/futile/flib/f_input_file.f90 2022-02-22 10:55:57.462690000 +0100 +@@ -172,7 +172,6 @@ + type(dictionary), pointer :: dict + character(len = *), intent(in) :: file, key + +- integer :: i + type(dictionary), pointer :: ref,iter + character(len = max_field_length) :: val, profile_ + double precision, dimension(2) :: rg +@@ -366,6 +365,7 @@ + character(max_field_length), dimension(:), allocatable :: keys + double precision :: var + integer :: dlen, skeys ++ integer :: i + + if (associated(dict%child)) then + if (dict_len(dict) >= 1) then diff --git a/easybuild/easyconfigs/b/Biopython/Biopython-1.79-foss-2022a.eb b/easybuild/easyconfigs/b/Biopython/Biopython-1.79-foss-2022a.eb new file mode 100644 index 000000000000..2633521f6e2d --- /dev/null +++ b/easybuild/easyconfigs/b/Biopython/Biopython-1.79-foss-2022a.eb @@ -0,0 +1,45 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'PythonPackage' + +name = 'Biopython' +version = '1.79' + +homepage = 'https://www.biopython.org' +description = """Biopython is a set of freely available tools for biological + computation written in Python by an international team of developers. It is + a distributed collaborative effort to develop Python libraries and + applications which address the needs of current and future work in + bioinformatics. """ + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://biopython.org/DIST'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['edb07eac99d3b8abd7ba56ff4bedec9263f76dfc3c3f450e7d2e2bcdecf8559b'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +# Run only tests that don't require internet connection +runtest = 'python setup.py test --offline' + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/Bio', + 'lib/python%(pyshortver)s/site-packages/BioSQL'] +} + +# extra check to ensure numpy dependency is available +sanity_check_commands = ["python -c 'import Bio.MarkovModel'"] + +options = {'modulename': 'Bio'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Bison/Bison-3.8.2-GCCcore-12.2.0.eb b/easybuild/easyconfigs/b/Bison/Bison-3.8.2-GCCcore-12.2.0.eb new file mode 100644 index 000000000000..4c8dc227e189 --- /dev/null +++ b/easybuild/easyconfigs/b/Bison/Bison-3.8.2-GCCcore-12.2.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'Bison' +version = '3.8.2' + +homepage = 'https://www.gnu.org/software/bison' +description = """Bison is a general-purpose parser generator that converts an annotated context-free grammar + into a deterministic LR or generalized LR (GLR) parser employing LALR(1) parser tables.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['06c9e13bdf7eb24d4ceb6b59205a4f67c2c7e7213119644430fe82fbd14a0abb'] + +builddependencies = [ + ('M4', '1.4.19'), + # use same binutils version that was used when building GCCcore toolchain + ('binutils', '2.39', '', True), +] + + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bison', 'yacc']] + [('lib/liby.a', 'lib64/liby.a')], + 'dirs': [], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/b/Blender/Blender-3.2.2-linux-x64.eb b/easybuild/easyconfigs/b/Blender/Blender-3.2.2-linux-x64.eb new file mode 100644 index 000000000000..d1b1e54af9de --- /dev/null +++ b/easybuild/easyconfigs/b/Blender/Blender-3.2.2-linux-x64.eb @@ -0,0 +1,36 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'PackedBinary' + +name = 'Blender' +version = '3.2.2' +versionsuffix = '-linux-x64' + +homepage = 'https://www.blender.org' +description = """ +Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline, +modeling, rigging, animation, simulation, rendering, compositing and motion tracking, even video +editing and game creation. +""" + +toolchain = SYSTEM + +source_urls = ['http://ftp.nluug.nl/pub/graphics/%(namelower)s/release/%(name)s%(version_major_minor)s/'] +sources = ['%(namelower)s-%(version)s-linux-x64.tar.xz'] +checksums = ['1726560157d90cf2aaaeb6d25ded1783d66bff043814cd95b90fc0af1d9e018b'] + +dependencies = [ + ('CUDA', '11.7.0'), +] + +sanity_check_paths = { + 'files': ['%(namelower)s'], + 'dirs': ['%(version_major_minor)s'], +} + +modaliases = { + 'blender': 'blender -- --cycles-device CUDA', +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-10.2.0.eb b/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-10.2.0.eb new file mode 100644 index 000000000000..8dfa22d145c7 --- /dev/null +++ b/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-10.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'Blitz++' +version = '1.0.2' + +homepage = 'https://github.com/blitzpp/blitz' + +description = """ + Blitz++ is a (LGPLv3+) licensed meta-template library for array manipulation + in C++ with a speed comparable to Fortran implementations, while preserving an + object-oriented interface +""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = [('https://github.com/blitzpp/blitz/archive/')] +sources = ['%(version)s.tar.gz'] +patches = ['blitz-%(version)s_pkgconfig.patch'] +checksums = [ + '500db9c3b2617e1f03d0e548977aec10d36811ba1c43bb5ef250c0e3853ae1c2', # 1.0.2.tar.gz + 'd15fb397e75eb009809ecacdd7f2f154ff05e6586895f3b0511d0b53a6e3b9fe', # blitz-1.0.2_pkgconfig.patch +] + +builddependencies = [('CMake', '3.18.4'), ('binutils', '2.35')] + +sanity_check_paths = { + 'files': ['lib64/libblitz.a', 'lib64/libblitz.%s' % SHLIB_EXT], + 'dirs': ['include/blitz/array', 'include/blitz/meta', + 'include/random', 'lib64/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..cfd1839eb9d3 --- /dev/null +++ b/easybuild/easyconfigs/b/Blitz++/Blitz++-1.0.2-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'Blitz++' +version = '1.0.2' + +homepage = 'https://github.com/blitzpp/blitz' + +description = """ + Blitz++ is a (LGPLv3+) licensed meta-template library for array manipulation + in C++ with a speed comparable to Fortran implementations, while preserving an + object-oriented interface +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = [('https://github.com/blitzpp/blitz/archive/')] +sources = ['%(version)s.tar.gz'] +patches = ['blitz-%(version)s_pkgconfig.patch'] +checksums = [ + '500db9c3b2617e1f03d0e548977aec10d36811ba1c43bb5ef250c0e3853ae1c2', # 1.0.2.tar.gz + 'd15fb397e75eb009809ecacdd7f2f154ff05e6586895f3b0511d0b53a6e3b9fe', # blitz-1.0.2_pkgconfig.patch +] + +builddependencies = [('CMake', '3.23.1'), ('binutils', '2.38')] + +sanity_check_paths = { + 'files': ['lib64/libblitz.a', 'lib64/libblitz.%s' % SHLIB_EXT], + 'dirs': ['include/blitz/array', 'include/blitz/meta', + 'include/random', 'lib64/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/Blitz++/blitz-1.0.2_pkgconfig.patch b/easybuild/easyconfigs/b/Blitz++/blitz-1.0.2_pkgconfig.patch new file mode 100644 index 000000000000..e379e5eddd40 --- /dev/null +++ b/easybuild/easyconfigs/b/Blitz++/blitz-1.0.2_pkgconfig.patch @@ -0,0 +1,14 @@ +# Correct pkgconfig file +# S.D.Pinches, 2022.08.23 +diff -Nru blitz-1.0.2-orig/cmake/CreatePkgConfig.cmake blitz-1.0.2/cmake/CreatePkgConfig.cmake +--- blitz-1.0.2-orig/cmake/CreatePkgConfig.cmake 2019-10-02 00:50:17.000000000 +0200 ++++ blitz-1.0.2/cmake/CreatePkgConfig.cmake 2022-08-23 16:24:41.509703369 +0200 +@@ -9,7 +9,7 @@ + exec_prefix=\${prefix} + libdir=\${prefix}/@CMAKE_INSTALL_LIBDIR@ + includedir=\${prefix}/@CMAKE_INSTALL_INCLUDEDIR@ +-confdir=\${prefix}/@CMAKE_INSTALL_LIBDIR@/@pkgconfig_package_name@ ++confdir=\${prefix}/lib/cmake + + Name: @pkgconfig_package_name@ + Description: @pkgconfig_package_description@ diff --git a/easybuild/easyconfigs/b/Bowtie2/Bowtie2-2.4.5-GCC-11.3.0.eb b/easybuild/easyconfigs/b/Bowtie2/Bowtie2-2.4.5-GCC-11.3.0.eb new file mode 100644 index 000000000000..23f2eb1bda77 --- /dev/null +++ b/easybuild/easyconfigs/b/Bowtie2/Bowtie2-2.4.5-GCC-11.3.0.eb @@ -0,0 +1,39 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics +# Biozentrum - University of Basel +# Modified by: Robert Schmidt +# Ottawa Hospital Research Institute - Bioinformatics Team +# Modified by: Adam Huffman +# The Francis Crick Institute +# Modified by: Kurt Lust, UAntwerp + +name = 'Bowtie2' +version = '2.4.5' + +homepage = 'http://bowtie-bio.sourceforge.net/bowtie2/index.shtml' +description = """ Bowtie 2 is an ultrafast and memory-efficient tool for aligning sequencing reads + to long reference sequences. It is particularly good at aligning reads of about 50 up to 100s or 1,000s + of characters, and particularly good at aligning to relatively long (e.g. mammalian) genomes. + Bowtie 2 indexes the genome with an FM Index to keep its memory footprint small: for the human genome, + its memory footprint is typically around 3.2 GB. Bowtie 2 supports gapped, local, and paired-end alignment modes.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True, 'cstd': 'gnu++98'} + +source_urls = [('https://sourceforge.net/projects/bowtie-bio/files/%(namelower)s/%(version)s', 'download')] +sources = ['%(namelower)s-%(version)s-source.zip'] +checksums = ['d3cbd5f323393b5649aea10325d7c4b77f02035a8b204e5ac18eba95236e076a'] + +dependencies = [ + ('zlib', '1.2.12'), + ('Perl', '5.34.1'), + ('Python', '3.10.4'), +] + +# to add script folder to path just uncomment this line +# modextrapaths = {'PATH': 'scripts'} + +sanity_check_commands = ['bowtie2 --help', 'bowtie2-build --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/BreakDancer/BreakDancer-1.4.5-intel-2017a.eb b/easybuild/easyconfigs/b/BreakDancer/BreakDancer-1.4.5-intel-2017a.eb index 2526494ae824..dc05fe1ecab2 100644 --- a/easybuild/easyconfigs/b/BreakDancer/BreakDancer-1.4.5-intel-2017a.eb +++ b/easybuild/easyconfigs/b/BreakDancer/BreakDancer-1.4.5-intel-2017a.eb @@ -12,13 +12,14 @@ toolchain = {'name': 'intel', 'version': '2017a'} source_urls = ['https://github.com/genome/breakdancer/archive/'] sources = ['v%(version)s.tar.gz'] patches = ['BreakDancer-%(version)s_fix-icpc-compilation.patch'] +checksums = [ + '5d74f3a90f5c69026ebb4cf4cb9ccc51ec8dd49ac7a88595a1efabd5a73e92b6', # v1.4.5.tar.gz + '3652cd5fcd02edb8d82a30c4e110ce6a63291608a9e2535525f90636c1840da4', # BreakDancer-1.4.5_fix-icpc-compilation.patch +] dependencies = [('zlib', '1.2.11')] builddependencies = [('CMake', '3.7.2')] -separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=release' - parallel = 1 sanity_check_paths = { diff --git a/easybuild/easyconfigs/b/binutils/binutils-2.39-GCCcore-12.2.0.eb b/easybuild/easyconfigs/b/binutils/binutils-2.39-GCCcore-12.2.0.eb new file mode 100644 index 000000000000..c8ec4f592435 --- /dev/null +++ b/easybuild/easyconfigs/b/binutils/binutils-2.39-GCCcore-12.2.0.eb @@ -0,0 +1,31 @@ +name = 'binutils' +version = '2.39' + +homepage = 'https://directory.fsf.org/project/binutils/' +description = "binutils: GNU binary utilities" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['d12ea6f239f1ffe3533ea11ad6e224ffcb89eb5d01bbea589e9158780fa11f10'] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + # use same binutils version that was used when building GCC toolchain, to 'bootstrap' this binutils + ('binutils', version, '', True) +] + +dependencies = [ + # zlib is a runtime dep to avoid that it gets embedded in libbfd.so, + # see https://github.com/easybuilders/easybuild-easyblocks/issues/1350 + ('zlib', '1.2.12'), +] + +# avoid build failure when makeinfo command is not available +# see https://sourceware.org/bugzilla/show_bug.cgi?id=15345 +buildopts = 'MAKEINFO=true' +installopts = buildopts + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/binutils/binutils-2.39.eb b/easybuild/easyconfigs/b/binutils/binutils-2.39.eb new file mode 100644 index 000000000000..c2dda2f1464a --- /dev/null +++ b/easybuild/easyconfigs/b/binutils/binutils-2.39.eb @@ -0,0 +1,26 @@ +name = 'binutils' +version = '2.39' + +homepage = 'https://directory.fsf.org/project/binutils/' + +description = "binutils: GNU binary utilities" + +toolchain = SYSTEM + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['d12ea6f239f1ffe3533ea11ad6e224ffcb89eb5d01bbea589e9158780fa11f10'] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + # zlib required, but being linked in statically, so not a runtime dep + ('zlib', '1.2.12'), +] + +# avoid build failure when makeinfo command is not available +# see https://sourceware.org/bugzilla/show_bug.cgi?id=15345 +buildopts = 'MAKEINFO=true' +installopts = buildopts + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 000000000000..c1b49d2a91a5 --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,19 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('CUDA', '11.7.0', '', True), + ('UCX-CUDA', '1.12.1', versionsuffix), +] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2022a.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2022a.eb new file mode 100644 index 000000000000..2613e835f8ae --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-foss-2022a.eb @@ -0,0 +1,13 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'foss', 'version': '2022a'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2021b.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2021b.eb new file mode 100644 index 000000000000..e31ac49a155b --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2021b.eb @@ -0,0 +1,13 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'intel', 'version': '2021b'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2022a.eb b/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2022a.eb new file mode 100644 index 000000000000..2352adaf9cb1 --- /dev/null +++ b/easybuild/easyconfigs/b/buildenv/buildenv-default-intel-2022a.eb @@ -0,0 +1,13 @@ +easyblock = 'BuildEnv' + +name = 'buildenv' +version = 'default' + +homepage = 'None' +description = """This module sets a group of environment variables for compilers, linkers, maths libraries, etc., that + you can use to easily transition between toolchains when building your software. To query the variables being set + please use: module show """ + +toolchain = {'name': 'intel', 'version': '2022a'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/bwidget/bwidget-1.9.15-GCCcore-11.3.0.eb b/easybuild/easyconfigs/b/bwidget/bwidget-1.9.15-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..cec51692a1f8 --- /dev/null +++ b/easybuild/easyconfigs/b/bwidget/bwidget-1.9.15-GCCcore-11.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'Tarball' + +name = 'bwidget' +version = '1.9.15' + +homepage = 'https://core.tcl-lang.org/bwidget/home' +description = 'The BWidget Toolkit is a high-level Widget Set for Tcl/Tk built using native Tcl/Tk 8.x namespaces.' + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://downloads.sourceforge.net/project/tcllib/BWidget/%(version)s/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['9c4dd648fdfd31de7cb5af44b392a1916f949dd195820684d940edcd8485ac13'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [('Tk', '8.6.12')] + +modextrapaths = {'TCLLIBPATH': '.'} + +sanity_check_paths = { + 'files': ['button.tcl'], + 'dirs': ['BWman', 'demo', 'images', 'lang', 'tests'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/c/CDO/CDO-2.0.5-gompi-2021b.eb b/easybuild/easyconfigs/c/CDO/CDO-2.0.5-gompi-2021b.eb new file mode 100644 index 000000000000..78745e7806b5 --- /dev/null +++ b/easybuild/easyconfigs/c/CDO/CDO-2.0.5-gompi-2021b.eb @@ -0,0 +1,52 @@ +# updated to version 2.0.5, based on the previous 1.9.10 version +# J. Sassmannshausen (Imperial College London, UK) +# Alex Domingo (Vrije Universiteit Brussel, BE) + +easyblock = 'ConfigureMake' + +name = 'CDO' +version = '2.0.5' + +homepage = 'https://code.zmaw.de/projects/cdo' +description = """CDO is a collection of command line Operators to manipulate and analyse Climate and NWP model Data.""" + +toolchain = {'name': 'gompi', 'version': '2021b'} +toolchainopts = {'cstd': 'c++14', 'usempi': True} + +source_urls = ['https://code.mpimet.mpg.de/attachments/download/26823/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['edeebbf1c3b1a1f0c642dae6bc8c7624e0c54babe461064dc5c7daca4a5b0dce'] + +builddependencies = [ + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('cURL', '7.78.0'), + ('ecCodes', '2.24.2'), + ('FFTW', '3.3.10'), + ('HDF5', '1.12.1'), + ('libxml2', '2.9.10'), + ('netCDF', '4.8.1'), + ('PROJ', '8.1.0'), + ('Szip', '2.1.1'), + ('UDUNITS', '2.2.28'), + ('util-linux', '2.37'), +] + +# Build libcdi +configopts = "--enable-cdi-lib " + +# Use dependencies from EasyBuild +configopts += "--with-curl=$EBROOTCURL --with-eccodes=$EBROOTECCODES --with-fftw3 --with-hdf5=$EBROOTHDF5 " +configopts += "--with-netcdf=$EBROOTNETCDF --with-proj=$EBROOTPROJ --with-szlib=$EBROOTSZIP " +configopts += "--with-udunits2=$EBROOTUDUNITS --with-util-linux-uuid=$EBROOTUTILMINLINUX " + +sanity_check_paths = { + 'files': ['bin/cdo', 'lib/libcdi.a', 'lib/libcdi.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +sanity_check_commands = ["cdo --version"] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2021b.eb b/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2021b.eb new file mode 100644 index 000000000000..7622ed76c902 --- /dev/null +++ b/easybuild/easyconfigs/c/CESM-deps/CESM-deps-2-foss-2021b.eb @@ -0,0 +1,52 @@ +easyblock = 'Bundle' + +name = 'CESM-deps' +version = '2' + +homepage = 'https://www.cesm.ucar.edu/models/cesm2/' +description = """CESM is a fully-coupled, community, global climate model that +provides state-of-the-art computer simulations of the Earth's past, present, +and future climate states.""" + +# The following environment is suitable for CESM >= 2.2.0 +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('CMake', '3.22.1'), + ('Python', '3.9.6'), + ('lxml', '4.6.3'), + ('Perl', '5.34.0'), + ('XML-LibXML', '2.0207'), + ('ESMF', '8.2.0'), + ('netCDF', '4.8.1'), + ('netCDF-Fortran', '4.5.3'), + ('netCDF-C++4', '4.3.1'), + ('PnetCDF', '1.12.3'), + ('Subversion', '1.14.1'), + ('git', '2.33.1', '-nodocs'), + ('git-lfs', '3.2.0', '', True), +] + +components = [ + # install extra configuration tools and files for VSC clusters + ('cesm-config', '1.6.1', { + 'easyblock': 'Tarball', + 'source_urls': ['https://github.com/vub-hpc/%(name)s/archive'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}], + 'checksums': ['bd88c32a08439cc0b4395936a2113e83032e43d0c683ffb4dbf651c09d1e9c88'], + 'start_dir': '%(name)s-%(version)s', + }), +] + +sanity_check_paths = { + 'files': ['bin/update-cesm-machines', 'scripts/case.pbs', 'scripts/case.slurm'], + 'dirs': ['machines', 'irods'], +} + +usage = """Environment to build and run CESM v2 simulations + 1. Download a release of CESM v2: `git clone -b release-cesm2.2.0 https://github.com/ESCOMP/cesm.git cesm-2.2.0` + 2. Add external programs for CESM: `cd cesm-2.2.0; ./manage_externals/checkout_externals` + 3. Update config files: `update-cesm-machines cime/config/cesm/machines/ $EBROOTCESMMINDEPS/machines/` + 4. Create case: `cd cime/scripts && ./create_newcase --machine ...`""" + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/c/CGAL/CGAL-4.14.3-gompi-2022a.eb b/easybuild/easyconfigs/c/CGAL/CGAL-4.14.3-gompi-2022a.eb new file mode 100644 index 000000000000..78055d4556de --- /dev/null +++ b/easybuild/easyconfigs/c/CGAL/CGAL-4.14.3-gompi-2022a.eb @@ -0,0 +1,38 @@ +name = 'CGAL' +version = '4.14.3' + +homepage = 'https://www.cgal.org/' +description = """The goal of the CGAL Open Source Project is to provide easy access to efficient + and reliable geometric algorithms in the form of a C++ library.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'strict': True} + +source_urls = ['https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-%(version)s'] +sources = [SOURCE_TAR_XZ] +checksums = ['5bafe7abe8435beca17a1082062d363368ec1e3f0d6581bb0da8b010fb389fe4'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('Eigen', '3.4.0'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('Python', '3.10.4'), + ('Boost', '1.79.0'), + ('MPFR', '4.1.0'), + ('GMP', '6.2.1'), + ('Mesa', '22.0.3'), + ('libGLU', '9.0.2'), + ('Qt5', '5.15.5'), +] + +configopts = '-DOPENGL_INCLUDE_DIR="$EBROOTMESA/include;$EBROOTLIBGLU/include" ' +configopts += '-DOpenGL_GL_PREFERENCE=GLVND ' +configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT +configopts += "-DWITH_ZLIB=ON -DWITH_MPFR=ON -DWITH_OpenGL=ON -DWITH_Eigen3=ON " +configopts += "-DWITH_GMPXX=ON -DWITH_LAPACK=ON -DWITH_BLAS=ON " + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/c/CUDA/CUDA-11.4.1.eb b/easybuild/easyconfigs/c/CUDA/CUDA-11.4.1.eb index 29d43ce1d791..b9f6fac274d1 100644 --- a/easybuild/easyconfigs/c/CUDA/CUDA-11.4.1.eb +++ b/easybuild/easyconfigs/c/CUDA/CUDA-11.4.1.eb @@ -19,7 +19,7 @@ checksums = [ 'cuda_%%(version)s_%s_linux_ppc64le.run' % local_nv_version: 'dd92ca04f76ad938da3480e2901c0e52dbff6028ada63c09071ed9e3055dc361', 'cuda_%%(version)s_%s_linux_sbsa.run' % local_nv_version: - 'i8efa725a41dfd3c0c0f453c2dd535d149154102bf2b791718859417b4f84f922', + '8efa725a41dfd3c0c0f453c2dd535d149154102bf2b791718859417b4f84f922', } ] diff --git a/easybuild/easyconfigs/c/CUnit/CUnit-2.1-3-GCCcore-11.2.0.eb b/easybuild/easyconfigs/c/CUnit/CUnit-2.1-3-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..c03ee75be975 --- /dev/null +++ b/easybuild/easyconfigs/c/CUnit/CUnit-2.1-3-GCCcore-11.2.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'CUnit' +version = '2.1-3' + +homepage = 'https://sourceforge.net/projects/cunit/' +description = "Automated testing framework for C." + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_BZ2] +checksums = ['f5b29137f845bb08b77ec60584fdb728b4e58f1023e6f249a464efa49a40f214'] + +builddependencies = [ + ('binutils', '2.37'), + ('Autotools', '20210726'), +] + +preconfigopts = "autoreconf -i && " + +sanity_check_paths = { + 'files': ['lib/libcunit.a', 'lib/libcunit.%s' % SHLIB_EXT], + 'dirs': ['include/CUnit', 'lib/pkgconfig', 'share'], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/c/Calib/Calib-0.3.4-GCC-9.3.0.eb b/easybuild/easyconfigs/c/Calib/Calib-0.3.4-GCC-9.3.0.eb index 3e46af0a6b52..28b8fd81ade6 100644 --- a/easybuild/easyconfigs/c/Calib/Calib-0.3.4-GCC-9.3.0.eb +++ b/easybuild/easyconfigs/c/Calib/Calib-0.3.4-GCC-9.3.0.eb @@ -42,7 +42,7 @@ buildopts = 'CXXFLAGS="$CXXFLAGS -pthread -Iclustering/ -lz" && ' # building calib_cons requires SPOA, so build that first buildopts += "mv %(builddir)s/spoa-1.1.3 %(builddir)s/calib-%(version)s/consensus/spoa_v1.1.3 && " buildopts += "mkdir consensus/spoa_v1.1.3/build && cd consensus/spoa_v1.1.3/build && " -buildopts += "cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_VERBOSE_MAKEFILE=ON .. && make && " +buildopts += "cmake -DCMAKE_VERBOSE_MAKEFILE=ON .. && make && " buildopts += "cd - && make -C consensus" files_to_copy = [(['calib', 'consensus/calib_cons'], 'bin')] diff --git a/easybuild/easyconfigs/c/CapnProto/CapnProto-0.10.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/CapnProto/CapnProto-0.10.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..c833e53d5666 --- /dev/null +++ b/easybuild/easyconfigs/c/CapnProto/CapnProto-0.10.2-GCCcore-11.3.0.eb @@ -0,0 +1,35 @@ +# Contribution by +# DeepThought, Flinders University +# Updated to 0.9.1 +# R.QIAO + +easyblock = 'ConfigureMake' + +name = 'CapnProto' +version = '0.10.2' + +homepage = 'https://capnproto.org' +description = "Cap’n Proto is an insanely fast data interchange format and capability-based RPC system." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +# -std=c++17 to avoid problems like "error: 'aligned_alloc' was not declared in this scope" +# lowopt (-O1) to avoid problems like "capnp/schema-loader.c++:1971: failed: no schema node loaded for ..." +# (only on Intel Skylake?) +toolchainopts = {'cstd': 'c++17', 'lowopt': True} + +source_urls = ['https://capnproto.org/'] +sources = ['capnproto-c++-%(version)s.tar.gz'] +checksums = ['7cd91a244cb330cda5b41f4904f94b61f39ba112835b31fa8c3764cedbed819f'] + +builddependencies = [('binutils', '2.38')] + +local_bins = ['capnp', 'capnpc', 'capnpc-c++', 'capnpc-capnp'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_bins], + 'dirs': ['include/capnp', 'include/kj', 'lib'], +} + +sanity_check_commands = ["%s --help" % x for x in local_bins] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Cartopy/Cartopy-0.20.3-foss-2021b.eb b/easybuild/easyconfigs/c/Cartopy/Cartopy-0.20.3-foss-2021b.eb new file mode 100644 index 000000000000..7238ae75ac77 --- /dev/null +++ b/easybuild/easyconfigs/c/Cartopy/Cartopy-0.20.3-foss-2021b.eb @@ -0,0 +1,54 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Updated: Denis Kristak +easyblock = 'PythonBundle' + +name = 'Cartopy' +version = '0.20.3' + +homepage = 'https://scitools.org.uk/cartopy/docs/latest/' +description = """Cartopy is a Python package designed to make drawing maps for data analysis and visualisation easy.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('Fiona', '1.8.21'), + ('GDAL', '3.3.2'), + ('GEOS', '3.9.1'), + ('matplotlib', '3.4.3'), + ('SciPy-bundle', '2021.10'), + ('Shapely', '1.8.2'), + ('lxml', '4.6.3'), + ('Pillow', '8.3.2'), + ('PROJ', '8.1.0'), + ('PyYAML', '5.4.1'), +] + +use_pip = True +sanity_pip_check = True + +# owslib 0.26.0 requires pyproj < 3.3.0 +exts_list = [ + ('pyproj', '3.2.1', { + 'preinstallopts': "export PROJ_DIR=$EBROOTPROJ && ", + 'checksums': ['4a936093825ff55b24c1fc6cc093541fcf6d0f6d406589ed699e62048ebf3877'], + }), + ('OWSLib', '0.26.0', { + 'checksums': ['8c4cb06338eb6405c2aeced0b6d085682aa61f0f2e528f1c788d68dc50df941b'], + }), + ('pyepsg', '0.4.0', { + 'checksums': ['2d08fad1e7a8b47a90a4e43da485ba95705923425aefc4e2a3efa540dbd470d7'], + }), + ('pykdtree', '1.3.5', { + 'checksums': ['7342f75e731103e653fc1f6b9fdabc2410cf92b6e7b06160804a75786c9b5747'], + }), + ('pyshp', '2.3.1', { + 'modulename': 'shapefile', + 'checksums': ['4caec82fd8dd096feba8217858068bacb2a3b5950f43c048c6dc32a3489d5af1'], + }), + (name, version, { + 'checksums': ['0d60fa2e2fbd77c4d1f6b1f9d3b588966147f07c1b179d2d34570ac1e1b49006'], + }), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/c/CellRanger-ATAC/CellRanger-ATAC-2.1.0.eb b/easybuild/easyconfigs/c/CellRanger-ATAC/CellRanger-ATAC-2.1.0.eb new file mode 100644 index 000000000000..1df5c99a7dab --- /dev/null +++ b/easybuild/easyconfigs/c/CellRanger-ATAC/CellRanger-ATAC-2.1.0.eb @@ -0,0 +1,29 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Victor E. Goitea +# Email: victorg@bmb.sdu.dk + +easyblock = 'Tarball' + +name = 'CellRanger-ATAC' +version = '2.1.0' + +homepage = "https://support.10xgenomics.com/single-cell-atac/software/pipelines/latest/what-is-cell-ranger-atac" +description = """Cell Ranger ATAC is a set of analysis pipelines that process +Chromium Single Cell ATAC data.""" + +toolchain = SYSTEM + +# Download manually from https://support.10xgenomics.com/single-cell-atac/software/downloads/latest +sources = [SOURCELOWER_TAR_GZ] +checksums = ['0278f1cf7a27ec9cef6b39d674f0b0633d1f0989d3582e7a64c431c029a484c4'] + +keepsymlinks = True + +sanity_check_paths = { + 'files': ['bin/cellranger-atac', 'cellranger-atac'], + 'dirs': ['bin/atac', 'lib'], +} + +sanity_check_commands = ["cellranger-atac testrun --id=tiny"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Chimera/Chimera-1.16-linux_x86_64.eb b/easybuild/easyconfigs/c/Chimera/Chimera-1.16-linux_x86_64.eb new file mode 100644 index 000000000000..c50dddc83f8c --- /dev/null +++ b/easybuild/easyconfigs/c/Chimera/Chimera-1.16-linux_x86_64.eb @@ -0,0 +1,29 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics +# Biozentrum - University of Basel + +name = "Chimera" +version = "1.16" +versionsuffix = "-linux_x86_64" + +homepage = 'https://www.cgl.ucsf.edu/chimera/' +description = """ UCSF Chimera is a highly extensible program for interactive visualization + and analysis of molecular structures and related data, including density maps, supramolecular + assemblies, sequence alignments, docking results, trajectories, and conformational ensembles. """ + +toolchain = SYSTEM + +# no public download URL. Go to https://www.cgl.ucsf.edu/chimera/download.html +sources = ['%(namelower)s-%(version)s%(versionsuffix)s.bin'] +checksums = ['e3a89d1ffd30d7195af6149ea7b3ae23596c4f922424d9c957ded447f8d6883c'] + +# unzip is required to uncompress the provided .bin file +osdependencies = ['unzip'] + +sanity_check_paths = { + 'files': ["bin/chimera"], + 'dirs': [] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Clang/Clang-11.0.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/c/Clang/Clang-11.0.1-GCCcore-10.2.0.eb index a7ec71f94dde..6d6f037e9eb5 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-11.0.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-11.0.1-GCCcore-10.2.0.eb @@ -52,6 +52,8 @@ dependencies = [ ('ncurses', '6.2'), ('GMP', '6.2.0'), ('Z3', '4.8.10'), + ('libffi', '3.3'), + ('elfutils', '0.183'), ] builddependencies = [ diff --git a/easybuild/easyconfigs/c/Clang/Clang-11.0.1-gcccuda-2020b.eb b/easybuild/easyconfigs/c/Clang/Clang-11.0.1-gcccuda-2020b.eb index 34cb36200428..d5b83b6bd5c6 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-11.0.1-gcccuda-2020b.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-11.0.1-gcccuda-2020b.eb @@ -52,13 +52,14 @@ dependencies = [ ('ncurses', '6.2'), ('GMP', '6.2.0'), ('Z3', '4.8.10'), + ('libffi', '3.3'), + ('elfutils', '0.183'), ] builddependencies = [ ('CMake', '3.18.4'), ('Python', '3.8.6'), ('Perl', '5.32.0'), - ('elfutils', '0.183'), ] assertions = True diff --git a/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0-CUDA-11.3.1.eb b/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0-CUDA-11.3.1.eb index 07a9f5ffa7fa..dead5e2ce6a0 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0-CUDA-11.3.1.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0-CUDA-11.3.1.eb @@ -55,6 +55,8 @@ dependencies = [ ('ncurses', '6.2'), ('GMP', '6.2.1'), ('Z3', '4.8.11'), + ('libffi', '3.3'), + ('elfutils', '0.185'), ('CUDA', '11.3.1', '', True), ] @@ -62,7 +64,6 @@ builddependencies = [ ('CMake', '3.20.1'), ('Python', '3.9.5'), ('Perl', '5.32.1'), - ('elfutils', '0.185'), ] assertions = True diff --git a/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0.eb index 06e4bde84c94..68bc45678143 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-10.3.0.eb @@ -54,13 +54,14 @@ dependencies = [ ('ncurses', '6.2'), ('GMP', '6.2.1'), ('Z3', '4.8.11'), + ('libffi', '3.3'), + ('elfutils', '0.185'), ] builddependencies = [ ('CMake', '3.20.1'), ('Python', '3.9.5'), ('Perl', '5.32.1'), - ('elfutils', '0.185'), ] assertions = True diff --git a/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-11.2.0.eb index e95723acdc82..ddef61754159 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-12.0.1-GCCcore-11.2.0.eb @@ -54,13 +54,14 @@ dependencies = [ ('ncurses', '6.2'), ('GMP', '6.2.1'), ('Z3', '4.8.12'), + ('libffi', '3.4.2'), + ('elfutils', '0.185'), ] builddependencies = [ ('CMake', '3.21.1'), ('Python', '3.9.6'), ('Perl', '5.34.0'), - ('elfutils', '0.185'), ] assertions = True diff --git a/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0-CUDA-11.4.1.eb b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0-CUDA-11.4.1.eb index 5ee0395dbb96..42c8ecf704e5 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0-CUDA-11.4.1.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0-CUDA-11.4.1.eb @@ -55,6 +55,8 @@ dependencies = [ ('ncurses', '6.2'), ('GMP', '6.2.1'), ('Z3', '4.8.12'), + ('libffi', '3.4.2'), + ('elfutils', '0.185'), ('CUDA', '11.4.1', '', True), ] @@ -62,7 +64,6 @@ builddependencies = [ ('CMake', '3.21.1'), ('Python', '3.9.6'), ('Perl', '5.34.0'), - ('elfutils', '0.185'), ] assertions = True diff --git a/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0.eb index 8b5f8271aebc..a2dc6f480379 100644 --- a/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.2.0.eb @@ -54,13 +54,14 @@ dependencies = [ ('ncurses', '6.2'), ('GMP', '6.2.1'), ('Z3', '4.8.12'), + ('libffi', '3.4.2'), + ('elfutils', '0.185'), ] builddependencies = [ ('CMake', '3.21.1'), ('Python', '3.9.6'), ('Perl', '5.34.0'), - ('elfutils', '0.185'), ] assertions = True diff --git a/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..dd166c5e5ad6 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-13.0.1-GCCcore-11.3.0.eb @@ -0,0 +1,76 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2013-2015 Dmitri Gribenko, Ward Poelmans +# Authors:: Dmitri Gribenko +# Authors:: Ward Poelmans +# License:: GPLv2 or later, MIT, three-clause BSD. +# $Id$ +## + +name = 'Clang' +version = '13.0.1' + +homepage = 'https://clang.llvm.org/' +description = """C, C++, Objective-C compiler, based on LLVM. Does not + include C++ standard library -- use libstdc++ from GCC.""" + +# Clang also depends on libstdc++ during runtime, but this dependency is +# already specified as the toolchain. +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-%(version)s.src.tar.xz', + 'clang-%(version)s.src.tar.xz', + 'compiler-rt-%(version)s.src.tar.xz', + 'polly-%(version)s.src.tar.xz', + 'openmp-%(version)s.src.tar.xz', + # Also include the LLVM linker + 'lld-%(version)s.src.tar.xz', + 'libcxx-%(version)s.src.tar.xz', + 'libcxxabi-%(version)s.src.tar.xz', + 'clang-tools-extra-%(version)s.src.tar.xz', + 'libunwind-%(version)s.src.tar.xz', +] +checksums = [ + 'ec6b80d82c384acad2dc192903a6cf2cdbaffb889b84bfb98da9d71e630fc834', # llvm-13.0.1.src.tar.xz + '787a9e2d99f5c8720aa1773e4be009461cd30d3bd40fdd24591e473467c917c9', # clang-13.0.1.src.tar.xz + '7b33955031f9a9c5d63077dedb0f99d77e4e7c996266952c1cec55626dca5dfc', # compiler-rt-13.0.1.src.tar.xz + 'f4003e03da57b53bf206faadd0cf53f7b198c38498c605dec45743db23c10ad0', # polly-13.0.1.src.tar.xz + '6b79261371616c31fea18cd3ee1797c79ee38bcaf8417676d4fa366a24c96b4f', # openmp-13.0.1.src.tar.xz + '666af745e8bf7b680533b4d18b7a31dc7cab575b1e6e4d261922bbafd9644cfb', # lld-13.0.1.src.tar.xz + '2f446acc00bb7cfb4e866c2fa46d1b6dbf4e7d2ab62e3c3d84e56f7b9e28110f', # libcxx-13.0.1.src.tar.xz + 'db5fa6093c786051e8b1c85527240924eceb6c95eeff0a2bbc57be8422b3cef1', # libcxxabi-13.0.1.src.tar.xz + 'cc2bc8598848513fa2257a270083e986fd61048347eccf1d801926ea709392d0', # clang-tools-extra-13.0.1.src.tar.xz + 'e206dbf1bbe058a113bffe189386ded99a160b2443ee1e2cd41ff810f78551ba', # libunwind-13.0.1.src.tar.xz +] + +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.38'), + ('hwloc', '2.7.1'), + ('libxml2', '2.9.13'), + ('ncurses', '6.3'), + ('GMP', '6.2.1'), + ('Z3', '4.10.2'), + ('libffi', '3.4.2'), + ('elfutils', '0.187'), +] + +builddependencies = [ + ('CMake', '3.23.1'), + ('Python', '3.10.4'), + ('Perl', '5.34.1'), +] + +assertions = True +usepolly = True +build_lld = True +libcxx = True +enable_rtti = True +build_extra_clang_tools = True + +skip_all_tests = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-GCCcore-8.2.0.eb b/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-GCCcore-8.2.0.eb index da15c0b64702..013966d896c9 100644 --- a/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-GCCcore-8.2.0.eb @@ -30,7 +30,7 @@ dependencies = [ start_dir = 'src' -configopts = '-DCMAKE_BUILD_TYPE=Release -DWORKBENCH_MESA_DIR=${EBROOTMESA} ' +configopts = '-DWORKBENCH_MESA_DIR=${EBROOTMESA} ' configopts += '-DWORKBENCH_USE_QT5=TRUE -Wno-dev ' # It is necessary to deactivate the SIMD optimization in order to build diff --git a/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-foss-2017b.eb b/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-foss-2017b.eb index bb404ae72ba8..6ea34df49320 100644 --- a/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-foss-2017b.eb +++ b/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-foss-2017b.eb @@ -28,7 +28,7 @@ dependencies = [ start_dir = 'src' -configopts = '-DCMAKE_BUILD_TYPE=Release -DWORKBENCH_MESA_DIR=${EBROOTMESA} ' +configopts = '-DWORKBENCH_MESA_DIR=${EBROOTMESA} ' configopts += '-DWORKBENCH_USE_QT5=TRUE -Wno-dev ' # It is necessary to deactivate the SIMD optimization in order to build diff --git a/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-intel-2017b.eb b/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-intel-2017b.eb index af1463696909..c8b593dcf4ba 100644 --- a/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-intel-2017b.eb +++ b/easybuild/easyconfigs/c/ConnectomeWorkbench/ConnectomeWorkbench-1.3.2-intel-2017b.eb @@ -28,7 +28,7 @@ dependencies = [ start_dir = 'src' -configopts = '-DCMAKE_BUILD_TYPE=Release -DWORKBENCH_MESA_DIR=${EBROOTMESA} ' +configopts = '-DWORKBENCH_MESA_DIR=${EBROOTMESA} ' configopts += '-DWORKBENCH_USE_QT5=TRUE -Wno-dev ' # It is necessary to deactivate the SIMD optimization in order to build diff --git a/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2019b.eb b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2019b.eb new file mode 100644 index 000000000000..60a7b6fd9eaa --- /dev/null +++ b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2019b.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'CoordgenLibs' +version = '3.0.1' + +homepage = 'https://github.com/schrodinger/coordgenlibs' +description = "Schrodinger-developed 2D Coordinate Generation" + +toolchain = {'name': 'gompi', 'version': '2019b'} + +source_urls = ['https://github.com/schrodinger/coordgenlibs/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['737fd081bcb8a6913aa00b375be96458fe2821a58209c98e7a7e86a64d73a900'] + +builddependencies = [('CMake', '3.15.3')] + +dependencies = [ + ('Boost', '1.71.0'), + ('maeparser', '1.3.0'), +] + +configopts = "-Dmaeparser_DIR=$EBROOTMAEPARSER/lib/cmake" + +# work around compiler warning treated as error by stripping out use of -Werror +prebuildopts = "sed -i 's/-Werror//g' CMakeFiles/coordgen.dir/flags.make && " + +sanity_check_paths = { + 'files': ['lib/libcoordgen.%s' % SHLIB_EXT], + 'dirs': ['include/coordgen', 'lib/cmake'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2021a.eb b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2021a.eb new file mode 100644 index 000000000000..75ff2d354dcb --- /dev/null +++ b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2021a.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'CoordgenLibs' +version = '3.0.1' + +homepage = 'https://github.com/schrodinger/coordgenlibs' +description = "Schrodinger-developed 2D Coordinate Generation" + +toolchain = {'name': 'gompi', 'version': '2021a'} + +source_urls = ['https://github.com/schrodinger/coordgenlibs/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['737fd081bcb8a6913aa00b375be96458fe2821a58209c98e7a7e86a64d73a900'] + +builddependencies = [('CMake', '3.20.1')] + +dependencies = [ + ('Boost', '1.76.0'), + ('maeparser', '1.3.0'), +] + +configopts = "-Dmaeparser_DIR=$EBROOTMAEPARSER/lib/cmake" + +# work around compiler warning treated as error by stripping out use of -Werror +prebuildopts = "sed -i 's/-Werror//g' CMakeFiles/coordgen.dir/flags.make && " + +sanity_check_paths = { + 'files': ['lib/libcoordgen.%s' % SHLIB_EXT], + 'dirs': ['include/coordgen', 'lib/cmake'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2022a.eb b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2022a.eb new file mode 100644 index 000000000000..bab82cf314a2 --- /dev/null +++ b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2022a.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'CoordgenLibs' +version = '3.0.1' + +homepage = 'https://github.com/schrodinger/coordgenlibs' +description = "Schrodinger-developed 2D Coordinate Generation" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://github.com/schrodinger/coordgenlibs/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['737fd081bcb8a6913aa00b375be96458fe2821a58209c98e7a7e86a64d73a900'] + +builddependencies = [('CMake', '3.23.1')] + +dependencies = [ + ('Boost', '1.79.0'), + ('maeparser', '1.3.0'), +] + +configopts = "-Dmaeparser_DIR=$EBROOTMAEPARSER/lib/cmake" + +# work around compiler warning treated as error by stripping out use of -Werror +prebuildopts = "sed -i 's/-Werror//g' CMakeFiles/coordgen.dir/flags.make && " + +sanity_check_paths = { + 'files': ['lib/libcoordgen.%s' % SHLIB_EXT], + 'dirs': ['include/coordgen', 'lib/cmake'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-iimpi-2020a.eb b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-iimpi-2020a.eb new file mode 100644 index 000000000000..e08d7e569be1 --- /dev/null +++ b/easybuild/easyconfigs/c/CoordgenLibs/CoordgenLibs-3.0.1-iimpi-2020a.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'CoordgenLibs' +version = '3.0.1' + +homepage = 'https://github.com/schrodinger/coordgenlibs' +description = "Schrodinger-developed 2D Coordinate Generation" + +toolchain = {'name': 'iimpi', 'version': '2020a'} + +source_urls = ['https://github.com/schrodinger/coordgenlibs/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['737fd081bcb8a6913aa00b375be96458fe2821a58209c98e7a7e86a64d73a900'] + +builddependencies = [('CMake', '3.16.4')] + +dependencies = [ + ('Boost', '1.72.0'), + ('maeparser', '1.3.0'), +] + +configopts = "-Dmaeparser_DIR=$EBROOTMAEPARSER/lib/cmake" + +# work around compiler warning treated as error by stripping out use of -Werror +prebuildopts = "sed -i 's/-Werror//g' CMakeFiles/coordgen.dir/flags.make && " + +sanity_check_paths = { + 'files': ['lib/libcoordgen.%s' % SHLIB_EXT], + 'dirs': ['include/coordgen', 'lib/cmake'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CppUnit/CppUnit-1.15.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/CppUnit/CppUnit-1.15.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..4fcb8d0cae67 --- /dev/null +++ b/easybuild/easyconfigs/c/CppUnit/CppUnit-1.15.1-GCCcore-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'CppUnit' +version = '1.15.1' + +homepage = 'https://freedesktop.org/wiki/Software/cppunit/' + +description = """ + CppUnit is the C++ port of the famous JUnit framework for unit testing. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://dev-www.libreoffice.org/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['89c5c6665337f56fd2db36bc3805a5619709d51fb136e51937072f63fcc717a7'] + +builddependencies = [ + ('binutils', '2.38'), +] + +sanity_check_paths = { + 'files': ['lib/libcppunit.a', 'lib/libcppunit.%s' % SHLIB_EXT, + 'lib/pkgconfig/cppunit.pc'], + 'dirs': ['bin', 'include/cppunit', 'share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/CrystFEL/CrystFEL-0.8.0-foss-2019a.eb b/easybuild/easyconfigs/c/CrystFEL/CrystFEL-0.8.0-foss-2019a.eb new file mode 100644 index 000000000000..64d2a0bc9d19 --- /dev/null +++ b/easybuild/easyconfigs/c/CrystFEL/CrystFEL-0.8.0-foss-2019a.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'CrystFEL' +version = '0.8.0' + +homepage = 'http://www.desy.de/~twhite/crystfel/' +description = """CrystFEL is a suite of programs for processing diffraction data acquired "serially" in a "snapshot" +manner, such as when using the technique of Serial Femtosecond Crystallography (SFX) with a free-electron laser +source.""" + +toolchain = {'name': 'foss', 'version': '2019a'} + +source_urls = ['http://www.desy.de/~twhite/crystfel/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6139b818079a16aa4da90344d4f413810e741c321013a1d6980c01f5d79c7b3a'] + +builddependencies = [ + ('CMake', '3.13.3'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('HDF5', '1.10.5'), + ('GSL', '2.5'), + ('LibTIFF', '4.0.10'), + ('ncurses', '6.1'), + ('GLib', '2.60.1'), + ('GTK+', '3.24.8'), + ('cairo', '1.16.0'), + ('Gdk-Pixbuf', '2.38.1'), + ('FFTW', '3.3.8'), + ('util-linux', '2.33'), + ('zlib', '1.2.11'), +] + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib64/libcrystfel.%s' % SHLIB_EXT] + + ['bin/' + b for b in ['ambigator', 'cell_explorer', 'check_hkl', 'compare_hkl', 'geoptimiser', + 'get_hkl', 'hdfsee', 'indexamajig', 'list_events', 'make_pixelmap', 'partialator', + 'partial_sim', 'pattern_sim', 'process_hkl', 'render_hkl', 'whirligig']], + 'dirs': ['share/doc/crystfel/scripts/'] +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/c/CrystFEL/CrystFEL-0.8.0-intel-2019a.eb b/easybuild/easyconfigs/c/CrystFEL/CrystFEL-0.8.0-intel-2019a.eb new file mode 100644 index 000000000000..a0ae2b7bb562 --- /dev/null +++ b/easybuild/easyconfigs/c/CrystFEL/CrystFEL-0.8.0-intel-2019a.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'CrystFEL' +version = '0.8.0' + +homepage = 'http://www.desy.de/~twhite/crystfel/' +description = """CrystFEL is a suite of programs for processing diffraction data acquired "serially" in a "snapshot" +manner, such as when using the technique of Serial Femtosecond Crystallography (SFX) with a free-electron laser +source.""" + +toolchain = {'name': 'intel', 'version': '2019a'} + +source_urls = ['http://www.desy.de/~twhite/crystfel/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6139b818079a16aa4da90344d4f413810e741c321013a1d6980c01f5d79c7b3a'] + +builddependencies = [ + ('CMake', '3.13.3'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('HDF5', '1.10.5'), + ('GSL', '2.5'), + ('LibTIFF', '4.0.10'), + ('ncurses', '6.1'), + ('GLib', '2.60.1'), + ('GTK+', '3.24.8'), + ('cairo', '1.16.0'), + ('Gdk-Pixbuf', '2.38.1'), + ('FFTW', '3.3.8'), + ('util-linux', '2.33'), + ('zlib', '1.2.11'), +] + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib64/libcrystfel.%s' % SHLIB_EXT] + + ['bin/' + b for b in ['ambigator', 'cell_explorer', 'check_hkl', 'compare_hkl', 'geoptimiser', + 'get_hkl', 'hdfsee', 'indexamajig', 'list_events', 'make_pixelmap', 'partialator', + 'partial_sim', 'pattern_sim', 'process_hkl', 'render_hkl', 'whirligig']], + 'dirs': ['share/doc/crystfel/scripts/'] +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/c/c-ares/c-ares-1.18.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/c/c-ares/c-ares-1.18.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..aacc900a81e2 --- /dev/null +++ b/easybuild/easyconfigs/c/c-ares/c-ares-1.18.1-GCCcore-11.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'c-ares' +version = '1.18.1' + +homepage = 'https://c-ares.org/' +description = "c-ares is a C library for asynchronous DNS requests (including name resolves)" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +github_account = 'c-ares' +source_urls = [GITHUB_SOURCE] +sources = ['%s-%s.tar.gz' % (name.replace('-', ''), version.replace('.', '_'))] +checksums = ['414872549eec4e221b576693fdc9c9bce44ff794d0f1f06f2515b56a7f6ec9c9'] + +builddependencies = [ + ('binutils', '2.38'), + ('Autotools', '20220317'), +] + +preconfigopts = 'autoreconf -i -f &&' + +sanity_check_paths = { + 'files': ['lib/libcares.a', 'lib/libcares.%s' % SHLIB_EXT, 'lib/pkgconfig/libcares.pc'], + 'dirs': ['include', 'share/man'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/cURL/cURL-7.84.0-GCCcore-12.1.0.eb b/easybuild/easyconfigs/c/cURL/cURL-7.84.0-GCCcore-12.1.0.eb new file mode 100644 index 000000000000..69ff9b827888 --- /dev/null +++ b/easybuild/easyconfigs/c/cURL/cURL-7.84.0-GCCcore-12.1.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'cURL' +version = '7.84.0' + +homepage = 'https://curl.haxx.se' + +description = """ + libcurl is a free and easy-to-use client-side URL transfer library, + supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, + LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. + libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP + form based upload, proxies, cookies, user+password authentication (Basic, + Digest, NTLM, Negotiate, Kerberos), file transfer resume, http proxy tunneling + and more. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.1.0'} + +source_urls = ['https://curl.haxx.se/download/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['3c6893d38d054d4e378267166858698899e9d87258e8ff1419d020c395384535'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('OpenSSL', '1.1', '', True), +] + +configopts = '--with-zlib ' +configopts += '--with-ssl=$EBROOTOPENSSL ' + +modextravars = {'CURL_INCLUDES': '%(installdir)s/include'} + +sanity_check_paths = { + 'files': ['bin/curl', 'lib/libcurl.a', 'lib/libcurl.%s' % SHLIB_EXT], + 'dirs': ['lib/pkgconfig', 'include/curl'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/ccache/ccache-4.6.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/c/ccache/ccache-4.6.1-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..355a2da891f3 --- /dev/null +++ b/easybuild/easyconfigs/c/ccache/ccache-4.6.1-GCCcore-11.2.0.eb @@ -0,0 +1,47 @@ +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos +# License:: MIT/GPL +# Updated to 4.6.1: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeNinja' + +name = 'ccache' +version = '4.6.1' + +homepage = 'https://ccache.dev/' +description = """Ccache (or “ccache”) is a compiler cache. It speeds up recompilation by +caching previous compilations and detecting when the same compilation is being done again""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/ccache/ccache/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['59b28a57c3a45e48d6049001999c9f94cd4d3e9b0196994bed9a6a7437ffa3bc'] + +osdependencies = [('glibc-static', 'libc6-dev', 'glibc-devel')] + +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.22.1'), + ('Ninja', '1.10.2'), + ('zstd', '1.5.0', ), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('hiredis', '1.0.2'), +] + +# use BFD linker rather than default ld.gold (required on CentOS 8) +preconfigopts = 'LDFLAGS=" -fuse-ld=bfd"' +configopts = '-DENABLE_DOCUMENTATION=OFF -DENABLE_IPO=ON -DZSTD_LIBRARY="$EBROOTZSTD/lib/libzstd.a" ' +# disable hunt for faster linker, since using ld.gold may fail (on CentOS 8, for example) +configopts += '-DUSE_FASTER_LINKER=OFF' + +sanity_check_paths = { + 'files': ['bin/ccache'], + 'dirs': [] +} +sanity_check_commands = ['ccache --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/cclib/cclib-1.7.2-foss-2021b.eb b/easybuild/easyconfigs/c/cclib/cclib-1.7.2-foss-2021b.eb new file mode 100644 index 000000000000..cc730a59c2a8 --- /dev/null +++ b/easybuild/easyconfigs/c/cclib/cclib-1.7.2-foss-2021b.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'cclib' +version = '1.7.2' + +homepage = 'https://cclib.github.io/' + +description = """ + cclib is a Python library that provides parsers for computational chemistry log files. + It also provides a platform to implement algorithms in a package-independent manner. +""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('periodictable', '1.6.1', { + 'checksums': ['7c501c9f73d77b1fb28cb51e85b28429c2c44a99ce3d1274894564c72d712603'], + }), + (name, version, { + 'checksums': ['bb16b422382f47ead65f92b6cd2d812409436c8306e0c5b049056337a11dfc3a'], + }), +] + +_bins = ['ccframe', 'ccget', 'ccwrite', 'cda'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _bins], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['%s --help' % x for x in _bins] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/colossalai/colossalai-0.1.8-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/c/colossalai/colossalai-0.1.8-foss-2021a-CUDA-11.3.1.eb new file mode 100644 index 000000000000..5a14fa765f1f --- /dev/null +++ b/easybuild/easyconfigs/c/colossalai/colossalai-0.1.8-foss-2021a-CUDA-11.3.1.eb @@ -0,0 +1,53 @@ +easyblock = 'PythonBundle' + +name = 'colossalai' +version = '0.1.8' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://colossalai.org/' +description = """Colossal-AI: A Unified Deep Learning System for Big Model Era""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +dependencies = [ + ('Python', '3.9.5'), + ('CUDA', '11.3.1', '', True), + ('SciPy-bundle', '2021.05'), + ('PyTorch-Lightning', '1.5.9', versionsuffix), + ('torchvision', '0.11.1', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('cfgv', '3.3.1', { + 'checksums': ['f5a830efb9ce7a445376bb66ec94c638a9787422f96264c98edc6bdeed8ab736'], + }), + ('identify', '2.5.1', { + 'checksums': ['3d11b16f3fe19f52039fb7e39c9c884b21cb1b586988114fbe42671f03de3e82'], + }), + ('nodeenv', '1.6.0', { + 'checksums': ['3ef13ff90291ba2a4a7a4ff9a979b63ffdd00a464dbe04acf0ea6471517a4c2b'], + }), + ('pre_commit', '2.19.0', { + 'checksums': ['4233a1e38621c87d9dda9808c6606d7e7ba0e087cd56d3fe03202a01d2919615'], + }), + ('commonmark', '0.9.1', { + 'checksums': ['452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60'], + }), + ('rich', '12.4.4', { + 'checksums': ['4c586de507202505346f3e32d1363eb9ed6932f0c2f63184dea88983ff4971e2'], + }), + ('invoke', '1.7.1', { + 'checksums': ['7b6deaf585eee0a848205d0b8c0014b9bf6f287a8eb798818a642dff1df14b19'], + }), + ('fabric', '2.7.1', { + 'checksums': ['76f8fef59cf2061dbd849bbce4fe49bdd820884385004b0ca59136ac3db129e4'], + }), + (name, version, { + 'checksums': ['3a2cdd4dc2d8b4832fa132a0bd1102f86c38f6865d7f119018404069d35984b2'], + }), +] + +moduleclass = 'ai' diff --git a/easybuild/easyconfigs/c/cuTENSOR/cuTENSOR-1.6.0.3-CUDA-11.3.1.eb b/easybuild/easyconfigs/c/cuTENSOR/cuTENSOR-1.6.0.3-CUDA-11.3.1.eb new file mode 100644 index 000000000000..0de8aeeda56f --- /dev/null +++ b/easybuild/easyconfigs/c/cuTENSOR/cuTENSOR-1.6.0.3-CUDA-11.3.1.eb @@ -0,0 +1,33 @@ +easyblock = 'Tarball' + +name = 'cuTENSOR' +local_shortver = '1.6.0' +version = local_shortver + '.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://developer.nvidia.com/cutensor' +description = """The cuTENSOR Library is a GPU-accelerated tensor linear algebra library providing tensor contraction, + reduction and elementwise operations.""" + +toolchain = SYSTEM + +source_urls = ['https://developer.download.nvidia.com/compute/cutensor/redist/libcutensor/linux-x86_64/'] +sources = ['libcutensor-linux-x86_64-%(version)s-archive.tar.xz'] +checksums = ['b07e32a37eee1df7d9330e6d7faf9baf7fffd58007e2544164ea30aec49a5281'] + +local_cudamajver = '11' +dependencies = [('CUDA', local_cudamajver + '.3.1')] + +sanity_check_paths = { + 'files': ['include/cutensor.h', 'include/cutensor/types.h', + 'lib/%s/libcutensor.%s' % (local_cudamajver, SHLIB_EXT), + 'lib/%s/libcutensor_static.a' % local_cudamajver], + 'dirs': [], +} + +modextrapaths = { + 'LD_LIBRARY_PATH': ['lib/%s' % local_cudamajver], + 'LIBRARY_PATH': ['lib/%s' % local_cudamajver], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.2.0.eb b/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.2.0.eb index f3ffcc20e05a..31fce71f997a 100644 --- a/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.2.0.eb @@ -23,6 +23,7 @@ toolchain = {'name': 'GCCcore', 'version': '10.2.0'} builddependencies = [('binutils', '2.35')] dependencies = [ + ('pigz', '2.6'), ('Python', '3.8.6'), ('python-isal', '0.11.1'), ] diff --git a/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.3.0.eb b/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.3.0.eb index 4477ce270738..49b3dd7c2a9c 100644 --- a/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/c/cutadapt/cutadapt-3.4-GCCcore-10.3.0.eb @@ -23,6 +23,7 @@ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} builddependencies = [('binutils', '2.36.1')] dependencies = [ + ('pigz', '2.6'), ('Python', '3.9.5'), ('python-isal', '0.11.0'), ] diff --git a/easybuild/easyconfigs/c/cutadapt/cutadapt-3.5-GCCcore-11.2.0.eb b/easybuild/easyconfigs/c/cutadapt/cutadapt-3.5-GCCcore-11.2.0.eb index 7b7603dba948..87a8e6ff5d9a 100644 --- a/easybuild/easyconfigs/c/cutadapt/cutadapt-3.5-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/c/cutadapt/cutadapt-3.5-GCCcore-11.2.0.eb @@ -23,6 +23,7 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} builddependencies = [('binutils', '2.37')] dependencies = [ + ('pigz', '2.6'), ('Python', '3.9.6'), ('python-isal', '0.11.1'), ] diff --git a/easybuild/easyconfigs/d/DB/DB-18.1.40-GCCcore-12.1.0.eb b/easybuild/easyconfigs/d/DB/DB-18.1.40-GCCcore-12.1.0.eb new file mode 100644 index 000000000000..d33d1cd63053 --- /dev/null +++ b/easybuild/easyconfigs/d/DB/DB-18.1.40-GCCcore-12.1.0.eb @@ -0,0 +1,33 @@ +name = 'DB' +version = '18.1.40' + +homepage = 'https://www.oracle.com/technetwork/products/berkeleydb' + +description = """Berkeley DB enables the development of custom data management + solutions, without the overhead traditionally associated with such custom + projects.""" + +toolchain = {'name': 'GCCcore', 'version': '12.1.0'} + +# use http to allow auto-downloading... +source_urls = ['http://download.oracle.com/berkeley-db/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_fix_doc_install.patch'] +checksums = [ + '0cecb2ef0c67b166de93732769abdeba0555086d51de1090df325e18ee8da9c8', # db-18.1.40.tar.gz + '441f48568156f72f02a8662998d293cc7edad687604b4f8af722f21c6db2a52d', # DB-18.1.40_fix_doc_install.patch +] + +builddependencies = [('binutils', '2.38')] + +dependencies = [('OpenSSL', '1.1', '', True)] + +sanity_check_paths = { + 'files': ['bin/db_%s' % x for x in ['archive', 'checkpoint', 'convert', 'deadlock', 'dump', 'hotbackup', + 'load', 'log_verify', 'printlog', 'recover', 'replicate', 'stat', + 'tuner', 'upgrade', 'verify']] + + ['include/db.h', 'lib/libdb.a', 'lib/libdb.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/d/Dakota/Dakota-6.16.0-boost177-dllimport.patch b/easybuild/easyconfigs/d/Dakota/Dakota-6.16.0-boost177-dllimport.patch new file mode 100644 index 000000000000..db46f2f16046 --- /dev/null +++ b/easybuild/easyconfigs/d/Dakota/Dakota-6.16.0-boost177-dllimport.patch @@ -0,0 +1,15 @@ +# Author: Jiri Furst +# Boost dll::import was renamed to dll::import_symbol +# see https://github.com/boostorg/dll/commit/6b2e3c7f660199f2bb0d69b667a38ee21cd49626 + +--- dakota-6.16.0-public-src-cli/src/PluginInterface.cpp.orig 2022-07-20 11:26:50.680437606 +0200 ++++ dakota-6.16.0-public-src-cli/src/PluginInterface.cpp 2022-07-20 11:27:59.736433721 +0200 +@@ -111,7 +111,7 @@ + { + if (pluginInterface) return; + try { +- pluginInterface = boost::dll::import ++ pluginInterface = boost::dll::import_symbol + (pluginPath, + "dakota_interface_plugin" // name of the symbol to import + // TODO: append .dll, .so, .dylib via diff --git a/easybuild/easyconfigs/d/Dakota/Dakota-6.16.0-foss-2021b.eb b/easybuild/easyconfigs/d/Dakota/Dakota-6.16.0-foss-2021b.eb new file mode 100644 index 000000000000..26d9e284228c --- /dev/null +++ b/easybuild/easyconfigs/d/Dakota/Dakota-6.16.0-foss-2021b.eb @@ -0,0 +1,70 @@ +# /!\ IMPORTANT: you need at least 8 cores to complete successfully the tests +# Author: Jir Furst +# Based on Dakota 6.15 easyconfig by Sebastien Varrette (Falkor) +easyblock = 'CMakeMake' + +name = 'Dakota' +version = '6.16.0' + +homepage = "https://dakota.sandia.gov/" +description = """ + The Dakota project delivers both state-of-the-art research and robust, usable + software for optimization and UQ. Broadly, the Dakota software's advanced + parametric analyses enable design exploration, model calibration, risk + analysis, and quantification of margins and uncertainty with computational + models. +""" + +toolchain = {'name': 'foss', 'version': '2021b'} +# Disable architecture optimization, otherwise the basic tests fail +toolchainopts = {'pic': True, 'usempi': True, 'optarch': False} + +source_urls = ['https://dakota.sandia.gov/sites/default/files/distributions/public/'] +sources = ["%(namelower)s-%(version_major_minor)s.0-public-src-cli.tar.gz"] +patches = ["%(name)s-%(version)s-boost177-dllimport.patch"] +checksums = [ + '49684ade2a937465d85b0fc69c96408be38bc1603ed2e7e8156d93eee3567d2f', # dakota-6.16.0-public-src-cli.tar.gz + '23aa52a4fe4267ba65368597b2b6c9e6e4bd4a1c8c4f1383055d73602ae9cc2d', # Dakota-6.16.0-boost177-dllimport.patch +] + +dependencies = [ + ('Boost', '1.77.0'), + ('Perl', '5.34.0'), + ('Python', '3.9.6'), + ('HDF5', '1.12.1'), + ('GSL', '2.7'), +] + +builddependencies = [ + ('CMake', '3.21.1') +] + +separate_build_dir = True +build_shared_libs = True + +# disable GUI +configopts = "-DHAVE_X_GRAPHICS=OFF " +# set other dependencies +configopts += "-DBLAS_LIBS=${EBROOTFLEXIBLAS}/lib/libflexiblas.%s " % SHLIB_EXT +configopts += "-DLAPACK_LIBS=${EBROOTFLEXIBLAS}/lib/libflexiblas.%s " % SHLIB_EXT +configopts += "-DDAKOTA_HAVE_MPI=ON " +configopts += "-DBoost_NO_SYSTEM_PATHS=ON " +configopts += "-DDAKOTA_HAVE_HDF5=ON " +configopts += "-DDAKOTA_HAVE_GSL=ON " + +runtest = ' test ARGS="-L AcceptanceTest -j %(parallel)s" ' + +# Run install step in parallel +installopts = ' -j %(parallel)s ' + +sanity_check_paths = { + 'files': ["bin/dakota"], + 'dirs': [] +} + +sanity_check_commands = [ + "dakota -v", + "dakota -h", +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/d/Dalton/Dalton-2016-intel-2017b-i8.eb b/easybuild/easyconfigs/d/Dalton/Dalton-2016-intel-2017b-i8.eb index 0c4d722d9217..0653b39665e2 100644 --- a/easybuild/easyconfigs/d/Dalton/Dalton-2016-intel-2017b-i8.eb +++ b/easybuild/easyconfigs/d/Dalton/Dalton-2016-intel-2017b-i8.eb @@ -46,8 +46,7 @@ builddependencies = [('CMake', '3.9.5')] separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=RELEASE ' -configopts += '-DENABLE_MPI=ON ' +configopts = '-DENABLE_MPI=ON ' configopts += '-DENABLE_OMP=ON ' # Only enable for BLAS/LAPACK having 8 byte integers (basically MKL) adjust the configopts 'i8' option accordingly configopts += '-DENABLE_64BIT_INTEGERS=ON ' diff --git a/easybuild/easyconfigs/d/Detectron2/Detectron2-0.6-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/d/Detectron2/Detectron2-0.6-foss-2021a-CUDA-11.3.1.eb new file mode 100644 index 000000000000..3cfdd8563792 --- /dev/null +++ b/easybuild/easyconfigs/d/Detectron2/Detectron2-0.6-foss-2021a-CUDA-11.3.1.eb @@ -0,0 +1,78 @@ +easyblock = 'PythonBundle' + +name = 'Detectron2' +version = '0.6' +versionsuffix = '-CUDA-%(cudaver)s' + +# WARNING: installation with CUDA requires a system with an actual GPU +# check in your build system that torch.cuda.is_available() is True + +homepage = "https://github.com/facebookresearch/detectron2" +description = """Detectron2 is Facebook AI Research's next generation library that provides +state-of-the-art detection and segmentation algorithms. It is the successor of +Detectron and maskrcnn-benchmark. It supports a number of computer vision +research projects and production applications in Facebook.""" +github_account = 'facebookresearch' + +toolchain = {'name': 'foss', 'version': '2021a'} + +builddependencies = [ + ('Ninja', '1.10.2'), +] + +dependencies = [ + ('CUDA', '11.3.1', '', True), + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('PyTorch', '1.10.0', versionsuffix), + ('torchvision', '0.11.3', versionsuffix), + ('tensorboard', '2.8.0'), + ('Hydra', '1.1.1'), # provides hydra-core, omegaconf + ('matplotlib', '3.4.2'), + ('OpenCV', '4.5.3', versionsuffix + '-contrib'), + ('pycocotools', '2.0.4'), + ('pydot', '1.4.2'), + ('tqdm', '4.61.2'), + ('YACS', '0.1.8'), + ('boto3', '1.20.13'), # needed by iopath + ('PyYAML', '5.4.1'), # needed by fvcore +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('mypy_extensions', '0.4.3', { + 'checksums': ['2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8'], + }), + ('pathspec', '0.9.0', { + 'checksums': ['e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1'], + }), + ('black', '21.4b2', { + 'checksums': ['fc9bcf3b482b05c1f35f6a882c079dc01b9c7795827532f4cc43c0ec88067bbc'], + }), + ('cloudpickle', '2.0.0', { + 'checksums': ['5cd02f3b417a783ba84a4ec3e290ff7929009fe51f6405423cfccfadd43ba4a4'], + }), + ('termcolor', '1.1.0', { + 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], + }), + ('fvcore', '0.1.5.post20220414', { + 'checksums': ['3b95983a799047661422c01671da2fa4749f60fa947e2b0ad0520f1ebc11be43'], + }), + ('portalocker', '2.4.0', { + 'checksums': ['a648ad761b8ea27370cb5915350122cd807b820d2193ed5c9cc28f163df637f4'], + }), + ('iopath', '0.1.9', { + 'source_tmpl': '%(namelower)s-%(version)s-py3-none-any.whl', + 'checksums': ['9058ac24f0328decdf8dbe209b33074b8702a3c4d9ba2f7801d46cb61a880b6e'], + }), + ('detectron2', version, { + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['9757fed05fa32acc2116ea038185f08409d5e854573e70f41909a358b70d1004'], + 'preinstallopts': "FORCE_CUDA=1", + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/d/Detectron2/Detectron2-0.6-foss-2021a.eb b/easybuild/easyconfigs/d/Detectron2/Detectron2-0.6-foss-2021a.eb new file mode 100644 index 000000000000..ae71ba53b8be --- /dev/null +++ b/easybuild/easyconfigs/d/Detectron2/Detectron2-0.6-foss-2021a.eb @@ -0,0 +1,72 @@ +easyblock = 'PythonBundle' + +name = 'Detectron2' +version = '0.6' + +homepage = "https://github.com/facebookresearch/detectron2" +description = """Detectron2 is Facebook AI Research's next generation library that provides +state-of-the-art detection and segmentation algorithms. It is the successor of +Detectron and maskrcnn-benchmark. It supports a number of computer vision +research projects and production applications in Facebook.""" +github_account = 'facebookresearch' + +toolchain = {'name': 'foss', 'version': '2021a'} + +builddependencies = [ + ('Ninja', '1.10.2'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('PyTorch', '1.10.0'), + ('torchvision', '0.11.3'), + ('tensorboard', '2.8.0'), + ('Hydra', '1.1.1'), # provides hydra-core, omegaconf + ('matplotlib', '3.4.2'), + ('OpenCV', '4.5.3', '-contrib'), + ('pycocotools', '2.0.4'), + ('pydot', '1.4.2'), + ('tqdm', '4.61.2'), + ('YACS', '0.1.8'), + ('boto3', '1.20.13'), # needed by iopath + ('PyYAML', '5.4.1'), # needed by fvcore +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('mypy_extensions', '0.4.3', { + 'checksums': ['2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8'], + }), + ('pathspec', '0.9.0', { + 'checksums': ['e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1'], + }), + ('black', '21.4b2', { + 'checksums': ['fc9bcf3b482b05c1f35f6a882c079dc01b9c7795827532f4cc43c0ec88067bbc'], + }), + ('cloudpickle', '2.0.0', { + 'checksums': ['5cd02f3b417a783ba84a4ec3e290ff7929009fe51f6405423cfccfadd43ba4a4'], + }), + ('termcolor', '1.1.0', { + 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], + }), + ('fvcore', '0.1.5.post20220414', { + 'checksums': ['3b95983a799047661422c01671da2fa4749f60fa947e2b0ad0520f1ebc11be43'], + }), + ('portalocker', '2.4.0', { + 'checksums': ['a648ad761b8ea27370cb5915350122cd807b820d2193ed5c9cc28f163df637f4'], + }), + ('iopath', '0.1.9', { + 'source_tmpl': '%(namelower)s-%(version)s-py3-none-any.whl', + 'checksums': ['9058ac24f0328decdf8dbe209b33074b8702a3c4d9ba2f7801d46cb61a880b6e'], + }), + ('detectron2', version, { + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['9757fed05fa32acc2116ea038185f08409d5e854573e70f41909a358b70d1004'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/d/dbus-glib/dbus-glib-0.112-GCCcore-10.3.0.eb b/easybuild/easyconfigs/d/dbus-glib/dbus-glib-0.112-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..891d503ec8ff --- /dev/null +++ b/easybuild/easyconfigs/d/dbus-glib/dbus-glib-0.112-GCCcore-10.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'dbus-glib' +version = '0.112' + +homepage = 'https://dbus.freedesktop.org/doc/dbus-glib' +description = """D-Bus is a message bus system, a simple way for applications to talk to one another.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://dbus.freedesktop.org/releases/dbus-glib'] +sources = [SOURCE_TAR_GZ] +checksums = ['7d550dccdfcd286e33895501829ed971eeb65c614e73aadb4a08aeef719b143a'] + +builddependencies = [ + ('binutils', '2.36.1'), + ('pkg-config', '0.29.2'), + ('Python', '3.9.5'), # Python is needed for building against GLib. +] + +dependencies = [ + ('GLib', '2.68.2'), + ('DBus', '1.13.18'), + ('expat', '2.2.9'), +] + +sanity_check_paths = { + 'files': ['bin/dbus-binding-tool', 'lib/libdbus-glib-1.%s' % SHLIB_EXT, 'lib/libdbus-glib-1.a'], + 'dirs': ['include', 'share'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/detectron2/detectron2-0.6-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/d/detectron2/detectron2-0.6-foss-2021a-CUDA-11.3.1.eb deleted file mode 100644 index a0a28824b8b5..000000000000 --- a/easybuild/easyconfigs/d/detectron2/detectron2-0.6-foss-2021a-CUDA-11.3.1.eb +++ /dev/null @@ -1,105 +0,0 @@ -easyblock = "PythonBundle" - -name = "detectron2" -version = "0.6" -versionsuffix = "-CUDA-%(cudaver)s" - -homepage = "https://github.com/facebookresearch/detectron2" -description = "Detectron2 is a platform for object detection, segmentation and other visual recognition tasks." - -toolchain = {'name': 'foss', 'version': '2021a'} - -dependencies = [ - ('Python', '3.9.5'), - ('CUDA', '11.3.1', '', True), - ('PyTorch', '1.10.0', versionsuffix), - ('torchvision', '0.11.1', versionsuffix), - ('Hydra', '1.1.1'), - ('tqdm', '4.61.2'), - ('YACS', '0.1.8'), - ('matplotlib', '3.4.2'), - ('pycocotools', '2.0.4'), - ('pydot', '1.4.2'), - ('tensorboard', '2.8.0'), - ('OpenCV', '4.5.3', '-CUDA-11.3.1-contrib'), -] - -exts_list = [ - ('packaging', '21.3', { - 'checksums': ['dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb'], - }), - ('poetry-core', '1.0.8', { - 'modulename': 'poetry.core', - 'checksums': ['951fc7c1f8d710a94cb49019ee3742125039fc659675912ea614ac2aa405b118'], - }), - ('poetry', '1.1.13', { - 'preinstallopts': 'sed -i "s|20.4|21.3|g" pyproject.toml &&', - 'checksums': ['b905ed610085f568aa61574e0e09260c02bff9eae12ff672af39e9f399357ac4'], - }), - ('pytest', '7.1.2', { - 'checksums': ['a06a0425453864a270bc45e71f783330a7428defb4230fb5e6a731fde06ecd45'], - }), - ('pluggy', '1.0.0', { - 'checksums': ['4224373bacce55f955a878bf9cfa763c1e360858e330072059e10bad68531159'], - }), - ('CacheControl', '0.12.11', { - 'checksums': ['a5b9fcc986b184db101aa280b42ecdcdfc524892596f606858e0b7a8b4d9e144'], - }), - ('mypy-extensions', '0.4.3', { - 'source_tmpl': 'mypy_extensions-%(version)s.tar.gz', - 'checksums': ['2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8'], - }), - ('pathspec', '0.9.0', { - 'checksums': ['e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1'], - }), - ('tomli', '2.0.1', { - 'checksums': ['de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f'], - }), - ('editables', '0.3', { - 'checksums': ['167524e377358ed1f1374e61c268f0d7a4bf7dbd046c656f7b410cde16161b1a'], - }), - ('hatchling', '0.23.0', { - 'checksums': ['c4c5beeffe575e312519ec355a3c82af4491238c1ac4eff6feac3bd471aa5282'], - }), - ('setuptools-scm', '6.4.2', { - 'source_tmpl': 'setuptools_scm-%(version)s.tar.gz', - 'checksums': ['6833ac65c6ed9711a4d5d2266f8024cfa07c533a0e55f4c12f6eff280a5a9e30'], - }), - ('hatch-vcs', '0.2.0', { - 'source_tmpl': 'hatch_vcs-%(version)s.tar.gz', - 'checksums': ['9913d733b34eec9bb0345d0626ca32165a4ad2de15d1ce643c36d09ca908abff'], - }), - ('platformdirs', '2.5.2', { - 'checksums': ['58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19'], - }), - ('black', '21.4b2', { - 'checksums': ['fc9bcf3b482b05c1f35f6a882c079dc01b9c7795827532f4cc43c0ec88067bbc'], - }), - ('cloudpickle', '2.0.0', { - 'checksums': ['5cd02f3b417a783ba84a4ec3e290ff7929009fe51f6405423cfccfadd43ba4a4'], - }), - ('termcolor', '1.1.0', { - 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], - }), - ('fvcore', '0.1.5.post20220414', { - 'checksums': ['3b95983a799047661422c01671da2fa4749f60fa947e2b0ad0520f1ebc11be43'], - }), - ('portalocker', '2.4.0', { - 'checksums': ['a648ad761b8ea27370cb5915350122cd807b820d2193ed5c9cc28f163df637f4'], - }), - ('iopath', '0.1.9', { - 'source_tmpl': '%(namelower)s-%(version)s-py3-none-any.whl', - 'unpack_sources': False, - 'checksums': ['9058ac24f0328decdf8dbe209b33074b8702a3c4d9ba2f7801d46cb61a880b6e'], - }), - (name, version, { - 'source_urls': ['https://github.com/facebookresearch/detectron2/archive/refs/tags/'], - 'sources': ['v%(version)s.tar.gz'], - 'checksums': ['9757fed05fa32acc2116ea038185f08409d5e854573e70f41909a358b70d1004'], - }), -] - -use_pip = True -sanity_pip_check = True - -moduleclass = 'vis' diff --git a/easybuild/easyconfigs/d/dotNET-Core-Runtime/dotNET-Core-Runtime-5.0.17-GCCcore-10.3.0.eb b/easybuild/easyconfigs/d/dotNET-Core-Runtime/dotNET-Core-Runtime-5.0.17-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..9200f0b1ad61 --- /dev/null +++ b/easybuild/easyconfigs/d/dotNET-Core-Runtime/dotNET-Core-Runtime-5.0.17-GCCcore-10.3.0.eb @@ -0,0 +1,32 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'Tarball' + +# note: only works on recent OSs, required sufficiently recent glibc (2.14 or newer) +name = 'dotNET-Core-Runtime' +version = '5.0.17' + +homepage = 'https://www.microsoft.com/net/' +description = """.NET is a free, cross-platform, open source developer platform for building many different types + of applications.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://download.visualstudio.microsoft.com/download/pr/' + + 'e77438f6-865f-45e0-9a52-3e4b04aa609f/024a880ed4bfbfd3b9f222fec0b6aaff'] +sources = ['dotnet-runtime-%(version)s-linux-x64.tar.gz'] +checksums = ['12b44025aabf3d28242c47f84dd14237ad7f496715be55a7c5afd0fb34f66c8b'] + +dependencies = [('libunwind', '1.4.0')] + +sanity_check_paths = { + 'files': ['dotnet'], + 'dirs': ['shared/Microsoft.NETCore.App/%(version)s'], +} + +sanity_check_commands = ["dotnet --info"] + +modextrapaths = {'PATH': ['']} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.2.0.eb b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.2.0.eb index 3ac6b74f8883..e141a4203de1 100644 --- a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.2.0.eb @@ -17,10 +17,6 @@ builddependencies = [ ('CMake', '3.13.3'), ] -separate_build_dir = True - -build_type = 'Release' - # Build static lib, static lib with -fPIC and shared lib configopts = [ '', diff --git a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.3.0.eb b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.3.0.eb index 5e4a608dafd5..295ca845f6f9 100644 --- a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.4-GCCcore-8.3.0.eb @@ -17,10 +17,6 @@ builddependencies = [ ('CMake', '3.15.3'), ] -separate_build_dir = True - -build_type = 'Release' - # Build static lib, static lib with -fPIC and shared lib configopts = [ '', diff --git a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.2.0.eb b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.2.0.eb index 23fc1b1e9fbf..ba6b262e5e90 100644 --- a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.2.0.eb @@ -17,10 +17,6 @@ builddependencies = [ ('CMake', '3.18.4'), ] -separate_build_dir = True - -build_type = 'Release' - # Build static lib, static lib with -fPIC and shared lib configopts = [ '', diff --git a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.3.0.eb b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.3.0.eb index 115873f29636..80a872dea0b6 100644 --- a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-10.3.0.eb @@ -17,10 +17,6 @@ builddependencies = [ ('CMake', '3.20.1'), ] -separate_build_dir = True - -build_type = 'Release' - # Build static lib, static lib with -fPIC and shared lib configopts = [ '', diff --git a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-11.2.0.eb b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-11.2.0.eb index a1ba9120b647..54f1be2f0cda 100644 --- a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-11.2.0.eb @@ -17,10 +17,6 @@ builddependencies = [ ('CMake', '3.21.1'), ] -separate_build_dir = True - -build_type = 'Release' - # Build static lib, static lib with -fPIC and shared lib configopts = [ '', diff --git a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-9.3.0.eb b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-9.3.0.eb index 54a669f1a95b..e3b9916c69a3 100644 --- a/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/d/double-conversion/double-conversion-3.1.5-GCCcore-9.3.0.eb @@ -17,10 +17,6 @@ builddependencies = [ ('CMake', '3.16.4'), ] -separate_build_dir = True - -build_type = 'Release' - # Build static lib, static lib with -fPIC and shared lib configopts = [ '', diff --git a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2018b.eb b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2018b.eb index 185743cf6a62..a759779e0b18 100644 --- a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2018b.eb +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2018b.eb @@ -26,10 +26,14 @@ toolchain = {'name': 'foss', 'version': '2018b'} source_urls = ['https://github.com/DReichLab/EIG/archive'] sources = ['v%(version)s.tar.gz'] -patches = ['%(name)s-%(version)s_Fix_makefile_openblas.patch'] +patches = [ + '%(name)s-%(version)s_Fix_makefile_openblas.patch', + ('%(name)s-%(version)s_restore-ploteig.patch', 0), +] checksums = [ 'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650', # v7.2.1.tar.gz 'e49e3754f2326210114fe5a731a77c7ffd240c8a9134eb8e8e1517bfe06c71e1', # EIGENSOFT-7.2.1_Fix_makefile_openblas.patch + '8a7a0273ae4d0d3ec0c9927facd41a1a43b8540725af3bd06e007cd86afaf9e0', # EIGENSOFT-7.2.1_restore-ploteig.patch ] dependencies = [ @@ -44,10 +48,10 @@ buildopts = ' && make install' files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README'] -fix_perl_shebang_for = ['bin/*.perl'] +fix_perl_shebang_for = ['bin/*.perl', 'bin/ploteig'] sanity_check_paths = { - 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL"]], + 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL", "ploteig"]], 'dirs': [] } diff --git a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019a.eb b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019a.eb index c6554e9d20ef..fc4c22c0c96f 100644 --- a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019a.eb +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019a.eb @@ -23,10 +23,14 @@ toolchain = {'name': 'foss', 'version': '2019a'} source_urls = ['https://github.com/DReichLab/EIG/archive'] sources = ['v%(version)s.tar.gz'] -patches = ['%(name)s-%(version)s_Fix_makefile_openblas.patch'] +patches = [ + '%(name)s-%(version)s_Fix_makefile_openblas.patch', + ('%(name)s-%(version)s_restore-ploteig.patch', 0), +] checksums = [ 'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650', # v7.2.1.tar.gz 'e49e3754f2326210114fe5a731a77c7ffd240c8a9134eb8e8e1517bfe06c71e1', # EIGENSOFT-7.2.1_Fix_makefile_openblas.patch + '8a7a0273ae4d0d3ec0c9927facd41a1a43b8540725af3bd06e007cd86afaf9e0', # EIGENSOFT-7.2.1_restore-ploteig.patch ] dependencies = [ @@ -41,10 +45,10 @@ buildopts = ' && make install' files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README'] -fix_perl_shebang_for = ['bin/*.perl'] +fix_perl_shebang_for = ['bin/*.perl', 'bin/ploteig'] sanity_check_paths = { - 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL"]], + 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL", "ploteig"]], 'dirs': [] } diff --git a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019b.eb b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019b.eb index 928fcacc43a5..c8b8ea7f6610 100644 --- a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019b.eb +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019b.eb @@ -26,10 +26,14 @@ toolchain = {'name': 'foss', 'version': '2019b'} source_urls = ['https://github.com/DReichLab/EIG/archive'] sources = ['v%(version)s.tar.gz'] -patches = ['%(name)s-%(version)s_Fix_makefile_openblas.patch'] +patches = [ + '%(name)s-%(version)s_Fix_makefile_openblas.patch', + ('%(name)s-%(version)s_restore-ploteig.patch', 0), +] checksums = [ 'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650', # v7.2.1.tar.gz 'e49e3754f2326210114fe5a731a77c7ffd240c8a9134eb8e8e1517bfe06c71e1', # EIGENSOFT-7.2.1_Fix_makefile_openblas.patch + '8a7a0273ae4d0d3ec0c9927facd41a1a43b8540725af3bd06e007cd86afaf9e0', # EIGENSOFT-7.2.1_restore-ploteig.patch ] dependencies = [ @@ -44,10 +48,10 @@ buildopts = ' && make install' files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README'] -fix_perl_shebang_for = ['bin/*.perl'] +fix_perl_shebang_for = ['bin/*.perl', 'bin/ploteig'] sanity_check_paths = { - 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL"]], + 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL", "ploteig"]], 'dirs': [] } diff --git a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2021a.eb b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2021a.eb index 946ae3d37a68..f120ac870b6d 100644 --- a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2021a.eb +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2021a.eb @@ -26,10 +26,14 @@ toolchain = {'name': 'foss', 'version': '2021a'} source_urls = ['https://github.com/DReichLab/EIG/archive'] sources = ['v%(version)s.tar.gz'] -patches = ['%(name)s-%(version)s_Fix_makefile_openblas.patch'] +patches = [ + '%(name)s-%(version)s_Fix_makefile_openblas.patch', + ('%(name)s-%(version)s_restore-ploteig.patch', 0), +] checksums = [ 'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650', # v7.2.1.tar.gz 'e49e3754f2326210114fe5a731a77c7ffd240c8a9134eb8e8e1517bfe06c71e1', # EIGENSOFT-7.2.1_Fix_makefile_openblas.patch + '8a7a0273ae4d0d3ec0c9927facd41a1a43b8540725af3bd06e007cd86afaf9e0', # EIGENSOFT-7.2.1_restore-ploteig.patch ] dependencies = [ @@ -44,10 +48,10 @@ buildopts = 'LDLIBS="-lgsl $LIBBLAS -llapacke $LIBS" && make install' files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README'] -fix_perl_shebang_for = ['bin/*.perl'] +fix_perl_shebang_for = ['bin/*.perl', 'bin/ploteig'] sanity_check_paths = { - 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL"]], + 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL", "ploteig"]], 'dirs': [] } diff --git a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-intel-2019a.eb b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-intel-2019a.eb index 12dbbc84f757..d1a248f2e085 100644 --- a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-intel-2019a.eb +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-intel-2019a.eb @@ -23,10 +23,14 @@ toolchain = {'name': 'intel', 'version': '2019a'} source_urls = ['https://github.com/DReichLab/EIG/archive'] sources = ['v%(version)s.tar.gz'] -patches = ['%(name)s-%(version)s_Use_mkl.patch'] +patches = [ + '%(name)s-%(version)s_Use_mkl.patch', + ('%(name)s-%(version)s_restore-ploteig.patch', 0), +] checksums = [ 'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650', # v7.2.1.tar.gz 'e18c91afedec928ebedb05bc13e91baa13973dde60006af88666c40a37248f31', # EIGENSOFT-7.2.1_Use_mkl.patch + '8a7a0273ae4d0d3ec0c9927facd41a1a43b8540725af3bd06e007cd86afaf9e0', # EIGENSOFT-7.2.1_restore-ploteig.patch ] dependencies = [ @@ -41,10 +45,10 @@ buildopts = ' && make install' files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README'] -fix_perl_shebang_for = ['bin/*.perl'] +fix_perl_shebang_for = ['bin/*.perl', 'bin/ploteig'] sanity_check_paths = { - 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL"]], + 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL", "ploteig"]], 'dirs': [] } diff --git a/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1_restore-ploteig.patch b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1_restore-ploteig.patch new file mode 100644 index 000000000000..5a382a99919f --- /dev/null +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1_restore-ploteig.patch @@ -0,0 +1,234 @@ +From 7a6036bf36d8d2ed038b83d26112cdde4f383747 Mon Sep 17 00:00:00 2001 +From: Matthew Mah +Date: Mon, 5 Mar 2018 15:14:52 -0500 +Subject: [PATCH] Restore ploteig in bin directory with Nick's version. Fixes + #25. + +--- + bin/ploteig | 217 ++++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 217 insertions(+) + create mode 100755 bin/ploteig + +diff --git a/bin/ploteig b/bin/ploteig +new file mode 100755 +index 0000000..0871daa +--- /dev/null ++++ bin/ploteig +@@ -0,0 +1,217 @@ ++#!/usr/local/bin/perl -w ++ ++### ploteig -i eigfile -p pops -c a:b [-t title] [-s stem] [-g gstem] [-o outfile] [-x] [-k] [-y] [-z sep] -r colorstring -m xmul -n ymul ++use Getopt::Std ; ++use File::Basename ; ++ ++## pops : separated -x = make postscript and pdf -z use another separator ++## -k keep intermediate files ++## NEW if pops is a file names are read one per line ++## scaling on x, y axes ++ ++getopts('i:o:p:c:s:d:z:t:r:m:n:g:xkyq',\%opts) ; ++$postscmode = $opts{"x"} ; ++$oldkeystyle = $opts{"y"} ; ++$nopoptitle = $opts{"q"} ; ++$kflag = $opts{"k"} ; ++$keepflag = 1 if ($kflag) ; ++$keepflag = 1 unless ($postscmode) ; ++ ++$zsep = ":" ; ++if (defined $opts{"z"}) { ++ $zsep = $opts{"z"} ; ++ $zsep = "\+" if ($zsep eq "+") ; ++} ++ ++if (defined $opts{"r"}) { ++ $colorstr = $opts{"r"} ; ++ setcolor($colorstr) ; ++} ++$xmul = $opts{"m"} ; ++$xmul = 1 unless (defined $xmul) ; ++ ++$ymul = $opts{"n"} ; ++$ymul = 1 unless (defined $ymul) ; ++ ++$title = "" ; ++if (defined $opts{"t"}) { ++ $title = $opts{"t"} ; ++} ++if (defined $opts{"i"}) { ++ $infile = $opts{"i"} ; ++} ++else { ++ usage() ; ++ exit 0 ; ++} ++ ++open (FF, $infile) || die "can't open $infile\n" ; ++@L = () ; ++chomp @L ; ++$nf = 0 ; ++foreach $line (@L) { ++ next if ($line =~ /\#/) ; ++ @Z = split " ", $line ; ++ $x = @Z ; ++ $nf = $x if ($nf < $x) ; ++} ++printf "## number of fields: %d\n", $nf ; ++$popcol = $nf-1 ; ++ ++ ++if (defined $opts{"p"}) { ++ $pops = $opts{"p"} ; ++} ++else { ++ die "p parameter compulsory\n" ; ++} ++ ++$popsname = setpops ($pops) ; ++print "$popsname\n" ; ++ ++$c1 = 1; $c2 =2 ; ++if (defined $opts{"c"}) { ++ $cols = $opts{"c"} ; ++ ($c1, $c2) = split ":", $cols ; ++ die "bad c param: $cols\n" unless (defined $cols) ; ++} ++ ++$stem = "$infile.$c1:$c2" ; ++if (defined $opts{"s"}) { ++ $stem = $opts{"s"} ; ++} ++ ++if (defined $opts{"g"}) { ++ $stem = $gstem = $opts{"g"} ; ++} ++ ++$gstem = "$stem.$popsname" unless (defined $gstem) ; ++$gnfile = "$gstem.xtxt" ; ++ ++if (defined $opts{"o"}) { ++ $gnfile = $opts{"o"} ; ++} ++ ++ ++@T = () ; ## trash ++open (GG, ">$gnfile") || die "can't open $gnfile\n" ; ++print GG "## " unless ($postscmode) ; ++print GG "set terminal postscript color noenhanced\n" ; ++print GG "set title \"$title\" \n" ; ++print GG "set key outside\n" unless ($oldkeystyle) ; ++print GG "set xlabel \"eigenvector $c1\" \n" if ($xmul == 1) ; ++print GG "set xlabel \"eigenvector $c1 (* $xmul) \" \n" if ($xmul != 1) ; ++print GG "set ylabel \"eigenvector $c2\" \n" if ($ymul == 1) ; ++print GG "set ylabel \"eigenvector $c1 (* $ymul) \" \n" if ($ymul != 1) ; ++print GG "plot " ; ++$np = @P ; ++$lastpop = $P[$np-1] ; ++$d1 = $c1+1 ; ++$d2 = $c2+1 ; ++foreach $pop (@P) { ++ $dfile = "$stem:$pop" ; ++ push @T, $dfile ; ++ print GG " \"$dfile\" using (\$$d1)*$xmul:(\$$d2)*$ymul " ; ++ print GG "notitle " if (defined $nopoptitle) ; ++ print GG "title \"$pop\" " unless (defined $nopoptitle) ; ++ if (defined $COL{$pop}) { ++ $color = $COL{$pop} ; ++ print GG "lt rgb \"$color\" " ; ++ } ++ print GG ", \\\n" unless ($pop eq $lastpop) ; ++ open (YY, ">$dfile") || die "can't open $dfile\n" ; ++ foreach $line (@L) { ++ next if ($line =~ /\#/) ; ++ @Z = split " ", $line ; ++ next unless (defined $Z[$popcol]) ; ++ next unless ($Z[$popcol] eq $pop) ; ++ print YY "$line\n" ; ++ } ++ close YY ; ++} ++print GG "\n" ; ++print GG "## " if ($postscmode) ; ++print GG "pause 9999\n" ; ++close GG ; ++ ++if ($postscmode) { ++$psfile = "$stem.ps" ; ++ ++ if ($gnfile =~ /xtxt/) { ++ $psfile = $gnfile ; ++ $psfile =~ s/xtxt/ps/ ; ++ } ++system "gnuplot < $gnfile > $psfile" ; ++system "/home/np29/bin/fixgreen $psfile" ; ++system "ps2pdf $psfile " ; ++} ++unlink (@T) unless $keepflag ; ++ ++sub setcolor { ++ my ($colorst) = @_ ; ++ local ($cp, $pop, $color, @CP, $line) ; ++ if (-r $colorst) { ++ open (C1, $colorst) || die "can't open $colorst\n" ; ++ foreach $line () { ++ chomp $line ; ++ ($pop, $color) = split " ", $line ; ++ next if ($pop =~ /\#/) ; ++ next unless (defined $color) ; ++ print STDERR "setting color for $pop to $color\n" ; ++ $COL{$pop} = $color ; ++ } ++ close C1 ; ++ return ; ++ } ++ ++ @CP = split " ", $colorst ; ++ foreach $cp (@CP) { ++ ($pop, $color) = split ":", $cp ; ++ $COL{$pop} = $color ; ++ } ++} ++ ++sub usage { ++ ++print "ploteig -i eigfile -p pops -c a:b [-t title] [-s stem] [-o outfile] [-x] [-k] -c colorstringh [-m xmul] [-n ymul]\n" ; ++print "-i eigfile input file first col indiv-id last col population\n" ; ++print "## as output by smartpca in outputvecs \n" ; ++print "-c a:b a, b columns to plot. 1:2 would be common and leading 2 eigenvectors\n" ; ++print "-p pops Populations to plot. : delimited. eg -p Bantu:San:French\n" ; ++print "## pops can also be a filename. List populations 1 per line\n" ; ++print "[-s stem] stem will start various output files\n" ; ++print "[-o ofile] ofile will be gnuplot control file. Should have xtxt suffix\n"; ++print "[-x] make ps and pdf files\n" ; ++print "[-k] keep various intermediate files although -x set\n" ; ++print "## necessary if .xtxt file is to be hand edited\n" ; ++print "[-r colorstringpairs or colorstringfile]\n" ; ++print "[-g gstem] make gstem.xtxt gstem.ps gstem.pdf \n" ; ++print "[-y] put key at top right inside box (old mode)\n" ; ++print "[-t] title (legend)\n" ; ++ ++print "The xtxt file is a gnuplot file and can be easily hand edited. Intermediate files ++needed if you want to make your own plot\n" ; ++ ++} ++sub setpops { ++ my ($pops) = @_ ; ++ local (@a, $d, $b, $e) ; ++ ++ if (-e $pops) { ++ open (FF1, $pops) || die "can't open $pops\n" ; ++ @P = () ; ++ foreach $line () { ++ ($a) = split " ", $line ; ++ next unless (defined $a) ; ++ next if ($a =~ /\#/) ; ++ push @P, $a ; ++ } ++ $out = join ":", @P ; ++ print "## pops: $out\n" ; ++ ($b, $d , $e) = fileparse($pops) ; ++ return $b ; ++ } ++ @P = split $zsep, $pops ; ++ return $pops ; ++ ++} diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2021.05.001-intel-2021b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2021.05.001-intel-2021b.eb new file mode 100644 index 000000000000..38b241fe40c2 --- /dev/null +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2021.05.001-intel-2021b.eb @@ -0,0 +1,45 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Authors:: Inge Gutheil , Alan O'Cais +# License:: MIT/GPL +# +## + +name = 'ELPA' +version = '2021.05.001' + +homepage = 'https://elpa.rzg.mpg.de' +description = """Eigenvalue SoLvers for Petaflop-Applications .""" + +toolchain = {'name': 'intel', 'version': '2021b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = ['https://gitlab.mpcdf.mpg.de/elpa/elpa/-/archive/new_release_%(version)s/'] +sources = ['elpa-new_release_%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_fix_hardcoded_perl_path.patch'] +checksums = [ + 'aea66a18e87574c7c292e852e45943e16f8bc3839f456635d1d610957840d146', # elpa-new_release_2021.05.001.tar.gz + # ELPA-2021.05.001_fix_hardcoded_perl_path.patch + 'af3f8cd063100d403cb2fe53cfc85eb2d5a2ef3348a3e6d5cf2d3680ebb4ec02', +] + +builddependencies = [ + ('Autotools', '20210726'), + # remove_xcompiler script requires 'python' command, + ('Python', '3.9.6'), + ('Perl', '5.34.0'), +] + +preconfigopts = './autogen.sh && ' +# If the build is running in a batch job, make sure Intel libmpi does +# not try to use Slurm to run the MPI_THREAD test code that ELPA's +# configure is running without "mpirun". +preconfigopts += 'unset SLURM_JOBID && unset SLURM_NODELIST && unset I_MPI_PMI_LIBRARY && ' + +# When building in parallel, the file test_setup_mpi.mod is sometimes +# used before it is built, leading to an error. This must be a bug in +# the makefile affecting parallel builds. +maxparallel = 1 + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.6.0.eb b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.6.0.eb new file mode 100644 index 000000000000..7fe221247679 --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.6.0.eb @@ -0,0 +1,44 @@ +easyblock = 'EB_EasyBuildMeta' + +name = 'EasyBuild' +version = '4.6.0' + +homepage = 'https://easybuilders.github.io/easybuild' +description = """EasyBuild is a software build and installation framework + written in Python that allows you to install software in a structured, + repeatable and robust way.""" + +toolchain = SYSTEM + +source_urls = [ + # easybuild-framework + 'https://files.pythonhosted.org/packages/e8/e4/16246c2e65b477eca58a9c3e55a86822d9e1846cd38eef0d316e09f2888e/', + # easybuild-easyblocks + 'https://files.pythonhosted.org/packages/5b/7e/ebb2e41cf8462cb112e31967459fa219755e8746ad2fc1467595bff1dee8/', + # easybuild-easyconfigs + 'https://files.pythonhosted.org/packages/b0/e3/99328129438decc5974944c56e7278ddb03fe04b017c2cdf17da6b8e2c38/', +] +sources = [ + 'easybuild-framework-%(version)s.tar.gz', + 'easybuild-easyblocks-%(version)s.tar.gz', + 'easybuild-easyconfigs-%(version)s.tar.gz', +] +checksums = [ + '4010e9a0e507328a2b4bc7786c0cba81e63346b1a055fa46e2b6e67453abe30f', # easybuild-framework-4.6.0.tar.gz + 'd0e2104b3265e7f844677edb8659fd29bef4f14fab27502b8afa2b955f165756', # easybuild-easyblocks-4.6.0.tar.gz + '21e1a3681343708ceb3dbf895997de54706ec72fa7c79d17454a44720f298413', # easybuild-easyconfigs-4.6.0.tar.gz +] + +# order matters a lot, to avoid having dependencies auto-resolved (--no-deps easy_install option doesn't work?) +# EasyBuild is a (set of) Python packages, so it depends on Python +# usually, we want to use the system Python, so no actual Python dependency is listed +allow_system_deps = [('Python', SYS_PYTHON_VERSION)] + +local_pyshortver = '.'.join(SYS_PYTHON_VERSION.split('.')[:2]) + +sanity_check_paths = { + 'files': ['bin/eb'], + 'dirs': ['lib/python%s/site-packages' % local_pyshortver], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/Elk/Elk-8.5.2-foss-2022a.eb b/easybuild/easyconfigs/e/Elk/Elk-8.5.2-foss-2022a.eb new file mode 100644 index 000000000000..939ca43c8705 --- /dev/null +++ b/easybuild/easyconfigs/e/Elk/Elk-8.5.2-foss-2022a.eb @@ -0,0 +1,63 @@ +easyblock = 'MakeCp' + +name = 'Elk' +version = '8.5.2' + +homepage = 'http://elk.sourceforge.net/' +description = """An all-electron full-potential linearised +augmented-plane wave (FP-LAPW) code with many advanced features. Written +originally at Karl-Franzens-Universität Graz as a milestone of the +EXCITING EU Research and Training Network, the code is designed to be as +simple as possible so that new developments in the field of density +functional theory (DFT) can be added quickly and reliably. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True, 'openmp': True, 'opt': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TGZ] +checksums = ['2d9d98ddadb8a6e031d32cb0957f41bc53099c286874bd1b38a08164352de7c0'] + +dependencies = [ + ('libxc', '5.2.3'), + ('Wannier90', '3.1.0'), +] + + +# make.inc file is generated interactively by "setup" command, creating it here +prebuildopts = 'echo "F90_OPTS = -std=legacy $FFLAGS" > make.inc && ' +prebuildopts += 'echo "F77_OPTS = -std=legacy $FFLAGS" >> make.inc && ' +prebuildopts += 'echo "LIB_LPK = $LIBLAPACK" >> make.inc && ' +prebuildopts += 'echo "LIB_FFT = $LIBFFT" >> make.inc && ' +prebuildopts += 'echo "LIB_W90 = -lwannier" >> make.inc && ' +prebuildopts += 'echo "LIB_libxc = -lxcf90 -lxc" >> make.inc && ' +prebuildopts += 'echo "SRC_libxc = libxcf90.f90 libxcifc.f90" >> make.inc && ' +prebuildopts += 'echo "SRC_FFT = zfftifc_fftw.f90" >> make.inc && ' +prebuildopts += 'echo "SRC_OBLAS = oblas_stub.f90" >> make.inc && ' +prebuildopts += 'echo "SRC_BLIS = blis_stub.f90" >> make.inc && ' +prebuildopts += 'echo "SRC_MKL = mkl_stub.f90" >> make.inc && ' + +buildopts = 'all' + +runtest = 'test' + +parallel = 1 + +files_to_copy = [( + [ + 'src/elk', 'src/spacegroup/spacegroup', 'src/eos/eos', + 'utilities/elk-bands/elk-bands', 'utilities/elk-optics/elk-optics.py', + 'utilities/wien2k-elk/se.pl' + ], 'bin' +)] + +sanity_check_paths = { + 'files': ['bin/elk', 'bin/spacegroup', 'bin/eos'], + 'dirs': [] +} + +# Elk 8.5.2 reports its version as "8.5.02", so we test only major+minor versions +sanity_check_commands = ["elk | grep '^Elk code version %(version_major)s.%(version_minor)s'"] + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/e/Emacs/Emacs-28.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/e/Emacs/Emacs-28.1-GCCcore-10.2.0.eb new file mode 100644 index 000000000000..9bfb1e644e7a --- /dev/null +++ b/easybuild/easyconfigs/e/Emacs/Emacs-28.1-GCCcore-10.2.0.eb @@ -0,0 +1,49 @@ +# +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Author: Robert Mijakovic +# reciPY derived from preexisting reciPy for GCCcore-9.2.0. +# Modder: Ben Langenberg +# +easyblock = 'ConfigureMake' + +name = 'Emacs' +version = '28.1' + +homepage = 'https://www.gnu.org/software/emacs/' +description = """GNU Emacs is an extensible, customizable text editor--and more. + At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming + language with extensions to support text editing.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +sources = [SOURCELOWER_TAR_GZ] +source_urls = [GNU_SOURCE] +checksums = ['1439bf7f24e5769f35601dbf332e74dfc07634da6b1e9500af67188a92340a28'] + +builddependencies = [ + ('binutils', '2.35'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.5'), + ('ncurses', '6.2'), + ('LibTIFF', '4.1.0'), + ('X11', '20201008'), + ('GTK+', '3.24.23'), +] + +# If you want to use Emacs plugins you must install the gnutls command line tools +# osdependencies = [('gnutls-utils')] + +configopts = '--with-gif=no --with-tiff=yes --with-x-toolkit=yes --with-xpm=yes --with-gnutls=no ' + +sanity_check_paths = { + 'files': ["bin/emacs", "bin/emacs-%(version)s", "bin/emacsclient", "bin/etags"], + 'dirs': [] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/Embree/Embree-3.13.4.eb b/easybuild/easyconfigs/e/Embree/Embree-3.13.4.eb new file mode 100644 index 000000000000..c78954aadaab --- /dev/null +++ b/easybuild/easyconfigs/e/Embree/Embree-3.13.4.eb @@ -0,0 +1,21 @@ +easyblock = 'Tarball' + +name = 'Embree' +version = '3.13.4' + +homepage = 'https://embree.github.io' +description = "High Performance Ray Tracing Kernels" + +toolchain = SYSTEM + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s/'] +sources = ['%(namelower)s-%(version)s.x86_64.linux.tar.gz'] +checksums = ['c9a7e9977e170a693117c3521f28152a6e2f2904ab28156a7a8baee339f96c43'] + +sanity_check_paths = { + 'files': ['bin/convert', 'include/embree3/rtcore.h', + 'include/embree3/rtcore_common.h', 'lib64/libembree3.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include/embree3', 'lib64/cmake', 'share/man/man3'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/e/einops/einops-0.4.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/e/einops/einops-0.4.1-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..80b81ff50b53 --- /dev/null +++ b/easybuild/easyconfigs/e/einops/einops-0.4.1-GCCcore-10.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonPackage' + +name = 'einops' +version = '0.4.1' + +homepage = 'https://einops.rocks/' +description = """ +Flexible and powerful tensor operations for readable and reliable code. +Supports numpy, pytorch, tensorflow, jax, and others.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['65ede824fa54ce99ba969c61152f9948eb8cad08d5f0ca97c95e3804bafcce48'] + +builddependencies = [ + ('binutils', '2.36.1'), +] + +dependencies = [ + ('Python', '3.9.5'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/elastix/elastix-4.9.0-foss-2018a.eb b/easybuild/easyconfigs/e/elastix/elastix-4.9.0-foss-2018a.eb index 11cdeebdd2c8..57ae89adca75 100644 --- a/easybuild/easyconfigs/e/elastix/elastix-4.9.0-foss-2018a.eb +++ b/easybuild/easyconfigs/e/elastix/elastix-4.9.0-foss-2018a.eb @@ -19,10 +19,6 @@ dependencies = [ ('ITK', '4.13.0', '-Python-2.7.14'), ] -configopts = '-DCMAKE_BUILD_TYPE=Release ' - -separate_build_dir = True - sanity_check_paths = { 'files': ['bin/elastix', 'bin/transformix'], 'dirs': ['include', 'lib'] diff --git a/easybuild/easyconfigs/e/expat/expat-2.4.8-GCCcore-12.1.0.eb b/easybuild/easyconfigs/e/expat/expat-2.4.8-GCCcore-12.1.0.eb new file mode 100644 index 000000000000..5f2063789b1f --- /dev/null +++ b/easybuild/easyconfigs/e/expat/expat-2.4.8-GCCcore-12.1.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' +name = 'expat' +version = '2.4.8' + +homepage = 'https://libexpat.github.io' + +description = """ + Expat is an XML parser library written in C. It is a stream-oriented parser + in which an application registers handlers for things the parser might find + in the XML document (like start tags) +""" + +toolchain = {'name': 'GCCcore', 'version': '12.1.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/libexpat/libexpat/releases/download/R_%s/' % version.replace('.', '_')] +sources = [SOURCE_TAR_BZ2] +checksums = ['a247a7f6bbb21cf2ca81ea4cbb916bfb9717ca523631675f99b3d4a5678dcd16'] + +builddependencies = [('binutils', '2.38')] + +# Since expat 2.2.6, docbook2X is needed to produce manpage of xmlwf. +# Docbook2X needs XML-Parser and XML-Parser needs expat. +# -> circular dependency. "--without-docbook" breaks this circle. +configopts = ['--without-docbook'] + +sanity_check_paths = { + 'files': ['include/expat.h', 'lib/libexpat.a', 'lib/libexpat.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/e/expecttest/expecttest-0.1.3-GCCcore-11.3.0.eb b/easybuild/easyconfigs/e/expecttest/expecttest-0.1.3-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..30003e96055c --- /dev/null +++ b/easybuild/easyconfigs/e/expecttest/expecttest-0.1.3-GCCcore-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'expecttest' +version = '0.1.3' + +homepage = 'https://github.com/ezyang/expecttest' +description = """This library implements expect tests (also known as "golden" tests). Expect tests are a method of + writing tests where instead of hard-coding the expected output of a test, you run the test to get the output, and + the test framework automatically populates the expected output. If the output of the test changes, you can rerun + the test with the environment variable EXPECTTEST_ACCEPT=1 to automatically update the expected output.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['83057695811d94128aed13ed094a070db90e0a92ea40071f8ee073cbab57149a'] + +builddependencies = [ + ('binutils', '2.38'), +] +dependencies = [ + ('Python', '3.10.4'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/FFmpeg/FFmpeg-4.4.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-4.4.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..4cf10c89fd86 --- /dev/null +++ b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-4.4.2-GCCcore-11.3.0.eb @@ -0,0 +1,44 @@ +easyblock = 'ConfigureMake' + +name = 'FFmpeg' +version = '4.4.2' + +homepage = 'https://www.ffmpeg.org/' +description = """A complete, cross-platform solution to record, convert and stream audio and video.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://ffmpeg.org/releases/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['f98a482520c47507521a907914daa9efbc1384e0591b5afc3da18aa897de2948'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0') +] + +dependencies = [ + ('NASM', '2.15.05'), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('x264', '20220620'), + ('LAME', '3.100'), + ('x265', '3.5'), + ('X11', '20220504'), + ('freetype', '2.12.1'), + ('fontconfig', '2.14.0'), + ('FriBidi', '1.0.12'), +] + +configopts = '--enable-pic --enable-shared --enable-gpl --enable-version3 --enable-nonfree --cc="$CC" --cxx="$CXX" ' +configopts += '--enable-libx264 --enable-libx265 --enable-libmp3lame --enable-libfreetype --enable-fontconfig ' +configopts += '--enable-libfribidi' + +sanity_check_paths = { + 'files': ['bin/ff%s' % x for x in ['mpeg', 'probe']] + + ['lib/lib%s.%s' % (x, y) for x in ['avdevice', 'avfilter', 'avformat', 'avcodec', 'postproc', + 'swresample', 'swscale', 'avutil'] for y in [SHLIB_EXT, 'a']], + 'dirs': ['include'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/f/FFmpeg/FFmpeg-5.0.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-5.0.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..8bb0209eb4e3 --- /dev/null +++ b/easybuild/easyconfigs/f/FFmpeg/FFmpeg-5.0.1-GCCcore-11.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'FFmpeg' +version = '5.0.1' + +homepage = 'https://www.ffmpeg.org/' +description = "A complete, cross-platform solution to record, convert and stream audio and video." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://%(namelower)s.org/releases/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['28df33d400a1c1c1b20d07a99197809a3b88ef765f5f07dc1ff067fac64c59d6'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] +dependencies = [ + ('NASM', '2.15.05'), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('x264', '20220620'), + ('LAME', '3.100'), + ('x265', '3.5'), + ('X11', '20220504'), + ('freetype', '2.12.1'), + ('fontconfig', '2.14.0'), + ('FriBidi', '1.0.12'), +] + +configopts = '--enable-pic --enable-shared --enable-gpl --enable-version3 --enable-nonfree --cc="$CC" --cxx="$CXX" ' +configopts += '--enable-libx264 --enable-libx265 --enable-libmp3lame --enable-libfreetype --enable-fontconfig ' +configopts += '--enable-libfribidi' + +sanity_check_paths = { + 'files': ['bin/ff%s' % x for x in ['mpeg', 'probe']] + + ['lib/lib%s.%s' % (x, y) for x in ['avdevice', 'avfilter', 'avformat', 'avcodec', 'postproc', + 'swresample', 'swscale', 'avutil'] for y in [SHLIB_EXT, 'a']], + 'dirs': ['include'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2016a-Python-2.7.11.eb b/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2016a-Python-2.7.11.eb index 82bf05536dca..2e3e8f058de0 100644 --- a/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2016a-Python-2.7.11.eb +++ b/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2016a-Python-2.7.11.eb @@ -12,6 +12,7 @@ toolchainopts = {'openmp': True} source_urls = ['http://www.cs.ubc.ca/research/flann/uploads/FLANN/'] sources = ['flann-%(version)s-src.zip'] +checksums = ['dfbb9321b0d687626a644c70872a2c540b16200e7f4c7bd72f91ae032f445c08'] builddependencies = [('CMake', '3.5.2')] dependencies = [ @@ -20,7 +21,7 @@ dependencies = [ separate_build_dir = True -configopts = "-DCMAKE_BUILD_TYPE=Release -DUSE_OPENMP=ON -DUSE_MPI=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_C_BINDINGS=ON" +configopts = "-DUSE_OPENMP=ON -DUSE_MPI=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_C_BINDINGS=ON" modextrapaths = {'PYTHONPATH': ['share/flann/python']} diff --git a/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2017b-Python-2.7.14.eb b/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2017b-Python-2.7.14.eb index 51ef4d7a5b9f..cc78e9558bef 100644 --- a/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2017b-Python-2.7.14.eb +++ b/easybuild/easyconfigs/f/FLANN/FLANN-1.8.4-intel-2017b-Python-2.7.14.eb @@ -23,7 +23,7 @@ dependencies = [('Python', '2.7.14')] separate_build_dir = True -configopts = "-DCMAKE_BUILD_TYPE=Release -DUSE_OPENMP=ON -DUSE_MPI=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_C_BINDINGS=ON" +configopts = "-DUSE_OPENMP=ON -DUSE_MPI=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_C_BINDINGS=ON" modextrapaths = {'PYTHONPATH': ['share/flann/python']} diff --git a/easybuild/easyconfigs/f/FORD/FORD-6.1.15-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/FORD/FORD-6.1.15-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..ed749e791eee --- /dev/null +++ b/easybuild/easyconfigs/f/FORD/FORD-6.1.15-GCCcore-11.3.0.eb @@ -0,0 +1,57 @@ +easyblock = 'PythonBundle' + +name = 'FORD' +version = '6.1.15' + +homepage = 'https://github.com/Fortran-FOSS-Programmers/ford/wiki' +description = 'FORD is an automatic documentation generator for modern Fortran programs' + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), + ('Graphviz', '5.0.0',), + ('BeautifulSoup', '4.10.0'), + ('tqdm', '4.64.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('graphviz', '0.20.1', { + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': ['8c58f14adaa3b947daf26c19bc1e98c4e0702cdc31cf99153e6f06904d492bf8'], + }), + ('Markdown', '3.4.1', { + 'checksums': ['3b809086bb6efad416156e00a0da66fe47618a5d6918dd688f53f40c8e4cfeff'], + }), + ('markdown_include', '0.7.0', { + 'source_tmpl': '%(name)s-%(version)s-py3-none-any.whl', + 'checksums': ['a06183b7c7225e73112737acdc6fe0ac0686c39457234eeb5ede23881fed001d'], + }), + ('python-markdown-math', '0.8', { + 'modulename': 'mdx_math', + 'checksums': ['8564212af679fc18d53f38681f16080fcd3d186073f23825c7ce86fadd3e3635'], + }), + ('md-environ', '0.1.0', { + 'checksums': ['fe3c2a255af523d6f522831c699336cd71f9d543714067d93206ed35836f1793'], + }), + ('toposort', '1.7', { + 'checksums': ['ddc2182c42912a440511bd7ff5d3e6a1cabc3accbc674a3258c8c41cbfbb2125'], + }), + (name, version, { + 'checksums': ['d90000f528878738fc55f0f28aa34f36c5cb7f4819d851d10977f8499bf0cae6'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ford'], + 'dirs': ['bin', 'lib'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/FOX-Toolkit/FOX-Toolkit-1.6.57-GCCcore-11.2.0.eb b/easybuild/easyconfigs/f/FOX-Toolkit/FOX-Toolkit-1.6.57-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..d086f83d7f4c --- /dev/null +++ b/easybuild/easyconfigs/f/FOX-Toolkit/FOX-Toolkit-1.6.57-GCCcore-11.2.0.eb @@ -0,0 +1,44 @@ +easyblock = 'ConfigureMake' + +name = 'FOX-Toolkit' +version = '1.6.57' + +homepage = 'https://www.fox-toolkit.org/' +description = """FOX is a C++ based Toolkit for developing Graphical User Interfaces easily and +effectively. It offers a wide, and growing, collection of Controls, and +provides state of the art facilities such as drag and drop, selection, as well +as OpenGL widgets for 3D graphical manipulation. FOX also implements icons, +images, and user-convenience features such as status line help, and tooltips.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['http://fox-toolkit.org/ftp'] +sources = ['fox-%(version)s.tar.gz'] +checksums = ['65ef15de9e0f3a396dc36d9ea29c158b78fad47f7184780357b929c94d458923'] + +builddependencies = [ + ('binutils', '2.37'), + ('Autotools', '20210726'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('libjpeg-turbo', '2.0.6'), + ('libpng', '1.6.37'), + ('LibTIFF', '4.3.0'), + ('libGLU', '9.0.2'), + ('X11', '20210802'), +] + +preconfigopts = """sed -i '/^CXXFLAGS=""$/d;/LDFLAGS="-s ${LDFLAGS}"/d' configure.ac && """ +preconfigopts += "autoreconf -f -i && " + +configopts = '--enable-release' + +sanity_check_paths = { + 'files': ['lib/lib%s-%%(version_major_minor)s.%s' % (n, x) for n in ['CHART', 'FOX'] for x in ['a', SHLIB_EXT]] + + ['bin/fox-config'], + 'dirs': ['include'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/FOX-Toolkit/FOX-Toolkit-1.6.57-GCCcore-9.3.0.eb b/easybuild/easyconfigs/f/FOX-Toolkit/FOX-Toolkit-1.6.57-GCCcore-9.3.0.eb new file mode 100644 index 000000000000..3559c89032e3 --- /dev/null +++ b/easybuild/easyconfigs/f/FOX-Toolkit/FOX-Toolkit-1.6.57-GCCcore-9.3.0.eb @@ -0,0 +1,44 @@ +easyblock = 'ConfigureMake' + +name = 'FOX-Toolkit' +version = '1.6.57' + +homepage = 'https://www.fox-toolkit.org/' +description = """FOX is a C++ based Toolkit for developing Graphical User Interfaces easily and +effectively. It offers a wide, and growing, collection of Controls, and +provides state of the art facilities such as drag and drop, selection, as well +as OpenGL widgets for 3D graphical manipulation. FOX also implements icons, +images, and user-convenience features such as status line help, and tooltips.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['http://fox-toolkit.org/ftp'] +sources = ['fox-%(version)s.tar.gz'] +checksums = ['65ef15de9e0f3a396dc36d9ea29c158b78fad47f7184780357b929c94d458923'] + +builddependencies = [ + ('binutils', '2.34'), + ('Autotools', '20180311'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('libjpeg-turbo', '2.0.4'), + ('libpng', '1.6.37'), + ('LibTIFF', '4.1.0'), + ('libGLU', '9.0.1'), + ('X11', '20200222'), +] + +preconfigopts = """sed -i '/^CXXFLAGS=""$/d;/LDFLAGS="-s ${LDFLAGS}"/d' configure.ac && """ +preconfigopts += "autoreconf -f -i && " + +configopts = '--enable-release' + +sanity_check_paths = { + 'files': ['lib/lib%s-%%(version_major_minor)s.%s' % (n, x) for n in ['CHART', 'FOX'] for x in ['a', SHLIB_EXT]] + + ['bin/fox-config'], + 'dirs': ['include'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/FastFold/FastFold-20220729-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/f/FastFold/FastFold-20220729-foss-2021a-CUDA-11.3.1.eb new file mode 100644 index 000000000000..38ff91c345f5 --- /dev/null +++ b/easybuild/easyconfigs/f/FastFold/FastFold-20220729-foss-2021a-CUDA-11.3.1.eb @@ -0,0 +1,66 @@ +easyblock = 'PythonBundle' + +name = 'FastFold' +version = '20220729' +versionsuffix = '-CUDA-%(cudaver)s' +local_commit = '665e6c97a7d95d3db2df860d104fa3c456c71fe2' + +homepage = 'https://github.com/hpcaitech/FastFold' +description = "Optimizing Protein Structure Prediction Model Training and Inference on GPU Clusters" + +toolchain = {'name': 'foss', 'version': '2021a'} + +dependencies = [ + ('Python', '3.9.5'), + ('CUDA', '11.3.1', '', True), + ('SciPy-bundle', '2021.05'), + ('PyYAML', '5.4.1'), + ('Biopython', '1.79'), + ('HH-suite', '3.3.0'), + ('HMMER', '3.3.2'), + ('Kalign', '3.3.1'), + ('UCX-CUDA', '1.10.0', versionsuffix), + ('cuDNN', '8.2.1.32', versionsuffix, True), + ('NCCL', '2.10.3', versionsuffix), + ('dm-tree', '0.1.6'), + ('einops', '0.4.1'), + ('colossalai', '0.1.8', versionsuffix), + ('OpenMM', '7.5.1', '-DeepMind-patch'), +] + +use_pip = True + +exts_list = [ + ('PDBFixer', '1.7', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['a0bef3c52a7bbe69a6aea5333f51f3e7d158339be5829aed19b0344bd66d4eea'], + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml_collections', '0.1.0', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'checksums': ['59a17fcd1c140153009788517f304caaddd7a94f06690f9f0ed09987beebcf3c'], + }), + (name, version, { + 'preinstallopts': "cp -a benchmark scripts tests %(installdir)s/ && ", + 'source_urls': ['https://github.com/hpcaitech/FastFold/archive/'], + 'sources': [{'download_filename': '665e6c97a7d95d3db2df860d104fa3c456c71fe2.tar.gz', + 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['79abc27d481f14c9086ee969f55a73645b9669e0608bdb44db22a839765e5739'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pdbfixer'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'from fastfold.model.fastnn import Evoformer'", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/Flask/Flask-2.2.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/Flask/Flask-2.2.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..644e98a242f8 --- /dev/null +++ b/easybuild/easyconfigs/f/Flask/Flask-2.2.2-GCCcore-11.3.0.eb @@ -0,0 +1,55 @@ +easyblock = 'PythonBundle' + +name = 'Flask' +version = '2.2.2' + +homepage = 'https://www.palletsprojects.com/p/flask/' +description = """ +Flask is a lightweight WSGI web application framework. It is designed to make +getting started quick and easy, with the ability to scale up to complex +applications. +This module includes the Flask extensions: Flask-Cors""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +dependencies = [ + ('Python', '3.10.4'), +] + +builddependencies = [('binutils', '2.38')] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('itsdangerous', '2.1.2', { + 'checksums': ['5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a'], + }), + ('Werkzeug', version, { + 'checksums': ['7ea2d48322cc7c0f8b3a215ed73eabd7b5d75d0b50e31ab006286ccff9e00b8f'], + }), + ('asgiref', '3.5.2', { + 'checksums': ['4a29362a6acebe09bf1d6640db38c1dc3d9217c68e6f9f6204d72667fc19a424'], + }), + (name, version, { + 'checksums': ['642c450d19c4ad482f96729bd2a8f6d32554aa1e231f4f6b4e7e5264b16cca2b'], + }), + ('Flask-Cors', '3.0.10', { + 'checksums': ['b60839393f3b84a0f3746f6cdca56c1ad7426aa738b70d6c61375857823181de'], + }), + ('cachelib', '0.9.0', { + 'checksums': ['38222cc7c1b79a23606de5c2607f4925779e37cdcea1c2ad21b8bae94b5425a5'], + }), + ('Flask-Session', '0.4.0', { + 'checksums': ['c9ed54321fa8c4ca0132ffd3369582759eda7252fb4b3bee480e690d1ba41f46'], + }), +] + +sanity_check_paths = { + 'files': ['bin/flask'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['flask --version'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/f/Flye/Flye-2.9.1-GCC-11.2.0.eb b/easybuild/easyconfigs/f/Flye/Flye-2.9.1-GCC-11.2.0.eb new file mode 100644 index 000000000000..5942fa943831 --- /dev/null +++ b/easybuild/easyconfigs/f/Flye/Flye-2.9.1-GCC-11.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'Flye' +version = '2.9.1' + +homepage = 'https://github.com/fenderglass/Flye' +description = """Flye is a de novo assembler for long and noisy reads, such as those produced by PacBio + and Oxford Nanopore Technologies.""" + +toolchain = {'name': 'GCC', 'version': '11.2.0'} + +source_urls = ['https://github.com/fenderglass/Flye/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['25a2375cd9ba6b2285f930951ad0fde81628baa97d8709172aa59e931a96678e'] + +dependencies = [('Python', '3.9.6')] + +download_dep_fail = True +use_pip = True + +if ARCH == "aarch64": + preinstallopts = 'export arm_neon=1 && export aarch64=1 && ' + +sanity_check_paths = { + 'files': ['bin/flye'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['%(namelower)s --help'] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos6_x86_64.eb b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos6_x86_64.eb index 0bb1d8a557f0..3ff7305bc664 100644 --- a/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos6_x86_64.eb +++ b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos6_x86_64.eb @@ -12,17 +12,21 @@ source_urls = [ 'https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/%(version)s/', 'https://surfer.nmr.mgh.harvard.edu/fswiki/MatlabRuntime?action=AttachFile&do=get&target=' ] + +# The FreeSurfer and MCR versions are linked. Fresurfer > v7 uses MCR 8.4 (R2014b). +# Please check the documentation for the latest linked versions: +# https://surfer.nmr.mgh.harvard.edu/fswiki/MatlabRuntime sources = [ '%(namelower)s-linux%(versionsuffix)s-%(version)s.tar.gz', - 'runtime2012bLinux.tar.gz' + 'runtime2014bLinux.tar.gz' ] + checksums = [ - # freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.1.tar.gz - '4026a5d5df41fd5a82a1b8c43a011cf0da4a0055737822e6b011fdb1370284a3', - '3ef4231d566fca45436eda03ae3bb93ffa7af0974a48112348c0d76c62b5fa64', # runtime2012bLinux.tar.gz + '4026a5d5df41fd5a82a1b8c43a011cf0da4a0055737822e6b011fdb1370284a3', # freesurfer-linux-centos6_x86_64-7.1.1.tar.gz + '944852af2b5a493f5261fd619af828c6e4afc0c90e6f7e709acfb616c5b51648', # runtime2014bLinux.tar.gz ] -postinstallcmds = ['cp -a %(builddir)s/MCRv80/ %(installdir)s'] +postinstallcmds = ['cp -a %(builddir)s/MCRv84/ %(installdir)s'] license_text = """email@example.com 00000 diff --git a/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos7_x86_64.eb b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos7_x86_64.eb index 10dfb815724e..e0c851d46073 100644 --- a/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos7_x86_64.eb +++ b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos7_x86_64.eb @@ -12,17 +12,21 @@ source_urls = [ 'https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/%(version)s/', 'https://surfer.nmr.mgh.harvard.edu/fswiki/MatlabRuntime?action=AttachFile&do=get&target=' ] + +# The FreeSurfer and MCR versions are linked. Fresurfer > v7 uses MCR 8.4 (R2014b). +# Please check the documentation for the latest linked versions: +# https://surfer.nmr.mgh.harvard.edu/fswiki/MatlabRuntime sources = [ '%(namelower)s-linux%(versionsuffix)s-%(version)s.tar.gz', - 'runtime2012bLinux.tar.gz' + 'runtime2014bLinux.tar.gz' ] + checksums = [ - # freesurfer-Linux-centos7_x86_64-stable-pub-v7.1.1.tar.gz - '6098b166fee8644f44f9ec88f3ffe88d05f2bc033cca60443e99e3e56f2e166b', - '3ef4231d566fca45436eda03ae3bb93ffa7af0974a48112348c0d76c62b5fa64', # runtime2012bLinux.tar.gz + '6098b166fee8644f44f9ec88f3ffe88d05f2bc033cca60443e99e3e56f2e166b', # freesurfer-linux-centos7_x86_64-7.1.1.tar.gz + '944852af2b5a493f5261fd619af828c6e4afc0c90e6f7e709acfb616c5b51648', # runtime2014bLinux.tar.gz ] -postinstallcmds = ['cp -a %(builddir)s/MCRv80/ %(installdir)s'] +postinstallcmds = ['cp -a %(builddir)s/MCRv84/ %(installdir)s'] license_text = """email@example.com 00000 diff --git a/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos8_x86_64.eb b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos8_x86_64.eb index 5b67471c76da..0d0830a63099 100644 --- a/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos8_x86_64.eb +++ b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.1.1-centos8_x86_64.eb @@ -14,15 +14,17 @@ source_urls = [ ] sources = [ '%(namelower)s-linux%(versionsuffix)s-%(version)s.tar.gz', - 'runtime2012bLinux.tar.gz' + 'runtime2014bLinux.tar.gz' ] checksums = [ - # freesurfer-Linux-centoss86_x86_64-stable-pub-v7.1.1.tar.gz - '6098b166fee8644f44f9ec88f3ffe88d05f2bc033cca60443e99e3e56f2e166b', - '3ef4231d566fca45436eda03ae3bb93ffa7af0974a48112348c0d76c62b5fa64', # runtime2012bLinux.tar.gz + '6098b166fee8644f44f9ec88f3ffe88d05f2bc033cca60443e99e3e56f2e166b', # freesurfer-linux-centos8_x86_64-7.1.1.tar.gz + '944852af2b5a493f5261fd619af828c6e4afc0c90e6f7e709acfb616c5b51648', # runtime2014bLinux.tar.gz ] -postinstallcmds = ['cp -a %(builddir)s/MCRv80/ %(installdir)s'] +# The FreeSurfer and MCR versions are linked. Fresurfer > v7 uses MCR 8.4 (R2014b). +# Please check the documentation for the latest linked versions: +# https://surfer.nmr.mgh.harvard.edu/fswiki/MatlabRuntime +postinstallcmds = ['cp -a %(builddir)s/MCRv84/ %(installdir)s'] license_text = """email@example.com 00000 diff --git a/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.3.2-centos8_x86_64.eb b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.3.2-centos8_x86_64.eb new file mode 100644 index 000000000000..ed3474f31306 --- /dev/null +++ b/easybuild/easyconfigs/f/FreeSurfer/FreeSurfer-7.3.2-centos8_x86_64.eb @@ -0,0 +1,33 @@ +name = 'FreeSurfer' +version = '7.3.2' +versionsuffix = '-centos8_x86_64' + +homepage = 'https://surfer.nmr.mgh.harvard.edu/' +description = """FreeSurfer is a set of tools for analysis and visualization +of structural and functional brain imaging data. FreeSurfer contains a fully +automatic structural imaging stream for processing cross sectional and +longitudinal data.""" + +toolchain = SYSTEM + +source_urls = [ + 'https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/%(version)s/', + 'https://surfer.nmr.mgh.harvard.edu/fswiki/MatlabRuntime?action=AttachFile&do=get&target=' +] +sources = [ + '%(namelower)s-linux%(versionsuffix)s-%(version)s.tar.gz', + 'runtime2014bLinux.tar.gz' +] +checksums = [ + # freesurfer-linux-centos8_x86_64-7.3.2.tar.gz + '1448e64000b02a06aaad81548a4c8f92faf575f8320e67bdcd15a430ad10879b', + '944852af2b5a493f5261fd619af828c6e4afc0c90e6f7e709acfb616c5b51648', # runtime2014bLinux.tar.gz +] + +postinstallcmds = ['cp -a %(builddir)s/MCRv84/ %(installdir)s'] + +license_text = """email@example.com +00000 +g1bb3r1sh""" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/f/fastparquet/fastparquet-0.7.2-foss-2021a.eb b/easybuild/easyconfigs/f/fastparquet/fastparquet-0.7.2-foss-2021a.eb new file mode 100644 index 000000000000..4e5947b70811 --- /dev/null +++ b/easybuild/easyconfigs/f/fastparquet/fastparquet-0.7.2-foss-2021a.eb @@ -0,0 +1,40 @@ +easyblock = 'PythonBundle' + +name = 'fastparquet' +version = '0.7.2' + +homepage = "https://fastparquet.readthedocs.io/" +description = """fastparquet is a python implementation of the parquet format, aiming to integrate +into python-based big data work-flows. It is used implicitly by the projects +Dask, Pandas and intake-parquet.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +builddependencies = [ + ('Rust', '1.52.1'), # needed by maturin +] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('maturin', '0.11.5', { + 'checksums': ['07074778b063a439fdfd5501bd1d1823a216ec5b657d3ecde78fd7f2c4782422'], + }), + ('thrift', '0.15.0', { + 'checksums': ['87c8205a71cf8bbb111cb99b1f7495070fbc9cabb671669568854210da5b3e29'], + }), + ('cramjam', '2.5.0', { + 'checksums': ['a92c0c2db4c6a3804eaffa253c7ca49f849e7a893a31c902a8123d7c36b2b487'], + }), + (name, version, { + 'checksums': ['3c4bd638260357df55a9e71d0bd797c12f14f691a61dfd91a66f5b8d2a247683'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/fastparquet/fastparquet-0.8.0-foss-2021b.eb b/easybuild/easyconfigs/f/fastparquet/fastparquet-0.8.0-foss-2021b.eb new file mode 100644 index 000000000000..baed58072cf5 --- /dev/null +++ b/easybuild/easyconfigs/f/fastparquet/fastparquet-0.8.0-foss-2021b.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'fastparquet' +version = '0.8.0' + +homepage = "https://fastparquet.readthedocs.io/" +description = """fastparquet is a python implementation of the parquet format, aiming to integrate +into python-based big data work-flows. It is used implicitly by the projects +Dask, Pandas and intake-parquet.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +builddependencies = [ + ('patchelf', '0.13'), + ('Rust', '1.54.0'), # needed by maturin +] + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('maturin', '0.12.6', { + 'checksums': ['2b14cfae808b45a130e19b2999acea423d2e10e7a29ae2336996ba72ba442ff6'], + }), + ('thrift', '0.15.0', { + 'checksums': ['87c8205a71cf8bbb111cb99b1f7495070fbc9cabb671669568854210da5b3e29'], + }), + ('cramjam', '2.5.0', { + 'checksums': ['a92c0c2db4c6a3804eaffa253c7ca49f849e7a893a31c902a8123d7c36b2b487'], + }), + (name, version, { + 'checksums': ['5a8137f2e0d3a77e8db41e875d3159ddf925bbfaaf37ce6d6eedd02f5bfce55a'], + }), +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/fio/fio-3.32-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/fio/fio-3.32-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..06bbde187fe0 --- /dev/null +++ b/easybuild/easyconfigs/f/fio/fio-3.32-GCCcore-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'fio' +version = '3.32' + +homepage = 'https://github.com/axboe/fio' +docurls = 'https://fio.readthedocs.io/en/latest/index.html' +description = 'Flexible I/O tester' + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +github_account = 'axboe' +source_urls = [GITHUB_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['409e459840912e68be487dbbda9a7a1b3f6ddf1478e3f456f278f957ce4f7b66'] + +builddependencies = [ + ('binutils', '2.38'), +] + +sanity_check_paths = { + 'files': ['bin/fio'], + 'dirs': ['bin', 'man', 'share'], +} + +sanity_check_commands = ['fio -h'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/f/flex/flex-2.6.4-GCCcore-12.2.0.eb b/easybuild/easyconfigs/f/flex/flex-2.6.4-GCCcore-12.2.0.eb new file mode 100644 index 000000000000..b953ed29dab1 --- /dev/null +++ b/easybuild/easyconfigs/f/flex/flex-2.6.4-GCCcore-12.2.0.eb @@ -0,0 +1,34 @@ +name = 'flex' +version = '2.6.4' + +homepage = 'http://flex.sourceforge.net/' + +description = """ + Flex (Fast Lexical Analyzer) is a tool for generating scanners. A scanner, + sometimes called a tokenizer, is a program which recognizes lexical patterns + in text. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/westes/flex/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e87aae032bf07c26f85ac0ed3250998c37621d95f8bd748b31f15b33c45ee995'] + +builddependencies = [ + ('Bison', '3.8.2'), + ('help2man', '1.49.2'), + # use same binutils version that was used when building GCC toolchain + ('binutils', '2.39', '', True), +] + +dependencies = [ + ('M4', '1.4.19'), +] + +# glibc 2.26 requires _GNU_SOURCE defined to expose reallocarray in the correct +# header, see https://github.com/westes/flex/issues/241 +preconfigopts = 'export CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" && ' + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/f/fmt/fmt-9.1.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/f/fmt/fmt-9.1.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..ee5eb6a8fa86 --- /dev/null +++ b/easybuild/easyconfigs/f/fmt/fmt-9.1.0-GCCcore-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'CMakeMake' + +name = 'fmt' +version = '9.1.0' + +homepage = 'http://fmtlib.net/' +description = "fmt (formerly cppformat) is an open-source formatting library." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/fmtlib/fmt/releases/download/%(version)s/'] +sources = ['fmt-%(version)s.zip'] +checksums = ['cceb4cb9366e18a5742128cb3524ce5f50e88b476f1e54737a47ffdf4df4c996'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('binutils', '2.38') +] + +separate_build_dir = True + +sanity_check_paths = { + 'files': ['lib/libfmt.a'], + 'dirs': ['include/fmt', 'lib/cmake'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/GATE/GATE-9.2-foss-2021b.eb b/easybuild/easyconfigs/g/GATE/GATE-9.2-foss-2021b.eb new file mode 100644 index 000000000000..c211c0ef874d --- /dev/null +++ b/easybuild/easyconfigs/g/GATE/GATE-9.2-foss-2021b.eb @@ -0,0 +1,31 @@ +name = 'GATE' +version = '9.2' + +homepage = 'http://www.opengatecollaboration.org/' +description = """GATE is an advanced opensource software developed by the international OpenGATE collaboration and + dedicated to the numerical simulations in medical imaging. It currently supports simulations of Emission Tomography + (Positron Emission Tomography - PET and Single Photon Emission Computed Tomography - SPECT), and Computed Tomography""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/OpenGATE/Gate/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['GATE-9.2_fix-Geant4-11.0.patch'] +checksums = [ + '6fad86002dacae9d1f76ed0c455847d5d8960f667570292066b211a8b83247ee', # v9.2.tar.gz + '093a88718ff23edf332ac5a29b2810e77df40d63dd70e3b36f55195e4bb9e0b7', # GATE-9.2_fix-Geant4-11.0.patch +] + +builddependencies = [('CMake', '3.22.1')] +dependencies = [ + ('Geant4', '11.0.1'), + ('CLHEP', '2.4.5.1'), + ('ROOT', '6.24.06'), +] + +preinstallopts = "sed -i 's|/usr/local/bin|%(installdir)s/bin|g' Makefile &&" + +# enable extra capabilities (Davis requires Geant4 10.04 or newer) +configopts = "-DGATE_USE_OPTICAL=1 -DGATE_USE_DAVIS=1" + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/g/GATE/GATE-9.2_fix-Geant4-11.0.patch b/easybuild/easyconfigs/g/GATE/GATE-9.2_fix-Geant4-11.0.patch new file mode 100644 index 000000000000..bfc4d3840a4c --- /dev/null +++ b/easybuild/easyconfigs/g/GATE/GATE-9.2_fix-Geant4-11.0.patch @@ -0,0 +1,380 @@ +see https://github.com/OpenGATE/Gate/pull/507 + https://github.com/OpenGATE/Gate/pull/508 + +From 1a4e09504359feb06ae68b331b7c54fb080e008d Mon Sep 17 00:00:00 2001 +From: Christian Pommranz +Date: Mon, 4 Apr 2022 21:53:37 +0200 +Subject: [PATCH] Fix gjs compilation against Geant4 v11.0 + +closes #507 +--- + cluster_tools/jobsplitter/gjs.cc | 2 +- + .../jobsplitter/src/GateMacfileParser.cc | 125 +++++++++--------- + .../jobsplitter/src/GateToPlatform.cc | 4 +- + 3 files changed, 66 insertions(+), 65 deletions(-) + +diff --git a/cluster_tools/jobsplitter/gjs.cc b/cluster_tools/jobsplitter/gjs.cc +index 6f786a958..5f6be6a43 100644 +--- a/cluster_tools/jobsplitter/gjs.cc ++++ b/cluster_tools/jobsplitter/gjs.cc +@@ -140,7 +140,7 @@ int main(int argc,char** argv) + if (size>4 && indicator==0) + { + G4String ss(argv[nextArg]); +- if (ss.contains(".mac")) ++ if (G4StrUtil::contains(ss, ".mac")) + { + indicator=1; + macfile=argv[nextArg]; +diff --git a/cluster_tools/jobsplitter/src/GateMacfileParser.cc b/cluster_tools/jobsplitter/src/GateMacfileParser.cc +index e01c97d74..bc45838f8 100644 +--- a/cluster_tools/jobsplitter/src/GateMacfileParser.cc ++++ b/cluster_tools/jobsplitter/src/GateMacfileParser.cc +@@ -122,7 +122,7 @@ G4int GateMacfileParser::GenerateResolvedMacros(G4String directory) + void GateMacfileParser::CleanAbort(ofstream& output, ofstream& splitfile) + { + //erase created files and the directory before error exit +- if( outputDir.contains(".Gate/") ) ++ if( G4StrUtil::contains(outputDir, ".Gate/")) + { //just in case to avoid a catastrophe + if (output) output.close(); + if (splitfile) splitfile.close(); +@@ -226,7 +226,7 @@ void GateMacfileParser::InsertAliases() + nAliases = (G4int)(listOfAliases.size()); + for (G4int i=1;i>lambda; + lambda=log(2.0)/lambda; + macline=""; + } +- else if (macline.contains("/gate/application/setTimeStop")) ++ else if (G4StrUtil::contains(macline, "/gate/application/setTimeStop")) + { + // We first check if we already encountered the addSlice command + if (addSlice!=-1.) +@@ -366,13 +366,13 @@ void GateMacfileParser::DealWithTimeCommands(ofstream& output,G4int splitNumber, + CleanAbort(output,splitfile); + exit(1); + } +- G4String temp=timeStop_str(position-1); +- if (!strcmp(temp,".")) timeStop_str=timeStop_str+"0"; ++ char temp=timeStop_str[position-1]; ++ if (temp != '.') timeStop_str=timeStop_str+"0"; + stringstream timeStop_ss(timeStop_str); + timeStop_ss>>timeStop; + splitfile<<"Stop time is: "<>timeStart; + splitfile<<"Start time is: "<>timeSlice; + splitfile<<"Timeslice is: "<>newAddSlice; +@@ -471,7 +471,7 @@ void GateMacfileParser::DealWithTimeCommands(ofstream& output,G4int splitNumber, + splitfile<<"New add slice: "<0) + { + subString=macline.substr(size,macline.length()); + macline=subString; +- } ++ } + + //remove intermediate spaces >1 + subString=macline; +- while (macline.contains(" ")) ++ while (G4StrUtil::contains(macline, " ")) + { + position=macline.find(" "); + subString=macline.substr(position+1,macline.length()); +@@ -1049,7 +1050,7 @@ const G4String GateMacfileParser::ExtractFileName(G4String key) + + bool GateMacfileParser::TreatOutputStream(G4String key, G4String def, G4String& origFile, char* SplitNumberAsString) + { +- if (!macline.contains(key)) return false; // nothing to do ++ if (!G4StrUtil::contains(macline, key)) return false; // nothing to do + origFile = ExtractFileName(key); // token after key + // look for possible unresolved aliases and replace them with default name + if( Braced(origFile) ) +diff --git a/cluster_tools/jobsplitter/src/GateToPlatform.cc b/cluster_tools/jobsplitter/src/GateToPlatform.cc +index 5b789b1e0..15462d6c9 100644 +--- a/cluster_tools/jobsplitter/src/GateToPlatform.cc ++++ b/cluster_tools/jobsplitter/src/GateToPlatform.cc +@@ -330,10 +330,10 @@ int GateToPlatform::GenerateCondorSubmitfile() + { + scriptFile.getline(buffer,256); + scriptline=buffer; +- if (scriptline.contains("#GJS PART => DO NOT REMOVE")!=0) noCopy=1; ++ if (G4StrUtil::contains(scriptline, "#GJS PART => DO NOT REMOVE")!=0) noCopy=1; + if (noCopy==0) + { +- if (scriptline.contains("Executable")!=0 && scriptline.contains("$GC_EXEC")!=0) ++ if (G4StrUtil::contains(scriptline, "Executable")!=0 && G4StrUtil::contains(scriptline, "$GC_EXEC")!=0) + submitFile<<"Executable = "<, Fotis Georgatos , +# Kenneth Hoste (UGent) +# 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/HPCBIOS_2012-94.html +# Modified by: Adam Huffman, Jonas Demeulemeester +# The Francis Crick Institute +# Modified for version 4.0.5.1 by: Ruben van Dijk, University of Groningen +# Modified for version 4.2.3.0 by: J. Sassmannshausen / GSTT +## + +easyblock = 'Tarball' + +name = 'GATK' +version = '4.2.6.1' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.broadinstitute.org/gatk/' +description = """The Genome Analysis Toolkit or GATK is a software package developed at the Broad Institute + to analyse next-generation resequencing data. The toolkit offers a wide variety of tools, + with a primary focus on variant discovery and genotyping as well as strong emphasis on + data quality assurance. Its robust architecture, powerful processing engine and + high-performance computing features make it capable of taking on projects of any size.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/broadinstitute/gatk/releases/download/%(version)s/'] +sources = ['gatk-%(version)s.zip'] +checksums = ['1125cfc862301d437310506c8774d36c3a90d00d52c7b5d6b59dac7241203628'] + +dependencies = [ + ('Java', '11', '', True), + ('Python', '3.9.6'), +] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['gatk'], + 'dirs': [], +} +sanity_check_commands = [ + "gatk --help", + "gatk --list", +] + +modloadmsg = "WARNING: GATK v%(version)s support for Java 11 is in beta state. Use at your own risk.\n" + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GCC/GCC-12.2.0.eb b/easybuild/easyconfigs/g/GCC/GCC-12.2.0.eb new file mode 100644 index 000000000000..81e62378c1d6 --- /dev/null +++ b/easybuild/easyconfigs/g/GCC/GCC-12.2.0.eb @@ -0,0 +1,22 @@ +easyblock = 'Bundle' + +name = 'GCC' +version = '12.2.0' + +homepage = 'https://gcc.gnu.org/' +description = """The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, + as well as libraries for these languages (libstdc++, libgcj,...).""" + +toolchain = SYSTEM + +dependencies = [ + ('GCCcore', version), + # binutils built on top of GCCcore, which was built on top of binutils (built with system toolchain) + ('binutils', '2.39', '', ('GCCcore', version)), +] + +altroot = 'GCCcore' +altversion = 'GCCcore' + +# this bundle serves as a compiler-only toolchain, so it should be marked as compiler (important for HMNS) +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-11.3.0.eb index 878c2e4b12a1..5df5d559914c 100644 --- a/easybuild/easyconfigs/g/GCCcore/GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-11.3.0.eb @@ -35,6 +35,7 @@ patches = [ 'GCCcore-9.3.0_gmp-c99.patch', 'GCCcore-9.x-11.x_fix-unsigned-fpe-traps.patch', 'GCCcore-11.3.0_fuse-ld-mold.patch', + 'GCCcore-11_fix-libsanitzer-glibc-2.36.patch', ] checksums = [ '98438e6cc7294298b474cf0da7655d9a8c8b796421bb0210531c294a950374ed', # gcc-11.3.0.tar.gz @@ -48,6 +49,7 @@ checksums = [ '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e', # GCCcore-9.3.0_gmp-c99.patch '03a2e4aeda78d398edd680d6a1ba842b8ceb29c126ebb7fe2e3541ddfe4fbed4', # GCCcore-9.x-11.x_fix-unsigned-fpe-traps.patch 'bba64714f8b84ad58b3b43c0d21b4ffc298274ae699f514ed2934f002146d840', # GCCcore-11.3.0_fuse-ld-mold.patch + '5c6c3b4655883a23dd9da7ef99751e5db23f35189c03689d2ab755b22cb39a60', # GCCcore-11_fix-libsanitzer-glibc-2.36.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-11_fix-libsanitzer-glibc-2.36.patch b/easybuild/easyconfigs/g/GCCcore/GCCcore-11_fix-libsanitzer-glibc-2.36.patch new file mode 100644 index 000000000000..466910c39707 --- /dev/null +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-11_fix-libsanitzer-glibc-2.36.patch @@ -0,0 +1,41 @@ +From 2701442d0cf6292f6624443c15813d6d1a3562fe Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Mon, 11 Jul 2022 22:03:14 +0200 +Subject: [PATCH] libsanitizer: cherry-pick 9cf13067cb5088626ba7 from upstream + +9cf13067cb5088626ba7ee1ec4c42ec59c7995a0 [sanitizer] Remove #include to resolve fsconfig_command/mount_attr conflict with glibc 2.36 +--- + .../sanitizer_platform_limits_posix.cpp | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +index 8ed3e92d270..97fd07acf9d 100644 +--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp ++++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp +@@ -73,7 +73,9 @@ + #include + #include + #include ++#if SANITIZER_ANDROID + #include ++#endif + #include + #include + #include +@@ -869,10 +871,10 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); + unsigned IOCTL_EVIOCGPROP = IOCTL_NOT_PRESENT; + unsigned IOCTL_EVIOCSKEYCODE_V2 = IOCTL_NOT_PRESENT; + #endif +- unsigned IOCTL_FS_IOC_GETFLAGS = FS_IOC_GETFLAGS; +- unsigned IOCTL_FS_IOC_GETVERSION = FS_IOC_GETVERSION; +- unsigned IOCTL_FS_IOC_SETFLAGS = FS_IOC_SETFLAGS; +- unsigned IOCTL_FS_IOC_SETVERSION = FS_IOC_SETVERSION; ++ unsigned IOCTL_FS_IOC_GETFLAGS = _IOR('f', 1, long); ++ unsigned IOCTL_FS_IOC_GETVERSION = _IOR('v', 1, long); ++ unsigned IOCTL_FS_IOC_SETFLAGS = _IOW('f', 2, long); ++ unsigned IOCTL_FS_IOC_SETVERSION = _IOW('v', 2, long); + unsigned IOCTL_GIO_CMAP = GIO_CMAP; + unsigned IOCTL_GIO_FONT = GIO_FONT; + unsigned IOCTL_GIO_UNIMAP = GIO_UNIMAP; +-- +2.31.1 diff --git a/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0.eb new file mode 100644 index 000000000000..843edfa35ec0 --- /dev/null +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-12.2.0.eb @@ -0,0 +1,63 @@ +easyblock = 'EB_GCC' + +name = 'GCCcore' +version = '12.2.0' + +homepage = 'https://gcc.gnu.org/' +description = """The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, + as well as libraries for these languages (libstdc++, libgcj,...).""" + +toolchain = SYSTEM + +source_urls = [ + 'https://ftpmirror.gnu.org/gnu/gcc/gcc-%(version)s', # GCC auto-resolving HTTP mirror + 'https://sourceware.org/pub/gcc/releases/gcc-%(version)s', # fallback URL for GCC + 'https://ftpmirror.gnu.org/gnu/gmp', # idem for GMP + 'https://ftpmirror.gnu.org/gnu/mpfr', # idem for MPFR + 'https://ftpmirror.gnu.org/gnu/mpc', # idem for MPC + 'ftp://gcc.gnu.org/pub/gcc/infrastructure/', # GCC dependencies + 'https://gcc.gnu.org/pub/gcc/infrastructure/', # HTTPS mirror for GCC dependencies + 'https://libisl.sourceforge.io/', # fallback URL for isl + 'https://sourceware.org/pub/newlib/', # for newlib + 'https://github.com/MentorEmbedded/nvptx-tools/archive', # for nvptx-tools +] +sources = [ + 'gcc-%(version)s.tar.gz', + 'gmp-6.2.1.tar.bz2', + 'mpfr-4.1.0.tar.bz2', + 'mpc-1.2.1.tar.gz', + 'isl-0.24.tar.bz2', + 'newlib-4.1.0.tar.gz', + {'download_filename': '472b6e7.tar.gz', 'filename': 'nvptx-tools-20220610.tar.gz'}, +] +patches = [ + 'GCCcore-6.2.0-fix-find-isl.patch', + 'GCCcore-9.3.0_gmp-c99.patch', +] +checksums = [ + 'ac6b317eb4d25444d87cf29c0d141dedc1323a1833ec9995211b13e1a851261c', # gcc-12.2.0.tar.gz + 'eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c', # gmp-6.2.1.tar.bz2 + 'feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926', # mpfr-4.1.0.tar.bz2 + '17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459', # mpc-1.2.1.tar.gz + 'fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0', # isl-0.24.tar.bz2 + 'f296e372f51324224d387cc116dc37a6bd397198756746f93a2b02e9a5d40154', # newlib-4.1.0.tar.gz + '53e7973af841935490b8a7b9e4d1331f775589b54e21f9921f18589183fb9997', # nvptx-tools-20220610.tar.gz + '5ad909606d17d851c6ad629b4fddb6c1621844218b8d139fed18c502a7696c68', # GCCcore-6.2.0-fix-find-isl.patch + '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e', # GCCcore-9.3.0_gmp-c99.patch +] + +builddependencies = [ + ('M4', '1.4.19'), + ('binutils', '2.39'), +] + +languages = ['c', 'c++', 'fortran'] + +withisl = True +withnvptx = True + +# Perl is only required when building with NVPTX support +if withnvptx: + osdependencies = ['perl'] + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/g/GConf/GConf-3.2.6-GCCcore-10.3.0.eb b/easybuild/easyconfigs/g/GConf/GConf-3.2.6-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..10711489c572 --- /dev/null +++ b/easybuild/easyconfigs/g/GConf/GConf-3.2.6-GCCcore-10.3.0.eb @@ -0,0 +1,54 @@ +easyblock = 'ConfigureMake' + +name = 'GConf' +version = '3.2.6' + +homepage = 'https://developer.gnome.org/gconf/' +description = """GConf is a system for storing application preferences. + It is intended for user preferences; not configuration + of something like Apache, or arbitrary data storage.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://ftp.gnome.org/pub/GNOME/sources/GConf/%(version_major_minor)s/'] +sources = [SOURCE_TAR_XZ] +patches = [ + '%(name)s-%(version)s_call-dbus_g_thread_init.patch', + '%(name)s-%(version)s_fix_wrong_return_value.patch', + '%(name)s-%(version)s_gconf-path-max-hurd.patch', + '%(name)s-%(version)s_readd_gconf_engine_key_is_writable.patch', +] +checksums = [ + '1912b91803ab09a5eed34d364bf09fe3a2a9c96751fde03a4e0cfa51a04d784c', # GConf-3.2.6.tar.xz + 'ed55bff5bc239115ae27b8520a923ae0d5cab6cb15ca9921a8c23b939306489f', # GConf-3.2.6_call-dbus_g_thread_init.patch + 'f8f7745c3648953098eb56af0f64adc69d8c0b0e78c8db351746a2b4c58e8bb4', # GConf-3.2.6_fix_wrong_return_value.patch + 'ee5524c3cb985088bbe4884531ddc48ba22d2fced2a34865304c77e194a55bde', # GConf-3.2.6_gconf-path-max-hurd.patch + # GConf-3.2.6_readd_gconf_engine_key_is_writable.patch + 'b95dfc2f0474d9162fc686f26cd4d3da5c9b01a9c609dc0a4f2b2bd901d497f3', +] + +builddependencies = [ + ('binutils', '2.36.1'), + ('GObject-Introspection', '1.68.0'), +] + +dependencies = [ + ('GLib', '2.68.2'), + ('dbus-glib', '0.112'), + ('libxml2', '2.9.10'), + ('GTK3', '3.24.29'), + ('intltool', '0.51.0'), +] + +configopts = '--disable-orbit ' + +local_check_filelist = ['bin/gconf%s' % x for x in ['-merge-tree', 'tool-2']] +local_check_filelist += ['bin/gsettings-%s-convert' % x for x in ['data', 'schema']] +local_check_filelist += ['lib/libgconf-2.%s' % x for x in ['a', 'so']] + +sanity_check_paths = { + 'files': local_check_filelist, + 'dirs': ['include', 'share'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/GDAL/GDAL-3.5.0-foss-2022a.eb b/easybuild/easyconfigs/g/GDAL/GDAL-3.5.0-foss-2022a.eb index 52779e74f853..cb1e78203d12 100644 --- a/easybuild/easyconfigs/g/GDAL/GDAL-3.5.0-foss-2022a.eb +++ b/easybuild/easyconfigs/g/GDAL/GDAL-3.5.0-foss-2022a.eb @@ -41,7 +41,7 @@ dependencies = [ ('PROJ', '9.0.0'), ('libgeotiff', '1.7.1'), ('SciPy-bundle', '2022.05'), - ('HDF5', '1.13.1'), + ('HDF5', '1.12.2'), ('HDF', '4.2.15'), ] diff --git a/easybuild/easyconfigs/g/GDB/GDB-12.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/GDB/GDB-12.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..0ff055c409e7 --- /dev/null +++ b/easybuild/easyconfigs/g/GDB/GDB-12.1-GCCcore-11.3.0.eb @@ -0,0 +1,44 @@ +easyblock = 'ConfigureMake' + +name = 'GDB' +version = '12.1' + +homepage = 'https://www.gnu.org/software/gdb/gdb.html' +description = "The GNU Project Debugger" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['0e1793bf8f2b54d53f46dea84ccfd446f48f81b297b28c4f7fc017b818d69fed'] + +builddependencies = [ + ('binutils', '2.38'), + ('makeinfo', '6.8'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('libreadline', '8.1.2'), + ('ncurses', '6.3'), + ('expat', '2.4.8'), + ('Python', '3.10.4'), + ('ISL', '0.24'), + ('MPC', '1.2.1'), +] + +preconfigopts = "mkdir obj && cd obj && " +configure_cmd_prefix = '../' +prebuildopts = "cd obj && " +preinstallopts = prebuildopts + +configopts = '--with-system-zlib --with-system-readline --with-expat=$EBROOTEXPAT ' +configopts += '--with-python=$EBROOTPYTHON/bin/python --with-isl=$EBROOTISL --with-mpc=$EBROOTMPC ' +configopts += '--enable-tui --enable-plugins --disable-install-libbfd ' + +sanity_check_paths = { + 'files': ['bin/gdb', 'bin/gdbserver'], + 'dirs': [], +} + +moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/g/GLFW/GLFW-3.3.8-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/GLFW/GLFW-3.3.8-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..c8fe2ff276d9 --- /dev/null +++ b/easybuild/easyconfigs/g/GLFW/GLFW-3.3.8-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'CMakeMake' + +name = 'GLFW' +version = '3.3.8' + +homepage = 'https://www.glfw.org' +description = """GLFW is an Open Source, multi-platform library for OpenGL, +OpenGL ES and Vulkan development on the desktop""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['f30f42e05f11e5fc62483e513b0488d5bceeab7d9c5da0ffe2252ad81816c713'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('X11', '20220504'), +] + +# build both static and shared libraries +configopts = [ + "-DBUILD_SHARED_LIBS=OFF", + "-DBUILD_SHARED_LIBS=ON", +] + +sanity_check_paths = { + 'files': ['include/GLFW/glfw3.h', 'include/GLFW/glfw3native.h', + 'lib/libglfw3.a', 'lib/libglfw.%s' % SHLIB_EXT, 'lib/pkgconfig/glfw3.pc'], + 'dirs': ['include/GLFW', 'lib/cmake/glfw3', 'lib/pkgconfig'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GLM-AED/GLM-AED-3.3.0a5-gompi-2021b.eb b/easybuild/easyconfigs/g/GLM-AED/GLM-AED-3.3.0a5-gompi-2021b.eb new file mode 100644 index 000000000000..f77603abc728 --- /dev/null +++ b/easybuild/easyconfigs/g/GLM-AED/GLM-AED-3.3.0a5-gompi-2021b.eb @@ -0,0 +1,51 @@ +easyblock = 'CmdCp' + +name = 'GLM-AED' +version = '3.3.0a5' + +homepage = 'https://github.com/AquaticEcoDynamics/glm-aed' +description = """The General Lake Model (GLM) is a water balance and one-dimensional vertical +stratification hydrodynamic model, which is dynamically coupled with the AED +water quality modelling library. GLM-AED is suitable for simulating conditions +in a wide range of natural and engineered lakes, including shallow (well-mixed) +and deep (stratified) systems. The model has been successfully applied to +systems from the scale of individual ponds and wetlands, to actively operated +reservoirs, upto the scale of the Great Lakes.""" + +toolchain = {'name': 'gompi', 'version': '2021b'} + +sources = [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/AquaticEcoDynamics', + 'repo_name': '%(namelower)s', + 'tag': 'v%(version)s', + 'recursive': True, + } +}] +patches = ['GLM-AED-3.3.0a5_disable-deb-pkg.patch'] +checksums = [ + None, # can't add proper SHA256 checksum, because source tarball is created locally after recursive 'git clone' + 'b5c1a0c0d1c5a47068ad38ec54def75373ea0bb04f6fa43c0d0a0f7f960e26c6', # GLM-AED-3.3.0a5_disable-deb-pkg.patch +] + +dependencies = [ + ('netCDF-Fortran', '4.5.3'), +] + +start_dir = 'glm-source' + +# Use build environment from EasyBuild +_prebuildcmd = "sed -i 's/FFLAGS=/FFLAGS+=/g' */Makefile && " +cmds_map = [('.*', _prebuildcmd + "./build_glm.sh --gfort")] + +files_to_copy = [(['GLM/glm'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/glm'], + 'dirs': [], +} + +sanity_check_commands = ["glm -h"] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/g/GLM-AED/GLM-AED-3.3.0a5_disable-deb-pkg.patch b/easybuild/easyconfigs/g/GLM-AED/GLM-AED-3.3.0a5_disable-deb-pkg.patch new file mode 100644 index 000000000000..3cb63c76e4d8 --- /dev/null +++ b/easybuild/easyconfigs/g/GLM-AED/GLM-AED-3.3.0a5_disable-deb-pkg.patch @@ -0,0 +1,44 @@ +Disable build of DEB package on Ubuntu systems +author: Alex Domingo (Vrije Universiteit Brussel) +diff --git a/glm-source/build_glm.sh.orig b/glm-source/build_glm.sh +index c0c64a4..255abd4 100755 +--- a/glm-source/build_glm.sh.orig ++++ b/glm-source/build_glm.sh +@@ -216,37 +216,6 @@ ${CURDIR}/vers.sh $VERSION + #${CURDIR}/vers.sh $VERSION + cd ${CURDIR}/.. + +-if [ "$OSTYPE" = "Linux" ] ; then +- if [ $(lsb_release -is) = Ubuntu ] ; then +- if [ ! -d binaries/ubuntu/$(lsb_release -rs) ] ; then +- mkdir -p binaries/ubuntu/$(lsb_release -rs)/ +- fi +- cd ${CURDIR} +- if [ -x glm+ ] ; then +- /bin/cp debian/control-with+ debian/control +- else +- /bin/cp debian/control-no+ debian/control +- fi +- VERSDEB=`head -1 debian/changelog | cut -f2 -d\( | cut -f1 -d-` +- echo debian version $VERSDEB +- if [ "$VERSION" != "$VERSDEB" ] ; then +- echo updating debian version +- dch --newversion ${VERSION}-0 "new version ${VERSION}" +- fi +- VERSRUL=`grep 'version=' debian/rules | cut -f2 -d=` +- if [ "$VERSION" != "$VERSRUL" ] ; then +- sed -i "s/version=$VERSRUL/version=$VERSION/" debian/rules +- fi +- +- fakeroot ${MAKE} -f debian/rules binary || exit 1 +- +- cd .. +- +- mv glm*.deb binaries/ubuntu/$(lsb_release -rs)/ +- else +- echo "No package build for $(lsb_release -is)" +- fi +-fi + if [ "$OSTYPE" = "Darwin" ] ; then + MOSLINE=`grep 'SOFTWARE LICENSE AGREEMENT FOR ' '/System/Library/CoreServices/Setup Assistant.app/Contents/Resources/en.lproj/OSXSoftwareLicense.rtf'` + # pre Lion : MOSNAME=`echo ${MOSLINE} | awk -F 'Mac OS X ' '{print $NF}' | tr -d '\\' | tr ' ' '_'` diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2020-fosscuda-2019b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020-fosscuda-2019b.eb index c38602c4db91..686ba6389a4b 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2020-fosscuda-2019b.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020-fosscuda-2019b.eb @@ -34,6 +34,7 @@ sources = [SOURCELOWER_TAR_GZ] patches = [ 'GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch', 'GROMACS-2019_increase_test_timeout_for_GPU.patch', + 'GROMACS-2020_add-missing-sync.patch', ] checksums = [ '477e56142b3dcd9cb61b8f67b24a55760b04d1655e8684f979a75a5eec40ba01', # gromacs-2020.tar.gz @@ -41,6 +42,7 @@ checksums = [ '406f5edd204be812f095a6f07ebc2673c5f6ddf1b1c1428fd336a80b9c629275', # GROMACS-2019_increase_test_timeout_for_GPU.patch '0d16f53d428155197a0ed0b0974ce03422f199d7c463c4a9156a3b99e3c86234', + '3c9d7017422a722a960d26ad955d7a0f72a1305a6234bcb53851cc62662b96c9', # GROMACS-2020_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.3-fosscuda-2019b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.3-fosscuda-2019b.eb index 0f66c5d02adf..b717b38c5e5c 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.3-fosscuda-2019b.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.3-fosscuda-2019b.eb @@ -34,6 +34,7 @@ sources = [SOURCELOWER_TAR_GZ] patches = [ 'GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch', 'GROMACS-2019_increase_test_timeout_for_GPU.patch', + 'GROMACS-2020_add-missing-sync.patch', ] checksums = [ '903183691132db14e55b011305db4b6f4901cc4912d2c56c131edfef18cc92a9', # gromacs-2020.3.tar.gz @@ -41,6 +42,7 @@ checksums = [ '406f5edd204be812f095a6f07ebc2673c5f6ddf1b1c1428fd336a80b9c629275', # GROMACS-2019_increase_test_timeout_for_GPU.patch '0d16f53d428155197a0ed0b0974ce03422f199d7c463c4a9156a3b99e3c86234', + '3c9d7017422a722a960d26ad955d7a0f72a1305a6234bcb53851cc62662b96c9', # GROMACS-2020_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.5-fosscuda-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.5-fosscuda-2020a-Python-3.8.2.eb index 0b802e3a1b05..0e0b5ada1055 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.5-fosscuda-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020.5-fosscuda-2020a-Python-3.8.2.eb @@ -44,6 +44,7 @@ patches = [ 'GROMACS-2020_fix_gmxapi_gmx_allowed_cmd_name.patch', 'GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch', 'GROMACS-2020.4_correct_gcc9_check.patch', + 'GROMACS-2020_add-missing-sync.patch', ] checksums = [ '7b6aff647f7c8ee1bf12204d02cef7c55f44402a73195bd5f42cf11850616478', # gromacs-2020.5.tar.gz @@ -58,6 +59,7 @@ checksums = [ # GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch '89fbb7e2754de45573632c74f53563bb979df9758c949238a35865391d6b53fb', 'fd614b84a48b7702dbb59410f2c6a1604864942caf9594e50c29a73e87023871', # GROMACS-2020.4_correct_gcc9_check.patch + '3c9d7017422a722a960d26ad955d7a0f72a1305a6234bcb53851cc62662b96c9', # GROMACS-2020_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2020_add-missing-sync.patch b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020_add-missing-sync.patch new file mode 100644 index 000000000000..706888bd2e40 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2020_add-missing-sync.patch @@ -0,0 +1,39 @@ +Add missing sync in LINCS and SETTLE CUDA kernels +https://gitlab.com/gromacs/gromacs/-/merge_requests/2499 +Patch added to EasyBuild by Simon Branford (University of Birmingham) +diff --git a/src/gromacs/mdlib/lincs_cuda.cu b/src/gromacs/mdlib/lincs_cuda.cu +index 27ad86f17f..4964a3d040 100644 +--- a/src/gromacs/mdlib/lincs_cuda.cu ++++ b/src/gromacs/mdlib/lincs_cuda.cu +@@ -382,11 +382,15 @@ __launch_bounds__(c_maxThreadsPerBlock) __global__ + sm_threadVirial[d * blockDim.x + (threadIdx.x + dividedAt)]; + } + } +- // Syncronize if not within one warp ++ // Synchronize if not within one warp + if (dividedAt > warpSize / 2) + { + __syncthreads(); + } ++ else ++ { ++ __syncwarp(); ++ } + } + // First 6 threads in the block add the results of 6 tensor components to the global memory address. + if (threadIdx.x < 6) +diff --git a/src/gromacs/mdlib/settle_cuda.cu b/src/gromacs/mdlib/settle_cuda.cu +index c02f0d5884..c6ca1e2452 100644 +--- a/src/gromacs/mdlib/settle_cuda.cu ++++ b/src/gromacs/mdlib/settle_cuda.cu +@@ -352,6 +352,10 @@ __launch_bounds__(c_maxThreadsPerBlock) __global__ + { + __syncthreads(); + } ++ else ++ { ++ __syncwarp(); ++ } + } + // First 6 threads in the block add the 6 components of virial to the global memory address + if (tib < 6) diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021-fosscuda-2020b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021-fosscuda-2020b.eb index 5a529a9533be..706f52ed24b9 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021-fosscuda-2020b.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021-fosscuda-2020b.eb @@ -40,6 +40,7 @@ patches = [ 'GROMACS-2019_increase_test_timeout_for_GPU.patch', 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', 'GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch', + 'GROMACS-2021_add-missing-sync.patch', ] checksums = [ 'efa78ab8409b0f5bf0fbca174fb8fbcf012815326b5c71a9d7c385cde9a8f87b', # gromacs-2021.tar.gz @@ -51,6 +52,7 @@ checksums = [ 'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49', # GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch '89fbb7e2754de45573632c74f53563bb979df9758c949238a35865391d6b53fb', + '52ee257309ff7761c2dd5b26de7dbc63f8ba698082adb88e2843f90e3f9168bf', # GROMACS-2021_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.2-fosscuda-2020b.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.2-fosscuda-2020b.eb index 13d039f411a9..abde5c236396 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.2-fosscuda-2020b.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.2-fosscuda-2020b.eb @@ -40,6 +40,7 @@ patches = [ 'GROMACS-2019_increase_test_timeout_for_GPU.patch', 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', 'GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch', + 'GROMACS-2021_add-missing-sync.patch', ] checksums = [ 'd940d865ea91e78318043e71f229ce80d32b0dc578d64ee5aa2b1a4be801aadb', # gromacs-2021.2.tar.gz @@ -51,6 +52,7 @@ checksums = [ 'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49', # GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch '89fbb7e2754de45573632c74f53563bb979df9758c949238a35865391d6b53fb', + '52ee257309ff7761c2dd5b26de7dbc63f8ba698082adb88e2843f90e3f9168bf', # GROMACS-2021_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1-PLUMED-2.7.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1-PLUMED-2.7.2.eb index e431ba0f7599..aa8b7a249fd2 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1-PLUMED-2.7.2.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1-PLUMED-2.7.2.eb @@ -44,6 +44,7 @@ patches = [ 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', 'GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch', 'GROMACS-2021.3_skip_test_for_plumed.patch', + 'GROMACS-2021_add-missing-sync.patch', ] checksums = [ 'e109856ec444768dfbde41f3059e3123abdb8fe56ca33b1a83f31ed4575a1cc6', # gromacs-2021.3.tar.gz @@ -56,6 +57,7 @@ checksums = [ # GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch '89fbb7e2754de45573632c74f53563bb979df9758c949238a35865391d6b53fb', 'c06d0a8c3e75b232224f46bc3b70e135c4c02ec4151712970f5edd85d890f018', # GROMACS-2021.3_skip_test_for_plumed.patch + '52ee257309ff7761c2dd5b26de7dbc63f8ba698082adb88e2843f90e3f9168bf', # GROMACS-2021_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1.eb index 0b05b269df51..a3519c9ca334 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-CUDA-11.3.1.eb @@ -41,6 +41,7 @@ patches = [ 'GROMACS-2019_increase_test_timeout_for_GPU.patch', 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', 'GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch', + 'GROMACS-2021_add-missing-sync.patch', ] checksums = [ 'e109856ec444768dfbde41f3059e3123abdb8fe56ca33b1a83f31ed4575a1cc6', # gromacs-2021.3.tar.gz @@ -52,6 +53,7 @@ checksums = [ 'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49', # GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch '89fbb7e2754de45573632c74f53563bb979df9758c949238a35865391d6b53fb', + '52ee257309ff7761c2dd5b26de7dbc63f8ba698082adb88e2843f90e3f9168bf', # GROMACS-2021_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-PLUMED-2.7.2.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-PLUMED-2.7.2.eb new file mode 100644 index 000000000000..2eede7382322 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.3-foss-2021a-PLUMED-2.7.2.eb @@ -0,0 +1,96 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * J. Sassmannshausen +# * Dugan Witherick +# License:: MIT/GPL + +name = 'GROMACS' +version = '2021.3' +_plumedver = '2.7.2' +versionsuffix = '-PLUMED-%s' % _plumedver + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI builds +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build +next to PLUMED.""" + +toolchain = {'name': 'foss', 'version': '2021a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch', + 'GROMACS-2019_increase_test_timeout_for_GPU.patch', + 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', + 'GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch', + 'GROMACS-2021.3_skip_test_for_plumed.patch', +] +checksums = [ + 'e109856ec444768dfbde41f3059e3123abdb8fe56ca33b1a83f31ed4575a1cc6', # gromacs-2021.3.tar.gz + # GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch + '406f5edd204be812f095a6f07ebc2673c5f6ddf1b1c1428fd336a80b9c629275', + # GROMACS-2019_increase_test_timeout_for_GPU.patch + '0d16f53d428155197a0ed0b0974ce03422f199d7c463c4a9156a3b99e3c86234', + # GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch + 'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49', + # GROMACS-2020.5_fix_threads_gpu_Gmxapitests.patch + '89fbb7e2754de45573632c74f53563bb979df9758c949238a35865391d6b53fb', + # GROMACS-2021.3_skip_test_for_plumed.patch + 'c06d0a8c3e75b232224f46bc3b70e135c4c02ec4151712970f5edd85d890f018', +] + +builddependencies = [ + ('CMake', '3.20.1'), + ('scikit-build', '0.11.1'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('networkx', '2.5.1'), + ('PLUMED', _plumedver), +] +# PLUMED-2.7.2 does not officially support GROMACS-2021.3, but seems to work fine +ignore_plumed_version_check = True + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.2.0', { + 'preinstallopts': "export GMXTOOLCHAINDIR=%(installdir)s/share/cmake/gromacs_mpi && ", + 'checksums': ['3954bf123da12fc60bcfaeed8263f5e2d3e16e5136c2bb5c8207b20fa7406788'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-CUDA-11.4.1-PLUMED-2.8.0.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-CUDA-11.4.1-PLUMED-2.8.0.eb new file mode 100644 index 000000000000..bbe65cdd01e4 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-CUDA-11.4.1-PLUMED-2.8.0.eb @@ -0,0 +1,104 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * Dugan Witherick +# * Christoph Siegert +# * J. Sassmannshausen +# License:: MIT/GPL + +name = 'GROMACS' +version = '2021.5' +_plumedver = '2.8.0' +_cuda_suffix = '-CUDA-%(cudaver)s' +versionsuffix = _cuda_suffix + '-PLUMED-%s' % _plumedver + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a GPU enabled build, containing both MPI and threadMPI builds +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build +next to PLUMED.""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch', + 'GROMACS-2019_increase_test_timeout_for_GPU.patch', + 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', + 'GROMACS-2021.5_fix_threads_gpu_Gmxapitests.patch', + 'GROMACS-2021.3_skip_test_for_plumed.patch', + 'GROMACS-2021_add-missing-sync.patch', +] +checksums = [ + 'eba63fe6106812f72711ef7f76447b12dd1ee6c81b3d8d4d0e3098cd9ea009b6', # gromacs-2021.5.tar.gz + # GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch + '406f5edd204be812f095a6f07ebc2673c5f6ddf1b1c1428fd336a80b9c629275', + # GROMACS-2019_increase_test_timeout_for_GPU.patch + '0d16f53d428155197a0ed0b0974ce03422f199d7c463c4a9156a3b99e3c86234', + # GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch + 'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49', + # GROMACS-2021.5_fix_threads_gpu_Gmxapitests.patch + '7d39da0b431fbc9e94e857552246eb0ec892f26b13e519b3706785cc5e01a563', + # GROMACS-2021.3_skip_test_for_plumed.patch + 'c06d0a8c3e75b232224f46bc3b70e135c4c02ec4151712970f5edd85d890f018', + '52ee257309ff7761c2dd5b26de7dbc63f8ba698082adb88e2843f90e3f9168bf', # GROMACS-2021_add-missing-sync.patch +] + +builddependencies = [ + ('CMake', '3.22.1'), + ('scikit-build', '0.11.1'), + ('Doxygen', '1.9.1'), +] + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('networkx', '2.6.3'), + ('PLUMED', _plumedver), + ('CUDA', '11.4.1', '', True), + ('UCX-CUDA', '1.11.2', _cuda_suffix), +] + +# PLUMED-2.8.0 does not officially support GROMACS-2021.5, but seems to work fine +ignore_plumed_version_check = True + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.2.2.1', { + 'preinstallopts': "export GMXTOOLCHAINDIR=%(installdir)s/share/cmake/gromacs_mpi && ", + 'checksums': ['e24d507585e1a7808a5ee3ed04da5d6577f2a8961bbeafa7068528e00aa6b20d'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-CUDA-11.4.1.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-CUDA-11.4.1.eb index cf94349e8a36..3226925397df 100644 --- a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-CUDA-11.4.1.eb +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-CUDA-11.4.1.eb @@ -42,6 +42,7 @@ patches = [ 'GROMACS-2019_increase_test_timeout_for_GPU.patch', 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', 'GROMACS-2021.5_fix_threads_gpu_Gmxapitests.patch', + 'GROMACS-2021_add-missing-sync.patch', ] checksums = [ 'eba63fe6106812f72711ef7f76447b12dd1ee6c81b3d8d4d0e3098cd9ea009b6', # gromacs-2021.5.tar.gz @@ -53,6 +54,7 @@ checksums = [ 'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49', # GROMACS-2021.5_fix_threads_gpu_Gmxapitests.patch '7d39da0b431fbc9e94e857552246eb0ec892f26b13e519b3706785cc5e01a563', + '52ee257309ff7761c2dd5b26de7dbc63f8ba698082adb88e2843f90e3f9168bf', # GROMACS-2021_add-missing-sync.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-PLUMED-2.8.0.eb b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-PLUMED-2.8.0.eb new file mode 100644 index 000000000000..f9233c3c1615 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021.5-foss-2021b-PLUMED-2.8.0.eb @@ -0,0 +1,99 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC, +# Ghent University / The Francis Crick Institute +# Authors:: +# * Wiktor Jurkowski +# * Fotis Georgatos +# * George Tsouloupas +# * Kenneth Hoste +# * Adam Huffman +# * Ake Sandgren +# * Dugan Witherick +# * Christoph Siegert +# * J. Sassmannshausen +# License:: MIT/GPL + +name = 'GROMACS' +version = '2021.5' +_plumedver = '2.8.0' +versionsuffix = '-PLUMED-%s' % _plumedver + +homepage = 'https://www.gromacs.org' +description = """ +GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the +Newtonian equations of motion for systems with hundreds to millions of +particles. + +This is a CPU only build, containing both MPI and threadMPI builds +for both single and double precision. + +It also contains the gmxapi extension for the single precision MPI build +next to PLUMED.""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = [ + 'https://ftp.gromacs.org/pub/gromacs/', + 'ftp://ftp.gromacs.org/pub/gromacs/', +] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + 'GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch', + 'GROMACS-2019_increase_test_timeout_for_GPU.patch', + 'GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch', + 'GROMACS-2021.5_fix_threads_gpu_Gmxapitests.patch', + 'GROMACS-2021.3_skip_test_for_plumed.patch', +] +checksums = [ + 'eba63fe6106812f72711ef7f76447b12dd1ee6c81b3d8d4d0e3098cd9ea009b6', # gromacs-2021.5.tar.gz + # GROMACS-2019_fix_omp_num_threads_and_google_test_death_style_in_tests.patch + '406f5edd204be812f095a6f07ebc2673c5f6ddf1b1c1428fd336a80b9c629275', + # GROMACS-2019_increase_test_timeout_for_GPU.patch + '0d16f53d428155197a0ed0b0974ce03422f199d7c463c4a9156a3b99e3c86234', + # GROMACS-2021_fix_gmxapi_gmx_allowed_cmd_name.patch + 'b7ffb292ec362e033db1bedd340353f0644dbaae872127750f3dda1ac7e87d49', + # GROMACS-2021.5_fix_threads_gpu_Gmxapitests.patch + '7d39da0b431fbc9e94e857552246eb0ec892f26b13e519b3706785cc5e01a563', + # GROMACS-2021.3_skip_test_for_plumed.patch + 'c06d0a8c3e75b232224f46bc3b70e135c4c02ec4151712970f5edd85d890f018', +] + +builddependencies = [ + ('CMake', '3.22.1'), + ('scikit-build', '0.11.1'), + ('Doxygen', '1.9.1'), +] + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('networkx', '2.6.3'), + ('PLUMED', _plumedver), +] + +# PLUMED-2.7.3 does not officially support GROMACS-2021.5, but seems to work fine +ignore_plumed_version_check = True + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'use_pip': True, + 'download_dep_fail': True, + 'sanity_pip_check': True, +} + +exts_list = [ + ('gmxapi', '0.2.2.1', { + 'preinstallopts': "export GMXTOOLCHAINDIR=%(installdir)s/share/cmake/gromacs_mpi && ", + 'checksums': ['e24d507585e1a7808a5ee3ed04da5d6577f2a8961bbeafa7068528e00aa6b20d'], + }), +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GROMACS/GROMACS-2021_add-missing-sync.patch b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021_add-missing-sync.patch new file mode 100644 index 000000000000..78b6264feef5 --- /dev/null +++ b/easybuild/easyconfigs/g/GROMACS/GROMACS-2021_add-missing-sync.patch @@ -0,0 +1,39 @@ +Add missing sync in LINCS and SETTLE CUDA kernels +https://gitlab.com/gromacs/gromacs/-/merge_requests/2499 +Patch added to EasyBuild by Simon Branford (University of Birmingham) +diff --git a/src/gromacs/mdlib/lincs_gpu.cu b/src/gromacs/mdlib/lincs_gpu.cu +index 27ad86f17f..4964a3d040 100644 +--- a/src/gromacs/mdlib/lincs_gpu.cu ++++ b/src/gromacs/mdlib/lincs_gpu.cu +@@ -382,11 +382,15 @@ __launch_bounds__(c_maxThreadsPerBlock) __global__ + sm_threadVirial[d * blockDim.x + (threadIdx.x + dividedAt)]; + } + } +- // Syncronize if not within one warp ++ // Synchronize if not within one warp + if (dividedAt > warpSize / 2) + { + __syncthreads(); + } ++ else ++ { ++ __syncwarp(); ++ } + } + // First 6 threads in the block add the results of 6 tensor components to the global memory address. + if (threadIdx.x < 6) +diff --git a/src/gromacs/mdlib/settle_gpu.cu b/src/gromacs/mdlib/settle_gpu.cu +index c02f0d5884..c6ca1e2452 100644 +--- a/src/gromacs/mdlib/settle_gpu.cu ++++ b/src/gromacs/mdlib/settle_gpu.cu +@@ -352,6 +352,10 @@ __launch_bounds__(c_maxThreadsPerBlock) __global__ + { + __syncthreads(); + } ++ else ++ { ++ __syncwarp(); ++ } + } + // First 6 threads in the block add the 6 components of virial to the global memory address + if (tib < 6) diff --git a/easybuild/easyconfigs/g/GTK2/GTK2-2.24.33-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/GTK2/GTK2-2.24.33-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..1330c197693f --- /dev/null +++ b/easybuild/easyconfigs/g/GTK2/GTK2-2.24.33-GCCcore-11.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'GTK2' +version = '2.24.33' + +homepage = 'https://www.gtk.org' +description = """ + The GTK+ 2 package contains libraries used for creating graphical user interfaces for applications. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://ftp.gnome.org/pub/GNOME/sources/gtk+/%(version_major_minor)s'] +sources = ['gtk+-%(version)s.tar.xz'] +checksums = ['ac2ac757f5942d318a311a54b0c80b5ef295f299c2a73c632f6bfb1ff49cc6da'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), + ('GObject-Introspection', '1.72.0'), +] +dependencies = [ + ('ATK', '2.38.0'), + ('Gdk-Pixbuf', '2.42.8'), + ('Pango', '1.50.7'), +] + +configopts = "--disable-silent-rules --disable-glibtest --enable-introspection=yes --disable-visibility " + +sanity_check_paths = { + 'files': ['bin/gtk-update-icon-cache', 'lib/libgtk-x11-2.0.%s' % SHLIB_EXT], + 'dirs': ['include/gtk-2.0'], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..81da084b9880 --- /dev/null +++ b/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-11.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'GTS' +version = '0.7.6' + +homepage = 'http://gts.sourceforge.net/' +description = """GTS stands for the GNU Triangulated Surface Library. +It is an Open Source Free Software Library intended to provide a set of useful +functions to deal with 3D surfaces meshed with interconnected triangles.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['059c3e13e3e3b796d775ec9f96abdce8f2b3b5144df8514eda0cc12e13e8b81e'] + +builddependencies = [ + ('pkgconf', '1.8.0'), + ('binutils', '2.38'), +] +dependencies = [ + ('GLib', '2.72.1'), +] + +sanity_check_paths = { + 'files': ['lib/libgts.%s' % SHLIB_EXT, 'bin/gts2oogl', 'bin/gtscheck'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Geant4/Geant4-11.0.1-GCC-11.2.0.eb b/easybuild/easyconfigs/g/Geant4/Geant4-11.0.1-GCC-11.2.0.eb new file mode 100644 index 000000000000..346a936d5458 --- /dev/null +++ b/easybuild/easyconfigs/g/Geant4/Geant4-11.0.1-GCC-11.2.0.eb @@ -0,0 +1,26 @@ +name = 'Geant4' +version = '11.0.1' + +homepage = 'https://geant4.cern.ch/' +description = """Geant4 is a toolkit for the simulation of the passage of particles through matter. + Its areas of application include high energy, nuclear and accelerator physics, + as well as studies in medical and space science.""" + +toolchain = {'name': 'GCC', 'version': '11.2.0'} + +github_account = 'Geant4' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +checksums = ['e7bdcb4ce85987b8d4d77eaee15fb6a8f861faaa5accbd355a7dbf28fdf94318'] + +builddependencies = [('CMake', '3.21.1')] +dependencies = [ + ('expat', '2.4.1'), + # recommended CLHEP version, see https://geant4-data.web.cern.ch/ReleaseNotes/ReleaseNotes.11.0.html + ('CLHEP', '2.4.5.1'), +] + +configopts = "-DEXPAT_LIBRARY=$EBROOTEXPAT/lib/libexpat.so -DEXPAT_INCLUDE_DIR=$EBROOTEXPAT/include" +configopts += " -DCLHEP_ROOT_DIR=$EBROOTCLHEP -DGEANT4_INSTALL_DATA=OFF" + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/g/Geant4/Geant4-11.0.2-GCC-11.2.0.eb b/easybuild/easyconfigs/g/Geant4/Geant4-11.0.2-GCC-11.2.0.eb new file mode 100644 index 000000000000..78635c02ef38 --- /dev/null +++ b/easybuild/easyconfigs/g/Geant4/Geant4-11.0.2-GCC-11.2.0.eb @@ -0,0 +1,26 @@ +name = 'Geant4' +version = '11.0.2' + +homepage = 'https://geant4.cern.ch/' +description = """Geant4 is a toolkit for the simulation of the passage of particles through matter. + Its areas of application include high energy, nuclear and accelerator physics, + as well as studies in medical and space science.""" + +toolchain = {'name': 'GCC', 'version': '11.2.0'} + +github_account = 'Geant4' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +checksums = ['ddabe8d5cc3bd465c969f375cc43ee537ff33c17dc2943b8a4420cfa83cfcfcc'] + +builddependencies = [('CMake', '3.22.1')] +dependencies = [ + ('expat', '2.4.1'), + # recommended CLHEP version, see https://geant4-data.web.cern.ch/ReleaseNotes/ReleaseNotes.11.0.html + ('CLHEP', '2.4.5.1'), +] + +configopts = "-DEXPAT_LIBRARY=$EBROOTEXPAT/lib/libexpat.so -DEXPAT_INCLUDE_DIR=$EBROOTEXPAT/include" +configopts += " -DCLHEP_ROOT_DIR=$EBROOTCLHEP -DGEANT4_INSTALL_DATA=OFF" + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/g/GetOrganelle/GetOrganelle-1.7.6.1-foss-2021b.eb b/easybuild/easyconfigs/g/GetOrganelle/GetOrganelle-1.7.6.1-foss-2021b.eb new file mode 100644 index 000000000000..2898fcacaac0 --- /dev/null +++ b/easybuild/easyconfigs/g/GetOrganelle/GetOrganelle-1.7.6.1-foss-2021b.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonPackage' + +name = 'GetOrganelle' +version = '1.7.6.1' + +homepage = 'https://github.com/Kinggerm/GetOrganelle' +description = """This toolkit assemblies organelle genome from genomic skimming data.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/Kinggerm/GetOrganelle/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['de768619864ca40d7e97e5059db1187c64c53f764c4065731d955c1c53e4ef1d'] + +dependencies = [ + ('Python', '3.9.6'), + ('Bandage', '0.9.0'), + ('SciPy-bundle', '2021.10'), + ('sympy', '1.9'), + ('SPAdes', '3.15.3'), + ('Bowtie2', '2.4.4'), + ('BLAST+', '2.12.0'), + ('Perl', '5.34.0'), + ('matplotlib', '3.4.3') +] + +download_dep_fail = True +use_pip = True + +options = {'modulename': False} + +fix_python_shebang_for = ['bin/*.py'] + +sanity_pip_check = True + +sanity_check_commands = ["get_organelle_from_reads.py -h"] + +sanity_check_paths = { + 'files': ['bin/check_annotations.py', 'bin/get_organelle_from_reads.py', 'bin/slim_graph.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.56.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.56.1-GCCcore-11.3.0.eb index 51219d520263..e04d1119352a 100644 --- a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.56.1-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.56.1-GCCcore-11.3.0.eb @@ -30,6 +30,7 @@ dependencies = [ ('GLib', '2.72.1'), ('cairo', '1.17.4'), ('LibTIFF', '4.3.0'), + ('GTK2', '2.24.33'), ] # Do not use local copies of zlib, jpeg, freetype, and png diff --git a/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.1.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.1.1-GCCcore-10.2.0.eb new file mode 100644 index 000000000000..b8e860947db0 --- /dev/null +++ b/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.1.1-GCCcore-10.2.0.eb @@ -0,0 +1,50 @@ +# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. +easyblock = 'PythonBundle' + +name = 'Globus-CLI' +version = '3.1.1' + +homepage = "https://docs.globus.org/cli/" +description = """A Command Line Wrapper over the Globus SDK for Python, which provides an interface to Globus services + from the shell, and is suited to both interactive and simple scripting use cases.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +builddependencies = [ + ('binutils', '2.35'), +] + +dependencies = [ + ('Python', '3.8.6'), + ('OpenSSL', '1.1', '', True), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('click', '8.0.3', { + 'checksums': ['410e932b050f5eed773c4cda94de75971c89cdb3155a72a0831139a79e5ecb5b'], + }), + ('PyJWT', '2.3.0', { + 'modulename': 'jwt', + 'checksums': ['b888b4d56f06f6dcd777210c334e69c737be74755d3e5e9ee3fe67dc18a0ee41'], + }), + ('globus-sdk', '3.0.3', { + 'checksums': ['f608ce7772dca3c2c8de22b4e89fadae82de7e326f18df3440c99ecac0ae5f55'], + }), + ('jmespath', '0.10.0', { + 'checksums': ['b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9'], + }), + (name, version, { + 'modulename': 'globus_cli', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['480876fd45f5921369854197a7b6681df1d67831d8c5f503f5d44b8cf39d4e7a'], + }), +] + +fix_python_shebang_for = ['bin/globus', 'bin/jp.py', 'bin/pyjwt'] + +sanity_check_commands = ['globus --help'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.2.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.2.0-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..45f561b1ab29 --- /dev/null +++ b/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.2.0-GCCcore-10.3.0.eb @@ -0,0 +1,50 @@ +# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. +easyblock = 'PythonBundle' + +name = 'Globus-CLI' +version = '3.2.0' + +homepage = "https://docs.globus.org/cli/" +description = """A Command Line Wrapper over the Globus SDK for Python, which provides an interface to Globus services + from the shell, and is suited to both interactive and simple scripting use cases.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +builddependencies = [ + ('binutils', '2.36.1'), +] + +dependencies = [ + ('Python', '3.9.5'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('click', '8.0.4', { + # click in Python v3.9.5 easyconfig is too old for globus-sdk + 'checksums': ['8458d7b1287c5fb128c90e23381cf99dcde74beaf6c7ff6384ce84d6fe090adb'], + }), + ('PyJWT', '2.4.0', { + 'modulename': 'jwt', + 'checksums': ['d42908208c699b3b973cbeb01a969ba6a96c821eefb1c5bfe4c390c01d67abba'], + }), + ('globus-sdk', '3.2.0', { + 'checksums': ['33bc60bf769b2c42eddc2e50c03d3c56ba74660f593a2a207bb46ebd6a8be85a'], + }), + ('jmespath', '0.10.0', { + 'checksums': ['b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9'], + }), + (name, version, { + 'modulename': 'globus_cli', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['860a3245582c79e42168588e5f0478004f29106f74b548ef8d757bb5e8309b96'], + }), +] + +fix_python_shebang_for = ['bin/globus', 'bin/jp.py', 'bin/pyjwt'] + +sanity_check_commands = ['globus --help'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.6.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.6.0-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..1ac2753ebc0c --- /dev/null +++ b/easybuild/easyconfigs/g/Globus-CLI/Globus-CLI-3.6.0-GCCcore-11.2.0.eb @@ -0,0 +1,51 @@ +# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. +easyblock = 'PythonBundle' + +name = 'Globus-CLI' +version = '3.6.0' + +homepage = "https://docs.globus.org/cli/" +description = """A Command Line Wrapper over the Globus SDK for Python, which provides an interface to Globus services + from the shell, and is suited to both interactive and simple scripting use cases.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +builddependencies = [ + ('binutils', '2.37'), +] + +dependencies = [ + ('Python', '3.9.6'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('PyJWT', '2.4.0', { + 'modulename': 'jwt', + 'checksums': ['d42908208c699b3b973cbeb01a969ba6a96c821eefb1c5bfe4c390c01d67abba'], + }), + ('typing-extensions', '4.3.0', { + # typing-extensions in Python v3.9.6 easyconfig is too old for globus-sdk + 'source_tmpl': 'typing_extensions-%(version)s.tar.gz', + 'checksums': ['e6d2677a32f47fc7eb2795db1dd15c1f34eff616bcaf2cfb5e997f854fa1c4a6'], + }), + ('globus-sdk', '3.9.0', { + 'checksums': ['456f707b25a8c502607134f1d699b5970ef1aa9d17877474db73fc6d87c711e9'], + }), + ('jmespath', '0.10.0', { + 'checksums': ['b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9'], + }), + (name, version, { + 'modulename': 'globus_cli', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['dd1b8d1f384c0010556adc50970ffd1dd2f03ce8d0a5ae315961f32fa0554407'], + }), +] + +fix_python_shebang_for = ['bin/globus', 'bin/jp.py', 'bin/pyjwt'] + +sanity_check_commands = ['globus --help'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-5.0.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/Graphviz/Graphviz-5.0.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..574ffbd5cd30 --- /dev/null +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-5.0.0-GCCcore-11.3.0.eb @@ -0,0 +1,95 @@ +easyblock = 'ConfigureMake' + +name = 'Graphviz' +version = '5.0.0' +local_pyver_major = '3' + +homepage = 'https://www.graphviz.org/' +description = """Graphviz is open source graph visualization software. Graph visualization + is a way of representing structural information as diagrams of + abstract graphs and networks. It has important applications in networking, + bioinformatics, software engineering, database and web design, machine learning, + and in visual interfaces for other technical domains.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://gitlab.com/graphviz/graphviz/-/archive/%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['%(name)s-%(version)s_skip-install-data-hook.patch'] +checksums = [ + 'f8cc576694ae93659f453b6b4a4c2f04572a90cfccdca2d4271f2e7c60bb3d60', # graphviz-5.0.0.tar.gz + '4cafb6eac6f59fa4e90cef6e83c276ad5e4e24b10992b18d4b51c6d28dfe4ca1', # Graphviz-5.0.0_skip-install-data-hook.patch +] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.38'), + ('Bison', '3.8.2'), + ('flex', '2.6.4'), + ('SWIG', '4.0.2'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Java', '11', '', True), + ('Python', '3.10.4'), + ('FriBidi', '1.0.12'), + ('Gdk-Pixbuf', '2.42.8'), + ('Ghostscript', '9.56.1'), + ('GTS', '0.7.6'), + ('libgd', '2.3.3'), + ('Pango', '1.50.7'), + ('Perl', '5.34.1'), + ('Qt5', '5.15.5'), + ('Tcl', '8.6.12'), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('libjpeg-turbo', '2.1.3'), + ('expat', '2.4.8'), +] + +preconfigopts = './autogen.sh NOCONFIG && ' + +configopts = '--enable-python%s=yes ' % local_pyver_major +configopts += '--enable-guile=no --enable-lua=no --enable-ocaml=no ' +configopts += '--enable-r=no --enable-ruby=no --enable-php=no ' +# Use ltdl from libtool in EB +configopts += '--enable-ltdl --without-included-ltdl --disable-ltdl-install ' +configopts += '--with-ltdl-include=$EBROOTLIBTOOL/include --with-ltdl-lib=$EBROOTLIBTOOL/lib ' +# Override the hardcoded paths to Java libraries +configopts += '--with-javaincludedir=$JAVA_HOME/include --with-javaincludedir=$JAVA_HOME/include/linux ' +configopts += '--with-javalibdir=$JAVA_HOME/lib' +configopts += '--with-expatincludedir=$EBROOTEXPAT/include --with-expatlibdir=$EBROOTEXPAT/lib' +configopts += '--with-zincludedir=$EBROOTZLIB/include --with-zlibdir=$EBROOTZLIB/lib' + +prebuildopts = 'qmake -o cmd/gvedit/qMakefile cmd/gvedit/gvedit.pro && ' + +postinstallcmds = ['%(installdir)s/bin/dot -c'] # Writes plugin configuration + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['acyclic', 'bcomps', 'ccomps', 'cluster', 'diffimg', 'dijkstra', 'dot', + 'dot_builtins', 'edgepaint', 'gc', 'gml2gv', 'graphml2gv', 'gv2gml', + 'gvcolor', 'gvedit', 'gvgen', 'gvmap', 'gvmap.sh', 'gvpack', 'gvpr', 'gxl2gv', + 'neato', 'mm2gv', 'nop', 'prune', 'sccmap', 'tred', 'unflatten', + 'vimdot']] + + ['lib/%s.%s' % (x, SHLIB_EXT) for x in ['libcdt', 'libcgraph', 'libgvc', 'libgvpr', 'liblab_gamut', + 'libpathplan', 'libxdot']], + 'dirs': ['include', 'lib/graphviz', 'lib/graphviz/java', 'lib/graphviz/python%s' % local_pyver_major, + 'lib/pkgconfig', 'share'] +} + +sanity_check_commands = [ + ("test ! -d $EBROOTTCL/lib/*/graphviz", ''), + ("test ! -d $EBROOTTCL/lib64/*/graphviz", ''), + ('python', '-c "import gv"'), +] + +modextrapaths = { + 'CLASSPATH': 'lib/graphviz/java', + 'LD_LIBRARY_PATH': 'lib/graphviz/java', + 'PYTHONPATH': 'lib/graphviz/python%s' % local_pyver_major, + 'TCLLIBPATH': 'lib/graphviz/tcl', +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-5.0.0_skip-install-data-hook.patch b/easybuild/easyconfigs/g/Graphviz/Graphviz-5.0.0_skip-install-data-hook.patch new file mode 100644 index 000000000000..96c30b274102 --- /dev/null +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-5.0.0_skip-install-data-hook.patch @@ -0,0 +1,96 @@ +don't create directories and install language bindings in non-owned directories +author: Kenneth Hoste (HPC-UGent) +update version 2.42.2: Alex Domingo (VUB) +update version 5.0.0: Simon Pinches +diff -Nru graphviz-5.0.0-orig/tclpkg/Makefile.am graphviz-5.0.0/tclpkg/Makefile.am +--- graphviz-5.0.0-orig/tclpkg/Makefile.am 2022-07-07 17:40:57.000000000 +0200 ++++ graphviz-5.0.0/tclpkg/Makefile.am 2022-08-09 11:38:18.162458502 +0200 +@@ -33,87 +33,7 @@ + # ./configure --prefix=$HOME/graphviz; make; make install + # without root privileges. + install-data-hook: +-if WITH_LUA +- -mkdir -p $(DESTDIR)$(LUA_INSTALL_DIR); +- if test -w $(DESTDIR)$(LUA_INSTALL_DIR); then \ +- (cd $(DESTDIR)$(LUA_INSTALL_DIR); \ +- cp -f $(DESTDIR)$(pkgluadir)/libgv_lua.so gv.so;) \ +- else \ +- echo "Warning: $(LUA_INSTALL_DIR) is not writable."; \ +- echo "Skipping system installation of lua binding."; \ +- fi +-endif +-if WITH_PERL +- -mkdir -p $(DESTDIR)$(PERL_INSTALL_DIR); +- if test -w $(DESTDIR)$(PERL_INSTALL_DIR); then \ +- (cd $(DESTDIR)$(PERL_INSTALL_DIR); \ +- cp -f $(DESTDIR)$(pkgperldir)/libgv_perl.so gv.so; \ +- cp -f $(DESTDIR)$(pkgperldir)/gv.pm gv.pm;) \ +- else \ +- echo "Warning: $(PERL_INSTALL_DIR) is not writable."; \ +- echo "Skipping system installation of perl binding."; \ +- fi +-endif +-if WITH_PHP +- -mkdir -p $(DESTDIR)$(PHP_INSTALL_DIR); +- if test -w $(DESTDIR)$(PHP_INSTALL_DIR); then \ +- (cd $(DESTDIR)$(PHP_INSTALL_DIR); \ +- cp -f $(DESTDIR)$(pkgphpdir)/libgv_php.so gv.so;) \ +- else \ +- echo "Warning: $(PHP_INSTALL_DIR) is not writable."; \ +- echo "Skipping system installation of php binding."; \ +- fi +- -mkdir -p $(DESTDIR)$(PHP_INSTALL_DATADIR); +- if test -w $(DESTDIR)$(PHP_INSTALL_DATADIR); then \ +- (cd $(DESTDIR)$(PHP_INSTALL_DATADIR); \ +- cp -f $(DESTDIR)$(pkgphpdir)/gv.php gv.php;) \ +- else \ +- echo "Warning: $(PHP_INSTALL_DATADIR) is not writable."; \ +- echo "Skipping system installation of php binding."; \ +- fi +-endif +-if WITH_PYTHON +- -mkdir -p $(DESTDIR)$(PYTHON_INSTALL_DIR); +- if test -w $(DESTDIR)$(PYTHON_INSTALL_DIR); then \ +- (cd $(DESTDIR)$(PYTHON_INSTALL_DIR); \ +- cp -f $(DESTDIR)$(pkgpythondir)/libgv_python.so _gv.so; \ +- cp -f $(DESTDIR)$(pkgpythondir)/gv.py gv.py;) \ +- else \ +- echo "Warning: $(PYTHON_INSTALL_DIR) is not writable."; \ +- echo "Skipping system installation of python binding."; \ +- fi +-endif +-if WITH_PYTHON3 +- -mkdir -p $(DESTDIR)$(PYTHON3_INSTALL_DIR); +- if test -w $(DESTDIR)$(PYTHON3_INSTALL_DIR); then \ +- (cd $(DESTDIR)$(PYTHON3_INSTALL_DIR); \ +- cp -f $(DESTDIR)$(pkgpython3dir)/libgv_python3.so _gv.so; \ +- cp -f $(DESTDIR)$(pkgpython3dir)/gv.py gv.py;) \ +- else \ +- echo "Warning: $(PYTHON3_INSTALL_DIR) is not writable."; \ +- echo "Skipping system installation of python3 binding."; \ +- fi +-endif +-if WITH_RUBY +- -mkdir -p $(DESTDIR)$(RUBY_INSTALL_DIR); +- if test -w $(DESTDIR)$(RUBY_INSTALL_DIR); then \ +- (cd $(DESTDIR)$(RUBY_INSTALL_DIR); \ +- cp -f $(DESTDIR)$(pkgrubydir)/libgv_ruby.so gv.so;) \ +- else \ +- echo "Warning: $(RUBY_INSTALL_DIR) is not writable."; \ +- echo "Skipping system installation of ruby binding."; \ +- fi +-endif +-if WITH_TCL +- -mkdir -p $(DESTDIR)$(TCL_INSTALL_DIR); +- if test -w $(DESTDIR)$(TCL_INSTALL_DIR)/; then \ +- (cd $(DESTDIR)$(TCL_INSTALL_DIR); \ +- cp -rf $(DESTDIR)$(pkgtcldir) $(PACKAGE_NAME);) \ +- else \ +- echo "Warning: $(TCL_INSTALL_DIR) is not writable."; \ +- echo "Skipping system installation of tcl bindings."; \ +- fi +-endif ++ echo "(installing in non-owned directories has been patched out)" + endif + + # removal of installs into $(xxx_INSTALL_DIR) fail if root diff --git a/easybuild/easyconfigs/g/Gurobi/Gurobi-9.5.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/Gurobi/Gurobi-9.5.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..6cf6ccd4d057 --- /dev/null +++ b/easybuild/easyconfigs/g/Gurobi/Gurobi-9.5.2-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +name = 'Gurobi' +version = '9.5.2' + +homepage = 'https://www.gurobi.com' +description = """The Gurobi Optimizer is a state-of-the-art solver for mathematical programming. +The solvers in the Gurobi Optimizer were designed from the ground up to exploit modern +architectures and multi-core processors, using the most advanced implementations of the +latest algorithms.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://packages.gurobi.com/%(version_major_minor)s/'] +sources = ['%(namelower)s%(version)s_linux64.tar.gz'] +patches = ['%(name)s-9.0.1_use-eb-python-gurobi-shell.patch'] +checksums = [ + '95d8ca18b7f86116ba834a27fd6228c5b1708ae67927e7ea0e954c09374a2d0f', # gurobi9.5.0_linux64.tar.gz + 'b4a998182d05f969d1de519f4746ac9e0c6646dd35233231b6ab5963dfa67d01', # Gurobi-9.0.1_use-eb-python-gurobi-shell.patch +] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), +] + +# remove bundled Python interpreter in favour of the dependency in EB +postinstallcmds = ['rm %(installdir)s/bin/python*'] + +# license is mandatory for installation +license_file = HOME + '/licenses/%(name)s.lic' + +modloadmsg = """Gurobi shell based on Python %(pyver)s can be launched with command `gurobi.sh` +Gurobi Python Interface can be loaded in Python %(pyver)s with 'import gurobipy' +""" + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/g/gawk/gawk-5.1.1-GCC-11.3.0.eb b/easybuild/easyconfigs/g/gawk/gawk-5.1.1-GCC-11.3.0.eb new file mode 100644 index 000000000000..a692900e1342 --- /dev/null +++ b/easybuild/easyconfigs/g/gawk/gawk-5.1.1-GCC-11.3.0.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'gawk' +version = '5.1.1' + +homepage = 'https://www.gnu.org/software/gawk' +description = """The awk utility interprets a special-purpose programming language that makes it possible to handle +simple data-reformatting jobs with just a few lines of code.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['6168d8d1dc8f74bd17d9dc22fa9634c49070f232343b744901da15fb4f06bffd'] + +sanity_check_paths = { + 'files': ['bin/gawk'], + 'dirs': [], +} + +sanity_check_commands = ["gawk --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-8.3.0.eb b/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-8.3.0.eb index a783c28471bb..cf0317df5d55 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-8.3.0.eb @@ -29,4 +29,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-9.3.0.eb index 27b89d2bef1c..1ecd5f36852c 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.20.1-GCCcore-9.3.0.eb @@ -29,4 +29,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.20.1.eb b/easybuild/easyconfigs/g/gettext/gettext-0.20.1.eb index 19857c19d596..0967e62738e3 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.20.1.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.20.1.eb @@ -31,4 +31,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.2.0.eb b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.2.0.eb index e0d0f8a84f01..1303c6d19236 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.2.0.eb @@ -29,4 +29,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.3.0.eb b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.3.0.eb index 10bb6ad3a5af..c3753a010e50 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-10.3.0.eb @@ -29,4 +29,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.2.0.eb b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.2.0.eb index 7d329d1be72d..8944747f686c 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.2.0.eb @@ -29,4 +29,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.3.0.eb index 9b5bf58331ce..74724934445b 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.21-GCCcore-11.3.0.eb @@ -29,4 +29,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gettext/gettext-0.21.eb b/easybuild/easyconfigs/g/gettext/gettext-0.21.eb index 3faa2c38fabe..db1772fc35bd 100644 --- a/easybuild/easyconfigs/g/gettext/gettext-0.21.eb +++ b/easybuild/easyconfigs/g/gettext/gettext-0.21.eb @@ -31,4 +31,9 @@ sanity_check_paths = { 'dirs': ['include'], } +sanity_check_commands = [ + "gettext --help", + "msginit --help", +] + moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gifsicle/gifsicle-1.93-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/gifsicle/gifsicle-1.93-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..639f0f05b8c7 --- /dev/null +++ b/easybuild/easyconfigs/g/gifsicle/gifsicle-1.93-GCCcore-11.3.0.eb @@ -0,0 +1,39 @@ +# Contribution from the Crick Scientific Computing team +# uploaded by J. Sassmannshausen + +easyblock = 'ConfigureMake' + +name = 'gifsicle' +version = '1.93' + +github_account = 'kohler' +homepage = 'https://github.com/%(github_account)s/%(namelower)s' +description = """Gifsicle is a command-line tool for creating, editing, +and getting information about GIF images and animations. +Making a GIF animation with gifsicle is easy.""" + +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['941c0b1c3ebc748949a0d14363f0fb3c9d2c06ee122b3548315b9233eb956d88'] + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('X11', '20220504'), +] + +preconfigopts = "autoreconf -i &&" + +sanity_check_paths = { + 'files': ['bin/gifsicle'], + 'dirs': [] +} + +sanity_check_commands = [('gifview --help'), ('gifsicle --help')] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/git-lfs/git-lfs-3.2.0.eb b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.2.0.eb new file mode 100644 index 000000000000..35a82d52add7 --- /dev/null +++ b/easybuild/easyconfigs/g/git-lfs/git-lfs-3.2.0.eb @@ -0,0 +1,29 @@ +easyblock = 'MakeCp' + +name = 'git-lfs' +version = '3.2.0' + +homepage = 'https://git-lfs.github.com' +description = """Git Large File Storage (LFS) replaces large files such as audio + samples, videos, datasets, and graphics with text pointers inside Git, while + storing the file contents on a remote server like GitHub.com""" + +toolchain = SYSTEM + +github_account = name +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['f8e6bbe043b97db8a5c16da7289e149a3fed9f4d4f11cffcc6e517c7870cd9e5'] + +builddependencies = [('Go', '1.17.6')] + +files_to_copy = [(['bin/%(name)s'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/git-lfs'], + 'dirs': [], +} + +sanity_check_commands = ["git-lfs --version"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/glib-networking/glib-networking-2.72.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/g/glib-networking/glib-networking-2.72.1-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..a43faefb8bbd --- /dev/null +++ b/easybuild/easyconfigs/g/glib-networking/glib-networking-2.72.1-GCCcore-11.2.0.eb @@ -0,0 +1,35 @@ +easyblock = 'MesonNinja' + +name = 'glib-networking' +version = '2.72.1' + +homepage = 'https://gitlab.gnome.org/GNOME/glib-networking' +description = "Network extensions for GLib" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://gitlab.gnome.org/GNOME/glib-networking/-/archive/%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['675a654ae55d381490c5d76b84e088f684125415fbd2d46f74dfa5522c4a1268'] + +builddependencies = [ + ('binutils', '2.37'), + ('Meson', '0.58.2'), + ('Ninja', '1.10.2'), + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('GLib', '2.69.1'), + ('GnuTLS', '3.7.3'), + ('libidn2', '2.3.2'), +] + +sanity_check_paths = { + 'files': ['lib/gio/modules/libgiognutls.%s' % SHLIB_EXT], + 'dirs': [], +} + +modextrapaths = {'GIO_EXTRA_MODULES': 'lib/gio/modules'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.4-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.4-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..ca1bcabdf53d --- /dev/null +++ b/easybuild/easyconfigs/g/gnuplot/gnuplot-5.4.4-GCCcore-11.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'gnuplot' +version = '5.4.4' + +homepage = 'http://gnuplot.sourceforge.net' +description = """Portable interactive, function plotting utility""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [('https://sourceforge.net/projects/gnuplot/files/gnuplot/%(version)s', 'download')] +sources = [SOURCE_TAR_GZ] +checksums = ['372300b7867f5b3538b25fc5d0ac7734af6e3fe0d202b6db926e4369913f0902'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('ncurses', '6.3'), + ('cairo', '1.17.4'), + ('libjpeg-turbo', '2.1.3'), + ('libpng', '1.6.37'), + ('libgd', '2.3.3'), + ('Pango', '1.50.7'), + ('libcerf', '2.1'), + ('X11', '20220504'), + ('Qt5', '5.15.5'), + ('Lua', '5.4.4'), +] + +preconfigopts = 'autoreconf && ' + +configopts = '--with-qt=qt5 --without-latex ' + +sanity_check_paths = { + 'files': ['bin/gnuplot'], + 'dirs': [] +} +# make sure that pdf terminal type is available +sanity_check_commands = ["gnuplot -e 'set terminal pdf'"] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/gperftools/gperftools-2.10-GCCcore-11.3.0.eb b/easybuild/easyconfigs/g/gperftools/gperftools-2.10-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..73c262cf7edd --- /dev/null +++ b/easybuild/easyconfigs/g/gperftools/gperftools-2.10-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'gperftools' +version = '2.10' + +homepage = 'https://github.com/gperftools/gperftools' +description = """ +gperftools is a collection of a high-performance multi-threaded malloc() +implementation, plus some pretty nifty performance analysis tools. +Includes TCMalloc, heap-checker, heap-profiler and cpu-profiler. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +github_account = 'gperftools' +source_urls = [GITHUB_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['b0dcfe3aca1a8355955f4b415ede43530e3bb91953b6ffdd75c45891070fe0f1'] + +builddependencies = [ + ('Autotools', '20220317'), + ('binutils', '2.38'), +] + +dependencies = [ + ('libunwind', '1.6.2'), +] + +preconfigopts = "autoreconf -f -i && " +configopts = '--enable-libunwind' + +sanity_check_paths = { + 'files': ['bin/pprof', 'lib/libprofiler.a', 'lib/libprofiler.%s' % SHLIB_EXT, + 'lib/libtcmalloc.a', 'lib/libtcmalloc.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/groff/groff-1.22.4-GCCcore-12.1.0.eb b/easybuild/easyconfigs/g/groff/groff-1.22.4-GCCcore-12.1.0.eb new file mode 100644 index 000000000000..b7b41cdb5ac6 --- /dev/null +++ b/easybuild/easyconfigs/g/groff/groff-1.22.4-GCCcore-12.1.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'groff' +version = '1.22.4' + +homepage = 'https://www.gnu.org/software/groff' +description = """Groff (GNU troff) is a typesetting system that reads plain text mixed with formatting commands + and produces formatted output.""" + +toolchain = {'name': 'GCCcore', 'version': '12.1.0'} + +source_urls = ['https://ftp.gnu.org/gnu/groff'] +sources = [SOURCE_TAR_GZ] +checksums = ['e78e7b4cb7dec310849004fa88847c44701e8d133b5d4c13057d876c1bad0293'] + +builddependencies = [ + ('binutils', '2.38'), +] + +configopts = '--with-doc=no' + +sanity_check_paths = { + 'files': ['bin/groff', 'bin/nroff', 'bin/troff'], + 'dirs': ['lib/groff', 'share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-GCCcore-11.3.0-serial.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-GCCcore-11.3.0-serial.eb new file mode 100644 index 000000000000..494b13353297 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-GCCcore-11.3.0-serial.eb @@ -0,0 +1,27 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.12.2' +versionsuffix = '-serial' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2022a.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2022a.eb new file mode 100644 index 000000000000..19a00c014813 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-gompi-2022a.eb @@ -0,0 +1,22 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.12.2' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14'] + +dependencies = [ + ('zlib', '1.2.12'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-iimpi-2022a.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-iimpi-2022a.eb new file mode 100644 index 000000000000..9f8df24dff48 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.12.2-iimpi-2022a.eb @@ -0,0 +1,22 @@ +name = 'HDF5' +# Note: Odd minor releases are only RCs and should not be used. +version = '1.12.2' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'iimpi', 'version': '2022a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['2a89af03d56ce7502dcae18232c241281ad1773561ec00c0f0e8ee2463910f14'] + +dependencies = [ + ('zlib', '1.2.12'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HDF5/HDF5-1.13.1-GCCcore-11.3.0-serial.eb b/easybuild/easyconfigs/h/HDF5/HDF5-1.13.1-GCCcore-11.3.0-serial.eb new file mode 100644 index 000000000000..b73831007ebb --- /dev/null +++ b/easybuild/easyconfigs/h/HDF5/HDF5-1.13.1-GCCcore-11.3.0-serial.eb @@ -0,0 +1,26 @@ +name = 'HDF5' +version = '1.13.1' +versionsuffix = '-serial' + +homepage = 'https://portal.hdfgroup.org/display/support' +description = """HDF5 is a data model, library, and file format for storing and managing data. + It supports an unlimited variety of datatypes, and is designed for flexible + and efficient I/O and for high volume and complex data.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['051655873105112f7aeccd5f59ab21f35f7f4907f06921ae61aaf1ef1c71fd53'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('zlib', '1.2.12'), + ('Szip', '2.1.1'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HH-suite/HH-suite-3.0-beta.3-intel-2018a.eb b/easybuild/easyconfigs/h/HH-suite/HH-suite-3.0-beta.3-intel-2018a.eb index 868b3e1e5697..cba105c466c4 100644 --- a/easybuild/easyconfigs/h/HH-suite/HH-suite-3.0-beta.3-intel-2018a.eb +++ b/easybuild/easyconfigs/h/HH-suite/HH-suite-3.0-beta.3-intel-2018a.eb @@ -29,10 +29,6 @@ builddependencies = [('CMake', '3.10.2')] preconfigopts = 'cp -a ../ffindex_soedinglab-%s/* ' % local_ffindex_commit preconfigopts += '%(builddir)s/%(namelower)s-%(version)s/lib/ffindex && ' -configopts = '-DCMAKE_BUILD_TYPE=Release -G "Unix Makefiles" ' - -separate_build_dir = True - modextravars = {'HHLIB': '%(installdir)s'} sanity_check_paths = { diff --git a/easybuild/easyconfigs/h/HH-suite/HH-suite-3.3.0-gompi-2021b.eb b/easybuild/easyconfigs/h/HH-suite/HH-suite-3.3.0-gompi-2021b.eb new file mode 100644 index 000000000000..9e79945692b0 --- /dev/null +++ b/easybuild/easyconfigs/h/HH-suite/HH-suite-3.3.0-gompi-2021b.eb @@ -0,0 +1,90 @@ +## +# This file is an EasyBuild recipy as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA +# Authors:: Fotis Georgatos +# License:: MIT/GPL +# $Id$ +# +# This work implements a part of the HPCBIOS project and is a component of the policy: +# https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html +## +# Updated to use gompi-2020b toolchain: +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen + +easyblock = 'CMakeMake' + +name = 'HH-suite' +version = '3.3.0' + +homepage = 'https://github.com/soedinglab/hh-suite' +description = """The HH-suite is an open-source software package + for sensitive protein sequence searching based on the pairwise + alignment of hidden Markov models (HMMs).""" + +toolchain = {'name': 'gompi', 'version': '2021b'} + +source_urls = ['https://github.com/soedinglab/hh-suite/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['dd67f7f3bf601e48c9c0bc4cf1fbe3b946f787a808bde765e9436a48d27b0964'] + +builddependencies = [ + ('CMake', '3.21.1'), +] + +dependencies = [ + ('Perl', '5.34.0'), + ('Python', '3.9.6'), +] + +_binaries_help = [ + 'cstranslate', 'cstranslate_mpi', 'hhalign', 'hhalign_mpi', 'hhalign_omp', 'hhconsensus', + 'hhfilter', 'hhmake' +] + +_binaries_h = [ + 'a3m_database_extract', 'a3m_database_filter', 'a3m_database_reduce', 'a3m_extract', 'a3m_reduce', + 'hhblits', 'hhblits_ca3m', 'hhblits_mpi', 'hhblits_omp', 'hhsearch', 'hhsearch_mpi', 'hhsearch_omp' +] + +_binaries_version = ['ffindex_build', 'ffindex_from_fasta', 'ffindex_modify'] + +_binaries_v = ['ffindex_from_fasta_with_split'] + +_binaries_helpless = [ + 'ffindex_apply', 'ffindex_apply_mpi', 'ffindex_get', + 'ffindex_order', 'ffindex_reduce', 'ffindex_unpack' +] + +_scriptfiles = ['hhmakemodel.py', 'hh_reader.py', 'hhsuitedb.py', 'cif2fasta.py'] + +fix_perl_shebang_for = ['scripts/*pl'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in _binaries_help] + + ['bin/%s' % x for x in _binaries_h] + + ['bin/%s' % x for x in _binaries_version] + + ['bin/%s' % x for x in _binaries_v] + + ['bin/%s' % x for x in _binaries_helpless] + + ['scripts/%s' % y for y in _scriptfiles], + 'dirs': ['data', 'scripts'] +} + +sanity_check_commands = ['%s --help' % x for x in _binaries_help] +sanity_check_commands += ['%s -h' % x for x in _binaries_h] +sanity_check_commands += ['%s --version' % x for x in _binaries_version] +sanity_check_commands += ['%s -v' % x for x in _binaries_v] +sanity_check_commands += ['%s 2>&1 | grep USAGE' % x for x in _binaries_helpless] + +modextrapaths = { + 'PATH': 'scripts', + 'PERL5LIB': 'scripts', +} + +modextravars = { + 'HHLIB': '%(installdir)s', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HTSlib/HTSlib-1.15.1-GCC-11.3.0.eb b/easybuild/easyconfigs/h/HTSlib/HTSlib-1.15.1-GCC-11.3.0.eb new file mode 100644 index 000000000000..bb7636b2af03 --- /dev/null +++ b/easybuild/easyconfigs/h/HTSlib/HTSlib-1.15.1-GCC-11.3.0.eb @@ -0,0 +1,39 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# Swiss Institute of Bioinformatics +# Biozentrum - University of Basel +# 1.4 modified by: +# Adam Huffman, Jonas Demeulemeester +# The Francis Crick Institute +# Updated to 1.14 +# J. Sassmannshausen /GSTT + +easyblock = 'ConfigureMake' + +name = 'HTSlib' +version = '1.15.1' + +homepage = "https://www.htslib.org/" +description = """A C library for reading/writing high-throughput sequencing data. + This package includes the utilities bgzip and tabix""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/samtools/%(namelower)s/releases/download/%(version)s/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['8d7f8bf9658226942eeab70af2a22aca618577eaa8fe2ed9416ee306d5351aa1'] + +# cURL added for S3 support +dependencies = [ + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('XZ', '5.2.5'), + ('cURL', '7.83.0'), +] + +sanity_check_paths = { + 'files': ['bin/bgzip', 'bin/tabix', 'lib/libhts.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/HyPo/HyPo-1.0.3-GCC-8.3.0-Python-3.7.4.eb b/easybuild/easyconfigs/h/HyPo/HyPo-1.0.3-GCC-8.3.0-Python-3.7.4.eb index 5d84f8de4eb2..3e9deac9f641 100644 --- a/easybuild/easyconfigs/h/HyPo/HyPo-1.0.3-GCC-8.3.0-Python-3.7.4.eb +++ b/easybuild/easyconfigs/h/HyPo/HyPo-1.0.3-GCC-8.3.0-Python-3.7.4.eb @@ -28,7 +28,8 @@ preconfigopts = "rm -r %(builddir)s/hypo*/external/install/htslib/lib && " configopts = "-Doptimise_for_native=ON " # using 'Conda' as build type to make CMake honor the specified location for dependencies -configopts += "-DCMAKE_BUILD_TYPE=Conda -DHTSLIB_INSTALL_DIR=$EBROOTHTSLIB -DSDSLLIB_INSTALL_DIR=$EBROOTSDSL" +build_type = 'Conda' +configopts += "-DHTSLIB_INSTALL_DIR=$EBROOTHTSLIB -DSDSLLIB_INSTALL_DIR=$EBROOTSDSL" sanity_check_paths = { 'files': ['bin/hypo'], diff --git a/easybuild/easyconfigs/h/Hypre/Hypre-2.25.0-foss-2022a.eb b/easybuild/easyconfigs/h/Hypre/Hypre-2.25.0-foss-2022a.eb new file mode 100644 index 000000000000..f61c133f632c --- /dev/null +++ b/easybuild/easyconfigs/h/Hypre/Hypre-2.25.0-foss-2022a.eb @@ -0,0 +1,18 @@ +name = 'Hypre' +version = '2.25.0' + +homepage = 'https://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods' +description = """Hypre is a library for solving large, sparse linear systems of equations on massively + parallel computers. The problems of interest arise in the simulation codes being developed at LLNL + and elsewhere to study physical phenomena in the defense, environmental, energy, and biological sciences.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/hypre-space/hypre/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['f9fc8371d91239fca694284dab17175bfda3821d7b7a871fd2e8f9d5930f303c'] + +start_dir = 'src' + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/h/h5py/h5py-3.7.0-foss-2022a.eb b/easybuild/easyconfigs/h/h5py/h5py-3.7.0-foss-2022a.eb index 9d7fd568a45b..d4bf0c2f7900 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-3.7.0-foss-2022a.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-3.7.0-foss-2022a.eb @@ -19,7 +19,7 @@ builddependencies = [('pkgconfig', '1.5.5', '-python')] dependencies = [ ('Python', '3.10.4'), ('SciPy-bundle', '2022.05'), - ('HDF5', '1.13.1'), + ('HDF5', '1.12.2'), ] use_pip = True diff --git a/easybuild/easyconfigs/h/help2man/help2man-1.49.2-GCCcore-12.2.0.eb b/easybuild/easyconfigs/h/help2man/help2man-1.49.2-GCCcore-12.2.0.eb new file mode 100644 index 000000000000..712e28926d5a --- /dev/null +++ b/easybuild/easyconfigs/h/help2man/help2man-1.49.2-GCCcore-12.2.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'help2man' +version = '1.49.2' + +homepage = 'https://www.gnu.org/software/help2man/' +description = """help2man produces simple manual pages from the '--help' and '--version' output of other commands.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_XZ] +checksums = ['9e2e0e213a7e0a36244eed6204d902b6504602a578b6ecd15268b1454deadd36'] + +builddependencies = [ + # use same binutils version that was used when building GCC toolchain + ('binutils', '2.39', '', True), +] + +sanity_check_paths = { + 'files': ['bin/help2man'], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/hiredis/hiredis-1.0.2-GCCcore-11.2.0.eb b/easybuild/easyconfigs/h/hiredis/hiredis-1.0.2-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..be49af696cf9 --- /dev/null +++ b/easybuild/easyconfigs/h/hiredis/hiredis-1.0.2-GCCcore-11.2.0.eb @@ -0,0 +1,39 @@ +# Author J. Sassmannshausen (Imperial College London) + +easyblock = 'CMakeMake' + +name = 'hiredis' +version = '1.0.2' + +homepage = 'https://github.com/redis/hiredis' +description = """Hiredis is a minimalistic C client library for the Redis database. + +It is minimalistic because it just adds minimal support for the protocol, +but at the same time it uses a high level printf-alike API in order to +make it much higher level than otherwise suggested by its minimal code base +and the lack of explicit bindings for every Redis command.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/redis/hiredis/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = [ + 'e0ab696e2f07deb4252dda45b703d09854e53b9703c7d52182ce5a22616c3819', # v1.0.2.tar.gz +] + +builddependencies = [ + ('CMake', '3.22.1'), + ('binutils', '2.37'), +] + +dependencies = [ + ('OpenSSL', '1.1', '', True), +] + +sanity_check_paths = { + 'files': ['lib/libhiredis.%s' % SHLIB_EXT], + 'dirs': ['include', 'share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/how_are_we_stranded_here/how_are_we_stranded_here-1.0.1-foss-2021b.eb b/easybuild/easyconfigs/h/how_are_we_stranded_here/how_are_we_stranded_here-1.0.1-foss-2021b.eb new file mode 100644 index 000000000000..14feb29031fa --- /dev/null +++ b/easybuild/easyconfigs/h/how_are_we_stranded_here/how_are_we_stranded_here-1.0.1-foss-2021b.eb @@ -0,0 +1,64 @@ +easyblock = 'Bundle' + +name = 'how_are_we_stranded_here' +version = '1.0.1' + +homepage = 'https://github.com/signalbash/how_are_we_stranded_here' +description = "Python package for testing strandedness of RNA-Seq fastq files" + +toolchain = {'name': 'foss', 'version': '2021b'} + +builddependencies = [ + ('Autotools', '20210726'), + ('CMake', '3.22.1'), + ('zlib', '1.2.11'), +] + +dependencies = [ + ('Python', '3.9.6'), + ('RSeQC', '4.0.0'), + ('SciPy-bundle', '2021.10'), + ('HDF5', '1.12.1'), + ('HTSlib', '1.14'), +] + +default_component_specs = { + 'sources': ['v%(version)s.tar.gz'], + 'start_dir': '%(name)s-%(version)s', +} + +components = [ + ('kallisto', '0.44.0', { + 'source_urls': ['https://github.com/pachterlab/kallisto/archive/refs/tags/'], + 'easyblock': 'CMakeMake', + 'patches': ['%(name)s-%(version)s-include_limits.patch'], + 'preconfigopts': "cd ../%(name)s-%(version)s/ext/htslib/ && \ + sed -i '/AC_PROG_CC/a AC_CANONICAL_HOST' configure.ac && \ + autoreconf -i && autoheader && autoconf && cd - && ", + 'checksums': [ + '35a81201a56f4557697e6fe693dc6b701bbbd0a7b2b6e1c6c845ef816d67ca29', # v0.44.0.tag.gz + '4ad7d54f104fe779560107109fd0fc65ffc9af22822765be96816c1424b91da0', # kallisto-0.44.0-include_limits.patch + ], + }), + (name, version, { + 'source_urls': ["https://github.com/signalbash/how_are_we_stranded_here/archive/refs/tags/"], + 'easyblock': 'PythonPackage', + 'use_pip': True, + 'sanity_pip_check': True, + 'download_dep_fail': True, + 'checksums': ['f66b3f7035d55c4584c4843582c9d94d3fa597cc1dc9ad9f36ffc2d3849a5210'], + }), +] + +parallel = 1 # Build doesn't complete without this + +sanity_check_paths = { + 'files': ['bin/check_strandedness'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["check_strandedness --help"] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/h/how_are_we_stranded_here/kallisto-0.44.0-include_limits.patch b/easybuild/easyconfigs/h/how_are_we_stranded_here/kallisto-0.44.0-include_limits.patch new file mode 100644 index 000000000000..f93f03c67812 --- /dev/null +++ b/easybuild/easyconfigs/h/how_are_we_stranded_here/kallisto-0.44.0-include_limits.patch @@ -0,0 +1,33 @@ +Version 0.44.0 does not include limits library by its own, this fixes it. + +diff -ruN kallisto_orig/src/Inspect.h kallisto/src/Inspect.h +--- kallisto_orig/src/Inspect.h 2022-09-05 15:33:04.350000000 +0200 ++++ kallisto/src/Inspect.h 2022-09-05 15:33:31.070000000 +0200 +@@ -3,6 +3,7 @@ + + #include + #include ++#include + #include "KmerIndex.h" + #include "GeneModel.h" + +diff -ruN kallisto_orig/src/MinCollector.cpp kallisto/src/MinCollector.cpp +--- kallisto_orig/src/MinCollector.cpp 2022-09-05 15:33:04.350000000 +0200 ++++ kallisto/src/MinCollector.cpp 2022-09-05 15:33:53.640000000 +0200 +@@ -1,5 +1,6 @@ + #include "MinCollector.h" + #include ++#include + + // utility functions + +diff -ruN kallisto_orig/src/main.cpp kallisto/src/main.cpp +--- kallisto_orig/src/main.cpp 2022-09-05 15:33:04.350000000 +0200 ++++ kallisto/src/main.cpp 2022-09-05 15:34:20.330000000 +0200 +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + + #include diff --git a/easybuild/easyconfigs/i/ISL/ISL-0.24-GCCcore-11.3.0.eb b/easybuild/easyconfigs/i/ISL/ISL-0.24-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..0ff690011495 --- /dev/null +++ b/easybuild/easyconfigs/i/ISL/ISL-0.24-GCCcore-11.3.0.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'ISL' +version = '0.24' + +homepage = 'http://isl.gforge.inria.fr/' +description = "isl is a library for manipulating sets and relations of integer points bounded by linear constraints." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['http://isl.gforge.inria.fr/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['fcf78dd9656c10eb8cf9fbd5f59a0b6b01386205fe1934b3b287a0a1898145c0'] + +builddependencies = [('binutils', '2.38')] +dependencies = [('GMP', '6.2.1')] + +sanity_check_paths = { + 'files': ['lib/libisl.%s' % SHLIB_EXT, 'lib/libisl.a'], + 'dirs': ['include/isl'] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-1-GCCcore-9.3.0.eb index 0d6ab6b19786..b08495a6ea2a 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-1-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-1-GCCcore-9.3.0.eb @@ -24,6 +24,7 @@ dependencies = [ ('libjpeg-turbo', '2.0.4'), ('LibTIFF', '4.1.0'), ('LittleCMS', '2.9'), + ('Pango', '1.44.7'), ] builddependencies = [ diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-35-GCCcore-10.2.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-35-GCCcore-10.2.0.eb index 980874e68beb..f0077dead9e6 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-35-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.10-35-GCCcore-10.2.0.eb @@ -24,6 +24,7 @@ dependencies = [ ('libjpeg-turbo', '2.0.5'), ('LibTIFF', '4.1.0'), ('LittleCMS', '2.11'), + ('Pango', '1.47.0'), ] builddependencies = [ diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.11-14-GCCcore-10.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.11-14-GCCcore-10.3.0.eb index f2d23dbd6011..d7f3007a2f9a 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.11-14-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.11-14-GCCcore-10.3.0.eb @@ -24,6 +24,7 @@ dependencies = [ ('libjpeg-turbo', '2.0.6'), ('LibTIFF', '4.2.0'), ('LittleCMS', '2.12'), + ('Pango', '1.48.5'), ] builddependencies = [ diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.9-5-GCCcore-8.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.9-5-GCCcore-8.3.0.eb index 86774a66a7aa..458934f12f43 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.9-5-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.0.9-5-GCCcore-8.3.0.eb @@ -24,6 +24,7 @@ dependencies = [ ('libjpeg-turbo', '2.0.3'), ('LibTIFF', '4.0.10'), ('LittleCMS', '2.9'), + ('Pango', '1.44.7'), ] builddependencies = [ diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb index 9127abd64dc2..f4a6a273ca9f 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-37-GCCcore-11.3.0.eb @@ -20,6 +20,7 @@ dependencies = [ ('libjpeg-turbo', '2.1.3'), ('LibTIFF', '4.3.0'), ('LittleCMS', '2.13.1'), + ('Pango', '1.50.7'), ] builddependencies = [ diff --git a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb index b1329a25dd6e..ff34f39886c4 100644 --- a/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/i/ImageMagick/ImageMagick-7.1.0-4-GCCcore-11.2.0.eb @@ -20,6 +20,7 @@ dependencies = [ ('libjpeg-turbo', '2.0.6'), ('LibTIFF', '4.3.0'), ('LittleCMS', '2.12'), + ('Pango', '1.48.8'), ] builddependencies = [ diff --git a/easybuild/easyconfigs/i/Inspector/Inspector-2022.1.0.eb b/easybuild/easyconfigs/i/Inspector/Inspector-2022.1.0.eb new file mode 100644 index 000000000000..a7772259cc87 --- /dev/null +++ b/easybuild/easyconfigs/i/Inspector/Inspector-2022.1.0.eb @@ -0,0 +1,21 @@ +## +# Author: Robert Mijakovic +## +name = 'Inspector' +version = '2022.1.0' + +homepage = 'https://software.intel.com/en-us/inspector' +description = """Intel Inspector is a dynamic memory and threading error + checking tool for users developing serial and parallel applications""" + +toolchain = SYSTEM + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/18712/'] +sources = ['l_inspector_oneapi_p_%(version)s.123_offline.sh'] +checksums = ['8551180aa30be3abea11308fb11ea9a296f0e056ab07d9254585448a0b23333e'] + +dontcreateinstalldir = True + +requires_runtime_license = False + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/InterProScan/InterProScan-5.52-86.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/i/InterProScan/InterProScan-5.52-86.0-GCCcore-10.3.0.eb index 0e448e118981..b3d5765b73d4 100644 --- a/easybuild/easyconfigs/i/InterProScan/InterProScan-5.52-86.0-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/i/InterProScan/InterProScan-5.52-86.0-GCCcore-10.3.0.eb @@ -37,6 +37,8 @@ sanity_check_paths = { 'dirs': ['bin', 'lib', 'data/panther/15.0'], } +sanity_check_commands = ["interproscan.sh 2>&1 | grep 'Welcome to InterProScan-%(version)s'"] + # also include top install directory in $PATH, to make interproscan.sh available modextrapaths = {'PATH': ''} diff --git a/easybuild/easyconfigs/i/InterProScan/InterProScan-5.55-88.0-foss-2021a.eb b/easybuild/easyconfigs/i/InterProScan/InterProScan-5.55-88.0-foss-2021a.eb index e59108c1dbd2..3107c097d4af 100644 --- a/easybuild/easyconfigs/i/InterProScan/InterProScan-5.55-88.0-foss-2021a.eb +++ b/easybuild/easyconfigs/i/InterProScan/InterProScan-5.55-88.0-foss-2021a.eb @@ -55,7 +55,4 @@ sanity_check_paths = { sanity_check_commands = ["interproscan.sh 2>&1 | grep 'Welcome to InterProScan-%(version)s'"] -# also include top install directory in $PATH, to make interproscan.sh available -modextrapaths = {'PATH': ''} - moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/indicators/indicators-2.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/i/indicators/indicators-2.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..ba18df6c7bc3 --- /dev/null +++ b/easybuild/easyconfigs/i/indicators/indicators-2.2-GCCcore-11.3.0.eb @@ -0,0 +1,43 @@ +# Contribution from Imperial College London/UK +# uploaded: J. Sassmannshausen + +easyblock = 'CMakeMake' + +name = 'indicators' +version = '2.2' + +homepage = 'https://github.com/p-ranav/indicators' +description = """ +- Thread-safe progress bars and spinners +- Header-only library. Grab a copy of include/indicators. +- Single-header version in single_include/indicators. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/p-ranav/indicators/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b768f1b7ca64a413503f72d5460cc617c1458c17fb7a8c0ee503d753e1f20d03'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('binutils', '2.38') +] + +# build demo and sample program +configopts = ["-DINDICATORS_SAMPLES=ON -DINDICATORS_DEMO=ON -DINDICATORS_BUILD_TESTS=ON"] + +install_cmd = "make install && " +install_cmd += "mkdir %(installdir)s/bin/ && " +install_cmd += "cp demo/demo %(installdir)s/bin/ && " +install_cmd += "cp samples/*bar* samples/dynamic* %(installdir)s/bin/ && " +install_cmd += "cp samples/progress_spinner samples/time_meter samples/max_progress %(installdir)s/bin/" + +sanity_check_paths = { + 'files': ['bin/demo', 'bin/time_meter'], + 'dirs': ['include', 'lib'], +} + +sanity_check_commands = [('demo')] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/intervaltree-python/intervaltree-python-3.1.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/i/intervaltree-python/intervaltree-python-3.1.0-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..69c4a1265016 --- /dev/null +++ b/easybuild/easyconfigs/i/intervaltree-python/intervaltree-python-3.1.0-GCCcore-11.2.0.eb @@ -0,0 +1,30 @@ +# Author: Jasper Grimm (UoY) + +easyblock = 'PythonPackage' + +name = 'intervaltree-python' +_modname = 'intervaltree' +version = '3.1.0' + +homepage = 'https://github.com/chaimleib/intervaltree' +description = """A mutable, self-balancing interval tree. Queries may be by + point, by range overlap, or by range containment. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://pypi.python.org/packages/source/i/%s' % _modname] +sources = ['%s-%s.tar.gz' % (_modname, version)] +checksums = ['902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d'] + +builddependencies = [('binutils', '2.37')] + +dependencies = [('Python', '3.9.6')] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': _modname} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/itac/itac-2021.6.0.eb b/easybuild/easyconfigs/i/itac/itac-2021.6.0.eb new file mode 100644 index 000000000000..22e6230e15b4 --- /dev/null +++ b/easybuild/easyconfigs/i/itac/itac-2021.6.0.eb @@ -0,0 +1,22 @@ +## +# Author: Robert Mijakovic +## +name = 'itac' +version = '2021.6.0' + +homepage = 'https://software.intel.com/en-us/intel-trace-analyzer/' +description = """The Intel Trace Collector is a low-overhead tracing library that performs + event-based tracing in applications. The Intel Trace Analyzer provides a convenient way to monitor application + activities gathered by the Intel Trace Collector through graphical displays. """ + +toolchain = SYSTEM + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/18694/'] +sources = ['l_itac_oneapi_p_%(version)s.434_offline.sh'] +checksums = ['1ecc2735da960041b051e377cadb9f6ab2f44e8aa44d0f642529a56a3cbba436'] + +dontcreateinstalldir = True + +preferredmpi = 'impi5' + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/Jansson/Jansson-2.13.1-GCC-11.2.0.eb b/easybuild/easyconfigs/j/Jansson/Jansson-2.13.1-GCC-11.2.0.eb new file mode 100644 index 000000000000..26a65302e13e --- /dev/null +++ b/easybuild/easyconfigs/j/Jansson/Jansson-2.13.1-GCC-11.2.0.eb @@ -0,0 +1,40 @@ +# Contribution from Imperial College London +# uploaded by J. Sassmannshausen + +easyblock = 'CMakeMake' + +name = 'Jansson' +version = "2.13.1" + +homepage = 'https://www.digip.org/jansson/' +description = """Jansson is a C library for encoding, decoding and manipulating JSON data. + Its main features and design principles are: + * Simple and intuitive API and data model + * Comprehensive documentation + * No dependencies on other libraries + * Full Unicode support (UTF-8) + * Extensive test suite""" + +toolchain = {'name': 'GCC', 'version': '11.2.0'} + +source_urls = ['https://github.com/akheron/jansson/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['f22901582138e3203959c9257cf83eba9929ac41d7be4a42557213a22ebcc7a0'] + +# For configure, the ld.gold linker does not know anything about --default-symver and thus crashes +# So we simnply use the bfd linker +# preconfigopts = 'autoreconf -i && CC="$CC -fuse-ld=bfd" ' +# This is not required with CMake + +builddependencies = [('CMake', '3.22.1')] + +configopts = '-DJANSSON_BUILD_SHARED_LIBS=ON ' + +sanity_check_paths = { + 'files': ['lib/libjansson.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +runtest = 'check' + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/j/Jansson/Jansson-2.14-GCC-11.3.0.eb b/easybuild/easyconfigs/j/Jansson/Jansson-2.14-GCC-11.3.0.eb new file mode 100644 index 000000000000..37c841b0d799 --- /dev/null +++ b/easybuild/easyconfigs/j/Jansson/Jansson-2.14-GCC-11.3.0.eb @@ -0,0 +1,40 @@ +# Contribution from Imperial College London +# uploaded by J. Sassmannshausen + +easyblock = 'CMakeMake' + +name = 'Jansson' +version = "2.14" + +homepage = 'https://www.digip.org/jansson/' +description = """Jansson is a C library for encoding, decoding and manipulating JSON data. + Its main features and design principles are: + * Simple and intuitive API and data model + * Comprehensive documentation + * No dependencies on other libraries + * Full Unicode support (UTF-8) + * Extensive test suite""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/akheron/jansson/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['c739578bf6b764aa0752db9a2fdadcfe921c78f1228c7ec0bb47fa804c55d17b'] + +# For configure, the ld.gold linker does not know anything about --default-symver and thus crashes +# So we simnply use the bfd linker +# preconfigopts = 'autoreconf -i && CC="$CC -fuse-ld=bfd" ' +# This is not required with CMake + +builddependencies = [('CMake', '3.23.1')] + +configopts = '-DJANSSON_BUILD_SHARED_LIBS=ON ' + +sanity_check_paths = { + 'files': ['lib/libjansson.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +runtest = 'check' + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/j/Java/Java-11.0.16.eb b/easybuild/easyconfigs/j/Java/Java-11.0.16.eb new file mode 100644 index 000000000000..54edbc4e9f19 --- /dev/null +++ b/easybuild/easyconfigs/j/Java/Java-11.0.16.eb @@ -0,0 +1,30 @@ +name = 'Java' +version = '11.0.16' +local_build = '8' + +homepage = 'http://openjdk.java.net' +description = """Java Platform, Standard Edition (Java SE) lets you develop and deploy +Java applications on desktops and servers.""" + +toolchain = SYSTEM + +local_tarball_tmpl = 'OpenJDK%%(version_major)sU-jdk_%s_linux_hotspot_%%(version)s_%s.tar.gz' + +# Using the Adoptium Eclipse Temurin builds, recommended by https://whichjdk.com/#distributions + +source_urls = ['https://github.com/adoptium/temurin%%(version_major)s-binaries/releases/download/jdk-%%(version)s+%s/' + % local_build] +sources = [local_tarball_tmpl % ('%(jdkarch)s', local_build)] + +checksums = [ + { + local_tarball_tmpl % ('x64', local_build): + 'f79506f80c796d8e6a382f00bd8c528a330c5e29581aaf5cb61e1831742d166f', + local_tarball_tmpl % ('aarch64', local_build): + 'bb345cabf3e305ff3ce390918d5f69e5cfbced3d9844e0b0531c2690f9ed06ef', + local_tarball_tmpl % ('ppc64le', local_build): + '40dea12da26443ad731f9348187b65451711659337e83b6409a2bcf0f057cd2a', + } +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Java/Java-11.eb b/easybuild/easyconfigs/j/Java/Java-11.eb index 9d3c3075a858..d53c0b9b2f5e 100644 --- a/easybuild/easyconfigs/j/Java/Java-11.eb +++ b/easybuild/easyconfigs/j/Java/Java-11.eb @@ -1,7 +1,3 @@ -# Contribution from the Crick HPC team -# uploaded by J. Sassmannshausen -# updated to version 202 - easyblock = 'ModuleRC' name = 'Java' @@ -9,14 +5,10 @@ version = '11' homepage = 'https://java.com/' description = """Java Platform, Standard Edition (Java SE) lets you develop and deploy - Java applications on desktops and servers.""" +Java applications on desktops and servers.""" toolchain = SYSTEM -dependencies = [ - ('Java', {'arch=x86_64': '%(version)s.0.2', - 'arch=AArch64': '%(version)s.0.8-aarch64', - 'arch=POWER': '%(version)s.0.6-ppc64le'}), -] +dependencies = [('Java', '%(version)s.0.16')] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Java/Java-17.0.4.eb b/easybuild/easyconfigs/j/Java/Java-17.0.4.eb new file mode 100644 index 000000000000..2fed82fb2597 --- /dev/null +++ b/easybuild/easyconfigs/j/Java/Java-17.0.4.eb @@ -0,0 +1,30 @@ +name = 'Java' +version = '17.0.4' +local_build = '8' + +homepage = 'http://openjdk.java.net' +description = """Java Platform, Standard Edition (Java SE) lets you develop and deploy +Java applications on desktops and servers.""" + +toolchain = SYSTEM + +local_tarball_tmpl = 'OpenJDK%%(version_major)sU-jdk_%s_linux_hotspot_%%(version)s_%s.tar.gz' + +# Using the Adoptium Eclipse Temurin builds, recommended by https://whichjdk.com/#distributions + +source_urls = ['https://github.com/adoptium/temurin%%(version_major)s-binaries/releases/download/jdk-%%(version)s+%s/' + % local_build] +sources = [local_tarball_tmpl % ('%(jdkarch)s', local_build)] + +checksums = [ + { + local_tarball_tmpl % ('x64', local_build): + 'c0851d610b03cb51e9b360fef3e9ec2026c62837a143e7786649ba94f38cc0d1', + local_tarball_tmpl % ('aarch64', local_build): + '8c23b0b9c65cfe223a07edb8752026afd1e8ec1682630c2d92db4dd5aa039204', + local_tarball_tmpl % ('ppc64le', local_build): + 'e80a0f6626bd28ea20c43524b3ab10af48b3789317aea5b7019c146fe6268d94', + } +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Java/Java-17.eb b/easybuild/easyconfigs/j/Java/Java-17.eb index 05f26251775f..b5936b5a1548 100644 --- a/easybuild/easyconfigs/j/Java/Java-17.eb +++ b/easybuild/easyconfigs/j/Java/Java-17.eb @@ -9,6 +9,6 @@ Java applications on desktops and servers.""" toolchain = SYSTEM -dependencies = [('Java', '%(version)s.0.2')] +dependencies = [('Java', '%(version)s.0.4')] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Java/Java-8.345.eb b/easybuild/easyconfigs/j/Java/Java-8.345.eb new file mode 100644 index 000000000000..a13f77db4f2e --- /dev/null +++ b/easybuild/easyconfigs/j/Java/Java-8.345.eb @@ -0,0 +1,30 @@ +name = 'Java' +version = '8.345' +local_build = 'b01' + +homepage = 'http://openjdk.java.net' +description = """Java Platform, Standard Edition (Java SE) lets you develop and deploy +Java applications on desktops and servers.""" + +toolchain = SYSTEM + +local_tarball_tmpl = 'OpenJDK8U-jdk_%s_linux_hotspot_%%(version_major)su%%(version_minor)s%s.tar.gz' + +# Using the Adoptium Eclipse Temurin builds, recommended by https://whichjdk.com/#distributions + +source_urls = ['https://github.com/adoptium/temurin8-binaries/releases/download/' + 'jdk%%(version_major)su%%(version_minor)s-%s/' % local_build] +sources = [local_tarball_tmpl % ('%(jdkarch)s', local_build)] + +checksums = [ + { + local_tarball_tmpl % ('x64', local_build): + 'ed6c9db3719895584fb1fd69fc79c29240977675f26631911c5a1dbce07b7d58', + local_tarball_tmpl % ('aarch64', local_build): + 'c1965fb24dded7d7944e2da36cd902adf3b7b1d327aaa21ea507cff00a5a0090', + local_tarball_tmpl % ('ppc64le', local_build): + 'f2be72678f6c2ad283453d0e21a6cb03144dda356e4edf79f818d99c37feaf34', + } +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Java/Java-8.eb b/easybuild/easyconfigs/j/Java/Java-8.eb new file mode 100644 index 000000000000..8c9091f83dd0 --- /dev/null +++ b/easybuild/easyconfigs/j/Java/Java-8.eb @@ -0,0 +1,14 @@ +easyblock = 'ModuleRC' + +name = 'Java' +version = '8' + +homepage = 'https://java.com/' +description = """Java Platform, Standard Edition (Java SE) lets you develop and deploy +Java applications on desktops and servers.""" + +toolchain = SYSTEM + +dependencies = [('Java', '%(version)s.345')] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/JavaFX/JavaFX-11.0.2_linux-x64_bin-sdk.eb b/easybuild/easyconfigs/j/JavaFX/JavaFX-11.0.2_linux-x64_bin-sdk.eb new file mode 100644 index 000000000000..31dd004f8287 --- /dev/null +++ b/easybuild/easyconfigs/j/JavaFX/JavaFX-11.0.2_linux-x64_bin-sdk.eb @@ -0,0 +1,27 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics + +easyblock = 'Tarball' + +name = 'JavaFX' +version = '11.0.2' +versionsuffix = '_linux-x64_bin-sdk' + +homepage = 'https://openjfx.io/' +description = """ OpenJFX is an open source, next generation client application platform for desktop, + mobile and embedded systems built on Java """ + +toolchain = SYSTEM + +source_urls = ['https://download2.gluonhq.com/openjfx/%(version)s/'] +sources = ['openjfx-%(version)s%(versionsuffix)s.zip'] +checksums = ['40ef06cd50ea535d45403d9c44e9cb405b631c547734b5b50a6cb7b222293f97'] + +sanity_check_paths = { + 'files': ['lib/javafx.base.jar', 'lib/libfxplugins.so'], + 'dirs': [] +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-2.2.8-GCCcore-10.2.0.eb b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-2.2.8-GCCcore-10.2.0.eb old mode 100644 new mode 100755 index ce2bcb29a86f..1f63a8e30252 --- a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-2.2.8-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-2.2.8-GCCcore-10.2.0.eb @@ -29,13 +29,8 @@ exts_list = [ 'checksums': ['5431d9dde96659364b7cc877693d5d21e7b80cea7ae3959ecc2b87518e5f5d8c'], }), (name, version, { - 'patches': ['%(name)s-1.2.5_set-app-path-for-easybuild.patch'], 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', - 'checksums': [ - 'c8377bee30504919c1e79949f9fe35443ab7f5c4be622c95307e8108410c8b8c', # jupyterlab-2.2.8.tar.gz - # JupyterLab-1.2.5_set-app-path-for-easybuild.patch - 'a219b1071f37f848f7e79c6800149c0b2386a2b748be43288bc32af8e7dab668', - ], + 'checksums': ['c8377bee30504919c1e79949f9fe35443ab7f5c4be622c95307e8108410c8b8c'], }), ] diff --git a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.0.16-GCCcore-10.3.0.eb b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.0.16-GCCcore-10.3.0.eb old mode 100644 new mode 100755 index 6a8b7a7bec4c..adc0ec676957 --- a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.0.16-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.0.16-GCCcore-10.3.0.eb @@ -49,13 +49,8 @@ exts_list = [ 'checksums': ['f300adf6bb0a952bebe9c807a3b2a345d62da39b476b4f69ea0dc6b5f3f6b97d'], }), (name, version, { - 'patches': ['%(name)s-1.2.5_set-app-path-for-easybuild.patch'], 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', - 'checksums': [ - '7ad4fbe1f6d38255869410fd151a8b15692a663ca97c0a8146b3f5c40e275c23', # jupyterlab-3.0.16.tar.gz - # JupyterLab-1.2.5_set-app-path-for-easybuild.patch - 'a219b1071f37f848f7e79c6800149c0b2386a2b748be43288bc32af8e7dab668', - ], + 'checksums': ['7ad4fbe1f6d38255869410fd151a8b15692a663ca97c0a8146b3f5c40e275c23'], }), ] diff --git a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.1.6-GCCcore-11.2.0.eb b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.1.6-GCCcore-11.2.0.eb old mode 100644 new mode 100755 index 64b0887fb606..97db9ab8ef0c --- a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.1.6-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.1.6-GCCcore-11.2.0.eb @@ -49,13 +49,8 @@ exts_list = [ 'checksums': ['31457ef564febc42043bc539356c804f6f9144f602e2852150bf0820ed6d7e18'], }), (name, version, { - 'patches': ['%(name)s-1.2.5_set-app-path-for-easybuild.patch'], 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', - 'checksums': [ - '6d2ada6a333861f33a1b555d3cb7b07aa9d1ab80f07997b3d0c43878a98c1174', # jupyterlab-3.1.6.tar.gz - # JupyterLab-1.2.5_set-app-path-for-easybuild.patch - 'a219b1071f37f848f7e79c6800149c0b2386a2b748be43288bc32af8e7dab668', - ], + 'checksums': ['6d2ada6a333861f33a1b555d3cb7b07aa9d1ab80f07997b3d0c43878a98c1174'], }), ] diff --git a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.2.8-GCCcore-10.3.0.eb b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.2.8-GCCcore-10.3.0.eb old mode 100644 new mode 100755 index 44065e7ecf23..c48fd54eda30 --- a/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.2.8-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/j/JupyterLab/JupyterLab-3.2.8-GCCcore-10.3.0.eb @@ -49,13 +49,8 @@ exts_list = [ 'checksums': ['3fb84a5813d6d836ceda773fb2d4e9ef3c7944dbc1b45a8d59d98641a80de80a'], }), (name, version, { - 'patches': ['%(name)s-1.2.5_set-app-path-for-easybuild.patch'], 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', - 'checksums': [ - '5e4e99868c4f385372686767781408acbb9004b690b198b45597ba869802334b', # jupyterlab-3.2.8.tar.gz - # JupyterLab-1.2.5_set-app-path-for-easybuild.patch - 'a219b1071f37f848f7e79c6800149c0b2386a2b748be43288bc32af8e7dab668', - ], + 'checksums': ['5e4e99868c4f385372686767781408acbb9004b690b198b45597ba869802334b'], }), ] diff --git a/easybuild/easyconfigs/j/jax/jax-0.3.14-foss-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/j/jax/jax-0.3.14-foss-2022a-CUDA-11.7.0.eb new file mode 100644 index 000000000000..a49927252076 --- /dev/null +++ b/easybuild/easyconfigs/j/jax/jax-0.3.14-foss-2022a-CUDA-11.7.0.eb @@ -0,0 +1,126 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +# Updated by: Alex Domingo (Vrije Universiteit Brussel) +easyblock = 'PythonBundle' + +name = 'jax' +version = '0.3.14' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://pypi.python.org/pypi/jax' +description = """Composable transformations of Python+NumPy programs: +differentiate, vectorize, JIT to GPU/TPU, and more""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +builddependencies = [ + ('Bazel', '5.1.1'), + ('pytest-xdist', '2.5.0'), + # git 2.x required to fetch repository 'io_bazel_rules_docker' + ('git', '2.36.0', '-nodocs'), +] + +dependencies = [ + ('CUDA', '11.7.0', '', True), + ('cuDNN', '8.4.1.50', versionsuffix, True), + ('NCCL', '2.12.12', versionsuffix), + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('flatbuffers-python', '2.0'), +] + +# downloading TensorFlow tarball to avoid that Bazel downloads it during the build +# note: this *must* be the exact same commit as used in jaxlib-*/WORKSPACE +local_tf_commit = 'd250676d7776cfbca38e8690b75e1376afecf58d' +local_tf_dir = 'tensorflow-%s' % local_tf_commit +local_tf_builddir = '%(builddir)s/' + local_tf_dir + +# replace remote TensorFlow repository with the local one from EB +local_jax_prebuildopts = "sed -i -f jaxlib_local-tensorflow-repo.sed WORKSPACE && " +local_jax_prebuildopts += "sed -i 's|EB_TF_REPOPATH|%s|' WORKSPACE && " % local_tf_builddir + +use_pip = True + +default_easyblock = 'PythonPackage' +default_component_specs = { + 'sources': [SOURCE_TAR_GZ], + 'source_urls': [PYPI_SOURCE], + 'start_dir': '%(name)s-%(version)s', + 'use_pip': True, + 'sanity_pip_check': True, + 'download_dep_fail': True, +} + +components = [ + ('absl-py', '1.1.0', { + 'options': {'modulename': 'absl'}, + 'checksums': ['3aa39f898329c2156ff525dfa69ce709e42d77aab18bf4917719d6f260aa6a08'], + }), + ('jaxlib', '0.3.14', { + 'sources': [ + '%(name)s-v%(version)s.tar.gz', + { + 'download_filename': '%s.tar.gz' % local_tf_commit, + 'filename': 'tensorflow-%s.tar.gz' % local_tf_commit, + } + ], + 'source_urls': [ + 'https://github.com/google/jax/archive/', + 'https://github.com/tensorflow/tensorflow/archive/' + ], + 'patches': [ + ('jaxlib_local-tensorflow-repo.sed', '.'), + 'jaxlib-0.1.70_add-bazel-args-to-shutdown.patch', + ('TensorFlow-2.7.0_cuda-noncanonical-include-paths.patch', '../' + local_tf_dir), + ], + 'checksums': [ + # jaxlib-v0.3.14.tar.gz + '6d6b660cb915b3fbf151dc67a471623e5f83b6a66493b9e438273d290a43b40f', + # tensorflow-d250676d7776cfbca38e8690b75e1376afecf58d.tar.gz + 'a99890443df024e52d9c7b075e9916250c6cc6b778d62c384b7dcd1903d8f4f1', + # jaxlib_local-tensorflow-repo.sed + 'abb5c3b97f4e317bce9f22ed3eeea3b9715365818d8b50720d937e2d41d5c4e5', + # jaxlib-0.1.70_add-bazel-args-to-shutdown.patch + 'c0ea6abd7827d3c37bdd60c30c7b0613fc86b91274c6a1a4cf13a3c7f9ce7631', + # TensorFlow-2.7.0_cuda-noncanonical-include-paths.patch + '0a759010c253d49755955cd5f028e75de4a4c447dcc8f5a0d9f47cce6881a9db', + ], + 'start_dir': 'jax-jaxlib-v%(version)s', + 'prebuildopts': local_jax_prebuildopts, + }), +] + +exts_list = [ + ('opt_einsum', '3.3.0', { + 'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'], + }), + ('etils', '0.6.0', { + 'checksums': ['6677241051835d0db11c4947bcad938f57b51ea102290624f892f1e4e51b70e5'], + }), + (name, version, { + 'source_tmpl': '%(name)s-v%(version)s.tar.gz', + 'source_urls': ['https://github.com/google/jax/archive/'], + 'patches': [ + 'jax-0.3.9_relax-test-tolerance.patch', + 'jax-0.3.14_relax-test-tolerances.patch', + ], + 'checksums': [ + '225624375094d2067bc3af5abe0a73c6b530916edc1422c30a451d3f3e1b5a82', # jax-v0.3.14.tar.gz + '3da3c8b4d9ff3449b51a4f39d6bbadd348ea3bd4ca493a6f1292743f86fa7b3d', # jax-0.3.9_relax-test-tolerance.patch + # jax-0.3.14_relax-test-tolerances.patch + '387e98a89ca03ca898a1925d7c2d57d0568f6a72b0cb516469903dddd9424689', + ], + # deliberately not testing in parallel, as that results in (additional) failing tests; + # use XLA_PYTHON_CLIENT_ALLOCATOR=platform to allocate and deallocate GPU memory during testing, + # see https://github.com/google/jax/issues/7323 and + # https://github.com/google/jax/blob/main/docs/gpu_memory_allocation.rst; + # use CUDA_VISIBLE_DEVICES=0 to avoid failing tests on systems with multiple GPUs; + # use NVIDIA_TF32_OVERRIDE=0 to avoid lossing numerical precision by disabling TF32 Tensor Cores; + 'runtest': "NVIDIA_TF32_OVERRIDE=0 CUDA_VISIBLE_DEVICES=0 XLA_PYTHON_CLIENT_ALLOCATOR=platform " + "JAX_ENABLE_X64=true pytest -vv tests", + }), +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jax/jax-0.3.14_relax-test-tolerances.patch b/easybuild/easyconfigs/j/jax/jax-0.3.14_relax-test-tolerances.patch new file mode 100644 index 000000000000..0a4129647a2c --- /dev/null +++ b/easybuild/easyconfigs/j/jax/jax-0.3.14_relax-test-tolerances.patch @@ -0,0 +1,40 @@ +Relax the tolerance of tests that fail by a small amount +Patch by Simon Branford (University of Birmingham) +--- tests/scipy_optimize_test.py.orig 2022-06-30 18:36:30.056986000 +0100 ++++ tests/scipy_optimize_test.py 2022-06-30 18:36:21.840235000 +0100 +@@ -90,9 +90,14 @@ + ) + return result.x + ++ if func.__name__ == 'eggholder': ++ atol = 4e-5 ++ else: ++ atol = 2e-5 ++ + jax_res = min_op(x0) + scipy_res = scipy.optimize.minimize(func(np), x0, method='BFGS').x +- self.assertAllClose(scipy_res, jax_res, atol=2e-5, check_dtypes=False) ++ self.assertAllClose(scipy_res, jax_res, atol=atol, check_dtypes=False) + + def test_fixes4594(self): + n = 2 +--- tests/linalg_test.py.orig 2022-07-07 18:14:10.363577000 +0100 ++++ tests/linalg_test.py 2022-07-07 18:17:21.971203822 +0100 +@@ -286,6 +286,8 @@ + args_maker = lambda: [rng(shape, dtype)] + a, = args_maker() + tol = 1e-4 if dtype in (np.float64, np.complex128) else 1e-1 ++ if dtype == np.complex64: ++ tol = 1 + jtu.check_grads(lambda x: jnp.linalg.eigvals(x), (a,), order=1, + modes=['fwd', 'rev'], rtol=tol, atol=tol) + +@@ -304,7 +306,7 @@ + a, = args_maker() + w1, _ = jnp.linalg.eig(a) + w2 = jnp.linalg.eigvals(a) +- self.assertAllClose(w1, w2, rtol={np.complex128: 1e-14}) ++ self.assertAllClose(w1, w2, rtol={np.complex128: 1e-14, np.complex64: 1e-4}) + + @jtu.skip_on_devices("gpu", "tpu") + def testEigvalsInf(self): diff --git a/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..ea4820fb0a66 --- /dev/null +++ b/easybuild/easyconfigs/j/json-fortran/json-fortran-8.3.0-GCCcore-11.2.0.eb @@ -0,0 +1,33 @@ +# J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'json-fortran' +version = '8.3.0' + +homepage = 'https://github.com/jacobwilliams/json-fortran' +description = "JSON-Fortran: A Modern Fortran JSON API" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/jacobwilliams/json-fortran/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5fe9ad709a726416cec986886503e0526419742e288c4e43f63c1c22026d1e8a'] + +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.21.1'), +] + +configopts = [ + '-DUSE_GNU_INSTALL_CONVENTION=TRUE', +] + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libjsonfortran.a', 'lib/libjsonfortran.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/jupyter-resource-usage/jupyter-resource-usage-0.6.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/j/jupyter-resource-usage/jupyter-resource-usage-0.6.1-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..11fb4cfd0970 --- /dev/null +++ b/easybuild/easyconfigs/j/jupyter-resource-usage/jupyter-resource-usage-0.6.1-GCCcore-10.3.0.eb @@ -0,0 +1,64 @@ +easyblock = 'PythonBundle' + +name = 'jupyter-resource-usage' +version = '0.6.1' + +homepage = 'https://github.com/jupyter-server/jupyter-resource-usage' +description = """Jupyter Notebook Extension for monitoring your own Resource Usage (memory and/or CPU)""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +builddependencies = [ + ('binutils', '2.36.1'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('IPython', '7.25.0'), +] + +use_pip = True + +exts_list = [ + ('websocket-client', '1.2.1', { + 'modulename': 'websocket', + 'checksums': ['8dfb715d8a992f5712fff8c843adae94e22b22a99b2c5e6b0ec4a1a981cc4e0d'], + }), + ('sniffio', '1.2.0', { + 'checksums': ['c4666eecec1d3f50960c6bdf61ab7bc350648da6c126e3cf6898d8cd4ddcd3de'], + }), + ('anyio', '3.3.4', { + 'checksums': ['67da67b5b21f96b9d3d65daa6ea99f5d5282cb09f50eb4456f8fb51dffefc3ff'], + }), + ('requests-unixsocket', '0.3.0', { + 'checksums': ['28304283ea9357d45fff58ad5b11e47708cfbf5806817aa59b2a363228ee971e'], + }), + ('jupyter_server', '1.11.1', { + 'checksums': ['ab7ab1cc38512f15026cbcbb96300fb46ec8b24aa162263d9edd00e0a749b1e8'], + }), + (name, version, { + 'patches': ['jupyter-resource-usage-0.6.1_compatibility.patch'], + 'checksums': [ + '8b766b9dded49e582cc38ebeb7f19af2eae50ccf77730afbe96f4a09def9874b', # jupyter-resource-usage-0.6.1.tar.gz + # jupyter-resource-usage-0.6.1_compatibility.patch + 'b030065413bac04bd40088cd92be98bac3e92d68189d03d338986444af3953f4', + ], + }), +] + +# Add the notebook extension to the search path for jupyter notebooks +modextrapaths = { + 'JUPYTER_PATH': 'share/jupyter/', +} + +sanity_check_paths = { + 'dirs': [ + 'lib/python%(pyshortver)s/site-packages/jupyter_resource_usage', + 'lib/python%(pyshortver)s/site-packages/jupyter_server' + ], + 'files': ['bin/jupyter-server'], +} + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/jupyter-resource-usage/jupyter-resource-usage-0.6.1_compatibility.patch b/easybuild/easyconfigs/j/jupyter-resource-usage/jupyter-resource-usage-0.6.1_compatibility.patch new file mode 100644 index 000000000000..af8d04126b3c --- /dev/null +++ b/easybuild/easyconfigs/j/jupyter-resource-usage/jupyter-resource-usage-0.6.1_compatibility.patch @@ -0,0 +1,17 @@ +# Author: Caspar van Leeuwen +# Institute: SURF +# A 'jupyter serverextension enable --py jupyter_resource_usage' would fail, because +# _jupyter_server_extension_paths was not defined, and that's what notebook 6.4.0 +# is looking for when loading extensions. This property got renamed in later versions +# of notebook. We define it here in the __init__ for backward compatibility. +# See https://github.com/jupyter-server/jupyter-resource-usage/issues/91 +diff -Nru jupyter-resource-usage-0.6.1.orig/jupyter_resource_usage/__init__.py jupyter-resource-usage-0.6.1/jupyter_resource_usage/__init__.py +--- jupyter-resource-usage-0.6.1.orig/jupyter_resource_usage/__init__.py 2022-07-08 18:35:27.007610190 +0200 ++++ jupyter-resource-usage-0.6.1/jupyter_resource_usage/__init__.py 2022-07-08 18:35:59.866559304 +0200 +@@ -35,4 +35,6 @@ + ] + + ++# For backward compatibility + load_jupyter_server_extension = load_jupyter_server_extension ++_jupyter_server_extension_paths = _jupyter_server_extension_points diff --git a/easybuild/easyconfigs/k/Kalign/Kalign-3.3.2-GCCcore-11.2.0.eb b/easybuild/easyconfigs/k/Kalign/Kalign-3.3.2-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..9b5d84c97797 --- /dev/null +++ b/easybuild/easyconfigs/k/Kalign/Kalign-3.3.2-GCCcore-11.2.0.eb @@ -0,0 +1,33 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen + +easyblock = 'ConfigureMake' + +name = 'Kalign' +version = '3.3.2' + +homepage = 'https://github.com/TimoLassmann/kalign' +description = "Kalign is a fast multiple sequence alignment program for biological sequences." + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/TimoLassmann/kalign/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['c0b357feda32e16041cf286a4e67626a52bbf78c39e2237b485d54fb38ef319a'] + +builddependencies = [ + ('binutils', '2.37'), + ('Autotools', '20210726'), +] + +configure_cmd_prefix = "autoreconf -vfi && " + +sanity_check_paths = { + 'files': ['bin/kchaos', 'bin/kalign'], + 'dirs': [], +} + +sanity_check_commands = ["kalign --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/k/Kratos/Kratos-6.0-foss-2018a-Python-3.6.4.eb b/easybuild/easyconfigs/k/Kratos/Kratos-6.0-foss-2018a-Python-3.6.4.eb index 1feb856eb579..2084383830f9 100644 --- a/easybuild/easyconfigs/k/Kratos/Kratos-6.0-foss-2018a-Python-3.6.4.eb +++ b/easybuild/easyconfigs/k/Kratos/Kratos-6.0-foss-2018a-Python-3.6.4.eb @@ -27,7 +27,7 @@ dependencies = [ separate_build_dir = True # see configure.sh script for default set of configuration options -configopts = "-DCMAKE_BUILD_TYPE=Release -DKRATOS_INSTALL_PREFIX=%(installdir)s " +configopts = "-DKRATOS_INSTALL_PREFIX=%(installdir)s " configopts += "-DBOOST_ROOT=$EBROOTBOOST -DBoost_NO_SYSTEM_PATHS=ON -DBoost_NO_BOOST_CMAKE=ON " configopts += "-DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python -DINSTALL_EMBEDDED_PYTHON=ON -DINSTALL_PYTHON_FILES=ON " configopts += "-DMESHING_APPLICATION=ON -DEXTERNAL_SOLVERS_APPLICATION=ON -DSTRUCTURAL_MECHANICS_APPLICATION=ON " diff --git a/easybuild/easyconfigs/k/Kratos/Kratos-6.0-intel-2018a-Python-3.6.4.eb b/easybuild/easyconfigs/k/Kratos/Kratos-6.0-intel-2018a-Python-3.6.4.eb index 7df486aa091d..70c8492910ae 100644 --- a/easybuild/easyconfigs/k/Kratos/Kratos-6.0-intel-2018a-Python-3.6.4.eb +++ b/easybuild/easyconfigs/k/Kratos/Kratos-6.0-intel-2018a-Python-3.6.4.eb @@ -31,7 +31,7 @@ dependencies = [ separate_build_dir = True # see configure.sh script for default set of configuration options -configopts = "-DCMAKE_BUILD_TYPE=Release -DKRATOS_INSTALL_PREFIX=%(installdir)s " +configopts = "-DKRATOS_INSTALL_PREFIX=%(installdir)s " configopts += "-DBOOST_ROOT=$EBROOTBOOST -DBoost_NO_SYSTEM_PATHS=ON -DBoost_NO_BOOST_CMAKE=ON " configopts += "-DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python -DINSTALL_EMBEDDED_PYTHON=ON -DINSTALL_PYTHON_FILES=ON " configopts += "-DMESHING_APPLICATION=ON -DEXTERNAL_SOLVERS_APPLICATION=ON -DSTRUCTURAL_MECHANICS_APPLICATION=ON " diff --git a/easybuild/easyconfigs/k/kallisto/kallisto-0.46.2-foss-2020b.eb b/easybuild/easyconfigs/k/kallisto/kallisto-0.46.2-foss-2020b.eb index aa268d4e3733..d57bbc1de73b 100644 --- a/easybuild/easyconfigs/k/kallisto/kallisto-0.46.2-foss-2020b.eb +++ b/easybuild/easyconfigs/k/kallisto/kallisto-0.46.2-foss-2020b.eb @@ -25,6 +25,7 @@ builddependencies = [ dependencies = [('HDF5', '1.10.7')] preconfigopts = "cd ../%(name)s-%(version)s/ext/htslib/ && autoreconf && cd - &&" +configopts = '-DUSE_HDF5=ON' parallel = 1 diff --git a/easybuild/easyconfigs/k/kallisto/kallisto-0.48.0-gompi-2021b.eb b/easybuild/easyconfigs/k/kallisto/kallisto-0.48.0-gompi-2021b.eb index c5b823407ea4..a44f872bb103 100644 --- a/easybuild/easyconfigs/k/kallisto/kallisto-0.48.0-gompi-2021b.eb +++ b/easybuild/easyconfigs/k/kallisto/kallisto-0.48.0-gompi-2021b.eb @@ -28,6 +28,7 @@ dependencies = [('HDF5', '1.12.1')] preconfigopts = "cd ../%(name)s-%(version)s/ext/htslib/ && " preconfigopts += "sed -i '/AC_PROG_CC/a AC_CANONICAL_HOST' configure.ac && " preconfigopts += "autoreconf -i && cd - && " +configopts = '-DUSE_HDF5=ON' parallel = 1 diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-foss-2019a.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-foss-2019a.eb index ede81d82e989..48fa5205f933 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-foss-2019a.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-foss-2019a.eb @@ -29,8 +29,6 @@ sources = ['%(name)s-%(version)s.txz'] checksums = ['16c7dd362cf95288b6288e1a76caf8baef652eb2cf8af500a5eb4767ba2fe80c'] parallel = 1 -separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-intel-2019a.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-intel-2019a.eb index add215ba79aa..4462a6902a4e 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-intel-2019a.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.2-intel-2019a.eb @@ -29,9 +29,6 @@ sources = ['%(name)s-%(version)s.txz'] checksums = ['16c7dd362cf95288b6288e1a76caf8baef652eb2cf8af500a5eb4767ba2fe80c'] parallel = 1 -separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' - modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' } diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2019b.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2019b.eb index 4ac7ff3989af..d2bbb80d8158 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2019b.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2019b.eb @@ -29,9 +29,6 @@ sources = ['%(name)s-%(version)s.txz'] checksums = ['88a5416006c65a2940d82fad49de0885aead05bfa8b59f87d287db5516b9c467'] parallel = 1 -separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' - modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' } diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2020a.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2020a.eb index 3fc9c6cb46fc..36a0c912cded 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2020a.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-foss-2020a.eb @@ -29,8 +29,6 @@ dependencies = [ ] parallel = 1 -separate_build_dir = True -build_type = 'Release' modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2019b.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2019b.eb index b3f1e459c752..6951314c438d 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2019b.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2019b.eb @@ -29,9 +29,6 @@ sources = ['%(name)s-%(version)s.txz'] checksums = ['88a5416006c65a2940d82fad49de0885aead05bfa8b59f87d287db5516b9c467'] parallel = 1 -separate_build_dir = True -configopts = '-DCMAKE_BUILD_TYPE=Release ' - modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' } diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2020a.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2020a.eb index 944a2f80e09e..50e1ba1f84ca 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2020a.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.1.3-intel-2020a.eb @@ -29,8 +29,6 @@ dependencies = [ ] parallel = 1 -separate_build_dir = True -build_type = 'Release' modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.2.0.eb index 6c0ae0afd6e8..8c5e5691eb1d 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.2.0.eb @@ -31,8 +31,6 @@ dependencies = [ ] parallel = 1 -separate_build_dir = True -build_type = 'Release' modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.3.0.eb index 910fef02a8c4..89fd77df9979 100644 --- a/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.2.1-GCCcore-10.3.0.eb @@ -31,8 +31,6 @@ dependencies = [ ] parallel = 1 -separate_build_dir = True -build_type = 'Release' modextravars = { 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' diff --git a/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..75b74574da8c --- /dev/null +++ b/easybuild/easyconfigs/k/kim-api/kim-api-2.3.0-GCCcore-11.2.0.eb @@ -0,0 +1,46 @@ +easyblock = 'CMakeMake' + +name = 'kim-api' +version = '2.3.0' + +homepage = 'https://openkim.org/' +description = """Open Knowledgebase of Interatomic Models. + +KIM is an API and OpenKIM is a collection of interatomic models (potentials) for +atomistic simulations. This is a library that can be used by simulation programs +to get access to the models in the OpenKIM database. + +This EasyBuild only installs the API, the models can be installed with the +package openkim-models, or the user can install them manually by running + kim-api-collections-management install user MODELNAME +or + kim-api-collections-management install user OpenKIM +to install them all. + """ + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://s3.openkim.org/kim-api/'] +sources = ['%(name)s-%(version)s.txz'] +checksums = ['93673bb8fbc0625791f2ee67915d1672793366d10cabc63e373196862c14f991'] + +builddependencies = [('binutils', '2.37')] + +dependencies = [ + ('CMake', '3.22.1'), # Also needed to install models, thus not just a builddependency. +] + +parallel = 1 +separate_build_dir = True +build_type = 'Release' + +modextravars = { + 'KIM_API_CMAKE_PREFIX_DIR': '%(installdir)s/lib64' +} + +sanity_check_paths = { + 'files': ['bin/kim-api-collections-management', 'lib64/libkim-api.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos-CUDA-11.3.1.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos-CUDA-11.3.1.eb new file mode 100644 index 000000000000..ccd6b3b79e28 --- /dev/null +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos-CUDA-11.3.1.eb @@ -0,0 +1,169 @@ +name = 'LAMMPS' +version = '23Jun2022' +versionsuffix = '-kokkos' +_cuda_suffix = '-CUDA-%(cudaver)s' +versionsuffix += _cuda_suffix + +homepage = 'https://www.lammps.org' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +toolchain = {'name': 'foss', 'version': '2021a'} +toolchainopts = {'openmp': True, 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [ + 'stable_%(version)s_update1.tar.gz', +] +checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] + +builddependencies = [ + ('CMake', '3.20.1'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.2'), +] + +dependencies = [ + ('CUDA', '11.3.1', '', SYSTEM), + ('UCX-CUDA', '1.10.0', _cuda_suffix), + ('NCCL', '2.10.3', _cuda_suffix), + ('Python', '3.9.5'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.6'), + ('netCDF', '4.8.0'), + ('GSL', '2.7'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.76.0'), + ('HDF5', '1.10.7'), + # ('tbb', '2020.3'), # Optionally required by Intel package but has a link problem when using nvlink + ('PCRE', '8.44'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.2.1'), + ('Eigen', '3.3.9'), + ('PLUMED', '2.7.2'), + ('ScaFaCoS', '1.0.1'), + ('SciPy-bundle', '2021.05'), + # VTK package is auto-disabled if this dep is not available + # ('VTK', '9.0.1'), +] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos, +# which is claimed to be faster in pure MPI calculations +# configopts = "-DKokkos_ENABLE_SERIAL=yes " + + +# packages auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) + + +# include the following extra packages into the build +general_packages = [ + 'ASPHERE', + 'ATC', + 'AWPMD', + 'BOCS', + 'BODY', + 'BPM', + 'BROWNIAN', + 'CG-DNA', + 'CG-SDK', + 'CLASS2', + 'COLLOID', + 'COLVARS', + 'COMPRESS', + 'CORESHELL', + 'DIELECTRIC', + 'DIFFRACTION', + 'DIPOLE', + 'DPD-BASIC', + 'DPD-MESO', + 'DPD-REACT', + 'DPD-SMOOTH', + 'DRUDE', + 'EFF', + 'ELECTRODE', + 'EXTRA-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'MANIFOLD', + # 'MACHDYN', # Some issue related to Eigen 3.3.9 when using Kokkos + 'MANYBODY', + 'MC', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPENMP', + 'ORIENT', + 'PERI', + 'PHONON', + 'PLUGIN', + 'PLUMED', + 'POEMS', + 'PTM', + 'PYTHON', + 'QEQ', + 'QTB', + 'REACTION', + 'REAXFF', + 'REPLICA', + 'RIGID', + 'SCAFACOS', + 'SHOCK', + 'SMTBQ', + 'SPH', + 'SPIN', + 'SRD', + 'TALLY', + 'UEF', + 'VORONOI', + 'VTK', + 'YAFF', +] +# Excluded packages due to requiring additional (non-trivial) deps +# - ADIOS +# - LATTE +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + +# hardware-specific option +# cuda_compute_capabilities = ['8.0'] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos.eb new file mode 100644 index 000000000000..97db9f891107 --- /dev/null +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021a-kokkos.eb @@ -0,0 +1,162 @@ +name = 'LAMMPS' +version = '23Jun2022' +versionsuffix = '-kokkos' + +homepage = 'https://www.lammps.org' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +toolchain = {'name': 'foss', 'version': '2021a'} +toolchainopts = {'openmp': True, 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [ + 'stable_%(version)s_update1.tar.gz', +] +checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] + +builddependencies = [ + ('CMake', '3.20.1'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.2'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.6'), + ('netCDF', '4.8.0'), + ('GSL', '2.7'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.76.0'), + ('HDF5', '1.10.7'), + ('tbb', '2020.3'), + ('PCRE', '8.44'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.2.1'), + ('Eigen', '3.3.9'), + ('PLUMED', '2.7.2'), + ('ScaFaCoS', '1.0.1'), + ('SciPy-bundle', '2021.05'), + # VTK package is auto-disabled if this dep is not available + # ('VTK', '9.0.1'), +] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos, +# which is claimed to be faster in pure MPI calculations +# configopts = "-DKokkos_ENABLE_SERIAL=yes " + + +# packages auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) + + +# include the following extra packages into the build +general_packages = [ + 'ASPHERE', + 'ATC', + 'AWPMD', + 'BOCS', + 'BODY', + 'BPM', + 'BROWNIAN', + 'CG-DNA', + 'CG-SDK', + 'CLASS2', + 'COLLOID', + 'COLVARS', + 'COMPRESS', + 'CORESHELL', + 'DIELECTRIC', + 'DIFFRACTION', + 'DIPOLE', + 'DPD-BASIC', + 'DPD-MESO', + 'DPD-REACT', + 'DPD-SMOOTH', + 'DRUDE', + 'EFF', + 'ELECTRODE', + 'EXTRA-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'MANIFOLD', + 'MACHDYN', + 'MANYBODY', + 'MC', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPENMP', + 'ORIENT', + 'PERI', + 'PHONON', + 'PLUGIN', + 'PLUMED', + 'POEMS', + 'PTM', + 'PYTHON', + 'QEQ', + 'QTB', + 'REACTION', + 'REAXFF', + 'REPLICA', + 'RIGID', + 'SCAFACOS', + 'SHOCK', + 'SMTBQ', + 'SPH', + 'SPIN', + 'SRD', + 'TALLY', + 'UEF', + 'VORONOI', + 'VTK', + 'YAFF', +] +# Excluded packages due to requiring additional (non-trivial) deps +# - ADIOS +# - LATTE +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos-CUDA-11.4.1.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos-CUDA-11.4.1.eb new file mode 100644 index 000000000000..aeba49e36ce5 --- /dev/null +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos-CUDA-11.4.1.eb @@ -0,0 +1,170 @@ +name = 'LAMMPS' +version = '23Jun2022' +versionsuffix = '-kokkos' +_cuda_suffix = '-CUDA-%(cudaver)s' +versionsuffix += _cuda_suffix + +homepage = 'https://www.lammps.org' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'openmp': True, 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [ + 'stable_%(version)s_update1.tar.gz', +] +checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] + +builddependencies = [ + ('CMake', '3.22.1'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.3'), +] +dependencies = [ + ('CUDA', '11.4.1', '', SYSTEM), + ('UCX-CUDA', '1.11.2', _cuda_suffix), + ('NCCL', '2.10.3', _cuda_suffix), + ('Python', '3.9.6'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.6'), + ('netCDF', '4.8.1'), + ('GSL', '2.7'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.78.0'), + ('HDF5', '1.12.1'), + # ('tbb', '2020.3'), # Optionally required by Intel package but has a link problem when using nvlink + ('PCRE', '8.45'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.3.0'), + ('Eigen', '3.4.0'), + ('PLUMED', '2.7.3'), + ('ScaFaCoS', '1.0.1'), + ('SciPy-bundle', '2021.10'), + # VTK package is auto-disabled if this dep is not available + ('VTK', '9.1.0'), +] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos, +# which is claimed to be faster in pure MPI calculations +# configopts = "-DKokkos_ENABLE_SERIAL=yes " + +# packages auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) + +# GCC 11/12 defaults to C++17 standard, need to be consistent +configopts = "-DKokkos_CXX_STANDARD=17 " + +# include the following extra packages into the build +general_packages = [ + 'ASPHERE', + 'ATC', + 'AWPMD', + 'BOCS', + 'BODY', + 'BPM', + 'BROWNIAN', + 'CG-DNA', + 'CG-SDK', + 'CLASS2', + 'COLLOID', + 'COLVARS', + 'COMPRESS', + 'CORESHELL', + 'DIELECTRIC', + 'DIFFRACTION', + 'DIPOLE', + 'DPD-BASIC', + 'DPD-MESO', + 'DPD-REACT', + 'DPD-SMOOTH', + 'DRUDE', + 'EFF', + 'ELECTRODE', + 'EXTRA-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'MANIFOLD', + 'MACHDYN', + 'MANYBODY', + 'MC', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPENMP', + 'ORIENT', + 'PERI', + 'PHONON', + 'PLUGIN', + 'PLUMED', + 'POEMS', + 'PTM', + 'PYTHON', + 'QEQ', + 'QTB', + 'REACTION', + 'REAXFF', + 'REPLICA', + 'RIGID', + 'SCAFACOS', + 'SHOCK', + 'SMTBQ', + 'SPH', + 'SPIN', + 'SRD', + 'TALLY', + 'UEF', + 'VORONOI', + 'VTK', + 'YAFF', +] + +# Excluded packages due to requiring additional (non-trivial) deps +# - ADIOS +# - LATTE +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + +# hardware-specific option +# cuda_compute_capabilities = ['8.0'] + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb new file mode 100644 index 000000000000..d96efa6f4393 --- /dev/null +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-23Jun2022-foss-2021b-kokkos.eb @@ -0,0 +1,160 @@ +name = 'LAMMPS' +version = '23Jun2022' +versionsuffix = '-kokkos' + +homepage = 'https://www.lammps.org' +description = """LAMMPS is a classical molecular dynamics code, and an acronym +for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has +potentials for solid-state materials (metals, semiconductors) and soft matter +(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be +used to model atoms or, more generically, as a parallel particle simulator at +the atomic, meso, or continuum scale. LAMMPS runs on single processors or in +parallel using message-passing techniques and a spatial-decomposition of the +simulation domain. The code is designed to be easy to modify or extend with new +functionality. +""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'openmp': True, 'usempi': True} + +# 'https://github.com/lammps/lammps/archive/' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['stable_%(version)s_update1.tar.gz'] +checksums = ['58e3b2b984f8935bb0db5631e143be2826c45ffd48844f7c394f36624a3e17a2'] + +builddependencies = [ + ('CMake', '3.22.1'), + ('pkg-config', '0.29.2'), + ('archspec', '0.1.3'), +] +dependencies = [ + ('Python', '3.9.6'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.6'), + ('netCDF', '4.8.1'), + ('GSL', '2.7'), + ('zlib', '1.2.11'), + ('gzip', '1.10'), + ('cURL', '7.78.0'), + ('HDF5', '1.12.1'), + ('tbb', '2020.3'), + ('PCRE', '8.45'), + ('libxml2', '2.9.10'), + ('FFmpeg', '4.3.2'), + ('Voro++', '0.4.6'), + ('kim-api', '2.3.0'), + ('Eigen', '3.4.0'), + ('PLUMED', '2.7.3'), + ('ScaFaCoS', '1.0.1'), + ('SciPy-bundle', '2021.10'), + # VTK package is auto-disabled if this dep is not available + ('VTK', '9.1.0'), +] + +# To use additional custom configuration options, use the 'configopts' easyconfig parameter +# See docs and lammps easyblock for more information. +# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options + +# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos, +# which is claimed to be faster in pure MPI calculations +# configopts = "-DKokkos_ENABLE_SERIAL=yes " + + +# packages auto-enabled by easyblock +# 'GPU' - if cuda package is present and kokkos is disabled +# 'KOKKOS' - if kokkos is enabled (by default) + + +# include the following extra packages into the build +general_packages = [ + 'ASPHERE', + 'ATC', + 'AWPMD', + 'BOCS', + 'BODY', + 'BPM', + 'BROWNIAN', + 'CG-DNA', + 'CG-SDK', + 'CLASS2', + 'COLLOID', + 'COLVARS', + 'COMPRESS', + 'CORESHELL', + 'DIELECTRIC', + 'DIFFRACTION', + 'DIPOLE', + 'DPD-BASIC', + 'DPD-MESO', + 'DPD-REACT', + 'DPD-SMOOTH', + 'DRUDE', + 'EFF', + 'ELECTRODE', + 'EXTRA-COMPUTE', + 'EXTRA-DUMP', + 'EXTRA-FIX', + 'EXTRA-MOLECULE', + 'EXTRA-PAIR', + 'FEP', + 'GRANULAR', + 'H5MD', + 'INTERLAYER', + 'KIM', + 'KSPACE', + 'LATBOLTZ', + 'MANIFOLD', + 'MACHDYN', + 'MANYBODY', + 'MC', + 'MEAM', + 'MGPT', + 'MISC', + 'ML-IAP', + 'ML-PACE', + 'ML-RANN', + 'ML-SNAP', + 'MOFFF', + 'MOLECULE', + 'MOLFILE', + 'MPIIO', + 'NETCDF', + 'OPENMP', + 'ORIENT', + 'PERI', + 'PHONON', + 'PLUGIN', + 'PLUMED', + 'POEMS', + 'PTM', + 'PYTHON', + 'QEQ', + 'QTB', + 'REACTION', + 'REAXFF', + 'REPLICA', + 'RIGID', + 'SCAFACOS', + 'SHOCK', + 'SMTBQ', + 'SPH', + 'SPIN', + 'SRD', + 'TALLY', + 'UEF', + 'VORONOI', + 'VTK', + 'YAFF', +] + +# Excluded packages due to requiring additional (non-trivial) deps +# - ADIOS +# - LATTE +# - MESONT (requires very large files downloaded during build) +# - ML-HDNNP (requires N2P2) +# - ML-QUIP +# - MSCG +# - QMMM (setup seems complex) + + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/LAPACK/LAPACK-3.10.1-GCC-11.3.0.eb b/easybuild/easyconfigs/l/LAPACK/LAPACK-3.10.1-GCC-11.3.0.eb new file mode 100644 index 000000000000..37ad94e5b2fb --- /dev/null +++ b/easybuild/easyconfigs/l/LAPACK/LAPACK-3.10.1-GCC-11.3.0.eb @@ -0,0 +1,16 @@ +name = 'LAPACK' +version = '3.10.1' + +homepage = 'https://www.netlib.org/lapack/' +description = """LAPACK is written in Fortran90 and provides routines for solving systems of + simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue + problems, and singular value problems.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/Reference-LAPACK/lapack/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['cd005cd021f144d7d5f7f33c943942db9f03a28d110d6a3b80d718a295f7f714'] + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/l/LibSoup/LibSoup-2.74.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/l/LibSoup/LibSoup-2.74.0-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..fd45e0353376 --- /dev/null +++ b/easybuild/easyconfigs/l/LibSoup/LibSoup-2.74.0-GCCcore-10.3.0.eb @@ -0,0 +1,47 @@ +easyblock = 'MesonNinja' + +name = 'LibSoup' +version = '2.74.0' + +homepage = 'https://wiki.gnome.org/Projects/libsoup' +description = """libsoup is an HTTP client/server library for GNOME. It +uses GObjects and the glib main loop, to integrate well with GNOME +applications, and also has a synchronous API, for use in threaded +applications.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} +toolchainopts = {'cstd': 'gnu11'} + +source_urls = [FTPGNOME_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['33b1d4e0d639456c675c227877e94a8078d731233e2d57689c11abcef7d3c48e'] + +builddependencies = [ + ('binutils', '2.36.1'), + ('Meson', '0.58.0'), + ('Ninja', '1.10.2'), + ('pkg-config', '0.29.2'), + ('GObject-Introspection', '1.68.0'), + ('CMake', '3.20.1'), +] + +dependencies = [ + ('libxml2', '2.9.10'), + ('SQLite', '3.35.4'), + ('GLib', '2.68.2'), + ('libpsl', '0.21.1'), + ('cURL', '7.76.0'), +] + +# uncomment for checking TLS support +# osdependencies = [('gnutls-devel', 'gnutls-dev', 'libgnutls-devel')] + +# remove option -Dtls_check=false for checking TLS support +configopts = '-Dgssapi=disabled -Dvapi=disabled -Dtls_check=false ' + +sanity_check_paths = { + 'files': ['lib/libsoup-2.4.%s' % SHLIB_EXT, 'lib/libsoup-gnome-2.4.%s' % SHLIB_EXT], + 'dirs': ['include/libsoup-2.4/libsoup', 'include/libsoup-gnome-2.4/libsoup', 'lib/pkgconfig'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/Libint/Libint-2.7.2-GCC-11.3.0-lmax-6-cp2k.eb b/easybuild/easyconfigs/l/Libint/Libint-2.7.2-GCC-11.3.0-lmax-6-cp2k.eb new file mode 100644 index 000000000000..316d77e98db1 --- /dev/null +++ b/easybuild/easyconfigs/l/Libint/Libint-2.7.2-GCC-11.3.0-lmax-6-cp2k.eb @@ -0,0 +1,52 @@ +## +# This easyconfig is based on the easy config written originally by Robert Mijakovic +# Author: Ben Czaja (SURF) +## +name = 'Libint' +version = '2.7.2' +local_lmax = 6 +# custom configuration, to be used as dependency for CP2K +versionsuffix = '-lmax-%s-cp2k' % local_lmax + +homepage = 'https://github.com/evaleev/libint' +description = """Libint library is used to evaluate the traditional (electron repulsion) and certain novel two-body + matrix elements (integrals) over Cartesian Gaussian functions used in modern atomic and molecular theory.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True, 'cstd': 'c++11'} + +source_urls = ['https://github.com/evaleev/libint/archive'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'Libint-2.7.2_remove-test-permute.patch', + 'Libint-2.7.2_remove-test-eri.patch', +] +checksums = [ + 'fd0466ce9eb6786b8c5bbe3d510e387ed44b198a163264dfd7e60b337e295fd9', # v2.7.2.tar.gz + 'b019e66a2a3dc7e83ee8a60aa1ae78955a8af4df90ab07b7e57d2ee004ce3677', # Libint-2.7.2_remove-test-permute.patch + '4dd7b2993b6fdebb57e5c14faa9bf46117ae42100c686ace82fe26b7cb0312ab', # Libint-2.7.2_remove-test-eri.patch +] + +builddependencies = [ + ('Autotools', '20220317'), + ('GMP', '6.2.1'), + ('Boost', '1.79.0'), + ('Eigen', '3.4.0'), + ('Python', '3.10.4'), + ('CMake', '3.23.1'), +] + +# configure options as required by CP2K, +# see Jenkinsfile in https://github.com/cp2k/libint-cp2k +local_eri_max_am = '%s,%s' % (local_lmax, local_lmax - 1) +local_eri23_max_am = '%s,%s' % (local_lmax + 2, local_lmax + 1) + +libint_compiler_configopts = '--enable-eri=1 --enable-eri2=1 --enable-eri3=1 --with-max-am=%s ' % local_lmax +libint_compiler_configopts += '--with-eri-max-am=%s ' % local_eri_max_am +libint_compiler_configopts += '--with-eri2-max-am=%s ' % local_eri23_max_am +libint_compiler_configopts += '--with-eri3-max-am=%s ' % local_eri23_max_am +libint_compiler_configopts += '--enable-generic-code --disable-unrolling' + +with_fortran = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/Libint/Libint-2.7.2_remove-test-eri.patch b/easybuild/easyconfigs/l/Libint/Libint-2.7.2_remove-test-eri.patch new file mode 100644 index 000000000000..8b1ce717603c --- /dev/null +++ b/easybuild/easyconfigs/l/Libint/Libint-2.7.2_remove-test-eri.patch @@ -0,0 +1,15 @@ +Disable Fortran ERI tests as those have very strict error tolerances. This patch is updated from Libint-2.6.0_remove-test-eri.patch +See https://github.com/evaleev/libint/issues/188 +author: Ben Czaja (SURF) based on orginal patch from Alex Domingo (Vrije Universiteit Brussel) +diff -W 152 -Nru libint-2.7.2-orig/export/cmake/CMakeLists.txt.export libint-2.7.2/export/cmake/CMakeLists.txt.export +--- libint-2.7.2-orig/export/cmake/CMakeLists.txt.export 2022-06-20 07:51:55.000000000 +0200 ++++ libint-2.7.2/export/cmake/CMakeLists.txt.export 2022-08-16 17:38:22.347117248 +0200 +@@ -443,7 +443,7 @@ + PROPERTIES FIXTURES_REQUIRED LIBINT2_FORTRAN_EXAMPLE_EXEC) + + if (LIBINT_HAS_CXX_API) +- add_executable(fortran_test-libint2 EXCLUDE_FROM_ALL fortran/test.cc fortran/test-eri.cc $) ++ add_executable(fortran_test-libint2 EXCLUDE_FROM_ALL fortran/test.cc $) + target_link_libraries(fortran_test-libint2 libint2_cxx libint_f) + target_include_directories(fortran_test-libint2 PRIVATE $) + add_test(libint2/fortran_test/build "${CMAKE_COMMAND}" --build ${PROJECT_BINARY_DIR} --target fortran_test-libint2) diff --git a/easybuild/easyconfigs/l/Libint/Libint-2.7.2_remove-test-permute.patch b/easybuild/easyconfigs/l/Libint/Libint-2.7.2_remove-test-permute.patch new file mode 100644 index 000000000000..698f33be731c --- /dev/null +++ b/easybuild/easyconfigs/l/Libint/Libint-2.7.2_remove-test-permute.patch @@ -0,0 +1,19 @@ +Disable 2-e 3-c integrals permute correctly (deriv_order=1) unit test +See https://github.com/evaleev/libint/issues/252 +author: Ben Czaja (SURF) +diff -W 152 -Nru libint-2.7.2-orig/tests/unit/test-permute.cc libint-2.7.2/tests/unit/test-permute.cc +--- libint-2.7.2-orig/tests/unit/test-permute.cc 2022-06-20 07:51:55.000000000 +0200 ++++ libint-2.7.2/tests/unit/test-permute.cc 2022-08-17 11:29:30.415136451 +0200 +@@ -539,9 +539,9 @@ + SECTION( "deriv_order=0" ) { + validate3<0>(obs, dfbs, atoms); + } // section +- SECTION( "deriv_order=1" ) { +- validate3<1>(obs, dfbs, atoms); +- } // section ++ // SECTION( "deriv_order=1" ) { ++ // validate3<1>(obs, dfbs, atoms); ++ // } // section + SECTION( "deriv_order=2" ) { + validate3<2>(obs, dfbs, atoms); + } // section \ No newline at end of file diff --git a/easybuild/easyconfigs/l/Lua/Lua-5.4.4-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/Lua/Lua-5.4.4-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..c530dc1346a6 --- /dev/null +++ b/easybuild/easyconfigs/l/Lua/Lua-5.4.4-GCCcore-11.3.0.eb @@ -0,0 +1,28 @@ +name = 'Lua' +version = '5.4.4' + +homepage = 'https://www.lua.org/' +description = """Lua is a powerful, fast, lightweight, embeddable scripting language. + Lua combines simple procedural syntax with powerful data description constructs based + on associative arrays and extensible semantics. Lua is dynamically typed, + runs by interpreting bytecode for a register-based virtual machine, + and has automatic memory management with incremental garbage collection, + making it ideal for configuration, scripting, and rapid prototyping.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.%(namelower)s.org/ftp/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['164c7849653b80ae67bec4b7473b884bf5cc8d2dca05653475ec2ed27b9ebf61'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('ncurses', '6.3'), + ('libreadline', '8.1.2'), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/l/LuaJIT2-OpenResty/LuaJIT2-OpenResty-2.1-20220411-GCC-9.3.0.eb b/easybuild/easyconfigs/l/LuaJIT2-OpenResty/LuaJIT2-OpenResty-2.1-20220411-GCC-9.3.0.eb new file mode 100644 index 000000000000..e1507faabada --- /dev/null +++ b/easybuild/easyconfigs/l/LuaJIT2-OpenResty/LuaJIT2-OpenResty-2.1-20220411-GCC-9.3.0.eb @@ -0,0 +1,34 @@ +# This is the LuaJIT fork from openresty, not to be mixed up +# with the original LuaJIT version! +# Autor: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'ConfigureMake' + +name = "LuaJIT2-OpenResty" +version = "2.1-20220411" + +homepage = "https://github.com/openresty/luajit2" +description = """openresty/luajit2 - OpenResty's maintained branch of LuaJIT. +LuaJIT is a Just-In-Time Compiler (JIT) for the Lua +programming language. Lua is a powerful, dynamic and light-weight programming +language. It may be embedded or used as a general-purpose, stand-alone +language. """ + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +source_urls = ['https://github.com/openresty/luajit2/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['d3f2c870f8f88477b01726b32accab30f6e5d57ae59c5ec87374ff73d0794316'] + +skipsteps = ['configure'] + +installopts = 'PREFIX=%(installdir)s' + +sanity_check_commands = ['luajit -v'] + +sanity_check_paths = { + 'files': ["bin/luajit"], + 'dirs': [] +} + +moduleclass = "lang" diff --git a/easybuild/easyconfigs/l/libQGLViewer/libQGLViewer-2.8.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/l/libQGLViewer/libQGLViewer-2.8.0-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..9d7bd0007dac --- /dev/null +++ b/easybuild/easyconfigs/l/libQGLViewer/libQGLViewer-2.8.0-GCCcore-10.3.0.eb @@ -0,0 +1,24 @@ +name = 'libQGLViewer' +version = '2.8.0' + +homepage = 'http://libqglviewer.com/' +description = "libQGLViewer is a C++ library based on Qt that eases the creation of OpenGL 3D viewers." + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['http://www.libqglviewer.com/src'] +sources = [SOURCE_TAR_GZ] +checksums = ['03d2d3394866cdc419f43713aed827262c714cc4facddea7c3ba1d93dae3c4cc'] + +dependencies = [ + ('Qt5', '5.15.2'), + ('libGLU', '9.0.1'), +] + +builddependencies = [ + ('binutils', '2.36.1'), +] + +start_dir = '%(builddir)s/libQGLViewer-%(version)s/QGLViewer' + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libaec/libaec-1.0.6-GCCcore-11.2.0.eb b/easybuild/easyconfigs/l/libaec/libaec-1.0.6-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..2d4b3f1ceb26 --- /dev/null +++ b/easybuild/easyconfigs/l/libaec/libaec-1.0.6-GCCcore-11.2.0.eb @@ -0,0 +1,32 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +easyblock = 'CMakeMake' + +name = 'libaec' +version = '1.0.6' + +homepage = 'https://gitlab.dkrz.de/k202009/libaec' +description = """Libaec provides fast lossless compression of 1 up to 32 bit wide signed or unsigned integers +(samples). The library achieves best results for low entropy data as often encountered in space imaging +instrument data or numerical model output from weather or climate simulations. While floating point representations +are not directly supported, they can also be efficiently coded by grouping exponents and mantissa.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://gitlab.dkrz.de/k202009/%(namelower)s/-/archive/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['abab8c237d85c982bb4d6bde9b03c1f3d611dcacbd58bca55afac2496d61d4be'] + +builddependencies = [ + ('CMake', '3.21.1'), + ('binutils', '2.37'), +] + +sanity_check_paths = { + 'files': ['bin/aec', 'include/libaec.h', 'include/szlib.h', 'lib/libaec.a', 'lib/libaec.%s' % SHLIB_EXT], + 'dirs': ['share/man'], +} + +sanity_check_commands = ["aec --help"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libaec/libaec-1.0.6-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libaec/libaec-1.0.6-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..122fabeb9394 --- /dev/null +++ b/easybuild/easyconfigs/l/libaec/libaec-1.0.6-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +easyblock = 'CMakeMake' + +name = 'libaec' +version = '1.0.6' + +homepage = 'https://gitlab.dkrz.de/k202009/libaec' +description = """Libaec provides fast lossless compression of 1 up to 32 bit wide signed or unsigned integers +(samples). The library achieves best results for low entropy data as often encountered in space imaging +instrument data or numerical model output from weather or climate simulations. While floating point representations +are not directly supported, they can also be efficiently coded by grouping exponents and mantissa.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://gitlab.dkrz.de/k202009/%(namelower)s/-/archive/v%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['abab8c237d85c982bb4d6bde9b03c1f3d611dcacbd58bca55afac2496d61d4be'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('binutils', '2.38'), +] + +sanity_check_paths = { + 'files': ['bin/aec', 'include/libaec.h', 'include/szlib.h', 'lib/libaec.a', 'lib/libaec.%s' % SHLIB_EXT], + 'dirs': ['share/man'], +} + +sanity_check_commands = ["aec --help"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libcerf/libcerf-2.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libcerf/libcerf-2.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..c3d0238645cf --- /dev/null +++ b/easybuild/easyconfigs/l/libcerf/libcerf-2.1-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'libcerf' +version = '2.1' + +homepage = 'https://jugit.fz-juelich.de/mlz/libcerf' + +description = """ + libcerf is a self-contained numeric library that provides an efficient and + accurate implementation of complex error functions, along with Dawson, + Faddeeva, and Voigt functions. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://jugit.fz-juelich.de/mlz/libcerf/-/archive/v%(version)s/'] +sources = ['libcerf-v%(version)s.tar.gz'] +checksums = ['8a1cd8b7fae04b82a95168252129b8c1baca098a285ff8d3f25781dead14b75a'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), + ('Perl', '5.34.1', '-minimal'), # required for pod2html +] + +sanity_check_paths = { + 'files': ['lib/libcerf.%s' % SHLIB_EXT], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/libdwarf/libdwarf-0.4.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libdwarf/libdwarf-0.4.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..3c150818816f --- /dev/null +++ b/easybuild/easyconfigs/l/libdwarf/libdwarf-0.4.1-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'libdwarf' +version = '0.4.1' + +homepage = 'https://www.prevanders.net/dwarf.html' +description = """The DWARF Debugging Information Format is of interest to programmers working on compilers +and debuggers (and anyone interested in reading or writing DWARF information))""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.prevanders.net'] +sources = [SOURCE_TAR_XZ] +checksums = ['34277b969d30be3cc4c6fbce6926dd3e6f9ea9a27b01951c6753b479aadfd5ef'] + +builddependencies = [ + ('binutils', '2.38'), +] +dependencies = [ + ('libelf', '0.8.13'), +] + +configopts = "--enable-shared " + +sanity_check_paths = { + 'files': ['bin/dwarfdump', 'lib/libdwarf.a', 'lib/libdwarf.%s' % SHLIB_EXT], + 'dirs': ['include'] +} + +sanity_check_commands = ['dwarfdump --help'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/l/libelf/libelf-0.8.13-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libelf/libelf-0.8.13-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..40935d6dfe9c --- /dev/null +++ b/easybuild/easyconfigs/l/libelf/libelf-0.8.13-GCCcore-11.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'libelf' +version = '0.8.13' + +homepage = 'https://sourceware.org/elfutils' +description = """libelf is a free ELF object file access library""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://fossies.org/linux/misc/old/'] +sources = [SOURCE_TAR_GZ] +checksums = ['591a9b4ec81c1f2042a97aa60564e0cb79d041c52faa7416acb38bc95bd2c76d'] + +builddependencies = [ + ('binutils', '2.38'), +] + +modextrapaths = {'CPATH': 'include/libelf'} + +sanity_check_paths = { + 'files': ['lib/libelf.a', 'lib/libelf.%s' % SHLIB_EXT, 'lib/libelf.so.0', 'include/libelf/libelf.h'], + 'dirs': ['lib/pkgconfig'] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/l/libev/libev-4.33-GCC-11.2.0.eb b/easybuild/easyconfigs/l/libev/libev-4.33-GCC-11.2.0.eb new file mode 100644 index 000000000000..a1a8e171ef64 --- /dev/null +++ b/easybuild/easyconfigs/l/libev/libev-4.33-GCC-11.2.0.eb @@ -0,0 +1,34 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'ConfigureMake' + +name = 'libev' +version = '4.33' + +homepage = 'http://software.schmorp.de/pkg/libev.html' +description = """A full-featured and high-performance (see benchmark) +event loop that is loosely modelled after libevent, but without its +limitations and bugs. It is used in GNU Virtual Private Ethernet, +rxvt-unicode, auditd, the Deliantra MORPG Server and Client, and many +other programs.""" + +toolchain = {'name': 'GCC', 'version': '11.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['http://dist.schmorp.de/libev/Attic'] +sources = ['%(name)s-%(version)s.tar.gz'] + +checksums = [ + '507eb7b8d1015fbec5b935f34ebed15bf346bed04a11ab82b8eee848c4205aea', # libev-4.33.tar.gz +] + +builddependencies = [ + ('binutils', '2.37'), +] + +sanity_check_paths = { + 'files': ['lib/libev.%s' % SHLIB_EXT], + 'dirs': ['include/', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libgd/libgd-2.3.3-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libgd/libgd-2.3.3-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..edeae044ca8d --- /dev/null +++ b/easybuild/easyconfigs/l/libgd/libgd-2.3.3-GCCcore-11.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'libgd' +version = '2.3.3' + +homepage = 'https://libgd.github.io' +description = "GD is an open source code library for the dynamic creation of images by programmers." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/libgd/libgd/releases/download/gd-%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['dd3f1f0bb016edcc0b2d082e8229c822ad1d02223511997c80461481759b1ed2'] + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('fontconfig', '2.14.0'), + ('libjpeg-turbo', '2.1.3'), + ('libpng', '1.6.37'), + ('zlib', '1.2.12'), +] + +configopts = "--with-fontconfig=$EBROOTFONTCONFIG --with-jpeg=$EBROOTLIBJPEGMINTURBO " +configopts += "--with-png=$EBROOTLIBPNG --with-zlib=$EBROOTZLIB" + +sanity_check_paths = { + 'files': ['lib/libgd.a', 'lib/libgd.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include'], +} + +sanity_check_commands = ['webpng --help'] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2018b-Python-3.6.6.eb index 227d24549a34..ecc93e837723 100644 --- a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2018b-Python-3.6.6.eb @@ -15,7 +15,6 @@ checksums = ['887b6433a30282cb002117da89b05812c770fd9469f93950ff3866ddd02bfc64'] builddependencies = [('CMake', '3.12.1')] -configopts = '-DCMAKE_BUILD_TYPE=Release' dependencies = [ ('Python', '3.6.6'), diff --git a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019a.eb b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019a.eb index d65e2c7c3586..f836ce504bd3 100644 --- a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019a.eb +++ b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019a.eb @@ -22,7 +22,6 @@ dependencies = [ ('NCCL', '2.4.2'), ] -configopts = '-DCMAKE_BUILD_TYPE=Release' exts_defaultclass = 'PythonPackage' exts_default_options = { diff --git a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019b-Python-3.7.4.eb index 3c578c8cc133..9d6e0f23edb5 100644 --- a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2019b-Python-3.7.4.eb @@ -22,8 +22,6 @@ dependencies = [ ('NCCL', '2.4.8'), ] -build_type = 'Release' - exts_defaultclass = 'PythonPackage' exts_default_options = { 'download_dep_fail': True, diff --git a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2020b.eb b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2020b.eb index d871b75c78ac..2a82e9c481f4 100644 --- a/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2020b.eb +++ b/easybuild/easyconfigs/l/libgpuarray/libgpuarray-0.7.6-fosscuda-2020b.eb @@ -23,8 +23,6 @@ dependencies = [ ('NCCL', '2.8.3', '-CUDA-%(cudaver)s'), ] -build_type = 'Release' - exts_defaultclass = 'PythonPackage' exts_default_options = { 'download_dep_fail': True, diff --git a/easybuild/easyconfigs/l/libharu/libharu-2.3.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/l/libharu/libharu-2.3.0-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..29c45f84405b --- /dev/null +++ b/easybuild/easyconfigs/l/libharu/libharu-2.3.0-GCCcore-11.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'libharu' +version = '2.3.0' + +homepage = 'https://github.com/libharu/libharu/' +description = """libHaru is a free, cross platform, open source library for generating PDF files.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = [GITHUB_SOURCE] # https://github.com/libharu/libharu/archive/ +sources = ['RELEASE_%s.tar.gz' % '_'.join(version.split('.'))] +checksums = ['8f9e68cc5d5f7d53d1bc61a1ed876add1faf4f91070dbc360d8b259f46d9a4d2'] + +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.22.1'), +] + +dependencies = [('libpng', '1.6.37')] + +parallel = 1 + +sanity_check_paths = { + 'files': ['lib/libhpdf.%s' % SHLIB_EXT], + 'dirs': [ + 'if', + 'include', + 'lib', + ] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..e5a933378ed9 --- /dev/null +++ b/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +# Institution: IT4Innovations National Supercomputing Center, Czech Republic +# Author: Jakub Kropacek +# License: GPLv3 +# Year: 2022 + +easyblock = 'ConfigureMake' + +name = 'libmad' +version = '0.15.1b' + +homepage = 'https://www.underbit.com/products/mad/' +description = """MAD is a high-quality MPEG audio decoder.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://sourceforge.net/projects/mad/files/%(name)s/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['libmad-0.15.1b-remove-depreciated-gcc-option.patch'] +checksums = [ + 'bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690', # libmad-0.15.1b.tar.gz + # libmad-0.15.1b-remove-depreciated-gcc-option.patch + '8f96a23a22ba66e62f32e20064d01f4c7f6a18ba0aab85d3be9ce63794b2c678', +] + +builddependencies = [('binutils', '2.38')] + +sanity_check_paths = { + 'files': ['include/mad.h', 'lib/libmad.a', 'lib/libmad.la', 'lib/libmad.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib', 'lib64'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-remove-depreciated-gcc-option.patch b/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-remove-depreciated-gcc-option.patch new file mode 100644 index 000000000000..287faed3c38b --- /dev/null +++ b/easybuild/easyconfigs/l/libmad/libmad-0.15.1b-remove-depreciated-gcc-option.patch @@ -0,0 +1,29 @@ +# Institution: IT4Innovations National Supercomputing Center, Czech Republic +# Author: Jakub Kropacek +# License: GPLv3 +# Year: 2022 +# +# Option "-fforce-mem" has been removed in GCC 4.3. +# See https://gcc.gnu.org/gcc-4.3/changes.html +diff -Nru libmad-0.15.1b.orig/configure libmad-0.15.1b/configure +--- libmad-0.15.1b.orig/configure 2022-08-19 14:51:49.037627000 +0200 ++++ libmad-0.15.1b/configure 2022-08-19 14:52:05.758321053 +0200 +@@ -19099,7 +19099,6 @@ + case "$optimize" in + -O|"-O "*) + optimize="-O" +- optimize="$optimize -fforce-mem" + optimize="$optimize -fforce-addr" + : #x optimize="$optimize -finline-functions" + : #- optimize="$optimize -fstrength-reduce" +diff -Nru libmad-0.15.1b.orig/configure.ac libmad-0.15.1b/configure.ac +--- libmad-0.15.1b.orig/configure.ac 2022-08-19 14:51:49.051732000 +0200 ++++ libmad-0.15.1b/configure.ac 2022-08-19 14:52:10.953461180 +0200 +@@ -140,7 +140,6 @@ + case "$optimize" in + -O|"-O "*) + optimize="-O" +- optimize="$optimize -fforce-mem" + optimize="$optimize -fforce-addr" + : #x optimize="$optimize -finline-functions" + : #- optimize="$optimize -fstrength-reduce" diff --git a/easybuild/easyconfigs/l/libplinkio/libplinkio-0.9.8-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/libplinkio/libplinkio-0.9.8-GCCcore-9.3.0.eb new file mode 100644 index 000000000000..00726da9fcad --- /dev/null +++ b/easybuild/easyconfigs/l/libplinkio/libplinkio-0.9.8-GCCcore-9.3.0.eb @@ -0,0 +1,31 @@ +# Contribution by +# DeepThought, Flinders University +# R.QIAO + +easyblock = 'CMakeMake' + +name = 'libplinkio' +version = '0.9.8' + +homepage = "https://github.com/mfranberg/libplinkio" +description = """A small C and Python library for reading PLINK genotype files.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'cstd': 'gnu17', 'extra_cflags': '-w'} + +github_account = "mfranberg" +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['de54dd4789b2da9b937a1f445dc6976153211dc35b4376a4cf561ad2ee861075'] + +builddependencies = [ + ('CMake', '3.16.4'), + ('binutils', '2.34'), +] + +sanity_check_paths = { + 'files': ['lib/libplinkio.%s' % SHLIB_EXT], + 'dirs': ['include/plinkio'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libpng/libpng-1.5.30.eb b/easybuild/easyconfigs/l/libpng/libpng-1.5.30.eb new file mode 100644 index 000000000000..252ef3d75531 --- /dev/null +++ b/easybuild/easyconfigs/l/libpng/libpng-1.5.30.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'libpng' +version = '1.5.30' + +homepage = 'http://www.libpng.org/pub/png/libpng.html' + +description = "libpng is the official PNG reference library" + +toolchain = SYSTEM + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6c32c7264f040cc6a4b11798c902a16bcd0626c7d7549fa4481264482f129514'] + +dependencies = [ + ('zlib', '1.2.11'), +] + +local_majminver = ''.join(version.split('.')[:2]) + +sanity_check_paths = { + 'files': ['include/pngconf.h', 'include/png.h', + 'lib/libpng.a', 'lib/libpng.%s' % SHLIB_EXT, + 'lib/libpng%s.a' % local_majminver, + 'lib/libpng%s.%s' % (local_majminver, SHLIB_EXT), + 'lib/libpng%s.%s.%s' % (local_majminver, SHLIB_EXT, local_majminver)], + 'dirs': ['bin', 'include/libpng%s' % local_majminver, 'share/man'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libpsl/libpsl-0.21.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/l/libpsl/libpsl-0.21.1-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..180125212722 --- /dev/null +++ b/easybuild/easyconfigs/l/libpsl/libpsl-0.21.1-GCCcore-11.2.0.eb @@ -0,0 +1,32 @@ +easyblock = 'ConfigureMake' + +name = 'libpsl' +version = '0.21.1' + +homepage = 'https://rockdaboot.github.io/libpsl' +description = "C library for the Public Suffix List" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/rockdaboot/libpsl/archive'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ac6ce1e1fbd4d0254c4ddb9d37f1fa99dec83619c1253328155206b896210d4c'] + +builddependencies = [ + ('binutils', '2.37'), + ('Python', '3.9.6', '-bare'), +] + +dependencies = [ + ('libidn2', '2.3.2'), + ('libunistring', '1.0'), +] + +sanity_check_commands = [('psl --version')] + +sanity_check_paths = { + 'files': ['bin/psl', 'lib/libpsl.a'], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libreadline/libreadline-8.1.2-GCCcore-12.1.0.eb b/easybuild/easyconfigs/l/libreadline/libreadline-8.1.2-GCCcore-12.1.0.eb new file mode 100644 index 000000000000..2fbe4e7c79b1 --- /dev/null +++ b/easybuild/easyconfigs/l/libreadline/libreadline-8.1.2-GCCcore-12.1.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'libreadline' +version = '8.1.2' + +homepage = 'https://tiswww.case.edu/php/chet/readline/rltop.html' +description = """ + The GNU Readline library provides a set of functions for use by applications + that allow users to edit command lines as they are typed in. Both Emacs and + vi editing modes are available. The Readline library includes additional + functions to maintain a list of previously-entered command lines, to recall + and perhaps reedit those lines, and perform csh-like history expansion on + previous commands. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.1.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://ftp.gnu.org/gnu/readline'] +sources = ['readline-%(version)s.tar.gz'] +checksums = ['7589a2381a8419e68654a47623ce7dfcb756815c8fee726b98f90bf668af7bc6'] + +builddependencies = [ + ('binutils', '2.38'), +] +dependencies = [ + ('ncurses', '6.3'), +] + +# for the termcap symbols, use EB ncurses +buildopts = "SHLIB_LIBS='-lncurses'" + +sanity_check_paths = { + 'files': ['lib/libreadline.a', 'lib/libhistory.a'] + + ['include/readline/%s' % x + for x in ['chardefs.h', 'history.h', 'keymaps.h', 'readline.h', + 'rlconf.h', 'rlstdc.h', 'rltypedefs.h', 'tilde.h']], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libyaml/libyaml-0.2.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libyaml/libyaml-0.2.5-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..3b7e5265d073 --- /dev/null +++ b/easybuild/easyconfigs/l/libyaml/libyaml-0.2.5-GCCcore-11.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'libyaml' +version = '0.2.5' + +homepage = 'https://pyyaml.org/wiki/LibYAML' +description = "LibYAML is a YAML parser and emitter written in C." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://pyyaml.org/download/%(name)s/'] +sources = ['yaml-%(version)s.tar.gz'] +checksums = ['c642ae9b75fee120b2d96c712538bd2cf283228d2337df2cf2988e3c02678ef4'] + +builddependencies = [ + ('binutils', '2.38'), +] + + +sanity_check_paths = { + 'files': ['include/yaml.h', 'lib/libyaml.a', 'lib/libyaml.%s' % SHLIB_EXT], + 'dirs': ['lib/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libzip/libzip-1.9.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/libzip/libzip-1.9.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..28d6e87b5723 --- /dev/null +++ b/easybuild/easyconfigs/l/libzip/libzip-1.9.2-GCCcore-11.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'libzip' +version = '1.9.2' + +homepage = 'https://libzip.org/' +description = "libzip is a C library for reading, creating, and modifying zip archives." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/nih-at/libzip/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['7f28eaec7a02ca099ea9dad88fc8023f7f6ddfca54b780040ff7fdb39d9efb3c'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +dependencies = [('zlib', '1.2.12')] + +sanity_check_paths = { + 'files': [ + 'bin/zipcmp', + 'bin/zipmerge', + 'bin/ziptool', + 'lib64/libzip.%s' % SHLIB_EXT, + ], + 'dirs': ['include', 'lib/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/lxml/lxml-4.9.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/l/lxml/lxml-4.9.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..b66852ade855 --- /dev/null +++ b/easybuild/easyconfigs/l/lxml/lxml-4.9.1-GCCcore-11.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'lxml' +version = '4.9.1' + +homepage = 'https://lxml.de/' +description = """The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['fe749b052bb7233fe5d072fcb549221a8cb1a16725c47c37e42b0b9cb3ff2c3f'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('Python', '3.10.4'), + ('libxml2', '2.9.13'), + ('libxslt', '1.1.34'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/M4/M4-1.4.19-GCCcore-12.2.0.eb b/easybuild/easyconfigs/m/M4/M4-1.4.19-GCCcore-12.2.0.eb new file mode 100644 index 000000000000..568d60035caa --- /dev/null +++ b/easybuild/easyconfigs/m/M4/M4-1.4.19-GCCcore-12.2.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'M4' +version = '1.4.19' + +homepage = 'https://www.gnu.org/software/m4/m4.html' +description = """GNU M4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible + although it has some extensions (for example, handling more than 9 positional parameters to macros). + GNU M4 also has built-in functions for including files, running shell commands, doing arithmetic, etc.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['3be4a26d825ffdfda52a56fc43246456989a3630093cced3fbddf4771ee58a70'] + +# use same binutils version that was used when building GCC toolchain +builddependencies = [('binutils', '2.39', '', True)] + +# '-fgnu89-inline' is required to avoid linking errors with older glibc's, +# see https://github.com/easybuilders/easybuild-easyconfigs/issues/529 +configopts = "--enable-c++ CPPFLAGS=-fgnu89-inline" + +sanity_check_paths = { + 'files': ['bin/m4'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/m/MATSim/MATSim-14.0-GCCcore-11.2.0-Java-11.eb b/easybuild/easyconfigs/m/MATSim/MATSim-14.0-GCCcore-11.2.0-Java-11.eb new file mode 100644 index 000000000000..dd2b476ec767 --- /dev/null +++ b/easybuild/easyconfigs/m/MATSim/MATSim-14.0-GCCcore-11.2.0-Java-11.eb @@ -0,0 +1,37 @@ +easyblock = 'PackedBinary' + +name = 'MATSim' +version = '14.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.matsim.org/' +description = """MATSim is an open-source framework to implement large-scale agent-based transport simulations.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/matsim-org/matsim-libs/releases/download/%(version)s'] +sources = ['%(namelower)s-%(version)s-release.zip'] +checksums = ['17c7b785678cacd937f5df5b8c80398b73e2e9ceb07cc1ebd175fc94a65ce3c4'] + +dependencies = [ + ('Java', '11', '', True), + ('Mesa', '21.1.7'), + ('X11', '20210802'), +] + +sanity_check_paths = { + 'files': ['%(namelower)s-%(version)s.jar'], + 'dirs': ['libs', 'examples'], +} + +sanity_check_commands = ["java org.matsim.run.ReleaseInfo"] + +modextrapaths = {'CLASSPATH': 'libs/*'} + +modloadmsg = """ +To execute MATSim GUI: java -jar $EBROOTMATSIM/%(namelower)s-%(version)s.jar +To execute MATSim in batch mode: java org.matsim.run.RunMatsim +You might have to adjust the maximum memory of the JVM (-Xmx) +""" + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/m/MATSim/MATSim-14.0-Java-11.eb b/easybuild/easyconfigs/m/MATSim/MATSim-14.0-Java-11.eb new file mode 100644 index 000000000000..11bcf3dbdad6 --- /dev/null +++ b/easybuild/easyconfigs/m/MATSim/MATSim-14.0-Java-11.eb @@ -0,0 +1,34 @@ +easyblock = 'PackedBinary' + +name = 'MATSim' +version = '14.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://www.matsim.org/' +description = """MATSim is an open-source framework to implement large-scale agent-based transport simulations.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/matsim-org/matsim-libs/releases/download/%(version)s'] +sources = ['%(namelower)s-%(version)s-release.zip'] +checksums = ['17c7b785678cacd937f5df5b8c80398b73e2e9ceb07cc1ebd175fc94a65ce3c4'] + +dependencies = [ + ('Java', '11'), +] + +sanity_check_paths = { + 'files': ['%(namelower)s-%(version)s.jar'], + 'dirs': ['libs', 'examples'], +} + +sanity_check_commands = ["java org.matsim.run.ReleaseInfo"] + +modextrapaths = {'CLASSPATH': 'libs/*'} + +modloadmsg = """ +To execute MATSim in batch mode: java org.matsim.run.RunMatsim +You might have to adjust the maximum memory of the JVM (-Xmx) +""" + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/m/MDAnalysis/MDAnalysis-2.2.0-foss-2022a.eb b/easybuild/easyconfigs/m/MDAnalysis/MDAnalysis-2.2.0-foss-2022a.eb new file mode 100644 index 000000000000..47b2c19b8035 --- /dev/null +++ b/easybuild/easyconfigs/m/MDAnalysis/MDAnalysis-2.2.0-foss-2022a.eb @@ -0,0 +1,57 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'PythonBundle' + +name = 'MDAnalysis' +version = '2.2.0' + +homepage = 'https://www.mdanalysis.org/' +description = """MDAnalysis is an object-oriented Python library to analyze trajectories from molecular dynamics (MD) +simulations in many popular formats.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('matplotlib', '3.5.2'), + ('Biopython', '1.79'), + ('networkx', '2.8.4'), + ('tqdm', '4.64.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('mrcfile', '1.4.2', { + 'checksums': ['447022f27b7ce4bf57f97010f092a811ce88635479de7f8a86449a0c9cb319fe'], + }), + ('GridDataFormats', '1.0.1', { + 'modulename': 'gridData', + 'checksums': ['ad2c9ab7d672a6d8c426de7d083eee4f3e2b0bd59391675d30683c768ab83cc4'], + }), + ('gsd', '2.5.3', { + 'checksums': ['1593be39eb7a527647a40935a316d594ae20d4c11ff1383c25c8196376314d97'], + }), + ('msgpack', '1.0.4', { + 'checksums': ['f5d869c18f030202eb412f08b28d2afeea553d6613aee89e200d7aca7ef01f5f'], + }), + ('mmtf-python', '1.1.3', { + 'modulename': 'mmtf', + 'checksums': ['12a02fe1b7131f0a2b8ce45b46f1e0cdd28b9818fe4499554c26884987ea0c32'], + }), + ('funcsigs', '1.0.2', { + 'checksums': ['a7bb0f2cf3a3fd1ab2732cb49eba4252c2af4240442415b4abce3b87022a8f50'], + }), + ('fasteners', '0.17.3', { + 'checksums': ['a9a42a208573d4074c77d041447336cf4e3c1389a256fd3e113ef59cf29b7980'], + }), + (name, version, { + 'modulename': 'MDAnalysis', + 'checksums': ['bf9c9b7a03404e65aad66215d4c2ff8834ab747551eeaee059ff3e599a99d322'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/METIS/METIS-5.1.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/METIS/METIS-5.1.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..d3593b8ed0e4 --- /dev/null +++ b/easybuild/easyconfigs/m/METIS/METIS-5.1.0-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +name = 'METIS' +version = '5.1.0' + +homepage = 'http://glaros.dtc.umn.edu/gkhome/metis/metis/overview' + +description = """ + METIS is a set of serial programs for partitioning graphs, partitioning + finite element meshes, and producing fill reducing orderings for sparse + matrices. The algorithms implemented in METIS are based on the multilevel + recursive-bisection, multilevel k-way, and multi-constraint partitioning + schemes. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis', + 'http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/OLD', +] +sources = [SOURCELOWER_TAR_GZ] + +# We use 32bit for indices and 64bit for content +patches = ['%(name)s-%(version)s-use-doubles.patch'] + +checksums = [ + '76faebe03f6c963127dbb73c13eab58c9a3faeae48779f049066a21c087c5db2', # source + '7e38a3ec8f2b8e3d189239bade5b28c0dd1c564485050109164fa71a6a767c67', # patch +] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +configopts = ['', 'shared=1'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MPC/MPC-1.2.1-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/MPC/MPC-1.2.1-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..db636b0b91ef --- /dev/null +++ b/easybuild/easyconfigs/m/MPC/MPC-1.2.1-GCCcore-11.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'MPC' +version = '1.2.1' + +homepage = 'http://www.multiprecision.org/' +description = """Gnu Mpc is a C library for the arithmetic of + complex numbers with arbitrarily high precision and correct + rounding of the result. It extends the principles of the IEEE-754 + standard for fixed precision real floating point numbers to + complex numbers, providing well-defined semantics for every + operation. At the same time, speed of operation at high precision + is a major design goal.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://ftpmirror.gnu.org/gnu/mpc/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('GMP', '6.2.1'), + ('MPFR', '4.1.0'), +] + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libmpc.%s' % SHLIB_EXT, 'include/mpc.h'], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MRCPP/MRCPP-1.3.6-foss-2020a.eb b/easybuild/easyconfigs/m/MRCPP/MRCPP-1.3.6-foss-2020a.eb index 453982c61991..4702a4e30f07 100644 --- a/easybuild/easyconfigs/m/MRCPP/MRCPP-1.3.6-foss-2020a.eb +++ b/easybuild/easyconfigs/m/MRCPP/MRCPP-1.3.6-foss-2020a.eb @@ -19,8 +19,6 @@ builddependencies = [ ] configopts = "-DENABLE_MPI=True -DENABLE_OPENMP=True" -separate_build_dir = True -build_type = 'release' runtest = 'test' sanity_check_paths = { diff --git a/easybuild/easyconfigs/m/MRChem/MRChem-1.0.0-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/m/MRChem/MRChem-1.0.0-foss-2020a-Python-3.8.2.eb index fa91eb54472b..2f9dfbcb7f89 100644 --- a/easybuild/easyconfigs/m/MRChem/MRChem-1.0.0-foss-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/m/MRChem/MRChem-1.0.0-foss-2020a-Python-3.8.2.eb @@ -28,8 +28,6 @@ dependencies = [ ] configopts = "-DENABLE_MPI=True -DENABLE_OPENMP=True" -separate_build_dir = True -build_type = 'release' runtest = 'test' sanity_check_paths = { diff --git a/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1-foss-2022a-metis.eb b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1-foss-2022a-metis.eb new file mode 100644 index 000000000000..d9da01989eac --- /dev/null +++ b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1-foss-2022a-metis.eb @@ -0,0 +1,35 @@ +name = 'MUMPS' +version = '5.5.1' +versionsuffix = '-metis' + +homepage = 'https://graal.ens-lyon.fr/MUMPS/' +description = "A parallel sparse direct solver" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['http://mumps.enseeiht.fr/'] +sources = ['%(name)s_%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s_shared-pord.patch', # builds the shared libs of PORD + '%(name)s-%(version)s_shared-mumps.patch', # builds shared libs of MUMPS +] +checksums = [ + '1abff294fa47ee4cfd50dfd5c595942b72ebfcedce08142a75a99ab35014fa15', # MUMPS_5.5.1.tar.gz + '7990ca13c37aa72daa9e646cc7e6303f3eda01b9c463accea5f0f595fbc13566', # MUMPS-5.5.0_shared-pord.patch + '83c346a16dae059a2f4792ce2f847ca9e8423ef8c6949c3de12960f09383d564', # MUMPS-5.5.0_shared-mumps.patch +] + +dependencies = [ + ('SCOTCH', '7.0.1'), + ('METIS', '5.1.0'), +] + +parallel = 1 + +# fix 'Type mismatch between actual argument' errors with GCC 10.x +prebuildopts = 'export FFLAGS="$FFLAGS -fallow-argument-mismatch" && ' + +buildopts = 'all SONAME_VERSION="%(version)s"' + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1_shared-mumps.patch b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1_shared-mumps.patch new file mode 100644 index 000000000000..ba51f4a1a284 --- /dev/null +++ b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1_shared-mumps.patch @@ -0,0 +1,61 @@ +Heavily inspired from https://src.fedoraproject.org/rpms/MUMPS//blob/rawhide/f/MUMPS-shared.patch +Author: micketeer@gmail.com +Updatd to version 5.5.0: J. Sassmannshausen/ICL (UK) +Updatd to version 5.5.1: maxim-masterov (SURF) +diff -Nru MUMPS_5.5.1.orig/src/Makefile MUMPS_5.5.1/src/Makefile +--- MUMPS_5.5.1.orig/src/Makefile 2022-08-31 11:57:42.666642000 +0200 ++++ MUMPS_5.5.1/src/Makefile 2022-08-31 12:02:01.665935000 +0200 +@@ -15,18 +15,23 @@ + + libcommon: $(incdir)/mumps_int_def.h + $(MAKE) $(libdir)/libmumps_common$(PLAT)$(LIBEXT) ++ $(MAKE) $(libdir)/libmumps_common$(PLAT).so + + s: $(incdir)/mumps_int_def.h libcommon + $(MAKE) ARITH=s $(libdir)/libsmumps$(PLAT)$(LIBEXT) ++ $(MAKE) ARITH=s $(libdir)/libsmumps$(PLAT).so + + d: $(incdir)/mumps_int_def.h libcommon + $(MAKE) ARITH=d $(libdir)/libdmumps$(PLAT)$(LIBEXT) ++ $(MAKE) ARITH=d $(libdir)/libdmumps$(PLAT).so + + c: $(incdir)/mumps_int_def.h libcommon + $(MAKE) ARITH=c $(libdir)/libcmumps$(PLAT)$(LIBEXT) ++ $(MAKE) ARITH=c $(libdir)/libcmumps$(PLAT).so + + z: $(incdir)/mumps_int_def.h libcommon + $(MAKE) ARITH=z $(libdir)/libzmumps$(PLAT)$(LIBEXT) ++ $(MAKE) ARITH=z $(libdir)/libzmumps$(PLAT).so + + + # Rules for shared libraries +@@ -221,6 +226,13 @@ + $(libdir)/lib$(ARITH)mumps$(PLAT)$(LIBEXT_SHARED): $(OBJS_MOD) $(OBJS_OTHER) $(libdir)/libmumps_common$(PLAT)$(LIBEXT_SHARED) + $(FC) $(OPTL) -shared $(OBJS_MOD) $(OBJS_OTHER) -L$(libdir) $(LORDERINGS) $(LIBS) $(LIBOTHERS) -lmumps_common$(PLAT) -o $@ $(RPATH_OPT) + ++$(libdir)/libmumps_common$(PLAT).so: $(OBJS_COMMON_MOD) $(OBJS_COMMON_OTHER) ++ $(FC) -shared $^ -Wl,-soname,libmumps_common$(PLAT)-$(SONAME_VERSION).so $(OPTL) -L$(libdir) $(LORDERINGS) -lpthread $(MUMPS_LIBF77) $(MPIFLIB) $(MPICLIB) $(METISLIB) -o $(libdir)/libmumps_common$(PLAT)-$(SONAME_VERSION).so $(OPTL) -Wl,-z,defs ++ ln -fs libmumps_common$(PLAT)-$(SONAME_VERSION).so $@ ++ ++$(libdir)/lib$(ARITH)mumps$(PLAT).so: $(OBJS_MOD) $(OBJS_OTHER) ++ $(FC) -shared $^ -Wl,-soname,lib$(ARITH)mumps$(PLAT)-$(SONAME_VERSION).so $(OPTL) -L$(libdir) -lmumps_common$(PLAT) -lpthread $(MUMPS_LIBF77) $(LORDERINGS) $(MPIFLIB) $(METISLIB) $(SCALAP) -o $(libdir)/lib$(ARITH)mumps$(PLAT)-$(SONAME_VERSION).so $(OPTL) -Wl,-z,defs ++ ln -fs lib$(ARITH)mumps$(PLAT)-$(SONAME_VERSION).so $@ + + # Dependencies between modules: + # i) arithmetic-dependent modules: +@@ -435,12 +447,14 @@ + .SUFFIXES: .c .F .o + .F.o: + $(FC) $(OPTF) $(FPIC) -I. -I../include $(INCS) $(IORDERINGSF) $(ORDERINGSF) -c $*.F $(OUTF)$*.o ++ $(FC) $(OPTF) -I. -I../include $(INCS) $(IORDERINGSF) $(ORDERINGSF) -fPIC -c $*.F $(OUTF)$*.o + .c.o: + $(CC) $(OPTC) $(FPIC) -I../include $(INCS) $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -c $*.c $(OUTC)$*.o ++ $(CC) $(OPTC) -I../include $(INCS) $(CDEFS) $(IORDERINGSC) $(ORDERINGSC) -fPIC -c $*.c $(OUTC)$*.o + + $(ARITH)mumps_c.o: mumps_c.c + $(CC) $(OPTC) $(FPIC) -I../include $(INCS) $(CDEFS) -DMUMPS_ARITH=MUMPS_ARITH_$(ARITH) \ +- $(IORDERINGSC) $(ORDERINGSC) -c mumps_c.c $(OUTC)$@ ++ $(IORDERINGSC) $(ORDERINGSC) -fPIC -c mumps_c.c $(OUTC)$@ + + clean: + $(RM) *.o *.mod $(incdir)/mumps_int_def.h diff --git a/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1_shared-pord.patch b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1_shared-pord.patch new file mode 100644 index 000000000000..37c0d9000621 --- /dev/null +++ b/easybuild/easyconfigs/m/MUMPS/MUMPS-5.5.1_shared-pord.patch @@ -0,0 +1,44 @@ +Heavily inspired from https://src.fedoraproject.org/rpms/MUMPS//blob/rawhide/f/MUMPS-shared.patch +Author: micketeer@gmail.com +Updatd to version 5.5.0: J. Sassmannshausen/ICL (UK) +Updatd to version 5.5.1: maxim-masterov (SURF) +diff -Nru MUMPS_5.5.1.orig/Makefile MUMPS_5.5.1/Makefile +--- MUMPS_5.5.1.orig/Makefile 2022-08-31 11:57:42.628161000 +0200 ++++ MUMPS_5.5.1/Makefile 2022-08-31 12:06:17.800078000 +0200 +@@ -65,7 +65,7 @@ + + include Makefile.inc + +-prerequisites: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord$(PLAT)$(LIBEXT) ++prerequisites: Makefile.inc $(LIBSEQNEEDED) $(libdir)/libpord$(PLAT)$(LIBEXT) $(libdir)/libpord$(PLAT).so + + prerequisitesshared: Makefile.inc $(LIBSEQNEEDED)sharedlibseq $(libdir)/libpord$(PLAT)$(LIBEXT_SHARED) + +@@ -103,8 +103,11 @@ + cp $(LPORDDIR)/libpord$(LIBEXT_SHARED) $@; \ + fi; + +- +- ++$(libdir)/libpord$(PLAT).so: ++ if [ "$(LPORDDIR)" != "" ] ; then \ ++ cd $(LPORDDIR); make CC="$(CC)" CFLAGS="$(OPTC)" AR="$(AR)" ARFUNCT= RANLIB="$(RANLIB)" libpord$(PLAT).so; fi; ++ if [ "$(LPORDDIR)" != "" ] ; then \ ++ cp -a $(LPORDDIR)/libpord*.so lib/; fi; + + clean: + (cd src; $(MAKE) clean) +diff -Nru MUMPS_5.5.1.orig/PORD/lib/Makefile MUMPS_5.5.1/PORD/lib/Makefile +--- MUMPS_5.5.1.orig/PORD/lib/Makefile 2022-08-31 11:57:42.938998000 +0200 ++++ MUMPS_5.5.1/PORD/lib/Makefile 2022-08-31 12:06:20.352758000 +0200 +@@ -31,6 +31,10 @@ + libpord$(PLAT)$(LIBEXT_SHARED):$(OBJS) + $(CC) -shared $(OBJS) -o libpord.so + ++libpord$(PLAT).so: $(OBJS) ++ $(CC) -shared $(OBJS) -Wl,-soname,libpord$(PLAT)-$(SONAME_VERSION).so -o libpord$(PLAT)-$(SONAME_VERSION).so $(OPTL) -Wl,-z,defs ++ ln -fs libpord$(PLAT)-$(SONAME_VERSION).so $@ ++ + clean: + rm -f *.o + diff --git a/easybuild/easyconfigs/m/MUMmer/MUMmer-4.0.0rc1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/m/MUMmer/MUMmer-4.0.0rc1-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..609e244fec21 --- /dev/null +++ b/easybuild/easyconfigs/m/MUMmer/MUMmer-4.0.0rc1-GCCcore-11.2.0.eb @@ -0,0 +1,36 @@ +# EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics + +easyblock = 'ConfigureMake' + +name = 'MUMmer' +version = '4.0.0rc1' + +homepage = 'http://mummer.sourceforge.net/' + +description = """ + MUMmer is a system for rapidly aligning entire genomes, + whether in complete or draft form. AMOS makes use of it. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/gmarcais/mummer/releases/download/v%(version)s/'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +checksums = ['85006adb2d6539c2f738c3e3bb14b58bb6f62cd6c6ca5ede884a87ae76e07d1d'] + +builddependencies = [('binutils', '2.37')] + +sanity_check_paths = { + 'files': ['bin/mummer', 'bin/annotate', 'bin/combineMUMs', 'bin/delta-filter', + 'bin/repeat-match', 'bin/show-aligns', 'bin/show-coords', + 'bin/show-tiling', 'bin/show-snps', 'bin/show-diff', 'bin/exact-tandems', + 'bin/mummerplot', 'bin/promer', 'bin/dnadiff', + ], + 'dirs': ['include', 'lib', 'libexec'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.3.14-foss-2019a.eb b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.3.14-foss-2019a.eb index fa93e55ee620..038db9413529 100644 --- a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.3.14-foss-2019a.eb +++ b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.3.14-foss-2019a.eb @@ -37,8 +37,7 @@ dependencies = [ separate_build_dir = True -configopts = "-DCMAKE_BUILD_TYPE=Release " -configopts += "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker +configopts = "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker configopts += "-DMYSQL_MAINTAINER_MODE=OFF " # disabled to not treat warnings as errors (-Werror) configopts += "-DWITH_PCRE=bundled " # using an external PCRE is broken, see https://bugs.exim.org/show_bug.cgi?id=2173 configopts += "-DWITH_ZLIB=system " diff --git a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.4.13-gompi-2019b.eb b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.4.13-gompi-2019b.eb index 92741312fc01..0e511067f4c8 100644 --- a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.4.13-gompi-2019b.eb +++ b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.4.13-gompi-2019b.eb @@ -37,8 +37,7 @@ dependencies = [ separate_build_dir = True -configopts = "-DCMAKE_BUILD_TYPE=Release " -configopts += "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker +configopts = "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker configopts += "-DMYSQL_MAINTAINER_MODE=OFF " # disabled to not treat warnings as errors (-Werror) configopts += "-DWITH_PCRE=bundled " # using an external PCRE is broken, see https://bugs.exim.org/show_bug.cgi?id=2173 configopts += "-DWITH_ZLIB=system " diff --git a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.5.8-GCC-10.2.0.eb b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.5.8-GCC-10.2.0.eb index db3b9cf4a49a..6fe1eb0f6cc9 100644 --- a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.5.8-GCC-10.2.0.eb +++ b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.5.8-GCC-10.2.0.eb @@ -47,8 +47,7 @@ dependencies = [ local_pcre2_path = '%%(builddir)s/pcre2-%s.zip' % local_pcre2_ver preconfigopts = "sed -i 's@http://.*.zip@file://%s@g' ../mariadb-%%(version)s/cmake/pcre.cmake && " % local_pcre2_path -configopts = "-DCMAKE_BUILD_TYPE=Release " -configopts += "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker +configopts = "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker configopts += "-DMYSQL_MAINTAINER_MODE=OFF " # disabled to not treat warnings as errors (-Werror) configopts += "-DWITH_PCRE=bundled " # using an external PCRE is broken, see https://bugs.exim.org/show_bug.cgi?id=2173 configopts += "-DWITH_ZLIB=system " diff --git a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.6.4-GCC-10.3.0.eb b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.6.4-GCC-10.3.0.eb index 6473e5c7709d..725b0d44831c 100644 --- a/easybuild/easyconfigs/m/MariaDB/MariaDB-10.6.4-GCC-10.3.0.eb +++ b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.6.4-GCC-10.3.0.eb @@ -47,8 +47,7 @@ dependencies = [ local_pcre2_path = '%%(builddir)s/pcre2-%s.zip' % local_pcre2_ver preconfigopts = "sed -i 's@http://.*.zip@file://%s@g' ../mariadb-%%(version)s/cmake/pcre.cmake && " % local_pcre2_path -configopts = "-DCMAKE_BUILD_TYPE=Release " -configopts += "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker +configopts = "-DCMAKE_SHARED_LINKER_FLAGS='-fuse-ld=bfd' " # Linking fails with default gold linker configopts += "-DMYSQL_MAINTAINER_MODE=OFF " # disabled to not treat warnings as errors (-Werror) configopts += "-DWITH_PCRE=bundled " # using an external PCRE is broken, see https://bugs.exim.org/show_bug.cgi?id=2173 configopts += "-DWITH_ZLIB=system " diff --git a/easybuild/easyconfigs/m/MaxQuant/MaxQuant-2.0.3.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/m/MaxQuant/MaxQuant-2.0.3.0-GCCcore-11.2.0.eb index 66bf848d14f2..d38372872cdc 100644 --- a/easybuild/easyconfigs/m/MaxQuant/MaxQuant-2.0.3.0-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/m/MaxQuant/MaxQuant-2.0.3.0-GCCcore-11.2.0.eb @@ -26,8 +26,8 @@ sanity_check_commands = [ ("mono $EBROOTMAXQUANT/bin/MaxQuantCmd.exe --help 2>&1 | grep -q USAGE", '')] modaliases = { - 'maxquantcmd': 'mono $EBROOTMAXQUANT/bin/%(name)sCmd.exe', - 'maxquantgui': 'mono $EBROOTMAXQUANT/bin/%(name)sGui.exe', + 'maxquantcmd': 'mono %(installdir)s/bin/%(name)sCmd.exe', + 'maxquantgui': 'mono %(installdir)s/bin/%(name)sGui.exe', } modloadmsg = """ diff --git a/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0-foss-2021a-CUDA-11.3.1.eb new file mode 100644 index 000000000000..121bec87c856 --- /dev/null +++ b/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0-foss-2021a-CUDA-11.3.1.eb @@ -0,0 +1,61 @@ +easyblock = 'PythonBundle' + +name = 'Megalodon' +version = '2.5.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/nanoporetech/megalodon' +description = """Megalodon is a research command line tool to extract high accuracy modified base and sequence variant +calls from raw nanopore reads by anchoring the information rich basecalling neural network output to a reference +genome/transriptome.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +dependencies = [ + ('CUDA', '11.3.1', '', True), + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('h5py', '3.2.1'), + ('ont-fast5-api', '4.0.0'), + ('ont-remora', '1.0.0', versionsuffix), + ('Pysam', '0.16.0.1'), + ('SAMtools', '1.13'), + ('scikit-learn', '0.24.2'), + ('Seaborn', '0.11.2'), + ('tqdm', '4.61.2'), +] + +use_pip = True + +exts_list = [ + ('mappy', '2.24', { + 'checksums': ['35a2fb73ef14173283d5abb31e7a318429e0330c3be95851df38dd83d4ff9af9'], + }), + ('ont-pyguppy-client-lib', '6.0.6', { + 'modulename': 'pyguppy_client_lib', + 'source_tmpl': 'ont_pyguppy_client_lib-%(version)s-cp39-cp39-manylinux2014_x86_64.whl', + 'checksums': ['ba1f7e7aa02830d1d4760f7871710b1d097a7ab9e5412b127c00474974c271fa'], + }), + ('megalodon', version, { + 'patches': ['Megalodon-2.5.0_fix-samtools-test.patch'], + 'checksums': [ + # megalodon-2.5.0.tar.gz + '60ad1f1191b86d9a1423dcb9c934c7577cf1ce083689337646937be2538953a3', + # Megalodon-2.5.0_fix-samtools-test.patch + 'd90ec766e459a1c657ab8db94a208432845f091550e6bac197ec2d99d7058faa', + ], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/megalodon'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "megalodon -h", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0-foss-2021a.eb b/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0-foss-2021a.eb new file mode 100644 index 000000000000..6824d5f3590e --- /dev/null +++ b/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0-foss-2021a.eb @@ -0,0 +1,59 @@ +easyblock = 'PythonBundle' + +name = 'Megalodon' +version = '2.5.0' + +homepage = 'https://github.com/nanoporetech/megalodon' +description = """Megalodon is a research command line tool to extract high accuracy modified base and sequence variant +calls from raw nanopore reads by anchoring the information rich basecalling neural network output to a reference +genome/transriptome.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('h5py', '3.2.1'), + ('ont-fast5-api', '4.0.0'), + ('ont-remora', '1.0.0'), + ('Pysam', '0.16.0.1'), + ('SAMtools', '1.13'), + ('scikit-learn', '0.24.2'), + ('Seaborn', '0.11.2'), + ('tqdm', '4.61.2'), +] + +use_pip = True + +exts_list = [ + ('mappy', '2.24', { + 'checksums': ['35a2fb73ef14173283d5abb31e7a318429e0330c3be95851df38dd83d4ff9af9'], + }), + ('ont-pyguppy-client-lib', '6.0.6', { + 'modulename': 'pyguppy_client_lib', + 'source_tmpl': 'ont_pyguppy_client_lib-%(version)s-cp39-cp39-manylinux2014_x86_64.whl', + 'checksums': ['ba1f7e7aa02830d1d4760f7871710b1d097a7ab9e5412b127c00474974c271fa'], + }), + ('megalodon', version, { + 'patches': ['Megalodon-2.5.0_fix-samtools-test.patch'], + 'checksums': [ + # megalodon-2.5.0.tar.gz + '60ad1f1191b86d9a1423dcb9c934c7577cf1ce083689337646937be2538953a3', + # Megalodon-2.5.0_fix-samtools-test.patch + 'd90ec766e459a1c657ab8db94a208432845f091550e6bac197ec2d99d7058faa', + ], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/megalodon'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "megalodon -h", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0_fix-samtools-test.patch b/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0_fix-samtools-test.patch new file mode 100644 index 000000000000..1305f51862e8 --- /dev/null +++ b/easybuild/easyconfigs/m/Megalodon/Megalodon-2.5.0_fix-samtools-test.patch @@ -0,0 +1,72 @@ +Use command `samtools help` to sanity check the installation of SAMtools +PR: https://github.com/nanoporetech/megalodon/pull/302 +author: Alex Domingo (Vrije Universiteit Brussel) +diff --git a/megalodon/mapping.py b/megalodon/mapping.py +index bab93d3..8b9608f 100755 +--- a/megalodon/mapping.py ++++ b/megalodon/mapping.py +@@ -267,44 +267,40 @@ class MapInfo: + + def test_samtools(self): + try: +- test_sort_res = subprocess.run( +- [self.samtools_exec, "sort"], ++ test_help_res = subprocess.run( ++ [self.samtools_exec, "help"], + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + ) +- test_index_res = subprocess.run( +- [self.samtools_exec, "index"], +- stdout=subprocess.PIPE, +- stderr=subprocess.PIPE, ++ except FileNotFoundError: ++ LOGGER.warning( ++ "Samtools executable not found. Mappings will " ++ + "not be sorted or indexed." + ) +- # Note index returns non-zero exit status +- if test_sort_res.returncode != 0: ++ self.do_sort_mappings = False ++ else: ++ if test_help_res.returncode != 0: + LOGGER.warning( + "Samtools test commands return non-zero exit " + + "status. Mappings will not be sorted or indexed." + ) + LOGGER.debug( + ( +- "MappingTestFail: sort_returncode: {} " +- + "index_returncode: {}\nsort_call_stdout:\n{}\n" +- + "sort_call_stderr:\n{}\nindex_call_stdout:\n{}" +- + "\nindex_call_stderr:\n{}" ++ "MappingTestFail: samtools_returncode: {} " ++ + "\nsamtools_call_stdout:\n{}" ++ + "\nsamtools_call_stderr:\n{}" + ).format( +- test_sort_res.returncode, +- test_index_res.returncode, +- test_sort_res.stdout.decode(), +- test_sort_res.stderr.decode(), +- test_index_res.stdout.decode(), +- test_index_res.stderr.decode(), ++ test_help_res.returncode, ++ test_help_res.stdout.decode(), ++ test_help_res.stderr.decode(), + ) + ) + self.do_sort_mappings = False +- except FileNotFoundError: +- LOGGER.warning( +- "Samtools executable not found. Mappings will " +- + "not be sorted or indexed." +- ) +- self.do_sort_mappings = False ++ else: ++ LOGGER.debug( ++ "Mapping Test Success --- Mappings will be " ++ + "sorted and indexed with samtools" ++ ) + + + def align_read( diff --git a/easybuild/easyconfigs/m/Mercurial/Mercurial-6.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/Mercurial/Mercurial-6.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..76559a0dc8a3 --- /dev/null +++ b/easybuild/easyconfigs/m/Mercurial/Mercurial-6.2-GCCcore-11.3.0.eb @@ -0,0 +1,31 @@ +## +# Author: Robert Mijakovic +## +easyblock = "PythonPackage" + +name = 'Mercurial' +version = '6.2' + +homepage = 'https://www.mercurial-scm.org' +description = """Mercurial is a free, distributed source control management tool. It efficiently handles projects +of any size and offers an easy and intuitive interface. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://www.mercurial-scm.org/release/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d382b5e3fab8931126013201731416574b35ae85787404bb2a0819f41bb88972'] + +dependencies = [ + ('binutils', '2.38'), + ('Python', '3.10.4') +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +sanity_check_commands = ["hg --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/MetaEuk/MetaEuk-6-GCC-11.2.0.eb b/easybuild/easyconfigs/m/MetaEuk/MetaEuk-6-GCC-11.2.0.eb new file mode 100644 index 000000000000..cf853a53080d --- /dev/null +++ b/easybuild/easyconfigs/m/MetaEuk/MetaEuk-6-GCC-11.2.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'MetaEuk' +version = '6' +local_commit = 'a5d39d9' + +homepage = 'https://metaeuk.soedinglab.org' +description = """MetaEuk is a modular toolkit designed for large-scale gene discovery and annotation in eukaryotic + metagenomic contigs.""" + +toolchain = {'name': 'GCC', 'version': '11.2.0'} + +source_urls = ['https://github.com/soedinglab/%(namelower)s/archive'] +sources = ['%%(version)s-%s.tar.gz' % local_commit] +checksums = ['be19c26f5bdb7dcdd7bc48172105afecf19e5a2e5555edb3ba0c4aa0e4aac126'] + +builddependencies = [('CMake', '3.21.1')] + +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.11'), +] + +sanity_check_paths = { + 'files': ['bin/metaeuk'], + 'dirs': [], +} + +sanity_check_commands = ["metaeuk --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MetaMorpheus/MetaMorpheus-0.0.320-GCCcore-10.3.0.eb b/easybuild/easyconfigs/m/MetaMorpheus/MetaMorpheus-0.0.320-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..842a2f4e9455 --- /dev/null +++ b/easybuild/easyconfigs/m/MetaMorpheus/MetaMorpheus-0.0.320-GCCcore-10.3.0.eb @@ -0,0 +1,35 @@ +# Authors: Matt Pickin (UoY) +# Jasper Grimm (UoY) +easyblock = 'Tarball' + +name = 'MetaMorpheus' +version = '0.0.320' + +homepage = 'https://github.com/smith-chem-wisc/MetaMorpheus' +description = """MetaMorpheus is a bottom-up proteomics database search software + with integrated post-translational modification (PTM) discovery capability. + This program combines features of Morpheus and G-PTM-D in a single tool. +""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://github.com/smith-chem-wisc/%(name)s/releases/download/%(version)s'] +sources = [{ + 'download_filename': '%(name)s_CommandLine.zip', + 'filename': SOURCE_ZIP, +}] +checksums = ['9c76babe4e92c8003dd17eb9a3cd80b1c26658dcb175edcc05808cb0e3a7ea37'] + +dependencies = [('dotNET-Core-Runtime', '5.0.17')] + +sanity_check_paths = { + 'files': ['CMD.dll'], + 'dirs': [], +} + +_cmd = "dotnet %(installdir)s/CMD.dll" +sanity_check_commands = ["%s %s" % (_cmd, x) for x in ['--help', '--test -o %(builddir)s/test']] + +modaliases = {'metamorpheus': _cmd} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/Mini-XML/Mini-XML-2.12-GCCcore-9.3.0.eb b/easybuild/easyconfigs/m/Mini-XML/Mini-XML-2.12-GCCcore-9.3.0.eb new file mode 100644 index 000000000000..9035db82f73b --- /dev/null +++ b/easybuild/easyconfigs/m/Mini-XML/Mini-XML-2.12-GCCcore-9.3.0.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'Mini-XML' +version = '2.12' + +homepage = 'https://www.msweet.org/mxml' +description = """Mini-XML is a small XML parsing library that you can use to read XML data files or strings in your + application without requiring large non-standard libraries""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/michaelrsweet/mxml/releases/download/v%(version)s/'] +sources = ['mxml-%(version)s.tar.gz'] +checksums = ['6bfb53baa1176e916855bd3b6d592fd5b962c3c259aacdb5670d90c57ce4034f'] + +builddependencies = [('binutils', '2.34')] + +sanity_check_paths = { + 'files': ['include/mxml.h', 'lib/libmxml.a', 'lib/libmxml.%s' % SHLIB_EXT], + 'dirs': ['share/man'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/Mini-XML/Mini-XML-3.3.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/m/Mini-XML/Mini-XML-3.3.1-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..594f3ec179d3 --- /dev/null +++ b/easybuild/easyconfigs/m/Mini-XML/Mini-XML-3.3.1-GCCcore-11.2.0.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'Mini-XML' +version = '3.3.1' + +homepage = 'https://www.msweet.org/mxml' +description = """Mini-XML is a small XML parsing library that you can use to read XML data files or strings in your + application without requiring large non-standard libraries""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/michaelrsweet/mxml/releases/download/v%(version)s/'] +sources = ['mxml-%(version)s.tar.gz'] +checksums = ['0c663ed1fe393b5619f80101798202eea43534abd7c8aff389022fd8c1dacc32'] + +builddependencies = [('binutils', '2.37')] + +sanity_check_paths = { + 'files': ['include/mxml.h', 'lib/libmxml.a', 'lib/libmxml.%s' % SHLIB_EXT], + 'dirs': ['share/man'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/m/Molekel/Molekel-5.4.0-Linux_x86_64.eb b/easybuild/easyconfigs/m/Molekel/Molekel-5.4.0-Linux_x86_64.eb index f69c22f76b83..cee0bcbc2670 100644 --- a/easybuild/easyconfigs/m/Molekel/Molekel-5.4.0-Linux_x86_64.eb +++ b/easybuild/easyconfigs/m/Molekel/Molekel-5.4.0-Linux_x86_64.eb @@ -4,16 +4,19 @@ name = "Molekel" version = "5.4.0" versionsuffix = "-Linux_x86_64" -homepage = "http://molekel.cscs.ch/" -description = """Molekel is an open-source multi-platform molecular visualization program.""" +homepage = "http://ugovaretto.github.io/molekel/wiki/pmwiki.php/Main/HomePage.html" +description = """ + Molekel is an open-source multi-platform molecular visualization program. +""" toolchain = SYSTEM -sources = ['molekel_%s_%s.tar.gz' % (version.replace('.', '_'), versionsuffix.lower()[1:])] -source_urls = ['ftp://ftp.cscs.ch/out/molekel/molekel_%(version_major_minor)s'] +sources = ['molekel_%s_%s.tgz' % (version.replace('.', '_'), versionsuffix.lower()[1:])] +source_urls = ["https://github.com/ugovaretto/molekel/releases/download/v%(version_major_minor)s/"] +checksums = ['2a0f58759e7b6053746080813f17fc1df164e9755fcffb7c22470c7371c0de86'] sanity_check_paths = { - 'files': ["bin/Molekel"], + 'files': ['bin/Molekel'], 'dirs': [], } diff --git a/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2019b.eb b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2019b.eb new file mode 100644 index 000000000000..f68ded36ea02 --- /dev/null +++ b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2019b.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'maeparser' +version = '1.3.0' + +homepage = 'https://github.com/schrodinger/maeparser' +description = "maeparser is a parser for Schrodinger Maestro files." + +toolchain = {'name': 'gompi', 'version': '2019b'} + +source_urls = ['https://github.com/schrodinger/maeparser/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['fa8f9336de1e5d1cabec29a6da04547b1fb040bb32ba511ff30b4a14097c751c'] + +builddependencies = [ + ('CMake', '3.15.3'), +] + +dependencies = [('Boost', '1.71.0')] + +sanity_check_paths = { + 'files': ['lib/libmaeparser.%s' % SHLIB_EXT], + 'dirs': ['include/maeparser', 'lib/cmake'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2021a.eb b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2021a.eb new file mode 100644 index 000000000000..8f6fd34c7f3e --- /dev/null +++ b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2021a.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'maeparser' +version = '1.3.0' + +homepage = 'https://github.com/schrodinger/maeparser' +description = "maeparser is a parser for Schrodinger Maestro files." + +toolchain = {'name': 'gompi', 'version': '2021a'} + +source_urls = ['https://github.com/schrodinger/maeparser/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['fa8f9336de1e5d1cabec29a6da04547b1fb040bb32ba511ff30b4a14097c751c'] + +builddependencies = [ + ('CMake', '3.20.1'), +] + +dependencies = [('Boost', '1.76.0')] + +sanity_check_paths = { + 'files': ['lib/libmaeparser.%s' % SHLIB_EXT], + 'dirs': ['include/maeparser', 'lib/cmake'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2022a.eb b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2022a.eb new file mode 100644 index 000000000000..8ae3df022e83 --- /dev/null +++ b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-gompi-2022a.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'maeparser' +version = '1.3.0' + +homepage = 'https://github.com/schrodinger/maeparser' +description = "maeparser is a parser for Schrodinger Maestro files." + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://github.com/schrodinger/maeparser/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['fa8f9336de1e5d1cabec29a6da04547b1fb040bb32ba511ff30b4a14097c751c'] + +builddependencies = [ + ('CMake', '3.23.1'), +] + +dependencies = [('Boost', '1.79.0')] + +sanity_check_paths = { + 'files': ['lib/libmaeparser.%s' % SHLIB_EXT], + 'dirs': ['include/maeparser', 'lib/cmake'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-iimpi-2020a.eb b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-iimpi-2020a.eb new file mode 100644 index 000000000000..c00793c0c3c2 --- /dev/null +++ b/easybuild/easyconfigs/m/maeparser/maeparser-1.3.0-iimpi-2020a.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'maeparser' +version = '1.3.0' + +homepage = 'https://github.com/schrodinger/maeparser' +description = "maeparser is a parser for Schrodinger Maestro files." + +toolchain = {'name': 'iimpi', 'version': '2020a'} + +source_urls = ['https://github.com/schrodinger/maeparser/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['fa8f9336de1e5d1cabec29a6da04547b1fb040bb32ba511ff30b4a14097c751c'] + +builddependencies = [ + ('CMake', '3.16.4'), +] + +dependencies = [('Boost', '1.72.0')] + +sanity_check_paths = { + 'files': ['lib/libmaeparser.%s' % SHLIB_EXT], + 'dirs': ['include/maeparser', 'lib/cmake'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/makeinfo/makeinfo-6.8-GCCcore-11.3.0.eb b/easybuild/easyconfigs/m/makeinfo/makeinfo-6.8-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..0e5c61d4a94c --- /dev/null +++ b/easybuild/easyconfigs/m/makeinfo/makeinfo-6.8-GCCcore-11.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'makeinfo' +version = '6.8' + +homepage = 'https://www.gnu.org/software/texinfo/' +description = """makeinfo is part of the Texinfo project, the official documentation format of the GNU project.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://ftpmirror.gnu.org/gnu/texinfo'] +sources = ['texinfo-%(version)s.tar.xz'] +checksums = ['8eb753ed28bca21f8f56c1a180362aed789229bd62fff58bf8368e9beb59fec4'] + +builddependencies = [('binutils', '2.38')] +dependencies = [('Perl', '5.34.1')] + +sanity_check_paths = { + 'files': ['bin/makeinfo'], + 'dirs': ['share'], +} + +sanity_check_commands = ["makeinfo --help"] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/m/matplotlib/matplotlib-3.5.2-foss-2022a.eb b/easybuild/easyconfigs/m/matplotlib/matplotlib-3.5.2-foss-2022a.eb new file mode 100644 index 000000000000..ade6e567845f --- /dev/null +++ b/easybuild/easyconfigs/m/matplotlib/matplotlib-3.5.2-foss-2022a.eb @@ -0,0 +1,69 @@ +easyblock = 'PythonBundle' + +name = 'matplotlib' +version = '3.5.2' + +homepage = 'https://matplotlib.org' +description = """matplotlib is a python 2D plotting library which produces publication quality figures in a variety of + hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python + and ipython shell, web application servers, and six graphical user interface toolkits.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +builddependencies = [ + ('pkgconf', '1.8.0'), + ('cppy', '1.2.1') +] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('libpng', '1.6.37'), + ('freetype', '2.12.1'), + ('Tkinter', '%(pyver)s'), + ('Pillow', '9.1.1'), + ('Qhull', '2020.2') +] + +use_pip = True +sanity_pip_check = True + +# avoid that matplotlib downloads and builds its own copies of freetype and qhull +_fix_setup = "sed -e 's/#system_freetype = False/system_freetype = True/g' " +_fix_setup += "-e 's/#system_qhull = False/system_qhull = True/g' mplsetup.cfg.template >setup.cfg && " + +_include_path = "export CPLUS_INCLUDE_PATH=$EBROOTFREETYPE/include/freetype2:${CPLUS_INCLUDE_PATH} && " + +exts_list = [ + ('fonttools', '4.34.0', { + 'modulename': 'fontTools', + 'source_tmpl': SOURCE_ZIP, + 'checksums': ['73d3fab85790f076d56db431bfdf9ce51b566816ff74d51e050e11ab1ffa8f8b'], + }), + ('Cycler', '0.11.0', { + 'modulename': 'cycler', + 'source_tmpl': 'cycler-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/C/Cycler'], + 'checksums': ['9c87405839a19696e837b3b818fed3f5f69f16f1eec1a1ad77e043dcea9c772f'], + }), + ('kiwisolver', '1.4.3', { + 'source_urls': ['https://pypi.python.org/packages/source/k/kiwisolver'], + 'checksums': ['ab8a15c2750ae8d53e31f77a94f846d0a00772240f1c12817411fa2344351f86'], + }), + (name, version, { + 'preinstallopts': _fix_setup + _include_path, + 'source_urls': ['https://pypi.python.org/packages/source/m/matplotlib'], + 'checksums': ['48cf850ce14fa18067f2d9e0d646763681948487a8080ec0af2686468b4607a2'], + }), +] + +sanity_check_commands = [ + """python -c 'import matplotlib; matplotlib.use("Agg"); import matplotlib.pyplot' """, + "python -c 'from mpl_toolkits.mplot3d import Axes3D'", +] + +# use non-interactive plotting backend as default +# see https://matplotlib.org/tutorials/introductory/usage.html#what-is-a-backend +modextravars = {'MPLBACKEND': 'Agg'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.4.3-foss-2020b.eb b/easybuild/easyconfigs/m/medaka/medaka-1.4.3-foss-2020b.eb index 6619e4a1e9bf..a6ccdd550570 100644 --- a/easybuild/easyconfigs/m/medaka/medaka-1.4.3-foss-2020b.eb +++ b/easybuild/easyconfigs/m/medaka/medaka-1.4.3-foss-2020b.eb @@ -36,6 +36,7 @@ dependencies = [ ('pyspoa', '0.0.8'), ('pyfaidx', '0.5.9.5'), ('python-isal', '0.11.1'), + ('BCFtools', '1.11'), ] use_pip = True @@ -83,10 +84,13 @@ exts_list = [ sanity_pip_check = True sanity_check_paths = { - 'files': ['bin/medaka', 'bin/medaka_consensus'], + 'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'], 'dirs': ['lib/python%(pyshortver)s/site-packages'], } -sanity_check_commands = ["medaka --help"] +sanity_check_commands = [ + "medaka --help", + "medaka_version_report", +] moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.5.0-foss-2021a.eb b/easybuild/easyconfigs/m/medaka/medaka-1.5.0-foss-2021a.eb index d3f817945e56..75466141935b 100644 --- a/easybuild/easyconfigs/m/medaka/medaka-1.5.0-foss-2021a.eb +++ b/easybuild/easyconfigs/m/medaka/medaka-1.5.0-foss-2021a.eb @@ -35,6 +35,7 @@ dependencies = [ ('ont-fast5-api', '4.0.0'), ('WhatsHap', '1.1'), ('intervaltree-python', '3.1.0'), + ('BCFtools', '1.12'), ] use_pip = True @@ -51,10 +52,13 @@ exts_list = [ sanity_pip_check = True sanity_check_paths = { - 'files': ['bin/medaka', 'bin/medaka_consensus'], + 'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'], 'dirs': ['lib/python%(pyshortver)s/site-packages'], } -sanity_check_commands = ["medaka --help"] +sanity_check_commands = [ + "medaka --help", + "medaka_version_report", +] moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/medaka/medaka-1.6.0-foss-2021b.eb b/easybuild/easyconfigs/m/medaka/medaka-1.6.0-foss-2021b.eb new file mode 100644 index 000000000000..f13a44b0e6e0 --- /dev/null +++ b/easybuild/easyconfigs/m/medaka/medaka-1.6.0-foss-2021b.eb @@ -0,0 +1,65 @@ +# This is a contribution from HPCNow! (http://hpcnow.com) +# Copyright:: HPCNow! +# Authors:: Danilo Gonzalez +# License:: GPL-v3.0 +# Updated to foss-2020b to use with artic tool +# J. Sassmannshausen (GSTT/NHS UK) +# Updated to 1.5.0 +# Jasper Grimm (UoY) + +easyblock = 'PythonBundle' + +name = 'medaka' +version = '1.6.0' + +homepage = 'https://github.com/nanoporetech/medaka' +description = "medaka is a tool to create a consensus sequence from nanopore sequencing data." + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'pic': True} + +builddependencies = [('Autotools', '20210726')] + +_minimap_ver = '2.22' +dependencies = [ + ('Python', '3.9.6'), # includes cffi + # TensorFlow ~=2.7.0 required by medaka 1.6.0, see requirements.txt + ('TensorFlow', '2.7.1'), + ('Pysam', '0.18.0'), + ('SAMtools', '1.14'), + ('minimap2', _minimap_ver), + ('HTSlib', '1.14'), # for tabix, bgzip + ('Racon', '1.5.0'), + ('edlib', '1.3.9'), + ('pyspoa', '0.0.8'), + ('python-parasail', '1.2.4'), + ('ont-fast5-api', '4.0.2'), + ('WhatsHap', '1.4'), + ('intervaltree-python', '3.1.0'), + ('BCFtools', '1.14'), +] + +use_pip = True + +exts_list = [ + ('mappy', _minimap_ver, { + 'checksums': ['219c93ab7f8d5d7c26face512a9e738a7306f3376ebfa3017eac70676ba97840'], + }), + (name, version, { + 'checksums': ['a8389f90cba77095061c4ff22c7cce8d73908e2451fa1d07b94c2f8ce4152628'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "medaka --help", + "medaka_version_report", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/mgltools/mgltools-1.5.7.eb b/easybuild/easyconfigs/m/mgltools/mgltools-1.5.7.eb new file mode 100644 index 000000000000..c7c3007a9ea5 --- /dev/null +++ b/easybuild/easyconfigs/m/mgltools/mgltools-1.5.7.eb @@ -0,0 +1,35 @@ +easyblock = 'Binary' + +name = "mgltools" +version = "1.5.7" + +homepage = "https://ccsb.scripps.edu/mgltools/" +description = """ + The MGLTools software suite can be used for visualization + and analysis of molecular structures and comprises + the Python Molecular Viewer (PMV, a general purpose molecular viewer), + AutoDockTools (ADT, a set of PMV commands specifically developed to support AutoDock users) + and Vision (a visual programming environment). +""" + +toolchain = SYSTEM + +source_urls = ["https://ccsb.scripps.edu/download/532/"] + +sources = [{ + 'download_filename': 'index.html', + 'filename': SOURCE_TAR_GZ +}] + +checksums = ['3d7aaf852ed9d5ad586326db860aff62d96ed6c0e06bb9535cf7d576e4b615dd'] + +extract_sources = True + +install_cmd = "./install.sh -d %(installdir)s" + +sanity_check_paths = { + 'files': ['bin/pmv', 'bin/adt'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/miniasm/miniasm-0.3-20191007-GCCcore-10.3.0.eb b/easybuild/easyconfigs/m/miniasm/miniasm-0.3-20191007-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..b2b2261baab5 --- /dev/null +++ b/easybuild/easyconfigs/m/miniasm/miniasm-0.3-20191007-GCCcore-10.3.0.eb @@ -0,0 +1,46 @@ +easyblock = 'MakeCp' + +name = 'miniasm' +version = '0.3-20191007' +local_commit = 'ce615d1d6b8678d38f2f9d27c9dccd944436ae75' + +homepage = 'https://github.com/lh3/minimap2' +description = """Miniasm is a very fast OLC-based de novo assembler for noisy long reads. It +takes all-vs-all read self-mappings (typically by minimap) as input and outputs +an assembly graph in the GFA format. Different from mainstream assemblers, +miniasm does not have a consensus step. It simply concatenates pieces of read +sequences to generate the final unitig sequences. Thus the per-base error rate +is similar to the raw input reads.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +github_account = 'lh3' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['31d62309e8b802d3aebd492c1fed8d2a9197a3243c128345745dccb762457e3d'] + +builddependencies = [ + ('binutils', '2.36.1'), +] + +dependencies = [ + ('zlib', '1.2.11'), +] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}"' + +files_to_copy = [ + (['%(name)s', 'minidot'], 'bin'), + (['*.h'], 'include'), + (['LICENSE.txt', 'PAF.md', 'README.md'], 'share'), + (['%(name)s.1'], 'share/man/man1'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'bin/minidot'], + 'dirs': ['include', 'share'] +} + +sanity_check_commands = ["miniasm -V"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/miniasm/miniasm-0.3-20191007-GCCcore-11.2.0.eb b/easybuild/easyconfigs/m/miniasm/miniasm-0.3-20191007-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..03d8f7d2eac3 --- /dev/null +++ b/easybuild/easyconfigs/m/miniasm/miniasm-0.3-20191007-GCCcore-11.2.0.eb @@ -0,0 +1,46 @@ +easyblock = 'MakeCp' + +name = 'miniasm' +version = '0.3-20191007' +local_commit = 'ce615d1d6b8678d38f2f9d27c9dccd944436ae75' + +homepage = 'https://github.com/lh3/minimap2' +description = """Miniasm is a very fast OLC-based de novo assembler for noisy long reads. It +takes all-vs-all read self-mappings (typically by minimap) as input and outputs +an assembly graph in the GFA format. Different from mainstream assemblers, +miniasm does not have a consensus step. It simply concatenates pieces of read +sequences to generate the final unitig sequences. Thus the per-base error rate +is similar to the raw input reads.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +github_account = 'lh3' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['31d62309e8b802d3aebd492c1fed8d2a9197a3243c128345745dccb762457e3d'] + +builddependencies = [ + ('binutils', '2.37'), +] + +dependencies = [ + ('zlib', '1.2.11'), +] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}"' + +files_to_copy = [ + (['%(name)s', 'minidot'], 'bin'), + (['*.h'], 'include'), + (['LICENSE.txt', 'PAF.md', 'README.md'], 'share'), + (['%(name)s.1'], 'share/man/man1'), +] + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'bin/minidot'], + 'dirs': ['include', 'share'] +} + +sanity_check_commands = ["miniasm -V"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/minimap2/minimap2-2.17-GCCcore-9.3.0.eb b/easybuild/easyconfigs/m/minimap2/minimap2-2.17-GCCcore-9.3.0.eb index 99066113b93d..acf1c417a9b6 100644 --- a/easybuild/easyconfigs/m/minimap2/minimap2-2.17-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/m/minimap2/minimap2-2.17-GCCcore-9.3.0.eb @@ -26,6 +26,10 @@ checksums = ['b68ac8882d33cc63e9e3246775062aeb159b6990ff7f38099172c3fe6f8a2742'] builddependencies = [('binutils', '2.34')] +dependencies = [('zlib', '1.2.11')] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="${CPPFLAGS}"' + files_to_copy = [ (['%(name)s'], 'bin'), (['lib%(name)s.a'], 'lib'), diff --git a/easybuild/easyconfigs/m/minimap2/minimap2-2.18-GCCcore-10.2.0.eb b/easybuild/easyconfigs/m/minimap2/minimap2-2.18-GCCcore-10.2.0.eb index 9f7b208cc9f3..d159c3b3967a 100644 --- a/easybuild/easyconfigs/m/minimap2/minimap2-2.18-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/m/minimap2/minimap2-2.18-GCCcore-10.2.0.eb @@ -26,6 +26,10 @@ checksums = ['7a55101d58ecaec545db51079ad82b214632dc697ee67290b6dc34cc70dbeeb4'] builddependencies = [('binutils', '2.35')] +dependencies = [('zlib', '1.2.11')] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="${CPPFLAGS}"' + files_to_copy = [ (['%(name)s'], 'bin'), (['lib%(name)s.a'], 'lib'), diff --git a/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.2.0.eb b/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.2.0.eb index 5cff5bf900ca..8ba21e5c0fe7 100644 --- a/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.2.0.eb @@ -26,6 +26,10 @@ checksums = ['f9eff90a7f14f999df93dff6ed4e3428277edbbd6bda6bdb1800e8d57c9135e3'] builddependencies = [('binutils', '2.35')] +dependencies = [('zlib', '1.2.11')] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="${CPPFLAGS}"' + files_to_copy = [ (['%(name)s'], 'bin'), (['lib%(name)s.a'], 'lib'), diff --git a/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.3.0.eb b/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.3.0.eb index 5fc4e7155b58..03c1e61f9141 100644 --- a/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/m/minimap2/minimap2-2.20-GCCcore-10.3.0.eb @@ -28,6 +28,10 @@ checksums = ['f9eff90a7f14f999df93dff6ed4e3428277edbbd6bda6bdb1800e8d57c9135e3'] builddependencies = [('binutils', '2.36.1')] +dependencies = [('zlib', '1.2.11')] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="${CPPFLAGS}"' + files_to_copy = [ (['%(name)s'], 'bin'), (['lib%(name)s.a'], 'lib'), diff --git a/easybuild/easyconfigs/m/minimap2/minimap2-2.22-GCCcore-11.2.0.eb b/easybuild/easyconfigs/m/minimap2/minimap2-2.22-GCCcore-11.2.0.eb index 81593a1a6e67..3bc73a3ee388 100644 --- a/easybuild/easyconfigs/m/minimap2/minimap2-2.22-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/m/minimap2/minimap2-2.22-GCCcore-11.2.0.eb @@ -28,6 +28,10 @@ checksums = ['c96ecd0a0dbe61eb2da6a7ae06c9fc7249ee63d2ebf1909e07213cb6ec0a4633'] builddependencies = [('binutils', '2.37')] +dependencies = [('zlib', '1.2.11')] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="${CPPFLAGS}"' + files_to_copy = [ (['%(name)s'], 'bin'), (['lib%(name)s.a'], 'lib'), diff --git a/easybuild/easyconfigs/m/minimap2/minimap2-2.24-GCCcore-11.2.0.eb b/easybuild/easyconfigs/m/minimap2/minimap2-2.24-GCCcore-11.2.0.eb index aaec55b10146..fc4339d4b562 100644 --- a/easybuild/easyconfigs/m/minimap2/minimap2-2.24-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/m/minimap2/minimap2-2.24-GCCcore-11.2.0.eb @@ -28,6 +28,10 @@ checksums = ['9dd4c31ff082182948944bcdad6d328f64f09295d10547d72eba24189880a615'] builddependencies = [('binutils', '2.37')] +dependencies = [('zlib', '1.2.11')] + +buildopts = 'CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="${CPPFLAGS}"' + files_to_copy = [ (['%(name)s'], 'bin'), (['lib%(name)s.a'], 'lib'), diff --git a/easybuild/easyconfigs/m/molmod/molmod-1.4.8-foss-2021b.eb b/easybuild/easyconfigs/m/molmod/molmod-1.4.8-foss-2021b.eb new file mode 100644 index 000000000000..ee12c06558ea --- /dev/null +++ b/easybuild/easyconfigs/m/molmod/molmod-1.4.8-foss-2021b.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'molmod' +version = '1.4.8' + +homepage = 'https://molmod.github.io/molmod/' +description = "MolMod is a Python library with many compoments that are useful to write molecular modeling programs." + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/molmod/molmod/releases/download/%(version)s'] +sources = [SOURCE_TAR_GZ] +checksums = [ + '759f8894f8a206e8d83f3f88882f29fcf73a7f9be375026e03c58e19496f42e8', # molmod-1.4.8.tar.gz +] + +dependencies = [ + ('Python', '3.9.6'), + ('matplotlib', '3.4.3'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +runtest = "export MATPLOTLIBRC=$PWD; echo 'backend: agg' > $MATPLOTLIBRC/matplotlibrc;" +runtest += "python setup.py build_ext -i; pytest -ra" + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/muMerge/muMerge-1.1.0-foss-2022a.eb b/easybuild/easyconfigs/m/muMerge/muMerge-1.1.0-foss-2022a.eb new file mode 100644 index 000000000000..c94f9cb9fc20 --- /dev/null +++ b/easybuild/easyconfigs/m/muMerge/muMerge-1.1.0-foss-2022a.eb @@ -0,0 +1,41 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'PythonBundle' + +name = 'muMerge' +version = '1.1.0' + +homepage = 'https://github.com/Dowell-Lab/mumerge' +description = """muMerge is a tool for combining bed regions from multiple bed files that overlap.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('matplotlib', '3.5.2'), + ('SciPy-bundle', '2022.05'), + ('BEDTools', '2.30.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'source_urls': ['https://github.com/Dowell-Lab/mumerge/archive'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['f8afd360800567ddb4e7b602ed63ef30d22eb41d7bfbd1dc323295cdc8a98bf3'], + }), +] + +sanity_check_paths = { + 'files': ['bin/mumerge'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "mumerge --help", + "mumerge --version", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/NGSpeciesID/NGSpeciesID-0.1.2.1-foss-2021b.eb b/easybuild/easyconfigs/n/NGSpeciesID/NGSpeciesID-0.1.2.1-foss-2021b.eb new file mode 100644 index 000000000000..ded9e69beb63 --- /dev/null +++ b/easybuild/easyconfigs/n/NGSpeciesID/NGSpeciesID-0.1.2.1-foss-2021b.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonPackage' + +name = 'NGSpeciesID' +version = '0.1.2.1' + +homepage = 'https://github.com/ksahlin/NGSpeciesID' +description = "NGSpeciesID is a tool for clustering and consensus forming of targeted ONT reads." + +toolchain = {'name': 'foss', 'version': '2021b'} + +sources = [SOURCE_TAR_GZ] +checksums = ['e7c94b147ceff184ca964a7adbcc0540dac7303136ebc53033245f8e33bd7faa'] + +dependencies = [ + ('Python', '3.9.6'), + ('python-parasail', '1.2.4'), + ('edlib', '1.3.9'), + ('medaka', '1.6.0'), + ('spoa', '4.0.7'), + ('Racon', '1.5.0'), + ('minimap2', '2.22'), +] + +download_dep_fail = True +use_pip = True + +# no proper namespace for NGSpeciesID +options = {'modulename': 'modules.consensus'} + +sanity_check_paths = { + 'files': ['bin/NGSpeciesID'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["NGSpeciesID --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/n/nano/nano-6.4-GCCcore-11.3.0.eb b/easybuild/easyconfigs/n/nano/nano-6.4-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..9addd89ff5cc --- /dev/null +++ b/easybuild/easyconfigs/n/nano/nano-6.4-GCCcore-11.3.0.eb @@ -0,0 +1,30 @@ +# Contribution from IT4Innovations National Supercomputing Center, Czech Republic +# Jakub Kropacek, 2022 + +easyblock = 'ConfigureMake' + +name = 'nano' +version = '6.4' + +homepage = 'https://www.nano-editor.org/' +docurls = 'https://www.nano-editor.org/docs.php' +description = """a simple editor, inspired by Pico""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://www.nano-editor.org/dist/v%(version_major)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['85ebd9b4dba49839821d529bea16ac1acae0c9b9db2157531e40c9dffeb1b656'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [('ncurses', '6.3')] + +sanity_check_paths = { + 'files': ['bin/nano'], + 'dirs': ['bin', 'share'], +} + +sanity_check_commands = ['nano --version'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-5.9.eb b/easybuild/easyconfigs/n/ncurses/ncurses-5.9.eb index 71d76d1c6a49..8f2c950f72be 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-5.9.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-5.9.eb @@ -26,20 +26,31 @@ checksums = [ # need to use -P preprocessor option for recent GCC versions (cfr. https://gcc.gnu.org/gcc-5/porting_to.html) preconfigopts = "export CPPFLAGS='-P' && " +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " configopts = [ - # default build - '--with-shared --enable-overwrite', - # the UTF-8 enabled version (ncursesw) - '--with-shared --enable-overwrite --enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/' + # build ncurses: serial build in default paths with shared libraries + local_common_configopts, + # build ncursesw: serial with UTF-8 + local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] -local_libs = ["form", "menu", "ncurses", "panel"] +# need to take care of $CFLAGS ourselves with dummy toolchain +# we need to add -fPIC, but should also include -O* option to avoid compiling with -O0 (default for GCC) +buildopts = 'CFLAGS="-O2 -fPIC"' + +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] + sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses5-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.so' % (x, y) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.0.eb index f17cb5fb125d..6c66d5c6938c 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.0.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.0.eb @@ -18,11 +18,11 @@ checksums = [ 'f82003be6ce6b87c3dc8a91d97785aab1a76a9e8544c3a3c02283c01dd41aede', # ncurses-6.0_gcc-5.patch ] -local_common_configopts = "--with-shared --enable-overwrite --without-ada " +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks --with-versioned-syms " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] @@ -30,19 +30,19 @@ configopts = [ # we need to add -fPIC, but should also include -O* option to avoid compiling with -O0 (default for GCC) buildopts = 'CFLAGS="-O2 -fPIC"' -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.1.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.1.eb index 9e75f70cd1dd..244ea3bdd800 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.1.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.1.eb @@ -14,11 +14,11 @@ source_urls = [GNU_SOURCE] sources = [SOURCE_TAR_GZ] checksums = ['aa057eeeb4a14d470101eff4597d5833dcef5965331be3528c08d99cebaa0d17'] -local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks --with-versioned-syms " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] @@ -26,19 +26,19 @@ configopts = [ # we need to add -fPIC, but should also include -O* option to avoid compiling with -O0 (default for GCC) buildopts = 'CFLAGS="-O2 -fPIC"' -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.2.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.2.0.eb index 5044d91b4c50..d0f898003152 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.2.0.eb @@ -22,25 +22,25 @@ builddependencies = [('binutils', '2.35')] local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.3.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.3.0.eb index 07bfbcd9e144..da6d4c2d78d3 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.3.0.eb @@ -22,25 +22,25 @@ builddependencies = [('binutils', '2.36.1')] local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-11.2.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-11.2.0.eb index 61c14fe5a046..15191562f91b 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-11.2.0.eb @@ -22,25 +22,25 @@ builddependencies = [('binutils', '2.37')] local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-9.3.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-9.3.0.eb index 18dcd5668cfc..a5329b525e9e 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-9.3.0.eb @@ -22,25 +22,25 @@ builddependencies = [('binutils', '2.34')] local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.2.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.2.eb index 5df1d2c10387..26cb42a20bfc 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.2.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.2.eb @@ -14,11 +14,11 @@ source_urls = [GNU_SOURCE] sources = [SOURCE_TAR_GZ] checksums = ['30306e0c76e0f9f1f0de987cf1c82a5c21e1ce6568b9227f7da5b71cbea86c9d'] -local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks --with-versioned-syms " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] @@ -26,19 +26,19 @@ configopts = [ # we need to add -fPIC, but should also include -O* option to avoid compiling with -O0 (default for GCC) buildopts = 'CFLAGS="-O2 -fPIC"' -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.3-GCCcore-11.3.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.3-GCCcore-11.3.0.eb index f59b0aedd9a3..26666e64a973 100644 --- a/easybuild/easyconfigs/n/ncurses/ncurses-6.3-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.3-GCCcore-11.3.0.eb @@ -22,25 +22,25 @@ builddependencies = [('binutils', '2.38')] local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " configopts = [ - # default build + # build ncurses: serial build in default paths with shared libraries local_common_configopts, - # the UTF-8 enabled version (ncursesw) + # build ncursesw: serial with UTF-8 local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", ] -# Symlink libtinfo to libncurses (since it can handle the API) so it doesn't get picked up from the OS -postinstallcmds = [ - "(cd %(installdir)s/lib && ln -s libncurses.so libtinfo.so)", - "(cd %(installdir)s/lib && ln -s libncurses.a libtinfo.a)" -] +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] -local_libs = ["form", "menu", "ncurses", "panel"] sanity_check_paths = { 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", "reset", "tabs", "tic", "toe", "tput", "tset"]] + - ['lib/lib%s%s.a' % (x, y) for x in local_libs for y in ['', '_g', 'w', 'w_g']] + - ['lib/lib%s%s.%s' % (x, y, SHLIB_EXT) for x in local_libs for y in ['', 'w']] + - ['lib/libncurses++%s.a' % x for x in ['', 'w']], + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], 'dirs': ['include', 'include/ncursesw'], } diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.3-GCCcore-12.1.0.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.3-GCCcore-12.1.0.eb new file mode 100644 index 000000000000..843c52c75d9e --- /dev/null +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.3-GCCcore-12.1.0.eb @@ -0,0 +1,47 @@ +easyblock = 'ConfigureMake' + +name = 'ncurses' +version = '6.3' + +homepage = 'https://www.gnu.org/software/ncurses/' +description = """ + The Ncurses (new curses) library is a free software emulation of curses in + System V Release 4.0, and more. It uses Terminfo format, supports pads and + color and multiple highlights and forms characters and function-key mapping, + and has all the other SYSV-curses enhancements over BSD Curses. +""" + +toolchain = {'name': 'GCCcore', 'version': '12.1.0'} +toolchainopts = {'pic': True} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['97fc51ac2b085d4cde31ef4d2c3122c21abc217e9090a43a30fc5ec21684e059'] + +builddependencies = [('binutils', '2.38')] + +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " +configopts = [ + # build ncurses: serial build in default paths with shared libraries + local_common_configopts, + # build ncursesw: serial with UTF-8 + local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", +] + +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", + "reset", "tabs", "tic", "toe", "tput", "tset"]] + + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], + 'dirs': ['include', 'include/ncursesw'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/n/ncurses/ncurses-6.3.eb b/easybuild/easyconfigs/n/ncurses/ncurses-6.3.eb new file mode 100644 index 000000000000..3d144c5ab1ac --- /dev/null +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.3.eb @@ -0,0 +1,48 @@ +easyblock = 'ConfigureMake' + +name = 'ncurses' +version = '6.3' + +homepage = 'https://www.gnu.org/software/ncurses/' +description = """ + The Ncurses (new curses) library is a free software emulation of curses in + System V Release 4.0, and more. It uses Terminfo format, supports pads and + color and multiple highlights and forms characters and function-key mapping, + and has all the other SYSV-curses enhancements over BSD Curses. +""" + +toolchain = SYSTEM + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['97fc51ac2b085d4cde31ef4d2c3122c21abc217e9090a43a30fc5ec21684e059'] + +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks --with-versioned-syms " +configopts = [ + # build ncurses: serial build in default paths with shared libraries + local_common_configopts, + # build ncursesw: serial with UTF-8 + local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", +] + +# need to take care of $CFLAGS ourselves with dummy toolchain +# we need to add -fPIC, but should also include -O* option to avoid compiling with -O0 (default for GCC) +buildopts = 'CFLAGS="-O2 -fPIC"' + +# Symlink libtinfo to libncurses +# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically +postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done'] + +_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw +_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]] +_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config", + "reset", "tabs", "tic", "toe", "tput", "tset"]] + + ['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] + + ['lib/libncurses++%s.a' % x for x in _target_suffix], + 'dirs': ['include', 'include/ncursesw'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/n/ncview/ncview-2.1.8-gompi-2022a.eb b/easybuild/easyconfigs/n/ncview/ncview-2.1.8-gompi-2022a.eb new file mode 100644 index 000000000000..bebf2913247f --- /dev/null +++ b/easybuild/easyconfigs/n/ncview/ncview-2.1.8-gompi-2022a.eb @@ -0,0 +1,42 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +## +easyblock = 'ConfigureMake' + +name = 'ncview' +version = '2.1.8' + +homepage = 'http://meteora.ucsd.edu/~pierce/ncview_home_page.html' +description = """Ncview is a visual browser for netCDF format files. +Typically you would use ncview to get a quick and easy, push-button +look at your netCDF files. You can view simple movies of the data, +view along various dimensions, take a look at the actual data values, +change color maps, invert the data, etc.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['ftp://cirrus.ucsd.edu/pub/ncview/'] +sources = [SOURCE_TAR_GZ] +checksums = ['e8badc507b9b774801288d1c2d59eb79ab31b004df4858d0674ed0d87dfc91be'] + +# specified compiler is hard checked against (full path to) compiler used for netCDF... +preconfigopts = "CC=$(nc-config --cc) " +configopts = "--with-udunits2_incdir=$EBROOTUDUNITS/include --with-udunits2_libdir=$EBROOTUDUNITS/lib " +configopts += "--with-nc-config=$EBROOTNETCDF/bin/nc-config" + +dependencies = [ + ('netCDF', '4.9.0'), + ('netCDF-Fortran', '4.6.0'), + ('UDUNITS', '2.2.28'), + ('X11', '20220504'), + ('libpng', '1.6.37'), + ('zlib', '1.2.12'), +] + +sanity_check_paths = { + 'files': ['bin/ncview'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb b/easybuild/easyconfigs/n/netCDF-C++4/netCDF-C++4-4.3.1-gompi-2022a.eb new file mode 100644 index 000000000000..50ed6850d0a4 --- /dev/null +++ b/easybuild/easyconfigs/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/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.6.0-gompi-2022a.eb b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.6.0-gompi-2022a.eb new file mode 100644 index 000000000000..062e4b796af4 --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.6.0-gompi-2022a.eb @@ -0,0 +1,28 @@ +name = 'netCDF-Fortran' +version = '4.6.0' + +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, 'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf-fortran/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['8194aa70e400c0adfc456127c1d97af2c6489207171d13b10cd754a16da8b0ca'] + +builddependencies = [ + ('M4', '1.4.19'), +] + +dependencies = [ + ('netCDF', '4.9.0'), + ('bzip2', '1.0.8'), +] + +# (too) parallel build fails, but single-core build is fairly quick anyway (~1min) +parallel = 1 + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netCDF/netCDF-4.9.0-gompi-2022a.eb b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.0-gompi-2022a.eb index feefb6d13a71..f79aa51ab54b 100644 --- a/easybuild/easyconfigs/n/netCDF/netCDF-4.9.0-gompi-2022a.eb +++ b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.0-gompi-2022a.eb @@ -14,11 +14,13 @@ sources = ['v%(version)s.tar.gz'] patches = [ 'netCDF-%(version)s_fix-lib-name.patch', 'netCDF-%(version)s_fix-linking-errors.patch', + 'netCDF-%(version)s_skip-nasa-test.patch', ] checksums = [ '9f4cb864f3ab54adb75409984c6202323d2fc66c003e5308f3cdf224ed41c0a6', # v4.9.0.tar.gz 'ed45ae6c49cf8dcddaadef4c5cf403049bf3f761187413d7b03754d319345d6a', # netCDF-4.9.0_fix-lib-name.patch '2b9579c149579d137eb16ae5d790787774033dcec49c0d4993d9859f224e7b15', # netCDF-4.9.0_fix-linking-errors.patch + '19d99e03c048b037dc01f03f5b8ddc910ebaceb076d0f050540d348f26dfcd2a', # netCDF-4.9.0_skip-nasa-test.patch ] builddependencies = [ @@ -28,16 +30,17 @@ builddependencies = [ ] dependencies = [ - ('HDF5', '1.13.1'), + ('HDF5', '1.12.2'), ('cURL', '7.83.0'), ('Szip', '2.1.1'), ('zstd', '1.5.2'), ] # make sure both static and shared libs are built +# and disable "remote" tests that access a unreliable external test server over internet configopts = [ - "-DBUILD_SHARED_LIBS=OFF", - "-DBUILD_SHARED_LIBS=ON", + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=OFF", + "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=ON", ] # some tests try to start 16 MPI ranks, so we need to allow oversubscription to avoid failing tests diff --git a/easybuild/easyconfigs/n/netCDF/netCDF-4.9.0_skip-nasa-test.patch b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.0_skip-nasa-test.patch new file mode 100644 index 000000000000..61bf1ffda4ad --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF/netCDF-4.9.0_skip-nasa-test.patch @@ -0,0 +1,17 @@ +The NASA performance test is skipped becuase it is very sentitive to what filesystem is used, causing timeouts. +Author: micketeer@gmail.com +--- nc_test4/run_par_test.sh.in.orig 2022-08-17 11:14:21.827283219 +0200 ++++ nc_test4/run_par_test.sh.in 2022-08-17 11:12:49.547459608 +0200 +@@ -37,9 +37,9 @@ + echo "Testing collective writes with some 0 element writes..." + @MPIEXEC@ -n 4 ./tst_parallel5 + +-echo +-echo "Parallel Performance Test for NASA" +-@MPIEXEC@ -n 4 ./tst_nc4perf ++#echo ++#echo "Parallel Performance Test for NASA" ++#@MPIEXEC@ -n 4 ./tst_nc4perf + + echo + echo "Parallel I/O test for Collective I/O, contributed by HDF Group." diff --git a/easybuild/easyconfigs/n/nghttp3/nghttp3-0.6.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/n/nghttp3/nghttp3-0.6.0-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..3916daaba5e0 --- /dev/null +++ b/easybuild/easyconfigs/n/nghttp3/nghttp3-0.6.0-GCCcore-11.2.0.eb @@ -0,0 +1,38 @@ +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'CMakeMake' + +name = 'nghttp3' +version = '0.6.0' + +homepage = 'https://github.com/ngtcp2/nghttp3' +description = """ nghttp3 is an implementation of RFC 9114 HTTP/3 +mapping over QUIC and RFC 9204 QPACK in C. +It does not depend on any particular QUIC transport implementation.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchainopts = {'pic': True} + +github_account = 'ngtcp2' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] + +checksums = [ + '3cd5fa107541a2dd11b87a84f251a98fae4c7b67df9d78be7343e4adce540b7f', # v0.6.0.tar.gz +] + +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.22.1'), + ('pkg-config', '0.29.2'), + ('CUnit', '2.1-3'), +] + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libnghttp3.a', 'lib/libnghttp3.%s' % SHLIB_EXT], + 'dirs': ['include/nghttp3'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-5.9-gompi-2021b-CUDA-11.4.1.eb b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-5.9-gompi-2021b-CUDA-11.4.1.eb new file mode 100755 index 000000000000..65c303f62cb6 --- /dev/null +++ b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-5.9-gompi-2021b-CUDA-11.4.1.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'OSU-Micro-Benchmarks' +version = '5.9' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://mvapich.cse.ohio-state.edu/benchmarks/' +description = """OSU Micro-Benchmarks""" + +toolchain = {'name': 'gompi', 'version': '2021b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://mvapich.cse.ohio-state.edu/download/mvapich/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d619740a1c2cc7c02a9763931546b320d0fa4093c415ff3873c2958e121c0609'] + +dependencies = [ + ('CUDA', '11.4.1', '', True), + ('NCCL', '2.10.3', versionsuffix), + ('UCX-CUDA', '1.11.2', versionsuffix), +] + +configopts = ' --enable-cuda --with-cuda=$EBROOTCUDA --enable-ncclomb --with-nccl=$EBROOTNCCL' + +local_benchmark_dirs = [ + 'libexec/osu-micro-benchmarks/mpi/%s' % x for x in ['collective', 'one-sided', 'pt2pt', 'startup'] +] + [ + 'libexec/osu-micro-benchmarks/nccl/%s' % x for x in ['collective', 'pt2pt'] +] +modextrapaths = {'PATH': local_benchmark_dirs} + +sanity_check_paths = { + 'files': [], + 'dirs': local_benchmark_dirs, +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-5.9-gompi-2022a-CUDA-11.7.0.eb b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-5.9-gompi-2022a-CUDA-11.7.0.eb new file mode 100755 index 000000000000..f081748a1b9c --- /dev/null +++ b/easybuild/easyconfigs/o/OSU-Micro-Benchmarks/OSU-Micro-Benchmarks-5.9-gompi-2022a-CUDA-11.7.0.eb @@ -0,0 +1,38 @@ +easyblock = 'ConfigureMake' + +name = 'OSU-Micro-Benchmarks' +version = '5.9' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://mvapich.cse.ohio-state.edu/benchmarks/' +description = """OSU Micro-Benchmarks""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://mvapich.cse.ohio-state.edu/download/mvapich/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d619740a1c2cc7c02a9763931546b320d0fa4093c415ff3873c2958e121c0609'] + +dependencies = [ + ('CUDA', '11.7.0', '', True), + ('NCCL', '2.12.12', versionsuffix), + ('UCX-CUDA', '1.12.1', versionsuffix), + ('UCC-CUDA', '1.0.0', versionsuffix), +] + +configopts = ' --enable-cuda --with-cuda=$EBROOTCUDA --enable-ncclomb --with-nccl=$EBROOTNCCL' + +local_benchmark_dirs = [ + 'libexec/osu-micro-benchmarks/mpi/%s' % x for x in ['collective', 'one-sided', 'pt2pt', 'startup'] +] + [ + 'libexec/osu-micro-benchmarks/nccl/%s' % x for x in ['collective', 'pt2pt'] +] +modextrapaths = {'PATH': local_benchmark_dirs} + +sanity_check_paths = { + 'files': [], + 'dirs': local_benchmark_dirs, +} + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OTF2/OTF2-3.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/o/OTF2/OTF2-3.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..6e982449e9ef --- /dev/null +++ b/easybuild/easyconfigs/o/OTF2/OTF2-3.0-GCCcore-11.3.0.eb @@ -0,0 +1,50 @@ +# # +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany +# Authors:: Bernd Mohr +# Markus Geimer +# License:: 3-clause BSD +# +# This work is based on experiences from the UNITE project +# http://apps.fz-juelich.de/unite/ +# # + +easyblock = 'EB_Score_minus_P' + +name = 'OTF2' +version = '3.0' + +homepage = 'https://www.score-p.org' +description = """ + The Open Trace Format 2 is a highly scalable, memory efficient event trace + data format plus support library. It is the new standard trace format for + Scalasca, Vampir, and TAU and is open for other tools. + +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['http://perftools.pages.jsc.fz-juelich.de/cicd/%(namelower)s/tags/%(namelower)s-%(version)s'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6fff0728761556e805b140fd464402ced394a3c622ededdb618025e6cdaa6d8c'] + +builddependencies = [ + ('binutils', '2.38'), +] +dependencies = [ + # SIONlib container support (optional): + ('SIONlib', '1.7.7', '-tools'), +] + +configopts = '--enable-shared' + + +sanity_check_paths = { + 'files': ['bin/otf2-config', 'include/otf2/otf2.h', + 'lib/libotf2.a', 'lib/libotf2.%s' % SHLIB_EXT], + 'dirs': [], +} + +sanity_check_commands = ['%(namelower)s-config --help'] + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.15-GCC-10.3.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.15-GCC-10.3.0.eb index ef8207f88873..6f209915e173 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.15-GCC-10.3.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.15-GCC-10.3.0.eb @@ -17,6 +17,7 @@ patches = [ ('timing.tgz', '.'), 'OpenBLAS-%(version)s_icelake-detection.patch', 'OpenBLAS-%(version)s_fix-aarch64.patch', + 'OpenBLAS-%(version)s_workaround-gcc-miscompilation.patch', ] checksums = [ '30a99dec977594b387a17f49904523e6bc8dd88bd247266e83485803759e4bbe', # v0.3.15.tar.gz @@ -24,6 +25,8 @@ checksums = [ '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af', # timing.tgz '9cc47898ba4ad090011dbb0b29e597a13eeebd49a52d4dc94e975743072724b7', # OpenBLAS-0.3.15_icelake-detection.patch 'ba7bd45af9fe0516f8c9b1cf047eec7b833996e481bc925d4fb2563865d3db38', # OpenBLAS-0.3.15_fix-aarch64.patch + # OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971', ] # extensive testing can be enabled by uncommenting the line below diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch new file mode 100644 index 000000000000..5e6b25003c3a --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch @@ -0,0 +1,17 @@ +Workaround optimizer bug in GCC on POWER9. +See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100799 + +Author: Alexander Grund (TU Dresden) + +diff --git a/Makefile.power b/Makefile.power +index 946f5523..96b14dca 100644 +--- a/Makefile.power ++++ b/Makefile.power +@@ -35,6 +35,7 @@ endif + ifneq ($(F_COMPILER), PGI) + FCOMMON_OPT += -O2 -frecursive -fno-fast-math + ifeq ($(C_COMPILER), GCC) ++FCOMMON_OPT += -fstack-protector-strong + ifneq ($(GCCVERSIONGT4), 1) + $(warning your compiler is too old to fully support POWER9, getting a newer version of gcc is recommended) + FCOMMON_OPT += -mcpu=power8 -mtune=power8 diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-10.3.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-10.3.0.eb index 6feee08faf61..ae8fd51485ed 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-10.3.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-10.3.0.eb @@ -15,11 +15,14 @@ sources = ['v%(version)s.tar.gz'] patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), + 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', ] checksums = [ 'df2934fa33d04fd84d839ca698280df55c690c86a5a1133b3f7266fce1de279f', # v0.3.17.tar.gz 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1', # large.tgz '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af', # timing.tgz + # OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971', ] # extensive testing can be enabled by uncommenting the line below diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-11.2.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-11.2.0.eb index b59a24cece28..35e4b615bf85 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.17-GCC-11.2.0.eb @@ -15,6 +15,7 @@ sources = ['v%(version)s.tar.gz'] patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), + 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', 'OpenBLAS-%(version)s_workaround-gcc11-miscompiling-C-ZBLAS3-tests.patch', 'OpenBLAS-%(version)s_fix-segfault-ztrsv.patch', ] @@ -22,6 +23,8 @@ checksums = [ 'df2934fa33d04fd84d839ca698280df55c690c86a5a1133b3f7266fce1de279f', # v0.3.17.tar.gz 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1', # large.tgz '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af', # timing.tgz + # OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971', # OpenBLAS-0.3.17_workaround-gcc11-miscompiling-C-ZBLAS3-tests.patch 'ea76320bc047eff1bf2a2f50c1c19acb4fd6d2b8a5bf81a4dce73145a2a5cfcb', 'b1f89d90cc46b486534069135854e6081994b5a1a88370d32dae982e0f040111', # OpenBLAS-0.3.17_fix-segfault-ztrsv.patch diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.18-GCC-11.2.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.18-GCC-11.2.0.eb index a1b6049921be..18fdbab68f82 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.18-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.18-GCC-11.2.0.eb @@ -15,12 +15,15 @@ sources = ['v%(version)s.tar.gz'] patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), + 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', 'OpenBLAS-0.3.17_fix-segfault-ztrsv.patch', ] checksums = [ '1632c1e8cca62d8bed064b37747e331a1796fc46f688626337362bf0d16aeadb', # v0.3.18.tar.gz 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1', # large.tgz '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af', # timing.tgz + # OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971', 'b1f89d90cc46b486534069135854e6081994b5a1a88370d32dae982e0f040111', # OpenBLAS-0.3.17_fix-segfault-ztrsv.patch ] diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb index 938962705a6f..a6bed05840b1 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.2.0.eb @@ -15,11 +15,14 @@ sources = ['v%(version)s.tar.gz'] patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), + 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', ] checksums = [ '8495c9affc536253648e942908e88e097f2ec7753ede55aca52e5dead3029e3c', # v0.3.20.tar.gz 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1', # large.tgz '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af', # timing.tgz + # OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971', ] # extensive testing can be enabled by uncommenting the line below diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb index f941cf9f1d4e..72e27286e561 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.20-GCC-11.3.0.eb @@ -15,11 +15,14 @@ sources = ['v%(version)s.tar.gz'] patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), + 'OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch', ] checksums = [ '8495c9affc536253648e942908e88e097f2ec7753ede55aca52e5dead3029e3c', # v0.3.20.tar.gz 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1', # large.tgz '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af', # timing.tgz + # OpenBLAS-0.3.15_workaround-gcc-miscompilation.patch + 'e6b326fb8c4a8a6fd07741d9983c37a72c55c9ff9a4f74a80e1352ce5f975971', ] # extensive testing can be enabled by uncommenting the line below diff --git a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2019b-Python-3.7.4.eb index 9c98a3c4d19a..6d9117496146 100644 --- a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2019b-Python-3.7.4.eb @@ -19,11 +19,14 @@ sources = ['%%(namelower)s-%s.tar.gz' % version.replace('.', '-')] patches = [ # Fix test failure with Python 3 # Ref: https://github.com/openbabel/openbabel/commit/7de27f309db5f7ec026ef5c5235e5b33bf7d1a85.patch - 'OpenBabel-3.1.1_fix-distgeom-test.patch' + 'OpenBabel-3.1.1_fix-distgeom-test.patch', + 'OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch', ] checksums = [ 'c97023ac6300d26176c97d4ef39957f06e68848d64f1a04b0b284ccff2744f02', # openbabel-3-1-1.tar.gz '8d7687eb49142bb5ba2997cf90805b42480f313515c44b3912a9f826aaf4fbcd', # OpenBabel-3.1.1_fix-distgeom-test.patch + # OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch + 'cc0396b38a78ef70c869cd93887210c64d6f4293c016aec9269b5a0230fdb51c', ] builddependencies = [ @@ -37,7 +40,9 @@ dependencies = [ ('Eigen', '3.3.7', '', True), ('RapidJSON', '1.1.0'), ('cairo', '1.16.0'), # optional: for .png output - ('Boost', '1.71.0'), # optional: for Maestro formats + ('Boost', '1.71.0'), + ('maeparser', '1.3.0'), + ('CoordgenLibs', '3.0.1'), ] configopts = '-DBoost_INCLUDE_DIR=$EBROOTBOOST/include -DBoost_LIBRARY_DIR_RELEASE=$EBROOTBOOST/lib ' diff --git a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2021a.eb b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2021a.eb index e76ffb84b870..82569f0e47d3 100644 --- a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2021a.eb +++ b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2021a.eb @@ -18,11 +18,14 @@ sources = ['%%(namelower)s-%s.tar.gz' % version.replace('.', '-')] patches = [ # Fix test failure with Python 3 # Ref: https://github.com/openbabel/openbabel/commit/7de27f309db5f7ec026ef5c5235e5b33bf7d1a85.patch - 'OpenBabel-3.1.1_fix-distgeom-test.patch' + 'OpenBabel-3.1.1_fix-distgeom-test.patch', + 'OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch', ] checksums = [ 'c97023ac6300d26176c97d4ef39957f06e68848d64f1a04b0b284ccff2744f02', # openbabel-3-1-1.tar.gz '8d7687eb49142bb5ba2997cf90805b42480f313515c44b3912a9f826aaf4fbcd', # OpenBabel-3.1.1_fix-distgeom-test.patch + # OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch + 'cc0396b38a78ef70c869cd93887210c64d6f4293c016aec9269b5a0230fdb51c', ] builddependencies = [ @@ -36,7 +39,9 @@ dependencies = [ ('Eigen', '3.3.9'), ('RapidJSON', '1.1.0'), ('cairo', '1.16.0'), # optional: for .png output - ('Boost', '1.76.0'), # optional: for Maestro formats + ('Boost', '1.76.0'), + ('maeparser', '1.3.0'), + ('CoordgenLibs', '3.0.1'), ] configopts = '-DBoost_INCLUDE_DIR=$EBROOTBOOST/include -DBoost_LIBRARY_DIR_RELEASE=$EBROOTBOOST/lib ' diff --git a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb new file mode 100644 index 000000000000..76ae741aa83f --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb @@ -0,0 +1,61 @@ +name = 'OpenBabel' +version = '3.1.1' + +homepage = 'https://openbabel.org' +description = """Open Babel is a chemical toolbox designed to speak the many + languages of chemical data. It's an open, collaborative project allowing anyone + to search, convert, analyze, or store data from molecular modeling, chemistry, + solid-state materials, biochemistry, or related areas.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +# avoid failing tests on skylake and broadwell CPUs. +# remove option 'optarch' when building on CPUs that don't support AVX2 +# see also: https://github.com/openbabel/openbabel/issues/2138 +toolchainopts = {'pic': True, 'optarch': 'mavx2'} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%%(namelower)s-%s.tar.gz' % version.replace('.', '-')] +patches = [ + # Fix test failure with Python 3 + # Ref: https://github.com/openbabel/openbabel/commit/7de27f309db5f7ec026ef5c5235e5b33bf7d1a85.patch + 'OpenBabel-3.1.1_fix-distgeom-test.patch', + 'OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch', +] +checksums = [ + 'c97023ac6300d26176c97d4ef39957f06e68848d64f1a04b0b284ccff2744f02', # openbabel-3-1-1.tar.gz + '8d7687eb49142bb5ba2997cf90805b42480f313515c44b3912a9f826aaf4fbcd', # OpenBabel-3.1.1_fix-distgeom-test.patch + # OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch + 'cc0396b38a78ef70c869cd93887210c64d6f4293c016aec9269b5a0230fdb51c', +] + +builddependencies = [ + ('CMake', '3.23.1'), + ('SWIG', '4.0.2'), +] +dependencies = [ + ('Python', '3.10.4'), + ('zlib', '1.2.12'), + ('libxml2', '2.9.13'), + ('Eigen', '3.4.0'), + ('RapidJSON', '1.1.0'), + ('cairo', '1.17.4'), # optional: for .png output + ('Boost', '1.79.0'), + ('maeparser', '1.3.0'), + ('CoordgenLibs', '3.0.1'), +] + +configopts = '-DBoost_INCLUDE_DIR=$EBROOTBOOST/include -DBoost_LIBRARY_DIR_RELEASE=$EBROOTBOOST/lib ' +# Enable support for OpenMP compilation of forcefield code (optional) +configopts += '-DENABLE_OPENMP=ON ' + +# OpenBabel-3.1.1 creates directories named 3.1.0, which leads to BABEL_LIBDIR and BABEL_DATDIR +# (set in the easyblock) having invalid values. Work around this with some symlinks. +postinstallcmds = [ + 'ln -s %(installdir)s/lib/openbabel/3.1.0 %(installdir)s/lib/openbabel/%(version)s', + 'ln -s %(installdir)s/share/openbabel/3.1.0 %(installdir)s/share/openbabel/%(version)s', +] + +pretestopts = 'cp lib/_openbabel.%s %%(builddir)s/openbabel-*/scripts/python/openbabel/ && ' % SHLIB_EXT +runtest = 'test' + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-iimpi-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-iimpi-2020a-Python-3.8.2.eb new file mode 100644 index 000000000000..7dbebd3a06a4 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1-iimpi-2020a-Python-3.8.2.eb @@ -0,0 +1,61 @@ +name = 'OpenBabel' +version = '3.1.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://openbabel.org' +description = """Open Babel is a chemical toolbox designed to speak the many + languages of chemical data. It's an open, collaborative project allowing anyone + to search, convert, analyze, or store data from molecular modeling, chemistry, + solid-state materials, biochemistry, or related areas.""" + +toolchain = {'name': 'iimpi', 'version': '2020a'} +toolchainopts = {'pic': True} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%%(namelower)s-%s.tar.gz' % version.replace('.', '-')] +patches = [ + # Fix test failure with Python 3 + # Ref: https://github.com/openbabel/openbabel/commit/7de27f309db5f7ec026ef5c5235e5b33bf7d1a85.patch + 'OpenBabel-3.1.1_fix-distgeom-test.patch', + 'OpenBabel-3.1.1_fix-testobconv_writers.patch', + 'OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch', +] +checksums = [ + 'c97023ac6300d26176c97d4ef39957f06e68848d64f1a04b0b284ccff2744f02', # openbabel-3-1-1.tar.gz + '8d7687eb49142bb5ba2997cf90805b42480f313515c44b3912a9f826aaf4fbcd', # OpenBabel-3.1.1_fix-distgeom-test.patch + '6d0b153caadc53141e1578972d632afb82b2fc4abdec6c5f07552b45a20e980c', # OpenBabel-3.1.1_fix-testobconv_writers.patch + # OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch + 'cc0396b38a78ef70c869cd93887210c64d6f4293c016aec9269b5a0230fdb51c', +] + +builddependencies = [ + ('CMake', '3.16.4'), + ('SWIG', '4.0.1'), +] +dependencies = [ + ('Python', '3.8.2'), + ('zlib', '1.2.11'), + ('libxml2', '2.9.10'), + ('Eigen', '3.3.7', '', True), + ('RapidJSON', '1.1.0'), + ('cairo', '1.16.0'), # optional: for .png output + ('Boost', '1.72.0'), + ('maeparser', '1.3.0'), + ('CoordgenLibs', '3.0.1'), +] + +configopts = '-DBoost_INCLUDE_DIR=$EBROOTBOOST/include -DBoost_LIBRARY_DIR_RELEASE=$EBROOTBOOST/lib ' +# Enable support for OpenMP compilation of forcefield code (optional) +configopts += '-DENABLE_OPENMP=ON ' + +# OpenBabel-3.1.1 creates directories named 3.1.0, which leads to BABEL_LIBDIR and BABEL_DATDIR +# (set in the easyblock) having invalid values. Work around this with some symlinks. +postinstallcmds = [ + 'ln -s %(installdir)s/lib/openbabel/3.1.0 %(installdir)s/lib/openbabel/%(version)s', + 'ln -s %(installdir)s/share/openbabel/3.1.0 %(installdir)s/share/openbabel/%(version)s', +] + +pretestopts = 'cp lib/_openbabel.%s %%(builddir)s/openbabel-*/scripts/python/openbabel/ && ' % SHLIB_EXT +runtest = 'test' + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch new file mode 100644 index 000000000000..3180da7a0dc5 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch @@ -0,0 +1,49 @@ +see also https://github.com/openbabel/openbabel/pull/2297 + +From b6887a8a82162278983a8489e365e61a0372b1b8 Mon Sep 17 00:00:00 2001 +From: Benny Siegert +Date: Wed, 4 Nov 2020 20:31:17 +0100 +Subject: [PATCH] Do not search for coordgen template files. + +The coordgen upstream does not install the template file. It is +also not required at runtime, since its contents are compiled into +the coordgen library itself. + +Fixes #2214 +--- + cmake/modules/Findcoordgen.cmake | 13 +------------ + 1 file changed, 1 insertion(+), 12 deletions(-) + +diff --git a/cmake/modules/Findcoordgen.cmake b/cmake/modules/Findcoordgen.cmake +index ded0a4de7d..9bc5c9557f 100644 +--- a/cmake/modules/Findcoordgen.cmake ++++ b/cmake/modules/Findcoordgen.cmake +@@ -6,7 +6,6 @@ + # + # coordgen_INCLUDE_DIRS - CoordGen's includes directory + # coordgen_LIBRARIES - CoordGen's shared libraries +-# coordgen_TEMPLATE_FILE - CoordGen templates file + # + # + +@@ -28,19 +27,9 @@ find_library(coordgen_LIBRARIES + ) + message(STATUS "coordgen libraries set as '${coordgen_LIBRARIES}'") + +-# Just in case, add parent directory above libraries to templates search hints +-get_filename_component(libs_parent_dir ${coordgen_LIBRARIES} PATH) +-find_file(coordgen_TEMPLATE_FILE +- NAMES templates.mae +- HINTS ${coordgen_DIR} ${libs_parent_dir} +- PATH_SUFFIXES "share" "share/coordgen" +- DOC "templates file for coordgen" +-) +-message(STATUS "coordgen templates file set as '${coordgen_TEMPLATE_FILE}'") +- + find_package_handle_standard_args(coordgen FOUND_VAR coordgen_FOUND + REQUIRED_VARS coordgen_INCLUDE_DIRS +- coordgen_LIBRARIES coordgen_TEMPLATE_FILE) ++ coordgen_LIBRARIES) + + + diff --git a/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1_fix-testobconv_writers.patch b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1_fix-testobconv_writers.patch new file mode 100644 index 000000000000..967ae059019d --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBabel/OpenBabel-3.1.1_fix-testobconv_writers.patch @@ -0,0 +1,23 @@ +fix broken test by tweaking floating point value that is slightly off +see also https://github.com/openbabel/openbabel/issues/2246 +author: Kenneth Hoste (HPC-UGent) +--- openbabel-openbabel-3-1-1/test/testobconv_writers.py.orig 2022-01-12 20:12:01.480069896 +0100 ++++ openbabel-openbabel-3-1-1/test/testobconv_writers.py 2022-01-12 20:12:12.180174159 +0100 +@@ -2876,7 +2876,7 @@ + 2.4146659588503769, + 4.189331679349326, + 4.052466878708012, +- -1.4648575597102012 ++ -1.4648575597102014 + ], + "y": [ + 1.5846, +@@ -2891,7 +2891,7 @@ + 2.4146659588503769, + 4.189331679349326, + 4.052466878708012, +- -1.4648575597102012 ++ -1.4648575597102014 + ], + "style": { + "annotation": [ diff --git a/easybuild/easyconfigs/o/OpenFAST/OpenFAST-3.0.0-foss-2021b.eb b/easybuild/easyconfigs/o/OpenFAST/OpenFAST-3.0.0-foss-2021b.eb new file mode 100644 index 000000000000..2572502b8981 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFAST/OpenFAST-3.0.0-foss-2021b.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'OpenFAST' +version = '3.0.0' + +homepage = 'http://openfast.readthedocs.io/' + +description = """OpenFAST is a wind turbine simulation tool which builds on FAST v8. +FAST.Farm extends the capability of OpenFAST to simulate multi-turbine wind farms""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/OpenFAST/openfast/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['9af57af054e4128b6e257a76da368dc4ad0c7fbb2b22d51fc7ea63cdf999c530'] + +builddependencies = [ + ('CMake', '3.21.1'), +] + +configopts = '-DBUILD_FASTFARM=ON ' + +sanity_check_paths = { + 'files': ['bin/openfast', 'bin/FAST.Farm', + 'lib/libopenfastlib.a', 'lib/libopenfast_prelib.a', 'lib/libopenfast_postlib.a'], + 'dirs': ['include/openfast'], +} + +sanity_check_commands = ["openfast -h"] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2206-foss-2022a.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2206-foss-2022a.eb new file mode 100644 index 000000000000..4c58236cb3be --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-v2206-foss-2022a.eb @@ -0,0 +1,45 @@ +name = 'OpenFOAM' +version = 'v2206' + +homepage = 'https://www.openfoam.com/' +description = """OpenFOAM is a free, open source CFD software package. + OpenFOAM has an extensive range of features to solve anything from complex fluid flows + involving chemical reactions, turbulence and heat transfer, + to solid dynamics and electromagnetics.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +# Users have found that vectorizion caused OpenFOAM to produce some very incorrect results. +# Disabling vectorize was confirmed to fix the the known issues. +# With no test suite, sticking to known working toolchain options until proven otherwise. +toolchainopts = {'cstd': 'c++11', 'vectorize': False} + +source_urls = ['https://sourceforge.net/projects/openfoam/files/%(version)s/'] +sources = [SOURCE_TGZ] +patches = [ + ('OpenFOAM-v2012-cleanup.patch', 1), + 'OpenFOAM-v1906-wmake-ompi.patch', +] +checksums = [ + 'db95eda4afb97ca870733b2d4201ef539099d0778e3f3eca9a075d4f1a0eea46', # OpenFOAM-v2206.tgz + 'cdd2597a1ac1448e9bd33a364a8dfe17f51cc9ab5a8e0ab67cf92bba3ed9da43', # OpenFOAM-v2012-cleanup.patch + '518e27683c5c41400cfbc17b31effa50b31b25916dccbf85b18b0b955f642505', # OpenFOAM-v1906-wmake-ompi.patch +] + +builddependencies = [ + ('Bison', '3.8.2'), + ('CMake', '3.23.1'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('libreadline', '8.1.2'), + ('ncurses', '6.3'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '7.0.1'), + ('CGAL', '4.14.3'), + ('ParaView', '5.10.1', '-mpi'), + ('gnuplot', '5.4.4'), +] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/o/OpenFold/OpenFold-1.0.0-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/o/OpenFold/OpenFold-1.0.0-foss-2021a-CUDA-11.3.1.eb new file mode 100644 index 000000000000..f4797eae8eb9 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFold/OpenFold-1.0.0-foss-2021a-CUDA-11.3.1.eb @@ -0,0 +1,94 @@ +easyblock = 'PythonBundle' + +name = 'OpenFold' +version = '1.0.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/aqlaboratory/openfold' +description = "A faithful PyTorch reproduction of DeepMind's AlphaFold 2" + +toolchain = {'name': 'foss', 'version': '2021a'} + +builddependencies = [ + # CMake is required to build ninja Python package (included as extension) + ('CMake', '3.20.1'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('CUDA', '11.3.1', '', True), + ('SciPy-bundle', '2021.05'), + ('PyYAML', '5.4.1'), + ('Biopython', '1.79'), + ('HH-suite', '3.3.0'), + ('HMMER', '3.3.2'), + ('Kalign', '3.3.1'), + ('UCX-CUDA', '1.10.0', versionsuffix), + ('cuDNN', '8.2.1.32', versionsuffix, True), + ('NCCL', '2.10.3', versionsuffix), + ('dm-tree', '0.1.6'), + ('einops', '0.4.1'), + ('colossalai', '0.1.8', versionsuffix), + ('scikit-build', '0.11.1'), + # OpenFold also requires the AlphaFold modification to OpenMM + # https://github.com/aqlaboratory/openfold/blob/v1.0.0/scripts/install_third_party_dependencies.sh#L20-L24 + # https://github.com/aqlaboratory/openfold/blob/v1.0.0/lib/openmm.patch + ('OpenMM', '7.5.1', '-DeepMind-patch'), +] + +use_pip = True + +exts_list = [ + ('PDBFixer', '1.7', { + 'source_urls': ['https://github.com/openmm/pdbfixer/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['a0bef3c52a7bbe69a6aea5333f51f3e7d158339be5829aed19b0344bd66d4eea'], + }), + ('ninja', '1.10.2.3', { + 'checksums': ['e1b86ad50d4e681a7dbdff05fc23bb52cb773edb90bc428efba33fa027738408'], + }), + ('hjson', '3.0.2', { + 'checksums': ['2838fd7200e5839ea4516ece953f3a19892c41089f0d933ba3f68e596aacfcd5'], + }), + ('py-cpuinfo', '8.0.0', { + 'modulename': 'cpuinfo', + 'checksums': ['5f269be0e08e33fd959de96b34cd4aeeeacac014dd8305f70eb28d06de2345c5'], + }), + ('triton', version, { + 'source_tmpl': '%(name)s-%(version)s-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl', + 'checksums': ['37b8d0eb36ed7631a6f9d01bd3183f900ae7dbd9e5e40112468a3568505671dc'], + }), + ('deepspeed', '0.5.9', { + 'checksums': ['7c43d151b51d346a430034e77764097c4af7637217c08503291c48c37ae7d090'], + }), + ('contextlib2', '21.6.0', { + 'checksums': ['ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869'], + }), + ('ml_collections', '0.1.0', { + 'preinstallopts': "touch requirements.txt && touch requirements-test.txt && ", + 'checksums': ['59a17fcd1c140153009788517f304caaddd7a94f06690f9f0ed09987beebcf3c'], + }), + ('dllogger', version, { + 'source_urls': ['https://github.com/NVIDIA/dllogger/archive/refs/tags/'], + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'checksums': ['43e5e3c3acf891dfe6151f7d869f3ad2424772fe57fd8dcb0a45bad06de93bf7'], + }), + (name, version, { + 'source_urls': ['https://github.com/aqlaboratory/openfold/archive/refs/tags/'], + 'sources': ['v%(version)s.tar.gz'], + 'checksums': ['543cb0d36a6118a60de4b4ec2f4a49ebcc965523e5b31e9ad03425de367384a7'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pdbfixer'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "pdbfixer --help", +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-7.5.1-foss-2021a-DeepMind-patch.eb b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.5.1-foss-2021a-DeepMind-patch.eb new file mode 100644 index 000000000000..42a22798b5f1 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.5.1-foss-2021a-DeepMind-patch.eb @@ -0,0 +1,53 @@ +easyblock = 'CMakeMake' + +name = 'OpenMM' +version = '7.5.1' +versionsuffix = '-DeepMind-patch' + +homepage = 'https://openmm.org' +description = "OpenMM is a toolkit for molecular simulation." + +toolchain = {'name': 'foss', 'version': '2021a'} +toolchainopts = {'opt': True} + +source_urls = ['https://github.com/openmm/openmm/archive/'] +sources = ['%(version)s.tar.gz'] +patches = [('OpenMM-%(version)s_DeepMind.patch', 'wrappers/python')] +checksums = [ + 'c88d6946468a2bde2619acb834f57b859b5e114a93093cf562165612e10f4ff7', + '1b109dfff3af5c6aa70690bca14618612953c68840a7e64f679db7ca33c1aff6', +] + +builddependencies = [ + ('CMake', '3.20.1'), + ('Doxygen', '1.9.1'), +] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('SWIG', '4.0.2'), +] + +runtest = """test -e ARGS="-E \'(Integrator)|(Thermostat)|(Barostat)|(Rpmd)|(Amoeba)|(HippoNonbondedForce)\'" """ + +preinstallopts = ' export OPENMM_INCLUDE_PATH=%(installdir)s/include && ' +preinstallopts += ' export OPENMM_LIB_PATH=%(installdir)s/lib && ' + +# required to install the python API +installopts = ' && cd python && python setup.py build && python setup.py install --prefix=%(installdir)s' + +sanity_check_paths = { + 'files': ['lib/libOpenMM.%s' % SHLIB_EXT, 'lib/python%(pyshortver)s/site-packages/simtk/openmm/openmm.py'], + 'dirs': [] +} + +sanity_check_commands = ["python -m simtk.testInstallation"] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', + 'OPENMM_INCLUDE_PATH': 'include', + 'OPENMM_LIB_PATH': 'lib', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-7.5.1_DeepMind.patch b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.5.1_DeepMind.patch new file mode 100644 index 000000000000..878ffd11b031 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.5.1_DeepMind.patch @@ -0,0 +1,45 @@ +custom patch for OpenMM to use in conjunction with AlphaFold +see https://github.com/deepmind/alphafold/blob/main/docker/openmm.patch + +Index: simtk/openmm/app/topology.py +=================================================================== +--- simtk.orig/openmm/app/topology.py ++++ simtk/openmm/app/topology.py +@@ -356,19 +356,35 @@ + def isCyx(res): + names = [atom.name for atom in res._atoms] + return 'SG' in names and 'HG' not in names ++ # This function is used to prevent multiple di-sulfide bonds from being ++ # assigned to a given atom. This is a DeepMind modification. ++ def isDisulfideBonded(atom): ++ for b in self._bonds: ++ if (atom in b and b[0].name == 'SG' and ++ b[1].name == 'SG'): ++ return True ++ ++ return False + + cyx = [res for res in self.residues() if res.name == 'CYS' and isCyx(res)] + atomNames = [[atom.name for atom in res._atoms] for res in cyx] + for i in range(len(cyx)): + sg1 = cyx[i]._atoms[atomNames[i].index('SG')] + pos1 = positions[sg1.index] ++ candidate_distance, candidate_atom = 0.3*nanometers, None + for j in range(i): + sg2 = cyx[j]._atoms[atomNames[j].index('SG')] + pos2 = positions[sg2.index] + delta = [x-y for (x,y) in zip(pos1, pos2)] + distance = sqrt(delta[0]*delta[0] + delta[1]*delta[1] + delta[2]*delta[2]) +- if distance < 0.3*nanometers: +- self.addBond(sg1, sg2) ++ if distance < candidate_distance and not isDisulfideBonded(sg2): ++ candidate_distance = distance ++ candidate_atom = sg2 ++ # Assign bond to closest pair. ++ if candidate_atom: ++ self.addBond(sg1, candidate_atom) ++ ++ + + class Chain(object): + """A Chain object represents a chain within a Topology.""" diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.2-GCC-10.2.0.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.2-GCC-10.2.0.eb new file mode 100644 index 000000000000..5148de10aa74 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.2-GCC-10.2.0.eb @@ -0,0 +1,33 @@ +name = 'OpenMPI' +version = '4.1.2' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'GCC', 'version': '10.2.0'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['9b78c7cf7fc32131c5cf43dd2ab9740149d9d87cadb2e2189f02685749a6b527'] + +builddependencies = [ + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('hwloc', '2.2.0'), + ('libevent', '2.1.12'), + ('UCX', '1.9.0'), + ('libfabric', '1.11.0'), + ('PMIx', '3.1.5'), +] + + +# disable MPI1 compatibility for now, see what breaks... +# configopts = '--enable-mpi1-compatibility ' + +# to enable SLURM integration use e.g. --try-amend="configopts=--with-slurm" +# configopts = '--with-slurm --with-pmi=/usr --with-pmi-libdir=/usr/lib64' + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb index d01bc8b847fb..524393cf31b9 100644 --- a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb @@ -36,7 +36,19 @@ dependencies = [ ('UCC', '1.0.0'), ] -preconfigopts = './autogen.pl --force && ' +# Update configure to include changes from the "internal-cuda" patch +# by running a subset of autogen.pl sufficient to achieve this +# without doing the full, long-running regeneration. +preconfigopts = ' && '.join([ + 'cd config', + 'autom4te --language=m4sh opal_get_version.m4sh -o opal_get_version.sh', + 'cd ..', + 'autoconf', + 'autoheader', + 'aclocal', + 'automake', + '' +]) # CUDA related patches and custom configure option can be removed if CUDA support isn't wanted. configopts = '--with-cuda=internal ' diff --git a/easybuild/easyconfigs/o/olaFlow/olaFlow-20210820-foss-2021b.eb b/easybuild/easyconfigs/o/olaFlow/olaFlow-20210820-foss-2021b.eb new file mode 100644 index 000000000000..2fbd5fd82c12 --- /dev/null +++ b/easybuild/easyconfigs/o/olaFlow/olaFlow-20210820-foss-2021b.eb @@ -0,0 +1,36 @@ +easyblock = 'Binary' + +name = 'olaFlow' +version = '20210820' +local_commit = 'b3039e055a22ea0b8c7dc9f735f15686976559f6' + +homepage = 'https://olaflow.github.io/' +description = """olaFlow CFD Suite is a free and open source project committed to bringing the latest +advances for the simulation of wave dynamics to the OpenFOAM® and FOAM-extend communities.""" + +source_urls = ['https://github.com/phicau/olaFlow/archive/'] +sources = [{ + 'filename': '%(name)s-%(version)s.tar.gz', + 'download_filename': '%s.tar.gz' % local_commit, +}] +checksums = ['126777c2dc5e8fe563251ce9cc8438bd2e90771cc5a9ea2fc47bd4679502c08b'] + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('OpenFOAM', 'v2112') +] + +extract_sources = True + +install_cmd = "source $FOAM_BASH && export FOAM_USER_APPBIN=%(installdir)s/bin && " +install_cmd += "export FOAM_USER_LIBBIN=%(installdir)s/lib && ls && ./allMake" + +sanity_check_paths = { + 'files': ["bin/olaFlow", "lib/libwaveGeneration.%s" % SHLIB_EXT], + 'dirs': [] +} + +sanity_check_commands = ["source $FOAM_BASH && olaFlow -help"] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/o/ont-remora/ont-remora-1.0.0-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/o/ont-remora/ont-remora-1.0.0-foss-2021a-CUDA-11.3.1.eb new file mode 100644 index 000000000000..3336e2eb4a7e --- /dev/null +++ b/easybuild/easyconfigs/o/ont-remora/ont-remora-1.0.0-foss-2021a-CUDA-11.3.1.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonBundle' + +name = 'ont-remora' +version = '1.0.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/nanoporetech/remora' +description = """Methylation/modified base calling separated from basecalling. Remora primarily +provides an API to call modified bases for basecaller programs such as Bonito. +Remora also provides the tools to prepare datasets, train modified base models +and run simple inference.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +dependencies = [ + ('CUDA', '11.3.1', '', True), + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('ONNX-Runtime', '1.10.0', versionsuffix), + ('PyTorch', '1.10.0', versionsuffix), + ('scikit-learn', '0.24.2'), + ('tqdm', '4.61.2'), +] + +use_pip = True + +exts_list = [ + ('thop', '0.0.31-2005241907', { + 'source_tmpl': 'thop-0.0.31.post2005241907-py3-none-any.whl', + 'checksums': ['86d67af12311b34905949eb91c8c38f92a707de72140c29a94110cc623e21ceb'], + }), + (name, version, { + 'modulename': 'remora', + 'checksums': ['594c7f1d4cc757c0b1d42b1af5203903df10ea11cfc6af3288d60c3df8e37d4a'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/remora'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + ('remora', '--help'), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/ont-remora/ont-remora-1.0.0-foss-2021a.eb b/easybuild/easyconfigs/o/ont-remora/ont-remora-1.0.0-foss-2021a.eb new file mode 100644 index 000000000000..e135393f1f5c --- /dev/null +++ b/easybuild/easyconfigs/o/ont-remora/ont-remora-1.0.0-foss-2021a.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'ont-remora' +version = '1.0.0' + +homepage = 'https://github.com/nanoporetech/remora' +description = """Methylation/modified base calling separated from basecalling. Remora primarily +provides an API to call modified bases for basecaller programs such as Bonito. +Remora also provides the tools to prepare datasets, train modified base models +and run simple inference.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('ONNX-Runtime', '1.10.0'), + ('PyTorch', '1.10.0'), + ('scikit-learn', '0.24.2'), + ('tqdm', '4.61.2'), +] + +use_pip = True + +exts_list = [ + ('thop', '0.0.31-2005241907', { + 'source_tmpl': 'thop-0.0.31.post2005241907-py3-none-any.whl', + 'checksums': ['86d67af12311b34905949eb91c8c38f92a707de72140c29a94110cc623e21ceb'], + }), + (name, version, { + 'modulename': 'remora', + 'checksums': ['594c7f1d4cc757c0b1d42b1af5203903df10ea11cfc6af3288d60c3df8e37d4a'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/remora'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + ('remora', '--help'), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PCL/PCL-1.7.2-intel-2016a-Python-2.7.11.eb b/easybuild/easyconfigs/p/PCL/PCL-1.7.2-intel-2016a-Python-2.7.11.eb index 2aa079715804..e8c1686fe755 100644 --- a/easybuild/easyconfigs/p/PCL/PCL-1.7.2-intel-2016a-Python-2.7.11.eb +++ b/easybuild/easyconfigs/p/PCL/PCL-1.7.2-intel-2016a-Python-2.7.11.eb @@ -13,6 +13,7 @@ toolchainopts = {'pic': True} source_urls = ['https://github.com/PointCloudLibrary/pcl/archive/'] sources = [SOURCELOWER_TAR_GZ] +checksums = ['479f84f2c658a6319b78271111251b4c2d6cf07643421b66bbc351d9bed0ae93'] builddependencies = [('CMake', '3.5.2')] dependencies = [ @@ -23,8 +24,6 @@ dependencies = [ ('Qhull', '2015.2'), ] -configopts = '-DCMAKE_BUILD_TYPE=Release ' - sanity_check_paths = { 'files': [], 'dirs': ['bin', 'include/pcl-%(version_major_minor)s/pcl', 'lib', 'share/pcl-%(version_major_minor)s'], diff --git a/easybuild/easyconfigs/p/PCL/PCL-1.8.1-intel-2017b-Python-2.7.14.eb b/easybuild/easyconfigs/p/PCL/PCL-1.8.1-intel-2017b-Python-2.7.14.eb index 2455e433618f..47629d26e8ef 100644 --- a/easybuild/easyconfigs/p/PCL/PCL-1.8.1-intel-2017b-Python-2.7.14.eb +++ b/easybuild/easyconfigs/p/PCL/PCL-1.8.1-intel-2017b-Python-2.7.14.eb @@ -28,8 +28,6 @@ dependencies = [ ('Qhull', '2015.2'), ] -configopts = '-DCMAKE_BUILD_TYPE=Release ' - sanity_check_paths = { 'files': [], 'dirs': ['bin', 'include/pcl-%(version_major_minor)s/pcl', 'lib', 'share/pcl-%(version_major_minor)s'], diff --git a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.1.4-intel-2016a-Python-2.7.11.eb b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.1.4-intel-2016a-Python-2.7.11.eb index cc1a8741b219..f72915ceea09 100644 --- a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.1.4-intel-2016a-Python-2.7.11.eb +++ b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.1.4-intel-2016a-Python-2.7.11.eb @@ -10,8 +10,9 @@ description = """An API for the Polarizable Continuum Model.""" toolchain = {'name': 'intel', 'version': '2016a'} toolchainopts = {'cstd': 'c99'} -sources = ['v%(version)s.tar.gz'] source_urls = ['https://github.com/PCMSolver/pcmsolver/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e20d6e984cdb2795351714c2659c71d69fede9ebf159435fc7a0fdf897981ee9'] dependencies = [ ('Python', '2.7.11'), @@ -24,7 +25,7 @@ builddependencies = [ ('Eigen', '3.2.7'), ] -configopts = '-DCMAKE_BUILD_TYPE=Release -DEIGEN3_ROOT=$EBROOTEIGEN' +configopts = '-DEIGEN3_ROOT=$EBROOTEIGEN' configopts += ' -DCMAKE_CXX_FLAGS="$CXXFLAGS $LIBLAPACK_MT -DEIGEN_USE_MKL_ALL"' separate_build_dir = True diff --git a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-foss-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-foss-2018b-Python-3.6.6.eb index f8ba46b75252..017eaf7df0ba 100644 --- a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-foss-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-foss-2018b-Python-3.6.6.eb @@ -27,7 +27,7 @@ builddependencies = [ ('Eigen', '3.3.7', '', True), ] -configopts = '-DCMAKE_BUILD_TYPE=Release -DEIGEN3_ROOT=$EBROOTEIGEN' +configopts = '-DEIGEN3_ROOT=$EBROOTEIGEN' separate_build_dir = True diff --git a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-gompi-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-gompi-2019a-Python-3.7.2.eb index 0274eb699234..1483418bd8d0 100644 --- a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-gompi-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-1.2.3-gompi-2019a-Python-3.7.2.eb @@ -27,7 +27,7 @@ builddependencies = [ ('Eigen', '3.3.7', '', True), ] -configopts = '-DCMAKE_BUILD_TYPE=Release -DEIGEN3_ROOT=$EBROOTEIGEN' +configopts = '-DEIGEN3_ROOT=$EBROOTEIGEN' separate_build_dir = True diff --git a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-20160205-intel-2016a-Python-2.7.11.eb b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-20160205-intel-2016a-Python-2.7.11.eb index 36dc00869e57..61dd798a80e7 100644 --- a/easybuild/easyconfigs/p/PCMSolver/PCMSolver-20160205-intel-2016a-Python-2.7.11.eb +++ b/easybuild/easyconfigs/p/PCMSolver/PCMSolver-20160205-intel-2016a-Python-2.7.11.eb @@ -10,8 +10,9 @@ description = """An API for the Polarizable Continuum Model.""" toolchain = {'name': 'intel', 'version': '2016a'} toolchainopts = {'cstd': 'c99'} -sources = ['2473699d6c5db36525160e.tar.gz'] source_urls = ['https://github.com/PCMSolver/pcmsolver/archive/'] +sources = ['2473699d6c5db36525160e.tar.gz'] +checksums = ['52219902e1cdc7a8f3725f7b72938c7722ecdaf5bfb3ca6fff7917979335eee2'] dependencies = [ ('Python', '2.7.11'), @@ -24,7 +25,7 @@ builddependencies = [ ('Eigen', '3.2.7'), ] -configopts = "-DCMAKE_BUILD_TYPE=Release -DEIGEN3_ROOT=$EBROOTEIGEN " +configopts = "-DEIGEN3_ROOT=$EBROOTEIGEN " configopts += '-DCMAKE_CXX_FLAGS="$LIBLAPACK_MT -DEIGEN_USE_MKL_ALL"' separate_build_dir = True diff --git a/easybuild/easyconfigs/p/PLINK/PLINK-2.00a3.6-GCC-11.3.0.eb b/easybuild/easyconfigs/p/PLINK/PLINK-2.00a3.6-GCC-11.3.0.eb new file mode 100644 index 000000000000..7b3c04f52c72 --- /dev/null +++ b/easybuild/easyconfigs/p/PLINK/PLINK-2.00a3.6-GCC-11.3.0.eb @@ -0,0 +1,39 @@ +# Author: Ben Czaja (SURF) based on orginal from Jasper Grimm (UoY) + +easyblock = 'MakeCp' + +name = 'PLINK' +version = '2.00a3.6' + +homepage = 'https://www.cog-genomics.org/plink/2.0/' +description = 'Whole-genome association analysis toolset' + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/chrchang/plink-ng/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['7e650aef534f257c412509bf30afe0dd478fd32069fe8206e258abf35a3cfc6f'] + +dependencies = [ + ('FlexiBLAS', '3.2.0'), + ('libdeflate', '1.10'), + ('zstd', '1.5.2'), +] + +start_dir = '2.0' + +# ignore suggested Makefile in build_dynamic, the dev Makefile is better +buildopts = 'BLASFLAGS="-lflexiblas" BLASFLAGS64="-lflexiblas"' +buildopts += ' LDFLAGS="$LIBS -ldeflate -lz -lzstd" ZLIB="" CSRC="include/SFMT.c"' +buildopts += ' BASEFLAGS="$OPTFLAGS -DZSTD_MULTITHREAD"' + +files_to_copy = ['bin', (['include/*.h'], 'include'), 'ReadMe.md', 'COPYING', 'COPYING.LESSER'] + +sanity_check_paths = { + 'files': ['bin/plink2', 'bin/pgen_compress'], + 'dirs': ['include'], +} + +sanity_check_commands = ["plink2 --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..fb98cc63e1af --- /dev/null +++ b/easybuild/easyconfigs/p/PRSice/PRSice-2.3.5-GCCcore-11.3.0.eb @@ -0,0 +1,36 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen + +easyblock = 'CMakeMakeCp' + +name = 'PRSice' +version = '2.3.5' + +homepage = 'https://www.prsice.info/' +description = """PRSice (pronounced 'precise') is a Polygenic Risk +Score software for calculating, applying, evaluating and +plotting the results of polygenic risk scores (PRS) analyses.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/choishingwan/PRSice/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['0a7e649ddebe4e969cd8400c5ad977a7b900be4f5c920a84483cb8930367354d'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('binutils', '2.38'), + ('Eigen', '3.4.0'), +] + +files_to_copy = [(['bin/PRSice'], 'bin'), "README.md", "LICENSE"] + +sanity_check_paths = { + 'files': ['bin/PRSice'], + 'dirs': [], +} + +sanity_check_commands = ["PRSice --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb new file mode 100644 index 000000000000..766c6e809d7d --- /dev/null +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb @@ -0,0 +1,60 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'CMakeMake' + +name = 'ParaView' +version = '5.10.1' +versionsuffix = '-mpi' + +homepage = 'https://www.paraview.org' +description = "ParaView is a scientific parallel visualizer." + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'pic': True, 'usempi': True} + +local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile=' +source_urls = ['https://www.paraview.org/paraview-downloads/%s' % local_download_suffix] +sources = ["%(name)s-v%(version)s.tar.gz"] +checksums = [ + '59ca46a929a52d8abec107b72e19447cba3d8e64871b6fbc8e99b0f3b167db46', # ParaView-v5.10.1.tar.gz +] + +builddependencies = [('CMake', '3.23.1')] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('XZ', '5.2.5'), + ('HDF5', '1.12.2'), + ('netCDF', '4.9.0'), + ('libGLU', '9.0.2'), + ('X11', '20220504'), + ('Mesa', '22.0.3'), + ('Qt5', '5.15.5'), + ('zlib', '1.2.12'), + ('FFmpeg', '4.4.2'), + ('Szip', '2.1.1'), +] + +# Paraview +configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DPARAVIEW_BUILD_SHARED_LIBS=ON ' +configopts += '-DPARAVIEW_USE_MPI=ON ' +configopts += '-DPARAVIEW_ENABLE_FFMPEG=ON ' +configopts += '-DPARAVIEW_USE_PYTHON=ON ' +configopts += '-DPython3_ROOT_DIR=$EBROOTPYTHON ' + +# OpenGL & Mesa +configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT +configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include ' + +sanity_check_paths = { + 'files': ['bin/paraview', 'bin/pvpython'], + 'dirs': ['include/paraview-%(version_major_minor)s', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ['python -c "import paraview"'] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.1.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.1.0.eb new file mode 100644 index 000000000000..2a1efcc2d51d --- /dev/null +++ b/easybuild/easyconfigs/p/Perl/Perl-5.36.0-GCCcore-12.1.0.eb @@ -0,0 +1,1939 @@ +name = 'Perl' +version = '5.36.0' + +homepage = 'https://www.perl.org/' +description = """Larry Wall's Practical Extraction and Report Language""" + +toolchain = {'name': 'GCCcore', 'version': '12.1.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.cpan.org/src/%(version_major)s.0'] +sources = ['perl-%(version)s.tar.gz'] +checksums = ['e26085af8ac396f62add8a533c3a0ea8c8497d836f0689347ac5abd7b7a4e00a'] + +builddependencies = [ + ('binutils', '2.38'), + ('groff', '1.22.4'), +] + +dependencies = [ + ('zlib', '1.2.12'), # for Net::SSLeay + ('expat', '2.4.8'), # for XML::Parser + ('ncurses', '6.3'), # for Term::ReadLine::Gnu + ('libreadline', '8.1.2'), # for Term::ReadLine::Gnu + ('DB', '18.1.40'), # for DB_File + ('OpenSSL', '1.1', '', True), # required for Net::SSLeay +] + +# !! order of extensions is important !! +# extensions updated on Apr 28th 2022 +exts_list = [ + ('Config::General', '2.65', { + 'source_tmpl': 'Config-General-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TL/TLINDEN'], + 'checksums': ['4d6d5754be3a9f30906836f0cc10e554c8832e14e7a1341efb15b05d706fc58f'], + }), + ('File::Listing', '6.15', { + 'source_tmpl': 'File-Listing-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['46c4fb9f9eb9635805e26b7ea55b54455e47302758a10ed2a0b92f392713770c'], + }), + ('ExtUtils::InstallPaths', '0.012', { + 'source_tmpl': 'ExtUtils-InstallPaths-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['84735e3037bab1fdffa3c2508567ad412a785c91599db3c12593a50a1dd434ed'], + }), + ('ExtUtils::Helpers', '0.026', { + 'source_tmpl': 'ExtUtils-Helpers-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['de901b6790a4557cf4ec908149e035783b125bf115eb9640feb1bc1c24c33416'], + }), + ('Test::Harness', '3.44', { + 'source_tmpl': 'Test-Harness-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['7eb591ea6b499ece6745ff3e80e60cee669f0037f9ccbc4e4511425f593e5297'], + }), + ('ExtUtils::Config', '0.008', { + 'source_tmpl': 'ExtUtils-Config-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['ae5104f634650dce8a79b7ed13fb59d67a39c213a6776cfdaa3ee749e62f1a8c'], + }), + ('Module::Build::Tiny', '0.039', { + 'source_tmpl': 'Module-Build-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['7d580ff6ace0cbe555bf36b86dc8ea232581530cbeaaea09bccb57b55797f11c'], + }), + ('aliased', '0.34', { + 'source_tmpl': 'aliased-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['c350524507cd827fab864e5d4c2cc350b1babaa12fa95aec0ca00843fcc7deeb'], + }), + ('Text::Glob', '0.11', { + 'source_tmpl': 'Text-Glob-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RC/RCLAMP'], + 'checksums': ['069ccd49d3f0a2dedb115f4bdc9fbac07a83592840953d1fcdfc39eb9d305287'], + }), + ('Regexp::Common', '2017060201', { + 'source_tmpl': 'Regexp-Common-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AB/ABIGAIL'], + 'checksums': ['ee07853aee06f310e040b6bf1a0199a18d81896d3219b9b35c9630d0eb69089b'], + }), + ('GO::Utils', '0.15', { + 'source_tmpl': 'go-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CM/CMUNGALL'], + 'checksums': ['423d26155ee85ca51ab2270cee59f4e85b193e57ac3a29aff827298c0a396b12'], + }), + ('Module::Pluggable', '5.2', { + 'source_tmpl': 'Module-Pluggable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SI/SIMONW'], + 'checksums': ['b3f2ad45e4fd10b3fb90d912d78d8b795ab295480db56dc64e86b9fa75c5a6df'], + }), + ('Test::Fatal', '0.016', { + 'source_tmpl': 'Test-Fatal-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['7283d430f2ba2030b8cd979ae3039d3f1b2ec3dde1a11ca6ae09f992a66f788f'], + }), + ('Test::Warnings', '0.031', { + 'source_tmpl': 'Test-Warnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['1e542909fef305e45563e9878ea1c3b0c7cef1b28bb7ae07eba2e1efabec477b'], + }), + ('File::ShareDir', '1.118', { + 'source_tmpl': 'File-ShareDir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['3bb2a20ba35df958dc0a4f2306fc05d903d8b8c4de3c8beefce17739d281c958'], + }), + ('File::ShareDir::Install', '0.14', { + 'source_tmpl': 'File-ShareDir-Install-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['8f9533b198f2d4a9a5288cbc7d224f7679ad05a7a8573745599789428bc5aea0'] + }), + ('IPC::System::Simple', '1.30', { + 'source_tmpl': 'IPC-System-Simple-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/J/JK/JKEENAN'], + 'checksums': ['22e6f5222b505ee513058fdca35ab7a1eab80539b98e5ca4a923a70a8ae9ba9e'], + }), + ('Importer', '0.026', { + 'source_tmpl': 'Importer-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['e08fa84e13cb998b7a897fc8ec9c3459fcc1716aff25cc343e36ef875891b0ef'], + }), + ('Term::Table', '0.016', { + 'source_tmpl': 'Term-Table-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['8fb4fbb8e96a2d6c514949eb8cfd7e66319bcb1cbf7cea0ab19af887a72d97bf'], + }), + ('Scope::Guard', '0.21', { + 'source_tmpl': 'Scope-Guard-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/C/CH/CHOCOLATE'], + 'checksums': ['8c9b1bea5c56448e2c3fadc65d05be9e4690a3823a80f39d2f10fdd8f777d278'], + }), + ('Sub::Info', '0.002', { + 'source_tmpl': 'Sub-Info-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['ea3056d696bdeff21a99d340d5570887d39a8cc47bff23adfc82df6758cdd0ea'], + }), + ('Test2::Require::Module', '0.000145', { + 'source_tmpl': 'Test2-Suite-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['ed44be739c8879fe178d3107b238f2db960d52797db0058de53be5b84600358b'], + }), + ('Test2::Plugin::NoWarnings', '0.09', { + 'source_tmpl': 'Test2-Plugin-NoWarnings-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['be3dd800042eef362bf17d2056cf9e934dee91ccce98e4f178b8fb5772f2fb74'], + }), + ('Class::Tiny', '1.008', { + 'source_tmpl': 'Class-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['ee058a63912fa1fcb9a72498f56ca421a2056dc7f9f4b67837446d6421815615'], + }), + ('Test::File::ShareDir::Dist', '1.001002', { + 'source_tmpl': 'Test-File-ShareDir-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/K/KE/KENTNL'], + 'checksums': ['b33647cbb4b2f2fcfbde4f8bb4383d0ac95c2f89c4c5770eb691f1643a337aad'], + }), + ('DateTime::Locale', '1.36', { + 'source_tmpl': 'DateTime-Locale-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['90a8243f2b2d4068019c65178600e76e03f5b478cb41d18c8c81cdf0d481f0a4'] + }), + ('DateTime::TimeZone', '2.53', { + 'source_tmpl': 'DateTime-TimeZone-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['4f6e9ff86892a52334bfb8dfa74ebea6adb8afd04fefcba8ae52fc054c4c15b3'] + }), + ('Test::Requires', '0.11', { + 'source_tmpl': 'Test-Requires-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TOKUHIROM'], + 'checksums': ['4b88de549597eecddf7c3c38a4d0204a16f59ad804577b671896ac04e24e040f'], + }), + ('Module::Implementation', '0.09', { + 'source_tmpl': 'Module-Implementation-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['c15f1a12f0c2130c9efff3c2e1afe5887b08ccd033bd132186d1e7d5087fd66d'], + }), + ('Module::Build', '0.4231', { + 'source_tmpl': 'Module-Build-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['7e0f4c692c1740c1ac84ea14d7ea3d8bc798b2fb26c09877229e04f430b2b717'], + }), + ('Module::Runtime', '0.016', { + 'source_tmpl': 'Module-Runtime-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/Z/ZE/ZEFRAM'], + 'checksums': ['68302ec646833547d410be28e09676db75006f4aa58a11f3bdb44ffe99f0f024'], + }), + ('Try::Tiny', '0.31', { + 'source_tmpl': 'Try-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['3300d31d8a4075b26d8f46ce864a1d913e0e8467ceeba6655d5d2b2e206c11be'], + }), + ('Params::Validate', '1.30', { + 'source_tmpl': 'Params-Validate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['9a3a35583d3125d07e8c802c1f92f5be7d526e76dd496e944da270b1e273d812'], + }), + ('List::MoreUtils', '0.430', { + 'source_tmpl': 'List-MoreUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['63b1f7842cd42d9b538d1e34e0330de5ff1559e4c2737342506418276f646527'], + }), + ('Exporter::Tiny', '1.004000', { + 'source_tmpl': 'Exporter-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TOBYINK'], + 'checksums': ['7f7b3b4fbe923355317243cd434d2319ffbad81c98cf8c8e189a6943b42bfeca'], + }), + ('Class::Singleton', '1.6', { + 'source_tmpl': 'Class-Singleton-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['27ba13f0d9512929166bbd8c9ef95d90d630fc80f0c9a1b7458891055e9282a4'], + }), + ('CPAN::Meta::Check', '0.014', { + 'source_tmpl': 'CPAN-Meta-Check-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/L/LE/LEONT/'], + 'checksums': ['28a0572bfc1c0678d9ce7da48cf521097ada230f96eb3d063fcbae1cfe6a351f'], + }), + ('Test::Without::Module', '0.20', { + 'source_tmpl': 'Test-Without-Module-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/C/CO/CORION/'], + 'checksums': ['8e9aeb7c32a6c6d0b8a93114db2a8c072721273a9d9a2dd4f9ca86cfd28aa524'], + }), + ('DateTime', '1.58', { + 'source_tmpl': 'DateTime-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['00ee2a99d1cf1ae022eaf06b2cde600313d92a069e7ef9258a455a932a5fd90b'], + }), + ('File::Find::Rule::Perl', '1.16', { + 'source_tmpl': 'File-Find-Rule-Perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['ae1886050d9ca21223c073e2870abdc80dc30e3f55289a11c37da3820a8321ff'], + }), + ('Readonly', '2.05', { + 'source_tmpl': 'Readonly-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SA/SANKO'], + 'checksums': ['4b23542491af010d44a5c7c861244738acc74ababae6b8838d354dfb19462b5e'], + }), + ('Git', '0.42', { + 'source_tmpl': 'Git-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MS/MSOUTH'], + 'checksums': ['9469a9f398f3a2bf2b0500566ee41d3ff6fae460412a137185767a1cc4783a6d'], + }), + ('Tree::DAG_Node', '1.32', { + 'source_tmpl': 'Tree-DAG_Node-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['22d9de3d6e6f4afd89e6d825c664f9482878bd49e29cb81342a707af40542d3d'], + }), + ('Template', '3.100', { + 'source_tmpl': 'Template-Toolkit-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['cec7c20af57ed4b0d8131599a41027f56e22b544c8083704afad6a13cd483ffc'], + }), + ('DBI', '1.643', { + 'source_tmpl': 'DBI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TI/TIMB'], + 'checksums': ['8a2b993db560a2c373c174ee976a51027dd780ec766ae17620c20393d2e836fa'], + }), + ('DBD::SQLite', '1.70', { + 'source_tmpl': 'DBD-SQLite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['40fd8ddf539e0e773a7a4e6d376794c3301459f9ab0050978bdcf97113dafe3e'], + }), + ('Math::Bezier', '0.01', { + 'source_tmpl': 'Math-Bezier-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AB/ABW'], + 'checksums': ['11a815fc45fdf0efabb1822ab77faad8b9eea162572c5f0940c8ed7d56e6b8b8'], + }), + ('Archive::Extract', '0.88', { + 'source_tmpl': 'Archive-Extract-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['cffcf135cd0622287d3b02154f7d6716495449fcaed03966621948e25ea5f742'], + }), + ('DBIx::Simple', '1.37', { + 'source_tmpl': 'DBIx-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JU/JUERD'], + 'checksums': ['46d311aa2ce08907401c56119658426dbb044c5a40de73d9a7b79bf50390cae3'], + }), + ('Shell', '0.73', { + 'source_tmpl': 'Shell-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/F/FE/FERREIRA'], + 'checksums': ['f7dbebf65261ed0e5abd0f57052b64d665a1a830bab4c8bbc220f235bd39caf5'], + }), + ('File::Spec', '3.75', { + 'source_tmpl': 'PathTools-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['a558503aa6b1f8c727c0073339081a77888606aa701ada1ad62dd9d8c3f945a2'], + }), + ('Test::Simple', '1.302191', { + 'source_tmpl': 'Test-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['a82f652bc4f2ef1ddcae99d04fc0f8924a35386066a2ab363aabf8372bc5a7ab'], + }), + ('Set::Scalar', '1.29', { + 'source_tmpl': 'Set-Scalar-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAVIDO'], + 'checksums': ['a3dc1526f3dde72d3c64ea00007b86ce608cdcd93567cf6e6e42dc10fdc4511d'], + }), + ('IO::Stringy', '2.113', { + 'source_tmpl': 'IO-Stringy-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB'], + 'checksums': ['51220fcaf9f66a639b69d251d7b0757bf4202f4f9debd45bdd341a6aca62fe4e'], + }), + ('Encode::Locale', '1.05', { + 'source_tmpl': 'Encode-Locale-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['176fa02771f542a4efb1dbc2a4c928e8f4391bf4078473bd6040d8f11adb0ec1'], + }), + ('XML::SAX::Base', '1.09', { + 'source_tmpl': 'XML-SAX-Base-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GR/GRANTM'], + 'checksums': ['66cb355ba4ef47c10ca738bd35999723644386ac853abbeb5132841f5e8a2ad0'], + }), + ('XML::NamespaceSupport', '1.12', { + 'source_tmpl': 'XML-NamespaceSupport-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN'], + 'checksums': ['47e995859f8dd0413aa3f22d350c4a62da652e854267aa0586ae544ae2bae5ef'], + }), + ('XML::SAX', '1.02', { + 'source_tmpl': 'XML-SAX-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GR/GRANTM'], + 'checksums': ['4506c387043aa6a77b455f00f57409f3720aa7e553495ab2535263b4ed1ea12a'], + }), + ('Test::LeakTrace', '0.17', { + 'source_tmpl': 'Test-LeakTrace-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEEJO'], + 'checksums': ['777d64d2938f5ea586300eef97ef03eacb43d4c1853c9c3b1091eb3311467970'], + }), + ('Test::Exception', '0.43', { + 'source_tmpl': 'Test-Exception-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['156b13f07764f766d8b45a43728f2439af81a3512625438deab783b7883eb533'], + }), + ('Text::Aligner', '0.16', { + 'source_tmpl': 'Text-Aligner-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['5c857dbce586f57fa3d7c4ebd320023ab3b2963b2049428ae01bd3bc4f215725'], + }), + ('Text::Table', '1.134', { + 'source_tmpl': 'Text-Table-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['bacf429b18b7c0b22c088219055063e3902749531d488ebd7b17eab7757cd10b'], + }), + ('MIME::Types', '2.22', { + 'source_tmpl': 'MIME-Types-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['c2545eb30b094e942860ff8444f0f6cb54641caa8f7d386aaa2d925da4b02400'], + }), + ('File::Copy::Recursive', '0.45', { + 'source_tmpl': 'File-Copy-Recursive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DM/DMUEY'], + 'checksums': ['d3971cf78a8345e38042b208bb7b39cb695080386af629f4a04ffd6549df1157'], + }), + ('Cwd::Guard', '0.05', { + 'source_tmpl': 'Cwd-Guard-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KAZEBURO'], + 'checksums': ['7afc7ca2b9502e440241938ad97a3e7ebd550180ebd6142e1db394186b268e77'], + }), + ('Capture::Tiny', '0.48', { + 'source_tmpl': 'Capture-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['6c23113e87bad393308c90a207013e505f659274736638d8c79bac9c67cc3e19'], + }), + ('File::Copy::Recursive::Reduced', '0.006', { + 'source_tmpl': 'File-Copy-Recursive-Reduced-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JK/JKEENAN'], + 'checksums': ['e618f993a69f4355205c58fffff6982609f28b47f646ec6e244e41b5c6707e2c'], + }), + ('Module::Build::XSUtil', '0.19', { + 'source_tmpl': 'Module-Build-XSUtil-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HI/HIDEAKIO'], + 'checksums': ['9063b3c346edeb422807ffe49ffb23038c4f900d4a77b845ce4b53d97bf29400'], + }), + ('Tie::Function', '0.02', { + 'source_tmpl': 'Tie-Function-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAVIDNICO/handy_tied_functions'], + 'checksums': ['0b1617af218dfab911ba0fbd72210529a246efe140332da77fe3e03d11000117'], + }), + ('Template::Plugin::Number::Format', '1.06', { + 'source_tmpl': 'Template-Plugin-Number-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DARREN'], + 'checksums': ['0865836a1bcbc34d4a0ee34b5ccc14d7b511f1fd300bf390f002dac349539843'], + }), + ('HTML::Parser', '3.78', { + 'source_tmpl': 'HTML-Parser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['22564002f206af94c1dd8535f02b0d9735125d9ebe89dd0ff9cd6c000e29c29d'], + }), + ('Date::Handler', '1.2', { + 'source_tmpl': 'Date-Handler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BB/BBEAUSEJ'], + 'checksums': ['c36fd2b68d48c2e17417bf2873c78820f3ae02460fdf5976b8eeab887d59e16c'], + }), + ('Params::Util', '1.102', { + 'source_tmpl': 'Params-Util-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['499bb1b482db24fda277a51525596ad092c2bd51dd508fa8fec2e9f849097402'], + }), + ('IO::HTML', '1.004', { + 'source_tmpl': 'IO-HTML-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CJ/CJM'], + 'checksums': ['c87b2df59463bbf2c39596773dfb5c03bde0f7e1051af339f963f58c1cbd8bf5'], + }), + ('Data::Grove', '0.08', { + 'source_tmpl': 'libxml-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KM/KMACLEOD'], + 'checksums': ['4571059b7b5d48b7ce52b01389e95d798bf5cf2020523c153ff27b498153c9cb'], + }), + ('Class::ISA', '0.36', { + 'source_tmpl': 'Class-ISA-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SM/SMUELLER'], + 'checksums': ['8816f34e9a38e849a10df756030dccf9fe061a196c11ac3faafd7113c929b964'], + }), + ('URI', '5.12', { + 'source_tmpl': 'URI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['66abe0eaddd76b74801ecd28ec1411605887550fc0a45ef6aa744fdad768d9b3'], + }), + ('Ima::DBI', '0.35', { + 'source_tmpl': 'Ima-DBI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PERRIN'], + 'checksums': ['8b481ceedbf0ae4a83effb80581550008bfdd3885ef01145e3733c7097c00a08'], + }), + ('Tie::IxHash', '1.23', { + 'source_tmpl': 'Tie-IxHash-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHORNY'], + 'checksums': ['fabb0b8c97e67c9b34b6cc18ed66f6c5e01c55b257dcf007555e0b027d4caf56'], + }), + ('GO', '0.04', { + 'source_tmpl': 'go-db-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SJ/SJCARBON'], + 'checksums': ['8eb73d591ad767e7cf26def40cffd84833875f1ad51e456960b9ed73dc23641b'], + }), + ('Class::DBI::SQLite', '0.11', { + 'source_tmpl': 'Class-DBI-SQLite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['c4661b00afb7e53c97ac36e13f34dde43c1a93540a2f4ff97e6182b0c731e4e7'], + }), + ('Pod::POM', '2.01', { + 'source_tmpl': 'Pod-POM-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['1b50fba9bbdde3ead192beeba0eaddd0c614e3afb1743fa6fff805f57c56f7f4'], + }), + ('Math::Round', '0.07', { + 'source_tmpl': 'Math-Round-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GR/GROMMEL'], + 'checksums': ['73a7329a86e54a5c29a440382e5803095b58f33129e61a1df0093b4824de9327'], + }), + ('Text::Diff', '1.45', { + 'source_tmpl': 'Text-Diff-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['e8baa07b1b3f53e00af3636898bbf73aec9a0ff38f94536ede1dbe96ef086f04'], + }), + ('Log::Message::Simple', '0.10', { + 'source_tmpl': 'Log-Message-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['aa12d1a4c0ac260b94d448fa01feba242a8a85cb6cbfdc66432e3b5b468add96'], + }), + ('Net::SSLeay', '1.92', { + 'preconfigopts': "export OPENSSL_PREFIX=$EBROOTOPENSSL && ", + 'source_tmpl': 'Net-SSLeay-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHRISN'], + 'checksums': ['47c2f2b300f2e7162d71d699f633dd6a35b0625a00cbda8c50ac01144a9396a9'], + }), + ('IO::Socket::SSL', '2.074', { + 'source_tmpl': 'IO-Socket-SSL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SU/SULLR'], + 'checksums': ['36486b6be49da4d029819cf7069a7b41ed48af0c87e23be0f8e6aba23d08a832'], + }), + ('Fennec::Lite', '0.004', { + 'source_tmpl': 'Fennec-Lite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['dce28e3932762c2ff92aa52d90405c06e898e81cb7b164ccae8966ae77f1dcab'], + }), + ('Sub::Uplevel', '0.2800', { + 'source_tmpl': 'Sub-Uplevel-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['b4f3f63b80f680a421332d8851ddbe5a8e72fcaa74d5d1d98f3c8cc4a3ece293'], + }), + ('Meta::Builder', '0.004', { + 'source_tmpl': 'Meta-Builder-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['acb499aa7206eb9db21eb85357a74521bfe3bdae4a6416d50a7c75b939cf56fe'], + }), + ('Exporter::Declare', '0.114', { + 'source_tmpl': 'Exporter-Declare-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['4bd70d6ca76f6f6ba7e4c618d4ac93b8593a58f1233ccbe18b10f5f204f1d4e4'], + }), + ('Getopt::Long', '2.52', { + 'source_tmpl': 'Getopt-Long-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JV/JV'], + 'checksums': ['9dc7a7c373353d5c05efae548e7b123aa8a31d1f506eb8dbbec8f0dca77705fa'], + }), + ('Log::Message', '0.08', { + 'source_tmpl': 'Log-Message-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['bd697dd62aaf26d118e9f0a0813429deb1c544e4501559879b61fcbdfe99fe46'], + }), + ('Mouse', 'v2.5.10', { + 'source_tmpl': 'Mouse-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SK/SKAJI'], + 'checksums': ['ce8dc23946153a467ff09765167ee2590f5c502120f48a2d9441733f39aa32ee'], + }), + ('Test::Version', '2.09', { + 'source_tmpl': 'Test-Version-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['9ce1dd2897a5f30e1b7f8966ec66f57d8d8f280f605f28c7ca221fa79aca38e0'], + }), + ('DBIx::Admin::TableInfo', '3.04', { + 'source_tmpl': 'DBIx-Admin-TableInfo-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['b9625992683b97378bea0947773f50e3c9f81974048b84f4c3422cae7e6082f4'], + }), + ('Net::HTTP', '6.22', { + 'source_tmpl': 'Net-HTTP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['62faf9a5b84235443fe18f780e69cecf057dea3de271d7d8a0ba72724458a1a2'], + }), + ('Test::Deep', '1.130', { + 'source_tmpl': 'Test-Deep-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['4064f494f5f62587d0ae501ca439105821ee5846c687dc6503233f55300a7c56'], + }), + ('Test::Warn', '0.37', { + 'source_tmpl': 'Test-Warn-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BIGJ'], + 'checksums': ['98ca32e7f2f5ea89b8bfb9a0609977f3d153e242e2e51705126cb954f1a06b57'], + }), + ('MRO::Compat', '0.15', { + 'source_tmpl': 'MRO-Compat-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['0d4535f88e43babd84ab604866215fc4d04398bd4db7b21852d4a31b1c15ef61'], + }), + ('Moo', '2.005004', { + 'source_tmpl': 'Moo-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['e3030b80bd554a66f6b3c27fd53b1b5909d12af05c4c11ece9a58f8d1e478928'], + }), + ('Clone::Choose', '0.010', { + 'source_tmpl': 'Clone-Choose-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HE/HERMES'], + 'checksums': ['5623481f58cee8edb96cd202aad0df5622d427e5f748b253851dfd62e5123632'], + }), + ('Hash::Merge', '0.302', { + 'source_tmpl': 'Hash-Merge-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HE/HERMES'], + 'checksums': ['ae0522f76539608b61dde14670e79677e0f391036832f70a21f31adde2538644'], + }), + ('SQL::Abstract', '2.000001', { + 'source_tmpl': 'SQL-Abstract-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MS/MSTROUT'], + 'checksums': ['35a642662c349420d44be6e0ef7d8765ea743eb12ad14399aa3a232bb94e6e9a'], + }), + ('HTML::Form', '6.07', { + 'source_tmpl': 'HTML-Form-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['7daa8c7eaff4005501c3431c8bf478d58bbee7b836f863581aa14afe1b4b6227'], + }), + ('Number::Compare', '0.03', { + 'source_tmpl': 'Number-Compare-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RC/RCLAMP'], + 'checksums': ['83293737e803b43112830443fb5208ec5208a2e6ea512ed54ef8e4dd2b880827'], + }), + ('IPC::Run', '20220807.0', { + 'source_tmpl': 'IPC-Run-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['277d781dbbc98af18e979c7ef36f222513d7361742c52507c3348b265f6f5e69'], + }), + ('HTML::Entities::Interpolate', '1.10', { + 'source_tmpl': 'HTML-Entities-Interpolate-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['f15a9df92c282419f7010964aca1ada844ddfae7afc735cd2ba1bb20883e955c'], + }), + ('File::Remove', '1.61', { + 'source_tmpl': 'File-Remove-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['fd857f585908fc503461b9e48b3c8594e6535766bc14beb17c90ba58d5dc4975'], + }), + ('YAML::Tiny', '1.73', { + 'source_tmpl': 'YAML-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['bc315fa12e8f1e3ee5e2f430d90b708a5dc7e47c867dba8dce3a6b8fbe257744'], + }), + ('Module::Install', '1.19', { + 'source_tmpl': 'Module-Install-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['1a53a78ddf3ab9e3c03fc5e354b436319a944cba4281baf0b904fa932a13011b'], + }), + ('Config::Tiny', '2.28', { + 'source_tmpl': 'Config-Tiny-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['12df843a0d29d48f61bcc14c4f18f0858fd27a8dd829a00319529d654fe01500'], + }), + ('Test::ClassAPI', '1.07', { + 'source_tmpl': 'Test-ClassAPI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['30e9dbfc5e0cc2ee14eae8f3465a908a710daecbd0a3ebdb2888fc4504fa18aa'], + }), + ('Test::Most', '0.37', { + 'source_tmpl': 'Test-Most-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OV/OVID'], + 'checksums': ['533370141eb9f18cf4ac380f6ded2ab57802a6e184008a80fd2304bfcc474fc7'], + }), + ('Class::Accessor', '0.51', { + 'source_tmpl': 'Class-Accessor-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KASEI'], + 'checksums': ['bf12a3e5de5a2c6e8a447b364f4f5a050bf74624c56e315022ae7992ff2f411c'], + }), + ('Test::Differences', '0.69', { + 'source_tmpl': 'Test-Differences-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DC/DCANTRELL'], + 'checksums': ['18f644fdd4a1fef93ef3f7f67df8e95b593d811899f34bcbbaba4d717222f58f'], + }), + ('HTTP::Tiny', '0.082', { + 'source_tmpl': 'HTTP-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['54e9e4a559a92cbb90e3f19c8a88ff067ec2f68fbe39bbb694ee70828cd5f4b8'], + }), + ('Package::DeprecationManager', '0.17', { + 'source_tmpl': 'Package-DeprecationManager-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['1d743ada482b5c9871d894966e87d4c20edc96931bb949fb2638b000ddd6684b'], + }), + ('Digest::SHA1', '2.13', { + 'source_tmpl': 'Digest-SHA1-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['68c1dac2187421f0eb7abf71452a06f190181b8fc4b28ededf5b90296fb943cc'], + }), + ('Date::Language', '2.33', { + 'source_tmpl': 'TimeDate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], + 'checksums': ['c0b69c4b039de6f501b0d9f13ec58c86b040c1f7e9b27ef249651c143d605eb2'], + }), + ('version', '0.9929', { + 'source_tmpl': 'version-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['5056ed481ada4e0fa497096d4091b18658f214d862e1ed164edf10bc6b39c8b0'], + }), + ('Sub::Uplevel', '0.2800', { + 'source_tmpl': 'Sub-Uplevel-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['b4f3f63b80f680a421332d8851ddbe5a8e72fcaa74d5d1d98f3c8cc4a3ece293'], + }), + ('XML::Bare', '0.53', { + 'source_tmpl': 'XML-Bare-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CO/CODECHILD'], + 'checksums': ['865e198e98d904be1683ef5a53a4948f02dabdacde59fc554a082ffbcc5baefd'], + }), + ('Dist::CheckConflicts', '0.11', { + 'source_tmpl': 'Dist-CheckConflicts-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DO/DOY'], + 'checksums': ['ea844b9686c94d666d9d444321d764490b2cde2f985c4165b4c2c77665caedc4'], + }), + ('Sub::Name', '0.26', { + 'source_tmpl': 'Sub-Name-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['2d2f2d697d516c89547e7c4307f1e79441641cae2c7395e7319b306d390df105'], + }), + ('Time::Piece', '1.3401', { + 'source_tmpl': 'Time-Piece-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ES/ESAYM'], + 'checksums': ['4b55b7bb0eab45cf239a54dfead277dfa06121a43e63b3fce0853aecfdb04c27'], + }), + ('Digest::HMAC', '1.04', { + 'source_tmpl': 'Digest-HMAC-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AR/ARODLAND'], + 'checksums': ['d6bc8156aa275c44d794b7c18f44cdac4a58140245c959e6b19b2c3838b08ed4'], + }), + ('HTTP::Negotiate', '6.01', { + 'source_tmpl': 'HTTP-Negotiate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['1c729c1ea63100e878405cda7d66f9adfd3ed4f1d6cacaca0ee9152df728e016'], + }), + ('MIME::Lite', '3.033', { + 'source_tmpl': 'MIME-Lite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['78a279f1d2e242551c347ef97a13fc675766602cb84c2a80c569400f4f368bab'], + }), + ('Crypt::Rijndael', '1.16', { + 'source_tmpl': 'Crypt-Rijndael-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['6540085e3804b82a6f0752c1122cf78cadd221990136dd6fd4c097d056c84d40'], + }), + ('B::Lint', '1.20', { + 'source_tmpl': 'B-Lint-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['dc49408964fd8b7963859c92e013f0b9f92f74be5a7c2a78e3996279827c10b3'], + }), + ('Canary::Stability', '2013', { + 'source_tmpl': 'Canary-Stability-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['a5c91c62cf95fcb868f60eab5c832908f6905221013fea2bce3ff57046d7b6ea'], + }), + ('AnyEvent', '7.17', { + 'source_tmpl': 'AnyEvent-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['50beea689c098fe4aaeb83806c40b9fe7f946d5769acf99f849f099091a4b985'], + }), + ('Object::Accessor', '0.48', { + 'source_tmpl': 'Object-Accessor-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['76cb824a27b6b4e560409fcf6fd5b3bfbbd38b72f1f3d37ed0b54bd9c0baeade'], + }), + ('Data::UUID', '1.226', { + 'source_tmpl': 'Data-UUID-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['093d57ffa0d411a94bafafae495697db26f5c9d0277198fe3f7cf2be22996453'], + }), + ('Test::Pod', '1.52', { + 'source_tmpl': 'Test-Pod-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['60a8dbcc60168bf1daa5cc2350236df9343e9878f4ab9830970a5dde6fe8e5fc'], + }), + ('AppConfig', '1.71', { + 'source_tmpl': 'AppConfig-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['1177027025ecb09ee64d9f9f255615c04db5e14f7536c344af632032eb887b0f'], + }), + ('Net::SMTP::SSL', '1.04', { + 'source_tmpl': 'Net-SMTP-SSL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['7b29c45add19d3d5084b751f7ba89a8e40479a446ce21cfd9cc741e558332a00'], + }), + ('XML::Tiny', '2.07', { + 'source_tmpl': 'XML-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DC/DCANTRELL'], + 'checksums': ['ce39fcb53e0fe9f1cbcd86ddf152e1db48566266b70ec0769ef364eeabdd8941'], + }), + ('HTML::Tagset', '3.20', { + 'source_tmpl': 'HTML-Tagset-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PETDANCE'], + 'checksums': ['adb17dac9e36cd011f5243881c9739417fd102fce760f8de4e9be4c7131108e2'], + }), + ('HTML::Tree', '5.07', { + 'source_tmpl': 'HTML-Tree-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KE/KENTNL'], + 'checksums': ['f0374db84731c204b86c1d5b90975fef0d30a86bd9def919343e554e31a9dbbf'], + }), + ('Devel::GlobalDestruction', '0.14', { + 'source_tmpl': 'Devel-GlobalDestruction-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['34b8a5f29991311468fe6913cadaba75fd5d2b0b3ee3bb41fe5b53efab9154ab'], + }), + ('WWW::RobotRules', '6.02', { + 'source_tmpl': 'WWW-RobotRules-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['46b502e7a288d559429891eeb5d979461dd3ecc6a5c491ead85d165b6e03a51e'], + }), + ('Expect', '1.35', { + 'source_tmpl': 'Expect-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JA/JACOBY'], + 'checksums': ['09d92761421decd495853103379165a99efbf452c720f30277602cf23679fd06'], + }), + ('Term::UI', '0.50', { + 'source_tmpl': 'Term-UI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['60bfdd6d4c158b88d370133fc65b20485a36a45b12d906000b81c78ca524163d'], + }), + ('Net::SNMP', 'v6.0.1', { + 'source_tmpl': 'Net-SNMP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DT/DTOWN'], + 'checksums': ['14c37bc1cbb3f3cdc7d6c13e0f27a859f14cdcfd5ea54a0467a88bc259b0b741'], + }), + ('XML::Filter::BufferText', '1.01', { + 'source_tmpl': 'XML-Filter-BufferText-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RB/RBERJON'], + 'checksums': ['8fd2126d3beec554df852919f4739e689202cbba6a17506e9b66ea165841a75c'], + }), + ('XML::SAX::Writer', '0.57', { + 'source_tmpl': 'XML-SAX-Writer-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PERIGRIN'], + 'checksums': ['3d61d07ef43b0126f5b4de4f415a256fa859fa88dc4fdabaad70b7be7c682cf0'], + }), + ('Statistics::Descriptive', '3.0800', { + 'source_tmpl': 'Statistics-Descriptive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['b04edeea26bfed435aa6029956798c281f7f52d4545f3f45b2ad44954e96f939'], + }), + ('Class::Load', '0.25', { + 'source_tmpl': 'Class-Load-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['2a48fa779b5297e56156380e8b32637c6c58decb4f4a7f3c7350523e11275f8f'], + }), + ('LWP::Simple', '6.67', { + 'source_tmpl': 'libwww-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['96eec40a3fd0aa1bd834117be5eb21c438f73094d861a1a7e5774f0b1226b723'], + }), + ('Time::Piece::MySQL', '0.06', { + 'source_tmpl': 'Time-Piece-MySQL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KASEI'], + 'checksums': ['319601feec17fae344988a5ee91cfc6a0bcfe742af77dba254724c3268b2a60f'], + }), + ('Package::Stash::XS', '0.30', { + 'source_tmpl': 'Package-Stash-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['26bad65c1959c57379b3e139dc776fbec5f702906617ef27cdc293ddf1239231'], + }), + ('Set::Array', '0.30', { + 'source_tmpl': 'Set-Array-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['d9f024c8e3637feccdebcf6479b6754b6c92f1209f567feaf0c23818af31ee3c'], + }), + ('boolean', '0.46', { + 'source_tmpl': 'boolean-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['95c088085c3e83bf680fe6ce16d8264ec26310490f7d1680e416ea7a118f156a'], + }), + ('Number::Format', '1.75', { + 'source_tmpl': 'Number-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/W/WR/WRW'], + 'checksums': ['82d659cb16461764fd44d11a9ce9e6a4f5e8767dc1069eb03467c6e55de257f3'], + }), + ('Data::Stag', '0.14', { + 'source_tmpl': 'Data-Stag-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CM/CMUNGALL'], + 'checksums': ['4ab122508d2fb86d171a15f4006e5cf896d5facfa65219c0b243a89906258e59'], + }), + ('Test::NoWarnings', '1.06', { + 'source_tmpl': 'Test-NoWarnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['c2dc51143b7eb63231210e27df20d2c8393772e0a333547ec8b7a205ed62f737'], + }), + ('Crypt::DES', '2.07', { + 'source_tmpl': 'Crypt-DES-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DP/DPARIS'], + 'checksums': ['2db1ebb5837b4cb20051c0ee5b733b4453e3137df0a92306034c867621edd7e7'], + }), + ('Exporter', '5.74', { + 'source_tmpl': 'Exporter-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['eadb889ef673ad940da6aa4f6f7d75fc1e625ae786ae3533fd313eaf629945b8'], + }), + ('Class::Inspector', '1.36', { + 'source_tmpl': 'Class-Inspector-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['cc295d23a472687c24489d58226ead23b9fdc2588e522f0b5f0747741700694e'], + }), + ('Parse::RecDescent', '1.967015', { + 'source_tmpl': 'Parse-RecDescent-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JT/JTBRAUN'], + 'checksums': ['1943336a4cb54f1788a733f0827c0c55db4310d5eae15e542639c9dd85656e37'], + }), + ('Carp', '1.50', { + 'source_tmpl': 'Carp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['f5273b4e1a6d51b22996c48cb3a3cbc72fd456c4038f5c20b127e2d4bcbcebd9'], + }), + ('XML::Parser', '2.46', { + 'source_tmpl': 'XML-Parser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['d331332491c51cccfb4cb94ffc44f9cd73378e618498d4a37df9e043661c515d'], + }), + ('XML::XPath', '1.48', { + 'source_tmpl': 'XML-XPath-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['7bc75be36b239e5b2e700a9570d2b53b43093d467f2abe6a743f9ff9093790cd'], + }), + ('JSON', '4.09', { + 'source_tmpl': 'JSON-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['6780a51f438c0932eec0534fc9cd2b1ad0d64817eda4add8ede5ec77d6d2c991'], + }), + ('Sub::Exporter', '0.988', { + 'source_tmpl': 'Sub-Exporter-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['23324887d6c590f145702f077d8ca42f1b2f26a3b76f08d66c2c1e21e606040c'], + }), + ('Class::Load::XS', '0.10', { + 'source_tmpl': 'Class-Load-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['5bc22cf536ebfd2564c5bdaf42f0d8a4cee3d1930fc8b44b7d4a42038622add1'], + }), + ('Set::IntSpan::Fast', '1.15', { + 'source_tmpl': 'Set-IntSpan-Fast-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AN/ANDYA'], + 'checksums': ['cfb1768c24f55208e87405b17f537f0f303fa141891d0b22d509a941aa57e24e'], + }), + ('Sub::Exporter::Progressive', '0.001013', { + 'source_tmpl': 'Sub-Exporter-Progressive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/F/FR/FREW'], + 'checksums': ['d535b7954d64da1ac1305b1fadf98202769e3599376854b2ced90c382beac056'], + }), + ('Data::Dumper::Concise', '2.023', { + 'source_tmpl': 'Data-Dumper-Concise-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['a6c22f113caf31137590def1b7028a7e718eface3228272d0672c25e035d5853'], + }), + ('File::Slurp::Tiny', '0.004', { + 'source_tmpl': 'File-Slurp-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['452995beeabf0e923e65fdc627a725dbb12c9e10c00d8018c16d10ba62757f1e'], + }), + ('Algorithm::Diff', '1.201', { + 'source_tmpl': 'Algorithm-Diff-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['0022da5982645d9ef0207f3eb9ef63e70e9713ed2340ed7b3850779b0d842a7d'], + }), + ('Text::Iconv', '1.7', { + 'source_tmpl': 'Text-Iconv-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MP/MPIOTR'], + 'checksums': ['5b80b7d5e709d34393bcba88971864a17b44a5bf0f9e4bcee383d029e7d2d5c3'], + }), + ('Class::Data::Inheritable', '0.09', { + 'source_tmpl': 'Class-Data-Inheritable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSHERER'], + 'checksums': ['44088d6e90712e187b8a5b050ca5b1c70efe2baa32ae123e9bd8f59f29f06e4d'], + }), + ('Text::Balanced', '2.06', { + 'source_tmpl': 'Text-Balanced-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['773e0f0f21c0cb2cf664cee6ba28ff70259babcc892f9b650f9cbda00be092ad'], + }), + ('strictures', '2.000006', { + 'source_tmpl': 'strictures-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['09d57974a6d1b2380c802870fed471108f51170da81458e2751859f2714f8d57'], + }), + ('Switch', '2.17', { + 'source_tmpl': 'Switch-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHORNY'], + 'checksums': ['31354975140fe6235ac130a109496491ad33dd42f9c62189e23f49f75f936d75'], + }), + ('File::Which', '1.27', { + 'source_tmpl': 'File-Which-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['3201f1a60e3f16484082e6045c896842261fc345de9fb2e620fd2a2c7af3a93a'], + }), + ('Email::Date::Format', '1.005', { + 'source_tmpl': 'Email-Date-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['579c617e303b9d874411c7b61b46b59d36f815718625074ae6832e7bb9db5104'], + }), + ('Error', '0.17029', { + 'source_tmpl': 'Error-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['1a23f7913032aed6d4b68321373a3899ca66590f4727391a091ec19c95bf7adc'], + }), + ('Mock::Quick', '1.111', { + 'source_tmpl': 'Mock-Quick-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['ff786008bf8c022064ececd3b7ed89c76b35e8d1eac6cf472a9f51771c1c9f2c'], + }), + ('Text::CSV', '2.02', { + 'source_tmpl': 'Text-CSV-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['84120de3e10489ea8fbbb96411a340c32cafbe5cdff7dd9576b207081baa9d24'], + }), + ('Test::Output', '1.033', { + 'source_tmpl': 'Test-Output-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BD/BDFOY'], + 'checksums': ['f6a8482740b075fad22aaf4d987d38ef927c6d2b452d4ae0d0bd8f779830556e'], + }), + ('Class::DBI', 'v3.0.17', { + 'source_tmpl': 'Class-DBI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TM/TMTM'], + 'checksums': ['541354fe361c56850cb11261f6ca089a14573fa764792447444ff736ae626206'], + }), + ('List::SomeUtils', '0.58', { + 'source_tmpl': 'List-SomeUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['96eafb359339d22bf2a2de421298847a3c40f6a28b6d44005d0965da86a5469d'], + }), + ('List::UtilsBy', '0.12', { + 'source_tmpl': 'List-UtilsBy-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['fff1281fd469fe982b1a58044becfd970f313bff3a26e1c7b2b3f4c0a5ed71e0'], + }), + ('List::AllUtils', '0.19', { + 'source_tmpl': 'List-AllUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['30a8146ab21a7787b8c56d5829cf9a7f2b15276d3b3fca07336ac38d3002ffbc'], + }), + ('UNIVERSAL::moniker', '0.08', { + 'source_tmpl': 'UNIVERSAL-moniker-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KA/KASEI'], + 'checksums': ['94ce27a546cd57cb52e080a8f2533a7cc2350028388582485bd1039a37871f9c'], + }), + ('Exception::Class', '1.45', { + 'source_tmpl': 'Exception-Class-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['5482a77ef027ca1f9f39e1f48c558356e954936fc8fbbdee6c811c512701b249'], + }), + ('File::CheckTree', '4.42', { + 'source_tmpl': 'File-CheckTree-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['66fb417f8ff8a5e5b7ea25606156e70e204861c59fa8c3831925b4dd3f155f8a'], + }), + ('Math::VecStat', '0.08', { + 'source_tmpl': 'Math-VecStat-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AS/ASPINELLI'], + 'checksums': ['409a8e0e4b1025c8e80f628f65a9778aa77ab285161406ca4a6c097b13656d0d'], + }), + ('Pod::LaTeX', '0.61', { + 'source_tmpl': 'Pod-LaTeX-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TJ/TJENNESS'], + 'checksums': ['15a840ea1c8a76cd3c865fbbf2fec33b03615c0daa50f9c800c54e0cf0659d46'], + }), + ('Eval::Closure', '0.14', { + 'source_tmpl': 'Eval-Closure-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DO/DOY'], + 'checksums': ['ea0944f2f5ec98d895bef6d503e6e4a376fea6383a6bc64c7670d46ff2218cad'], + }), + ('HTTP::Request', '6.37', { + 'source_tmpl': 'HTTP-Message-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['0e59da0a85e248831327ebfba66796314cb69f1bfeeff7a9da44ad766d07d802'], + }), + ('XML::Twig', '3.52', { + 'source_tmpl': 'XML-Twig-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIROD'], + 'checksums': ['fef75826c24f2b877d0a0d2645212fc4fb9756ed4d2711614ac15c497e8680ad'], + }), + ('IO::String', '1.08', { + 'source_tmpl': 'IO-String-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['2a3f4ad8442d9070780e58ef43722d19d1ee21a803bf7c8206877a10482de5a0'], + }), + ('XML::Simple', '2.25', { + 'source_tmpl': 'XML-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GR/GRANTM'], + 'checksums': ['531fddaebea2416743eb5c4fdfab028f502123d9a220405a4100e68fc480dbf8'], + }), + ('Sub::Install', '0.928', { + 'source_tmpl': 'Sub-Install-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['61e567a7679588887b7b86d427bc476ea6d77fffe7e0d17d640f89007d98ef0f'], + }), + ('HTTP::Cookies', '6.10', { + 'source_tmpl': 'HTTP-Cookies-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['e36f36633c5ce6b5e4b876ffcf74787cc5efe0736dd7f487bdd73c14f0bd7007'], + }), + ('Pod::Plainer', '1.04', { + 'source_tmpl': 'Pod-Plainer-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RM/RMBARKER'], + 'checksums': ['1bbfbf7d1d4871e5a83bab2137e22d089078206815190eb1d5c1260a3499456f'], + }), + ('LWP::MediaTypes', '6.04', { + 'source_tmpl': 'LWP-MediaTypes-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['8f1bca12dab16a1c2a7c03a49c5e58cce41a6fec9519f0aadfba8dad997919d9'], + }), + ('Data::Section::Simple', '0.07', { + 'source_tmpl': 'Data-Section-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['0b3035ffdb909aa1f7ded6b608fa9d894421c82c097d51e7171170d67579a9cb'], + }), + ('Class::Trigger', '0.15', { + 'source_tmpl': 'Class-Trigger-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['b7a878d44dea67d64df2ca18020d9d868a95596debd16f1a264874209332b07f'], + }), + ('Test::Needs', '0.002009', { + 'source_tmpl': 'Test-Needs-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/H/HA/HAARG/'], + 'checksums': ['571c21193ad16195df58b06b268798796a391b398c443271721d2cc0fb7c4ac3'], + }), + ('HTTP::Daemon', '6.14', { + 'source_tmpl': 'HTTP-Daemon-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['f0767e7f3cbb80b21313c761f07ad8ed253bce9fa2d0ba806b3fb72d309b2e1d'], + }), + ('File::HomeDir', '1.006', { + 'source_tmpl': 'File-HomeDir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['593737c62df0f6dab5d4122e0b4476417945bb6262c33eedc009665ef1548852'], + }), + ('HTTP::Date', '6.05', { + 'source_tmpl': 'HTTP-Date-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['365d6294dfbd37ebc51def8b65b81eb79b3934ecbc95a2ec2d4d827efe6a922b'], + }), + ('Authen::SASL', '2.16', { + 'source_tmpl': 'Authen-SASL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GB/GBARR'], + 'checksums': ['6614fa7518f094f853741b63c73f3627168c5d3aca89b1d02b1016dc32854e09'], + }), + ('Clone', '0.45', { + 'source_tmpl': 'Clone-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], + 'checksums': ['cbb6ee348afa95432e4878893b46752549e70dc68fe6d9e430d1d2e99079a9e6'], + }), + ('Data::Types', '0.17', { + 'source_tmpl': 'Data-Types-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['860751feb79b7dfc1af71c4b7fe920220ec6d31c4ab9402b8f178f7f4b8293c1'], + }), + ('Import::Into', '1.002005', { + 'source_tmpl': 'Import-Into-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['bd9e77a3fb662b40b43b18d3280cd352edf9fad8d94283e518181cc1ce9f0567'], + }), + ('DateTime::Tiny', '1.07', { + 'source_tmpl': 'DateTime-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['83568a22838cb518fbeb9e060460ec7f59d5a0b0a1cc06562954c3674d7cf7e4'], + }), + ('Text::Format', '0.62', { + 'source_tmpl': 'Text-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['7d429057319e123c590ba0765334f0ade4a5eb9ea8db7c0ec4d3902de5f90404'], + }), + ('Devel::CheckCompiler', '0.07', { + 'source_tmpl': 'Devel-CheckCompiler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SY/SYOHEX'], + 'checksums': ['768b7697b4b8d4d372c7507b65e9dd26aa4223f7100183bbb4d3af46d43869b5'], + }), + ('Log::Handler', '0.90', { + 'source_tmpl': 'Log-Handler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BL/BLOONIX'], + 'checksums': ['3a5c80e7128454770f83acab8cbd3e70e5ec3d59a61dc32792a178f0b31bf74d'], + }), + ('DBIx::ContextualFetch', '1.03', { + 'source_tmpl': 'DBIx-ContextualFetch-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TM/TMTM'], + 'checksums': ['85e2f805bfc81cd738c294316b27a515397036f397a0ff1c6c8d754c38530306'], + }), + ('Devel::StackTrace', '2.04', { + 'source_tmpl': 'Devel-StackTrace-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['cd3c03ed547d3d42c61fa5814c98296139392e7971c092e09a431f2c9f5d6855'], + }), + ('Term::ReadKey', '2.38', { + 'source_tmpl': 'TermReadKey-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JS/JSTOWE'], + 'checksums': ['5a645878dc570ac33661581fbb090ff24ebce17d43ea53fd22e105a856a47290'], + }), + ('Set::IntSpan', '1.19', { + 'source_tmpl': 'Set-IntSpan-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SW/SWMCD'], + 'checksums': ['11b7549b13ec5d87cc695dd4c777cd02983dd5fe9866012877fb530f48b3dfd0'], + }), + ('Module::Runtime::Conflicts', '0.003', { + 'source_tmpl': 'Module-Runtime-Conflicts-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/E/ET/ETHER/'], + 'checksums': ['707cdc75038c70fe91779b888ac050f128565d3967ba96680e1b1c7cc9733875'], + }), + ('Test::CleanNamespaces', '0.24', { + 'source_tmpl': 'Test-CleanNamespaces-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/E/ET/ETHER/'], + 'checksums': ['338d5569e8e89a654935f843ec0bc84aaa486fe8dd1898fb9cab3eccecd5327a'], + }), + ('Moose', '2.2201', { + 'source_tmpl': 'Moose-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['cd5ff9b4751f73ecb6874ba9761343d35737d4ddf5ff6b19c00d01af5ffc3eb2'], + }), + ('Algorithm::Dependency', '1.112', { + 'source_tmpl': 'Algorithm-Dependency-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['7e0fb7c39f56a2dccf9d0295c82f3031ee116e807f6a12a438fa4dd41b0ec187'], + }), + ('Font::TTF', '1.06', { + 'source_tmpl': 'Font-TTF-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BH/BHALLISSY'], + 'checksums': ['4b697d444259759ea02d2c442c9bffe5ffe14c9214084a01f743693a944cc293'], + }), + ('IPC::Run3', '0.048', { + 'source_tmpl': 'IPC-Run3-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['3d81c3cc1b5cff69cca9361e2c6e38df0352251ae7b41e2ff3febc850e463565'], + }), + ('File::Find::Rule', '0.34', { + 'source_tmpl': 'File-Find-Rule-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RC/RCLAMP'], + 'checksums': ['7e6f16cc33eb1f29ff25bee51d513f4b8a84947bbfa18edb2d3cc40a2d64cafe'], + }), + ('SQL::Statement', '1.414', { + 'source_tmpl': 'SQL-Statement-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['dde8bdcfa6a136eedda06519ba0f3efaec085c39db0df9c472dc0ec6cd781a49'], + }), + ('File::Slurp', '9999.32', { + 'source_tmpl': 'File-Slurp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB'], + 'checksums': ['4c3c21992a9d42be3a79dd74a3c83d27d38057269d65509a2f555ea0fb2bc5b0'], + }), + ('Package::Stash', '0.40', { + 'source_tmpl': 'Package-Stash-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['5a9722c6d9cb29ee133e5f7b08a5362762a0b5633ff5170642a5b0686e95e066'], + }), + ('Data::OptList', '0.112', { + 'source_tmpl': 'Data-OptList-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['62c60ccaae88d5339ae36bcc8940b03388cf84adbf27828b1f8b300307103bab'], + }), + ('Package::Constants', '0.06', { + 'source_tmpl': 'Package-Constants-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['0b58be78706ccc4e4bd9bbad41767470427fd7b2cfad749489de101f85bc5df5'], + }), + ('CPANPLUS', '0.9914', { + 'source_tmpl': 'CPANPLUS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['76c3e5da623a4af60fe64adec448fb1f8e0cae9f6798a36b68865974044e9b67'], + }), + ('IO::Tty', '1.16', { + 'source_tmpl': 'IO-Tty-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['8f1a09c070738adc695df903f2e7f74308dd8d991b914c0bc390a0e6021294dd'], + }), + ('Text::Soundex', '3.05', { + 'source_tmpl': 'Text-Soundex-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['f6dd55b4280b25dea978221839864382560074e1d6933395faee2510c2db60ed'], + }), + ('Lingua::EN::PluralToSingular', '0.21', { + 'source_tmpl': 'Lingua-EN-PluralToSingular-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BK/BKB'], + 'checksums': ['f8a8b7de28c25c96190d7f48c90b5ad9b9bf517f3835c77641f0e8fa546c0d1d'], + }), + ('Want', '0.29', { + 'source_tmpl': 'Want-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RO/ROBIN'], + 'checksums': ['b4e4740b8d4cb783591273c636bd68304892e28d89e88abf9273b1de17f552f7'], + }), + ('Mail::Util', '2.21', { + 'source_tmpl': 'MailTools-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['4ad9bd6826b6f03a2727332466b1b7d29890c8d99a32b4b3b0a8d926ee1a44cb'], + }), + ('Test::More::UTF8', '0.05', { + 'source_tmpl': 'Test-More-UTF8-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/M/MO/MONS/'], + 'checksums': ['b9f1c4b36a97cdfefaa53ed1115dd38f4b483037775f6559ee1df14acfd1ce04'], + }), + ('Text::Template', '1.61', { + 'source_tmpl': 'Text-Template-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MS/MSCHOUT'], + 'checksums': ['a295ea7d1ef241ae2640c1f7864b628f8e6f99ec14fb1da781b2f5f2168dcf09'], + }), + ('PadWalker', '2.5', { + 'source_tmpl': 'PadWalker-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/R/RO/ROBIN/'], + 'checksums': ['07b26abb841146af32072a8d68cb90176ffb176fd9268e6f2f7d106f817a0cd0'], + }), + ('Devel::Cycle', '1.12', { + 'source_tmpl': 'Devel-Cycle-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/L/LD/LDS/'], + 'checksums': ['fd3365c4d898b2b2bddbb78a46d507a18cca8490a290199547dab7f1e7390bc2'], + }), + ('Test::Memory::Cycle', '1.06', { + 'source_tmpl': 'Test-Memory-Cycle-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/P/PE/PETDANCE/'], + 'checksums': ['9d53ddfdc964cd8454cb0da4c695b6a3ae47b45839291c34cb9d8d1cfaab3202'], + }), + ('PDF::API2', '2.043', { + 'source_tmpl': 'PDF-API2-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SS/SSIMMS'], + 'checksums': ['6312f605172973fa4d017639c217b61b1a8d6c533237ce58d5aacecfa273f0b2'], + }), + ('Devel::CheckLib', '1.16', { + 'source_tmpl': 'Devel-CheckLib-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MATTN'], + 'checksums': ['869d38c258e646dcef676609f0dd7ca90f085f56cf6fd7001b019a5d5b831fca'], + }), + ('SVG', '2.87', { + 'source_tmpl': 'SVG-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['b3fa58c1c59942b4ebef003da97c3e01e531480ca29e8efbe327ff0589c0bd3c'], + }), + ('Statistics::Basic', '1.6611', { + 'source_tmpl': 'Statistics-Basic-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JE/JETTERO'], + 'checksums': ['6855ce5615fd3e1af4cfc451a9bf44ff29a3140b4e7130034f1f0af2511a94fb'], + }), + ('Log::Log4perl', '1.55', { + 'source_tmpl': 'Log-Log4perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['c4f3caa1328fdc48595ccd0d1e16c40bd74af2547552370125b4b7e5eae1ff44'], + }), + ('Math::CDF', '0.1', { + 'source_tmpl': 'Math-CDF-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CALLAHAN'], + 'checksums': ['7896bf250835ce47dcc813cb8cf9dc576c5455de42e822dcd7d8d3fef2125565'], + }), + ('Array::Utils', '0.5', { + 'source_tmpl': 'Array-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/Z/ZM/ZMIJ/Array'], + 'checksums': ['89dd1b7fcd9b4379492a3a77496e39fe6cd379b773fd03a6b160dd26ede63770'], + }), + ('File::Grep', '0.02', { + 'source_tmpl': 'File-Grep-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MN/MNEYLON'], + 'checksums': ['462e15274eb6278521407ea302d9eea7252cd44cab2382871f7de833d5f85632'], + }), + ('File::Path', '2.18', { + 'source_tmpl': 'File-Path-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JK/JKEENAN'], + 'checksums': ['980f0a17edb353df46e9cd7b357f9f5929cde0f80c45fd7a06cf7e0e8bd6addd'], + }), + ('File::Slurper', '0.013', { + 'source_tmpl': 'File-Slurper-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['e2f6a4029a6a242d50054044f1fb86770b9b5cc4daeb1a967f91ffb42716a8c5'], + }), + ('File::Temp', '0.2311', { + 'source_tmpl': 'File-Temp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['2290d61bf5c39882fc3311da9ce1c7f42dbdf825ae169e552c59fe4598b36f4a'], + }), + ('Set::Object', '1.42', { + 'source_tmpl': 'Set-Object-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/R/RU/RURBAN/'], + 'checksums': ['d18c5a8a233eabbd0206cf3da5b00fcdd7b37febf12a93dcc3d1c026e6fdec45'], + }), + ('Heap', '0.80', { + 'source_tmpl': 'Heap-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/J/JM/JMM/'], + 'checksums': ['ccda29f3c93176ad0fdfff4dd6f5e4ac90b370cba4b028386b7343bf64139bde'], + }), + ('Graph', '0.9725', { + 'source_tmpl': 'Graph-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['e75b0ecc9a7f62fd70f896b173d11c3fc00cdffd35c3e99286689d3ca2debefe'], + }), + ('Graph::ReadWrite', '2.10', { + 'source_tmpl': 'Graph-ReadWrite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['516c1ea9facb995dbc38d1735d58974b2399862567e731b729c8d0bc2ee5a14b'], + }), + ('PerlIO::utf8_strict', '0.009', { + 'source_tmpl': 'PerlIO-utf8_strict-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['ba82cf144820655d6d4836d12dde65f8895a3d905aeb4aa0b421249f43284c14'], + }), + ('Devel::OverloadInfo', '0.007', { + 'source_tmpl': 'Devel-OverloadInfo-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IL/ILMARI'], + 'checksums': ['21a184163b90f91f06ffc7f5de0b968356546ae9b400a9d75c573c958c246222'], + }), + ('Sub::Identify', '0.14', { + 'source_tmpl': 'Sub-Identify-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RG/RGARCIA'], + 'checksums': ['068d272086514dd1e842b6a40b1bedbafee63900e5b08890ef6700039defad6f'], + }), + ('Digest::MD5::File', '0.08', { + 'source_tmpl': 'Digest-MD5-File-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DM/DMUEY'], + 'checksums': ['adb43a54e32627b4f7e57c9640e6eb06d0bb79d8ea54cd0bd79ed35688fb1218'], + }), + ('String::RewritePrefix', '0.008', { + 'source_tmpl': 'String-RewritePrefix-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['e45a31d6914e8f5fc722ef48d8819400dafc02105e0c61414aabbf01bce208eb'], + }), + ('Getopt::Long::Descriptive', '0.110', { + 'source_tmpl': 'Getopt-Long-Descriptive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['025402c0494a5c878038f0666f41ca1230ed0d689467df9211382ff3a355be86'], + }), + ('App::Cmd', '0.334', { + 'source_tmpl': 'App-Cmd-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['22e31e0f8f7b8c4303ad62b0ab1f941fcf598ca6e3a146b7e482e5870d6d58d3'], + }), + ('Path::Tiny', '0.122', { + 'source_tmpl': 'Path-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['4bc6f76d0548ccd8b38cb66291a885bf0de453d0167562c7b82e8861afdcfb7c'], + }), + ('Carp::Clan', '6.08', { + 'source_tmpl': 'Carp-Clan-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['c75f92e34422cc5a65ab05d155842b701452434e9aefb649d6e2289c47ef6708'], + }), + ('Sub::Exporter::ForMethods', '0.100054', { + 'source_tmpl': 'Sub-Exporter-ForMethods-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['eef61c9421688bb3a7beaca71623df11c8a749307ae428abdabc556e2bfafc3e'], + }), + ('MooseX::Types', '0.50', { + 'source_tmpl': 'MooseX-Types-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['9cd87b3492cbf0be9d2df9317b2adf9fc30663770e69906654bea3f41b17cb08'], + }), + ('Variable::Magic', '0.62', { + 'source_tmpl': 'Variable-Magic-%(version)s.tar.gz', + 'source_urls': ['https://www.cpan.org/authors/id/V/VP/VPIT/'], + 'checksums': ['3f9a18517e33f006a9c2fc4f43f01b54abfe6ff2eae7322424f31069296b615c'], + }), + ('B::Hooks::EndOfScope', '0.26', { + 'source_tmpl': 'B-Hooks-EndOfScope-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['39df2f8c007a754672075f95b90797baebe97ada6d944b197a6352709cb30671'], + }), + ('namespace::clean', '0.27', { + 'source_tmpl': 'namespace-clean-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RI/RIBASUSHI'], + 'checksums': ['8a10a83c3e183dc78f9e7b7aa4d09b47c11fb4e7d3a33b9a12912fd22e31af9d'], + }), + ('namespace::autoclean', '0.29', { + 'source_tmpl': 'namespace-autoclean-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['45ebd8e64a54a86f88d8e01ae55212967c8aa8fed57e814085def7608ac65804'], + }), + ('File::pushd', '1.016', { + 'source_tmpl': 'File-pushd-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['d73a7f09442983b098260df3df7a832a5f660773a313ca273fa8b56665f97cdc'], + }), + ('MooseX::Types::Perl', '0.101343', { + 'source_tmpl': 'MooseX-Types-Perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['f084beaf3c33209c68d05d4dbc24c25d604a6458b9738d96dceb086c8ef1325a'], + }), + ('Role::Tiny', '2.002004', { + 'source_tmpl': 'Role-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['d7bdee9e138a4f83aa52d0a981625644bda87ff16642dfa845dcb44d9a242b45'], + }), + ('Specio', '0.48', { + 'source_tmpl': 'Specio-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['0c85793580f1274ef08173079131d101f77b22accea7afa8255202f0811682b2'], + }), + ('Params::ValidationCompiler', '0.30', { + 'source_tmpl': 'Params-ValidationCompiler-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['dc5bee23383be42765073db284bed9fbd819d4705ad649c20b644452090d16cb'], + }), + ('Log::Dispatch', '2.70', { + 'source_tmpl': 'Log-Dispatch-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['a3d91cc52467d3a3c6683103f3df4472d71e405a45f553289448713ac4293f21'], + }), + ('String::Flogger', '1.101245', { + 'source_tmpl': 'String-Flogger-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['aa03c08e01f802a358c175c6093c02adf9688659a087a8ddefdc3e9cef72640b'], + }), + ('Log::Dispatchouli', '2.023', { + 'source_tmpl': 'Log-Dispatchouli-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['c4ac41b9729b71439682b34dd2772b040b5adb9e1a611d30322c01f4608e0cf2'], + }), + ('Data::Section', '0.200007', { + 'source_tmpl': 'Data-Section-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['cd937e5b70e34aab885ff414e2a6d19e4783b7c28fc3cda5145b230514ebb4de'], + }), + ('Software::License', '0.104001', { + 'source_tmpl': 'Software-License-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['51386fdee57de4d38187ad3ffd7c5482431123bbf883f7abc28e0929fb46c387'], + }), + ('MooseX::SetOnce', '0.201', { + 'source_tmpl': 'MooseX-SetOnce-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['f55734d9823cab6c77cace28406e6deafa16071d2f574d5c394060def1c07c87'], + }), + ('Term::Encoding', '0.03', { + 'source_tmpl': 'Term-Encoding-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['95ba9687d735d25a3cbe64508d7894f009c7fa2a1726c3e786e9e21da2251d0b'], + }), + ('Config::MVP', '2.200012', { + 'source_tmpl': 'Config-MVP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['d8a6069be317a866d8041b1bb7cfafe34014f19743891f27a5e42a31b5c0ea75'], + }), + ('Throwable', '1.000', { + 'source_tmpl': 'Throwable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['023aac67baad5b7bcdc08dc858ea5e6a8ddb0e291d15dd6d24818cdd702d318f'], + }), + ('Sub::Quote', '2.006006', { + 'source_tmpl': 'Sub-Quote-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['6e4e2af42388fa6d2609e0e82417de7cc6be47223f576592c656c73c7524d89d'], + }), + ('Role::Identifiable::HasIdent', '0.008', { + 'source_tmpl': 'Role-Identifiable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['e2b145e97b2526cd2b4fd32c208787f292d3c3bedda5c7ad224fc53c3bf22d71'], + }), + ('Role::HasMessage', '0.006', { + 'source_tmpl': 'Role-HasMessage-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['f6a6dbe0476ff95ee1ffbef825eb18d9b02b0618deba4686e7c63b99d576d4d3'], + }), + ('MooseX::OneArgNew', '0.006', { + 'source_tmpl': 'MooseX-OneArgNew-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['9bd616fb00a03d28509f46b9a541f7eeb26211999d3941f403a2561921406630'], + }), + ('MooseX::Role::Parameterized', '1.11', { + 'source_tmpl': 'MooseX-Role-Parameterized-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['1cfe766c5d7f0ecab57f733dcca430a2a2acd6b995757141b940ade3692bec9e'], + }), + ('MooseX::LazyRequire', '0.11', { + 'source_tmpl': 'MooseX-LazyRequire-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['ef620c1e019daf9cf3f23a943d25a94c91e93ab312bcd63be2e9740ec0b94288'], + }), + ('Mixin::Linewise::Readers', '0.110', { + 'source_tmpl': 'Mixin-Linewise-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['a7f120b7aa82dfb1a5ad1aa11abd33232b26a2b09c654e649e97a3c2128b1d8b'], + }), + ('Config::INI', '0.027', { + 'source_tmpl': 'Config-INI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['12eb8b7d43ab13db443b3c7110c8b70a264c19f78ff06ab8823e11f86a4f330e'], + }), + ('String::Truncate', '1.100602', { + 'source_tmpl': 'String-Truncate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['aaa3d4eec01136921484139133eb75d5c571fe51b0ad329f089e6d469a235f6e'], + }), + ('Pod::Eventual', '0.094002', { + 'source_tmpl': 'Pod-Eventual-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['80194f3fe66dd8bd91282eb3610f5c7cac8dc5a0cd51a81c4d56a9ec18fea2bc'], + }), + ('Pod::Elemental', '0.103005', { + 'source_tmpl': 'Pod-Elemental-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['824336ec18326e3b970e7815922b3921b0a821d2ee0e50b0c5b2bc327f99615e'], + }), + ('Pod::Weaver', '4.018', { + 'source_tmpl': 'Pod-Weaver-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['8ca92ec948974023194197c058e33a98ad00a88561f5bf7fe672329227a910b7'], + }), + ('Dist::Zilla', '6.025', { + 'source_tmpl': 'Dist-Zilla-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['07798e270e5d904d1071e2b421309b732d0be7d682f4d9487945e815012726cc'], + }), + ('XML::RegExp', '0.04', { + 'source_tmpl': 'XML-RegExp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TJ/TJMATHER'], + 'checksums': ['df1990096036085c8e2d45904fe180f82bfed40f1a7e05243f334ea10090fc54'], + }), + ('XML::DOM', '1.46', { + 'source_tmpl': 'XML-DOM-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TJ/TJMATHER'], + 'checksums': ['8ba24b0b459b01d6c5e5b0408829c7d5dfe47ff79b3548c813759048099b175e'], + }), + ('Data::Dump', '1.25', { + 'source_tmpl': 'Data-Dump-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GARU'], + 'checksums': ['a4aa6e0ddbf39d5ad49bddfe0f89d9da864e3bc00f627125d1bc580472f53fbd'], + }), + ('File::Next', '1.18', { + 'source_tmpl': 'File-Next-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PETDANCE'], + 'checksums': ['f900cb39505eb6e168a9ca51a10b73f1bbde1914b923a09ecd72d9c02e6ec2ef'], + }), + ('App::cpanminus', '1.7046', { + 'source_tmpl': 'App-cpanminus-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['3e8c9d9b44a7348f9acc917163dbfc15bd5ea72501492cea3a35b346440ff862'], + }), + ('Parallel::ForkManager', '2.02', { + 'source_tmpl': 'Parallel-ForkManager-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/Y/YA/YANICK'], + 'checksums': ['c1b2970a8bb666c3de7caac4a8f4dbcc043ab819bbc337692ec7bf27adae4404'], + }), + ('Logger::Simple', '2.0', { + 'source_tmpl': 'Logger-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TS/TSTANLEY'], + 'checksums': ['2e63fd3508775b5902132ba1bfb03b42bee468dfaf35dfe42e1909ff6d291b2d'], + }), + ('Scalar::Util::Numeric', '0.40', { + 'source_tmpl': 'Scalar-Util-Numeric-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHOCOLATE'], + 'checksums': ['d7501b6d410703db5b1c1942fbfc41af8964a35525d7f766058acf5ca2cc4440'], + }), + ('YAML', '1.30', { + 'source_tmpl': 'YAML-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TI/TINITA'], + 'checksums': ['5030a6d6cbffaf12583050bf552aa800d4646ca9678c187add649227f57479cd'], + }), + ('Object::InsideOut', '4.05', { + 'source_tmpl': 'Object-InsideOut-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'], + 'checksums': ['9dfd6ca2822724347e0eb6759d00709425814703ad5c66bdb6214579868bcac4'], + }), + ('Thread::Queue', '3.13', { + 'source_tmpl': 'Thread-Queue-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JD/JDHEDDEN'], + 'checksums': ['6ba3dacddd2fbb66822b4aa1d11a0a5273cd04c825cb3ff31c20d7037cbfdce8'], + }), + ('Time::HiRes', '1.9764', { + 'source_tmpl': 'Time-HiRes-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], + 'checksums': ['9841be5587bfb7cd1f2fe267b5e5ac04ce25e79d5cc77e5ef9a9c5abd101d7b1'], + }), + ('Term::ReadLine::Gnu', '1.42', { + 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], + 'checksums': ['3c5f1281da2666777af0f34de0289564e6faa823aea54f3945c74c98e95a5e73'], + }), + ('ExtUtils::MakeMaker', '7.64', { + 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['4a6ac575815c0413b1f58967043cc9f2e166446b73c687f9bc62b5eaed9464a0'], + }), + ('List::Util', '1.63', { + 'source_tmpl': 'Scalar-List-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['cafbdf212f6827dc9a0dd3b57b6ee50e860586d7198228a33262d55c559eb2a9'], + }), + ('Module::CoreList', '5.20220820', { + 'source_tmpl': 'Module-CoreList-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['708effbbf04158b087d34d8acc707f35bdab9dccc61b41d432cb6d995d137f43'], + }), + ('Module::Metadata', '1.000037', { + 'source_tmpl': 'Module-Metadata-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['8d5a74c1b07e145edda254602fedf19c0dd0c2d9688a370afdaff89c32cba629'], + }), + ('Params::Check', '0.38', { + 'source_tmpl': 'Params-Check-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['f0c9d33876c36b1bca1475276d26d2efaf449b256d7cc8118fae012e89a26290'], + }), + ('Locale::Maketext::Simple', '0.21', { + 'source_tmpl': 'Locale-Maketext-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JE/JESSE'], + 'checksums': ['b009ff51f4fb108d19961a523e99b4373ccf958d37ca35bf1583215908dca9a9'], + }), + ('Perl::OSType', '1.010', { + 'source_tmpl': 'Perl-OSType-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['e7ed4994b5d547cb23aadb84dc6044c5eb085d5a67a6c5624f42542edd3403b2'], + }), + ('IPC::Cmd', '1.04', { + 'source_tmpl': 'IPC-Cmd-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['d110a0f60e35c65721454200f0d2f0f8965529a2add9649d1fa6f4f9eccb6430'], + }), + ('Pod::Escapes', '1.07', { + 'source_tmpl': 'Pod-Escapes-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['dbf7c827984951fb248907f940fd8f19f2696bc5545c0a15287e0fbe56a52308'], + }), + ('if', '0.0608', { + 'source_tmpl': 'if-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['37206e10919c4d99273020008a3581bf0947d364e859b8966521c3145b4b3700'], + }), + ('Test', '1.26', { + 'source_tmpl': 'Test-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JE/JESSE'], + 'checksums': ['f7701bd28e05e7f82fe9a181bbab38f53fa6aeae48d2a810da74d1b981d4f392'], + }), + ('ExtUtils::Constant', '0.25', { + 'source_tmpl': 'ExtUtils-Constant-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NW/NWCLARK'], + 'checksums': ['6933d0e963b62281ef7561068e6aecac8c4ac2b476b2bba09ab0b90fbac9d757'], + }), + ('ExtUtils::CBuilder', '0.280236', { + 'source_tmpl': 'ExtUtils-CBuilder-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AM/AMBS'], + 'checksums': ['abc21827eb8a513171bf7fdecefce9945132cb76db945036518291f607b1491f'], + }), + ('Carp::Heavy', '1.50', { + 'source_tmpl': 'Carp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['f5273b4e1a6d51b22996c48cb3a3cbc72fd456c4038f5c20b127e2d4bcbcebd9'], + }), + ('Pod::Simple', '3.43', { + 'source_tmpl': 'Pod-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KH/KHW'], + 'checksums': ['65abe3f5363fa4cdc108f5ad9ce5ce91e7a39186a1b297bb7a06fa1b0f45d377'], + }), + ('Socket', '2.036', { + 'source_tmpl': 'Socket-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['1cd8272bccde8098183a60a274b3eda0764cc6984db97f5474b28bebfe2c6b70'], + }), + ('Time::Local', '1.30', { + 'source_tmpl': 'Time-Local-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['c7744f6b2986b946d3e2cf034df371bee16cdbafe53e945abb1a542c4f8920cb'], + }), + ('Storable', '3.25', { + 'source_tmpl': 'Storable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NW/NWCLARK'], + 'checksums': ['e1e96b24a076792fde52154789fe4b76034b9ad39c8a1a819ead77d50d5f1817'], + }), + ('ExtUtils::ParseXS', '3.44', { + 'source_tmpl': 'ExtUtils-ParseXS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['77effdf31af36ef656f09aa7c15356d238dab6d1afaa7278ae15c1b6bcf86266'], + }), + ('Pod::Man', '4.14', { + 'source_tmpl': 'podlators-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RR/RRA'], + 'checksums': ['7af1c41de34b2e4dbff700a29d7387549c2b6cf16142214450c924707ddb0f82'], + }), + ('Mozilla::CA', '20211001', { + 'source_tmpl': 'Mozilla-CA-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AB/ABH'], + 'checksums': ['122c8900000a9d388aa8e44f911cab6c118fe8497417917a84a8ec183971b449'], + }), + ('Test::More', '1.302191', { + 'source_tmpl': 'Test-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['a82f652bc4f2ef1ddcae99d04fc0f8924a35386066a2ab363aabf8372bc5a7ab'], + }), + ('Test::RequiresInternet', '0.05', { + 'source_tmpl': 'Test-RequiresInternet-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MALLEN'], + 'checksums': ['bba7b32a1cc0d58ce2ec20b200a7347c69631641e8cae8ff4567ad24ef1e833e'], + }), + ('LWP::Protocol::https', '6.10', { + 'source_tmpl': 'LWP-Protocol-https-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['cecfc31fe2d4fc854cac47fce13d3a502e8fdfe60c5bc1c09535743185f2a86c'], + }), + ('Module::Load', '0.36', { + 'source_tmpl': 'Module-Load-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['d825020ac00b220e89f9524e24d838f9438b072fcae8c91938e4026677bef6e0'], + }), + ('Module::Load::Conditional', '0.74', { + 'source_tmpl': 'Module-Load-Conditional-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['54c354a9393820f1ebc2a095da084ea0392dcbccb0cb38a187a71831cc60a730'], + }), + ('parent', '0.238', { + 'source_tmpl': 'parent-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CO/CORION'], + 'checksums': ['38f58fdef3e28a194c9c8d0dc5d02672faf93c069f40c5bcb1fabeadbbc4d2d1'], + }), + ('Net::Domain', '3.14', { + 'source_tmpl': 'libnet-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['153c8eb8ef0f19cf2c631d5b45d05de98516937f34e261125ef242fba1fe2ea4'], + }), + ('Scalar::Util', '1.63', { + 'source_tmpl': 'Scalar-List-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['cafbdf212f6827dc9a0dd3b57b6ee50e860586d7198228a33262d55c559eb2a9'], + }), + ('Text::ParseWords', '3.31', { + 'source_tmpl': 'Text-ParseWords-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['2ae555ba084d75b2b8feeeb8d1a00911276815ada86bccb1452236964d5a2fc7'], + }), + ('Encode', '3.19', { + 'source_tmpl': 'Encode-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DANKOGAI'], + 'checksums': ['9163f848eef69e4d4cc8838397f0861fd9ea7ede001117dbd9694f8d95052ef5'], + }), + ('constant', '1.33', { + 'source_tmpl': 'constant-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['79965d4130eb576670e27ca0ae6899ef0060c76da48b02b97682166882f1b504'], + }), + ('Data::Dumper', '2.183', { + 'source_tmpl': 'Data-Dumper-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NW/NWCLARK'], + 'checksums': ['e42736890b7dae1b37818d9c5efa1f1fdc52dec04f446a33a4819bf1d4ab5ad3'], + }), + ('Cwd', '3.75', { + 'source_tmpl': 'PathTools-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['a558503aa6b1f8c727c0073339081a77888606aa701ada1ad62dd9d8c3f945a2'], + }), + ('MIME::Base64', '3.16', { + 'source_tmpl': 'MIME-Base64-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CA/CAPOEIRAB'], + 'checksums': ['77f73d6f7aeb8d33be08b0d8c2617f9b6c77fb7fc45422d507ca8bafe4246017'], + }), + ('ExtUtils::CppGuess', '0.26', { + 'source_tmpl': 'ExtUtils-CppGuess-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['c8b362b860172a4076acee00438f52b86464f2c500702cfcf7527811ff9a683e'], + }), + ('XSLoader', '0.24', { + 'source_tmpl': 'XSLoader-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SA/SAPER'], + 'checksums': ['e819a35a6b8e55cb61b290159861f0dc00fe9d8c4f54578eb24f612d45c8d85f'], + }), + ('AutoLoader', '5.74', { + 'source_tmpl': 'AutoLoader-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SM/SMUELLER'], + 'checksums': ['2fac75b05309f71a6871804cd25e1a3ba0a28f43f294fb54528077558da3aff4'], + }), + ('URI::Escape', '5.12', { + 'source_tmpl': 'URI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['66abe0eaddd76b74801ecd28ec1411605887550fc0a45ef6aa744fdad768d9b3'], + }), + ('Set::IntervalTree', '0.12', { + 'source_tmpl': 'Set-IntervalTree-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SL/SLOYD'], + 'checksums': ['6fd4000e4022968e2ce5b83c07b189219ef1925ecb72977b52a6f7d76adbc349'], + }), + ('MCE::Mutex', '1.879', { + 'source_tmpl': 'MCE-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARIOROY'], + 'checksums': ['9c4cf39838b5c113448799af451b3d64b54e0de39d635536d7e85e8bdc5888dc'], + }), + ('Text::CSV_XS', '1.48', { + 'source_tmpl': 'Text-CSV_XS-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HM/HMBRAND'], + 'checksums': ['b72a2ed61c63561f6bfc1d5986a09f3ac252bdfda5c1c898b0b677641ce1e8bf'], + }), + ('DBD::CSV', '0.59', { + 'source_tmpl': 'DBD-CSV-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HM/HMBRAND'], + 'checksums': ['2a5fadd1d50c18ea023560d39c2cc660ae2a65fa99d9b8244edca7d2dcce9dc0'], + }), + ('Array::Transpose', '0.06', { + 'source_tmpl': 'Array-Transpose-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MR/MRDVT'], + 'checksums': ['d58667f64381a105f375226f592d0af71068e640a5a9f4d5ecf27c90feb32676'], + }), + ('Config::Simple', '4.58', { + 'source_tmpl': 'Config-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHERZODR'], + 'checksums': ['dd9995706f0f9384a15ccffe116c3b6e22f42ba2e58d8f24ed03c4a0e386edb4'], + }), + ('Business::ISBN', '3.007', { + 'source_tmpl': 'Business-ISBN-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BD/BDFOY'], + 'checksums': ['50cc4686dd21c9537b49a231d71711e814ebd2f19aa4ca331baf92ff2de5ce19'], + }), + ('Business::ISBN::Data', '20210112.006', { + 'source_tmpl': 'Business-ISBN-Data-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BD/BDFOY'], + 'checksums': ['98c2cfb266b5fdd016989abaa471d9dd4c1d593c508a6f01f66d184d5fee8bae'], + }), + ('common::sense', '3.75', { + 'source_tmpl': 'common-sense-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['a86a1c4ca4f3006d7479064425a09fa5b6689e57261fcb994fe67d061cba0e7e'], + }), + ('IO::Compress::Bzip2', '2.201', { + 'source_tmpl': 'IO-Compress-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PM/PMQS'], + 'checksums': ['f6c55c4e39cfaa3219965dd3b36c9de1edee9a82a10a9cadeb3b74a9ceeeaaad'], + }), + ('JSON::XS', '4.03', { + 'source_tmpl': 'JSON-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['515536f45f2fa1a7e88c8824533758d0121d267ab9cb453a1b5887c8a56b9068'], + }), + ('List::MoreUtils::XS', '0.430', { + 'source_tmpl': 'List-MoreUtils-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['e8ce46d57c179eecd8758293e9400ff300aaf20fefe0a9d15b9fe2302b9cb242'], + }), + ('Authen::NTLM', '1.09', { + 'source_tmpl': 'NTLM-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NB/NBEBOUT'], + 'checksums': ['c823e30cda76bc15636e584302c960e2b5eeef9517c2448f7454498893151f85'], + }), + ('Types::Serialiser', '1.01', { + 'source_tmpl': 'Types-Serialiser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/ML/MLEHMANN'], + 'checksums': ['f8c7173b0914d0e3d957282077b366f0c8c70256715eaef3298ff32b92388a80'], + }), + ('XML::SAX::Expat', '0.51', { + 'source_tmpl': 'XML-SAX-Expat-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BJ/BJOERN'], + 'checksums': ['4c016213d0ce7db2c494e30086b59917b302db8c292dcd21f39deebd9780c83f'], + }), + ('Inline', '0.86', { + 'source_tmpl': 'Inline-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IN/INGY'], + 'checksums': ['510a7de2d011b0db80b0874e8c0f7390010991000ae135cff7474df1e6d51e3a'], + }), + ('Sys::Info::Base', '0.7807', { + 'source_tmpl': 'Sys-Info-Base-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK/'], + 'checksums': ['132362b0046e8dc4f12e1560903623a88a8871d09bf1c29d93d48d3f4a582acb'], + }), + ('Sys::Info', '0.7811', { + 'source_tmpl': 'Sys-Info-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK/'], + 'checksums': ['566482bff3427c198d7955468ed945a8e736c4a2925151fdef96801ef8a401e1'], + }), + ('HTML::Template', '2.97', { + 'source_tmpl': 'HTML-Template-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SA/SAMTREGAR/'], + 'checksums': ['6547af61f3aa85793f8616190938d677d7995fb3b720c16258040bc935e2129f'], + }), + ('MIME::Charset', '1.013', { + 'source_tmpl': 'MIME-Charset-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/'], + 'checksums': ['491c5602eeb2c5c91866fb98fc22deb5e56374909702fbb873f043c770a3b7b8'], + }), + ('Unicode::LineBreak', '2019.001', { + 'source_tmpl': 'Unicode-LineBreak-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEZUMI/'], + 'checksums': ['486762e4cacddcc77b13989f979a029f84630b8175e7fef17989e157d4b6318a'], + }), + ('String::Print', '0.94', { + 'source_tmpl': 'String-Print-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['9b3cd677adb7a40cb183bd6c60db80d96adcabd5aae27e324e3ee37e3275229b'], + }), + ('Log::Report', '1.33', { + 'source_tmpl': 'Log-Report-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['49624da338fd7d57288fa22a47241476fb5ce2f6008181f786c7830fe5af01ff'], + }), + ('Log::Report::Optional', '1.07', { + 'source_tmpl': 'Log-Report-Optional-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV/'], + 'checksums': ['b2658b53176df5afa5d02789368715c86b98c8d04ecd930252bcd7f832cc6224'], + }), + ('Sys::Info::Driver::Unknown', '0.79', { + 'source_tmpl': 'Sys-Info-Driver-Unknown-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK/'], + 'checksums': ['02408843c8e36ea3d507e9f33fee48d6908543829ebe320f13d1bfe76af31e09'], + }), + ('Sys::Info::Driver::Linux', '0.7905', { + 'source_tmpl': 'Sys-Info-Driver-Linux-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BU/BURAK/'], + 'checksums': ['899c329bd3508ec5849ad0e5dadfa7c3679bbacaea9dda12404a7893032e8b7b'], + }), + ('Unix::Processors', '2.046', { + 'source_tmpl': 'Unix-Processors-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/W/WS/WSNYDER/'], + 'checksums': ['3973ebdc44682c9c15c776f66e8be242cb4ff1dd52caf43ff446b74d4dccca06'], + }), + ('local::lib', '2.000029', { + 'source_tmpl': 'local-lib-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG/'], + 'checksums': ['8df87a10c14c8e909c5b47c5701e4b8187d519e5251e87c80709b02bb33efdd7'], + }), + ('Module::Path', '0.19', { + 'source_tmpl': 'Module-Path-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB/'], + 'checksums': ['b33179ce4dd73dfcde7d46808804b9ffbb11db0245fe455a7d001747562feaca'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Phantompeakqualtools/Phantompeakqualtools-1.2.2-foss-2021b.eb b/easybuild/easyconfigs/p/Phantompeakqualtools/Phantompeakqualtools-1.2.2-foss-2021b.eb new file mode 100644 index 000000000000..841410ab2b3b --- /dev/null +++ b/easybuild/easyconfigs/p/Phantompeakqualtools/Phantompeakqualtools-1.2.2-foss-2021b.eb @@ -0,0 +1,57 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'Tarball' + +name = 'Phantompeakqualtools' +version = '1.2.2' + +homepage = "https://github.com/kundajelab/phantompeakqualtools" +description = """It computes informative enrichment and quality measures +for ChIP-seq/DNase-seq/FAIRE-seq/MNase-seq data.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/kundajelab/%(namelower)s/archive/refs/tags/'] +sources = ['%(version)s.tar.gz'] +checksums = ['b31263b64aefe97bdc4d7fae138f515a7d7a60cd05031d38dd89a10f9ee10cd1'] + +dependencies = [ + ('R', '4.1.2'), + ('SAMtools', '1.14'), + ('R-bundle-Bioconductor', '3.14', '-R-%(rver)s'), +] + +preinstall_cmd = "rm spp_1.14.tar.gz" + +exts_defaultclass = 'RPackage' +exts_default_options = { + 'source_urls': [ + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], + 'source_tmpl': '%(name)s_%(version)s.tar.gz', +} + +exts_list = [ + # phantompeakqualtools requires spp 1.14 or 1.15.x (1.16 is not supported) + ('spp', '1.15.5', { + 'checksums': ['1c486792ac3feb194c95efe7a8a98eab4331877ba901d774561b8839c958f924'], + }), +] + +modextrapaths = { + 'PATH': '', + 'R_LIBS_SITE': '', +} + +sanity_check_paths = { + 'files': ['run_spp.R'], + 'dirs': [], +} + +sanity_check_commands = [ + 'run_spp.R 2>&1 | grep "Usage: Rscript run_spp.R "', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PnetCDF/PnetCDF-1.12.3-gompi-2022a.eb b/easybuild/easyconfigs/p/PnetCDF/PnetCDF-1.12.3-gompi-2022a.eb new file mode 100644 index 000000000000..44165d52dd22 --- /dev/null +++ b/easybuild/easyconfigs/p/PnetCDF/PnetCDF-1.12.3-gompi-2022a.eb @@ -0,0 +1,35 @@ +easyblock = 'ConfigureMake' + +name = 'PnetCDF' +version = '1.12.3' + +homepage = 'https://parallel-netcdf.github.io/' +description = "Parallel netCDF: A Parallel I/O Library for NetCDF File Access" + +toolchain = {'name': 'gompi', 'version': '2022a'} + +source_urls = ['https://parallel-netcdf.github.io/Release'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['439e359d09bb93d0e58a6e3f928f39c2eae965b6c97f64e67cd42220d6034f77'] + +builddependencies = [ + ('Autotools', '20220317'), + ('Perl', '5.34.1'), +] + +preconfigopts = "autoreconf -f -i && " + +configopts = ['', '--enable-shared'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['ncmpidiff', 'ncmpidump', 'ncmpigen', 'ncoffsets', + 'ncvalidator', 'pnetcdf-config', 'pnetcdf_version']] + + ['lib/lib%(namelower)s.a', 'lib/lib%%(namelower)s.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +modextrapaths = { + 'PNETCDF': '', +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/Porechop/Porechop-0.2.4-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/Porechop/Porechop-0.2.4-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..38cc2f58c84f --- /dev/null +++ b/easybuild/easyconfigs/p/Porechop/Porechop-0.2.4-GCCcore-11.2.0.eb @@ -0,0 +1,37 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics + +easyblock = 'PythonPackage' + +name = 'Porechop' +version = '0.2.4' + +homepage = 'https://github.com/rrwick/Porechop' +description = """Porechop is a tool for finding and removing adapters from Oxford Nanopore reads. + Adapters on the ends of reads are trimmed off, and when a read has an adapter in its middle, + it is treated as chimeric and chopped into separate reads. Porechop performs thorough alignments + to effectively find adapters, even at low sequence identity""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +source_urls = ['https://github.com/rrwick/Porechop/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['44b499157d933be43f702cec198d1d693dcb9276e3c545669be63c2612493299'] + +builddependencies = [ + ('binutils', '2.37'), +] + +dependencies = [ + ('Python', '3.9.6'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +sanity_check_commands = ['%(namelower)s -h'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2021.2.13-foss-2021b.eb b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2021.2.13-foss-2021b.eb new file mode 100644 index 000000000000..c0193438da7d --- /dev/null +++ b/easybuild/easyconfigs/p/PyOpenCL/PyOpenCL-2021.2.13-foss-2021b.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'PyOpenCL' +version = '2021.2.13' + +homepage = "https://mathema.tician.de/software/pyopencl/" +description = """PyOpenCL lets you access GPUs and other massively parallel compute devices from Python.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('pocl', '1.8'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('appdirs', '1.4.4', { + 'checksums': ['7d5d0167b2b1ba821647616af46a749d1c653740dd0d2415100fe26e27afdf41'], + }), + ('pytools', '2021.2.9', { + 'checksums': ['db6cf83c9ba0a165d545029e2301621486d1e9ef295684072e5cd75316a13755'], + }), + ('pyopencl', version, { + 'preinstallopts': "./configure.py --cl-pretend-version=1.2 && ", + 'checksums': ['8b969c3a9d4153adc6b0915301ffdf626a3784b869a964645de100ae60de7b06'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyStan/PyStan-2.19.1.1-foss-2020b.eb b/easybuild/easyconfigs/p/PyStan/PyStan-2.19.1.1-foss-2020b.eb new file mode 100644 index 000000000000..766b4a7e03ff --- /dev/null +++ b/easybuild/easyconfigs/p/PyStan/PyStan-2.19.1.1-foss-2020b.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonBundle' + +name = 'PyStan' +version = '2.19.1.1' + +homepage = 'https://github.com/stan-dev/pystan' +description = """Python interface to Stan, a package for Bayesian inference + using the No-U-Turn sampler, a variant of Hamiltonian Monte Carlo.""" + +toolchain = {'name': 'foss', 'version': '2020b'} + +dependencies = [ + ('Python', '3.8.6'), + ('SciPy-bundle', '2020.11'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': '%(namelower)s', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['fa8bad8dbc0da22bbe6f36af56c9abbfcf10f92df8ce627d59a36bd8d25eb038'] + }), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/PyStan/PyStan-3.5.0-foss-2021b.eb b/easybuild/easyconfigs/p/PyStan/PyStan-3.5.0-foss-2021b.eb new file mode 100644 index 000000000000..b03b97b5db6a --- /dev/null +++ b/easybuild/easyconfigs/p/PyStan/PyStan-3.5.0-foss-2021b.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'PyStan' +version = '3.5.0' + +homepage = 'https://github.com/stan-dev/pystan' +description = """Python interface to Stan, a package for Bayesian inference + using the No-U-Turn sampler, a variant of Hamiltonian Monte Carlo.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('aiohttp', '3.8.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('marshmallow', '3.17.1', { + 'checksums': ['48e2d88d4ab431ad5a17c25556d9da529ea6e966876f2a38d274082e270287f0'], + }), + ('webargs', '8.2.0', { + 'checksums': ['99d68940c452e07726485a15fef43f12f8ae6c0c5b391bcba76065d4527fb85d'], + }), + ('httpstan', '4.8.2', { + 'source_tmpl': 'httpstan-4.8.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl', + 'checksums': ['94da9bee5e13b5164934a1f0c8986a0b715da37d8a44d0e69167221bb1f334ac'], + }), + ('pysimdjson', '3.2.0', { + 'modulename': 'simdjson', + 'checksums': ['643baa0941752367761dbc091bf552bf4ca196cf67bf41ef89c90c2db2ec1477'], + }), + (name, version, { + 'modulename': 'stan', + 'source_tmpl': '%(namelower)s-%(version)s.tar.gz', + 'checksums': ['078571d071a5b7c0af59206d4994a0979f4ac4b61f4a720b640c44fe35514929'], + }), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-foss-2020b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-foss-2020b.eb index 34f2218ba3fe..68f81ba8ce2c 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-foss-2020b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-foss-2020b.eb @@ -26,6 +26,7 @@ patches = [ 'PyTorch-1.8.1_fix-faulty-asserts-and-skip-test.patch', 'PyTorch-1.8.1_increase-distributed-test-timeout.patch', 'PyTorch-1.9.0_avoid-failures-in-test_unary_ufuncs.patch', + 'PyTorch-1.9.0_fix-kineto-crash.patch', 'PyTorch-1.9.0_fix-vsx-vector-functions.patch', 'PyTorch-1.9.0_skip-lstm-serialization-test.patch', ] @@ -46,7 +47,8 @@ checksums = [ '7a6e512274f0b8673f4f207a5bc53387d88be7e79833f42d20365668b2118071', # PyTorch-1.9.0_avoid-failures-in-test_unary_ufuncs.patch 'f600e6831f8a03af007845687d1e0f65b2394ca89a9dab5178e2cdc9bd384d43', - '56a46c1690467a7fe7f6b904d152f8a3e2385305c5c29717f66b98b38022bf74', # PyTorch-1.9.0_fix-vsx-vector-functions.patch + '1ed5e125f7922ea577d43053a6652aedc21cc036157e101c0e3b9aee9029d3b0', # PyTorch-1.9.0_fix-kineto-crash.patch + 'a4733b6b16a0db4ee5f85f2b103abc29bd711cfc5253f8dd8494d2b0c1509516', # PyTorch-1.9.0_fix-vsx-vector-functions.patch # PyTorch-1.9.0_skip-lstm-serialization-test.patch '0fc14e29bd7530bcc09f4212df3c846072b1313216da86b827e102b85d695f49', ] @@ -79,9 +81,19 @@ excluded_tests = { # Bad tests: https://github.com/pytorch/pytorch/issues/60260 'distributed/elastic/utils/distributed_test', 'distributed/elastic/multiprocessing/api_test', + # These tests fail on A10s at the very least, they time out forever no matter how long the timeout is. + # Possibly related to NCCL 2.8.3: https://docs.nvidia.com/deeplearning/nccl/release-notes/rel_2-8-3.html + 'distributed/test_distributed_fork', + 'distributed/test_distributed_spawn', + # Fails on A10s: https://github.com/pytorch/pytorch/issues/63079 + 'test_optim', # Test from this suite timeout often. The process group backend is deprecated anyway 'distributed/rpc/test_process_group_agent', - ] + ], + 'POWER': [ + # Works when run alone, fails when run as part of the suite. So far only observed on PPC + 'distributed/rpc/test_tensorpipe_agent', + ], } runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-through-error --verbose %(excluded_tests)s' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b-imkl.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b-imkl.eb index a05a60e0fd08..b4662e2722d3 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b-imkl.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b-imkl.eb @@ -32,6 +32,7 @@ patches = [ 'PyTorch-1.9.0_fix-min-amount-of-devices-for-test.patch', 'PyTorch-1.9.0_fix-testnn-on-A100.patch', 'PyTorch-1.9.0_fix-use-after-destruct-in-cudaipctypes.patch', + 'PyTorch-1.9.0_fix-kineto-crash.patch', 'PyTorch-1.9.0_fix-vsx-vector-functions.patch', 'PyTorch-1.9.0_increase-test-cuda-tolerance.patch', 'PyTorch-1.9.0_increase-tolerance-for-distributed-tests.patch', @@ -64,7 +65,8 @@ checksums = [ '8e8b417782e2f3004462c32338e12685e7296d15207f3e3087dcb8015e648f98', # PyTorch-1.9.0_fix-testnn-on-A100.patch # PyTorch-1.9.0_fix-use-after-destruct-in-cudaipctypes.patch '67960bf9140baf004b07e29f7c2b338e7bc4e4e4f2c931768be44f58526e605f', - '56a46c1690467a7fe7f6b904d152f8a3e2385305c5c29717f66b98b38022bf74', # PyTorch-1.9.0_fix-vsx-vector-functions.patch + '1ed5e125f7922ea577d43053a6652aedc21cc036157e101c0e3b9aee9029d3b0', # PyTorch-1.9.0_fix-kineto-crash.patch + 'a4733b6b16a0db4ee5f85f2b103abc29bd711cfc5253f8dd8494d2b0c1509516', # PyTorch-1.9.0_fix-vsx-vector-functions.patch # PyTorch-1.9.0_increase-test-cuda-tolerance.patch '73de855ab1ed38043c7fb2a983927786b83d7547aefed926f19e554e2214838a', # PyTorch-1.9.0_increase-tolerance-for-distributed-tests.patch @@ -121,7 +123,11 @@ excluded_tests = { 'test_optim', # Test from this suite timeout often. The process group backend is deprecated anyway 'distributed/rpc/test_process_group_agent', - ] + ], + 'POWER': [ + # Works when run alone, fails when run as part of the suite. So far only observed on PPC + 'distributed/rpc/test_tensorpipe_agent', + ], } runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-through-error --verbose %(excluded_tests)s' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b.eb index 0fc9595a1b17..e7070b8d189a 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0-fosscuda-2020b.eb @@ -31,6 +31,7 @@ patches = [ 'PyTorch-1.9.0_fix-min-amount-of-devices-for-test.patch', 'PyTorch-1.9.0_fix-testnn-on-A100.patch', 'PyTorch-1.9.0_fix-use-after-destruct-in-cudaipctypes.patch', + 'PyTorch-1.9.0_fix-kineto-crash.patch', 'PyTorch-1.9.0_fix-vsx-vector-functions.patch', 'PyTorch-1.9.0_increase-test-cuda-tolerance.patch', 'PyTorch-1.9.0_increase-tolerance-for-distributed-tests.patch', @@ -63,7 +64,8 @@ checksums = [ '8e8b417782e2f3004462c32338e12685e7296d15207f3e3087dcb8015e648f98', # PyTorch-1.9.0_fix-testnn-on-A100.patch # PyTorch-1.9.0_fix-use-after-destruct-in-cudaipctypes.patch '67960bf9140baf004b07e29f7c2b338e7bc4e4e4f2c931768be44f58526e605f', - '56a46c1690467a7fe7f6b904d152f8a3e2385305c5c29717f66b98b38022bf74', # PyTorch-1.9.0_fix-vsx-vector-functions.patch + '1ed5e125f7922ea577d43053a6652aedc21cc036157e101c0e3b9aee9029d3b0', # PyTorch-1.9.0_fix-kineto-crash.patch + 'a4733b6b16a0db4ee5f85f2b103abc29bd711cfc5253f8dd8494d2b0c1509516', # PyTorch-1.9.0_fix-vsx-vector-functions.patch # PyTorch-1.9.0_increase-test-cuda-tolerance.patch '73de855ab1ed38043c7fb2a983927786b83d7547aefed926f19e554e2214838a', # PyTorch-1.9.0_increase-tolerance-for-distributed-tests.patch @@ -111,9 +113,19 @@ excluded_tests = { # Bad tests: https://github.com/pytorch/pytorch/issues/60260 'distributed/elastic/utils/distributed_test', 'distributed/elastic/multiprocessing/api_test', + # These tests fail on A10s at the very least, they time out forever no matter how long the timeout is. + # Possibly related to NCCL 2.8.3: https://docs.nvidia.com/deeplearning/nccl/release-notes/rel_2-8-3.html + 'distributed/test_distributed_fork', + 'distributed/test_distributed_spawn', + # Fails on A10s: https://github.com/pytorch/pytorch/issues/63079 + 'test_optim', # Test from this suite timeout often. The process group backend is deprecated anyway 'distributed/rpc/test_process_group_agent', - ] + ], + 'POWER': [ + # Works when run alone, fails when run as part of the suite. So far only observed on PPC + 'distributed/rpc/test_tensorpipe_agent', + ], } runtest = 'cd test && PYTHONUNBUFFERED=1 %(python)s run_test.py --continue-through-error --verbose %(excluded_tests)s' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0_fix-kineto-crash.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0_fix-kineto-crash.patch new file mode 100644 index 000000000000..928922a5ed53 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0_fix-kineto-crash.patch @@ -0,0 +1,24 @@ +Fix a crash during application shutdown visible in test_profiler on some machines. +See https://github.com/pytorch/kineto/pull/642 + +Author: Alexander Grund (TU Dresden) + +diff -aur a/third_party/kineto/libkineto/src/EventProfilerController.cpp b/third_party/kineto/libkineto/src/EventProfilerController.cpp +--- a/third_party/kineto/libkineto/src/EventProfilerController.cpp 2022-08-05 13:10:46.175716618 +0200 ++++ b/third_party/kineto/libkineto/src/EventProfilerController.cpp 2022-08-05 13:16:00.654118490 +0200 +@@ -231,9 +231,14 @@ + + // Must be called under lock + void EventProfilerController::start(CUcontext ctx) { +- profilerMap()[ctx] = unique_ptr( ++ // Avoid static initialization order fiasco: ++ // We need the profilerMap and with it all controllers to be destroyed ++ // before everything the controller accesses gets destroyed. ++ // Hence access the profilerMap after initialization of the controller. ++ auto controller = unique_ptr( + new EventProfilerController( + ctx, ConfigLoader::instance(), detail::HeartbeatMonitor::instance())); ++ profilerMap()[ctx] = std::move(controller); + } + + // Must be called under lock diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0_fix-vsx-vector-functions.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0_fix-vsx-vector-functions.patch index a3c3e0b0b859..d4ba6c36d16a 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0_fix-vsx-vector-functions.patch +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.9.0_fix-vsx-vector-functions.patch @@ -185,7 +185,7 @@ index 2a1a87aa72..5bcf818232 100644 - auto out1 = blendv(out, v_nan, ((exp.floor() != exp) & (x < zero))); - // y = 0 then 1 - return blendv(out1, one, (exp_abs == zero)); -+ return {Sleef_powf4_u10vsx(_vec0, b._vec0), Sleef_powf4_u10vsx(_vec1, b._vec1)}; ++ return {Sleef_powf4_u10vsx(_vec0, exp._vec0), Sleef_powf4_u10vsx(_vec1, exp._vec1)}; } Vec256 fmod(const Vec256& b) const { diff --git a/easybuild/easyconfigs/p/PyYAML/PyYAML-6.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/PyYAML/PyYAML-6.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..0c55d6c41a2e --- /dev/null +++ b/easybuild/easyconfigs/p/PyYAML/PyYAML-6.0-GCCcore-11.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'PyYAML' +version = '6.0' + +homepage = 'https://github.com/yaml/pyyaml' +description = "PyYAML is a YAML parser and emitter for the Python programming language." + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2'] + +builddependencies = [ + ('binutils', '2.38'), +] +dependencies = [ + ('Python', '3.10.4'), + ('libyaml', '0.2.5'), +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True +options = {'modulename': 'yaml'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/Pyomo/Pyomo-6.4.2-foss-2022a.eb b/easybuild/easyconfigs/p/Pyomo/Pyomo-6.4.2-foss-2022a.eb new file mode 100644 index 000000000000..f9c607a6ed06 --- /dev/null +++ b/easybuild/easyconfigs/p/Pyomo/Pyomo-6.4.2-foss-2022a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'Pyomo' +version = '6.4.2' + +homepage = 'https://www.pyomo.org/' +description = """ Pyomo is a Python-based open-source software package that supports a diverse set of optimization + capabilities for formulating and analyzing optimization models. """ + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [('Python', '3.10.4')] + +exts_list = [ + ('ply', '3.11', { + 'checksums': ['00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3'], + }), + ('PyUtilib', '6.0.0', { + 'checksums': ['d3c14f8ed9028a831b2bf51b8ab7776eba87e66cfc58a06b99c359aaa640f040'], + 'preinstallopts': """sed -i "s/'nose',//g" setup.py && """, + }), + (name, version, { + 'checksums': ['6f5a867e77bdd6ac2ba0da5d4a251e38543ae05eba5a0c5cf8ab39e7fa8e1ea9'], + }), +] + +use_pip = True +sanity_pip_check = True + +sanity_check_commands = ['pyomo -h'] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/p/Pysam/Pysam-0.19.1-GCC-11.3.0.eb b/easybuild/easyconfigs/p/Pysam/Pysam-0.19.1-GCC-11.3.0.eb new file mode 100644 index 000000000000..ba8af04da924 --- /dev/null +++ b/easybuild/easyconfigs/p/Pysam/Pysam-0.19.1-GCC-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'Pysam' +version = '0.19.1' + +homepage = 'https://github.com/pysam-developers/pysam' +description = """Pysam is a python module for reading and manipulating Samfiles. + It's a lightweight wrapper of the samtools C-API. Pysam also includes an interface for tabix.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/pysam-developers/pysam/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['c33a51324fc4191bbfb135e93bf0c9b85ac9dad1320fb852a8af47c38626e37a'] + +dependencies = [ + ('Python', '3.10.4'), + ('ncurses', '6.3'), + ('cURL', '7.83.0'), + ('XZ', '5.2.5'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/p7zip/p7zip-17.04-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/p7zip/p7zip-17.04-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..20265bc30b3b --- /dev/null +++ b/easybuild/easyconfigs/p/p7zip/p7zip-17.04-GCCcore-11.3.0.eb @@ -0,0 +1,47 @@ +easyblock = 'MakeCp' + +name = 'p7zip' +version = '17.04' + +homepage = 'https://github.com/jinfeihan57/p7zip/' +description = """p7zip is a quick port of 7z.exe and 7za.exe (CLI version of +7zip) for Unix. 7-Zip is a file archiver with highest compression ratio.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +github_account = 'jinfeihan57' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['ea029a2e21d2d6ad0a156f6679bd66836204aa78148a4c5e498fe682e77127ef'] + +builddependencies = [ + ('binutils', '2.38'), +] + +prebuildopts = "cp makefile.linux_amd64 makefile.linux &&" +buildopts = 'all3 CC="$CC" CXX="$CXX" OPTFLAGS="$CFLAGS"' + +files_to_copy = [ + (['bin/7za', 'bin/7zr', 'bin/7zCon.sfx'], 'bin'), # stand-alone binaries + (['bin/7z', 'bin/7z.%s' % SHLIB_EXT, 'bin/Codecs'], 'libexec'), # 7z requires 7z.so plugin in same directory +] + +# put script in place for 7z, since it *must* be called full path, to ensure that 7z.so is found in the same directory +# see also http://sourceforge.net/p/p7zip/discussion/383044/thread/5e4085ab/ +postinstallcmds = [ + "echo '#!/bin/sh\n%(installdir)s/libexec/7z $@' > %(installdir)s/bin/7z", + "chmod +x %(installdir)s/bin/7z", # set execution bits according to current umask +] + +sanity_check_paths = { + 'files': ['bin/7z', 'bin/7za', 'bin/7zCon.sfx', 'bin/7zr', 'libexec/7z', 'libexec/7z.%s' % SHLIB_EXT], + 'dirs': ['libexec/Codecs'], +} + +sanity_check_commands = [ + '7z --help', + '7z x || test $? -gt 0', + "! 7z i | grep -q \"Can't load\" ", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pagmo/pagmo-2.18.0-foss-2021b.eb b/easybuild/easyconfigs/p/pagmo/pagmo-2.18.0-foss-2021b.eb new file mode 100644 index 000000000000..f85086e034b5 --- /dev/null +++ b/easybuild/easyconfigs/p/pagmo/pagmo-2.18.0-foss-2021b.eb @@ -0,0 +1,36 @@ +easyblock = 'CMakeMake' + +name = 'pagmo' +version = '2.18.0' + +homepage = 'https://esa.github.io/pagmo2' +description = "pagmo is a C++ scientific library for massively parallel optimization." + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/esa/pagmo2/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['5ad40bf3aa91857a808d6b632d9e1020341a33f1a4115d7a2b78b78fd063ae31'] + +builddependencies = [ + ('CMake', '3.21.1'), +] + +dependencies = [ + ('Boost', '1.77.0'), + ('tbb', '2020.3'), + ('Eigen', '3.4.0'), + ('NLopt', '2.7.0'), +] + +configopts = "-DPAGMO_WITH_EIGEN3=ON -DPAGMO_WITH_NLOPT=ON -DPAGMO_BUILD_TESTS=ON" + +runtest = 'test' + +sanity_check_paths = { + 'files': ['lib/libpagmo.%s' % SHLIB_EXT], + 'dirs': ['include/pagmo', 'lib/cmake/pagmo'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/parallel/parallel-20220722-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/parallel/parallel-20220722-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..290d6b575fd4 --- /dev/null +++ b/easybuild/easyconfigs/p/parallel/parallel-20220722-GCCcore-11.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'parallel' +version = '20220722' + +homepage = 'https://savannah.gnu.org/projects/parallel/' +description = """parallel: Build and execute shell commands in parallel""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['0e4083ac0d850c434598c6dfbf98f3b6dd2cc932a3af9269eb1f9323e43af019'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [('Perl', '5.34.1')] + +sanity_check_paths = { + 'files': ['bin/parallel'], + 'dirs': [] +} + +sanity_check_commands = ["parallel --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/patchelf/patchelf-0.15.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/patchelf/patchelf-0.15.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..44c578da8559 --- /dev/null +++ b/easybuild/easyconfigs/p/patchelf/patchelf-0.15.0-GCCcore-11.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'patchelf' +version = '0.15.0' + +homepage = 'https://github.com/NixOS/patchelf' +description = """PatchELF is a small utility to modify the dynamic linker and RPATH of ELF executables.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/NixOS/patchelf/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['5d1eda9bad4439bb9c0a87fcba198d7c0d372f361e77de41d68d6308062e5000'] + +builddependencies = [ + ('binutils', '2.38'), + ('Autotools', '20220317'), +] + +preconfigopts = "sh bootstrap.sh && " + +sanity_check_paths = { + 'files': ['bin/patchelf'], + 'dirs': ['share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pftoolsV3/pftoolsV3-3.2.12-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/pftoolsV3/pftoolsV3-3.2.12-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..abb076bd8d58 --- /dev/null +++ b/easybuild/easyconfigs/p/pftoolsV3/pftoolsV3-3.2.12-GCCcore-11.2.0.eb @@ -0,0 +1,60 @@ +easyblock = 'CMakeMake' + +name = 'pftoolsV3' +version = '3.2.12' + +homepage = 'https://github.com/sib-swiss/pftools3' +description = """A suite of tools to build and search generalized profiles (protein and DNA).""" +software_license = 'LicenseGPLv2' + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +sources = ['v%(version)s.tar.gz'] +source_urls = ['https://github.com/sib-swiss/pftools3/archive/refs/tags/'] +checksums = ['1de33d6444015942afa690d54a103ad5a3d68f416fad63f247c12fa3f71a550c'] # pftools3-3.2.12.tar.gz + +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.21.1'), + ('make', '4.3'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('libgd', '2.3.3'), + ('libharu', '2.3.0'), + ('libjpeg-turbo', '2.0.6'), + ('libpng', '1.6.37'), + ('PCRE2', '10.37'), + ('Perl', '5.34.0'), + ('zlib', '1.2.11'), +] + +configopts = '-DUSE_GRAPHICS=OFF -DUSE_PDF=ON -DUSE_AFFINITY=OFF' # Disable affinity for some old architectures + +runtest = 'test' + +sanity_check_paths = { + 'files': [ + 'bin/2ft', + 'bin/6ft', + 'bin/htop', + 'bin/pfdump', + 'bin/pfscan', + 'bin/pfscanV3', + 'bin/pfsearch', + 'bin/pfsearchV3', + 'bin/ptof', + ], + 'dirs': [ + 'share/doc', + 'share/man' + ], +} + +sanity_check_commands = [ + 'pfscanV3 --help', + 'pfsearchV3 --help', +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pizzly/pizzly-0.37.3-foss-2018b.eb b/easybuild/easyconfigs/p/pizzly/pizzly-0.37.3-foss-2018b.eb index 804273274839..19f28932807f 100644 --- a/easybuild/easyconfigs/p/pizzly/pizzly-0.37.3-foss-2018b.eb +++ b/easybuild/easyconfigs/p/pizzly/pizzly-0.37.3-foss-2018b.eb @@ -23,7 +23,6 @@ builddependencies = [('CMake', '3.12.1')] dependencies = [('zlib', '1.2.11')] -configopts = '-DCMAKE_BUILD_TYPE=Release' separate_build_dir = True diff --git a/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..894e86916453 --- /dev/null +++ b/easybuild/easyconfigs/p/pkg-config/pkg-config-0.29.2-GCCcore-11.3.0.eb @@ -0,0 +1,36 @@ +# pkgconf should be used in preference to pkg-config +# This is included for use only in software that fails to build when using pkgconf +easyblock = 'ConfigureMake' + +name = 'pkg-config' +version = '0.29.2' + +homepage = 'https://www.freedesktop.org/wiki/Software/pkg-config/' + +description = """ + pkg-config is a helper tool used when compiling applications and libraries. + It helps you insert the correct compiler options on the command line so an + application can use gcc -o test test.c `pkg-config --libs --cflags glib-2.0` + for instance, rather than hard-coding values on where to find glib (or other + libraries). +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://pkg-config.freedesktop.org/releases/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6fc69c01688c9458a57eb9a1664c9aba372ccda420a02bf4429fe610e7e7d591'] + +builddependencies = [('binutils', '2.38')] + +# don't use PAX, it might break. +tar_config_opts = True + +configopts = " --with-internal-glib" + +sanity_check_paths = { + 'files': ['bin/pkg-config'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-21.10.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-21.10.1-GCCcore-10.3.0.eb new file mode 100644 index 000000000000..08a61b6799f8 --- /dev/null +++ b/easybuild/easyconfigs/p/pretty-yaml/pretty-yaml-21.10.1-GCCcore-10.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'pretty-yaml' +local_mod = 'pyaml' +version = '21.10.1' + +homepage = 'https://github.com/mk-fg/pretty-yaml' +description = """PyYAML-based python module to produce pretty and readable YAML-serialized data. +This module is for serialization only, see ruamel.yaml module for literate YAML +parsing (keeping track of comments, spacing, line/column numbers of values, etc).""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +source_urls = ['https://pypi.python.org/packages/source/p/%s/' % local_mod] +sources = ['%s-%%(version)s.tar.gz' % local_mod] +checksums = ['c6519fee13bf06e3bb3f20cacdea8eba9140385a7c2546df5dbae4887f768383'] + +builddependencies = [('binutils', '2.36.1')] + +dependencies = [ + ('Python', '3.9.5'), + ('PyYAML', '5.4.1'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': local_mod} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.2.0.eb b/easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..0c105e447f22 --- /dev/null +++ b/easybuild/easyconfigs/p/pugixml/pugixml-1.12.1-GCCcore-11.2.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeMake' + +name = 'pugixml' +version = '1.12.1' + +homepage = 'https://pugixml.org/' +description = """pugixml is a light-weight C++ XML processing library""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/zeux/pugixml/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['1e28ab24b6e04e013d96f45d25e9f2d04c921dc68c613fd010ecaaad3892c14d'] + +builddependencies = [ + ('binutils', '2.37'), + ('CMake', '3.22.1') +] + +configopts = '-DBUILD_SHARED_LIBS=ON -DPUGIXML_BUILD_SHARED_AND_STATIC_LIBS=ON ' + +sanity_check_paths = { + 'files': ['include/pugiconfig.hpp', 'include/pugixml.hpp', 'lib/libpugixml.a', + 'lib/libpugixml.%s' % SHLIB_EXT, 'lib/pkgconfig/pugixml.pc'], + 'dirs': ['lib/cmake/pugixml'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/pyGenomeTracks/pyGenomeTracks-3.7-foss-2021b.eb b/easybuild/easyconfigs/p/pyGenomeTracks/pyGenomeTracks-3.7-foss-2021b.eb new file mode 100644 index 000000000000..f5d7484ca9f9 --- /dev/null +++ b/easybuild/easyconfigs/p/pyGenomeTracks/pyGenomeTracks-3.7-foss-2021b.eb @@ -0,0 +1,76 @@ +easyblock = 'PythonBundle' + +name = 'pyGenomeTracks' +version = '3.7' + +homepage = 'https://pygenometracks.readthedocs.io' +description = "pyGenomeTracks aims to produce high-quality genome browser tracks that are highly customizable." + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('matplotlib', '3.4.3'), + ('bx-python', '0.8.13'), + ('pybedtools', '0.8.2'), + ('pyBigWig', '0.3.18'), + ('pyfaidx', '0.7.0'), + ('Pysam', '0.17.0'), + ('tqdm', '4.62.3'), + ('PyTables', '3.6.1'), + ('h5py', '3.6.0'), + ('PyYAML', '5.4.1'), +] + +use_pip = True + +exts_list = [ + ('argcomplete', '2.0.0', { + 'checksums': ['6372ad78c89d662035101418ae253668445b391755cfe94ea52f1b9d22425b20'], + }), + ('argh', '0.26.2', { + 'checksums': ['e9535b8c84dc9571a48999094fda7f33e63c3f1b74f3e5f3ac0105a58405bb65'], + }), + ('gffutils', '0.11.0', { + 'checksums': ['4593bdf8bda2501b8e0c54cd3366fdaba04b211c86f43c0029e65869d15ec769'], + }), + ('asciitree', '0.3.3', { + 'checksums': ['4aa4b9b649f85e3fcb343363d97564aa1fb62e249677f2e18a96765145cc0f6e'], + }), + ('toolz', '0.12.0', { + 'checksums': ['88c570861c440ee3f2f6037c4654613228ff40c93a6c25e0eba70d17282c6194'], + }), + ('cytoolz', '0.10.1', { + 'checksums': ['82f5bba81d73a5a6b06f2a3553ff9003d865952fcb32e1df192378dd944d8a5c'], + }), + ('dill', '0.3.5.1', { + 'checksums': ['d75e41f3eff1eee599d738e76ba8f4ad98ea229db8b085318aa2b3333a208c86'], + }), + ('multiprocess', '0.70.13', { + 'checksums': ['2e096dd618a84d15aa369a9cf6695815e5539f853dc8fa4f4b9153b11b1d0b32'], + }), + ('pypairix', '0.3.7', { + 'checksums': ['c1b47c05f92b5be628923c60a27344503ddeba5d8f35a3752d646271d38e0525'], + }), + ('cooler', '0.8.11', { + 'checksums': ['367b58efa87647d31acf45e67d852aaee3273845b6e7507ae644d6a86f7526c5'], + }), + ('HiCMatrix', '15', { + 'checksums': ['74e49e7ef2b1ac555333515b8fda67b3ad49ffbdbc92f9e09c31647cbfac00bd'], + }), + (name, version, { + 'checksums': ['600bb836e78a50408d702140ac68248f8442c54201fe07e780e7b6b3e35e62df'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pyGenomeTracks'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["pyGenomeTracks --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pygmo/pygmo-2.18.0-foss-2021b.eb b/easybuild/easyconfigs/p/pygmo/pygmo-2.18.0-foss-2021b.eb new file mode 100644 index 000000000000..16518cab2ffd --- /dev/null +++ b/easybuild/easyconfigs/p/pygmo/pygmo-2.18.0-foss-2021b.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakePythonPackage' + +name = 'pygmo' +version = '2.18.0' + +homepage = 'https://esa.github.io/pygmo2' +description = "pygmo is a scientific Python library for massively parallel optimization." + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/esa/pygmo2/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['9f081cc973297894af09f713f889870ac452bfb32b471f9f7ba08a5e0bb9a125'] + +builddependencies = [ + ('CMake', '3.21.1'), + ('pybind11', '2.7.1'), +] + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('Boost', '1.77.0'), + ('pagmo', '2.18.0'), + ('matplotlib', '3.4.3'), + ('networkx', '2.6.3'), +] + +# make sure that all files are installed in the correct location (-DCMAKE_INSTALL_PREFIX is not enough)... +configopts = "-DPYGMO_INSTALL_PATH=%(installdir)s/lib/python%(pyshortver)s/site-packages" + +runtest = False + +exts_defaultclass = 'PythonPackage' + +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'download_dep_fail': True, + 'use_pip': True, +} + +exts_list = [ + ('cloudpickle', '2.0.0', { + 'checksums': ['5cd02f3b417a783ba84a4ec3e290ff7929009fe51f6405423cfccfadd43ba4a4'], + }), + ('dill', '0.3.4', { + 'sources': ['%(name)s-%(version)s.zip'], + 'checksums': ['9f9734205146b2b353ab3fec9af0070237b6ddae78452af83d2fca84d739e675'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/pygmo'], +} + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-2.5.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-2.5.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..9d96c47ef05d --- /dev/null +++ b/easybuild/easyconfigs/p/pytest-xdist/pytest-xdist-2.5.0-GCCcore-11.3.0.eb @@ -0,0 +1,62 @@ +easyblock = 'PythonBundle' + +name = 'pytest-xdist' +version = '2.5.0' + +homepage = 'https://github.com/pytest-dev/pytest-xdist' +description = """xdist: pytest distributed testing plugin + +The pytest-xdist plugin extends pytest with some unique test execution modes: + + * test run parallelization: if you have multiple CPUs or hosts you + can use those for a combined test run. This allows to speed up + development or to use special resources of remote machines. + + * --looponfail: run your tests repeatedly in a subprocess. After + each run pytest waits until a file in your project changes and + then re-runs the previously failing tests. This is repeated + until all tests pass after which again a full run is + performed. + + * Multi-Platform coverage: you can specify different Python + interpreters or different platforms and run tests in parallel on + all of them. + +Before running tests remotely, pytest efficiently “rsyncs” your +program source code to the remote place. All test results are reported +back and displayed to your local terminal. You may specify different +Python versions and interpreters.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('apipkg', '1.5', { + 'checksums': ['37228cda29411948b422fae072f57e31d3396d2ee1c9783775980ee9c9990af6'], + }), + ('execnet', '1.9.0', { + 'checksums': ['8f694f3ba9cc92cab508b152dcfe322153975c29bda272e2fd7f3f00f36e47c5'], + }), + ('pytest-forked', '1.4.0', { + 'checksums': ['8b67587c8f98cbbadfdd804539ed5455b6ed03802203485dd2f53c1422d7440e'], + }), + (name, version, { + 'modulename': 'xdist', + 'checksums': ['4580deca3ff04ddb2ac53eba39d76cb5dd5edeac050cb6fbc768b0dd712b4edf'], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha3-GCCcore-8.2.0.eb b/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha3-GCCcore-8.2.0.eb index 1de978078f4b..9981cd1c560f 100644 --- a/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha3-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha3-GCCcore-8.2.0.eb @@ -39,7 +39,7 @@ dependencies = [ ('libjpeg-turbo', '2.0.2'), ] -configopts = "-G Ninja -DPORT=Qt -DCMAKE_BUILD_TYPE=Release -DUSE_LIBHYPHEN=OFF -DUSE_GSTREAMER=OFF " +configopts = "-DPORT=Qt -DUSE_LIBHYPHEN=OFF -DUSE_GSTREAMER=OFF " sanity_check_paths = { 'files': [ diff --git a/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha4-GCCcore-10.2.0.eb b/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha4-GCCcore-10.2.0.eb index 0fff752203f2..d3095e4a6c18 100644 --- a/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha4-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/q/Qt5Webkit/Qt5Webkit-5.212.0-alpha4-GCCcore-10.2.0.eb @@ -43,7 +43,7 @@ dependencies = [ ('libjpeg-turbo', '2.0.5'), ] -configopts = "-G Ninja -DPORT=Qt -DCMAKE_BUILD_TYPE=Release -DUSE_LIBHYPHEN=OFF -DUSE_GSTREAMER=OFF " +configopts = "-DPORT=Qt -DUSE_LIBHYPHEN=OFF -DUSE_GSTREAMER=OFF " sanity_check_paths = { 'files': [ diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.0-foss-2021b.eb b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.0-foss-2021b.eb new file mode 100644 index 000000000000..a0a1ebea9ea5 --- /dev/null +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.0-foss-2021b.eb @@ -0,0 +1,44 @@ +name = 'QuantumESPRESSO' +version = '7.0' + +homepage = 'https://www.quantum-espresso.org' +description = """Quantum ESPRESSO is an integrated suite of computer codes +for electronic-structure calculations and materials modeling at the nanoscale. +It is based on density-functional theory, plane waves, and pseudopotentials +(both norm-conserving and ultrasoft). +""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'usempi': True, 'openmp': True} + +source_urls = [ + 'https://github.com/QEF/q-e/releases/download/qe-%(version)s/', + 'https://github.com/dceresoli/qe-gipaw/releases/download/%(version)s/', + 'https://github.com/wannier-developers/wannier90/archive/' +] +sources = [ + 'qe-%(version)s-ReleasePack.tgz', + 'qe-gipaw-%(version)s.tar.gz', + {'filename': 'wannier90-3.1.0.tar.gz', 'download_filename': 'v3.1.0.tar.gz'}, +] +checksums = [ + '268ec506f88c56ba4e9b691c1e81e33a6ad7949f857f1c6c32197f9c2af2a957', # qe-%(version)s-ReleasePack.tgz + '0f26055495c5d757ccd388ff3e8fd1ad036a798d3017f6ea0bcd0ea84b8a5bce', # qe-gipaw-%(version)s.tar.gz + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz +] + +dependencies = [ + ('HDF5', '1.12.1'), + ('ELPA', '2021.05.001'), + ('libxc', '5.1.6'), +] + +# The third party packages should be installed separately and added as +# dependencies. The exception is w90, which is force built, and gipaw +# which depends on qe source +buildopts = 'all gwl xspectra couple epw gipaw w90' + +# parallel build tends to fail +parallel = 1 + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.0-intel-2021b.eb b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.0-intel-2021b.eb new file mode 100644 index 000000000000..febc60c8c61d --- /dev/null +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.0-intel-2021b.eb @@ -0,0 +1,44 @@ +name = 'QuantumESPRESSO' +version = '7.0' + +homepage = 'https://www.quantum-espresso.org' +description = """Quantum ESPRESSO is an integrated suite of computer codes +for electronic-structure calculations and materials modeling at the nanoscale. +It is based on density-functional theory, plane waves, and pseudopotentials +(both norm-conserving and ultrasoft). +""" + +toolchain = {'name': 'intel', 'version': '2021b'} +toolchainopts = {'usempi': True, 'openmp': True} + +source_urls = [ + 'https://github.com/QEF/q-e/releases/download/qe-%(version)s/', + 'https://github.com/dceresoli/qe-gipaw/releases/download/%(version)s/', + 'https://github.com/wannier-developers/wannier90/archive/' +] +sources = [ + 'qe-%(version)s-ReleasePack.tgz', + 'qe-gipaw-%(version)s.tar.gz', + {'filename': 'wannier90-3.1.0.tar.gz', 'download_filename': 'v3.1.0.tar.gz'}, +] +checksums = [ + '268ec506f88c56ba4e9b691c1e81e33a6ad7949f857f1c6c32197f9c2af2a957', # qe-%(version)s-ReleasePack.tgz + '0f26055495c5d757ccd388ff3e8fd1ad036a798d3017f6ea0bcd0ea84b8a5bce', # qe-gipaw-%(version)s.tar.gz + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz +] + +dependencies = [ + ('HDF5', '1.12.1'), + ('ELPA', '2021.05.001'), + ('libxc', '5.1.6'), +] + +# The third party packages should be installed separately and added as +# dependencies. The exception is w90, which is force built, and gipaw +# which depends on qe source +buildopts = 'all gwl xspectra couple epw gipaw w90' + +# parallel build tends to fail +parallel = 1 + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-foss-2022a.eb b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-foss-2022a.eb index 0736580b3ec3..6c43b84bfc02 100644 --- a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-foss-2022a.eb +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-foss-2022a.eb @@ -14,7 +14,6 @@ toolchainopts = {'usempi': True, 'openmp': True} source_urls = [ 'https://gitlab.com/QEF/q-e/-/archive/qe-%(version)s', 'https://github.com/dceresoli/qe-gipaw/releases/download/%(version)s/', - 'https://github.com/wannier-developers/wannier90/archive/' ] sources = [ { @@ -22,7 +21,8 @@ sources = [ 'extract_cmd': 'mkdir -p %(builddir)s/qe-%(version)s && tar xzvf %s --strip-components=1 -C $_', }, 'qe-gipaw-%(version)s.tar.gz', - {'filename': 'wannier90-3.1.0.tar.gz', 'download_filename': 'v3.1.0.tar.gz'}, + {'filename': 'wannier90-3.1.0.tar.gz', 'download_filename': 'v3.1.0.tar.gz', + 'source_urls': ['https://github.com/wannier-developers/wannier90/archive/']}, ] checksums = [ 'd56dea096635808843bd5a9be2dee3d1f60407c01dbeeda03f8256a3bcfc4eb6', # q-e-qe-7.1.tar.gz @@ -33,7 +33,7 @@ checksums = [ builddependencies = [('M4', '1.4.19')] dependencies = [ - ('HDF5', '1.13.1'), + ('HDF5', '1.12.2'), ('ELPA', '2021.11.001'), ('libxc', '5.2.3'), ] diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-intel-2022a.eb b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-intel-2022a.eb index cde0d054be42..b39513b3cd83 100644 --- a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-intel-2022a.eb +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-7.1-intel-2022a.eb @@ -14,7 +14,6 @@ toolchainopts = {'usempi': True, 'openmp': True} source_urls = [ 'https://gitlab.com/QEF/q-e/-/archive/qe-%(version)s', 'https://github.com/dceresoli/qe-gipaw/releases/download/%(version)s/', - 'https://github.com/wannier-developers/wannier90/archive/' ] sources = [ { @@ -22,7 +21,8 @@ sources = [ 'extract_cmd': 'mkdir -p %(builddir)s/qe-%(version)s && tar xzvf %s --strip-components=1 -C $_', }, 'qe-gipaw-%(version)s.tar.gz', - {'filename': 'wannier90-3.1.0.tar.gz', 'download_filename': 'v3.1.0.tar.gz'}, + {'filename': 'wannier90-3.1.0.tar.gz', 'download_filename': 'v3.1.0.tar.gz', + 'source_urls': ['https://github.com/wannier-developers/wannier90/archive/']}, ] checksums = [ 'd56dea096635808843bd5a9be2dee3d1f60407c01dbeeda03f8256a3bcfc4eb6', # q-e-qe-7.1.tar.gz @@ -33,7 +33,7 @@ checksums = [ builddependencies = [('M4', '1.4.19')] dependencies = [ - ('HDF5', '1.13.1'), + ('HDF5', '1.12.2'), ('ELPA', '2021.11.001'), ('libxc', '5.2.3'), ] diff --git a/easybuild/easyconfigs/q/QuickPIC/QuickPIC-20210224-gompi-2021b.eb b/easybuild/easyconfigs/q/QuickPIC/QuickPIC-20210224-gompi-2021b.eb new file mode 100644 index 000000000000..c7f08ff8d65b --- /dev/null +++ b/easybuild/easyconfigs/q/QuickPIC/QuickPIC-20210224-gompi-2021b.eb @@ -0,0 +1,49 @@ +# There is unfortunately right now no proper release, thus the +# commit-tag is being used. Does not build in parallel. +# Author: J. Sassmannshausen (Imperial College London/UK) + +easyblock = 'MakeCp' + +name = 'QuickPIC' +local_commit = '776fcff' +version = '20210224' + +homepage = 'https://github.com/UCLA-Plasma-Simulation-Group/QuickPIC-OpenSource' +description = """ QuickPIC is a 3D parallel (MPI & OpenMP Hybrid) Quasi-Static PIC code, +which is developed based on the framework UPIC. QuickPIC can efficiently simulate plasma +based accelerator problems. This is the UCLA Plasma Simulation Group's official open-source +repository for QuickPIC.""" + +toolchain = {'name': 'gompi', 'version': '2021b'} +toolchainopts = {'pic': True, 'usempi': True, 'cstd': 'c99'} + +source_urls = ['https://github.com/UCLA-Plasma-Simulation-Group/QuickPIC-OpenSource/archive'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +patches = ['QuickPIC-20210224_fix_paths_in_makefile.patch'] + +checksums = [ + '83d3664542ce0a1c1fa055802e214bdba98790ee512f1f2525d0c087d20d88af', # QuickPIC-20210224.tar.gz + 'fd4be47519513ca3add974e5c5964707a7534ef68ad850f775fae3d8e0cdc987', # QuickPIC-20210224_fix_paths_in_makefile.patch +] + +dependencies = [ + ('HDF5', '1.12.1'), + ('json-fortran', '8.3.0'), +] + +prebuildopts = 'cd source && ' + +# See here for documentation +# https://portal.hdfgroup.org/display/HDF5/Migrating+from+HDF5+1.10+to+HDF5+1.12 +configopts = ' --with-default-api-version=v110' + +parallel = 1 + +files_to_copy = [(['source/qpic.e'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/qpic.e'], + 'dirs': [], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/q/QuickPIC/QuickPIC-20210224_fix_paths_in_makefile.patch b/easybuild/easyconfigs/q/QuickPIC/QuickPIC-20210224_fix_paths_in_makefile.patch new file mode 100644 index 000000000000..7163e61dd9ba --- /dev/null +++ b/easybuild/easyconfigs/q/QuickPIC/QuickPIC-20210224_fix_paths_in_makefile.patch @@ -0,0 +1,49 @@ +Patch for makefile and make.GF_OPENMPI so HDF5 and json-fortran is being found +instead of hard-coded paths +Author: J. Sassmannshausen (Imperial College London/UK) +diff --git a/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca.orig/source/make.GF_OPENMPI b/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca/source/make.GF_OPENMPI +index b2f08f0..c1538cf 100644 +--- a/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca.orig/source/make.GF_OPENMPI ++++ b/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca/source/make.GF_OPENMPI +@@ -1,6 +1,6 @@ + # name of the compiler +-JSON_LIB = /usr/local/jsonfortran-gnu-6.3.0/lib/ +-JSON_INC = /usr/local/jsonfortran-gnu-6.3.0/lib/ ++JSON_LIB = ${EBROOTJSONMINFORTRAN}/lib ++JSON_INC = ${EBROOTJSONMINFORTRAN}/include + + FC_GF_OPENMPI = mpif90 -c -I$(JSON_INC) -fopenmp + CC_GF_OPENMPI = mpicc -c -O3 -std=c99 +@@ -14,11 +14,11 @@ FORMAT_FIXED_GF_OPENMPI = -ffixed-form + + # hdf5 libraries + +-HDF5_LIB =/usr/local/hdf5/lib +-HDF5_INC =/usr/local/hdf5/include ++HDF5_LIB =${EBROOTHDF5}/lib ++HDF5_INC =${EBROOTHDF5}/include + + HDF_LIBPATH_GF_OPENMPI= -L$(HDF5_LIB) -lhdf5_fortran -lhdf5_hl -lhdf5 -lz +-HDF_INCLUDE_PATH_GF_OPENMPI= -I$(HDF5_INC) -I${HDF5_LIB} -lhdf5hl_fortran -lhdf5_fortran -lhdf5_hl -lhdf5 ++HDF_INCLUDE_PATH_GF_OPENMPI= -I$(HDF5_INC) -L${HDF5_LIB} -lhdf5hl_fortran -lhdf5_fortran -lhdf5_hl -lhdf5 + + # other libs + OTHER_LIBS_GF_OPENMPI = -L$(JSON_LIB) -ljsonfortran +diff --git a/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca.orig/source/makefile b/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca/source/makefile +index faf3c77..2deff20 100644 +--- a/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca.orig/source/makefile ++++ b/QuickPIC-OpenSource-776fcffaaf9e170fbae80bfe54abc95b1f84dfca/source/makefile +@@ -42,10 +42,9 @@ OBJS_MAIN = main.o + + OBJS = ${OBJS_BASE} ${OBJS_MAIN} + +-# hdf libraries +-HDF_INCLUDE_PATH = ${HDF_INCLUDE_PATH_${SYS_SFX}} +-HDF_LIBPATH = ${HDF_LIBPATH_${SYS_SFX}} +-HDF_LIBS = ${HDF_LIBPATH} ++HDF_INCLUDE_PATH = -I${EBROOTHDF5}/include ++HDF_LIBPATH = -L${EBROOTHDF5}/lib64 ++HDF_LIBS = -lhdf5_fortran + + # other libs + OTHER_LIBS = ${OTHER_LIBS_${SYS_SFX}} diff --git a/easybuild/easyconfigs/q/qrupdate/qrupdate-1.1.2-GCCcore-11.2.0.eb b/easybuild/easyconfigs/q/qrupdate/qrupdate-1.1.2-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..412f083ea7b0 --- /dev/null +++ b/easybuild/easyconfigs/q/qrupdate/qrupdate-1.1.2-GCCcore-11.2.0.eb @@ -0,0 +1,35 @@ +easyblock = 'MakeCp' + +name = 'qrupdate' +version = '1.1.2' + +homepage = 'https://sourceforge.net/projects/qrupdate/' +description = """qrupdate is a Fortran library for fast updates of QR and Cholesky decompositions.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchainopts = {'pic': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['%(name)s-%(version)s_makeconf.patch'] +checksums = [ + 'e2a1c711dc8ebc418e21195833814cb2f84b878b90a2774365f0166402308e08', # qrupdate-1.1.2.tar.gz + '4aa0e61a18bd14c76048f7b2f1f52875f7bac4bc3426ce9a37dfdb5b2b0d2379', # qrupdate-1.1.2_makeconf.patch +] + +builddependencies = [ + ('binutils', '2.37'), +] + +buildopts = 'lib' + +files_to_copy = [(['libqrupdate.a'], 'lib')] + +sanity_check_paths = { + 'files': ['lib/libqrupdate.a'], + 'dirs': [], +} + +parallel = 1 + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.15-foss-2022a-R-4.2.1.eb b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.15-foss-2022a-R-4.2.1.eb new file mode 100644 index 000000000000..209068efaa57 --- /dev/null +++ b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.15-foss-2022a-R-4.2.1.eb @@ -0,0 +1,1098 @@ +easyblock = 'Bundle' + +name = 'R-bundle-Bioconductor' +version = '3.15' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://bioconductor.org' +description = """Bioconductor provides tools for the analysis and coprehension + of high-throughput genomic data.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +# lpsymphony fails to build with pkgconf, so stick to pkg-config +# error in: https://github.com/easybuilders/easybuild-easyconfigs/pull/15829#issuecomment-1178655286 +builddependencies = [('pkg-config', '0.29.2')] + +dependencies = [ + ('R', '4.2.1'), + ('Boost', '1.79.0'), # for mzR + ('GSL', '2.7'), # for flowClust + ('HDF5', '1.12.2'), # for rhdf5 + ('arrow-R', '8.0.0', versionsuffix), # required by RcisTarget +] + +exts_default_options = { + 'source_urls': [ + 'https://bioconductor.org/packages/3.15/bioc/src/contrib/', + 'https://bioconductor.org/packages/3.15/bioc/src/contrib/Archive/%(name)s', + 'https://bioconductor.org/packages/3.15/data/annotation/src/contrib/', + 'https://bioconductor.org/packages/3.15/data/experiment/src/contrib/', + 'https://cran.r-project.org/src/contrib/Archive/%(name)s', # package archive + 'https://cran.r-project.org/src/contrib/', # current version of packages + 'https://cran.freestatistics.org/src/contrib', # mirror alternative for current packages + ], + 'source_tmpl': '%(name)s_%(version)s.tar.gz' +} + +exts_defaultclass = 'RPackage' + +# check whether correct version is installed in extension filter +# (some versions in this bundle may be newer than the ones provided by R) +local_ext_version_check = "pkgver = packageVersion('%(ext_name)s'); if (pkgver != '%(ext_version)s') " +local_stop_msg = "stop('%(ext_name)s %(ext_version)s not installed, found ', pkgver, ' instead')" +exts_filter = ("R -q --no-save", "%s { %s }" % (local_ext_version_check, local_stop_msg)) + +# CRAN packages on which these Bioconductor packages depend are available in R module on which this depends +# !! order of packages is important !! +# packages updated on 7th July 2022 +exts_list = [ + ('BiocGenerics', '0.42.0', { + 'checksums': ['0cb6fa74a389693d253a9f61935d335fcfcc1dfe5acbba78b3cc43c1af5d6947'], + }), + ('Biobase', '2.56.0', { + 'checksums': ['7b49f4336b1b9323b02b6819ff3bb8347e47e696ec0802cc4d0758858e9fddd6'], + }), + ('S4Vectors', '0.34.0', { + 'checksums': ['9368ef6636862f02a7cca0022b94975a21a1a4ac434f7b44411c52d83e5c7e48'], + }), + ('IRanges', '2.30.0', { + 'checksums': ['1331cf39cab3d0e2233247bb6e9d439e0e804c2a3336c103cb195fb2802ddd41'], + }), + ('GenomeInfoDbData', '1.2.8', { + 'checksums': ['576750330a011c1eccb47c7154ca1b40ae4cd473fd7973f6c2955237a0729eb4'], + }), + ('GenomeInfoDb', '1.32.2', { + 'checksums': ['b0a7bed8527c89b04f96bcc169366c6b238b45d32fa760177ead6227165f67d8'], + }), + ('zlibbioc', '1.42.0', { + 'checksums': ['fbf78b33def67a1778e97c15c5161c095268c14baf14ab559dcaccd6a34c1e70'], + }), + ('XVector', '0.36.0', { + 'checksums': ['136e5bc29f3d64634eff01794cb7824171df2300721c3ac24ceba5233c5e7ab8'], + }), + ('Biostrings', '2.64.0', { + 'checksums': ['e8c1dfbeb4b00d1dec1234693ab5ed6152fdd93c3afabd84173cd1843e14e5eb'], + }), + ('KEGGREST', '1.36.2', { + 'checksums': ['fc7d4fcad2a08d5b8a7d4cc620a5ad3e2a588e406e4fa8fe5ef902e4111fc0e6'], + }), + ('AnnotationDbi', '1.58.0', { + 'checksums': ['96bf9c24b8401361c2c9d4efbf6f93a790becaba449edc06e5322116e9f19c95'], + }), + ('GenomicRanges', '1.48.0', { + 'checksums': ['d623d25b9eb20d4b48f42f6e30771101503b8e9e1592d76e310273ca54d81921'], + }), + ('BiocParallel', '1.30.3', { + 'checksums': ['22318a3b47b56492445c1f2125a4dcef6dbb40dd94c594863bbd26aa55e543e7'], + }), + ('Rhtslib', '1.28.0', { + 'checksums': ['4e48c8643e5d3429238ee76faa4c68ed8a7028e7f594c109ee75f5e994d17c1e'], + }), + ('Rsamtools', '2.12.0', { + 'checksums': ['20e860c61ef66f8e61f8de7f77c4a244439c8fe39286d080cd580417073894f2'], + }), + ('MatrixGenerics', '1.8.1', { + 'checksums': ['ee8c3c0eab964f505bd570c083e88218bb4d6342adb406f3efd2fbf8afa52bd2'], + }), + ('DelayedArray', '0.22.0', { + 'checksums': ['1ee707dc606f257020c2654b21305045f4da9dc2943e6246a0bd25f5f1302d86'], + }), + ('SummarizedExperiment', '1.26.1', { + 'checksums': ['697c5faf7620dbb336591463bcb027d45a297197ed012a13d0327aaaebc7740b'], + }), + ('GenomicAlignments', '1.32.0', { + 'checksums': ['71354a8f7b07283065bff8280558a15ddfc35a6d225de2d8f7c5214400a3d5c5'], + }), + ('ShortRead', '1.54.0', { + 'checksums': ['18ca2c82688c158cdc952436434d4a608000ec4c02b199a0925c6cb2500a030c'], + }), + ('graph', '1.74.0', { + 'checksums': ['e4d1389e5f148fa6ff55299b29f096bd9cfd5d772691a0298b53a027b9cc10ad'], + }), + ('affyio', '1.66.0', { + 'checksums': ['d7bd8ba9f3a24f6a74c28226765cecc6e917dbf1028cfa04dce6cfbfb1409ca5'], + }), + ('preprocessCore', '1.58.0', { + 'installopts': "--configure-args='--disable-threading'", + 'checksums': ['6e36ad18eae494105b88f5195493b8ac3decf1c588cb4cddf5cf6c0801b817eb'], + }), + ('BiocManager', '1.30.18', { + 'checksums': ['f763126b45614e1b83260da5311923eac50db24002f3c22fa5f667434a5b5c35'], + }), + ('affy', '1.74.0', { + 'checksums': ['87b54c76d72abd9a44041772914451ab426df6d4aac9b1e6e39254d2883f870a'], + }), + ('GO.db', '3.15.0', { + 'checksums': ['bac91d73c57f206fa5bc4a501a2aaf61b365cf411181ce44353370cdbc132d99'], + }), + ('limma', '3.52.2', { + 'checksums': ['c5ccd94d05286cfdbbe7e139281e2a6c41e62b3446e3e1da170e1157f1451755'], + }), + ('RBGL', '1.72.0', { + 'checksums': ['fe301943e9444a43ac14b874bd984931cd9b13f491b70b9ed58928da7742005e'], + }), + ('org.Hs.eg.db', '3.15.0', { + 'checksums': ['1dc9bb6019e0f0a222b9ec84a1c5870cdbca480f45d9ad08e35f77278baa3c5f'], + }), + ('AnnotationForge', '1.38.0', { + 'checksums': ['e8fffd592a364e0154c255964cbfd198b6f6f6b227c83ca4f4efa9d69b722ca3'], + }), + ('annaffy', '1.68.0', { + 'checksums': ['f8d532a12f6d21d7f5c2ef1025a74b75ab9b9ecf0ce66e0c24a310bab89d78b9'], + }), + ('gcrma', '2.68.0', { + 'checksums': ['cd380cfa86dfdddfca88b83a81a23ed03c3ec69a6790618dd24f8025f28b488d'], + }), + ('oligoClasses', '1.58.0', { + 'checksums': ['b3d5a3f276419c27b7e5f1b164713138098101ad67875194e2a5ba401f289dd4'], + }), + ('edgeR', '3.38.1', { + 'checksums': ['3356f4f1349267091db058367f2f74faf78b5a7b42dfc7c1f0af94604e1d23e1'], + }), + ('PFAM.db', '3.15.0', { + 'checksums': ['e7036a5f76779ab6e8a32eb659c54f52426c4824dee02903cffd85bed372720f'], + }), + ('perm', '1.0-0.2', { + 'checksums': ['729294987bb0f367c67c4bf4071464e097ec9a2bbdb2c63f19ebfb907c604aa0'], + }), + ('baySeq', '2.30.0', { + 'checksums': ['52d843b27f8d48b8119ded918fd88b17640c0271d8a07e66165a8ced9b9d1efb'], + }), + ('qvalue', '2.28.0', { + 'checksums': ['dcd72f19ed80eb22b27b04fef42d1472d3246f78b18d2414efd6b24659a97033'], + }), + ('impute', '1.70.0', { + 'checksums': ['22a7e1e1067a435e890d76cc9caaca806d2bcbffb7973207f1a646e0eff96085'], + }), + ('shinyFiles', '0.9.2', { + 'checksums': ['8fbe4b8e1478c5e5efdb8fddcbe210fd2275e61d9ff06efa1672f61dd3268ad0'], + }), + ('samr', '3.0', { + 'checksums': ['25f88ac002c2adce8881a562241bc12d683810a05defb553e8e3d4878f037506'], + }), + ('DEGseq', '1.50.0', { + 'checksums': ['2e84bf5351579f092df72afba90bab08a70c536e56400a05ae6d80ba1cec5ede'], + }), + ('hgu133plus2.db', '3.13.0', { + 'checksums': ['ddde58e777a8341536a664c7d4be874a2f395f8aaa019c1f738462a8ce74cc44'], + }), + ('illuminaio', '0.38.0', { + 'checksums': ['c240646e8cfe38456c7e223da4edaf8e4526678d887b896247fa129ed42960f6'], + }), + ('BiocIO', '1.6.0', { + 'checksums': ['b7f901ca3e6fa06171f839c088c8769a462533a3cf5b83eb7dabe64fb811489a'], + }), + ('restfulr', '0.0.15', { + 'checksums': ['40ff8f1fb2987af2223e1a855bb1680c5ce2143fbce7ebc42f1edb291f80e692'], + }), + ('rtracklayer', '1.56.1', { + 'checksums': ['9acadac5fface3639c779d9116cfaf20708fe200163b1c0e92af8e228c4e1e83'], + }), + ('filelock', '1.0.2', { + 'checksums': ['ac2915950789b16c43a625a2b8dab6ba423588db4a7d0daa75b74518b82b1403'], + }), + ('BiocFileCache', '2.4.0', { + 'checksums': ['5cefe2e72648c0003ac74937b390ebda7258b09eed575b84de1cb5dc23adabad'], + }), + ('biomaRt', '2.52.0', { + 'checksums': ['af23f7f9fe0fe9f7a38ea56d49671d62076ec7f8b1039054428cdeecad9ac37a'], + }), + ('GenomicFeatures', '1.48.3', { + 'checksums': ['815eaac9baf0ded8a5589fd9cf825f49f3ae802cb0769d2e301479a16ab82438'], + }), + ('bumphunter', '1.38.0', { + 'checksums': ['bc73783c84765a82f182ea17eb2cdaeea7631ed728eb7dd8aa5163c892be224d'], + }), + ('multtest', '2.52.0', { + 'checksums': ['02f5d868a59d849e7c9d528d7242843af2791312d36e5a5f9770f3307965fc0c'], + }), + ('scrime', '1.3.5', { + 'checksums': ['5d97d3e57d8eb30709340fe572746029fd139456d7a955421c4e3aa75d825578'], + }), + ('siggenes', '1.70.0', { + 'checksums': ['f4b454231928de76e85cd5582e69467de9c503b2e72610fa973b5cc444c5b22a'], + }), + ('DynDoc', '1.74.0', { + 'checksums': ['b1bfc7f8a519c4bd36a36bd22b16015900e3210ad3d8931be323d9401b6d117b'], + }), + ('NOISeq', '2.40.0', { + 'checksums': ['47cc6c13a1904f31f1b7ab206e438321208b6614d646ada72445900d6953062a'], + }), + ('Rgraphviz', '2.40.0', { + 'patches': ['Rgraphviz-2.28.0_fno-tree-vectorize.patch'], + 'checksums': [ + '94a4ce168efe39046fe10e2d75a9e459158716b4ef6ef977a0ced725f871cee4', # Rgraphviz_2.40.0.tar.gz + # Rgraphviz-2.28.0_fno-tree-vectorize.patch + '15783e9daba6f63c8e655858468a99e9f4f088468dbe3b414825e5844cf6b4a9', + ], + }), + ('RNASeqPower', '1.36.0', { + 'checksums': ['8d9ffdf045b56a69f2109503a733ab9bd55801a42ac6e52b4d7983f1e6ec692f'], + }), + ('annotate', '1.74.0', { + 'checksums': ['4fc0553435855aa7dbf352a26b86e39936d4510ae03816f708e7091e6f6bdb74'], + }), + ('GSEABase', '1.58.0', { + 'checksums': ['0f9d54c3be70854e349e150fcfd28585c67a1eacae5a2c204acd89349e7f1be2'], + }), + ('genefilter', '1.78.0', { + 'checksums': ['58913b670b29109a7226320e1f99d795931991db1939ea3fa25143492d55e3d2'], + }), + ('Category', '2.62.0', { + 'checksums': ['0def183b2707c0a1c2341ba104bfc6cc59df31dd2a92c0fffacfb4e6d8005a1e'], + }), + ('GOstats', '2.62.0', { + 'checksums': ['35cbed07bac0e1c67ea9d469d335d91de8b5c229c810568f472f2b1777f23488'], + }), + ('BSgenome', '1.64.0', { + 'checksums': ['ace392a9db183effb8a55c1f74719ef00dee5ea2da2af6f383af77e354cdf89d'], + }), + ('VariantAnnotation', '1.42.1', { + 'checksums': ['e1b5d52ce3f50c480ccda5340cf9f22774b124b9923caf95a0c6af6bfa84a589'], + }), + ('interactiveDisplayBase', '1.34.0', { + 'checksums': ['af2d2e7d806a349bf87b0eb969da661c160ce1ff0747375b5708320059e9bc39'], + }), + ('BiocVersion', '3.15.2', { + 'checksums': ['d67d6ecbdc89c9a69bc05a950edde3658411407c67804680981843a2beb74467'], + }), + ('AnnotationHub', '3.4.0', { + 'checksums': ['bacb8e2c4f14168087aa5c463902f3f910acf27d224c4ad2ee69eb3c485fb50d'], + }), + ('AnnotationFilter', '1.20.0', { + 'checksums': ['8d2ab20f253890fd7a560bf16be9e9cdd9d130e66232da6c9f56646f1abb5420'], + }), + ('ProtGenerics', '1.28.0', { + 'checksums': ['05e06c4ed777360f6e027568ff6e3ae6e5de97e07ce52454b87f3584897c0c12'], + }), + ('ensembldb', '2.20.2', { + 'checksums': ['ac1f2d701e9bf99265c8db18c7be7f30a60af6eaa68e31bff40fb61a590bc28a'], + }), + ('biovizBase', '1.44.0', { + 'checksums': ['cd7f83e8170d22ef45a3a832475edffcc131707aa882a2d046f410bafd71dfb9'], + }), + ('OrganismDbi', '1.38.1', { + 'checksums': ['2998649c56b5f7309dc3853ee9b1b1da05b8393eaea6f1f50d8241d291ecb657'], + }), + ('ggbio', '1.44.1', { + 'checksums': ['6f8ffb3507d81ffbc5f7c2e7d680a8dafc3a05453b02616fa35506cca992d047'], + }), + ('geneplotter', '1.74.0', { + 'checksums': ['4cc610c37d6c5fa2eeb6d61c52fa1cb322658216035c99dcb654e5967f05438c'], + }), + ('DESeq2', '1.36.0', { + 'checksums': ['2737cdbb39d393262af22c37aa7e8db72375ff04fb6aeeb849cf098b2558bb1a'], + }), + ('ReportingTools', '2.36.0', { + 'checksums': ['104e5363b8756259028b1aba15d3f3adce99fce8488e09e19b5d06e83e6e0c65'], + }), + ('Glimma', '2.6.0', { + 'checksums': ['df6f7fd11e6c0913a8527d367624dd2ad21feedd2feff0a68262c19d805727cc'], + }), + ('affycoretools', '1.68.1', { + 'checksums': ['9c0f1ab7e121e6655ce831f70b188ec006ff5fc204f3b8c649af5e593c24a617'], + }), + ('TxDb.Hsapiens.UCSC.hg19.knownGene', '3.2.2', { + 'checksums': ['063de2b1174782a0b2b8ab7f04a0bdf3c43252cb67c685a9f8ef2b8e318352e9'], + }), + ('Homo.sapiens', '1.3.1', { + 'checksums': ['014809fc6ef6410be8dc1094c9cb083719f20d999065ae4bf388855be0913b94'], + }), + ('BSgenome.Hsapiens.UCSC.hg19', '1.4.3', { + 'checksums': ['5bfa65d7836449d9b30c356968497cdfaa98be48c4e329e71e8f8a120f3e9d1a'], + }), + ('AgiMicroRna', '2.46.0', { + 'checksums': ['aa8b1482bae0a7a71f19191a9c0dba1411ac025ca93e47bf3c7bc1eb5f422c4a'], + }), + ('geneLenDataBase', '1.32.0', { + 'checksums': ['5f691667b53acb1769509540bdbdbf7001e5be4973b97a88f5567f8d47ab995c'], + }), + ('goseq', '1.48.0', { + 'checksums': ['88b45cf35e363e3c9b2edd6619d62be902ad97f40c835dfce9e2ee89e1e719f0'], + }), + ('KEGGgraph', '1.56.0', { + 'checksums': ['bdd9104ca0296d8f26d6719a2d9fdfaf9ed553b9b2f6d851c8103d760101f896'], + }), + ('GEOquery', '2.64.2', { + 'checksums': ['3dc51776c33d45371f8913d2593ea0babbbebd1aed018e220e037d0505de73b3'], + }), + ('rARPACK', '0.11-0', { + 'checksums': ['c33401e2e31d272d485ce2ed22e7fe43ac641fd7c0a45a9b848d3ad60df1028a'], + }), + ('mixOmics', '6.20.0', { + 'checksums': ['871f11604dd4e1923fc107a4c3df083ff41b8feb7332f765940bc8ec0e178c3b'], + }), + ('Rhdf5lib', '1.18.2', { + 'checksums': ['8f9893a4c8173f5d154e2a0b9f73f0f575ac17481a3bf943f99e88c30e44ebca'], + }), + ('rhdf5filters', '1.8.0', { + 'checksums': ['7ad7b5ae372c1a700976768e37ad227475c675bc15333d8cac317c6cd106efc6'], + }), + ('rhdf5', '2.40.0', { + 'checksums': ['ce4585ddf67848e3b34c531e02df7ee712874127dd54eaa21ce8a2652b489701'], + }), + ('HDF5Array', '1.24.1', { + 'checksums': ['5e35b79abd1115d98dda6551bf61a4adba50f723edfad91322eb6160e67934e4'], + }), + ('sparseMatrixStats', '1.8.0', { + 'checksums': ['a28fe0592793913b2c9c553bb15c71f741992ce88d27544475eb977bbc9a225c'], + }), + ('DelayedMatrixStats', '1.18.0', { + 'checksums': ['5b637538070ee949bad499390d140c0e8eac0d3f19655de71f5c64c092d99ce2'], + }), + ('minfi', '1.42.0', { + 'checksums': ['06e7596df31e8c01cd990f7f0dde3ef5e001cf58531ecb110f609658f8f9a508'], + }), + ('FDb.InfiniumMethylation.hg19', '2.2.0', { + 'checksums': ['605aa3643588a2f40a942fa760b92662060a0dfedb26b4e4cd6f1a78b703093f'], + }), + ('methylumi', '2.42.0', { + 'checksums': ['9c4bb87b4f581ebe142ca1bd42434f07248250da793ef4490bd2d152b08d934e'], + }), + ('lumi', '2.48.0', { + 'checksums': ['2d7964151fc7eab8cd4bea18b17f2d3c60f233a5302bbf46d5d5fb200ba5f51b'], + }), + ('widgetTools', '1.74.0', { + 'checksums': ['cd2027038e0cb97a63dd0e7d01d5c3425c3a722c24c80d6f5dd1a84f60d18183'], + }), + ('tkWidgets', '1.74.0', { + 'checksums': ['60124d00b1b0839b6a25befcaa76433ec9c4b867b0457219592335f43561f12c'], + }), + ('Mfuzz', '2.56.0', { + 'checksums': ['04426eed6a20834f793024370cc9120e54be586f7ab417227c0c8b3bf87de567'], + }), + ('venn', '1.11', { + 'checksums': ['33d915c7c90078f1e76e803fa3f02ab5b74dd04de7a9700477e51e0235f19314'], + }), + ('maSigPro', '1.68.0', { + 'checksums': ['2f81ff0150c613c3ebdd2eead744cbf4e5d5c68683be2213eba6b3d1254687d0'], + }), + ('SPIA', '2.48.0', { + 'checksums': ['fc246d7db41f6c34e6ca4d4f8fc63c20e79a171168e9e96283c8bf3e0ce9d5e8'], + }), + ('Gviz', '1.40.1', { + 'checksums': ['71af4c24a462438f73f010103ce49f10a2744e8d9839b56fc67805b161d7432b'], + }), + ('cummeRbund', '2.38.0', { + 'checksums': ['185478a9e3ed1b8c8bc9e475a8cf42720ef1ca79078c1cc19dfe9b4162b58adc'], + }), + ('GenomicFiles', '1.32.1', { + 'checksums': ['7fee384a18a2926acf53777ef011cbaefa65c87e975abdf7119d4e239475cc1b'], + }), + ('derfinderHelper', '1.30.0', { + 'checksums': ['e5527df3b13f13cbfee97af8f60019df8ef2394e0d7911b4640556b74a5fff64'], + }), + ('derfinder', '1.30.0', { + 'checksums': ['3b9f4aea71f556219d262b216dcd5d7d38f5b0d4c09de9b466baa269c477d9ff'], + }), + ('polyester', '1.32.0', { + 'checksums': ['fe7cee66c8bb7bd1eab3a26852c34742524478b2b762bc5806a07b83df5345d0'], + }), + ('Rsubread', '2.10.4', { + 'checksums': ['349fe4942612b7192d6de0b31b7e686d4a10e90934c67cf9d1163fb55e11b094'], + }), + ('pcaMethods', '1.88.0', { + 'checksums': ['2b41f13657f86c404851bc8164f748b755fb42f174b8fb4fa3ff80e30fd50781'], + }), + ('marray', '1.74.0', { + 'checksums': ['11d56753452ad1d9fd1829849dfcfe0de7b09b7a1d7619b8a75e8f3f15f88e2b'], + }), + ('CGHbase', '1.56.0', { + 'checksums': ['9971d4f559ad99604a43c664993360e3b42e5298afb9f5c4f6b63c9281f11ee1'], + }), + ('Wrench', '1.14.0', { + 'checksums': ['8afd0fa42accbd4058cf62a1edba2659047c49b911612d7441928753892ea6ff'], + }), + ('lpsymphony', '1.24.0', { + 'checksums': ['6f8c96972863d3c1ed8f55b937ceaf4e43832d59350d0231e2dfafa23502874d'], + }), + ('IHW', '1.24.0', { + 'checksums': ['aeea5a941d44a9b6c45e2bd7af5bcc40816b6565941282be09b09fdfcaf14ebf'], + }), + ('metagenomeSeq', '1.38.0', { + 'checksums': ['02cc936885c5835fb1a942face09618a4221d11e3c5f0741da00ff471a45106d'], + }), + ('gdsfmt', '1.32.0', { + 'checksums': ['000ff7bdfc325b8f37159d3bd3219fec95d2f92972ac2461e1de30f776f4bcb1'], + }), + ('SNPRelate', '1.30.1', { + 'checksums': ['998d11991c8d564932e25e947b164360c9aa9dffa87e533144a42ef00af96cc8'], + }), + ('biomformat', '1.24.0', { + 'checksums': ['3669661b489e5bb1b1e230cf6989e2c2d759714b62f4dab2a5f559d86f94988b'], + }), + ('phyloseq', '1.40.0', { + 'checksums': ['5378322e1c0b71a3d7d5703cc8c14df1c7844753ebb89d5825872b1f3fd99e41'], + }), + ('NADA', '1.6-1.1', { + 'checksums': ['670ff6595ba074ed0a930b7a09624d5ef20616379a20e768c1a7b37332aee44a'], + }), + ('zCompositions', '1.4.0-1', { + 'checksums': ['33ee11f635cb87cc9c0617e1cfc91f1ac41c6cfe2b70fc441e226015939230e7'], + }), + ('RcppZiggurat', '0.1.6', { + 'checksums': ['9c78255ca476c945c05a564d1e4da363de714d890e0e27f3b252fd73c50eed71'], + }), + ('Rfast', '2.0.6', { + 'checksums': ['34694b5c67ce8fcbdc90aac2ac80a74d4b66515f383e6301aea7c020009ebe7f'], + }), + ('ALDEx2', '1.28.1', { + 'checksums': ['492e774d4e72c86511028420eac13ec3cd49a210849c10e9257f51aa45e9f776'], + }), + ('dada2', '1.24.0', { + 'patches': ['dada2-1.16.0-remove-sse-on-aarch64.patch'], + 'checksums': [ + '9dd083928fc06d53cdb0a2e2d35be7c304fac74a300f8d3c3026022859b5725b', # dada2_1.24.0.tar.gz + # dada2-1.16.0-remove-sse-on-aarch64.patch + 'ec840afde51428f6f2d1a480b7f0da16660c1d7a234699fa5e23fd6e66888935', + ], + }), + ('LEA', '3.8.0', { + 'patches': ['LEA-3.0.0_support_aarch64_and_ppc64le.patch'], + 'checksums': [ + 'c0fd5b5a66aff94d65b8961409c226966aa96a02eb7d1e9a9e75382226e5b774', # LEA_3.8.0.tar.gz + # LEA-3.0.0_support_aarch64_and_ppc64le.patch + 'caeaae7aa0577540bc9c03b54ce5a0fe4ff1a28ac503106e2b3acd1b9db82881', + ], + }), + ('tximport', '1.24.0', { + 'checksums': ['1db129f369b37e5ebaefa85b724b1e640fa50c8317f009834ae7f37d0552d9b2'], + }), + ('SingleCellExperiment', '1.18.0', { + 'checksums': ['f76ccbb90d2cf14edca37f34815b3242e25eb18dd749eedd97f15b47f7c22a68'], + }), + ('beachmat', '2.12.0', { + 'checksums': ['0c292f7368fb6a7d0809f332a02576d6c6cdf3b86ae22fa493ae062ce5de8639'], + }), + ('RcppAnnoy', '0.0.19', { + 'checksums': ['89b209900516f3096b53c90937081fb8965c605c867aa465f1b3b68092b7688a'], + }), + ('RcppHNSW', '0.3.0', { + 'checksums': ['a0eb4eea65e28ba31e8306a1856f7e617a192bd448b148f88abe99181cbde007'], + }), + ('BiocNeighbors', '1.14.0', { + 'checksums': ['bda4dfa69b93b21a4d6949e2ebaa4265d467b253130e7192c271f7cbea8783a8'], + }), + ('rsvd', '1.0.5', { + 'checksums': ['e40686b869acd4f71fdb1e8e7a6c64cd6792fc9d52a78f9e559a7176ab84e21e'], + }), + ('ScaledMatrix', '1.4.0', { + 'checksums': ['949533de2730ae04794dc386e08e08f46a95471e1f32272fbcf01cbb6a31c05c'], + }), + ('BiocSingular', '1.12.0', { + 'checksums': ['7dd45d85c0c8248406caab4accb74b483d0066443e443b51bc5049602df32aeb'], + }), + ('scuttle', '1.6.2', { + 'checksums': ['f64fe1c7478b45d062656cfd2ecad3341abb1b1d9eb0ac0857dd0ce2f8c0d55a'], + }), + ('RcppML', '0.3.7', { + 'checksums': ['325c6515085527eb9123cc5e87e028547065771ed4d623048f41886ae28908c6'], + }), + ('scater', '1.24.0', { + 'checksums': ['3c9718fd782a69159d4361f497fea417478682f200274b09b6c5d7c3dfcb1137'], + }), + ('sitmo', '2.0.2', { + 'checksums': ['448ef8d56e36783354011845daf33f1efb83ea3b9685eea75eaf5134e24fa8c2'], + }), + ('dqrng', '0.3.0', { + 'checksums': ['4beeabfe245ce7196b07369f2a7d277cb08869ad8b45a22c6354c4cc70a39abb'], + }), + ('bluster', '1.6.0', { + 'checksums': ['681356e8ff7f8be93115a733f18b8a66a4ae8e841d59908d831ab67a983789bc'], + }), + ('metapod', '1.4.0', { + 'checksums': ['ebe8d6ce014448fe43b21cb5525339be95457931246a104ec6983caa1060e9a5'], + }), + ('scran', '1.24.0', { + 'checksums': ['1c997e6c653e74bc99a4b249ead5490e47523553adcf5f6f31aa8454066de775'], + }), + ('SC3', '1.24.0', { + 'checksums': ['e253051097403d8c5cadad27193cfc35e402efe943ed3132c4ce95fc53073d9d'], + }), + ('ComplexHeatmap', '2.12.0', { + 'checksums': ['c5e8e76184e7bf91b1b1ee36d48dd0b03ff08d019c567038cb37213ae94e6495'], + }), + ('GENIE3', '1.18.0', { + 'checksums': ['54ccf0e155f8160b5903a9bbfa77d05be32a9a65e472f7906a392dfbedb57b40'], + }), + ('dupRadar', '1.26.1', { + 'checksums': ['b63bd2946ce00e4ce1104c691dea8b8bc7407c9879491ba4e0a8d105ebb3ce51'], + }), + ('DNAcopy', '1.70.0', { + 'checksums': ['8cc7c37dd99dc90d0543ae24e7662aa10a52788a6b54fdaccb04d165d1257081'], + }), + ('sva', '3.44.0', { + 'checksums': ['441d2096740bd7acceedd5704b104c077adf0226821f49b584405160732a424d'], + }), + ('ballgown', '2.28.0', { + 'checksums': ['089c8fcc1650fd4872ac5eaeb3dfbfd498d8cb977f46264bd4b54f5dbd1b1851'], + }), + ('DropletUtils', '1.16.0', { + 'checksums': ['9cb38acd4097f448dd39ead182f6cf36a9b83e124245e7e21d4681d323f408ff'], + }), + ('DeconRNASeq', '1.38.0', { + 'checksums': ['661e11800fc7ce9706e735b18e0a16e0176a9a6b133a102944a5f6ac119a5583'], + }), + ('GSVA', '1.44.2', { + 'checksums': ['580b70cd77d2a38ffda3bba6f78e44f5d27f6ed09b5297a3eed8fd81a1090260'], + }), + ('PureCN', '2.2.0', { + 'checksums': ['db490d56e6f69c15e3d9967a1e9eecf2647bf029b60b6e032d0a6a297a52a6e5'], + }), + ('globaltest', '5.50.0', { + 'checksums': ['452736d1d75be95b5781888eaf0d0fc0809e9539bb0f74882f111c9a6a4fb055'], + }), + ('GlobalAncova', '4.14.0', { + 'checksums': ['641b24765da7bdbc5fa76c9a3edd19e37274c1e99dc4714e432e3a06e8048507'], + }), + ('vsn', '3.64.0', { + 'checksums': ['0ebf308a53caf996c5cb93685cddef071bb68975df25770a0dc7f4b765db47c9'], + }), + ('mzID', '1.34.0', { + 'checksums': ['c1245fd0cb5cd23601794520b9786e37f63887532d8f7a3449a4d9a4bcc72ae0'], + }), + ('mzR', '2.30.0', { + 'checksums': ['ba318b62d3a5d1297f25360eca1e29f926e7679351cf129ec36b0ab2e0000ab7'], + }), + ('MsCoreUtils', '1.8.0', { + 'checksums': ['f0f7d14b2d8560043a06dcad0c957d4c2070922cc7caa7ea54a81fe1d90ffd1c'], + }), + ('MSnbase', '2.22.0', { + 'checksums': ['a38f0232b8aa8b1713cf5f9071447a3a00c1866f0d82b49f61c672c1c604f6f7'], + }), + ('MassSpecWavelet', '1.62.0', { + 'checksums': ['69b44651c7b7862523617d8f9b4700652af01b5485e0e574fd011e377cfb313d'], + }), + ('MsFeatures', '1.4.0', { + 'checksums': ['037b64dada359ed60c4c5ad474c20560251ba13e827c24c9ba250c4c30c33184'], + }), + ('xcms', '3.18.0', { + 'checksums': ['b58763f7c1520c7b02702cc371a2a0df3419a5deae3d223cc24552248e685f5c'], + }), + ('CAMERA', '1.52.0', { + 'checksums': ['257b25b53fe9e73b6b6d1a366ca0a9160d307527eecd2fbf47c1a1872a88e84b'], + }), + ('fgsea', '1.22.0', { + 'checksums': ['ef56433dfff96c1ab20737d6af954c1c6f5158fb74654ce875849aa8def3d646'], + }), + ('GWASExactHW', '1.01', { + 'checksums': ['e850ed40fbf14b02eb3798603cfb111fe3718bb69d74c0ff4cb6f679209a15a7'], + }), + ('quantsmooth', '1.62.0', { + 'checksums': ['3a2bf8786a52c3709c2b5baf006f77365acd806cc2383005b24d471a43a8ea08'], + }), + ('GWASTools', '1.42.0', { + 'checksums': ['9fc08c28ece2f22ba9b834645f0c2e6bc0105a869f08338012c717a9ae620f58'], + }), + ('SeqArray', '1.36.2', { + 'checksums': ['17ca83fdae5175b7f0631f95598602c5f8209ed285899d2b47b13bfae11c9312'], + }), + ('SeqVarTools', '1.34.0', { + 'checksums': ['6a2c3275c4adc0d6fab912b5d00747456fd80c2c8063172ac6de250cde5c2abe'], + }), + ('GENESIS', '2.26.0', { + 'checksums': ['2c517d2e008cd2d4fbb5b19c7ed0e58b33b5fb3a8fa7aec108dd6f9aa4e9c3e2'], + }), + ('MLInterfaces', '1.76.0', { + 'checksums': ['453f7b0aa2a91f5e3815b9ae37fe3e0dff1dfa19a3840f089bee46d9670a2d9d'], + }), + ('pRoloc', '1.36.0', { + 'checksums': ['ffba6a8083ffd1153c6880f3e5f6522a96f5f1c578d29f68f9691bc059b7df86'], + }), + ('pRolocdata', '1.34.0', { + 'checksums': ['10030fafa36d8ab321e98341b471e4f08072974797074bf69d2faa54bddd33ac'], + }), + ('fresh', '0.2.0', { + 'checksums': ['a92db254ae88e8371efac44efe2cf1f5be7cce62291fdf994ebd68c14dad079d'], + }), + ('waiter', '0.2.5', { + 'checksums': ['9ac25e979db9242598bd0492ff862360009b51ce672184ec9f4eeb2232164979'], + }), + ('shinydashboardPlus', '2.0.3', { + 'checksums': ['49a88cfa396f880ff4faf558bb038763084287c932e27b0c9251f4d676584d83'], + }), + ('shinyhelper', '0.3.2', { + 'checksums': ['f7ed62543ab4d05a34b69a9183517a09e93e1b2da85b113282de0f9982db90b0'], + }), + ('shinyWidgets', '0.7.0', { + 'checksums': ['d4cb8ab7a96861a819128f9deeb293e8178f90fcd51f0e84467161ca7cd36711'], + }), + ('pRolocGUI', '2.6.0', { + 'checksums': ['b097d2c35429c5612b789af3438f9a83926659ffc0e019ef7b32d017fcb48848'], + }), + ('EBImage', '4.38.0', { + 'checksums': ['510381699581592915aa5e73271f99b8ca73fe2a92fb96b86a699ac157219ded'], + }), + ('GenomicScores', '2.8.2', { + 'checksums': ['f2a4823ad57d47528044a05ac16b3c84868334f21d95ac0e2e2d58950cef2c8b'], + }), + ('BSgenome.Mmusculus.UCSC.mm10', '1.4.3', { + 'checksums': ['dcf602bf9fadf1ef4ce70e0c0fc92b6435467df5affe7d0872d88a93b99ff9ee'], + }), + ('TxDb.Mmusculus.UCSC.mm10.knownGene', '3.10.0', { + 'checksums': ['696281749d01737c94894564d62093433045bc007a4528cc3d94f205edb54977'], + }), + ('regioneR', '1.28.0', { + 'checksums': ['6ea89b61959317a16a16a16f589df0996eb55123814a7674fab18720b6889087'], + }), + ('InteractionSet', '1.24.0', { + 'checksums': ['a56a76d729d30824b533e01692f0badfce6abe708b568870d4a86e5944af5162'], + }), + ('ChIPpeakAnno', '3.30.1', { + 'checksums': ['1ed141ec6994a7a548e7dcd41de3bfd54352cb7e85b42dab77ecb3de287d4628'], + }), + ('seqLogo', '1.62.0', { + 'checksums': ['b9f3c5038c8ca343f25a938ccd87a90ef1ee99be4bca474dab4c9d50d11063d2'], + }), + ('rGADEM', '2.44.0', { + 'checksums': ['e4d928382ff48651860057cbf66e30c9670c4ee97322d761b2c00e063e6f7d04'], + }), + ('MotifDb', '1.38.0', { + 'checksums': ['7165a40692d2c906cfbe6513e5e2759ff6efd3e00547d5e288b16d0f28f8ceb3'], + }), + ('poweRlaw', '0.70.6', { + 'checksums': ['efc091449c5c6494c1c13c85a8eb95625d1c55ffffebe86c7ea16e4abbafa191'], + }), + ('CNEr', '1.32.0', { + 'checksums': ['780a43bba1307625b1bf395c20a22002b7338ea3796f2e20eef95ab45dc9fb17'], + }), + ('DirichletMultinomial', '1.38.0', { + 'checksums': ['bdae3433f4fcf27f8aae91f7ee5f14c4b6f6263d7ba89d4bcd9502f4b1808096'], + }), + ('TFMPvalue', '0.0.8', { + 'checksums': ['6d052529f7b59d0384edc097f724f70468013777b6adf4c63e61a359029d3841'], + }), + ('TFBSTools', '1.34.0', { + 'checksums': ['3c899efd9c44cb9398ecff7a6fb40fa8fd2dc9b4deaf8fd3684e9ece440ed250'], + }), + ('motifStack', '1.40.0', { + 'checksums': ['1fe01cd6ae2e700f35d21c937976cbf48a331626c086e4cc5e9f41364e875134'], + }), + ('ATACseqQC', '1.20.2', { + 'checksums': ['17cf6c17610c287a187010f30b880ae57e5e9f9ef42b3d018fec01c92ab0474a'], + }), + ('ResidualMatrix', '1.6.0', { + 'checksums': ['445b280e890d70303200a48599211c25841c03b564928cdf15924ba0f61b59de'], + }), + ('batchelor', '1.12.3', { + 'checksums': ['ac4bd7758ddf758ec599873c6ac698721ca11417db7a8b87799daa07371c3d02'], + }), + ('gsmoothr', '0.1.7', { + 'checksums': ['b75ffd2a4a0f357762e02e46e355b45cc90ea637830f0a1b01f216bb4541e903'], + }), + ('Ringo', '1.60.0', { + 'checksums': ['ec7e0b3897400f8137b33d01d3f8c0842991c1ac273ea17ea9518617eeefd5fe'], + }), + ('R.devices', '2.17.1', { + 'checksums': ['3b7e57039311c034ff87ccebef4f16410d59985693c47949ecefa49a166c9c09'], + }), + ('R.filesets', '2.14.0', { + 'checksums': ['707dd7c099aeadbecebbd2ba57e6400405aa44487c641f3729ce06c4c642bb23'], + }), + ('aroma.light', '3.26.0', { + 'checksums': ['da6fd263bcf8a66b8b6f09bc16a1360fc5c92c4c415794d22b4038bd79da8088'], + }), + ('PSCBS', '0.66.0', { + 'checksums': ['58805636e55e0fd3f57bd4a0e296a8bb3d57a7bdd0fdd5868a73ddc83d173a93'], + }), + ('aroma.core', '3.2.2', { + 'checksums': ['35e0312e403a1894da036afac12d1d727c937e666d7eb400bfe4018b21244855'], + }), + ('R.huge', '0.9.0', { + 'checksums': ['f12d113a965603cfdbbb46e1a57331d267916235555b22f2bbc06caa302ae58e'], + }), + ('aroma.apd', '0.6.0', { + 'checksums': ['87513774baeed8e1d43f819e615c85278aef748ebc842f1ee50686c3392e37d1'], + }), + ('aroma.affymetrix', '3.2.0', { + 'checksums': ['d279cf13cf6ed8369cfdf6682ace12924379bad578003453449aa1ccec31b0a7'], + }), + ('Repitools', '1.42.0', { + 'checksums': ['48a60c930cae9343b0820c88e274c6c5c473fc73075ef966ff272a3e70f35ac9'], + }), + ('BSgenome.Hsapiens.UCSC.hg38', '1.4.4', { + 'checksums': ['024e3571b70f8e07bd50c4dd4d2dc05288497bf5409a9ac4ef12db94b081b50f'], + }), + ('MEDIPS', '1.48.0', { + 'checksums': ['a025c9f0c5846ecd9e16ba3945c6522080272789c46ebaffb1cb422c8f12afe3'], + }), + ('RProtoBufLib', '2.8.0', { + 'patches': ['RProtoBufLib-2.8.0_fix-protobuf-build.patch'], + 'checksums': [ + 'f7160c1623f50f0e23d14e7e99a2e6c018186871f7f1f68c9171031f6ae678d7', # RProtoBufLib_2.8.0.tar.gz + # RProtoBufLib-2.8.0_fix-protobuf-build.patch + '8775d74e2288000c57575f4ef45a875b4a377ac02f89efa947699ea786bedf64', + ], + }), + ('cytolib', '2.8.0', { + 'checksums': ['cf4b6d2f32610c14c967ac791ea762e187776ace978c6135a2453116b51865a1'], + }), + ('flowCore', '2.8.0', { + 'checksums': ['19ce4ffbf70bd3b5a68b045f0c4a21f85c0586ff0817be22d01b44c2b289cc9e'], + }), + ('mutoss', '0.1-12', { + 'checksums': ['2889ae3d502157592697124eb86adc14911e2b7fdaa7204743a376b1eeb967fa'], + }), + ('qqconf', '1.2.3', { + 'checksums': ['9b5b6042ea8e52e6e049807c0b5e3bfd534b624bd257be769de69cf505fece62'], + }), + ('metap', '1.8', { + 'checksums': ['ee9501a8de8a4c47af1632e6053e42ef53fc4b8bdf0f2759edc4d3eefaf5552b'], + }), + ('uwot', '0.1.11', { + 'checksums': ['4fcf90f1369a2a1f01db9e05a2365b155b2ada8e51e1f7f3ba5122d86affd41b'], + }), + ('scattermore', '0.8', { + 'checksums': ['dbdd73d8261cb063464bb29d5c17733b7e87bc50a19948bc80439e19f2a9f8e5'], + }), + ('SeuratObject', '4.1.0', { + 'checksums': ['9ca406cb3bd95c588e1a81c5383e3173a446cc0667142b139ca32685b4b20a05'], + }), + ('Seurat', '4.1.1', { + 'checksums': ['201aa96919b32378fc4cb67557188214c1242dcbae50cadd7d12c86666af8ace'], + }), + ('ALL', '1.38.0', { + 'checksums': ['1fdce1f158f0c8c68ab9c86e0464ec9e70a8a3470d6a3da7abfc88d10b012010'], + }), + ('ConsensusClusterPlus', '1.60.0', { + 'checksums': ['f7809db4eef81367be8b92b327e64dfd373e689893f0a99dd238e54a7a644180'], + }), + ('flowViz', '1.60.2', { + 'checksums': ['2531766d40373f44794cb64d8d7ac993e97e1730ae62ac25e7405b6904fb3c23'], + }), + ('ncdfFlow', '2.42.1', { + 'checksums': ['67ef4d897a1a497d6c822bcb924169800773d1bcfb5d5e305cb60971e7eea91c'], + }), + ('aws.signature', '0.6.0', { + 'checksums': ['f7fe4f686979be21e5a8ba7ae11f0fade4f5aaf4e98063b5349ee0962dbb9496'], + }), + ('aws.s3', '0.3.21', { + 'checksums': ['bd21054ab63555d294e7465dcb6c86f107db52ba841aeac5bdf4d00af0674c8c'], + }), + ('flowWorkspace', '4.8.0', { + 'checksums': ['5a6305edbe8da4651bfa8d4d866411b097833d12ad55687a91a133244c8a3e66'], + }), + ('ash', '1.0-15', { + 'checksums': ['8b0a7bc39dd0ce2172f09edc5b5e029347d041a4d508bbff3f3fd6f69450c2ab'], + }), + ('hdrcde', '3.4', { + 'checksums': ['4341c6a021da46dcae3b1ef6d580e84dcf625c2b2139f537d0c26ec90899149b'], + }), + ('rainbow', '3.6', { + 'checksums': ['63d1246f88a498f3db0321b46a552163631b288a25b24400935db41326636e87'], + }), + ('fds', '1.8', { + 'checksums': ['203a5e7671e542dcb83d4c75d0f4012aaebc32d54f94657afaf9e71e99dd0489'], + }), + ('fda', '6.0.5', { + 'checksums': ['14445776fc65284cd6cae98e5b4dd14c2626d96db5f78c0fcc6aabce5419b8f1'], + }), + ('flowStats', '4.8.0', { + 'checksums': ['9243df5cb48531a08137d9789f5e7a797c4cf60102ccb14fb397560195486cc9'], + }), + ('flowClust', '3.34.0', { + 'installopts': "--configure-args='--with-gsl=${EBROOTGSL} --enable-bundled-gsl=false'", + 'checksums': ['93aeb50d3fd5c3fa3c9951496e639e0bf17cff8d13cb0bed1749418574aabb14'], + }), + ('openCyto', '2.8.2', { + 'checksums': ['a3de6596f03536e70aeb3f800861fdb53f4f6514c9d36499061aed94016d883d'], + }), + ('ggcyto', '1.24.1', { + 'checksums': ['450c300a9c7c2cd2d02763fa35ae73aaf16fbeef7ab45ed6abf2e38d4e0786b3'], + }), + ('CytoML', '2.8.0', { + 'checksums': ['399f4daacc8b69adc47f9a804041af443d28b5f2ea5f094d2aa805e87653e76e'], + }), + ('colorRamps', '2.3.1', { + 'checksums': ['61f1290824380ae2fe4649f296649e0a155b73ced41479686150400f8a9c568a'], + }), + ('ggnewscale', '0.4.7', { + 'checksums': ['6b12ac9947fd3161941b2bb85c00a18d5fc794ad8b1e22a6f37f63ac8d3f0a81'], + }), + ('ggpointdensity', '0.1.0', { + 'checksums': ['3ea646cf183c8bf7869b122a4ee972b53709056ff443ea71551b823524092a31'], + }), + ('FlowSOM', '2.4.0', { + 'checksums': ['8518c515dfefcf9ba970a6e99815cc2af9809b1d5bb6aa300b28d55a74d3542d'], + }), + ('HMMcopy', '1.38.0', { + 'checksums': ['7d30c261c3c9299c0dcd1f31488a5adb8191ad13b4267aaea0db77ddb920eb42'], + }), + ('diffcyt', '1.16.0', { + 'checksums': ['abe58173f953fd273e93dbc851e0735357fce9f4c4aa1e2a3d8f88573ff5da57'], + }), + ('blme', '1.0-5', { + 'checksums': ['679a4f19d34a584c2390ffab37810a31f6834b913fceaa2409d297ccdf912310'], + }), + ('variancePartition', '1.26.0', { + 'checksums': ['9b9fe9790c06ecb7c945685b8956e20d9f5b772745c3f471f6fd818528ee6172'], + }), + ('muscat', '1.10.1', { + 'checksums': ['cd3ddcd139a08b5bae9912b0848dcab8692e6550d187357ddb22a9ff309c7fc8'], + }), + ('IlluminaHumanMethylation450kmanifest', '0.4.0', { + 'checksums': ['41b2e54bac3feafc7646fe40bce3aa2b92c10871b0a13657c5736517792fa763'], + }), + ('IlluminaHumanMethylationEPICmanifest', '0.3.0', { + 'checksums': ['e39a69d98486cec981e97c56f45bbe47d2ccb5bbb66a1b16fa0685575493902a'], + }), + ('IlluminaHumanMethylation450kanno.ilmn12.hg19', '0.6.1', { + 'checksums': ['3627d75a6303f4d307fa6daf0c5afd57649c60a268b3d4be7e8ac8edc4b1e288'], + }), + ('IlluminaHumanMethylationEPICanno.ilm10b2.hg19', '0.6.0', { + 'checksums': ['4decdbc78a6a8d02bf8aecb0d6e1d81134ae9dbc2375add52574f07829e8cd69'], + }), + ('IlluminaHumanMethylationEPICanno.ilm10b4.hg19', '0.6.0', { + 'checksums': ['2c8128126b63e7fa805a5f3b02449367dca9c3be3eb5f6300acc718826590719'], + }), + ('conumee', '1.30.0', { + 'checksums': ['c80828acdc1855186d6c85cd15c84871a344e2060a43cdf974ad4ffdf736efdf'], + }), + ('BSgenome.Cfamiliaris.UCSC.canFam3', '1.4.0', { + 'checksums': ['99c55b6f7808822a3dae6679e60ecfb88a2b618159484bc35303c000bd4820c7'], + }), + ('ExperimentHub', '2.4.0', { + 'checksums': ['74d2b33433436f0c01e1a5c42538044d130439d84df07be60f5f859a37521686'], + }), + ('SingleR', '1.10.0', { + 'checksums': ['beb04226eb673fc592df7dcf7bd4e5301aaebb1af1a090221dbb0bfebc617e61'], + }), + ('FlowSorted.Blood.EPIC', '2.0.0', { + 'checksums': ['44323f350cec601eb73c3235571b02b18e4f0e9633c9f8ab88377fe9f28a17f3'], + }), + ('FlowSorted.CordBloodCombined.450k', '1.12.0', { + 'checksums': ['9b12170568c3ba8c7f71c339d9c43d020e0c36c21f59851fcef98c78cf0bc0dd'], + }), + ('DRIMSeq', '1.24.0', { + 'checksums': ['94a4fd7143ff3015ebb830445de6517394cb9fb976b5f201f76a10190722f0b6'], + }), + ('stageR', '1.18.0', { + 'checksums': ['3e7141d1b02c44b124a3b6d981b1cdf0389c1af1b1b00c758e4659420d8c435b'], + }), + ('isva', '1.9', { + 'checksums': ['9fd016e0b34034d271d45f8a0d0db62780bf0187112e45f610aa9237014e1d17'], + }), + ('org.Mm.eg.db', '3.15.0', { + 'checksums': ['c658df080feb03fedfcbb5f772f3683ff7272b2de3deee055292005b3093d78a'], + }), + ('org.Rn.eg.db', '3.15.0', { + 'checksums': ['e09eb3e6a7d8c73ba3de018d8e9715b353ad5f5dfd8a488d67e016d115dea47b'], + }), + ('ROC', '1.72.0', { + 'checksums': ['62077c63539636fbf21ad5630aafe369d789c8355050a3a56df82f214103d879'], + }), + ('wateRmelon', '2.2.0', { + 'checksums': ['fb92984b6eafe8bc56849e1520961749dec7285e195c5e8754ccedbc94f3b829'], + }), + ('GLAD', '2.60.0', { + 'checksums': ['bf00850efc7a19f61cf3ca825a48f7206e8339e036ce465a7ddc1f6059645509'], + }), + ('missMethyl', '1.30.0', { + 'checksums': ['81fa1e991bc3dbd5c2ec8fbdf2a55ab935f0c231f8bc71666855f7bc8c22d146'], + }), + ('MethylSeekR', '1.36.0', { + 'checksums': ['5fa7880d1967570fa5ea2c2526fe47c6323eba7377cf0cf774fb26e21bd13590'], + }), + ('affxparser', '1.68.1', { + 'checksums': ['9a462b6dc5c3592b32cdc06afc4cc3d50bdb0f419c9156c9f7ed1faff913a99b'], + }), + ('ccdata', '1.22.0', { + 'checksums': ['cc5057a0cdd38adc36fa3642df5d5fa40c4f94029840b8e38b57e0f307cb8fbe'], + }), + ('lsa', '0.73.3', { + 'checksums': ['f07f1159f215501495d7a077911e7ed2ac61e1705899f3be3a5cf9012778619a'], + }), + ('ccmap', '1.22.0', { + 'checksums': ['c7cbf2e562b392ec795aebd9bd52313866cfd10add80af012399064bc1143c0f'], + }), + ('oligo', '1.60.0', { + 'checksums': ['7e97ad2b355b31679175634c7a8c1cb120334e1c8808dc75412b55a7b249f278'], + }), + ('SMVar', '1.3.4', { + 'checksums': ['aaea3ef7da6cee1bb86fef166df766229c8b7cac9fcf5bc28da7adff5e2c01d6'], + }), + ('metaMA', '3.1.3', { + 'checksums': ['3a0c0351b83419984095cb2c1d77d222d1cdb7158dd8c80fc384bf175ab9358e'], + }), + ('randomcoloR', '1.1.0.1', { + 'checksums': ['cbae51a47a92b2cc3d5ab48877818404429fb73fc795430ec622a8dff20f1067'], + }), + ('shinyBS', '0.61.1', { + 'checksums': ['0aed72473060531d0e782ba62092493002137df6b251af9e2294e2a40a32a140'], + }), + ('shinypanel', '0.1.5', { + 'checksums': ['3264a5a75a306881e6a1622413298d7f3cda3dc78f54446171925774bab97a00'], + }), + ('crossmeta', '1.22.1', { + 'checksums': ['9aad965ab2332e8001a2cc0eff4fd4ae9859a77dadf117870135ebb242d00be3'], + }), + ('snpStats', '1.46.0', { + 'checksums': ['42911ba76e4b38f4d3a01d5de81e59d10462d79f5cc642a62c26d9c3b02dab28'], + }), + ('mixsqp', '0.3-43', { + 'checksums': ['58042d832803462ca03197a9dbd49d022378756de8996682b89e6bc009d02ce2'], + }), + ('susieR', '0.12.16', { + 'checksums': ['89452c3d40a8396a3236e1493003e3a06173bfee90619e1b1aca09c435a00826'], + }), + ('coloc', '5.1.0.1', { + 'checksums': ['427bfa566a6ae6ef719401c9214188ff3cd84aad9752ccbf22dc9f61e30b6a47'], + }), + ('SCANVIS', '1.10.0', { + 'checksums': ['276c44e0c9db797442423f0851a22c8695f547eaa603c3b4ed72587f5ffdd38c'], + }), + ('EnsDb.Hsapiens.v86', '2.99.0', { + 'checksums': ['552c07bcc2a1420089d4330deafaeb5303e03d0fa75c96b78075dfd67eeee7be'], + }), + ('agricolae', '1.3-5', { + 'checksums': ['83822535608b5307ca7d0067dbcf1ea3b7f2b1be17a52a55b72cc9f3c6bdec5d'], + }), + ('bookdown', '0.27', { + 'checksums': ['2e724abbe63fdceb74fc4ac59fcf1dcaac5f768617f6fbeb752df401e1899f23'], + }), + ('BiocStyle', '2.24.0', { + 'checksums': ['459527c4b14b003f9446f13ec7518b76032a4bc612c398420f38ad00c48a91db'], + }), + ('estimability', '1.4', { + 'checksums': ['4a9eac160958457eeaf442e0bcd698990851b30a8963a3519f2d7da28b4bfa41'], + }), + ('emmeans', '1.7.5', { + 'checksums': ['ba7e03bfa3127378ee347380c14d785fb85f0f4590bd454efc858e5d9623fe13'], + }), + ('ggdendro', '0.1.23', { + 'checksums': ['3a33e988c4fe12eec540876ad8ba09bda998773b2d2a90e043ebae4a69fa8eb8'], + }), + ('pmp', '1.8.0', { + 'checksums': ['692aad74ef842f485969ac2b22dc7d79645cb52f5e9f653fd999eeae375b6e89'], + }), + ('MultiDataSet', '1.24.0', { + 'checksums': ['ce62949e80a88d2e901878a8fc23671751563fa764ba7783ac2406f8a734da65'], + }), + ('MultiAssayExperiment', '1.22.0', { + 'checksums': ['0127ce0a68624c313874a177ea58d00046b3d2fdcd3efc79b0ddc59da828d7f2'], + }), + ('ropls', '1.28.2', { + 'checksums': ['ccc45171c1c25f88de4753da93d3ff70757eee17ced9cea3a47c30944be8f71d'], + }), + ('ontologyIndex', '2.7', { + 'checksums': ['33f4918cafb983635f9f831553daf15e10103dc375475e170f104a8eaf0e7048'], + }), + ('rols', '2.24.2', { + 'checksums': ['33b010e6c338aeddb57d625b4fba3d8ae30b2f1a0b5c2f8434bb255df432d630'], + }), + ('struct', '1.8.0', { + 'checksums': ['4080796019da2faed837b098731402a66fda365cfa6e88539ae0822ace168d0d'], + }), + ('ggthemes', '4.2.4', { + 'checksums': ['7b35168cf5b68f6f52dd533a1b345ec87e09d1a85ca68e8dc5377cdf95718567'], + }), + ('structToolbox', '1.8.0', { + 'checksums': ['b29d3000686b4cc73364c30b4b01cb097901cc9036db2648569f78b9f052b104'], + }), + ('EnsDb.Hsapiens.v75', '2.99.0', { + 'checksums': ['2c59f95959f344b2a3eaa65a00086b01a420823e30b0810fc81e49b08dcba64b'], + }), + ('ggseqlogo', '0.1', { + 'checksums': ['c14f145a982597f32264b37a5f2645206a0bee30dd2584a25cb8e3dc2f9b068f'], + }), + ('sparsesvd', '0.2', { + 'checksums': ['1a1f54d6b0dca6ae83e3f729a1895c91c58bfe55427dacc50ddb0d2c5d32a9f6'], + }), + ('docopt', '0.7.1', { + 'checksums': ['9f473887e4607e9b21fd4ab02e802858d0ac2ca6dad9e357a9d884a47fe4b0ff'], + }), + ('qlcMatrix', '0.9.7', { + 'checksums': ['1ef5e0350cfbdb07fca761fc7251584d39d3da2958ea813498b467e4f7661347'], + }), + ('Signac', '1.7.0', { + 'checksums': ['5e4456eeab29fa2df7f6236b050dec8cb9c073d7652a89ee5030a27f94e5e4bf'], + }), + ('motifmatchr', '1.18.0', { + 'checksums': ['e8a07d39783a8a69c3a69803f5804326265377af6c03654bfe434cde2b0056eb'], + }), + ('extraDistr', '1.9.1', { + 'checksums': ['9990348c4dbc611684fcb58ab8db7e856dfde1c9c86ffb7705f4b3dff6b2d7bf'], + }), + ('PRROC', '1.3.1', { + 'checksums': ['479118ce47c527bc97fb58d531a31cabc094d9843d62f16922009dc62e8248d4'], + }), + ('TSP', '1.2-0', { + 'checksums': ['2a7eee07197d01e3637fbb35beefbcd5211759a20974880d07abb3294e025308'], + }), + ('qap', '0.1-2', { + 'checksums': ['47a4ada3ae7a3a5c9304174bd5291daad60d329d527c0c6bb5ec1ac257584da5'], + }), + ('seriation', '1.3.5', { + 'checksums': ['f905e02f7cdb8a28c89c1d2578b1bfe62914d14110587fa2a905957771059236'], + }), + ('egg', '0.4.5', { + 'checksums': ['15c8ba7cf2676eb0460de7e5dfbc89fc3175ac22a8869cfd44d66d156fd6c7bb'], + }), + ('heatmaply', '1.3.0', { + 'checksums': ['0a5d269c4837dd66fbfa6b87fd648bdef222f1ad6f33df3f695d5164d6f71ef1'], + }), + ('OUTRIDER', '1.14.0', { + 'checksums': ['d1e57f34c7052db751a639029a47959b9baf9d2988795173ced69c06041cf72a'], + }), + ('FRASER', '1.8.1', { + 'checksums': ['03dc3478c4691e9c9e4882ae566bb74c53811135a5b0c289b67f7ad05d563dae'], + }), + ('JASPAR2020', '0.99.10', { + 'checksums': ['b9b92d141a317ebb32a14708229f6b82522ceeb5f1b88360d93b0a7cfe30375b'], + }), + ('AUCell', '1.18.1', { + 'checksums': ['f969bb6262af856e71b846e650f41a26e87838464670d2d50b1450ca7c3b999f'], + }), + ('RcisTarget', '1.16.0', { + 'checksums': ['35124ea89250e397cc8ee591c09af1203c85a70ee8517df61812cb6cde94d69d'], + }), + ('NMF', '0.24.0', { + 'checksums': ['481811d35b3bbc07e9a60e2f853b05ef26581b43be9c6c4bab81151b8dcadd93'], + }), + ('densEstBayes', '1.0-2.1', { + 'checksums': ['4b7066e18902ee2a0ea084513b237b5fb8e43fe3102354c2fb216d5a8c7df5df'], + }), + ('reldist', '1.7-1', { + 'checksums': ['2693ab9660e34a3f5e27bf8eec985f7f8dcd625df14779367c93557c15c66b9e'], + }), + ('M3Drop', '1.22.0', { + 'checksums': ['4b09b331181219980ba16d89e6c3891fc45cfa32526c7fc23900d4c9e1911841'], + }), + ('ExomeDepth', '1.1.15', { + 'checksums': ['112bcb536f5766d9d0b55e064feedd6727ccab14cb1edfdba1f0d7b890e55ad2'], + }), + ('bsseq', '1.32.0', { + 'checksums': ['25cee0bcaf95eeb734a76ad55f4e508b1201d99363b401df3d0d9ab5c58aeeca'], + }), + ('DSS', '2.44.0', { + 'checksums': ['561a87d9ca20c7607a2c6816ead719d16da4c0f19dd94d9e69543499e058858a'], + }), + ('pathview', '1.36.0', { + 'checksums': ['b861a0bf041ea83a0edd6f3bfe3aa73cd1879e48373ad117752c08774098e290'], + }), + ('chromVAR', '1.18.0', { + 'checksums': ['d514d3a0da41b71daabe7c273ec38fd52577caf46a0427000096ee49eadc1a6e'], + }), + ('EnsDb.Hsapiens.v79', '2.99.0', { + 'checksums': ['eff1ae8d7f4ed5c6bed335de63a758be593750fb0b3483c01cf50402688d244d'], + }), + ('WGCNA', '1.71', { + 'checksums': ['21f5349e888ea76241912600ee5c35a0d2fd50180568b9b08b2b597f099bf708'], + }), + ('DNABarcodes', '1.26.0', { + 'checksums': ['867590e663f88db8f757b275f28cd5c75dc6e14eff1d91d7c83d43c9eea65858'], + }), + ('CAGEr', '2.2.0', { + 'checksums': ['1cd64f6b045a5e246ae92cd709234c806edfcc25463819df0bd32fe4f4b2fd0d'], + }), +] + +modextrapaths = {'R_LIBS_SITE': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['AnnotationDbi', 'BiocManager', 'GenomicFeatures'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/R/R-4.1.0-foss-2021a.eb b/easybuild/easyconfigs/r/R/R-4.1.0-foss-2021a.eb index b897944bd7d5..3bdb84f74b23 100644 --- a/easybuild/easyconfigs/r/R/R-4.1.0-foss-2021a.eb +++ b/easybuild/easyconfigs/r/R/R-4.1.0-foss-2021a.eb @@ -1650,7 +1650,8 @@ exts_list = [ 'checksums': ['d04a45197646fb36bc38870c1c2351cb56b912bd772b1ebfa25eaeef35fda9c0'], }), ('plot3Drgl', '1.0.2', { - 'checksums': ['aa874891446a395f01791d80a5a0f1f9a1c2c41f029de3a8d5af9aa47f46a496'], + 'checksums': [('aa874891446a395f01791d80a5a0f1f9a1c2c41f029de3a8d5af9aa47f46a496', + '805513029895cf5a81f18ede4123ef2525a236cd555437609229fe720c346e14')], }), ('OceanView', '1.0.5', { 'checksums': ['c16e1bed97f4ede46dc017fdd6bd7575d925b57bd2601317bd3ad2357609f885'], diff --git a/easybuild/easyconfigs/r/R/R-4.1.2-foss-2021b.eb b/easybuild/easyconfigs/r/R/R-4.1.2-foss-2021b.eb index 39614e50c0d2..9c0872e0343e 100644 --- a/easybuild/easyconfigs/r/R/R-4.1.2-foss-2021b.eb +++ b/easybuild/easyconfigs/r/R/R-4.1.2-foss-2021b.eb @@ -1683,7 +1683,8 @@ exts_list = [ 'checksums': ['d04a45197646fb36bc38870c1c2351cb56b912bd772b1ebfa25eaeef35fda9c0'], }), ('plot3Drgl', '1.0.2', { - 'checksums': ['aa874891446a395f01791d80a5a0f1f9a1c2c41f029de3a8d5af9aa47f46a496'], + 'checksums': [('aa874891446a395f01791d80a5a0f1f9a1c2c41f029de3a8d5af9aa47f46a496', + '805513029895cf5a81f18ede4123ef2525a236cd555437609229fe720c346e14')], }), ('OceanView', '1.0.6', { 'checksums': ['2c5165975d6c49fdc83a892cb0406584928dd44000c9774fffc00fbd2fec86f3'], diff --git a/easybuild/easyconfigs/r/R/R-4.2.0-foss-2021b.eb b/easybuild/easyconfigs/r/R/R-4.2.0-foss-2021b.eb index 661ca51251ba..46ee68285da3 100644 --- a/easybuild/easyconfigs/r/R/R-4.2.0-foss-2021b.eb +++ b/easybuild/easyconfigs/r/R/R-4.2.0-foss-2021b.eb @@ -18,6 +18,7 @@ checksums = [ builddependencies = [ ('pkg-config', '0.29.2'), ('Xvfb', '1.20.13'), + ('Autotools', '20210726'), ] dependencies = [ ('X11', '20210802'), @@ -1691,7 +1692,8 @@ exts_list = [ 'checksums': ['d04a45197646fb36bc38870c1c2351cb56b912bd772b1ebfa25eaeef35fda9c0'], }), ('plot3Drgl', '1.0.2', { - 'checksums': ['aa874891446a395f01791d80a5a0f1f9a1c2c41f029de3a8d5af9aa47f46a496'], + 'checksums': [('aa874891446a395f01791d80a5a0f1f9a1c2c41f029de3a8d5af9aa47f46a496', + '805513029895cf5a81f18ede4123ef2525a236cd555437609229fe720c346e14')], }), ('OceanView', '1.0.6', { 'checksums': ['2c5165975d6c49fdc83a892cb0406584928dd44000c9774fffc00fbd2fec86f3'], diff --git a/easybuild/easyconfigs/r/R/R-4.2.1-foss-2022a.eb b/easybuild/easyconfigs/r/R/R-4.2.1-foss-2022a.eb index 555269487152..1dfdcecb129c 100644 --- a/easybuild/easyconfigs/r/R/R-4.2.1-foss-2022a.eb +++ b/easybuild/easyconfigs/r/R/R-4.2.1-foss-2022a.eb @@ -40,7 +40,7 @@ dependencies = [ ('FFTW', '3.3.10'), # for fftw ('libsndfile', '1.1.0'), # for seewave ('ICU', '71.1'), # for rJava & gdsfmt - ('HDF5', '1.13.1'), # for hdf5r + ('HDF5', '1.12.2'), # for hdf5r ('UDUNITS', '2.2.28'), # for units ('GSL', '2.7'), # for RcppGSL ('ImageMagick', '7.1.0-37'), # for animation diff --git a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-GCC-8.3.0.eb b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-GCC-8.3.0.eb index d404a8cd8649..6e4afcf7720b 100644 --- a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-GCC-8.3.0.eb +++ b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-GCC-8.3.0.eb @@ -63,10 +63,6 @@ builddependencies = [ configopts = '-DUSE_MPI=OFF ' configopts += '-DUSE_GMP=ON ' -build_type = 'Release' - -separate_build_dir = True - # too much parallellism makes the build fail with: # No rule to make target 'localdeps/lib/libterraces.a'; # see https://github.com/amkozlov/raxml-ng/issues/108 diff --git a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-gompi-2019b.eb b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-gompi-2019b.eb index 983b0a97ec72..dd2cd4fdc19d 100644 --- a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-gompi-2019b.eb +++ b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-0.9.0-gompi-2019b.eb @@ -63,10 +63,6 @@ builddependencies = [ configopts = '-DUSE_MPI=ON ' configopts += '-DUSE_GMP=ON ' -build_type = 'Release' - -separate_build_dir = True - # too much parallellism makes the build fail with: # No rule to make target 'localdeps/lib/libterraces.a'; # see https://github.com/amkozlov/raxml-ng/issues/108 diff --git a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.1-gompi-2019b.eb b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.1-gompi-2019b.eb index 627946c4e803..4e0ac9e3be59 100644 --- a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.1-gompi-2019b.eb +++ b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.1-gompi-2019b.eb @@ -62,10 +62,6 @@ builddependencies = [ configopts = '-DUSE_MPI=ON ' configopts += '-DUSE_GMP=ON ' -build_type = 'Release' - -separate_build_dir = True - # too much parallellism makes the build fail with: # No rule to make target 'localdeps/lib/libterraces.a'; # see https://github.com/amkozlov/raxml-ng/issues/108 diff --git a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.2-gompi-2020b.eb b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.2-gompi-2020b.eb index b18fbb2c5fb1..9510c0e8ee07 100644 --- a/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.2-gompi-2020b.eb +++ b/easybuild/easyconfigs/r/RAxML-NG/RAxML-NG-1.0.2-gompi-2020b.eb @@ -62,10 +62,6 @@ builddependencies = [ configopts = '-DUSE_MPI=ON ' configopts += '-DUSE_GMP=ON ' -build_type = 'Release' - -separate_build_dir = True - # too much parallellism makes the build fail with: # No rule to make target 'localdeps/lib/libterraces.a'; # see https://github.com/amkozlov/raxml-ng/issues/108 diff --git a/easybuild/easyconfigs/r/RDKit/RDKit-2022.03.5-foss-2021b.eb b/easybuild/easyconfigs/r/RDKit/RDKit-2022.03.5-foss-2021b.eb new file mode 100644 index 000000000000..f551d9ac7c15 --- /dev/null +++ b/easybuild/easyconfigs/r/RDKit/RDKit-2022.03.5-foss-2021b.eb @@ -0,0 +1,77 @@ +easyblock = 'CMakeMake' + +name = 'RDKit' +version = '2022.03.5' + +homepage = 'https://www.rdkit.org' +description = "RDKit is a collection of cheminformatics and machine-learning software written in C++ and Python." + +toolchain = {'name': 'foss', 'version': '2021b'} +# avoid failing tests on skylake CPUs. comment out this line when building on CPUs that don't support AVX2 +# see also: https://github.com/rdkit/rdkit/issues/1674 +toolchainopts = {'optarch': 'mavx2', 'cstd': 'c++11'} + +source_urls = ['https://github.com/rdkit/rdkit/archive/'] +sources = ['Release_%s.tar.gz' % version.replace('.', '_')] +patches = [ + 'RDKit-2021.03.4_skip-broken-test.patch', +] +checksums = [ + '38e6fb9f063b6132310f17e654f2c4350876f9164b0a17b49fe3df7d0555a744', # Release_2022_03_5.tar.gz + '45869e01461b66e42c9305f5e8a65f696417e4777c2da60ef81d1e26e57d1b2e', # RDKit-2021.03.4_skip-broken-test.patch +] + +# Dependencies varies from version to version +# https://rdkit.readthedocs.io/en/latest/Install.html#installing-prerequisites-from-source +builddependencies = [ + ('CMake', '3.22.1'), + ('Eigen', '3.4.0'), + ('pkgconf', '1.8.0'), +] +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('SQLite', '3.36'), + ('matplotlib', '3.4.3'), + ('Pillow', '8.3.2'), + ('Boost.Python', '1.77.0'), + ('cairo', '1.16.0'), +] + +separate_build_dir = True + +configopts = "-DPy_ENABLE_SHARED=1 -DRDK_INSTALL_STATIC_LIBS=OFF -DRDK_INSTALL_INTREE=OFF " +configopts += "-DRDK_BUILD_INCHI_SUPPORT=ON " +configopts += "-DBoost_INCLUDE_DIR=$EBROOTBOOST/include -DBoost_LIBRARY_DIR_RELEASE=$EBROOTBOOST/lib " + +# merge source directory into build directory in order to run the tests +buildopts = '&& cp -RT %(builddir)s/%(namelower)s-*/ ./ && ' +buildopts += 'export RDBASE=$PWD && export PYTHONPATH=$PWD:$PYTHONPATH && ' + +# Specify path for libraries so that they are found during the tests when the module is built with --rpath flag. +buildopts += 'export LD_LIBRARY_PATH=%(builddir)s/easybuild_obj/lib:${LD_LIBRARY_PATH} && ' + +# 'ctest' allows to pass additional arguments opposed to 'make test' +buildopts += 'ctest --output-on-failure' + +local_libs = ['Alignment', 'Catalogs', 'ChemicalFeatures', 'ChemReactions', 'ChemTransforms', 'coordgen', 'DataStructs', + 'Depictor', 'Descriptors', 'DistGeometry', 'DistGeomHelpers', 'EigenSolvers', 'FileParsers', + 'FilterCatalog', 'Fingerprints', 'FMCS', 'ForceFieldHelpers', 'ForceField', 'FragCatalog', 'GraphMol', + 'hc', 'InfoTheory', 'maeparser', 'MMPA', 'MolAlign', 'MolCatalog', 'MolChemicalFeatures', 'MolDraw2D', + 'MolHash', 'MolInterchange', 'MolStandardize', 'MolTransforms', 'Optimizer', 'PartialCharges', 'RDBoost', + 'RDGeneral', 'RDGeometryLib', 'RDStreams', 'ReducedGraphs', 'RGroupDecomposition', 'RingDecomposerLib', + 'ScaffoldNetwork', 'ShapeHelpers', 'SimDivPickers', 'SLNParse', 'SmilesParse', 'Subgraphs', + 'SubstructLibrary', 'SubstructMatch', 'Trajectory'] + +sanity_check_paths = { + 'files': ['lib/libRDKit%s.%s' % (x, SHLIB_EXT) for x in local_libs], + 'dirs': ['include/rdkit', 'lib/python%(pyshortver)s/site-packages/rdkit'], +} + +sanity_check_commands = [ + "python -c 'import rdkit.rdBase'", +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/r/RNA-SeQC/RNA-SeQC-2.4.2-foss-2021b.eb b/easybuild/easyconfigs/r/RNA-SeQC/RNA-SeQC-2.4.2-foss-2021b.eb new file mode 100644 index 000000000000..33f4463def86 --- /dev/null +++ b/easybuild/easyconfigs/r/RNA-SeQC/RNA-SeQC-2.4.2-foss-2021b.eb @@ -0,0 +1,67 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'PythonBundle' + +name = 'RNA-SeQC' +version = '2.4.2' + +homepage = "https://github.com/getzlab/rnaseqc" +description = """Fast, efficient RNA-Seq metrics for quality control and process optimization""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'extra_cflags': '-fpermissive'} + +dependencies = [ + ('bx-python', '0.8.13'), + ('bzip2', '1.0.8'), + ('IPython', '7.26.0'), + ('matplotlib', '3.4.3'), + ('pyBigWig', '0.3.18'), + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('Seaborn', '0.11.2'), + ('Boost', '1.77.0'), + ('XZ', '5.2.5'), + ('zlib', '1.2.11'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('pycryptodomex', '3.9.8', { + 'modulename': 'Cryptodome', + 'checksums': ['48cc2cfc251f04a6142badeb666d1ff49ca6fdfc303fd72579f62b768aaa52b9'], + }), + ('rsa', '4.6', { + 'checksums': ['109ea5a66744dd859bf16fe904b8d8b627adafb9408753161e766a92e7d681fa'], + }), + ('agutil', '4.1.1', { + 'preinstallopts': "sed -i 's/package\.req/package.requirement/g' setup.py &&", + 'checksums': ['e58ed53ae209007328311603bd6e05e8cd2c509204b5e542c87f971a2530fb0d'], + }), + ('qtl', '0.1.8', { + 'checksums': ['8fdb99cda1ceff578a233db6c15a944fa57b43a2826af41c292e36848906117b'], + }), + ('rnaseqc', '0.0.3', { + # Build RNA-SeQC in the preinstall opts for the associated Python package + # RNA-SeQC bundles SeqLib, with HTSlib and BWA. These are old versions so we cannot use deps here + # rnaseqc version is from python/rnaseqc/__init__.py in the RNA-SeQC source code + 'patches': [ + 'RNA-SeQC-2.4.2_Makefile.patch', + 'RNA-SeQC-2.4.2_rle_auxtab-gcc-10.patch', + ], + 'source_tmpl': 'rnaseqc.v2.4.2.full_source.tar.gz', + 'source_urls': ['https://github.com/getzlab/rnaseqc/releases/download/v2.4.2'], + 'checksums': [ + 'b214151408696430aead56921b255e2b09efe5f6087a68446deae399227a1303', # rnaseqc.v2.4.2.full_source.tar.gz + '05b537eeef398646f51552c1dd26333e268b9b9eb3af2148681cb40ea0a5e4ba', # RNA-SeQC-2.4.2_Makefile.patch + # RNA-SeQC-2.4.2_rle_auxtab-gcc-10.patch + 'efb9ab63932bf25f3589de1e8f0c17bc1ef5ae928ba73e55d430b8a9761209cb', + ], + 'preinstallopts': "make && mkdir -p %(installdir)s/bin && cp rnaseqc %(installdir)s/bin/. && cd python &&", + }), +] + +sanity_check_commands = ["rnaseqc --version"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/Ray-project/Ray-project-1.13.0-foss-2021a.eb b/easybuild/easyconfigs/r/Ray-project/Ray-project-1.13.0-foss-2021a.eb new file mode 100644 index 000000000000..bcd6321d0863 --- /dev/null +++ b/easybuild/easyconfigs/r/Ray-project/Ray-project-1.13.0-foss-2021a.eb @@ -0,0 +1,54 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PythonBundle' + +name = 'Ray-project' +version = '1.13.0' + +homepage = "https://docs.ray.io/en/latest/" +description = "Ray is a fast and simple framework for building and running distributed applications." + +toolchain = {'name': 'foss', 'version': '2021a'} +toolchainopts = {'usempi': True} + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('protobuf-python', '3.17.3'), + ('PyYAML', '5.4.1'), + ('redis-py', '4.3.1'), +] + +use_pip = True + +exts_list = [ + ('grpcio', '1.43.0', { + 'modulename': 'grpc', + 'preinstallopts': "export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=%(parallel)s && ", + 'checksums': ['735d9a437c262ab039d02defddcb9f8f545d7009ae61c0114e19dda3843febe5'], + }), + ('aiosignal', '1.2.0', { + 'checksums': ['78ed67db6c7b7ced4f98e495e572106d5c432a93e1ddd1bf475e1dc05f5b7df2'], + }), + ('frozenlist', '1.3.0', { + 'checksums': ['ce6f2ba0edb7b0c1d8976565298ad2deba6f8064d2bebb6ffce2ca896eb35b0b'], + }), + ('Ray', version, { + 'source_tmpl': '%(namelower)s-%(version)s-cp39-cp39-manylinux2014_x86_64.whl', + 'checksums': ['ba0829d495dec0bc90a72169f93e4cb004962a37df4d9b0df23004ebefb6d221'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ray'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + 'ray --help' +] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/r/Ray-project/Ray-project-1.9.2-foss-2021b.eb b/easybuild/easyconfigs/r/Ray-project/Ray-project-1.9.2-foss-2021b.eb new file mode 100644 index 000000000000..939d9c992175 --- /dev/null +++ b/easybuild/easyconfigs/r/Ray-project/Ray-project-1.9.2-foss-2021b.eb @@ -0,0 +1,100 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PythonBundle' + +name = 'Ray-project' +version = '1.9.2' + +homepage = "https://www.ray.io/" +description = """Ray is an open source project that makes it simple to scale any +compute-intensive Python workload — from deep learning to production model +serving. With a rich set of libraries and integrations built on a flexible +distributed execution framework, Ray makes distributed computing easy and +accessible to every engineer.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +builddependencies = [ + ('Rust', '1.54.0'), # needed by maturin +] + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('aiohttp', '3.8.1'), # also provides frozenlist + ('dm-tree', '0.1.6'), + ('Flask', '2.0.2'), + ('gpustat', '1.0.0b1'), + ('libunwind', '1.5.0'), # needed by py-spy + ('OpenCensus-python', '0.8.0'), + ('protobuf-python', '3.17.3'), + ('PyYAML', '5.4.1'), + ('Redis', '6.2.6'), # needed by redis-py + ('OpenAI-Gym', '0.21.0'), # also provides lz4 + ('OpenCV', '4.5.5', '-contrib'), + ('scikit-image', '0.19.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('grpcio', '1.43.0', { + 'modulename': 'grpc', + 'checksums': ['735d9a437c262ab039d02defddcb9f8f545d7009ae61c0114e19dda3843febe5'], + }), + ('prometheus_client', '0.11.0', { + 'checksums': ['3a8baade6cb80bcfe43297e33e7623f3118d660d41387593758e2fb1ea173a86'], + }), + ('maturin', '0.12.6', { + 'checksums': ['2b14cfae808b45a130e19b2999acea423d2e10e7a29ae2336996ba72ba442ff6'], + }), + ('py_spy', '0.3.11', { + 'modulename': False, + 'checksums': ['3115c6e45cdab657f81c886f8b1664e7e2208b775396031eeea60e4d16fc861d'], + # disable auditwheel which checks and modifies existing installations + 'preinstallopts': "sed -i '/^bindings =.*/a skip-auditwheel = true' pyproject.toml &&", + }), + ('pydantic', '1.9.0', { + 'checksums': ['742645059757a56ecd886faf4ed2441b9c0cd406079c2b4bee51bcc3fbcd510a'], + }), + ('wrapt', '1.13.3', { + 'checksums': ['1fea9cd438686e6682271d36f3481a9f3636195578bab9ca3382e2f5f01fc185'], + }), + ('Deprecated', '1.2.13', { + 'checksums': ['43ac5335da90c31c24ba028af536a91d41d53f9e6901ddb021bcc572ce44e38d'], + }), + ('redis', '4.1.1', { + 'checksums': ['07420a3fbedd8e012c31d4fadac943fb81568946da202c5a5bc237774e5280a0'], + }), + ('smart_open', '5.2.1', { + 'checksums': ['75abf758717a92a8f53aa96953f0c245c8cedf8e1e4184903db3659b419d4c17'], + }), + ('sniffio', '1.2.0', { + 'checksums': ['c4666eecec1d3f50960c6bdf61ab7bc350648da6c126e3cf6898d8cd4ddcd3de'], + }), + ('anyio', '3.5.0', { + 'checksums': ['a0aeffe2fb1fdf374a8e4b471444f0f3ac4fb9f5a5b542b48824475e0042a5a6'], + }), + ('starlette', '0.17.1', { + 'checksums': ['57eab3cc975a28af62f6faec94d355a410634940f10b30d68d31cb5ec1b44ae8'], + }), + ('aiorwlock', '1.3.0', { + 'checksums': ['83f12d87df4b9728a0b8fda1756585ab0d652b107bab59c6084e1b1ad692ab45'], + }), + ('ray', version, { + 'source_tmpl': '%(namelower)s-%(version)s-cp39-cp39-manylinux2014_x86_64.whl', + 'checksums': ['76294786421799a2a157917cbe493f758ae2f5a0acee8ac23cb885936b1a4e35'], + }), +] + +sanity_check_paths = { + 'files': ['bin/ray'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} +sanity_check_commands = [ + 'ray --help' +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/r/RheoTool/RheoTool-5.0-foss-2019b.eb b/easybuild/easyconfigs/r/RheoTool/RheoTool-5.0-foss-2019b.eb new file mode 100644 index 000000000000..86bb0bbf1ae1 --- /dev/null +++ b/easybuild/easyconfigs/r/RheoTool/RheoTool-5.0-foss-2019b.eb @@ -0,0 +1,46 @@ +easyblock = 'Binary' + +name = 'RheoTool' +version = '5.0' + +homepage = 'https://github.com/fppimenta/rheoTool' +description = """RheoTool is an open-source toolbox based on OpenFOAM to simulate Generalized Newtonian Fluids (GNF) +and viscoelastic fluids under pressure-driven and/or electrically-driven flows.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = ['https://github.com/fppimenta/rheoTool/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['2e0899684d6d7f9ddee0d93b39a6ed56262b171bc4e5536914645209b66003ed'] + +dependencies = [ + ('OpenFOAM', '7', '-20200508'), + ('Eigen', '3.3.7', '', True), + ('PETSc', '3.12.4', '-Python-3.7.4'), +] + +extract_sources = True + +install_cmd = "source $FOAM_BASH && " +install_cmd += "export EIGEN_RHEO=$EBROOTEIGEN && " +install_cmd += "cd of70/src && " + +# variables of target install directory +install_cmd += "export WM_PROJECT_USER_DIR=%(installdir)s && " +install_cmd += "export FOAM_USER_APPBIN=%(installdir)s/bin && " +install_cmd += "export FOAM_USER_LIBBIN=%(installdir)s/lib && " +install_cmd += "export LD_LIBRARY_PATH=%(installdir)s/lib:$LD_LIBRARY_PATH && " + +install_cmd += "./Allwmake -j %(parallel)s " + +sanity_check_paths = { + 'files': ['bin/rheoBDFoam', 'lib/libthermoRheoTool.so'], + 'dirs': [], +} + +# source $FOAM_BASH must run before using RheoTool, otherwise there will be missing libraries +sanity_check_commands = ["source $FOAM_BASH && rheoBDFoam -help"] + +modloadmsg = "Please run 'source $FOAM_BASH' before using RheoTool." + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/r/rMATS-turbo/rMATS-turbo-4.1.1-foss-2020b.eb b/easybuild/easyconfigs/r/rMATS-turbo/rMATS-turbo-4.1.1-foss-2020b.eb index 41bc0020a7bc..9f2bd8d72608 100644 --- a/easybuild/easyconfigs/r/rMATS-turbo/rMATS-turbo-4.1.1-foss-2020b.eb +++ b/easybuild/easyconfigs/r/rMATS-turbo/rMATS-turbo-4.1.1-foss-2020b.eb @@ -13,6 +13,7 @@ builddependencies = [ ] dependencies = [ ('Python', '3.8.6'), + ('SciPy-bundle', '2020.11'), ('GSL', '2.6'), ('SAMtools', '1.11'), ('STAR', '2.7.6a'), diff --git a/easybuild/easyconfigs/s/SAMtools/SAMtools-1.15.1-GCC-11.3.0.eb b/easybuild/easyconfigs/s/SAMtools/SAMtools-1.15.1-GCC-11.3.0.eb new file mode 100644 index 000000000000..b935cb8536e3 --- /dev/null +++ b/easybuild/easyconfigs/s/SAMtools/SAMtools-1.15.1-GCC-11.3.0.eb @@ -0,0 +1,37 @@ +## +# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia +# Homepage: https://staff.flinders.edu.au/research/deep-thought +# +# Authors:: Robert Qiao +# License:: MIT +# +# Notes:: +# +# Updated to 1.14 and gcc-11.2.0 +# J. Sassmannshausen / GSTT + +name = 'SAMtools' +version = '1.15.1' + +homepage = 'https://www.htslib.org/' +description = """SAM Tools provide various utilities for manipulating alignments in the SAM format, + including sorting, merging, indexing and generating alignments in a per-position format.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/samtools/%(namelower)s/releases/download/%(version)s'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['708c525ac76b0532b25f14aadea34a4d11df667bc19bf0a74dae617d80526c6e'] + +# The htslib component of SAMtools >= 1.4 uses zlib, bzip2 and lzma compression. +# The latter is currently provided by XZ. +dependencies = [ + ('ncurses', '6.3'), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('XZ', '5.2.5'), + ('cURL', '7.83.0'), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SCOTCH/SCOTCH-7.0.1-gompi-2022a.eb b/easybuild/easyconfigs/s/SCOTCH/SCOTCH-7.0.1-gompi-2022a.eb new file mode 100644 index 000000000000..9313e21231d6 --- /dev/null +++ b/easybuild/easyconfigs/s/SCOTCH/SCOTCH-7.0.1-gompi-2022a.eb @@ -0,0 +1,24 @@ +name = 'SCOTCH' +version = '7.0.1' + +homepage = 'https://www.labri.fr/perso/pelegrin/scotch/' +description = """Software package and libraries for sequential and parallel graph partitioning, +static mapping, and sparse matrix block ordering, and sequential mesh and hypergraph partitioning.""" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'pic': True} + +source_urls = ['https://gitlab.inria.fr/scotch/scotch/-/archive/v%(version)s/'] +sources = ['%(namelower)s-v%(version)s.tar.gz'] +checksums = ['0618e9bc33c02172ea7351600fce4fccd32fe00b3359c4aabb5e415f17c06fed'] + +builddependencies = [ + ('Bison', '3.8.2'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('zlib', '1.2.12'), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.3.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.3.0-tools.eb new file mode 100644 index 000000000000..9d094c2cb892 --- /dev/null +++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-11.3.0-tools.eb @@ -0,0 +1,51 @@ +# # +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2016-2019 Juelich Supercomputing Centre, Germany +# Authors:: Markus Geimer +# Modified 2017 by Andreas Henkel +# License:: 3-clause BSD +# # + +easyblock = 'ConfigureMake' + +name = 'SIONlib' +version = '1.7.7' +# Provide a stripped-down version with renamed symbols for tools, +# see description for further details +versionsuffix = '-tools' + +homepage = 'https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html' +description = """ + SIONlib is a scalable I/O library for parallel access to task-local files. + The library not only supports writing and reading binary data to or from + several thousands of processors into a single or a small number of physical + files, but also provides global open and close functions to access SIONlib + files in parallel. This package provides a stripped-down installation of + SIONlib for use with performance tools (e.g., Score-P), with renamed symbols + to avoid conflicts when an application using SIONlib itself is linked against + a tool requiring a different SIONlib version. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl'] +sources = ['%(namelower)s-%(version)sl.tar.gz'] +checksums = ['3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c'] + +builddependencies = [ + ('binutils', '2.38'), +] + +configopts = '--disable-cxx --disable-fortran --disable-ompi ' + +# Comment it out if you have Xeon Phi: +configopts += '--disable-mic ' + +sanity_check_paths = { + 'files': ['bin/sionconfig'] + + ['lib/lib%s_64.a' % x for x in ['lsioncom', 'lsiongen', 'lsionser']], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/SISSO/SISSO-3.1-20220324-iimpi-2021b.eb b/easybuild/easyconfigs/s/SISSO/SISSO-3.1-20220324-iimpi-2021b.eb new file mode 100644 index 000000000000..daa47a51e195 --- /dev/null +++ b/easybuild/easyconfigs/s/SISSO/SISSO-3.1-20220324-iimpi-2021b.eb @@ -0,0 +1,29 @@ +easyblock = 'CmdCp' + +name = 'SISSO' +local_commit = '9b6080e' +version = '3.1-20220324' + +homepage = 'https://github.com/rouyang2017/SISSO' +description = """A data-driven method combining symbolic regression and compressed sensing toward accurate & + interpretable models.""" + +toolchain = {'name': 'iimpi', 'version': '2021b'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/rouyang2017/SISSO/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['e41ca55d7b66ab52b72059456092428053d4fadc9a69393929c847c49108115b'] + +start_dir = 'src' + +cmds_map = [('.*', "$F90 $FFLAGS var_global.f90 libsisso.f90 DI.f90 FC.f90 SISSO.f90 -o SISSO")] + +files_to_copy = [(['SISSO'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/SISSO'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SMC++/SMC++-1.15.4-foss-2022a.eb b/easybuild/easyconfigs/s/SMC++/SMC++-1.15.4-foss-2022a.eb new file mode 100644 index 000000000000..8d45cebda15d --- /dev/null +++ b/easybuild/easyconfigs/s/SMC++/SMC++-1.15.4-foss-2022a.eb @@ -0,0 +1,54 @@ +easyblock = 'PythonBundle' + +name = 'SMC++' +version = '1.15.4' + +homepage = 'https://github.com/popgenmethods/smcpp' +description = "SMC++ is a program for estimating the size history of populations from whole genome sequence data." + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('matplotlib', '3.5.2'), + ('tqdm', '4.64.0'), + ('Pysam', '0.19.1'), + ('scikit-learn', '1.1.2'), + ('GMP', '6.2.1'), + ('MPFR', '4.1.0'), + ('GSL', '2.7'), +] + +use_pip = True + +exts_list = [ + (name, version, { + # git metadata is required by setup.py, so obtain source tarball via 'git clone' + 'sources': [{ + 'filename': SOURCE_TAR_GZ, + 'git_config': { + 'url': 'https://github.com/popgenmethods', + 'repo_name': 'smcpp', + 'tag': 'v%(version)s', + 'keep_git_dir': True, + }, + }], + 'checksums': [None], + 'modulename': 'smcpp', + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/smc++'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "smc++ version", + "smc++ -h", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SPAdes/SPAdes-3.13.0-GCC-10.3.0.eb b/easybuild/easyconfigs/s/SPAdes/SPAdes-3.13.0-GCC-10.3.0.eb new file mode 100644 index 000000000000..a0d2e6b9948f --- /dev/null +++ b/easybuild/easyconfigs/s/SPAdes/SPAdes-3.13.0-GCC-10.3.0.eb @@ -0,0 +1,46 @@ +# This file is an EasyBuild reciPY as per https://easybuilders.github.io/easybuild/ +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# 3.9.0: +# Modified by: +# Adam Huffman +# The Francis Crick Institute + +easyblock = 'CMakeMake' + +name = 'SPAdes' +version = '3.13.0' + +homepage = 'https://cab.spbu.ru/software/spades/' +description = "Genome assembler for single-cell and isolates data sets" + +toolchain = {'name': 'GCC', 'version': '10.3.0'} + +source_urls = ['http://cab.spbu.ru/files/release%(version)s'] +sources = [SOURCE_TAR_GZ] +checksums = ['c63442248c4c712603979fa70503c2bff82354f005acda2abc42dd5598427040'] + +builddependencies = [ + ('CMake', '3.20.1'), +] +dependencies = [ + ('Python', '3.9.5'), + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('libreadline', '8.1'), +] + +start_dir = 'src' + +configopts = " -DBoost_NO_BOOST_CMAKE=ON" + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['spades-bwa', 'spades-core', 'spades-gbuilder', 'spades-hammer', + 'spades-ionhammer', 'spades-kmercount', 'spades.py']], + 'dirs': [], +} + +sanity_check_commands = [('%(namelower)s.py', '--test')] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SPM/SPM-12.5_r7771-MATLAB-2021b.eb b/easybuild/easyconfigs/s/SPM/SPM-12.5_r7771-MATLAB-2021b.eb new file mode 100644 index 000000000000..21fd484ece94 --- /dev/null +++ b/easybuild/easyconfigs/s/SPM/SPM-12.5_r7771-MATLAB-2021b.eb @@ -0,0 +1,53 @@ +# Author: Jasper Grimm (UoY) + +easyblock = 'Tarball' + +name = 'SPM' +version = '12.5_r7771' +_matlab_ver = '2021b' +versionsuffix = '-MATLAB-%s' % _matlab_ver + +homepage = 'https://www.fil.ion.ucl.ac.uk/spm' +description = """SPM (Statistical Parametric Mapping) refers to the construction + and assessment of spatially extended statistical processes used to test hypo- + theses about functional imaging data. These ideas have been instantiated in + software that is called SPM. + The SPM software package has been designed for the analysis of brain imaging + data sequences. The sequences can be a series of images from different cohorts, + or time-series from the same subject. The current release is designed for the + analysis of fMRI, PET, SPECT, EEG and MEG. +""" + +toolchain = SYSTEM + +_spm_maj_ver = version.split('.')[0] +_spm_majmin_ver, _spm_update_ver = version.split('_') + +sources = [ + { + 'source_urls': ['https://www.fil.ion.ucl.ac.uk/spm/download/restricted/eldorado'], + 'filename': '%%(namelower)s%s.zip' % _spm_majmin_ver, + }, + { + 'source_urls': ['http://www.fil.ion.ucl.ac.uk/spm/download/spm12_updates'], + 'filename': '%%(namelower)s%s_updates_%s.zip' % (_spm_maj_ver, _spm_update_ver), + 'extract_cmd': 'unzip -oqq %%s -d spm%s' % _spm_maj_ver, + }, +] +checksums = [ + '0dc847eb065ccfcefbaefafdc12201dd20a22b9ee9b33a6b1973d07690a21914', # spm12.5.zip + '2b3cbd5f58fe180231d8bdcd0762c8874aee97240de391d876d9f2e33037a293', # spm12_updates_r7771.zip +] + +dependencies = [('MATLAB', _matlab_ver)] + +sanity_check_paths = { + 'files': ['spm.m'], + 'dirs': [], +} + +sanity_check_commands = ['matlab -batch "spm version"'] + +modextrapaths = {'MATLABPATH': ''} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.02.008-r8.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.02.008-r8.eb new file mode 100644 index 000000000000..3b0dff61b6bf --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.02.008-r8.eb @@ -0,0 +1,14 @@ +name = 'STAR-CCM+' +version = '17.02.008' +versionsuffix = '-r8' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +sources = ['%%(name)s%%(version)s_01_linux-x86_64%s.tar.gz' % versionsuffix] +checksums = ['15a341c7140275498c294f9c573682f57f82110a99f8d59435e8fdc3943ba84c'] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.02.008.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.02.008.eb new file mode 100644 index 000000000000..5c454cccf3bd --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.02.008.eb @@ -0,0 +1,13 @@ +name = 'STAR-CCM+' +version = '17.02.008' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +sources = ['%(name)s%(version)s_01_linux-x86_64.tar.gz'] +checksums = ['67bbe7215908e01d86f256f1079bb904e6898eb81e59640bcb554bed69c261eb'] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.04.008-r8.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.04.008-r8.eb new file mode 100644 index 000000000000..996c1eb6f860 --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.04.008-r8.eb @@ -0,0 +1,14 @@ +name = 'STAR-CCM+' +version = '17.04.008' +versionsuffix = '-r8' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +sources = ['%%(name)s%%(version)s_01_linux-x86_64%s.tar.gz' % versionsuffix] +checksums = ['d267222a92ffb934983e4639cad13d9a14d15a894eab202715e230c2658b8541'] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.04.008.eb b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.04.008.eb new file mode 100644 index 000000000000..56964b48ab40 --- /dev/null +++ b/easybuild/easyconfigs/s/STAR-CCM+/STAR-CCM+-17.04.008.eb @@ -0,0 +1,13 @@ +name = 'STAR-CCM+' +version = '17.04.008' + +homepage = 'https://mdx.plm.automation.siemens.com/star-ccm-plus' +description = """STAR-CCM+ is a multiphysics computational fluid dynamics (CFD) software for the simulation of products +operating under real-world conditions.""" + +toolchain = SYSTEM + +sources = ['%(name)s%(version)s_01_linux-x86_64.tar.gz'] +checksums = ['c2135f473aeef46808ba4f2b8a242ed2dc15ee9918b77b8cec3ad5cc1c5837e9'] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/s/STAR/STAR-2.7.10a_alpha_220601-GCC-10.3.0.eb b/easybuild/easyconfigs/s/STAR/STAR-2.7.10a_alpha_220601-GCC-10.3.0.eb new file mode 100644 index 000000000000..4cdab2a88f36 --- /dev/null +++ b/easybuild/easyconfigs/s/STAR/STAR-2.7.10a_alpha_220601-GCC-10.3.0.eb @@ -0,0 +1,43 @@ +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# Based on STAR-2.7.7a-GCC-10.2.0.eb +# uploaded by J. Sassmannshausen +# updated by SIB software + +easyblock = 'MakeCp' + +name = 'STAR' +version = '2.7.10a_alpha_220601' + +homepage = 'https://github.com/alexdobin/STAR' +description = "STAR aligns RNA-seq reads to a reference genome using uncompressed suffix arrays." +# software_license = 'LicenseMIT' + +toolchain = {'name': 'GCC', 'version': '10.3.0'} +toolchainopts = {'openmp': True} + +source_urls = ['https://github.com/alexdobin/STAR/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['62b0eb0fd4fc8497a1d9e1a6c3b111b532d6dc0b2576ea14ac3ed63f7b2e41ef'] + +dependencies = [ + ('zlib', '1.2.11'), +] + +start_dir = 'source' + +buildopts = ' STAR && make STARlong' + +parallel = 1 + +files_to_copy = [ + (['source/STAR', 'source/STARlong'], 'bin'), + 'CHANGES.md', 'doc', 'extras', 'LICENSE', 'README.md', 'RELEASEnotes.md', +] + +sanity_check_paths = { + 'files': ['bin/STAR', 'bin/STARlong'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SUMO/SUMO-1.0.0_fix-link-flags.patch b/easybuild/easyconfigs/s/SUMO/SUMO-1.0.0_fix-link-flags.patch new file mode 100644 index 000000000000..6df89ea692ae --- /dev/null +++ b/easybuild/easyconfigs/s/SUMO/SUMO-1.0.0_fix-link-flags.patch @@ -0,0 +1,17 @@ +Remove duplicate linker flags from fox-config +author: Alex Domingo (Vrije Universiteit Brussel) +diff --git a/build/cmake_modules/FindFOX.cmake.orig b/build/cmake_modules/FindFOX.cmake +index 6d7b7b4..37f5934 100644 +--- a/build/cmake_modules/FindFOX.cmake.orig ++++ b/build/cmake_modules/FindFOX.cmake +@@ -16,6 +16,10 @@ endif(FOX_CONFIG) + set(FOX_FOUND 0) + # if fox-config was executed successfully, fox was found + if(FOX_LIBRARY AND FOX_CXX_FLAGS) ++ # remove duplicate link flags ++ separate_arguments(FOX_LIBRARY) ++ list(REMOVE_DUPLICATES FOX_LIBRARY) ++ string(REPLACE ";" " " FOX_LIBRARY "${FOX_LIBRARY}") + SET(FOX_FOUND TRUE) + else() + # In Windows system, find the fox directory using as hint the environment variable "FOX_INCLUDE_DIR" diff --git a/easybuild/easyconfigs/s/SUMO/SUMO-1.12.0-foss-2021b.eb b/easybuild/easyconfigs/s/SUMO/SUMO-1.12.0-foss-2021b.eb index 1b0f29681177..fecda0386eed 100644 --- a/easybuild/easyconfigs/s/SUMO/SUMO-1.12.0-foss-2021b.eb +++ b/easybuild/easyconfigs/s/SUMO/SUMO-1.12.0-foss-2021b.eb @@ -3,47 +3,47 @@ easyblock = 'CMakeMake' name = 'SUMO' version = '1.12.0' -homepage = 'https://sumo.dlr.de/' -description = """ -"Simulation of Urban MObility" (SUMO) is an open source, highly portable, microscopic and continuous traffic simulation -package designed to handle large networks. It allows for intermodal simulation including pedestrians and comes with a -large set of tools for scenario creation. -""" +homepage = 'https://www.eclipse.org/sumo/' +description = """Simulation of Urban MObility" (SUMO) is an open source, highly portable, +microscopic and continuous traffic simulation package designed to handle large +networks. It allows for intermodal simulation including pedestrians and comes +with a large set of tools for scenario creation.""" toolchain = {'name': 'foss', 'version': '2021b'} -source_urls = ['https://github.com/eclipse/sumo/archive/'] +github_account = 'eclipse' +source_urls = [GITHUB_LOWER_SOURCE] sources = ['v%s.tar.gz' % version.replace('.', '_')] -checksums = ['049f5f50d1d27352d868cbb4b2a4b59bc0a913ef792b619c1adf1a289b3e48a7'] +patches = ['SUMO-1.0.0_fix-link-flags.patch'] +checksums = [ + '049f5f50d1d27352d868cbb4b2a4b59bc0a913ef792b619c1adf1a289b3e48a7', # v1_12_0.tar.gz + 'fe7ef229baeba8a4ea2608f18f531ffbe31da16a274f7383e0d8e30d99e63e87', # SUMO-1.0.0_fix-link-flags.patch +] builddependencies = [ ('CMake', '3.22.1'), ('SWIG', '4.0.2'), + ('Java', '11', '', True), ] dependencies = [ ('Python', '3.9.6'), ('Xerces-C++', '3.2.3'), + ('FOX-Toolkit', '1.6.57'), ('GL2PS', '1.4.2'), ('GDAL', '3.3.2'), ('PROJ', '8.1.0'), - ('FoX', '4.1.2'), ] -separate_build_dir = True - -modextrapaths = { - 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', - 'SUMO_HOME': 'share/sumo', -} - +local_sumo_home = 'share/sumo' +local_pythonpath = 'lib/python%(pyshortver)s/site-packages' local_bins = ['activitygen', 'dfrouter', 'duarouter', 'emissionsDrivingCycle', 'emissionsMap', 'jtrrouter', - 'marouter', 'netconvert', 'netgenerate', 'od2trips', 'polyconvert', 'sumo'] + 'marouter', 'netconvert', 'netgenerate', 'od2trips', 'polyconvert', 'sumo', 'sumo-gui'] sanity_check_paths = { 'files': ['bin/%s' % x for x in local_bins] + - ['lib/python%%(pyshortver)s/site-packages/libsumo/_libsumo.%s' % SHLIB_EXT], - 'dirs': ['bin', 'lib', 'share'], + ['%s/libsumo/_libsumo.%s' % (local_pythonpath, SHLIB_EXT)], + 'dirs': [local_sumo_home, local_pythonpath], } sanity_check_commands = [ @@ -51,4 +51,9 @@ sanity_check_commands = [ "python -c 'import libsumo'", ] +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', + 'SUMO_HOME': 'share/sumo', +} + moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/SUMO/SUMO-1.14.1-foss-2021b.eb b/easybuild/easyconfigs/s/SUMO/SUMO-1.14.1-foss-2021b.eb new file mode 100644 index 000000000000..17783cb2a67f --- /dev/null +++ b/easybuild/easyconfigs/s/SUMO/SUMO-1.14.1-foss-2021b.eb @@ -0,0 +1,59 @@ +easyblock = 'CMakeMake' + +name = 'SUMO' +version = '1.14.1' + +homepage = 'https://www.eclipse.org/sumo/' +description = """Simulation of Urban MObility" (SUMO) is an open source, highly portable, +microscopic and continuous traffic simulation package designed to handle large +networks. It allows for intermodal simulation including pedestrians and comes +with a large set of tools for scenario creation.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +github_account = 'eclipse' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%s.tar.gz' % version.replace('.', '_')] +patches = ['SUMO-1.0.0_fix-link-flags.patch'] +checksums = [ + '46ee6080902bb9056a1aa6fae72a270d7cfa44642487246760493b4742a2fd24', # v1_14_1.tar.gz + 'fe7ef229baeba8a4ea2608f18f531ffbe31da16a274f7383e0d8e30d99e63e87', # SUMO-1.0.0_fix-link-flags.patch +] + +builddependencies = [ + ('CMake', '3.22.1'), + ('SWIG', '4.0.2'), + ('Java', '11', '', True), +] + +dependencies = [ + ('Python', '3.9.6'), + ('Xerces-C++', '3.2.3'), + ('FOX-Toolkit', '1.6.57'), + ('GL2PS', '1.4.2'), + ('GDAL', '3.3.2'), + ('PROJ', '8.1.0'), +] + +local_sumo_home = 'share/sumo' +local_pythonpath = 'lib/python%(pyshortver)s/site-packages' +local_bins = ['activitygen', 'dfrouter', 'duarouter', 'emissionsDrivingCycle', 'emissionsMap', 'jtrrouter', + 'marouter', 'netconvert', 'netgenerate', 'od2trips', 'polyconvert', 'sumo', 'sumo-gui'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_bins] + + ['%s/libsumo/_libsumo.%s' % (local_pythonpath, SHLIB_EXT)], + 'dirs': [local_sumo_home, local_pythonpath], +} + +sanity_check_commands = [ + 'sumo --help', + "python -c 'import libsumo'", +] + +modextrapaths = { + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', + 'SUMO_HOME': 'share/sumo', +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/SUMO/SUMO-1.7.0-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/s/SUMO/SUMO-1.7.0-foss-2020a-Python-3.8.2.eb index acdae5cac591..30e5d21317cb 100644 --- a/easybuild/easyconfigs/s/SUMO/SUMO-1.7.0-foss-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/s/SUMO/SUMO-1.7.0-foss-2020a-Python-3.8.2.eb @@ -4,47 +4,46 @@ name = 'SUMO' version = '1.7.0' versionsuffix = '-Python-%(pyver)s' -homepage = 'https://sumo.dlr.de/' -description = """ -"Simulation of Urban MObility" (SUMO) is an open source, highly portable, microscopic and continuous traffic simulation -package designed to handle large networks. It allows for intermodal simulation including pedestrians and comes with a -large set of tools for scenario creation. -""" +homepage = 'https://www.eclipse.org/sumo/' +description = """Simulation of Urban MObility" (SUMO) is an open source, highly portable, +microscopic and continuous traffic simulation package designed to handle large +networks. It allows for intermodal simulation including pedestrians and comes +with a large set of tools for scenario creation.""" toolchain = {'name': 'foss', 'version': '2020a'} source_urls = ['https://github.com/eclipse/sumo/archive/'] sources = ['v%s.tar.gz' % version.replace('.', '_')] -checksums = ['db0868318f2a602475a15ba8b83d30b686e6283b3ff753b9d112217529f2893b'] +patches = ['SUMO-1.0.0_fix-link-flags.patch'] +checksums = [ + 'db0868318f2a602475a15ba8b83d30b686e6283b3ff753b9d112217529f2893b', # v1_7_0.tar.gz + 'fe7ef229baeba8a4ea2608f18f531ffbe31da16a274f7383e0d8e30d99e63e87', # SUMO-1.0.0_fix-link-flags.patch +] builddependencies = [ ('CMake', '3.16.4'), ('SWIG', '4.0.1'), + ('Java', '11', '', True), ] dependencies = [ ('Python', '3.8.2'), ('Xerces-C++', '3.2.3'), + ('FOX-Toolkit', '1.6.57'), ('GL2PS', '1.4.2'), ('GDAL', '3.0.4', versionsuffix), ('PROJ', '7.0.0'), - ('FoX', '4.1.2'), ] -separate_build_dir = True - -modextrapaths = { - 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', - 'SUMO_HOME': 'share/sumo', -} - +local_sumo_home = 'share/sumo' +local_pythonpath = 'lib/python%(pyshortver)s/site-packages' local_bins = ['activitygen', 'dfrouter', 'duarouter', 'emissionsDrivingCycle', 'emissionsMap', 'jtrrouter', - 'marouter', 'netconvert', 'netgenerate', 'od2trips', 'polyconvert', 'sumo'] + 'marouter', 'netconvert', 'netgenerate', 'od2trips', 'polyconvert', 'sumo', 'sumo-gui'] sanity_check_paths = { 'files': ['bin/%s' % x for x in local_bins] + - ['lib/python%%(pyshortver)s/site-packages/libsumo/_libsumo.%s' % SHLIB_EXT], - 'dirs': ['bin', 'lib', 'share'], + ['%s/libsumo/_libsumo.%s' % (local_pythonpath, SHLIB_EXT)], + 'dirs': [local_sumo_home, local_pythonpath], } sanity_check_commands = [ @@ -52,4 +51,9 @@ sanity_check_commands = [ "python -c 'import libsumo'", ] +modextrapaths = { + 'SUMO_HOME': local_sumo_home, + 'PYTHONPATH': local_pythonpath, +} + moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/SWIG/SWIG-4.0.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/s/SWIG/SWIG-4.0.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..f1a2758986f9 --- /dev/null +++ b/easybuild/easyconfigs/s/SWIG/SWIG-4.0.2-GCCcore-11.3.0.eb @@ -0,0 +1,24 @@ +name = 'SWIG' +version = '4.0.2' + +homepage = 'http://www.swig.org/' +description = """SWIG is a software development tool that connects programs written in C and C++ with + a variety of high-level programming languages.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d53be9730d8d58a16bf0cbd1f8ac0c0c3e1090573168bfa151b01eb47fa906fc'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('zlib', '1.2.12'), + ('PCRE', '8.45'), +] + +configopts = '--without-alllang --with-boost=no' + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb b/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb new file mode 100644 index 000000000000..e709378f6ea8 --- /dev/null +++ b/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304-GCC-11.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'Satsuma2' +local_commit = '37c5f38' +version = '20220304' + +homepage = 'https://github.com/bioinfologics/satsuma2' +description = """Satsuma2 is an optimised version of Satsuma, a tool to reliably align large and complex DNA sequences +providing maximum sensitivity (to find all there is to find), specificity (to only find real homology) and speed (to +accommodate the billions of base pairs in vertebrate genomes).""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/bioinfologics/satsuma2/archive/'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +patches = ['Satsuma2-%(version)s_fix-GCC-11.patch'] +checksums = [ + '75ba38066719c189fba8630326a35afe42421437b55ee9e631973e8be115674c', # Satsuma2-20220304.tar.gz + 'c80755f8942f3a0c9a2598b2a1a6319f508956bc29ccdfdfb9044ec8c50cd691', # Satsuma2-20220304_fix-GCC-11.patch +] + +builddependencies = [('CMake', '3.23.1')] + +sanity_check_paths = { + 'files': ['bin/ChromosomePaint', 'bin/MatchDump', 'bin/SatsumaSynteny2'], + 'dirs': [], +} + +sanity_check_commands = ["SatsumaSynteny2 --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304_fix-GCC-11.patch b/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304_fix-GCC-11.patch new file mode 100644 index 000000000000..aefe7fad4845 --- /dev/null +++ b/easybuild/easyconfigs/s/Satsuma2/Satsuma2-20220304_fix-GCC-11.patch @@ -0,0 +1,12 @@ +fix for "error: shared_ptr in namespace std does not name a template type" +author: Kenneth Hoste (HPC-UGent) +--- satsuma2-37c5f386819614cd3ce96016b423ddc4df1d86ec/analysis/SatsumaSynteny2.cc.orig 2022-08-22 09:58:49.690714992 +0200 ++++ satsuma2-37c5f386819614cd3ce96016b423ddc4df1d86ec/analysis/SatsumaSynteny2.cc 2022-08-22 09:59:05.103870557 +0200 +@@ -7,6 +7,7 @@ + + #include + #include ++#include + #include "../base/CommandLineParser.h" + #include "SequenceMatch.h" + #include "GridSearch.h" diff --git a/easybuild/easyconfigs/s/Schrodinger/Schrodinger-2022-1.eb b/easybuild/easyconfigs/s/Schrodinger/Schrodinger-2022-1.eb new file mode 100644 index 000000000000..59d7e9bd86f7 --- /dev/null +++ b/easybuild/easyconfigs/s/Schrodinger/Schrodinger-2022-1.eb @@ -0,0 +1,31 @@ +easyblock = 'PackedBinary' + +name = 'Schrodinger' +version = '2022-1' + +homepage = 'https://www.schrodinger.com/' +description = """ Schrodinger aims to provide integrated software solutions and services + that truly meet its customers needs. We want to empower researchers around the world to + achieve their goals of improving human health and quality of life through advanced computational + techniques that transform the way chemists design compounds and materials. """ + +toolchain = SYSTEM + +# Download from schrodinger.com +sources = ['%(name)s_Suites_%(version)s_Linux-x86_64.tar'] +checksums = ['0fb9696901fc685e8400776e1c1f88f294b96a7d38528939b443840a53e474c0'] + +install_cmd = 'cd %(builddir)s/%(name)s_Suites_%(version)s_Linux-x86_64 && ' +install_cmd += './INSTALL -d . -s %(installdir)s -k /usr/tmp -t %(installdir)s/thirdparty -b *' + +sanity_check_paths = { + 'files': ['desmond', 'maestro'], + 'dirs': [], +} + +modextravars = { + 'SCHROD_LICENSE_FILE': '$HOME/.schrodinger_license', + 'SCHRODINGER': '%(installdir)s', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Schrodinger/Schrodinger-2022-3.eb b/easybuild/easyconfigs/s/Schrodinger/Schrodinger-2022-3.eb new file mode 100644 index 000000000000..955e016dc5d2 --- /dev/null +++ b/easybuild/easyconfigs/s/Schrodinger/Schrodinger-2022-3.eb @@ -0,0 +1,33 @@ +easyblock = 'PackedBinary' + +name = 'Schrodinger' +version = '2022-3' + +homepage = 'https://www.schrodinger.com/' +description = """ Schrodinger aims to provide integrated software solutions and services + that truly meet its customers needs. We want to empower researchers around the world to + achieve their goals of improving human health and quality of life through advanced computational + techniques that transform the way chemists design compounds and materials. """ + +toolchain = SYSTEM + +# Download from schrodinger.com +sources = ['%(name)s_Suites_%(version)s_Linux-x86_64.tar'] +checksums = ['e607b6b2e1671030a66e7d2ab0fbe22ca5e8414794aaf50a7230c1db4417b762'] + +install_cmd = 'cd %(builddir)s/%(name)s_Suites_%(version)s_Linux-x86_64 && ' +install_cmd += './INSTALL -d . -s %(installdir)s -k /usr/tmp -t %(installdir)s/thirdparty -b *' + +# Needs libnsl.so, part of glibc on CentOS7 but a separate libnsl package on RHEL8 + +sanity_check_paths = { + 'files': ['desmond', 'maestro'], + 'dirs': [], +} + +modextravars = { + 'SCHROD_LICENSE_FILE': '$HOME/.schrodinger_license', + 'SCHRODINGER': '%(installdir)s', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2022.05-foss-2022a.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2022.05-foss-2022a.eb index b93d1166c8aa..28d43bd947cf 100644 --- a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2022.05-foss-2022a.eb +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2022.05-foss-2022a.eb @@ -27,6 +27,7 @@ exts_list = [ 'patches': [ 'numpy-1.20.3_disable_fortran_callback_test.patch', 'numpy-1.22.3_disable-broken-override-test.patch', + '%(name)s-%(version)s_skip-ppc-long-complex-test.patch', ], 'sources': ['%(name)s-%(version)s.zip'], 'checksums': [ @@ -35,6 +36,8 @@ exts_list = [ '44975a944544fd0e771b7e63c32590d257a3713070f8f7fdf60105dc516f1d75', # numpy-1.22.3_disable-broken-override-test.patch '9c589bb073b28b25ff45eb3c63c57966aa508dd8b318d0b885b6295271e4983c', + # numpy-1.22.3_skip-ppc-long-complex-test.patch + '058c8128b9f7158b4d5bedb2f52ccc7e1362b99c352c3d10335f98a6194c880e', ], }), ('ply', '3.11', { diff --git a/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.22.3_skip-ppc-long-complex-test.patch b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.22.3_skip-ppc-long-complex-test.patch new file mode 100644 index 000000000000..7d950c31fc98 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/numpy-1.22.3_skip-ppc-long-complex-test.patch @@ -0,0 +1,41 @@ +Include a PPC detection for the inaccurate trig functions +See https://github.com/numpy/numpy/issues/15763 + +Author: Alexander Grund (TU Dresden) + +diff --git a/numpy/core/tests/test_umath.py b/numpy/core/tests/test_umath.py +index c0b26e75b..ee040fe4b 100644 +--- a/numpy/core/tests/test_umath.py ++++ b/numpy/core/tests/test_umath.py +@@ -37,12 +37,17 @@ def on_powerpc(): + + + def bad_arcsinh(): +- """The blocklisted trig functions are not accurate on aarch64 for ++ """The blocklisted trig functions are not accurate on aarch64/PPC for + complex256. Rather than dig through the actual problem skip the + test. This should be fixed when we can move past glibc2.17 + which is the version in manylinux2014 + """ +- x = 1.78e-10 ++ if platform.machine() == 'aarch64': ++ x = 1.78e-10 ++ elif on_powerpc(): ++ x = 2.16e-10 ++ else: ++ return False + v1 = np.arcsinh(np.float128(x)) + v2 = np.arcsinh(np.complex256(x)).real + # The eps for float128 is 1-e33, so this is way bigger +@@ -3434,9 +3439,9 @@ def check(x, rtol): + x_basic = np.logspace(-2.999, 0, 10, endpoint=False) + + if dtype is np.longcomplex: +- if (platform.machine() == 'aarch64' and bad_arcsinh()): ++ if bad_arcsinh(): + pytest.skip("Trig functions of np.longcomplex values known " +- "to be inaccurate on aarch64 for some compilation " ++ "to be inaccurate on aarch64 and PPC for some compilation " + "configurations.") + # It's not guaranteed that the system-provided arc functions + # are accurate down to a few epsilons. (Eg. on Linux 64-bit) diff --git a/easybuild/easyconfigs/s/SoX/SoX-14.4.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/s/SoX/SoX-14.4.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..3216a7a24e75 --- /dev/null +++ b/easybuild/easyconfigs/s/SoX/SoX-14.4.2-GCCcore-11.3.0.eb @@ -0,0 +1,38 @@ +# Institution: IT4Innovations National Supercomputing Center, Czech Republic +# Author: Jakub Kropacek +# License: GPLv3 +# Year: 2022 + +easyblock = 'ConfigureMake' + +name = 'SoX' +version = '14.4.2' + +homepage = 'http://sox.sourceforge.net/' +docurls = 'http://sox.sourceforge.net/Docs/Documentation' +description = """Sound eXchange, the Swiss Army knife of audio manipulation""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['b45f598643ffbd8e363ff24d61166ccec4836fea6d3888881b8df53e3bb55f6c'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('FLAC', '1.3.4'), + ('LAME', '3.100'), + ('libvorbis', '1.3.7'), + ('FFmpeg', '5.0.1'), +] + +sanity_check_paths = { + 'files': ['bin/play', 'bin/rec', 'bin/sox', 'bin/soxi', 'include/sox.h', + 'lib/libsox.la', 'lib/libsox.a', 'lib/pkgconfig/sox.pc', 'lib/libsox.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include', 'lib', 'lib/pkgconfig', 'share/man'], +} + +sanity_check_commands = ['sox --help'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/Stacks/Stacks-2.62-foss-2022a.eb b/easybuild/easyconfigs/s/Stacks/Stacks-2.62-foss-2022a.eb new file mode 100644 index 000000000000..9f30e27f06f2 --- /dev/null +++ b/easybuild/easyconfigs/s/Stacks/Stacks-2.62-foss-2022a.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'Stacks' +version = '2.62' + +homepage = 'https://catchenlab.life.illinois.edu/stacks/' +description = """Stacks is a software pipeline for building loci from short-read sequences, such as those generated on + the Illumina platform. Stacks was developed to work with restriction enzyme-based data, such as RAD-seq, + for the purpose of building genetic maps and conducting population genomics and phylogeography. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://catchenlab.life.illinois.edu/stacks/source/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['eee85054b0bf0043c03d4766dfebc00682301b8ba1372fc49e08ecad98d3d13b'] + +dependencies = [ + ('zlib', '1.2.12'), +] + +sanity_check_paths = { + 'files': ['bin/clone_filter', 'bin/cstacks', 'bin/gstacks', 'bin/kmer_filter', 'bin/phasedstacks', + 'bin/populations', 'bin/process_radtags', 'bin/process_shortreads', 'bin/sstacks', + 'bin/tsv2bam', 'bin/ustacks'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/Stata/Stata-17.eb b/easybuild/easyconfigs/s/Stata/Stata-17.eb new file mode 100644 index 000000000000..333ae2fc7bb5 --- /dev/null +++ b/easybuild/easyconfigs/s/Stata/Stata-17.eb @@ -0,0 +1,44 @@ +name = 'Stata' +version = '17' + +homepage = 'https://www.stata.com/' +description = """Stata is a complete, integrated statistical software package that provides everything you need + for data analysis, data management, and graphics.""" + +toolchain = SYSTEM + +# Requires license to access source files +# See also https://www.stata.com/support/faqs/unix/install-download-on-linux/ +# You can download the source tarball from: https://download.stata.com/download/ +# Once the installation with EB completes, you **must** generate the licence file +# by executing the script "stinit" from the root of the installation directory. + +sources = ['Stata%(version)sLinux64.tar.gz'] +checksums = [ + # the source tarball of Stata seems to change over time without any version change + # so far, these 3 checksum have been reported + ('ac5d49ff27544f801defa27e996d6c6770e94a01ec248bec3021b30ae2b91c45', + '744314cdac7ba7316c82dccebe7c7de8f7fab68841d8fa7de13f8eb4472e6015', + 'e7bea3d827db2957e5ea67bf3d6747a56f656bb08f40b148ed726ab700cd8ce3'), +] + +dependencies = [ + ('ncurses', '5.9'), + ('zlib', '1.2.11'), +] + +# Optional: requirements for xstata +osdependencies = [('xorg', 'xorg-x11', 'xorg-x11-apps', 'xorg-x11-server-Xorg')] +dependencies.append( + ('libpng', '1.5.30'), # default libpng in Centos 7 +) + +# Bindings +modextrapaths = { + 'PYTHONPATH': ['utilities'], + 'CLASSPATH': ['utilities/jar'], +} + +sanity_check_commands = ['stata -h'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/scikit-bio/scikit-bio-0.5.7-foss-2021b.eb b/easybuild/easyconfigs/s/scikit-bio/scikit-bio-0.5.7-foss-2021b.eb new file mode 100644 index 000000000000..bd2a4b2590b2 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-bio/scikit-bio-0.5.7-foss-2021b.eb @@ -0,0 +1,47 @@ +easyblock = 'PythonBundle' + +name = 'scikit-bio' +version = '0.5.7' + +homepage = 'http://scikit-bio.org' +description = """scikit-bio is an open-source, BSD-licensed Python 3 package providing data structures, algorithms +and educational resources for bioinformatics.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('matplotlib', '3.4.3'), + ('scikit-learn', '1.0.1'), + ('IPython', '7.26.0'), + ('h5py', '3.6.0'), + ('Pillow', '8.3.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('msgpack', '1.0.1', { + 'checksums': ['7033215267a0e9f60f4a5e4fb2228a932c404f237817caff8dc3115d9e7cd975'], + }), + ('CacheControl', '0.12.11', { + 'checksums': ['a5b9fcc986b184db101aa280b42ecdcdfc524892596f606858e0b7a8b4d9e144'], + }), + ('hdmedians', '0.14.2', { + 'checksums': ['b47aecb16771e1ba0736557255d80ae0240b09156bff434321de559b359ac2d6'], + }), + ('lockfile', '0.12.2', { + 'checksums': ['6aed02de03cba24efabcd600b30540140634fc06cfa603822d508d5361e9f799'], + }), + ('natsort', '8.1.0', { + 'checksums': ['c7c1f3f27c375719a4dfcab353909fe39f26c2032a062a8c80cc844eaaca0445'], + }), + (name, version, { + 'modulename': 'skbio', + 'checksums': ['6343ca0c621e2fcc5d1c042c8be3200664c5325956a83bea751cf1bcc75d1da9'], + }), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-10.2.0.eb b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-10.2.0.eb new file mode 100755 index 000000000000..459369823e8c --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-10.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build' +version = '0.15.0' + +homepage = 'https://scikit-build.readthedocs.io/en/latest' +description = """Scikit-Build, or skbuild, is an improved build system generator +for CPython C/C++/Fortran/Cython extensions.""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +builddependencies = [ + ('binutils', '2.35'), +] + +dependencies = [ + ('Python', '3.8.6'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('distro', '1.7.0', { + 'checksums': ['151aeccf60c216402932b52e40ee477a939f8d58898927378a02abbe852c1c39'], + }), + (name, version, { + 'checksums': ['e723cd0f3489a042370b9ea988bbb9cfd7725e8b25b20ca1c7981821fcf65fb9'], + 'modulename': 'skbuild', + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-10.3.0.eb b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-10.3.0.eb new file mode 100755 index 000000000000..0449d47c0217 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-10.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build' +version = '0.15.0' + +homepage = 'https://scikit-build.readthedocs.io/en/latest' +description = """Scikit-Build, or skbuild, is an improved build system generator +for CPython C/C++/Fortran/Cython extensions.""" + +toolchain = {'name': 'GCCcore', 'version': '10.3.0'} + +builddependencies = [ + ('binutils', '2.36.1'), +] + +dependencies = [ + ('Python', '3.9.5'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('distro', '1.7.0', { + 'checksums': ['151aeccf60c216402932b52e40ee477a939f8d58898927378a02abbe852c1c39'], + }), + (name, version, { + 'checksums': ['e723cd0f3489a042370b9ea988bbb9cfd7725e8b25b20ca1c7981821fcf65fb9'], + 'modulename': 'skbuild', + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-11.2.0.eb b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-11.2.0.eb new file mode 100755 index 000000000000..ff74dd0f5a74 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-11.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build' +version = '0.15.0' + +homepage = 'https://scikit-build.readthedocs.io/en/latest' +description = """Scikit-Build, or skbuild, is an improved build system generator +for CPython C/C++/Fortran/Cython extensions.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} + +builddependencies = [ + ('binutils', '2.37'), +] + +dependencies = [ + ('Python', '3.9.6'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('distro', '1.7.0', { + 'checksums': ['151aeccf60c216402932b52e40ee477a939f8d58898927378a02abbe852c1c39'], + }), + (name, version, { + 'checksums': ['e723cd0f3489a042370b9ea988bbb9cfd7725e8b25b20ca1c7981821fcf65fb9'], + 'modulename': 'skbuild', + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-11.3.0.eb new file mode 100755 index 000000000000..ccadbec9f0d6 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-build/scikit-build-0.15.0-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonBundle' + +name = 'scikit-build' +version = '0.15.0' + +homepage = 'https://scikit-build.readthedocs.io/en/latest' +description = """Scikit-Build, or skbuild, is an improved build system generator +for CPython C/C++/Fortran/Cython extensions.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +builddependencies = [ + ('binutils', '2.38'), +] + +dependencies = [ + ('Python', '3.10.4'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('distro', '1.7.0', { + 'checksums': ['151aeccf60c216402932b52e40ee477a939f8d58898927378a02abbe852c1c39'], + }), + (name, version, { + 'checksums': ['e723cd0f3489a042370b9ea988bbb9cfd7725e8b25b20ca1c7981821fcf65fb9'], + 'modulename': 'skbuild', + }), +] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.0.2-foss-2021b.eb b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.0.2-foss-2021b.eb new file mode 100644 index 000000000000..668090f02d80 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.0.2-foss-2021b.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'scikit-learn' +version = '1.0.2' + +homepage = 'https://scikit-learn.org/stable/index.html' +description = """Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, +building upon numpy, scipy, and matplotlib. As a machine-learning module, +it provides versatile tools for data mining and analysis in any field of science and engineering. +It strives to be simple and efficient, accessible to everybody, and reusable in various contexts.""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10') +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'checksums': ['b5870959a5484b614f26d31ca4c17524b1b0317522199dc985c3b4256e030767'], + 'modulename': 'sklearn', + }), + ('sklearn', '0.0', { # also install the meta-package, as other packages check for this + 'checksums': ['e23001573aa194b834122d2b9562459bf5ae494a2d59ca6b8aa22c85a44c0e31'], + }) +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.1.2-foss-2022a.eb b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.1.2-foss-2022a.eb new file mode 100644 index 000000000000..f1b408579daa --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-1.1.2-foss-2022a.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'scikit-learn' +version = '1.1.2' + +homepage = 'https://scikit-learn.org/stable/index.html' +description = """Scikit-learn integrates machine learning algorithms in the tightly-knit scientific Python world, +building upon numpy, scipy, and matplotlib. As a machine-learning module, +it provides versatile tools for data mining and analysis in any field of science and engineering. +It strives to be simple and efficient, accessible to everybody, and reusable in various contexts.""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + (name, version, { + 'modulename': 'sklearn', + 'checksums': ['7c22d1305b16f08d57751a4ea36071e2215efb4c09cb79183faa4e8e82a3dbf8'], + }), + ('sklearn', '0.0', { + 'checksums': ['e23001573aa194b834122d2b9562459bf5ae494a2d59ca6b8aa22c85a44c0e31'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/scikit-optimize/scikit-optimize-0.9.0-foss-2021a.eb b/easybuild/easyconfigs/s/scikit-optimize/scikit-optimize-0.9.0-foss-2021a.eb new file mode 100644 index 000000000000..306d5ba89e82 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-optimize/scikit-optimize-0.9.0-foss-2021a.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonPackage' + +name = 'scikit-optimize' +version = '0.9.0' + +homepage = 'https://scikit-optimize.github.io' +description = """Scikit-Optimize, or skopt, is a simple and efficient library to minimize (very) expensive + and noisy black-box functions.""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +sources = [SOURCE_TAR_GZ] +checksums = ['77d8c9e64947fc9f5cc05bbc6aed7b8a9907871ae26fe11997fd67be90f26008'] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('scikit-learn', '0.24.2'), + ('matplotlib', '3.4.2'), + ('pretty-yaml', '21.10.1'), +] + +options = {'modulename': 'skopt'} + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/spglib-python/spglib-python-2.0.0-foss-2022a.eb b/easybuild/easyconfigs/s/spglib-python/spglib-python-2.0.0-foss-2022a.eb new file mode 100644 index 000000000000..c1dd837eb0a4 --- /dev/null +++ b/easybuild/easyconfigs/s/spglib-python/spglib-python-2.0.0-foss-2022a.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'spglib-python' +version = '2.0.0' + +homepage = 'https://pypi.python.org/pypi/spglib' +description = "Spglib for Python. Spglib is a library for finding and handling crystal symmetries written in C." + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ['https://pypi.python.org/packages/source/%(nameletter)s/spglib'] +sources = ['spglib-%(version)s.tar.gz'] +checksums = ['cbbd5e1d6096577c58b2fa47a5ea4f433a1932e5bc1cd1b691ea387c1b2e9974'] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +options = {'modulename': 'spglib'} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/s/strelka/strelka-2.9.10-foss-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/s/strelka/strelka-2.9.10-foss-2018b-Python-2.7.15.eb index b226cfc14749..e980e28cde9a 100644 --- a/easybuild/easyconfigs/s/strelka/strelka-2.9.10-foss-2018b-Python-2.7.15.eb +++ b/easybuild/easyconfigs/s/strelka/strelka-2.9.10-foss-2018b-Python-2.7.15.eb @@ -23,7 +23,7 @@ dependencies = [ ('Python', '2.7.15'), ] -configopts = "-DBOOST_ROOT=$EBROOTBOOST -DCMAKE_BUILD_TYPE=Release" +configopts = "-DBOOST_ROOT=$EBROOTBOOST" separate_build_dir = True diff --git a/easybuild/easyconfigs/s/strelka/strelka-2.9.10-intel-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/s/strelka/strelka-2.9.10-intel-2018b-Python-2.7.15.eb index 4b6230522883..8dc42c17dd06 100644 --- a/easybuild/easyconfigs/s/strelka/strelka-2.9.10-intel-2018b-Python-2.7.15.eb +++ b/easybuild/easyconfigs/s/strelka/strelka-2.9.10-intel-2018b-Python-2.7.15.eb @@ -25,7 +25,7 @@ dependencies = [ separate_build_dir = True -configopts = "-DBOOST_ROOT=$EBROOTBOOST -DCMAKE_BUILD_TYPE=Release" +configopts = "-DBOOST_ROOT=$EBROOTBOOST" sanity_check_paths = { 'files': ['bin/configureStrelkaGermlineWorkflow.py', 'libexec/strelka%(version_major)s'], diff --git a/easybuild/easyconfigs/s/stripy/stripy-2.1.0-foss-2021a.eb b/easybuild/easyconfigs/s/stripy/stripy-2.1.0-foss-2021a.eb new file mode 100644 index 000000000000..29fb7e3ef03f --- /dev/null +++ b/easybuild/easyconfigs/s/stripy/stripy-2.1.0-foss-2021a.eb @@ -0,0 +1,36 @@ +easyblock = "PythonBundle" + +name = 'stripy' +version = '2.1.0' + +homepage = 'https://github.com/underworldcode/stripy' +description = """A Python interface to TRIPACK and STRIPACK Fortran code for (constrained) triangulation in Cartesian +coordinates and on a sphere. Stripy is an object-oriented package and includes routines from SRFPACK and SSRFPACK for +interpolation (nearest neighbor, linear and hermite cubic) and to evaluate derivatives (Renka 1996a,b and 1997a,b).""" + +toolchain = {'name': 'foss', 'version': '2021a'} + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('matplotlib', '3.4.2'), + ('imageio', '2.10.5'), + ('Cartopy', '0.20.0'), + ('xarray', '0.19.0'), + ('netcdf4-python', '1.5.7') +] + +use_pip = True + +exts_list = [ + ('litho1pt0', '1.5.0', { + 'checksums': ['5334740cd1fffc6d31ec01a79ce60797352b7bb005a5c1a1bda826dddaf472d2'], + }), + (name, version, { + 'checksums': ['1b60cd6b4a86b07b72491ed871fa95050d5dbb41a40e9a43922b040d38cba033'], + }), +] + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-foss-2020b.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-foss-2020b.eb index 2342aee9b61d..b37d88e8be6d 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-foss-2020b.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-foss-2020b.eb @@ -165,10 +165,10 @@ exts_list = [ 'TensorFlow-2.4.0_fix-eigen-on-power.patch', 'TensorFlow-2.4.0_downgrade-required-versions.patch', 'TensorFlow-2.4.0_add-protobuf-deps.patch', - 'TensorFlow-2.4.0_add-ldl.patch', 'TensorFlow-2.4.0_add-missing-llvm-deps.patch', 'TensorFlow-2.4.0_fix-absl-on-power.patch', 'TensorFlow-2.4.0_dont-use-var-lock.patch', + 'TensorFlow-2.4.1_add-ldl.patch', 'TensorFlow-2.4.1_remove-duplicate-gpu-tests.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', @@ -190,6 +190,7 @@ exts_list = [ '-//tensorflow/c/eager:c_api_distributed_test_gpu', # Race condition with port picker: https://github.com/tensorflow/tensorflow/issues/46602 '-//tensorflow/c/eager:c_api_cluster_test_gpu', + '-//tensorflow/c/eager:c_api_remote_function_test', '-//tensorflow/c/eager:c_api_remote_function_test_gpu', '-//tensorflow/c/eager:c_api_remote_test_gpu', # Invalid alignment: https://github.com/tensorflow/tensorflow/issues/46460 @@ -216,13 +217,13 @@ exts_list = [ 'ac8f53662ad0bb660089c17bb433faf1ce3c2238234a2c3be7d92c8e02c1a8d6', # TensorFlow-2.4.0_add-protobuf-deps.patch '0ae2f4f1f1dc5b85f61edbe8a4a91dcffd5cf7588fa46c6a143455e4bc41a64e', - '917ee7282e782e48673596d8917c3207e60e0851bb9acf230a2a439b067af2e3', # TensorFlow-2.4.0_add-ldl.patch # TensorFlow-2.4.0_add-missing-llvm-deps.patch 'ce8c41e75f9854e547d03de99ae72cf41afa967b20439e864bc4af3dd4f565c7', # TensorFlow-2.4.0_fix-absl-on-power.patch 'cd0e1181cfc56c259cb57b7f9590816db5f5cde3fab39b3386c001359ca6e9fa', # TensorFlow-2.4.0_dont-use-var-lock.patch 'b14f2493fd2edf79abd1c4f2dde6c98a3e7d5cb9c25ab9386df874d5f072d6b5', + 'ab57637e3e64a5ff8345573effed2b229c33579b9ac3c8ceb7e554d236890d4a', # TensorFlow-2.4.1_add-ldl.patch # TensorFlow-2.4.1_remove-duplicate-gpu-tests.patch 'f384cd97e004673ae530b6e5cc826f8fddb46646991f1a228fc07b2aac87ee80', ], diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2019b-Python-3.7.4.eb index e6fb64444a9f..f2b7555d0c89 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2019b-Python-3.7.4.eb @@ -154,10 +154,10 @@ exts_list = [ 'TensorFlow-2.4.0_fix-eigen-on-power.patch', 'TensorFlow-2.4.0_downgrade-required-versions.patch', 'TensorFlow-2.4.0_add-protobuf-deps.patch', - 'TensorFlow-2.4.0_add-ldl.patch', 'TensorFlow-2.4.0_add-missing-llvm-deps.patch', 'TensorFlow-2.4.0_fix-absl-on-power.patch', 'TensorFlow-2.4.0_dont-use-var-lock.patch', + 'TensorFlow-2.4.1_add-ldl.patch', 'TensorFlow-2.4.1-fix-alias-violation-in-absl.patch', 'TensorFlow-2.4.1_fix-min-priority-test.patch', 'TensorFlow-2.4.1_remove-duplicate-gpu-tests.patch', @@ -182,6 +182,7 @@ exts_list = [ '-//tensorflow/c/eager:c_api_distributed_test_gpu', # Race condition with port picker: https://github.com/tensorflow/tensorflow/issues/46602 '-//tensorflow/c/eager:c_api_cluster_test_gpu', + '-//tensorflow/c/eager:c_api_remote_function_test', '-//tensorflow/c/eager:c_api_remote_function_test_gpu', '-//tensorflow/c/eager:c_api_remote_test_gpu', # Invalid alignment: https://github.com/tensorflow/tensorflow/issues/46460 @@ -210,13 +211,13 @@ exts_list = [ 'ac8f53662ad0bb660089c17bb433faf1ce3c2238234a2c3be7d92c8e02c1a8d6', # TensorFlow-2.4.0_add-protobuf-deps.patch '0ae2f4f1f1dc5b85f61edbe8a4a91dcffd5cf7588fa46c6a143455e4bc41a64e', - '917ee7282e782e48673596d8917c3207e60e0851bb9acf230a2a439b067af2e3', # TensorFlow-2.4.0_add-ldl.patch # TensorFlow-2.4.0_add-missing-llvm-deps.patch 'ce8c41e75f9854e547d03de99ae72cf41afa967b20439e864bc4af3dd4f565c7', # TensorFlow-2.4.0_fix-absl-on-power.patch 'cd0e1181cfc56c259cb57b7f9590816db5f5cde3fab39b3386c001359ca6e9fa', # TensorFlow-2.4.0_dont-use-var-lock.patch 'b14f2493fd2edf79abd1c4f2dde6c98a3e7d5cb9c25ab9386df874d5f072d6b5', + 'ab57637e3e64a5ff8345573effed2b229c33579b9ac3c8ceb7e554d236890d4a', # TensorFlow-2.4.1_add-ldl.patch # TensorFlow-2.4.1-fix-alias-violation-in-absl.patch '33744bbf4ccbd5995e5e12336eb571c849ccbbc0e493fee8a3cf03bc7d5a0919', # TensorFlow-2.4.1_fix-min-priority-test.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2020b.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2020b.eb index ea58071275f8..0feb8006d4df 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2020b.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1-fosscuda-2020b.eb @@ -166,10 +166,10 @@ exts_list = [ 'TensorFlow-2.4.0_fix-eigen-on-power.patch', 'TensorFlow-2.4.0_downgrade-required-versions.patch', 'TensorFlow-2.4.0_add-protobuf-deps.patch', - 'TensorFlow-2.4.0_add-ldl.patch', 'TensorFlow-2.4.0_add-missing-llvm-deps.patch', 'TensorFlow-2.4.0_fix-absl-on-power.patch', 'TensorFlow-2.4.0_dont-use-var-lock.patch', + 'TensorFlow-2.4.1_add-ldl.patch', 'TensorFlow-2.4.1_fix-min-priority-test.patch', 'TensorFlow-2.4.1_remove-duplicate-gpu-tests.patch', ], @@ -193,6 +193,7 @@ exts_list = [ '-//tensorflow/c/eager:c_api_distributed_test_gpu', # Race condition with port picker: https://github.com/tensorflow/tensorflow/issues/46602 '-//tensorflow/c/eager:c_api_cluster_test_gpu', + '-//tensorflow/c/eager:c_api_remote_function_test', '-//tensorflow/c/eager:c_api_remote_function_test_gpu', '-//tensorflow/c/eager:c_api_remote_test_gpu', # Invalid alignment: https://github.com/tensorflow/tensorflow/issues/46460 @@ -221,13 +222,13 @@ exts_list = [ 'ac8f53662ad0bb660089c17bb433faf1ce3c2238234a2c3be7d92c8e02c1a8d6', # TensorFlow-2.4.0_add-protobuf-deps.patch '0ae2f4f1f1dc5b85f61edbe8a4a91dcffd5cf7588fa46c6a143455e4bc41a64e', - '917ee7282e782e48673596d8917c3207e60e0851bb9acf230a2a439b067af2e3', # TensorFlow-2.4.0_add-ldl.patch # TensorFlow-2.4.0_add-missing-llvm-deps.patch 'ce8c41e75f9854e547d03de99ae72cf41afa967b20439e864bc4af3dd4f565c7', # TensorFlow-2.4.0_fix-absl-on-power.patch 'cd0e1181cfc56c259cb57b7f9590816db5f5cde3fab39b3386c001359ca6e9fa', # TensorFlow-2.4.0_dont-use-var-lock.patch 'b14f2493fd2edf79abd1c4f2dde6c98a3e7d5cb9c25ab9386df874d5f072d6b5', + 'ab57637e3e64a5ff8345573effed2b229c33579b9ac3c8ceb7e554d236890d4a', # TensorFlow-2.4.1_add-ldl.patch # TensorFlow-2.4.1_fix-min-priority-test.patch '389febce9a0612fd457daf4cb18c02f77fc7311bacae0963602a3198d9f2737f', # TensorFlow-2.4.1_remove-duplicate-gpu-tests.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1_add-ldl.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1_add-ldl.patch new file mode 100644 index 000000000000..2f55ddb6183e --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.4.1_add-ldl.patch @@ -0,0 +1,21 @@ +The stacktrace library uses dladdr and friends but doesn't link libdl +See https://github.com/tensorflow/tensorflow/issues/45013 and +https://github.com/tensorflow/tensorflow/pull/56606 + +Author: Alexander Grund (TU Dresden) + +diff --git a/tensorflow/core/platform/default/BUILD b/tensorflow/core/platform/default/BUILD +index 2f94bce8c5b..3d0d04274e4 100644 +--- a/tensorflow/core/platform/default/BUILD ++++ b/tensorflow/core/platform/default/BUILD +@@ -377,6 +377,10 @@ cc_library( + name = "stacktrace_handler", + srcs = ["stacktrace_handler.cc"], + hdrs = ["//tensorflow/core/platform:stacktrace_handler.h"], ++ linkopts = select({ ++ "//tensorflow:windows": [], ++ "//conditions:default": ["-ldl"], ++ }), + linkstatic = 1, + deps = [ + "//tensorflow/core/platform", diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b-CUDA-11.4.1.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b-CUDA-11.4.1.eb index 7a84c1259e7c..1cd3c17f6d07 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b-CUDA-11.4.1.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b-CUDA-11.4.1.eb @@ -64,10 +64,6 @@ exts_list = [ ('termcolor', '1.1.0', { 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], }), - ('tensorflow-io-gcs-filesystem', '0.24.0', { - 'source_tmpl': 'tensorflow_io_gcs_filesystem-0.24.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl', - 'checksums': ['cbc71b3925508bf796644a0083a6f9284f71404654f53092bece701383a69520'], - }), ('tensorflow_estimator', '2.7.0', { 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', 'checksums': ['325b5a224864379242b7b76c6987ca544239be82579d33e68ec7c2bda57abc9d'], @@ -120,11 +116,6 @@ exts_list = [ ('opt_einsum', '3.3.0', { 'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'], }), - ('libclang', '13.0.0', { - 'modulename': 'clang', - 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-manylinux1_x86_64.whl', - 'checksums': ['9c1e623340ccafe3a10a2abbc90f59593ff29f0c854f4ddb65b6220d9d998fb4'], - }), ('Keras_Preprocessing', '1.1.2', { 'checksums': ['add82567c50c8bc648c14195bf544a5ce7c1f76761536956c3d2978970179ef3'], }), @@ -178,6 +169,8 @@ exts_list = [ 'TensorFlow-2.5.0_fix-crash-on-shutdown.patch', 'TensorFlow-2.7.1_fix_protobuf_error_message.patch', 'TensorFlow-2.7.1_remove-duplicate-gpu-tests.patch', + 'TensorFlow-2.7.1_remove-io-gcs-dependency.patch', + 'TensorFlow-2.7.1_remove-libclang-dependency.patch', 'TensorFlow-2.7.1_fix_cpu_count.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', @@ -210,6 +203,8 @@ exts_list = [ '-//tensorflow/core/kernels/mkl:mkl_fused_batch_norm_op_test', # All tests in this directory fail with segfault (TensorFlow Graph IR) '-//tensorflow/core/ir/importexport/tests/roundtrip/...', + # Fails on e.g. AMD EPYC and known to be flaky on Mac: https://github.com/tensorflow/tensorflow/issues/56717 + '-//tensorflow/python/data/experimental/kernel_tests/service:fault_tolerance_test', ], 'testopts': "--test_timeout=3600 --test_size_filters=small", 'testopts_gpu': "--test_timeout=3600 --test_size_filters=small " + @@ -235,6 +230,10 @@ exts_list = [ '301ce21845987dc7868624880c0d85e60aa5491c5a0bae0f6ebc8db5727960a5', # TensorFlow-2.7.1_remove-duplicate-gpu-tests.patch 'f78526a34d85f4dda59b160b576aa3a3126db7073a58c4e3b1424923f6a21483', + # TensorFlow-2.7.1_remove-io-gcs-dependency.patch + '01c439749938f9fc23fe8de17592460aa46e201575a3f9465bfb6b39ca50ef20', + # TensorFlow-2.7.1_remove-libclang-dependency.patc + 'd202058c0e8a7cdef3157fe12327e23c7291ce2724a15653df0aae3b40c4dadc', # TensorFlow-2.7.1_fix_cpu_count.patch '5427a4cff0afc2fe5b24776ae9ca3616c56a79c1fde0025b37bec24837bb0698', ], diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b.eb index 1169e8334d29..e54e43b8deb5 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1-foss-2021b.eb @@ -60,10 +60,6 @@ exts_list = [ ('termcolor', '1.1.0', { 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], }), - ('tensorflow-io-gcs-filesystem', '0.24.0', { - 'source_tmpl': 'tensorflow_io_gcs_filesystem-0.24.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl', - 'checksums': ['cbc71b3925508bf796644a0083a6f9284f71404654f53092bece701383a69520'], - }), ('tensorflow_estimator', '2.7.0', { 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', 'checksums': ['325b5a224864379242b7b76c6987ca544239be82579d33e68ec7c2bda57abc9d'], @@ -116,11 +112,6 @@ exts_list = [ ('opt_einsum', '3.3.0', { 'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'], }), - ('libclang', '13.0.0', { - 'modulename': 'clang', - 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-manylinux1_x86_64.whl', - 'checksums': ['9c1e623340ccafe3a10a2abbc90f59593ff29f0c854f4ddb65b6220d9d998fb4'], - }), ('Keras_Preprocessing', '1.1.2', { 'checksums': ['add82567c50c8bc648c14195bf544a5ce7c1f76761536956c3d2978970179ef3'], }), @@ -174,6 +165,8 @@ exts_list = [ 'TensorFlow-2.5.0_fix-crash-on-shutdown.patch', 'TensorFlow-2.7.1_fix_protobuf_error_message.patch', 'TensorFlow-2.7.1_remove-duplicate-gpu-tests.patch', + 'TensorFlow-2.7.1_remove-io-gcs-dependency.patch', + 'TensorFlow-2.7.1_remove-libclang-dependency.patch', 'TensorFlow-2.7.1_fix_cpu_count.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', @@ -206,6 +199,8 @@ exts_list = [ '-//tensorflow/core/kernels/mkl:mkl_fused_batch_norm_op_test', # All tests in this directory fail with segfault (TensorFlow Graph IR) '-//tensorflow/core/ir/importexport/tests/roundtrip/...', + # Fails on e.g. AMD EPYC and known to be flaky on Mac: https://github.com/tensorflow/tensorflow/issues/56717 + '-//tensorflow/python/data/experimental/kernel_tests/service:fault_tolerance_test', ], 'testopts': "--test_timeout=3600 --test_size_filters=small", 'testopts_gpu': "--test_timeout=3600 --test_size_filters=small " + @@ -231,6 +226,10 @@ exts_list = [ '301ce21845987dc7868624880c0d85e60aa5491c5a0bae0f6ebc8db5727960a5', # TensorFlow-2.7.1_remove-duplicate-gpu-tests.patch 'f78526a34d85f4dda59b160b576aa3a3126db7073a58c4e3b1424923f6a21483', + # TensorFlow-2.7.1_remove-io-gcs-dependency.patch + '01c439749938f9fc23fe8de17592460aa46e201575a3f9465bfb6b39ca50ef20', + # TensorFlow-2.7.1_remove-libclang-dependency.patc + 'd202058c0e8a7cdef3157fe12327e23c7291ce2724a15653df0aae3b40c4dadc', # TensorFlow-2.7.1_fix_cpu_count.patch '5427a4cff0afc2fe5b24776ae9ca3616c56a79c1fde0025b37bec24837bb0698', ], diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1_remove-io-gcs-dependency.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1_remove-io-gcs-dependency.patch new file mode 100644 index 000000000000..ddd71bc16077 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1_remove-io-gcs-dependency.patch @@ -0,0 +1,19 @@ +This Python package is not available as a binary for all architectures and building it +requires TensorFlow to be installed, i.e. there is a cyclic dependency. +As it is not actually required (but optional) remove it from `REQUIRED_PACKAGES`. +See https://github.com/tensorflow/tensorflow/issues/56636 + +Author: Alexander Grund (TU Dresden) + +diff --git a/tensorflow/tools/pip_package/setup.py b/tensorflow/tools/pip_package/setup.py +index a9ef0ee00b2..bcac1449099 100644 +--- a/tensorflow/tools/pip_package/setup.py ++++ b/tensorflow/tools/pip_package/setup.py +@@ -106,7 +106,6 @@ REQUIRED_PACKAGES = [ + # Keras release is not backward compatible with old tf release, and we have + # to make the version aligned between TF and Keras. + 'keras >= 2.7.0rc0, < 2.8', +- 'tensorflow-io-gcs-filesystem >= 0.21.0', + ] + + diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1_remove-libclang-dependency.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1_remove-libclang-dependency.patch new file mode 100644 index 000000000000..18f00da8db53 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.7.1_remove-libclang-dependency.patch @@ -0,0 +1,22 @@ +This dependency was introduced in +https://github.com/tensorflow/tensorflow/commit/c211472000ff57bac7fcec9b0465cf73b37bf135 +> This is in preparation to open-source TF's TFRT backend. +> TFRT generates code using libclang python bindings as part of the build. + +Hence it is not currently used and as it is not (easily) available for all architectures +simply remove it. + +Author: Alexander Grund (TU Dresden) + +diff --git a/tensorflow/tools/pip_package/setup.py b/tensorflow/tools/pip_package/setup.py +index a9ef0ee00b2..6740e2fe3a7 100644 +--- a/tensorflow/tools/pip_package/setup.py ++++ b/tensorflow/tools/pip_package/setup.py +@@ -82,7 +82,6 @@ REQUIRED_PACKAGES = [ + # Install other dependencies + 'absl-py >= 0.4.0', + 'astunparse >= 1.6.0', +- 'libclang >= 9.0.1', + 'flatbuffers >= 1.12, < 3.0', # capped as jax 0.1.71 needs < 3.0 + 'google_pasta >= 0.1.1', + 'h5py >= 2.9.0', # capped since 3.3.0 lacks py3.6 diff --git a/easybuild/easyconfigs/t/Togl/Togl-2.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/t/Togl/Togl-2.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..19dd00be65ad --- /dev/null +++ b/easybuild/easyconfigs/t/Togl/Togl-2.0-GCCcore-11.3.0.eb @@ -0,0 +1,49 @@ +# Last contribution from IT4Innovations National Supercomputing Center, Czech Republic +# Jakub Kropacek, 2022 + +easyblock = 'ConfigureMake' + +name = 'Togl' +version = '2.0' + +homepage = 'https://sourceforge.net/projects/togl/' +description = """A Tcl/Tk widget for OpenGL rendering.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://downloads.sourceforge.net/project/%(namelower)s/%(name)s/%(version)s/'] +sources = ['%(name)s%(version)s-src.tar.gz'] +patches = [ + 'Togl-2.0_configure.patch', + 'Togl-2.0_decl.patch', +] +checksums = [ + 'b7d4a90bbad3aca618d505ee99e7fd8fb04c829f63231dda2360f557ba3f7610', # Togl2.0-src.tar.gz + 'da97f36b60cd107444cd92453809135b14dc1e8775146b3ba0731da8002e6f9f', # Togl-2.0_configure.patch + '05db6b3ca5139f60616d074903883a3070fcfb1eb8c965b0938779b4f9a6ec6a', # Togl-2.0_decl.patch +] + +builddependencies = [('binutils', '2.38')] + +dependencies = [ + ('Mesa', '22.0.3'), + ('Tk', '8.6.12'), + ('Tcl', '8.6.12'), +] + +preconfigopts = 'export CFLAGS="$CFLAGS -DTOGL_USE_FONTS=0" && ' + +configopts = "--prefix=%(installdir)s --exec-prefix=%(installdir)s " +configopts += "--with-tcl=$EBROOTTCL/lib --with-tk=$EBROOTTK/lib" + +sanity_check_paths = { + 'files': [], + 'dirs': ['include', 'lib', 'lib/%(name)s%(version)s'], +} + +modextrapaths = { + 'LD_LIBRARY_PATH': 'lib/%(name)s%(version)s', + 'LIBRARY_PATH': 'lib/%(name)s%(version)s', +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/t/Transformers/Transformers-4.21.1-foss-2021b.eb b/easybuild/easyconfigs/t/Transformers/Transformers-4.21.1-foss-2021b.eb new file mode 100644 index 000000000000..0cc43982c0b8 --- /dev/null +++ b/easybuild/easyconfigs/t/Transformers/Transformers-4.21.1-foss-2021b.eb @@ -0,0 +1,44 @@ +easyblock = 'PythonBundle' + +name = 'Transformers' +version = '4.21.1' + +homepage = 'https://github.com/huggingface/transformers' +description = """ +State-of-the-art Natural Language Processing for PyTorch and TensorFlow 2.0""" + +toolchain = {'name': 'foss', 'version': '2021b'} + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('PyYAML', '5.4.1'), + ('typing-extensions', '3.10.0.2'), # needed by huggingface-hub + ('tqdm', '4.62.3'), +] + +use_pip = True + +exts_list = [ + ('regex', '2022.7.25', { + 'checksums': ['bd0883e86964cd61360ffc36dbebbc49b928e92a306f886eab02c11dfde5b7aa'], + }), + ('sacremoses', '0.0.53', { + 'checksums': ['43715868766c643b35de4b8046cce236bfe59a7fa88b25eaf6ddf02bacf53a7a'], + }), + ('tokenizers', '0.12.1', { + 'source_tmpl': 'tokenizers-%(version)s-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl', + 'checksums': ['619728df2551bdfe6f96ff177f9ded958e7ed9e2af94c8d5ac2834d1eb06d112'], + }), + ('huggingface-hub', '0.8.1', { + 'source_tmpl': 'huggingface_hub-%(version)s.tar.gz', + 'checksums': ['75c70797da54b849f06c2cbf7ba2217250ee217230b9f65547d5db3c5bd84bb5'], + }), + ('transformers', version, { + 'checksums': ['20f895d7304a5c7f5af099f9300b326819df9cf2167cdfb754450facc0e094f6'], + }), +] + +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/t/Trycycler/Trycycler-0.5.2-foss-2021a.eb b/easybuild/easyconfigs/t/Trycycler/Trycycler-0.5.2-foss-2021a.eb index e4fde7649335..4337daa5f41a 100644 --- a/easybuild/easyconfigs/t/Trycycler/Trycycler-0.5.2-foss-2021a.eb +++ b/easybuild/easyconfigs/t/Trycycler/Trycycler-0.5.2-foss-2021a.eb @@ -15,13 +15,22 @@ checksums = ['6f6007afa6a4f7568d12b48627a09b03d389ae4e7888033433314caadd69d796'] dependencies = [ ('Python', '3.9.5'), ('SciPy-bundle', '2021.05'), + ('R', '4.1.0'), ('edlib', '1.3.9'), + ('miniasm', '0.3-20191007'), + ('minimap2', '2.20'), + ('Mash', '2.3'), + ('MUSCLE', '3.8.31'), # v3 is preferred, see https://github.com/rrwick/Trycycler/wiki/Software-requirements#muscle ('Pillow', '8.2.0'), ] download_dep_fail = True use_pip = True +runtest = 'pytest' + +sanity_pip_check = True + sanity_check_paths = { 'files': ['bin/trycycler'], 'dirs': ['lib/python%(pyshortver)s/site-packages'], @@ -29,6 +38,4 @@ sanity_check_paths = { sanity_check_commands = ["trycycler --help"] -sanity_pip_check = True - moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/Trycycler/Trycycler-0.5.3-foss-2021b.eb b/easybuild/easyconfigs/t/Trycycler/Trycycler-0.5.3-foss-2021b.eb new file mode 100644 index 000000000000..4ce03f293a2b --- /dev/null +++ b/easybuild/easyconfigs/t/Trycycler/Trycycler-0.5.3-foss-2021b.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonPackage' + +name = 'Trycycler' +version = '0.5.3' + +homepage = 'https://github.com/rrwick/Trycycler' +description = "Trycycler is a tool for generating consensus long-read assemblies for bacterial genomes." + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = ['https://github.com/rrwick/Trycycler/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['9a3a512284a91c8a221e3f4dedbc8acabd8f7b93937ad46402d93eee6c7ee95b'] + +dependencies = [ + ('Python', '3.9.6'), + ('SciPy-bundle', '2021.10'), + ('R', '4.1.2'), + ('edlib', '1.3.9'), + ('miniasm', '0.3-20191007'), + ('minimap2', '2.22'), + ('Mash', '2.3'), + ('MUSCLE', '3.8.31'), # v3 is preferred, see https://github.com/rrwick/Trycycler/wiki/Software-requirements#muscle + ('Pillow', '8.3.2'), +] + +download_dep_fail = True +use_pip = True + +runtest = 'pytest' + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/trycycler'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["trycycler --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tbb/tbb-2021.5.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/t/tbb/tbb-2021.5.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..7166912c1c65 --- /dev/null +++ b/easybuild/easyconfigs/t/tbb/tbb-2021.5.0-GCCcore-11.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'CMakeMake' + +name = 'tbb' +version = '2021.5.0' + +homepage = 'https://github.com/oneapi-src/oneTBB' +description = """Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily write parallel C++ programs that + take full advantage of multicore performance, that are portable, composable and have future-proof scalability.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/oneapi-src/oneTBB/archive/refs/tags/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e5b57537c741400cf6134b428fc1689a649d7d38d9bb9c1b6d64f092ea28178a'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +dependencies = [('hwloc', '2.7.1')] + +sanity_check_paths = { + 'files': ['lib/libtbb.%s' % SHLIB_EXT, 'lib/libtbbmalloc.%s' % SHLIB_EXT], + 'dirs': ['lib', 'include', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/topaz/topaz-0.2.5-foss-2021a.eb b/easybuild/easyconfigs/t/topaz/topaz-0.2.5-foss-2021a.eb index 30b6c82cef0c..a0657518bae8 100644 --- a/easybuild/easyconfigs/t/topaz/topaz-0.2.5-foss-2021a.eb +++ b/easybuild/easyconfigs/t/topaz/topaz-0.2.5-foss-2021a.eb @@ -15,7 +15,7 @@ toolchain = {'name': 'foss', 'version': '2021a'} dependencies = [ ('Python', '3.9.5'), ('PyTorch', '1.10.0'), - ('torchvision', '0.11.1'), + ('torchvision', '0.11.3'), ('scikit-learn', '0.24.2'), ] diff --git a/easybuild/easyconfigs/t/torchvision/torchvision-0.11.3-foss-2021a-CUDA-11.3.1.eb b/easybuild/easyconfigs/t/torchvision/torchvision-0.11.3-foss-2021a-CUDA-11.3.1.eb new file mode 100644 index 000000000000..3eb21ffbed37 --- /dev/null +++ b/easybuild/easyconfigs/t/torchvision/torchvision-0.11.3-foss-2021a-CUDA-11.3.1.eb @@ -0,0 +1,23 @@ +name = 'torchvision' +version = '0.11.3' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://github.com/pytorch/vision' +description = " Datasets, Transforms and Models specific to Computer Vision" + +toolchain = {'name': 'foss', 'version': '2021a'} + +source_urls = ['https://github.com/pytorch/vision/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b4c51d27589783e6e6941ecaa67b55f6f41633874ec37f80b64a0c92c3196e0c'] + +builddependencies = [('CMake', '3.20.1')] + +dependencies = [ + ('CUDA', '11.3.1', '', True), + ('Python', '3.9.5'), + ('Pillow-SIMD', '8.2.0'), + ('PyTorch', '1.10.0', versionsuffix), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/t/tqdm/tqdm-4.64.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/t/tqdm/tqdm-4.64.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..e3a61555dec5 --- /dev/null +++ b/easybuild/easyconfigs/t/tqdm/tqdm-4.64.0-GCCcore-11.3.0.eb @@ -0,0 +1,25 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'PythonPackage' + +name = 'tqdm' +version = '4.64.0' + +homepage = "https://github.com/tqdm/tqdm" +description = """A fast, extensible progress bar for Python and CLI""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +sources = [SOURCE_TAR_GZ] +checksums = ['40be55d30e200777a307a7585aee69e4eabb46b4ec6a4b4a5f2d9f11e7d5408d'] + +builddependencies = [('binutils', '2.38')] + +dependencies = [('Python', '3.10.4')] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.0.0-GCCcore-11.3.0-CUDA-11.7.0.eb b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.0.0-GCCcore-11.3.0-CUDA-11.7.0.eb new file mode 100644 index 000000000000..bf163fd46555 --- /dev/null +++ b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.0.0-GCCcore-11.3.0-CUDA-11.7.0.eb @@ -0,0 +1,59 @@ +easyblock = 'ConfigureMake' + +name = 'UCC-CUDA' +version = '1.0.0' +versionsuffix = '-CUDA-%(cudaver)s' + +homepage = 'https://www.openucx.org/' +description = """UCC (Unified Collective Communication) is a collective +communication operations API and library that is flexible, complete, and +feature-rich for current and emerging programming models and runtimes. + +This module adds the UCC CUDA support. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/openucx/ucc/archive/refs/tags'] +sources = ['v%(version)s.tar.gz'] +patches = [ + '%(name)s-1.0.0_link_against_existing_UCC_libs.patch', +] +checksums = [ + 'd3b4aa7004bf339d35952a1699a6e408064ba578bdc93861f5f07527ad0a5e8c', # v1.0.0.tar.gz + # UCC-CUDA-1.0.0_link_against_existing_UCC_libs.patch + '9fa11cf6779174f4e9048df5812096e4261e1769d465cc7f34a6354398876856', +] + +builddependencies = [ + ('binutils', '2.38'), + ('Autotools', '20220317'), +] + +dependencies = [ + ('UCC', '1.0.0'), + ('CUDA', '11.7.0', '', True), + ('UCX-CUDA', '1.12.1', '-CUDA-%(cudaver)s'), + ('NCCL', '2.12.12', '-CUDA-%(cudaver)s'), +] + +preconfigopts = "./autogen.sh && " + +buildopts = '-C src/components/mc/cuda V=1 && make -C src/components/tl/nccl V=1' +installopts = '-C src/components/mc/cuda && make -C src/components/tl/nccl install' + +# UCC_COMPONENT_PATH completely overrides $EBROOTUCC/lib/ucc so install symbolic links +# to existing non CUDA related components +postinstallcmds = ['for i in $EBROOTUCC/lib/ucc/*; do ln -s $i %(installdir)s/lib/ucc; done'] + +sanity_check_paths = { + 'files': ['lib/ucc/libucc_mc_cuda.%s' % SHLIB_EXT, 'lib/ucc/libucc_tl_nccl.%s' % SHLIB_EXT], + 'dirs': ['lib'] +} + +sanity_check_commands = ["ucc_info -c"] + +modextravars = {'UCC_COMPONENT_PATH': '%(installdir)s/lib/ucc'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.0.0_link_against_existing_UCC_libs.patch b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.0.0_link_against_existing_UCC_libs.patch new file mode 100644 index 000000000000..2f32d7ee417b --- /dev/null +++ b/easybuild/easyconfigs/u/UCC-CUDA/UCC-CUDA-1.0.0_link_against_existing_UCC_libs.patch @@ -0,0 +1,26 @@ +Make CUDA/NCCL plugins link against the existing ucc libraries. + +Bart Oldeman, 2022-08-02 +diff -ur ucc-1.0.0.orig/src/components/mc/cuda/Makefile.am ucc-1.0.0/src/components/mc/cuda/Makefile.am +--- ucc-1.0.0.orig/src/components/mc/cuda/Makefile.am 2022-04-15 12:43:33.000000000 +0000 ++++ ucc-1.0.0/src/components/mc/cuda/Makefile.am 2022-08-02 12:13:59.332795976 +0000 +@@ -15,7 +15,7 @@ + libucc_mc_cuda_la_CFLAGS = $(BASE_CFLAGS) + libucc_mc_cuda_la_LDFLAGS = -version-info $(SOVERSION) --as-needed $(CUDA_LDFLAGS) + libucc_mc_cuda_la_LIBADD = $(CUDA_LIBS) \ +- $(UCC_TOP_BUILDDIR)/src/libucc.la \ ++ -lucc \ + kernel/libucc_mc_cuda_kernels.la + + include $(top_srcdir)/config/module.am +diff -ur ucc-1.0.0.orig/src/components/tl/nccl/Makefile.am ucc-1.0.0/src/components/tl/nccl/Makefile.am +--- ucc-1.0.0.orig/src/components/tl/nccl/Makefile.am 2022-04-15 12:43:33.000000000 +0000 ++++ ucc-1.0.0/src/components/tl/nccl/Makefile.am 2022-08-02 12:13:59.334795989 +0000 +@@ -21,6 +21,6 @@ + libucc_tl_nccl_la_CPPFLAGS = $(AM_CPPFLAGS) $(BASE_CPPFLAGS) $(CUDA_CPPFLAGS) $(NCCL_CPPFLAGS) + libucc_tl_nccl_la_CFLAGS = $(BASE_CFLAGS) + libucc_tl_nccl_la_LDFLAGS = -version-info $(SOVERSION) --as-needed $(CUDA_LDFLAGS) $(NCCL_LDFLAGS) +-libucc_tl_nccl_la_LIBADD = $(CUDA_LIBS) $(NCCL_LIBADD) $(UCC_TOP_BUILDDIR)/src/libucc.la ++libucc_tl_nccl_la_LIBADD = $(CUDA_LIBS) $(NCCL_LIBADD) -lucc + + include $(top_srcdir)/config/module.am diff --git a/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.9-gompi-2021a.eb b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.9-gompi-2021a.eb index 8a08b0b73e76..2e9b8f68fe00 100644 --- a/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.9-gompi-2021a.eb +++ b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.9-gompi-2021a.eb @@ -19,7 +19,7 @@ dependencies = [ ('Java', '11', '', True), ('Bowtie2', '2.4.4'), ('SAMtools', '1.13'), - ('SPAdes', '3.15.3'), + ('SPAdes', '3.13.0'), ('Racon', '1.4.21'), ('Pilon', '1.23', '-Java-%(javaver)s', True), ('BLAST+', '2.11.0'), @@ -28,6 +28,16 @@ dependencies = [ download_dep_fail = True use_pip = True +_test_cmd = 'unicycler -t %(parallel)s -1 short_reads_1.fastq.gz -2 short_reads_2.fastq.gz -o outdir' +postinstallcmds = [ + ' '.join([ + "cd %(builddir)s/%(name)s-%(version)s/sample_data &&", + "PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH", + "PATH=%(installdir)s/bin:$PATH", + _test_cmd, + ]), +] + sanity_check_paths = { 'files': [], 'dirs': ['lib/python%(pyshortver)s/site-packages'], diff --git a/easybuild/easyconfigs/u/Unicycler/Unicycler-0.5.0-gompi-2021b.eb b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.5.0-gompi-2021b.eb new file mode 100644 index 000000000000..712952beb6f3 --- /dev/null +++ b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.5.0-gompi-2021b.eb @@ -0,0 +1,44 @@ +easyblock = 'PythonPackage' + +name = 'Unicycler' +version = '0.5.0' + +homepage = 'https://github.com/rrwick/Unicycler' +description = """ Unicycler is an assembly pipeline for bacterial genomes. It can assemble Illumina-only read sets + where it functions as a SPAdes-optimiser. It can also assembly long-read-only sets (PacBio or Nanopore) + where it runs a miniasm+Racon pipeline. """ + +toolchain = {'name': 'gompi', 'version': '2021b'} + +github_account = 'rrwick' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['84a8709c9f2e624225410af702d779ffb0cb06f7c22c20e1f01b989945e08a47'] + +dependencies = [ + ('Python', '3.9.6'), + ('Java', '11', '', True), + ('Bowtie2', '2.4.4'), + ('SAMtools', '1.14'), + ('SPAdes', '3.15.3'), + ('Racon', '1.5.0'), + ('Pilon', '1.23', '-Java-%(javaver)s', True), + ('BLAST+', '2.12.0'), +] + +download_dep_fail = True +use_pip = True + +_test_cmd = 'unicycler -t %(parallel)s -1 short_reads_1.fastq.gz -2 short_reads_2.fastq.gz -o outdir' +postinstallcmds = [ + ' '.join([ + "cd %(builddir)s/%(name)s-%(version)s/sample_data &&", + "PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH", + "PATH=%(installdir)s/bin:$PATH", + _test_cmd, + ]), +] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VCFtools/VCFtools-0.1.16-GCC-11.3.0.eb b/easybuild/easyconfigs/v/VCFtools/VCFtools-0.1.16-GCC-11.3.0.eb new file mode 100644 index 000000000000..0af278f65f58 --- /dev/null +++ b/easybuild/easyconfigs/v/VCFtools/VCFtools-0.1.16-GCC-11.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'VCFtools' +version = '0.1.16' + +homepage = "https://vcftools.github.io" +description = """The aim of VCFtools is to provide + easily accessible methods for working with complex + genetic variation data in the form of VCF files.""" + +toolchain = {'name': 'GCC', 'version': '11.3.0'} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s/'] +sources = ['%(namelower)s-%(version)s.tar.gz'] +checksums = ['dbfc774383c106b85043daa2c42568816aa6a7b4e6abc965eeea6c47dde914e3'] + +builddependencies = [ + ('pkgconf', '1.8.0'), +] + +dependencies = [ + ('Perl', '5.34.1'), + ('HTSlib', '1.15.1'), + ('zlib', '1.2.12'), +] + +modextrapaths = {'PERL5LIB': 'lib/perl5/site_perl'} + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['%(namelower)s', 'vcf-sort', 'vcf-stats']], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VESTA/VESTA-3.5.8-gtk3.eb b/easybuild/easyconfigs/v/VESTA/VESTA-3.5.8-gtk3.eb new file mode 100644 index 000000000000..cd8e34bea7a8 --- /dev/null +++ b/easybuild/easyconfigs/v/VESTA/VESTA-3.5.8-gtk3.eb @@ -0,0 +1,33 @@ +# Based on https://code.it4i.cz/sccs/easyconfigs-it4i/-/blob/it4i-karolina/v/VESTA/VESTA-3.5.7.eb + +easyblock = 'Tarball' + +name = 'VESTA' +version = '3.5.8' +versionsuffix = '-gtk3' + +homepage = "http://www.jp-minerals.org/vesta" +description = """ + VESTA is a 3D visualization program for structured models, + volumetric data such as electron/nuclear densities, + and crystal morphologies. +""" + +toolchain = SYSTEM + +source_urls = ["http://www.jp-minerals.org/vesta/archives/%(version)s"] +sources = [{ + 'filename': SOURCE_TAR_BZ2, + 'download_filename': '%(name)s-gtk3.tar.bz2', +}] + +checksums = ['78bef025c2b31f1d64c9c7e06ad2b139d252b3a686893ee79ac74b3021868df8'] + +sanity_check_paths = { + 'files': ['VESTA'], + 'dirs': [], +} + +modextrapaths = {'PATH': ''} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/v/VTK/VTK-9.2.0.rc2-foss-2022a.eb b/easybuild/easyconfigs/v/VTK/VTK-9.2.0.rc2-foss-2022a.eb new file mode 100644 index 000000000000..2fd6fa6575ab --- /dev/null +++ b/easybuild/easyconfigs/v/VTK/VTK-9.2.0.rc2-foss-2022a.eb @@ -0,0 +1,87 @@ +## +# Authors:: +# * Fotis Georgatos +# * Robert Mijakovic +## + +easyblock = 'CMakeMake' + +name = 'VTK' +version = '9.2.0.rc2' + +homepage = 'https://www.vtk.org' +description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for + 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several + interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization + algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques + such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation.""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s'] +sources = [ + SOURCE_TAR_GZ, + '%(name)sData-%(version)s.tar.gz', +] +patches = [('vtk-version.egg-info', '.')] +checksums = [ + '276f35541a46ef5963ae6667ee60b9cb19c9dc5cb28ae68db71fd8577620b0fc', # VTK-9.2.0.rc2.tar.gz + 'daf6c3ac947b3f1b7b6bfd6dfd17e0beb3df34816c9bab61c4b79294a800a2a3', # VTKData-9.1.0.tar.gz + '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b', # vtk-version.egg-info +] + +builddependencies = [('CMake', '3.23.1')] + +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), + ('XZ', '5.2.5'), + ('libGLU', '9.0.2'), + ('X11', '20220504'), +] + +separate_build_dir = True + +# OpenGL +configopts = "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT +configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT +configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include " +# Python +configopts += "-DVTK_WRAP_PYTHON=ON -DVTK_PYTHON_VERSION=3 -DVTK_PYTHON_OPTIONAL_LINK=OFF " +configopts += "-DPython3_ROOT_DIR=$EBROOTPYTHON " +# Other +configopts += "-DVTK_USE_MPI=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib" + +preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " + +# Install a egg-info file so VTK is more python friendly, required for mayavi +local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info' +local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info' +postinstallcmds = [ + 'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest), +] + +modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']} + +local_vtk_exec = ['vtk%s-%%(version_major_minor)s' % x + for x in ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +local_vtk_exec += ['vtkpython'] +local_vtk_libs = ['CommonCore', 'IONetCDF', 'ParallelCore', 'RenderingOpenGL2'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_vtk_exec] + ['include/vtk-%(version_major_minor)s/vtkMPI.h'] + + ['lib/libvtk%s-%%(version_major_minor)s.%s' % (l, SHLIB_EXT) for l in local_vtk_libs], + 'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'], +} + +sanity_check_commands = [ + "python -c 'import %(namelower)s'", + "python -c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'", + # make sure that VTK Python libraries link to libpython (controlled via DVTK_PYTHON_OPTIONAL_LINK=OFF), + # see https://gitlab.kitware.com/vtk/vtk/-/issues/17881 + "ldd $EBROOTVTK/lib/libvtkPythonContext2D-%%(version_major_minor)s.%s | grep /libpython" % SHLIB_EXT, +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/v/VTune/VTune-2022.3.0.eb b/easybuild/easyconfigs/v/VTune/VTune-2022.3.0.eb new file mode 100644 index 000000000000..b8a718b77b0d --- /dev/null +++ b/easybuild/easyconfigs/v/VTune/VTune-2022.3.0.eb @@ -0,0 +1,27 @@ +## +# Author: Robert Mijakovic +## +name = 'VTune' +version = '2022.3.0' + +homepage = 'https://software.intel.com/en-us/vtune' +description = """Intel VTune Amplifier XE is the premier performance profiler for C, C++, C#, Fortran, + Assembly and Java.""" + +toolchain = SYSTEM + +# By downloading, you accept the Intel End User License Agreement +# (https://software.intel.com/content/www/us/en/develop/articles/end-user-license-agreement.html) +# accept_eula = True +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/18656/'] +sources = ['l_oneapi_vtune_p_%(version)s.195_offline.sh'] +checksums = ['7921fce7fcc3b82575be22d9c36beec961ba2a9fb5262ba16a04090bcbd2e1a6'] + +sanity_check_paths = { + 'files': ['%(namelower)s/%(version)s/bin64/amplxe-perf'], + 'dirs': ['%(namelower)s/%(version)s/bin64', + '%(namelower)s/%(version)s/lib64', + '%(namelower)s/%(version)s/include/intel64'] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/v/Valgrind/Valgrind-3.19.0-gompi-2022a.eb b/easybuild/easyconfigs/v/Valgrind/Valgrind-3.19.0-gompi-2022a.eb new file mode 100644 index 000000000000..b3846caed034 --- /dev/null +++ b/easybuild/easyconfigs/v/Valgrind/Valgrind-3.19.0-gompi-2022a.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'Valgrind' +version = '3.19.0' + +homepage = 'https://valgrind.org' +description = "Valgrind: Debugging and profiling tools" + +toolchain = {'name': 'gompi', 'version': '2022a'} +toolchainopts = {'optarch': True} + +source_urls = [ + 'https://sourceware.org/pub/valgrind/', + 'https://www.mirrorservice.org/sites/sourceware.org/pub/valgrind/', +] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['dd5e34486f1a483ff7be7300cc16b4d6b24690987877c3278d797534d6738f02'] + +configopts = ' --with-mpicc="$MPICC"' + +local_binaries = [ + 'callgrind_annotate', 'callgrind_control', 'cg_annotate', 'cg_diff', + 'cg_merge', 'ms_print', 'valgrind', 'valgrind-listener', 'vgdb' +] +local_archs = ('amd64', 'arm64', 'ppc64le') + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binaries] + + [['lib/valgrind/libmpiwrap-%s-linux.%s' % (a, SHLIB_EXT) for a in local_archs]], + 'dirs': [] +} + +moduleclass = 'debugger' diff --git a/easybuild/easyconfigs/v/ViennaRNA/ViennaRNA-2.5.1-foss-2021b.eb b/easybuild/easyconfigs/v/ViennaRNA/ViennaRNA-2.5.1-foss-2021b.eb new file mode 100644 index 000000000000..44021569e19f --- /dev/null +++ b/easybuild/easyconfigs/v/ViennaRNA/ViennaRNA-2.5.1-foss-2021b.eb @@ -0,0 +1,54 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'ConfigureMake' + +name = 'ViennaRNA' +version = '2.5.1' + +homepage = 'https://www.tbi.univie.ac.at/RNA/' +description = """The Vienna RNA Package consists of a C code library and several +stand-alone programs for the prediction and comparison of RNA secondary structures.""" + +toolchain = {'name': 'foss', 'version': '2021b'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.tbi.univie.ac.at/RNA/download/sourcecode/%(version_major)s_%(version_minor)s_x/'] +sources = [SOURCE_TAR_GZ] +checksums = ['05400437cf15595e10b1a25df6c9c48856f356130f9d1e380fa8866b6d27f457'] + +builddependencies = [ + ('Autotools', '20210726'), + ('flex', '2.6.4'), + ('pkg-config', '0.29.2'), + ('Bison', '3.7.6'), + ('SWIG', '4.0.2'), +] + +dependencies = [ + ('Python', '3.9.6'), + ('Perl', '5.34.0'), + ('GSL', '2.7'), + ('libgd', '2.3.3'), + ('X11', '20210802'), +] + +configopts = "--with-cluster --with-kinwalker --with-python3" +# Uncomment this if you compile on pre SSE4.1 CPU +# configopts += "--enable-sse " + +sanity_check_paths = { + 'files': ['bin/RNA%s' % x for x in ['fold', 'eval', 'heat', 'pdist', 'distance', + 'inverse', 'plot', 'subopt', 'Lfold', 'cofold', + 'paln', 'duplex', 'alifold', 'plfold', 'up', + 'aliduplex', 'Lalifold', '2Dfold', 'parconv', + 'PKplex', 'plex', 'snoop', 'forester']] + + ['bin/Kinfold'], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/', 'lib/python%(pyshortver)s/site-packages'], +} + +modextrapaths = { + 'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/', + 'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.2.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.2.0.eb index 6eb09719067f..b23389e4e990 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.2.0.eb @@ -16,7 +16,10 @@ to analyze a system of particles.""" toolchain = {'name': 'GCCcore', 'version': '10.2.0'} toolchainopts = {'pic': True} -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] sources = [SOURCELOWER_TAR_GZ] checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] builddependencies = [('binutils', '2.35')] diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.3.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.3.0.eb index cb1a8cb84177..81555d53747f 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-10.3.0.eb @@ -16,7 +16,10 @@ to analyze a system of particles.""" toolchain = {'name': 'GCCcore', 'version': '10.3.0'} toolchainopts = {'pic': True} -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] sources = [SOURCELOWER_TAR_GZ] checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] builddependencies = [('binutils', '2.36.1')] diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-11.2.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-11.2.0.eb new file mode 100644 index 000000000000..eb847209dbe4 --- /dev/null +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-11.2.0.eb @@ -0,0 +1,43 @@ +## +# Author: Robert Mijakovic +## +easyblock = 'ConfigureMake' + +name = 'Voro++' +version = '0.4.6' + +homepage = 'http://math.lbl.gov/voro++/' +description = """Voro++ is a software library for carrying out three-dimensional computations of the Voronoi +tessellation. A distinguishing feature of the Voro++ library is that it carries out cell-based calculations, +computing the Voronoi cell for each particle individually. It is particularly well-suited for applications that +rely on cell-based statistics, where features of Voronoi cells (eg. volume, centroid, number of faces) can be used +to analyze a system of particles.""" + +toolchain = {'name': 'GCCcore', 'version': '11.2.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] + +builddependencies = [('binutils', '2.37')] + + +# No configure +skipsteps = ['configure'] + +# Override CXX and CFLAGS variables from Makefile +buildopts = 'CXX="$CXX" CFLAGS="$CXXFLAGS"' + +# Override PREFIX variable from Makefile +installopts = "PREFIX=%(installdir)s" + +sanity_check_paths = { + 'files': ['bin/voro++', 'lib/libvoro++.a', 'include/voro++/voro++.hh'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-6.4.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-6.4.0.eb index 9d8d8d4d19c8..769428b78d21 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-6.4.0.eb @@ -18,7 +18,10 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '6.4.0'} toolchainopts = {'pic': True} -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] sources = [SOURCELOWER_TAR_GZ] checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-9.3.0.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-9.3.0.eb index b3ffe5c5492e..10720c28f501 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-GCCcore-9.3.0.eb @@ -14,7 +14,10 @@ to analyze a system of particles.""" toolchain = {'name': 'GCCcore', 'version': '9.3.0'} toolchainopts = {'pic': True} -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] sources = [SOURCELOWER_TAR_GZ] checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] builddependencies = [('binutils', '2.34')] diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2016a.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2016a.eb index 7020ae2236ab..32879b6ab340 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2016a.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2016a.eb @@ -14,10 +14,13 @@ toolchain = {'name': 'foss', 'version': '2016a'} toolchainopts = {'pic': True} sources = [SOURCELOWER_TAR_GZ] -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] # Let's store the checksum in order to be sure it doesn't suddenly change -checksums = ['2338b824c3b7b25590e18e8df5d68af9'] +checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] # No configure skipsteps = ['configure'] diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2019b.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2019b.eb index e38391f1ed2e..2bad5127b4a6 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2019b.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-foss-2019b.eb @@ -14,7 +14,10 @@ to analyze a system of particles.""" toolchain = {'name': 'foss', 'version': '2019b'} toolchainopts = {'pic': True} -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] sources = [SOURCELOWER_TAR_GZ] checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2016a.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2016a.eb index d7bac431f70f..9220692cbf98 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2016a.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2016a.eb @@ -14,10 +14,13 @@ toolchain = {'name': 'intel', 'version': '2016a'} toolchainopts = {'pic': True} sources = [SOURCELOWER_TAR_GZ] -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] # Let's store the checksum in order to be sure it doesn't suddenly change -checksums = ['2338b824c3b7b25590e18e8df5d68af9'] +checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] # No configure skipsteps = ['configure'] diff --git a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2019b.eb b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2019b.eb index 2a1b177e02b7..874bb558cc6f 100644 --- a/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2019b.eb +++ b/easybuild/easyconfigs/v/Voro++/Voro++-0.4.6-intel-2019b.eb @@ -13,7 +13,10 @@ to analyze a system of particles.""" toolchain = {'name': 'intel', 'version': '2019b'} toolchainopts = {'pic': True} -source_urls = ['http://math.lbl.gov/voro++/download/dir/'] +source_urls = [ + 'http://math.lbl.gov/voro++/download/dir/', + 'https://download.lammps.org/thirdparty', +] sources = [SOURCELOWER_TAR_GZ] checksums = ['ef7970071ee2ce3800daa8723649ca069dc4c71cc25f0f7d22552387f3ea437e'] diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2022a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2022a.eb new file mode 100644 index 000000000000..217398eb0632 --- /dev/null +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-foss-2022a.eb @@ -0,0 +1,35 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +toolchain = {'name': 'foss', 'version': '2022a'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +# The -fallow-argument-mismatch allows MPI communication calls to be +# called with arrays of different types at different places in the +# code. This otherwise cause an error in GCC 10.X +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS -fallow-argument-mismatch" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2021a.eb b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2021a.eb new file mode 100644 index 000000000000..4280cf4b9552 --- /dev/null +++ b/easybuild/easyconfigs/w/Wannier90/Wannier90-3.1.0-gomkl-2021a.eb @@ -0,0 +1,35 @@ +easyblock = 'MakeCp' + +name = 'Wannier90' +version = '3.1.0' + +homepage = 'http://www.wannier.org' +description = """A tool for obtaining maximally-localised Wannier functions""" + +toolchain = {'name': 'gomkl', 'version': '2021a'} +toolchainopts = {'usempi': True} + +github_account = 'wannier-developers' +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = ['Wannier90_3x_ignore_makeinc.patch'] +checksums = [ + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz + '561c0d296e0e30b8bb303702cd6e41ded54c153d9b9e6cd9cab73858e5e2945e', # Wannier90_3x_ignore_makeinc.patch +] + +# The -fallow-argument-mismatch allows MPI communication calls to be +# called with arrays of different types at different places in the +# code. This otherwise cause an error in GCC 10.X +buildopts = 'all F90=$F90 MPIF90=$MPIF90 FCOPTS="$FFLAGS -fallow-argument-mismatch" LDOPTS="$FFLAGS" ' +buildopts += 'LIBDIR="$LAPACK_LIB_DIR" LIBS="$LIBLAPACK" ' +buildopts += 'COMMS=mpi' + +files_to_copy = [(['wannier90.x', 'postw90.x'], 'bin'), (['libwannier.a'], 'lib')] + +sanity_check_paths = { + 'files': ['bin/wannier90.x', 'bin/postw90.x', 'lib/libwannier.a'], + 'dirs': [] +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/w/WebKitGTK+/WebKitGTK+-2.27.4-GCC-10.3.0.eb b/easybuild/easyconfigs/w/WebKitGTK+/WebKitGTK+-2.27.4-GCC-10.3.0.eb new file mode 100644 index 000000000000..fb003ec347d0 --- /dev/null +++ b/easybuild/easyconfigs/w/WebKitGTK+/WebKitGTK+-2.27.4-GCC-10.3.0.eb @@ -0,0 +1,72 @@ +easyblock = 'CMakeMake' + +name = 'WebKitGTK+' +version = '2.27.4' + +homepage = 'https://webkitgtk.org/' +description = """WebKitGTK+ is a full-featured port of the WebKit +rendering engine, suitable for projects requiring any kind of web +integration, from hybrid HTML/CSS applications to full-fledged web +browsers. It offers WebKit’s full functionality and is useful in a wide +range of systems from desktop computers to embedded systems like phones, +tablets, and televisions.""" + +toolchain = {'name': 'GCC', 'version': '10.3.0'} + +source_urls = ['https://webkitgtk.org/releases'] +sources = ['webkitgtk-%(version)s.tar.xz'] +patches = [ + '%(name)s-%(version)s_turn_off_various_problematic_features.patch', + '%(name)s-%(version)s_icuBOOL.patch' +] +checksums = [ + '50550a45464993070c544ec9777594d105fc5b35269520a3c96a3e2cd54874f7', # webkitgtk-2.27.4.tar.xz + # WebKitGTK+-2.27.4_turn_off_various_problematic_features.patch + '5aadd7898f6995bf89c558ce02d43e696ead962e283ddef88843160891494b5b', + '09c402193c3c03a0fa3676c143cd4eded4169c35baf75e78dac5c7a5c4ea7a3e', # WebKitGTK+-2.27.4_icuBOOL.patch +] + +osdependencies = [ + # Would be better to use the system package due to security reasons + # But we need at least libgcrypt 1.7.0 and Ubuntu 16.04 and RH 7.5 + # are both using a too old version. + # ('libgcrypt-dev', 'libgcrypt20-dev', 'libgcrypt-devel'), + # libsecret is not actually needed since USE_LIBSECRET option is disabled by default in patch + # ('libsecret-1-dev', 'libsecret-devel'), +] + +builddependencies = [ + ('CMake', '3.20.1'), + ('Python', '3.9.5'), + ('Perl', '5.32.1'), + ('GObject-Introspection', '1.68.0'), + ('pkg-config', '0.29.2'), +] +dependencies = [ + ('GLib', '2.68.2'), + ('gperf', '3.1'), + ('cairo', '1.16.0'), + ('GTK3', '3.24.29'), + ('LibSoup', '2.74.0'), + ('ATK', '2.36.0'), + ('libgcrypt', '1.9.2'), + ('libwebp', '1.2.0'), + ('libxslt', '1.1.34'), + ('libtasn1', '4.17.0'), + ('GStreamer', '1.18.4'), + ('OpenJPEG', '2.4.0'), + ('Ruby', '3.0.1'), +] + +# must be built in parallel with more than 1 process (parallel > 1) to avoid build error: +# No rule to make target 'JavaScriptCore-4.0.gir', needed by 'WebKit2-4.0.gir' +# see https://bugs.webkit.org/show_bug.cgi?id=195251 + +configopts = "-DPORT=GTK -DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python -DRUBY_EXECUTABLE=$EBROOTRUBY/bin/ruby " + +sanity_check_paths = { + 'files': ['bin/WebKitWebDriver', 'lib/libwebkit2gtk-4.0.%s' % SHLIB_EXT], + 'dirs': ['include/webkitgtk-4.0/webkit2', 'libexec/webkit2gtk-4.0'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/w/WebKitGTK+/WebKitGTK+-2.27.4_icuBOOL.patch b/easybuild/easyconfigs/w/WebKitGTK+/WebKitGTK+-2.27.4_icuBOOL.patch new file mode 100644 index 000000000000..c6b7de4a7da5 --- /dev/null +++ b/easybuild/easyconfigs/w/WebKitGTK+/WebKitGTK+-2.27.4_icuBOOL.patch @@ -0,0 +1,128 @@ +ICU no longer defines TRUE and FALSE macros since v68 +(https://icu.unicode.org/download/68) + +James Carpenter, 20220224 +diff -ru a/Source/WTF/wtf/text/icu/UTextProvider.h icu/UTextProvider.h +--- a/Source/WTF/wtf/text/icu/UTextProvider.h 2022-02-17 13:18:23.457460771 +0000 ++++ b/Source/WTF/wtf/text/icu/UTextProvider.h 2022-02-17 13:25:49.327177443 +0000 +@@ -79,12 +79,12 @@ + // Ensure chunk offset is well formed if computed offset exceeds int32_t range. + ASSERT(offset < std::numeric_limits::max()); + text->chunkOffset = offset < std::numeric_limits::max() ? static_cast(offset) : 0; +- isAccessible = TRUE; ++ isAccessible = true; + return true; + } + if (nativeIndex >= nativeLength && text->chunkNativeLimit == nativeLength) { + text->chunkOffset = text->chunkLength; +- isAccessible = FALSE; ++ isAccessible = false; + return true; + } + } else { +@@ -93,12 +93,12 @@ + // Ensure chunk offset is well formed if computed offset exceeds int32_t range. + ASSERT(offset < std::numeric_limits::max()); + text->chunkOffset = offset < std::numeric_limits::max() ? static_cast(offset) : 0; +- isAccessible = TRUE; ++ isAccessible = true; + return true; + } + if (nativeIndex <= 0 && !text->chunkNativeStart) { + text->chunkOffset = 0; +- isAccessible = FALSE; ++ isAccessible = false; + return true; + } + } +diff -ru a/Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp icu/UTextProviderLatin1.cpp +--- a/Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp 2022-02-17 13:18:23.457460771 +0000 ++++ b/Source/WTF/wtf/text/icu/UTextProviderLatin1.cpp 2022-02-17 13:22:11.018867016 +0000 +@@ -100,23 +100,23 @@ + if (index < uText->chunkNativeLimit && index >= uText->chunkNativeStart) { + // Already inside the buffer. Set the new offset. + uText->chunkOffset = static_cast(index - uText->chunkNativeStart); +- return TRUE; ++ return true; + } + if (index >= length && uText->chunkNativeLimit == length) { + // Off the end of the buffer, but we can't get it. + uText->chunkOffset = static_cast(index - uText->chunkNativeStart); +- return FALSE; ++ return false; + } + } else { + if (index <= uText->chunkNativeLimit && index > uText->chunkNativeStart) { + // Already inside the buffer. Set the new offset. + uText->chunkOffset = static_cast(index - uText->chunkNativeStart); +- return TRUE; ++ return true; + } + if (!index && !uText->chunkNativeStart) { + // Already at the beginning; can't go any farther. + uText->chunkOffset = 0; +- return FALSE; ++ return false; + } + } + +@@ -144,7 +144,7 @@ + + uText->nativeIndexingLimit = uText->chunkLength; + +- return TRUE; ++ return true; + } + + static int32_t uTextLatin1Extract(UText* uText, int64_t start, int64_t limit, UChar* dest, int32_t destCapacity, UErrorCode* status) +@@ -337,7 +337,7 @@ + static UBool uTextLatin1ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward) + { + if (!text->context) +- return FALSE; ++ return false; + int64_t nativeLength = uTextLatin1ContextAwareNativeLength(text); + UBool isAccessible; + if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible)) +@@ -357,7 +357,7 @@ + ASSERT(newContext == UTextProviderContext::PriorContext); + textLatin1ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward); + } +- return TRUE; ++ return true; + } + + static int32_t uTextLatin1ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode) +diff -ru a/Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp icu/UTextProviderUTF16.cpp +--- a/Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp 2022-02-17 13:18:23.456460760 +0000 ++++ b/Source/WTF/wtf/text/icu/UTextProviderUTF16.cpp 2022-02-17 13:26:29.445601847 +0000 +@@ -126,7 +126,7 @@ + static UBool uTextUTF16ContextAwareAccess(UText* text, int64_t nativeIndex, UBool forward) + { + if (!text->context) +- return FALSE; ++ return false; + int64_t nativeLength = uTextUTF16ContextAwareNativeLength(text); + UBool isAccessible; + if (uTextAccessInChunkOrOutOfRange(text, nativeIndex, nativeLength, forward, isAccessible)) +@@ -146,7 +146,7 @@ + ASSERT(newContext == UTextProviderContext::PriorContext); + textUTF16ContextAwareSwitchToPriorContext(text, nativeIndex, nativeLength, forward); + } +- return TRUE; ++ return true; + } + + static int32_t uTextUTF16ContextAwareExtract(UText*, int64_t, int64_t, UChar*, int32_t, UErrorCode* errorCode) +diff -ru a/Source/WebCore/platform/text/TextCodecICU.cpp b/Source/WebCore/platform/text/TextCodecICU.cpp +--- a/Source/WebCore/platform/text/TextCodecICU.cpp 2022-02-17 16:03:58.160729579 +0000 ++++ b/Source/WebCore/platform/text/TextCodecICU.cpp 2022-02-17 16:04:40.173138789 +0000 +@@ -239,7 +239,7 @@ + UErrorCode error = U_ZERO_ERROR; + m_converter = ICUConverterPtr { ucnv_open(m_canonicalConverterName, &error), ucnv_close }; + if (m_converter) +- ucnv_setFallback(m_converter.get(), TRUE); ++ ucnv_setFallback(m_converter.get(), true); + } + + int TextCodecICU::decodeToBuffer(UChar* target, UChar* targetLimit, const char*& source, const char* sourceLimit, int32_t* offsets, bool flush, UErrorCode& error) \ No newline at end of file diff --git a/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1-foss-2021a.eb b/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1-foss-2021a.eb new file mode 100644 index 000000000000..0af1145425e7 --- /dev/null +++ b/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1-foss-2021a.eb @@ -0,0 +1,47 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +name = 'wxPython' +version = '4.1.1' + +homepage = "https://www.wxpython.org/" +description = """Wraps the wxWidgets C++ toolkit and provides access to the user interface portions of the wxWidgets +API, enabling Python applications to have a native GUI on Windows, Macs or Unix systems, with a native look and feel +and requiring very little (if any) platform specific code.""" + + +toolchain = {'name': 'foss', 'version': '2021a'} +sources = ['%(name)s-%(version)s.tar.gz'] +patches = [ + 'wxPython-4.1.1_fix_install_path.patch', + 'wxPython-4.1.1_use_bang_env_python.patch', +] +checksums = [ + '00e5e3180ac7f2852f342ad341d57c44e7e4326de0b550b9a5c4a8361b6c3528', # wxPython-4.1.1.tar.gz + 'f13743877deddbf525bbb3f81c8f7a6b0c2dbf1333595926f653f696999e31ce', # wxPython-4.1.1_fix_install_path.patch + 'c355c60a8cce3018fc0c30ffc78623efd2481e9baf33673e22a57863e1a3ac87', # wxPython-4.1.1_use_bang_env_python.patch +] + +dependencies = [ + ('Python', '3.9.5'), + ('SciPy-bundle', '2021.05'), + ('Pillow', '8.2.0'), + ('libpng', '1.6.37'), + ('zlib', '1.2.11'), + ('libjpeg-turbo', '2.0.6'), + ('LibTIFF', '4.2.0'), + ('expat', '2.2.9'), + ('GTK3', '3.24.29'), + ('GLib', '2.68.2'), + ('GConf', '3.2.6'), + ('GST-plugins-base', '1.18.4'), + ('pkg-config', '0.29.2'), + ('Mesa', '21.1.1'), + ('libGLU', '9.0.1'), + ('LibSoup', '2.74.0'), + # ('wxWidgets', '3.1.5'), # this version is incompatible with with 4.1.1 so excluding to enable internal build + ('WebKitGTK+', '2.27.4'), +] + +# needed because wxWidgets is built as part of wxPython (not added as a dependency) +modextrapaths = {'LD_LIBRARY_PATH': 'lib/python%(pyshortver)s/site-packages/wx'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1_fix_install_path.patch b/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1_fix_install_path.patch new file mode 100644 index 000000000000..18d8d00b05a4 --- /dev/null +++ b/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1_fix_install_path.patch @@ -0,0 +1,19 @@ +build.py calls setup.py without a prefix, this fixes that. + +Åke Sandgren, 20190201 +James Carpenter, 20220224 +--- orig_build.py 2021-11-24 10:28:29.174051000 +0000 ++++ build.py 2021-11-24 10:33:28.141864031 +0000 +@@ -1803,9 +1803,10 @@ + def cmd_install_py(options, args): + cmdTimer = CommandTimer('install_py') + DESTDIR = '' if not options.destdir else '--root=' + options.destdir ++ PREFIX = '' if not options.prefix else '--prefix=' + options.prefix + VERBOSE = '--verbose' if options.verbose else '' +- cmd = '"%s" setup.py install --skip-build %s %s %s' % ( +- PYTHON, DESTDIR, VERBOSE, options.extra_setup) ++ cmd = '"%s" setup.py install --skip-build %s %s %s %s' % ( ++ PYTHON, DESTDIR, PREFIX, VERBOSE, options.extra_setup) + runcmd(cmd) + + diff --git a/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1_use_bang_env_python.patch b/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1_use_bang_env_python.patch new file mode 100644 index 000000000000..387d18f2da6b --- /dev/null +++ b/easybuild/easyconfigs/w/wxPython/wxPython-4.1.1_use_bang_env_python.patch @@ -0,0 +1,40 @@ +Don't use system python. +This is perhaps not needed but doesn't hurt. + +Åke Sandgren, 20190425 +diff -ru wxPython-4.0.4.orig/build.py wxPython-4.0.4/build.py +--- wxPython-4.0.4.orig/build.py 2019-01-05 20:48:40.000000000 +0100 ++++ wxPython-4.0.4/build.py 2019-04-24 21:37:32.296782206 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/env python + #---------------------------------------------------------------------- + # Name: build.py + # Purpose: Master build controller script. +diff -ru wxPython-4.0.4.orig/ext/wxWidgets/build/osx/fix_xcode_ids.py wxPython-4.0.4/ext/wxWidgets/build/osx/fix_xcode_ids.py +--- wxPython-4.0.4.orig/ext/wxWidgets/build/osx/fix_xcode_ids.py 2019-01-03 00:48:23.000000000 +0100 ++++ wxPython-4.0.4/ext/wxWidgets/build/osx/fix_xcode_ids.py 2019-04-24 21:37:37.508731582 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/env python + + ############################################################################### + # Name: build/osx/fix_xcode_ids.py +diff -ru wxPython-4.0.4.orig/ext/wxWidgets/misc/scripts/png2c.py wxPython-4.0.4/ext/wxWidgets/misc/scripts/png2c.py +--- wxPython-4.0.4.orig/ext/wxWidgets/misc/scripts/png2c.py 2019-01-03 00:48:23.000000000 +0100 ++++ wxPython-4.0.4/ext/wxWidgets/misc/scripts/png2c.py 2019-04-24 21:37:35.300753028 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/env python + + # This script is a slightly modified version of the original found at + # +diff -ru wxPython-4.0.4.orig/wscript wxPython-4.0.4/wscript +--- wxPython-4.0.4.orig/wscript 2019-01-05 20:48:40.000000000 +0100 ++++ wxPython-4.0.4/wscript 2019-04-24 21:37:40.556701977 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/env python + #----------------------------------------------------------------------------- + # WAF script for building and installing the wxPython extension modules. + # diff --git a/easybuild/easyconfigs/x/XCFun/XCFun-2.1.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.0-GCCcore-9.3.0.eb index 8921a717b369..962ea747cfee 100644 --- a/easybuild/easyconfigs/x/XCFun/XCFun-2.1.0-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.0-GCCcore-9.3.0.eb @@ -17,9 +17,6 @@ builddependencies = [ ('CMake', '3.16.4') ] -separate_build_dir = True -build_type = 'release' - modextravars = {'XCFun_DIR': '%(installdir)s/share/cmake/XCFun/'} sanity_check_paths = { diff --git a/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.2.0.eb index c9423b441d35..b6179c230685 100644 --- a/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.2.0.eb @@ -17,9 +17,6 @@ builddependencies = [ ('CMake', '3.18.4') ] -separate_build_dir = True -build_type = 'release' - modextravars = {'XCFun_DIR': '%(installdir)s/share/cmake/XCFun/'} sanity_check_paths = { diff --git a/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.3.0.eb b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.3.0.eb index b4e94d5e324c..250287bce724 100644 --- a/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/x/XCFun/XCFun-2.1.1-GCCcore-10.3.0.eb @@ -17,9 +17,6 @@ builddependencies = [ ('CMake', '3.20.1') ] -separate_build_dir = True -build_type = 'release' - modextravars = {'XCFun_DIR': '%(installdir)s/share/cmake/XCFun/'} sanity_check_paths = { diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-foss-2022a.eb b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-foss-2022a.eb new file mode 100644 index 000000000000..3ceb145d6718 --- /dev/null +++ b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-foss-2022a.eb @@ -0,0 +1,43 @@ +# Contribution from IT4Innovations National Supercomputing Center, Czech Republic +# Jakub Kropacek, 2022 + +name = 'XCrySDen' +version = '1.6.2' + +homepage = "http://www.xcrysden.org/" +docurls = "http://www.xcrysden.org/Documentation.html" +description = """ +XCrySDen is a crystalline and molecular structure visualisation program aiming at display of isosurfaces +and contours, which can be superimposed on crystalline structures and interactively rotated and manipulated. +It also possesses some tools for analysis of properties in reciprocal space such as interactive selection +of k-paths in the Brillouin zone for the band-structure plots, and visualisation of Fermi surfaces. +""" + +toolchain = {'name': 'foss', 'version': '2022a'} + +source_urls = ["http://www.xcrysden.org/download/"] +sources = [SOURCELOWER_TAR_GZ] +patches = ['XCrySDen-1.6.2-no-bwidget-tcl-download.patch'] +checksums = [ + '811736ee598bec1a5b427fd10e4e063a30dd7cadae96a43a50b36ce90a4f503f', # xcrysden-1.6.2.tar.gz + 'e5f79c77116c6faf441d63f62bb3d22c5520163995b28e505d2168424a587bac', # XCrySDen-1.6.2-no-bwidget-tcl-download.patch +] + +dependencies = [ + ('Togl', '2.0'), + ('Mesa', '22.0.3'), + ('libGLU', '9.0.2'), + ('bwidget', '1.9.15'), +] + +# gcc fix by Jakob Schiotz, commit 7433b19bd05d1d511ee135a92b3ba845c89814d7 +prebuildopts = "export LDLIB='-ldl -Wl,--allow-multiple-definition' &&" + +sanity_check_commands = [ + 'xcrysden --help', + # requires DISPLAY + # 'xcrysden --xsf $EBROOTXCRYSDEN/share/%(namelower)s-%(version)s/examples/XSF_Files/GaAsH.xsf --print output.png \ + # && rm output.png', +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2022a.eb b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2022a.eb new file mode 100644 index 000000000000..c9929c6854bc --- /dev/null +++ b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-intel-2022a.eb @@ -0,0 +1,40 @@ +# Contribution from IT4Innovations National Supercomputing Center, Czech Republic +# Jakub Kropacek, 2022 + +name = 'XCrySDen' +version = '1.6.2' + +homepage = "http://www.xcrysden.org/" +docurls = "http://www.xcrysden.org/Documentation.html" +description = """ +XCrySDen is a crystalline and molecular structure visualisation program aiming at display of isosurfaces +and contours, which can be superimposed on crystalline structures and interactively rotated and manipulated. +It also possesses some tools for analysis of properties in reciprocal space such as interactive selection +of k-paths in the Brillouin zone for the band-structure plots, and visualisation of Fermi surfaces. +""" + +toolchain = {'name': 'intel', 'version': '2022a'} + +source_urls = ["http://www.xcrysden.org/download/"] +sources = [SOURCELOWER_TAR_GZ] +patches = ['XCrySDen-1.6.2-no-bwidget-tcl-download.patch'] +checksums = [ + '811736ee598bec1a5b427fd10e4e063a30dd7cadae96a43a50b36ce90a4f503f', # xcrysden-1.6.2.tar.gz + 'e5f79c77116c6faf441d63f62bb3d22c5520163995b28e505d2168424a587bac', # XCrySDen-1.6.2-no-bwidget-tcl-download.patch +] + +dependencies = [ + ('Togl', '2.0'), + ('Mesa', '22.0.3'), + ('libGLU', '9.0.2'), + ('bwidget', '1.9.15'), +] + +sanity_check_commands = [ + 'xcrysden --help', + # requires DISPLAY + # 'xcrysden --xsf $EBROOTXCRYSDEN/share/%(namelower)s-%(version)s/examples/XSF_Files/GaAsH.xsf --print output.png \ + # && rm output.png', +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-no-bwidget-tcl-download.patch b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-no-bwidget-tcl-download.patch new file mode 100644 index 000000000000..62f217b05fe7 --- /dev/null +++ b/easybuild/easyconfigs/x/XCrySDen/XCrySDen-1.6.2-no-bwidget-tcl-download.patch @@ -0,0 +1,16 @@ +# Contribution from IT4Innovations National Supercomputing Center, Czech Republic +# Jakub Kropacek, 2022 +# +# Do not download and build own BWidget and Tcl; use modules instead. +diff -Nru xcrysden-1.6.2.orig/Makefile xcrysden-1.6.2/Makefile +--- xcrysden-1.6.2.orig/Makefile 2022-08-23 08:23:59.130921000 +0200 ++++ xcrysden-1.6.2/Makefile 2022-08-23 08:39:27.632777181 +0200 +@@ -18,7 +18,7 @@ + + all: tcl tk mesa togl fftw xcrysden + # meschach +-xcrysden: usage bwidget bindir src-C src-F src-Tcl ++xcrysden: usage bindir src-C src-F + + usage: $(TOPDIR)/docs/xcrysden.1 + man $(TOPDIR)/docs/xcrysden.1 | awk 'BEGIN {lprint=0; print "## do not edit changes will be lost (file automatically generated)\n"; } /SYNOPSIS/ { lprint=1; } /SEE ALSO/ { lprint=0; } /a*/ { if (lprint) print; }' > usage diff --git a/easybuild/easyconfigs/x/XML-Parser/XML-Parser-2.46-GCCcore-11.3.0-Perl-5.34.1.eb b/easybuild/easyconfigs/x/XML-Parser/XML-Parser-2.46-GCCcore-11.3.0-Perl-5.34.1.eb new file mode 100644 index 000000000000..4caf48f0876e --- /dev/null +++ b/easybuild/easyconfigs/x/XML-Parser/XML-Parser-2.46-GCCcore-11.3.0-Perl-5.34.1.eb @@ -0,0 +1,32 @@ +easyblock = 'PerlModule' + +name = 'XML-Parser' +version = '2.46' +versionsuffix = '-Perl-%(perlver)s' + +homepage = 'https://search.cpan.org/~toddr/XML-Parser-2.46/' +description = """This is a Perl extension interface to James Clark's XML parser, expat.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://cpan.metacpan.org/authors/id/T/TO/TODDR/'] +sources = [SOURCE_TAR_GZ] +checksums = ['d331332491c51cccfb4cb94ffc44f9cd73378e618498d4a37df9e043661c515d'] + +builddependencies = [ + ('binutils', '2.38') +] + +dependencies = [ + ('Perl', '5.34.1'), + ('expat', '2.4.8') +] + +options = {'modulename': 'XML::Parser'} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/%(arch)s-linux-thread-multi/XML'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.1.0.eb b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.1.0.eb index e2267db2da0d..d39dadea0a56 100644 --- a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.1.0.eb +++ b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.1.0.eb @@ -20,10 +20,14 @@ toolchain = {'name': 'GCCcore', 'version': '10.1.0'} source_urls = ['https://tukaani.org/xz/'] sources = [SOURCELOWER_TAR_BZ2] -patches = ['XZ-5.2.2_compat-libs.patch'] +patches = [ + 'XZ-5.2.5_compat-libs.patch', + 'xz-5.2.5-cve-2022-1271.patch', +] checksums = [ '5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df', # xz-5.2.5.tar.bz2 - '578da3ea2ddb551972891a60fe31478b16a516d6ea8b6aa3af89e1d558adb703', # XZ-5.2.2_compat-libs.patch + '9747c8fdf0b3c9501ac5479a807151d75b99bea7816a59565edea267230da195', # XZ-5.2.5_compat-libs.patch + '98c6cb1042284fe704ec30083f3fc87364ce9ed2ea51f62bbb0ee9d3448717ec', # xz-5.2.5-cve-2022-1271.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.2.0.eb b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.2.0.eb index 264331a9b0f2..e54a2560c6db 100644 --- a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.2.0.eb +++ b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.2.0.eb @@ -20,10 +20,14 @@ toolchain = {'name': 'GCCcore', 'version': '10.2.0'} source_urls = ['https://tukaani.org/xz/'] sources = [SOURCELOWER_TAR_BZ2] -patches = ['XZ-5.2.2_compat-libs.patch'] +patches = [ + 'XZ-5.2.5_compat-libs.patch', + 'xz-5.2.5-cve-2022-1271.patch', +] checksums = [ '5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df', # xz-5.2.5.tar.bz2 - '578da3ea2ddb551972891a60fe31478b16a516d6ea8b6aa3af89e1d558adb703', # XZ-5.2.2_compat-libs.patch + '9747c8fdf0b3c9501ac5479a807151d75b99bea7816a59565edea267230da195', # XZ-5.2.5_compat-libs.patch + '98c6cb1042284fe704ec30083f3fc87364ce9ed2ea51f62bbb0ee9d3448717ec', # xz-5.2.5-cve-2022-1271.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.3.0.eb b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.3.0.eb index ebb84399388a..c02c4e17cc91 100644 --- a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.3.0.eb +++ b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-10.3.0.eb @@ -13,10 +13,14 @@ toolchain = {'name': 'GCCcore', 'version': '10.3.0'} source_urls = ['https://tukaani.org/xz/'] sources = [SOURCELOWER_TAR_BZ2] -patches = ['XZ-5.2.2_compat-libs.patch'] +patches = [ + 'XZ-5.2.5_compat-libs.patch', + 'xz-5.2.5-cve-2022-1271.patch', +] checksums = [ '5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df', # xz-5.2.5.tar.bz2 - '578da3ea2ddb551972891a60fe31478b16a516d6ea8b6aa3af89e1d558adb703', # XZ-5.2.2_compat-libs.patch + '9747c8fdf0b3c9501ac5479a807151d75b99bea7816a59565edea267230da195', # XZ-5.2.5_compat-libs.patch + '98c6cb1042284fe704ec30083f3fc87364ce9ed2ea51f62bbb0ee9d3448717ec', # xz-5.2.5-cve-2022-1271.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.2.0.eb b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.2.0.eb index 0ff1f6a50bc6..f6a70e9b2112 100644 --- a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.2.0.eb +++ b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.2.0.eb @@ -13,10 +13,14 @@ toolchain = {'name': 'GCCcore', 'version': '11.2.0'} source_urls = ['https://tukaani.org/xz/'] sources = [SOURCELOWER_TAR_BZ2] -patches = ['XZ-5.2.2_compat-libs.patch'] +patches = [ + 'XZ-5.2.5_compat-libs.patch', + 'xz-5.2.5-cve-2022-1271.patch', +] checksums = [ '5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df', # xz-5.2.5.tar.bz2 - '578da3ea2ddb551972891a60fe31478b16a516d6ea8b6aa3af89e1d558adb703', # XZ-5.2.2_compat-libs.patch + '9747c8fdf0b3c9501ac5479a807151d75b99bea7816a59565edea267230da195', # XZ-5.2.5_compat-libs.patch + '98c6cb1042284fe704ec30083f3fc87364ce9ed2ea51f62bbb0ee9d3448717ec', # xz-5.2.5-cve-2022-1271.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.3.0.eb index e604951b5074..2ee4825b7009 100644 --- a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.3.0.eb +++ b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-11.3.0.eb @@ -13,10 +13,14 @@ toolchain = {'name': 'GCCcore', 'version': '11.3.0'} source_urls = ['https://tukaani.org/xz/'] sources = [SOURCELOWER_TAR_BZ2] -patches = ['XZ-5.2.2_compat-libs.patch'] +patches = [ + 'XZ-5.2.5_compat-libs.patch', + 'xz-5.2.5-cve-2022-1271.patch', +] checksums = [ '5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df', # xz-5.2.5.tar.bz2 - '578da3ea2ddb551972891a60fe31478b16a516d6ea8b6aa3af89e1d558adb703', # XZ-5.2.2_compat-libs.patch + '9747c8fdf0b3c9501ac5479a807151d75b99bea7816a59565edea267230da195', # XZ-5.2.5_compat-libs.patch + '98c6cb1042284fe704ec30083f3fc87364ce9ed2ea51f62bbb0ee9d3448717ec', # xz-5.2.5-cve-2022-1271.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-9.3.0.eb b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-9.3.0.eb index fa1a3854e248..22e7b6ed6efc 100644 --- a/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/x/XZ/XZ-5.2.5-GCCcore-9.3.0.eb @@ -10,10 +10,14 @@ toolchain = {'name': 'GCCcore', 'version': '9.3.0'} source_urls = ['https://tukaani.org/xz/'] sources = [SOURCELOWER_TAR_BZ2] -patches = ['XZ-5.2.2_compat-libs.patch'] +patches = [ + 'XZ-5.2.5_compat-libs.patch', + 'xz-5.2.5-cve-2022-1271.patch', +] checksums = [ '5117f930900b341493827d63aa910ff5e011e0b994197c3b71c08a20228a42df', # xz-5.2.5.tar.bz2 - '578da3ea2ddb551972891a60fe31478b16a516d6ea8b6aa3af89e1d558adb703', # XZ-5.2.2_compat-libs.patch + '9747c8fdf0b3c9501ac5479a807151d75b99bea7816a59565edea267230da195', # XZ-5.2.5_compat-libs.patch + '98c6cb1042284fe704ec30083f3fc87364ce9ed2ea51f62bbb0ee9d3448717ec', # xz-5.2.5-cve-2022-1271.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/x/XZ/XZ-5.2.5_compat-libs.patch b/easybuild/easyconfigs/x/XZ/XZ-5.2.5_compat-libs.patch new file mode 100644 index 000000000000..275f9dbe01d5 --- /dev/null +++ b/easybuild/easyconfigs/x/XZ/XZ-5.2.5_compat-libs.patch @@ -0,0 +1,35 @@ +Based on https://git.centos.org/rpms/xz/blob/c7/f/SOURCES/xz-5.2.2-compat-libs.patch +(which is a CentOS7-only patch) +but includes the XZ_5.2 symbols as the lack of these is causing problems in +other scenarios +(see https://github.com/easybuilders/easybuild-easyconfigs/issues/14991) + +diff -rupN xz-5.2.5/src/liblzma/liblzma.map xz-5.2.5_updated/src/liblzma/liblzma.map +--- xz-5.2.5/src/liblzma/liblzma.map 2020-03-17 14:28:54.000000000 +0000 ++++ xz-5.2.5_updated/src/liblzma/liblzma.map 2022-07-13 18:54:15.280407061 +0000 +@@ -95,14 +95,21 @@ global: + lzma_vli_size; + }; + +-XZ_5.2 { ++XZ_5.1.2alpha { ++global: ++ lzma_stream_encoder_mt; ++ lzma_stream_encoder_mt_memusage; ++} XZ_5.0; ++ ++XZ_5.2.2 { + global: + lzma_block_uncomp_encode; + lzma_cputhreads; + lzma_get_progress; +- lzma_stream_encoder_mt; +- lzma_stream_encoder_mt_memusage; + + local: + *; +-} XZ_5.0; ++} XZ_5.1.2alpha; ++ ++XZ_5.2 { ++} XZ_5.2.2; diff --git a/easybuild/easyconfigs/x/XZ/xz-5.2.5-cve-2022-1271.patch b/easybuild/easyconfigs/x/XZ/xz-5.2.5-cve-2022-1271.patch new file mode 100644 index 000000000000..406ded5903ed --- /dev/null +++ b/easybuild/easyconfigs/x/XZ/xz-5.2.5-cve-2022-1271.patch @@ -0,0 +1,94 @@ +From 69d1b3fc29677af8ade8dc15dba83f0589cb63d6 Mon Sep 17 00:00:00 2001 +From: Lasse Collin +Date: Tue, 29 Mar 2022 19:19:12 +0300 +Subject: [PATCH] xzgrep: Fix escaping of malicious filenames (ZDI-CAN-16587). + +Malicious filenames can make xzgrep to write to arbitrary files +or (with a GNU sed extension) lead to arbitrary code execution. + +xzgrep from XZ Utils versions up to and including 5.2.5 are +affected. 5.3.1alpha and 5.3.2alpha are affected as well. +This patch works for all of them. + +This bug was inherited from gzip's zgrep. gzip 1.12 includes +a fix for zgrep. + +The issue with the old sed script is that with multiple newlines, +the N-command will read the second line of input, then the +s-commands will be skipped because it's not the end of the +file yet, then a new sed cycle starts and the pattern space +is printed and emptied. So only the last line or two get escaped. + +One way to fix this would be to read all lines into the pattern +space first. However, the included fix is even simpler: All lines +except the last line get a backslash appended at the end. To ensure +that shell command substitution doesn't eat a possible trailing +newline, a colon is appended to the filename before escaping. +The colon is later used to separate the filename from the grep +output so it is fine to add it here instead of a few lines later. + +The old code also wasn't POSIX compliant as it used \n in the +replacement section of the s-command. Using \ is the +POSIX compatible method. + +LC_ALL=C was added to the two critical sed commands. POSIX sed +manual recommends it when using sed to manipulate pathnames +because in other locales invalid multibyte sequences might +cause issues with some sed implementations. In case of GNU sed, +these particular sed scripts wouldn't have such problems but some +other scripts could have, see: + + info '(sed)Locale Considerations' + +This vulnerability was discovered by: +cleemy desu wayo working with Trend Micro Zero Day Initiative + +Thanks to Jim Meyering and Paul Eggert discussing the different +ways to fix this and for coordinating the patch release schedule +with gzip. +--- + src/scripts/xzgrep.in | 20 ++++++++++++-------- + 1 file changed, 12 insertions(+), 8 deletions(-) + +diff --git a/src/scripts/xzgrep.in b/src/scripts/xzgrep.in +index b180936..e5186ba 100644 +--- a/src/scripts/xzgrep.in ++++ b/src/scripts/xzgrep.in +@@ -180,22 +180,26 @@ for i; do + { test $# -eq 1 || test $no_filename -eq 1; }; then + eval "$grep" + else ++ # Append a colon so that the last character will never be a newline ++ # which would otherwise get lost in shell command substitution. ++ i="$i:" ++ ++ # Escape & \ | and newlines only if such characters are present ++ # (speed optimization). + case $i in + (*' + '* | *'&'* | *'\'* | *'|'*) +- i=$(printf '%s\n' "$i" | +- sed ' +- $!N +- $s/[&\|]/\\&/g +- $s/\n/\\n/g +- ');; ++ i=$(printf '%s\n' "$i" | LC_ALL=C sed 's/[&\|]/\\&/g; $!s/$/\\/');; + esac +- sed_script="s|^|$i:|" ++ ++ # $i already ends with a colon so don't add it here. ++ sed_script="s|^|$i|" + + # Fail if grep or sed fails. + r=$( + exec 4>&1 +- (eval "$grep" 4>&-; echo $? >&4) 3>&- | sed "$sed_script" >&3 4>&- ++ (eval "$grep" 4>&-; echo $? >&4) 3>&- | ++ LC_ALL=C sed "$sed_script" >&3 4>&- + ) || r=2 + exit $r + fi >&3 5>&- +-- +2.35.1 + diff --git a/easybuild/easyconfigs/x/x264/x264-20220620-GCCcore-11.3.0.eb b/easybuild/easyconfigs/x/x264/x264-20220620-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..2b05023e8afa --- /dev/null +++ b/easybuild/easyconfigs/x/x264/x264-20220620-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'x264' +version = '20220620' + +homepage = 'https://www.videolan.org/developers/x264.html' +description = """ + x264 is a free software library and application for encoding video streams + into the H.264/MPEG-4 AVC compression format, and is released under the + terms of the GNU GPL. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://code.videolan.org/videolan/%(name)s/-/archive/5db6aa6c/'] +sources = [{'download_filename': '%(name)s-5db6aa6c.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['9b5543a5f114f4c6905a2319ea4c2063d6ebd2db209b41642086df3c1f7b6f50'] + +builddependencies = [ + ('binutils', '2.38'), + ('pkgconf', '1.8.0'), + ('NASM', '2.15.05'), +] + +configopts = " --enable-shared --enable-static --disable-bashcompletion" + + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'include/x264_config.h', 'include/%(name)s.h', 'lib/libx264.a', 'lib/libx264.so'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/x265/x265-3.5-GCCcore-11.3.0.eb b/easybuild/easyconfigs/x/x265/x265-3.5-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..281db53772bf --- /dev/null +++ b/easybuild/easyconfigs/x/x265/x265-3.5-GCCcore-11.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'CMakeMake' + +name = 'x265' +version = '3.5' + +homepage = 'https://x265.org/' +description = """ + x265 is a free software library and application for encoding video streams + into the H.265 AVC compression format, and is released under the terms of + the GNU GPL. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://bitbucket.org/multicoreware/x265_git/downloads/'] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['e70a3335cacacbba0b3a20ec6fecd6783932288ebc8163ad74bcc9606477cae8'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), + ('Yasm', '1.3.0'), +] + +configopts = '-DGIT_ARCHETYPE=1' + +start_dir = 'source' + +sanity_check_paths = { + 'files': ['bin/%(name)s', 'include/x265_config.h', 'include/%(name)s.h', 'lib/libx265.a', 'lib/libx265.so'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/x/xtb/xtb-6.4.1-foss-2021b.eb b/easybuild/easyconfigs/x/xtb/xtb-6.4.1-foss-2021b.eb new file mode 100644 index 000000000000..6df7e85ba2db --- /dev/null +++ b/easybuild/easyconfigs/x/xtb/xtb-6.4.1-foss-2021b.eb @@ -0,0 +1,40 @@ +easyblock = 'MesonNinja' + +name = 'xtb' +version = '6.4.1' + +homepage = 'https://xtb-docs.readthedocs.io' +description = """ xtb - An extended tight-binding semi-empirical program package. """ + +toolchain = {'name': 'foss', 'version': '2021b'} + +source_urls = [GITHUB_LOWER_SOURCE] +sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['cd7b6ec9b7963012ce71220a70773641f0d9e06e0691750a25b83e823510d1d7'] + +github_account = 'grimme-lab' +builddependencies = [ + ('Meson', '0.58.2'), + ('Ninja', '1.10.2'), +] + +configopts = "-Dla_backend='custom' " +configopts += "-Dcustom_libraries='flexiblas' " +configopts += "--buildtype release " + +runtest = 'meson' +testopts = 'test -C %(builddir)s/easybuild_obj -t 60' # Ensure test don't timeout + +sanity_check_paths = { + 'files': ['bin/xtb', 'include/xtb/xtb.h'] + ['lib/libxtb.%s' % e for e in ('a', SHLIB_EXT)], + 'dirs': ['share'], +} + +sanity_check_commands = ["xtb --help"] + +modextravars = { + 'XTBHOME': '%(installdir)s', + 'XTBPATH': '%(installdir)s', +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/y/Yasm/Yasm-1.3.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/y/Yasm/Yasm-1.3.0-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..7c73c4bf3bda --- /dev/null +++ b/easybuild/easyconfigs/y/Yasm/Yasm-1.3.0-GCCcore-11.3.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'Yasm' +version = '1.3.0' + +homepage = 'https://www.tortall.net/projects/yasm/' +description = "Yasm: Complete rewrite of the NASM assembler with BSD license" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f'] + +builddependencies = [ + ('binutils', '2.38'), +] + + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/z/Z3/Z3-4.10.2-GCCcore-11.3.0.eb b/easybuild/easyconfigs/z/Z3/Z3-4.10.2-GCCcore-11.3.0.eb new file mode 100644 index 000000000000..31490776e46d --- /dev/null +++ b/easybuild/easyconfigs/z/Z3/Z3-4.10.2-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'CMakeMake' + +name = 'Z3' +version = '4.10.2' + +homepage = 'https://github.com/Z3Prover/z3' +description = """ + Z3 is a theorem prover from Microsoft Research. +""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/Z3Prover/z3/archive/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['889fd035b833775c8cd2eb4723eb011bf916a3e9bf08ce66b31c548acee7a321'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('binutils', '2.38'), +] + +dependencies = [ + ('GMP', '6.2.1'), +] + +configopts = '-DZ3_USE_LIB_GMP=ON -DZ3_LINK_TIME_OPTIMIZATION=ON ' + +sanity_check_paths = { + 'files': ['bin/z3', 'include/z3_api.h', 'lib/libz3.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/z/zfp/zfp-1.0.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/z/zfp/zfp-1.0.0-GCCcore-9.3.0.eb new file mode 100644 index 000000000000..0923191cade4 --- /dev/null +++ b/easybuild/easyconfigs/z/zfp/zfp-1.0.0-GCCcore-9.3.0.eb @@ -0,0 +1,39 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Denis Kristak +easyblock = 'MakeCp' + +name = 'zfp' +version = '1.0.0' + +homepage = 'https://github.com/LLNL/zfp' +description = """zfp is a compressed format for representing multidimensional floating-point and integer arrays. +zfp provides compressed-array classes that support high throughput read and write random access to individual array +elements. zfp also supports serial and parallel (OpenMP and CUDA) compression of whole arrays, e.g., for applications +that read and write large data sets to and from disk.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/LLNL/zfp/archive'] +sources = ['%(version)s.tar.gz'] +checksums = ['fe13b03141ee9b571692aed42ff76cf37c9dcda40f9a43a808870dca3558a57c'] + +builddependencies = [ + ('binutils', '2.34'), +] + +prebuildopts = "sed -i 's/FLAGS = -O3/FLAGS = $CFLAGS/g' Makefile && " +buildopts = 'ZFP_WITH_OPENMP=1' + +runtest = 'test' + +files_to_copy = ['bin', 'include', 'lib'] + +sanity_check_paths = { + 'files': ['bin/zfp', 'bin/testzfp', 'include/zfp.h', 'lib/libzfp.a'], + 'dirs': ['include/zfp'], +} + +sanity_check_commands = ["zfp --help 2>&1 | grep 'Usage: zfp'"] + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/z/zlib/zlib-1.2.12-GCCcore-12.2.0.eb b/easybuild/easyconfigs/z/zlib/zlib-1.2.12-GCCcore-12.2.0.eb new file mode 100644 index 000000000000..a9717ade39ba --- /dev/null +++ b/easybuild/easyconfigs/z/zlib/zlib-1.2.12-GCCcore-12.2.0.eb @@ -0,0 +1,30 @@ +easyblock = 'ConfigureMake' + +name = 'zlib' +version = '1.2.12' + +homepage = 'https://www.zlib.net/' +description = """zlib is designed to be a free, general-purpose, legally unencumbered -- that is, + not covered by any patents -- lossless data-compression library for use on virtually any + computer hardware and operating system.""" + +toolchain = {'name': 'GCCcore', 'version': '12.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://zlib.net/fossils'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['zlib-%(version)s_fix-CC-logic-in-configure.patch'] +checksums = [ + '91844808532e5ce316b3c010929493c0244f3d37593afd6de04f71821d5136d9', # zlib-1.2.12.tar.gz + 'f35eb05334a4f8d7b40b6c5610a6369f654863b5fa1a19c2507888f918025238', # zlib-1.2.12_fix-CC-logic-in-configure.patch +] + +# use same binutils version that was used when building GCC toolchain +builddependencies = [('binutils', '2.39', '', True)] + +sanity_check_paths = { + 'files': ['include/zconf.h', 'include/zlib.h', 'lib/libz.a', 'lib/libz.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/setup.cfg b/setup.cfg index 9b93cac3d319..1209f2f4ea88 100644 --- a/setup.cfg +++ b/setup.cfg @@ -5,6 +5,73 @@ zip_ok = 0 [flake8] max-line-length = 120 +builtins = + # eb --avail-cfgfile-constants + ARCH, + EXTERNAL_MODULE, + HOME, + OS_NAME, + OS_PKG_IBVERBS_DEV, + OS_PKG_OPENSSL_BIN, + OS_PKG_OPENSSL_DEV, + OS_PKG_OPENSSL_LIB, + OS_PKG_PAM_DEV, + OS_TYPE, + OS_VERSION, + SYSTEM, + SYS_PYTHON_VERSION, + # https://docs.easybuild.io/en/latest/version-specific/easyconfig_templates.html + APACHE_SOURCE, + BITBUCKET_SOURCE, + BITBUCKET_DOWNLOADS, + CRAN_SOURCE, + FTPGNOME_SOURCE, + GITHUB_SOURCE, + GITHUB_LOWER_SOURCE, + GNU_SAVANNAH_SOURCE, + GNU_SOURCE, + GOOGLECODE_SOURCE, + LAUNCHPAD_SOURCE, + PYPI_SOURCE, + PYPI_LOWER_SOURCE, + R_SOURCE, + SOURCEFORGE_SOURCE, + XORG_DATA_SOURCE, + XORG_LIB_SOURCE, + XORG_PROTO_SOURCE, + XORG_UTIL_SOURCE, + XORG_XCB_SOURCE, + SHLIB_EXT, + SOURCE_TAR_GZ, + SOURCELOWER_TAR_GZ, + SOURCE_TAR_XZ, + SOURCELOWER_TAR_XZ, + SOURCE_TAR_BZ2, + SOURCELOWER_TAR_BZ2, + SOURCE_TGZ, + SOURCELOWER_TGZ, + SOURCE_TXZ, + SOURCELOWER_TXZ, + SOURCE_TBZ2, + SOURCELOWER_TBZ2, + SOURCE_TB2, + SOURCELOWER_TB2, + SOURCE_GTGZ, + SOURCELOWER_GTGZ, + SOURCE_ZIP, + SOURCELOWER_ZIP, + SOURCE_TAR, + SOURCELOWER_TAR, + SOURCE_XZ, + SOURCELOWER_XZ, + SOURCE_TAR_Z, + SOURCELOWER_TAR_Z, + SOURCE_WHL, + SOURCELOWER_WHL, + SOURCE_PY2_WHL, + SOURCELOWER_PY2_WHL, + SOURCE_PY3_WHL, + SOURCELOWER_PY3_WHL [sdist] # Don't remove CVS and RCS directories diff --git a/setup.py b/setup.py index b8a0b0522394..e5a633dca747 100644 --- a/setup.py +++ b/setup.py @@ -44,7 +44,7 @@ # recent setuptools versions will *TRANSFORM* something like 'X.Y.Zdev' into 'X.Y.Z.dev0', with a warning like # UserWarning: Normalizing '2.4.0dev' to '2.4.0.dev0' # This causes problems further up the dependency chain... -VERSION = '4.6.0' +VERSION = '4.6.1' MAJ_VER = VERSION.split('.')[0] MAJMIN_VER = '.'.join(VERSION.split('.')[0:2]) diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index f112a8a5e70e..0fb05afe8762 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -42,6 +42,7 @@ from easybuild.easyblocks.generic.configuremake import ConfigureMake from easybuild.easyblocks.generic.pythonpackage import PythonPackage from easybuild.framework.easyblock import EasyBlock +from easybuild.framework.easyconfig.constants import EASYCONFIG_CONSTANTS from easybuild.framework.easyconfig.default import DEFAULT_CONFIG from easybuild.framework.easyconfig.format.format import DEPENDENCY_PARAMETERS from easybuild.framework.easyconfig.easyconfig import get_easyblock_class, letter_dir_for @@ -325,6 +326,25 @@ def test_conflicts(self): self.assertFalse(check_conflicts(self.ordered_specs, modules_tool(), check_inter_ec_conflicts=False), "No conflicts detected") + def test_deps(self): + """Perform checks on dependencies in easyconfig files""" + + fails = [] + + for ec in self.parsed_easyconfigs: + # make sure that no odd versions (like 1.13) of HDF5 are used as a dependency, + # since those are released candidates - only even versions (like 1.12) are stable releases; + # see https://docs.hdfgroup.org/archive/support/HDF5/doc/TechNotes/Version.html + for dep in ec['ec'].dependencies(): + if dep['name'] == 'HDF5': + ver = dep['version'] + if int(ver.split('.')[1]) % 2 == 1: + fail = "Odd minor versions of HDF5 should not be used as a dependency: " + fail += "found HDF5 v%s as dependency in %s" % (ver, os.path.basename(ec['spec'])) + fails.append(fail) + + self.assertFalse(len(fails), '\n'.join(sorted(fails))) + def check_dep_vars(self, gen, dep, dep_vars): """Check whether available variants of a particular dependency are acceptable or not.""" @@ -471,6 +491,9 @@ def check_dep_vars(self, gen, dep, dep_vars): # EMAN2 2.3 requires Boost(.Python) 1.64.0 'Boost': [('1.64.0;', [r'Boost.Python-1\.64\.0-', r'EMAN2-2\.3-'])], 'Boost.Python': [('1.64.0;', [r'EMAN2-2\.3-'])], + # GATE 9.2 requires CHLEP 2.4.5.1 and Geant4 11.0.x + 'CLHEP': [('2.4.5.1;', [r'GATE-9\.2-foss-2021b'])], + 'Geant4': [('11.0.1;', [r'GATE-9\.2-foss-2021b'])], # ncbi-vdb v2.x require HDF5 v1.10.x (HISAT2, SKESA, shovill depend on ncbi-vdb) 'HDF5': [(r'1\.10\.', [r'ncbi-vdb-2\.11\.', r'HISAT2-2\.2\.', r'SKESA-2\.4\.', r'shovill-1\.1\.'])], # VMTK 1.4.x requires ITK 4.13.x @@ -517,11 +540,11 @@ def check_dep_vars(self, gen, dep, dep_vars): # medaka 1.1.*, 1.2.*, 1.4.* requires Pysam 0.16.0.1, # which is newer than what others use as dependency w.r.t. Pysam version in 2019b generation; # decona 0.1.2 and NGSpeciesID 0.1.1.1 depend on medaka 1.1.3 - # WhatsHap 1.4 requires Pysam >= 0.18.0 + # WhatsHap 1.4 + medaka 1.6.0 require Pysam >= 0.18.0 (NGSpeciesID depends on medaka) 'Pysam': [ ('0.16.0.1;', ['medaka-1.2.[0]-', 'medaka-1.1.[13]-', 'medaka-1.4.3-', 'decona-0.1.2-', 'NGSpeciesID-0.1.1.1-']), - ('0.18.0;', ['WhatsHap-1.4-']), + ('0.18.0;', ['medaka-1.6.0-', 'NGSpeciesID-0.1.2.1-', 'WhatsHap-1.4-']), ], # OPERA requires SAMtools 0.x 'SAMtools': [(r'0\.', [r'ChimPipe-0\.9\.5', r'Cufflinks-2\.2\.1', r'OPERA-2\.0\.6', @@ -1261,8 +1284,12 @@ def template_easyconfig_test(self, spec): # make sure binutils is included as a (build) dep if toolchain is GCCcore if ec['toolchain']['name'] == 'GCCcore': - # with 'Tarball' easyblock: only unpacking, no building; Eigen is also just a tarball - requires_binutils = ec['easyblock'] not in ['Tarball'] and ec['name'] not in ['ANIcalculator', 'Eigen'] + # easyblocks without a build step + non_build_blocks = ['Binary', 'JAR', 'PackedBinary', 'Tarball'] + # some software packages do not have a build step + non_build_soft = ['ANIcalculator', 'Eigen'] + + requires_binutils = ec['easyblock'] not in non_build_blocks and ec['name'] not in non_build_soft # let's also exclude the very special case where the system GCC is used as GCCcore, and only apply this # exception to the dependencies of binutils (since we should eventually build a new binutils with GCCcore) @@ -1303,7 +1330,6 @@ def template_easyconfig_test(self, spec): src_cnt = len(ec['sources']) patch_checksums = ec['checksums'][src_cnt:] - patch_checksums_cnt = len(patch_checksums) # make sure all patch files are available specdir = os.path.dirname(spec) @@ -1319,7 +1345,7 @@ def template_easyconfig_test(self, spec): self.assertTrue(os.path.isfile(patch_full), msg) # verify checksum for each patch file - if idx < patch_checksums_cnt and (os.path.exists(patch_full) or patch.endswith('.patch')): + if idx < len(patch_checksums) and (os.path.exists(patch_full) or patch.endswith('.patch')): checksum = patch_checksums[idx] error_msg = "Invalid checksum for patch file %s in %s: %s" % (patch, ec_fn, checksum) res = verify_checksum(patch_full, checksum) @@ -1330,35 +1356,40 @@ def template_easyconfig_test(self, spec): error_msg = "'source' step should not be skipped in %s, since that implies not verifying checksums" % ec_fn self.assertFalse(ec['checksums'] and ('source' in ec['skipsteps']), error_msg) - for ext in ec['exts_list']: + for ext in ec.get_ref('exts_list'): if isinstance(ext, (tuple, list)) and len(ext) == 3: - ext_name = ext[0] + self.assertTrue(isinstance(ext[2], dict), + "3rd element of extension spec for %s must be a dictionary" % ext_name) + + # After the sanity check above, use collect_exts_file_info to resolve templates etc. correctly + for ext in app.collect_exts_file_info(fetch_files=False, verify_checksums=False): + try: + ext_options = ext['options'] + except KeyError: + # No options --> Only have a name which is valid, so nothing to check + continue - self.assertTrue(isinstance(ext[2], dict), "3rd element of extension spec is a dictionary") - - # fall back to assuming a single source file for an extension - src_cnt = len(ext[2].get('sources', [])) or 1 - - checksums = ext[2].get('checksums', []) - patch_checksums = checksums[src_cnt:] + checksums = ext_options.get('checksums', []) + src_cnt = len(ext_options.get('sources', [])) or 1 + patch_checksums = checksums[src_cnt:] - for idx, ext_patch in enumerate(ext[2].get('patches', [])): - if isinstance(ext_patch, (tuple, list)): - ext_patch = ext_patch[0] + for idx, ext_patch in enumerate(ext.get('patches', [])): + if isinstance(ext_patch, (tuple, list)): + ext_patch = ext_patch[0] - # only check actual patch files, not other files being copied via the patch functionality - ext_patch_full = os.path.join(specdir, ext_patch) - if ext_patch.endswith('.patch'): - msg = "Patch file %s is available for %s" % (ext_patch_full, specfn) - self.assertTrue(os.path.isfile(ext_patch_full), msg) + # only check actual patch files, not other files being copied via the patch functionality + ext_patch_full = os.path.join(specdir, ext_patch['name']) + if ext_patch_full.endswith('.patch'): + msg = "Patch file %s is available for %s" % (ext_patch_full, specfn) + self.assertTrue(os.path.isfile(ext_patch_full), msg) - # verify checksum for each patch file - if idx < patch_checksums_cnt and (os.path.exists(ext_patch_full) or ext_patch.endswith('.patch')): - checksum = patch_checksums[idx] - error_msg = "Invalid checksum for patch file %s for %s extension in %s: %s" - res = verify_checksum(ext_patch_full, checksum) - self.assertTrue(res, error_msg % (ext_patch, ext_name, ec_fn, checksum)) + # verify checksum for each patch file + if idx < len(patch_checksums) and (os.path.exists(ext_patch_full) or ext_patch.endswith('.patch')): + checksum = patch_checksums[idx] + error_msg = "Invalid checksum for patch %s for %s extension in %s: %s" + res = verify_checksum(ext_patch_full, checksum) + self.assertTrue(res, error_msg % (ext_patch, ext_name, ec_fn, checksum)) # check whether all extra_options defined for used easyblock are defined extra_opts = app.extra_options() @@ -1418,7 +1449,13 @@ def template_easyconfig_test(self, spec): # 4th value is toolchain spec if len(dumped_dep) >= 4: if len(orig_dep) >= 4: - self.assertEqual(dumped_dep[3], orig_dep[3]) + # if True was used to indicate that dependency should use system toolchain, + # then we need to compare the value for the dumped easyconfig more carefully; + # see also https://github.com/easybuilders/easybuild-framework/pull/4069 + if orig_dep[3] is True: + self.assertEqual(dumped_dep[3], EASYCONFIG_CONSTANTS['SYSTEM'][0]) + else: + self.assertEqual(dumped_dep[3], orig_dep[3]) else: # if a subtoolchain is specifed (only) in the dumped easyconfig, # it should *not* be the same as the parent toolchain