diff --git a/.github/workflows/linting.yml b/.github/workflows/linting.yml new file mode 100644 index 00000000000..5f5ed47af29 --- /dev/null +++ b/.github/workflows/linting.yml @@ -0,0 +1,20 @@ +name: Static Analysis +on: [push, pull_request] +jobs: + python-linting: + runs-on: ubuntu-18.04 + steps: + - uses: actions/checkout@v2 + + - name: set up Python + uses: actions/setup-python@v1 + with: + python-version: 3.8 + + - name: install Python packages + run: | + pip install --upgrade pip + pip install --upgrade flake8 + + - name: Run flake8 to verify PEP8-compliance of Python code + run: flake8 diff --git a/.pep8 b/.pep8 deleted file mode 100644 index 68859ad034c..00000000000 --- a/.pep8 +++ /dev/null @@ -1,2 +0,0 @@ -[pep8] -max-line-length = 120 diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 08882713ab7..00000000000 --- a/.travis.yml +++ /dev/null @@ -1,69 +0,0 @@ -language: python -matrix: - # mark build as finished as soon as job has failed - fast_finish: true - include: - # only test with Python 2.7 & 3.6 + Lmod 7.x - # other test configurations in GitHub Actions (see .github/workflows/unit_tests.yml) - - python: 2.7 - env: LMOD_VERSION=7.8.22 - - python: 3.6 - env: LMOD_VERSION=7.8.22 -addons: - apt: - packages: - - tcl8.5 - # for testing OpenMPI-system*eb we need to have Open MPI installed - - libopenmpi-dev - - openmpi-bin -install: - # pydot (dep for python-graph-dot) 1.2.0 and more recent doesn't work with Python 2.6 - - if [ "x$TRAVIS_PYTHON_VERSION" == 'x2.6' ]; then pip install pydot==1.1.0; else pip install pydot; fi - # required for test_dep_graph - - pip install pep8 python-graph-core python-graph-dot - # install easybuild-framework/easybuild-easyblocks (and dependencies) - # use 'develop' branch of framework/easyblocks, except when testing 'master' or '4.x' branches - - BRANCH=develop - - if [ "x$TRAVIS_BRANCH" = 'xmaster' ]; then BRANCH=master; fi - - if [ "x$TRAVIS_BRANCH" = 'x4.x' ]; then BRANCH=4.x; fi - - cd $HOME - - git clone -b $BRANCH --depth 10 --single-branch https://github.com/easybuilders/easybuild-framework.git - - cd easybuild-framework; git log -n 1; cd - - - pip install $PWD/easybuild-framework - - git clone -b $BRANCH --depth 10 --single-branch https://github.com/easybuilders/easybuild-easyblocks.git - - cd easybuild-easyblocks; git log -n 1; cd - - - pip install $PWD/easybuild-easyblocks - # install environment modules tool using 'install_eb_dep.sh' script provided by easybuild-framework - - if [ ! -z $ENV_MOD_VERSION ]; then source $(which install_eb_dep.sh) modules-${ENV_MOD_VERSION} $HOME; fi - - if [ ! -z $LMOD_VERSION ]; then source $(which install_eb_dep.sh) lua-5.1.4.8 $HOME; fi - - if [ ! -z $LMOD_VERSION ]; then source $(which install_eb_dep.sh) Lmod-${LMOD_VERSION} $HOME; fi -before_script: - - cd $TRAVIS_BUILD_DIR - # pull in target so we can diff against it to obtain list of touched files - - if [ "x$TRAVIS_BRANCH" != 'xmaster' ]; then git fetch -v origin ${TRAVIS_BRANCH}:${TRAVIS_BRANCH}; fi -script: - # make sure 'ml' alias is defined, otherwise sourcing the init script fails (silently) for Lmod (< 5.9.3) - - if [ ! -z $MOD_INIT ] && [ ! -z $LMOD_VERSION ]; then alias ml=foobar; fi - # set up environment for modules tool (if $MOD_INIT is defined) - - if [ ! -z $MOD_INIT ]; then source $MOD_INIT; type module; fi - - cd $HOME - - export PYTHONPATH=$TRAVIS_BUILD_DIR - - export PATH=$TRAVIS_BUILD_DIR/test/bin:$PATH - - python -O -m test.easyconfigs.suite - # check for packaging issues by installing easybuild-easyconfigs repo, - # and checking whether easyconfigs are found, by verifying whether "eb --search" works as expected - - unset PYTHONPATH - - cd $HOME; pip install $TRAVIS_BUILD_DIR - # make sure correct 'python' command is used - # 'python2' may also be available, and is picked prior to 'python' - - export EB_PYTHON=python - # robot-paths value should not be empty, but have an entry that includes easybuild/easyconfigs subdir - - eb --show-config | tee eb_show_config.out - - grep "^robot-paths .*/easybuild/easyconfigs" eb_show_config.out - # check whether some specific easyconfig files are found - - eb --search 'TensorFlow-1.14.*.eb' | tee eb_search_TF.out - - grep '/TensorFlow-1.14.0-foss-2019a-Python-3.7.2.eb$' eb_search_TF.out - - eb --search '^foss-2018b.eb' | tee eb_search_foss.out - - grep '/foss-2018b.eb$' eb_search_foss.out - # try installing M4 with system toolchain (requires ConfigureMake easyblock + easyconfig) - - eb --prefix /tmp/$USER M4-1.4.18.eb diff --git a/README.rst b/README.rst index be42964380b..cb4636846ac 100644 --- a/README.rst +++ b/README.rst @@ -1,3 +1,5 @@ +.. image:: https://github.com/easybuilders/easybuild-easyconfigs/workflows/easyconfigs%20unit%20tests/badge.svg + .. image:: https://easybuilders.github.io/easybuild/images/easybuild_logo_small.png :align: center @@ -31,15 +33,3 @@ Related Python packages: * a collection of easyblocks that implement support for building and installing (groups of) software packages * GitHub repository: https://github.com/easybuilders/easybuild-easyblocks * package on PyPi: https://pypi.python.org/pypi/easybuild-easyblocks - -*Build status overview:* - -* **master** branch: - - .. image:: https://travis-ci.org/easybuilders/easybuild-easyconfigs.svg?branch=master - :target: https://travis-ci.org/easybuilders/easybuild-easyconfigs/branches - -* **develop** branch: - - .. image:: https://travis-ci.org/easybuilders/easybuild-easyconfigs.svg?branch=develop - :target: https://travis-ci.org/easybuilders/easybuild-easyconfigs/branches diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 29ec803b12c..9a859ade5e8 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -3,9 +3,108 @@ For more detailed information, please see the git log. These release notes can also be consulted at http://easybuild.readthedocs.org/en/latest/Release_notes.html. -The latest version of easybuild-easyconfig provides 10,147 easyconfig files, for 2,013 different software packages, +The latest version of easybuild-easyconfig provides 10,384 easyconfig files, for 2,059 different software packages, incl. 31 different (compiler) toolchains. +v4.3.0 (September 13th 2020) +---------------------------- + +feature release + +- added easyconfigs for 2 new toolchains: + - gomkl/2020a and iomkl/2020a (#11036) +- added example easyconfig files for 49 new software packages: + - almosthere (#11152), arcasHLA (#10867), BioPP (#11113), Bracken (#10829), BUFRLIB (#11140), Calib (#11111), + CellRanger-ATAC (#11186), edlib (#10470, #11246), flatbuffers (#11109), gengetopt (#11117), graphite2 (#11168), + HeFFTe (#10990), hierfstat (#11249), immunedeconv (#11136), ioapi (#10959), itpp (#10958), LiBis (#11059), + libosmium (#11024), limix-bgen (#11152), minibar (#10470, #11246), misha (#11127), MOABS (#10747), moonjit (#11163), + NGLess (#11128), nsync (#11109), openCARP (#11117), OpenForceField (#11048), OpenMMTools (#11046), OpenMS (#10994), + PennCNV (#10986), plantcv (#10968), PlasmaPy (#10732), Portcullis (#11038), PycURL (#11169), PyGEOS (#11110), + pySCENIC (#11115), Reapr (#9296), RnBeads (#11142), sf (#11248), SLiM (#11172), stars (#11215, #11248), Sumo (#11071), + Telescope (#10943), tensorflow-probability (#10312), texlive (#11168), tidymodels (#11010), Trycycler (#11207), + umi4cPackage (#11127), variant_tools (#11169) +- added additional easyconfigs for various supported software packages, including: + - Bazel 3.4.1, Bonito 0.2.2, binutils 2.35, CP2K 7.1, Clang 10.0.1, ccache 3.7.11, ctffind 4.1.14, datamash 1.5, + ELPA 2020.05.001, Emacs 26.3, Flye 2.8.1, GCC(core) 10.2.0, googletest 1.10.0, HDF 4.2.15, Horovod 0.19.5, + imageio 2.9.0, JUBE 2.4.0, Julia 1.5.1, Kent_tools 401, Libint 2.6.0, libxsmm 1.16.1, MDSplus 7.96.8, + MDTraj 1.9.4, MariaDB 10.4.13, Meson 0.55.1, MotionCor2 1.3.2, NAMD 2.14, NCO 4.9.3, OpenFOAM 8, OpenMPI 4.0.5, + OptiX 6.5.0, Pandoc 2.10, Perl 5.32.0, PostgreSQL 12.4, PyCUDA 2019.1.2, PyFR 1.9.0, PyTorch 1.6.0, + PyZMQ 18.1.1, patchelf 0.12, pocl 1.5, pycocotools 2.0.1, pyproj 2.6.1.post1, QuantumESPRESSO 6.6, + RDKit 2020.03.3, rgdal 1.5, Salmon 1.3.0, Spark 3.0.0, scikit-image 0.17.1, scipy 1.4.1, snpEff 5.0, + sympy 1.6.2, TINKER 8.7.2, tqdm 4.47.0, Unicycler 0.4.8, VMD 1.9.4a43 +- minor enhancements, including: + - also build Python libraries for ParaView 5.8.0 (#10927) + - add extensions to recent Bioconductor easyconfigs: FlowSorted.Blood.EPIC (#11021), DRIMSeq + stageR (#11053) + - add extensions to recent R easyconfigs: AICcmodavg + biomod2 (#11030), qqman (#11052), poLCA (#11081), coxed + (#11094), testit + data.tree (#11135), celestial + fasterize (#11206) + - add Config::Simple extension to Perl 5.30.x easyconfigs (#11051) + - update TensorFlow v2.1.0 (#11109) and v2.0.0 (#11233) easyconfigs to provide more dependencies via EasyBuild + - add CUDA compute capabilities to torchvision-0.5.0 (#11241) +- various bug fixes, including: + - patch to fix exporting images with PyQtGraph v0.10.0 (#10848) + - add missing Python dependency to PETSc 3.11.1 (#10907) and PETSc 3.12.x (#10908) easyconfigs + - use CMakeMake easyblock for installing magma to avoid C++11 related failures on POWER (#10929) + - fix source URL for Graphviz v2.40.1 (#10944) + - fix lapack.h for use with C++ in OpenBLAS 0.3.9 easyconfigs (#10960) + - add missing build dep on M4 for 2019b versions of netCDF-Fortran (#10972) + - update easyconfig for PyTorch 1.4 to use custom easyblock and run on POWER (#11000) + - create symlinks to incorrectly named directories in OpenBabel-3.1.1 so $BABEL_LIBDIR and $BABEL_DATADIR work properly (#11004) + - add missing Python build dep to recent ELPA easyconfigs (#11011) + - use is_generic_easyblock from filetools in easyconfigs test suite (#11020) + - fix sources in Portcullis v1.2.2 easyconfigs (#11038) + - add patch for FFTW 3.3.8 to avoid use of -no-gcc when building with Intel compilers, to fix installation on CentOS 8 (cfr. #10932) (#11050) + - add missing Python build dep for BEDTools 2.29.x (#11054) + - add missing SciPy-bundle and Kent_tools (for bedPartition command) dependencies to FLAIR (#11057) + - add patch to fix bug in LiBiS v20200428 easyconfig (#11059) + - use FFTW provided via EasyBuild for ScaFaCoS (#11060) + - fix undefined reference to 'qfloat16::mantissatable' in Qt5.14.1 (#11063) + - add alternative checksum for rstantools 2.0.0 extension (#11081) + - update checksums for R 3.6.0 packages and add patch for ppc (#11088) + - install scikit-learn 0.23.1 as a bundle and include required threadpoolctl extension (#11089) + - update pybind11 easyconfigs to use custom easyblock to install with pip (#11091) + - add recent six as extension to archspec installed on top of Python 3.7.4 (#11092) + - add missing Seaborn dependency to LiBis easyconfig (#11095) + - add missing dependencies for OpenPIV + switch to PythonBundle easyblock and include progressbar2 as extension (#11096) + - add missing argparse dep to TEtranscripts easyconfig (#11097) + - add missing pkg-config build dep in Octave 5.1.0 easyconfigs (#11100) + - don't statically link MUSCLE, to avoid requiring that glibc-static is installed in OS (#11102) + - add missing pkg-config build dependency in recent R-bundle-Bioconductor easyconfigs (#11104) + - add patch to h5py 2.8.0 (#11119) and 2.9.0 (#11118) easyconfigs to avoid MPI_Init on 'import h5py' + - add patch to support libbfd 2.34 API change in Score-P 6.0 (#11123) + - use pip to install protobuf-python in 2019b toolchain (requires re-downloading source tarball!) (#11143, #11260) + - add missing Keras-Applications extension to TensorFlow 2.2.0 easyconfigs with foss*/2019b toolchain (#11156) + - add missing pocl dependency in R 3.6.0 (#11157) + - update Meson build dep to 0.55.1 for GLib, X11, Mesa & co to fix aggressive RPATH stripping (#11178) + - disable generating of man pages in recent libdrm easyconfigs to avoid installation failure if docbook-xsl is not installed (#11182) + - add fontconfig and bzip2 as direct dependencies for Qt5 to fix installation with --rpath (#11183) + - fix failing 'make check' for MPFR 4.x (#11187) and GMP (#11188) when installing with 'eb --rpath' + - add pkg-config as a build dependency for libglvnd (#11189) + - add missing libiconv build dep in recent Doxygen easyconfigs (#11191, #11257) + - enhance Java/11 wrapper to also support for aarch64/Arm (#11192) + - add pkg-config as a build dependency to Ghostscript 9.52, needed on aarch64/arm (#11194) + - add patch for pycrypto extension in recent Python easyconfigs to remove hardcoded /usr/include which causes problems when 'eb --sysroot' is used (#11202) + - fix installation of R v3.6.3 and v4.0.0 with foss/2020a on Arm (aarch64) (#11213) + - update PyTorch 1.4 easyconfigs to use custom easyblock (and do less downloading during installations) (#11219) +- other changes: + - don't require custom sanity_check_paths for 'CUDA' bundle easyconfigs (#10936) + - move intervaltree and sortedcontainers to main Python easyconfigs (#10969, #10970) + - disable qtwayland in Qt5 v5.14.1 (#11107) + - remove mklml (small MKL) from PyTorch 1.3.1 and 1.4.0 easyconfigs (#11019) + - use pip to install h5py 2.10.0 (#11044) + - stop testing easyconfig PRs with Travis, only use GitHub Actions from now on (#11008, #11055) + - switch to Kent_tools built from source as dep for FusionCatcher (#11057) + - fall back to using PR target branch when determining "merge base" between PR branch & target branch fails in test suite (#11069) + - rename gtest to googletest (#11082) + - rename sdsl-lite to SDSL (to use one single name) (#11084) + - stop using 'remove_usr_bin'-patch in TensorFlow easyconfig, no longer required with updated TensorFlow easyblock (#11087) + - extend timeout for libxc-4.3.4 to avoid failing tests (#11126) + - move GitHub Actions status badge to top of README (#11138) + - fix code style issues in test (#11146) + - enable Flake8 on CI and fix issues (#11147) + - prefer gc GitHub site for source downloads (#11208) + - prefer https over ftp in source_urls of IgBLAST easyconfig (#11244) + + v4.2.2 (July 8th 2020) ---------------------- diff --git a/easybuild/easyconfigs/a/ACTC/ACTC-1.1-GCCcore-8.3.0.eb b/easybuild/easyconfigs/a/ACTC/ACTC-1.1-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..b4374ef52a2 --- /dev/null +++ b/easybuild/easyconfigs/a/ACTC/ACTC-1.1-GCCcore-8.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'MakeCp' + +name = 'ACTC' +version = '1.1' + +homepage = 'https://sourceforge.net/projects/actc' +description = "ACTC converts independent triangles into triangle strips or fans." + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} +toolchainopts = {'pic': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['3a1303291629b9de6008c3c9d7b020a4b854802408fb3f8222ec492808c8b44d'] + +builddependencies = [('binutils', '2.32')] + +buildopts = 'CC="$CC" CFLAGS="$CFLAGS"' + +files_to_copy = [ + (['tcsample', 'tctest', 'tctest2'], 'bin'), + (['tc.h'], 'include/ac'), + (['libactc.a'], 'lib'), + 'COPYRIGHT', 'manual.html', 'prims.gif', 'README', +] + +sanity_check_paths = { + 'files': ['bin/tctest', 'bin/tctest2', 'bin/tcsample', 'include/ac/tc.h', 'lib/libactc.a', + 'COPYRIGHT', 'manual.html', 'prims.gif', 'README'], + 'dirs': [], +} + +modextrapaths = {'CPATH': 'include/ac'} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/a/ADOL-C/ADOL-C-2.7.2-gompi-2020a.eb b/easybuild/easyconfigs/a/ADOL-C/ADOL-C-2.7.2-gompi-2020a.eb new file mode 100644 index 00000000000..c2b74df5e54 --- /dev/null +++ b/easybuild/easyconfigs/a/ADOL-C/ADOL-C-2.7.2-gompi-2020a.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'ADOL-C' +version = '2.7.2' + +homepage = 'https://projects.coin-or.org/ADOL-C' + +description = """The package ADOL-C (Automatic Differentiation by OverLoading in C++) facilitates +the evaluation of first and higher derivatives of vector functions that are defined +by computer programs written in C or C++. The resulting derivative evaluation +routines may be called from C/C++, Fortran, or any other language that can be linked +with C. +""" + +toolchain = {'name': 'gompi', 'version': '2020a'} +toolchainopts = {'openmp': True, 'usempi': True, 'pic': True} + +source_urls = ['https://github.com/coin-or/%(name)s/archive/releases'] +sources = ['%(version)s.tar.gz'] +checksums = ['701e0856baae91b98397960d5e0a87a549988de9d4002d0e9a56fa08f5455f6e'] + +builddependencies = [('Autotools', '20180311')] + +preconfigopts = 'autoreconf -fi && ' + +sanity_check_paths = { + 'files': ['lib64/libadolc.so'], + 'dirs': ['include/adolc'], +} + +moduleclass = 'system' diff --git a/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-8.3.0-Java-11.eb b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-8.3.0-Java-11.eb new file mode 100644 index 00000000000..492d77e6e4f --- /dev/null +++ b/easybuild/easyconfigs/a/ANTLR/ANTLR-2.7.7-GCCcore-8.3.0-Java-11.eb @@ -0,0 +1,33 @@ +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': '8.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.32')] +dependencies = [('Java', '11', '', True)] + +configopts = '--disable-examples --disable-csharp --disable-python' + +sanity_check_paths = { + 'files': ['bin/antlr', 'bin/antlr-config'], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/ASE/ASE-3.19.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/a/ASE/ASE-3.19.0-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..a53791d30a0 --- /dev/null +++ b/easybuild/easyconfigs/a/ASE/ASE-3.19.0-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,56 @@ +easyblock = 'PythonBundle' + +name = 'ASE' +version = '3.19.0' +versionsuffix = '-Python-%(pyver)s' + +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.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('Tkinter', '%(pyver)s'), + ('matplotlib', '3.1.1', '-Python-%(pyver)s'), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('MarkupSafe', '1.1.1', { + 'checksums': ['29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b'], + }), + ('Jinja2', '2.10.3', { + 'checksums': ['9fe95f19286cfefaa917656583d020be14e7859c6b0252588391e47db34527de'], + }), + ('Werkzeug', '0.16.0', { + 'checksums': ['7280924747b5733b246fe23972186c6b348f9ae29724135a6dfc1e53cea433e7'], + }), + ('Click', '7.0', { + 'checksums': ['5b94b49521f6456670fdb30cd82a4eca9412788a93fa6dd6df72c94d5a8ff2d7'], + }), + ('itsdangerous', '1.1.0', { + 'checksums': ['321b033d07f2a4136d3ec762eac9f16a10ccd60f53c0c91af90217ace7ba1f19'], + }), + ('Flask', '1.1.1', { + 'checksums': ['13f9f196f330c7c2c5d7a5cf91af894110ca0215ac051b5844701f2bfd934d52'], + }), + ('ase', version, { + 'checksums': ['a8378ab57e91cfe1ba09b3639d8409bb7fc1a40b59479c7822d206e673ad93f9'], + }), +] + +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/ATK/ATK-2.36.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/a/ATK/ATK-2.36.0-GCCcore-9.3.0.eb index 823b5ab392a..eb60b8b7261 100644 --- a/easybuild/easyconfigs/a/ATK/ATK-2.36.0-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/a/ATK/ATK-2.36.0-GCCcore-9.3.0.eb @@ -18,7 +18,7 @@ checksums = ['fb76247e369402be23f1f5c65d38a9639c1164d934e40f6a9cf3c9e96b652788'] builddependencies = [ ('binutils', '2.34'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('pkg-config', '0.29.2'), ('GObject-Introspection', '1.64.0', '-Python-3.8.2'), diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_cpptraj_use_mkl_fft.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_cpptraj_use_mkl_fft.patch new file mode 100644 index 00000000000..c1c1f2fa263 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_cpptraj_use_mkl_fft.patch @@ -0,0 +1,21 @@ +commit 109391b741f8231bad21264f77a7691af43f7578 +Author: Ake Sandgren +Date: Mon Jul 13 14:27:48 2020 +0200 + + Make cpptraj use FFTW3 as defined by easyconfig. + + Åke Sandgren, 20180403 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 30b1aee..1136210 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -3437,7 +3437,7 @@ if [ "$debug" = 'yes' ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -debug" ; fi + if [ "$optimise" = 'no' ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -noopt" ; fi + if [ -z "$zlib" ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -nozlib" ; fi + if [ -z "$bzlib" ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -nobzlib" ; fi +-if [ "$has_fftw3" = 'yes' ]; then CPPTRAJOPTS="$CPPTRAJOPTS -fftw3 --with-fftw3=$CPPTRAJHOME" ; fi ++#if [ "$has_fftw3" = 'yes' ]; then CPPTRAJOPTS="$CPPTRAJOPTS -fftw3 --with-fftw3=$CPPTRAJHOME" ; fi + #if [ "$static" = 'yes' ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -static" ; fi + if [ ! -z "$pnetcdf_dir" ] ; then CPPTRAJOPTS="$CPPTRAJOPTS --with-pnetcdf=$pnetcdf_dir" ; fi + if [ -z "$sanderapi_lib" -o "$static" = 'yes' ] ; then diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix-cpptraj-dont-use-static.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix-cpptraj-dont-use-static.patch new file mode 100644 index 00000000000..854b2e46901 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix-cpptraj-dont-use-static.patch @@ -0,0 +1,21 @@ +commit 2abf671e119f1c9fc05d41652da324a75ef678b9 +Author: Ake Sandgren +Date: Mon Jul 13 14:26:17 2020 +0200 + + Do not use static for cpptraj, builds fail + + Åke Sandgren, 20170517 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 8681e6a..30b1aee 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -3438,7 +3438,7 @@ if [ "$optimise" = 'no' ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -noopt" ; fi + if [ -z "$zlib" ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -nozlib" ; fi + if [ -z "$bzlib" ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -nobzlib" ; fi + if [ "$has_fftw3" = 'yes' ]; then CPPTRAJOPTS="$CPPTRAJOPTS -fftw3 --with-fftw3=$CPPTRAJHOME" ; fi +-if [ "$static" = 'yes' ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -static" ; fi ++#if [ "$static" = 'yes' ] ; then CPPTRAJOPTS="$CPPTRAJOPTS -static" ; fi + if [ ! -z "$pnetcdf_dir" ] ; then CPPTRAJOPTS="$CPPTRAJOPTS --with-pnetcdf=$pnetcdf_dir" ; fi + if [ -z "$sanderapi_lib" -o "$static" = 'yes' ] ; then + CPPTRAJOPTS="$CPPTRAJOPTS -nosanderlib" diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_hardcoding.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_hardcoding.patch new file mode 100644 index 00000000000..7d0fda303d1 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_hardcoding.patch @@ -0,0 +1,155 @@ +commit 7792cf9a768372d1ef61d9f7861af607ae141e7a +Author: Ake Sandgren +Date: Mon Jul 13 14:07:08 2020 +0200 + + Fix hardcoding of netcdf, mkl and compiler + + Åke Sandgren, 20170517 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 797380b..e6d0e50 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -378,12 +378,12 @@ program testf + write(6,*) 'testing a Fortran program' + end program testf + EOF +- $fc $fflags $netcdfinc -o testp$suffix testp.f90 $netcdfflagf > /dev/null 2> compile.err ++ $fc $fflags $netcdffinc -o testp$suffix testp.f90 $netcdfflagf > /dev/null 2> compile.err + if [ ! -e "testp$suffix" ] ; then + status=1 + if [ "$1" = "verbose" ] ; then + echo "Error: Could not compile with NetCDF Fortran interface." +- echo " $fc $fflags $netcdfinc -o testp$suffix testp.f90 $netcdfflagf" ++ echo " $fc $fflags $netcdffinc -o testp$suffix testp.f90 $netcdfflagf" + echo " Compile error follows:" + cat compile.err + echo "" +@@ -485,6 +485,7 @@ mic_offload='no' + mpinab='' + mpi='no' + netcdf_dir='' ++netcdf_fort_dir='' + netcdf_flag='' + netcdfstatic='no' + pmemd_gem='no' +@@ -577,6 +578,7 @@ while [ $# -gt 0 ]; do + --skip-python) skippython='yes' ;; + --with-python) shift; python="$1";; + --with-netcdf) shift; netcdf_dir="$1";; ++ --with-netcdf-fort) shift; netcdf_fort_dir="$1";; + --with-pnetcdf) shift; pnetcdf_dir="$1" ;; + --python-install) shift; python_install="$1";; + -netcdfstatic) netcdfstatic='yes' ;; +@@ -829,7 +831,7 @@ flibs="-larpack -llapack -lblas " + flibsf="-larpack -llapack -lblas" + # only used when the user requests a static build or when a static build is + # automatically set, eg, windows: +-staticflag='-static' ++staticflag='' + omp_flag= + mpi_flag= + fp_flags= +@@ -1411,7 +1413,7 @@ gnu) + nvcc="$nvcc -use_fast_math -O3 " + fi + if [ "$mpi" = 'yes' ]; then +- mpi_inc=`(mpicc -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` ++ mpi_inc=`(${CC} -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` + pmemd_cu_includes="$pmemd_cu_includes $mpi_inc" + pmemd_cu_defines="$pmemd_cu_defines -DMPI -DMPICH_IGNORE_CXX_SEEK" + pmemd_coptflags="$coptflags -DMPICH_IGNORE_CXX_SEEK" +@@ -1784,7 +1786,7 @@ intel) + fi + + if [ "$mpi" = 'yes' ]; then +- mpi_inc=`(mpicc -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` ++ mpi_inc=`(${CC} -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` + pmemd_cu_includes="$pmemd_cu_includes $mpi_inc" + pmemd_cu_defines="$pmemd_cu_defines -DMPI -DMPICH_IGNORE_CXX_SEEK" + pmemd_coptflags="$pmemd_coptflags -DMPICH_IGNORE_CXX_SEEK" +@@ -2123,7 +2125,7 @@ EOF + nvcc="$nvcc -use_fast_math -O3 " + fi + if [ "$mpi" = 'yes' ]; then +- mpi_inc=`(mpicc -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` ++ mpi_inc=`(${CC} -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` + pmemd_cu_includes="$pmemd_cu_includes $mpi_inc" + pmemd_cu_defines="$pmemd_cu_defines -DMPI -DMPICH_IGNORE_CXX_SEEK" + pmemd_coptflags="$coptflags -DMPICH_IGNORE_CXX_SEEK" +@@ -2247,7 +2249,7 @@ clang) + nvcc="$nvcc -use_fast_math -O3 " + fi + if [ "$mpi" = 'yes' ]; then +- mpi_inc=`(mpicc -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` ++ mpi_inc=`(${CC} -show 2>&1) | awk 'BEGIN{i=0} {while (i < NF) {if ( substr($i, 1, 2) == "-I" ) {printf("%s ", $i);}; i++;}}'` + pmemd_cu_includes="$pmemd_cu_includes $mpi_inc" + pmemd_cu_defines="$pmemd_cu_defines -DMPI -DMPICH_IGNORE_CXX_SEEK" + pmemd_coptflags="$coptflags -DMPICH_IGNORE_CXX_SEEK" +@@ -2320,17 +2322,17 @@ if [ -n "$MKL_HOME" ]; then + blas=skip + flibs="-larpack " + flibsf="-larpack " +- mkll="$MKL_HOME/lib/32" ++ mkll="$MKL_HOME/mkl/lib/32" + mkl_processor="32" + mkl_procstring="ia32" + mklinterfacelayer='libmkl_intel.a' + if [ "$x86_64" = 'yes' ]; then +- if [ -d "$MKL_HOME/lib/em64t" ]; then +- mkll="$MKL_HOME/lib/em64t" ++ if [ -d "$MKL_HOME/mkl/lib/em64t" ]; then ++ mkll="$MKL_HOME/mkl/lib/em64t" + mkl_processor="em64t" + mkl_procstring="em64t" + else +- mkll="$MKL_HOME/lib/intel64" ++ mkll="$MKL_HOME/mkl/lib/intel64" + mkl_processor="intel64" + mkl_procstring="intel64" + fi +@@ -2789,11 +2791,17 @@ if [ "$bintraj" = 'yes' ]; then + else + # A NetCDF directory was specified. Check that library exists and compiles + printf "\tUsing external NetCDF in '$netcdf_dir'\n" ++ # Support separate NetCDF-Fortran installation with --with-netcdf-fort ++ if [ ! -e "$netcdf_fort_dir" ]; then ++ netcdf_fort_dir="$netcdf_dir" ++ fi ++ printf "\tUsing external NetCDF-Fortran in '$netcdf_fort_dir'\n" + netcdfinc="-I"$netcdf_dir"/include" ++ netcdffinc="-I"$netcdf_fort_dir"/include" + if [ "${netcdf_dir}" != '/usr' -a "$netcdf_dir" != '/usr/' ]; then + netcdf_flag="-L${netcdf_dir}/lib $netcdf_flag" + fi +- netcdf=$netcdf_dir"/include/netcdf.mod" ++ netcdf=$netcdf_fort_dir"/include/netcdf.mod" + if [ "$netcdfstatic" = 'no' ] ; then + if [ "${netcdf_dir}" != '/usr' -a "${netcdf_dir}" != '/usr/' ]; then + netcdfflagc="-L${netcdf_dir}/lib -lnetcdf" +@@ -2809,7 +2817,7 @@ if [ "$bintraj" = 'yes' ]; then + echo "Error: '$netcdfflagc' not found." + exit 1 + fi +- netcdfflagf=$netcdf_dir"/lib/libnetcdff.a" ++ netcdfflagf=$netcdf_fort_dir"/lib/libnetcdff.a" + if [ ! -e "$netcdfflagf" ]; then + echo "Error: '$netcdfflagf' not found." + exit 1 +@@ -2829,6 +2837,7 @@ else + netcdfflagf='' + netcdfflagc='' + netcdfinc='' ++ netcdffinc='' + fi + + #------------------------------------------------------------------------------ +@@ -3803,7 +3812,7 @@ MAKE_XLEAP=$make_xleap + NETCDF=$netcdf + NETCDFLIB=$netcdfflagc + NETCDFLIBF=$netcdfflagf +-NETCDFINC=$netcdfinc ++NETCDFINC=$netcdfinc $netcdffinc + PNETCDFLIB=$pnetcdflib + PNETCDFINC=$pnetcdfinc + PNETCDFDEF=$pnetcdfdef diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_intel_mpi_compiler_version_detection.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_intel_mpi_compiler_version_detection.patch new file mode 100644 index 00000000000..2b75cb2809d --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_intel_mpi_compiler_version_detection.patch @@ -0,0 +1,32 @@ +commit 93a3b9c8c5d1ef1c9ccafb348bc285653accd811 +Author: Ake Sandgren +Date: Mon Jul 13 14:10:06 2020 +0200 + + Fix incorrect intel mpi compiler version detection. + + Åke Sandgren, 20170517 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index e6d0e50..2d1473e 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -237,7 +237,8 @@ extract_and_emit_compiler_versions() { + | sed -e 's/Open64//' -e 's/^[a-zA-Z :]* //' -e 's/ .*//'` + else + cc_version=`$cc $1 2>&1 | grep -E "$basecc |[vV]ersion " \ +- | sed -e 's/Open64//' -e 's/^[a-zA-Z :]* //' -e 's/ .*//'` ++ | sed -e 's/Open64//' -e 's/^[a-zA-Z :]* //' -e 's/ .*//' \ ++ | grep -v '^Intel(R)'` + fi + if [ -z "$cc_version" ] ; then + echo "Error: $cc is not well formed or produces unusual version details!" +@@ -288,7 +289,8 @@ extract_and_emit_compiler_versions() { + -e 's/Open64//' -e 's/^[a-zA-Z :]* //' -e 's/ .*//'` + else + fc_version=`$fc $1 2>&1 | grep -E "$basefc |$basecc |[vV]ersion " | sed -e "s@$basefc @@" \ +- -e 's/Open64//' -e 's/^[a-zA-Z :]* //' -e 's/ .*//'` ++ -e 's/Open64//' -e 's/^[a-zA-Z :]* //' -e 's/ .*//' \ ++ | grep -v '^Intel(R)'` + fi + if [ -z "$fc_version" ] ; then + # DRR - Last ditch; compiler name may not be in version string so just diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_missing_openmp_at_link.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_missing_openmp_at_link.patch new file mode 100644 index 00000000000..44f792e2cf4 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_missing_openmp_at_link.patch @@ -0,0 +1,21 @@ +commit f4cd6171962deae6a269da970143902f68fab946 +Author: Ake Sandgren +Date: Mon Jul 13 14:32:10 2020 +0200 + + Fix missing openmp flag at link. + + Åke Sandgren, 20171013 + +diff --git a/AmberTools/src/ucpp-1.3/Makefile b/AmberTools/src/ucpp-1.3/Makefile +index 96a1b7b..9d737fd 100644 +--- a/AmberTools/src/ucpp-1.3/Makefile ++++ b/AmberTools/src/ucpp-1.3/Makefile +@@ -44,7 +44,7 @@ clean: + + ucpp$(SFX): $(COBJ) + @echo "[UCPP] CC $@" +- $(VB)$(CC) $(LDFLAGS) -o ucpp$(SFX) $(COBJ) $(LIBS) ++ $(VB)$(CC) $(LDFLAGS) $(CFLAGS) -o ucpp$(SFX) $(COBJ) $(LIBS) + + assert.o: tune.h ucppi.h cpp.h nhash.h mem.h + cpp.o: tune.h ucppi.h cpp.h nhash.h mem.h diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_mkl_include_path.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_mkl_include_path.patch new file mode 100644 index 00000000000..b2768adc131 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_mkl_include_path.patch @@ -0,0 +1,21 @@ +commit 36d4c60c4aa2dec96d1623f658a951a8134c2895 +Author: Ake Sandgren +Date: Mon Jul 13 14:12:10 2020 +0200 + + Fix mkl include path to match EasyBuild + + Åke Sandgren, 20170517 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 2d1473e..40280d5 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -3042,7 +3042,7 @@ if [ "$compiler" = "intel" ]; then + if [ -n "$MKL_HOME" ]; then + echo " MKL_HOME set to" "$MKL_HOME" + echo `mkdir -p $amberprefix/include` +- echo `cp $MKL_HOME/include/fftw/fftw3.f $amberprefix/include` ++ echo `cp $MKL_HOME/mkl/include/fftw/fftw3.f $amberprefix/include` + fi + if [ "$intelmpi" = "yes" ]; then + pmemd_fpp_flags="$pmemd_fppflags -DFFTW_FFT -DMKL_FFTW_FFT " diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_sander_link_with_external_fftw.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_sander_link_with_external_fftw.patch new file mode 100644 index 00000000000..e7553895821 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_fix_sander_link_with_external_fftw.patch @@ -0,0 +1,66 @@ +commit 72191821fbd59207045c67ea914f1e90f80c1aef +Author: Ake Sandgren +Date: Mon Jul 13 14:25:20 2020 +0200 + + Fix link of external FFTW3 for sander + + Åke Sandgren, 20170517 + +diff --git a/AmberTools/src/sander/Makefile b/AmberTools/src/sander/Makefile +index 36f5881..3d28bd0 100644 +--- a/AmberTools/src/sander/Makefile ++++ b/AmberTools/src/sander/Makefile +@@ -343,7 +343,7 @@ $(BINDIR)/sander$(SFX): configured_serial libsqm $(MMOBJ) $(QMOBJ) \ + -lFpbsa ../lib/nxtsec.o $(EMILLIB) \ + $(SEBOMDLIB) $(FBLIBS) \ + ../lib/sys.a $(NETCDFLIBF) \ +- $(FLIBS_RISMSANDER) $(FFTW3) $(FLIBSF) \ ++ $(FLIBS_RISMSANDER) $(FLIBS_FFTW3) $(FLIBSF) \ + $(LDFLAGS) $(AMBERLDFLAGS) $(LIOLIBS) $(PLUMED_LOAD) + + #--------------------------------------------------------------------------- +@@ -358,7 +358,7 @@ $(BINDIR)/sander.MPI$(SFX): configured_parallel libsqm $(MMOBJ) $(QMOBJ) \ + -L$(LIBDIR) -lsqm -lFpbsa $(EMILLIB) \ + $(SEBOMDLIB) $(FBLIBS) $(XRAY_OBJS) \ + ../lib/nxtsec.o ../lib/sys.a $(NFE_OBJECTS) $(NETCDFLIBF) \ +- $(FLIBS_RISMSANDER) $(FFTW3) $(FLIBSF) \ ++ $(FLIBS_RISMSANDER) $(FLIBS_FFTW3) $(FLIBSF) \ + $(LDFLAGS) $(AMBERLDFLAGS) $(LIOLIBS) $(PLUMED_LOAD) + + +@@ -373,7 +373,7 @@ $(BINDIR)/sander.PUPIL$(SFX): configured_serial libsqm $(PUPILOBJ) $(QMOBJ) \ + $(LSCIVROBJ) -L$(LIBDIR) -lsqm -lFpbsa \ + $(SEBOMDLIB) $(FBLIBS) $(XRAY_OBJS) \ + ../lib/nxtsec.o $(EMILLIB) ../lib/sys.a $(NFE_OBJECTS) $(NETCDFLIBF) \ +- $(FLIBS_RISMSANDER) $(FFTW3) $(FLIBSF) \ ++ $(FLIBS_RISMSANDER) $(FLIBS_FFTW3) $(FLIBSF) \ + $(PUPILLIBS) $(LDFLAGS) $(AMBERLDFLAGS) $(LIOLIBS) $(PLUMED_LOAD) + + +@@ -387,7 +387,7 @@ $(BINDIR)/sander.LES$(SFX): configured_serial libsqm $(LESOBJ) $(PARTPIMDOBJ) \ + $(XRAY_OBJS) -L$(LIBDIR) -lsqm -lFpbsa $(EMILLIB) \ + $(SEBOMDLIB) $(FBLIBS) \ + ../lib/nxtsec.o ../lib/sys.a $(NFE_OBJECTS) $(NETCDFLIBF) \ +- $(FLIBS_RISMSANDER) $(FFTW3) $(FLIBSF) \ ++ $(FLIBS_RISMSANDER) $(FLIBS_FFTW3) $(FLIBSF) \ + $(LDFLAGS) $(AMBERLDFLAGS) $(LIOLIBS) $(PLUMED_LOAD) + + #--------------------------------------------------------------------------- +@@ -400,7 +400,7 @@ $(BINDIR)/sander.LES.MPI$(SFX): configured_parallel libsqm $(LESOBJ) $(EVBPIMD) + $(PARTPIMDOBJ) $(LSCIVROBJ) $(XRAY_OBJS) \ + -L$(LIBDIR) -lsqm -lFpbsa $(EMILLIB) $(SEBOMDLIB) $(FBLIBS) \ + ../lib/nxtsec.o ../lib/sys.a $(NFE_OBJECTS) $(NETCDFLIBF) \ +- $(FLIBS_RISMSANDER) $(FFTW3) $(FLIBSF) \ ++ $(FLIBS_RISMSANDER) $(FLIBS_FFTW3) $(FLIBSF) \ + $(LDFLAGS) $(AMBERLDFLAGS) $(LIOLIBS) $(PLUMED_LOAD) + + #--------------------------------------------------------------------------- +@@ -416,7 +416,7 @@ $(BINDIR)/sander.APBS$(SFX): configured_serial libsqm $(APBSOBJ) $(QMOBJ) \ + -L$(LIBDIR) -lsqm -lFpbsa $(EMILLIB) \ + $(SEBOMDLIB) $(FBLIBS) $(XRAY_OBJS) \ + ../lib/nxtsec.o ../lib/sys.a $(NFE_OBJECTS) $(NETCDFLIBF) \ +- $(FLIBS_RISMSANDER) $(FFTW3) $(FLIBSF) \ ++ $(FLIBS_RISMSANDER) $(FLIBS_FFTW3) $(FLIBSF) \ + $(LDFLAGS) $(AMBERLDFLAGS) $(LIOLIBS) $(PLUMED_LOAD) + + #--------------------------------------------------------------------------- diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_ignore_X11_checks.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_ignore_X11_checks.patch new file mode 100644 index 00000000000..0073a549a81 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_ignore_X11_checks.patch @@ -0,0 +1,96 @@ +commit 68c09b67cf4fa0c0b885c823666aa9b85622e82f +Author: Ake Sandgren +Date: Mon Jul 13 15:16:04 2020 +0200 + + Ignore checks for X11, use easybuild settings instead. + + Åke Sandgren, 20180403 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 1136210..7072ee0 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -855,83 +855,6 @@ sff_intel_bug361= + if [ "$noX11" = "true" ]; then + make_xleap="skip_xleap" + xhome='' +-else +- if [ -d /usr/X11R6/lib ]; then +- xhome='/usr/X11R6' +- elif [ -d /usr/X11/lib ]; then # location for MacOSX 10.11 +- xhome='/usr/X11' +- elif [ -d /usr/lib/x86_64-linux-gnu ]; then +- xhome='/usr' +- elif [ -f /usr/lib/i386-linux-gnu/libX11.a ]; then +- xhome='/usr' +- elif [ -f /usr/lib/libX11.a -o -f /usr/lib/libX11.so \ +- -o -f /usr/lib/libX11.dll.a \ +- -o -f /usr/lib64/libX11.a -o -f /usr/lib64/libX11.so ]; then +- xhome='/usr' +- elif [ -f /opt/local/lib/libX11.a -o -f /opt/local/lib/libX11.dylib ]; then +- xhome='/opt/local' +- else +- echo "Could not find the X11 libraries; you may need to edit config.h" +- echo " to set the XHOME and XLIBS variables." +- fi +- +- if [ "$xhome" != "/usr" ]; then +- # Do not add -L/usr/lib to linker. This is always in the standard path +- # and could cause issues trying to build MPI when /usr has an MPI +- # installed that you *don't* want to use. +- xlibs="-L$xhome/lib" +- if [ "$x86_64" = 'yes' ]; then +- xlibs="-L$xhome/lib64 $xlibs" +- fi +- fi +- if [ -d /usr/lib/x86_64-linux-gnu ]; then +- xlibs="-L/usr/lib/x86_64-linux-gnu $xlibs" +- fi +-fi +-#-------------------------------------------------------------------------- +-# Check if the X11 library files for XLEaP are present: +-#-------------------------------------------------------------------------- +-if [ "$noX11" = "false" ]; then +- if [ -r "$xhome/lib/libXt.a" -o -r "$xhome/lib/libXt.dll.a" \ +- -o -r "$xhome/lib/libXt.dylib" \ +- -o -r /usr/lib/x86_64-linux-gnu/libXt.a \ +- -o -r /usr/lib/x86_64-linux-gnu/libXt.so \ +- -o -r /usr/lib/i386-linux-gnu/libXt.a \ +- -o -r /usr/lib/i386-linux-gnu/libXt.so \ +- -o -r /usr/lib/libXt.so \ +- -o -r /usr/lib64/libXt.so \ +- -o -r /usr/X11/lib/libXt.dylib \ +- -o "$x86_64" = 'yes' -a -r "$xhome/lib64/libXt.a" ] +- then +- empty_statement= +- else +- echo "Error: The X11 libraries are not in the usual location !" +- echo " To search for them try the command: locate libXt" +- echo " On new Fedora OS's install the libXt-devel libXext-devel" +- echo " libX11-devel libICE-devel libSM-devel packages." +- echo " On old Fedora OS's install the xorg-x11-devel package." +- echo " On RedHat OS's install the XFree86-devel package." +- echo " On Ubuntu OS's install the xorg-dev and xserver-xorg packages." +- echo +- echo " ...more info for various linuxes at ambermd.org/ubuntu.html" +- echo +- echo " To build Amber without XLEaP, re-run configure with '-noX11:" +- echo " `mod_command_args '' '-noX11'`" +- exit 1 +- fi +- +- if [ -d /usr/include/X11/extensions -o $is_mac = "yes" ] +- then +- empty_statement= +- elif [ "$is_mac" = "no" ]; then +- echo "Error: The X11 extensions headers are not in the usual location!" +- echo " To search for them try the command: locate X11/extensions" +- echo " On new Fedora OSes install libXext-devel" +- echo " On RedHat OSes install libXext-devel" +- echo " To build Amber without XLEaP, re-run configure with '-noX11:" +- echo " `mod_command_args '' '-noX11'`" +- exit 1 +- fi + fi + + #------------------------------------------------------------------------------- diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_make_cpptraj_link_with_EBs_blas_lapack_fftw.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_make_cpptraj_link_with_EBs_blas_lapack_fftw.patch new file mode 100644 index 00000000000..b3ee659da50 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_make_cpptraj_link_with_EBs_blas_lapack_fftw.patch @@ -0,0 +1,89 @@ +commit c29fd3416b6f7b74832a40d62ee70c6b51706197 +Author: Ake Sandgren +Date: Mon Jul 13 15:20:32 2020 +0200 + + Make cpptraj link with the BLAS/LAPACK/FFTW/Zlib/Bzip2 from EasyBuild. + + Åke Sandgren, 20181126 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 89bf90d..2d1c43e 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -3378,7 +3378,7 @@ if [ "$macAccelerate" = 'yes' ] ; then + elif [ -n "$MKL_HOME" -o "$intel_compiler_flag_mkl" = 'yes' ]; then + CPPTRAJOPTS="$CPPTRAJOPTS -mkl" + elif [ "$gotolib" = 'yes' ] ; then +- CPPTRAJOPTS="$CPPTRAJOPTS -openblas -lblas=$GOTO --requires-pthread" ++ CPPTRAJOPTS="$CPPTRAJOPTS -openblas --requires-pthread" + else # TODO use libsci for cray? + CPPTRAJOPTS="$CPPTRAJOPTS --with-blas=$CPPTRAJHOME --with-lapack=$CPPTRAJHOME" + fi +diff --git a/AmberTools/src/cpptraj/configure b/AmberTools/src/cpptraj/configure +index 1136472..f86c1ed 100755 +--- a/AmberTools/src/cpptraj/configure ++++ b/AmberTools/src/cpptraj/configure +@@ -183,38 +183,38 @@ LIB_D_ON[$LPARANC]='-DHAS_PNETCDF' + LIB_DOFF[$LPARANC]='' + LIB_TYPE[$LPARANC]='ld' + +-LIB_STAT[$LBZIP]='enabled' ++LIB_STAT[$LBZIP]='direct' + LIB_CKEY[$LBZIP]='bzlib' + LIB_HOME[$LBZIP]='' +-LIB_FLAG[$LBZIP]='-lbz2' ++LIB_FLAG[$LBZIP]="-L$EBROOTBZIP2/lib -lbz2" + LIB_STTC[$LBZIP]='libbz2.a' + LIB_D_ON[$LBZIP]='-DHASBZ2' + LIB_DOFF[$LBZIP]='' + LIB_TYPE[$LBZIP]='ld' + +-LIB_STAT[$LZIP]='enabled' ++LIB_STAT[$LZIP]='direct' + LIB_CKEY[$LZIP]='zlib' + LIB_HOME[$LZIP]='' +-LIB_FLAG[$LZIP]='-lz' ++LIB_FLAG[$LZIP]="-L$EBROOTZLIB/lib -lz" + LIB_STTC[$LZIP]='libz.a' + LIB_D_ON[$LZIP]='-DHASGZ' + LIB_DOFF[$LZIP]='' + LIB_TYPE[$LZIP]='ld' + +-LIB_STAT[$LBLAS]='enabled' ++LIB_STAT[$LBLAS]='direct' + LIB_CKEY[$LBLAS]='blas' + LIB_HOME[$LBLAS]='' +-LIB_FLAG[$LBLAS]='-lblas' +-LIB_STTC[$LBLAS]='libblas.a' ++LIB_FLAG[$LBLAS]="$LIBBLAS" ++LIB_STTC[$LBLAS]="$LIBBLAS" + LIB_D_ON[$LBLAS]='' + LIB_DOFF[$LBLAS]='-DNO_MATHLIB' + LIB_TYPE[$LBLAS]='cpp' + +-LIB_STAT[$LLAPACK]='enabled' ++LIB_STAT[$LLAPACK]='direct' + LIB_CKEY[$LLAPACK]='lapack' + LIB_HOME[$LLAPACK]='' +-LIB_FLAG[$LLAPACK]='-llapack' +-LIB_STTC[$LLAPACK]='liblapack.a' ++LIB_FLAG[$LLAPACK]="$LIBLAPACK" ++LIB_STTC[$LLAPACK]="$LIBLAPACK" + LIB_D_ON[$LLAPACK]='' + LIB_DOFF[$LLAPACK]='' + LIB_TYPE[$LLAPACK]='cpp' +@@ -228,11 +228,11 @@ LIB_D_ON[$LARPACK]='' + LIB_DOFF[$LARPACK]='-DNO_ARPACK' + LIB_TYPE[$LARPACK]='cpp' + +-LIB_STAT[$LFFTW3]='off' ++LIB_STAT[$LFFTW3]='direct' + LIB_CKEY[$LFFTW3]='fftw3' + LIB_HOME[$LFFTW3]='' +-LIB_FLAG[$LFFTW3]='-lfftw3' +-LIB_STTC[$LFFTW3]='libfftw3.a' ++LIB_FLAG[$LFFTW3]="$LIBFFT" ++LIB_STTC[$LFFTW3]="$LIBFFT" + LIB_D_ON[$LFFTW3]='-DFFTW_FFT' + LIB_DOFF[$LFFTW3]='' + LIB_TYPE[$LFFTW3]='cpp' diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_CUSTOMBUILDFLAGS_for_nab.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_CUSTOMBUILDFLAGS_for_nab.patch new file mode 100644 index 00000000000..1d7e0a99c4d --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_CUSTOMBUILDFLAGS_for_nab.patch @@ -0,0 +1,122 @@ +commit 3b0d6cbeb82e43cf1f3a2079bd57239d1ff8aa07 +Author: Ake Sandgren +Date: Mon Jul 13 15:12:53 2020 +0200 + + Make nab always use CUSTOMBUILDFLAGS so openmp flags get added when needed. + + Åke Sandgren, 20171012 + +diff --git a/AmberTools/src/amberlite/Makefile b/AmberTools/src/amberlite/Makefile +index 75f607d..bc4451e 100644 +--- a/AmberTools/src/amberlite/Makefile ++++ b/AmberTools/src/amberlite/Makefile +@@ -16,13 +16,13 @@ $(BINDIR)/nab$(SFX): ../nab/nab.c + cd ../nab && $(MAKE) $@ + + $(BINDIR)/ffgbsa$(SFX): ffgbsa.nab +- $(BINDIR)/nab$(SFX) -o $(BINDIR)/ffgbsa$(SFX) ffgbsa.nab ++ $(BINDIR)/nab$(SFX) -o $(BINDIR)/ffgbsa$(SFX) ffgbsa.nab $(CUSTOMBUILDFLAGS) + + $(BINDIR)/minab$(SFX): minab.nab +- $(BINDIR)/nab$(SFX) -o $(BINDIR)/minab$(SFX) minab.nab ++ $(BINDIR)/nab$(SFX) -o $(BINDIR)/minab$(SFX) minab.nab $(CUSTOMBUILDFLAGS) + + $(BINDIR)/mdnab$(SFX): mdnab.nab +- $(BINDIR)/nab$(SFX) -o $(BINDIR)/mdnab$(SFX) mdnab.nab ++ $(BINDIR)/nab$(SFX) -o $(BINDIR)/mdnab$(SFX) mdnab.nab $(CUSTOMBUILDFLAGS) + + clean: + /bin/rm -f *.c +diff --git a/AmberTools/src/etc/Makefile b/AmberTools/src/etc/Makefile +index 2777d90..1a8ce83 100644 +--- a/AmberTools/src/etc/Makefile ++++ b/AmberTools/src/etc/Makefile +@@ -76,7 +76,7 @@ elsize$(SFX): elsize.o + + molsurf$(SFX): molsurf.nab + @echo "[ETC] NAB $@" +- $(VB)$(BINDIR)/nab$(SFX) -o molsurf$(SFX) molsurf.nab ++ $(VB)$(BINDIR)/nab$(SFX) -o molsurf$(SFX) molsurf.nab $(CUSTOMBUILDFLAGS) + + resp$(SFX): lapack.o resp.o + @echo "[ETC] FC $@" +@@ -85,7 +85,7 @@ resp$(SFX): lapack.o resp.o + + tinker_to_amber$(SFX): tinker_to_amber.o cspline.o + @echo "[ETC] FC $@" +- $(VB)$(FC) -o tinker_to_amber$(SFX) tinker_to_amber.o cspline.o ++ $(VB)$(FC) -o tinker_to_amber$(SFX) tinker_to_amber.o cspline.o $(CUSTOMBUILDFLAGS) + + new_crd_to_dyn$(SFX): new_crd_to_dyn.o nxtsec + @echo "[ETC] FC $@" +diff --git a/AmberTools/src/mm_pbsa/Makefile b/AmberTools/src/mm_pbsa/Makefile +index 6da491a..e25bd20 100644 +--- a/AmberTools/src/mm_pbsa/Makefile ++++ b/AmberTools/src/mm_pbsa/Makefile +@@ -21,7 +21,7 @@ $(BINDIR)/make_crd_hg$(SFX): make_crd_hg.o $(LIBOBJ) + + #Note dependency on nab from AMBERTools here. + $(BINDIR)/mm_pbsa_nabnmode$(SFX): mm_pbsa_nabnmode.nab +- $(BINDIR)/nab$(SFX) $(NABFLAGS) -o $(BINDIR)/mm_pbsa_nabnmode$(SFX) mm_pbsa_nabnmode.nab ++ $(BINDIR)/nab$(SFX) $(NABFLAGS) -o $(BINDIR)/mm_pbsa_nabnmode$(SFX) mm_pbsa_nabnmode.nab $(CUSTOMBUILDFLAGS) + + ../lib/amopen.o: ../lib/amopen.F + cd ../lib; $(MAKE) amopen.o +diff --git a/AmberTools/src/mmpbsa_py/Makefile b/AmberTools/src/mmpbsa_py/Makefile +index bf479ee..8027f9e 100644 +--- a/AmberTools/src/mmpbsa_py/Makefile ++++ b/AmberTools/src/mmpbsa_py/Makefile +@@ -9,10 +9,10 @@ install: $(BINDIR)/mmpbsa_py_nabnmode$(SFX) $(BINDIR)/mmpbsa_py_energy$(SFX) + $(PYTHON) setup.py install -f $(PYTHON_INSTALL) --install-scripts=$(BINDIR) + + $(BINDIR)/mmpbsa_py_nabnmode$(SFX): mmpbsa_entropy.nab +- $(BINDIR)/nab$(SFX) -o $(BINDIR)/mmpbsa_py_nabnmode$(SFX) mmpbsa_entropy.nab ++ $(BINDIR)/nab$(SFX) -o $(BINDIR)/mmpbsa_py_nabnmode$(SFX) mmpbsa_entropy.nab $(CUSTOMBUILDFLAGS) + + $(BINDIR)/mmpbsa_py_energy$(SFX): mmpbsa_energy.nab +- $(BINDIR)/nab$(SFX) -o $(BINDIR)/mmpbsa_py_energy$(SFX) mmpbsa_energy.nab ++ $(BINDIR)/nab$(SFX) -o $(BINDIR)/mmpbsa_py_energy$(SFX) mmpbsa_energy.nab $(CUSTOMBUILDFLAGS) + + serial: install + +diff --git a/AmberTools/src/nss/Makefile b/AmberTools/src/nss/Makefile +index 916ed3c..d0c7645 100644 +--- a/AmberTools/src/nss/Makefile ++++ b/AmberTools/src/nss/Makefile +@@ -54,28 +54,28 @@ libsym: $(SYMOBJS) + -ranlib $(LIBDIR)/libnab.a + + matextract$(SFX): matextract.o +- $(NAB) -o matextract$(SFX) matextract.o ++ $(NAB) -o matextract$(SFX) matextract.o $(CUSTOMBUILDFLAGS) + + matgen$(SFX): matgen.o +- $(NAB) -o matgen$(SFX) matgen.o ++ $(NAB) -o matgen$(SFX) matgen.o $(CUSTOMBUILDFLAGS) + + matmerge$(SFX): matmerge.o +- $(NAB) -o matmerge$(SFX) matmerge.o ++ $(NAB) -o matmerge$(SFX) matmerge.o $(CUSTOMBUILDFLAGS) + + matmul$(SFX): matmul.o +- $(NAB) -o matmul$(SFX) matmul.o ++ $(NAB) -o matmul$(SFX) matmul.o $(CUSTOMBUILDFLAGS) + + transform$(SFX): transform.o +- $(NAB) -o transform$(SFX) transform.o ++ $(NAB) -o transform$(SFX) transform.o $(CUSTOMBUILDFLAGS) + + tss_init$(SFX): tss_init.o +- $(NAB) -o tss_init$(SFX) tss_init.o ++ $(NAB) -o tss_init$(SFX) tss_init.o $(CUSTOMBUILDFLAGS) + + tss_main$(SFX): tss_main.o +- $(NAB) -o tss_main$(SFX) tss_main.o ++ $(NAB) -o tss_main$(SFX) tss_main.o $(CUSTOMBUILDFLAGS) + + tss_next$(SFX): tss_next.o +- $(NAB) -o tss_next$(SFX) tss_next.o ++ $(NAB) -o tss_next$(SFX) tss_next.o $(CUSTOMBUILDFLAGS) + + clean: + /bin/rm -f \ diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_FFTW_FFT_instead_of_PUBFFT.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_FFTW_FFT_instead_of_PUBFFT.patch new file mode 100644 index 00000000000..e76134e707a --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_FFTW_FFT_instead_of_PUBFFT.patch @@ -0,0 +1,41 @@ +commit fd5f339f48b6b81e2d201138ef4049baef7c7798 +Author: Ake Sandgren +Date: Mon Jul 13 14:24:19 2020 +0200 + + Use FFTW_FFT with FFTW3 instead of PUBFFT for pmemd. + This fixes linking with FFTW3 as opposed to using MKL. + + Åke Sandgren, 20181006 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index a03e109..8681e6a 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -1362,6 +1362,9 @@ gnu) + + # PMEMD Specifics + pmemd_fpp_flags='-DPUBFFT -DGNU_HACKS' ++ if [ "$has_fftw3" = 'yes' ]; then ++ pmemd_fpp_flags='-DFFTW_FFT' ++ fi + pmemd_foptflags="$foptflags" + if [ "$pmemd_openmp" = 'yes' ]; then + pmemd_foptflags="$pmemd_foptflags -fopenmp -D_OPENMP_" +@@ -3043,8 +3046,6 @@ if [ "$compiler" = "intel" ]; then + echo " MKL_HOME set to" "$MKL_HOME" + echo `mkdir -p $amberprefix/include` + echo `cp $MKL_HOME/mkl/include/fftw/fftw3.f $amberprefix/include` +- fi +- if [ "$intelmpi" = "yes" ]; then + pmemd_fpp_flags="$pmemd_fppflags -DFFTW_FFT -DMKL_FFTW_FFT " + pmemd_coptflags="$pmemd_coptflags -DFFTW_FFT " # it would be best if we had a cflags var + fi +@@ -3875,7 +3876,7 @@ PMEMD_F90=$fc $mpi_flag $fppflags $pmemd_fpp_flags + PMEMD_FOPTFLAGS=$pmemd_foptflags \$(AMBERBUILDFLAGS) + PMEMD_CC=$cc + PMEMD_COPTFLAGS=$pmemd_coptflags $mpi_flag \$(AMBERBUILDFLAGS) +-PMEMD_FLIBSF=$flibsf $flibs_mkl $flibsf_arch $win_mpilibs $emillib ++PMEMD_FLIBSF=$flibsf $flibs_mkl $flibsf_arch $win_mpilibs $emillib $flibs_fftw3 + PMEMD_LD=$ld \$(AMBERBUILDFLAGS) + LDOUT=$ldout + PMEMD_GNU_BUG303=$pmemd_gnu_bug303 diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_easybuild_pythonpath.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_easybuild_pythonpath.patch new file mode 100644 index 00000000000..8e68d79548c --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_easybuild_pythonpath.patch @@ -0,0 +1,21 @@ +commit 26cea9f35118aae0f02a195863bbf3a538727e44 +Author: Ake Sandgren +Date: Mon Jul 13 15:18:16 2020 +0200 + + Must not override EasyBuilds PYTHONPATH + + Åke Sandgren, 20181030 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 7072ee0..89bf90d 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -3837,7 +3837,7 @@ PUPILLIBS=$pupillibs + PYTHON=$python + PYTHON_INSTALL=$python_install_string + SKIP_PYTHON=$skippython +-PYTHONPATH=\$(AMBER_PREFIX)/lib/python$python_ver/site-packages ++#PYTHONPATH=\$(AMBER_PREFIX)/lib/python$python_ver/site-packages + PYTHONLOG=$pythonlog + + PYSANDER=$pysander diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_fftw_from_mkl_or_external.patch b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_fftw_from_mkl_or_external.patch new file mode 100644 index 00000000000..45f7d10a192 --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-AT-19_use_fftw_from_mkl_or_external.patch @@ -0,0 +1,163 @@ +commit c85f964871fd352b573804d819e220d4aacfe5e0 +Author: Ake Sandgren +Date: Mon Jul 13 14:17:44 2020 +0200 + + Force using FFTW from external or mkl. + + Åke Sandgren, 20170517 + +diff --git a/AmberTools/src/configure2 b/AmberTools/src/configure2 +index 40280d5..a03e109 100755 +--- a/AmberTools/src/configure2 ++++ b/AmberTools/src/configure2 +@@ -3063,62 +3063,82 @@ if [ "$compiler" = "intel" ]; then + fi + + if [ "$has_fftw3" = 'yes' ]; then +- echo +- echo "Configuring fftw-3.3 (may be time-consuming)..." +- echo +- enable_mpi="" +- enable_debug="" +- enable_sse="--enable-sse=no --enable-sse2=no --enable-avx=no" +- mpicc="" +- if [ "$mpi" = "yes" ]; then +- enable_mpi="--enable-mpi=yes" +- fi +- if [ "$intelmpi" = "yes" ]; then +- mpicc="MPICC=mpiicc" +- fi +- if [ "$debug" = "yes" ]; then +- enable_debug="--enable-debug=yes --enable-debug-malloc=yes --enable-debug-alignment=yes" +- fi +- if [ "$sse" = "yes" ]; then +- enable_sse="--enable-sse2=yes" # --enable-avx=yes" +- fi +- if [ "$mic" = 'yes' ]; then +- echo " --configuring for mic (native mode)..." +- echo +- cd fftw-3.3 && \ +- ./configure --prefix=$amberprefix --libdir=$amberprefix/lib \ +- --enable-static --host=x86_64-k1om-linux \ +- --build=x86_64-unknown-linux \ +- $enable_mpi $mpicc $enable_debug \ +- CC="$cc -mmic" CFLAGS="$cflags $coptflags " \ +- F77="$fc -mmic" FFLAGS="$fflags $foptflags " \ +- FLIBS="$flibs_arch" \ +- > ../fftw3_config.log 2>&1 +- ncerror=$? +- else +- cd fftw-3.3 && \ +- ./configure --prefix=$amberprefix --libdir=$amberprefix/lib \ +- --enable-static $enable_mpi $mpicc $enable_debug $enable_sse\ +- CC="$cc" CFLAGS="$cflags $coptflags" \ +- F77="$fc" FFLAGS="$fflags $foptflags" \ +- FLIBS="$flibs_arch" \ +- > ../fftw3_config.log 2>&1 +- ncerror=$? +- fi +- if [ $ncerror -gt 0 ]; then +- echo "Error: FFTW configure returned $ncerror" +- echo " FFTW configure failed! Check the fftw3_config.log file" +- echo " in the $AMBERHOME/AmberTools/src directory." +- exit 1 ++ if [ -n "$EBROOTFFTW" ]; then ++ echo ++ echo "Using external FFTW3" ++ echo ++ flibs_fftw3="-lfftw3" ++ if [ "$mpi" = 'yes' ]; then ++ flibs_fftw3="-lfftw3_mpi $flibs_fftw3" ++ fi ++ flibs_fftw3="-L$FFT_LIB_DIR $flibs_fftw3" ++ fftw3="" ++ fppflags="$fppflags -I$FFT_INC_DIR" ++ elif [ -n "$MKL_HOME" ]; then ++ echo ++ echo "Using FFTW3 from MKL" ++ echo ++ flibs_fftw3="-lfftw3xf_intel $flibs_mkl" ++ fftw3="" ++ fppflags="$fppflags -I$FFT_INC_DIR" + else +- echo " fftw-3.3 configure succeeded." +- fi +- cd .. +- flibs_fftw3="-lfftw3" +- fftw3="\$(LIBDIR)/libfftw3.a" +- if [ "$mpi" = 'yes' -a "$intelmpi" = 'no' ]; then +- flibs_fftw3="-lfftw3_mpi $flibs_fftw3" +- fftw3="\$(LIBDIR)/libfftw3_mpi.a \$(LIBDIR)/libfftw3.a" ++ echo ++ echo "Configuring fftw-3.3 (may be time-consuming)..." ++ echo ++ enable_mpi="" ++ enable_debug="" ++ enable_sse="--enable-sse=no --enable-sse2=no --enable-avx=no" ++ mpicc="" ++ if [ "$mpi" = "yes" ]; then ++ enable_mpi="--enable-mpi=yes" ++ fi ++ if [ "$intelmpi" = "yes" ]; then ++ mpicc="MPICC=mpiicc" ++ fi ++ if [ "$debug" = "yes" ]; then ++ enable_debug="--enable-debug=yes --enable-debug-malloc=yes --enable-debug-alignment=yes" ++ fi ++ if [ "$sse" = "yes" ]; then ++ enable_sse="--enable-sse2=yes" # --enable-avx=yes" ++ fi ++ if [ "$mic" = 'yes' ]; then ++ echo " --configuring for mic (native mode)..." ++ echo ++ cd fftw-3.3 && \ ++ ./configure --prefix=$amberprefix --libdir=$amberprefix/lib \ ++ --enable-static --host=x86_64-k1om-linux \ ++ --build=x86_64-unknown-linux \ ++ $enable_mpi $mpicc $enable_debug \ ++ CC="$cc -mmic" CFLAGS="$cflags $coptflags " \ ++ F77="$fc -mmic" FFLAGS="$fflags $foptflags " \ ++ FLIBS="$flibs_arch" \ ++ > ../fftw3_config.log 2>&1 ++ ncerror=$? ++ else ++ cd fftw-3.3 && \ ++ ./configure --prefix=$amberprefix --libdir=$amberprefix/lib \ ++ --enable-static $enable_mpi $mpicc $enable_debug $enable_sse\ ++ CC="$cc" CFLAGS="$cflags $coptflags" \ ++ F77="$fc" FFLAGS="$fflags $foptflags" \ ++ FLIBS="$flibs_arch" \ ++ > ../fftw3_config.log 2>&1 ++ ncerror=$? ++ fi ++ if [ $ncerror -gt 0 ]; then ++ echo "Error: FFTW configure returned $ncerror" ++ echo " FFTW configure failed! Check the fftw3_config.log file" ++ echo " in the $AMBERHOME/AmberTools/src directory." ++ exit 1 ++ else ++ echo " fftw-3.3 configure succeeded." ++ fi ++ cd .. ++ flibs_fftw3="-lfftw3" ++ fftw3="\$(LIBDIR)/libfftw3.a" ++ if [ "$mpi" = 'yes' -a "$intelmpi" = 'no' ]; then ++ flibs_fftw3="-lfftw3_mpi $flibs_fftw3" ++ fftw3="\$(LIBDIR)/libfftw3_mpi.a \$(LIBDIR)/libfftw3.a" ++ fi + fi + elif [ "$mdgx" = 'yes' ]; then + echo +diff --git a/AmberTools/src/rism/Makefile b/AmberTools/src/rism/Makefile +index 6a7bc84..fde2dc3 100644 +--- a/AmberTools/src/rism/Makefile ++++ b/AmberTools/src/rism/Makefile +@@ -5,7 +5,7 @@ include ../config.h + export AMBERHOME=$(AMBER_PREFIX) + + # rism1d Fortran source files are free format +-LOCALFLAGS = $(FREEFORMAT_FLAG) ++LOCALFLAGS = $(FREEFORMAT_FLAG) -I$$FFT_INC_DIR + + # ------- rism1d information: ---------------------------------------------- + diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-foss-2019b-AmberTools-19-patchlevel-12-17-Python-2.7.16.eb b/easybuild/easyconfigs/a/Amber/Amber-18-foss-2019b-AmberTools-19-patchlevel-12-17-Python-2.7.16.eb new file mode 100644 index 00000000000..de617ae964a --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-foss-2019b-AmberTools-19-patchlevel-12-17-Python-2.7.16.eb @@ -0,0 +1,85 @@ +name = 'Amber' +version = '18' +local_ambertools_ver = '19' +# Patch levels from http://ambermd.org/bugfixes16.html and http://ambermd.org/bugfixesat.html +patchlevels = (12, 17) # (AmberTools, Amber) +local_AT_suffix = '-AmberTools-%s-patchlevel-%s-%s' % (local_ambertools_ver, patchlevels[0], patchlevels[1]) +versionsuffix = '%s-Python-%%(pyver)s' % local_AT_suffix + +homepage = 'https://ambermd.org' +description = """Amber (originally Assisted Model Building with Energy + Refinement) is software for performing molecular dynamics and structure + prediction.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'usempi': True, 'openmp': True} + +sources = [ + 'Amber%(version)s.tar.bz2', + 'AmberTools%s.tar.bz2' % local_ambertools_ver, +] +patches = [ + 'Amber-%%(version)s-AT-%s_fix_hardcoding.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_intel_mpi_compiler_version_detection.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_mkl_include_path.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_fftw_from_mkl_or_external.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_FFTW_FFT_instead_of_PUBFFT.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_sander_link_with_external_fftw.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix-cpptraj-dont-use-static.patch' % local_ambertools_ver, + # Must come after fix-cpptraj-dont-use-static.patch + 'Amber-%%(version)s-AT-%s_cpptraj_use_mkl_fft.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_missing_openmp_at_link.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_CUSTOMBUILDFLAGS_for_nab.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_ignore_X11_checks.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_easybuild_pythonpath.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_make_cpptraj_link_with_EBs_blas_lapack_fftw.patch' % local_ambertools_ver, + 'Amber-%(version)s_fix_missing_build_target.patch', + 'Amber-%(version)s_dont_use_ipo.patch', +] +checksums = [ + '2060897c0b11576082d523fb63a51ba701bc7519ff7be3d299d5ec56e8e6e277', # Amber18.tar.bz2 + '0c86937904854b64e4831e047851f504ec45b42e593db4ded92c1bee5973e699', # AmberTools19.tar.bz2 + '660fba2faabf9a7f28c3a7710a2871d10dde04a8ebbefb774d03d6699e498f45', # Amber-18-AT-19_fix_hardcoding.patch + # Amber-18-AT-19_fix_intel_mpi_compiler_version_detection.patch + 'f876a35f349f54144736dce61f2ddda0322f9986d97598c7861a97c53afe1517', + 'bea92f331f1ab66e4cc0b58a62ec8b1b3225df2b10261e985e619962dd5efafb', # Amber-18-AT-19_fix_mkl_include_path.patch + # Amber-18-AT-19_use_fftw_from_mkl_or_external.patch + '26c959e3887d8054a933d344791cf83ab9470e8bf2d3b75a36badda34d57c124', + # Amber-18-AT-19_use_FFTW_FFT_instead_of_PUBFFT.patch + '9774f25a63056f5d1e91dbc4c3634beb9704df53e5757f4e60efa32129faca21', + # Amber-18-AT-19_fix_sander_link_with_external_fftw.patch + '46ed3b6d2aa8d38ef5955dd369682b3f163fd7ec096d55edd31da5042c32f9fe', + # Amber-18-AT-19_fix-cpptraj-dont-use-static.patch + 'd81f8e8d96b08e7b03555401917f71e935e1c8ccd88158e120fc861c91bc6d79', + 'b11a68ef431bc8d4792fdb6887bee405987abe311c26425e1bafafa8d501e637', # Amber-18-AT-19_cpptraj_use_mkl_fft.patch + # Amber-18-AT-19_fix_missing_openmp_at_link.patch + '195bdfad40e1fd10316cbf5573942f24acf37fcb103e2fa2fa4b8253ff1448cc', + # Amber-18-AT-19_use_CUSTOMBUILDFLAGS_for_nab.patch + '32b85c5bf8fcf6cd9d230ea7ca7b3889ee162f0922ae8943ccac016313aaf4cb', + '6cedc53c8da0cf2469f1ed5f6ebd21c6086132a598a587bae3d092186a13e39e', # Amber-18-AT-19_ignore_X11_checks.patch + 'e27a76c1cc748360c82d5c7b83d70bc5f5891dd12da4dcedc0884019e852a41e', # Amber-18-AT-19_use_easybuild_pythonpath.patch + # Amber-18-AT-19_make_cpptraj_link_with_EBs_blas_lapack_fftw.patch + 'f486c7b6df557fb7257bab0930cb49a0a359347bcdd480e2aee2b45724aa4226', + '6b09a6548fa18127245e05c79bdca143adf31db349349cb39bfdb8c4f60772a7', # Amber-18_fix_missing_build_target.patch + 'a4c12ad39088ce6e9e7bad39e8d9a736989e6ae4a380c70535a5451eb3060903', # Amber-18_dont_use_ipo.patch +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.3.2'), +] + +dependencies = [ + ('netCDF', '4.7.1'), + ('netCDF-Fortran', '4.5.2'), + ('Python', '2.7.16'), + ('Boost.Python', '1.71.0'), + ('matplotlib', '2.2.4', '-Python-%(pyver)s'), + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('X11', '20190717'), +] + +static = False + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/Amber/Amber-18-fosscuda-2019b-AmberTools-19-patchlevel-12-17-Python-2.7.16.eb b/easybuild/easyconfigs/a/Amber/Amber-18-fosscuda-2019b-AmberTools-19-patchlevel-12-17-Python-2.7.16.eb new file mode 100644 index 00000000000..fa7794dcbea --- /dev/null +++ b/easybuild/easyconfigs/a/Amber/Amber-18-fosscuda-2019b-AmberTools-19-patchlevel-12-17-Python-2.7.16.eb @@ -0,0 +1,87 @@ +name = 'Amber' +version = '18' +local_ambertools_ver = '19' +# Patch levels from http://ambermd.org/bugfixes16.html and http://ambermd.org/bugfixesat.html +patchlevels = (12, 17) # (AmberTools, Amber) +local_AT_suffix = '-AmberTools-%s-patchlevel-%s-%s' % (local_ambertools_ver, patchlevels[0], patchlevels[1]) +versionsuffix = '%s-Python-%%(pyver)s' % local_AT_suffix + +homepage = 'https://ambermd.org' +description = """Amber (originally Assisted Model Building with Energy + Refinement) is software for performing molecular dynamics and structure + prediction.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} +toolchainopts = {'usempi': True, 'openmp': True} + +sources = [ + 'Amber%(version)s.tar.bz2', + 'AmberTools%s.tar.bz2' % local_ambertools_ver, +] +patches = [ + 'Amber-%%(version)s-AT-%s_fix_hardcoding.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_intel_mpi_compiler_version_detection.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_mkl_include_path.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_fftw_from_mkl_or_external.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_FFTW_FFT_instead_of_PUBFFT.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_sander_link_with_external_fftw.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix-cpptraj-dont-use-static.patch' % local_ambertools_ver, + # Must come after fix-cpptraj-dont-use-static.patch + 'Amber-%%(version)s-AT-%s_cpptraj_use_mkl_fft.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_fix_missing_openmp_at_link.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_CUSTOMBUILDFLAGS_for_nab.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_ignore_X11_checks.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_use_easybuild_pythonpath.patch' % local_ambertools_ver, + 'Amber-%%(version)s-AT-%s_make_cpptraj_link_with_EBs_blas_lapack_fftw.patch' % local_ambertools_ver, + 'Amber-%(version)s_fix_missing_build_target.patch', + 'Amber-%(version)s_dont_use_ipo.patch', + 'Amber-%(version)s_test_cuda.patch', +] +checksums = [ + '2060897c0b11576082d523fb63a51ba701bc7519ff7be3d299d5ec56e8e6e277', # Amber18.tar.bz2 + '0c86937904854b64e4831e047851f504ec45b42e593db4ded92c1bee5973e699', # AmberTools19.tar.bz2 + '660fba2faabf9a7f28c3a7710a2871d10dde04a8ebbefb774d03d6699e498f45', # Amber-18-AT-19_fix_hardcoding.patch + # Amber-18-AT-19_fix_intel_mpi_compiler_version_detection.patch + 'f876a35f349f54144736dce61f2ddda0322f9986d97598c7861a97c53afe1517', + 'bea92f331f1ab66e4cc0b58a62ec8b1b3225df2b10261e985e619962dd5efafb', # Amber-18-AT-19_fix_mkl_include_path.patch + # Amber-18-AT-19_use_fftw_from_mkl_or_external.patch + '26c959e3887d8054a933d344791cf83ab9470e8bf2d3b75a36badda34d57c124', + # Amber-18-AT-19_use_FFTW_FFT_instead_of_PUBFFT.patch + '9774f25a63056f5d1e91dbc4c3634beb9704df53e5757f4e60efa32129faca21', + # Amber-18-AT-19_fix_sander_link_with_external_fftw.patch + '46ed3b6d2aa8d38ef5955dd369682b3f163fd7ec096d55edd31da5042c32f9fe', + # Amber-18-AT-19_fix-cpptraj-dont-use-static.patch + 'd81f8e8d96b08e7b03555401917f71e935e1c8ccd88158e120fc861c91bc6d79', + 'b11a68ef431bc8d4792fdb6887bee405987abe311c26425e1bafafa8d501e637', # Amber-18-AT-19_cpptraj_use_mkl_fft.patch + # Amber-18-AT-19_fix_missing_openmp_at_link.patch + '195bdfad40e1fd10316cbf5573942f24acf37fcb103e2fa2fa4b8253ff1448cc', + # Amber-18-AT-19_use_CUSTOMBUILDFLAGS_for_nab.patch + '32b85c5bf8fcf6cd9d230ea7ca7b3889ee162f0922ae8943ccac016313aaf4cb', + '6cedc53c8da0cf2469f1ed5f6ebd21c6086132a598a587bae3d092186a13e39e', # Amber-18-AT-19_ignore_X11_checks.patch + 'e27a76c1cc748360c82d5c7b83d70bc5f5891dd12da4dcedc0884019e852a41e', # Amber-18-AT-19_use_easybuild_pythonpath.patch + # Amber-18-AT-19_make_cpptraj_link_with_EBs_blas_lapack_fftw.patch + 'f486c7b6df557fb7257bab0930cb49a0a359347bcdd480e2aee2b45724aa4226', + '6b09a6548fa18127245e05c79bdca143adf31db349349cb39bfdb8c4f60772a7', # Amber-18_fix_missing_build_target.patch + 'a4c12ad39088ce6e9e7bad39e8d9a736989e6ae4a380c70535a5451eb3060903', # Amber-18_dont_use_ipo.patch + '672c7667c899c91d002a4b095f1ac1691f77e7b4095414084f1d4cdc7c860d79', # Amber-18_test_cuda.patch +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.3.2'), +] + +dependencies = [ + ('netCDF', '4.7.1'), + ('netCDF-Fortran', '4.5.2'), + ('Python', '2.7.16'), + ('Boost.Python', '1.71.0'), + ('matplotlib', '2.2.4', '-Python-%(pyver)s'), + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('X11', '20190717'), +] + +static = False + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/AmberMini/AmberMini-16.16.0-intel-2020a.eb b/easybuild/easyconfigs/a/AmberMini/AmberMini-16.16.0-intel-2020a.eb new file mode 100644 index 00000000000..7a47fcf9131 --- /dev/null +++ b/easybuild/easyconfigs/a/AmberMini/AmberMini-16.16.0-intel-2020a.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'AmberMini' +version = '16.16.0' + +homepage = 'https://github.com/choderalab/ambermini' +description = """A stripped-down set of just antechamber, sqm, and tleap.""" + +toolchain = {'name': 'intel', 'version': '2020a'} + +source_urls = ['https://github.com/choderalab/ambermini/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['fcd699a62248aa17a11d8eaa090a0c55e8ba735dcd9ec5fb33a8927da5ce1c5a'] + +builddependencies = [ + ('Bison', '3.5.3'), + ('Python', '3.8.2'), +] + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in ["sqm", "tleap"]], + 'dirs': [], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/a/almosthere/almosthere-1.0.10-GCCcore-9.3.0.eb b/easybuild/easyconfigs/a/almosthere/almosthere-1.0.10-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..9ea9af127e5 --- /dev/null +++ b/easybuild/easyconfigs/a/almosthere/almosthere-1.0.10-GCCcore-9.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'almosthere' +version = '1.0.10' + +homepage = "https://github.com/horta/almosthere" +description = """Progress indicator C library. + +ATHR is a simple yet powerful progress indicator library that works on Windows, +Linux, and macOS. It is non-blocking as the progress update is done via a +dedicated, lightweight thread, as to not impair the performance of the calling program.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + + +github_account = 'horta' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['36e943f6e76fba6d2638972aff71d767a5ba0e72c472acf8282729ef1b0a0a0d'] +configopts = '-DBUILD_SHARED_LIBS=ON' +builddependencies = [ + ('binutils', '2.34'), + ('CMake', '3.16.4'), +] + + +sanity_check_paths = { + 'files': ['lib/libathr.%s' % SHLIB_EXT, 'include/athr.h'], + 'dirs': ['lib/cmake'] +} + +separate_build_dir = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/a/arcasHLA/arcasHLA-0.2.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/a/arcasHLA/arcasHLA-0.2.0-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..bc81df83420 --- /dev/null +++ b/easybuild/easyconfigs/a/arcasHLA/arcasHLA-0.2.0-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,45 @@ +easyblock = 'Tarball' + +name = 'arcasHLA' +version = '0.2.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/RabadanLab/arcasHLA' +description = """arcasHLA performs high resolution genotyping for HLA class I and class II +genes from RNA sequencing, supporting both paired and single-end samples.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +github_account = 'RabadanLab' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['0ac0f67f7206660e80b3163e6adc1e02c5ef87879e6366c49c16ee1ccbf83c40'] + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('Biopython', '1.75', versionsuffix), + ('BEDTools', '2.29.2'), + ('kallisto', '0.46.1'), + ('SAMtools', '1.10'), + ('pigz', '2.4'), + ('git', '2.23.0', '-nodocs'), + ('git-lfs', '2.11.0', '', True), +] + +# Download and install the reference database (1.8 GB) +postinstallcmds = ["cd %(installdir)s && git lfs install && ./arcasHLA reference --update --verbose"] + +sanity_check_paths = { + 'files': ['arcasHLA'], + 'dirs': ['dat', 'dat/IMGTHLA', 'scripts', 'test'], +} + +sanity_check_commands = ['arcasHLA --help'] + +modextrapaths = { + 'PATH': [''], + 'PYTHONPATH': ['scripts'], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/a/archspec/archspec-0.1.0-GCCcore-8.3.0-Python-3.7.4.eb b/easybuild/easyconfigs/a/archspec/archspec-0.1.0-GCCcore-8.3.0-Python-3.7.4.eb index 4f4929e6241..fde4f307ba4 100644 --- a/easybuild/easyconfigs/a/archspec/archspec-0.1.0-GCCcore-8.3.0-Python-3.7.4.eb +++ b/easybuild/easyconfigs/a/archspec/archspec-0.1.0-GCCcore-8.3.0-Python-3.7.4.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonPackage' +easyblock = 'PythonBundle' name = 'archspec' version = '0.1.0' @@ -9,19 +9,25 @@ description = "A library for detecting, labeling, and reasoning about microarchi toolchain = {'name': 'GCCcore', 'version': '8.3.0'} -source_urls = [PYPI_SOURCE] -sources = ['archspec-%(version)s-py2.py3-none-any.whl'] -checksums = ['12f2029f63ffbc560e43f7d1f366a45ff46c7bd0751653227f8015f83f121119'] - builddependencies = [('binutils', '2.32')] dependencies = [('Python', '3.7.4')] -unpack_sources = False - -download_dep_fail = True use_pip = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('six', '1.15.0', { + 'checksums': ['30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259'], + }), + (name, version, { + 'source_tmpl': 'archspec-%(version)s-py2.py3-none-any.whl', + 'unpack_sources': False, + 'checksums': ['12f2029f63ffbc560e43f7d1f366a45ff46c7bd0751653227f8015f83f121119'], + }), +] + sanity_check_paths = { 'files': [], 'dirs': ['lib/python%(pyshortver)s/site-packages'], diff --git a/easybuild/easyconfigs/a/astropy/astropy-4.0.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/a/astropy/astropy-4.0.1-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..473a469f6c2 --- /dev/null +++ b/easybuild/easyconfigs/a/astropy/astropy-4.0.1-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'astropy' +version = '4.0.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.astropy.org/' +description = """The Astropy Project is a community effort to develop +a single core package for Astronomy in Python and foster interoperability +between Python astronomy packages.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), +] + +use_pip = True + +sanity_pip_check = True + +exts_list = [ + ('astropy-helpers', version, { + 'source_urls': ['https://pypi.python.org/packages/source/A/astropy-helpers/'], + 'checksums': ['f1096414d108778218d6bea06d4d9c7b2ff7c83856a451331ac194e74de9f413'], + }), + (name, version, { + 'patches': ['astropy-ah_no_auto_use.patch'], + 'source_urls': ['https://pypi.python.org/packages/source/A/astropy/'], + 'checksums': [ + 'f1135f2637867bf4eb44b754d905462be738165ae5535540670938bbc2dcc62c', # astropy-4.0.1.tar.gz + 'fb339ff90fff8ed760b5ea9b8b65be3babb355f956a5588fd7e2e2656b4a7ca8', # astropy-ah_no_auto_use.patch + ], + }), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/astropy'], +} + +moduleclass = 'astro' diff --git a/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.34.2-GCCcore-9.3.0.eb b/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.34.2-GCCcore-9.3.0.eb index b546bc7eab9..8119ca2f023 100644 --- a/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.34.2-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/a/at-spi2-atk/at-spi2-atk-2.34.2-GCCcore-9.3.0.eb @@ -14,7 +14,7 @@ checksums = ['901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216fa363005e27f4f0'] builddependencies = [ ('binutils', '2.34'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('pkg-config', '0.29.2'), ] diff --git a/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.36.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.36.0-GCCcore-9.3.0.eb index 2b9805f939c..e914c88f6e8 100644 --- a/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.36.0-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/a/at-spi2-core/at-spi2-core-2.36.0-GCCcore-9.3.0.eb @@ -16,7 +16,7 @@ checksums = ['88da57de0a7e3c60bc341a974a80fdba091612db3547c410d6deab039ca5c05a'] builddependencies = [ ('binutils', '2.34'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('GObject-Introspection', '1.64.0', '-Python-3.8.2'), ('gettext', '0.20.1'), diff --git a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-8.3.0.eb b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-8.3.0.eb index 7c088782f5a..14122c5cd88 100644 --- a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-8.3.0.eb +++ b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-8.3.0.eb @@ -22,7 +22,7 @@ source_urls = ['https://github.com/arq5x/bedtools2/releases/download/v%(version) sources = [SOURCELOWER_TAR_GZ] checksums = ['e3f1bf9e58740e60c3913390fe95b0c7f8fd99ceade8a406e28620448a997054'] -buildopts = 'CXX="$CXX"' +builddependencies = [('Python', '3.7.4')] dependencies = [ ('XZ', '5.2.4'), @@ -31,6 +31,8 @@ dependencies = [ ('BamTools', '2.5.1'), ] +buildopts = 'CXX="$CXX"' + files_to_copy = ["bin", "docs", "data", "genomes", "scripts", "test"] sanity_check_paths = { diff --git a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-9.3.0.eb b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-9.3.0.eb index e12deababc1..fa487700f9f 100644 --- a/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-9.3.0.eb +++ b/easybuild/easyconfigs/b/BEDTools/BEDTools-2.29.2-GCC-9.3.0.eb @@ -22,7 +22,7 @@ source_urls = ['https://github.com/arq5x/bedtools2/releases/download/v%(version) sources = [SOURCELOWER_TAR_GZ] checksums = ['e3f1bf9e58740e60c3913390fe95b0c7f8fd99ceade8a406e28620448a997054'] -buildopts = 'CXX="$CXX"' +builddependencies = [('Python', '3.8.2')] dependencies = [ ('XZ', '5.2.5'), @@ -31,6 +31,8 @@ dependencies = [ ('BamTools', '2.5.1'), ] +buildopts = 'CXX="$CXX"' + files_to_copy = ["bin", "docs", "data", "genomes", "scripts", "test"] sanity_check_paths = { 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 new file mode 100644 index 00000000000..cca75a1aa04 --- /dev/null +++ b/easybuild/easyconfigs/b/BUFRLIB/BUFRLIB-11.3.0.2-iccifort-2020.1.217.eb @@ -0,0 +1,24 @@ +easyblock = 'CMakeMake' + +name = 'BUFRLIB' +version = '11.3.0.2' + +homepage = 'https://www.emc.ncep.noaa.gov/index.php?branch=BUFRLIB' +description = """NCEP BUFRLIB software to encode or decode BUFR messages. It is not intended to be a primer on the +BUFR code form itself.""" + +toolchain = {'name': 'iccifort', 'version': '2020.1.217'} + +source_urls = ['https://github.com/JCSDA/bufrlib/archive'] +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 " + +sanity_check_paths = { + 'files': ['lib/libbufr.a', 'lib/libbufr.so'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/Bazel/Bazel-3.4.1-GCCcore-8.3.0.eb b/easybuild/easyconfigs/b/Bazel/Bazel-3.4.1-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..f6588c17964 --- /dev/null +++ b/easybuild/easyconfigs/b/Bazel/Bazel-3.4.1-GCCcore-8.3.0.eb @@ -0,0 +1,25 @@ +name = 'Bazel' +version = '3.4.1' + +homepage = 'https://bazel.io/' +description = """Bazel is a build tool that builds code quickly and reliably. +It is used to build the majority of Google's software.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://github.com/bazelbuild/bazel/releases/download/%(version)s'] +sources = ['%(namelower)s-%(version)s-dist.zip'] +patches = ['%(name)s-%(version)s-fix-grpc-protoc.patch'] +checksums = [ + '27af1f11c8f23436915925b25cf6e1fb07fccf2d2a193a307c93437c60f63ba8', # bazel-3.4.1-dist.zip + 'f87ad8ad6922fd9c974381ea22b7b0e6502ccad5e532145f179b80d5599e24ac', # Bazel-3.4.1-fix-grpc-protoc.patch +] + +builddependencies = [ + ('binutils', '2.32'), + ('Python', '3.7.4'), + ('Zip', '3.0'), +] +dependencies = [('Java', '1.8', '', True)] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/Bazel/Bazel-3.4.1-fix-grpc-protoc.patch b/easybuild/easyconfigs/b/Bazel/Bazel-3.4.1-fix-grpc-protoc.patch new file mode 100644 index 00000000000..ecc4021a049 --- /dev/null +++ b/easybuild/easyconfigs/b/Bazel/Bazel-3.4.1-fix-grpc-protoc.patch @@ -0,0 +1,27 @@ +From cd3c41eb5a29ca475b7bafc42aa71e94363d46df Mon Sep 17 00:00:00 2001 +From: Alexander Grund +Date: Tue, 28 Jul 2020 19:51:13 +0200 +Subject: [PATCH] Fix environment for protobuf compilation in grpc + +Add use_default_shell_env = True to protoc invocation for grpc to mirror +what the protobuf cc_proto_library & co are doing +Fixes a failure in invocing protoc when it is build in a non-default +environment (e.g. with a custom LD_LIBRARY_PATH) + +Fixes #11852, fixes #11855 +--- + third_party/grpc/bazel/generate_cc.bzl | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/third_party/grpc/bazel/generate_cc.bzl b/third_party/grpc/bazel/generate_cc.bzl +index 38a5b460f90..d5a4e27bc88 100644 +--- a/third_party/grpc/bazel/generate_cc.bzl ++++ b/third_party/grpc/bazel/generate_cc.bzl +@@ -123,6 +123,7 @@ def generate_cc_impl(ctx): + outputs = out_files, + executable = ctx.executable.protoc, + arguments = arguments, ++ use_default_shell_env = True, + ) + + return struct(files = depset(out_files)) diff --git a/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.9.1-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.9.1-GCCcore-9.3.0-Python-3.8.2.eb new file mode 100644 index 00000000000..2a3b175b68f --- /dev/null +++ b/easybuild/easyconfigs/b/BeautifulSoup/BeautifulSoup-4.9.1-GCCcore-9.3.0-Python-3.8.2.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonBundle' + +name = 'BeautifulSoup' +version = '4.9.1' +versionsuffix = '-Python-%(pyver)s' + +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': '9.3.0'} + +builddependencies = [ + ('binutils', '2.34') +] + +dependencies = [ + ('Python', '3.8.2'), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('soupsieve', '2.0.1', { + 'checksums': ['a59dc181727e95d25f781f0eb4fd1825ff45590ec8ff49eadfd7f1a537cc0232'], + }), + (name, version, { + 'modulename': 'bs4', + 'source_tmpl': 'beautifulsoup4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/b/beautifulsoup4'], + 'checksums': ['73cc4d115b96f79c7d77c1c7f7a0a8d4c57860d1041df407dd1aae7f07a77fd7'], + }), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/b/BioPP/BioPP-2.4.1-GCC-9.3.0.eb b/easybuild/easyconfigs/b/BioPP/BioPP-2.4.1-GCC-9.3.0.eb new file mode 100644 index 00000000000..59ed58edac6 --- /dev/null +++ b/easybuild/easyconfigs/b/BioPP/BioPP-2.4.1-GCC-9.3.0.eb @@ -0,0 +1,59 @@ +easyblock = 'Bundle' + +name = 'BioPP' +version = '2.4.1' + +homepage = 'https://github.com/BioPP/bpp-core' +description = ''' +Bio++ is a set of C++ libraries for Bioinformatics, including sequence +analysis, phylogenetics, molecular evolution and population genetics. Bio++ is +Object Oriented and is designed to be both easy to use and computer efficient. +Bio++ intends to help programmers to write computer expensive programs, by +providing them a set of re-usable tools. +''' + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +github_account = 'BioPP' + +builddependencies = [('CMake', '3.16.4')] +default_easyblock = 'CMakeMake' + +default_component_specs = { + 'sources': [{'download_filename': 'v%(version)s.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}], + 'source_urls': [GITHUB_SOURCE], + 'start_dir': '%(name)s-%(version)s', +} +components = [ + ('bpp-core', version, { + 'checksums': ['1150b8ced22cff23dd4770d7c23fad11239070b44007740e77407f0d746c0af6'], + }), + ('bpp-seq', version, { + 'checksums': ['dbfcb04803e4b7f08f9f159da8a947c91906c3ca8b20683ac193f6dc524d4655'], + }), + ('bpp-phyl', version, { + 'checksums': ['e7bf7d4570f756b7773904ffa600ffcd77c965553ddb5cbc252092d1da962ff2'], + }), + ('bpp-seq-omics', version, { + 'checksums': ['200da925b42065998d825f0b2a37e26b00a865883c85bc332beb3a94cae1e08b'], + }), + ('bpp-phyl-omics', version, { + 'checksums': ['fb0908422e59c71065db874e68d5c71acddf66d8a51776f7e04a5f8d5f0f6577'], + }), + ('bpp-popgen', version, { + 'checksums': ['03b57d71a63c8fa7f11c085e531d0d691fc1d40d4ea541070dabde0ab3baf413'], + }), + ('bppsuite', version, { + 'checksums': ['0485adcc17e37439069d27e4fac144e5ae38036ba21f31e6d21f070ce4ea5199'], + }) +] + +local_libs = [local_component[0] for local_component in components if local_component[0] != 'bppsuite'] + +sanity_check_paths = { + 'files': ['bin/bppseqgen'] + + ['lib64/lib%s.%s' % (local_lib, local_ext) for local_lib in local_libs for local_ext in ['a', SHLIB_EXT]], + 'dirs': ['include/Bpp', 'share/man'] + + ['lib64/cmake/%s' % local_lib for local_lib in local_libs] +} +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/b/Bison/Bison-3.7.1-GCCcore-10.2.0.eb b/easybuild/easyconfigs/b/Bison/Bison-3.7.1-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..55d04ef9b9d --- /dev/null +++ b/easybuild/easyconfigs/b/Bison/Bison-3.7.1-GCCcore-10.2.0.eb @@ -0,0 +1,28 @@ +easyblock = 'ConfigureMake' + +name = 'Bison' +version = '3.7.1' + +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': '10.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['1dd952839cf0d5a8178c691eeae40dc48fa50d18dcce648b1ad9ae0195367d13'] + +builddependencies = [ + ('M4', '1.4.18'), + # use same binutils version that was used when building GCCcore toolchain + ('binutils', '2.35', '', 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/Bison/Bison-3.7.1.eb b/easybuild/easyconfigs/b/Bison/Bison-3.7.1.eb new file mode 100644 index 00000000000..c3cedc9436e --- /dev/null +++ b/easybuild/easyconfigs/b/Bison/Bison-3.7.1.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'Bison' +version = '3.7.1' + +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 = SYSTEM + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['1dd952839cf0d5a8178c691eeae40dc48fa50d18dcce648b1ad9ae0195367d13'] + +builddependencies = [ + ('M4', '1.4.18'), +] + +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/Bonito/Bonito-0.2.2-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/b/Bonito/Bonito-0.2.2-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..8d5e17b510f --- /dev/null +++ b/easybuild/easyconfigs/b/Bonito/Bonito-0.2.2-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,114 @@ +easyblock = 'PythonBundle' + +name = 'Bonito' +version = '0.2.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/nanoporetech/bonito' +description = "Convolution Basecaller for Oxford Nanopore Reads" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('PyTorch', '1.3.1', versionsuffix), + ('h5py', '2.10.0', versionsuffix), + ('Mako', '1.1.0'), + ('PyYAML', '5.1.2'), + ('apex', '20200325', versionsuffix), + ('minimap2', '2.17'), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('toml', '0.10.1', { + 'checksums': ['926b612be1e5ce0634a2ca03470f95169cf16f939018233a670519cb4ac58b0f'], + }), + ('tqdm', '4.47.0', { + 'checksums': ['63ef7a6d3eb39f80d6b36e4867566b3d8e5f1fe3d6cb50c5e9ede2b3198ba7b7'], + }), + ('python-editor', '1.0.4', { + 'modulename': 'editor', + 'checksums': ['51fda6bcc5ddbbb7063b2af7509e43bd84bfc32a4ff71349ec7847713882327b'], + }), + ('alembic', '1.4.2', { + 'checksums': ['035ab00497217628bf5d0be82d664d8713ab13d37b630084da8e1f98facf4dbf'], + }), + ('cmd2', '1.1.0', { + 'checksums': ['d233b5ad4b9ee264a43fb14668f287d25f998f4b443a81b4efdfd292f1a77108'], + }), + ('prettytable', '0.7.2', { + 'checksums': ['2d5460dc9db74a32bcc8f9f67de68b2c4f4d2f01fa3bd518764c69156d9cacd9'], + }), + ('cliff', '3.3.0', { + 'checksums': ['611595ad7b4bdf57aa252027796dac3273ab0f4bc1511e839cce230a351cb710'], + 'preinstallopts': "sed -i'' 's/cmd2.*/cmd2/g' requirements.txt && ", + }), + ('colorlog', '4.1.0', { + 'checksums': ['30aaef5ab2a1873dec5da38fd6ba568fa761c9fa10b40241027fa3edea47f3d2'], + }), + ('SQLAlchemy', '1.3.18', { + 'checksums': ['da2fb75f64792c1fc64c82313a00c728a7c301efe6a60b7a9fe35b16b4368ce7'], + }), + ('cmaes', '0.5.1', { + 'checksums': ['5f4b45c621f240adcc4db40d51146b5f1ec66e757cbc02b9a060d5e816bb43b6'], + }), + ('optuna', '1.5.0', { + 'checksums': ['a8847e0d13364a7e95a7dee31035a1811a2b1395feb2cf98cce7e62affb529df'], + }), + ('parasail', '1.2', { + 'checksums': ['6ceef978e7d06293c38c9824f76557f3d7e137cb05487be31bf89286f7a8201e'], + }), + ('colorama', '0.4.3', { + 'checksums': ['e96da0d330793e2cb9485e9ddfd918d456036c7149416295932478192f4436a1'], + }), + ('pyperclip', '1.8.0', { + 'checksums': ['b75b975160428d84608c26edba2dec146e7799566aea42c1fe1b32e72b6028f2'], + }), + ('stevedore', '2.0.1', { + 'checksums': ['609912b87df5ad338ff8e44d13eaad4f4170a65b79ae9cb0aa5632598994a1b7'], + }), + ('progressbar33', '2.4', { + 'modulename': 'progressbar', + 'checksums': ['51fe0d9b3b4023db2f983eeccdfc8c9846b84db8443b9bee002c7f58f4376eff'], + }), + ('ont-fast5-api', '3.1.5', { + 'checksums': ['bb5b142a4b8751ca837d7c7e3cf9dd5b96177e8c16bffdd8f098bac74e66287f'], + }), + ('fast-ctc-decode', '0.2.5', { + 'source_tmpl': 'fast_ctc_decode-%(version)s-cp37-cp37m-manylinux1_x86_64.whl', + 'checksums': ['b47976b2f951dade427a2f9ddc0ae6905561a76411941cf02b7f6e3e037f4062'], + 'unpack_sources': False, + }), + ('bonito-cuda-runtime', '0.0.2a2', { + 'source_tmpl': 'bonito_cuda_runtime-%(version)s-cp37-cp37m-manylinux1_x86_64.whl', + 'checksums': ['ac75bcb0408b83e063e83f062b119e5758a8939b7ca67072894195f58557b26c'], + 'unpack_sources': False, + }), + ('mappy', '2.17', { + 'checksums': ['ed1460efc9c6785df28065b7e93e93c92227f623a181f1a852dca6e6acb1a15f'], + }), + ('ont-bonito', version, { + 'checksums': ['002bb5c9ecc57251c963904bf1a695de77e5bc42d7de3623909736b9a727def7'], + 'preinstallopts': "sed -i 's/==/>=/g' requirements.txt && ", + 'modulename': 'bonito', + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/bonito'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "bonito --help", + "bonito convert --help", + "bonito download --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-gompic-2019b.eb b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-gompic-2019b.eb new file mode 100644 index 00000000000..612b5e195e6 --- /dev/null +++ b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-gompic-2019b.eb @@ -0,0 +1,27 @@ +easyblock = 'EB_Boost' + +name = 'Boost.Python' +version = '1.71.0' + +homepage = 'https://boostorg.github.io/python' +description = """Boost.Python is a C++ library which enables seamless interoperability between C++ + and the Python programming language.""" + +toolchain = {'name': 'gompic', 'version': '2019b'} +toolchainopts = {'pic': True} + +source_urls = ['https://dl.bintray.com/boostorg/release/%(version)s/source/'] +sources = ['boost_%s.tar.gz' % '_'.join(version.split('.'))] +patches = ['Boost-%(version)s_fix-Python3.patch'] +checksums = [ + '96b34f7468f26a141f6020efb813f1a2f3dfb9797ecf76a7d7cbd843cc95f5bd', # boost_1_71_0.tar.gz + '60e3aede2f444a3855f4efed94d1de5c2887983876e0fae21f6ca5cfdc53ea96', # Boost-1.71.0_fix-Python3.patch +] + +multi_deps = {'Python': ['3.7.4', '2.7.16']} + +dependencies = [('Boost', version)] + +only_python_bindings = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-iimpi-2019b.eb b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-iimpi-2019b.eb new file mode 100644 index 00000000000..4aa30e3fedd --- /dev/null +++ b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-iimpi-2019b.eb @@ -0,0 +1,27 @@ +easyblock = 'EB_Boost' + +name = 'Boost.Python' +version = '1.71.0' + +homepage = 'https://boostorg.github.io/python' +description = """Boost.Python is a C++ library which enables seamless interoperability between C++ + and the Python programming language.""" + +toolchain = {'name': 'iimpi', 'version': '2019b'} +toolchainopts = {'pic': True} + +source_urls = ['https://dl.bintray.com/boostorg/release/%(version)s/source/'] +sources = ['boost_%s.tar.gz' % '_'.join(version.split('.'))] +patches = ['Boost-%(version)s_fix-Python3.patch'] +checksums = [ + '96b34f7468f26a141f6020efb813f1a2f3dfb9797ecf76a7d7cbd843cc95f5bd', # boost_1_71_0.tar.gz + '60e3aede2f444a3855f4efed94d1de5c2887983876e0fae21f6ca5cfdc53ea96', # Boost-1.71.0_fix-Python3.patch +] + +multi_deps = {'Python': ['3.7.4', '2.7.16']} + +dependencies = [('Boost', version)] + +only_python_bindings = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-iimpic-2019b.eb b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-iimpic-2019b.eb new file mode 100644 index 00000000000..2aff22ed9d7 --- /dev/null +++ b/easybuild/easyconfigs/b/Boost.Python/Boost.Python-1.71.0-iimpic-2019b.eb @@ -0,0 +1,27 @@ +easyblock = 'EB_Boost' + +name = 'Boost.Python' +version = '1.71.0' + +homepage = 'https://boostorg.github.io/python' +description = """Boost.Python is a C++ library which enables seamless interoperability between C++ + and the Python programming language.""" + +toolchain = {'name': 'iimpic', 'version': '2019b'} +toolchainopts = {'pic': True} + +source_urls = ['https://dl.bintray.com/boostorg/release/%(version)s/source/'] +sources = ['boost_%s.tar.gz' % '_'.join(version.split('.'))] +patches = ['Boost-%(version)s_fix-Python3.patch'] +checksums = [ + '96b34f7468f26a141f6020efb813f1a2f3dfb9797ecf76a7d7cbd843cc95f5bd', # boost_1_71_0.tar.gz + '60e3aede2f444a3855f4efed94d1de5c2887983876e0fae21f6ca5cfdc53ea96', # Boost-1.71.0_fix-Python3.patch +] + +multi_deps = {'Python': ['3.7.4', '2.7.16']} + +dependencies = [('Boost', version)] + +only_python_bindings = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/b/Boost/Boost-1.71.0-iimpic-2019b.eb b/easybuild/easyconfigs/b/Boost/Boost-1.71.0-iimpic-2019b.eb new file mode 100644 index 00000000000..0adf4338818 --- /dev/null +++ b/easybuild/easyconfigs/b/Boost/Boost-1.71.0-iimpic-2019b.eb @@ -0,0 +1,25 @@ +name = 'Boost' +version = '1.71.0' + +homepage = 'https://www.boost.org/' +description = """Boost provides free peer-reviewed portable C++ source libraries.""" + +toolchain = {'name': 'iimpic', 'version': '2019b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://dl.bintray.com/boostorg/release/%(version)s/source/'] +sources = ['%%(namelower)s_%s.tar.gz' % '_'.join(version.split('.'))] +checksums = ['96b34f7468f26a141f6020efb813f1a2f3dfb9797ecf76a7d7cbd843cc95f5bd'] + +dependencies = [ + ('bzip2', '1.0.8'), + ('zlib', '1.2.11'), + ('XZ', '5.2.4'), +] + +configopts = '--without-libraries=python' + +# also build boost_mpi +boost_mpi = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/b/Bracken/Bracken-2.6.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/b/Bracken/Bracken-2.6.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..8a841170344 --- /dev/null +++ b/easybuild/easyconfigs/b/Bracken/Bracken-2.6.0-GCCcore-9.3.0.eb @@ -0,0 +1,56 @@ +# 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 = 'MakeCp' + +name = 'Bracken' +version = '2.6.0' + +homepage = 'https://ccb.jhu.edu/software/bracken/' +description = """Bracken (Bayesian Reestimation of Abundance with KrakEN) +is a highly accurate statistical method that computes the abundance of +species in DNA sequences from a metagenomics sample. Braken uses the +taxonomy labels assigned by Kraken, a highly accurate metagenomics +classification algorithm, to estimate the number of reads originating +from each species present in a sample. Kraken classifies reads to the +best matching location in the taxonomic tree, but does not estimate +abundances of species. We use the Kraken database itself to derive +probabilities that describe how much sequence from each genome is +identical to other genomes in the database, and combine this information +with the assignments for a particular sample to estimate abundance at +the species level, the genus level, or above. Combined with the Kraken +classifier, Bracken produces accurate species- and genus-level abundance +estimates even when a sample contains two or more near-identical species. + +NOTE: Bracken is compatible with both Kraken 1 and Kraken 2. However, the +default kmer length is different depending on the version of Kraken used. +If you use Kraken 1 defaults, specify 31 as the kmer length. If you use +Kraken 2 defaults, specify 35 as the kmer length.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/jenniferlu717/Bracken/archive/'] +sources = ['v%(version)s.tar.gz'] + +checksums = [ + 'fb1837d6f32b8f8c87353b9dc8a23d3418c348b00824a7064eb58f9bab11ea68', # v%(version)s.tar.gz +] + +builddependencies = [('binutils', '2.34')] + +# no need to build in parallel +parallel = 1 + +start_dir = 'src' + +files_to_copy = ['bracken', 'bracken-build', 'src', 'analysis_scripts', 'sample_data'] + +sanity_check_paths = { + 'files': ['bracken', 'bracken-build'], + 'dirs': ['analysis_scripts', 'sample_data', 'src'], +} + +modextrapaths = {'PATH': '.'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/b/binutils/binutils-2.35-GCCcore-10.2.0.eb b/easybuild/easyconfigs/b/binutils/binutils-2.35-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..4f2b121412a --- /dev/null +++ b/easybuild/easyconfigs/b/binutils/binutils-2.35-GCCcore-10.2.0.eb @@ -0,0 +1,35 @@ +name = 'binutils' +version = '2.35' + +homepage = 'https://directory.fsf.org/project/binutils/' +description = "binutils: GNU binary utilities" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['binutils-2.34-readd-avx512-vmovd.patch'] +checksums = [ + 'a3ac62bae4f339855b5449cfa9b49df90c635adbd67ecb8a0e7f3ae86a058da6', # binutils-2.35.tar.gz + '45ecf7f5d198dd446d1a2e2a4d46b2747eb6fb8f2bfa18d7d42769e710e85716', # binutils-2.34-readd-avx512-vmovd.patch +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.7.1'), + # 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.11'), +] + +# 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.35.eb b/easybuild/easyconfigs/b/binutils/binutils-2.35.eb new file mode 100644 index 00000000000..7232cedeeb8 --- /dev/null +++ b/easybuild/easyconfigs/b/binutils/binutils-2.35.eb @@ -0,0 +1,30 @@ +name = 'binutils' +version = '2.35' + +homepage = 'https://directory.fsf.org/project/binutils/' + +description = "binutils: GNU binary utilities" + +toolchain = SYSTEM + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['binutils-2.34-readd-avx512-vmovd.patch'] +checksums = [ + 'a3ac62bae4f339855b5449cfa9b49df90c635adbd67ecb8a0e7f3ae86a058da6', # binutils-2.35.tar.gz + '45ecf7f5d198dd446d1a2e2a4d46b2747eb6fb8f2bfa18d7d42769e710e85716', # binutils-2.34-readd-avx512-vmovd.patch +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.7.1'), + # zlib required, but being linked in statically, so not a runtime dep + ('zlib', '1.2.11'), +] + +# 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/bokeh/bokeh-1.4.0-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/b/bokeh/bokeh-1.4.0-intel-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..af24aac1792 --- /dev/null +++ b/easybuild/easyconfigs/b/bokeh/bokeh-1.4.0-intel-2019b-Python-3.7.4.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonBundle' + +name = 'bokeh' +version = '1.4.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/bokeh/bokeh' +description = "Statistical and novel interactive HTML plots for Python" + +toolchain = {'name': 'intel', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('PyYAML', '5.1.2'), + ('Pillow', '6.2.1'), + ('SciPy-bundle', '2019.10', versionsuffix), +] + +use_pip = True + +exts_list = [ + ('tornado', '6.0.3', { + 'source_urls': ['https://pypi.python.org/packages/source/t/tornado'], + 'checksums': ['c845db36ba616912074c5b1ee897f8e0124df269468f25e4fe21fe72f6edd7a9'], + }), + (name, version, { + 'source_urls': ['https://pypi.python.org/packages/source/b/bokeh'], + 'checksums': ['c60d38a41a777b8147ee4134e6142cea8026b5eebf48149e370c44689869dce7'], + }), +] + +sanity_check_paths = { + 'files': ['bin/bokeh'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/b/bokeh/bokeh-2.0.2-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/b/bokeh/bokeh-2.0.2-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..d0dec501a2c --- /dev/null +++ b/easybuild/easyconfigs/b/bokeh/bokeh-2.0.2-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'bokeh' +version = '2.0.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/bokeh/bokeh' +description = "Statistical and novel interactive HTML plots for Python" + +toolchain = {'name': 'intel', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('PyYAML', '5.3'), + ('Pillow', '7.0.0', versionsuffix), + ('SciPy-bundle', '2020.03', versionsuffix), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('tornado', '6.0.4', { + 'checksums': ['0fe2d45ba43b00a41cd73f8be321a44936dc1aba233dee979f17a042b83eb6dc'], + }), + ('typing-extensions', '3.7.4.2', { + 'source_tmpl': 'typing_extensions-%(version)s.tar.gz', + 'checksums': ['79ee589a3caca649a9bfd2a8de4709837400dfa00b6cc81962a1e6a1815969ae'], + }), + (name, version, { + 'checksums': ['d9248bdb0156797abf6d04b5eac581dcb121f5d1db7acbc13282b0609314893a'], + }), +] + +sanity_check_paths = { + 'files': ['bin/bokeh'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/CGNS/CGNS-4.1.0-intelcuda-2019b.eb b/easybuild/easyconfigs/c/CGNS/CGNS-4.1.0-intelcuda-2019b.eb new file mode 100644 index 00000000000..033c9e01639 --- /dev/null +++ b/easybuild/easyconfigs/c/CGNS/CGNS-4.1.0-intelcuda-2019b.eb @@ -0,0 +1,31 @@ +easyblock = 'CMakeMake' + +name = 'CGNS' +version = '4.1.0' + +homepage = 'https://cgns.github.io/' +description = """The CGNS system is designed to facilitate the exchange of data between sites and applications, + and to help stabilize the archiving of aerodynamic data.""" + +toolchain = {'name': 'intelcuda', 'version': '2019b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/CGNS/CGNS/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4674de1fac3c47998248725fd670377be497f568312c5903d1bb8090a3cf4da0'] + +builddependencies = [ + ('CMake', '3.15.3'), +] + +dependencies = [ + ('HDF5', '1.10.5'), +] + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in ["cgnscheck", "cgnscompress", "cgnsconvert", "cgnsdiff", + "cgnslist", "cgnsnames", "cgnsupdate"]], + 'dirs': [], +} + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/c/CP2K/CP2K-7.1-intel-2020a.eb b/easybuild/easyconfigs/c/CP2K/CP2K-7.1-intel-2020a.eb new file mode 100644 index 00000000000..e165f7b7569 --- /dev/null +++ b/easybuild/easyconfigs/c/CP2K/CP2K-7.1-intel-2020a.eb @@ -0,0 +1,34 @@ +name = 'CP2K' +version = '7.1' + +homepage = 'https://www.cp2k.org/' +description = """CP2K is a freely available (GPL) program, written in Fortran 95, to perform atomistic and molecular + simulations of solid state, liquid, molecular and biological systems. It provides a general framework for different + methods such as e.g. density functional theory (DFT) using a mixed Gaussian and plane waves approach (GPW), and + classical pair and many-body potentials. """ + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/cp2k/cp2k/releases/download/v%(version)s.0/'] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['ccd711a09a426145440e666310dd01cc5772ab103493c4ae6a3470898cd0addb'] + +dependencies = [ + ('Libint', '2.6.0', '-lmax-6-cp2k'), + ('libxc', '4.3.4'), + ('libxsmm', '1.16.1'), + ('FFTW', '3.3.8'), + ('PLUMED', '2.6.0', '-Python-3.8.2'), +] + +builddependencies = [ + ('flex', '2.6.4'), + ('Bison', '3.5.3'), +] + +# regression test reports handful of failures, +# we're assuming those are OK to ignore... +ignore_regtest_fails = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/c/CRPropa/CRPropa-3.1.6-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/c/CRPropa/CRPropa-3.1.6-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..ecdf61f4424 --- /dev/null +++ b/easybuild/easyconfigs/c/CRPropa/CRPropa-3.1.6-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,44 @@ +easyblock = 'CMakePythonPackage' + +name = 'CRPropa' +version = '3.1.6' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://crpropa.desy.de' +description = """CRPropa is a publicly available code to study the propagation of ultra high energy nuclei up to iron + on their voyage through an extra galactic environment.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = ['https://github.com/CRPropa/CRPropa3/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['abc659a240be5c4e770abf0765b470f22dfe1ca68e3db74efab0aa51c4845c1d'] + +builddependencies = [ + ('CMake', '3.16.4'), + ('SWIG', '4.0.1'), + ('pkg-config', '0.29.2'), + ('Doxygen', '1.8.17'), +] + +dependencies = [ + ('Python', '3.8.2'), + ('HDF5', '1.10.6'), + ('SciPy-bundle', '2020.03', versionsuffix), +] + +runtest = False + +sanity_check_commands = [ + """python -c "import crpropa; 'initTurbulence' in dir(crpropa)" """ +] + +sanity_check_paths = { + 'files': ["lib/libcrpropa.so"], + 'dirs': [ + "lib/python%(pyshortver)s/site-packages", + "share" + ], +} + +moduleclass = 'astro' 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 new file mode 100644 index 00000000000..3e46af0a6b5 --- /dev/null +++ b/easybuild/easyconfigs/c/Calib/Calib-0.3.4-GCC-9.3.0.eb @@ -0,0 +1,60 @@ +easyblock = 'MakeCp' + +name = 'Calib' +version = '0.3.4' + +homepage = 'https://github.com/vpc-ccg/calib' +description = """Calib clusters paired-end reads using their barcodes and sequences. Calib is suitable for amplicon +sequencing where a molecule is tagged, then PCR amplified with high depth, also known as Unique Molecule Identifier +(UMI) sequencing.""" + +toolchain = {'name': 'GCC', 'version': '9.3.0'} +toolchainopts = {'cstd': 'c++11'} + +sources = [ + { + 'source_urls': ['https://github.com/vpc-ccg/calib/archive/'], + 'download_filename': 'v%(version)s.tar.gz', + 'filename': SOURCE_TAR_GZ, + }, + { + 'source_urls': ['https://github.com/rvaser/spoa/archive/'], + 'download_filename': '1.1.3.zip', + 'filename': 'SPOA-1.1.3.zip', + }, +] +checksums = [ + 'edfa254d90a7dc7222ce5e7565808250a9535e5e94ec73252110ec7c8aebe920', # Calib-0.3.4.tar.gz + '0a96c175e39b3e8badc7050f00f767f808efbf4b1bfb5c17a02b66b4a9803d94', # SPOA-1.1.3.zip +] + +builddependencies = [ + ('CMake', '3.16.4'), +] + +dependencies = [ + ('zlib', '1.2.11'), +] + +# avoid using hardcoded compiler flags +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 += "cd - && make -C consensus" + +files_to_copy = [(['calib', 'consensus/calib_cons'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/calib', 'bin/calib_cons'], + 'dirs': [], +} + +sanity_check_commands = [ + "calib --help", + "calib_cons --help", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Cartopy/Cartopy-0.18.0-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/c/Cartopy/Cartopy-0.18.0-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..2a1ac84da69 --- /dev/null +++ b/easybuild/easyconfigs/c/Cartopy/Cartopy-0.18.0-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,51 @@ +easyblock = 'PythonBundle' + +name = 'Cartopy' +version = '0.18.0' +versionsuffix = '-Python-%(pyver)s' + +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': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('Fiona', '1.8.16', versionsuffix), + ('GDAL', '3.0.4', versionsuffix), + ('GEOS', '3.8.1', versionsuffix), + ('matplotlib', '3.2.1', versionsuffix), + ('pyproj', '2.6.1.post1', versionsuffix), + ('SciPy-bundle', '2020.03', versionsuffix), + ('Shapely', '1.7.1', versionsuffix), + ('lxml', '4.5.2'), + ('Pillow', '7.0.0', versionsuffix), + ('PROJ', '7.0.0'), + ('PyYAML', '5.3'), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('OWSLib', '0.20.0', { + 'checksums': ['334988857b260c8cdf1f6698d07eab61839c51acb52ee10eed1275439200a40e'], + }), + ('pyepsg', '0.4.0', { + 'checksums': ['2d08fad1e7a8b47a90a4e43da485ba95705923425aefc4e2a3efa540dbd470d7'], + }), + ('pykdtree', '1.3.1', { + 'checksums': ['0d49d3bbfa0366dbe29176754ec86df75114a25525b530dcbbb75d3ac4c263e9'], + }), + ('pyshp', '2.1.0', { + 'modulename': 'shapefile', + 'checksums': ['e65c7f24d372b97d0920b864bbeb78322bb37b83f2606e2a2212631d5d51e5c0'], + }), + (name, version, { + 'checksums': ['7ffa317e8f8011e0d965a3ef1179e57a049f77019867ed677d49dcc5c0744434'], + }), +] + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/c/Cbc/Cbc-2.10.3-foss-2018b.eb b/easybuild/easyconfigs/c/Cbc/Cbc-2.10.3-foss-2018b.eb index b36fd33b0be..034aeae7eb6 100644 --- a/easybuild/easyconfigs/c/Cbc/Cbc-2.10.3-foss-2018b.eb +++ b/easybuild/easyconfigs/c/Cbc/Cbc-2.10.3-foss-2018b.eb @@ -40,17 +40,16 @@ configopts += '--with-mumps-lib="-lcmumps -ldmumps -lsmumps -lzmumps -lmumps_com # Disable GLPK, dependencies have to be built with it as well configopts += '--without-glpk ' # Use CoinUtils from EB -configopts += '--with-coinutils-lib="-lCoinUtils" --with-coinutils-incdir=$EBROOTCOINUTILS/include/coin ' +configopts += '--with-coinutils-lib="-lCoinUtils" ' configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data' # Use Clp from EB -configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" --with-clp-incdir="$EBROOTCLP/include/coin" ' +configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" ' configopts += '--with-clp-datadir=$EBROOTCLP/share/coin/Data ' # Use Osi from EB (also needs links to Clp due to OsiClpSolver) configopts += '--with-osi-lib="-lOsiClp -lClpSolver -lClp -lOsi" ' -configopts += '--with-osi-incdir="$EBROOTOSI/include/coin -I$EBROOTCLP/include/coin" ' configopts += '--with-osi-datadir=$EBROOTOSI/share/coin/Data ' # Use Cgl from EB -configopts += '--with-cgl-lib="-lCgl" --with-cgl-incdir="$EBROOTCGL/include/coin" ' +configopts += '--with-cgl-lib="-lCgl" ' configopts += '--with-cgl-datadir=$EBROOTCGL/share/coin/Data ' sanity_check_paths = { @@ -58,4 +57,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = "math" diff --git a/easybuild/easyconfigs/c/CellRanger-ATAC/CellRanger-ATAC-1.2.0.eb b/easybuild/easyconfigs/c/CellRanger-ATAC/CellRanger-ATAC-1.2.0.eb new file mode 100644 index 00000000000..514acb0ac45 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRanger-ATAC/CellRanger-ATAC-1.2.0.eb @@ -0,0 +1,33 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Ravi Tripathi +# Email: ravi89@uab.edu + +easyblock = "Tarball" + +name = "CellRanger-ATAC" +version = "1.2.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 = [ + "346ef2105b6921ba509db1f7cbc2b2e2f2d89c48708dc7fc206f45e49f8e88b5" +] + +keepsymlinks = True + +modextrapaths = {"PATH": ""} + +sanity_check_paths = { + "files": ["cellranger-atac", "cellranger-atac-shell"], + "dirs": ["bwa", "miniconda-atac-cs", "cellranger-atac-tiny-fastq"], +} + +sanity_check_commands = ["cellranger-atac testrun --id=tiny"] + +moduleclass = "bio" diff --git a/easybuild/easyconfigs/c/CellRanger/CellRanger-4.0.0.eb b/easybuild/easyconfigs/c/CellRanger/CellRanger-4.0.0.eb new file mode 100644 index 00000000000..aa44b1cd5a0 --- /dev/null +++ b/easybuild/easyconfigs/c/CellRanger/CellRanger-4.0.0.eb @@ -0,0 +1,29 @@ +# The STAR binary included in this version has been vectorized with AVX +# hence it is not recommended for systems that do not support it. + +easyblock = 'Tarball' + +name = 'CellRanger' +version = '4.0.0' + +homepage = 'https://support.10xgenomics.com/single-cell-gene-expression/software/pipelines/latest/what-is-cell-ranger' +description = """Cell Ranger is a set of analysis pipelines that process Chromium + single-cell RNA-seq output to align reads, generate gene-cell matrices and perform + clustering and gene expression analysis.""" + +toolchain = SYSTEM + +# Download manually from https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/latest +sources = [SOURCELOWER_TAR_GZ] +checksums = ['e8e43e91538cba667836d437ac1d5ca675ea9d1acd977ac967f7b65c12254a21'] + +keepsymlinks = True + +sanity_check_paths = { + 'files': ["bin/cellranger"], + 'dirs': ["bin/rna", "bin/tenkit"], +} + +sanity_check_commands = ['cellranger testrun --id=tiny'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Cgl/Cgl-0.60.2-foss-2018b.eb b/easybuild/easyconfigs/c/Cgl/Cgl-0.60.2-foss-2018b.eb index c594c967513..1ff50a9bbd0 100644 --- a/easybuild/easyconfigs/c/Cgl/Cgl-0.60.2-foss-2018b.eb +++ b/easybuild/easyconfigs/c/Cgl/Cgl-0.60.2-foss-2018b.eb @@ -30,14 +30,13 @@ dependencies = [ ] # Use CoinUtils from EB -configopts = '--with-coinutils-lib="-lCoinUtils" --with-coinutils-incdir=$EBROOTCOINUTILS/include/coin ' +configopts = '--with-coinutils-lib="-lCoinUtils" ' configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data' # Use Clp from EB -configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" --with-clp-incdir="$EBROOTCLP/include/coin" ' +configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" ' configopts += '--with-clp-datadir=$EBROOTCLP/share/coin/Data ' # Use Osi from EB (also needs links to Clp due to OsiClpSolver) configopts += '--with-osi-lib="-lOsiClp -lClpSolver -lClp -lOsi" ' -configopts += '--with-osi-incdir="$EBROOTOSI/include/coin -I$EBROOTCLP/include/coin" ' configopts += '--with-osi-datadir=$EBROOTOSI/share/coin/Data ' sanity_check_paths = { @@ -45,4 +44,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = "math" diff --git a/easybuild/easyconfigs/c/Circos/Circos-0.69-9-GCCcore-9.3.0.eb b/easybuild/easyconfigs/c/Circos/Circos-0.69-9-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..9181cdfdc7f --- /dev/null +++ b/easybuild/easyconfigs/c/Circos/Circos-0.69-9-GCCcore-9.3.0.eb @@ -0,0 +1,41 @@ +## +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Author: Jonas Demeulemeester +# The Francis Crick Insitute, London, UK +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'Tarball' + +name = 'Circos' +version = '0.69-9' + +homepage = 'http://www.circos.ca/' +description = """Circos is a software package for visualizing data and information. + It visualizes data in a circular layout - this makes Circos ideal for exploring + relationships between objects or positions.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['http://circos.ca/distribution/'] +sources = [SOURCELOWER_TGZ] +checksums = ['34d8d7ebebf3f553d62820f8f4a0a57814b610341f836b4740c46c3057f789d2'] + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('Perl', '5.30.2'), + ('GD', '2.71'), +] + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': ['lib/%(name)s'], +} + +modextrapaths = {'PERL5LIB': 'lib'} + +sanity_check_commands = [('perl', '-e "use Circos"')] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/Clang/Clang-10.0.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/c/Clang/Clang-10.0.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..15b763db99d --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-10.0.0-GCCcore-9.3.0.eb @@ -0,0 +1,69 @@ +## +# 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 = '10.0.0' + +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': '9.3.0'} +# Do not set optarch to True: it will cause the build to fail +toolchainopts = {'optarch': False} + +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', +] +patches = ['libcxx-%(version)s-ppc64le.patch'] +checksums = [ + 'df83a44b3a9a71029049ec101fb0077ecbbdf5fe41e395215025779099a98fdf', # llvm-10.0.0.src.tar.xz + '885b062b00e903df72631c5f98b9579ed1ed2790f74e5646b4234fa084eacb21', # clang-10.0.0.src.tar.xz + '6a7da64d3a0a7320577b68b9ca4933bdcab676e898b759850e827333c3282c75', # compiler-rt-10.0.0.src.tar.xz + '35fba6ed628896fe529be4c10407f1b1c8a7264d40c76bced212180e701b4d97', # polly-10.0.0.src.tar.xz + '3b9ff29a45d0509a1e9667a0feb43538ef402ea8cfc7df3758a01f20df08adfa', # openmp-10.0.0.src.tar.xz + 'b9a0d7c576eeef05bc06d6e954938a01c5396cee1d1e985891e0b1cf16e3d708', # lld-10.0.0.src.tar.xz + '270f8a3f176f1981b0f6ab8aa556720988872ec2b48ed3b605d0ced8d09156c7', # libcxx-10.0.0.src.tar.xz + 'e71bac75a88c9dde455ad3f2a2b449bf745eafd41d2d8432253b2964e0ca14e1', # libcxxabi-10.0.0.src.tar.xz + 'a424a9eb7f377b4f01d8c9b27fdd78e6a51a53819b263d2ca6d40a0e2368a330', # libcxx-10.0.0-ppc64le.patch +] + +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.34'), + ('GMP', '6.2.0'), +] + +builddependencies = [ + ('CMake', '3.16.4'), + ('Python', '2.7.18'), + ('libxml2', '2.9.10'), +] + +assertions = True +usepolly = True +build_lld = True +libcxx = True +enable_rtti = True + +skip_all_tests = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clang/Clang-10.0.1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/c/Clang/Clang-10.0.1-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..de1d96eb850 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-10.0.1-GCCcore-9.3.0.eb @@ -0,0 +1,69 @@ +## +# 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 = '10.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': '9.3.0'} +# Do not set optarch to True: it will cause the build to fail +toolchainopts = {'optarch': False} + +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', +] +patches = ['libcxx-10.0.0-ppc64le.patch'] +checksums = [ + 'c5d8e30b57cbded7128d78e5e8dad811bff97a8d471896812f57fa99ee82cdf3', # llvm-10.0.1.src.tar.xz + 'f99afc382b88e622c689b6d96cadfa6241ef55dca90e87fc170352e12ddb2b24', # clang-10.0.1.src.tar.xz + 'd90dc8e121ca0271f0fd3d639d135bfaa4b6ed41e67bd6eb77808f72629658fa', # compiler-rt-10.0.1.src.tar.xz + 'd2fb0bb86b21db1f52402ba231da7c119c35c21dfb843c9496fe901f2d6aa25a', # polly-10.0.1.src.tar.xz + 'd19f728c8e04fb1e94566c8d76aef50ec926cd2f95ef3bf1e0a5de4909b28b44', # openmp-10.0.1.src.tar.xz + '591449e0aa623a6318d5ce2371860401653c48bb540982ccdd933992cb88df7a', # lld-10.0.1.src.tar.xz + 'def674535f22f83131353b3c382ccebfef4ba6a35c488bdb76f10b68b25be86c', # libcxx-10.0.1.src.tar.xz + 'a97ef810b2e9fb70e8f7e317b74e646ed4944f488b02ac5ddd9c99e385381a7b', # libcxxabi-10.0.1.src.tar.xz + 'a424a9eb7f377b4f01d8c9b27fdd78e6a51a53819b263d2ca6d40a0e2368a330', # libcxx-10.0.0-ppc64le.patch +] + +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.34'), + ('GMP', '6.2.0'), +] + +builddependencies = [ + ('CMake', '3.16.4'), + ('Python', '2.7.18'), + ('libxml2', '2.9.10'), +] + +assertions = True +usepolly = True +build_lld = True +libcxx = True +enable_rtti = True + +skip_all_tests = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clang/Clang-8.0.1-GCC-8.2.0-2.31.1-CUDA-10.1.105.eb b/easybuild/easyconfigs/c/Clang/Clang-8.0.1-GCC-8.2.0-2.31.1-CUDA-10.1.105.eb new file mode 100644 index 00000000000..456d8764512 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-8.0.1-GCC-8.2.0-2.31.1-CUDA-10.1.105.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 = '8.0.1' + +local_cudaver = '10.1.105' +versionsuffix = '-CUDA-%s' % (local_cudaver) + +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': 'GCC', 'version': '8.2.0-2.31.1'} +# Do not set optarch to True: it will cause the build to fail +toolchainopts = {'optarch': False} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-%(version)s.src.tar.xz', + 'cfe-%(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', +] +patches = ['libcxx-8.0.0-ppc64le.patch'] +checksums = [ + '44787a6d02f7140f145e2250d56c9f849334e11f9ae379827510ed72f12b75e7', # llvm-8.0.1.src.tar.xz + '70effd69f7a8ab249f66b0a68aba8b08af52aa2ab710dfb8a0fba102685b1646', # cfe-8.0.1.src.tar.xz + '11828fb4823387d820c6715b25f6b2405e60837d12a7469e7a8882911c721837', # compiler-rt-8.0.1.src.tar.xz + 'e8a1f7e8af238b32ce39ab5de1f3317a2e3f7d71a8b1b8bbacbd481ac76fd2d1', # polly-8.0.1.src.tar.xz + '3e85dd3cad41117b7c89a41de72f2e6aa756ea7b4ef63bb10dcddf8561a7722c', # openmp-8.0.1.src.tar.xz + '9fba1e94249bd7913e8a6c3aadcb308b76c8c3d83c5ce36c99c3f34d73873d88', # lld-8.0.1.src.tar.xz + '7f0652c86a0307a250b5741ab6e82bb10766fb6f2b5a5602a63f30337e629b78', # libcxx-8.0.1.src.tar.xz + 'b75bf3c8dc506e7d950d877eefc8b6120a4651aaa110f5805308861f2cfaf6ef', # libcxxabi-8.0.1.src.tar.xz + '173da6b7831a66d2f7d064f0ec3f6c56645a7f1352b709ceb9a55416fe6c93ce', # libcxx-8.0.0-ppc64le.patch +] + +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.31.1'), + ('GMP', '6.1.2'), + ('CUDA', local_cudaver), +] + +builddependencies = [ + ('CMake', '3.13.3'), + ('Python', '2.7.15'), + ('libxml2', '2.9.8'), +] + +# Set the c++ std for NVCC or the build fails on ppc64le looking for __ieee128 +configopts = "-DCUDA_NVCC_FLAGS=-std=c++11" + +assertions = True +usepolly = True +build_lld = True +libcxx = True +enable_rtti = True + +skip_all_tests = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clang/Clang-8.0.1-GCC-8.3.0-CUDA-10.1.243.eb b/easybuild/easyconfigs/c/Clang/Clang-8.0.1-GCC-8.3.0-CUDA-10.1.243.eb new file mode 100644 index 00000000000..f85720c3a96 --- /dev/null +++ b/easybuild/easyconfigs/c/Clang/Clang-8.0.1-GCC-8.3.0-CUDA-10.1.243.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 = '8.0.1' + +local_cudaver = '10.1.243' +versionsuffix = '-CUDA-%s' % (local_cudaver) + +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': 'GCC', 'version': '8.3.0'} +# Do not set optarch to True: it will cause the build to fail +toolchainopts = {'optarch': False} + +source_urls = ["https://github.com/llvm/llvm-project/releases/download/llvmorg-%(version)s"] +sources = [ + 'llvm-%(version)s.src.tar.xz', + 'cfe-%(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', +] +patches = ['libcxx-8.0.0-ppc64le.patch'] +checksums = [ + '44787a6d02f7140f145e2250d56c9f849334e11f9ae379827510ed72f12b75e7', # llvm-8.0.1.src.tar.xz + '70effd69f7a8ab249f66b0a68aba8b08af52aa2ab710dfb8a0fba102685b1646', # cfe-8.0.1.src.tar.xz + '11828fb4823387d820c6715b25f6b2405e60837d12a7469e7a8882911c721837', # compiler-rt-8.0.1.src.tar.xz + 'e8a1f7e8af238b32ce39ab5de1f3317a2e3f7d71a8b1b8bbacbd481ac76fd2d1', # polly-8.0.1.src.tar.xz + '3e85dd3cad41117b7c89a41de72f2e6aa756ea7b4ef63bb10dcddf8561a7722c', # openmp-8.0.1.src.tar.xz + '9fba1e94249bd7913e8a6c3aadcb308b76c8c3d83c5ce36c99c3f34d73873d88', # lld-8.0.1.src.tar.xz + '7f0652c86a0307a250b5741ab6e82bb10766fb6f2b5a5602a63f30337e629b78', # libcxx-8.0.1.src.tar.xz + 'b75bf3c8dc506e7d950d877eefc8b6120a4651aaa110f5805308861f2cfaf6ef', # libcxxabi-8.0.1.src.tar.xz + '173da6b7831a66d2f7d064f0ec3f6c56645a7f1352b709ceb9a55416fe6c93ce', # libcxx-8.0.0-ppc64le.patch +] + +dependencies = [ + # since Clang is a compiler, binutils is a runtime dependency too + ('binutils', '2.32'), + ('GMP', '6.1.2'), + ('CUDA', local_cudaver), +] + +builddependencies = [ + ('CMake', '3.15.3'), + ('Python', '2.7.16'), + ('libxml2', '2.9.9'), +] + +# Set the c++ std for NVCC or the build fails on ppc64le looking for __ieee128 +configopts = "-DCUDA_NVCC_FLAGS=-std=c++11" + +assertions = True +usepolly = True +build_lld = True +libcxx = True +enable_rtti = True + +skip_all_tests = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/c/Clp/Clp-1.17.3-foss-2018b.eb b/easybuild/easyconfigs/c/Clp/Clp-1.17.3-foss-2018b.eb index fa180250f60..471b3b05827 100644 --- a/easybuild/easyconfigs/c/Clp/Clp-1.17.3-foss-2018b.eb +++ b/easybuild/easyconfigs/c/Clp/Clp-1.17.3-foss-2018b.eb @@ -38,10 +38,10 @@ configopts += '--with-mumps-lib="-lcmumps -ldmumps -lsmumps -lzmumps -lmumps_com # Disable GLPK because Clp requires headers from its sources configopts += '--without-glpk ' # Use CoinUtils from EB -configopts += '--with-coinutils-lib="-lCoinUtils" --with-coinutils-incdir=$EBROOTCOINUTILS/include/coin ' +configopts += '--with-coinutils-lib="-lCoinUtils" ' configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data' # Use Osi from EB -configopts += '--with-osi-lib="-lOsi" --with-osi-incdir=$EBROOTOSI/include/coin ' +configopts += '--with-osi-lib="-lOsi" ' configopts += '--with-osi-datadir=$EBROOTOSI/share/coin/Data ' sanity_check_paths = { @@ -49,4 +49,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = "math" diff --git a/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-GCCcore-7.3.0.eb b/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-GCCcore-7.3.0.eb index 948562cbde6..68143638b83 100644 --- a/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-GCCcore-7.3.0.eb @@ -32,4 +32,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = "math" diff --git a/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-foss-2018b.eb b/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-foss-2018b.eb index c3ede0101a0..342a379bcfa 100644 --- a/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-foss-2018b.eb +++ b/easybuild/easyconfigs/c/CoinUtils/CoinUtils-2.11.3-foss-2018b.eb @@ -33,4 +33,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = "math" diff --git a/easybuild/easyconfigs/c/Cufflinks/Cufflinks-2.2.1-gompi-2019b.eb b/easybuild/easyconfigs/c/Cufflinks/Cufflinks-2.2.1-gompi-2019b.eb new file mode 100644 index 00000000000..81654b4596c --- /dev/null +++ b/easybuild/easyconfigs/c/Cufflinks/Cufflinks-2.2.1-gompi-2019b.eb @@ -0,0 +1,43 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +name = 'Cufflinks' +version = '2.2.1' + +homepage = 'http://cole-trapnell-lab.github.io/%(namelower)s/' +description = "Transcript assembly, differential expression, and differential regulation for RNA-Seq" + +toolchain = {'name': 'gompi', 'version': '2019b'} +toolchainopts = {'pic': True} + +source_urls = ['http://cole-trapnell-lab.github.io/%(namelower)s/assets/downloads/'] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + '%(name)s-%(version)s_fix-boost-inc.patch', + '%(name)s-%(version)s_fix-gcc7.patch', + '%(name)s-%(version)s_fix-liblemon.patch', +] +checksums = [ + 'e8316b66177914f14b3a0c317e436d386a46c4c212ca1b2326f89f8a2e08d5ae', # cufflinks-2.2.1.tar.gz + '9199390a11376ffba0583741752faca277c82ce3ab665a66ba8dc5991c45088f', # Cufflinks-2.2.1_fix-boost-inc.patch + '61f55cf4985bbea410d65f1b75e5afda85ba4e468f6ba8f852b0284d16cd29ab', # Cufflinks-2.2.1_fix-gcc7.patch + '39c5c973d3b762e7102e811187b3954362e728c6bdb9d4b38d8c8e9b043457aa', # Cufflinks-2.2.1_fix-liblemon.patch +] + +builddependencies = [ + ('Eigen', '3.3.7', '', True), + ('SAMtools', '0.1.20'), +] +dependencies = [ + ('Boost', '1.71.0'), + ('zlib', '1.2.11'), +] + +preconfigopts = 'env CPPFLAGS=-I$EBROOTEIGEN/include' +configopts = '--with-boost=$EBROOTBOOST --with-bam-libdir=${EBROOTSAMTOOLS}/lib' + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'], + 'dirs': [] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/ccache/ccache-3.7.11.eb b/easybuild/easyconfigs/c/ccache/ccache-3.7.11.eb new file mode 100644 index 00000000000..0f10d2e601c --- /dev/null +++ b/easybuild/easyconfigs/c/ccache/ccache-3.7.11.eb @@ -0,0 +1,41 @@ +## +# 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$ +## +easyblock = 'ConfigureMake' + +name = 'ccache' +version = '3.7.11' + +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 = SYSTEM + +source_urls = ['https://github.com/ccache/ccache/releases/download/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['34309a59d4b6b6b33756366aa9d3144a4655587be9f914476b4c0e2d36365f01'] + +osdependencies = [('glibc-static', 'libc6-dev')] + +local_gccver = '9.3.0' +builddependencies = [ + ('GCC', local_gccver), + ('Autotools', '20180311', '', ('GCCcore', local_gccver)), + ('zlib', '1.2.11', '', ('GCCcore', local_gccver)), +] + +buildopts = 'LDFLAGS="-static"' + +sanity_check_paths = { + 'files': ['bin/ccache'], + 'dirs': [] +} +sanity_check_commands = ['ccache --help'] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/cdsapi/cdsapi-0.3.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/c/cdsapi/cdsapi-0.3.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..5f0ca036663 --- /dev/null +++ b/easybuild/easyconfigs/c/cdsapi/cdsapi-0.3.0-GCCcore-9.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'cdsapi' +version = '0.3.0' + +homepage = 'https://pypi.org/project/cdsapi' +description = "Climate Data Store API" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['1f89293459d9b6560426261d8e9fd1e32d8dcaf6f47342b174835bafc0dd06a1'] + +multi_deps = {'Python': ['3.8.2', '2.7.18']} + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('tqdm', '4.47.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-foss-2019b.eb b/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-foss-2019b.eb new file mode 100644 index 00000000000..9d4f7394fad --- /dev/null +++ b/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-foss-2019b.eb @@ -0,0 +1,40 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# +# Author: Ake Sandgren, HPC2N, Umea University + +easyblock = 'ConfigureMake' + +name = 'ctffind' +version = '4.1.14' + +homepage = 'https://grigoriefflab.umassmed.edu/ctffind4' +description = """Program for finding CTFs of electron micrographs.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'openmp': True} + +source_urls = ['https://grigoriefflab.umassmed.edu/sites/default/files/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['db17b2ebeb3c3b2b3764e42b820cd50d19ccccf6956c64257bfe5d5ba6b40cb5'] + +dependencies = [ + ('zlib', '1.2.11'), + ('libjpeg-turbo', '2.0.3'), + ('LibTIFF', '4.0.10'), + ('GSL', '2.6'), + ('wxWidgets', '3.1.3'), +] + +configopts = '--enable-openmp ' + +parallel = 1 + +sanity_check_paths = { + 'files': ['bin/ctffind'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-fosscuda-2019b.eb b/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-fosscuda-2019b.eb new file mode 100644 index 00000000000..0df2cde3c70 --- /dev/null +++ b/easybuild/easyconfigs/c/ctffind/ctffind-4.1.14-fosscuda-2019b.eb @@ -0,0 +1,40 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# +# Author: Ake Sandgren, HPC2N, Umea University + +easyblock = 'ConfigureMake' + +name = 'ctffind' +version = '4.1.14' + +homepage = 'https://grigoriefflab.umassmed.edu/ctffind4' +description = """Program for finding CTFs of electron micrographs.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} +toolchainopts = {'openmp': True} + +source_urls = ['https://grigoriefflab.umassmed.edu/sites/default/files/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['db17b2ebeb3c3b2b3764e42b820cd50d19ccccf6956c64257bfe5d5ba6b40cb5'] + +dependencies = [ + ('zlib', '1.2.11'), + ('libjpeg-turbo', '2.0.3'), + ('LibTIFF', '4.0.10'), + ('GSL', '2.6'), + ('wxWidgets', '3.1.3'), +] + +configopts = '--enable-openmp ' + +parallel = 1 + +sanity_check_paths = { + 'files': ['bin/ctffind'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-6.4.0.eb b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-6.4.0.eb index b0814287ecb..b9356257912 100644 --- a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-6.4.0.eb @@ -1,7 +1,7 @@ name = 'Doxygen' version = '1.8.14' -homepage = 'http://www.doxygen.org' +homepage = 'https://www.doxygen.org' description = """ Doxygen is a documentation system for C++, C, Java, Objective-C, Python, @@ -22,5 +22,8 @@ builddependencies = [ ('flex', '2.6.4'), ('pkg-config', '0.29.2'), ] +dependencies = [('libiconv', '1.15')] + +configopts = "-DICONV_DIR=$EBROOTLIBICONV -DICONV_IN_GLIBC=OFF" moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.2.0.eb b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.2.0.eb index d3348e148d7..da0eb0a7ecd 100644 --- a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.2.0.eb +++ b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.2.0.eb @@ -1,7 +1,7 @@ name = 'Doxygen' version = '1.8.14' -homepage = 'http://www.doxygen.org' +homepage = 'https://www.doxygen.org' description = """Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#, and to some extent D.""" @@ -13,9 +13,13 @@ checksums = ['d1757e02755ef6f56fd45f1f4398598b920381948d6fcfa58f5ca6aa56f59d4d'] builddependencies = [ ('binutils', '2.29'), - ('flex', '2.6.4'), ('Bison', '3.0.4'), - ('CMake', '3.10.2') + ('CMake', '3.10.2'), + ('flex', '2.6.4'), + ('pkg-config', '0.29.2'), ] +dependencies = [('libiconv', '1.15')] + +configopts = "-DICONV_DIR=$EBROOTLIBICONV -DICONV_IN_GLIBC=OFF" moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.3.0.eb b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.3.0.eb index e21730d3a07..86481e94c1f 100644 --- a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.14-GCCcore-7.3.0.eb @@ -1,7 +1,7 @@ name = 'Doxygen' version = '1.8.14' -homepage = 'http://www.doxygen.org' +homepage = 'https://www.doxygen.org' description = """ Doxygen is a documentation system for C++, C, Java, Objective-C, Python, @@ -22,5 +22,8 @@ builddependencies = [ ('flex', '2.6.4'), ('pkg-config', '0.29.2'), ] +dependencies = [('libiconv', '1.15')] + +configopts = "-DICONV_DIR=$EBROOTLIBICONV -DICONV_IN_GLIBC=OFF" moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.15-GCCcore-8.2.0.eb b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.15-GCCcore-8.2.0.eb index dcf50722de2..425d67afbde 100644 --- a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.15-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.15-GCCcore-8.2.0.eb @@ -1,7 +1,7 @@ name = 'Doxygen' version = '1.8.15' -homepage = 'http://www.doxygen.org' +homepage = 'https://www.doxygen.org' description = """ Doxygen is a documentation system for C++, C, Java, Objective-C, Python, @@ -22,5 +22,8 @@ builddependencies = [ ('flex', '2.6.4'), ('pkg-config', '0.29.2'), ] +dependencies = [('libiconv', '1.16')] + +configopts = "-DICONV_DIR=$EBROOTLIBICONV -DICONV_IN_GLIBC=OFF" moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.16-GCCcore-8.3.0.eb b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.16-GCCcore-8.3.0.eb index 46152940e9a..10f9b8d09f6 100644 --- a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.16-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.16-GCCcore-8.3.0.eb @@ -22,5 +22,8 @@ builddependencies = [ ('flex', '2.6.4'), ('pkg-config', '0.29.2'), ] +dependencies = [('libiconv', '1.16')] + +configopts = "-DICONV_DIR=$EBROOTLIBICONV -DICONV_IN_GLIBC=OFF" moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.17-GCCcore-9.3.0.eb b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.17-GCCcore-9.3.0.eb index 6eb61cc1dba..3d72f0970bd 100644 --- a/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.17-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/d/Doxygen/Doxygen-1.8.17-GCCcore-9.3.0.eb @@ -21,6 +21,8 @@ builddependencies = [ ('flex', '2.6.4'), ('pkg-config', '0.29.2'), ] +dependencies = [('libiconv', '1.16')] +configopts = "-DICONV_DIR=$EBROOTLIBICONV -DICONV_IN_GLIBC=OFF" moduleclass = 'devel' diff --git a/easybuild/easyconfigs/d/dask/dask-2.18.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/d/dask/dask-2.18.1-foss-2020a-Python-3.8.2.eb index 220d90d3e14..b4742991db2 100644 --- a/easybuild/easyconfigs/d/dask/dask-2.18.1-foss-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/d/dask/dask-2.18.1-foss-2020a-Python-3.8.2.eb @@ -43,9 +43,6 @@ exts_list = [ ('tblib', '1.6.0', { 'checksums': ['229bee3754cb5d98b4837dd5c4405e80cfab57cb9f93220410ad367f8b352344'], }), - ('sortedcontainers', '2.2.2', { - 'checksums': ['4e73a757831fc3ca4de2859c422564239a31d8213d09a2a666e375807034d2ba'], - }), ('msgpack', '1.0.0', { 'checksums': ['9534d5cc480d4aff720233411a1f765be90885750b07df772380b34c10ecb5c0'], }), diff --git a/easybuild/easyconfigs/d/dask/dask-2.18.1-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/d/dask/dask-2.18.1-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..0969954ac6b --- /dev/null +++ b/easybuild/easyconfigs/d/dask/dask-2.18.1-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,82 @@ +easyblock = 'PythonBundle' + +name = 'dask' +version = '2.18.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://dask.org/' +description = """Dask natively scales Python. Dask provides advanced parallelism for analytics, enabling performance + at scale for the tools you love.""" + +toolchain = {'name': 'intel', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('PyYAML', '5.3'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('bokeh', '2.0.2', versionsuffix), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('fsspec', '0.7.4', { + 'checksums': ['7075fde6d617cd3a97eac633d230d868121a188a46d16a0dcb484eea0cf2b955'], + }), + ('toolz', '0.10.0', { + 'checksums': ['08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560'], + }), + ('locket', '0.2.0', { + 'checksums': ['1fee63c1153db602b50154684f5725564e63a0f6d09366a1cb13dffcec179fb4'], + }), + ('partd', '1.1.0', { + 'checksums': ['6e258bf0810701407ad1410d63d1a15cfd7b773fd9efe555dac6bb82cc8832b0'], + }), + ('HeapDict', '1.0.1', { + 'checksums': ['8495f57b3e03d8e46d5f1b2cc62ca881aca392fd5cc048dc0aa2e1a6d23ecdb6'], + }), + ('zict', '2.0.0', { + 'checksums': ['8e2969797627c8a663575c2fc6fcb53a05e37cdb83ee65f341fc6e0c3d0ced16'], + }), + ('tblib', '1.6.0', { + 'checksums': ['229bee3754cb5d98b4837dd5c4405e80cfab57cb9f93220410ad367f8b352344'], + }), + ('msgpack', '1.0.0', { + 'checksums': ['9534d5cc480d4aff720233411a1f765be90885750b07df772380b34c10ecb5c0'], + }), + ('cloudpickle', '1.4.1', { + 'checksums': ['0b6258a20a143603d53b037a20983016d4e978f554ec4f36b3d0895b947099ae'], + }), + (name, version, { + 'checksums': ['8ed21e2344419fad7c6f648123f6f56cf2480d0ac4fae92d9063adb321f1c490'], + }), + ('distributed', '2.18.0', { + 'checksums': ['902f098fb7558f035333804a5aeba2fb26a2a715388808205a17cbb2e02e0558'], + }), + ('dask-mpi', '2.0.0', { + 'checksums': ['774cd2d69e5f7154e1fa133c22498062edd31507ffa2ea19f4ab4d8975c27bc3'], + }), + ('immutables', '0.14', { + 'checksums': ['a0a1cc238b678455145bae291d8426f732f5255537ed6a5b7645949704c70a78'], + }), + ('contextvars', '2.4', { + 'checksums': ['f38c908aaa59c14335eeea12abea5f443646216c4e29380d7bf34d2018e2c39e'], + }), + ('docrep', '0.2.7', { + 'checksums': ['c48939ae14d79172839a5bbaf5a570add47f6cc44d2c18f6b1fac8f1c38dec4d'], + }), + ('dask-jobqueue', '0.7.1', { + 'checksums': ['d32ddf3e3c7db29ace102037fa5f61c8db2d945176454dc316a6ffdb8bbfe88b'], + }), +] + +sanity_check_paths = { + 'files': ['bin/dask-%s' % x for x in ['mpi', 'scheduler', 'ssh', 'worker']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/dask/dask-2.8.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/d/dask/dask-2.8.0-foss-2019b-Python-3.7.4.eb index 699cbe5c4e1..0b9566bb78a 100644 --- a/easybuild/easyconfigs/d/dask/dask-2.8.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/d/dask/dask-2.8.0-foss-2019b-Python-3.7.4.eb @@ -18,6 +18,7 @@ dependencies = [ ] use_pip = True +sanity_pip_check = True exts_default_options = {'source_urls': [PYPI_SOURCE]} @@ -43,9 +44,6 @@ exts_list = [ ('tblib', '1.5.0', { 'checksums': ['1735ff8fd6217446384b5afabead3b142cf1a52d242cfe6cab4240029d6d131a'], }), - ('sortedcontainers', '2.1.0', { - 'checksums': ['974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a'], - }), ('msgpack', '0.6.2', { 'checksums': ['ea3c2f859346fcd55fc46e96885301d9c2f7a36d453f5d8f2967840efa1e1830'], }), diff --git a/easybuild/easyconfigs/d/dask/dask-2.8.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/d/dask/dask-2.8.0-fosscuda-2019b-Python-3.7.4.eb index 513e8d9891c..2b841e88aa9 100644 --- a/easybuild/easyconfigs/d/dask/dask-2.8.0-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/d/dask/dask-2.8.0-fosscuda-2019b-Python-3.7.4.eb @@ -44,9 +44,6 @@ exts_list = [ ('tblib', '1.5.0', { 'checksums': ['1735ff8fd6217446384b5afabead3b142cf1a52d242cfe6cab4240029d6d131a'], }), - ('sortedcontainers', '2.1.0', { - 'checksums': ['974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a'], - }), ('msgpack', '0.6.2', { 'checksums': ['ea3c2f859346fcd55fc46e96885301d9c2f7a36d453f5d8f2967840efa1e1830'], }), diff --git a/easybuild/easyconfigs/d/dask/dask-2.8.0-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/d/dask/dask-2.8.0-intel-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..20a80482a56 --- /dev/null +++ b/easybuild/easyconfigs/d/dask/dask-2.8.0-intel-2019b-Python-3.7.4.eb @@ -0,0 +1,75 @@ +easyblock = 'PythonBundle' + +name = 'dask' +version = '2.8.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://dask.org/' +description = """Dask natively scales Python. Dask provides advanced parallelism for analytics, enabling performance + at scale for the tools you love.""" + +toolchain = {'name': 'intel', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('PyYAML', '5.1.2'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('bokeh', '1.4.0', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('fsspec', '0.6.0', { + 'checksums': ['5108f9192b7b2c6a03e69d5084d5fc88c05d4312724a38efce37c9f3a6d360fa'], + }), + ('toolz', '0.10.0', { + 'checksums': ['08fdd5ef7c96480ad11c12d472de21acd32359996f69a5259299b540feba4560'], + }), + ('locket', '0.2.0', { + 'checksums': ['1fee63c1153db602b50154684f5725564e63a0f6d09366a1cb13dffcec179fb4'], + }), + ('partd', '1.0.0', { + 'checksums': ['54fd91bc3b9c38159c790cd16950dbca6b019a2ead4c51dee4f9efc884f8ce0e'], + }), + ('HeapDict', '1.0.1', { + 'checksums': ['8495f57b3e03d8e46d5f1b2cc62ca881aca392fd5cc048dc0aa2e1a6d23ecdb6'], + }), + ('zict', '1.0.0', { + 'checksums': ['e34dd25ea97def518fb4c77f2c27078f3a7d6c965b0a3ac8fe5bdb0a8011a310'], + }), + ('tblib', '1.5.0', { + 'checksums': ['1735ff8fd6217446384b5afabead3b142cf1a52d242cfe6cab4240029d6d131a'], + }), + ('msgpack', '0.6.2', { + 'checksums': ['ea3c2f859346fcd55fc46e96885301d9c2f7a36d453f5d8f2967840efa1e1830'], + }), + ('cloudpickle', '1.2.2', { + 'checksums': ['922401d7140e133253ff5fab4faa4a1166416066453a783b00b507dca93f8859'], + }), + (name, version, { + 'checksums': ['000f1d8cea21e73d4691718d9224903e9ba37fbbe756c8e7d11d4067ef9e0609'], + }), + ('distributed', version, { + 'checksums': ['37f8a89bb499b7858a2396e3fdd2e5997dece543725d3791ce239d960a647710'], + }), + ('dask-mpi', '2.0.0', { + 'checksums': ['774cd2d69e5f7154e1fa133c22498062edd31507ffa2ea19f4ab4d8975c27bc3'], + }), + ('docrep', '0.2.7', { + 'checksums': ['c48939ae14d79172839a5bbaf5a570add47f6cc44d2c18f6b1fac8f1c38dec4d'], + }), + ('dask-jobqueue', '0.7.0', { + 'checksums': ['660cd4cd052ada872fd6413f224a2d9221026dd55a8a29a9a7d52b262bec67e7'], + }), +] + +sanity_check_paths = { + 'files': ['bin/dask-%s' % x for x in ['mpi', 'remote', 'scheduler', 'ssh', 'submit', 'worker']], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/datamash/datamash-1.5-GCCcore-7.3.0.eb b/easybuild/easyconfigs/d/datamash/datamash-1.5-GCCcore-7.3.0.eb new file mode 100755 index 00000000000..6a99668883b --- /dev/null +++ b/easybuild/easyconfigs/d/datamash/datamash-1.5-GCCcore-7.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'datamash' +version = '1.5' + +homepage = 'https://www.gnu.org/software/datamash/' +description = "GNU datamash performs basic numeric, textual and statistical operations on input data files" + +toolchain = {'name': 'GCCcore', 'version': '7.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['226249d5fe54024f96404798778f45963a3041714229d4225cd5d9acdaba21ad'] + +builddependencies = [ + ('binutils', '2.30'), +] + +sanity_check_paths = { + 'files': ['bin/datamash'], + 'dirs': ['share/man'] +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/datamash/datamash-1.5-GCCcore-8.3.0.eb b/easybuild/easyconfigs/d/datamash/datamash-1.5-GCCcore-8.3.0.eb new file mode 100755 index 00000000000..d8122b6d953 --- /dev/null +++ b/easybuild/easyconfigs/d/datamash/datamash-1.5-GCCcore-8.3.0.eb @@ -0,0 +1,24 @@ +easyblock = 'ConfigureMake' + +name = 'datamash' +version = '1.5' + +homepage = 'https://www.gnu.org/software/datamash/' +description = "GNU datamash performs basic numeric, textual and statistical operations on input data files" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['226249d5fe54024f96404798778f45963a3041714229d4225cd5d9acdaba21ad'] + +builddependencies = [ + ('binutils', '2.32'), +] + +sanity_check_paths = { + 'files': ['bin/datamash'], + 'dirs': ['share/man'] +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/d/davix/davix-0.6.6-intel-2017a.eb b/easybuild/easyconfigs/d/davix/davix-0.6.6-intel-2017a.eb index 4797c446ad4..d449d7ca9dd 100644 --- a/easybuild/easyconfigs/d/davix/davix-0.6.6-intel-2017a.eb +++ b/easybuild/easyconfigs/d/davix/davix-0.6.6-intel-2017a.eb @@ -3,7 +3,7 @@ easyblock = 'CMakeMake' name = 'davix' version = '0.6.6' -homepage = 'http://dmc.web.cern.ch/projects/davix/home' +homepage = 'https://dmc.web.cern.ch/projects/davix/home' description = """The davix project aims to make file management over HTTP-based protocols simple. The focus is on high-performance remote I/O and data management of large collections of files. Currently, there is support for the WebDav (link is external), Amazon S3 (link is external), @@ -18,7 +18,7 @@ checksums = ['f807615aef8e65a047f1d2c7920aefffadce62dbc96996070bcdea60c283cf8b'] builddependencies = [ ('CMake', '3.8.1'), ('util-linux', '2.29.2'), - ('gtest', '1.8.0'), + ('googletest', '1.8.0'), ('Doxygen', '1.8.13'), ] diff --git a/easybuild/easyconfigs/d/deal.II/deal.II-9.1.1-intel-2019a.eb b/easybuild/easyconfigs/d/deal.II/deal.II-9.1.1-intel-2019a.eb index a441f6f45a9..5cf9458bf12 100644 --- a/easybuild/easyconfigs/d/deal.II/deal.II-9.1.1-intel-2019a.eb +++ b/easybuild/easyconfigs/d/deal.II/deal.II-9.1.1-intel-2019a.eb @@ -22,7 +22,7 @@ dependencies = [ ('METIS', '5.1.0'), ('netCDF', '4.6.2'), ('p4est', '2.2'), - ('PETSc', '3.11.1'), + ('PETSc', '3.11.1', '-Python-3.7.2'), ('zlib', '1.2.11'), ] 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 new file mode 100644 index 00000000000..185743cf6a6 --- /dev/null +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2018b.eb @@ -0,0 +1,54 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# 6.1.4 modified by: +# Adam Huffman +# The Francis Crick Institute +# 7.2.1 modified by: +# Tom Strempel +# Helmholtz-Centre for Environmental Research - UFZ + +easyblock = 'MakeCp' + +name = 'EIGENSOFT' +version = '7.2.1' + +homepage = 'https://www.hsph.harvard.edu/alkes-price/software/' +description = """The EIGENSOFT package combines functionality from our population genetics methods (Patterson et al. +2006) and our EIGENSTRAT stratification correction method (Price et al. 2006). The EIGENSTRAT method uses principal +components analysis to explicitly model ancestry differences between cases and controls along continuous axes of +variation; the resulting correction is specific to a candidate marker’s variation in frequency across ancestral +populations, minimizing spurious associations while maximizing power to detect true associations. The EIGENSOFT +package has a built-in plotting script and supports multiple file formats and quantitative phenotypes.""" + +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'] +checksums = [ + 'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650', # v7.2.1.tar.gz + 'e49e3754f2326210114fe5a731a77c7ffd240c8a9134eb8e8e1517bfe06c71e1', # EIGENSOFT-7.2.1_Fix_makefile_openblas.patch +] + +dependencies = [ + ('GSL', '2.5'), + ('Perl', '5.28.0'), +] + +start_dir = 'src' + +# Run "make install" after make to copy all binaries to the bin dir +buildopts = ' && make install' + +files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README'] + +fix_perl_shebang_for = ['bin/*.perl'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL"]], + 'dirs': [] +} + +moduleclass = 'bio' 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 new file mode 100644 index 00000000000..928fcacc43a --- /dev/null +++ b/easybuild/easyconfigs/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2019b.eb @@ -0,0 +1,54 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics +# 6.1.4 modified by: +# Adam Huffman +# The Francis Crick Institute +# 7.2.1 modified by: +# Tom Strempel +# Helmholtz-Centre for Environmental Research - UFZ + +easyblock = 'MakeCp' + +name = 'EIGENSOFT' +version = '7.2.1' + +homepage = 'https://www.hsph.harvard.edu/alkes-price/software/' +description = """The EIGENSOFT package combines functionality from our population genetics methods (Patterson et al. +2006) and our EIGENSTRAT stratification correction method (Price et al. 2006). The EIGENSTRAT method uses principal +components analysis to explicitly model ancestry differences between cases and controls along continuous axes of +variation; the resulting correction is specific to a candidate marker’s variation in frequency across ancestral +populations, minimizing spurious associations while maximizing power to detect true associations. The EIGENSOFT +package has a built-in plotting script and supports multiple file formats and quantitative phenotypes.""" + +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'] +checksums = [ + 'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650', # v7.2.1.tar.gz + 'e49e3754f2326210114fe5a731a77c7ffd240c8a9134eb8e8e1517bfe06c71e1', # EIGENSOFT-7.2.1_Fix_makefile_openblas.patch +] + +dependencies = [ + ('GSL', '2.6'), + ('Perl', '5.30.0'), +] + +start_dir = 'src' + +# Run "make install" after make to copy all binaries to the bin dir +buildopts = ' && make install' + +files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README'] + +fix_perl_shebang_for = ['bin/*.perl'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL"]], + 'dirs': [] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-foss-2018b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-foss-2018b.eb index 36f45514504..4197fc4aa1c 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-foss-2018b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-foss-2018b.eb @@ -12,7 +12,7 @@ easyblock = 'ConfigureMake' name = 'ELPA' version = '2016.11.001.pre' -homepage = 'http://elpa.mpcdf.mpg.de' +homepage = 'https://elpa.mpcdf.mpg.de' description = """Eigenvalue SoLvers for Petaflop-Applications .""" toolchain = {'name': 'foss', 'version': '2018b'} @@ -33,6 +33,9 @@ checksums = [ builddependencies = [ ('Autotools', '20180311'), + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.15'), ] preconfigopts = 'autoreconf && ' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-intel-2018b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-intel-2018b.eb index af319ed2b28..a2b673230c9 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-intel-2018b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2016.11.001.pre-intel-2018b.eb @@ -12,7 +12,7 @@ easyblock = 'ConfigureMake' name = 'ELPA' version = '2016.11.001.pre' -homepage = 'http://elpa.mpcdf.mpg.de' +homepage = 'https://elpa.mpcdf.mpg.de' description = """Eigenvalue SoLvers for Petaflop-Applications .""" toolchain = {'name': 'intel', 'version': '2018b'} @@ -33,6 +33,9 @@ checksums = [ builddependencies = [ ('Autotools', '20180311'), + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.15'), ] preconfigopts = 'autoreconf && ' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-foss-2018b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-foss-2018b.eb index b45d89c3cfc..88ded871e04 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-foss-2018b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-foss-2018b.eb @@ -10,7 +10,7 @@ name = 'ELPA' version = '2017.11.001' -homepage = 'http://elpa.mpcdf.mpg.de' +homepage = 'https://elpa.mpcdf.mpg.de' description = """Eigenvalue SoLvers for Petaflop-Applications .""" toolchain = {'name': 'foss', 'version': '2018b'} @@ -20,4 +20,10 @@ source_urls = ['http://elpa.mpcdf.mpg.de/html/Releases/%(version)s/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['59f99c3abe2190fac0db8a301d0b9581ee134f438669dbc92551a54f6f861820'] +builddependencies = [ + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.15'), +] + moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-intel-2018b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-intel-2018b.eb index 62d6495164f..afe97f306ce 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-intel-2018b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2017.11.001-intel-2018b.eb @@ -10,7 +10,7 @@ name = 'ELPA' version = '2017.11.001' -homepage = 'http://elpa.mpcdf.mpg.de' +homepage = 'https://elpa.mpcdf.mpg.de' description = """Eigenvalue SoLvers for Petaflop-Applications .""" toolchain = {'name': 'intel', 'version': '2018b'} @@ -20,4 +20,10 @@ source_urls = ['http://elpa.mpcdf.mpg.de/html/Releases/%(version)s/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['59f99c3abe2190fac0db8a301d0b9581ee134f438669dbc92551a54f6f861820'] +builddependencies = [ + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.15'), +] + moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-foss-2018b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-foss-2018b.eb index f890787f0a1..38310cc5e55 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-foss-2018b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-foss-2018b.eb @@ -10,7 +10,7 @@ name = 'ELPA' version = '2018.05.001' -homepage = 'http://elpa.mpcdf.mpg.de' +homepage = 'https://elpa.mpcdf.mpg.de' description = """Eigenvalue SoLvers for Petaflop-Applications .""" toolchain = {'name': 'foss', 'version': '2018b'} @@ -20,4 +20,10 @@ source_urls = ['http://elpa.mpcdf.mpg.de/html/Releases/%(version)s/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['a76c3402eb9d1c19b183aedabde8c20f4cfa4692e73e529384207926aec04985'] +builddependencies = [ + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.15'), +] + moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-intel-2018b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-intel-2018b.eb index eba337ae739..9317d776990 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-intel-2018b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2018.05.001-intel-2018b.eb @@ -10,7 +10,7 @@ name = 'ELPA' version = '2018.05.001' -homepage = 'http://elpa.mpcdf.mpg.de' +homepage = 'https://elpa.mpcdf.mpg.de' description = """Eigenvalue SoLvers for Petaflop-Applications .""" toolchain = {'name': 'intel', 'version': '2018b'} @@ -20,4 +20,10 @@ source_urls = ['http://elpa.mpcdf.mpg.de/html/Releases/%(version)s/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['a76c3402eb9d1c19b183aedabde8c20f4cfa4692e73e529384207926aec04985'] +builddependencies = [ + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.15'), +] + moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2018.11.001-intel-2019a.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2018.11.001-intel-2019a.eb index 920a979ed3d..3b146917413 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2018.11.001-intel-2019a.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2018.11.001-intel-2019a.eb @@ -9,7 +9,7 @@ name = 'ELPA' version = '2018.11.001' -homepage = 'http://elpa.rzg.mpg.de' +homepage = 'https://elpa.rzg.mpg.de' description = """Eigenvalue SoLvers for Petaflop-Applications .""" toolchain = {'name': 'intel', 'version': '2019a'} @@ -21,6 +21,9 @@ checksums = ['cc27fe8ba46ce6e6faa8aea02c8c9983052f8e73a00cfea38abf7613cb1e1b16'] builddependencies = [ ('Autotools', '20180311'), + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.15'), ] moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-foss-2019b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-foss-2019b.eb index 67137e2f90f..15c658606b8 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-foss-2019b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-foss-2019b.eb @@ -21,6 +21,9 @@ checksums = ['10374a8f042e23c7e1094230f7e2993b6f3580908a213dbdf089792d05aff357'] builddependencies = [ ('Autotools', '20180311'), + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.16'), ] # When building in parallel, the file test_setup_mpi.mod is sometimes diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-intel-2019b.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-intel-2019b.eb index 60f25624ad9..7de39d08092 100644 --- a/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-intel-2019b.eb +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2019.11.001-intel-2019b.eb @@ -21,6 +21,9 @@ checksums = ['10374a8f042e23c7e1094230f7e2993b6f3580908a213dbdf089792d05aff357'] builddependencies = [ ('Autotools', '20180311'), + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.16'), ] moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELPA/ELPA-2020.05.001-intel-2020a.eb b/easybuild/easyconfigs/e/ELPA/ELPA-2020.05.001-intel-2020a.eb new file mode 100644 index 00000000000..3dec0bf9a13 --- /dev/null +++ b/easybuild/easyconfigs/e/ELPA/ELPA-2020.05.001-intel-2020a.eb @@ -0,0 +1,29 @@ +## +# 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 = '2020.05.001' + +homepage = 'https://elpa.rzg.mpg.de' +description = """Eigenvalue SoLvers for Petaflop-Applications .""" + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = ['https://elpa.mpcdf.mpg.de/html/Releases/%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['66ff1cf332ce1c82075dc7b5587ae72511d2bcb3a45322c94af6b01996439ce5'] + +builddependencies = [ + ('Autotools', '20180311'), + # remove_xcompiler script requires 'python' command, + # manual_cpp script requires 'python' command and is not compatible yet with Python 3 + ('Python', '2.7.18'), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b-PEXSI.eb b/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b-PEXSI.eb index 221a9724db3..7a3d6a93e71 100644 --- a/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b-PEXSI.eb +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b-PEXSI.eb @@ -25,7 +25,7 @@ builddependencies = [ dependencies = [ ('ELPA', '2019.11.001'), # SLEPc and internal PEXSI can't coexist due to conflicting dependencies - # ('SLEPc', '3.12.2'), + # ('SLEPc', '3.12.2', '-Python-3.7.4'), ] build_internal_pexsi = True diff --git a/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b.eb b/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b.eb index c977b4a724d..ca508d490f8 100644 --- a/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b.eb +++ b/easybuild/easyconfigs/e/ELSI/ELSI-2.5.0-intel-2019b.eb @@ -23,7 +23,7 @@ builddependencies = [ dependencies = [ ('ELPA', '2019.11.001'), - ('SLEPc', '3.12.2'), + ('SLEPc', '3.12.2', '-Python-3.7.4'), ] # SLEPc and internal PEXSI can't coexist due to conflicting dependencies diff --git a/easybuild/easyconfigs/e/ESMF/ESMF-8.0.1-intel-2020a.eb b/easybuild/easyconfigs/e/ESMF/ESMF-8.0.1-intel-2020a.eb new file mode 100644 index 00000000000..e8d0a6a65da --- /dev/null +++ b/easybuild/easyconfigs/e/ESMF/ESMF-8.0.1-intel-2020a.eb @@ -0,0 +1,31 @@ +name = 'ESMF' +version = '8.0.1' + +homepage = 'https://www.earthsystemcog.org/projects/esmf/' +description = """The Earth System Modeling Framework (ESMF) is a suite of software tools for developing + high-performance, multi-component Earth science modeling applications.""" + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/esmf-org/esmf/archive/'] +sources = ['%%(name)s_%s.tar.gz' % '_'.join(version.split('.'))] +patches = ['ESMF-6.1.1_libopts.patch'] +checksums = [ + '9172fb73f3fe95c8188d889ee72fdadb4f978b1d969e1d8e401e8d106def1d84', # ESMF_8_0_1.tar.gz + '3851627f07c32a7da55d99072d619942bd3a1d9dd002e1557716158e7aacdaf4', # ESMF-6.1.1_libopts.patch +] + +dependencies = [ + ('netCDF', '4.7.4'), + ('netCDF-Fortran', '4.5.2'), + ('netCDF-C++4', '4.3.1'), +] + +buildopts = 'ESMF_NETCDF_INCLUDE=$EBROOTNETCDFMINFORTRAN/include ' +buildopts += 'ESMF_NETCDF_LIBS="`nc-config --libs` `nf-config --flibs` `ncxx4-config --libs`"' + +# too parallel causes the build to become really slow +maxparallel = 8 + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.2.2.eb b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.2.2.eb new file mode 100644 index 00000000000..1091c23897b --- /dev/null +++ b/easybuild/easyconfigs/e/EasyBuild/EasyBuild-4.2.2.eb @@ -0,0 +1,44 @@ +easyblock = 'EB_EasyBuildMeta' + +name = 'EasyBuild' +version = '4.2.2' + +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 = {'name': 'dummy', 'version': 'dummy'} + +source_urls = [ + # easybuild-framework + 'https://files.pythonhosted.org/packages/6b/4d/381d60f460472d9e172d974d8cec52db2d1b602d45d2cf07eda7480826af/', + # easybuild-easyblocks + 'https://files.pythonhosted.org/packages/22/20/cb74e2e076e03fb1af52415d3c203f797c2e99ec3b6378762ae5c1314ac0/', + # easybuild-easyconfigs + 'https://files.pythonhosted.org/packages/f5/0b/0daef70fa9781f897005895b32cb214f8d549f8ffc9c4f7eb04a46e59622/', +] +sources = [ + 'easybuild-framework-%(version)s.tar.gz', + 'easybuild-easyblocks-%(version)s.tar.gz', + 'easybuild-easyconfigs-%(version)s.tar.gz', +] +checksums = [ + '5752a21e991844637547f9106563fdcd6a667b492d3c3a89cd4da6d99a63a85f', # easybuild-framework-4.2.2.tar.gz + '52cd3617862ac878970805a088fad348e9eb9fdec4b789a98feb54a7e3d6463f', # easybuild-easyblocks-4.2.2.tar.gz + 'de43dcbb5a776c3862f03ab82acb12e1e36c599e517e34017e2c8486106d0db9', # easybuild-easyconfigs-4.2.2.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/Emacs/Emacs-26.3-GCCcore-8.3.0.eb b/easybuild/easyconfigs/e/Emacs/Emacs-26.3-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..057bfe78d95 --- /dev/null +++ b/easybuild/easyconfigs/e/Emacs/Emacs-26.3-GCCcore-8.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'Emacs' +version = '26.3' + +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': '8.3.0'} + +sources = [SOURCELOWER_TAR_GZ] +source_urls = [GNU_SOURCE] +checksums = ['09c747e048137c99ed35747b012910b704e0974dde4db6696fde7054ce387591'] + +builddependencies = [ + ('binutils', '2.32'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.3'), + ('ncurses', '6.1'), + ('LibTIFF', '4.0.10'), + ('X11', '20190717'), + ('GTK+', '3.24.13'), +] + +# 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/edlib/edlib-1.3.8.post1-GCC-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/e/edlib/edlib-1.3.8.post1-GCC-9.3.0-Python-3.8.2.eb new file mode 100644 index 00000000000..acfe638ebdc --- /dev/null +++ b/easybuild/easyconfigs/e/edlib/edlib-1.3.8.post1-GCC-9.3.0-Python-3.8.2.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'edlib' +version = '1.3.8.post1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://martinsos.github.io/edlib' +description = "Lightweight, super fast library for sequence alignment using edit (Levenshtein) distance." + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['81bc688e8fc69d657a6b5067e104a0924b0217b7ab54547155278935d09346e0'] + +dependencies = [ + ('Python', '3.8.2'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/edlib/edlib-1.3.8.post1-iccifort-2019.5.281-Python-3.7.4.eb b/easybuild/easyconfigs/e/edlib/edlib-1.3.8.post1-iccifort-2019.5.281-Python-3.7.4.eb new file mode 100644 index 00000000000..e3737f126dc --- /dev/null +++ b/easybuild/easyconfigs/e/edlib/edlib-1.3.8.post1-iccifort-2019.5.281-Python-3.7.4.eb @@ -0,0 +1,24 @@ +easyblock = 'PythonPackage' + +name = 'edlib' +version = '1.3.8.post1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://martinsos.github.io/edlib' +description = "Lightweight, super fast library for sequence alignment using edit (Levenshtein) distance." + +toolchain = {'name': 'iccifort', 'version': '2019.5.281'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['81bc688e8fc69d657a6b5067e104a0924b0217b7ab54547155278935d09346e0'] + +dependencies = [ + ('Python', '3.7.4'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/e/expat/expat-2.2.9-GCCcore-10.2.0.eb b/easybuild/easyconfigs/e/expat/expat-2.2.9-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..fdcc804030d --- /dev/null +++ b/easybuild/easyconfigs/e/expat/expat-2.2.9-GCCcore-10.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'expat' +version = '2.2.9' + +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': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_BZ2] +checksums = ['f1063084dc4302a427dabcca499c8312b3a32a29b7d2506653ecc8f950a9a237'] + +builddependencies = [('binutils', '2.35')] + +# 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/expect/expect-5.45.4-GCCcore-9.3.0.eb b/easybuild/easyconfigs/e/expect/expect-5.45.4-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..c5deaa99c87 --- /dev/null +++ b/easybuild/easyconfigs/e/expect/expect-5.45.4-GCCcore-9.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'expect' +version = '5.45.4' + +homepage = 'https://core.tcl.tk/expect/index' +description = """Expect is a tool for automating interactive applications + such as telnet, ftp, passwd, fsck, rlogin, tip, etc. + Expect really makes this stuff trivial. + Expect is also useful for testing these same applications.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = ['%(name)s%(version)s.tar.gz'] +checksums = ['49a7da83b0bdd9f46d04a04deec19c7767bb9a323e40c4781f89caf760b92c34'] + +# we need to specify --exec-prefix as by default it uses the path of Tcl. +configopts = ['--with-tcl=${EBROOTTCL}/lib --exec-prefix=%(installdir)s'] + +builddependencies = [ + ('binutils', '2.34'), +] + +dependencies = [ + ('Tcl', '8.6.10'), +] + +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/expect'], + 'dirs': ['.'], +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019a.eb b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019a.eb index 1d1b11b5580..d3a0c6d168d 100644 --- a/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019a.eb +++ b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019a.eb @@ -10,7 +10,11 @@ toolchainopts = {'pic': True} source_urls = [homepage] sources = [SOURCELOWER_TAR_GZ] -checksums = ['6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303'] +patches = ['FFTW-%(version)s_fix-icc-no-gcc.patch'] +checksums = [ + '6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303', # fftw-3.3.8.tar.gz + '1b3319b98a2ca4ead68290b3229385c0573e22749a5a2ffb49486a0bbb37dc1e', # FFTW-3.3.8_fix-icc-no-gcc.patch +] # no quad precision, requires GCC v4.6 or higher # see also diff --git a/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019b.eb b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019b.eb index 2b6696418ec..e3a658d5b11 100644 --- a/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019b.eb +++ b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2019b.eb @@ -10,7 +10,11 @@ toolchainopts = {'pic': True} source_urls = [homepage] sources = [SOURCELOWER_TAR_GZ] -checksums = ['6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303'] +patches = ['FFTW-%(version)s_fix-icc-no-gcc.patch'] +checksums = [ + '6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303', # fftw-3.3.8.tar.gz + '1b3319b98a2ca4ead68290b3229385c0573e22749a5a2ffb49486a0bbb37dc1e', # FFTW-3.3.8_fix-icc-no-gcc.patch +] # no quad precision, requires GCC v4.6 or higher # see also diff --git a/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2020a.eb b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2020a.eb index 251e1c76c19..b148d98715a 100644 --- a/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2020a.eb +++ b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8-intel-2020a.eb @@ -10,7 +10,11 @@ toolchainopts = {'pic': True} source_urls = [homepage] sources = [SOURCELOWER_TAR_GZ] -checksums = ['6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303'] +patches = ['FFTW-%(version)s_fix-icc-no-gcc.patch'] +checksums = [ + '6113262f6e92c5bd474f2875fa1b01054c4ad5040f6b0da7c03c98821d9ae303', # fftw-3.3.8.tar.gz + '1b3319b98a2ca4ead68290b3229385c0573e22749a5a2ffb49486a0bbb37dc1e', # FFTW-3.3.8_fix-icc-no-gcc.patch +] # no quad precision, requires GCC v4.6 or higher # see also diff --git a/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8_fix-icc-no-gcc.patch b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8_fix-icc-no-gcc.patch new file mode 100644 index 00000000000..0067dd07a07 --- /dev/null +++ b/easybuild/easyconfigs/f/FFTW/FFTW-3.3.8_fix-icc-no-gcc.patch @@ -0,0 +1,16 @@ +avoid using -no-gcc when compiling FFTW with Intel compilers, +since that fails on CentOS 8 +see https://github.com/easybuilders/easybuild-easyconfigs/issues/10932 +and https://github.com/FFTW/fftw3/issues/184 +--- fftw-3.3.8/configure.orig 2020-08-01 15:56:55.871153775 +0200 ++++ fftw-3.3.8/configure 2020-08-01 15:57:13.325329609 +0200 +@@ -14861,6 +14861,9 @@ + intel) # Stop icc from defining __GNUC__, except on MacOS where this fails + case "${host_os}" in + *darwin*) ;; # icc -no-gcc fails to compile some system headers ++ # using -no-gcc with recent Intel compilers fails on CentOS 8, ++ # and was only needed as a workaround for old Intel compilers anyway ++ *linux*) ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -no-gcc" >&5 + $as_echo_n "checking whether C compiler accepts -no-gcc... " >&6; } diff --git a/easybuild/easyconfigs/f/FLAIR/FLAIR-1.5-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/f/FLAIR/FLAIR-1.5-foss-2019b-Python-3.7.4.eb index 8ee582f9a38..d2f5792ecd1 100644 --- a/easybuild/easyconfigs/f/FLAIR/FLAIR-1.5-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/f/FLAIR/FLAIR-1.5-foss-2019b-Python-3.7.4.eb @@ -22,8 +22,8 @@ checksums = ['3631b45b356a44676415f3e0930c8f0eacb869ba7def61ea65194e667dfb9b00'] dependencies = [ ('Python', '3.7.4'), - ('R', '3.6.2'), - ('SciPy-bundle', '2019.10', versionsuffix), + ('R', '3.6.2'), # provides ggplot2, qqman + ('SciPy-bundle', '2019.10', versionsuffix), # provides numpy, pandas ('rpy2', '3.2.6', versionsuffix), ('tqdm', '4.41.1'), ('SAMtools', '1.10'), @@ -31,9 +31,10 @@ dependencies = [ ('pybedtools', '0.8.1'), ('minimap2', '2.17'), ('Pysam', '0.15.3'), - ('R-bundle-Bioconductor', '3.10'), + ('R-bundle-Bioconductor', '3.10'), # provides DESeq2, DRIMSeq, stageR ('matplotlib', '3.1.1', versionsuffix), ('Seaborn', '0.10.0', versionsuffix), + ('Kent_tools', '401'), # required for bedPartition command ] exts_defaultclass = 'PythonPackage' @@ -43,16 +44,11 @@ exts_default_options = { 'download_dep_fail': True, 'use_pip': True, } +exts_filter = ("python -c 'import %(ext_name)s'", '') exts_list = [ ('ncls', '0.0.53', { 'checksums': ['a1b927c8b4898f3071e502bb9bf42ceb5bcbc39910035bd1c1a987dc02061993'], }), - ('intervaltree', '3.0.2', { - 'checksums': ['cb4f61c81dcb4fea6c09903f3599015a83c9bdad1f0bbd232495e6681e19e273'], - }), - ('sortedcontainers', '2.1.0', { - 'checksums': ['974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a'], - }), ('kerneltree', '0.0.5', { 'checksums': ['27d9d8dda1b72657ae2f9edc87881e92dbea2d6da469b7c06e33271ffcb72f37'], }), diff --git a/easybuild/easyconfigs/f/Fiona/Fiona-1.8.16-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/f/Fiona/Fiona-1.8.16-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..d46f68bd405 --- /dev/null +++ b/easybuild/easyconfigs/f/Fiona/Fiona-1.8.16-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'Fiona' +version = '1.8.16' +versionsuffix = "-Python-%(pyver)s" + +homepage = 'https://github.com/Toblerity/Fiona' +description = """Fiona is designed to be simple and dependable. It focuses on reading and writing data +in standard Python IO style and relies upon familiar Python types and protocols such as files, dictionaries, +mappings, and iterators instead of classes specific to OGR. Fiona can read and write real-world data using +multi-layered GIS formats and zipped virtual file systems and integrates readily with other Python GIS +packages such as pyproj, Rtree, and Shapely.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('GDAL', '3.0.4', versionsuffix), + ('Shapely', '1.7.1', versionsuffix), # optional +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('cligj', '0.5.0', { + 'checksums': ['6c7d52d529a78712491974f975c33473f430c0f7beb18c0d7a402a743dcb460a'], + }), + ('click-plugins', '1.1.1', { + 'checksums': ['46ab999744a9d831159c3411bb0c79346d94a444df9a3a3742e9ed63645f264b'], + }), + ('munch', '2.5.0', { + 'checksums': ['2d735f6f24d4dba3417fa448cae40c6e896ec1fdab6cdb5e6510999758a4dbd2'], + }), + (name, version, { + 'checksums': ['fd6dfb65959becc916e9f6928618bfd59c16cdbc413ece0fbac61489cd11255f'], + }), +] + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/fio'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/f/Flye/Flye-2.8.1-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/f/Flye/Flye-2.8.1-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..4fe9561023c --- /dev/null +++ b/easybuild/easyconfigs/f/Flye/Flye-2.8.1-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,31 @@ +easyblock = 'PythonPackage' + +name = 'Flye' +version = '2.8.1' +versionsuffix = '-Python-%(pyver)s' + +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': 'intel', 'version': '2020a'} + +source_urls = ['https://github.com/fenderglass/Flye/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['436ebe884e5000c023d78c098596d22c235c916f91e6c29a79b88a21e611fcb4'] + +dependencies = [('Python', '3.8.2')] + +download_dep_fail = True +use_pip = True + +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/FusionCatcher/FusionCatcher-1.20-foss-2019b-Python-2.7.16.eb b/easybuild/easyconfigs/f/FusionCatcher/FusionCatcher-1.20-foss-2019b-Python-2.7.16.eb index 9d78d95c196..8e5f3039136 100644 --- a/easybuild/easyconfigs/f/FusionCatcher/FusionCatcher-1.20-foss-2019b-Python-2.7.16.eb +++ b/easybuild/easyconfigs/f/FusionCatcher/FusionCatcher-1.20-foss-2019b-Python-2.7.16.eb @@ -21,7 +21,7 @@ dependencies = [ ('Bowtie', '1.2.3'), ('Bowtie2', '2.3.5.1'), ('BWA', '0.7.17'), - ('Kent_tools', '20190326', '-linux.x86_64', True), # only used for liftover + ('Kent_tools', '401'), # required for liftOver ('SRA-Toolkit', '2.10.4'), ('STAR', '2.7.2b'), ('picard', '2.21.6', '-Java-11', True), # optional diff --git a/easybuild/easyconfigs/f/flatbuffers/flatbuffers-1.12.0-GCCcore-8.3.0.eb b/easybuild/easyconfigs/f/flatbuffers/flatbuffers-1.12.0-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..822dbe0b322 --- /dev/null +++ b/easybuild/easyconfigs/f/flatbuffers/flatbuffers-1.12.0-GCCcore-8.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeNinja' + +name = 'flatbuffers' +version = '1.12.0' + +homepage = 'https://github.com/google/flatbuffers/' +description = """FlatBuffers: Memory Efficient Serialization Library""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/google/flatbuffers/archive/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['62f2223fb9181d1d6338451375628975775f7522185266cd5296571ac152bc45'] + +builddependencies = [ + ('binutils', '2.32'), + ('CMake', '3.15.3'), + ('Ninja', '1.9.0'), +] + +configopts = '-DFLATBUFFERS_ENABLE_PCH=ON ' + +sanity_check_paths = { + 'files': ['include/flatbuffers/flatbuffers.h', 'bin/flatc', 'lib/libflatbuffers.a'], + 'dirs': ['lib/cmake'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/f/flex/flex-2.6.4-GCCcore-10.2.0.eb b/easybuild/easyconfigs/f/flex/flex-2.6.4-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..d6bae199dd3 --- /dev/null +++ b/easybuild/easyconfigs/f/flex/flex-2.6.4-GCCcore-10.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': '10.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.7.1'), + ('help2man', '1.47.16'), + # use same binutils version that was used when building GCC toolchain + ('binutils', '2.35', '', True), +] + +dependencies = [ + ('M4', '1.4.18'), +] + +# 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/g/GATK/GATK-4.1.4.1-GCCcore-8.3.0-Java-1.8.eb b/easybuild/easyconfigs/g/GATK/GATK-4.1.4.1-GCCcore-8.3.0-Java-1.8.eb new file mode 100644 index 00000000000..6e29aeb7a94 --- /dev/null +++ b/easybuild/easyconfigs/g/GATK/GATK-4.1.4.1-GCCcore-8.3.0-Java-1.8.eb @@ -0,0 +1,53 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 Cyprus Institute / CaSToRC, University of Luxembourg / LCSB +# Authors:: George Tsouloupas , 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 +## + +easyblock = 'Tarball' + +name = 'GATK' +version = '4.1.4.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': '8.3.0'} + +source_urls = ['https://github.com/broadinstitute/gatk/releases/download/%(version)s/'] +sources = ['gatk-%(version)s.zip'] +checksums = ['21ae694cfc8b7447381ad5ce62ed4af22e53a228b12495bdcca7df0c73b09cea'] + +multi_deps = {'Python': ['3.7.4', '2.7.16']} + +dependencies = [ + ('Java', '1.8', '', True), +] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['gatk'], + 'dirs': [], +} +sanity_check_commands = [ + "gatk --help", + "gatk --list", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GATK/GATK-4.1.4.1-GCCcore-8.3.0-Java-11.eb b/easybuild/easyconfigs/g/GATK/GATK-4.1.4.1-GCCcore-8.3.0-Java-11.eb index 250cdc23b36..6f9d693a6ff 100644 --- a/easybuild/easyconfigs/g/GATK/GATK-4.1.4.1-GCCcore-8.3.0-Java-11.eb +++ b/easybuild/easyconfigs/g/GATK/GATK-4.1.4.1-GCCcore-8.3.0-Java-11.eb @@ -50,4 +50,6 @@ sanity_check_commands = [ "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/GATK/GATK-4.1.5.0-GCCcore-9.3.0-Java-1.8.eb b/easybuild/easyconfigs/g/GATK/GATK-4.1.5.0-GCCcore-9.3.0-Java-1.8.eb new file mode 100644 index 00000000000..d0ea17e1743 --- /dev/null +++ b/easybuild/easyconfigs/g/GATK/GATK-4.1.5.0-GCCcore-9.3.0-Java-1.8.eb @@ -0,0 +1,53 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2012-2013 Cyprus Institute / CaSToRC, University of Luxembourg / LCSB +# Authors:: George Tsouloupas , 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 +## + +easyblock = 'Tarball' + +name = 'GATK' +version = '4.1.5.0' +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': '9.3.0'} + +source_urls = ['https://github.com/broadinstitute/gatk/releases/download/%(version)s/'] +sources = ['gatk-%(version)s.zip'] +checksums = ['6fc152c2cae0cc54c7c4cfdfd865a64f7054a820f7d02ca2549511af1dd9882b'] + +multi_deps = {'Python': ['3.8.2', '2.7.18']} + +dependencies = [ + ('Java', '1.8', '', True), +] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['gatk'], + 'dirs': [], +} +sanity_check_commands = [ + "gatk --help", + "gatk --list", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GATK/GATK-4.1.5.0-GCCcore-9.3.0-Java-11.eb b/easybuild/easyconfigs/g/GATK/GATK-4.1.5.0-GCCcore-9.3.0-Java-11.eb index dfdc787c512..03050c2a5c7 100644 --- a/easybuild/easyconfigs/g/GATK/GATK-4.1.5.0-GCCcore-9.3.0-Java-11.eb +++ b/easybuild/easyconfigs/g/GATK/GATK-4.1.5.0-GCCcore-9.3.0-Java-11.eb @@ -50,4 +50,6 @@ sanity_check_commands = [ "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-10.2.0.eb b/easybuild/easyconfigs/g/GCC/GCC-10.2.0.eb new file mode 100644 index 00000000000..45f4144c990 --- /dev/null +++ b/easybuild/easyconfigs/g/GCC/GCC-10.2.0.eb @@ -0,0 +1,22 @@ +easyblock = 'Bundle' + +name = 'GCC' +version = '10.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 (dummy-built) binutils + ('binutils', '2.35', '', ('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-10.2.0.eb b/easybuild/easyconfigs/g/GCCcore/GCCcore-10.2.0.eb new file mode 100644 index 00000000000..0cac7b1b4a3 --- /dev/null +++ b/easybuild/easyconfigs/g/GCCcore/GCCcore-10.2.0.eb @@ -0,0 +1,51 @@ +easyblock = 'EB_GCC' + +name = 'GCCcore' +version = '10.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://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 + 'http://gcc.cybermirror.org/infrastructure/', # HTTP mirror for GCC dependencies + 'http://isl.gforge.inria.fr/', # original HTTP source for ISL +] +sources = [ + 'gcc-%(version)s.tar.gz', + 'gmp-6.2.0.tar.bz2', + 'mpfr-4.1.0.tar.bz2', + 'mpc-1.1.0.tar.gz', + 'isl-0.22.1.tar.bz2', +] +patches = [ + 'GCCcore-6.2.0-fix-find-isl.patch', + 'GCCcore-9.3.0_gmp-c99.patch', +] +checksums = [ + '27e879dccc639cd7b0cc08ed575c1669492579529b53c9ff27b0b96265fa867d', # gcc-10.2.0.tar.gz + 'f51c99cb114deb21a60075ffb494c1a210eb9d7cb729ed042ddb7de9534451ea', # gmp-6.2.0.tar.bz2 + 'feced2d430dd5a97805fa289fed3fc8ff2b094c02d05287fd6133e7f1f0ec926', # mpfr-4.1.0.tar.bz2 + '6985c538143c1208dcb1ac42cedad6ff52e267b47e5f970183a3e75125b43c2e', # mpc-1.1.0.tar.gz + '1a668ef92eb181a7c021e8531a3ca89fd71aa1b3744db56f68365ab0a224c5cd', # isl-0.22.1.tar.bz2 + '5ad909606d17d851c6ad629b4fddb6c1621844218b8d139fed18c502a7696c68', # GCCcore-6.2.0-fix-find-isl.patch + '0e135e1cc7cec701beea9d7d17a61bab34cfd496b4b555930016b98db99f922e', # GCCcore-9.3.0_gmp-c99.patch +] + +builddependencies = [ + ('M4', '1.4.18'), + ('binutils', '2.35'), +] + +languages = ['c', 'c++', 'fortran'] + +withisl = True + +moduleclass = 'compiler' diff --git a/easybuild/easyconfigs/g/GD/GD-2.71-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/GD/GD-2.71-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..a54301ab868 --- /dev/null +++ b/easybuild/easyconfigs/g/GD/GD-2.71-GCCcore-9.3.0.eb @@ -0,0 +1,55 @@ +## +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +# +# Author: Jonas Demeulemeester (The Francis Crick Insitute, London, UK) +# Update to v2.71: Alex Domingo (Vrije Universiteit Brussel) +# + +easyblock = 'Bundle' + +name = 'GD' +version = '2.71' + +homepage = 'https://github.com/lstein/Perl-GD' +description = """GD.pm - Interface to Gd Graphics Library""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +builddependencies = [ + ('binutils', '2.34'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Perl', '5.30.2'), + ('libgd', '2.3.0'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.4'), +] + +exts_defaultclass = 'PerlModule' +exts_filter = ("perldoc -lm %(ext_name)s ", "") + +exts_list = [ + ('ExtUtils::PkgConfig', '1.16', { + 'source_tmpl': 'ExtUtils-PkgConfig-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XA/XAOC/'], + 'checksums': ['bbeaced995d7d8d10cfc51a3a5a66da41ceb2bc04fedcab50e10e6300e801c6e'], + }), + (name, version, { + 'source_tmpl': 'release_%(version_major)s_%(version_minor)s.tar.gz', + 'source_urls': ['https://github.com/lstein/Perl-GD/archive/'], + 'checksums': ['fe67ef1b6ae4a4c79736dc5105c0d08898ceeace022267647528fdef74785add'], + }), +] + +sanity_check_paths = { + 'files': ['bin/bdf2gdfont.pl', 'lib/perl5/site_perl/%(perlver)s/x86_64-linux-thread-multi/%(name)s.pm'], + 'dirs': ['lib/perl5/site_perl/%(perlver)s/x86_64-linux-thread-multi/%(name)s'], +} + +modextrapaths = { + 'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/g/GLib/GLib-2.64.1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/GLib/GLib-2.64.1-GCCcore-9.3.0.eb index 544f298af6b..91e6b9d3b37 100644 --- a/easybuild/easyconfigs/g/GLib/GLib-2.64.1-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/g/GLib/GLib-2.64.1-GCCcore-9.3.0.eb @@ -23,7 +23,7 @@ builddependencies = [ # (build)dependency on Python or it will use the system version # EasyBuild itself uses. ('Python', '3.8.2'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('binutils', '2.34'), ('pkg-config', '0.29.2'), diff --git a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.3.0.eb b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.3.0.eb index 046f2d17183..868feb4a198 100644 --- a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.3.0.eb +++ b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.3.0.eb @@ -3,15 +3,16 @@ easyblock = 'ConfigureMake' name = 'GMP' version = '6.1.2' -homepage = 'http://gmplib.org/' +homepage = 'https://gmplib.org/' description = """GMP is a free library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. """ toolchain = {'name': 'GCCcore', 'version': '6.3.0'} toolchainopts = {'pic': True, 'precise': True} +source_urls = ['https://ftp.gnu.org/gnu/gmp'] sources = [SOURCELOWER_TAR_BZ2] -source_urls = ['http://ftp.gnu.org/gnu/gmp'] +checksums = ['5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2'] builddependencies = [ ('binutils', '2.27'), @@ -21,6 +22,11 @@ builddependencies = [ # enable C++ interface configopts = '--enable-cxx' +# copy libgmp.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a .libs/libgmp.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + runtest = 'check' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.4.0.eb b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.4.0.eb index 579e3410d39..0ed48eaf50b 100644 --- a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-6.4.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'GMP' version = '6.1.2' -homepage = 'http://gmplib.org/' +homepage = 'https://gmplib.org/' description = """ GMP is a free library for arbitrary precision arithmetic, operating on signed @@ -14,7 +14,7 @@ toolchain = {'name': 'GCCcore', 'version': '6.4.0'} toolchainopts = {'pic': True, 'precise': True} sources = [SOURCELOWER_TAR_BZ2] -source_urls = ['http://ftp.gnu.org/gnu/gmp'] +source_urls = ['https://ftp.gnu.org/gnu/gmp'] checksums = ['5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2'] builddependencies = [ @@ -25,6 +25,11 @@ builddependencies = [ # enable C++ interface configopts = '--enable-cxx' +# copy libgmp.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a .libs/libgmp.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + runtest = 'check' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-7.3.0.eb b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-7.3.0.eb index 913fec68866..b866a7e7d40 100644 --- a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-7.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'GMP' version = '6.1.2' -homepage = 'http://gmplib.org/' +homepage = 'https://gmplib.org/' description = """ GMP is a free library for arbitrary precision arithmetic, operating on signed @@ -14,7 +14,7 @@ toolchain = {'name': 'GCCcore', 'version': '7.3.0'} toolchainopts = {'pic': True, 'precise': True} sources = [SOURCELOWER_TAR_BZ2] -source_urls = ['http://ftp.gnu.org/gnu/gmp'] +source_urls = ['https://ftp.gnu.org/gnu/gmp'] checksums = ['5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2'] builddependencies = [ @@ -25,6 +25,11 @@ builddependencies = [ # enable C++ interface configopts = '--enable-cxx' +# copy libgmp.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a .libs/libgmp.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + runtest = 'check' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.2.0.eb b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.2.0.eb index 796b76c6ae6..2a8001804ff 100644 --- a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'GMP' version = '6.1.2' -homepage = 'http://gmplib.org/' +homepage = 'https://gmplib.org/' description = """ GMP is a free library for arbitrary precision arithmetic, operating on signed @@ -14,7 +14,7 @@ toolchain = {'name': 'GCCcore', 'version': '8.2.0'} toolchainopts = {'pic': True, 'precise': True} sources = [SOURCELOWER_TAR_BZ2] -source_urls = ['http://ftp.gnu.org/gnu/gmp'] +source_urls = ['https://ftp.gnu.org/gnu/gmp'] checksums = ['5275bb04f4863a13516b2f39392ac5e272f5e1bb8057b18aec1c9b79d73d8fb2'] builddependencies = [ @@ -25,6 +25,11 @@ builddependencies = [ # enable C++ interface configopts = '--enable-cxx' +# copy libgmp.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a .libs/libgmp.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + runtest = 'check' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.3.0.eb b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.3.0.eb index 070868c8fa4..099eb1506e0 100644 --- a/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/g/GMP/GMP-6.1.2-GCCcore-8.3.0.eb @@ -25,6 +25,11 @@ builddependencies = [ # enable C++ interface configopts = '--enable-cxx' +# copy libgmp.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a .libs/libgmp.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + runtest = 'check' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/GMP/GMP-6.2.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/GMP/GMP-6.2.0-GCCcore-9.3.0.eb index 1cff3d1972e..5c21453c3d7 100644 --- a/easybuild/easyconfigs/g/GMP/GMP-6.2.0-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/g/GMP/GMP-6.2.0-GCCcore-9.3.0.eb @@ -24,6 +24,11 @@ builddependencies = [ # enable C++ interface configopts = '--enable-cxx' +# copy libgmp.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a .libs/libgmp.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + runtest = 'check' sanity_check_paths = { diff --git a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.64.0-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.64.0-GCCcore-9.3.0-Python-3.8.2.eb index b8944994451..0616b862270 100644 --- a/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.64.0-GCCcore-9.3.0-Python-3.8.2.eb +++ b/easybuild/easyconfigs/g/GObject-Introspection/GObject-Introspection-1.64.0-GCCcore-9.3.0-Python-3.8.2.eb @@ -19,7 +19,7 @@ checksums = ['eac05a63091c81adfdc8ef34820bcc7e7778c5b9e34734d344fc9e69ddf4fc82'] builddependencies = [ ('binutils', '2.34'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('flex', '2.6.4'), ('Bison', '3.5.3'), diff --git a/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-8.3.0.eb b/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..ae2c84ce17b --- /dev/null +++ b/easybuild/easyconfigs/g/GTS/GTS-0.7.6-GCCcore-8.3.0.eb @@ -0,0 +1,31 @@ +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': '8.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['059c3e13e3e3b796d775ec9f96abdce8f2b3b5144df8514eda0cc12e13e8b81e'] + +builddependencies = [ + ('pkg-config', '0.29.2'), + ('binutils', '2.32'), +] + +dependencies = [ + ('GLib', '2.62.0'), +] + +sanity_check_paths = { + 'files': ['lib/libgts.%s' % SHLIB_EXT, 'bin/gts2oogl', 'bin/gtscheck'], + 'dirs': [] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.40.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.40.0-GCCcore-9.3.0.eb index ace94394831..933fe2247c5 100644 --- a/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.40.0-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/g/Gdk-Pixbuf/Gdk-Pixbuf-2.40.0-GCCcore-9.3.0.eb @@ -20,7 +20,7 @@ checksums = [ ] builddependencies = [ - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('binutils', '2.34'), ('pkg-config', '0.29.2'), diff --git a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.52-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.52-GCCcore-9.3.0.eb index a6bd2e9bd46..3f69106aa2f 100644 --- a/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.52-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/g/Ghostscript/Ghostscript-9.52-GCCcore-9.3.0.eb @@ -30,6 +30,7 @@ dependencies = [ builddependencies = [ # use same binutils version that was used when building GCCcore toolchain ('binutils', '2.34'), + ('pkg-config', '0.29.2'), ] # Do not use local copies of zlib, jpeg, freetype, and png diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b-Python-2.7.15.eb index 59d35995886..3393732425c 100644 --- a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b-Python-2.7.15.eb +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b-Python-2.7.15.eb @@ -2,6 +2,7 @@ easyblock = 'ConfigureMake' name = 'Graphviz' version = '2.40.1' +local_commit = '67cd2e5121379a38e0801cc05cce5033f8a2a609' versionsuffix = '-Python-%(pyver)s' local_pymajmin = '27' @@ -16,8 +17,12 @@ toolchain = {'name': 'foss', 'version': '2018b'} toolchainopts = {'cstd': 'c++11', 'lowopt': True} # 'dot' segfaults with higher optimizations # official download site only provides most recent version as 'graphviz.tar.gz'... -source_urls = ['https://fossies.org/linux/misc/'] -sources = [SOURCELOWER_TAR_GZ] +source_urls = ['https://gitlab.com/graphviz/graphviz/-/archive/%s' % local_commit] +sources = [{ + 'download_filename': 'archive.tar.gz', + 'filename': SOURCELOWER_TAR_GZ, + 'extract_cmd': "mkdir -p %(namelower)s-%(version)s; tar -C %(namelower)s-%(version)s --strip-components=1 -xzf %s", +}] patches = [ 'Graphviz-2.40.1_Qt5.patch', 'Graphviz-2.40.1_skip-install-data-hook.patch', @@ -26,9 +31,10 @@ patches = [ 'Graphviz-2.40.1_CVE-2019-11023.patch', ] checksums = [ - 'ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421', # graphviz-2.40.1.tar.gz + ('ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421', + '3f3dcaa536f3df16047316e942123db9359f2b0bd02a9bccee80088c061e7797'), # graphviz-2.40.1.tar.gz 'f88ef7bcdb7cdfa2cda89c4681db3fecfb0e37955d52c0d4ef5bcffe5b41eb55', # Graphviz-2.40.1_Qt5.patch - '8685c67b3c83f814cdf87f626905695b249eb7c3f64a2b1cdb79733b7297a4a4', # Graphviz-2.40.1_skip-install-data-hook.patch + '508d83c7904f5aa0983396ad7588f71ee39d568cc0f4b1249e02b76ef9e2ae94', # Graphviz-2.40.1_skip-install-data-hook.patch 'a0cbd4b1b94fffd5c4e18694d8e31686f0ed7566c66e8ebb159e06bc4045a331', # Graphviz-2.40.1_coverity-scan-fixes.patch 'a04eb55b76ee8aa8e42fd415b00fd26e30c35c745d1d0b7fe5a449dc59e70d56', # Graphviz-2.40.1_CVE-2018-10196.patch 'd81bb79cd081eba7a8def07e9aa2be968d572309f24921b87bfea8b2b0491127', # Graphviz-2.40.1_CVE-2019-11023.patch diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b.eb b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b.eb index 3021e525001..dad37c034a9 100644 --- a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b.eb +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-foss-2018b.eb @@ -2,6 +2,7 @@ easyblock = 'ConfigureMake' name = 'Graphviz' version = '2.40.1' +local_commit = '67cd2e5121379a38e0801cc05cce5033f8a2a609' homepage = 'https://www.graphviz.org/' description = """Graphviz is open source graph visualization software. Graph visualization @@ -14,8 +15,12 @@ toolchain = {'name': 'foss', 'version': '2018b'} toolchainopts = {'cstd': 'c++11', 'lowopt': True} # 'dot' segfaults with higher optimizations # official download site only provides most recent version as 'graphviz.tar.gz'... -source_urls = ['https://fossies.org/linux/misc/'] -sources = [SOURCELOWER_TAR_GZ] +source_urls = ['https://gitlab.com/graphviz/graphviz/-/archive/%s' % local_commit] +sources = [{ + 'download_filename': 'archive.tar.gz', + 'filename': SOURCELOWER_TAR_GZ, + 'extract_cmd': "mkdir -p %(namelower)s-%(version)s; tar -C %(namelower)s-%(version)s --strip-components=1 -xzf %s", +}] patches = [ 'Graphviz-2.40.1_Qt5.patch', 'Graphviz-2.40.1_skip-install-data-hook.patch', @@ -24,9 +29,10 @@ patches = [ 'Graphviz-2.40.1_CVE-2019-11023.patch', ] checksums = [ - 'ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421', # graphviz-2.40.1.tar.gz + ('ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421', + '3f3dcaa536f3df16047316e942123db9359f2b0bd02a9bccee80088c061e7797'), # graphviz-2.40.1.tar.gz 'f88ef7bcdb7cdfa2cda89c4681db3fecfb0e37955d52c0d4ef5bcffe5b41eb55', # Graphviz-2.40.1_Qt5.patch - '8685c67b3c83f814cdf87f626905695b249eb7c3f64a2b1cdb79733b7297a4a4', # Graphviz-2.40.1_skip-install-data-hook.patch + '508d83c7904f5aa0983396ad7588f71ee39d568cc0f4b1249e02b76ef9e2ae94', # Graphviz-2.40.1_skip-install-data-hook.patch 'a0cbd4b1b94fffd5c4e18694d8e31686f0ed7566c66e8ebb159e06bc4045a331', # Graphviz-2.40.1_coverity-scan-fixes.patch 'a04eb55b76ee8aa8e42fd415b00fd26e30c35c745d1d0b7fe5a449dc59e70d56', # Graphviz-2.40.1_CVE-2018-10196.patch 'd81bb79cd081eba7a8def07e9aa2be968d572309f24921b87bfea8b2b0491127', # Graphviz-2.40.1_CVE-2019-11023.patch diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-intel-2018a.eb b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-intel-2018a.eb index 74ba7b4c8c7..ae0ee795432 100644 --- a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-intel-2018a.eb +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1-intel-2018a.eb @@ -2,6 +2,7 @@ easyblock = 'ConfigureMake' name = 'Graphviz' version = '2.40.1' +local_commit = '67cd2e5121379a38e0801cc05cce5033f8a2a609' homepage = 'https://www.graphviz.org/' description = """Graphviz is open source graph visualization software. Graph visualization @@ -13,8 +14,12 @@ description = """Graphviz is open source graph visualization software. Graph vis toolchain = {'name': 'intel', 'version': '2018a'} # official download site only provides most recent version as 'graphviz.tar.gz'... -source_urls = ['https://fossies.org/linux/misc/'] -sources = [SOURCELOWER_TAR_GZ] +source_urls = ['https://gitlab.com/graphviz/graphviz/-/archive/%s' % local_commit] +sources = [{ + 'download_filename': 'archive.tar.gz', + 'filename': SOURCELOWER_TAR_GZ, + 'extract_cmd': "mkdir -p %(namelower)s-%(version)s; tar -C %(namelower)s-%(version)s --strip-components=1 -xzf %s", +}] patches = [ 'Graphviz-2.38.0_icc_sfio.patch', 'Graphviz-2.40.1_icc_vmalloc.patch', @@ -22,11 +27,12 @@ patches = [ 'Graphviz-2.40.1_skip-install-data-hook.patch', ] checksums = [ - 'ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421', # graphviz-2.40.1.tar.gz + ('ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421', + '3f3dcaa536f3df16047316e942123db9359f2b0bd02a9bccee80088c061e7797'), # graphviz-2.40.1.tar.gz '393a0a772315a89dcc970b5efd4765d22dba83493d7956303673eb89c45b949f', # Graphviz-2.38.0_icc_sfio.patch '813e6529e79161a18b0f24a969b7de22f8417b2e942239e658b5402884541bc2', # Graphviz-2.40.1_icc_vmalloc.patch 'f88ef7bcdb7cdfa2cda89c4681db3fecfb0e37955d52c0d4ef5bcffe5b41eb55', # Graphviz-2.40.1_Qt5.patch - '8685c67b3c83f814cdf87f626905695b249eb7c3f64a2b1cdb79733b7297a4a4', # Graphviz-2.40.1_skip-install-data-hook.patch + '508d83c7904f5aa0983396ad7588f71ee39d568cc0f4b1249e02b76ef9e2ae94', # Graphviz-2.40.1_skip-install-data-hook.patch ] dependencies = [ diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1_skip-install-data-hook.patch b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1_skip-install-data-hook.patch index b86c4b0c986..6cf75088bc6 100644 --- a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1_skip-install-data-hook.patch +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.40.1_skip-install-data-hook.patch @@ -135,117 +135,3 @@ author: Kenneth Hoste (HPC-UGent) # removal of installs into @xxx_INSTALL_DIR@ fail if root # has installed a system copy -diff -ru graphviz-2.40.1.orig/tclpkg/Makefile.in graphviz-2.40.1/tclpkg/Makefile.in ---- graphviz-2.40.1.orig/tclpkg/Makefile.in 2016-12-25 04:05:04.000000000 +0100 -+++ graphviz-2.40.1/tclpkg/Makefile.in 2018-04-19 20:23:53.428881928 +0200 -@@ -928,109 +928,7 @@ - # ./configure --prefix=$HOME/graphviz; make; make install - # without root priviledges. - install-data-hook: --@WITH_LUA_TRUE@ -mkdir -p $(DESTDIR)@LUA_INSTALL_DIR@; --@WITH_LUA_TRUE@ if test -w $(DESTDIR)@LUA_INSTALL_DIR@; then \ --@WITH_LUA_TRUE@ (cd $(DESTDIR)@LUA_INSTALL_DIR@; \ --@WITH_LUA_TRUE@ cp -f $(DESTDIR)$(pkgluadir)/libgv_lua.so gv.so;) \ --@WITH_LUA_TRUE@ else \ --@WITH_LUA_TRUE@ echo "Warning: @LUA_INSTALL_DIR@ is not writable."; \ --@WITH_LUA_TRUE@ echo "Skipping system installation of lua binding."; \ --@WITH_LUA_TRUE@ fi --@WITH_PERL_TRUE@ -mkdir -p $(DESTDIR)@PERL_INSTALL_DIR@; --@WITH_PERL_TRUE@ if test -w $(DESTDIR)@PERL_INSTALL_DIR@; then \ --@WITH_PERL_TRUE@ (cd $(DESTDIR)@PERL_INSTALL_DIR@; \ --@WITH_PERL_TRUE@ cp -f $(DESTDIR)$(pkgperldir)/libgv_perl.so gv.so; \ --@WITH_PERL_TRUE@ cp -f $(DESTDIR)$(pkgperldir)/gv.pm gv.pm;) \ --@WITH_PERL_TRUE@ else \ --@WITH_PERL_TRUE@ echo "Warning: @PERL_INSTALL_DIR@ is not writable."; \ --@WITH_PERL_TRUE@ echo "Skipping system installation of perl binding."; \ --@WITH_PERL_TRUE@ fi --@WITH_PHP_TRUE@ -mkdir -p $(DESTDIR)@PHP_INSTALL_DIR@; --@WITH_PHP_TRUE@ if test -w $(DESTDIR)@PHP_INSTALL_DIR@; then \ --@WITH_PHP_TRUE@ (cd $(DESTDIR)@PHP_INSTALL_DIR@; \ --@WITH_PHP_TRUE@ cp -f $(DESTDIR)$(pkgphpdir)/libgv_php.so gv.so;) \ --@WITH_PHP_TRUE@ else \ --@WITH_PHP_TRUE@ echo "Warning: @PHP_INSTALL_DIR@ is not writable."; \ --@WITH_PHP_TRUE@ echo "Skipping system installation of php binding."; \ --@WITH_PHP_TRUE@ fi --@WITH_PHP_TRUE@ -mkdir -p $(DESTDIR)@PHP_INSTALL_DATADIR@; --@WITH_PHP_TRUE@ if test -w $(DESTDIR)@PHP_INSTALL_DATADIR@; then \ --@WITH_PHP_TRUE@ (cd $(DESTDIR)@PHP_INSTALL_DATADIR@; \ --@WITH_PHP_TRUE@ cp -f $(DESTDIR)$(pkgphpdir)/gv.php gv.php;) \ --@WITH_PHP_TRUE@ else \ --@WITH_PHP_TRUE@ echo "Warning: @PHP_INSTALL_DATADIR@ is not writable."; \ --@WITH_PHP_TRUE@ echo "Skipping system installation of php binding."; \ --@WITH_PHP_TRUE@ fi --@WITH_PYTHON_TRUE@ -mkdir -p $(DESTDIR)@PYTHON_INSTALL_DIR@; --@WITH_PYTHON_TRUE@ if test -w $(DESTDIR)@PYTHON_INSTALL_DIR@; then \ --@WITH_PYTHON_TRUE@ (cd $(DESTDIR)@PYTHON_INSTALL_DIR@; \ --@WITH_PYTHON_TRUE@ cp -f $(DESTDIR)$(pkgpythondir)/libgv_python.so _gv.so; \ --@WITH_PYTHON_TRUE@ cp -f $(DESTDIR)$(pkgpythondir)/gv.py gv.py;) \ --@WITH_PYTHON_TRUE@ else \ --@WITH_PYTHON_TRUE@ echo "Warning: @PYTHON_INSTALL_DIR@ is not writable."; \ --@WITH_PYTHON_TRUE@ echo "Skipping system installation of python binding."; \ --@WITH_PYTHON_TRUE@ fi --@WITH_PYTHON23_TRUE@ -mkdir -p $(DESTDIR)@PYTHON23_INSTALL_DIR@; --@WITH_PYTHON23_TRUE@ if test -w $(DESTDIR)@PYTHON23_INSTALL_DIR@; then \ --@WITH_PYTHON23_TRUE@ (cd $(DESTDIR)@PYTHON23_INSTALL_DIR@; \ --@WITH_PYTHON23_TRUE@ cp -f $(DESTDIR)$(pkgpython23dir)/libgv_python23.so _gv.so; \ --@WITH_PYTHON23_TRUE@ cp -f $(DESTDIR)$(pkgpython23dir)/gv.py gv.py;) \ --@WITH_PYTHON23_TRUE@ else \ --@WITH_PYTHON23_TRUE@ echo "Warning: @PYTHON23_INSTALL_DIR@ is not writable."; \ --@WITH_PYTHON23_TRUE@ echo "Skipping system installation of python23 binding."; \ --@WITH_PYTHON23_TRUE@ fi --@WITH_PYTHON24_TRUE@ -mkdir -p $(DESTDIR)@PYTHON24_INSTALL_DIR@; --@WITH_PYTHON24_TRUE@ if test -w $(DESTDIR)@PYTHON24_INSTALL_DIR@; then \ --@WITH_PYTHON24_TRUE@ (cd $(DESTDIR)@PYTHON24_INSTALL_DIR@; \ --@WITH_PYTHON24_TRUE@ cp -f $(DESTDIR)$(pkgpython24dir)/libgv_python24.so _gv.so; \ --@WITH_PYTHON24_TRUE@ cp -f $(DESTDIR)$(pkgpython24dir)/gv.py gv.py;) \ --@WITH_PYTHON24_TRUE@ else \ --@WITH_PYTHON24_TRUE@ echo "Warning: @PYTHON24_INSTALL_DIR@ is not writable."; \ --@WITH_PYTHON24_TRUE@ echo "Skipping system installation of python24 binding."; \ --@WITH_PYTHON24_TRUE@ fi --@WITH_PYTHON25_TRUE@ -mkdir -p $(DESTDIR)@PYTHON25_INSTALL_DIR@; --@WITH_PYTHON25_TRUE@ if test -w $(DESTDIR)@PYTHON25_INSTALL_DIR@; then \ --@WITH_PYTHON25_TRUE@ (cd $(DESTDIR)@PYTHON25_INSTALL_DIR@; \ --@WITH_PYTHON25_TRUE@ cp -f $(DESTDIR)$(pkgpython25dir)/libgv_python25.so _gv.so; \ --@WITH_PYTHON25_TRUE@ cp -f $(DESTDIR)$(pkgpython25dir)/gv.py gv.py;) \ --@WITH_PYTHON25_TRUE@ else \ --@WITH_PYTHON25_TRUE@ echo "Warning: @PYTHON25_INSTALL_DIR@ is not writable."; \ --@WITH_PYTHON25_TRUE@ echo "Skipping system installation of python25 binding."; \ --@WITH_PYTHON25_TRUE@ fi --@WITH_PYTHON26_TRUE@ -mkdir -p $(DESTDIR)@PYTHON26_INSTALL_DIR@; --@WITH_PYTHON26_TRUE@ if test -w $(DESTDIR)@PYTHON26_INSTALL_DIR@; then \ --@WITH_PYTHON26_TRUE@ (cd $(DESTDIR)@PYTHON26_INSTALL_DIR@; \ --@WITH_PYTHON26_TRUE@ cp -f $(DESTDIR)$(pkgpython26dir)/libgv_python26.so _gv.so; \ --@WITH_PYTHON26_TRUE@ cp -f $(DESTDIR)$(pkgpython26dir)/gv.py gv.py;) \ --@WITH_PYTHON26_TRUE@ else \ --@WITH_PYTHON26_TRUE@ echo "Warning: @PYTHON26_INSTALL_DIR@ is not writable."; \ --@WITH_PYTHON26_TRUE@ echo "Skipping system installation of python26 binding."; \ --@WITH_PYTHON26_TRUE@ fi --@WITH_PYTHON27_TRUE@ -mkdir -p $(DESTDIR)@PYTHON27_INSTALL_DIR@; --@WITH_PYTHON27_TRUE@ if test -w $(DESTDIR)@PYTHON27_INSTALL_DIR@; then \ --@WITH_PYTHON27_TRUE@ (cd $(DESTDIR)@PYTHON27_INSTALL_DIR@; \ --@WITH_PYTHON27_TRUE@ cp -f $(DESTDIR)$(pkgpython27dir)/libgv_python27.so _gv.so; \ --@WITH_PYTHON27_TRUE@ cp -f $(DESTDIR)$(pkgpython27dir)/gv.py gv.py;) \ --@WITH_PYTHON27_TRUE@ else \ --@WITH_PYTHON27_TRUE@ echo "Warning: @PYTHON27_INSTALL_DIR@ is not writable."; \ --@WITH_PYTHON27_TRUE@ echo "Skipping system installation of python27 binding."; \ --@WITH_PYTHON27_TRUE@ fi --@WITH_RUBY_TRUE@ -mkdir -p $(DESTDIR)@RUBY_INSTALL_DIR@; --@WITH_RUBY_TRUE@ if test -w $(DESTDIR)@RUBY_INSTALL_DIR@; then \ --@WITH_RUBY_TRUE@ (cd $(DESTDIR)@RUBY_INSTALL_DIR@; \ --@WITH_RUBY_TRUE@ cp -f $(DESTDIR)$(pkgrubydir)/libgv_ruby.so gv.so;) \ --@WITH_RUBY_TRUE@ else \ --@WITH_RUBY_TRUE@ echo "Warning: @RUBY_INSTALL_DIR@ is not writable."; \ --@WITH_RUBY_TRUE@ echo "Skipping system installation of ruby binding."; \ --@WITH_RUBY_TRUE@ fi --@WITH_TCL_TRUE@ -mkdir -p $(DESTDIR)@TCL_INSTALL_DIR@; --@WITH_TCL_TRUE@ if test -w $(DESTDIR)@TCL_INSTALL_DIR@/; then \ --@WITH_TCL_TRUE@ (cd $(DESTDIR)@TCL_INSTALL_DIR@; \ --@WITH_TCL_TRUE@ cp -rf $(DESTDIR)$(pkgtcldir) @PACKAGE_NAME@;) \ --@WITH_TCL_TRUE@ else \ --@WITH_TCL_TRUE@ echo "Warning: @TCL_INSTALL_DIR@ is not writable."; \ --@WITH_TCL_TRUE@ echo "Skipping system installation of tcl bindings."; \ --@WITH_TCL_TRUE@ fi -+ echo "(installing in non-owned directories has been patched out)" - - # removal of installs into @xxx_INSTALL_DIR@ fail if root - # has installed a system copy diff --git a/easybuild/easyconfigs/g/Graphviz/Graphviz-2.42.2-GCCcore-8.3.0-Java-11.eb b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.42.2-GCCcore-8.3.0-Java-11.eb new file mode 100644 index 00000000000..bc1b89f5f65 --- /dev/null +++ b/easybuild/easyconfigs/g/Graphviz/Graphviz-2.42.2-GCCcore-8.3.0-Java-11.eb @@ -0,0 +1,90 @@ +easyblock = 'ConfigureMake' + +name = 'Graphviz' +version = '2.42.2' +versionsuffix = '-Java-%(javaver)s' + +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': '8.3.0'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://gitlab.com/graphviz/graphviz/-/archive/stable_release_%(version)s'] +sources = [{'download_filename': '%(namelower)s-stable_release_%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}] +patches = [ + 'Graphviz-%(version)s_skip-install-data-hook.patch', + 'Graphviz-2.40.1_coverity-scan-fixes.patch', +] +checksums = [ + '3134255f7bc49efac08a6e8a4fbaf32bdfe27b480cc630af51ce420ef994d78a', # graphviz-2.42.2.tar.gz + '3d06544c435a6255f6a8f3b36df3102060667b50ffd72e4942bbe546b9363859', # Graphviz-2.42.2_skip-install-data-hook.patch + 'a0cbd4b1b94fffd5c4e18694d8e31686f0ed7566c66e8ebb159e06bc4045a331', # Graphviz-2.40.1_coverity-scan-fixes.patch +] + +builddependencies = [ + ('Autotools', '20180311'), + ('flex', '2.6.4'), + ('Bison', '3.3.2'), + ('SWIG', '4.0.1'), + ('pkg-config', '0.29.2'), + ('binutils', '2.32'), +] + +dependencies = [ + ('FriBidi', '1.0.5'), + ('Gdk-Pixbuf', '2.38.2'), + ('Ghostscript', '9.50'), + ('GTS', '0.7.6'), + ('Java', '11', '', True), + ('libgd', '2.2.5'), + ('Pango', '1.44.7'), + ('Perl', '5.30.0'), + ('Qt5', '5.13.1'), + ('Tcl', '8.6.9'), + ('zlib', '1.2.11'), +] + +preconfigopts = './autogen.sh NOCONFIG && ' + +configopts = '--enable-python=no ' +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' + +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', 'dotty', 'edgepaint', 'gc', 'gml2gv', 'graphml2gv', 'gv2gml', + 'gvcolor', 'gvedit', 'gvgen', 'gvmap', 'gvmap.sh', 'gvpack', 'gvpr', 'gxl2gv', + 'lefty', 'lneato', '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/pkgconfig', 'share'] +} + +sanity_check_commands = [ + ("test ! -d $EBROOTTCL/lib/*/graphviz", ''), + ("test ! -d $EBROOTTCL/lib64/*/graphviz", ''), +] + +modextrapaths = { + 'CLASSPATH': 'lib/graphviz/java', + 'LD_LIBRARY_PATH': 'lib/graphviz/java', + 'TCLLIBPATH': 'lib/graphviz/tcl', +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/g/g2clib/g2clib-1.6.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/g2clib/g2clib-1.6.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..6f046c0e114 --- /dev/null +++ b/easybuild/easyconfigs/g/g2clib/g2clib-1.6.0-GCCcore-9.3.0.eb @@ -0,0 +1,27 @@ +name = 'g2clib' +version = '1.6.0' + +homepage = 'https://www.nco.ncep.noaa.gov/pmb/codes/GRIB2/' +description = """Library contains GRIB2 encoder/decoder ('C' version).""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [homepage] +sources = ['%(name)s-%(version)s.tar'] +patches = ['g2clib-%(version)s-with-JasPer-2.x.patch'] +checksums = [ + 'afec1ea29979b84369d0f46f305ed12f73f1450ec2db737664ec7f75c1163add', # g2clib-1.6.0.tar + '2e62502d7823be5407ea023029dd206930a1034421d141dd346b468e177a7fce', # g2clib-1.6.0-with-JasPer-2.x.patch +] + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('JasPer', '2.0.14'), + ('libpng', '1.6.37'), +] + +# parallel build tends to fail +parallel = 1 + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/g/g2lib/g2lib-3.1.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/g2lib/g2lib-3.1.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..77a3aebf8b0 --- /dev/null +++ b/easybuild/easyconfigs/g/g2lib/g2lib-3.1.0-GCCcore-9.3.0.eb @@ -0,0 +1,35 @@ +name = 'g2lib' +version = '3.1.0' + +homepage = 'https://www.nco.ncep.noaa.gov/pmb/codes/GRIB2/' +description = """Library contains GRIB2 encoder/decoder and search/indexing routines.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [homepage] +sources = ['%(name)s-%(version)s.tar'] +patches = [ + '%(name)s-%(version)s_makefile.patch', + '%(name)s-%(version)s-kind.patch', + '%(name)s-1.4.0-with-JasPer-2.x.patch', +] +checksums = [ + '8a2de259de82094c5867f8d7945359f211592a4a503f9ed65dc60469337414e7', # g2lib-3.1.0.tar + '702f76c77638fb36b662caf96890a69f19c507778c92aa1e163898b150cc8282', # g2lib-3.1.0_makefile.patch + '6412022d37a470e38e4f2c4b7b6bd7cbb9581027b5ff187f4379b7dc0d72cbb5', # g2lib-3.1.0-kind.patch + 'cd4c668dab76ef3b61fa902c2eed24747517d4cbc3ec0aaffab37e6b80946170', # g2lib-1.4.0-with-JasPer-2.x.patch +] + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('JasPer', '2.0.14'), + ('libpng', '1.6.37'), +] + +buildopts = 'CFLAGS="$CFLAGS -DLINUXG95 -D__64BIT__" FFLAGS="$FFLAGS -fno-range-check -I." FC=$FC CC=$CC' + +# parallel build tends to fail +parallel = 1 + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/g/g2lib/g2lib-3.1.0-kind.patch b/easybuild/easyconfigs/g/g2lib/g2lib-3.1.0-kind.patch new file mode 100644 index 00000000000..c808bc39de9 --- /dev/null +++ b/easybuild/easyconfigs/g/g2lib/g2lib-3.1.0-kind.patch @@ -0,0 +1,41 @@ +# Fix kind of arguments used in iand +# S.D. Pinches, 30.08.2020 +diff -Nru g2lib-3.1.0-orig/intmath.f g2lib-3.1.0/intmath.f +--- g2lib-3.1.0-orig/intmath.f 2017-06-12 21:38:08.000000000 +0200 ++++ g2lib-3.1.0/intmath.f 2020-08-30 18:24:35.724869000 +0200 +@@ -84,7 +84,7 @@ + ilog2_8=0 + i=i_in + if(i<=0) return +- if(iand(i,i-1)/=0) then ++ if(iand(i,i-1_8)/=0) then + !write(0,*) 'iand i-1' + ilog2_8=1 + endif +@@ -129,7 +129,7 @@ + ilog2_4=0 + i=i_in + if(i<=0) return +- if(iand(i,i-1)/=0) then ++ if(iand(i,i-1_4)/=0) then + !write(0,*) 'iand i-1' + ilog2_4=1 + endif +@@ -169,7 +169,7 @@ + ilog2_2=0 + i=i_in + if(i<=0) return +- if(iand(i,i-1)/=0) then ++ if(iand(i,i-1_2)/=0) then + !write(0,*) 'iand i-1' + ilog2_2=1 + endif +@@ -204,7 +204,7 @@ + ilog2_1=0 + i=i_in + if(i<=0) return +- if(iand(i,i-1)/=0) then ++ if(iand(i,i-1_1)/=0) then + !write(0,*) 'iand i-1' + ilog2_1=1 + endif diff --git a/easybuild/easyconfigs/g/gc/gc-7.4.4-GCC-4.9.3-2.25.eb b/easybuild/easyconfigs/g/gc/gc-7.4.4-GCC-4.9.3-2.25.eb index 9c888969f86..c8e36d63f1a 100644 --- a/easybuild/easyconfigs/g/gc/gc-7.4.4-GCC-4.9.3-2.25.eb +++ b/easybuild/easyconfigs/g/gc/gc-7.4.4-GCC-4.9.3-2.25.eb @@ -3,20 +3,25 @@ easyblock = 'ConfigureMake' name = 'gc' version = '7.4.4' -homepage = 'http://hboehm.info/gc/' +homepage = 'https://hboehm.info/gc/' description = """The Boehm-Demers-Weiser conservative garbage collector can be used as a garbage collecting replacement for C malloc or C++ new.""" toolchain = {'name': 'GCC', 'version': '4.9.3-2.25'} source_urls = [ - 'http://hboehm.info/gc/gc_source/', + 'https://github.com/ivmai/bdwgc/releases/download/v%(version)s/', # preferred for gc-%(version)s.tar.gz + 'https://hboehm.info/gc/gc_source/', # alternate for gc-%(version)s.tar.gz 'https://github.com/ivmai/libatomic_ops/archive/', ] sources = [ SOURCE_TAR_GZ, 'libatomic_ops-7_4_4.tar.gz', ] +checksums = [ + 'e5ca9b628b765076b6ab26f882af3a1a29cde786341e08b9f366604f74e4db84', # gc-7.4.4.tar.gz + 'ef8335676f18a111f885d48810ab090fb6bfad94e5a5dd76cdccd2a536828662', # libatomic_ops-7_4_4.tar.gz +] preconfigopts = "ln -s %(builddir)s/libatomic_ops*/ libatomic_ops && " diff --git a/easybuild/easyconfigs/g/gc/gc-7.4.4-foss-2016a.eb b/easybuild/easyconfigs/g/gc/gc-7.4.4-foss-2016a.eb index c12a61e57de..38500bf3d7a 100644 --- a/easybuild/easyconfigs/g/gc/gc-7.4.4-foss-2016a.eb +++ b/easybuild/easyconfigs/g/gc/gc-7.4.4-foss-2016a.eb @@ -3,20 +3,25 @@ easyblock = 'ConfigureMake' name = 'gc' version = '7.4.4' -homepage = 'http://hboehm.info/gc/' +homepage = 'https://hboehm.info/gc/' description = """The Boehm-Demers-Weiser conservative garbage collector can be used as a garbage collecting replacement for C malloc or C++ new.""" toolchain = {'name': 'foss', 'version': '2016a'} source_urls = [ - 'http://hboehm.info/gc/gc_source/', + 'https://github.com/ivmai/bdwgc/releases/download/v%(version)s/', # preferred for gc-%(version)s.tar.gz + 'https://hboehm.info/gc/gc_source/', # alternate for gc-%(version)s.tar.gz 'https://github.com/ivmai/libatomic_ops/archive/', ] sources = [ SOURCE_TAR_GZ, 'libatomic_ops-7_4_4.tar.gz', ] +checksums = [ + 'e5ca9b628b765076b6ab26f882af3a1a29cde786341e08b9f366604f74e4db84', # gc-7.4.4.tar.gz + 'ef8335676f18a111f885d48810ab090fb6bfad94e5a5dd76cdccd2a536828662', # libatomic_ops-7_4_4.tar.gz +] preconfigopts = "ln -s %(builddir)s/libatomic_ops*/ libatomic_ops && " diff --git a/easybuild/easyconfigs/g/gc/gc-7.6.0-GCCcore-6.4.0.eb b/easybuild/easyconfigs/g/gc/gc-7.6.0-GCCcore-6.4.0.eb index aa7d33f6807..8665fa9df31 100644 --- a/easybuild/easyconfigs/g/gc/gc-7.6.0-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/g/gc/gc-7.6.0-GCCcore-6.4.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'gc' version = '7.6.0' -homepage = 'http://hboehm.info/gc/' +homepage = 'https://hboehm.info/gc/' description = """ The Boehm-Demers-Weiser conservative garbage collector can be used as a @@ -13,7 +13,8 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '6.4.0'} source_urls = [ - 'http://hboehm.info/gc/gc_source/', + 'https://github.com/ivmai/bdwgc/releases/download/v%(version)s/', # preferred for gc-%(version)s.tar.gz + 'https://hboehm.info/gc/gc_source/', # alternate for gc-%(version)s.tar.gz 'https://github.com/ivmai/libatomic_ops/releases/download/v7.4.6/', ] sources = [ diff --git a/easybuild/easyconfigs/g/gc/gc-7.6.10-GCCcore-8.2.0.eb b/easybuild/easyconfigs/g/gc/gc-7.6.10-GCCcore-8.2.0.eb index 082c743298c..4df52c27ab7 100644 --- a/easybuild/easyconfigs/g/gc/gc-7.6.10-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/g/gc/gc-7.6.10-GCCcore-8.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'gc' version = '7.6.10' -homepage = 'http://hboehm.info/gc/' +homepage = 'https://hboehm.info/gc/' description = """ The Boehm-Demers-Weiser conservative garbage collector can be used as a @@ -13,7 +13,8 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '8.2.0'} source_urls = [ - 'http://hboehm.info/gc/gc_source/', + 'https://github.com/ivmai/bdwgc/releases/download/v%(version)s/', # preferred for gc-%(version)s.tar.gz + 'https://hboehm.info/gc/gc_source/', # alternate for gc-%(version)s.tar.gz 'https://github.com/ivmai/libatomic_ops/releases/download/v%(version)s/', ] sources = [ diff --git a/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-8.3.0.eb b/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-8.3.0.eb index e9e5eb42830..d29e826970a 100644 --- a/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-8.3.0.eb @@ -13,7 +13,8 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '8.3.0'} source_urls = [ - 'https://hboehm.info/gc/gc_source/', + 'https://github.com/ivmai/bdwgc/releases/download/v%(version)s/', # preferred for gc-%(version)s.tar.gz + 'https://hboehm.info/gc/gc_source/', # alternate for gc-%(version)s.tar.gz 'https://github.com/ivmai/libatomic_ops/releases/download/v%s/' % local_libatomic_version, ] sources = [ diff --git a/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-9.3.0.eb index d1d7f7cd917..f03036ca4e2 100644 --- a/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/g/gc/gc-7.6.12-GCCcore-9.3.0.eb @@ -14,7 +14,8 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '9.3.0'} source_urls = [ - 'https://hboehm.info/gc/gc_source/', + 'https://github.com/ivmai/bdwgc/releases/download/v%(version)s/', # preferred for gc-%(version)s.tar.gz + 'https://hboehm.info/gc/gc_source/', # alternate for gc-%(version)s.tar.gz 'https://github.com/ivmai/libatomic_ops/releases/download/v%s/' % local_libatomic_version, ] sources = [ diff --git a/easybuild/easyconfigs/g/gc/gc-7.6.4-GCCcore-7.3.0.eb b/easybuild/easyconfigs/g/gc/gc-7.6.4-GCCcore-7.3.0.eb index 05015cb4cfb..3d61fa8e880 100644 --- a/easybuild/easyconfigs/g/gc/gc-7.6.4-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/g/gc/gc-7.6.4-GCCcore-7.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'gc' version = '7.6.4' -homepage = 'http://hboehm.info/gc/' +homepage = 'https://hboehm.info/gc/' description = """ The Boehm-Demers-Weiser conservative garbage collector can be used as a @@ -13,7 +13,8 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '7.3.0'} source_urls = [ - 'http://hboehm.info/gc/gc_source/', + 'https://github.com/ivmai/bdwgc/releases/download/v%(version)s/', # preferred for gc-%(version)s.tar.gz + 'https://hboehm.info/gc/gc_source/', # alternate for gc-%(version)s.tar.gz 'https://github.com/ivmai/libatomic_ops/releases/download/v%(version)s/', ] sources = [ diff --git a/easybuild/easyconfigs/g/gengetopt/gengetopt-2.23-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/gengetopt/gengetopt-2.23-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..6d7bd73ae1b --- /dev/null +++ b/easybuild/easyconfigs/g/gengetopt/gengetopt-2.23-GCCcore-9.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'gengetopt' +version = '2.23' + +homepage = 'https://www.gnu.org/software/gengetopt/gengetopt.html' +description = "Gengetopt is a tool to write command line option parsing code for C programs." + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_XZ] +checksums = ['b941aec9011864978dd7fdeb052b1943535824169d2aa2b0e7eae9ab807584ac'] + +builddependencies = [ + ('binutils', '2.34'), + ('texinfo', '6.7'), # provides makeinfo +] + +sanity_check_paths = { + 'files': ['bin/gengetopt'], + 'dirs': ['share'], +} + +sanity_check_commands = ["gengetopt --help"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/git/git-2.23.0-GCCcore-9.3.0-nodocs.eb b/easybuild/easyconfigs/g/git/git-2.23.0-GCCcore-9.3.0-nodocs.eb new file mode 100644 index 00000000000..1c64da82489 --- /dev/null +++ b/easybuild/easyconfigs/g/git/git-2.23.0-GCCcore-9.3.0-nodocs.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'git' +version = '2.23.0' +versionsuffix = '-nodocs' + +homepage = 'https://git-scm.com/' +description = """Git is a free and open source distributed version control system designed +to handle everything from small to very large projects with speed and efficiency.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/git/git/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['7d84f5d6f48e95b467a04a8aa1d474e0d21abc7877998af945568d2634fea46a'] + +builddependencies = [ + ('binutils', '2.34'), + ('Autotools', '20180311'), +] + +dependencies = [ + ('cURL', '7.69.1'), + ('expat', '2.2.9'), + ('gettext', '0.20.1'), + ('Perl', '5.30.2'), +] + +preconfigopts = 'make configure && ' + +# Work around git build system bug. If LIBS contains -lpthread, then configure +# will not append -lpthread to LDFLAGS, but Makefile ignores LIBS. +configopts = "--with-perl=${EBROOTPERL}/bin/perl --enable-pthreads='-lpthread'" + +sanity_check_paths = { + 'files': ['bin/git'], + 'dirs': ['libexec/git-core', 'share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gmpy2/gmpy2-2.1.0b5-GCC-9.3.0.eb b/easybuild/easyconfigs/g/gmpy2/gmpy2-2.1.0b5-GCC-9.3.0.eb new file mode 100644 index 00000000000..30f01d80cf2 --- /dev/null +++ b/easybuild/easyconfigs/g/gmpy2/gmpy2-2.1.0b5-GCC-9.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'gmpy2' +version = '2.1.0b5' + +homepage = 'https://github.com/aleaxit/gmpy' +description = "GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x" + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['8951bcfc61c0f40102b92a4777daf9eb85445b537c4d09086deb0e097190bef0'] + +multi_deps = {'Python': ['3.8.2', '2.7.18']} + +dependencies = [ + ('GMP', '6.2.0'), + ('MPFR', '4.0.2'), + ('MPC', '1.1.0'), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-foss-2019b-Python-3.7.4.eb index 084572f20f1..0960eb0bde3 100644 --- a/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-foss-2019b-Python-3.7.4.eb @@ -21,8 +21,8 @@ builddependencies = [ dependencies = [ ('Python', '3.7.4'), - ('PETSc', '3.12.4'), - ('SLEPc', '3.12.2'), + ('PETSc', '3.12.4', versionsuffix), + ('SLEPc', '3.12.2', versionsuffix), ] separate_build_dir = True diff --git a/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-intel-2019b-Python-2.7.16.eb b/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-intel-2019b-Python-2.7.16.eb index 298fef9ef18..639e2102517 100644 --- a/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-intel-2019b-Python-2.7.16.eb +++ b/easybuild/easyconfigs/g/gmsh/gmsh-4.5.6-intel-2019b-Python-2.7.16.eb @@ -21,8 +21,8 @@ builddependencies = [ dependencies = [ ('Python', '2.7.16'), - ('PETSc', '3.12.4'), - ('SLEPc', '3.12.2'), + ('PETSc', '3.12.4', versionsuffix), + ('SLEPc', '3.12.2', versionsuffix), ] separate_build_dir = True diff --git a/easybuild/easyconfigs/g/gomkl/gomkl-2020a.eb b/easybuild/easyconfigs/g/gomkl/gomkl-2020a.eb new file mode 100644 index 00000000000..8ebab529cfb --- /dev/null +++ b/easybuild/easyconfigs/g/gomkl/gomkl-2020a.eb @@ -0,0 +1,19 @@ +easyblock = "Toolchain" + +name = 'gomkl' +version = '2020a' + +homepage = '(none)' +description = """GNU Compiler Collection (GCC) based compiler toolchain with OpenMPI and MKL""" + +toolchain = SYSTEM + +local_comp = ('GCC', '9.3.0') + +dependencies = [ + local_comp, + ('OpenMPI', '4.0.3', '', local_comp), + ('imkl', '2020.1.217', '', ('gompi', version)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/g/gtest/gtest-1.10.0-GCCcore-8.3.0.eb b/easybuild/easyconfigs/g/googletest/googletest-1.10.0-GCCcore-8.3.0.eb similarity index 59% rename from easybuild/easyconfigs/g/gtest/gtest-1.10.0-GCCcore-8.3.0.eb rename to easybuild/easyconfigs/g/googletest/googletest-1.10.0-GCCcore-8.3.0.eb index 4eb1891c337..49422b5dfde 100644 --- a/easybuild/easyconfigs/g/gtest/gtest-1.10.0-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/g/googletest/googletest-1.10.0-GCCcore-8.3.0.eb @@ -1,6 +1,6 @@ easyblock = "CMakeMake" -name = 'gtest' +name = 'googletest' version = '1.10.0' homepage = 'https://github.com/google/googletest' @@ -16,10 +16,14 @@ builddependencies = [ ('CMake', '3.15.3'), ('binutils', '2.32'), ] +# build twice, once for static, once for shared libraries +configopts = ['', ' -DBUILD_SHARED_LIBS=ON '] +separate_build_dir = True sanity_check_paths = { - 'files': ['lib/libgtest.a', 'lib/libgmock.a'], - 'dirs': ['include'], + 'files': ['lib/lib%s.%s' % (local_lib, local_ext) for local_lib in ['gmock', 'gmock_main', 'gtest', 'gtest_main'] + for local_ext in ['a', SHLIB_EXT]], + 'dirs': ['include/gmock', 'include/gtest'], } moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/googletest/googletest-1.10.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/g/googletest/googletest-1.10.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..18cacbd5270 --- /dev/null +++ b/easybuild/easyconfigs/g/googletest/googletest-1.10.0-GCCcore-9.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeMake' + +name = 'googletest' +version = '1.10.0' + +homepage = 'https://github.com/google/googletest' +description = "Google's framework for writing C++ tests on a variety of platforms" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/google/googletest/archive/'] +sources = ['release-%(version)s.tar.gz'] +checksums = ['9dc9157a9a1551ec7a7e43daea9a694a0bb5fb8bec81235d8a1e6ef64c716dcb'] + +builddependencies = [ + ('binutils', '2.34'), + ('CMake', '3.16.4'), +] +# build twice, once for static, once for shared libraries +configopts = ['', ' -DBUILD_SHARED_LIBS=ON '] +separate_build_dir = True + +sanity_check_paths = { + 'files': ['lib/lib%s.%s' % (local_lib, local_ext) for local_lib in ['gmock', 'gmock_main', 'gtest', 'gtest_main'] + for local_ext in ['a', SHLIB_EXT]], + 'dirs': ['include/gmock', 'include/gtest'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/g/gtest/gtest-1.8.1-GCCcore-8.2.0.eb b/easybuild/easyconfigs/g/googletest/googletest-1.8.1-GCCcore-8.2.0.eb similarity index 96% rename from easybuild/easyconfigs/g/gtest/gtest-1.8.1-GCCcore-8.2.0.eb rename to easybuild/easyconfigs/g/googletest/googletest-1.8.1-GCCcore-8.2.0.eb index 3d062e73691..64192f6409e 100644 --- a/easybuild/easyconfigs/g/gtest/gtest-1.8.1-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/g/googletest/googletest-1.8.1-GCCcore-8.2.0.eb @@ -1,6 +1,6 @@ easyblock = "CMakeMake" -name = 'gtest' +name = 'googletest' version = '1.8.1' homepage = 'https://github.com/google/googletest' diff --git a/easybuild/easyconfigs/g/graphite2/graphite2-1.3.14-GCCcore-8.3.0.eb b/easybuild/easyconfigs/g/graphite2/graphite2-1.3.14-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..54ea77f48e8 --- /dev/null +++ b/easybuild/easyconfigs/g/graphite2/graphite2-1.3.14-GCCcore-8.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'graphite2' +version = '1.3.14' + +homepage = 'https://scripts.sil.org/cms/scripts/page.php?site_id=projects&item_id=graphite_home' +description = """Graphite is a "smart font" system developed specifically to + handle the complexities of lesser-known languages of the world.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://github.com/silnrsi/graphite/archive/'] +sources = ['%(version)s.zip'] +checksums = ['36e15981af3bf7a3ca3daf53295c8ffde04cf7d163e3474e4d0836e2728b4149'] + +builddependencies = [ + ('CMake', '3.15.3'), + ('binutils', '2.32'), +] + +sanity_check_paths = { + 'files': ['bin/gr2fonttest'] + + ['lib/lib%%(name)s.%s' % x for x in [SHLIB_EXT, 'la']], + 'dirs': ['include/%(name)s', 'share'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/g/gtest/gtest-1.8.0-GCCcore-6.3.0.eb b/easybuild/easyconfigs/g/gtest/gtest-1.8.0-GCCcore-6.3.0.eb deleted file mode 100644 index d9d3d2160c6..00000000000 --- a/easybuild/easyconfigs/g/gtest/gtest-1.8.0-GCCcore-6.3.0.eb +++ /dev/null @@ -1,25 +0,0 @@ -easyblock = "CMakeMake" - -name = 'gtest' -version = '1.8.0' - -homepage = 'https://code.google.com/p/googletest/' -description = "Google's framework for writing C++ tests on a variety of platforms" - -toolchain = {'name': 'GCCcore', 'version': '6.3.0'} - -builddependencies = [ - ('CMake', '3.8.2'), - ('binutils', '2.27'), -] - -sources = ['release-%(version)s.tar.gz'] -source_urls = ['https://github.com/google/googletest/archive/'] -checksums = ['58a6f4277ca2bc8565222b3bbd58a177609e9c488e8a72649359ba51450db7d8'] - -sanity_check_paths = { - 'files': ['lib/libgtest.a', 'lib/libgmock.a'], - 'dirs': ['include'], -} - -moduleclass = 'devel' diff --git a/easybuild/easyconfigs/g/gtest/gtest-1.8.0-GCCcore-6.4.0.eb b/easybuild/easyconfigs/g/gtest/gtest-1.8.0-GCCcore-6.4.0.eb deleted file mode 100644 index 4a00aeee03d..00000000000 --- a/easybuild/easyconfigs/g/gtest/gtest-1.8.0-GCCcore-6.4.0.eb +++ /dev/null @@ -1,25 +0,0 @@ -easyblock = "CMakeMake" - -name = 'gtest' -version = '1.8.0' - -homepage = 'https://code.google.com/p/googletest/' -description = "Google's framework for writing C++ tests on a variety of platforms" - -toolchain = {'name': 'GCCcore', 'version': '6.4.0'} - -builddependencies = [ - ('CMake', '3.10.2'), - ('binutils', '2.28'), -] - -source_urls = ['https://github.com/google/googletest/archive/'] -sources = ['release-%(version)s.tar.gz'] -checksums = ['58a6f4277ca2bc8565222b3bbd58a177609e9c488e8a72649359ba51450db7d8'] - -sanity_check_paths = { - 'files': ['lib/libgtest.a', 'lib/libgmock.a'], - 'dirs': ['include'], -} - -moduleclass = 'devel' diff --git a/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-9.3.0.eb b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..34afcfde732 --- /dev/null +++ b/easybuild/easyconfigs/h/HDF/HDF-4.2.15-GCCcore-9.3.0.eb @@ -0,0 +1,43 @@ +easyblock = 'ConfigureMake' + +name = 'HDF' +version = '4.2.15' + +homepage = 'https://www.hdfgroup.org/products/hdf4/' + +description = """ + HDF (also known as HDF4) is a library and multi-object file format for + storing and managing data between machines. +""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['http://www.hdfgroup.org/ftp/HDF/releases/HDF%(version)s/src/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['dbeeef525af7c2d01539906c28953f0fdab7dba603d1bc1ec4a5af60d002c459'] + +builddependencies = [ + ('binutils', '2.34'), + ('Bison', '3.5.3'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('libjpeg-turbo', '2.0.4'), + ('Szip', '2.1.1'), + ('zlib', '1.2.11'), +] + +configopts = '' +configopts += '--with-szlib=$EBROOTSZIP ' +configopts += '--includedir=%(installdir)s/include/%(namelower)s ' + +modextrapaths = {'CPATH': 'include/hdf'} + +sanity_check_paths = { + 'files': ['lib/libdf.a', 'lib/libhdf4.settings', 'lib/libmfhdf.a'], + 'dirs': ['bin', 'include/hdf'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/HeFFTe/HeFFTe-1.0-foss-2020a.eb b/easybuild/easyconfigs/h/HeFFTe/HeFFTe-1.0-foss-2020a.eb new file mode 100644 index 00000000000..a843130f7b5 --- /dev/null +++ b/easybuild/easyconfigs/h/HeFFTe/HeFFTe-1.0-foss-2020a.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeMake' + +name = 'HeFFTe' +version = '1.0' + +homepage = 'https://icl.utk.edu/fft' +description = "Highly Efficient FFT for Exascale (HeFFTe) library" + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = ['https://bitbucket.org/icl/heffte/get/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['0902479fb5b1bad01438ca0a72efd577a3529c3d8bad0028f3c18d3a4935ca74'] + +builddependencies = [('CMake', '3.16.4')] + +build_shared_libs = True + +configopts = "-DHeffte_ENABLE_FFTW=ON -DFFTW_ROOT=$EBROOTFFTW -DHeffte_ENABLE_CUDA=OFF -DHeffte_ENABLE_MKL=OFF" + +sanity_check_paths = { + 'files': ['lib/libheffte.%s' % SHLIB_EXT], + 'dirs': ['include', 'lib/cmake/Heffte', 'share/heffte/examples'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/h/Horovod/Horovod-0.19.5-fosscuda-2019b-TensorFlow-2.2.0-Python-3.7.4.eb b/easybuild/easyconfigs/h/Horovod/Horovod-0.19.5-fosscuda-2019b-TensorFlow-2.2.0-Python-3.7.4.eb new file mode 100644 index 00000000000..1f9c3d6b011 --- /dev/null +++ b/easybuild/easyconfigs/h/Horovod/Horovod-0.19.5-fosscuda-2019b-TensorFlow-2.2.0-Python-3.7.4.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonBundle' + +name = 'Horovod' +version = '0.19.5' +local_tf_version = '2.2.0' +versionsuffix = '-TensorFlow-%s-Python-%%(pyver)s' % local_tf_version + +homepage = 'https://github.com/uber/horovod' +description = "Horovod is a distributed training framework for TensorFlow." + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('PyYAML', '5.1.2'), + ('TensorFlow', local_tf_version, '-Python-%(pyver)s'), +] + +use_pip = True +sanity_pip_check = True + +preinstallopts = 'HOROVOD_WITH_MPI=1 HOROVOD_GPU_ALLREDUCE=NCCL HOROVOD_GPU_BROADCAST=NCCL ' +preinstallopts += 'HOROVOD_WITH_TENSORFLOW=1 HOROVOD_WITHOUT_PYTORCH=1 HOROVOD_WITHOUT_MXNET=1 ' + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('cloudpickle', '1.5.0', { + 'checksums': ['820c9245cebdec7257211cbe88745101d5d6a042bca11336d78ebd4897ddbc82'], + }), + ('horovod', version, { + 'checksums': ['428d9ba5ff277467be77e4e707d40b915f7d9e6920a2645f647fcb2cea59c366'], + }), +] + +sanity_check_paths = { + 'files': ['bin/horovodrun'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2019b-Python-3.7.4.eb index a6a689db5f9..73db8f1cc14 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2019b-Python-3.7.4.eb @@ -28,10 +28,10 @@ dependencies = [ ('HDF5', '1.10.5'), ] -use_pip = False +use_pip = True +sanity_pip_check = True download_dep_fail = True -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2020a-Python-3.8.2.eb index 1b2202193d9..898aceeb991 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-foss-2020a-Python-3.8.2.eb @@ -28,10 +28,10 @@ dependencies = [ ('HDF5', '1.10.6'), ] -use_pip = False +use_pip = True +sanity_pip_check = True download_dep_fail = True -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = 'python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-fosscuda-2019b-Python-3.7.4.eb index e6885265b40..868d0058df5 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-fosscuda-2019b-Python-3.7.4.eb @@ -28,10 +28,10 @@ dependencies = [ ('HDF5', '1.10.5'), ] -use_pip = False +use_pip = True +sanity_pip_check = True download_dep_fail = True -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2019b-Python-3.7.4.eb index b682a8c51c2..f2a37cad24d 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2019b-Python-3.7.4.eb @@ -28,10 +28,10 @@ dependencies = [ ('HDF5', '1.10.5'), ] -use_pip = False +use_pip = True +sanity_pip_check = True download_dep_fail = True -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2020a-Python-3.8.2.eb index d7b78c733fa..d7b89e9d7c4 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intel-2020a-Python-3.8.2.eb @@ -28,10 +28,10 @@ dependencies = [ ('HDF5', '1.10.6'), ] -use_pip = False +use_pip = True +sanity_pip_check = True download_dep_fail = True -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = 'python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intelcuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intelcuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..55f3c6286dd --- /dev/null +++ b/easybuild/easyconfigs/h/h5py/h5py-2.10.0-intelcuda-2019b-Python-3.7.4.eb @@ -0,0 +1,37 @@ +easyblock = 'PythonPackage' + +name = 'h5py' +version = '2.10.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.h5py.org/' +description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, + version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous + amounts of data.""" + +toolchain = {'name': 'intelcuda', 'version': '2019b'} +toolchainopts = {'usempi': True} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['h5py-%(version)s_avoid-mpi-init.patch'] +checksums = [ + '84412798925dc870ffd7107f045d7659e60f5d46d1c70c700375248bf6bf512d', # h5py-2.10.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] + +builddependencies = [('pkgconfig', '1.5.1', versionsuffix)] + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('HDF5', '1.10.5'), +] + +use_pip = True +sanity_pip_check = True +download_dep_fail = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-2.7.15.eb index fb026730605..edfee06ed27 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-2.7.15.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-2.7.15.eb @@ -4,7 +4,7 @@ name = 'h5py' version = '2.8.0' versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -14,10 +14,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955'] - -# to really use mpi enabled hdf5 we now seem to need a configure step -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + 'e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955', # h5py-2.8.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] dependencies = [ ('Python', '2.7.15'), @@ -25,9 +26,11 @@ dependencies = [ ('pkgconfig', '1.3.1', '-Python-%(pyver)s'), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-3.6.6.eb index 7290567f3a0..abbf19bc43e 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-foss-2018b-Python-3.6.6.eb @@ -4,7 +4,7 @@ name = 'h5py' version = '2.8.0' versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -14,10 +14,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955'] - -# to really use mpi enabled hdf5 we now seem to need a configure step -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + 'e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955', # h5py-2.8.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] dependencies = [ ('Python', '3.6.6'), @@ -25,9 +26,11 @@ dependencies = [ ('pkgconfig', '1.3.1', '-Python-%(pyver)s'), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-2.7.15.eb index 6e21ee90ec5..3e967cfc11e 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-2.7.15.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-2.7.15.eb @@ -4,7 +4,7 @@ name = 'h5py' version = '2.8.0' versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -14,10 +14,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955'] - -# to really use mpi enabled hdf5 we now seem to need a configure step -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + 'e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955', # h5py-2.8.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] dependencies = [ ('Python', '2.7.15'), @@ -25,9 +26,11 @@ dependencies = [ ('pkgconfig', '1.3.1', '-Python-%(pyver)s'), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-3.6.6.eb index 769ac039214..381a19379ae 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-fosscuda-2018b-Python-3.6.6.eb @@ -4,7 +4,7 @@ name = 'h5py' version = '2.8.0' versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -14,10 +14,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955'] - -# to really use mpi enabled hdf5 we now seem to need a configure step -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + 'e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955', # h5py-2.8.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] dependencies = [ ('Python', '3.6.6'), @@ -25,9 +26,11 @@ dependencies = [ ('pkgconfig', '1.3.1', '-Python-%(pyver)s'), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15-serial.eb b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15-serial.eb index 56830b1309a..2cd435e80b5 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15-serial.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15-serial.eb @@ -4,7 +4,7 @@ name = 'h5py' version = '2.8.0' versionsuffix = '-Python-%(pyver)s-serial' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -22,11 +22,11 @@ dependencies = [ ('pkgconfig', '1.3.1', '-Python-%(pyver)s'), ] -prebuildopts = "python setup.py configure --hdf5=$EBROOTHDF5 && " +download_dep_fail = True +use_pip = True -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15.eb index 4e08d5dbfda..04f90e4b409 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-2.7.15.eb @@ -4,7 +4,7 @@ name = 'h5py' version = '2.8.0' versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -14,10 +14,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955'] - -# to really use mpi enabled hdf5 we now seem to need a configure step -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + 'e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955', # h5py-2.8.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] dependencies = [ ('Python', '2.7.15'), @@ -25,9 +26,11 @@ dependencies = [ ('pkgconfig', '1.3.1', '-Python-%(pyver)s'), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-3.6.6.eb index 21867181a64..bb66bc7ff51 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.8.0-intel-2018b-Python-3.6.6.eb @@ -4,7 +4,7 @@ name = 'h5py' version = '2.8.0' versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -14,10 +14,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955'] - -# to really use mpi enabled hdf5 we now seem to need a configure step -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + 'e626c65a8587921ebc7fb8d31a49addfdd0b9a9aa96315ea484c09803337b955', # h5py-2.8.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] dependencies = [ ('Python', '3.6.6'), @@ -25,9 +26,11 @@ dependencies = [ ('pkgconfig', '1.3.1', '-Python-%(pyver)s'), ] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' + +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-foss-2019a.eb b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-foss-2019a.eb index b919c5b0719..5cdce347651 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-foss-2019a.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-foss-2019a.eb @@ -3,7 +3,7 @@ easyblock = 'PythonPackage' name = 'h5py' version = '2.9.0' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -13,7 +13,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002'] +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + '9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002', # h5py-2.9.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] multi_deps = {'Python': ['3.7.2', '2.7.15']} @@ -24,10 +28,11 @@ dependencies = [ ('HDF5', '1.10.5'), ] -use_pip = False download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-fosscuda-2019a.eb b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-fosscuda-2019a.eb index 01a2c967563..78746893a61 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-fosscuda-2019a.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-fosscuda-2019a.eb @@ -3,7 +3,7 @@ easyblock = 'PythonPackage' name = 'h5py' version = '2.9.0' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -13,7 +13,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002'] +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + '9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002', # h5py-2.9.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] multi_deps = {'Python': ['3.7.2', '2.7.15']} @@ -24,10 +28,11 @@ dependencies = [ ('HDF5', '1.10.5'), ] -use_pip = False download_dep_fail = True +use_pip = True + +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intel-2019a.eb b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intel-2019a.eb index 10fe86a9292..56cf5f3e8c3 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intel-2019a.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intel-2019a.eb @@ -3,7 +3,7 @@ easyblock = 'PythonPackage' name = 'h5py' version = '2.9.0' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -13,7 +13,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002'] +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + '9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002', # h5py-2.9.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] multi_deps = {'Python': ['3.7.2', '2.7.15']} @@ -24,13 +28,11 @@ dependencies = [ ('HDF5', '1.10.5'), ] -use_pip = False download_dep_fail = True +use_pip = True -# required because we're building Python packages using Intel compilers on top of Python built with GCC -check_ldshared = True +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intelcuda-2019a.eb b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intelcuda-2019a.eb index 8c65086fa06..50a43b74e30 100644 --- a/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intelcuda-2019a.eb +++ b/easybuild/easyconfigs/h/h5py/h5py-2.9.0-intelcuda-2019a.eb @@ -3,7 +3,7 @@ easyblock = 'PythonPackage' name = 'h5py' version = '2.9.0' -homepage = 'http://www.h5py.org/' +homepage = 'https://www.h5py.org/' description = """HDF5 for Python (h5py) is a general-purpose Python interface to the Hierarchical Data Format library, version 5. HDF5 is a versatile, mature scientific software library designed for the fast, flexible storage of enormous amounts of data.""" @@ -13,7 +13,11 @@ toolchainopts = {'usempi': True} source_urls = [PYPI_SOURCE] sources = [SOURCE_TAR_GZ] -checksums = ['9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002'] +patches = ['h5py-2.10.0_avoid-mpi-init.patch'] +checksums = [ + '9d41ca62daf36d6b6515ab8765e4c8c4388ee18e2a665701fef2b41563821002', # h5py-2.9.0.tar.gz + '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f', # h5py-2.10.0_avoid-mpi-init.patch +] multi_deps = {'Python': ['3.7.2', '2.7.15']} @@ -24,13 +28,11 @@ dependencies = [ ('HDF5', '1.10.5'), ] -use_pip = False download_dep_fail = True +use_pip = True -# required because we're building Python packages using Intel compilers on top of Python built with GCC -check_ldshared = True +preinstallopts = 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ' -# to really use mpi enabled hdf5 we now seem to need a configure step, which is the reason we can't use pip -prebuildopts = ' python setup.py configure --mpi --hdf5=$EBROOTHDF5 && ' +sanity_pip_check = True moduleclass = 'data' diff --git a/easybuild/easyconfigs/h/help2man/help2man-1.47.16-GCCcore-10.2.0.eb b/easybuild/easyconfigs/h/help2man/help2man-1.47.16-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..16eb74c38c5 --- /dev/null +++ b/easybuild/easyconfigs/h/help2man/help2man-1.47.16-GCCcore-10.2.0.eb @@ -0,0 +1,25 @@ +easyblock = 'ConfigureMake' + +name = 'help2man' +version = '1.47.16' + +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': '10.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_XZ] +checksums = ['3ef8580c5b86e32ca092ce8de43df204f5e6f714b0cd32bc6237e6cd0f34a8f4'] + +builddependencies = [ + # use same binutils version that was used when building GCC toolchain + ('binutils', '2.35', '', True), +] + +sanity_check_paths = { + 'files': ['bin/help2man'], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/h/hierfstat/hierfstat-0.5-7-foss-2020a-R-4.0.0-Python-3.8.2.eb b/easybuild/easyconfigs/h/hierfstat/hierfstat-0.5-7-foss-2020a-R-4.0.0-Python-3.8.2.eb new file mode 100644 index 00000000000..99c9a57562d --- /dev/null +++ b/easybuild/easyconfigs/h/hierfstat/hierfstat-0.5-7-foss-2020a-R-4.0.0-Python-3.8.2.eb @@ -0,0 +1,55 @@ +easyblock = 'Bundle' + +name = 'hierfstat' +version = '0.5-7' +versionsuffix = '-R-%(rver)s-Python-3.8.2' + +homepage = 'https://cran.r-project.org/package=hierfstat' +description = """Estimates hierarchical F-statistics from haploid or diploid genetic data with any numbers of levels in +the hierarchy.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('R', '4.0.0'), + ('sf', '0.9-5', versionsuffix), +] + +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_defaultclass = 'RPackage' +exts_filter = ("R -q --no-save", "library(%(ext_name)s)") + +exts_list = [ + ('spdep', '1.1-5', { + 'checksums': ['47cb46cf5cf1f4386eb1b5e4d8541d577d7f2939e74addbdb884ecf2323f6d5d'], + }), + ('adegenet', '2.1.3', { + 'checksums': ['0790114ecb22642683b5be1f4b3a6a49856e06dc2f9e21b9cba4390c2257f6c6'], + }), + ('RcppParallel', '5.0.2', { + 'checksums': ['8ca200908c6365aafb2063be1789f0894969adc03c0f523c6cc45434b8236f81'], + }), + ('gaston', '1.5.6', { + 'checksums': ['2f9b8f8d16c20cfa3426b57aabf1d63a9e9ab6e4689f0fec1e8ea6251d8ea6af'], + }), + (name, version, { + 'checksums': ['a38eb5758e3fc3683ec83f94138525eed3d8b7e330f894bab2f821557e98e836'], + }), +] + +modextrapaths = {'R_LIBS': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/h/hypothesis/hypothesis-5.6.0-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/h/hypothesis/hypothesis-5.6.0-GCCcore-9.3.0-Python-3.8.2.eb index c2e8e0f3951..b945d580397 100644 --- a/easybuild/easyconfigs/h/hypothesis/hypothesis-5.6.0-GCCcore-9.3.0-Python-3.8.2.eb +++ b/easybuild/easyconfigs/h/hypothesis/hypothesis-5.6.0-GCCcore-9.3.0-Python-3.8.2.eb @@ -1,5 +1,5 @@ # This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. -easyblock = 'PythonBundle' +easyblock = 'PythonPackage' name = 'hypothesis' version = '5.6.0' @@ -12,22 +12,16 @@ description = """Hypothesis is an advanced testing library for Python. It lets y toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['22fb60bd0c6eb7849121a7df263a91da23b4e8506d3ba9e92ac696d2720ac0f5'] + builddependencies = [('binutils', '2.34')] dependencies = [('Python', '3.8.2')] use_pip = True +download_dep_fail = True sanity_pip_check = True -exts_default_options = {'source_urls': [PYPI_SOURCE]} - -exts_list = [ - ('sortedcontainers', '2.1.0', { - 'checksums': ['974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a'], - }), - (name, version, { - 'checksums': ['22fb60bd0c6eb7849121a7df263a91da23b4e8506d3ba9e92ac696d2720ac0f5'], - }), -] - moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/IgBLAST/IgBLAST-1.15.0-x64-linux.eb b/easybuild/easyconfigs/i/IgBLAST/IgBLAST-1.15.0-x64-linux.eb index 091c541cf14..5d5d9062dab 100644 --- a/easybuild/easyconfigs/i/IgBLAST/IgBLAST-1.15.0-x64-linux.eb +++ b/easybuild/easyconfigs/i/IgBLAST/IgBLAST-1.15.0-x64-linux.eb @@ -14,7 +14,7 @@ description = """IgBLAST faclilitates the analysis of immunoglobulin and T cell toolchain = SYSTEM -source_urls = ['ftp://ftp.ncbi.nih.gov/blast/executables/igblast/release/%(version)s'] +source_urls = ['https://ftp.ncbi.nih.gov/blast/executables/igblast/release/%(version)s'] sources = ['ncbi-%(namelower)s-%(version)s-x64-linux.tar.gz'] checksums = ['fa3c627177a79f23b2dd977dcaa13487bdb3566aec1080d391a29e544f1e62e3'] diff --git a/easybuild/easyconfigs/i/igv-reports/igv-reports-0.9.8-GCC-8.3.0-Python-3.7.4.eb b/easybuild/easyconfigs/i/igv-reports/igv-reports-0.9.8-GCC-8.3.0-Python-3.7.4.eb index 6f7a67c0d41..bab993f1798 100644 --- a/easybuild/easyconfigs/i/igv-reports/igv-reports-0.9.8-GCC-8.3.0-Python-3.7.4.eb +++ b/easybuild/easyconfigs/i/igv-reports/igv-reports-0.9.8-GCC-8.3.0-Python-3.7.4.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonBundle' +easyblock = 'PythonPackage' name = 'igv-reports' version = '0.9.8' @@ -10,32 +10,22 @@ within a browser with "file" protocol.""" toolchain = {'name': 'GCC', 'version': '8.3.0'} +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['ae0ecac0f24e86b9858720fe0eac7d424bf79449f56446f99a2312cb4fb739b3'] + dependencies = [ ('Python', '3.7.4'), ('Pysam', '0.15.3'), ] use_pip = True -sanity_pip_check = True - -exts_default_options = {'source_urls': [PYPI_SOURCE]} - -exts_list = [ - ('sortedcontainers', '2.1.0', { - 'checksums': ['974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a'], - }), - ('intervaltree', '3.0.2', { - 'checksums': ['cb4f61c81dcb4fea6c09903f3599015a83c9bdad1f0bbd232495e6681e19e273'], - }), - (name, version, { - 'checksums': ['ae0ecac0f24e86b9858720fe0eac7d424bf79449f56446f99a2312cb4fb739b3'], - }), -] +download_dep_fail = True +sanity_pip_check = True sanity_check_paths = { - 'files': ['bin/%s' % x for x in ['create_datauri', 'create_report']], - 'dirs': ['lib/python%%(pyshortver)s/site-packages/%s' % x for x in ['igv_reports', 'intervaltree', - 'sortedcontainers']] + 'files': ['bin/create_datauri', 'bin/create_report'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/igv_reports'], } moduleclass = 'vis' diff --git a/easybuild/easyconfigs/i/imageio/imageio-2.9.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/i/imageio/imageio-2.9.0-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..946658ae697 --- /dev/null +++ b/easybuild/easyconfigs/i/imageio/imageio-2.9.0-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'imageio' +version = '2.9.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://imageio.github.io' +description = """Imageio is a Python library that provides an easy interface to read and write a wide range of + image data, including animated images, video, volumetric data, and scientific formats.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['52ddbaeca2dccf53ba2d6dec5676ca7bc3b2403ef8b37f7da78b7654bb3e10f0'] + +dependencies = [ + ('Python', '3.7.4'), + ('Pillow', '6.2.1'), + ('SciPy-bundle', '2019.10', versionsuffix), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/'], +} + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/i/imageio/imageio-2.9.0-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/i/imageio/imageio-2.9.0-intel-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..c7f5e3531fa --- /dev/null +++ b/easybuild/easyconfigs/i/imageio/imageio-2.9.0-intel-2019b-Python-3.7.4.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'imageio' +version = '2.9.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://imageio.github.io' +description = """Imageio is a Python library that provides an easy interface to read and write a wide range of + image data, including animated images, video, volumetric data, and scientific formats.""" + +toolchain = {'name': 'intel', 'version': '2019b'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['52ddbaeca2dccf53ba2d6dec5676ca7bc3b2403ef8b37f7da78b7654bb3e10f0'] + +dependencies = [ + ('Python', '3.7.4'), + ('Pillow', '6.2.1'), + ('SciPy-bundle', '2019.10', versionsuffix), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/'], +} + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/i/imgaug/imgaug-0.4.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.0-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..329b54c4fcf --- /dev/null +++ b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.0-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,36 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'PythonPackage' + +name = 'imgaug' +version = '0.4.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://imgaug.readthedocs.io/en/latest/' +description = """ This python library helps you with augmenting images for your machine learning projects. + It converts a set of input images into a new, much larger set of slightly altered images. """ + +toolchain = {'name': 'foss', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('Pillow', '6.2.1'), + ('matplotlib', '3.1.1', versionsuffix), + ('scikit-image', '0.16.2', versionsuffix), + ('OpenCV', '4.2.0', versionsuffix), + ('Shapely', '1.7.0', versionsuffix), + ('imageio', '2.9.0', versionsuffix), +] + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['imgaug-0.4.0_openvc_requirement.patch'] +checksums = [ + '46bab63ed38f8980630ff721a09ca2281b7dbd4d8c11258818b6ebcc69ea46c7', # imgaug-0.4.0.tar.gz + '2ff0b66ba38fdcf5f267a3d0ad1dc2710fee3c2f8cd3d086c56ea538a2a9ffc8', # imgaug-0.4.0_openvc_requirement.patch +] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/i/imgaug/imgaug-0.4.0_openvc_requirement.patch b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.0_openvc_requirement.patch new file mode 100644 index 00000000000..a593f6d8b14 --- /dev/null +++ b/easybuild/easyconfigs/i/imgaug/imgaug-0.4.0_openvc_requirement.patch @@ -0,0 +1,35 @@ +imgaug specifies a requirement for opencv-python-headless which causes conflicts for other installations of OpenCV + +this patch removes the requirement, and will work as long as we load an appropriate (standard) OpenCV module + +See https://github.com/aleju/imgaug/issues/473 + +author: Andrew Edmondson (University of Birmingham) + +--- imgaug-0.4.0/setup.py.orig 2020-02-05 20:37:03.000000000 +0000 ++++ imgaug-0.4.0/setup.py 2020-08-06 12:05:07.867932801 +0100 +@@ -15,15 +15,10 @@ + "Pillow", + "matplotlib", + "scikit-image>=0.14.2", +- "opencv-python-headless", + "imageio", + "Shapely", + ] + +-ALT_INSTALL_REQUIRES = { +- "opencv-python-headless": ["opencv-python", "opencv-contrib-python", "opencv-contrib-python-headless"], +-} +- + + def check_alternative_installation(install_require, alternative_install_requires): + """If some version version of alternative requirement installed, return alternative, +@@ -53,8 +48,6 @@ + return install_requires + + +-INSTALL_REQUIRES = get_install_requirements(INSTALL_REQUIRES, ALT_INSTALL_REQUIRES) +- + setup( + name="imgaug", + version="0.4.0", diff --git a/easybuild/easyconfigs/i/imkl/imkl-2020.1.217-gompi-2020a.eb b/easybuild/easyconfigs/i/imkl/imkl-2020.1.217-gompi-2020a.eb new file mode 100644 index 00000000000..43fd8bd284d --- /dev/null +++ b/easybuild/easyconfigs/i/imkl/imkl-2020.1.217-gompi-2020a.eb @@ -0,0 +1,39 @@ +# This is an easyconfig file for EasyBuild, see https://easybuilders.github.io/easybuild/ + +name = 'imkl' +version = '2020.1.217' + +homepage = 'https://software.intel.com/mkl' +description = """Intel Math Kernel Library is a library of highly optimized, + extensively threaded math routines for science, engineering, and financial + applications that require maximum performance. Core math functions include + BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more.""" + +toolchain = {'name': 'gompi', 'version': '2020a'} + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16533/'] +sources = ['l_mkl_%(version)s.tgz'] +checksums = ['082a4be30bf4f6998e4d6e3da815a77560a5e66a68e254d161ab96f07086066d'] + +dontcreateinstalldir = True + +components = ['intel-mkl'] + +license_file = HOME + '/licenses/intel/license.lic' + +interfaces = True + +postinstallcmds = [ + # extract the examples + 'tar xvzf %(installdir)s/mkl/examples/examples_cluster_c.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_cluster_f.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_core_c.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_core_f.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_f95.tgz -C %(installdir)s/mkl/examples/', +] + +modextravars = { + 'MKL_EXAMPLES': '%(installdir)s/mkl/examples/', +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/i/imkl/imkl-2020.1.217-iompi-2020a.eb b/easybuild/easyconfigs/i/imkl/imkl-2020.1.217-iompi-2020a.eb new file mode 100644 index 00000000000..a5cc65d4131 --- /dev/null +++ b/easybuild/easyconfigs/i/imkl/imkl-2020.1.217-iompi-2020a.eb @@ -0,0 +1,39 @@ +# This is an easyconfig file for EasyBuild, see https://easybuilders.github.io/easybuild/ + +name = 'imkl' +version = '2020.1.217' + +homepage = 'https://software.intel.com/mkl' +description = """Intel Math Kernel Library is a library of highly optimized, + extensively threaded math routines for science, engineering, and financial + applications that require maximum performance. Core math functions include + BLAS, LAPACK, ScaLAPACK, Sparse Solvers, Fast Fourier Transforms, Vector Math, and more.""" + +toolchain = {'name': 'iompi', 'version': '2020a'} + +source_urls = ['https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16533/'] +sources = ['l_mkl_%(version)s.tgz'] +checksums = ['082a4be30bf4f6998e4d6e3da815a77560a5e66a68e254d161ab96f07086066d'] + +dontcreateinstalldir = True + +components = ['intel-mkl'] + +license_file = HOME + '/licenses/intel/license.lic' + +interfaces = True + +postinstallcmds = [ + # extract the examples + 'tar xvzf %(installdir)s/mkl/examples/examples_cluster_c.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_cluster_f.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_core_c.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_core_f.tgz -C %(installdir)s/mkl/examples/', + 'tar xvzf %(installdir)s/mkl/examples/examples_f95.tgz -C %(installdir)s/mkl/examples/', +] + +modextravars = { + 'MKL_EXAMPLES': '%(installdir)s/mkl/examples/', +} + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/i/immunedeconv/immunedeconv-2.0.2-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/i/immunedeconv/immunedeconv-2.0.2-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..5b5e1364e88 --- /dev/null +++ b/easybuild/easyconfigs/i/immunedeconv/immunedeconv-2.0.2-foss-2020a-R-4.0.0.eb @@ -0,0 +1,62 @@ +easyblock = 'Bundle' + +name = 'immunedeconv' +version = '2.0.2' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://github.com/icbi-lab/immunedeconv' +description = """ +immunedeconv is an R package for unified access to computational methods for +estimating immune cell fractions from bulk RNA sequencing data.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('R', '4.0.0'), + ('R-bundle-Bioconductor', '3.11', versionsuffix), +] + +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_defaultclass = 'RPackage' +exts_filter = ("R -q --no-save", "library(%(ext_name)s)") + +exts_list = [ + ('MCPcounter', '1.1.0', { + 'source_tmpl': '8c37884.tar.gz', + 'source_urls': ['https://github.com/ebecht/MCPcounter/archive'], + 'start_dir': 'Source', + 'checksums': ['bfe73a0334c874a0d6b0afc8f868da95583124602aedc06b84b67e392869e5f6'], + }), + ('xCell', '1.2', { + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/dviraran/xCell/archive'], + 'checksums': ['52dcd5cfb5c8a4870cb485ee57f34d7830b23bdc61fd3012d859fdcc22ad941c'], + }), + ('EPIC', '1.1', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/GfellerLab/EPIC/archive'], + 'checksums': ['95bea4a5bd1fb57a94055198475a2237b2181b2a499a97ec5055637c987d159f'], + }), + (name, version, { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/icbi-lab/immunedeconv/archive'], + 'checksums': ['be8df125fa5e66888d58b7afd4705b62f2f6d66cf0f1766d5117ec06840b2cf9'], + }), +] + +modextrapaths = {'R_LIBS': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/i/ioapi/ioapi-3.2-2020111-gompi-2019b-nocpl.eb b/easybuild/easyconfigs/i/ioapi/ioapi-3.2-2020111-gompi-2019b-nocpl.eb new file mode 100644 index 00000000000..5ebc6cba39c --- /dev/null +++ b/easybuild/easyconfigs/i/ioapi/ioapi-3.2-2020111-gompi-2019b-nocpl.eb @@ -0,0 +1,50 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'ConfigureMake' + +name = 'ioapi' +version = '3.2-2020111' +_cplmode = 'nocpl' +versionsuffix = '-%s' % _cplmode + +homepage = "https://www.cmascenter.org/ioapi/" +description = """The Models-3/EDSS Input/Output Applications Programming Interface (I/O API) provides the + environmental model developer with an easy-to-learn, easy-to-use programming library for data storage and + access, available from both Fortran and C. The same routines can be used for both file storage (using netCDF + files) and model coupling (using PVM mailboxes). It is the standard data access library for both the + NCSC/CMAS's EDSS project and EPA's Models-3, CMAQ, and SMOKE, as well as various other atmospheric and + hydrological modeling systems.""" + +toolchain = {'name': 'gompi', 'version': '2019b'} + +source_urls = ['https://github.com/cjcoats/ioapi-3.2/archive/'] +sources = ['2020111.tar.gz'] +checksums = ['5820fb71d46fdd8ace5950d980cbec9294a8406037a8b7767c3a0bc5d945c533'] + +dependencies = [ + ('netCDF', '4.7.1'), + ('netCDF-Fortran', '4.5.2'), +] + +skipsteps = ['configure'] + +_makevars = "BIN=Linux2_x86_64gfort_medium CPLMODE=%s " % _cplmode +_makevars += "INSTALL=%(installdir)s LIBINST=%(installdir)s/lib BININST=%(installdir)s/bin" + +prebuildopts = "cp Makefile.template Makefile && touch m3tools/Makefile ioapi/Makefile && " +prebuildopts += "make configure %s && " % _makevars +buildopts = " %s " % _makevars + +installopts = " %s " % _makevars + +postinstallcmds = [ + "mkdir %(installdir)s/include && " + "cp %(builddir)s/%(name)s-%(version)s/ioapi/fixed_src/*.EXT %(installdir)s/include/. && " + "cp %(builddir)s/%(name)s-%(version)s/ioapi/*.h %(installdir)s/include/." +] + +sanity_check_paths = { + 'files': ['lib/libioapi.a'] + ['bin/%s' % x for x in ['airs2m3', 'gregdate', 'latlon', 'm3merge', 'projtool']], + 'dirs': [], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/i/iomkl/iomkl-2020a.eb b/easybuild/easyconfigs/i/iomkl/iomkl-2020a.eb new file mode 100644 index 00000000000..abc327a638f --- /dev/null +++ b/easybuild/easyconfigs/i/iomkl/iomkl-2020a.eb @@ -0,0 +1,20 @@ +easyblock = "Toolchain" + +name = 'iomkl' +version = '2020a' + +homepage = 'https://software.intel.com/en-us/intel-cluster-toolkit-compiler/' +description = """Intel Cluster Toolchain Compiler Edition provides Intel C/C++ and Fortran compilers, Intel MKL & + OpenMPI.""" + +toolchain = SYSTEM + +local_compver = '2020.1.217' + +dependencies = [ + ('iccifort', local_compver), + ('OpenMPI', '4.0.3', '', ('iccifort', local_compver)), + ('imkl', local_compver, '', ('iompi', version)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/i/iompi/iompi-2020a.eb b/easybuild/easyconfigs/i/iompi/iompi-2020a.eb new file mode 100644 index 00000000000..496a912655d --- /dev/null +++ b/easybuild/easyconfigs/i/iompi/iompi-2020a.eb @@ -0,0 +1,19 @@ +# This is an easyconfig file for EasyBuild, see https://easybuilders.github.io/easybuild/ +easyblock = "Toolchain" + +name = 'iompi' +version = '2020a' + +homepage = 'https://software.intel.com/en-us/intel-cluster-toolkit-compiler/' +description = """Intel C/C++ and Fortran compilers, alongside Open MPI.""" + +toolchain = SYSTEM + +local_compver = '2020.1.217' + +dependencies = [ + ('iccifort', local_compver), + ('OpenMPI', '4.0.3', '', ('iccifort', local_compver)), +] + +moduleclass = 'toolchain' diff --git a/easybuild/easyconfigs/i/itpp/itpp-4.3.1-foss-2019b.eb b/easybuild/easyconfigs/i/itpp/itpp-4.3.1-foss-2019b.eb new file mode 100644 index 00000000000..045852c8997 --- /dev/null +++ b/easybuild/easyconfigs/i/itpp/itpp-4.3.1-foss-2019b.eb @@ -0,0 +1,37 @@ +# easybuild easyconfig +# +# John Dey +# +# Fred Hutchinson Cancer Research Center - Seattle Washington - US +# +easyblock = 'CMakeMake' + +name = 'itpp' +version = '4.3.1' + +homepage = 'https://sourceforge.net/projects/itpp/' +description = """IT++ is a C++ library of mathematical, signal processing and communication + classes and functions. Its main use is in simulation of communication systems and for + performing research in the area of communications.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = [('http://sourceforge.net/projects/itpp/files/%(namelower)s/%(version)s', 'download')] +sources = [SOURCE_TAR_BZ2] +checksums = ['50717621c5dfb5ed22f8492f8af32b17776e6e06641dfe3a3a8f82c8d353b877'] + +builddependencies = [ + ('CMake', '3.15.3'), + ('pkg-config', '0.29.2'), +] + +separate_build_dir = True + +sanity_check_paths = { + 'files': ['bin/itpp-config', 'include/itpp/itbase.h', + 'lib/libitpp.%s' % SHLIB_EXT, + 'share/man/man1/itpp-config.1'], + 'dirs': [], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/j/JAGS/JAGS-4.3.0-foss-2020a.eb b/easybuild/easyconfigs/j/JAGS/JAGS-4.3.0-foss-2020a.eb new file mode 100644 index 00000000000..03264fda9c0 --- /dev/null +++ b/easybuild/easyconfigs/j/JAGS/JAGS-4.3.0-foss-2020a.eb @@ -0,0 +1,36 @@ +# 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 + +easyblock = 'ConfigureMake' + +name = 'JAGS' +version = '4.3.0' + +homepage = 'http://mcmc-jags.sourceforge.net/' +description = """JAGS is Just Another Gibbs Sampler. It is a program for analysis + of Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC) simulation """ + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = [ + ('https://sourceforge.net/projects/mcmc-%(namelower)s/files/%(name)s/%(version_major)s.x/Source/', 'download') +] +sources = [SOURCE_TAR_GZ] +checksums = ['8ac5dd57982bfd7d5f0ee384499d62f3e0bb35b5f1660feb368545f1186371fc'] + +configopts = ' --with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK"' + + +sanity_check_paths = { + 'files': ['bin/%(namelower)s', 'libexec/%(namelower)s-terminal', 'lib/libjags.%s' % SHLIB_EXT], + 'dirs': [], +} + +modextrapaths = { + 'JAGS_INCLUDE': 'include/%(name)s', + 'JAGS_LIB': 'lib', +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/j/JUBE/JUBE-2.4.0.eb b/easybuild/easyconfigs/j/JUBE/JUBE-2.4.0.eb new file mode 100644 index 00000000000..d3880ac492f --- /dev/null +++ b/easybuild/easyconfigs/j/JUBE/JUBE-2.4.0.eb @@ -0,0 +1,33 @@ +easyblock = "VersionIndependentPythonPackage" + +name = "JUBE" +version = "2.4.0" + +homepage = "https://www.fz-juelich.de/jsc/jube" +description = """The JUBE benchmarking environment provides a script based +framework to easily create benchmark sets, run those sets on different +computer systems and evaluate the results. +""" + +site_contacts = 's.luehrs@fz-juelich.de' + +toolchain = SYSTEM + +source_urls = ['https://apps.fz-juelich.de/jsc/jube/jube2/download.php?file='] +sources = [SOURCE_TAR_GZ] +checksums = ['87c02555f3d1a8ecaff139cf8e7a7167cabd1049c8cc77f1bd8f4484e210d524'] + +options = {'modulename': 'jube2'} + +sanity_check_paths = { + 'files': ['bin/jube'], + 'dirs': [], +} + +modextrapaths = { + 'JUBE_INCLUDE_PATH': 'platform/slurm' +} + +modluafooter = 'execute {cmd=\'eval "$(jube complete)"\',modeA={"load"}}' + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/j/Java/Java-11.0.8-aarch64.eb b/easybuild/easyconfigs/j/Java/Java-11.0.8-aarch64.eb new file mode 100644 index 00000000000..e3512d363c9 --- /dev/null +++ b/easybuild/easyconfigs/j/Java/Java-11.0.8-aarch64.eb @@ -0,0 +1,15 @@ +name = 'Java' +version = '11.0.8' +versionsuffix = '-aarch64' + +homepage = 'https://openjdk.java.net' +description = """Java Platform, Standard Edition (Java SE) lets you develop and deploy + Java applications on desktops and servers.""" + +toolchain = SYSTEM + +source_urls = ['https://github.com/AdoptOpenJDK/openjdk11-upstream-binaries/releases/download/jdk-%(version)s%2B10/'] +sources = ['OpenJDK11U-jdk_aarch64_linux_%(version)s_10.tar.gz'] +checksums = ['08106c95fd0f2a52f2f5ecc4e48e326331d3a2f6026e75848ab7698ec395fad8'] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/Java/Java-11.eb b/easybuild/easyconfigs/j/Java/Java-11.eb index 0f66f7ee9c7..9d3c3075a85 100644 --- a/easybuild/easyconfigs/j/Java/Java-11.eb +++ b/easybuild/easyconfigs/j/Java/Java-11.eb @@ -15,6 +15,7 @@ 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'}), ] diff --git a/easybuild/easyconfigs/j/JsonCpp/JsonCpp-1.9.3-GCCcore-8.3.0.eb b/easybuild/easyconfigs/j/JsonCpp/JsonCpp-1.9.3-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..31120ef151c --- /dev/null +++ b/easybuild/easyconfigs/j/JsonCpp/JsonCpp-1.9.3-GCCcore-8.3.0.eb @@ -0,0 +1,29 @@ +easyblock = "CMakeNinja" + +name = 'JsonCpp' +version = '1.9.3' + +homepage = 'https://open-source-parsers.github.io/jsoncpp-docs/doxygen/index.html' +description = """ JsonCpp is a C++ library that allows manipulating JSON values, + including serialization and deserialization to and from strings. It can also preserve existing comment in + unserialization/serialization steps, making it a convenient format to store user input files. """ + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://github.com/open-source-parsers/jsoncpp/archive'] +sources = ['%(version)s.tar.gz'] +checksums = ['8593c1d69e703563d94d8c12244e2e18893eeb9a8a9f8aa3d09a327aa45c8f7d'] + +builddependencies = [ + ('CMake', '3.15.3'), + ('Ninja', '1.9.0'), + ('pkg-config', '0.29.2'), + ('binutils', '2.32'), +] + +sanity_check_paths = { + 'files': ['include/json/json.h', 'lib/libjsoncpp.a'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/Judy/Judy-1.0.5-GCCcore-8.3.0.eb b/easybuild/easyconfigs/j/Judy/Judy-1.0.5-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..ff04ccc858f --- /dev/null +++ b/easybuild/easyconfigs/j/Judy/Judy-1.0.5-GCCcore-8.3.0.eb @@ -0,0 +1,34 @@ +easyblock = 'ConfigureMake' + +name = 'Judy' +version = '1.0.5' + +homepage = 'http://judy.sourceforge.net/' +description = "A C library that implements a dynamic array." + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['http://downloads.sourceforge.net/judy'] +sources = ['%(name)s-%(version)s.tar.gz'] +patches = ['Judy-1.0.5_parallel-make.patch'] # fix Make dependencies, so parallel build also works +checksums = [ + 'd2704089f85fdb6f2cd7e77be21170ced4b4375c03ef1ad4cf1075bd414a63eb', # Judy-1.0.5.tar.gz + '14c2eba71088f3db9625dc4605c6d7183d72412d75ef6c9fd9b95186165cf009', # Judy-1.0.5_parallel-make.patch +] + +builddependencies = [ + ('Autotools', '20180311'), + ('binutils', '2.32'), +] + +preconfigopts = "sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac && " +preconfigopts += "autoreconf -i && " + +configopts = '--enable-shared --enable-static' + +sanity_check_paths = { + 'files': ["include/%(name)s.h", "lib/lib%(name)s.a", "lib/lib%(name)s.la", "lib/lib%%(name)s.%s" % SHLIB_EXT], + 'dirs': ["share/man"] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/j/Julia/Julia-1.5.1-linux-x86_64.eb b/easybuild/easyconfigs/j/Julia/Julia-1.5.1-linux-x86_64.eb new file mode 100644 index 00000000000..b87ad237c5d --- /dev/null +++ b/easybuild/easyconfigs/j/Julia/Julia-1.5.1-linux-x86_64.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 +# Updated by: Dugan Witherick, University of Warwick + +easyblock = 'Tarball' + +name = 'Julia' +version = '1.5.1' +versionsuffix = '-linux-x86_64' + +homepage = 'https://julialang.org' +description = "Julia is a high-level, high-performance dynamic programming language for numerical computing" + +toolchain = SYSTEM + +source_urls = ['https://julialang-s3.julialang.org/bin/linux/x64/%(version_major_minor)s/'] +sources = ['%(namelower)s-%(version)s%(versionsuffix)s.tar.gz'] +checksums = ['f5d37cb7fe40e3a730f721da8f7be40310f133220220949939d8f892ce2e86e3'] + +sanity_check_paths = { + 'files': ['bin/julia', 'include/julia/julia.h', 'lib/libjulia.so'], + 'dirs': ['bin', 'etc', 'include', 'lib', 'share'] +} + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/j/jbigkit/jbigkit-2.1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/j/jbigkit/jbigkit-2.1-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..5a349c2cea2 --- /dev/null +++ b/easybuild/easyconfigs/j/jbigkit/jbigkit-2.1-GCCcore-9.3.0.eb @@ -0,0 +1,47 @@ +# EasyBuild easyconfig +easyblock = 'MakeCp' + +name = 'jbigkit' +version = '2.1' + +homepage = 'https://www.cl.cam.ac.uk/~mgk25/jbigkit/' + +description = """JBIG-KIT is a software implementation of the JBIG1 data + compression standard (ITU-T T.82), which was designed for bi-level image + data, such as scanned documents.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.cl.cam.ac.uk/~mgk25/jbigkit/download'] +sources = [SOURCE_TAR_GZ] +patches = [ + '%(name)s-%(version)s_libpath.patch', + '%(name)s-%(version)s_shlib.patch', +] +checksums = [ + 'de7106b6bfaf495d6865c7dd7ac6ca1381bd12e0d81405ea81e7f2167263d932', # jbigkit-2.1.tar.gz + '97c88956090097b484fcdb90e12eab82212e67ddc862f035d7c6446a696786ce', # jbigkit-2.1_libpath.patch + '54ae429e8ec949eceee0f902b676f572f1cdfbff46f77c7222acdeafb643a696', # jbigkit-2.1_shlib.patch +] + +builddependencies = [ + ('binutils', '2.34'), + ('pkg-config', '0.29.2'), +] + +files_to_copy = [ + (['libjbig/libjbig%s.%s' % (x, y) for x in ['85', ''] for y in ['a', SHLIB_EXT, SHLIB_EXT + '.0']], 'lib'), + (['libjbig/jbig85.h', 'libjbig/jbig.h'], 'include'), + (['pbmtools/pbmtojbg', 'pbmtools/jbgtopbm'], 'bin'), +] + +sanity_check_paths = { + 'files': ['lib/libjbig85.a', 'lib/libjbig.a', + 'bin/pbmtojbg', 'bin/jbgtopbm', + 'include/jbig.h', + ], + 'dirs': ['bin', 'include', 'lib'] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/j/jemalloc/jemalloc-5.2.1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/j/jemalloc/jemalloc-5.2.1-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..ead39ccbcee --- /dev/null +++ b/easybuild/easyconfigs/j/jemalloc/jemalloc-5.2.1-GCCcore-9.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'jemalloc' +version = '5.2.1' + +homepage = 'http://jemalloc.net' +description = """jemalloc is a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and + scalable concurrency support.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/jemalloc/jemalloc/archive'] +sources = ['%(version)s.tar.gz'] +checksums = ['ed51b0b37098af4ca6ed31c22324635263f8ad6471889e0592a9c0dba9136aea'] + +builddependencies = [ + ('Autotools', '20180311'), + ('binutils', '2.34'), +] + +# From version 5.2.1 (or maybe earlier) it does no longer build, +# nor try to install, documentation if xsltproc is missing. +# So we can use normal installation. +preconfigopts = "./autogen.sh && " +configopts = "--with-version=%(version)s-0-g0000 " # build with version info + +sanity_check_paths = { + 'files': ['bin/jeprof', 'lib/libjemalloc.a', 'lib/libjemalloc_pic.a', 'lib/libjemalloc.%s' % SHLIB_EXT, + 'include/jemalloc/jemalloc.h'], + 'dirs': [], +} + +# jemalloc can be used via $LD_PRELOAD, but we don't enable this by +# default, you need to opt-in to it +# modextrapaths = {'LD_PRELOAD': ['lib/libjemalloc.%s' % SHLIB_EXT]} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/k/Kent_tools/Kent_tools-401-gompi-2019b.eb b/easybuild/easyconfigs/k/Kent_tools/Kent_tools-401-gompi-2019b.eb new file mode 100644 index 00000000000..7cebef52ac9 --- /dev/null +++ b/easybuild/easyconfigs/k/Kent_tools/Kent_tools-401-gompi-2019b.eb @@ -0,0 +1,32 @@ +easyblock = 'MakeCp' + +name = 'Kent_tools' +version = '401' + +homepage = 'https://genome.cse.ucsc.edu/' +description = """Kent utilities: collection of tools used by the UCSC genome browser.""" + +toolchain = {'name': 'gompi', 'version': '2019b'} +source_urls = ['https://hgdownload.cse.ucsc.edu/admin/exe'] +sources = ['userApps.v%(version)s.src.tgz'] +checksums = ['3608689a07a6327f5695672a804ef5f35c9d680c114b0ee947ca2a4f3b768514'] + +files_to_copy = [(['bin/*'], 'bin'), 'licenseBlat.txt', 'licenseUcscGenomeBrowser.txt'] + +dependencies = [ + ('MariaDB', '10.4.13'), + ('libpng', '1.6.37'), + ('zlib', '1.2.11'), + ('util-linux', '2.34'), +] + +buildopts = 'CC="$CC" COPT="$CFLAGS" PNGLIB="-L$EBROOTLIBPNG/lib -lpng" ZLIB="-L$EBROOTZLIB/lib -lz"' + +local_binaries = ['blat', 'bedPartition', 'getRna', 'liftOver', 'mafGene', 'splitFile', 'twoBitToFa'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_binaries], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2019b-Python-3.7.4-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2019b-Python-3.7.4-kokkos.eb index f4fd6fb61ec..147221f6776 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2019b-Python-3.7.4-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2019b-Python-3.7.4-kokkos.eb @@ -27,7 +27,7 @@ sources = [ ] checksums = [ 'a1a2e3e763ef5baecea258732518d75775639db26e60af1634ab385ed89224d1', # stable_3Mar2020.tar.gz - '5e5211f64113e8a38c102f8542fd59169b689fdb92afbff29c3b88f802f1a96c', # lammps_vs_yaff_test_single_point_energy.py + 'c28fa5a1ea9608e4fd8686937be501c3bed8cc03ce1956f1cf0a1efce2c75349', # lammps_vs_yaff_test_single_point_energy.py ] local_source_dir_name = '%(namelower)s-%(version)s' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2020a-Python-3.8.2-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2020a-Python-3.8.2-kokkos.eb index d196f9c53c6..fb1ac5d6585 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2020a-Python-3.8.2-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-foss-2020a-Python-3.8.2-kokkos.eb @@ -29,7 +29,7 @@ sources = [ patches = ['lammps-stable_3Mar2020_hack_openmp_gcc9.patch'] checksums = [ 'a1a2e3e763ef5baecea258732518d75775639db26e60af1634ab385ed89224d1', # stable_3Mar2020.tar.gz - '5e5211f64113e8a38c102f8542fd59169b689fdb92afbff29c3b88f802f1a96c', # lammps_vs_yaff_test_single_point_energy.py + 'c28fa5a1ea9608e4fd8686937be501c3bed8cc03ce1956f1cf0a1efce2c75349', # lammps_vs_yaff_test_single_point_energy.py '41a0bcb828be22d38bb489bbd4b1fd7803d7771a2308371f01e961c52b8c869f', # lammps-stable_3Mar2020_hack_openmp_gcc9.patch ] diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2019b-Python-3.7.4-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2019b-Python-3.7.4-kokkos.eb index d7f50c89fc7..a0a8ee53589 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2019b-Python-3.7.4-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2019b-Python-3.7.4-kokkos.eb @@ -27,7 +27,7 @@ sources = [ ] checksums = [ 'a1a2e3e763ef5baecea258732518d75775639db26e60af1634ab385ed89224d1', # stable_3Mar2020.tar.gz - '5e5211f64113e8a38c102f8542fd59169b689fdb92afbff29c3b88f802f1a96c', # lammps_vs_yaff_test_single_point_energy.py + 'c28fa5a1ea9608e4fd8686937be501c3bed8cc03ce1956f1cf0a1efce2c75349', # lammps_vs_yaff_test_single_point_energy.py ] local_source_dir_name = '%(namelower)s-%(version)s' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2020a-Python-3.8.2-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2020a-Python-3.8.2-kokkos.eb index 15fff5aaf41..9c903f6b9de 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2020a-Python-3.8.2-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-3Mar2020-intel-2020a-Python-3.8.2-kokkos.eb @@ -28,7 +28,7 @@ sources = [ patches = ['LAMMPS-3Mar2020_fix-docs-build.patch'] checksums = [ 'a1a2e3e763ef5baecea258732518d75775639db26e60af1634ab385ed89224d1', # stable_3Mar2020.tar.gz - '5e5211f64113e8a38c102f8542fd59169b689fdb92afbff29c3b88f802f1a96c', # lammps_vs_yaff_test_single_point_energy.py + 'c28fa5a1ea9608e4fd8686937be501c3bed8cc03ce1956f1cf0a1efce2c75349', # lammps_vs_yaff_test_single_point_energy.py '7f010853d81022f286cf32e3babe252d5cc7c0bfb274bee5a2c64e810e170239', # LAMMPS-3Mar2020_fix-docs-build.patch ] diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-foss-2019b-Python-3.7.4-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-foss-2019b-Python-3.7.4-kokkos.eb index 434cd51f79d..f98b92c7821 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-foss-2019b-Python-3.7.4-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-foss-2019b-Python-3.7.4-kokkos.eb @@ -27,7 +27,7 @@ sources = [ ] checksums = [ '5380c1689a93d7922e3d65d9c186401d429878bb3cbe9a692580d3470d6a253f', # stable_7Aug2019.tar.gz - '5e5211f64113e8a38c102f8542fd59169b689fdb92afbff29c3b88f802f1a96c', # lammps_vs_yaff_test_single_point_energy.py + 'c28fa5a1ea9608e4fd8686937be501c3bed8cc03ce1956f1cf0a1efce2c75349', # lammps_vs_yaff_test_single_point_energy.py ] local_source_dir_name = '%(namelower)s-%(version)s' diff --git a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-intel-2019b-Python-3.7.4-kokkos.eb b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-intel-2019b-Python-3.7.4-kokkos.eb index 2f13aa1cd60..b9a665577ba 100644 --- a/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-intel-2019b-Python-3.7.4-kokkos.eb +++ b/easybuild/easyconfigs/l/LAMMPS/LAMMPS-7Aug2019-intel-2019b-Python-3.7.4-kokkos.eb @@ -27,7 +27,7 @@ sources = [ ] checksums = [ '5380c1689a93d7922e3d65d9c186401d429878bb3cbe9a692580d3470d6a253f', # stable_7Aug2019.tar.gz - '5e5211f64113e8a38c102f8542fd59169b689fdb92afbff29c3b88f802f1a96c', # lammps_vs_yaff_test_single_point_energy.py + 'c28fa5a1ea9608e4fd8686937be501c3bed8cc03ce1956f1cf0a1efce2c75349', # lammps_vs_yaff_test_single_point_energy.py ] local_source_dir_name = '%(namelower)s-%(version)s' diff --git a/easybuild/easyconfigs/l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py b/easybuild/easyconfigs/l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py index 7827c7b7704..ad67838eca3 100644 --- a/easybuild/easyconfigs/l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py +++ b/easybuild/easyconfigs/l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py @@ -12,12 +12,9 @@ import numpy as np import os -import h5py from mpi4py import MPI -from glob import glob -from yaff import * +from yaff import log, System, angstrom, ForceField, swap_noncovalent_lammps from molmod import kjmol -from io import StringIO import tempfile @@ -42,31 +39,34 @@ def main(): np.random.seed(5) # Turn off logging for all processes, it can be turned on for one selected process later on log.set_level(log.silent) - if rank==0: log.set_level(log.medium) + if rank == 0: + log.set_level(log.medium) # Load in the structure and the force field system = System.from_file(init_chk) # Initialize the Yaff and LAMMPS force fields - rcut = 12*angstrom - ff_yaff = ForceField.generate(system, pars_txt, rcut=rcut, smooth_ei=False, gcut_scale=1.5, alpha_scale=3.2)#, tailcorrections=True) - ff = swap_noncovalent_lammps(ff_yaff, fn_system='lammps.dat', fn_log="log.lammps", suffix='', fn_table='lammps_smoothei2.table', comm=comm) + rcut = 12 * angstrom + ff_yaff = ForceField.generate(system, pars_txt, rcut=rcut, smooth_ei=False, + gcut_scale=1.5, alpha_scale=3.2) # , tailcorrections=True) + ff = swap_noncovalent_lammps(ff_yaff, fn_system='lammps.dat', fn_log="log.lammps", + suffix='', fn_table='lammps_smoothei2.table', comm=comm) # Print out the Yaff single-point energy print('Yaff energy') energy_yaff = ff_yaff.compute() - print(energy_yaff/kjmol) + print(energy_yaff / kjmol) for part in ff_yaff.parts: - print('%s: %.3f kJ/mol' %(part.name,part.energy/kjmol)) + print('%s: %.3f kJ/mol' % (part.name, part.energy / kjmol)) # Print out the LAMMPS single-point energy print('LAMMPS energy') energy_lammps = ff.compute() - print(energy_lammps/kjmol) + print(energy_lammps / kjmol) for part in ff.parts: - print('%s: %.3f kJ/mol' %(part.name,part.energy/kjmol)) + print('%s: %.3f kJ/mol' % (part.name, part.energy / kjmol)) - assert np.abs(energy_yaff- energy_lammps) < 1*kjmol, "The two energies are not the same" + assert np.abs(energy_yaff - energy_lammps) < 1 * kjmol, "The two energies are not the same" INIT_CHK = """bonds kind=intar 592,2 @@ -1274,7 +1274,7 @@ def main(): # Bond parameters # ---------------------------------------------------- -# KEY label0 label1 P_AB +# KEY label0 label1 P_AB # ---------------------------------------------------- FIXQ:BOND C_PH C_PH 0.0000928607 FIXQ:BOND C_CA C_PC 0.0432515406 diff --git a/easybuild/easyconfigs/l/LS-PrePost/LS-PrePost-4.6.24.eb b/easybuild/easyconfigs/l/LS-PrePost/LS-PrePost-4.6.24.eb new file mode 100644 index 00000000000..af87fa4a9f1 --- /dev/null +++ b/easybuild/easyconfigs/l/LS-PrePost/LS-PrePost-4.6.24.eb @@ -0,0 +1,28 @@ +easyblock = "Tarball" + +name = 'LS-PrePost' +version = '4.6.24' + +homepage = 'https://lstc.com/products/ls-prepost' +description = """LS-PrePost is an advanced pre and post-processor that is delivered free with LS-DYNA.""" + +toolchain = SYSTEM + +source_urls = ['https://ftp.lstc.com/anonymous/outgoing/lsprepost/%(version_major_minor)s/linux64/'] +sources = ['lsprepost-%(version)s-common-10May2020.tgz'] +checksums = ['93f09a96f29578f77be3f18f4d6f935daadca12ca2a4c32d9aeaca8ecb52732f'] + +postinstallcmds = [ + "sed -e 's,^DN=.*,DN=%(installdir)s,' -i %(installdir)s/lspp46", + "sed -e 's,^DN=.*,DN=%(installdir)s,' -i %(installdir)s/lspp46_mesa", + "cd %(installdir)s && chmod a+x lspp46 lspp46_mesa lsprepost lsrun msuite_ls_64 tetgen", +] + +modextrapaths = {'PATH': '.', 'LD_LIBRARY_PATH': 'lib', 'LSPP_HELPDIR': 'resource/HelpDocument'} + +sanity_check_paths = { + 'files': ['lsprepost'], + 'dirs': ['lib'] +} + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/l/LS-PrePost/LS-PrePost-4.7.15.eb b/easybuild/easyconfigs/l/LS-PrePost/LS-PrePost-4.7.15.eb new file mode 100644 index 00000000000..22ef65bc5d7 --- /dev/null +++ b/easybuild/easyconfigs/l/LS-PrePost/LS-PrePost-4.7.15.eb @@ -0,0 +1,28 @@ +easyblock = "Tarball" + +name = 'LS-PrePost' +version = '4.7.15' + +homepage = 'https://lstc.com/products/ls-prepost' +description = """LS-PrePost is an advanced pre and post-processor that is delivered free with LS-DYNA.""" + +toolchain = SYSTEM + +source_urls = ['https://ftp.lstc.com/anonymous/outgoing/lsprepost/%(version_major_minor)s/linux64/'] +sources = ['lsprepost-%(version)s-common-02Jul2020.tgz'] +checksums = ['9eec99b6618558c62247047f60b6fd4e631216b5522e94aae54bec9f40d12076'] + +postinstallcmds = [ + "sed -e 's,^DN=.*,DN=%(installdir)s,' -i %(installdir)s/lspp47", + "sed -e 's,^DN=.*,DN=%(installdir)s,' -i %(installdir)s/lspp47_mesa", + "cd %(installdir)s && chmod a+x lspp47 lspp47_mesa lsprepost lsrun msuite_ls_64 tetgen", +] + +modextrapaths = {'PATH': '.', 'LD_LIBRARY_PATH': 'lib', 'LSPP_HELPDIR': 'resource/HelpDocument'} + +sanity_check_paths = { + 'files': ['lsprepost'], + 'dirs': ['lib'] +} + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/l/LiBis/LiBis-20200428-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/l/LiBis/LiBis-20200428-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..1788ec1f1d8 --- /dev/null +++ b/easybuild/easyconfigs/l/LiBis/LiBis-20200428-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,59 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PythonPackage' + +name = 'LiBis' +version = '20200428' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/Dangertrip/LiBis' +description = "An ultrasensitive alignment method for low input bisulfite sequencing" + +toolchain = {'name': 'foss', 'version': '2019b'} + +github_account = 'Dangertrip' +local_commit = 'f0e73063ba51ccd82bca94f999fd1c5aaaf3c38e' +source_urls = [GITHUB_SOURCE] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +patches = ['LiBis-%(version)s_fix-pure-name.patch'] +checksums = [ + '75eb9f8a003c3e879e93d6b2cdd9b4f11446f55728ed94e9bdc5096f9144fcd6', # LiBis-20200428.tar.gz + '4fa96d0058c1539f791ebbb583a5dba95904c4c88a0622bd3262545d66509845', # LiBis-20200428_fix-pure-name.patch +] + +dependencies = [ + ('Python', '3.7.4'), + ('FastQC', '0.11.9', '-Java-11', True), + ('SciPy-bundle', '2019.10', versionsuffix), # pandas + ('matplotlib', '3.1.1', versionsuffix), + ('cutadapt', '2.7', versionsuffix), + ('Trim_Galore', '0.6.5', '-Java-11%s' % versionsuffix), + ('scikit-learn', '0.21.3', versionsuffix), + ('BEDTools', '2.29.2'), + ('SAMtools', '1.10'), + ('Pysam', '0.15.3'), + ('MOABS', '1.3.9.6'), + ('Seaborn', '0.10.0', versionsuffix), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +options = {'modulename': False} + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], +} +sanity_check_commands = ["%(name)s --help"] + +# Running tests requires FASTA file containing the reference genome as well. +# https://github.com/Dangertrip/LiBis#run-libis +# please provide path to FASTA reference +local_test_cmd = """%(name)s -n \ +sample1_mate1.fq.gz,sample1_mate2.fq.gz sample2_mate1.fq.gz,sample2_mate2.fq.gz -r /PATH_TO_FASTA_REFERENCE""" +# sanity_check_commands += ["cd %%(builddir)s/%%(name)s-%s/Example/ && %s" % (local_commit, local_test_cmd)] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/l/LiBis/LiBis-20200428_fix-pure-name.patch b/easybuild/easyconfigs/l/LiBis/LiBis-20200428_fix-pure-name.patch new file mode 100644 index 00000000000..8ae5ae972da --- /dev/null +++ b/easybuild/easyconfigs/l/LiBis/LiBis-20200428_fix-pure-name.patch @@ -0,0 +1,13 @@ +fix undefined local variable bug, see https://github.com/Dangertrip/LiBis/issues/4 +author: Ruben Van Paemel (UGent) +--- LiBis/mapreduce.py.orig 2020-08-04 11:54:24.361340680 +0200 ++++ LiBis/mapreduce.py 2020-08-04 11:55:16.181386339 +0200 +@@ -512,7 +512,7 @@ + pure_name = c[0] + _mate = int(c[1])-1 + else: +- pure_name = c[0] ++ pure_name = line.query_name + _mate = 0 + + #if 'E00488:423:HYHFMCCXY:8:1101:14874:1872' not in read_name: continue diff --git a/easybuild/easyconfigs/l/Libint/Libint-2.6.0-iimpi-2020a-lmax-6-cp2k.eb b/easybuild/easyconfigs/l/Libint/Libint-2.6.0-iimpi-2020a-lmax-6-cp2k.eb new file mode 100644 index 00000000000..1052541bd3d --- /dev/null +++ b/easybuild/easyconfigs/l/Libint/Libint-2.6.0-iimpi-2020a-lmax-6-cp2k.eb @@ -0,0 +1,44 @@ +name = 'Libint' +version = '2.6.0' +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': 'iimpi', 'version': '2020a'} +toolchainopts = {'pic': True, 'cstd': 'c++11'} + +source_urls = ['https://github.com/evaleev/libint/archive'] +sources = ['v%(version)s.tar.gz'] +patches = ['Libint-%(version)s_fix-LIBINT2-MAX-AM-default1.patch'] +checksums = [ + '4ae47e8f0b5632c3d2a956469a7920896708e9f0e396ec10071b8181e4c8d9fa', # v2.6.0.tar.gz + # Libint-2.6.0_fix-LIBINT2-MAX-AM-default1.patch + 'e5445c89639d113be7726c2bc1164d2f6ea75e76abbb1c94acd55c508693d5ab', +] + +builddependencies = [ + ('Autotools', '20180311'), + ('GMP', '6.2.0'), + ('Boost', '1.72.0'), + ('Eigen', '3.3.7'), + ('Python', '2.7.18'), +] + +# 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.6.0_fix-LIBINT2-MAX-AM-default1.patch b/easybuild/easyconfigs/l/Libint/Libint-2.6.0_fix-LIBINT2-MAX-AM-default1.patch new file mode 100644 index 00000000000..e09ff53e7f3 --- /dev/null +++ b/easybuild/easyconfigs/l/Libint/Libint-2.6.0_fix-LIBINT2-MAX-AM-default1.patch @@ -0,0 +1,20 @@ +fix for: error: 'LIBINT2_MAX_AM_default1' was not declared in this scope +see https://github.com/evaleev/libint/pull/149 +diff --git a/src/bin/libint/build_libint.cc b/src/bin/libint/build_libint.cc +index 1b1da8c3..626c6515 100644 +--- a/src/bin/libint/build_libint.cc ++++ b/src/bin/libint/build_libint.cc +@@ -785,7 +785,12 @@ BOOST_PP_LIST_FOR_EACH ( BOOST_PP_ONEBODY_MCR1, _, BOOST_PP_ONEBODY_TASK_LIST) + } + #else + iface->to_params(iface->macro_define("MAX_AM",LIBINT_MAX_AM)); +- iface->to_params(iface->macro_define("MAX_AM_default",LIBINT_MAX_AM)); ++ for(unsigned int d=0; d<=INCLUDE_ERI; ++d) { ++ std::ostringstream oss; ++ oss << "MAX_AM_default"; ++ if (d > 0) oss << d; ++ iface->to_params(iface->macro_define(oss.str(),LIBINT_MAX_AM)); ++ } + #endif + cparams->print(os); + diff --git a/easybuild/easyconfigs/l/libaio/libaio-0.3.111-GCCcore-8.3.0.eb b/easybuild/easyconfigs/l/libaio/libaio-0.3.111-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..e2f3fd0ced5 --- /dev/null +++ b/easybuild/easyconfigs/l/libaio/libaio-0.3.111-GCCcore-8.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'MakeCp' + +name = 'libaio' +version = '0.3.111' +local_libversion = '1.0.1' + +homepage = 'https://pagure.io/libaio' +description = "Asynchronous input/output library that uses the kernels native interface." + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://pagure.io/%(name)s/archive/%(name)s-%(version)s/'] +sources = ['%(name)s-%(version)s.tar.gz'] +checksums = ['0b0f9927743024fc83e1f37cbd5215a957ed43a0c25d6f863c5bfb5cc997592c'] + +builddependencies = [('binutils', '2.32')] + +files_to_copy = [ + (["src/libaio.a", "src/libaio.%s.%s" % (SHLIB_EXT, local_libversion)], "lib"), + (["src/libaio.h"], "include"), +] + +postinstallcmds = ["cd %%(installdir)s/lib; ln -s libaio.%s.%s libaio.%s" % (SHLIB_EXT, local_libversion, SHLIB_EXT)] + +sanity_check_paths = { + 'files': ['lib/libaio.a', 'lib/libaio.%s.%s' % (SHLIB_EXT, local_libversion), 'include/libaio.h'], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libdap/libdap-3.20.6-GCCcore-8.3.0.eb b/easybuild/easyconfigs/l/libdap/libdap-3.20.6-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..42eb089bc96 --- /dev/null +++ b/easybuild/easyconfigs/l/libdap/libdap-3.20.6-GCCcore-8.3.0.eb @@ -0,0 +1,37 @@ +easyblock = 'ConfigureMake' + +name = 'libdap' +version = '3.20.6' + +homepage = 'https://www.opendap.org/software/libdap' +description = """A C++ SDK which contains an implementation of DAP 2.0 and + DAP4.0. This includes both Client- and Server-side support classes.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://www.opendap.org/pub/source/'] +sources = [SOURCE_TAR_GZ] +checksums = ['35cc7f952d72de4936103e8a95c67ac8f9b855c9211fae73ad065331515cc54a'] + +builddependencies = [ + ('binutils', '2.32'), + ('Bison', '3.3.2'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('cURL', '7.66.0'), + ('libxml2', '2.9.9'), + ('libtirpc', '1.2.6'), + ('PCRE', '8.43'), + ('util-linux', '2.34'), +] + +configopts = 'TIRPC_LIBS="-ltirpc"' + +sanity_check_paths = { + 'files': ['bin/getdap', 'bin/getdap4', 'bin/dap-config', 'lib/libdap.a', 'lib/libdap.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.100-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.100-GCCcore-9.3.0.eb index e7d1d72f50e..46f83b9a4b5 100644 --- a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.100-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.100-GCCcore-9.3.0.eb @@ -16,4 +16,7 @@ builddependencies = [ ] dependencies = [('X11', '20200222')] +# installing manpages requires an extra build dependency (docbook xsl) +configopts = '--disable-manpages' + moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.91-GCCcore-6.4.0.eb b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.91-GCCcore-6.4.0.eb index fa9a8cceb52..17345036e3e 100644 --- a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.91-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.91-GCCcore-6.4.0.eb @@ -3,12 +3,12 @@ easyblock = 'ConfigureMake' name = 'libdrm' version = '2.4.91' -homepage = 'http://dri.freedesktop.org' +homepage = 'https://dri.freedesktop.org' description = """Direct Rendering Manager runtime library.""" toolchain = {'name': 'GCCcore', 'version': '6.4.0'} -source_urls = ['http://dri.freedesktop.org/libdrm/'] +source_urls = ['https://dri.freedesktop.org/libdrm/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['c8ea3343d5bfc356550f0b5632403359d050fa09cf05d61e96e73adba0c407a9'] @@ -18,6 +18,9 @@ builddependencies = [ ] dependencies = [('X11', '20180131')] +# installing manpages requires an extra build dependency (docbook xsl) +configopts = '--disable-manpages' + sanity_check_paths = { 'files': ['include/xf86drm.h', 'include/xf86drmMode.h', 'lib/libdrm_intel.%s' % SHLIB_EXT, 'lib/libdrm_radeon.%s' % SHLIB_EXT, 'lib/libdrm.%s' % SHLIB_EXT, 'lib/libkms.%s' % SHLIB_EXT], diff --git a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.92-GCCcore-7.3.0.eb b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.92-GCCcore-7.3.0.eb index 4c848e9872e..8b8ca66a18e 100644 --- a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.92-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.92-GCCcore-7.3.0.eb @@ -3,12 +3,12 @@ easyblock = 'ConfigureMake' name = 'libdrm' version = '2.4.92' -homepage = 'http://dri.freedesktop.org' +homepage = 'https://dri.freedesktop.org' description = """Direct Rendering Manager runtime library.""" toolchain = {'name': 'GCCcore', 'version': '7.3.0'} -source_urls = ['http://dri.freedesktop.org/libdrm/'] +source_urls = ['https://dri.freedesktop.org/libdrm/'] sources = [SOURCELOWER_TAR_GZ] checksums = ['a1b3b6430bc77697c689e572e32d58b3472c54300c9646c4ee8c626fc3bd62f1'] @@ -18,6 +18,9 @@ builddependencies = [ ] dependencies = [('X11', '20180604')] +# installing manpages requires an extra build dependency (docbook xsl) +configopts = '--disable-manpages' + sanity_check_paths = { 'files': ['include/xf86drm.h', 'include/xf86drmMode.h', 'lib/libdrm_intel.%s' % SHLIB_EXT, 'lib/libdrm_radeon.%s' % SHLIB_EXT, 'lib/libdrm.%s' % SHLIB_EXT, 'lib/libkms.%s' % SHLIB_EXT], diff --git a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.97-GCCcore-8.2.0.eb b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.97-GCCcore-8.2.0.eb index cc39cea6d8d..79e7d89bef9 100644 --- a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.97-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.97-GCCcore-8.2.0.eb @@ -16,4 +16,7 @@ builddependencies = [ ] dependencies = [('X11', '20190311')] +# installing manpages requires an extra build dependency (docbook xsl) +configopts = '--disable-manpages' + moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.99-GCCcore-8.3.0.eb b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.99-GCCcore-8.3.0.eb index b51d47879f8..03d7a56dae4 100644 --- a/easybuild/easyconfigs/l/libdrm/libdrm-2.4.99-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/l/libdrm/libdrm-2.4.99-GCCcore-8.3.0.eb @@ -16,4 +16,7 @@ builddependencies = [ ] dependencies = [('X11', '20190717')] +# installing manpages requires an extra build dependency (docbook xsl) +configopts = '--disable-manpages' + moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.4-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.4-GCCcore-9.3.0.eb index a10f7dc9998..a99cf9d51f7 100644 --- a/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.4-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/l/libepoxy/libepoxy-1.5.4-GCCcore-9.3.0.eb @@ -15,7 +15,7 @@ checksums = ['c926fcc606901f3e03e371027056fd478da43e01ce2da7ffc48b5a0de0ca107c'] builddependencies = [ ('binutils', '2.34'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('pkg-config', '0.29.2'), ] diff --git a/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.2.0.eb b/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.2.0.eb index 94477eb2760..3c46a498291 100644 --- a/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.2.0.eb @@ -12,7 +12,10 @@ source_urls = ['https://github.com/NVIDIA/libglvnd/releases/download/v%(version) sources = ['libglvnd-%(version)s.tar.gz'] checksums = ['2dacbcfa47b7ffb722cbddc0a4f1bc3ecd71d2d7bb461bceb8e396dc6b81dc6d'] -builddependencies = [('binutils', '2.31.1')] +builddependencies = [ + ('binutils', '2.31.1'), + ('pkg-config', '0.29.2'), +] dependencies = [('X11', '20190311')] diff --git a/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.3.0.eb b/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.3.0.eb index 10b39539601..c82eb219dfd 100644 --- a/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-8.3.0.eb @@ -12,7 +12,10 @@ source_urls = ['https://github.com/NVIDIA/libglvnd/releases/download/v%(version) sources = ['libglvnd-%(version)s.tar.gz'] checksums = ['2dacbcfa47b7ffb722cbddc0a4f1bc3ecd71d2d7bb461bceb8e396dc6b81dc6d'] -builddependencies = [('binutils', '2.32')] +builddependencies = [ + ('binutils', '2.32'), + ('pkg-config', '0.29.2'), +] dependencies = [('X11', '20190717')] diff --git a/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-9.3.0.eb index 26087064e8d..c5d7432d6aa 100644 --- a/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/l/libglvnd/libglvnd-1.2.0-GCCcore-9.3.0.eb @@ -12,7 +12,10 @@ source_urls = ['https://github.com/NVIDIA/libglvnd/releases/download/v%(version) sources = ['libglvnd-%(version)s.tar.gz'] checksums = ['2dacbcfa47b7ffb722cbddc0a4f1bc3ecd71d2d7bb461bceb8e396dc6b81dc6d'] -builddependencies = [('binutils', '2.34')] +builddependencies = [ + ('binutils', '2.34'), + ('pkg-config', '0.29.2'), +] dependencies = [('X11', '20200222')] diff --git a/easybuild/easyconfigs/l/libiconv/libiconv-1.15-GCCcore-7.2.0.eb b/easybuild/easyconfigs/l/libiconv/libiconv-1.15-GCCcore-7.2.0.eb new file mode 100644 index 00000000000..f71bc3c1b7d --- /dev/null +++ b/easybuild/easyconfigs/l/libiconv/libiconv-1.15-GCCcore-7.2.0.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'libiconv' +version = '1.15' + +homepage = 'https://www.gnu.org/software/libiconv' +description = "Libiconv converts from one character encoding to another through Unicode conversion" + +toolchain = {'name': 'GCCcore', 'version': '7.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178'] + +builddependencies = [('binutils', '2.29')] + +sanity_check_paths = { + 'files': ['bin/iconv', 'include/iconv.h', 'include/libcharset.h', 'include/localcharset.h', + 'lib/libcharset.a', 'lib/libcharset.%s' % SHLIB_EXT, 'lib/libiconv.%s' % SHLIB_EXT], + 'dirs': ['share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libiconv/libiconv-1.16-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/libiconv/libiconv-1.16-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..55abc5c157c --- /dev/null +++ b/easybuild/easyconfigs/l/libiconv/libiconv-1.16-GCCcore-9.3.0.eb @@ -0,0 +1,23 @@ +easyblock = 'ConfigureMake' + +name = 'libiconv' +version = '1.16' + +homepage = 'https://www.gnu.org/software/libiconv' +description = "Libiconv converts from one character encoding to another through Unicode conversion" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04'] + +builddependencies = [('binutils', '2.34')] + +sanity_check_paths = { + 'files': ['bin/iconv', 'include/iconv.h', 'include/libcharset.h', 'include/localcharset.h', + 'lib/libcharset.a', 'lib/libcharset.%s' % SHLIB_EXT, 'lib/libiconv.%s' % SHLIB_EXT], + 'dirs': ['share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libosmium/libosmium-2.15.4-foss-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/l/libosmium/libosmium-2.15.4-foss-2018b-Python-3.6.6.eb new file mode 100644 index 00000000000..c8381eafbec --- /dev/null +++ b/easybuild/easyconfigs/l/libosmium/libosmium-2.15.4-foss-2018b-Python-3.6.6.eb @@ -0,0 +1,50 @@ +easyblock = "CMakeMake" + +name = 'libosmium' +version = '2.15.4' +versionsuffix = '-Python-3.6.6' + +homepage = "https://osmcode.org/libosmium/" +description = """A fast and flexible C++ library for working with OpenStreetMap data. + The Osmium Library has extensive support for all types of OSM entities: + nodes, ways, relations, and changesets. + It allows reading from and writing to OSM files in XML and PBF formats, including change files and full history files. + Osmium can store OSM data in memory and on disk in various formats and using various indexes. + Its easy to use handler interface allows you to quickly write data filtering and conversion functions. + Osmium can create WKT, WKB, OGR, GEOS and GeoJSON geometries for easy conversion into many GIS formats + and it can assemble multipolygons from ways and relations.""" + +toolchain = {'name': 'foss', 'version': '2018b'} + +source_urls = ['https://github.com/osmcode/libosmium/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['402247f7764bc20c061fa7d9fad15fc85459b7ce4f420274de78c94d05ddf260'] + +builddependencies = [ + ('CMake', '3.12.1'), + ('Doxygen', '1.8.14'), + ('Graphviz', '2.40.1'), +] + +dependencies = [ + ('protozero', '1.6.8'), + ('expat', '2.2.5'), + ('zlib', '1.2.11'), + ('bzip2', '1.0.6'), + ('Boost', '1.67.0'), + ('GDAL', '2.2.3', versionsuffix), + ('GEOS', '3.6.2', versionsuffix), + ('PROJ', '5.0.0'), + ('sparsehash', '2.0.3'), +] + +configopts = "-DINSTALL_UTFCPP=ON" + +runtest = 'test' + +sanity_check_paths = { + 'files': ['include/osmium/osm.hpp'], + 'dirs': ['include/osmium'], +} + +moduleclass = "devel" diff --git a/easybuild/easyconfigs/l/libosmium/libosmium-2.15.6-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/l/libosmium/libosmium-2.15.6-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..500e5c6f02f --- /dev/null +++ b/easybuild/easyconfigs/l/libosmium/libosmium-2.15.6-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,50 @@ +easyblock = "CMakeMake" + +name = 'libosmium' +version = '2.15.6' +versionsuffix = '-Python-3.7.4' + +homepage = "https://osmcode.org/libosmium/" +description = """A fast and flexible C++ library for working with OpenStreetMap data. + The Osmium Library has extensive support for all types of OSM entities: + nodes, ways, relations, and changesets. + It allows reading from and writing to OSM files in XML and PBF formats, including change files and full history files. + Osmium can store OSM data in memory and on disk in various formats and using various indexes. + Its easy to use handler interface allows you to quickly write data filtering and conversion functions. + Osmium can create WKT, WKB, OGR, GEOS and GeoJSON geometries for easy conversion into many GIS formats + and it can assemble multipolygons from ways and relations.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = ['https://github.com/osmcode/libosmium/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['55879b9da0f3756f3216f9fb857f35afb3b01294b5f18e0d1719334e7d4f5ac9'] + +builddependencies = [ + ('CMake', '3.15.3'), + ('Doxygen', '1.8.16'), + ('Graphviz', '2.42.2'), +] + +dependencies = [ + ('protozero', '1.7.0'), + ('expat', '2.2.7'), + ('zlib', '1.2.11'), + ('bzip2', '1.0.8'), + ('Boost', '1.71.0'), + ('GDAL', '3.0.2', versionsuffix), + ('GEOS', '3.8.0', versionsuffix), + ('PROJ', '6.2.1'), + ('sparsehash', '2.0.3'), +] + +configopts = "-DINSTALL_UTFCPP=ON" + +runtest = 'test' + +sanity_check_paths = { + 'files': ['include/osmium/osm.hpp'], + 'dirs': ['include/osmium'], +} + +moduleclass = "devel" diff --git a/easybuild/easyconfigs/l/libreadline/libreadline-8.0-GCCcore-10.2.0.eb b/easybuild/easyconfigs/l/libreadline/libreadline-8.0-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..cb086a84162 --- /dev/null +++ b/easybuild/easyconfigs/l/libreadline/libreadline-8.0-GCCcore-10.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'libreadline' +version = '8.0' + +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': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://ftp.gnu.org/gnu/readline'] +sources = ['readline-%(version)s.tar.gz'] +checksums = ['e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461'] + +builddependencies = [ + ('binutils', '2.35'), +] +dependencies = [ + ('ncurses', '6.2'), +] + +# 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/libtirpc/libtirpc-1.2.6-GCCcore-8.3.0.eb b/easybuild/easyconfigs/l/libtirpc/libtirpc-1.2.6-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..f762cde0265 --- /dev/null +++ b/easybuild/easyconfigs/l/libtirpc/libtirpc-1.2.6-GCCcore-8.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'libtirpc' +version = '1.2.6' + +homepage = 'https://sourceforge.net/projects/libtirpc/' +description = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux." + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCE_TAR_BZ2] +checksums = ['4278e9a5181d5af9cd7885322fdecebc444f9a3da87c526e7d47f7a12a37d1cc'] + +configopts = '--enable-static --enable-shared --disable-gssapi' + +builddependencies = [ + ('binutils', '2.32') +] + +sanity_check_paths = { + 'files': ['lib/libtirpc.%s' % (x,) for x in ['a', SHLIB_EXT]], + 'dirs': ['include/tirpc', 'lib'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.2.0-2.31.1.eb b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.2.0-2.31.1.eb index b014a7db3b3..3a0eeb68db1 100644 --- a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.2.0-2.31.1.eb +++ b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.2.0-2.31.1.eb @@ -14,11 +14,13 @@ sources = [SOURCE_TAR_GZ] patches = [ 'libxc-%(version)s_lm-fix.patch', 'libxc-%(version)s_fix-CMakeLists.patch', + 'libxc-%(version)s_fix-timeout.patch', ] checksums = [ 'a8ee37ddc5079339854bd313272856c9d41a27802472ee9ae44b58ee9a298337', # libxc-4.3.4.tar.gz 'f2cae17533d3527e11cfec958a7f253872f7c5fcd104c3cffc02382be0ccfb9c', # libxc-4.3.4_lm-fix.patch '5a5e7d69729326e0d44e60b554ba6d8650a28958ec54b27a98757dc78a040946', # libxc-4.3.4_fix-CMakeLists.patch + 'd44d4a35ae22542c3086e57638e0e2b6b1ad8e98d0898036972a0248cf8778e8', # libxc-4.3.4_fix-timeout.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.3.0.eb b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.3.0.eb index b24e6774d09..4e3f5e14fa6 100644 --- a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.3.0.eb +++ b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-8.3.0.eb @@ -14,11 +14,13 @@ sources = [SOURCE_TAR_GZ] patches = [ 'libxc-%(version)s_lm-fix.patch', 'libxc-%(version)s_fix-CMakeLists.patch', + 'libxc-%(version)s_fix-timeout.patch', ] checksums = [ 'a8ee37ddc5079339854bd313272856c9d41a27802472ee9ae44b58ee9a298337', # libxc-4.3.4.tar.gz 'f2cae17533d3527e11cfec958a7f253872f7c5fcd104c3cffc02382be0ccfb9c', # libxc-4.3.4_lm-fix.patch '5a5e7d69729326e0d44e60b554ba6d8650a28958ec54b27a98757dc78a040946', # libxc-4.3.4_fix-CMakeLists.patch + 'd44d4a35ae22542c3086e57638e0e2b6b1ad8e98d0898036972a0248cf8778e8', # libxc-4.3.4_fix-timeout.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-9.3.0.eb b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-9.3.0.eb index 34040478b89..a18ca37fc08 100644 --- a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-9.3.0.eb +++ b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-GCC-9.3.0.eb @@ -14,11 +14,13 @@ sources = [SOURCE_TAR_GZ] patches = [ 'libxc-%(version)s_lm-fix.patch', 'libxc-%(version)s_fix-CMakeLists.patch', + 'libxc-%(version)s_fix-timeout.patch', ] checksums = [ 'a8ee37ddc5079339854bd313272856c9d41a27802472ee9ae44b58ee9a298337', # libxc-4.3.4.tar.gz 'f2cae17533d3527e11cfec958a7f253872f7c5fcd104c3cffc02382be0ccfb9c', # libxc-4.3.4_lm-fix.patch '5a5e7d69729326e0d44e60b554ba6d8650a28958ec54b27a98757dc78a040946', # libxc-4.3.4_fix-CMakeLists.patch + 'd44d4a35ae22542c3086e57638e0e2b6b1ad8e98d0898036972a0248cf8778e8', # libxc-4.3.4_fix-timeout.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb index f9c56c07ce8..ff4dc62dd58 100644 --- a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb +++ b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.1.144-GCC-8.2.0-2.31.1.eb @@ -15,12 +15,14 @@ patches = [ 'libxc-%(version)s_rename-F03.patch', 'libxc-%(version)s_lm-fix.patch', 'libxc-%(version)s_fix-CMakeLists.patch', + 'libxc-%(version)s_fix-timeout.patch', ] checksums = [ 'a8ee37ddc5079339854bd313272856c9d41a27802472ee9ae44b58ee9a298337', # libxc-4.3.4.tar.gz 'e494be3ca2026998f2dd7c6b03a4e662f204fd3d963271e588f9f0d5739e76b5', # libxc-4.3.4_rename-F03.patch 'f2cae17533d3527e11cfec958a7f253872f7c5fcd104c3cffc02382be0ccfb9c', # libxc-4.3.4_lm-fix.patch '5a5e7d69729326e0d44e60b554ba6d8650a28958ec54b27a98757dc78a040946', # libxc-4.3.4_fix-CMakeLists.patch + 'd44d4a35ae22542c3086e57638e0e2b6b1ad8e98d0898036972a0248cf8778e8', # libxc-4.3.4_fix-timeout.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.5.281.eb b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.5.281.eb index d0c07bcebdc..9c51d016cac 100644 --- a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.5.281.eb +++ b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2019.5.281.eb @@ -15,12 +15,14 @@ patches = [ 'libxc-%(version)s_rename-F03.patch', 'libxc-%(version)s_lm-fix.patch', 'libxc-%(version)s_fix-CMakeLists.patch', + 'libxc-%(version)s_fix-timeout.patch', ] checksums = [ 'a8ee37ddc5079339854bd313272856c9d41a27802472ee9ae44b58ee9a298337', # libxc-4.3.4.tar.gz 'e494be3ca2026998f2dd7c6b03a4e662f204fd3d963271e588f9f0d5739e76b5', # libxc-4.3.4_rename-F03.patch 'f2cae17533d3527e11cfec958a7f253872f7c5fcd104c3cffc02382be0ccfb9c', # libxc-4.3.4_lm-fix.patch '5a5e7d69729326e0d44e60b554ba6d8650a28958ec54b27a98757dc78a040946', # libxc-4.3.4_fix-CMakeLists.patch + 'd44d4a35ae22542c3086e57638e0e2b6b1ad8e98d0898036972a0248cf8778e8', # libxc-4.3.4_fix-timeout.patch ] builddependencies = [ diff --git a/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2020.1.217.eb b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2020.1.217.eb new file mode 100644 index 00000000000..9eaef59d67e --- /dev/null +++ b/easybuild/easyconfigs/l/libxc/libxc-4.3.4-iccifort-2020.1.217.eb @@ -0,0 +1,57 @@ +easyblock = 'CMakeMake' + +name = 'libxc' +version = '4.3.4' + +homepage = 'https://www.tddft.org/programs/libxc' +description = """Libxc is a library of exchange-correlation functionals for density-functional theory. + The aim is to provide a portable, well tested and reliable set of exchange and correlation functionals.""" + +toolchain = {'name': 'iccifort', 'version': '2020.1.217'} + +source_urls = ['https://www.tddft.org/programs/libxc/down.php?file=%(version)s/'] +sources = [SOURCE_TAR_GZ] +patches = [ + 'libxc-%(version)s_rename-F03.patch', + 'libxc-%(version)s_lm-fix.patch', + 'libxc-%(version)s_fix-CMakeLists.patch', + 'libxc-%(version)s_fix-timeout.patch', +] +checksums = [ + 'a8ee37ddc5079339854bd313272856c9d41a27802472ee9ae44b58ee9a298337', # libxc-4.3.4.tar.gz + 'e494be3ca2026998f2dd7c6b03a4e662f204fd3d963271e588f9f0d5739e76b5', # libxc-4.3.4_rename-F03.patch + 'f2cae17533d3527e11cfec958a7f253872f7c5fcd104c3cffc02382be0ccfb9c', # libxc-4.3.4_lm-fix.patch + '5a5e7d69729326e0d44e60b554ba6d8650a28958ec54b27a98757dc78a040946', # libxc-4.3.4_fix-CMakeLists.patch + 'd44d4a35ae22542c3086e57638e0e2b6b1ad8e98d0898036972a0248cf8778e8', # libxc-4.3.4_fix-timeout.patch +] + +builddependencies = [ + ('CMake', '3.16.4'), + ('Perl', '5.30.2'), +] + +separate_build_dir = True + +# rename *.F03 source file since Intel Fortran compiler doesn't like that extension +# also requires patch file to rename file in CMakeLists.txt and src/Makefile.in +preconfigopts = "mv ../libxc-%(version)s/src/libxc_master.F03 ../libxc-%(version)s/src/libxc_master_F03.F90 && " + +local_common_configopts = "-DENABLE_FORTRAN=ON -DENABLE_FORTRAN03=ON -DENABLE_XHOST=OFF" + +# perform iterative build to get both static and shared libraries +configopts = [ + local_common_configopts + ' -DBUILD_SHARED_LIBS=OFF', + local_common_configopts + ' -DBUILD_SHARED_LIBS=ON', +] + +parallel = 1 + +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/xc-info', 'bin/xc-threshold'] + + ['lib/libxc%s.%s' % (x, y) for x in ['', 'f03', 'f90'] for y in ['a', SHLIB_EXT]], + 'dirs': ['include', 'lib/pkgconfig', 'share/cmake/Libxc'], +} + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/l/libxc/libxc-4.3.4_fix-timeout.patch b/easybuild/easyconfigs/l/libxc/libxc-4.3.4_fix-timeout.patch new file mode 100644 index 00000000000..aafd3d0f558 --- /dev/null +++ b/easybuild/easyconfigs/l/libxc/libxc-4.3.4_fix-timeout.patch @@ -0,0 +1,14 @@ +Extend timeout to avoid failing tests due to temporarily unresponsive storage +Author: Samuel Moors, Vrije Universiteit Brussel (VUB) +diff -ur libxc-4.3.4.orig/testsuite/CMakeLists.txt libxc-4.3.4/testsuite/CMakeLists.txt +--- libxc-4.3.4.orig/testsuite/CMakeLists.txt 2019-01-25 15:47:40.000000000 +0100 ++++ libxc-4.3.4/testsuite/CMakeLists.txt 2020-08-13 23:34:08.091740000 +0200 +@@ -42,7 +42,7 @@ + set(test "${func}-${system}-${spin}-${order}") + add_test(NAME ${test}-run + COMMAND xc-regression ${func} ${nspin} ${order} ${CMAKE_CURRENT_SOURCE_DIR}/input/${system} ${CMAKE_CURRENT_BINARY_DIR}/workdir/${_sdir}/${refname}) +- set_tests_properties(${test}-run PROPERTIES TIMEOUT 1) ++ set_tests_properties(${test}-run PROPERTIES TIMEOUT 20) + + # checke the tests values against the reference values + add_test(NAME ${test}-check diff --git a/easybuild/easyconfigs/l/libxslt/libxslt-1.1.34-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/libxslt/libxslt-1.1.34-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..bc98e11869c --- /dev/null +++ b/easybuild/easyconfigs/l/libxslt/libxslt-1.1.34-GCCcore-9.3.0.eb @@ -0,0 +1,31 @@ +easyblock = 'ConfigureMake' + +name = 'libxslt' +version = '1.1.34' + +homepage = 'http://xmlsoft.org/' +description = """Libxslt is the XSLT C library developed for the GNOME project + (but usable outside of the Gnome platform).""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [ + 'http://xmlsoft.org/sources/', + 'http://xmlsoft.org/sources/old/' +] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['98b1bd46d6792925ad2dfe9a87452ea2adebf69dcb9919ffd55bf926a7f93f7f'] + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('zlib', '1.2.11'), + ('libxml2', '2.9.10'), +] + +sanity_check_paths = { + 'files': ['bin/xsltproc', 'include/libxslt/xslt.h', 'lib/%%(name)s.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/l/libxsmm/libxsmm-1.16.1-iccifort-2020.1.217.eb b/easybuild/easyconfigs/l/libxsmm/libxsmm-1.16.1-iccifort-2020.1.217.eb new file mode 100644 index 00000000000..7640a431e03 --- /dev/null +++ b/easybuild/easyconfigs/l/libxsmm/libxsmm-1.16.1-iccifort-2020.1.217.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'libxsmm' +version = '1.16.1' + +homepage = 'https://github.com/hfp/libxsmm' +description = """LIBXSMM is a library for small dense and small sparse matrix-matrix multiplications +targeting Intel Architecture (x86).""" + +toolchain = {'name': 'iccifort', 'version': '2020.1.217'} + +source_urls = ['https://github.com/hfp/libxsmm/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['93dc7a3ec40401988729ddb2c6ea2294911261f7e6cd979cf061b5c3691d729d'] + +# install both static and dynamic version +installopts = ['PREFIX=%(installdir)s', 'PREFIX=%(installdir)s STATIC=0'] + +skipsteps = ['configure'] +maxparallel = 1 + +sanity_check_paths = { + 'files': ['bin/libxsmm_gemm_generator', 'include/libxsmm.h', 'lib/libxsmm.a', 'lib/libxsmm.%s' % SHLIB_EXT], + 'dirs': ['share'] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/l/limix-bgen/limix-bgen-3.0.3-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/limix-bgen/limix-bgen-3.0.3-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..e80417e6b0d --- /dev/null +++ b/easybuild/easyconfigs/l/limix-bgen/limix-bgen-3.0.3-GCCcore-9.3.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'limix-bgen' +version = '3.0.3' + +homepage = "https://github.com/limix/bgen" +description = """A BGEN file format reader. + +It fully supports the BGEN format specifications 1.2 and 1.3.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +github_account = 'limix' +source_urls = ['https://github.com/limix/bgen/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['1cf434f35aaee86d1093f1fd96caf07fa92c3b49a760175052af934d74e702a6'] + +builddependencies = [ + ('binutils', '2.34'), + ('CMake', '3.16.4'), +] +dependencies = [ + ('almosthere', '1.0.10'), + ('zstd', '1.4.4') +] + + +sanity_check_paths = { + 'files': ['lib/libbgen.%s' % SHLIB_EXT, 'include/bgen.h'], + 'dirs': ['include/bgen'] +} + +separate_build_dir = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/l/lxml/lxml-4.5.2-GCCcore-9.3.0.eb b/easybuild/easyconfigs/l/lxml/lxml-4.5.2-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..f8209a2f3f5 --- /dev/null +++ b/easybuild/easyconfigs/l/lxml/lxml-4.5.2-GCCcore-9.3.0.eb @@ -0,0 +1,28 @@ +easyblock = 'PythonPackage' + +name = 'lxml' +version = '4.5.2' + +homepage = 'https://lxml.de/' +description = """The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://lxml.de/files/'] +sources = [SOURCE_TGZ] +checksums = ['cdc13a1682b2a6241080745b1953719e7fe0850b40a5c71ca574f090a1391df6'] + +multi_deps = {'Python': ['3.8.2', '2.7.18']} + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('libxml2', '2.9.10'), + ('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.18-GCCcore-10.2.0.eb b/easybuild/easyconfigs/m/M4/M4-1.4.18-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..50594f87ece --- /dev/null +++ b/easybuild/easyconfigs/m/M4/M4-1.4.18-GCCcore-10.2.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'M4' +version = '1.4.18' + +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': '10.2.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +patches = ['M4-1.4.18_glibc_2.28.patch'] +checksums = [ + 'ab2633921a5cd38e48797bf5521ad259bdc4b979078034a3b790d7fec5493fab', # m4-1.4.18.tar.gz + 'a613c18f00b1a3caa46ae4b8b849a0f4f71095ad860f4fcd6c6bb4ae211681fa', # M4-1.4.18_glibc_2.28.patch +] + +# use same binutils version that was used when building GCC toolchain +builddependencies = [('binutils', '2.35', '', 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/MARS/MARS-20191101-GCCcore-8.3.0.eb b/easybuild/easyconfigs/m/MARS/MARS-20191101-GCCcore-8.3.0.eb index a044edf98c1..2f71a5a4029 100644 --- a/easybuild/easyconfigs/m/MARS/MARS-20191101-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/m/MARS/MARS-20191101-GCCcore-8.3.0.eb @@ -25,7 +25,7 @@ builddependencies = [ dependencies = [ ('SeqAn', '2.4.0'), - ('sdsl-lite', '2.1.1'), + ('SDSL', '2.1.1-20191211'), ] local_links = '-L ./libsdsl/lib/ -lsdsl -ldivsufsort -ldivsufsort64' diff --git a/easybuild/easyconfigs/m/MATLAB-Engine/MATLAB-Engine-2019b-GCCcore-8.3.0.eb b/easybuild/easyconfigs/m/MATLAB-Engine/MATLAB-Engine-2019b-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..7ce8669e278 --- /dev/null +++ b/easybuild/easyconfigs/m/MATLAB-Engine/MATLAB-Engine-2019b-GCCcore-8.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'MATLAB-Engine' +version = '2019b' + +homepage = 'https://www.mathworks.com/help/matlab/matlab-engine-for-python.html' +description = """The MATLAB Engine API for Python provides a package for Python + to call MATLAB as a computational engine.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +multi_deps = {'Python': ['3.7.4', '2.7.16']} + +dependencies = [ + ('MATLAB', version, '', True) +] + +use_pip = False +download_dep_fail = True + +# Since this setup.py does not provide a separate --build-base for the install +# step, both build and install must be performed in a single command. +prebuildopts = "cd $EBROOTMATLAB/extern/engines/python && " +buildopts = "--build-base=%(builddir)s install --prefix=%(installdir)s" + +skipsteps = ['install'] + +# Test that connection with MATLAB can be established successfully +# sanity_check_commands = ["python -c 'import matlab.engine; eng = matlab.engine.start_matlab(); eng.quit()'"] + +options = {'modulename': 'matlab.engine'} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MDSplus/MDSplus-7.96.8-GCCcore-9.3.0.eb b/easybuild/easyconfigs/m/MDSplus/MDSplus-7.96.8-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..0a58ccbed04 --- /dev/null +++ b/easybuild/easyconfigs/m/MDSplus/MDSplus-7.96.8-GCCcore-9.3.0.eb @@ -0,0 +1,45 @@ +easyblock = 'ConfigureMake' + +name = 'MDSplus' +version = '7.96.8' + +homepage = 'https://mdsplus.org/' +description = """MDSplus is a set of software tools for data acquisition and storage and a methodology + for management of complex scientific data.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/%(name)s/%(namelower)s/archive'] +sources = ['stable_release-%s.zip' % version.replace('.', '-')] +checksums = ['d63ae3b6ea5ca9228a1f680780000fb220ea97a55d71a8a93258741a352f247d'] + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('libxml2', '2.9.10'), + ('zlib', '1.2.11'), + ('ncurses', '6.2'), + ('libreadline', '8.0') +] + +configopts = [' --disable-doxygen-doc --disable-java --disable-valgrind' + ' --without-idl --without-labview --without-srb --without-gsi' + ' --without-x --without-docker-image'] + +preconfigopts = 'export CFLAGS="$CFLAGS -I$EBROOTLIBXML2/include/libxml2 " && ' + +parallel = 1 + +modextravars = { + 'MDSPLUS_DIR': '%(installdir)s', + 'MDS_PATH': '%(installdir)s/tdi', +} + +sanity_check_paths = { + 'files': ['lib/libMdsLib.so', 'lib/libTreeShr.so', 'include/mdslib.h', + 'include/mdsobjects.h'], + 'dirs': ['bin', 'include', 'lib', 'tdi'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.4-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.4-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..faac422e08c --- /dev/null +++ b/easybuild/easyconfigs/m/MDTraj/MDTraj-1.9.4-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,46 @@ +# Updated: Pavel Grochal (INUITS) + +easyblock = 'PythonBundle' + +name = 'MDTraj' +version = '1.9.4' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://mdtraj.org' +description = "Read, write and analyze MD trajectories with only a few lines of Python code." + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'openmp': True} + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('zlib', '1.2.11'), +] + +use_pip = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('astor', '0.8.1', { + 'checksums': ['6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e'], + }), + ('pymbar', '3.0.5', { + 'checksums': ['b079a7d0b9fbc8a92850277b664bb582991ef5ac399b3607e695569148f6c784'], + }), + ('mdtraj', version, { + 'checksums': ['d5d28be24dd5f38e8b272c3a445a6cdbffc374b30e891c5535f65bb20f7e8b24'], + }), +] + +# The unit tests of MDTraj are a pain to get to work: they require +# a massive number of extra dependencies. See +# https://github.com/mdtraj/mdtraj/blob/master/devtools/conda-recipe/meta.yaml +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/m/MOABS/MOABS-1.3.9.6-gompi-2019b.eb b/easybuild/easyconfigs/m/MOABS/MOABS-1.3.9.6-gompi-2019b.eb new file mode 100644 index 00000000000..a653b96e11d --- /dev/null +++ b/easybuild/easyconfigs/m/MOABS/MOABS-1.3.9.6-gompi-2019b.eb @@ -0,0 +1,50 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'ConfigureMake' + +name = 'MOABS' +version = '1.3.9.6' + +homepage = 'https://github.com/sunnyisgalaxy/moabs' +description = """MOABS: MOdel based Analysis of Bisulfite Sequencing data""" + +toolchain = {'name': 'gompi', 'version': '2019b'} + +source_urls = ['https://github.com/sunnyisgalaxy/moabs/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['a4fe07e644a3d730f026d8657392dfe30b01a4a7986d654e94372b911fd62b36'] + +builddependencies = [('Autotools', '20180311')] + +dependencies = [ + ('Perl', '5.30.0'), # provides Config::Simple + ('zlib', '1.2.11'), + ('Boost', '1.71.0'), +] + +preconfigopts = "autoreconf -i && " + +installopts = "-C src" + +# some binaries/scripts are not being installed by 'make install'... +postinstallcmds = [ + "cp -a %(builddir)s/moabs-%(version)s/bin/{bamsort.sh,moabs,preprocess_novoalign.sh,redepth.pl} %(installdir)s/bin", +] + +local_bin_list = ['bamsort.sh', 'bsmap', 'mcall', 'mcomp', 'moabs', 'numCI', 'preprocess_novoalign.sh', 'redepth.pl'] + +fix_perl_shebang_for = ['bin/*.pl'] + +sanity_check_paths = { + 'files': ['bin/%s' % f for f in local_bin_list], + 'dirs': [] +} +sanity_check_commands = [ + "bsmap -h 2>&1 | grep 'bsmap \[options\]'", + "mcall -h | grep 'Allowed options'", + "mcomp -h | grep 'Allowed options for methComp'", + "moabs 2>&1 | grep 'Version : %(version)s'", +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/MPC/MPC-1.1.0-GCC-9.3.0.eb b/easybuild/easyconfigs/m/MPC/MPC-1.1.0-GCC-9.3.0.eb new file mode 100644 index 00000000000..0c9808f6708 --- /dev/null +++ b/easybuild/easyconfigs/m/MPC/MPC-1.1.0-GCC-9.3.0.eb @@ -0,0 +1,33 @@ +easyblock = 'ConfigureMake' + +name = 'MPC' +version = '1.1.0' + +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': 'GCC', 'version': '9.3.0'} + +source_urls = ['https://ftpmirror.gnu.org/gnu/mpc/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6985c538143c1208dcb1ac42cedad6ff52e267b47e5f970183a3e75125b43c2e'] + +dependencies = [ + ('GMP', '6.2.0'), + ('MPFR', '4.0.2'), +] + +runtest = 'check' + +sanity_check_paths = { + 'files': ['lib/libmpc.%s' % SHLIB_EXT, 'include/mpc.h'], + 'dirs': [] +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-6.4.0.eb b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-6.4.0.eb index 16dd2310e27..0e8b36b6446 100644 --- a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-6.4.0.eb +++ b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-6.4.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'MPFR' version = '4.0.1' -homepage = 'http://www.mpfr.org' +homepage = 'https://www.mpfr.org' description = """ The MPFR library is a C library for multiple-precision floating-point @@ -12,7 +12,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '6.4.0'} -source_urls = ['http://www.mpfr.org/mpfr-%(version)s/'] +source_urls = ['https://www.mpfr.org/mpfr-%(version)s/'] sources = [SOURCELOWER_TAR_BZ2] checksums = ['a4d97610ba8579d380b384b225187c250ef88cfe1d5e7226b89519374209b86b'] @@ -26,6 +26,11 @@ dependencies = [ runtest = 'check' +# copy libmpfr.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a src/.libs/libmpfr.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + sanity_check_paths = { 'files': ['lib/libmpfr.%s' % SHLIB_EXT, 'include/mpfr.h'], 'dirs': [], diff --git a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-7.3.0.eb b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-7.3.0.eb index 283a7787af3..22b02b893e6 100644 --- a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.1-GCCcore-7.3.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'MPFR' version = '4.0.1' -homepage = 'http://www.mpfr.org' +homepage = 'https://www.mpfr.org' description = """ The MPFR library is a C library for multiple-precision floating-point @@ -12,7 +12,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '7.3.0'} -source_urls = ['http://www.mpfr.org/mpfr-%(version)s/'] +source_urls = ['https://www.mpfr.org/mpfr-%(version)s/'] sources = [SOURCELOWER_TAR_BZ2] checksums = ['a4d97610ba8579d380b384b225187c250ef88cfe1d5e7226b89519374209b86b'] @@ -26,6 +26,11 @@ dependencies = [ runtest = 'check' +# copy libmpfr.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a src/.libs/libmpfr.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + sanity_check_paths = { 'files': ['lib/libmpfr.%s' % SHLIB_EXT, 'include/mpfr.h'], 'dirs': [], diff --git a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.2.0.eb b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.2.0.eb index 84200357eb5..127f0b9088c 100644 --- a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'ConfigureMake' name = 'MPFR' version = '4.0.2' -homepage = 'http://www.mpfr.org' +homepage = 'https://www.mpfr.org' description = """ The MPFR library is a C library for multiple-precision floating-point @@ -12,7 +12,7 @@ description = """ toolchain = {'name': 'GCCcore', 'version': '8.2.0'} -source_urls = ['http://www.mpfr.org/mpfr-%(version)s/'] +source_urls = ['https://www.mpfr.org/mpfr-%(version)s/'] sources = [SOURCELOWER_TAR_BZ2] checksums = ['c05e3f02d09e0e9019384cdd58e0f19c64e6db1fd6f5ecf77b4b1c61ca253acc'] @@ -26,6 +26,11 @@ dependencies = [ runtest = 'check' +# copy libmpfr.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a src/.libs/libmpfr.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + sanity_check_paths = { 'files': ['lib/libmpfr.%s' % SHLIB_EXT, 'include/mpfr.h'], 'dirs': [], diff --git a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.3.0.eb b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.3.0.eb index df226df1a65..461ed8195cc 100644 --- a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-8.3.0.eb @@ -26,6 +26,11 @@ dependencies = [ runtest = 'check' +# copy libmpfr.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a src/.libs/libmpfr.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + sanity_check_paths = { 'files': ['lib/libmpfr.%s' % SHLIB_EXT, 'include/mpfr.h'], 'dirs': [], diff --git a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-9.3.0.eb b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-9.3.0.eb index 6da88e420d0..ec4a2a9ac07 100644 --- a/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/m/MPFR/MPFR-4.0.2-GCCcore-9.3.0.eb @@ -30,6 +30,11 @@ dependencies = [ runtest = 'check' +# copy libmpfr.so* to /lib to make sure that it is picked up by tests +# when EasyBuild is configured with --rpath, and clean up afterwards (let 'make install' do its job) +pretestopts = "mkdir -p %%(installdir)s/lib && cp -a src/.libs/libmpfr.%s* %%(installdir)s/lib && " % SHLIB_EXT +testopts = " && rm -r %(installdir)s/lib" + sanity_check_paths = { 'files': ['lib/libmpfr.%s' % SHLIB_EXT, 'include/mpfr.h'], 'dirs': [], diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.2.0-2.31.1.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.2.0-2.31.1.eb index 4f3ac7190e6..ff4cb6b2e1d 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.2.0-2.31.1.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.2.0-2.31.1.eb @@ -14,11 +14,11 @@ toolchain = {'name': 'GCC', 'version': '8.2.0-2.31.1'} source_urls = ['https://www.drive5.com/muscle/'] sources = ['%(namelower)s_src_%(version)s.tar.gz'] -patches = ['%(name)s-%(version)s_fix-mk-hardcoding.patch'] -checksums = [ - 'c70c552231cd3289f1bad51c9bd174804c18bb3adcf47f501afec7a68f9c482e', # muscle_src_3.8.1551.tar.gz - '5c38f93dcb03f769ecea7e21c83671920d0f3a88102ac6e0a51df23c33414766', # MUSCLE-3.8.1551_fix-mk-hardcoding.patch -] +checksums = ['c70c552231cd3289f1bad51c9bd174804c18bb3adcf47f501afec7a68f9c482e'] + +# use correct compiler flags + +# don't use -static when linking, since that implies requiring glibc-static to be installed +buildopts = 'CFLAGS="$CXXFLAGS" LDLIBS="-lm"' files_to_copy = [(["muscle"], 'bin')] diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.3.0.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.3.0.eb index b81956bb807..fefd4e708fb 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.3.0.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.1551-GCC-8.3.0.eb @@ -14,11 +14,11 @@ toolchain = {'name': 'GCC', 'version': '8.3.0'} source_urls = ['https://www.drive5.com/muscle/'] sources = ['%(namelower)s_src_%(version)s.tar.gz'] -patches = ['%(name)s-%(version)s_fix-mk-hardcoding.patch'] -checksums = [ - 'c70c552231cd3289f1bad51c9bd174804c18bb3adcf47f501afec7a68f9c482e', # muscle_src_3.8.1551.tar.gz - '5c38f93dcb03f769ecea7e21c83671920d0f3a88102ac6e0a51df23c33414766', # MUSCLE-3.8.1551_fix-mk-hardcoding.patch -] +checksums = ['c70c552231cd3289f1bad51c9bd174804c18bb3adcf47f501afec7a68f9c482e'] + +# use correct compiler flags + +# don't use -static when linking, since that implies requiring glibc-static to be installed +buildopts = 'CFLAGS="$CXXFLAGS" LDLIBS="-lm"' files_to_copy = [(["muscle"], 'bin')] diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-GCC-7.3.0-2.30.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-GCC-7.3.0-2.30.eb index 25e5e69d78a..43b59b9b731 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-GCC-7.3.0-2.30.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-GCC-7.3.0-2.30.eb @@ -12,12 +12,12 @@ description = """MUSCLE is one of the best-performing multiple alignment program toolchain = {'name': 'GCC', 'version': '7.3.0-2.30'} -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] patches = ['%(name)s-%(version)s_fix-mk-hardcoding.patch'] checksums = [ '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz - 'e108d1cc2d394236f839facc1304ff96c0e11f7fdd6d2444761808ec860cd58a', # MUSCLE-3.8.31_fix-mk-hardcoding.patch + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch ] files_to_copy = [(["muscle"], 'bin')] diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2016a.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2016a.eb index 0107cb46987..a6488e31370 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2016a.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2016a.eb @@ -8,7 +8,7 @@ easyblock = 'MakeCp' name = 'MUSCLE' version = '3.8.31' -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """ MUSCLE is one of the best-performing multiple alignment programs according to published benchmark tests, with accuracy and speed that are consistently better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users @@ -17,10 +17,13 @@ description = """ MUSCLE is one of the best-performing multiple alignment progra toolchain = {'name': 'foss', 'version': '2016a'} +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] - patches = ['MUSCLE-%(version)s_fix-mk-hardcoding.patch'] +checksums = [ + '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch +] files_to_copy = [ (["muscle"], 'bin')] diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2017b.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2017b.eb index da34176c6a4..84b40250404 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2017b.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2017b.eb @@ -3,7 +3,7 @@ easyblock = 'MakeCp' name = 'MUSCLE' version = '3.8.31' -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """ MUSCLE is one of the best-performing multiple alignment programs according to published benchmark tests, with accuracy and speed that are consistently better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users @@ -12,12 +12,12 @@ description = """ MUSCLE is one of the best-performing multiple alignment progra toolchain = {'name': 'foss', 'version': '2017b'} -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] patches = ['MUSCLE-%(version)s_fix-mk-hardcoding.patch'] checksums = [ '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz - 'e108d1cc2d394236f839facc1304ff96c0e11f7fdd6d2444761808ec860cd58a', # MUSCLE-3.8.31_fix-mk-hardcoding.patch + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch ] files_to_copy = [ diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2018a.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2018a.eb index afe93932301..90f1d61ab6c 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2018a.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-foss-2018a.eb @@ -3,7 +3,7 @@ easyblock = 'MakeCp' name = 'MUSCLE' version = '3.8.31' -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """ MUSCLE is one of the best-performing multiple alignment programs according to published benchmark tests, with accuracy and speed that are consistently better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users @@ -12,12 +12,12 @@ description = """ MUSCLE is one of the best-performing multiple alignment progra toolchain = {'name': 'foss', 'version': '2018a'} -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] patches = ['MUSCLE-%(version)s_fix-mk-hardcoding.patch'] checksums = [ '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz - 'e108d1cc2d394236f839facc1304ff96c0e11f7fdd6d2444761808ec860cd58a', # MUSCLE-3.8.31_fix-mk-hardcoding.patch + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch ] files_to_copy = [ diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-i86linux64.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-i86linux64.eb index c3995965e51..e0bac8a9800 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-i86linux64.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-i86linux64.eb @@ -13,15 +13,16 @@ name = "MUSCLE" version = "3.8.31" versionsuffix = "-i86linux64" -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """MUSCLE is a program for creating multiple alignments of amino acid or nucleotide sequences. A range of options is provided that give you the choice of optimizing accuracy, speed, or some compromise between the two.""" toolchain = SYSTEM -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s'] +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s'] sources = ['%%(namelower)s%%(version)s_%s.tar.gz' % versionsuffix[1:]] +checksums = ['818dc1132b3c929d85355d6db6b0f1fe752dd4e276903a3cf91036cdb7247953'] sanity_check_paths = { 'files': ['%%(namelower)s%%(version)s_%s' % versionsuffix[1:]], diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2016a.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2016a.eb index 03afecade9b..a097eec8d66 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2016a.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2016a.eb @@ -8,7 +8,7 @@ easyblock = 'MakeCp' name = 'MUSCLE' version = '3.8.31' -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """ MUSCLE is one of the best-performing multiple alignment programs according to published benchmark tests, with accuracy and speed that are consistently better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users @@ -17,10 +17,13 @@ description = """ MUSCLE is one of the best-performing multiple alignment progra toolchain = {'name': 'intel', 'version': '2016a'} +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] - patches = ['MUSCLE-%(version)s_fix-mk-hardcoding.patch'] +checksums = [ + '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch +] files_to_copy = [ (["muscle"], 'bin')] diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2017b.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2017b.eb index eebb386fdbf..400809f2bf1 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2017b.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2017b.eb @@ -8,7 +8,7 @@ easyblock = 'MakeCp' name = 'MUSCLE' version = '3.8.31' -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """ MUSCLE is one of the best-performing multiple alignment programs according to published benchmark tests, with accuracy and speed that are consistently better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users @@ -17,12 +17,12 @@ description = """ MUSCLE is one of the best-performing multiple alignment progra toolchain = {'name': 'intel', 'version': '2017b'} -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] patches = ['MUSCLE-%(version)s_fix-mk-hardcoding.patch'] checksums = [ '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz - 'e108d1cc2d394236f839facc1304ff96c0e11f7fdd6d2444761808ec860cd58a', # MUSCLE-3.8.31_fix-mk-hardcoding.patch + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch ] files_to_copy = [ diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018a.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018a.eb index 073f5934900..bafe82f2988 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018a.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018a.eb @@ -8,7 +8,7 @@ easyblock = 'MakeCp' name = 'MUSCLE' version = '3.8.31' -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """ MUSCLE is one of the best-performing multiple alignment programs according to published benchmark tests, with accuracy and speed that are consistently better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users @@ -17,12 +17,12 @@ description = """ MUSCLE is one of the best-performing multiple alignment progra toolchain = {'name': 'intel', 'version': '2018a'} -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] patches = ['MUSCLE-%(version)s_fix-mk-hardcoding.patch'] checksums = [ '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz - 'e108d1cc2d394236f839facc1304ff96c0e11f7fdd6d2444761808ec860cd58a', # MUSCLE-3.8.31_fix-mk-hardcoding.patch + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch ] files_to_copy = [ diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018b.eb b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018b.eb index 4faf86b9765..6639f18448b 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018b.eb +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31-intel-2018b.eb @@ -8,7 +8,7 @@ easyblock = 'MakeCp' name = 'MUSCLE' version = '3.8.31' -homepage = 'http://drive5.com/muscle/' +homepage = 'https://drive5.com/muscle/' description = """ MUSCLE is one of the best-performing multiple alignment programs according to published benchmark tests, with accuracy and speed that are consistently better than CLUSTALW. MUSCLE can align hundreds of sequences in seconds. Most users @@ -17,12 +17,12 @@ description = """ MUSCLE is one of the best-performing multiple alignment progra toolchain = {'name': 'intel', 'version': '2018b'} -source_urls = ['http://www.drive5.com/muscle/downloads%(version)s/'] +source_urls = ['https://www.drive5.com/muscle/downloads%(version)s/'] sources = ['%(namelower)s%(version)s_src.tar.gz'] patches = ['MUSCLE-%(version)s_fix-mk-hardcoding.patch'] checksums = [ '43c5966a82133bd7da5921e8142f2f592c2b5f53d802f0527a2801783af809ad', # muscle3.8.31_src.tar.gz - 'e108d1cc2d394236f839facc1304ff96c0e11f7fdd6d2444761808ec860cd58a', # MUSCLE-3.8.31_fix-mk-hardcoding.patch + '7486ac0eee30ac3de9ee06020fe8573cf1de8e21ce5f315c3232ec226191a60d', # MUSCLE-3.8.31_fix-mk-hardcoding.patch ] files_to_copy = [ diff --git a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31_fix-mk-hardcoding.patch b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31_fix-mk-hardcoding.patch index 32e357bc802..b1a897cd11f 100644 --- a/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31_fix-mk-hardcoding.patch +++ b/easybuild/easyconfigs/m/MUSCLE/MUSCLE-3.8.31_fix-mk-hardcoding.patch @@ -1,6 +1,9 @@ +replace hardcoded compiler options with $CXXFLAGS +don't use -stati when linking (since that requires having glibc-static installed in OS) +author: Kenneth Hoste (HPC-UGent) --- muscle3.8.31/src/mk.orig 2010-05-02 01:15:42.000000000 +0200 -+++ muscle3.8.31/src/mk 2014-06-03 13:36:54.675282794 +0200 -@@ -5,16 +5,17 @@ ++++ muscle3.8.31/src/mk 2020-08-12 16:09:02.744417961 +0200 +@@ -5,16 +5,13 @@ rm -f *.o muscle.make.stdout.txt muscle.make.stderr.txt for CPPName in $CPPNames do @@ -10,14 +13,14 @@ + $CXX $ENV_GCC_OPTS -c $CXXFLAGS -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 $CPPName.cpp -o $CPPName.o #>> muscle.make.stdout.txt 2>> muscle.make.stderr.txt done - LINK_OPTS= - if [ `uname -s` == Linux ] ; then - LINK_OPTS=-static - fi +-LINK_OPTS= +-if [ `uname -s` == Linux ] ; then +- LINK_OPTS=-static +-fi -g++ $LINK_OPTS $ENV_LINK_OPTS -g -o muscle $ObjNames >> muscle.make.stdout.txt 2>> muscle.make.stderr.txt -tail muscle.make.stderr.txt -+echo "$CXX $LINK_OPTS $ENV_LINK_OPTS $CXXFLAGS -o muscle $ObjNames" -+$CXX $LINK_OPTS $ENV_LINK_OPTS $CXXFLAGS -o muscle $ObjNames #>> muscle.make.stdout.txt 2>> muscle.make.stderr.txt ++echo "$CXX $ENV_LINK_OPTS $CXXFLAGS -o muscle $ObjNames" ++$CXX $ENV_LINK_OPTS $CXXFLAGS -o muscle $ObjNames #>> muscle.make.stdout.txt 2>> muscle.make.stderr.txt +#tail muscle.make.stderr.txt strip muscle 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 new file mode 100644 index 00000000000..92741312fc0 --- /dev/null +++ b/easybuild/easyconfigs/m/MariaDB/MariaDB-10.4.13-gompi-2019b.eb @@ -0,0 +1,62 @@ +easyblock = 'CMakeMake' + +name = 'MariaDB' +version = '10.4.13' + +homepage = 'https://mariadb.org/' +description = """MariaDB is an enhanced, drop-in replacement for MySQL. +Included engines: myISAM, Aria, InnoDB, RocksDB, TokuDB, OQGraph, Mroonga.""" + +toolchain = {'name': 'gompi', 'version': '2019b'} + +source_urls = ['http://ftp.hosteurope.de/mirror/archive.mariadb.org/mariadb-%(version)s/source'] +sources = [SOURCELOWER_TAR_GZ] +patches = ['MariaDB-10.1.13-link-rt-for-jemalloc.patch'] +checksums = [ + '45bbbb12d1de8febd9edf630e940c23cf14efd60570c743b268069516a5d91df', # mariadb-10.4.13.tar.gz + '8295837e623f6c782e1d64b00e0877ea98cce4bf8846755bb86c8a7732797c19', # MariaDB-10.1.13-link-rt-for-jemalloc.patch +] + +builddependencies = [ + ('CMake', '3.15.3'), + ('libaio', '0.3.111'), +] + +dependencies = [ + ('ncurses', '6.1'), + ('zlib', '1.2.11'), + ('LZO', '2.10'), # optional + ('lz4', '1.9.2'), # optional + ('XZ', '5.2.4'), # optional + ('jemalloc', '5.2.1'), # needed by TokuDB; optional for the others + ('snappy', '1.1.7'), # needed by RocksDB and TokuDB; optional for InnoDB + ('libxml2', '2.9.9'), # needed by Connect XML + ('Boost', '1.71.0'), # needed by OQGraph + ('Judy', '1.0.5'), # needed by OQGraph +] + +separate_build_dir = True + +configopts = "-DCMAKE_BUILD_TYPE=Release " +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 " +configopts += "-DWITH_EMBEDDED_SERVER=ON " # for libmysqld.so & co +configopts += "-DWITH_SAFEMALLOC=OFF " # Disable memory debugger with jemalloc + +sanity_check_paths = { + 'files': ['bin/mysql', 'bin/mysqld_safe', 'lib/libmysqlclient.%s' % SHLIB_EXT, 'lib/libmysqld.%s' % SHLIB_EXT, + 'lib/plugin/ha_connect.%s' % SHLIB_EXT, 'lib/plugin/ha_rocksdb.%s' % SHLIB_EXT, + 'lib/plugin/ha_tokudb.%s' % SHLIB_EXT, 'lib/plugin/ha_oqgraph.%s' % SHLIB_EXT, + 'scripts/mysql_install_db'], + 'dirs': ['include', 'share'], +} + +modextrapaths = {'PATH': 'scripts'} + +# Ensure that jemalloc does not use transparent hugepages. +# Database workloads with THP can cause memory bloat, potentially hiting OOM errors. +modextravars = {'MALLOC_CONF': 'thp:never'} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/m/Mesa/Mesa-20.0.2-GCCcore-9.3.0.eb b/easybuild/easyconfigs/m/Mesa/Mesa-20.0.2-GCCcore-9.3.0.eb index d1299b7b9a8..69d8f9a58b9 100644 --- a/easybuild/easyconfigs/m/Mesa/Mesa-20.0.2-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/m/Mesa/Mesa-20.0.2-GCCcore-9.3.0.eb @@ -34,7 +34,7 @@ checksums = [ builddependencies = [ ('binutils', '2.34'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('flex', '2.6.4'), ('Bison', '3.5.3'), diff --git a/easybuild/easyconfigs/m/Meson/Meson-0.55.1-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/m/Meson/Meson-0.55.1-GCCcore-9.3.0-Python-3.8.2.eb new file mode 100644 index 00000000000..f45c3dcb127 --- /dev/null +++ b/easybuild/easyconfigs/m/Meson/Meson-0.55.1-GCCcore-9.3.0-Python-3.8.2.eb @@ -0,0 +1,36 @@ +easyblock = 'PythonPackage' + +name = 'Meson' +version = '0.55.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://mesonbuild.com' +description = "Meson is a cross-platform build system designed to be both as fast and as user friendly as possible." + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['3b5741f884e04928bdfa1947467ff06afa6c98e623c25cef75adf71ca39ce080'] + +builddependencies = [ + ('binutils', '2.34'), +] + +dependencies = [ + ('Python', '3.8.2'), + ('Ninja', '1.10.0'), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +options = {'modulename': 'mesonbuild'} + +sanity_check_paths = { + 'files': ['bin/meson'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/m/MotionCor2/MotionCor2-1.3.2-GCCcore-8.3.0.eb b/easybuild/easyconfigs/m/MotionCor2/MotionCor2-1.3.2-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..c0a0396d15d --- /dev/null +++ b/easybuild/easyconfigs/m/MotionCor2/MotionCor2-1.3.2-GCCcore-8.3.0.eb @@ -0,0 +1,50 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Ake Sandgren +# HPC2N +# Umea University + +name = 'MotionCor2' +version = '1.3.2' + +homepage = 'https://msg.ucsf.edu/' +description = """MotionCor2 correct anisotropic image motion at the +single pixel level across the whole frame, suitable for both single +particle and tomographic images. Iterative, patch-based motion detection +is combined with spatial and temporal constraints and dose weighting. + +Cite publication: Shawn Q. Zheng, Eugene Palovcak, Jean-Paul Armache, +Yifan Cheng and David A. Agard (2016) Anisotropic Correction of +Beam-induced Motion for Improved Single-particle Electron +Cryo-microscopy, Nature Methods, submitted. +BioArxiv: https://biorxiv.org/content/early/2016/07/04/061960 +""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +# No longer directly downloadable, available from https://msg.ucsf.edu/software +sources = [ + '%(name)s_%(version)s.zip', +] +checksums = [ + '29765660a42b2fd291bfacc304adfb6dc7d29056ae6a479c0e43de4e7289eaec', # MotionCor2_1.3.2.zip +] + +# CUDA is a build dependency to make sure it gets installed. +# It's actually a runtime dependency, but that's handled in the wrapper to +# make sure it doesn't conflict with whatever toolchain happens to be loaded. +# Change CUDA version to match the latest one used in this version +# of MotionCor2 +builddependencies = [ + ('binutils', '2.32'), + ('CUDA', '10.1.243', '', True), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('libjpeg-turbo', '2.0.3'), + ('XZ', '5.2.4'), + ('LibTIFF', '4.0.10'), + ('jbigkit', '2.1'), +] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019a.eb b/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019a.eb index 3ed331097b1..7519d6c2828 100644 --- a/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019a.eb +++ b/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019a.eb @@ -1,31 +1,28 @@ -easyblock = "ConfigureMake" +easyblock = "CMakeMake" name = 'magma' version = '2.5.1' -homepage = 'http://icl.cs.utk.edu/magma/' +homepage = 'https://icl.cs.utk.edu/magma/' description = """The MAGMA project aims to develop a dense linear algebra library similar to LAPACK but for heterogeneous/hybrid architectures, starting with current Multicore+GPU systems.""" toolchain = {'name': 'fosscuda', 'version': '2019a'} toolchainopts = {'pic': True, 'openmp': True} -source_urls = ['http://icl.cs.utk.edu/projectsfiles/magma/downloads/'] +source_urls = ['https://icl.cs.utk.edu/projectsfiles/magma/downloads/'] sources = [SOURCE_TAR_GZ] -patches = [('%(name)s-2.5.0-fix-makefile.patch')] -checksums = [ - 'ce32c199131515336b30c92a907effe0c441ebc5c5bdb255e4b06b2508de109f', # magma-2.5.1.tar.gz - '2839e33a17134e686ccd9fde7e008b40495e4e8bafb3ae1bd49cb0e39852e7ac', # magma-2.5.0-fix-makefile.patch -] - -skipsteps = ['configure'] +checksums = ['ce32c199131515336b30c92a907effe0c441ebc5c5bdb255e4b06b2508de109f'] -prebuildopts = 'touch make.inc && ' -# magma 2.5.0 does not build on sm_30 - so remove Kepler and specify sm_35 -# http://icl.cs.utk.edu/magma/forum/viewtopic.php?f=2&t=1906&sid=7048fadfd48a0d00c3c4294ddef6a096 -prebuildopts += 'GPU_TARGET="sm_35 Maxwell Pascal Volta" ' +builddependencies = [ + ('CMake', '3.13.3'), +] -installopts = 'prefix=%(installdir)s' +local_gpu_target = '-DGPU_TARGET="Kepler Maxwell Pascal Volta"' +# make sure both static and shared libs are built +configopts = [ + '-DBUILD_SHARED_LIBS=%s %s ' % (local_shared, local_gpu_target) for local_shared in ('ON', 'OFF') +] sanity_check_paths = { 'files': ['lib/libmagma.so', 'lib/libmagma.a'], diff --git a/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019b.eb b/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019b.eb index 7dad44a9ef8..e30b2f03f63 100644 --- a/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019b.eb +++ b/easybuild/easyconfigs/m/magma/magma-2.5.1-fosscuda-2019b.eb @@ -1,4 +1,4 @@ -easyblock = "ConfigureMake" +easyblock = "CMakeMake" name = 'magma' version = '2.5.1' @@ -12,17 +12,17 @@ toolchainopts = {'pic': True, 'openmp': True} source_urls = ['https://icl.cs.utk.edu/projectsfiles/magma/downloads/'] sources = [SOURCE_TAR_GZ] -patches = [('%(name)s-2.5.0-fix-makefile.patch')] -checksums = [ - 'ce32c199131515336b30c92a907effe0c441ebc5c5bdb255e4b06b2508de109f', # magma-2.5.1.tar.gz - '2839e33a17134e686ccd9fde7e008b40495e4e8bafb3ae1bd49cb0e39852e7ac', # magma-2.5.0-fix-makefile.patch -] - -skipsteps = ['configure'] +checksums = ['ce32c199131515336b30c92a907effe0c441ebc5c5bdb255e4b06b2508de109f'] -prebuildopts = 'touch make.inc && GPU_TARGET="Kepler Maxwell Pascal Volta" ' +builddependencies = [ + ('CMake', '3.15.3'), +] -installopts = 'prefix=%(installdir)s' +local_gpu_target = '-DGPU_TARGET="Kepler Maxwell Pascal Volta"' +# make sure both static and shared libs are built +configopts = [ + '-DBUILD_SHARED_LIBS=%s %s ' % (local_shared, local_gpu_target) for local_shared in ('ON', 'OFF') +] sanity_check_paths = { 'files': ['lib/libmagma.so', 'lib/libmagma.a'], diff --git a/easybuild/easyconfigs/m/makedepend/makedepend-1.0.6-GCCcore-9.3.0.eb b/easybuild/easyconfigs/m/makedepend/makedepend-1.0.6-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..ec3dfa9388d --- /dev/null +++ b/easybuild/easyconfigs/m/makedepend/makedepend-1.0.6-GCCcore-9.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'makedepend' +version = '1.0.6' + +homepage = 'https://linux.die.net/man/1/makedepend' +description = "The makedepend package contains a C-preprocessor like utility to determine build-time dependencies." + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [XORG_UTIL_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['845f6708fc850bf53f5b1d0fb4352c4feab3949f140b26f71b22faba354c3365'] + +builddependencies = [ + ('binutils', '2.34'), + ('xproto', '7.0.31'), + ('xorg-macros', '1.19.2'), +] + +sanity_check_paths = { + 'files': ['bin/makedepend'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb new file mode 100644 index 00000000000..0b2b3af8477 --- /dev/null +++ b/easybuild/easyconfigs/m/manta/manta-1.6.0-gompi-2020a-Python-2.7.18.eb @@ -0,0 +1,51 @@ +easyblock = 'CMakeMake' + +name = 'manta' +version = '1.6.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/Illumina/manta' +description = """ +Manta calls structural variants (SVs) and indels from mapped paired-end sequencing reads. +It is optimized for analysis of germline variation in small sets of individuals and +somatic variation in tumor/normal sample pairs. Manta discovers, assembles and +scores large-scale SVs, medium-sized indels and large insertions within a +single efficient workflow. +""" + +toolchain = {'name': 'gompi', 'version': '2020a'} + +github_account = 'Illumina' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['76ce7c4a95a3b92cb16381f9a3b091afa234948ae6f028982abbd49e21206421'] + +builddependencies = [ + ('CMake', '3.16.4'), + ('Doxygen', '1.8.17'), +] + +dependencies = [ + ('Python', '2.7.18'), + ('Boost', '1.72.0'), + ('zlib', '1.2.11'), +] + +local_binaries = ['CheckSVLoci', 'DumpSVLoci', 'EstimateSVLoci', 'GenerateSVCandidates', 'GetAlignmentStats', + 'GetChromDepth', 'MergeAlignmentStats', 'MergeSVLoci', 'SummarizeAlignmentStats', 'SummarizeSVLoci', + 'TestAssembler'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['configManta.py', 'runMantaWorkflowDemo.py']] + + ['libexec/%s' % x for x in local_binaries], + 'dirs': ['lib/python', 'share'], +} + +sanity_check_commands = ['runMantaWorkflowDemo.py'] + +modextrapaths = { + 'PATH': 'libexec', + 'PYTHONPATH': 'lib/python', +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/matplotlib/matplotlib-2.2.4-fosscuda-2019b-Python-2.7.16.eb b/easybuild/easyconfigs/m/matplotlib/matplotlib-2.2.4-fosscuda-2019b-Python-2.7.16.eb new file mode 100644 index 00000000000..4d82f6fea3e --- /dev/null +++ b/easybuild/easyconfigs/m/matplotlib/matplotlib-2.2.4-fosscuda-2019b-Python-2.7.16.eb @@ -0,0 +1,70 @@ +easyblock = 'PythonBundle' + +name = 'matplotlib' +version = '2.2.4' +versionsuffix = '-Python-%(pyver)s' + +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': 'fosscuda', 'version': '2019b'} + +builddependencies = [ + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Python', '2.7.16'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('libpng', '1.6.37'), + ('freetype', '2.10.1'), + ('Tkinter', '%(pyver)s'), +] + +use_pip = True + +exts_list = [ + ('Cycler', '0.10.0', { + 'modulename': 'cycler', + 'source_tmpl': 'cycler-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/C/Cycler'], + 'checksums': ['cd7b2d1018258d7247a71425e9f26463dfb444d411c39569972f4ce586b0c9d8'], + }), + ('subprocess32', '3.5.4', { + 'source_urls': ['https://pypi.python.org/packages/source/s/subprocess32'], + 'checksums': ['eb2937c80497978d181efa1b839ec2d9622cf9600a039a79d0e108d1f9aec79d'], + }), + ('backports.functools_lru_cache', '1.6.1', { + 'source_urls': ['https://pypi.python.org/packages/source/b/backports.functools_lru_cache'], + 'checksums': ['8fde5f188da2d593bd5bc0be98d9abc46c95bb8a9dde93429570192ee6cc2d4a'], + }), + ('kiwisolver', '1.1.0', { + 'source_urls': ['https://pypi.python.org/packages/source/k/kiwisolver'], + 'checksums': ['53eaed412477c836e1b9522c19858a8557d6e595077830146182225613b11a75'], + }), + (name, version, { + 'prebuildopts': "export CPLUS_INCLUDE_PATH=$EBROOTFREETYPE/include/freetype2:${CPLUS_INCLUDE_PATH} && ", + 'preinstallopts': "export CPLUS_INCLUDE_PATH=$EBROOTFREETYPE/include/freetype2:${CPLUS_INCLUDE_PATH} && ", + 'source_urls': ['https://pypi.python.org/packages/source/m/matplotlib'], + 'checksums': ['029620799e581802961ac1dcff5cb5d3ee2f602e0db9c0f202a90495b37d2126'], + }), +] + +postinstallcmds = [ + 'touch %(installdir)s/lib/python%(pyshortver)s/site-packages/mpl_toolkits/__init__.py', +] + +sanity_pip_check = True + +sanity_check_commands = [ + """python -c 'import matplotlib; matplotlib.use("TkAgg"); 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/minibar/minibar-20200326-iccifort-2019.5.281-Python-3.7.4.eb b/easybuild/easyconfigs/m/minibar/minibar-20200326-iccifort-2019.5.281-Python-3.7.4.eb new file mode 100644 index 00000000000..1e1ccdf37ea --- /dev/null +++ b/easybuild/easyconfigs/m/minibar/minibar-20200326-iccifort-2019.5.281-Python-3.7.4.eb @@ -0,0 +1,33 @@ +easyblock = 'Tarball' + +name = 'minibar' +local_commit_id = '938ae51' +version = '20200326' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/calacademy-research/minibar' +description = " Dual barcode and primer demultiplexing for MinION sequenced reads" + +toolchain = {'name': 'iccifort', 'version': '2019.5.281'} + +source_urls = ['https://github.com/calacademy-research/%(name)s/archive'] +sources = [{'download_filename': '%s.tar.gz' % local_commit_id, 'filename': SOURCE_TAR_GZ}] +checksums = ['f6bc7b310f05fc67990e5b1944473ca46a5c303f2944f7e678eac6525472e649'] + +dependencies = [ + ('Python', '3.7.4'), + ('edlib', '1.3.8.post1', versionsuffix), +] + +postinstallcmds = ["chmod a+x %(installdir)s/minibar.py"] + +sanity_check_paths = { + 'files': ['minibar.py'], + 'dirs': [], +} + +sanity_check_commands = ["minibar.py -h"] + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/misha/misha-4.0.10-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/m/misha/misha-4.0.10-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..d5e5b5693ec --- /dev/null +++ b/easybuild/easyconfigs/m/misha/misha-4.0.10-foss-2020a-R-4.0.0.eb @@ -0,0 +1,24 @@ +easyblock = 'RPackage' + +name = 'misha' +version = '4.0.10' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://github.com/tanaylab/misha' +description = """The misha package is intended to help users to efficiently analyze genomic data achieved + from various experiments.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = ['https://github.com/tanaylab/misha/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['a8780b8c1e0153a9a01e7793157c0abc7c31ec53ac074d61b688e2ada0da3ba2'] + +dependencies = [('R', '4.0.0')] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/m/moonjit/moonjit-2.2.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/m/moonjit/moonjit-2.2.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..131ffa74942 --- /dev/null +++ b/easybuild/easyconfigs/m/moonjit/moonjit-2.2.0-GCCcore-9.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = "moonjit" +version = "2.2.0" + +homepage = "https://github.com/moonjit/moonjit" +description = """Moonjit 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': 'GCCcore', 'version': '9.3.0'} + +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['83deb2c880488dfe7dd8ebf09e3b1e7613ef4b8420de53de6f712f01aabca2b6'] + +builddependencies = [ + ('binutils', '2.34'), +] + +dependencies = [ + ('ncurses', '6.2'), + ('libreadline', '8.0'), +] + +skipsteps = ['configure'] +installopts = 'PREFIX=%(installdir)s' + +sanity_check_paths = { + 'files': ['bin/luajit', 'lib/libluajit-5.1.a', 'lib/libluajit-5.1.%s.%s' % (SHLIB_EXT, version)], + 'dirs': ['include'], +} + +moduleclass = "lang" diff --git a/easybuild/easyconfigs/m/mpmath/mpmath-1.1.0-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/m/mpmath/mpmath-1.1.0-GCCcore-9.3.0-Python-3.8.2.eb new file mode 100644 index 00000000000..d82d6977f8e --- /dev/null +++ b/easybuild/easyconfigs/m/mpmath/mpmath-1.1.0-GCCcore-9.3.0-Python-3.8.2.eb @@ -0,0 +1,47 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Author: Adam Huffman +# adam.huffman@crick.ac.uk +# The Francis Crick Institute + +easyblock = 'PythonPackage' + +name = 'mpmath' +version = '1.1.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://mpmath.org/' +description = """mpmath can be used as an arbitrary-precision substitute for Python's float/complex + types and math/cmath modules, but also does much more advanced mathematics. Almost any calculation + can be performed just as well at 10-digit or 1000-digit precision, with either real or complex + numbers, and in many cases mpmath implements efficient algorithms that scale well for extremely + high precision work.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'] + +builddependencies = [ + ('binutils', '2.34') +] + +dependencies = [ + ('Python', '3.8.2'), +] + +download_dep_fail = True + +use_pip = True + +sanity_pip_check = True + +runtest = 'python -c "import mpmath; mpmath.runtests();"' + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-2.13-foss-2019b-mpi.eb b/easybuild/easyconfigs/n/NAMD/NAMD-2.13-foss-2019b-mpi.eb new file mode 100644 index 00000000000..a57c54655b4 --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-2.13-foss-2019b-mpi.eb @@ -0,0 +1,27 @@ +name = 'NAMD' +version = '2.13' +versionsuffix = '-mpi' + +homepage = 'https://www.ks.uiuc.edu/Research/namd/' +description = """NAMD is a parallel molecular dynamics code designed for high-performance simulation of + large biomolecular systems.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'usempi': True, 'pic': True} + +sources = [{ + 'filename': 'NAMD_%(version)s_Source.tar.gz', + 'extract_cmd': "tar xfv %s", # source file is actually not gzipped +}] +checksums = ['cb0b43f520ac6be761899326441541aa00de15897986223c8ce2f0f6e42b52bc'] + +dependencies = [ + ('Tcl', '8.6.9'), +] + +# /bin/csh is required by 'config' script +osdependencies = ['tcsh'] + +charm_arch = "mpi-linux-x86_64" + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-2.14-foss-2019b-mpi.eb b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-foss-2019b-mpi.eb new file mode 100644 index 00000000000..a26d785ac5d --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-foss-2019b-mpi.eb @@ -0,0 +1,28 @@ +name = 'NAMD' +version = '2.14' +versionsuffix = '-mpi' + +homepage = 'https://www.ks.uiuc.edu/Research/namd/' +description = """NAMD is a parallel molecular dynamics code designed for high-performance simulation of + large biomolecular systems.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'usempi': True, 'openmp': False, 'pic': True} + +source_urls = ['https://www.ks.uiuc.edu/Research/namd/%(version)s/download/946183/'] +sources = ['%(name)s_%(version)s_Source.tar.gz'] +checksums = ['34044d85d9b4ae61650ccdba5cda4794088c3a9075932392dd0752ef8c049235'] + +dependencies = [ + ('Tcl', '8.6.9'), + ('FFTW', '3.3.8'), +] + +# /bin/csh is required by 'config' script +osdependencies = ['tcsh'] + +# Hard to make charm build the mpi version with gcc on POWER, so we don't currently try. +charm_arch = "mpi-linux-x86_64" +charm_extra_cxxflags = '-fpermissive' + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-2.14-foss-2020a-mpi.eb b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-foss-2020a-mpi.eb new file mode 100644 index 00000000000..1c7c0e6e88f --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-foss-2020a-mpi.eb @@ -0,0 +1,27 @@ +name = 'NAMD' +version = '2.14' +versionsuffix = '-mpi' + +homepage = 'https://www.ks.uiuc.edu/Research/namd/' +description = """NAMD is a parallel molecular dynamics code designed for high-performance simulation of + large biomolecular systems.""" + +toolchain = {'name': 'foss', 'version': '2020a'} +toolchainopts = {'usempi': True, 'openmp': False, 'pic': True} + +source_urls = ['https://www.ks.uiuc.edu/Research/namd/%(version)s/download/946183/'] +sources = ['NAMD_%(version)s_Source.tar.gz'] +checksums = ['34044d85d9b4ae61650ccdba5cda4794088c3a9075932392dd0752ef8c049235'] + +dependencies = [ + ('Tcl', '8.6.10'), +] + +# /bin/csh is required by 'config' script +osdependencies = ['tcsh'] + +# Hard to make charm build the mpi version with gcc on POWER, so we don't currently try +charm_arch = 'mpi-linux-x86_64' +charm_extra_cxxflags = '-fpermissive' + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-2.14-fosscuda-2019b.eb b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-fosscuda-2019b.eb new file mode 100644 index 00000000000..ef908d6e197 --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-fosscuda-2019b.eb @@ -0,0 +1,31 @@ +name = 'NAMD' +version = '2.14' + +homepage = 'https://www.ks.uiuc.edu/Research/namd/' +description = """NAMD is a parallel molecular dynamics code designed for high-performance simulation of + large biomolecular systems.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} +toolchainopts = {'usempi': False, 'openmp': False, 'pic': True} + +source_urls = ['https://www.ks.uiuc.edu/Research/namd/%(version)s/download/946183/'] +sources = [{'filename': 'NAMD_%(version)s_Source.tar.gz'}] +# support for GCC 8+ on POWER +patches = ["%(name)s-%(version)s_Linux-POWER-cuda.patch"] +checksums = [ + '34044d85d9b4ae61650ccdba5cda4794088c3a9075932392dd0752ef8c049235', # NAMD_2.14_Source.tar.gz + 'db4aeb482dfa805c859ea18940026395763169e0257401ee5341ca550029031c', # NAMD-2.14_Linux-POWER-cuda.patch +] + +dependencies = [ + ('Tcl', '8.6.9'), + ('FFTW', '3.3.8'), +] + +# /bin/csh is required by 'config' script +osdependencies = ['tcsh'] + +charm_arch = "multicore-linux-%(arch)s" +charm_extra_cxxflags = '-fpermissive' + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-2.14-intel-2020a-mpi.eb b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-intel-2020a-mpi.eb new file mode 100644 index 00000000000..7e640a16284 --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-2.14-intel-2020a-mpi.eb @@ -0,0 +1,28 @@ +name = 'NAMD' +version = '2.14' +versionsuffix = '-mpi' + +homepage = 'https://www.ks.uiuc.edu/Research/namd/' +description = """NAMD is a parallel molecular dynamics code designed for high-performance simulation of + large biomolecular systems.""" + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'usempi': True, 'openmp': False, 'pic': True} + +source_urls = ['https://www.ks.uiuc.edu/Research/namd/%(version)s/download/946183/'] +sources = ['NAMD_%(version)s_Source.tar.gz'] +checksums = ['34044d85d9b4ae61650ccdba5cda4794088c3a9075932392dd0752ef8c049235'] + +dependencies = [ + ('Tcl', '8.6.10'), + ('FFTW', '3.3.8'), +] + +# /bin/csh is required by 'config' script +osdependencies = ['tcsh'] + +# Hard to make charm build the mpi version with gcc on POWER, so we don't currently try +charm_arch = 'mpi-linux-x86_64' +charm_extra_cxxflags = '-fpermissive' + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/n/NAMD/NAMD-2.14_Linux-POWER-cuda.patch b/easybuild/easyconfigs/n/NAMD/NAMD-2.14_Linux-POWER-cuda.patch new file mode 100644 index 00000000000..18bf2f71398 --- /dev/null +++ b/easybuild/easyconfigs/n/NAMD/NAMD-2.14_Linux-POWER-cuda.patch @@ -0,0 +1,26 @@ +For POWER and gcc 8+ we need to set -std=c++11 to avoid 'error: identifier “__ieee128” is undefined' + +author: Andrew Edmondson (University Birmingham) + +--- arch/Linux-POWER.cuda.orig 2020-08-05 18:51:20.000000000 +0100 ++++ arch/Linux-POWER.cuda 2020-08-11 11:24:49.471069513 +0100 +@@ -13,5 +13,6 @@ + CUDA=$(CUDAFLAGS) -I. $(CUBINCL) $(CUDAINCL) + CUDACC=$(CUDADIR)/bin/nvcc -Xcompiler "-m64" + +-CUDACCOPTS=-O3 --maxrregcount 48 $(CUDAGENCODE) $(CUDA) -use_fast_math ++# For POWER and gcc 8+ we need to set -std=c++11 to avoid 'error: identifier “__ieee128” is undefined' ++CUDACCOPTS=-O3 --maxrregcount 48 $(CUDAGENCODE) $(CUDA) -use_fast_math -std=c++11 + +--- arch/Linux-POWER-g++.arch.orig 2020-08-11 11:34:22.373336634 +0100 ++++ arch/Linux-POWER-g++.arch 2020-08-11 11:33:37.085528433 +0100 +@@ -2,7 +2,8 @@ + CHARMARCH = multicore-linux-ppc + + CXX = g++ -m64 -std=c++11 +-CXXOPTS = -O3 -fexpensive-optimizations -ffast-math ++# For POWER and gcc 8+ we need to set -std=c++11 to avoid 'error: identifier “__ieee128” is undefined' ++CXXOPTS = -O3 -fexpensive-optimizations -ffast-math -std=c++11 + CC = gcc -m64 + COPTS = -O3 -fexpensive-optimizations -ffast-math + diff --git a/easybuild/easyconfigs/n/NCL/NCL-6.6.2-intel-2020a.eb b/easybuild/easyconfigs/n/NCL/NCL-6.6.2-intel-2020a.eb new file mode 100644 index 00000000000..3d271b1a8fc --- /dev/null +++ b/easybuild/easyconfigs/n/NCL/NCL-6.6.2-intel-2020a.eb @@ -0,0 +1,46 @@ +name = 'NCL' +version = '6.6.2' + +homepage = 'https://www.ncl.ucar.edu' +description = "NCL is an interpreted language designed specifically for scientific data analysis and visualization." + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'cstd': 'c99', 'openmp': True, 'pic': True} + +source_urls = ['https://github.com/NCAR/ncl/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['NCL-6.4.0_fix-types.patch'] +checksums = [ + 'cad4ee47fbb744269146e64298f9efa206bc03e7b86671e9729d8986bb4bc30e', # 6.6.2.tar.gz + 'f6dfaf95e5de9045745e122cb44f9c035f81fab92f5892991ddfe93945891c8f', # NCL-6.4.0_fix-types.patch +] + +builddependencies = [ + ('makedepend', '1.0.6'), + ('Bison', '3.5.3'), + ('flex', '2.6.4'), +] +dependencies = [ + ('cURL', '7.69.1'), + ('JasPer', '2.0.14'), + ('g2lib', '3.1.0'), + ('g2clib', '1.6.0'), + ('HDF', '4.2.15'), + ('HDF5', '1.10.6'), + ('netCDF', '4.7.4'), + ('netCDF-Fortran', '4.5.2'), + ('Szip', '2.1.1'), + ('freetype', '2.10.1'), + ('zlib', '1.2.11'), + ('GDAL', '3.0.4', '-Python-3.8.2'), + ('UDUNITS', '2.2.26'), + ('ESMF', '8.0.1'), + ('bzip2', '1.0.8'), + ('cairo', '1.16.0'), + ('libiconv', '1.16'), + ('GSL', '2.6'), + ('libpng', '1.6.37'), + ('libjpeg-turbo', '2.0.4'), +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/NCO/NCO-4.9.3-gompi-2019b.eb b/easybuild/easyconfigs/n/NCO/NCO-4.9.3-gompi-2019b.eb new file mode 100644 index 00000000000..f6e5692d6f6 --- /dev/null +++ b/easybuild/easyconfigs/n/NCO/NCO-4.9.3-gompi-2019b.eb @@ -0,0 +1,36 @@ +easyblock = 'ConfigureMake' + +name = 'NCO' +version = '4.9.3' + +homepage = "https://nco.sourceforge.net" +description = """manipulates and analyzes data stored in netCDF-accessible formats, including DAP, HDF4, and HDF5""" + +toolchain = {'name': 'gompi', 'version': '2019b'} + +source_urls = ['https://github.com/nco/nco/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['eade5b79f3814b11ae3f52c34159567e76a73f05f0ab141eccaac68f0ca94aee'] + +builddependencies = [ + ('Bison', '3.3.2'), + ('flex', '2.6.4'), +] + +dependencies = [ + ('UDUNITS', '2.2.26'), + ('expat', '2.2.7'), + ('ANTLR', '2.7.7', '-Java-11'), + ('libdap', '3.20.6'), + ('GSL', '2.6'), + ('netCDF', '4.7.1'), +] + +sanity_check_paths = { + 'files': ['bin/nc%s' % x for x in ('ap2', 'atted', 'bo', 'diff', 'ea', 'ecat', 'es', + 'flint', 'ks', 'pdq', 'ra', 'rcat', 'rename', 'wa')] + + ['lib/libnco.a', 'lib/libnco.%s' % SHLIB_EXT, 'lib/libnco_c++.a', 'lib/libnco_c++.%s' % SHLIB_EXT], + 'dirs': ['include'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/n/NGLess/NGLess-1.1.1-static-Linux64.eb b/easybuild/easyconfigs/n/NGLess/NGLess-1.1.1-static-Linux64.eb new file mode 100644 index 00000000000..e8a53df8e2f --- /dev/null +++ b/easybuild/easyconfigs/n/NGLess/NGLess-1.1.1-static-Linux64.eb @@ -0,0 +1,31 @@ +easyblock = 'Binary' + +name = 'NGLess' +version = '1.1.1' +versionsuffix = '-static-Linux64' + +homepage = 'https://ngless.embl.de/' + +description = "NGLess is a domain-specific language for NGS (next-generation sequencing data) processing." + +toolchain = SYSTEM + +source_urls = ['https://github.com/ngless-toolkit/ngless/releases/download/v%(version)s/'] +sources = ['%(name)s-%(version)s%(versionsuffix)s'] +checksums = ['0fbfcfc474c620eaf2f40348af391f2a55b47f0c932bca5b77f5ea7e793c0ee7'] + +postinstallcmds = [ + 'chmod +x %(installdir)s/%(name)s-%(version)s%(versionsuffix)s', + 'ln -rs %(installdir)s/{%(name)s-%(version)s%(versionsuffix)s,ngless}', +] + +modextrapaths = {'PATH': ''} + +sanity_check_paths = { + 'files': ['ngless', 'NGLess-1.1.1-static-Linux64'], + 'dirs': [], +} + +sanity_check_commands = ['ngless --help'] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/n/ncdu/ncdu-1.15.1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/n/ncdu/ncdu-1.15.1-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..2eb66659dcb --- /dev/null +++ b/easybuild/easyconfigs/n/ncdu/ncdu-1.15.1-GCCcore-9.3.0.eb @@ -0,0 +1,29 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild + +easyblock = 'ConfigureMake' + +name = 'ncdu' +version = '1.15.1' + +homepage = 'https://dev.yorhel.nl/%(name)s' +description = """Ncdu is a disk usage analyzer with an ncurses interface. It is designed to find space hogs on a + remote server where you don't have an entire graphical setup available, but it is a useful tool even on regular + desktop systems. Ncdu aims to be fast, simple and easy to use, and should be able to run in any minimal POSIX-like + environment with ncurses installed.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://dev.yorhel.nl/download/'] +sources = [SOURCE_TAR_GZ] +checksums = ['b02ddc4dbf1db139cc6fbbe2f54a282770380f0ca5c17089855eab52a9ea3fb0'] + +builddependencies = [('binutils', '2.34')] + +dependencies = [('ncurses', '6.2')] + +sanity_check_paths = { + 'files': ['bin/%(name)s'], + 'dirs': [], +} + +moduleclass = 'tools' 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 new file mode 100644 index 00000000000..a3839f21819 --- /dev/null +++ b/easybuild/easyconfigs/n/ncurses/ncurses-6.2-GCCcore-10.2.0.eb @@ -0,0 +1,41 @@ +easyblock = 'ConfigureMake' + +name = 'ncurses' +version = '6.2' + +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': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = [GNU_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['30306e0c76e0f9f1f0de987cf1c82a5c21e1ce6568b9227f7da5b71cbea86c9d'] + +builddependencies = [('binutils', '2.35')] + +local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks " +configopts = [ + # default build + local_common_configopts, + # the UTF-8 enabled version (ncursesw) + local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/", +] + +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']], + 'dirs': ['include', 'include/ncursesw'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/n/ncview/ncview-2.1.7-foss-2018b.eb b/easybuild/easyconfigs/n/ncview/ncview-2.1.7-foss-2018b.eb new file mode 100644 index 00000000000..a1f73e22912 --- /dev/null +++ b/easybuild/easyconfigs/n/ncview/ncview-2.1.7-foss-2018b.eb @@ -0,0 +1,48 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2014 The Cyprus Institute +# Authors:: Thekla Loizou +# License:: MIT/GPL +# +# modified by Tom Strempel +## +easyblock = 'ConfigureMake' + +name = 'ncview' +version = '2.1.7' + +homepage = 'https://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': 'foss', 'version': '2018b'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['ftp://cirrus.ucsd.edu/pub/ncview/'] +sources = [SOURCE_TAR_GZ] +checksums = ['a14c2dddac0fc78dad9e4e7e35e2119562589738f4ded55ff6e0eca04d682c82'] + +# specified compiler is hard checked against (full path to) compiler used for netCDF... +preconfigopts = "CC=$(command -v $CC) " +configopts = "--with-udunits2_incdir=$EBROOTUDUNITS/include --with-udunits2_libdir=$EBROOTUDUNITS/lib " +configopts += "--with-nc-config=$EBROOTNETCDF/bin/nc-config" + +dependencies = [ + ('netCDF', '4.6.1'), + ('netCDF-Fortran', '4.4.4'), + ('UDUNITS', '2.2.26'), + ('X11', '20180604'), + ('libpng', '1.6.34'), + ('zlib', '1.2.11'), +] + +sanity_check_paths = { + 'files': ['bin/ncview'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/n/ncview/ncview-2.1.7-foss-2019b.eb b/easybuild/easyconfigs/n/ncview/ncview-2.1.7-foss-2019b.eb new file mode 100644 index 00000000000..1aec5969624 --- /dev/null +++ b/easybuild/easyconfigs/n/ncview/ncview-2.1.7-foss-2019b.eb @@ -0,0 +1,48 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Copyright:: Copyright 2014 The Cyprus Institute +# Authors:: Thekla Loizou +# License:: MIT/GPL +# +# modified by Tom Strempel +## +easyblock = 'ConfigureMake' + +name = 'ncview' +version = '2.1.7' + +homepage = 'https://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': 'foss', 'version': '2019b'} +toolchainopts = {'usempi': True, 'pic': True} + +source_urls = ['ftp://cirrus.ucsd.edu/pub/ncview/'] +sources = [SOURCE_TAR_GZ] +checksums = ['a14c2dddac0fc78dad9e4e7e35e2119562589738f4ded55ff6e0eca04d682c82'] + +# specified compiler is hard checked against (full path to) compiler used for netCDF... +preconfigopts = "CC=$(command -v $CC) " +configopts = "--with-udunits2_incdir=$EBROOTUDUNITS/include --with-udunits2_libdir=$EBROOTUDUNITS/lib " +configopts += "--with-nc-config=$EBROOTNETCDF/bin/nc-config" + +dependencies = [ + ('netCDF', '4.7.1'), + ('netCDF-Fortran', '4.5.2'), + ('UDUNITS', '2.2.26'), + ('X11', '20190717'), + ('libpng', '1.6.37'), + ('zlib', '1.2.11'), +] + +sanity_check_paths = { + 'files': ['bin/ncview'], + 'dirs': [], +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-gompi-2019b.eb b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-gompi-2019b.eb index 49adf6ef24d..7ae6c6e4ec0 100644 --- a/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-gompi-2019b.eb +++ b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-gompi-2019b.eb @@ -13,6 +13,10 @@ source_urls = ['https://github.com/Unidata/netcdf-fortran/archive/'] sources = ['v%(version)s.tar.gz'] checksums = ['0b05c629c70d6d224a3be28699c066bfdfeae477aea211fbf034d973a8309b49'] +builddependencies = [ + ('M4', '1.4.18'), +] + dependencies = [('netCDF', '4.7.1')] # (too) parallel build fails, but single-core build is fairly quick anyway (~1min) diff --git a/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-gompic-2019b.eb b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-gompic-2019b.eb new file mode 100644 index 00000000000..04025ff02d4 --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-gompic-2019b.eb @@ -0,0 +1,25 @@ +name = 'netCDF-Fortran' +version = '4.5.2' + +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': 'gompic', 'version': '2019b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf-fortran/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['0b05c629c70d6d224a3be28699c066bfdfeae477aea211fbf034d973a8309b49'] + +builddependencies = [ + ('M4', '1.4.18'), +] + +dependencies = [('netCDF', '4.7.1')] + +# (too) parallel build fails, but single-core build is fairly quick anyway (~1min) +parallel = 1 + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-iimpi-2019b.eb b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-iimpi-2019b.eb index 1921d8350d8..2cfbf1081ac 100644 --- a/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-iimpi-2019b.eb +++ b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-iimpi-2019b.eb @@ -13,6 +13,10 @@ source_urls = ['https://github.com/Unidata/netcdf-fortran/archive/'] sources = ['v%(version)s.tar.gz'] checksums = ['0b05c629c70d6d224a3be28699c066bfdfeae477aea211fbf034d973a8309b49'] +builddependencies = [ + ('M4', '1.4.18'), +] + dependencies = [('netCDF', '4.7.1')] # (too) parallel build fails, but single-core build is fairly quick anyway (~1min) diff --git a/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-iimpic-2019b.eb b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-iimpic-2019b.eb new file mode 100644 index 00000000000..87b9e9f315a --- /dev/null +++ b/easybuild/easyconfigs/n/netCDF-Fortran/netCDF-Fortran-4.5.2-iimpic-2019b.eb @@ -0,0 +1,25 @@ +name = 'netCDF-Fortran' +version = '4.5.2' + +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': 'iimpic', 'version': '2019b'} +toolchainopts = {'pic': True, 'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf-fortran/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['0b05c629c70d6d224a3be28699c066bfdfeae477aea211fbf034d973a8309b49'] + +builddependencies = [ + ('M4', '1.4.18'), +] + +dependencies = [('netCDF', '4.7.1')] + +# (too) parallel build fails, but single-core build is fairly quick anyway (~1min) +parallel = 1 + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.5.3-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.5.3-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..8e918d367a1 --- /dev/null +++ b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.5.3-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.5.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = """Python/numpy interface to netCDF.""" + +toolchain = {'name': 'foss', 'version': '2020a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf4-python/archive/'] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), # for numpy + ('netCDF', '4.7.4'), + ('cURL', '7.69.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('cftime', '1.2.0', { + 'checksums': ['ff0a175edda260357ff7d24a32bbe0a8c72eafd5f6a404ce487127f9d01836db'], + }), + (name, version, { + 'patches': ['netcdf4-python-1.1.8-avoid-diskless-test.patch'], + 'source_tmpl': 'netCDF4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + '2a3ca855848f4bbf07fac366da77a681fcead18c0a8813d91d46302f562dc3be', # netCDF4-1.5.3.tar.gz + # netcdf4-python-1.1.8-avoid-diskless-test.patch + 'a8b262fa201d55f59015e1bc14466c1d113f807543bc1e05a22481ab0d216d72', + ], + }), +] + +fix_python_shebang_for = ['bin/*'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.5.3-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.5.3-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..7377a4c8d6d --- /dev/null +++ b/easybuild/easyconfigs/n/netcdf4-python/netcdf4-python-1.5.3-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'netcdf4-python' +version = '1.5.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://unidata.github.io/netcdf4-python/' +description = """Python/numpy interface to netCDF.""" + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'usempi': True} + +source_urls = ['https://github.com/Unidata/netcdf4-python/archive/'] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), # for numpy + ('netCDF', '4.7.4'), + ('cURL', '7.69.1'), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('cftime', '1.2.0', { + 'checksums': ['ff0a175edda260357ff7d24a32bbe0a8c72eafd5f6a404ce487127f9d01836db'], + }), + (name, version, { + 'patches': ['netcdf4-python-1.1.8-avoid-diskless-test.patch'], + 'source_tmpl': 'netCDF4-%(version)s.tar.gz', + 'source_urls': ['https://pypi.python.org/packages/source/n/netCDF4'], + 'checksums': [ + '2a3ca855848f4bbf07fac366da77a681fcead18c0a8813d91d46302f562dc3be', # netCDF4-1.5.3.tar.gz + # netcdf4-python-1.1.8-avoid-diskless-test.patch + 'a8b262fa201d55f59015e1bc14466c1d113f807543bc1e05a22481ab0d216d72', + ], + }), +] + +fix_python_shebang_for = ['bin/*'] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/n/nsync/nsync-1.24.0-GCCcore-8.3.0.eb b/easybuild/easyconfigs/n/nsync/nsync-1.24.0-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..c8c032f1911 --- /dev/null +++ b/easybuild/easyconfigs/n/nsync/nsync-1.24.0-GCCcore-8.3.0.eb @@ -0,0 +1,26 @@ +easyblock = 'CMakeNinja' + +name = 'nsync' +version = '1.24.0' + +homepage = 'https://github.com/google/nsync' +description = """nsync is a C library that exports various synchronization primitives, such as mutexes""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://github.com/google/nsync/archive/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['47a6eb2a295be5121a1904a6a775722338a20dc02ee3eec4169ed2c3f203617a'] + +builddependencies = [ + ('binutils', '2.32'), + ('CMake', '3.15.3'), + ('Ninja', '1.9.0'), +] + +sanity_check_paths = { + 'files': ['include/nsync.h', 'lib/libnsync.a', 'lib/libnsync_cpp.a'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019a.eb b/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019a.eb index f0bbe5b1b45..287bbf1c983 100644 --- a/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019a.eb +++ b/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019a.eb @@ -16,6 +16,7 @@ builddependencies = [ ('flex', '2.6.4'), ('Autotools', '20180311'), ('gperf', '3.1'), + ('pkg-config', '0.29.2'), ] dependencies = [ diff --git a/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019b.eb b/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019b.eb index 5051e27bab6..b37ef2c4129 100644 --- a/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019b.eb +++ b/easybuild/easyconfigs/o/Octave/Octave-5.1.0-foss-2019b.eb @@ -16,6 +16,7 @@ builddependencies = [ ('flex', '2.6.4'), ('Autotools', '20180311'), ('gperf', '3.1'), + ('pkg-config', '0.29.2'), ] dependencies = [ diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.9-GCC-9.3.0.eb b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.9-GCC-9.3.0.eb index 911b346109c..96804433717 100644 --- a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.9-GCC-9.3.0.eb +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.9-GCC-9.3.0.eb @@ -15,11 +15,13 @@ sources = ['v%(version)s.tar.gz'] patches = [ ('large.tgz', '.'), ('timing.tgz', '.'), + 'OpenBLAS-0.3.9_fix-lapack_h.patch', ] checksums = [ '17d4677264dfbc4433e97076220adc79b050e4f8a083ea3f853a53af253bc380', # v0.3.9.tar.gz 'f328d88b7fa97722f271d7d0cfea1c220e0f8e5ed5ff01d8ef1eb51d6f4243a1', # large.tgz '999c65f8ea8bd4eac7f1c7f3463d4946917afd20a997807300fe35d70122f3af', # timing.tgz + '9210a94ae418b4ce6d9f7fab4e00dd3155451f5ef3769536a4d954a2149ca733', # OpenBLAS-0.3.9_fix-lapack_h.patch ] # extensive testing can be enabled by uncommenting the line below diff --git a/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.9_fix-lapack_h.patch b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.9_fix-lapack_h.patch new file mode 100644 index 00000000000..e4fc0d416d4 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenBLAS/OpenBLAS-0.3.9_fix-lapack_h.patch @@ -0,0 +1,73 @@ +From ee2e758278b5d82b7242f505ea694f082ef65879 Mon Sep 17 00:00:00 2001 +From: Martin Kroeker +Date: Fri, 13 Mar 2020 20:34:13 +0100 +Subject: [PATCH] Move declarations of lapack_complex_custom types outside the + extern C + +fixes #2510 +--- + lapack-netlib/LAPACKE/include/lapack.h | 44 ++++++++++++++------------ + 1 file changed, 23 insertions(+), 21 deletions(-) + +diff --git a/lapack-netlib/LAPACKE/include/lapack.h b/lapack-netlib/LAPACKE/include/lapack.h +index 0a6226fe4..36e53ec24 100644 +--- a/lapack-netlib/LAPACKE/include/lapack.h ++++ b/lapack-netlib/LAPACKE/include/lapack.h +@@ -12,27 +12,6 @@ + + #include + +-#ifdef __cplusplus +-extern "C" { +-#endif +- +-/*----------------------------------------------------------------------------*/ +-#ifndef lapack_int +-#define lapack_int int +-#endif +- +-#ifndef lapack_logical +-#define lapack_logical lapack_int +-#endif +- +-/* f2c, hence clapack and MacOS Accelerate, returns double instead of float +- * for sdot, slange, clange, etc. */ +-#if defined(LAPACK_F2C) +- typedef double lapack_float_return; +-#else +- typedef float lapack_float_return; +-#endif +- + /* Complex types are structures equivalent to the + * Fortran complex types COMPLEX(4) and COMPLEX(8). + * +@@ -88,6 +67,29 @@ extern "C" { + + #endif /* LAPACK_COMPLEX_CUSTOM */ + ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++/*----------------------------------------------------------------------------*/ ++#ifndef lapack_int ++#define lapack_int int ++#endif ++ ++#ifndef lapack_logical ++#define lapack_logical lapack_int ++#endif ++ ++/* f2c, hence clapack and MacOS Accelerate, returns double instead of float ++ * for sdot, slange, clange, etc. */ ++#if defined(LAPACK_F2C) ++ typedef double lapack_float_return; ++#else ++ typedef float lapack_float_return; ++#endif ++ ++ + /* Callback logical functions of one, two, or three arguments are used + * to select eigenvalues to sort to the top left of the Schur form. + * The value is selected if function returns TRUE (non-zero). */ 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 1bd16e9642d..9c98a3c4d19 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 @@ -44,6 +44,13 @@ configopts = '-DBoost_INCLUDE_DIR=$EBROOTBOOST/include -DBoost_LIBRARY_DIR_RELEA # 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' diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-8-cleanup.patch b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-8-cleanup.patch new file mode 100644 index 00000000000..2b4a0880730 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-8-cleanup.patch @@ -0,0 +1,297 @@ +# This patch removes all need for the ThirdParty files of OpenFOAM: +# we use EB dependencies for everything. It adjusts the paths, variables, etc +# We also let the install dir, compiler, etc be set by EB. +# Lastly, we also fix a small compile issue in 'ptscotchDecomp.C' +# by Jiri Furst , based on patch for OpenFOAM 5.0 and 4.1 by +# Kennet Hoste (HPC-UGent) and Ward Poelmans +diff -ru OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake +--- OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake 2018-08-14 11:18:48.188975085 +0200 +@@ -7,19 +7,12 @@ + unset COMP_FLAGS LINK_FLAGS + + # Use readline if available +-if [ -f /usr/include/readline/readline.h ] ++if [ -f $EBROOTLIBREADLINE/include/readline/readline.h ] + then + echo " found -- enabling readline support." + export COMP_FLAGS="-DHAS_READLINE" + +- # readline may require ncurses +- if [ -f /usr/include/ncurses/ncurses.h ] +- then +- echo " found -- maybe required by readline." +- export LINK_FLAGS="-lreadline -lncurses" +- else +- export LINK_FLAGS="-lreadline" +- fi ++ export LINK_FLAGS="-L$EBROOTLIBREADLINE/lib -lreadline -L$EBROOTNCURSES -lncurses" + fi + + wmake $targetType +diff -ru OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake +--- OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2018-08-14 11:21:25.280419729 +0200 +@@ -17,8 +17,8 @@ + fi + + # Ensure CMake gets the correct C/C++ compilers +-[ -n "$WM_CC" ] && export CC="$WM_CC" +-[ -n "$WM_CXX" ] && export CXX="$WM_CXX" ++#[ -n "$WM_CC" ] && export CC="$WM_CC" ++#[ -n "$WM_CXX" ] && export CXX="$WM_CXX" + + wmake $targetType vtkPVblockMesh + wmake $targetType vtkPVFoam +diff -ru OpenFOAM-8.orig/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt OpenFOAM-8/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt +--- OpenFOAM-8.orig/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt 2020-07-24 09:22:59.409594780 +0200 ++++ OpenFOAM-8/applications/utilities/postProcessing/graphics/PVReaders/CMakeLists.txt 2020-07-24 09:46:24.856457402 +0200 +@@ -2,6 +2,8 @@ + + PROJECT(PVReaders) + ++FIND_PACKAGE(MPI REQUIRED) ++ + FIND_PACKAGE(ParaView REQUIRED) + + INCLUDE(GNUInstallDirs) +diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc +--- OpenFOAM-7-version-7.orig/etc/bashrc 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/bashrc 2018-08-14 11:29:14.168761602 +0200 +@@ -43,8 +43,9 @@ + # Please set to the appropriate path if the default is not correct. + # + [ "$BASH" -o "$ZSH_NAME" ] && \ +-export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \ +-export FOAM_INST_DIR=$HOME/$WM_PROJECT ++#export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \ ++#export FOAM_INST_DIR=$HOME/$WM_PROJECT ++# For Easybuild: set by the module + # export FOAM_INST_DIR=~$WM_PROJECT + # export FOAM_INST_DIR=/opt/$WM_PROJECT + # export FOAM_INST_DIR=/usr/local/$WM_PROJECT +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/CGAL OpenFOAM-7-version-7/etc/config.sh/CGAL +--- OpenFOAM-7-version-7.orig/etc/config.sh/CGAL 2020-07-01 08:32:09.046842000 +0200V ++++ OpenFOAM-7-version-7/etc/config.sh/CGAL 2020-07-01 08:40:13.226755000 +0200 +@@ -39,22 +39,7 @@ + # + #------------------------------------------------------------------------------ + +-boost_version=boost-system +-#boost_version=boost-1.55.0 +-#boost_version=boost-1.72.0 +- +-cgal_version=cgal-system +-#cgal_version=CGAL-4.10 +-#cgal_version=CGAL-5.0.2 +- +-if [ "$boost_version" != "boost-system" ] +-then +- export BOOST_ARCH_PATH=$WM_THIRD_PARTY_DIR/$boost_version +-fi +- +-if [ "$cgal_version" != "cgal-system" ] +-then +- export CGAL_ARCH_PATH=$WM_THIRD_PARTY_DIR/$cgal_version +-fi ++export CGAL_ARCH_PATH=$EBROOTCGAL ++export BOOST_ARCH_PATH=$EBROOTBOOST + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/gperftools OpenFOAM-7-version-7/etc/config.sh/gperftools +--- OpenFOAM-7-version-7.orig/etc/config.sh/gperftools 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/gperftools 2018-08-14 11:37:07.582078984 +0200 +@@ -29,13 +29,7 @@ + # + #------------------------------------------------------------------------------ + +-version=svn +-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER +- +-GPERFTOOLS_VERSION=gperftools-$version +-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION +- +-export PATH=$GPERFTOOLS_ARCH_PATH/bin:$PATH +-export LD_LIBRARY_PATH=$GPERFTOOLS_ARCH_PATH/lib:$LD_LIBRARY_PATH ++GPERFTOOLS_VERSION=gperftools-$EBVERSIONGPERFTOOLS ++GPERFTOOLS_ARCH_PATH=$EBROOTGPERFTOOLS + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/metis OpenFOAM-7-version-7/etc/config.sh/metis +--- OpenFOAM-7-version-7.orig/etc/config.sh/metis 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/metis 2018-08-14 11:39:06.204657280 +0200 +@@ -34,7 +34,7 @@ + # + #------------------------------------------------------------------------------ + +-export METIS_VERSION=metis-5.1.0 +-export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$METIS_VERSION ++export METIS_VERSION=metis-$EBVERSIONMETIS ++export METIS_ARCH_PATH=$EBROOTMETIS + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/mpi OpenFOAM-7-version-7/etc/config.sh/mpi +--- OpenFOAM-7-version-7.orig/etc/config.sh/mpi 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/mpi 2018-08-14 11:45:15.876343167 +0200 +@@ -257,6 +257,9 @@ + _foamAddPath $MPI_ARCH_PATH/bin64 + _foamAddLib $MPI_ARCH_PATH/lib64 + ;; ++EASYBUILDMPI) ++ export FOAM_MPI=mpi ++ ;; + *) + export FOAM_MPI=dummy + ;; +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/paraview OpenFOAM-7-version-7/etc/config.sh/paraview +--- OpenFOAM-7-version-7.orig/etc/config.sh/paraview 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/paraview 2018-08-14 11:48:56.859557664 +0200 +@@ -41,21 +41,6 @@ + ) \ + && PATH="$cleaned" + +-# Determine the cmake to be used +-unset CMAKE_HOME +-for cmake in cmake-3.2.1 cmake-2.8.12.1 cmake-2.8.8 cmake-2.8.4 cmake-2.8.3 \ +- cmake-2.8.1 cmake-3.9.0 +-do +- cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cmake +- if [ -r $cmake ] +- then +- export CMAKE_HOME=$cmake +- export CMAKE_ROOT=$cmake +- export PATH=$CMAKE_HOME/bin:$PATH +- break +- fi +-done +- + #- ParaView version, automatically determine major version + #export ParaView_VERSION=4.0.1 + #export ParaView_VERSION=4.1.0 +@@ -65,7 +50,8 @@ + #export ParaView_VERSION=5.0.1 + #export ParaView_VERSION=5.4.0 + #export ParaView_VERSION=5.5.0 +-export ParaView_VERSION=5.6.3 ++#export ParaView_VERSION=5.6.3 ++export ParaView_VERSION=$EBVERSIONPARAVIEW + export ParaView_MAJOR=detect + + #export ParaView_GL=system +@@ -105,7 +91,8 @@ + export ParaView_VERSION ParaView_MAJOR + + # Set the binary and source directories +-export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/ParaView-$ParaView_VERSION ++#export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/ParaView-$ParaView_VERSION ++export ParaView_DIR=$EBROOTPARAVIEW + paraviewSrcDir=$WM_THIRD_PARTY_DIR/ParaView-$ParaView_VERSION + + # Set paths if binaries or source are present +@@ -125,8 +111,6 @@ + fi + export ParaView_LIB_DIR=$ParaView_DIR/lib$paraviewArch$paraviewLibSubDir + +- export PATH=$ParaView_DIR/bin:$PATH +- export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$LD_LIBRARY_PATH + export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR + + if [ "$FOAM_VERBOSE" -a "$PS1" ] +@@ -138,18 +122,6 @@ + echo " PV_PLUGIN_PATH : $PV_PLUGIN_PATH" + fi + +- # Add in python libraries if required +- paraviewPython=$ParaView_DIR/Utilities/VTKPythonWrapping +- if [ -r $paraviewPython ] +- then +- if [ "$PYTHONPATH" ] +- then +- export PYTHONPATH=$PYTHONPATH:$paraviewPython:$ParaView_LIB_DIR +- else +- export PYTHONPATH=$paraviewPython:$ParaView_LIB_DIR +- fi +- fi +- + # Alias paraview to launch with mesa if necessary + if [ "$ParaView_GL" = mesa ] + then +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/scotch OpenFOAM-7-version-7/etc/config.sh/scotch +--- OpenFOAM-7-version-7.orig/etc/config.sh/scotch 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/scotch 2018-08-14 11:50:33.739213308 +0200 +@@ -37,7 +37,7 @@ + # + #------------------------------------------------------------------------------ + +-export SCOTCH_VERSION=scotch_6.0.9 +-export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$SCOTCH_VERSION ++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH ++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH + + #------------------------------------------------------------------------------ +diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/settings OpenFOAM-7-version-7/etc/config.sh/settings +--- OpenFOAM-7-version-7.orig/etc/config.sh/settings 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/etc/config.sh/settings 2018-08-14 11:53:15.092639797 +0200 +@@ -61,11 +61,11 @@ + 64) + WM_ARCH=linux64 + export WM_COMPILER_LIB_ARCH=64 +- export WM_CC='gcc' +- export WM_CXX='g++' +- export WM_CFLAGS='-m64 -fPIC' +- export WM_CXXFLAGS='-m64 -fPIC -std=c++0x' +- export WM_LDFLAGS='-m64' ++ export WM_CC=$CC ++ export WM_CXX=$CXX ++ export WM_CFLAGS=$CFLAGS ++ export WM_CXXFLAGS=$CXXFLAGS ++ export WM_LDFLAGS=$LDFLAGS + ;; + *) + echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\ +diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options +--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options 2018-08-14 11:55:27.323169812 +0200 +@@ -5,14 +5,7 @@ + $(PFLAGS) $(PINC) \ + -I$(FOAM_SRC)/Pstream/mpi/lnInclude \ + -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \ +- -I$(SCOTCH_ARCH_PATH)/include \ +- -I/usr/include/scotch \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ +- -L$(SCOTCH_ARCH_PATH)/lib \ +- -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \ +- -lptscotch \ +- -lptscotcherrexit \ +- -lscotch \ +- -lrt ++ -L$(SCOTCH_ARCH_PATH)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt +diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C +--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C 2018-08-14 11:57:24.057754914 +0200 +@@ -31,10 +31,11 @@ + #include "SubField.H" + #include "PstreamGlobals.H" + ++#include ++ + extern "C" + { + #include +- #include + #include "ptscotch.h" + } + +diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options +--- OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options 2018-07-09 18:01:02.000000000 +0200 ++++ OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options 2018-08-14 11:58:42.345476668 +0200 +@@ -8,7 +8,6 @@ + EXE_INC = \ + $(PFLAGS) $(PINC) \ + -I$(SCOTCH_ARCH_PATH)/include \ +- -I/usr/include/scotch \ + -I../decompositionMethods/lnInclude + + LIB_LIBS = \ diff --git a/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-8-foss-2020a.eb b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-8-foss-2020a.eb new file mode 100644 index 00000000000..167fa3fb430 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenFOAM/OpenFOAM-8-foss-2020a.eb @@ -0,0 +1,39 @@ +name = 'OpenFOAM' +version = '8' + +homepage = 'https://www.openfoam.org/' +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': '2020a'} +toolchainopts = {'cstd': 'c++11'} + +source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive'] +sources = ['version-%(version)s.tar.gz'] +patches = [ + 'OpenFOAM-%(version)s-cleanup.patch', +] +checksums = [ + '94ba11cbaaa12fbb5b356e01758df403ac8832d69da309a5d79f76f42eb008fc', # version-8.tar.gz + 'e3fac8049611ee109f07eb5b0ed4b1526782a21b3f12435e03529d56c8483b9f', # OpenFOAM-8-cleanup.patch +] + +dependencies = [ + ('libreadline', '8.0'), + ('ncurses', '6.2'), + # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes) + ('METIS', '5.1.0'), + ('SCOTCH', '6.0.9'), + ('CGAL', '4.14.3', '-Python-3.8.2'), + ('ParaView', '5.8.0', '-Python-3.8.2-mpi'), +] + +builddependencies = [ + ('Bison', '3.5.3'), + ('CMake', '3.16.4'), + ('flex', '2.6.4'), +] + +moduleclass = 'cae' diff --git a/easybuild/easyconfigs/o/OpenForceField/OpenForceField-0.7.0-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/o/OpenForceField/OpenForceField-0.7.0-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..c78cfdb47ac --- /dev/null +++ b/easybuild/easyconfigs/o/OpenForceField/OpenForceField-0.7.0-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,53 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PythonBundle' + +name = 'OpenForceField' +version = '0.7.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/openforcefield/openforcefield/releases' +description = """Simulation and Parameter Estimation in Geophysics +- A python package for simulation and gradient based parameter estimation in the context of geophysical applications.""" + +toolchain = {'name': 'intel', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('networkx', '2.4', versionsuffix), + ('ParmEd', '3.2.0', versionsuffix), + ('RDKit', '2020.03.3', versionsuffix), + ('OpenMMTools', '0.20.0', versionsuffix), + ('netcdf4-python', '1.5.3', versionsuffix), + ('AmberMini', '16.16.0'), + ('PyYAML', '5.3'), +] + +use_pip = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('bson', '0.5.10', { + 'checksums': ['d6511b2ab051139a9123c184de1a04227262173ad593429d21e443d6462d6590'], + }), + ('msgpack-python', '0.5.6', { + 'modulename': 'msgpack', + 'checksums': ['378cc8a6d3545b532dfd149da715abae4fda2a3adb6d74e525d0d5e51f46909b'], + }), + ('xmltodict', '0.12.0', { + 'checksums': ['50d8c638ed7ecb88d90561beedbf720c9b4e851a9fa6c47ebd64e99d166d8a21'], + }), + (name, version, { + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/openforcefield/openforcefield/archive/'], + 'checksums': ['a87642d1e4dd2192602a2b4fccb6c7764cb43df51a4fd845c2c3cd2a3220389d'], + }), +] + +runtest = "cd %(builddir)s && pytest", + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/OpenMM/OpenMM-7.4.2-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.4.2-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..58d781963e7 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMM/OpenMM-7.4.2-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,61 @@ +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Author: Pablo Escobar Lopez +# sciCORE - University of Basel +# SIB Swiss Institute of Bioinformatics + +easyblock = 'CMakeMake' + +name = 'OpenMM' +version = '7.4.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://openmm.org' +description = "OpenMM is a toolkit for molecular simulation." + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'opt': True} + +source_urls = ['https://github.com/openmm/openmm/archive/'] +sources = ['%(version)s.tar.gz'] +patches = ['OpenMM-7.4.1_fix-Doxygen.patch'] +checksums = [ + '2e121ad5cfcc4840861032bb1b11d4d0aea2d3ca3c59baaed73b8b0b4fd069cc', # 7.4.2.tar.gz + '99d59e3106d9c9f9fbce3c3161117a37b2699e1dc09bc2a75619e0d880f29708', # OpenMM-7.4.1_fix-Doxygen.patch +] + +builddependencies = [ + ('CMake', '3.16.4'), + ('Doxygen', '1.8.17'), +] + +separate_build_dir = True + +dependencies = [ + ('FFTW', '3.3.8'), + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('SWIG', '4.0.1'), +] + +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/OpenMMTools/OpenMMTools-0.20.0-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/o/OpenMMTools/OpenMMTools-0.20.0-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..2f7c61647ea --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMMTools/OpenMMTools-0.20.0-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,79 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'PythonBundle' + +name = 'OpenMMTools' +version = '0.20.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/choderalab/openmmtools' +description = """A batteries-included toolkit for the GPU-accelerated OpenMM molecular simulation engine. +openmmtools is a Python library layer that sits on top of OpenMM to provide access to a variety of useful tools +for building full-featured molecular simulation packages. +""" + +toolchain = {'name': 'intel', 'version': '2020a'} +toolchainopts = {'usempi': True} + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('OpenMM', '7.4.2', versionsuffix), + ('netcdf4-python', '1.5.3', versionsuffix), + ('MDTraj', '1.9.4', versionsuffix), + ('PyYAML', '5.3'), +] + +use_pip = True +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('ipython_genutils', '0.2.0', { + 'checksums': ['eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8'], + }), + ('pyrsistent', '0.16.0', { + 'checksums': ['28669905fe725965daa16184933676547c5bb40a5153055a8dee2a4bd7933ad3'], + }), + ('jsonschema', '3.2.0', { + 'checksums': ['c8a85b28d377cc7737e46e2d9f2b4f44ee3c0e1deac6bf46ddefc7187d30797a'], + }), + ('jupyter_core', '4.6.3', { + 'checksums': ['394fd5dd787e7c8861741880bdf8a00ce39f95de5d18e579c74b882522219e7e'], + }), + ('traitlets', '4.3.3', { + 'checksums': ['d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7'], + }), + ('nbformat', '5.0.7', { + 'checksums': ['54d4d6354835a936bad7e8182dcd003ca3dc0cedfee5a306090e04854343b340'], + }), + ('mpiplus', '0.0.1', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/choderalab/mpiplus/archive/'], + 'checksums': ['a3d50157a274decab87589ad78b9e41e9f3d34eb27a7d50cc6e7ef34def98b44'], + }), + ('sortedcontainers', '2.2.2', { + 'checksums': ['4e73a757831fc3ca4de2859c422564239a31d8213d09a2a666e375807034d2ba'], + }), + ('hypothesis', '5.20.0', { + 'checksums': ['50a69d6ab99e3c027c67e217654b33f41c499ba5a05e5d386ef12dd6b8f13c40'], + }), + (name, version, { + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/choderalab/openmmtools/archive/'], + 'checksums': ['05cfa136b7ca16418f156724c8ab9199b89d25dd9f92133108796034563ca685'], + # import check requires use of mpirun, handled via sanity_check_commands + 'modulename': False, + }), +] + +sanity_check_paths = { + 'files': ['bin/test-openmm-platforms'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["%(mpi_cmd_prefix)s python -c 'import %(namelower)s'"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.3-iccifort-2020.1.217.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.3-iccifort-2020.1.217.eb new file mode 100644 index 00000000000..980e0e87cbb --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.3-iccifort-2020.1.217.eb @@ -0,0 +1,25 @@ +name = 'OpenMPI' +version = '4.0.3' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'iccifort', 'version': '2020.1.217'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['6346bf976001ad274c7e018d6cc35c92bbb9426d8f7754fac00a17ea5ac8eebc'] + +dependencies = [ + ('zlib', '1.2.11'), + ('hwloc', '2.2.0'), + ('UCX', '1.8.0'), +] + +# disable MPI1 compatibility for now, see what breaks... +# configopts = '--enable-mpi1-compatibility ' + +# to enable SLURM integration (site-specific) +# configopts += '--with-slurm --with-pmi=/usr/include/slurm --with-pmi-libdir=/usr' + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.5-GCC-9.3.0.eb b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.5-GCC-9.3.0.eb new file mode 100644 index 00000000000..13a296e2e19 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMPI/OpenMPI-4.0.5-GCC-9.3.0.eb @@ -0,0 +1,30 @@ +name = 'OpenMPI' +version = '4.0.5' + +homepage = 'https://www.open-mpi.org/' +description = """The Open MPI Project is an open source MPI-3 implementation.""" + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['572e777441fd47d7f06f1b8a166e7f44b8ea01b8b2e79d1e299d509725d1bd05'] + +builddependencies = [ + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('zlib', '1.2.11'), + ('hwloc', '2.2.0'), + ('libevent', '2.1.11'), + ('UCX', '1.8.0'), +] + +# disable MPI1 compatibility for now, see what breaks... +# configopts = '--enable-mpi1-compatibility ' + +# to enable SLURM integration (site-specific) +# configopts += '--with-slurm --with-pmi=/usr/include/slurm --with-pmi-libdir=/usr' + +moduleclass = 'mpi' diff --git a/easybuild/easyconfigs/o/OpenMS/OpenMS-2.4.0-foss-2018b.eb b/easybuild/easyconfigs/o/OpenMS/OpenMS-2.4.0-foss-2018b.eb new file mode 100644 index 00000000000..c2c006a21f5 --- /dev/null +++ b/easybuild/easyconfigs/o/OpenMS/OpenMS-2.4.0-foss-2018b.eb @@ -0,0 +1,66 @@ +easyblock = 'CMakeMake' + +name = 'OpenMS' +version = '2.4.0' + +homepage = 'https://www.openms.de/' +description = """As part of the deNBI Center for integrative Bioinformatics, OpenMS offers an open-source software + C++ library (+ python bindings) for LC/MS data management and analyses. It provides an infrastructure + for the rapid development of mass spectrometry related software as well as a rich toolset built on top of it.""" + +toolchain = {'name': 'foss', 'version': '2018b'} + +source_urls = [ + 'https://github.com/OpenMS/OpenMS/releases/download/Release%(version)s/', + 'https://github.com/seqan/seqan/releases/download/seqan-v1.4.2/', +] +sources = [ + '%(name)s-%(version)s-src.tar.gz', + 'seqan-library-1.4.2.tar.bz2', +] +checksums = [ + '86e8176b0f89cc86a10f5c3e60c34140d591e9e6c85f129ccbfa13ecb16a9af2', # OpenMS-2.4.0-src.tar.gz + '77fb437c6f17d41ec41ce0a3bcc3533f91a3482ca63a3a55400e14cb73e64317', # seqan-library-1.4.2.tar.bz2 +] + +builddependencies = [ + ('CMake', '3.12.1'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Boost', '1.67.0'), + ('Xerces-C++', '3.2.0'), + ('LIBSVM', '3.23'), + ('GLPK', '4.65'), + ('Eigen', '3.3.4', '', True), + ('SQLite', '3.24.0'), + ('bzip2', '1.0.6'), + ('zlib', '1.2.11'), + ('libtool', '2.4.6'), + ('Qt5', '5.10.1'), + ('CoinUtils', '2.11.3'), + ('Osi', '0.108.5'), + ('Clp', '1.17.3'), + ('Cgl', '0.60.2'), + ('Cbc', '2.10.3'), + ('WildMagic', '5.17'), + ('X11', '20180604'), +] + +configopts = "-DCMAKE_PREFIX_PATH=%(builddir)s/seqan-library-1.4.2 -DCMAKE_CXX_STANDARD_LIBRARIES='-ldl' " +# Disable reporting to remote servers +configopts += "-DENABLE_UPDATE_CHECK=OFF " +# Documentation requires an active X server display and tutorials require LaTex +configopts += "-DENABLE_DOCS=OFF -DENABLE_TUTORIALS=OFF " + +sanity_check_paths = { + 'files': ['lib/libOpenMS.%s' % SHLIB_EXT, 'lib/libOpenMS_GUI.%s' % SHLIB_EXT], + 'dirs': ['bin', 'include/OpenMS', 'lib', 'share/OpenMS'], +} +sanity_check_commands = ['OpenMSInfo'] + +# Disable notifications on new updates +modextravars = {'OPENMS_DISABLE_UPDATE_CHECK': 1} + +moduleclass = "bio" diff --git a/easybuild/easyconfigs/o/OpenPIV/OpenPIV-0.21.8-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/o/OpenPIV/OpenPIV-0.21.8-intel-2019b-Python-3.7.4.eb index a561b5c3d67..c1b23a80831 100644 --- a/easybuild/easyconfigs/o/OpenPIV/OpenPIV-0.21.8-intel-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/o/OpenPIV/OpenPIV-0.21.8-intel-2019b-Python-3.7.4.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonPackage' +easyblock = 'PythonBundle' name = 'OpenPIV' version = '0.21.8' @@ -9,17 +9,31 @@ description = "OpenPIV is an open source Particle Image Velocimetry analysis sof toolchain = {'name': 'intel', 'version': '2019b'} -source_urls = [PYPI_SOURCE] -sources = [SOURCE_TAR_GZ] -checksums = ['1cdb48fa7928555e1f2fe5b444d356fe0cacf1405a445dbf004489d31c9e34fc'] - dependencies = [ ('Python', '3.7.4'), ('SciPy-bundle', '2019.10', versionsuffix), + ('imageio', '2.9.0', versionsuffix), + ('matplotlib', '3.1.1', versionsuffix), + ('scikit-image', '0.16.2', versionsuffix), ] -download_dep_fail = True use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('python-utils', '2.4.0', { + 'checksums': ['f21fc09ff58ea5ebd1fd2e8ef7f63e39d456336900f26bdc9334a03a3f7d8089'], + }), + ('progressbar2', '3.51.4', { + 'checksums': ['13f228cf357f94cdef933c91c1e771e52e1b1931dbae48267be8fcdc2ae2ce36'], + 'modulename': 'progressbar', + }), + (name, version, { + 'checksums': ['1cdb48fa7928555e1f2fe5b444d356fe0cacf1405a445dbf004489d31c9e34fc'], + }), +] + sanity_pip_check = True moduleclass = 'vis' diff --git a/easybuild/easyconfigs/o/OptiX/OptiX-6.5.0.eb b/easybuild/easyconfigs/o/OptiX/OptiX-6.5.0.eb new file mode 100644 index 00000000000..6232d58d8cf --- /dev/null +++ b/easybuild/easyconfigs/o/OptiX/OptiX-6.5.0.eb @@ -0,0 +1,33 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Authors:: Stephane Thiell +## +easyblock = 'Binary' + +name = 'OptiX' +version = '6.5.0' + +homepage = 'https://developer.nvidia.com/optix' +description = """OptiX is NVIDIA SDK for easy ray tracing performance. + It provides a simple framework for accessing the GPU’s massive ray tracing + power using state-of-the-art GPU algorithms.""" + +toolchain = SYSTEM + +# Registration required. Download links: +# https://developer.nvidia.com/designworks/optix/download +# https://developer.nvidia.com/designworks/optix/downloads/legacy +sources = ['NVIDIA-OptiX-SDK-%(version)s-linux64.sh'] +checksums = ['eca09e617a267e18403ecccc715c5bc3a88729b81589a828fcb696435100a62e'] + +install_cmd = "./" + sources[0] + " --skip-license --prefix=%(installdir)s" + +sanity_check_paths = { + 'files': ["include/optix.h", "include/optix_cuda.h", "lib64/liboptix.%s" % SHLIB_EXT, + "lib64/liboptixu.%s" % SHLIB_EXT], + 'dirs': [] +} + +modextravars = {'OPTIX_HOME': '%(installdir)s'} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/o/Osi/Osi-0.108.5-GCCcore-7.3.0.eb b/easybuild/easyconfigs/o/Osi/Osi-0.108.5-GCCcore-7.3.0.eb index 92998116e49..b03db1bbb52 100644 --- a/easybuild/easyconfigs/o/Osi/Osi-0.108.5-GCCcore-7.3.0.eb +++ b/easybuild/easyconfigs/o/Osi/Osi-0.108.5-GCCcore-7.3.0.eb @@ -44,4 +44,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = "math" diff --git a/easybuild/easyconfigs/o/Osi/Osi-0.108.5-foss-2018b.eb b/easybuild/easyconfigs/o/Osi/Osi-0.108.5-foss-2018b.eb index 579b794bf4f..07cd6ceb75c 100644 --- a/easybuild/easyconfigs/o/Osi/Osi-0.108.5-foss-2018b.eb +++ b/easybuild/easyconfigs/o/Osi/Osi-0.108.5-foss-2018b.eb @@ -37,7 +37,7 @@ configopts = '--with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK" ' # Disable GLPK because Osi requires GLPK<=4.48 configopts += '--without-glpk ' # Use CoinUtils from EB -configopts += '--with-coinutils-lib="-lCoinUtils" --with-coinutils-incdir=$EBROOTCOINUTILS/include/coin ' +configopts += '--with-coinutils-lib="-lCoinUtils" ' configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data' sanity_check_paths = { @@ -45,4 +45,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = "math" diff --git a/easybuild/easyconfigs/o/openCARP/openCARP-3.2-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/o/openCARP/openCARP-3.2-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..502838b61ac --- /dev/null +++ b/easybuild/easyconfigs/o/openCARP/openCARP-3.2-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMakeCp' + +name = 'openCARP' +version = '3.2' +versionsuffix = '-Python-3.8.2' + +homepage = 'https://opencarp.org' +description = "openCARP is an open cardiac electrophysiology simulator for in-silico experiments." + +toolchain = {'name': 'foss', 'version': '2020a'} +toolchainopts = {'openmp': True, 'usempi': True} + +source_urls = ['https://git.opencarp.org/openCARP/openCARP/-/archive/v%(version)s/'] +sources = ['openCARP-v%(version)s.tar.gz'] +patches = ['openCARP-%(version)s_build-info.patch'] +checksums = [ + '4029f9bb0786636380c25d995ef7be22626daaa2c76bf741dea949df11da7bf7', # openCARP-v3.2.tar.gz + '43004c7dee2981677c4316c32ce20080ad2e70760d53981aaaaba55ebc659e8c', # openCARP-3.2_build-info.patch +] + +builddependencies = [ + ('CMake', '3.16.4'), + ('gengetopt', '2.23'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('PETSc', '3.12.4', versionsuffix), + ('zlib', '1.2.11'), +] + +files_to_copy = ['bin'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in ['bench', 'igbapd', 'igbextract', 'igbhead', 'igbops', 'mesher', 'openCARP']], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/o/openCARP/openCARP-3.2_build-info.patch b/easybuild/easyconfigs/o/openCARP/openCARP-3.2_build-info.patch new file mode 100644 index 00000000000..ebe89afaf07 --- /dev/null +++ b/easybuild/easyconfigs/o/openCARP/openCARP-3.2_build-info.patch @@ -0,0 +1,33 @@ +avoid having to build from cloned Git repository by adding simulator/build_info.h file, +which was generated using "PETSC_DIR=/foo make build_info.h" in Git repo that corresponds with openCARP v3.2 sources +author: Kenneth Hoste (HPC-UGent) +--- openCARP-v3.2.orig/simulator/CMakeLists.txt 2020-08-11 13:55:42.774794926 +0200 ++++ openCARP-v3.2/simulator/CMakeLists.txt 2020-08-11 13:58:39.811085211 +0200 +@@ -3,12 +3,6 @@ + ####################################################################### + # carp # + ####################################################################### +-add_custom_command(OUTPUT "build_info.h" +- COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/build_info.py +- DEPENDS build_info.py +- COMMENT "Generate a C header file defining some information about the build" +- VERBATIM +-) + + set(CARP_FILES "carp_d.h" "carp_p.cc" "carp_p.h") + add_custom_command(OUTPUT ${CARP_FILES} +--- openCARP-v3.2.orig/simulator/build_info.h 1970-01-01 01:00:00.000000000 +0100 ++++ openCARP-v3.2/simulator/build_info.h 2020-08-11 13:07:56.869383000 +0200 +@@ -0,0 +1,12 @@ ++#ifndef __BUILD_INFO__ ++#define __BUILD_INFO__ ++ ++#define GIT_COMMIT_HASH "f9fcd8bf495879e0f9145366198467158cf9ad0a" ++#define GIT_COMMIT_COUNT 834 ++#define GIT_PATH "https://git.opencarp.org/openCARP/openCARP.git" ++ ++#define SUBREPO_REVISIONS "" ++ ++#define SUBREPO_COMMITS "" ++ ++#endif diff --git a/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-foss-2019a.eb b/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-foss-2019a-Python-3.7.2.eb similarity index 81% rename from easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-foss-2019a.eb rename to easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-foss-2019a-Python-3.7.2.eb index ec6bf09605d..45223b1fed7 100644 --- a/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-foss-2019a.eb +++ b/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-foss-2019a-Python-3.7.2.eb @@ -1,7 +1,8 @@ name = 'PETSc' version = '3.11.1' +versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.mcs.anl.gov/petsc' +homepage = 'https://www.mcs.anl.gov/petsc' description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.""" @@ -23,6 +24,8 @@ checksums = [ builddependencies = [('CMake', '3.13.3')] dependencies = [ + ('Python', '3.7.2'), + ('SciPy-bundle', '2019.03'), ('Boost', '1.70.0'), ('METIS', '5.1.0'), ('ParMETIS', '4.0.3'), @@ -31,7 +34,9 @@ dependencies = [ ('Hypre', '2.15.1'), ] -configopts = '--LIBS="$LIBS -lrt" ' +# enabling --with-mpi4py seems to be totally broken, leads to make errors like: +# No rule to make target 'mpi4py-build' +configopts = '--LIBS="$LIBS -lrt" --with-mpi4py=0' # only required when building PETSc in a SLURM job environment # configopts += '--with-batch=1 --known-mpi-shared-libraries=1 --known-64-bit-blas-indices=0 ' diff --git a/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-intel-2019a.eb b/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-intel-2019a-Python-3.7.2.eb similarity index 81% rename from easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-intel-2019a.eb rename to easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-intel-2019a-Python-3.7.2.eb index 6cad0386865..e95ff624ac8 100644 --- a/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-intel-2019a.eb +++ b/easybuild/easyconfigs/p/PETSc/PETSc-3.11.1-intel-2019a-Python-3.7.2.eb @@ -1,7 +1,8 @@ name = 'PETSc' version = '3.11.1' +versionsuffix = '-Python-%(pyver)s' -homepage = 'http://www.mcs.anl.gov/petsc' +homepage = 'https://www.mcs.anl.gov/petsc' description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.""" @@ -23,6 +24,8 @@ checksums = [ builddependencies = [('CMake', '3.13.3')] dependencies = [ + ('Python', '3.7.2'), + ('SciPy-bundle', '2019.03'), ('Boost', '1.70.0'), ('METIS', '5.1.0'), ('ParMETIS', '4.0.3'), @@ -31,7 +34,9 @@ dependencies = [ ('Hypre', '2.15.1'), ] -configopts = '--LIBS="$LIBS -lrt" ' +# enabling --with-mpi4py seems to be totally broken, leads to make errors like: +# No rule to make target 'mpi4py-build' +configopts = '--LIBS="$LIBS -lrt" --with-mpi4py=0' # only required when building PETSc in a SLURM job environment # configopts += '--with-batch=1 --known-mpi-shared-libraries=1 --known-64-bit-blas-indices=0 ' diff --git a/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-foss-2019b.eb b/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-foss-2019b-Python-3.7.4.eb similarity index 83% rename from easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-foss-2019b.eb rename to easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-foss-2019b-Python-3.7.4.eb index 14e332f1217..6faa0c1d31f 100644 --- a/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-foss-2019b.eb +++ b/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-foss-2019b-Python-3.7.4.eb @@ -1,5 +1,6 @@ name = 'PETSc' version = '3.12.4' +versionsuffix = '-Python-%(pyver)s' homepage = 'https://www.mcs.anl.gov/petsc' description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the @@ -25,6 +26,8 @@ checksums = [ builddependencies = [('CMake', '3.15.3')] dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), ('Boost', '1.71.0'), ('METIS', '5.1.0'), ('SCOTCH', '6.0.9'), @@ -33,7 +36,9 @@ dependencies = [ ('Hypre', '2.18.2'), ] -configopts = '--LIBS="$LIBS -lrt" ' +# enabling --with-mpi4py seems to be totally broken, leads to make errors like: +# No rule to make target 'mpi4py-build' +configopts = '--LIBS="$LIBS -lrt" --with-mpi4py=0' shared_libs = 1 diff --git a/easybuild/easyconfigs/p/PETSc/PETSc-3.12.3-foss-2019b.eb b/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b-Python-2.7.16.eb similarity index 63% rename from easybuild/easyconfigs/p/PETSc/PETSc-3.12.3-foss-2019b.eb rename to easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b-Python-2.7.16.eb index 666b3c7797e..6f548efc53e 100644 --- a/easybuild/easyconfigs/p/PETSc/PETSc-3.12.3-foss-2019b.eb +++ b/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b-Python-2.7.16.eb @@ -1,35 +1,44 @@ name = 'PETSc' -version = '3.12.3' +version = '3.12.4' +versionsuffix = '-Python-%(pyver)s' homepage = 'https://www.mcs.anl.gov/petsc' description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.""" -toolchain = {'name': 'foss', 'version': '2019b'} +toolchain = {'name': 'intel', 'version': '2019b'} toolchainopts = {'usempi': True, 'pic': True} # https:// does not work here -source_urls = ['ftp://ftp.mcs.anl.gov/pub/petsc/release-snapshots'] +source_urls = [ + 'http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/', + 'ftp://ftp.mcs.anl.gov/pub/petsc/release-snapshots/', +] sources = [SOURCELOWER_TAR_GZ] patches = [ 'PETSc_ranlib-fix.patch', ] checksums = [ - '91f77d7b0f54056f085b9e27938922db3d9bb1734a2e2a6d26f43d3e6c0cf631', # petsc-3.12.3.tar.gz + '56a941130da93bbacb3cfa74dcacea1e3cd8e36a0341f9ced09977b1457084c3', # petsc-3.12.4.tar.gz '64cf9d5008d5e92117e65bdec5316d991b6a6b8c8ecf7ea46eb790a498266297', # PETSc_ranlib-fix.patch ] builddependencies = [('CMake', '3.15.3')] dependencies = [ + ('Python', '2.7.16'), + ('SciPy-bundle', '2019.10', versionsuffix), ('Boost', '1.71.0'), ('METIS', '5.1.0'), ('SCOTCH', '6.0.9'), + ('MUMPS', '5.2.1', '-metis'), ('SuiteSparse', '5.6.0', '-METIS-5.1.0'), ('Hypre', '2.18.2'), ] -configopts = '--LIBS="$LIBS -lrt" ' +# enabling --with-mpi4py seems to be totally broken, leads to make errors like: +# No rule to make target 'mpi4py-build' +configopts = '--LIBS="$LIBS -lrt" --with-mpi4py=0' shared_libs = 1 diff --git a/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b.eb b/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b-Python-3.7.4.eb similarity index 83% rename from easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b.eb rename to easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b-Python-3.7.4.eb index b510adefb97..043ad29170e 100644 --- a/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b.eb +++ b/easybuild/easyconfigs/p/PETSc/PETSc-3.12.4-intel-2019b-Python-3.7.4.eb @@ -1,5 +1,6 @@ name = 'PETSc' version = '3.12.4' +versionsuffix = '-Python-%(pyver)s' homepage = 'https://www.mcs.anl.gov/petsc' description = """PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the @@ -25,6 +26,8 @@ checksums = [ builddependencies = [('CMake', '3.15.3')] dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), ('Boost', '1.71.0'), ('METIS', '5.1.0'), ('SCOTCH', '6.0.9'), @@ -33,7 +36,9 @@ dependencies = [ ('Hypre', '2.18.2'), ] -configopts = '--LIBS="$LIBS -lrt" ' +# enabling --with-mpi4py seems to be totally broken, leads to make errors like: +# No rule to make target 'mpi4py-build' +configopts = '--LIBS="$LIBS -lrt" --with-mpi4py=0' shared_libs = 1 diff --git a/easybuild/easyconfigs/p/PMIx/PMIx-3.0.2-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/PMIx/PMIx-3.0.2-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..c429683f79e --- /dev/null +++ b/easybuild/easyconfigs/p/PMIx/PMIx-3.0.2-GCCcore-8.3.0.eb @@ -0,0 +1,47 @@ +# Note: +# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild +easyblock = 'ConfigureMake' + +name = 'PMIx' +version = '3.0.2' + +homepage = 'https://pmix.org/' +description = """Process Management for Exascale Environments +PMI Exascale (PMIx) represents an attempt to +provide an extended version of the PMI standard specifically designed +to support clusters up to and including exascale sizes. The overall +objective of the project is not to branch the existing pseudo-standard +definitions - in fact, PMIx fully supports both of the existing PMI-1 +and PMI-2 APIs - but rather to (a) augment and extend those APIs to +eliminate some current restrictions that impact scalability, and (b) +provide a reference implementation of the PMI-server that demonstrates +the desired level of scalability. +""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://github.com/pmix/pmix/releases/download/v%(version)s'] +sources = ['%(namelower)s-%(version)s.tar.bz2'] +checksums = ['df68f35a3ed9517eeade80b13855cebad8fde2772b36a3f6be87559b6d430670'] + +builddependencies = [('binutils', '2.32')] + +dependencies = [ + ('libevent', '2.1.11'), + ('zlib', '1.2.11'), + ('hwloc', '1.11.12'), +] + +configopts = ' --with-libevent=$EBROOTLIBEVENT --with-zlib=$EBROOTZLIB ' +configopts += ' --with-hwloc=$EBROOTHWLOC ' +configopts += ' --enable-pmix-binaries' + +buildopts = 'V=1' + +sanity_check_paths = { + 'files': ['bin/pevent', 'bin/plookup', 'bin/pmix_info', 'bin/pps'], + 'dirs': ['etc', 'include', 'lib', 'share'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/Pandoc/Pandoc-2.10.eb b/easybuild/easyconfigs/p/Pandoc/Pandoc-2.10.eb new file mode 100644 index 00000000000..27496ee01a0 --- /dev/null +++ b/easybuild/easyconfigs/p/Pandoc/Pandoc-2.10.eb @@ -0,0 +1,28 @@ +# 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 +# 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 = 'Tarball' + +name = 'Pandoc' +version = '2.10' + +homepage = 'https://pandoc.org' +description = "If you need to convert files from one markup format into another, pandoc is your swiss-army knife" + +toolchain = SYSTEM + +source_urls = ['https://github.com/jgm/pandoc/releases/download/%(version)s/'] +sources = ['%(namelower)s-%(version)s-linux-amd64.tar.gz'] +checksums = ['adc2f0355f3225cd9ea131e81c5c36c40ff92e2221920d45287f099d336f9cc6'] + +sanity_check_paths = { + 'files': ['bin/pandoc', 'bin/pandoc-citeproc'], + 'dirs': ['share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/Pango/Pango-1.44.7-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/Pango/Pango-1.44.7-GCCcore-9.3.0.eb index 747873f9e63..af783607817 100644 --- a/easybuild/easyconfigs/p/Pango/Pango-1.44.7-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/p/Pango/Pango-1.44.7-GCCcore-9.3.0.eb @@ -16,7 +16,7 @@ checksums = ['66a5b6cc13db73efed67b8e933584509f8ddb7b10a8a40c3850ca4a985ea1b1f'] builddependencies = [ ('binutils', '2.34'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ('GObject-Introspection', '1.64.0', '-Python-3.8.2'), ('pkg-config', '0.29.2'), diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-foss-2020a-Python-3.8.2-mpi.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-foss-2020a-Python-3.8.2-mpi.eb index 33f6391143f..8794875516f 100644 --- a/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-foss-2020a-Python-3.8.2-mpi.eb +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-foss-2020a-Python-3.8.2-mpi.eb @@ -35,9 +35,11 @@ builddependencies = [('CMake', '3.16.4')] separate_build_dir = True # Paraview -configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DBUILD_SHARED_LIBS=ON ' +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 @@ -45,8 +47,12 @@ configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include' configopts += '-DVTK_OPENGL_HAS_OSMESA=ON ' sanity_check_paths = { - 'files': ['bin/paraview'], - 'dirs': ['include/paraview-%(version_major_minor)s', 'lib'], + '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': ['lib64/python%(pyshortver)s/site-packages', 'lib/python%(pyshortver)s/site-packages']} + moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-intel-2020a-Python-3.8.2-mpi.eb b/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-intel-2020a-Python-3.8.2-mpi.eb index dc59b028095..6ef598d48c1 100644 --- a/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-intel-2020a-Python-3.8.2-mpi.eb +++ b/easybuild/easyconfigs/p/ParaView/ParaView-5.8.0-intel-2020a-Python-3.8.2-mpi.eb @@ -35,9 +35,11 @@ builddependencies = [('CMake', '3.16.4')] separate_build_dir = True # Paraview -configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DBUILD_SHARED_LIBS=ON ' +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 ' # There is a problem with intel compiler. It seems that -ipo triggers some bug, which results in a # messages like 'icpc: error #10014: problem during multi-file optimization compilation (code 4)'. @@ -50,8 +52,12 @@ configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include' configopts += '-DVTK_OPENGL_HAS_OSMESA=ON ' sanity_check_paths = { - 'files': ['bin/paraview'], - 'dirs': ['include/paraview-%(version_major_minor)s', 'lib'], + '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': ['lib64/python%(pyshortver)s/site-packages', 'lib/python%(pyshortver)s/site-packages']} + moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/ParmEd/ParmEd-3.2.0-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/p/ParmEd/ParmEd-3.2.0-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..0c3afb9fbc9 --- /dev/null +++ b/easybuild/easyconfigs/p/ParmEd/ParmEd-3.2.0-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonPackage' + +name = 'ParmEd' +version = '3.2.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://parmed.github.io/ParmEd' +description = """ParmEd is a general tool for aiding in investigations of biomolecular systems using popular + molecular simulation packages, like Amber, CHARMM, and OpenMM written in Python.""" + +toolchain = {'name': 'intel', 'version': '2020a'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['0c178994af736b16df3c8eaa9c54a0ac98425129c8f0228563acc094e7c6f40f'] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('OpenMM', '7.4.2', versionsuffix), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/parmed', 'bin/xparmed'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["parmed --help"] + +sanity_pip_check = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/p/PennCNV/PennCNV-1.0.5-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/PennCNV/PennCNV-1.0.5-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..f181ddc27ec --- /dev/null +++ b/easybuild/easyconfigs/p/PennCNV/PennCNV-1.0.5-GCCcore-8.3.0.eb @@ -0,0 +1,43 @@ +# Author: Adam Huffman - Big Data Institute, University of Oxford + +easyblock = 'MakeCp' + +name = 'PennCNV' +version = '1.0.5' + +homepage = 'https://penncnv.openbioinformatics.org/' +description = """A free software tool for Copy Number Variation (CNV) detection from SNP genotyping arrays. Currently + it can handle signal intensity data from Illumina and Affymetrix arrays. With appropriate preparation of file format, + it can also handle other types of SNP arrays and oligonucleotide arrays.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://github.com/WGLab/PennCNV/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['5afd31c4cd92802a1fdfb6eb8c3c70ba82a0292d99a14755ce2ba0630f294d1f'] + +builddependencies = [ + ('binutils', '2.32'), +] + +dependencies = [('Perl', '5.30.0')] + +# Extension is compiled for the local Perl installation, and then used by +# supplied scripts +start_dir = 'kext' + +files_to_copy = [ + 'affy', 'docs', 'example', 'extra', 'gc_file', 'kext', 'lib', + '*.pl', + 'README.md', + 'mkdocs.yml', +] + +sanity_check_paths = { + 'files': ['split_illumina_report.pl', 'detect_cnv.pl'], + 'dirs': [], +} + +modextrapaths = {'PATH': ''} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.30.0-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.30.0-GCCcore-8.3.0.eb index 27c45fdc4b2..7549b61ff0e 100644 --- a/easybuild/easyconfigs/p/Perl/Perl-5.30.0-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/p/Perl/Perl-5.30.0-GCCcore-8.3.0.eb @@ -1747,6 +1747,11 @@ exts_list = [ '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'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.30.2-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.30.2-GCCcore-9.3.0.eb index dd14e9bb10d..11dc18e301d 100644 --- a/easybuild/easyconfigs/p/Perl/Perl-5.30.2-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/p/Perl/Perl-5.30.2-GCCcore-9.3.0.eb @@ -1737,6 +1737,11 @@ exts_list = [ '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'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Perl/Perl-5.32.0-GCCcore-10.2.0.eb b/easybuild/easyconfigs/p/Perl/Perl-5.32.0-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..5ec6cca0e69 --- /dev/null +++ b/easybuild/easyconfigs/p/Perl/Perl-5.32.0-GCCcore-10.2.0.eb @@ -0,0 +1,1747 @@ +name = 'Perl' +version = '5.32.0' + +homepage = 'https://www.perl.org/' +description = """Larry Wall's Practical Extraction and Report Language""" + +toolchain = {'name': 'GCCcore', 'version': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://www.cpan.org/src/%(version_major)s.0'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['efeb1ce1f10824190ad1cadbcccf6fdb8a5d37007d0100d2d9ae5f2b5900c0b4'] + +builddependencies = [('binutils', '2.35')] + +dependencies = [ + ('zlib', '1.2.11'), # for Net::SSLeay + ('expat', '2.2.9'), # for XML::Parser + ('ncurses', '6.2'), # for Term::ReadLine::Gnu + ('libreadline', '8.0'), # for Term::ReadLine::Gnu +] + +# OpenSSL is required for Net::SSLeay +osdependencies = ['openssl', ('openssl-devel', 'libssl-dev', 'libopenssl-devel')] + +# !! order of extensions is important !! +# extensions updated on Aug 21st 2020 +exts_list = [ + ('Config::General', '2.63', { + 'source_tmpl': 'Config-General-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TL/TLINDEN'], + 'checksums': ['0a9bf977b8aabe76343e88095d2296c8a422410fd2a05a1901f2b20e2e1f6fad'], + }), + ('File::Listing', '6.04', { + 'source_tmpl': 'File-Listing-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['1e0050fcd6789a2179ec0db282bf1e90fb92be35d1171588bd9c47d52d959cf5'], + }), + ('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.42', { + 'source_tmpl': 'Test-Harness-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['0fd90d4efea82d6e262e6933759e85d27cbcfa4091b14bf4042ae20bab528e53'], + }), + ('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.030', { + 'source_tmpl': 'Test-Warnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['89a4947ddf1564ae01122275584433d7f6c4370370bcf3768922d796956ae24f'], + }), + ('File::ShareDir', '1.116', { + 'source_tmpl': 'File-ShareDir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['59d90bfdf98c4656ff4173e62954ea8cf0de66565e35d108ecd7050596cb8328'], + }), + ('File::ShareDir::Install', '0.13', { + 'source_tmpl': 'File-ShareDir-Install-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['45befdf0d95cbefe7c25a1daf293d85f780d6d2576146546e6828aad26e580f9'], + }), + ('DateTime::Locale', '1.26', { + 'source_tmpl': 'DateTime-Locale-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['1e43152a7ca4585a335958da0dd5e430b95a820f6de6456df26e7ec2a6649792'], + }), + ('DateTime::TimeZone', '2.39', { + 'source_tmpl': 'DateTime-TimeZone-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['65a49083bf465b42c6a65df575efaceb87b5ba5a997d4e91e6ddba57190c8fca'], + }), + ('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.30', { + 'source_tmpl': 'Try-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['da5bd0d5c903519bbf10bb9ba0cb7bcac0563882bcfe4503aee3fb143eddef6b'], + }), + ('Params::Validate', '1.29', { + 'source_tmpl': 'Params-Validate-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['49a68dfb430bea028042479111d19068e08095e5a467e320b7ab7bde3d729733'], + }), + ('List::MoreUtils', '0.428', { + 'source_tmpl': 'List-MoreUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['713e0945d5f16e62d81d5f3da2b6a7b14a4ce439f6d3a7de74df1fd166476cc2'], + }), + ('Exporter::Tiny', '1.002002', { + 'source_tmpl': 'Exporter-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TOBYINK'], + 'checksums': ['00f0b95716b18157132c6c118ded8ba31392563d19e490433e9a65382e707101'], + }), + ('Class::Singleton', '1.5', { + 'source_tmpl': 'Class-Singleton-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['38220d04f02e3a803193c2575a1644cce0b95ad4b95c19eb932b94e2647ef678'], + }), + ('DateTime', '1.52', { + 'source_tmpl': 'DateTime-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['67828b6172b23d9534b8f2a593b05caa6240737a3b2246f3e1fe4e015dbc3dfc'], + }), + ('File::Find::Rule::Perl', '1.15', { + 'source_tmpl': 'File-Find-Rule-Perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['9a48433f86e08ce18e03526e2982de52162eb909d19735460f07eefcaf463ea6'], + }), + ('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.31', { + 'source_tmpl': 'Tree-DAG_Node-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['1c8ba69772568b3758054247097512c550efe31517c329fb65eef7afccc9d304'], + }), + ('Template', '3.009', { + 'source_tmpl': 'Template-Toolkit-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AT/ATOOMIC'], + 'checksums': ['d6ad23bbf637a59b5dfd1ac006460dfcb185982e4852cde77150fbd085f1f5b6'], + }), + ('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.64', { + 'source_tmpl': 'DBD-SQLite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['f4ae8f7b50842305566aadd90f7bfd12a9e32b6c603a9b1c1529e73eb82aff01'], + }), + ('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.86', { + 'source_tmpl': 'Archive-Extract-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['9acd09cdb8e8cf0b6d08210a3b80342300c89a359855319bf6b00c14c4aab687'], + }), + ('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.302177', { + 'source_tmpl': 'Test-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['9fbf263096d893d7f8e0dcb0ea0dfe8d62b973b86e6360f43b54080bd2974554'], + }), + ('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.16', { + 'source_tmpl': 'Test-LeakTrace-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEEJO'], + 'checksums': ['5f089eed915f1ec8c743f6d2777c3ecd0ca01df2f7b9e10038d316952583e403'], + }), + ('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.17', { + 'source_tmpl': 'MIME-Types-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARKOV'], + 'checksums': ['e04ed7d42f1ff3150a303805f2689c28f80b92c511784d4641cb7f040d3e8ff6'], + }), + ('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.72', { + 'source_tmpl': 'HTML-Parser-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['ec28c7e1d9e67c45eca197077f7cdc41ead1bb4c538c7f02a3296a4bb92f608b'], + }), + ('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.07', { + 'source_tmpl': 'Params-Util-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AD/ADAMK'], + 'checksums': ['30f1ec3f2cf9ff66ae96f973333f23c5f558915bb6266881eac7423f52d7c76c'], + }), + ('IO::HTML', '1.001', { + 'source_tmpl': 'IO-HTML-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CJ/CJM'], + 'checksums': ['ea78d2d743794adc028bc9589538eb867174b4e165d7d8b5f63486e6b828e7e0'], + }), + ('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', '1.76', { + 'source_tmpl': 'URI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['b2c98e1d50d6f572483ee538a6f4ccc8d9185f91f0073fd8af7390898254413e'], + }), + ('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.88', { + 'source_tmpl': 'Net-SSLeay-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHRISN'], + 'checksums': ['2000da483c8471a0b61e06959e92a6fca7b9e40586d5c828de977d3d2081cfdd'], + }), + ('IO::Socket::SSL', '2.068', { + 'source_tmpl': 'IO-Socket-SSL-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SU/SULLR'], + 'checksums': ['4420fc0056f1827b4dd1245eacca0da56e2182b4ef6fc078f107dc43c3fb8ff9'], + }), + ('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.03', { + 'source_tmpl': 'DBIx-Admin-TableInfo-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['a852530f95957a43aa794f2edf5f3fe4ecec35bd20150c38136d4c23d85328b6'], + }), + ('Net::HTTP', '6.19', { + 'source_tmpl': 'Net-HTTP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['52b76ec13959522cae64d965f15da3d99dcb445eddd85d2ce4e4f4df385b2fc4'], + }), + ('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.36', { + 'source_tmpl': 'Test-Warn-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BIGJ'], + 'checksums': ['ecbca346d379cef8d3c0e4ac0c8eb3b2613d737ffaaeae52271c38d7bf3c6cda'], + }), + ('MRO::Compat', '0.13', { + 'source_tmpl': 'MRO-Compat-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['8a2c3b6ccc19328d5579d02a7d91285e2afd85d801f49d423a8eb16f323da4f8'], + }), + ('Moo', '2.004000', { + 'source_tmpl': 'Moo-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['323240d000394cf38ec42e865b05cb8928f625c82c9391cd2cdc72b33c51b834'], + }), + ('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', '1.87', { + 'source_tmpl': 'SQL-Abstract-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IL/ILMARI'], + 'checksums': ['e926a0a83da7efa18e57e5b2952a2ab3b7563a51733fc6dd5c89f12156481c4a'], + }), + ('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', '20200505.0', { + 'source_tmpl': 'IPC-Run-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['816ebf217fa0df99c583d73c0acc6ced78ac773787c664c75cbf140bb7e4c901'], + }), + ('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.58', { + 'source_tmpl': 'File-Remove-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['81f6ec83acab8ba042afe904334a26eb3a56c217bdb9981d237a89ab072fd0d8'], + }), + ('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.24', { + 'source_tmpl': 'Config-Tiny-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RS/RSAVAGE'], + 'checksums': ['1064948e4bc57e86e318dbc8791c53ca5b9d95b958cc474367c3277981135232'], + }), + ('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.67', { + 'source_tmpl': 'Test-Differences-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DC/DCANTRELL'], + 'checksums': ['c88dbbb48b934b069284874f33abbaaa438aa31204aa3fa73bfc2f4aeac878da'], + }), + ('HTTP::Tiny', '0.076', { + 'source_tmpl': 'HTTP-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['ddbdaa2fb511339fa621a80021bf1b9733fddafc4fe0245f26c8b92171ef9387'], + }), + ('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.9924', { + 'source_tmpl': 'version-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JP/JPEACOCK'], + 'checksums': ['81e4485ff3faf9b7813584d57b557f4b34e73b6c2eb696394f6deefacf5ca65b'], + }), + ('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.03', { + 'source_tmpl': 'Digest-HMAC-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['3bc72c6d3ff144d73aefb90e9a78d33612d58cf1cd1631ecfb8985ba96da4a59'], + }), + ('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.031', { + 'source_tmpl': 'MIME-Lite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['f1235866482b67f00858b3edaa4ff4cf909ef900f1d15d889948bf9c03a591e0'], + }), + ('Crypt::Rijndael', '1.14', { + 'source_tmpl': 'Crypt-Rijndael-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['6451c3dffe8703523be2bb08d1adca97e77df2a8a4dd46944d18a99330b7850e'], + }), + ('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.46', { + 'source_tmpl': 'Term-UI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['91946c80d7f4aab0ca4bfedc3bbe0a75b37cab1a29bd7bca3b3b7456d417e9a6'], + }), + ('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.0702', { + 'source_tmpl': 'Statistics-Descriptive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['f98a10c625640170cdda408cccc72bdd7f66f8ebe5f59dec1b96185171ef11d0'], + }), + ('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.47', { + 'source_tmpl': 'libwww-perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['3029d6efc2099c4175bf976d0db7fbab9771ada631010c809cb4664230898f53'], + }), + ('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.29', { + 'source_tmpl': 'Package-Stash-XS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['d3676ba94641e03d6a30e951f09266c4c3ca3f5b58aa7b314a67f28e419878aa'], + }), + ('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.04', { + 'source_tmpl': 'Test-NoWarnings-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AD/ADAMK'], + 'checksums': ['638a57658cb119af1fe5b15e73d47c2544dcfef84af0c6b1b2e97f08202b686c'], + }), + ('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.44', { + 'source_tmpl': 'XML-XPath-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['1cc9110705165dc09dd09974dd7c0b6709c9351d6b6b1cef5a711055f891dd0f'], + }), + ('JSON', '4.02', { + 'source_tmpl': 'JSON-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['444a88755a89ffa2a5424ab4ed1d11dca61808ebef57e81243424619a9e8627c'], + }), + ('Sub::Exporter', '0.987', { + 'source_tmpl': 'Sub-Exporter-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['543cb2e803ab913d44272c7da6a70bb62c19e467f3b12aaac4c9523259b083d6'], + }), + ('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.1903', { + 'source_tmpl': 'Algorithm-Diff-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TY/TYEMQ'], + 'checksums': ['30e84ac4b31d40b66293f7b1221331c5a50561a39d580d85004d9c1fff991751'], + }), + ('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.08', { + 'source_tmpl': 'Class-Data-Inheritable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TM/TMTM'], + 'checksums': ['9967feceea15227e442ec818723163eb6d73b8947e31f16ab806f6e2391af14a'], + }), + ('Text::Balanced', '2.03', { + 'source_tmpl': 'Text-Balanced-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['057753f8f0568b53921f66a60a89c30092b73329bcc61a2c43339ab70c9792c8'], + }), + ('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.23', { + 'source_tmpl': 'File-Which-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PL/PLICEASE'], + 'checksums': ['b79dc2244b2d97b6f27167fc3b7799ef61a179040f3abd76ce1e0a3b0bc4e078'], + }), + ('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.00', { + 'source_tmpl': 'Text-CSV-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IS/ISHIGAKI'], + 'checksums': ['8ccbd9195805222d995844114d0e595bb24ce188f85284dbf256080311cbb2c2'], + }), + ('Test::Output', '1.031', { + 'source_tmpl': 'Test-Output-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BD/BDFOY'], + 'checksums': ['f8b8f37185717872727d06f6c078fa77db794410faf2f6da4d37b0b7650f7ea4'], + }), + ('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.11', { + 'source_tmpl': 'List-UtilsBy-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['faddf43b4bc21db8e4c0e89a26e5f23fe626cde3491ec651b6aa338627f5775a'], + }), + ('List::AllUtils', '0.16', { + 'source_tmpl': 'List-AllUtils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['559b3aa911c73003a3a1ebd860d3b16e171137de8203d86be63a2390364c63dd'], + }), + ('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.44', { + 'source_tmpl': 'Exception-Class-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['33f3fbf8b138d3b04ea4ec0ba83fb0df6ba898806bcf4ef393d4cafc1a23ee0d'], + }), + ('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.25', { + 'source_tmpl': 'HTTP-Message-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['21f46502e87d57f43b7a38f81916464b079f5d50fe529458391c0ad529e0075a'], + }), + ('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.08', { + 'source_tmpl': 'HTTP-Cookies-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['49ebb73576eb41063c04bc079477df094496deec805ae033f3be338c23c3af59'], + }), + ('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'], + }), + ('Scalar::List::Utils', '1.55', { + 'modulename': 'List::Util', + 'source_tmpl': 'Scalar-List-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['4d2bdc1c72a7bc4d69d6a5cc85bc7566497c3b183c6175b832784329d58feb4b'], + }), + ('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'], + }), + ('HTTP::Daemon', '6.12', { + 'source_tmpl': 'HTTP-Daemon-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['df47bed10c38670c780fd0116867d5fd4693604acde31ba63380dce04c4e1fa6'], + }), + ('File::HomeDir', '1.004', { + 'source_tmpl': 'File-HomeDir-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['45f67e2bb5e60a7970d080e8f02079732e5a8dfc0c7c3cbdb29abfb3f9f791ad'], + }), + ('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.61', { + 'source_tmpl': 'Text-Format-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHLOMIF'], + 'checksums': ['bb8a3b8ff515c85101baf553a769337f944a05cde81f111ae78aff416bf4ae2b'], + }), + ('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'], + }), + ('Moose', '2.2013', { + 'source_tmpl': 'Moose-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['df74dc78088921178edf72d827017d6c92737c986659f2dadc533ae24675e77c'], + }), + ('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.412', { + 'source_tmpl': 'SQL-Statement-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RE/REHSACK'], + 'checksums': ['65c870883379c11b53f19ead10aaac241ccc86a90bbab77f6376fe750720e5c8'], + }), + ('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.38', { + 'source_tmpl': 'Package-Stash-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['c58ee8844df2dda38e3bf66fdf443439aaefaef1a33940edf2055f0afd223a7f'], + }), + ('Data::OptList', '0.110', { + 'source_tmpl': 'Data-OptList-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['366117cb2966473f2559f2f4575ff6ae69e84c69a0f30a0773e1b51a457ef5c3'], + }), + ('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.9908', { + 'source_tmpl': 'CPANPLUS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['58f6acb47d791ed8e30a6ebcc25089218bacad96e46da8e621a92b778c569dd4'], + }), + ('IO::Tty', '1.14', { + 'source_tmpl': 'IO-Tty-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['51f3e4e311128bdb2c6a15f02c51376cb852ccf9df9bebe8dfbb5f9561eb95b5'], + }), + ('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'], + }), + ('Text::Template', '1.59', { + 'source_tmpl': 'Text-Template-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MS/MSCHOUT'], + 'checksums': ['1dd2c788c05303ed9a970e1881109642151fa93e02c7a80d4c70608276bab1ee'], + }), + ('PDF::API2', '2.037', { + 'source_tmpl': 'PDF-API2-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SS/SSIMMS'], + 'checksums': ['142803d1886d2a2919d374fb6c25681630aa26740e3f8023337f996fa6c6297e'], + }), + ('Devel::CheckLib', '1.14', { + 'source_tmpl': 'Devel-CheckLib-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MATTN'], + 'checksums': ['f21c5e299ad3ce0fdc0cb0f41378dca85a70e8d6c9a7599f0e56a957200ec294'], + }), + ('SVG', '2.85', { + 'source_tmpl': 'SVG-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MANWAR'], + 'checksums': ['159ec81f3236175957c9a4e911cb0e3715dc5b658144c8a5418b772768a1477c'], + }), + ('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.50', { + 'source_tmpl': 'Log-Log4perl-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['0e3001207496dda5d92a98e43020bd55864513408740059f869eab3b401c8ed3'], + }), + ('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.17', { + 'source_tmpl': 'File-Path-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JK/JKEENAN'], + 'checksums': ['8c506dfd69a70fdd5f1212fe58fbc53620a89a8293e2ac6860570f868269fb31'], + }), + ('File::Slurper', '0.012', { + 'source_tmpl': 'File-Slurper-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['4efb2ea416b110a1bda6f8133549cc6ea3676402e3caf7529fce0313250aa578'], + }), + ('File::Temp', '0.2309', { + 'source_tmpl': 'File-Temp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['01b242a9888d155db981aa0a9891ce2c9e439f0e4bbff4dbf17ca4997be6235f'], + }), + ('Graph', '0.9704', { + 'source_tmpl': 'Graph-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/J/JH/JHI'], + 'checksums': ['325e8eb07be2d09a909e450c13d3a42dcb2a2e96cc3ac780fe4572a0d80b2a25'], + }), + ('Graph::ReadWrite', '2.09', { + 'source_tmpl': 'Graph-ReadWrite-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/N/NE/NEILB'], + 'checksums': ['b01ef06ce922eea12d5ce614d63ddc5f3ee7ad0d05f9577051d3f87a89799a4a'], + }), + ('PerlIO::utf8_strict', '0.007', { + 'source_tmpl': 'PerlIO-utf8_strict-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['83a33f2fe046cb3ad6afc80790635a423e2c7c6854afacc6998cd46951cc81cb'], + }), + ('Devel::OverloadInfo', '0.005', { + 'source_tmpl': 'Devel-OverloadInfo-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/I/IL/ILMARI'], + 'checksums': ['8bfde2ffa47c9946f8adc8cfc445c2f97b8d1cdd678111bee9f444e82f7aa6e7'], + }), + ('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.105', { + 'source_tmpl': 'Getopt-Long-Descriptive-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['a71cdbcf4043588b26a42a13d151c243f6eccf38e8fc0b18ffb5b53651ab8c15'], + }), + ('App::Cmd', '0.331', { + 'source_tmpl': 'App-Cmd-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['4a5d3df0006bd278880d01f4957aaa652a8f91fe8f66e93adf70fba0c3ecb680'], + }), + ('Path::Tiny', '0.114', { + 'source_tmpl': 'Path-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DAGOLDEN'], + 'checksums': ['cd0f88f37a58fc3667ec065767fe01e73ee6efa18a112bfd3508cf6579ca00e1'], + }), + ('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.100052', { + 'source_tmpl': 'Sub-Exporter-ForMethods-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['421fbba4f6ffcf13c4335f2c20630d709e6fa659c07545d094dbc5a558ad3006'], + }), + ('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'], + }), + ('B::Hooks::EndOfScope', '0.24', { + 'source_tmpl': 'B-Hooks-EndOfScope-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETHER'], + 'checksums': ['03aa3dfe5d0aa6471a96f43fe8318179d19794d4a640708f0288f9216ec7acc6'], + }), + ('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.001004', { + 'source_tmpl': 'Role-Tiny-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAARG'], + 'checksums': ['92ba5712850a74102c93c942eb6e7f62f7a4f8f483734ed289d08b324c281687'], + }), + ('Specio', '0.46', { + 'source_tmpl': 'Specio-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DR/DROLSKY'], + 'checksums': ['0bf42aa116076d6efc18f72b72c7acb5638bd41c0aa09aecc12fc8bf9ceb9596'], + }), + ('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.021', { + 'source_tmpl': 'Log-Dispatchouli-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['3aea437966c0a7986aa150704935f05328cad057178157fdc367a9e7cdf4df11'], + }), + ('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.103014', { + 'source_tmpl': 'Software-License-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/L/LE/LEONT'], + 'checksums': ['eb45ea602d75006683789fbba57a01c0a1f7037371de95ea54b91577535d1789'], + }), + ('MooseX::SetOnce', '0.200002', { + 'source_tmpl': 'MooseX-SetOnce-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['cbed06b7fcd353f0d99bf80a87c1c0b581160697231b3ad9a608da231ba2b659'], + }), + ('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.200011', { + 'source_tmpl': 'Config-MVP-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['23c95666fc43c4adaebcc093b1b56091efc2a6aa2d75366a216d18eda96ad716'], + }), + ('Throwable', '0.200013', { + 'source_tmpl': 'Throwable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['9987d0deb5bddd352a6330cefbe932f882e36dd8c8a4564bcfd372dc396b8fa0'], + }), + ('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.007', { + 'source_tmpl': 'Role-Identifiable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['561346d1a1a07a45bd851d859a825a7f67925a7a3ba5ba58e0cdad8bb99073ad'], + }), + ('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.005', { + 'source_tmpl': 'MooseX-OneArgNew-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['7e4fcf474ea6c4244f0885f1066729cfdc472fbd7190dd41b4b55bcd67c3103f'], + }), + ('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.108', { + 'source_tmpl': 'Mixin-Linewise-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['7df20678474c0973930a472b0c55e3f8e85b7790b68ab18ef618f9c453c8aef2'], + }), + ('Config::INI', '0.025', { + 'source_tmpl': 'Config-INI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['628bf76d5b91f89dde22d4813ec033026ebf71b772bb61ccda909da00c869732'], + }), + ('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.094001', { + 'source_tmpl': 'Pod-Eventual-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['be9fb8910b108e5d1a66f002b659ad22576e88d779b703dff9d15122c3f80834'], + }), + ('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.015', { + 'source_tmpl': 'Pod-Weaver-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['5af25b29a55783e495a9df5ef6293240e2c9ab02764613d79f1ed50b12dec5ae'], + }), + ('Dist::Zilla', '6.015', { + 'source_tmpl': 'Dist-Zilla-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RJ/RJBS'], + 'checksums': ['2288e5819f942c2f7051fae265b8e3084c3ce155d4f409751396784366ab891b'], + }), + ('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.23', { + 'source_tmpl': 'Data-Dump-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['af53b05ef1387b4cab4427e6789179283e4f0da8cf036e8db516ddb344512b65'], + }), + ('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.7044', { + 'source_tmpl': 'App-cpanminus-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MI/MIYAGAWA'], + 'checksums': ['9b60767fe40752ef7a9d3f13f19060a63389a5c23acc3e9827e19b75500f81f3'], + }), + ('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.36', { + 'source_tmpl': 'Term-ReadLine-Gnu-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HA/HAYASHI'], + 'checksums': ['9a08f7a4013c9b865541c10dbba1210779eb9128b961250b746d26702bab6925'], + }), + ('ExtUtils::MakeMaker', '7.46', { + 'source_tmpl': 'ExtUtils-MakeMaker-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['8f4a107565392d0f36c99c849a3bfe7126ba58148a4dca334c139add0dd0d328'], + }), + ('List::Util', '1.55', { + 'source_tmpl': 'Scalar-List-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['4d2bdc1c72a7bc4d69d6a5cc85bc7566497c3b183c6175b832784329d58feb4b'], + }), + ('Module::CoreList', '5.20200717', { + 'source_tmpl': 'Module-CoreList-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['a437388c1759f537704fcf5fa8c4bd23d8adc200d325b97fe531f5e9548c7b01'], + }), + ('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.280234', { + 'source_tmpl': 'ExtUtils-CBuilder-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AM/AMBS'], + 'checksums': ['d80095ea1f28b4908cbedacead63f61f762472bba898281449dad782deecf1c3'], + }), + ('Carp::Heavy', '1.50', { + 'source_tmpl': 'Carp-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['f5273b4e1a6d51b22996c48cb3a3cbc72fd456c4038f5c20b127e2d4bcbcebd9'], + }), + ('IO::Handle', '1.42', { + 'source_tmpl': 'IO-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['eec5cc33a6cddba8b5d2425b60752882add7e4d41b7431a0ea4dcd73cc1f8cca'], + }), + ('IO::Seekable', '1.42', { + 'source_tmpl': 'IO-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['eec5cc33a6cddba8b5d2425b60752882add7e4d41b7431a0ea4dcd73cc1f8cca'], + }), + ('Pod::Simple', '3.40', { + 'source_tmpl': 'Pod-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/K/KH/KHW'], + 'checksums': ['063a8cb9d8abd84fd64c3e9581addf96a6b0f77a2048a1846c3a6b14269a040d'], + }), + ('IO::File', '1.42', { + 'source_tmpl': 'IO-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['eec5cc33a6cddba8b5d2425b60752882add7e4d41b7431a0ea4dcd73cc1f8cca'], + }), + ('IO::Select', '1.42', { + 'source_tmpl': 'IO-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['eec5cc33a6cddba8b5d2425b60752882add7e4d41b7431a0ea4dcd73cc1f8cca'], + }), + ('IO::Socket', '1.42', { + 'source_tmpl': 'IO-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/T/TO/TODDR'], + 'checksums': ['eec5cc33a6cddba8b5d2425b60752882add7e4d41b7431a0ea4dcd73cc1f8cca'], + }), + ('Socket', '2.030', { + 'source_tmpl': 'Socket-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['2573571d0db6ab98b5472a371c4acb24fe53d890f920e43aab49a0eeabe6da67'], + }), + ('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.15', { + 'source_tmpl': 'Storable-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['fc3dad06cb2e6fc86a2f2abc5b5491d9da328ca3e6b6306559c224521db174da'], + }), + ('ExtUtils::ParseXS', '3.35', { + 'source_tmpl': 'ExtUtils-ParseXS-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SM/SMUELLER'], + 'checksums': ['41def0511278a2a8ba9afa25ccab45b0453f75e7fd774e8644b5f9a57cc4ee1c'], + }), + ('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', '20200520', { + 'source_tmpl': 'Mozilla-CA-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/A/AB/ABH'], + 'checksums': ['b3ca0002310bf24a16c0d5920bdea97a2f46e77e7be3e7377e850d033387c726'], + }), + ('Test::More', '1.302177', { + 'source_tmpl': 'Test-Simple-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/EX/EXODIST'], + 'checksums': ['9fbf263096d893d7f8e0dcb0ea0dfe8d62b973b86e6360f43b54080bd2974554'], + }), + ('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.09', { + 'source_tmpl': 'LWP-Protocol-https-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['16cfe1a511690b066db5667c8714802ee2b9c5d28a31a3e7bd36fbc70a3af592'], + }), + ('Module::Load', '0.34', { + 'source_tmpl': 'Module-Load-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['7f5b0c4d3cc8ba867639bff61ad857a940970ea246dd3b0a6729dd7fc84059f3'], + }), + ('Module::Load::Conditional', '0.72', { + 'source_tmpl': 'Module-Load-Conditional-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/B/BI/BINGOS'], + 'checksums': ['36938936c501aa708aa17b12a67c2fb7157e88a2e3ec03da5fcf59069f654e5b'], + }), + ('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.11', { + 'source_tmpl': 'libnet-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/S/SH/SHAY'], + 'checksums': ['2fab1e4d6e565c77f6e845368790de65cb2f966fcd9bb56a41d0e7b5851a52d3'], + }), + ('Scalar::Util', '1.55', { + 'source_tmpl': 'Scalar-List-Utils-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/P/PE/PEVANS'], + 'checksums': ['4d2bdc1c72a7bc4d69d6a5cc85bc7566497c3b183c6175b832784329d58feb4b'], + }), + ('Text::ParseWords', '3.30', { + 'source_tmpl': 'Text-ParseWords-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/C/CH/CHORNY'], + 'checksums': ['85e0238179dd43997e58c66bd51611182bc7d533505029a2db0d3232edaff5e8'], + }), + ('Encode', '3.07', { + 'source_tmpl': 'Encode-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/D/DA/DANKOGAI'], + 'checksums': ['34a4ec9b574b7a6c6132c4ab3ded490fd600bc7ce382124aeda58bb1e112910f'], + }), + ('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.173', { + 'source_tmpl': 'Data-Dumper-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/X/XS/XSAWYERX'], + 'checksums': ['697608b39330988e519131be667ff47168aaaaf99f06bd2095d5b46ad05d76fa'], + }), + ('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.15', { + 'source_tmpl': 'MIME-Base64-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/G/GA/GAAS'], + 'checksums': ['7f863566a6a9cb93eda93beadb77d9aa04b9304d769cea3bb921b9a91b3a1eb9'], + }), + ('ExtUtils::CppGuess', '0.21', { + 'source_tmpl': 'ExtUtils-CppGuess-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/E/ET/ETJ'], + 'checksums': ['ff629178321a1e591b83f809712593eae4408a413aa448654bce59b156f24153'], + }), + ('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', '1.76', { + 'source_tmpl': 'URI-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/O/OA/OALDERS'], + 'checksums': ['b2c98e1d50d6f572483ee538a6f4ccc8d9185f91f0073fd8af7390898254413e'], + }), + ('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.874', { + 'source_tmpl': 'MCE-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/M/MA/MARIOROY'], + 'checksums': ['d809e3018475115ad7eccb8bef49bde3bf3e75abbbcd80564728bbcfab86d3d0'], + }), + ('Text::CSV_XS', '1.44', { + 'source_tmpl': 'Text-CSV_XS-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HM/HMBRAND'], + 'checksums': ['c4812ddca8e2654736c44bc2ce60b27a428a1bc4d5364b0ed1fad3609c8f9bc4'], + }), + ('DBD::CSV', '0.55', { + 'source_tmpl': 'DBD-CSV-%(version)s.tgz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/H/HM/HMBRAND'], + 'checksums': ['4670028e46df9a3c2791740445e8a4c82840b6667cee5dd796bc5a6ad9266ddb'], + }), + ('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'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/PlasmaPy/PlasmaPy-0.3.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/p/PlasmaPy/PlasmaPy-0.3.1-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..da10ab98a5f --- /dev/null +++ b/easybuild/easyconfigs/p/PlasmaPy/PlasmaPy-0.3.1-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,54 @@ +easyblock = 'PythonBundle' + +name = 'PlasmaPy' +version = '0.3.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.plasmapy.org' +description = """Open source Python ecosystem for plasma research and education""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('h5py', '2.10.0', versionsuffix), + ('matplotlib', '3.2.1', versionsuffix), + ('mpmath', '1.1.0', versionsuffix), + ('astropy', '4.0.1', versionsuffix), + ('pybind11', '2.4.3', versionsuffix), + ('SciPy-bundle', '2020.03', versionsuffix), +] + +use_pip = True + +sanity_pip_check = True + +exts_list = [ + ('colorama', '0.4.3', { + 'source_urls': ['https://pypi.python.org/packages/source/c/colorama/'], + 'checksums': ['e96da0d330793e2cb9485e9ddfd918d456036c7149416295932478192f4436a1'], + }), + ('uncertainties', '3.1.2', { + 'source_urls': ['https://pypi.python.org/packages/source/u/uncertainties/'], + 'checksums': ['ba07c17a8a78cb58a47cd373079c7ea459f8b26cd474e29163b6ba0d72856a1e'], + }), + ('asteval', '0.9.18', { + 'source_urls': ['https://pypi.python.org/packages/source/a/asteval/'], + 'checksums': ['5d64e18b8a72c2c7ae8f9b70d1f80b68bbcaa98c1c0d7047c35489d03209bc86'], + }), + ('lmfit', '1.0.1', { + 'source_urls': ['https://pypi.python.org/packages/source/l/lmfit/'], + 'checksums': ['d249eb756899360f4d2a544c9458f47fc8f765ac22c09e099530585fd64e286e'], + }), + ('plasmapy', version, { + 'source_urls': ['https://pypi.python.org/packages/source/P/plasmapy/'], + 'checksums': ['d2af2dd4de77797c5d26e2ae2ca894619f18c117f61aba5ffcb8e3eaff319fed'], + }), +] + +sanity_check_paths = { + 'files': ['lib/python%(pyshortver)s/site-packages/plasmapy/README.md'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'phys' diff --git a/easybuild/easyconfigs/p/Portcullis/Portcullis-1.2.2-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/Portcullis/Portcullis-1.2.2-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..d4b9c03b4c1 --- /dev/null +++ b/easybuild/easyconfigs/p/Portcullis/Portcullis-1.2.2-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,91 @@ +easyblock = 'Bundle' + +name = 'Portcullis' +version = '1.2.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = "https://github.com/maplesond/portcullis" +description = """Portcullis stands for PORTable CULLing of Invalid Splice junctions from +pre-aligned RNA-seq data. It is known that RNAseq mapping tools generate many +invalid junction predictions, particularly in deep datasets with high coverage +over splice sites. In order to address this, instead for creating a new RNAseq +mapper, with a focus on SJ accuracy we created a tool that takes in a BAM file +generated by an RNAseq mapper of the user's own choice (e.g. Tophat2, Gsnap, +STAR2 or HISAT2) as input (i.e. it's portable). It then, analyses and quantifies +all splice junctions in the file before, filtering (culling) those which are +unlikely to be genuine. Portcullis output's junctions in a variety of formats +making it suitable for downstream analysis (such as differential splicing +analysis and gene modelling) without additional work. Portcullis can also filter +the original BAM file removing alignments associated with bad junctions.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +builddependencies = [ + ('Autotools', '20180311'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('matplotlib', '3.1.1', versionsuffix), + ('Boost', '1.71.0'), + ('SAMtools', '1.10'), + ('zlib', '1.2.11'), +] + +# 1.2.2.tar.gz +local_source_chksum = 'b5788bd257dfabd454716e3425136f9350c0eb3654d4768db0ea21b45a1479ef' +# Portcullis-1.2.2_fix-datadir-path.patch +local_patch_chksum = 'ad318978e2cba236b1e19fee8318c81499a874a4d714a314f5072742ca12cfaa' + +# Explicitly set the names of Boost libraries from EB +local_config_boostlibs = "--with-boost-system=boost_system --with-boost-filesystem=boost_filesystem " +local_config_boostlibs += "--with-boost-chrono=boost_chrono --with-boost-program-options=boost_program_options " + +# Disable installation of Python packages from makefiles, as those are installed by EB +local_config_pyinstall = "--disable-py-install " + +github_account = 'maplesond' + +default_component_specs = { + 'source_urls': [GITHUB_LOWER_SOURCE], + 'sources': ['%(version)s.tar.gz'], + 'checksums': [local_source_chksum], +} + +components = [ + (name, version, { + 'easyblock': 'ConfigureMake', + 'patches': ['Portcullis-1.2.2_fix-datadir-path.patch'], + 'checksums': [local_source_chksum, local_patch_chksum], + 'start_dir': '%(namelower)s-%(version)s', + 'preconfigopts': './autogen.sh &&', + 'configopts': local_config_boostlibs + local_config_pyinstall, + 'runtest': 'check', + }), + ('junctools', version, { + 'easyblock': 'PythonPackage', + 'start_dir': 'portcullis-%(version)s/scripts/%(name)s', + }), + ('portcullis-python', version, { + 'easyblock': 'PythonPackage', + 'start_dir': 'portcullis-%(version)s/scripts/portcullis', + 'options': {'modulename': 'portcullis'}, + }), +] + +sanity_check_paths = { + 'files': ['bin/portcullis', 'bin/portcullis_rule_filter', 'bin/junctools', 'lib/libportcullis.a'], + 'dirs': ['include', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages', 'share/portcullis'], +} + +sanity_check_commands = [ + "portcullis --version", + "python -c 'import junctools'", + "python -c 'import portcullis'", +] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +moduleclass = "bio" diff --git a/easybuild/easyconfigs/p/Portcullis/Portcullis-1.2.2_fix-datadir-path.patch b/easybuild/easyconfigs/p/Portcullis/Portcullis-1.2.2_fix-datadir-path.patch new file mode 100644 index 00000000000..360c819630c --- /dev/null +++ b/easybuild/easyconfigs/p/Portcullis/Portcullis-1.2.2_fix-datadir-path.patch @@ -0,0 +1,19 @@ +Use the absolute path of dataDir provided by the system +author: Alex Domingo (Vrije Universiteit Brussel) +--- lib/include/portcullis/portcullis_fs.hpp.orig 2020-07-07 10:15:46.026229000 +0200 ++++ lib/include/portcullis/portcullis_fs.hpp 2020-07-07 10:18:06.614475000 +0200 +@@ -130,13 +130,7 @@ + // forward as it may seem because we might have installed to a alternate root. So wind back the + // exec_prefix to get to root (or alternate root) directory. + path ep(EXECPREFIX); +- path root = ep; +- path altroot = exe_dir.parent_path(); +- while (root.has_parent_path()) { +- root = root.parent_path(); +- altroot = altroot.parent_path(); +- } +- this->dataDir = altroot / customDataDir / "portcullis"; ++ this->dataDir = customDataDir / "portcullis"; + this->scriptsDir = this->dataDir / "scripts"; + } + else if (exe_dir.stem().string() == "src") { diff --git a/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-12.4-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-12.4-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..0279d32b6eb --- /dev/null +++ b/easybuild/easyconfigs/p/PostgreSQL/PostgreSQL-12.4-GCCcore-9.3.0.eb @@ -0,0 +1,50 @@ +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'ConfigureMake' + +name = 'PostgreSQL' +version = '12.4' + +homepage = 'https://www.postgresql.org/' +description = """PostgreSQL is a powerful, open source object-relational database system. + It is fully ACID compliant, has full support for foreign keys, + joins, views, triggers, and stored procedures (in multiple languages). + It includes most SQL:2008 data types, including INTEGER, + NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. + It also supports storage of binary large objects, including pictures, + sounds, or video. It has native programming interfaces for C/C++, Java, + .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['http://ftp.postgresql.org/pub/source/v%(version)s/'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['9749b891b9d8f984312fe510a7a3613035134cee1e634793dac5568d1e1a5852'] + +builddependencies = [ + ('binutils', '2.34'), + ('Bison', '3.5.3'), + ('flex', '2.6.4'), + ('Perl', '5.30.2'), + ('Python', '3.8.2'), +] + +dependencies = [ + ('libreadline', '8.0'), + ('zlib', '1.2.11'), + # OS dependency should be preferred if the os version is more recent then this version, + # it's nice to have an up to date openssl for security reasons + # ('OpenSSL', '1.0.2h'), +] + +osdependencies = [('openssl-devel', 'libssl-dev', 'libopenssl-devel')] + +configopts = '--with-python --with-openssl' + +sanity_check_paths = { + 'files': ['bin/psql', 'bin/pg_config', 'lib/libpq.a', 'lib/libpq.%s' % SHLIB_EXT], + 'dirs': ['share/postgresql'], +} + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2019.1.2-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2019.1.2-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..e6bbca90ce0 --- /dev/null +++ b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2019.1.2-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,43 @@ +easyblock = 'PythonBundle' + +name = 'PyCUDA' +version = '2019.1.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://mathema.tician.de/software/pycuda' +description = """PyCUDA lets you access Nvidia’s CUDA parallel computation API from Python.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('Boost.Python', '1.71.0'), + ('Mako', '1.1.0'), +] + +local_prebuildopts = "./configure.py --cuda-root=$EBROOTCUDA --boost-inc-dir=$EBROOTBOOST/include/boost/ " +local_prebuildopts += "--boost-lib-dir=$EBROOTBOOST/lib/ --no-use-shipped-boost " +local_prebuildopts += "--boost-python-libname=boost_python37 && " + +use_pip = True +sanity_pip_check = True + +exts_default_options = { + 'source_urls': [PYPI_LOWER_SOURCE], + 'source_tmpl': SOURCELOWER_TAR_GZ, +} + +exts_list = [ + ('appdirs', '1.4.3', { + 'checksums': ['9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92'], + }), + ('pytools', '2020.1', { + 'checksums': ['c132d17855584ad61c6e00f3ff11146499755944afc400cce9eae0ecf03d04a6'], + }), + (name, version, { + 'prebuildopts': local_prebuildopts, + 'use_pip': False, + 'checksums': ['ada56ce98a41f9f95fe18809f38afbae473a5c62d346cfa126a2d5477f24cc8a'], + }), +] diff --git a/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2019.1.2-intelcuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2019.1.2-intelcuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..09b74049425 --- /dev/null +++ b/easybuild/easyconfigs/p/PyCUDA/PyCUDA-2019.1.2-intelcuda-2019b-Python-3.7.4.eb @@ -0,0 +1,45 @@ +easyblock = 'PythonBundle' + +name = 'PyCUDA' +version = '2019.1.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://mathema.tician.de/software/pycuda' +description = """PyCUDA lets you access Nvidia’s CUDA parallel computation API from Python.""" + +toolchain = {'name': 'intelcuda', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('Boost.Python', '1.71.0'), + ('Mako', '1.1.0'), +] + +local_prebuildopts = "./configure.py --cuda-root=$EBROOTCUDA --boost-inc-dir=$EBROOTBOOST/include/boost/ " +local_prebuildopts += "--boost-lib-dir=$EBROOTBOOST/lib/ --no-use-shipped-boost " +local_prebuildopts += "--boost-python-libname=boost_python37 && " + +use_pip = True +sanity_pip_check = True + +exts_default_options = { + 'source_urls': [PYPI_LOWER_SOURCE], + 'source_tmpl': SOURCELOWER_TAR_GZ, +} + +exts_list = [ + ('appdirs', '1.4.3', { + 'checksums': ['9e5896d1372858f8dd3344faf4e5014d21849c756c8d5701f78f8a103b372d92'], + }), + ('pytools', '2020.1', { + 'checksums': ['c132d17855584ad61c6e00f3ff11146499755944afc400cce9eae0ecf03d04a6'], + }), + (name, version, { + 'prebuildopts': local_prebuildopts, + 'use_pip': False, + 'checksums': ['ada56ce98a41f9f95fe18809f38afbae473a5c62d346cfa126a2d5477f24cc8a'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/PyFR/PyFR-1.9.0-intelcuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyFR/PyFR-1.9.0-intelcuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..13e853f147f --- /dev/null +++ b/easybuild/easyconfigs/p/PyFR/PyFR-1.9.0-intelcuda-2019b-Python-3.7.4.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'PyFR' +version = '1.9.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'http://www.pyfr.org' + +description = """PyFR is an open-source Python based framework for solving +advection-diffusion type problems on streaming architectures using the Flux +Reconstruction approach of Huynh. The framework is designed to solve a range of +governing systems on mixed unstructured grids containing various element types. +It is also designed to target a range of hardware platforms via use of an +in-built domain specific language derived from the Mako templating engine.""" + +toolchain = {'name': 'intelcuda', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('PyCUDA', '2019.1.2', versionsuffix), + ('h5py', '2.10.0', versionsuffix), + ('Mako', '1.1.0'), + ('METIS', '5.1.0'), + ('SCOTCH', '6.0.9'), + ('CGNS', '4.1.0'), +] + +use_pip = True +sanity_pip_check = True + +exts_list = [ + ('gimmik', '2.1', { + 'source_urls': ['https://pypi.python.org/packages/source/%(nameletterlower)s/%(namelower)s'], + 'checksums': ['36ec13aff705e787b856ae236211d1826ceaa4b22d52d4d98ff72642bb4021a3'], + }), + (name, version, { + 'source_tmpl': '%(name)s-%(version)s.zip', + 'source_urls': ['http://www.pyfr.org/download'], + 'checksums': ['032cff5e21e708f2b0e157aa4eabf6dfe1bd1c615cd92e62fa4a75a5453ff7d1'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pyfr'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/PyGEOS/PyGEOS-0.7.1-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyGEOS/PyGEOS-0.7.1-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..dc4f2c39891 --- /dev/null +++ b/easybuild/easyconfigs/p/PyGEOS/PyGEOS-0.7.1-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,29 @@ +# This easyconfig was created by the BEAR Software team at the University of Birmingham. +easyblock = 'PythonPackage' + +name = 'PyGEOS' +version = '0.7.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = "https://pygeos.readthedocs.io" +description = """PyGEOS is a C/Python library with vectorized geometry functions. The geometry operations are done in + the open-source geometry library GEOS. PyGEOS wraps these operations in NumPy ufuncs providing a performance + improvement when operating on arrays of geometries.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['d2d549f2ffba5ed29cdf499f7e6b390603f964021892c94e567810c5ee3296a1'] + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('GEOS', '3.8.0', versionsuffix), +] + +sanity_pip_check = True +use_pip = True +download_dep_fail = True + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-ImageExporter.patch b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-ImageExporter.patch new file mode 100644 index 00000000000..b659de2660e --- /dev/null +++ b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-ImageExporter.patch @@ -0,0 +1,19 @@ +# Ensure integer size of exported images. See https://github.com/pyqtgraph/pyqtgraph/pull/356 +# authors: D.Penko, S.D.Pinches, 2019 +diff -Nru pyqtgraph-0.10.0-orig/pyqtgraph/exporters/ImageExporter.py pyqtgraph-0.10.0/pyqtgraph/exporters/ImageExporter.py +--- pyqtgraph-0.10.0-orig/pyqtgraph/exporters/ImageExporter.py 2016-10-17 18:22:41.000000000 +0200 ++++ pyqtgraph-0.10.0/pyqtgraph/exporters/ImageExporter.py 2020-06-24 10:50:36.544574000 +0200 +@@ -64,10 +64,11 @@ + + #self.png = QtGui.QImage(targetRect.size(), QtGui.QImage.Format_ARGB32) + #self.png.fill(pyqtgraph.mkColor(self.params['background'])) +- w, h = self.params['width'], self.params['height'] ++ w = int(self.params['width']) ++ h = int(self.params['height']) + if w == 0 or h == 0: + raise Exception("Cannot export image with size=0 (requested export size is %dx%d)" % (w,h)) +- bg = np.empty((self.params['width'], self.params['height'], 4), dtype=np.ubyte) ++ bg = np.empty((h, w, 4), dtype=np.ubyte) + color = self.params['background'] + bg[:,:,0] = color.blue() + bg[:,:,1] = color.green() diff --git a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-foss-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-foss-2018b-Python-3.6.6.eb index 3bb53dda7b3..ac89fa385e9 100644 --- a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-foss-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-foss-2018b-Python-3.6.6.eb @@ -13,7 +13,11 @@ toolchainopts = {'pic': True} source_urls = ['http://www.pyqtgraph.org/downloads/%(version)s'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc'] +patches = ['%(name)s-%(version)s-ImageExporter.patch'] +checksums = [ + 'c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc', # pyqtgraph-0.10.0.tar.gz + '2af5fb03829b1a614267a5f846055e86208fe4fd9ce6333916e232b731e42737', # PyQtGraph-0.10.0-ImageExporter.patch +] dependencies = [ ('Python', '3.6.6'), @@ -24,9 +28,4 @@ use_pip = True download_dep_fail = True sanity_pip_check = True -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} - moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018a-Python-3.6.4.eb b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018a-Python-3.6.4.eb index 9ef7f652bcb..c9f37a391a6 100644 --- a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018a-Python-3.6.4.eb +++ b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018a-Python-3.6.4.eb @@ -13,7 +13,11 @@ toolchainopts = {'pic': True} source_urls = ['http://www.pyqtgraph.org/downloads/%(version)s'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc'] +patches = ['%(name)s-%(version)s-ImageExporter.patch'] +checksums = [ + 'c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc', # pyqtgraph-0.10.0.tar.gz + '2af5fb03829b1a614267a5f846055e86208fe4fd9ce6333916e232b731e42737', # PyQtGraph-0.10.0-ImageExporter.patch +] dependencies = [ ('Python', '3.6.4'), @@ -22,10 +26,6 @@ dependencies = [ use_pip = True download_dep_fail = True - -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +sanity_pip_check = True moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018b-Python-3.6.6.eb b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018b-Python-3.6.6.eb index 1999629ab8e..272778ce5d3 100644 --- a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018b-Python-3.6.6.eb +++ b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2018b-Python-3.6.6.eb @@ -13,7 +13,11 @@ toolchainopts = {'pic': True} source_urls = ['http://www.pyqtgraph.org/downloads/%(version)s'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc'] +patches = ['%(name)s-%(version)s-ImageExporter.patch'] +checksums = [ + 'c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc', # pyqtgraph-0.10.0.tar.gz + '2af5fb03829b1a614267a5f846055e86208fe4fd9ce6333916e232b731e42737', # PyQtGraph-0.10.0-ImageExporter.patch +] dependencies = [ ('Python', '3.6.6'), @@ -24,9 +28,4 @@ use_pip = True download_dep_fail = True sanity_pip_check = True -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} - moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2019a-Python-3.7.2.eb index d3d1d417ab2..cda824c73a4 100644 --- a/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/p/PyQtGraph/PyQtGraph-0.10.0-intel-2019a-Python-3.7.2.eb @@ -12,7 +12,11 @@ toolchainopts = {'pic': True} source_urls = ['http://www.pyqtgraph.org/downloads/%(version)s'] sources = [SOURCELOWER_TAR_GZ] -checksums = ['c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc'] +patches = ['%(name)s-%(version)s-ImageExporter.patch'] +checksums = [ + 'c74597dd87c31987099bd0949a5207e5d58297bd8a663279562ca1cb334074fc', # pyqtgraph-0.10.0.tar.gz + '2af5fb03829b1a614267a5f846055e86208fe4fd9ce6333916e232b731e42737', # PyQtGraph-0.10.0-ImageExporter.patch +] dependencies = [ ('Python', '3.7.2'), @@ -22,10 +26,6 @@ dependencies = [ use_pip = True download_dep_fail = True - -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages/'], -} +sanity_pip_check = True moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-foss-2019b-Python-3.7.4.eb index 01bf72f4e27..a489a683718 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-foss-2019b-Python-3.7.4.eb @@ -12,7 +12,6 @@ toolchain = {'name': 'foss', 'version': '2019b'} local_pytorchthirdpartydir = 'pytorch-%(version)s/third_party' local_extract_cmd_pattern = 'tar -C %s/%s --strip-components=1 -xf %%s' -local_mkdir_and_extract_cmd_pattern = "DIR=%s/%s; mkdir -p $DIR; tar -C $DIR --strip-components=1 -xzf %%s" source_urls = ['https://github.com/pytorch/pytorch/archive'] @@ -138,20 +137,19 @@ sources = [ 'source_urls': ['https://github.com/asmjit/asmjit/archive'], 'download_filename': '4da474ac9aa2689e88d5e40a2f37628f302d7e3c.tar.gz', 'filename': 'asmjit-20190814.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), }, { 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], 'download_filename': 'd5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz', 'filename': 'cpuinfo-20190201.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), }, { 'source_urls': ['https://github.com/google/googletest/archive'], 'download_filename': '0fc5466dbb9e623029b1ada539717d10bd45e99e.tar.gz', 'filename': 'googletest-20180920.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, - 'fbgemm/third_party/googletest'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/googletest'), }, { 'source_urls': ['https://github.com/google/benchmark/archive'], @@ -207,14 +205,6 @@ sources = [ 'filename': 'mkl-dnn-20190905.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep/mkl-dnn'), }, - # mkl-dnn requires Intel MKL, so download minimal Intel MKL version - # actually using imkl as a dependency would be messy due to underlying icc/ifort compilers & impi MPI lib - { - 'source_urls': ['https://github.com/intel/mkl-dnn/releases/download/v0.21'], - 'filename': 'mklml_lnx_2019.0.5.20190502.tgz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % - (local_pytorchthirdpartydir, 'ideep/mkl-dnn/external/mklml_lnx_2019.0.5.20190502'), - }, ] patches = [ '%(name)s-1.2.0_fix-findAVX.patch', @@ -256,7 +246,6 @@ checksums = [ 'be111cf161b587812fa3b106fe550efb6f129b8b0b702fef32fac23af9580e5e'), # tbb-20181009.tar.gz ('d16c64ab2ce654f0a21e51f933ae9ee480a8873717d0bd10e0f2a2f658a7095b', 'bf096e6b3f17925ebe7802e0fa7dcc246319210b6ea3645b3ed52899a474fafc'), # mkl-dnn-20190905.tar.gz - 'a936d6b277a33d2a027a024ea8e65df62bd2e162c7ca52c48486ed9d5dc27160', # mklml_lnx_2019.0.5.20190502.tgz '001c9bf604aebe4b39ccad15332a71130b07b780c539ceca84d6c64cd6fc8a68', # PyTorch-1.2.0_fix-findAVX.patch 'c4183bcb29a8bcbadea0341e93a3a32afdf860aa31331b768e787d899183da92', # PyTorch-1.2.0_disable-tests-ppc64le.patch '1337647ff64a1208d1e401fc84052d0bc6174b133cec2f3521319cb593f524fa', # PyTorch-1.3.1_fix-missing-sleef_h.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-fosscuda-2019b-Python-3.7.4.eb index 574519e0ff6..17abffb792a 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.3.1-fosscuda-2019b-Python-3.7.4.eb @@ -12,7 +12,6 @@ toolchain = {'name': 'fosscuda', 'version': '2019b'} local_pytorchthirdpartydir = 'pytorch-%(version)s/third_party' local_extract_cmd_pattern = 'tar -C %s/%s --strip-components=1 -xf %%s' -local_mkdir_and_extract_cmd_pattern = "DIR=%s/%s; mkdir -p $DIR; tar -C $DIR --strip-components=1 -xzf %%s" source_urls = ['https://github.com/pytorch/pytorch/archive'] @@ -138,20 +137,19 @@ sources = [ 'source_urls': ['https://github.com/asmjit/asmjit/archive'], 'download_filename': '4da474ac9aa2689e88d5e40a2f37628f302d7e3c.tar.gz', 'filename': 'asmjit-20190814.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), }, { 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], 'download_filename': 'd5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz', 'filename': 'cpuinfo-20190201.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), }, { 'source_urls': ['https://github.com/google/googletest/archive'], 'download_filename': '0fc5466dbb9e623029b1ada539717d10bd45e99e.tar.gz', 'filename': 'googletest-20180920.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, - 'fbgemm/third_party/googletest'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/googletest'), }, { 'source_urls': ['https://github.com/google/benchmark/archive'], @@ -201,14 +199,6 @@ sources = [ 'filename': 'mkl-dnn-20190905.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep/mkl-dnn'), }, - # mkl-dnn requires Intel MKL, so download minimal Intel MKL version - # actually using imkl as a dependency would be messy due to underlying icc/ifort compilers & impi MPI lib - { - 'source_urls': ['https://github.com/intel/mkl-dnn/releases/download/v0.21'], - 'filename': 'mklml_lnx_2019.0.5.20190502.tgz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % - (local_pytorchthirdpartydir, 'ideep/mkl-dnn/external/mklml_lnx_2019.0.5.20190502'), - }, ] patches = [ '%(name)s-1.2.0_fix-findAVX.patch', @@ -249,7 +239,6 @@ checksums = [ 'be111cf161b587812fa3b106fe550efb6f129b8b0b702fef32fac23af9580e5e'), # tbb-20181009.tar.gz ('d16c64ab2ce654f0a21e51f933ae9ee480a8873717d0bd10e0f2a2f658a7095b', 'bf096e6b3f17925ebe7802e0fa7dcc246319210b6ea3645b3ed52899a474fafc'), # mkl-dnn-20190905.tar.gz - 'a936d6b277a33d2a027a024ea8e65df62bd2e162c7ca52c48486ed9d5dc27160', # mklml_lnx_2019.0.5.20190502.tgz '001c9bf604aebe4b39ccad15332a71130b07b780c539ceca84d6c64cd6fc8a68', # PyTorch-1.2.0_fix-findAVX.patch 'c4183bcb29a8bcbadea0341e93a3a32afdf860aa31331b768e787d899183da92', # PyTorch-1.2.0_disable-tests-ppc64le.patch '1337647ff64a1208d1e401fc84052d0bc6174b133cec2f3521319cb593f524fa', # PyTorch-1.3.1_fix-missing-sleef_h.patch diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-foss-2019b-Python-3.7.4.eb index 54204b42b4e..d93204ddd9d 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-foss-2019b-Python-3.7.4.eb @@ -1,5 +1,3 @@ -easyblock = 'PythonPackage' - name = 'PyTorch' version = '1.4.0' versionsuffix = '-Python-%(pyver)s' @@ -12,7 +10,6 @@ toolchain = {'name': 'foss', 'version': '2019b'} local_pytorchthirdpartydir = 'pytorch-%(version)s/third_party' local_extract_cmd_pattern = 'tar -C %s/%s --strip-components=1 -xf %%s' -local_mkdir_and_extract_cmd_pattern = "DIR=%s/%s; mkdir -p $DIR; tar -C $DIR --strip-components=1 -xzf %%s" source_urls = ['https://github.com/pytorch/pytorch/archive'] @@ -23,112 +20,52 @@ osdependencies = [OS_PKG_IBVERBS_DEV] sources = [ 'v%(version)s.tar.gz', # PyTorch { - 'source_urls': ['https://github.com/facebookincubator/gloo/archive'], - 'download_filename': '7c541247a6fa49e5938e304ab93b6da661823d0f.tar.gz', - 'filename': 'gloo-20191105.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gloo'), - }, - { - 'source_urls': ['https://github.com/google/googletest/archive'], - 'download_filename': '2fe3bd994b3189899d93f1d5a881e725e046fdc2.tar.gz', - 'filename': 'googletest-20180831.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'googletest'), - }, - { - 'source_urls': ['https://github.com/pybind/pybind11/archive'], - 'download_filename': '25abf7efba0b2990f5a6dfb0a31bc65c0f2f4d17.tar.gz', - 'filename': 'pybind11-20190204.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pybind11'), - }, - { - 'source_urls': ['https://github.com/wjakob/clang-cindex-python3/archive'], - 'download_filename': '6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5.tar.gz', - 'filename': 'clang-cindex-python3-20170330.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pybind11/tools/clang'), - }, - { - 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], - 'download_filename': '89fe1695edf9ee14c22f815f24bac45577a4f135.tar.gz', - 'filename': 'cpuinfo-20190117.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cpuinfo'), - }, - { - 'source_urls': ['https://github.com/onnx/onnx/archive'], - 'download_filename': 'fea8568cac61a482ed208748fdc0e1a8e47f62f5.tar.gz', - 'filename': 'onnx-20191107.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx'), - }, - { - 'source_urls': ['https://github.com/google/benchmark/archive'], - 'download_filename': 'e776aa0275e293707b6a0901e0e8d8a8a3679508.tar.gz', - 'filename': 'benchmark-20180525.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx/third_party/benchmark'), - }, - { - 'source_urls': ['https://github.com/pybind/pybind11/archive'], - 'download_filename': 'a1041190c8b8ff0cd9e2f0752248ad5e3789ea0c.tar.gz', - 'filename': 'pybind11-20170828.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx/third_party/pybind11'), - }, - { - 'source_urls': ['https://github.com/onnx/onnx-tensorrt/archive'], - 'download_filename': 'c153211418a7c57ce071d9ce2a41f8d1c85a878f.tar.gz', - 'filename': 'onnx-tensorrt-20190916.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx-tensorrt'), - }, - { - 'source_urls': ['https://github.com/google/protobuf/archive'], - 'download_filename': '48cb18e5c419ddd23d9badcfe4e9df7bde1979b2.tar.gz', - 'filename': 'protobuf-20180727.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'protobuf'), - }, - { - 'source_urls': ['https://github.com/Maratyszcza/pthreadpool/archive'], - 'download_filename': '13da0b4c21d17f94150713366420baaf1b5a46f4.tar.gz', - 'filename': 'pthreadpool-20181008.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pthreadpool'), + 'source_urls': ['https://github.com/Maratyszcza/FP16/archive'], + 'download_filename': 'febbb1c163726b5db24bed55cc9dc42529068997.tar.gz', + 'filename': 'FP16-20181128.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FP16'), }, { 'source_urls': ['https://github.com/Maratyszcza/FXdiv/archive'], 'download_filename': 'b742d1143724d646cd0f914646f1240eacf5bd73.tar.gz', - 'filename': 'FXdiv-20181016.tar.gz', + 'filename': 'FXdiv-20181116.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FXdiv'), }, { - 'source_urls': ['https://github.com/Maratyszcza/psimd/archive'], - 'download_filename': '90a938f30ba414ada2f4b00674ee9631d7d85e19.tar.gz', - 'filename': 'psimd-20180906.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'psimd'), + 'source_urls': ['https://github.com/Maratyszcza/NNPACK/archive'], + 'download_filename': '24b55303f5cf65d75844714513a0d1b1409809bd.tar.gz', + 'filename': 'NNPACK-20191007.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'NNPACK'), }, { - 'source_urls': ['https://github.com/Maratyszcza/FP16/archive'], - 'download_filename': 'febbb1c163726b5db24bed55cc9dc42529068997.tar.gz', - 'filename': 'FP16-20181128.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FP16'), + 'source_urls': ['https://github.com/pytorch/QNNPACK/archive'], + 'download_filename': '7d2a4e9931a82adc3814275b6219a03e24e36b4c.tar.gz', + 'filename': 'QNNPACK-20190828.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'QNNPACK'), }, { - 'source_urls': ['https://github.com/Maratyszcza/NNPACK/archive'], - 'download_filename': '24b55303f5cf65d75844714513a0d1b1409809bd.tar.gz', - 'filename': 'NNPACK-20191008.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'NNPACK'), + 'source_urls': ['https://github.com/google/benchmark/archive'], + 'download_filename': '505be96ab23056580a3a2315abba048f4428b04e.tar.gz', + 'filename': 'benchmark-20180606.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'benchmark'), }, { - 'source_urls': ['https://github.com/shibatch/sleef/archive'], - 'download_filename': '7f523de651585fe25cade462efccca647dcc8d02.tar.gz', - 'filename': 'sleef-20190730.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'sleef'), + 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], + 'download_filename': '89fe1695edf9ee14c22f815f24bac45577a4f135.tar.gz', + 'filename': 'cpuinfo-20190117.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cpuinfo'), }, { - 'source_urls': ['https://github.com/Maratyszcza/PeachPy/archive'], - 'download_filename': '07d8fde8ac45d7705129475c0f94ed8925b93473.tar.gz', - 'filename': 'PeachPy-20180219.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'python-peachpy'), + 'source_urls': ['https://github.com/NVlabs/cub/archive'], + 'download_filename': '285aeebaa34b0e8a7670867a2e66c1a52d998d6a.tar.gz', + 'filename': 'cub-20170829.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cub'), }, { - 'source_urls': ['https://github.com/pytorch/QNNPACK/archive'], - 'download_filename': '7d2a4e9931a82adc3814275b6219a03e24e36b4c.tar.gz', - 'filename': 'QNNPACK-20190828.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'QNNPACK'), + 'source_urls': ['https://github.com/eigenteam/eigen-git-mirror/archive'], + 'download_filename': 'd41dc4dd74acce21fb210e7625d5d135751fa9e5.tar.gz', + 'filename': 'eigen-20190125.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'eigen'), }, { 'source_urls': ['https://github.com/pytorch/fbgemm/archive'], @@ -139,51 +76,44 @@ sources = [ { 'source_urls': ['https://github.com/asmjit/asmjit/archive'], 'download_filename': '17556b2d4984ab67bdc00e6b5a626efc75d95e07.tar.gz', - 'filename': 'asmjit-20190930.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), + 'filename': 'asmjit-20191001.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), }, { 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], 'download_filename': 'd5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz', 'filename': 'cpuinfo-20190201.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), }, { 'source_urls': ['https://github.com/google/googletest/archive'], 'download_filename': '0fc5466dbb9e623029b1ada539717d10bd45e99e.tar.gz', - 'filename': 'googletest-20180920.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, - 'fbgemm/third_party/googletest'), - }, - { - 'source_urls': ['https://github.com/google/benchmark/archive'], - 'download_filename': '505be96ab23056580a3a2315abba048f4428b04e.tar.gz', - 'filename': 'benchmark-20180606.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'benchmark'), + 'filename': 'googletest-20180925.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/googletest'), }, { - 'source_urls': ['https://github.com/eigenteam/eigen-git-mirror/archive'], - 'download_filename': 'd41dc4dd74acce21fb210e7625d5d135751fa9e5.tar.gz', - 'filename': 'eigen-20190126.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'eigen'), + 'source_urls': ['https://github.com/houseroad/foxi/archive'], + 'download_filename': '97fe555430a857581b9b826ecd955e4f0a3653f0.tar.gz', + 'filename': 'foxi-20191029.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'foxi'), }, { 'source_urls': ['https://github.com/google/gemmlowp/archive'], 'download_filename': '3fb5c176c17c765a3492cd2f0321b0dab712f350.tar.gz', - 'filename': 'gemmlowp-20181127.tar.gz', + 'filename': 'gemmlowp-20181126.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gemmlowp/gemmlowp'), }, { - 'source_urls': ['https://github.com/NVlabs/cub/archive'], - 'download_filename': '285aeebaa34b0e8a7670867a2e66c1a52d998d6a.tar.gz', - 'filename': 'cub-20170829.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cub'), + 'source_urls': ['https://github.com/facebookincubator/gloo/archive'], + 'download_filename': '7c541247a6fa49e5938e304ab93b6da661823d0f.tar.gz', + 'filename': 'gloo-20191105.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gloo'), }, { - 'source_urls': ['https://github.com/houseroad/foxi/archive'], - 'download_filename': '97fe555430a857581b9b826ecd955e4f0a3653f0.tar.gz', - 'filename': 'foxi-20191029.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'foxi'), + 'source_urls': ['https://github.com/google/googletest/archive'], + 'download_filename': '2fe3bd994b3189899d93f1d5a881e725e046fdc2.tar.gz', + 'filename': 'googletest-20180831.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'googletest'), }, { 'source_urls': ['https://github.com/intel/ideep/archive'], @@ -191,81 +121,115 @@ sources = [ 'filename': 'ideep-20191008.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep'), }, - { - 'source_urls': ['https://github.com/intel/tbb/archive'], - 'download_filename': 'a51a90bc609bb73db8ea13841b5cf7aa4344d4a9.tar.gz', - 'filename': 'tbb-20181009.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'tbb'), - }, { 'source_urls': ['https://github.com/intel/mkl-dnn/archive'], 'download_filename': '7d2fd500bc78936d1d648ca713b901012f470dbc.tar.gz', - 'filename': 'mkl-dnn-20190928.tar.gz', + 'filename': 'mkl-dnn-20190927.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep/mkl-dnn'), }, - # mkl-dnn requires Intel MKL, so download minimal Intel MKL version - # actually using imkl as a dependency would be messy due to underlying icc/ifort compilers & impi MPI lib - # mkl-dnn at 7d2fd50 is v0.21.1 - so use the mklml_lnx from v0.21 { - 'source_urls': ['https://github.com/intel/mkl-dnn/releases/download/v0.21'], - 'filename': 'mklml_lnx_2019.0.5.20190502.tgz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % - (local_pytorchthirdpartydir, 'ideep/mkl-dnn/external/mklml_lnx_2019.0.5.20190502'), + 'source_urls': ['https://github.com/onnx/onnx/archive'], + 'download_filename': 'fea8568cac61a482ed208748fdc0e1a8e47f62f5.tar.gz', + 'filename': 'onnx-20191106.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx'), + }, + { + 'source_urls': ['https://github.com/google/benchmark/archive'], + 'download_filename': 'e776aa0275e293707b6a0901e0e8d8a8a3679508.tar.gz', + 'filename': 'benchmark-20180525.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx/third_party/benchmark'), + }, + { + 'source_urls': ['https://github.com/onnx/onnx-tensorrt/archive'], + 'download_filename': 'c153211418a7c57ce071d9ce2a41f8d1c85a878f.tar.gz', + 'filename': 'onnx-tensorrt-20190916.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx-tensorrt'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/psimd/archive'], + 'download_filename': '90a938f30ba414ada2f4b00674ee9631d7d85e19.tar.gz', + 'filename': 'psimd-20180906.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'psimd'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/pthreadpool/archive'], + 'download_filename': '13da0b4c21d17f94150713366420baaf1b5a46f4.tar.gz', + 'filename': 'pthreadpool-20181008.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pthreadpool'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/PeachPy/archive'], + 'download_filename': '07d8fde8ac45d7705129475c0f94ed8925b93473.tar.gz', + 'filename': 'PeachPy-20180218.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'python-peachpy'), + }, + { + 'source_urls': ['https://github.com/shibatch/sleef/archive'], + 'download_filename': '7f523de651585fe25cade462efccca647dcc8d02.tar.gz', + 'filename': 'sleef-20190730.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'sleef'), + }, + { + 'source_urls': ['https://github.com/01org/tbb/archive'], + 'download_filename': 'a51a90bc609bb73db8ea13841b5cf7aa4344d4a9.tar.gz', + 'filename': 'tbb-20181009.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'tbb'), }, ] patches = [ '%(name)s-1.2.0_fix-findAVX.patch', - '%(name)s-1.2.0_disable-tests-ppc64le.patch', - '%(name)s-%(version)s_fix-missing-sleef_h.patch', + '%(name)s-1.4.0_fix-missing-sleef_h.patch', + '%(name)s-1.4.0_fix-missing-source-dir.patch', + '%(name)s-1.4.0_fix-test-prec.patch', + '%(name)s-1.4.0_fix-system-pybind11.patch', ] checksums = [ '8efc9c3d1804ffb97cbcf4ef988febc8d0b8701763614a586c7fc457a97cf847', # v1.4.0.tar.gz - '3044a0041eab739ed94c6880d031063f1d048eaa6d89c708ef01c80aae3dfa06', # gloo-20191105.tar.gz - 'd0d447b4feeedca837a0d46a289d4223089b32ac2f84545fa4982755cc8919be', # googletest-20180831.tar.gz - '1a1ccf8779332a7d6d0db9034d42df188867cbaf52eb71d74451f79aa8ce2040', # pybind11-20190204.tar.gz - '828e0d6238e2129a9e08071750dc16ba10e38eacf96f21b8a71e501c2085b282', # clang-cindex-python3-20170330.tar.gz - 'b84c49b4bdc12b0e8f1bff365dcefd50e5a2a25eeef8c928aeb2dab9fda4d599', # cpuinfo-20190117.tar.gz - '90910ab142174b003f342f445a2112227c0a10945051f55352db298004bd3b1f', # onnx-20191107.tar.gz - 'c7682e9007ddfd94072647abab3e89ffd9084089460ae47d67060974467b58bf', # benchmark-20180525.tar.gz - '79cc7be5edbb79b79a73af42d91608e8f65c5502bf92361dccd3895b128e061b', # pybind11-20170828.tar.gz - '314cde420a7cf692bdb6877bc6af6bc514805f6cdb8bee90f32566ed08d94b1c', # onnx-tensorrt-20190916.tar.gz - 'f5a35e17fb07f3b13517264cd17a089636fcbb2912f9df7bef7414058969a8d2', # protobuf-20180727.tar.gz - '90ab4f60ae0e99c0172dd5201dccc6de6c8f384a21b3d959588f4c1e00beec0f', # pthreadpool-20181008.tar.gz - '07625551202a1f35fe5e826669ad495962b26f6a139290e90b321c5996f002ef', # FXdiv-20181016.tar.gz - 'afd27417c6df1c85f79a68361055dd3adc292174913c39c1f58b698b9cfd7926', # psimd-20180906.tar.gz '3e71681e0a67cd28552aa0bbb78ec6a6bd238216df15336dc1326280f7958de2', # FP16-20181128.tar.gz - '1f11dbbfad78d0a4c39fe94e52a28c0821cb25f9880420bb304f6302f73fe002', # NNPACK-20191008.tar.gz - '8cb5fae822077ca9cbc14dcc7bba9a3a35ad519284fc5169f9a176672c63860a', # sleef-20190730.tar.gz - '13100c3deed300bbf16f87d8af3539f432462bfef9d38f0c7e3e387dc2e88676', # PeachPy-20180219.tar.gz + '07625551202a1f35fe5e826669ad495962b26f6a139290e90b321c5996f002ef', # FXdiv-20181116.tar.gz + '1f11dbbfad78d0a4c39fe94e52a28c0821cb25f9880420bb304f6302f73fe002', # NNPACK-20191007.tar.gz '0d752bd75f46ce4d7c6f0a60b0d6c0e5918a7b4683c825284f8db3706dd24f76', # QNNPACK-20190828.tar.gz - '91c88f081a636ce8b06e0715aa98f88add23b67447727683adcd8efc21730210', # fbgemm-20191120.tar.gz - '618e53579b87580b517ee877a3455464219ab56bfdfa2424c1e2cef1092d1e23', # asmjit-20190930.tar.gz - '3f2dc1970f397a0e59db72f9fca6ff144b216895c1d606f6c94a507c1e53a025', # cpuinfo-20190201.tar.gz - 'e99b904983d08ac8e9bddb5b0d21196b78ad9499e3c5d12192cee2ddd2b7515c', # googletest-20180920.tar.gz '0de43b6eaddd356f1d6cd164f73f37faf2f6c96fd684e1f7ea543ce49c1d144e', # benchmark-20180606.tar.gz - '2ec954f18cec50a7063a7358ce555f7e11788a7f6d4e7e597d83687dc2f3b989', # eigen-20190126.tar.gz - 'fdd6f08bdb33d33f4df516ffb91730fdb163479c19502cfc983083fd9cf43bfa', # gemmlowp-20181127.tar.gz + 'b84c49b4bdc12b0e8f1bff365dcefd50e5a2a25eeef8c928aeb2dab9fda4d599', # cpuinfo-20190117.tar.gz '7224b03af4acbc54525105bb42e3ecd75c66a3a5b47e8a725ab008467c4109f9', # cub-20170829.tar.gz + '2ec954f18cec50a7063a7358ce555f7e11788a7f6d4e7e597d83687dc2f3b989', # eigen-20190125.tar.gz + '91c88f081a636ce8b06e0715aa98f88add23b67447727683adcd8efc21730210', # fbgemm-20191120.tar.gz + '618e53579b87580b517ee877a3455464219ab56bfdfa2424c1e2cef1092d1e23', # asmjit-20191001.tar.gz + '3f2dc1970f397a0e59db72f9fca6ff144b216895c1d606f6c94a507c1e53a025', # cpuinfo-20190201.tar.gz + 'e99b904983d08ac8e9bddb5b0d21196b78ad9499e3c5d12192cee2ddd2b7515c', # googletest-20180925.tar.gz '3b8b0dbc1b27e1de29399b942ec7258c1d4b51c2bfa3bb6876fbc14bec414f3c', # foxi-20191029.tar.gz + 'fdd6f08bdb33d33f4df516ffb91730fdb163479c19502cfc983083fd9cf43bfa', # gemmlowp-20181126.tar.gz + '3044a0041eab739ed94c6880d031063f1d048eaa6d89c708ef01c80aae3dfa06', # gloo-20191105.tar.gz + 'd0d447b4feeedca837a0d46a289d4223089b32ac2f84545fa4982755cc8919be', # googletest-20180831.tar.gz '93279502b51a916a8c258d372193fc2f268862278526136dd64b1f86f8044cb4', # ideep-20191008.tar.gz - ('dc0a8d8d96cb8765782aa6ac1b509ad4db955d9bbb58fa5cc2265f0292756d72', - 'be111cf161b587812fa3b106fe550efb6f129b8b0b702fef32fac23af9580e5e'), # tbb-20181009.tar.gz ('5cb33c5d51047c96c8efa57e2d3dde7723e3b358eb1bbc97d793f4e26fd17481', 'de7e4df12f4c474000ecc83dadc386f16337b5f9ecf13c1c5eae6314bf444c6f'), # mkl-dnn-20190928.tar.gz - 'a936d6b277a33d2a027a024ea8e65df62bd2e162c7ca52c48486ed9d5dc27160', # mklml_lnx_2019.0.5.20190502.tgz + '90910ab142174b003f342f445a2112227c0a10945051f55352db298004bd3b1f', # onnx-20191106.tar.gz + 'c7682e9007ddfd94072647abab3e89ffd9084089460ae47d67060974467b58bf', # benchmark-20180525.tar.gz + '314cde420a7cf692bdb6877bc6af6bc514805f6cdb8bee90f32566ed08d94b1c', # onnx-tensorrt-20190916.tar.gz + 'afd27417c6df1c85f79a68361055dd3adc292174913c39c1f58b698b9cfd7926', # psimd-20180906.tar.gz + '90ab4f60ae0e99c0172dd5201dccc6de6c8f384a21b3d959588f4c1e00beec0f', # pthreadpool-20181008.tar.gz + '13100c3deed300bbf16f87d8af3539f432462bfef9d38f0c7e3e387dc2e88676', # PeachPy-20180218.tar.gz + '8cb5fae822077ca9cbc14dcc7bba9a3a35ad519284fc5169f9a176672c63860a', # sleef-20190730.tar.gz + ('dc0a8d8d96cb8765782aa6ac1b509ad4db955d9bbb58fa5cc2265f0292756d72', + 'be111cf161b587812fa3b106fe550efb6f129b8b0b702fef32fac23af9580e5e'), # tbb-20181009.tar.gz '001c9bf604aebe4b39ccad15332a71130b07b780c539ceca84d6c64cd6fc8a68', # PyTorch-1.2.0_fix-findAVX.patch - 'c4183bcb29a8bcbadea0341e93a3a32afdf860aa31331b768e787d899183da92', # PyTorch-1.2.0_disable-tests-ppc64le.patch '57cc8d2159a35de89139729c5390eb944332b9907d97b2b85a0b6ded30bd198e', # PyTorch-1.4.0_fix-missing-sleef_h.patch + '797987fb9c9bf9f1d75a1be878ddf9f418f9524006b0985ca8e6d65d4e2b6998', # PyTorch-1.4.0_fix-missing-source-dir.patch + '91977512b45aa2957b715a3e8d2b04016448b60407423de69d604fdc743d5f69', # PyTorch-1.4.0_fix-test-prec.patch + '1c9f36f959ea5d7cf0d4ca678ec6bf60ef9ed16c556f97197aa018c7b1e5e21d', # PyTorch-1.4.0_fix-system-pybind11.patch ] builddependencies = [ ('CMake', '3.15.3'), ('hypothesis', '4.44.2', versionsuffix), - ('Ninja', '1.9.0'), ] dependencies = [ + ('Ninja', '1.9.0'), # Required for JIT compilation of C++ extensions + ('protobuf', '3.10.0'), ('Python', '3.7.4'), + ('pybind11', '2.4.3', versionsuffix), ('SciPy-bundle', '2019.10', versionsuffix), ('PyYAML', '5.1.2'), ('MPFR', '4.0.2'), @@ -277,29 +241,22 @@ dependencies = [ ('Pillow', '6.2.1'), ] -download_dep_fail = True - -prebuildopts = 'PYTORCH_BUILD_VERSION=%(version)s PYTORCH_BUILD_NUMBER=1 VERBOSE=1 ' -prebuildopts += 'MAX_JOBS=%(parallel)s ' -prebuildopts += 'LDFLAGS="$LDFLAGS -ldl" ' -prebuildopts += 'USE_FFMPEG=ON USE_IBVERBS=1 USE_GFLAGS=ON USE_GLOG=ON ' - -preinstallopts = prebuildopts - -runtest = 'export PYTHONPATH=%(builddir)s/%(namelower)s-%(version)s/' \ - 'build/lib.linux-%(arch)s-%(pyshortver)s:$PYTHONPATH ' -runtest += '&& export LD_LIBRARY_PATH=%(builddir)s/%(namelower)s-%(version)s/torch/lib64:$LD_LIBRARY_PATH ' -runtest += '&& python test/run_test.py --verbose ' - -options = {'modulename': 'torch'} - -postinstallcmds = ['cp -a %(builddir)s/%(namelower)s-%(version)s/torch/lib*/* %(installdir)s/lib/'] - -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages'], +excluded_tests = { + 'POWER': [ + # https://github.com/pytorch/pytorch/issues/41186 + 'autograd', + # Somehow only triggers on POWER, but is likely https://github.com/pytorch/pytorch/issues/33552 + 'distributed', + # https://github.com/pytorch/pytorch/issues/41400 + 'jit', + # https://github.com/pytorch/pytorch/issues/41469 + 'nn', + # Sporadically fails for unknown reason. Fixed in newer versions + 'torch', 'distributions', 'qat', + ], } -sanity_pip_check = True - +# OpenMP threads must be limited as torch.matmul returns inprecise results for many threads (e.g. 176) +runtest = 'cd test && OMP_NUM_THREADS=4 %(python)s run_test.py --verbose %(excluded_tests)s' +tests = ['PyTorch-check-cpp-extension.py'] moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-fosscuda-2019b-Python-3.7.4.eb index afc5a828959..e5d7f7647c4 100644 --- a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0-fosscuda-2019b-Python-3.7.4.eb @@ -1,5 +1,3 @@ -easyblock = 'PythonPackage' - name = 'PyTorch' version = '1.4.0' versionsuffix = '-Python-%(pyver)s' @@ -12,7 +10,6 @@ toolchain = {'name': 'fosscuda', 'version': '2019b'} local_pytorchthirdpartydir = 'pytorch-%(version)s/third_party' local_extract_cmd_pattern = 'tar -C %s/%s --strip-components=1 -xf %%s' -local_mkdir_and_extract_cmd_pattern = "DIR=%s/%s; mkdir -p $DIR; tar -C $DIR --strip-components=1 -xzf %%s" source_urls = ['https://github.com/pytorch/pytorch/archive'] @@ -23,112 +20,52 @@ osdependencies = [OS_PKG_IBVERBS_DEV] sources = [ 'v%(version)s.tar.gz', # PyTorch { - 'source_urls': ['https://github.com/facebookincubator/gloo/archive'], - 'download_filename': '7c541247a6fa49e5938e304ab93b6da661823d0f.tar.gz', - 'filename': 'gloo-20191105.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gloo'), - }, - { - 'source_urls': ['https://github.com/google/googletest/archive'], - 'download_filename': '2fe3bd994b3189899d93f1d5a881e725e046fdc2.tar.gz', - 'filename': 'googletest-20180831.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'googletest'), - }, - { - 'source_urls': ['https://github.com/pybind/pybind11/archive'], - 'download_filename': '25abf7efba0b2990f5a6dfb0a31bc65c0f2f4d17.tar.gz', - 'filename': 'pybind11-20190204.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pybind11'), - }, - { - 'source_urls': ['https://github.com/wjakob/clang-cindex-python3/archive'], - 'download_filename': '6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5.tar.gz', - 'filename': 'clang-cindex-python3-20170330.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pybind11/tools/clang'), - }, - { - 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], - 'download_filename': '89fe1695edf9ee14c22f815f24bac45577a4f135.tar.gz', - 'filename': 'cpuinfo-20190117.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cpuinfo'), - }, - { - 'source_urls': ['https://github.com/onnx/onnx/archive'], - 'download_filename': 'fea8568cac61a482ed208748fdc0e1a8e47f62f5.tar.gz', - 'filename': 'onnx-20191107.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx'), - }, - { - 'source_urls': ['https://github.com/google/benchmark/archive'], - 'download_filename': 'e776aa0275e293707b6a0901e0e8d8a8a3679508.tar.gz', - 'filename': 'benchmark-20180525.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx/third_party/benchmark'), - }, - { - 'source_urls': ['https://github.com/pybind/pybind11/archive'], - 'download_filename': 'a1041190c8b8ff0cd9e2f0752248ad5e3789ea0c.tar.gz', - 'filename': 'pybind11-20170828.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx/third_party/pybind11'), - }, - { - 'source_urls': ['https://github.com/onnx/onnx-tensorrt/archive'], - 'download_filename': 'c153211418a7c57ce071d9ce2a41f8d1c85a878f.tar.gz', - 'filename': 'onnx-tensorrt-20190916.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx-tensorrt'), - }, - { - 'source_urls': ['https://github.com/google/protobuf/archive'], - 'download_filename': '48cb18e5c419ddd23d9badcfe4e9df7bde1979b2.tar.gz', - 'filename': 'protobuf-20180727.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'protobuf'), - }, - { - 'source_urls': ['https://github.com/Maratyszcza/pthreadpool/archive'], - 'download_filename': '13da0b4c21d17f94150713366420baaf1b5a46f4.tar.gz', - 'filename': 'pthreadpool-20181008.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pthreadpool'), + 'source_urls': ['https://github.com/Maratyszcza/FP16/archive'], + 'download_filename': 'febbb1c163726b5db24bed55cc9dc42529068997.tar.gz', + 'filename': 'FP16-20181128.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FP16'), }, { 'source_urls': ['https://github.com/Maratyszcza/FXdiv/archive'], 'download_filename': 'b742d1143724d646cd0f914646f1240eacf5bd73.tar.gz', - 'filename': 'FXdiv-20181016.tar.gz', + 'filename': 'FXdiv-20181116.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FXdiv'), }, { - 'source_urls': ['https://github.com/Maratyszcza/psimd/archive'], - 'download_filename': '90a938f30ba414ada2f4b00674ee9631d7d85e19.tar.gz', - 'filename': 'psimd-20180906.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'psimd'), + 'source_urls': ['https://github.com/Maratyszcza/NNPACK/archive'], + 'download_filename': '24b55303f5cf65d75844714513a0d1b1409809bd.tar.gz', + 'filename': 'NNPACK-20191007.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'NNPACK'), }, { - 'source_urls': ['https://github.com/Maratyszcza/FP16/archive'], - 'download_filename': 'febbb1c163726b5db24bed55cc9dc42529068997.tar.gz', - 'filename': 'FP16-20181128.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FP16'), + 'source_urls': ['https://github.com/pytorch/QNNPACK/archive'], + 'download_filename': '7d2a4e9931a82adc3814275b6219a03e24e36b4c.tar.gz', + 'filename': 'QNNPACK-20190828.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'QNNPACK'), }, { - 'source_urls': ['https://github.com/Maratyszcza/NNPACK/archive'], - 'download_filename': '24b55303f5cf65d75844714513a0d1b1409809bd.tar.gz', - 'filename': 'NNPACK-20191008.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'NNPACK'), + 'source_urls': ['https://github.com/google/benchmark/archive'], + 'download_filename': '505be96ab23056580a3a2315abba048f4428b04e.tar.gz', + 'filename': 'benchmark-20180606.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'benchmark'), }, { - 'source_urls': ['https://github.com/shibatch/sleef/archive'], - 'download_filename': '7f523de651585fe25cade462efccca647dcc8d02.tar.gz', - 'filename': 'sleef-20190730.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'sleef'), + 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], + 'download_filename': '89fe1695edf9ee14c22f815f24bac45577a4f135.tar.gz', + 'filename': 'cpuinfo-20190117.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cpuinfo'), }, { - 'source_urls': ['https://github.com/Maratyszcza/PeachPy/archive'], - 'download_filename': '07d8fde8ac45d7705129475c0f94ed8925b93473.tar.gz', - 'filename': 'PeachPy-20180219.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'python-peachpy'), + 'source_urls': ['https://github.com/NVlabs/cub/archive'], + 'download_filename': '285aeebaa34b0e8a7670867a2e66c1a52d998d6a.tar.gz', + 'filename': 'cub-20170829.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cub'), }, { - 'source_urls': ['https://github.com/pytorch/QNNPACK/archive'], - 'download_filename': '7d2a4e9931a82adc3814275b6219a03e24e36b4c.tar.gz', - 'filename': 'QNNPACK-20190828.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'QNNPACK'), + 'source_urls': ['https://github.com/eigenteam/eigen-git-mirror/archive'], + 'download_filename': 'd41dc4dd74acce21fb210e7625d5d135751fa9e5.tar.gz', + 'filename': 'eigen-20190125.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'eigen'), }, { 'source_urls': ['https://github.com/pytorch/fbgemm/archive'], @@ -139,51 +76,44 @@ sources = [ { 'source_urls': ['https://github.com/asmjit/asmjit/archive'], 'download_filename': '17556b2d4984ab67bdc00e6b5a626efc75d95e07.tar.gz', - 'filename': 'asmjit-20190930.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), + 'filename': 'asmjit-20191001.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), }, { 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], 'download_filename': 'd5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz', 'filename': 'cpuinfo-20190201.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), }, { 'source_urls': ['https://github.com/google/googletest/archive'], 'download_filename': '0fc5466dbb9e623029b1ada539717d10bd45e99e.tar.gz', - 'filename': 'googletest-20180920.tar.gz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % (local_pytorchthirdpartydir, - 'fbgemm/third_party/googletest'), - }, - { - 'source_urls': ['https://github.com/google/benchmark/archive'], - 'download_filename': '505be96ab23056580a3a2315abba048f4428b04e.tar.gz', - 'filename': 'benchmark-20180606.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'benchmark'), + 'filename': 'googletest-20180925.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/googletest'), }, { - 'source_urls': ['https://github.com/eigenteam/eigen-git-mirror/archive'], - 'download_filename': 'd41dc4dd74acce21fb210e7625d5d135751fa9e5.tar.gz', - 'filename': 'eigen-20190126.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'eigen'), + 'source_urls': ['https://github.com/houseroad/foxi/archive'], + 'download_filename': '97fe555430a857581b9b826ecd955e4f0a3653f0.tar.gz', + 'filename': 'foxi-20191029.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'foxi'), }, { 'source_urls': ['https://github.com/google/gemmlowp/archive'], 'download_filename': '3fb5c176c17c765a3492cd2f0321b0dab712f350.tar.gz', - 'filename': 'gemmlowp-20181127.tar.gz', + 'filename': 'gemmlowp-20181126.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gemmlowp/gemmlowp'), }, { - 'source_urls': ['https://github.com/NVlabs/cub/archive'], - 'download_filename': '285aeebaa34b0e8a7670867a2e66c1a52d998d6a.tar.gz', - 'filename': 'cub-20170829.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cub'), + 'source_urls': ['https://github.com/facebookincubator/gloo/archive'], + 'download_filename': '7c541247a6fa49e5938e304ab93b6da661823d0f.tar.gz', + 'filename': 'gloo-20191105.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gloo'), }, { - 'source_urls': ['https://github.com/houseroad/foxi/archive'], - 'download_filename': '97fe555430a857581b9b826ecd955e4f0a3653f0.tar.gz', - 'filename': 'foxi-20191029.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'foxi'), + 'source_urls': ['https://github.com/google/googletest/archive'], + 'download_filename': '2fe3bd994b3189899d93f1d5a881e725e046fdc2.tar.gz', + 'filename': 'googletest-20180831.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'googletest'), }, { 'source_urls': ['https://github.com/intel/ideep/archive'], @@ -191,81 +121,117 @@ sources = [ 'filename': 'ideep-20191008.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep'), }, - { - 'source_urls': ['https://github.com/intel/tbb/archive'], - 'download_filename': 'a51a90bc609bb73db8ea13841b5cf7aa4344d4a9.tar.gz', - 'filename': 'tbb-20181009.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'tbb'), - }, { 'source_urls': ['https://github.com/intel/mkl-dnn/archive'], 'download_filename': '7d2fd500bc78936d1d648ca713b901012f470dbc.tar.gz', - 'filename': 'mkl-dnn-20190928.tar.gz', + 'filename': 'mkl-dnn-20190927.tar.gz', 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep/mkl-dnn'), }, - # mkl-dnn requires Intel MKL, so download minimal Intel MKL version - # actually using imkl as a dependency would be messy due to underlying icc/ifort compilers & impi MPI lib - # mkl-dnn at 7d2fd50 is v0.21.1 - so use the mklml_lnx from v0.21 { - 'source_urls': ['https://github.com/intel/mkl-dnn/releases/download/v0.21'], - 'filename': 'mklml_lnx_2019.0.5.20190502.tgz', - 'extract_cmd': local_mkdir_and_extract_cmd_pattern % - (local_pytorchthirdpartydir, 'ideep/mkl-dnn/external/mklml_lnx_2019.0.5.20190502'), + 'source_urls': ['https://github.com/onnx/onnx/archive'], + 'download_filename': 'fea8568cac61a482ed208748fdc0e1a8e47f62f5.tar.gz', + 'filename': 'onnx-20191106.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx'), + }, + { + 'source_urls': ['https://github.com/google/benchmark/archive'], + 'download_filename': 'e776aa0275e293707b6a0901e0e8d8a8a3679508.tar.gz', + 'filename': 'benchmark-20180525.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx/third_party/benchmark'), + }, + { + 'source_urls': ['https://github.com/onnx/onnx-tensorrt/archive'], + 'download_filename': 'c153211418a7c57ce071d9ce2a41f8d1c85a878f.tar.gz', + 'filename': 'onnx-tensorrt-20190916.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx-tensorrt'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/psimd/archive'], + 'download_filename': '90a938f30ba414ada2f4b00674ee9631d7d85e19.tar.gz', + 'filename': 'psimd-20180906.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'psimd'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/pthreadpool/archive'], + 'download_filename': '13da0b4c21d17f94150713366420baaf1b5a46f4.tar.gz', + 'filename': 'pthreadpool-20181008.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pthreadpool'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/PeachPy/archive'], + 'download_filename': '07d8fde8ac45d7705129475c0f94ed8925b93473.tar.gz', + 'filename': 'PeachPy-20180218.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'python-peachpy'), + }, + { + 'source_urls': ['https://github.com/shibatch/sleef/archive'], + 'download_filename': '7f523de651585fe25cade462efccca647dcc8d02.tar.gz', + 'filename': 'sleef-20190730.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'sleef'), + }, + { + 'source_urls': ['https://github.com/01org/tbb/archive'], + 'download_filename': 'a51a90bc609bb73db8ea13841b5cf7aa4344d4a9.tar.gz', + 'filename': 'tbb-20181009.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'tbb'), }, ] patches = [ '%(name)s-1.2.0_fix-findAVX.patch', - '%(name)s-1.2.0_disable-tests-ppc64le.patch', - '%(name)s-%(version)s_fix-missing-sleef_h.patch', + '%(name)s-1.4.0_fix-missing-sleef_h.patch', + '%(name)s-1.4.0_fix-missing-source-dir.patch', + '%(name)s-1.4.0_add-cuda11-support.patch', + '%(name)s-1.4.0_fix-test-prec.patch', + '%(name)s-1.4.0_fix-system-pybind11.patch', ] checksums = [ '8efc9c3d1804ffb97cbcf4ef988febc8d0b8701763614a586c7fc457a97cf847', # v1.4.0.tar.gz - '3044a0041eab739ed94c6880d031063f1d048eaa6d89c708ef01c80aae3dfa06', # gloo-20191105.tar.gz - 'd0d447b4feeedca837a0d46a289d4223089b32ac2f84545fa4982755cc8919be', # googletest-20180831.tar.gz - '1a1ccf8779332a7d6d0db9034d42df188867cbaf52eb71d74451f79aa8ce2040', # pybind11-20190204.tar.gz - '828e0d6238e2129a9e08071750dc16ba10e38eacf96f21b8a71e501c2085b282', # clang-cindex-python3-20170330.tar.gz - 'b84c49b4bdc12b0e8f1bff365dcefd50e5a2a25eeef8c928aeb2dab9fda4d599', # cpuinfo-20190117.tar.gz - '90910ab142174b003f342f445a2112227c0a10945051f55352db298004bd3b1f', # onnx-20191107.tar.gz - 'c7682e9007ddfd94072647abab3e89ffd9084089460ae47d67060974467b58bf', # benchmark-20180525.tar.gz - '79cc7be5edbb79b79a73af42d91608e8f65c5502bf92361dccd3895b128e061b', # pybind11-20170828.tar.gz - '314cde420a7cf692bdb6877bc6af6bc514805f6cdb8bee90f32566ed08d94b1c', # onnx-tensorrt-20190916.tar.gz - 'f5a35e17fb07f3b13517264cd17a089636fcbb2912f9df7bef7414058969a8d2', # protobuf-20180727.tar.gz - '90ab4f60ae0e99c0172dd5201dccc6de6c8f384a21b3d959588f4c1e00beec0f', # pthreadpool-20181008.tar.gz - '07625551202a1f35fe5e826669ad495962b26f6a139290e90b321c5996f002ef', # FXdiv-20181016.tar.gz - 'afd27417c6df1c85f79a68361055dd3adc292174913c39c1f58b698b9cfd7926', # psimd-20180906.tar.gz '3e71681e0a67cd28552aa0bbb78ec6a6bd238216df15336dc1326280f7958de2', # FP16-20181128.tar.gz - '1f11dbbfad78d0a4c39fe94e52a28c0821cb25f9880420bb304f6302f73fe002', # NNPACK-20191008.tar.gz - '8cb5fae822077ca9cbc14dcc7bba9a3a35ad519284fc5169f9a176672c63860a', # sleef-20190730.tar.gz - '13100c3deed300bbf16f87d8af3539f432462bfef9d38f0c7e3e387dc2e88676', # PeachPy-20180219.tar.gz + '07625551202a1f35fe5e826669ad495962b26f6a139290e90b321c5996f002ef', # FXdiv-20181116.tar.gz + '1f11dbbfad78d0a4c39fe94e52a28c0821cb25f9880420bb304f6302f73fe002', # NNPACK-20191007.tar.gz '0d752bd75f46ce4d7c6f0a60b0d6c0e5918a7b4683c825284f8db3706dd24f76', # QNNPACK-20190828.tar.gz - '91c88f081a636ce8b06e0715aa98f88add23b67447727683adcd8efc21730210', # fbgemm-20191120.tar.gz - '618e53579b87580b517ee877a3455464219ab56bfdfa2424c1e2cef1092d1e23', # asmjit-20190930.tar.gz - '3f2dc1970f397a0e59db72f9fca6ff144b216895c1d606f6c94a507c1e53a025', # cpuinfo-20190201.tar.gz - 'e99b904983d08ac8e9bddb5b0d21196b78ad9499e3c5d12192cee2ddd2b7515c', # googletest-20180920.tar.gz '0de43b6eaddd356f1d6cd164f73f37faf2f6c96fd684e1f7ea543ce49c1d144e', # benchmark-20180606.tar.gz - '2ec954f18cec50a7063a7358ce555f7e11788a7f6d4e7e597d83687dc2f3b989', # eigen-20190126.tar.gz - 'fdd6f08bdb33d33f4df516ffb91730fdb163479c19502cfc983083fd9cf43bfa', # gemmlowp-20181127.tar.gz + 'b84c49b4bdc12b0e8f1bff365dcefd50e5a2a25eeef8c928aeb2dab9fda4d599', # cpuinfo-20190117.tar.gz '7224b03af4acbc54525105bb42e3ecd75c66a3a5b47e8a725ab008467c4109f9', # cub-20170829.tar.gz + '2ec954f18cec50a7063a7358ce555f7e11788a7f6d4e7e597d83687dc2f3b989', # eigen-20190125.tar.gz + '91c88f081a636ce8b06e0715aa98f88add23b67447727683adcd8efc21730210', # fbgemm-20191120.tar.gz + '618e53579b87580b517ee877a3455464219ab56bfdfa2424c1e2cef1092d1e23', # asmjit-20191001.tar.gz + '3f2dc1970f397a0e59db72f9fca6ff144b216895c1d606f6c94a507c1e53a025', # cpuinfo-20190201.tar.gz + 'e99b904983d08ac8e9bddb5b0d21196b78ad9499e3c5d12192cee2ddd2b7515c', # googletest-20180925.tar.gz '3b8b0dbc1b27e1de29399b942ec7258c1d4b51c2bfa3bb6876fbc14bec414f3c', # foxi-20191029.tar.gz + 'fdd6f08bdb33d33f4df516ffb91730fdb163479c19502cfc983083fd9cf43bfa', # gemmlowp-20181126.tar.gz + '3044a0041eab739ed94c6880d031063f1d048eaa6d89c708ef01c80aae3dfa06', # gloo-20191105.tar.gz + 'd0d447b4feeedca837a0d46a289d4223089b32ac2f84545fa4982755cc8919be', # googletest-20180831.tar.gz '93279502b51a916a8c258d372193fc2f268862278526136dd64b1f86f8044cb4', # ideep-20191008.tar.gz - ('dc0a8d8d96cb8765782aa6ac1b509ad4db955d9bbb58fa5cc2265f0292756d72', - 'be111cf161b587812fa3b106fe550efb6f129b8b0b702fef32fac23af9580e5e'), # tbb-20181009.tar.gz ('5cb33c5d51047c96c8efa57e2d3dde7723e3b358eb1bbc97d793f4e26fd17481', 'de7e4df12f4c474000ecc83dadc386f16337b5f9ecf13c1c5eae6314bf444c6f'), # mkl-dnn-20190928.tar.gz - 'a936d6b277a33d2a027a024ea8e65df62bd2e162c7ca52c48486ed9d5dc27160', # mklml_lnx_2019.0.5.20190502.tgz + '90910ab142174b003f342f445a2112227c0a10945051f55352db298004bd3b1f', # onnx-20191106.tar.gz + 'c7682e9007ddfd94072647abab3e89ffd9084089460ae47d67060974467b58bf', # benchmark-20180525.tar.gz + '314cde420a7cf692bdb6877bc6af6bc514805f6cdb8bee90f32566ed08d94b1c', # onnx-tensorrt-20190916.tar.gz + 'afd27417c6df1c85f79a68361055dd3adc292174913c39c1f58b698b9cfd7926', # psimd-20180906.tar.gz + '90ab4f60ae0e99c0172dd5201dccc6de6c8f384a21b3d959588f4c1e00beec0f', # pthreadpool-20181008.tar.gz + '13100c3deed300bbf16f87d8af3539f432462bfef9d38f0c7e3e387dc2e88676', # PeachPy-20180218.tar.gz + '8cb5fae822077ca9cbc14dcc7bba9a3a35ad519284fc5169f9a176672c63860a', # sleef-20190730.tar.gz + ('dc0a8d8d96cb8765782aa6ac1b509ad4db955d9bbb58fa5cc2265f0292756d72', + 'be111cf161b587812fa3b106fe550efb6f129b8b0b702fef32fac23af9580e5e'), # tbb-20181009.tar.gz '001c9bf604aebe4b39ccad15332a71130b07b780c539ceca84d6c64cd6fc8a68', # PyTorch-1.2.0_fix-findAVX.patch - 'c4183bcb29a8bcbadea0341e93a3a32afdf860aa31331b768e787d899183da92', # PyTorch-1.2.0_disable-tests-ppc64le.patch '57cc8d2159a35de89139729c5390eb944332b9907d97b2b85a0b6ded30bd198e', # PyTorch-1.4.0_fix-missing-sleef_h.patch + '797987fb9c9bf9f1d75a1be878ddf9f418f9524006b0985ca8e6d65d4e2b6998', # PyTorch-1.4.0_fix-missing-source-dir.patch + '8782d68d4265cbb89a7908124b0a9a469fd89ee46c7c78a02a5c623ece457d6e', # PyTorch-1.4.0_add-cuda11-support.patch + '91977512b45aa2957b715a3e8d2b04016448b60407423de69d604fdc743d5f69', # PyTorch-1.4.0_fix-test-prec.patch + '1c9f36f959ea5d7cf0d4ca678ec6bf60ef9ed16c556f97197aa018c7b1e5e21d', # PyTorch-1.4.0_fix-system-pybind11.patch ] builddependencies = [ ('CMake', '3.15.3'), ('hypothesis', '4.44.2', versionsuffix), - ('Ninja', '1.9.0'), ] dependencies = [ + ('Ninja', '1.9.0'), # Required for JIT compilation of C++ extensions + ('protobuf', '3.10.0'), ('Python', '3.7.4'), + ('pybind11', '2.4.3', versionsuffix), ('SciPy-bundle', '2019.10', versionsuffix), ('PyYAML', '5.1.2'), ('MPFR', '4.0.2'), @@ -280,32 +246,26 @@ dependencies = [ ('NCCL', '2.4.8'), ] -download_dep_fail = True - -prebuildopts = 'PYTORCH_BUILD_VERSION=%(version)s PYTORCH_BUILD_NUMBER=1 VERBOSE=1 ' -prebuildopts += 'MAX_JOBS=%(parallel)s ' -prebuildopts += 'LDFLAGS="$LDFLAGS -ldl" ' -prebuildopts += 'USE_FFMPEG=ON USE_IBVERBS=1 USE_GFLAGS=ON USE_GLOG=ON ' -prebuildopts += 'CUDNN_LIB_DIR=$EBROOTCUDNN/lib64 CUDNN_INCLUDE_DIR=$EBROOTCUDNN/include ' -prebuildopts += 'USE_SYSTEM_NCCL=1 NCCL_INCLUDE_DIR=$EBROOTNCCL/include ' -prebuildopts += 'TORCH_CUDA_ARCH_LIST="3.5 3.7 5.2 6.0 6.1 7.0 7.2 7.5" ' - -preinstallopts = prebuildopts - -runtest = 'export PYTHONPATH=%(builddir)s/%(namelower)s-%(version)s/' \ - 'build/lib.linux-%(arch)s-%(pyshortver)s:$PYTHONPATH ' -runtest += '&& export LD_LIBRARY_PATH=%(builddir)s/%(namelower)s-%(version)s/torch/lib64:$LD_LIBRARY_PATH ' -runtest += '&& python test/run_test.py --verbose ' - -options = {'modulename': 'torch'} - -postinstallcmds = ['cp -a %(builddir)s/%(namelower)s-%(version)s/torch/lib*/* %(installdir)s/lib/'] +# default CUDA compute capabilities to use (override via --cuda-compute-capabilities) +cuda_compute_capabilities = ['3.5', '3.7', '5.2', '6.0', '6.1', '7.0', '7.2', '7.5'] -sanity_check_paths = { - 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages'], +excluded_tests = { + 'POWER': [ + # https://github.com/pytorch/pytorch/issues/41186 + 'autograd', + # Somehow only triggers on POWER, but is likely https://github.com/pytorch/pytorch/issues/33552 + 'distributed', + # https://github.com/pytorch/pytorch/issues/41400 + 'jit', + # https://github.com/pytorch/pytorch/issues/41469 + 'nn', + # Sporadically fails for unknown reason. Fixed in newer versions + 'torch', 'distributions', 'qat', + ], } -sanity_pip_check = True +# OpenMP threads must be limited as torch.matmul returns inprecise results for many threads (e.g. 176) +runtest = 'cd test && OMP_NUM_THREADS=4 %(python)s run_test.py --verbose %(excluded_tests)s' +tests = ['PyTorch-check-cpp-extension.py'] moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_add-cuda11-support.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_add-cuda11-support.patch new file mode 100644 index 00000000000..f0fbf980f49 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_add-cuda11-support.patch @@ -0,0 +1,59 @@ +From 5a4911834d0236f28ca194aeee63010d4668ae23 Mon Sep 17 00:00:00 2001 +From: "Gao, Xiang" +Date: Tue, 30 Jun 2020 13:47:58 -0700 +Subject: [PATCH] Add CUDA11 build and test (#40452) + +Summary: Pull Request resolved: https://github.com/pytorch/pytorch/pull/40452 + +Differential Revision: D22316007 + +Pulled By: malfet + +fbshipit-source-id: 94f4b4ba2a46ff3d3042ba842a615f8392cdc350 +--- +diff --git a/aten/src/ATen/cudnn/Handle.cpp b/aten/src/ATen/cudnn/Handle.cpp +index 92d30827314f8..2b1d90f4b3cfd 100644 +--- a/aten/src/ATen/cudnn/Handle.cpp ++++ b/aten/src/ATen/cudnn/Handle.cpp +@@ -16,10 +16,15 @@ void destroyCuDNNHandle(cudnnHandle_t handle) { + // happens in fbcode setting. @colesbury and I decided to not destroy + // the handle as a workaround. + // - @soumith +-#ifdef NO_CUDNN_DESTROY_HANDLE +-#else +- cudnnDestroy(handle); +-#endif ++// ++// Further note: this is now disabled globally, because we are seeing ++// the same issue as mentioned above in CUDA 11 CI. ++// - @zasdfgbnm ++// ++// #ifdef NO_CUDNN_DESTROY_HANDLE ++// #else ++// cudnnDestroy(handle); ++// #endif + } + + using CudnnPoolType = at::cuda::DeviceThreadHandlePool; +diff --git a/c10/cuda/CUDAStream.h b/c10/cuda/CUDAStream.h +index b23f8aa1c65f2..d9bc553aa2636 100644 +--- a/c10/cuda/CUDAStream.h ++++ b/c10/cuda/CUDAStream.h +@@ -155,10 +155,16 @@ class C10_CUDA_API CUDAStream { + + static std::tuple priority_range() { + #ifndef __HIP_PLATFORM_HCC__ ++ // Note: this returns the range of priority **supported by PyTorch**, not ++ // the range of priority **supported by CUDA**. The former is a subset of ++ // the latter. Curently PyTorch only supports 0 and -1, which are "low" and ++ // "high" priority. + int least_priority, greatest_priority; + C10_CUDA_CHECK( + cudaDeviceGetStreamPriorityRange(&least_priority, &greatest_priority)); +- return std::make_tuple(least_priority, greatest_priority); ++ TORCH_INTERNAL_ASSERT(least_priority >= 0, "Unexpected CUDA stream priority range"); ++ TORCH_INTERNAL_ASSERT(greatest_priority <= -1, "Unexpected CUDA stream priority range"); ++ return std::make_tuple(0, -1); + #else + AT_ERROR("cuDeviceGetStreamPriorityRange with HIP is not supported"); + #endif diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-missing-source-dir.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-missing-source-dir.patch new file mode 100644 index 00000000000..a153b038f2e --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-missing-source-dir.patch @@ -0,0 +1,30 @@ +From 2720d63c0cb11cdd96523e3ac22a6d54811ef661 Mon Sep 17 00:00:00 2001 +From: Alexander Grund +Date: Fri, 10 Jul 2020 09:57:00 +0200 +Subject: [PATCH] Define PSIMD_SOURCE_DIR when including FP16 + +Avoids a superflous redownload when *NNPACK is not used (e.g. on Power) +--- + cmake/Dependencies.cmake | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake +index d6ffc50660675..6fb5a91338718 100644 +--- a/cmake/Dependencies.cmake ++++ b/cmake/Dependencies.cmake +@@ -673,8 +673,13 @@ endif() + + # ---[ Caffe2 depends on FP16 library for half-precision conversions + if (NOT TARGET fp16) +- if (NOT DEFINED FP16_SOURCE_DIR) +- set(FP16_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/../third_party/FP16" CACHE STRING "FP16 source directory") ++ set(CAFFE2_THIRD_PARTY_ROOT "${PROJECT_SOURCE_DIR}/third_party") ++ # PSIMD is required by FP16 ++ if(NOT DEFINED PSIMD_SOURCE_DIR) ++ set(PSIMD_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/psimd" CACHE STRING "PSimd source directory") ++ endif() ++ if(NOT DEFINED FP16_SOURCE_DIR) ++ set(FP16_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/FP16" CACHE STRING "FP16 source directory") + endif() + + set(FP16_BUILD_TESTS OFF CACHE BOOL "") diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-system-pybind11.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-system-pybind11.patch new file mode 100644 index 00000000000..9634eccf1ce --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-system-pybind11.patch @@ -0,0 +1,23 @@ +From 4a48ba57e0cab63d357faf7adf93cf61106221f0 Mon Sep 17 00:00:00 2001 +From: Alexander Grund +Date: Mon, 7 Sep 2020 12:40:56 +0200 +Subject: [PATCH] Remove pybind11 from required submodules + +This can be taken from the system in which case it is not used from the +submodule. Hence the check here limits the usage unneccessarily +--- + setup.py | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 8c060a1c5e3f3..c91916ab1b1e8 100644 +--- a/setup.py ++++ b/setup.py +@@ -309,7 +309,6 @@ def check_file(f): + sys.exit(1) + + check_file(os.path.join(third_party_path, "gloo", "CMakeLists.txt")) +- check_file(os.path.join(third_party_path, "pybind11", "CMakeLists.txt")) + check_file(os.path.join(third_party_path, 'cpuinfo', 'CMakeLists.txt')) + check_file(os.path.join(third_party_path, 'tbb', 'Makefile')) + check_file(os.path.join(third_party_path, 'onnx', 'CMakeLists.txt')) diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-test-prec.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-test-prec.patch new file mode 100644 index 00000000000..83c1c028736 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.4.0_fix-test-prec.patch @@ -0,0 +1,17 @@ +On x86 the test might fail due to an error in the range 5e-5 +In PyTorch 1.6+ this check uses a precision of 1e-4 so mirror this here + +Author: Alexander Grund (TU Dresden) +diff --git a/test/test_nn.py b/test/test_nn.py +index d92304e943..cd8d20000f 100644 +--- a/test/test_nn.py ++++ b/test/test_nn.py +@@ -7196,7 +7196,7 @@ class TestNN(NNTestCase): + [5.92212, 6.16094, 6.62870, 7.04680]]]]) + out_t = F.interpolate(in_t, scale_factor=2.3, mode='bicubic', align_corners=False, recompute_scale_factor=False) + torch.set_printoptions(precision=5) +- self.assertEqual(out_t, expected_out_t) ++ self.assertEqual(out_t, expected_out_t, prec=1e-4) + + device_list = ['cpu'] + if TEST_CUDA: diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..f379ce95192 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,313 @@ +name = 'PyTorch' +version = '1.6.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pytorch.org/' +description = """Tensors and Dynamic neural networks in Python with strong GPU acceleration. +PyTorch is a deep learning framework that puts Python first.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +local_pytorchthirdpartydir = 'pytorch-%(version)s/third_party' +local_extract_cmd_pattern = 'tar -C %s/%s --strip-components=1 -xf %%s' + +source_urls = ['https://github.com/pytorch/pytorch/archive'] + +# PyTorch pulls in a bunch of submodules that are not releases. We download the submodule revisions from their repos. +# determine commit of additional sources via https://github.com/pytorch/pytorch/tree/v1.6.0/third_party +sources = [ + 'v%(version)s.tar.gz', # PyTorch + { + 'source_urls': ['https://github.com/Maratyszcza/FP16/archive'], + 'download_filename': '4dfe081cf6bcd15db339cf2680b9281b8451eeb3.tar.gz', + 'filename': 'FP16-20200514.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FP16'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/FXdiv/archive'], + 'download_filename': 'b408327ac2a15ec3e43352421954f5b1967701d1.tar.gz', + 'filename': 'FXdiv-20200417.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'FXdiv'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/NNPACK/archive'], + 'download_filename': '24b55303f5cf65d75844714513a0d1b1409809bd.tar.gz', + 'filename': 'NNPACK-20191007.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'NNPACK'), + }, + { + 'source_urls': ['https://github.com/pytorch/QNNPACK/archive'], + 'download_filename': '7d2a4e9931a82adc3814275b6219a03e24e36b4c.tar.gz', + 'filename': 'QNNPACK-20190828.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'QNNPACK'), + }, + { + 'source_urls': ['https://github.com/google/XNNPACK/archive'], + 'download_filename': '1b354636b5942826547055252f3b359b54acff95.tar.gz', + 'filename': 'XNNPACK-20200323.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'XNNPACK'), + }, + { + 'source_urls': ['https://github.com/google/benchmark/archive'], + 'download_filename': '505be96ab23056580a3a2315abba048f4428b04e.tar.gz', + 'filename': 'benchmark-20180606.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'benchmark'), + }, + { + 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], + 'download_filename': '63b254577ed77a8004a9be6ac707f3dccc4e1fd9.tar.gz', + 'filename': 'cpuinfo-20200611.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cpuinfo'), + }, + { + 'source_urls': ['https://github.com/NVlabs/cub/archive'], + 'download_filename': '285aeebaa34b0e8a7670867a2e66c1a52d998d6a.tar.gz', + 'filename': 'cub-20170829.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'cub'), + }, + { + 'source_urls': ['https://github.com/eigenteam/eigen-git-mirror/archive'], + 'download_filename': 'd41dc4dd74acce21fb210e7625d5d135751fa9e5.tar.gz', + 'filename': 'eigen-20190125.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'eigen'), + }, + { + 'source_urls': ['https://github.com/pytorch/fbgemm/archive'], + 'download_filename': '7d673046a6a3ad1fa0d15dfb189cd06ffa217041.tar.gz', + 'filename': 'fbgemm-20200531.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm'), + }, + { + 'source_urls': ['https://github.com/asmjit/asmjit/archive'], + 'download_filename': '9057aa30b620f0662ff51e2230c126a345063064.tar.gz', + 'filename': 'asmjit-20200429.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/asmjit'), + }, + { + 'source_urls': ['https://github.com/pytorch/cpuinfo/archive'], + 'download_filename': 'd5e37adf1406cf899d7d9ec1d317c47506ccb970.tar.gz', + 'filename': 'cpuinfo-20190201.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/cpuinfo'), + }, + { + 'source_urls': ['https://github.com/google/googletest/archive'], + 'download_filename': '0fc5466dbb9e623029b1ada539717d10bd45e99e.tar.gz', + 'filename': 'googletest-20180925.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fbgemm/third_party/googletest'), + }, + { + 'source_urls': ['https://github.com/fmtlib/fmt/archive'], + 'download_filename': '9bdd1596cef1b57b9556f8bef32dc4a32322ef3e.tar.gz', + 'filename': 'fmt-20200405.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'fmt'), + }, + { + 'source_urls': ['https://github.com/houseroad/foxi/archive'], + 'download_filename': '8015abb727dfc9e223bfd293730daa9138f1f9c4.tar.gz', + 'filename': 'foxi-20191220.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'foxi'), + }, + { + 'source_urls': ['https://github.com/google/gemmlowp/archive'], + 'download_filename': '3fb5c176c17c765a3492cd2f0321b0dab712f350.tar.gz', + 'filename': 'gemmlowp-20181126.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gemmlowp/gemmlowp'), + }, + { + 'source_urls': ['https://github.com/facebookincubator/gloo/archive'], + 'download_filename': '113bde13035594cafdca247be953610b53026553.tar.gz', + 'filename': 'gloo-20200317.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'gloo'), + }, + { + 'source_urls': ['https://github.com/google/googletest/archive'], + 'download_filename': '2fe3bd994b3189899d93f1d5a881e725e046fdc2.tar.gz', + 'filename': 'googletest-20180831.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'googletest'), + }, + { + 'source_urls': ['https://github.com/intel/ideep/archive'], + 'download_filename': '938cc68897bb46b8d4b228966edd9e23e471cf3b.tar.gz', + 'filename': 'ideep-20200616.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep'), + }, + { + 'source_urls': ['https://github.com/intel/mkl-dnn/archive'], + 'download_filename': 'e2ac1fac44c5078ca927cb9b90e1b3066a0b2ed0.tar.gz', + 'filename': 'mkl-dnn-20200605.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'ideep/mkl-dnn'), + }, + { + 'source_urls': ['https://github.com/onnx/onnx/archive'], + 'download_filename': 'a82c6a7010e2e332d8f74ad5b0c726fd47c85376.tar.gz', + 'filename': 'onnx-20200531.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx'), + }, + { + 'source_urls': ['https://github.com/google/benchmark/archive'], + 'download_filename': 'e776aa0275e293707b6a0901e0e8d8a8a3679508.tar.gz', + 'filename': 'benchmark-20180525.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx/third_party/benchmark'), + }, + { + 'source_urls': ['https://github.com/onnx/onnx-tensorrt/archive'], + 'download_filename': 'c153211418a7c57ce071d9ce2a41f8d1c85a878f.tar.gz', + 'filename': 'onnx-tensorrt-20190916.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'onnx-tensorrt'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/psimd/archive'], + 'download_filename': '072586a71b55b7f8c584153d223e95687148a900.tar.gz', + 'filename': 'psimd-20200517.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'psimd'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/pthreadpool/archive'], + 'download_filename': '029c88620802e1361ccf41d1970bd5b07fd6b7bb.tar.gz', + 'filename': 'pthreadpool-20200615.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'pthreadpool'), + }, + { + 'source_urls': ['https://github.com/Maratyszcza/PeachPy/archive'], + 'download_filename': '07d8fde8ac45d7705129475c0f94ed8925b93473.tar.gz', + 'filename': 'PeachPy-20180218.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'python-peachpy'), + }, + { + 'source_urls': ['https://github.com/shibatch/sleef/archive'], + 'download_filename': '7f523de651585fe25cade462efccca647dcc8d02.tar.gz', + 'filename': 'sleef-20190730.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'sleef'), + }, + { + 'source_urls': ['https://github.com/01org/tbb/archive'], + 'download_filename': 'a51a90bc609bb73db8ea13841b5cf7aa4344d4a9.tar.gz', + 'filename': 'tbb-20181009.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'tbb'), + }, + { + 'source_urls': ['https://github.com/pytorch/tensorpipe/archive'], + 'download_filename': '3b8089c9c6717038cff44b70b881d0ad6c93e679.tar.gz', + 'filename': 'tensorpipe-20200626.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'tensorpipe'), + }, + { + 'source_urls': ['https://github.com/libuv/libuv/archive'], + 'download_filename': '02a9e1be252b623ee032a3137c0b0c94afbe6809.tar.gz', + 'filename': 'libuv-20200419.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_pytorchthirdpartydir, 'tensorpipe/third_party/libuv'), + }, +] +patches = [ + '%(name)s-1.4.0_fix-system-pybind11.patch', + '%(name)s-1.6.0_fix-missing-source-dir.patch', + '%(name)s-1.6.0_fix-test-cuda.patch', + '%(name)s-1.6.0_fix-test-dataloader-fixed-affinity.patch', + '%(name)s-1.6.0_fix-test-tensorexpr.patch', + '%(name)s-1.6.0_fix-test-missing-rpc-shutdown.patch', + '%(name)s-1.6.0_fix-rpc-test-world-size.patch', + '%(name)s-1.6.0_fix-system-pybind11.patch', +] +checksums = [ + '7160e5bd291ad649d035f1c830dd064d1db42839b64b9a3502b5d47641233fb7', # v1.6.0.tar.gz + '90f20492621d5ed80b442aa682ff92d7ccf333ac8fac4a10e7e02afb159f3c13', # FP16-20200514.tar.gz + '9ccf554541666b5c089ad5dd465141d671c99971f36d72f313652f5c49ffce14', # FXdiv-20200417.tar.gz + '1f11dbbfad78d0a4c39fe94e52a28c0821cb25f9880420bb304f6302f73fe002', # NNPACK-20191007.tar.gz + '0d752bd75f46ce4d7c6f0a60b0d6c0e5918a7b4683c825284f8db3706dd24f76', # QNNPACK-20190828.tar.gz + 'b55a6ef3a0b4c0d3c39ad5578eb4fa9a7b2d7ee1ef06592b8a808a59a8e6589b', # XNNPACK-20200323.tar.gz + '0de43b6eaddd356f1d6cd164f73f37faf2f6c96fd684e1f7ea543ce49c1d144e', # benchmark-20180606.tar.gz + '18a99130ced1eaacab2ba8f75a1435f9955aab54fa0436b60468f020876ee902', # cpuinfo-20200611.tar.gz + '7224b03af4acbc54525105bb42e3ecd75c66a3a5b47e8a725ab008467c4109f9', # cub-20170829.tar.gz + '2ec954f18cec50a7063a7358ce555f7e11788a7f6d4e7e597d83687dc2f3b989', # eigen-20190125.tar.gz + 'c2e122ea2c3a571207ef0ba9c495444bda4b83927d076ed04fbb6383ae428441', # fbgemm-20200531.tar.gz + '5c7ecb03ede09a38fa9bcf2527a0f1454cd67a34c0e6fd939ae4d93b276ce982', # asmjit-20200429.tar.gz + '3f2dc1970f397a0e59db72f9fca6ff144b216895c1d606f6c94a507c1e53a025', # cpuinfo-20190201.tar.gz + 'e99b904983d08ac8e9bddb5b0d21196b78ad9499e3c5d12192cee2ddd2b7515c', # googletest-20180925.tar.gz + '92b1ba081c55aca384d975bb2069e0ecc5f71a35f894a2047d9783ef6800b41e', # fmt-20200405.tar.gz + '982100f4a514b0678e3161e39c3660dc7be3c83bdc1e39617066dc49712d50ac', # foxi-20191220.tar.gz + 'fdd6f08bdb33d33f4df516ffb91730fdb163479c19502cfc983083fd9cf43bfa', # gemmlowp-20181126.tar.gz + '5243b523dba4aa55090790c9836803c671daa58bff24411e52267e119f4a61e0', # gloo-20200317.tar.gz + 'd0d447b4feeedca837a0d46a289d4223089b32ac2f84545fa4982755cc8919be', # googletest-20180831.tar.gz + 'ab37b266702557b819a598d1bf89946cba281a8d49224ce105280eb657d0c733', # ideep-20200616.tar.gz + '4bc7dafaaaa55db55bb2654e043cc7f3fb35cd49d19c4efee2dbce1ab863c179', # mkl-dnn-20200605.tar.gz + 'c3bf8cc8091b24c43aa205a1f2037a518d249eb5997bea7f543b7fc880e80e21', # onnx-20200531.tar.gz + 'c7682e9007ddfd94072647abab3e89ffd9084089460ae47d67060974467b58bf', # benchmark-20180525.tar.gz + '314cde420a7cf692bdb6877bc6af6bc514805f6cdb8bee90f32566ed08d94b1c', # onnx-tensorrt-20190916.tar.gz + 'f6c4dab91ae9a03b3019e7cab0572743afd0e1b6e75b97fcca50259c737c924e', # psimd-20200517.tar.gz + 'd13818a10a645d557202aa005606337b2a0cdf690e5655253800ab11abb0c076', # pthreadpool-20200615.tar.gz + '13100c3deed300bbf16f87d8af3539f432462bfef9d38f0c7e3e387dc2e88676', # PeachPy-20180218.tar.gz + '8cb5fae822077ca9cbc14dcc7bba9a3a35ad519284fc5169f9a176672c63860a', # sleef-20190730.tar.gz + # checksum for original download of tbb-20181009.tar.gz from https://github.com/intel/tbb/archive + ('dc0a8d8d96cb8765782aa6ac1b509ad4db955d9bbb58fa5cc2265f0292756d72', + # checksum for download of tbb-20181009.tar.gz from https://github.com/01org/tbb/archive + 'be111cf161b587812fa3b106fe550efb6f129b8b0b702fef32fac23af9580e5e'), + '9d78a64a4456eb0caeba8742080c39e07019114c1f4914f0e1ffa8f0a507c40f', # tensorpipe-20200626.tar.gz + '5ca4e9091f3231d8ad8801862dc4e851c23af89c69141d27723157776f7291e7', # libuv-20200419.tar.gz + '1c9f36f959ea5d7cf0d4ca678ec6bf60ef9ed16c556f97197aa018c7b1e5e21d', # PyTorch-1.4.0_fix-system-pybind11.patch + 'f3725477d554800a19a8d7f4ab300ab7b70da76b62328081c0ed1f8517c6a61c', # PyTorch-1.6.0_fix-missing-source-dir.patch + 'adf21e77dbc5e60fd46fe21fceb908633b0da7d4fc9b6a3ea7f7cfb0c4a44678', # PyTorch-1.6.0_fix-test-cuda.patch + # PyTorch-1.6.0_fix-test-dataloader-fixed-affinity.patch + 'a4208a46cd2098744daaba96cebb96cd91166f8fc616924315e05974bad80c67', + '37c19e286f4090115bc67989e537241f2988041ef5c3ff6d02d8c736d8703090', # PyTorch-1.6.0_fix-test-tensorexpr.patch + # PyTorch-1.6.0_fix-test-missing-rpc-shutdown.patch + '9afd9b3a85a7b115e9535cf6a618d5dd137a69a5f36747d6290ac3bf123ab896', + '7d48c4ef7ae98a8a9e5eade3341ce18e41fa3fe4b868e9435efbfba849d1f977', # PyTorch-1.6.0_fix-rpc-test-world-size.patch + 'f0e09866e500a6ec96f7a0ad606d220960683901aa8dc491e245f9f8f4d89e45', # PyTorch-1.6.0_fix-system-pybind11.patch +] + +osdependencies = [OS_PKG_IBVERBS_DEV] + +builddependencies = [ + ('CMake', '3.15.3'), + ('hypothesis', '4.44.2', versionsuffix), +] + +dependencies = [ + ('Ninja', '1.9.0'), # Required for JIT compilation of C++ extensions + ('protobuf', '3.10.0'), + ('Python', '3.7.4'), + ('pybind11', '2.4.3', versionsuffix), + ('SciPy-bundle', '2019.10', versionsuffix), + ('PyYAML', '5.1.2'), + ('MPFR', '4.0.2'), + ('GMP', '6.1.2'), + ('numactl', '2.0.12'), + ('FFmpeg', '4.2.1'), + ('gflags', '2.2.2'), + ('glog', '0.4.0'), + ('Pillow', '6.2.1'), + ('cuDNN', '7.6.4.38'), + ('magma', '2.5.1'), + ('NCCL', '2.4.8'), +] + +# default CUDA compute capabilities to use (override via --cuda-compute-capabilities) +cuda_compute_capabilities = ['3.5', '3.7', '5.2', '6.0', '6.1', '7.0', '7.2', '7.5'] + +excluded_tests = { + 'POWER': [ + # https://github.com/pytorch/pytorch/issues/41186 + 'test_autograd', + # https://github.com/pytorch/pytorch/issues/41261 + 'test_cpp_extensions_aot_no_ninja', 'test_cpp_extensions_aot_ninja', + # https://github.com/pytorch/pytorch/issues/41400 + 'test_jit', + # https://github.com/pytorch/pytorch/issues/41469 + 'test_nn', + ], + '': [ + # This test fails everywhere: https://github.com/pytorch/pytorch/issues/41242 + 'test_cpp_extensions_jit', + # Throws illegal memory access due to float16: https://github.com/pytorch/pytorch/issues/41340 + 'test_torch', + # Potentially problematic save/load issue with test_lstm on only some machines. Tell users to verify save&load! + # https://github.com/pytorch/pytorch/issues/43209 + 'test_quantization', + ], +} + +runtest = 'cd test && %(python)s run_test.py --verbose %(excluded_tests)s' + +tests = ['PyTorch-check-cpp-extension.py'] + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-missing-source-dir.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-missing-source-dir.patch new file mode 100644 index 00000000000..44950d2a3e4 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-missing-source-dir.patch @@ -0,0 +1,29 @@ +From 2720d63c0cb11cdd96523e3ac22a6d54811ef661 Mon Sep 17 00:00:00 2001 +From: Alexander Grund +Date: Fri, 10 Jul 2020 09:57:00 +0200 +Subject: [PATCH] Define PSIMD_SOURCE_DIR when including FP16 + +Avoids a superflous redownload when *NNPACK is not used (e.g. on Power) +--- + cmake/Dependencies.cmake | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake +index d6ffc50660675..6fb5a91338718 100644 +--- a/cmake/Dependencies.cmake ++++ b/cmake/Dependencies.cmake +@@ -767,8 +767,13 @@ endif() + + # ---[ Caffe2 depends on FP16 library for half-precision conversions + if(NOT TARGET fp16 AND NOT USE_SYSTEM_FP16) ++ set(CAFFE2_THIRD_PARTY_ROOT "${PROJECT_SOURCE_DIR}/third_party") ++ # PSIMD is required by FP16 ++ if(NOT DEFINED PSIMD_SOURCE_DIR) ++ set(PSIMD_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/psimd" CACHE STRING "PSimd source directory") ++ endif() + if(NOT DEFINED FP16_SOURCE_DIR) +- set(FP16_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/../third_party/FP16" CACHE STRING "FP16 source directory") ++ set(FP16_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/FP16" CACHE STRING "FP16 source directory") + endif() + + set(FP16_BUILD_TESTS OFF CACHE BOOL "") diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-rpc-test-world-size.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-rpc-test-world-size.patch new file mode 100644 index 00000000000..ad80243c7f0 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-rpc-test-world-size.patch @@ -0,0 +1,93 @@ +From 2531b075c18a4bc5f96140156071037ea4454868 Mon Sep 17 00:00:00 2001 +From: Luca Wehrstedt +Date: Tue, 30 Jun 2020 13:55:17 -0700 +Subject: [PATCH] [RPC tests] Remove world_size and init_method from TensorPipe + fixture + +Summary of the entire stack: +-- + +This diff is part of an attempt to refactor the RPC tests. They currently suffer from several problems: +- Several ways to specify the agent to use: there exists one "generic" fixture that uses the global variable TEST_CONFIG to look up the agent name, and is used for process group and Thrift, and then there are separate fixtures for the flaky agent and the TensorPipe one. +- These two ways lead to having two separate decorators (`@requires_process_group_agent` and `@_skip_if_tensorpipe_agent`) which must both be specified, making it unclear what the effect of each of them is and what happens if only one is given. +- Thrift must override the TEST_CONFIG global variable before any other import (in order for the `@requires_process_group_agent` decorator to work correctly) and for that it must use a "trap" file, which makes it even harder to track which agent is being used, and which is specific to Buck, and thus cannot be used in OSS by other agents. +- Even if the TensorPipe fixture doesn't use TEST_CONFIG, it still needs to set it to the right value for other parts of the code to work. (This is done in `@dist_init`). +- There are a few functions in dist_utils.py that return some properties of the agent (e.g., a regexp to match against the error it returns in case of shutdown). These functions are effectively chained if/elses on the various agents, which has the effect of "leaking" some part of the Thrift agent into OSS. +- Each test suite (RPC, dist autograd/dist optimizer, their JIT versions, remote module, ...) must be run on each agent (or almost; the faulty one is an exception) in both fork and spawn mode. Each of these combinations is a separate file, which leads to a proliferation of scripts. +- There is no "master list" of what combinations make sense and should be run. Therefore it has happened that when adding new tests or new agents we forgot to enroll them into the right tests. (TensorPipe is still missing a few tests, it turns out). +- All of these tiny "entry point" files contain almost the same duplicated boilerplate. This makes it very easy to get the wrong content into one of them due to a bad copy-paste. + +This refactoring aims to address these problems by: +- Avoiding global state, defaults/override, traps, if/elses, ... and have a single way to specify the agent, based on an abstract base class and several concrete subclasses which can be "mixed in" to any test suite. +- Instead of enabling/disabling tests using decorators, the tests that are specific to a certain agent are now in a separate class (which is a subclass of the "generic" test suite) so that they are only picked up by the agent they apply to. +- Instead of having one separate entry point script for each combination, it uses one entry point for each agent, and in that script it provides a list of all the test suites it wants to run on that agent. And it does that by trying to deduplicate the boilerplate as much as possible. (In fact, the various agent-suite combinations could be grouped in any way, not necessarily by agent as I did here). + +It provides further advantages: +- It puts all the agents on equal standing, by not having any of them be the default, making it thus easier to migrate from process group to TensorPipe. +- It will make it easier to add more versions of the TensorPipe tests (e.g., one that disables the same-machine backends in order to test the TCP-based ones) without a further duplication of entry points, of boilerplate, ... + +Summary of this commit +-- +This prepares the stack by simplifying the TensorPipe fixture. A comment says that the TensorPipe fixture cannot subclass the generic fixture class as that would lead to a diamond class hierarchy which Python doesn't support (whereas in fact it does), and therefore it copies over two properties that are defined on the generic fixture. However, each class that uses the TensorPipe fixture also inherits from the generic fixture, so there's no need to redefine those properties. And, in fact, by not redefining it we save ourselves some trouble when the TensorPipe fixture would end up overriding another override. + +Differential Revision: [D22287533](https://our.internmc.facebook.com/intern/diff/D22287533/) + +[ghstack-poisoned] +--- + .../rpc/tensorpipe/test_ddp_under_dist_autograd.py | 8 -------- + .../rpc/tensorpipe_rpc_agent_test_fixture.py | 11 ----------- + 2 files changed, 19 deletions(-) + +diff --git a/test/distributed/rpc/tensorpipe/test_ddp_under_dist_autograd.py b/test/distributed/rpc/tensorpipe/test_ddp_under_dist_autograd.py +index 32c28d94a56cf..ebb6234a7216e 100644 +--- a/test/distributed/rpc/tensorpipe/test_ddp_under_dist_autograd.py ++++ b/test/distributed/rpc/tensorpipe/test_ddp_under_dist_autograd.py +@@ -16,10 +16,6 @@ + ) + class TestDdpUnderDistAutogradTensorPipe(TensorPipeRpcAgentTestFixture, ddp_under_dist_autograd_test.TestDdpUnderDistAutograd): + +- @property +- def world_size(self) -> int: +- return ddp_under_dist_autograd_test.WORLD_SIZE +- + @dist_init + def test_verify_backend_options(self): + self.assertEqual(self.rpc_backend, rpc.backend_registry.BackendType.TENSORPIPE) +@@ -29,10 +25,6 @@ def test_verify_backend_options(self): + ) + class TestDdpComparisonTensorPipe(TensorPipeRpcAgentTestFixture, ddp_under_dist_autograd_test.TestDdpComparison): + +- @property +- def world_size(self) -> int: +- return ddp_under_dist_autograd_test.WORLD_SIZE +- + @dist_init + def test_verify_backend_options(self): + self.assertEqual(self.rpc_backend, rpc.backend_registry.BackendType.TENSORPIPE) +diff --git a/torch/testing/_internal/distributed/rpc/tensorpipe_rpc_agent_test_fixture.py b/torch/testing/_internal/distributed/rpc/tensorpipe_rpc_agent_test_fixture.py +index d306027e968cb..c147cb0f3f77d 100644 +--- a/torch/testing/_internal/distributed/rpc/tensorpipe_rpc_agent_test_fixture.py ++++ b/torch/testing/_internal/distributed/rpc/tensorpipe_rpc_agent_test_fixture.py +@@ -1,5 +1,4 @@ + import torch.distributed.rpc as rpc +-import torch.testing._internal.dist_utils as dist_utils + + # In order to run the existing test RPC and Distributed Autograd test suites + # with Tensorpipe, we introduce a new class in both rpc_test.py and +@@ -8,16 +7,6 @@ + # inherit from RpcAgentTestFixture, since this and the base test classes would + # then have a common ancestor (RpcAgentTestFixture), which is not allowed. + class TensorPipeRpcAgentTestFixture(object): +- @property +- def world_size(self): +- return 4 +- +- @property +- def init_method(self): +- return dist_utils.INIT_METHOD_TEMPLATE.format( +- file_name=self.file_name +- ) +- + @property + def rpc_backend(self): + return rpc.backend_registry.BackendType[ diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-system-pybind11.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-system-pybind11.patch new file mode 100644 index 00000000000..39e7313aed1 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-system-pybind11.patch @@ -0,0 +1,137 @@ +From ee9ce72f46f8cfc71762520df884661fa93b94b8 Mon Sep 17 00:00:00 2001 +From: Alexander Grund +Date: Thu, 23 Jul 2020 15:40:39 +0200 +Subject: [PATCH] Replace "if(NOT ${var}" by "if(NOT var" + +--- + cmake/Dependencies.cmake | 10 +++++----- + cmake/Modules_CUDA_fix/upstream/FindCUDA.cmake | 2 +- + cmake/ProtoBuf.cmake | 2 +- + cmake/Utils.cmake | 4 ++-- + cmake/public/cuda.cmake | 2 +- + torch/CMakeLists.txt | 2 +- + 6 files changed, 11 insertions(+), 11 deletions(-) + +diff --git a/cmake/Dependencies.cmake b/cmake/Dependencies.cmake +index dba04b35f8989..b3a892cf88a05 100644 +--- a/cmake/Dependencies.cmake ++++ b/cmake/Dependencies.cmake +@@ -584,7 +584,7 @@ if(BUILD_TEST OR BUILD_MOBILE_BENCHMARK OR BUILD_MOBILE_TEST) + "-P" + "${CMAKE_CURRENT_LIST_DIR}/GoogleTestPatch.cmake" + RESULT_VARIABLE _exitcode) +- if(NOT ${_exitcode} EQUAL 0) ++ if(NOT _exitcode EQUAL 0) + message(WARNING "Patching failed for Google Test. The build may fail.") + endif() + endif() +@@ -634,7 +634,7 @@ if(BUILD_TEST OR BUILD_MOBILE_BENCHMARK OR BUILD_MOBILE_TEST) + "-P" + "${CMAKE_CURRENT_LIST_DIR}/GoogleTestPatch.cmake" + RESULT_VARIABLE _exitcode) +- if(NOT ${_exitcode} EQUAL 0) ++ if(NOT _exitcode EQUAL 0) + message(WARNING "Reverting changes failed for Google Test. The build may fail.") + endif() + endif() +@@ -877,7 +877,7 @@ if(BUILD_PYTHON) + execute_process( + COMMAND "${PYTHON_EXECUTABLE}" "--version" + RESULT_VARIABLE _exitcode OUTPUT_VARIABLE PYTHON_VERSION) +- if(NOT ${_exitcode} EQUAL 0) ++ if(NOT _exitcode EQUAL 0) + message(FATAL_ERROR "The Python executable ${PYTHON_EXECUTABLE} cannot be run. Make sure that it is an absolute path.") + endif() + if(PYTHON_VERSION) +@@ -955,7 +955,7 @@ if(BUILD_PYTHON) + endif() + + # ---[ pybind11 +-if(NOT ${pybind11_PREFER_third_party}) ++if(NOT pybind11_PREFER_third_party) + find_package(pybind11 CONFIG) + if(NOT pybind11_FOUND) + find_package(pybind11) +@@ -1226,7 +1226,7 @@ if(USE_NCCL) + "Not using CUDA/ROCM, so disabling USE_NCCL. Suppress this warning with " + "-DUSE_NCCL=OFF.") + caffe2_update_option(USE_NCCL OFF) +- elseif(NOT ${CMAKE_SYSTEM_NAME} STREQUAL "Linux") ++ elseif(NOT CMAKE_SYSTEM_NAME STREQUAL "Linux") + message(WARNING "NCCL is currently only supported under Linux.") + caffe2_update_option(USE_NCCL OFF) + elseif(USE_CUDA) +diff --git a/cmake/Modules_CUDA_fix/upstream/FindCUDA.cmake b/cmake/Modules_CUDA_fix/upstream/FindCUDA.cmake +index ffcc49e29c3ac..a25edda0cb1e8 100644 +--- a/cmake/Modules_CUDA_fix/upstream/FindCUDA.cmake ++++ b/cmake/Modules_CUDA_fix/upstream/FindCUDA.cmake +@@ -1505,7 +1505,7 @@ macro(CUDA_WRAP_SRCS cuda_target format generated_files) + set(_cuda_source_format ${format}) + endif() + # If file isn't a .cu file, we need to tell nvcc to treat it as such. +- if(NOT ${file} MATCHES "\\.cu$") ++ if(NOT file MATCHES "\\.cu$") + set(cuda_language_flag -x=cu) + else() + set(cuda_language_flag) +diff --git a/cmake/ProtoBuf.cmake b/cmake/ProtoBuf.cmake +index bd82ebc11217c..32cab7557f3b7 100644 +--- a/cmake/ProtoBuf.cmake ++++ b/cmake/ProtoBuf.cmake +@@ -85,7 +85,7 @@ endmacro() + # coded BUILD_CUSTOM_PROTOBUF, we will hard code the use of custom protobuf + # in the submodule. + if(ANDROID OR IOS) +- if(NOT ${BUILD_CUSTOM_PROTOBUF}) ++ if(NOT BUILD_CUSTOM_PROTOBUF) + message(WARNING + "For Android and iOS cross compilation, I am automatically using " + "custom protobuf under third party. Note that this behavior may " +diff --git a/cmake/Utils.cmake b/cmake/Utils.cmake +index 1b0d8c109e481..3838b1fe95496 100644 +--- a/cmake/Utils.cmake ++++ b/cmake/Utils.cmake +@@ -154,7 +154,7 @@ function(dedent outvar text) + INPUT_FILE "${CMAKE_BINARY_DIR}/indented.txt" + RESULT_VARIABLE _dedent_exitcode + OUTPUT_VARIABLE _dedent_text) +- if(NOT ${_dedent_exitcode} EQUAL 0) ++ if(NOT _dedent_exitcode EQUAL 0) + message(ERROR " Failed to remove indentation from: \n\"\"\"\n${text}\n\"\"\" + Python dedent failed with error code: ${_dedent_exitcode}") + message(FATAL_ERROR " Python dedent failed with error code: ${_dedent_exitcode}") +@@ -202,7 +202,7 @@ function(pycmd outvar cmd) + dedent(_dedent_cmd "${cmd}") + pycmd_no_exit(_output _exitcode "${_dedent_cmd}") + +- if(NOT ${_exitcode} EQUAL 0) ++ if(NOT _exitcode EQUAL 0) + message(ERROR " Failed when running python code: \"\"\"\n${_dedent_cmd}\n\"\"\"") + message(FATAL_ERROR " Python command failed with error code: ${_exitcode}") + endif() +diff --git a/cmake/public/cuda.cmake b/cmake/public/cuda.cmake +index f1656c6c76627..d4ec3a9dff021 100644 +--- a/cmake/public/cuda.cmake ++++ b/cmake/public/cuda.cmake +@@ -74,7 +74,7 @@ if(CUDA_FOUND) + message(FATAL_ERROR "Caffe2: Couldn't determine version from header: " ${output_var}) + endif() + message(STATUS "Caffe2: Header version is: " ${cuda_version_from_header}) +- if(NOT ${cuda_version_from_header} STREQUAL ${CUDA_VERSION_STRING}) ++ if(NOT cuda_version_from_header STREQUAL ${CUDA_VERSION_STRING}) + # Force CUDA to be processed for again next time + # TODO: I'm not sure if this counts as an implementation detail of + # FindCUDA +diff --git a/torch/CMakeLists.txt b/torch/CMakeLists.txt +index fb01b020bdef0..8a13c7f1ee868 100644 +--- a/torch/CMakeLists.txt ++++ b/torch/CMakeLists.txt +@@ -98,7 +98,7 @@ if(MSVC) + if(BUILD_TEST) + list(APPEND TORCH_PYTHON_LINK_LIBRARIES onnx_library) + endif(BUILD_TEST) +- if(NOT ${CMAKE_BUILD_TYPE} MATCHES "Release") ++ if(NOT CMAKE_BUILD_TYPE MATCHES "Release") + string(APPEND TORCH_PYTHON_LINK_FLAGS " /DEBUG:FULL") + endif() + elseif(APPLE) diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-cuda.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-cuda.patch new file mode 100644 index 00000000000..6bed7a1a3e7 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-cuda.patch @@ -0,0 +1,28 @@ +From baf2afeb278d37282465dc2192650a5d2e395f3a Mon Sep 17 00:00:00 2001 +From: Alexander Grund +Date: Tue, 14 Jul 2020 14:38:53 +0200 +Subject: [PATCH] Fix flaky test_stream_event_nogil due to missing event sync + +The test asserts that the stream is "ready" but doesn't wait for the +event to be "executed" which makes it fail on some platforms where the +`query` call occurs "soon enough". + +Fixes #38807 +--- + test/test_cuda.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/test/test_cuda.py b/test/test_cuda.py +index af1e3f6305c39..8b1001bf20d58 100644 +--- a/test/test_cuda.py ++++ b/test/test_cuda.py +@@ -1025,7 +1025,8 @@ def _event_wait(self, spin_time_cycles): + with torch.cuda.stream(s1): + torch.cuda._sleep(10) + s1.synchronize() +- s1.record_event(e_tok) ++ e_tok.record() ++ e_tok.synchronize() + + self.assertTrue(s0.query()) + self.assertTrue(s1.query()) diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-dataloader-fixed-affinity.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-dataloader-fixed-affinity.patch new file mode 100644 index 00000000000..39e4d9883bd --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-dataloader-fixed-affinity.patch @@ -0,0 +1,48 @@ +From c7c7460fd3a49a9d289394b80d9ecf61898edf49 Mon Sep 17 00:00:00 2001 +From: Alexander Grund +Date: Wed, 9 Sep 2020 08:47:03 +0200 +Subject: [PATCH] Choose test affinity based on current affinity + +--- + test/test_dataloader.py | 18 ++++++++++++------ + 1 file changed, 12 insertions(+), 6 deletions(-) + +diff --git a/test/test_dataloader.py b/test/test_dataloader.py +index ca0c9e6cb511f..745942bcf01f2 100644 +--- a/test/test_dataloader.py ++++ b/test/test_dataloader.py +@@ -2128,22 +2128,28 @@ def __iter__(self): + after = os.sched_getaffinity(0) + return iter(after) + +- +-def worker_set_affinity(_): +- os.sched_setaffinity(0, [2]) +- +- + @unittest.skipIf( + not hasattr(os, 'sched_setaffinity'), + "os.sched_setaffinity is not available") + class TestSetAffinity(TestCase): + def test_set_affinity_in_worker_init(self): ++ # Query the current affinity mask to avoid setting a disallowed one ++ old_affinity = os.sched_getaffinity(0) ++ if not old_affinity: ++ self.skipTest("No affinity information") ++ # Choose any ++ expected_affinity = list(old_affinity)[-1] ++ ++ def worker_set_affinity(_): ++ os.sched_setaffinity(0, [expected_affinity]) ++ ++ + dataset = SetAffinityDataset() + + dataloader = torch.utils.data.DataLoader( + dataset, num_workers=2, worker_init_fn=worker_set_affinity) + for sample in dataloader: +- self.assertEqual(sample, [2]) ++ self.assertEqual(sample, [expected_affinity]) + + + diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-missing-rpc-shutdown.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-missing-rpc-shutdown.patch new file mode 100644 index 00000000000..8c267364c3c --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-missing-rpc-shutdown.patch @@ -0,0 +1,35 @@ +From: Luca Wehrstedt +Date: Thu, 16 Jul 2020 14:00:21 -0700 +https://github.com/pytorch/pytorch/pull/41558 +diff --git a/torch/testing/_internal/distributed/rpc/rpc_test.py b/torch/testing/_internal/distributed/rpc/rpc_test.py +index eaab5e9b4d576..d9ba1ea2c3b5a 100644 +--- a/torch/testing/_internal/distributed/rpc/rpc_test.py ++++ b/torch/testing/_internal/distributed/rpc/rpc_test.py +@@ -89,6 +89,9 @@ class StubRpcAgent: + def __init__(self, world_size): + self.world_size = world_size + ++ def shutdown(self): ++ pass ++ + def get_worker_infos(self): + return { + rpc.WorkerInfo(name=worker_name(rank), id=rank) +@@ -3345,6 +3348,8 @@ def test_init_pg_then_rpc(self): + # Test PG + dist.barrier() + ++ rpc.shutdown() ++ + @dist_init(setup_rpc=False) + def test_init_rpc_then_pg(self): + rpc.init_rpc( +@@ -3370,6 +3375,8 @@ def test_init_rpc_then_pg(self): + # Test PG + dist.barrier() + ++ rpc.shutdown() ++ + @dist_init + def test_wait_all_with_exception(self): + futs = [] diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-tensorexpr.patch b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-tensorexpr.patch new file mode 100644 index 00000000000..77d46f79581 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-1.6.0_fix-test-tensorexpr.patch @@ -0,0 +1,23 @@ +From 3b8ef0b216b01f5edeaa7673b5133f0bb78be6da Mon Sep 17 00:00:00 2001 +From: Nikolay Korovaiko +Date: Tue, 14 Jul 2020 18:08:50 -0700 +Subject: [PATCH] reenable test_tensorexpr + +--- + .jenkins/pytorch/test.sh | 2 +- + test/test_tensorexpr.py | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/test/test_tensorexpr.py b/test/test_tensorexpr.py +index 4ff0a3d7ed83f..742a273118302 100644 +--- a/test/test_tensorexpr.py ++++ b/test/test_tensorexpr.py +@@ -1246,7 +1246,7 @@ def test(x, y): + scripted(a, b) + cx = CudaCodeGenExecuted() + scripted(a, b) +- assert cx.elapsed_value() == 1 ++ assert cx.elapsed_value() == 0 + + @unittest.skipIf(not torch.cuda.is_available(), "requires CUDA") + def test_multi_rand(self): diff --git a/easybuild/easyconfigs/p/PyTorch/PyTorch-check-cpp-extension.py b/easybuild/easyconfigs/p/PyTorch/PyTorch-check-cpp-extension.py new file mode 100755 index 00000000000..0a8f6d3e6c5 --- /dev/null +++ b/easybuild/easyconfigs/p/PyTorch/PyTorch-check-cpp-extension.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python + +# Verify that PyTorch can JIT compile C++ extensions +# This requires at least Ninja and a working C++ compiler, preferably GCC +# +# Heavily based on the PyTorch tutorial for C++ extensions +# Author: Alexander Grund (TU Dresden) + +from torch.utils.cpp_extension import load_inline + +cpp_source = "torch::Tensor test_func(torch::Tensor x) { return x; }" + +module = load_inline(name='inline_extension', + cpp_sources=cpp_source, + functions=['test_func']) +assert module diff --git a/easybuild/easyconfigs/p/PyZMQ/PyZMQ-18.1.1-GCCcore-8.3.0-Python-3.7.4.eb b/easybuild/easyconfigs/p/PyZMQ/PyZMQ-18.1.1-GCCcore-8.3.0-Python-3.7.4.eb new file mode 100644 index 00000000000..37e85bad123 --- /dev/null +++ b/easybuild/easyconfigs/p/PyZMQ/PyZMQ-18.1.1-GCCcore-8.3.0-Python-3.7.4.eb @@ -0,0 +1,29 @@ +easyblock = 'PythonPackage' + +name = 'PyZMQ' +version = '18.1.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.zeromq.org/bindings:python' +description = """Python bindings for ZeroMQ""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = [PYPI_LOWER_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['8c69a6cbfa94da29a34f6b16193e7c15f5d3220cb772d6d17425ff3faa063a6d'] + +builddependencies = [('binutils', '2.32')] + +dependencies = [ + ('Python', '3.7.4'), + ('ZeroMQ', '4.3.2'), +] + +options = {'modulename': 'zmq'} + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/PycURL/PycURL-7.43.0.5-GCCcore-8.3.0-Python-3.7.4.eb b/easybuild/easyconfigs/p/PycURL/PycURL-7.43.0.5-GCCcore-8.3.0-Python-3.7.4.eb new file mode 100644 index 00000000000..4a900c434f9 --- /dev/null +++ b/easybuild/easyconfigs/p/PycURL/PycURL-7.43.0.5-GCCcore-8.3.0-Python-3.7.4.eb @@ -0,0 +1,30 @@ +# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. +easyblock = 'PythonPackage' + +name = 'PycURL' +version = '7.43.0.5' +versionsuffix = '-Python-%(pyver)s' + +homepage = "http://pycurl.io/" +description = """PycURL is a Python interface to libcurl. PycURL can be used to fetch objects identified by a URL + from a Python program, similar to the urllib Python module. PycURL is mature, very fast, and supports a lot of + features.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +builddependencies = [('binutils', '2.32')] + +dependencies = [ + ('Python', '3.7.4'), + ('cURL', '7.66.0'), +] + +source_urls = [PYPI_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['ec7dd291545842295b7b56c12c90ffad2976cc7070c98d7b1517b7b6cd5994b3'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/Python/Python-2.7.15-GCCcore-8.2.0.eb b/easybuild/easyconfigs/p/Python/Python-2.7.15-GCCcore-8.2.0.eb index c6a55fca047..6dfef9799d2 100644 --- a/easybuild/easyconfigs/p/Python/Python-2.7.15-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/p/Python/Python-2.7.15-GCCcore-8.2.0.eb @@ -86,8 +86,13 @@ exts_list = [ 'modulename': 'arff', }), ('pycrypto', '2.6.1', { - 'checksums': ['f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c'], 'modulename': 'Crypto', + 'patches': ['pycrypto-2.6.1_remove-usr-include.patch'], + 'checksums': [ + 'f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c', # pycrypto-2.6.1.tar.gz + # pycrypto-2.6.1_remove-usr-include.patch + '06c3d3bb290305e1360a023ea03f9281116c230de62382e6be9474996086712e', + ], }), ('ecdsa', '0.13', { 'checksums': ['64cf1ee26d1cde3c73c6d7d107f835fed7c6a2904aef9eac223d57ad800c43fa'], diff --git a/easybuild/easyconfigs/p/Python/Python-2.7.16-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/Python/Python-2.7.16-GCCcore-8.3.0.eb index d76321fc7e8..b40e28b44ee 100644 --- a/easybuild/easyconfigs/p/Python/Python-2.7.16-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/p/Python/Python-2.7.16-GCCcore-8.3.0.eb @@ -87,7 +87,12 @@ exts_list = [ }), ('pycrypto', '2.6.1', { 'modulename': 'Crypto', - 'checksums': ['f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c'], + 'patches': ['pycrypto-2.6.1_remove-usr-include.patch'], + 'checksums': [ + 'f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c', # pycrypto-2.6.1.tar.gz + # pycrypto-2.6.1_remove-usr-include.patch + '06c3d3bb290305e1360a023ea03f9281116c230de62382e6be9474996086712e', + ], }), ('ecdsa', '0.13.2', { 'checksums': ['5c034ffa23413ac923541ceb3ac14ec15a0d2530690413bff58c12b80e56d884'], @@ -272,6 +277,12 @@ exts_list = [ ('singledispatch', '3.4.0.3', { 'checksums': ['5b06af87df13818d14f08a028e42f566640aef80805c3b50c5056b086e3c2b9c'], }), + ('sortedcontainers', '2.1.0', { + 'checksums': ['974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a'], + }), + ('intervaltree', '3.0.2', { + 'checksums': ['cb4f61c81dcb4fea6c09903f3599015a83c9bdad1f0bbd232495e6681e19e273'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Python/Python-2.7.18-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/Python/Python-2.7.18-GCCcore-9.3.0.eb index f3bd9362a8b..dd6469b886c 100644 --- a/easybuild/easyconfigs/p/Python/Python-2.7.18-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/p/Python/Python-2.7.18-GCCcore-9.3.0.eb @@ -88,7 +88,12 @@ exts_list = [ }), ('pycrypto', '2.6.1', { 'modulename': 'Crypto', - 'checksums': ['f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c'], + 'patches': ['pycrypto-2.6.1_remove-usr-include.patch'], + 'checksums': [ + 'f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c', # pycrypto-2.6.1.tar.gz + # pycrypto-2.6.1_remove-usr-include.patch + '06c3d3bb290305e1360a023ea03f9281116c230de62382e6be9474996086712e', + ], }), ('ecdsa', '0.15', { 'checksums': ['8f12ac317f8a1318efa75757ef0a651abe12e51fc1af8838fb91079445227277'], @@ -291,6 +296,12 @@ exts_list = [ ('singledispatch', '3.4.0.3', { 'checksums': ['5b06af87df13818d14f08a028e42f566640aef80805c3b50c5056b086e3c2b9c'], }), + ('sortedcontainers', '2.2.2', { + 'checksums': ['4e73a757831fc3ca4de2859c422564239a31d8213d09a2a666e375807034d2ba'], + }), + ('intervaltree', '3.0.2', { + 'checksums': ['cb4f61c81dcb4fea6c09903f3599015a83c9bdad1f0bbd232495e6681e19e273'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Python/Python-3.7.2-GCCcore-8.2.0.eb b/easybuild/easyconfigs/p/Python/Python-3.7.2-GCCcore-8.2.0.eb index 80c3ad037f5..b79d38b1ffb 100644 --- a/easybuild/easyconfigs/p/Python/Python-3.7.2-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/p/Python/Python-3.7.2-GCCcore-8.2.0.eb @@ -98,8 +98,13 @@ exts_list = [ 'modulename': 'arff', }), ('pycrypto', '2.6.1', { - 'checksums': ['f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c'], 'modulename': 'Crypto', + 'patches': ['pycrypto-2.6.1_remove-usr-include.patch'], + 'checksums': [ + 'f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c', # pycrypto-2.6.1.tar.gz + # pycrypto-2.6.1_remove-usr-include.patch + '06c3d3bb290305e1360a023ea03f9281116c230de62382e6be9474996086712e', + ], }), ('ecdsa', '0.13', { 'checksums': ['64cf1ee26d1cde3c73c6d7d107f835fed7c6a2904aef9eac223d57ad800c43fa'], diff --git a/easybuild/easyconfigs/p/Python/Python-3.7.4-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/Python/Python-3.7.4-GCCcore-8.3.0.eb index 0afa3319e20..8ab51697f65 100644 --- a/easybuild/easyconfigs/p/Python/Python-3.7.4-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/p/Python/Python-3.7.4-GCCcore-8.3.0.eb @@ -96,7 +96,12 @@ exts_list = [ }), ('pycrypto', '2.6.1', { 'modulename': 'Crypto', - 'checksums': ['f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c'], + 'patches': ['pycrypto-2.6.1_remove-usr-include.patch'], + 'checksums': [ + 'f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c', # pycrypto-2.6.1.tar.gz + # pycrypto-2.6.1_remove-usr-include.patch + '06c3d3bb290305e1360a023ea03f9281116c230de62382e6be9474996086712e', + ], }), ('ecdsa', '0.13.2', { 'checksums': ['5c034ffa23413ac923541ceb3ac14ec15a0d2530690413bff58c12b80e56d884'], @@ -284,6 +289,12 @@ exts_list = [ ('future', '0.17.1', { 'checksums': ['67045236dcfd6816dc439556d009594abf643e5eb48992e36beac09c2ca659b8'], }), + ('sortedcontainers', '2.1.0', { + 'checksums': ['974e9a32f56b17c1bac2aebd9dcf197f3eb9cd30553c5852a3187ad162e1a03a'], + }), + ('intervaltree', '3.0.2', { + 'checksums': ['cb4f61c81dcb4fea6c09903f3599015a83c9bdad1f0bbd232495e6681e19e273'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Python/Python-3.8.2-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/Python/Python-3.8.2-GCCcore-9.3.0.eb index a1d9ddea2d0..02f9fd742c7 100644 --- a/easybuild/easyconfigs/p/Python/Python-3.8.2-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/p/Python/Python-3.8.2-GCCcore-9.3.0.eb @@ -93,7 +93,12 @@ exts_list = [ }), ('pycrypto', '2.6.1', { 'modulename': 'Crypto', - 'checksums': ['f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c'], + 'patches': ['pycrypto-2.6.1_remove-usr-include.patch'], + 'checksums': [ + 'f2ce1e989b272cfcb677616763e0a2e7ec659effa67a88aa92b3a65528f60a3c', # pycrypto-2.6.1.tar.gz + # pycrypto-2.6.1_remove-usr-include.patch + '06c3d3bb290305e1360a023ea03f9281116c230de62382e6be9474996086712e', + ], }), ('ecdsa', '0.15', { 'checksums': ['8f12ac317f8a1318efa75757ef0a651abe12e51fc1af8838fb91079445227277'], @@ -291,6 +296,12 @@ exts_list = [ ('future', '0.18.2', { 'checksums': ['b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d'], }), + ('sortedcontainers', '2.2.2', { + 'checksums': ['4e73a757831fc3ca4de2859c422564239a31d8213d09a2a666e375807034d2ba'], + }), + ('intervaltree', '3.0.2', { + 'checksums': ['cb4f61c81dcb4fea6c09903f3599015a83c9bdad1f0bbd232495e6681e19e273'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/p/Python/pycrypto-2.6.1_remove-usr-include.patch b/easybuild/easyconfigs/p/Python/pycrypto-2.6.1_remove-usr-include.patch new file mode 100644 index 00000000000..d94948cfd3e --- /dev/null +++ b/easybuild/easyconfigs/p/Python/pycrypto-2.6.1_remove-usr-include.patch @@ -0,0 +1,15 @@ +remove hardcoded /usr/include for build fastmath component of pycrypto; +it causes problems in a sysroot build environment, and it's not actually needed anyway +since /usr/include is a standard location +author: Kenneth Hoste (HPC-UGent) +--- pycrypto-2.6.1/setup.py.orig 2020-09-01 10:04:38.890764478 +0200 ++++ pycrypto-2.6.1/setup.py 2020-09-01 10:04:51.061886099 +0200 +@@ -370,7 +370,7 @@ + 'ext_modules': plat_ext + [ + # _fastmath (uses GNU mp library) + Extension("Crypto.PublicKey._fastmath", +- include_dirs=['src/','/usr/include/'], ++ include_dirs=['src/'], + libraries=['gmp'], + sources=["src/_fastmath.c"]), + diff --git a/easybuild/easyconfigs/p/patchelf/patchelf-0.12-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/patchelf/patchelf-0.12-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..f114d746236 --- /dev/null +++ b/easybuild/easyconfigs/p/patchelf/patchelf-0.12-GCCcore-9.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'ConfigureMake' + +name = 'patchelf' +version = '0.12' + +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': '9.3.0'} + +source_urls = ['https://github.com/NixOS/patchelf/archive/'] +sources = ['%(version)s.tar.gz'] +checksums = ['3dca33fb862213b3541350e1da262249959595903f559eae0fbc68966e9c3f56'] + +builddependencies = [ + ('binutils', '2.34'), + ('Autotools', '20180311'), +] + +preconfigopts = "sh bootstrap.sh && " + +sanity_check_paths = { + 'files': ['bin/patchelf'], + 'dirs': ['share'], +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/p/pbbam/pbbam-1.0.6-gompi-2019a.eb b/easybuild/easyconfigs/p/pbbam/pbbam-1.0.6-gompi-2019a.eb index 7cd14c6d65f..0fe1ef282fe 100644 --- a/easybuild/easyconfigs/p/pbbam/pbbam-1.0.6-gompi-2019a.eb +++ b/easybuild/easyconfigs/p/pbbam/pbbam-1.0.6-gompi-2019a.eb @@ -10,7 +10,6 @@ description = """The pbbam software package provides components to create, query toolchain = {'name': 'gompi', 'version': '2019a'} toolchainopts = {'cstd': 'c++14'} -local_gtest_ver = '1.8.0' source_urls = ['https://github.com/PacificBiosciences/pbbam/archive/'] sources = ['%(version)s.tar.gz'] checksums = ['23c297f10b0cdfed056b93da90ca146ebd462216938138683c3c4c486719a6f4'] @@ -20,7 +19,7 @@ builddependencies = [ ('Meson', '0.50.0', '-Python-3.7.2'), ('Ninja', '1.9.0'), ('cram', '0.7'), - ('gtest', '1.8.1'), + ('googletest', '1.8.1'), ] dependencies = [ ('Boost', '1.70.0'), diff --git a/easybuild/easyconfigs/p/plantcv/plantcv-3.8.0-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/p/plantcv/plantcv-3.8.0-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..05a4cd48376 --- /dev/null +++ b/easybuild/easyconfigs/p/plantcv/plantcv-3.8.0-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,62 @@ +# This easyconfig was written by the HPC team at Agriculture Victoria Research +# http://agriculture.vic.gov.au/agriculture/innovation-and-research +# +# Author: Ben Moran +easyblock = 'PythonBundle' + +name = 'plantcv' +version = '3.8.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pypi.org/project/plantcv/' +description = """PlantCV: Plant phenotyping using computer vision.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +builddependencies = [('binutils', '2.34')] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('matplotlib', '3.2.1', versionsuffix), + ('Pillow', '7.0.0', versionsuffix), + ('scikit-image', '0.17.1', versionsuffix), + ('statsmodels', '0.11.1', versionsuffix), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('palettable', '3.3.0', { + 'checksums': ['72feca71cf7d79830cd6d9181b02edf227b867d503bec953cf9fa91bf44896bd'], + }), + ('mizani', '0.7.1', { + 'checksums': ['97eea665d17fdc6c827b832925c094839e1ef7bf65b3aa47105e772b6eca9b0a'], + }), + ('descartes', '1.1.0', { + 'checksums': ['135a502146af5ed6ff359975e2ebc5fa4b71b5432c355c2cafdc6dea1337035b'], + }), + ('plotnine', '0.7.0', { + 'checksums': ['8ee67cbf010ccea32670760e930b7b02177030a89ccdf85e35d156a96ce36cd3'], + }), + ('opencv-python', '3.4.10.35', { + 'source_tmpl': 'opencv_python-%(version)s-cp38-cp38-manylinux2014_x86_64.whl', + 'unpack_sources': False, + 'checksums': ['be25d76d9a104c73a0bb934894e54f2cebf5fb7aa46925fafbe2ccfcc48297cc'], + 'modulename': 'cv2', + }), + (name, version, { + 'checksums': ['4728e2ba78011cde4c7e2da2e45174bf71d9441fa58f772f25d4ad0dc9deecba'], + }), +] + +sanity_check_paths = { + 'files': ['bin/plantcv-workflow.py'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'], +} + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pocl/pocl-1.3-gcccuda-2019a.eb b/easybuild/easyconfigs/p/pocl/pocl-1.3-gcccuda-2019a.eb new file mode 100644 index 00000000000..c4c9623c28e --- /dev/null +++ b/easybuild/easyconfigs/p/pocl/pocl-1.3-gcccuda-2019a.eb @@ -0,0 +1,40 @@ +easyblock = 'CMakeNinja' + +name = 'pocl' +version = '1.3' + +homepage = 'https://portablecl.org' +description = "Pocl is a portable open source (MIT-licensed) implementation of the OpenCL standard" + +toolchain = {'name': 'gcccuda', 'version': '2019a'} + +source_urls = ['https://github.com/pocl/pocl/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['6527e3f47fab7c21e96bc757c4ae3303901f35e23f64642d6da5cc4c4fcc915a'] + +builddependencies = [ + ('CMake', '3.13.3'), + ('Ninja', '1.9.0'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Clang', '8.0.1', '-CUDA-10.1.105'), + ('hwloc', '1.11.11'), + ('libtool', '2.4.6'), + ('libxml2', '2.9.8'), +] + +separate_build_dir = True + +# disable attempt to find an ICD loader, always build libOpenCL.so, enable CUDA +configopts = "-DENABLE_ICD=0 -DINSTALL_OPENCL_HEADERS=1 -DENABLE_CUDA=1 " +# make sure we use the easybuild Clang +configopts += "-DWITH_LLVM_CONFIG=$EBROOTCLANG/bin/llvm-config" + +sanity_check_paths = { + 'files': ['bin/poclcc', 'lib64/libOpenCL.%s' % SHLIB_EXT], + 'dirs': ['include/CL', 'lib64/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pocl/pocl-1.5-GCC-9.3.0.eb b/easybuild/easyconfigs/p/pocl/pocl-1.5-GCC-9.3.0.eb new file mode 100644 index 00000000000..9868608073f --- /dev/null +++ b/easybuild/easyconfigs/p/pocl/pocl-1.5-GCC-9.3.0.eb @@ -0,0 +1,44 @@ +easyblock = 'CMakeNinja' + +name = 'pocl' +version = '1.5' + +homepage = 'https://portablecl.org' +description = "Pocl is a portable open source (MIT-licensed) implementation of the OpenCL standard" + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +source_urls = ['https://github.com/pocl/pocl/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_fix-examples.patch'] +checksums = [ + '4fcf4618171727d165fc044d465a66e3119217bb4577a97374f94fcd8aed330e', # v1.5.tar.gz + 'be913b2157cc37fa62306b914f3a93cdaa30c98028220717a6fb4bc21d2cb33c', # pocl-1.5_fix-examples.patch +] + +builddependencies = [ + ('CMake', '3.16.4'), + ('Ninja', '1.10.0'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Clang', '10.0.1'), + ('hwloc', '2.2.0'), + ('libtool', '2.4.6'), + ('libxml2', '2.9.10'), +] + +separate_build_dir = True + +# disable attempt to find an ICD loader, always build libOpenCL.so +configopts = "-DENABLE_ICD=0 -DINSTALL_OPENCL_HEADERS=1 " +# make sure we use the easybuild Clang +configopts += "-DWITH_LLVM_CONFIG=$EBROOTCLANG/bin/llvm-config" + +sanity_check_paths = { + 'files': ['bin/poclcc', 'lib64/libOpenCL.%s' % SHLIB_EXT], + 'dirs': ['include/CL', 'lib64/pkgconfig'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pocl/pocl-1.5_fix-examples.patch b/easybuild/easyconfigs/p/pocl/pocl-1.5_fix-examples.patch new file mode 100644 index 00000000000..d3d39ba0109 --- /dev/null +++ b/easybuild/easyconfigs/p/pocl/pocl-1.5_fix-examples.patch @@ -0,0 +1,22 @@ +From 28a31079d9284215f92ace1a0f35cf161080cf59 Mon Sep 17 00:00:00 2001 +From: Matthias Diener +Date: Thu, 7 May 2020 12:50:49 -0700 +Subject: [PATCH] matrix1: add missing #define + +https://github.com/pocl/pocl/pull/818 +--- + examples/matrix1/matrix1.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/examples/matrix1/matrix1.c b/examples/matrix1/matrix1.c +index 14965b6f2..758c414d0 100644 +--- a/examples/matrix1/matrix1.c ++++ b/examples/matrix1/matrix1.c +@@ -23,6 +23,7 @@ + + /* For srandom. */ + #define _DEFAULT_SOURCE ++#define _BSD_SOURCE + + #include + #include diff --git a/easybuild/easyconfigs/p/poppler/poppler-0.90.1-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/poppler/poppler-0.90.1-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..a8e040b41db --- /dev/null +++ b/easybuild/easyconfigs/p/poppler/poppler-0.90.1-GCCcore-8.3.0.eb @@ -0,0 +1,53 @@ +# easybuild easyconfig +# +# John Dey jfdey@fredhutch.org +# Fred Hutchinson Cancer Research Center Seattle WA USA + +easyblock = 'CMakeMake' + +name = 'poppler' +version = '0.90.1' + +homepage = 'https://poppler.freedesktop.org/' +description = """Poppler is a PDF rendering library based on the xpdf-3.0 code + base.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://poppler.freedesktop.org/'] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['984d82e72e91418d280885298c8bdc855a2fd92665fd52a1345b27235e0c71c4'] + +separate_build_dir = True + +builddependencies = [ + ('pkgconfig', '1.5.1', '-Python-3.7.4'), + ('binutils', '2.32'), + ('CMake', '3.15.3'), + ('Qt5', '5.13.1'), + ('cairo', '1.16.0'), + ('GObject-Introspection', '1.63.1', '-Python-3.7.4'), + ('libjpeg-turbo', '2.0.3'), + ('libpng', '1.6.37'), + ('LibTIFF', '4.0.10'), + ('NSS', '3.45'), + ('OpenJPEG', '2.3.1'), +] + +local_bin_files = ['pdfdetach', 'pdffonts', 'pdfimages', 'pdfinfo', 'pdfseparate', + 'pdftocairo', 'pdftohtml', 'pdftoppm', 'pdftops', 'pdftotext', + 'pdfunite'] + +sanity_check_paths = { + 'files': ['bin/%s' % x for x in local_bin_files] + + ['lib/libpoppler.%s' % SHLIB_EXT, + 'lib/libpoppler-cpp.%s' % SHLIB_EXT, + 'lib/libpoppler-glib.%s' % SHLIB_EXT, + 'include/poppler/glib/poppler.h'], + 'dirs': ['bin', + 'include', + 'include/poppler/glib', + ] +} + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/p/protobuf-python/protobuf-python-3.10.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-3.10.0-foss-2019b-Python-3.7.4.eb index 4f45605d83d..1ced665021c 100644 --- a/easybuild/easyconfigs/p/protobuf-python/protobuf-python-3.10.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-3.10.0-foss-2019b-Python-3.7.4.eb @@ -9,24 +9,24 @@ description = """Python Protocol Buffers runtime library.""" toolchain = {'name': 'foss', 'version': '2019b'} -source_urls = ['https://github.com/google/protobuf/releases/download/v%(version)s/'] -sources = [SOURCE_TAR_GZ] -checksums = ['83a3a0b23ed2b08041dbb0af92d023e5325a4324c2bc8acb55962d349710e52f'] +source_urls = ['https://pypi.python.org/packages/source/p/protobuf'] +sources = [{'download_filename': 'protobuf-%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['db83b5c12c0cd30150bb568e6feb2435c49ce4e68fe2d7b903113f0e221e58fe'] dependencies = [ ('Python', '3.7.4'), ('protobuf', version) ] -start_dir = 'python' - download_dep_fail = True -use_pip = False # installation fails with pip +use_pip = True sanity_pip_check = True +# Make sure protobuf is installed as a regular folder or it will not be found if +# other google packages are installed in other site-packages folders sanity_check_paths = { 'files': [], - 'dirs': ['lib/python%(pyshortver)s/site-packages'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/google/protobuf'], } options = {'modulename': 'google.protobuf'} diff --git a/easybuild/easyconfigs/p/protobuf-python/protobuf-python-3.10.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-3.10.0-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..bd8381924cb --- /dev/null +++ b/easybuild/easyconfigs/p/protobuf-python/protobuf-python-3.10.0-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'protobuf-python' +version = '3.10.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/google/protobuf/' +description = """Python Protocol Buffers runtime library.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +source_urls = ['https://pypi.python.org/packages/source/p/protobuf'] +sources = [{'download_filename': 'protobuf-%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}] +checksums = ['db83b5c12c0cd30150bb568e6feb2435c49ce4e68fe2d7b903113f0e221e58fe'] + +dependencies = [ + ('Python', '3.7.4'), + ('protobuf', version) +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +# Make sure protobuf is installed as a regular folder or it will not be found if +# other google packages are installed in other site-packages folders +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages/google/protobuf'], +} + +options = {'modulename': 'google.protobuf'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/protobuf/protobuf-3.10.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/p/protobuf/protobuf-3.10.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..702e79d7059 --- /dev/null +++ b/easybuild/easyconfigs/p/protobuf/protobuf-3.10.0-GCCcore-9.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'CMakeMake' + +name = 'protobuf' +version = '3.10.0' + +homepage = 'https://github.com/google/protobuf/' +description = """Google Protocol Buffers""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/google/protobuf/archive/v%(version)s/'] +sources = [SOURCE_TAR_GZ] +checksums = ['758249b537abba2f21ebc2d02555bf080917f0f2f88f4cbe2903e0e28c4187ed'] + +builddependencies = [ + ('binutils', '2.34'), + ('CMake', '3.16.4'), +] + +srcdir = 'cmake' + +configopts = '-Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=ON ' + +sanity_check_paths = { + 'files': ['bin/protoc', 'lib/libprotobuf.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/p/protozero/protozero-1.7.0-GCCcore-8.3.0.eb b/easybuild/easyconfigs/p/protozero/protozero-1.7.0-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..89f0f783675 --- /dev/null +++ b/easybuild/easyconfigs/p/protozero/protozero-1.7.0-GCCcore-8.3.0.eb @@ -0,0 +1,27 @@ +easyblock = "CMakeMake" + +name = 'protozero' +version = '1.7.0' + +homepage = "https://github.com/mapbox/protozero" +description = "Minimalistic protocol buffer decoder and encoder in C++." + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://github.com/mapbox/protozero/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['beffbdfab060854fd770178a8db9c028b5b6ee4a059a2fed82c46390a85f3f31'] + +builddependencies = { + ('CMake', '3.15.3'), + ('binutils', '2.32'), +} + +sanity_check_paths = { + 'files': ['include/protozero/%s.hpp' % x for x in ['byteswap', 'config', 'data_view', 'exception', 'iterators', + 'pbf_builder', 'pbf_message', 'pbf_reader', 'pbf_writer', + 'types', 'varint', 'version']], + 'dirs': ['include/protozero'] +} + +moduleclass = "devel" diff --git a/easybuild/easyconfigs/p/pySCENIC/pySCENIC-0.10.3-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/p/pySCENIC/pySCENIC-0.10.3-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..e12c3bc967d --- /dev/null +++ b/easybuild/easyconfigs/p/pySCENIC/pySCENIC-0.10.3-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,85 @@ +easyblock = 'PythonBundle' + +name = 'pySCENIC' +version = '0.10.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/aertslab/pySCENIC' +description = """pySCENIC is a lightning-fast python implementation of the SCENIC +pipeline (Single-Cell rEgulatory Network Inference and Clustering) which enables +biologists to infer transcription factors, gene regulatory networks and +cell types from single-cell RNA-seq data.""" + +toolchain = {'name': 'intel', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('PyYAML', '5.3'), + ('numba', '0.50.0', versionsuffix), + ('Arrow', '0.17.1', versionsuffix), + ('scikit-learn', '0.23.1', versionsuffix), + ('tqdm', '4.47.0'), + ('networkx', '2.4', versionsuffix), + ('h5py', '2.10.0', versionsuffix), + ('dask', '2.18.1', versionsuffix), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('cytoolz', '0.10.1', { + 'checksums': ['82f5bba81d73a5a6b06f2a3553ff9003d865952fcb32e1df192378dd944d8a5c'], + }), + ('dill', '0.3.2', { + 'source_tmpl': 'dill-%(version)s.zip', + 'checksums': ['6e12da0d8e49c220e8d6e97ee8882002e624f1160289ce85ec2cc0a5246b3a2e'], + }), + ('multiprocessing_on_dill', '3.5.0a4', { + 'checksums': ['d6d50c300ff4bd408bb71eb78725e60231039ee9b3d0d9bb7697b9d0e15045e7'], + }), + ('frozendict', '1.2', { + 'checksums': ['774179f22db2ef8a106e9c38d4d1f8503864603db08de2e33be5b778230f6e45'], + }), + ('arboreto', '0.1.5', { + 'checksums': ['a78c73b367eaae38dadeba150e52ac98aec6fc916df703ce61b79d27fe1015f9'], + }), + ('boltons', '20.2.0', { + 'checksums': ['d367506c0b32042bb1ee3bf7899f2dcc8492dceb42ce3727b89e174d85bffe6e'], + }), + ('interlap', '0.2.6', { + 'checksums': ['a8585a165bf7e94d4d262811b4cb00674059414c50afc7561c949b0feb78fa09'], + }), + ('umap-learn', '0.4.6', { + 'modulename': 'umap', + 'checksums': ['4276da9a039c79fa5b4f8d3515a8ccaaccf11a2f59ce8d15baf9d2015a5e82b3'], + }), + ('numpy_groupies', '0.9.10', { + 'checksums': ['a6835c252b7bd489e0f701f8bf5bc880c647ef251e3b434998b95a8aecc9b68a'], + }), + ('loompy', '3.0.6', { + 'checksums': ['58e9763b8ab1af2a4a0e3805d120458b5184fd2b0f3031657ecce33c63ca4c46'], + }), + ('pyscenic', version, { + 'patches': ['pySCENIC-%(version)s_fix-pyarrow-FeatherReader.patch'], + 'checksums': [ + '517c4fadf6198ba0202116f1c419d61c4d4491fc4099b611fbe738845fe4acc9', # pyscenic-0.10.3.tar.gz + # pySCENIC-0.10.3_fix-pyarrow-FeatherReader.patch + '022e69a384771a1389d176db699cc97f5a3c8ee43502a49f0335b82c1932e0e5', + ], + # strip out version restrictions for required Python packages + 'preinstallopts': "sed -i 's/[=>]=[0-9].*//g' requirements.txt && ", + }), +] + +sanity_check_paths = { + 'files': ['bin/pyscenic'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["pyscenic --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/p/pySCENIC/pySCENIC-0.10.3_fix-pyarrow-FeatherReader.patch b/easybuild/easyconfigs/p/pySCENIC/pySCENIC-0.10.3_fix-pyarrow-FeatherReader.patch new file mode 100644 index 00000000000..0362c621f19 --- /dev/null +++ b/easybuild/easyconfigs/p/pySCENIC/pySCENIC-0.10.3_fix-pyarrow-FeatherReader.patch @@ -0,0 +1,17 @@ +fix compatibilty with PyArrow 0.17.1, where FeatherReader was moved from pyarrow.feather to pyarrow.lib +author: Kenneth Hoste (HPC-UGent) +--- pyscenic-0.10.3/src/pyscenic/rnkdb.py.orig 2020-08-11 14:55:53.212511866 +0200 ++++ pyscenic-0.10.3/src/pyscenic/rnkdb.py 2020-08-11 14:56:02.932604710 +0200 +@@ -9,7 +9,11 @@ + from operator import itemgetter + from .genesig import GeneSignature + from cytoolz import memoize +-from pyarrow.feather import write_feather, FeatherReader ++from pyarrow.feather import write_feather ++try: ++ from pyarrow.feather import FeatherReader ++except ImportError: ++ from pyarrow.lib import FeatherReader + from tqdm import tqdm + + diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-8.3.0-Python-3.7.4.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-8.3.0-Python-3.7.4.eb index 97e602e26aa..37a8909ca53 100644 --- a/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-8.3.0-Python-3.7.4.eb +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-8.3.0-Python-3.7.4.eb @@ -1,5 +1,3 @@ -easyblock = 'CMakeMake' - name = 'pybind11' version = '2.4.3' versionsuffix = '-Python-%(pyver)s' @@ -12,7 +10,11 @@ toolchain = {'name': 'GCCcore', 'version': '8.3.0'} source_urls = ['https://github.com/pybind/pybind11/archive/'] sources = ['v%(version)s.tar.gz'] -checksums = ['1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d'] +patches = ['%(name)s-%(version)s-fix-get-include.patch'] +checksums = [ + '1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d', # v2.4.3.tar.gz + 'b03550f05dcff97eeb3d7f4cd393b0584341ac7a310c89ee120f95e54fdc3125', # pybind11-2.4.3-fix-get-include.patch +] builddependencies = [ ('binutils', '2.32'), @@ -21,9 +23,4 @@ builddependencies = [ ] dependencies = [('Python', '3.7.4')] -sanity_check_paths = { - 'files': [], - 'dirs': ['include/pybind11', 'share/cmake/pybind11'], -} - moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-9.3.0-Python-3.8.2.eb index e43f10744da..54ea7b78ec7 100644 --- a/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-9.3.0-Python-3.8.2.eb +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-GCCcore-9.3.0-Python-3.8.2.eb @@ -1,5 +1,3 @@ -easyblock = 'CMakeMake' - name = 'pybind11' version = '2.4.3' versionsuffix = '-Python-%(pyver)s' @@ -12,22 +10,19 @@ toolchain = {'name': 'GCCcore', 'version': '9.3.0'} source_urls = ['https://github.com/pybind/pybind11/archive/'] sources = ['v%(version)s.tar.gz'] -checksums = ['1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d'] +patches = ['%(name)s-%(version)s-fix-get-include.patch'] +checksums = [ + '1eed57bc6863190e35637290f97a20c81cfe4d9090ac0a24f3bbf08f265eb71d', # v2.4.3.tar.gz + 'b03550f05dcff97eeb3d7f4cd393b0584341ac7a310c89ee120f95e54fdc3125', # pybind11-2.4.3-fix-get-include.patch +] builddependencies = [ ('binutils', '2.34'), ('CMake', '3.16.4'), ('Eigen', '3.3.7'), ] -dependencies = [ - ('Python', '3.8.2'), -] +dependencies = [('Python', '3.8.2')] configopts = "-DPYTHON_EXECUTABLE=$EBROOTPYTHON/bin/python" -sanity_check_paths = { - 'files': [], - 'dirs': ['include/pybind11', 'share/cmake/pybind11'], -} - moduleclass = 'lib' diff --git a/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-fix-get-include.patch b/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-fix-get-include.patch new file mode 100644 index 00000000000..e6d7892a517 --- /dev/null +++ b/easybuild/easyconfigs/p/pybind11/pybind11-2.4.3-fix-get-include.patch @@ -0,0 +1,27 @@ +The current function doesn't take into account that a custom install prefix might have been set +at installation time which we do in EB. +Insert a quick hack to make it work as it should (fixed in 2.5.0) + +Author: Alexander Grund (TU Dresden) + +diff --git a/pybind11/__init__.py b/pybind11/__init__.py +index c625e8c..5c2e3bd 100644 +--- a/pybind11/__init__.py ++++ b/pybind11/__init__.py +@@ -27,10 +27,16 @@ def get_include(user=False): + + dist_cobj = dist.get_command_obj('install', create=True) + ++ # Very crude hack to get install prefix from /lib/python3.7/site-packages/pybind11 ++ from pathlib import Path ++ prefix = prefix = Path(__file__).resolve().parents[4] ++ + # Search for packages in user's home directory? + if user: + dist_cobj.user = user + dist_cobj.prefix = "" ++ else: ++ dist_cobj.prefix = prefix + dist_cobj.finalize_options() + + return os.path.dirname(dist_cobj.install_headers) diff --git a/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.0-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..9f82c2f729f --- /dev/null +++ b/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.0-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,25 @@ +easyblock = 'PythonPackage' + +name = 'pycocotools' +version = '2.0.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/cocodataset/cocoapi' +description = "Tools for working with the MSCOCO dataset" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['cbb8c2fbab80450a67ee9879c63b0bc8a69e58dd9a0153d55de404c0d383a94b'] + +dependencies = { + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), +} + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.1-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.1-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..8831ba2ca49 --- /dev/null +++ b/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.1-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,27 @@ +easyblock = 'PythonPackage' + +name = 'pycocotools' +version = '2.0.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pypi.org/project/pycocotools' +description = "Official APIs for the MS-COCO dataset" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['1c06e73a85ed9874c1174d47064524b9fb2759b95a6997437775652f20c1711f'] + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('matplotlib', '3.1.1', versionsuffix), +] + +download_dep_fail = True +use_pip = True + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.1-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.1-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..04e039b4f51 --- /dev/null +++ b/easybuild/easyconfigs/p/pycocotools/pycocotools-2.0.1-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'pycocotools' +version = '2.0.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/cocodataset/cocoapi' +description = "Tools for working with the MSCOCO dataset" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['1c06e73a85ed9874c1174d47064524b9fb2759b95a6997437775652f20c1711f'] + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('matplotlib', '3.1.1', versionsuffix), +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/p/pyproj/pyproj-2.6.1.post1-GCCcore-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/p/pyproj/pyproj-2.6.1.post1-GCCcore-9.3.0-Python-3.8.2.eb new file mode 100644 index 00000000000..0b7a9af5fdc --- /dev/null +++ b/easybuild/easyconfigs/p/pyproj/pyproj-2.6.1.post1-GCCcore-9.3.0-Python-3.8.2.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonPackage' + +name = 'pyproj' +version = '2.6.1.post1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://pyproj4.github.io/pyproj' +description = "Python interface to PROJ4 library for cartographic transformations" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['4f5b02b4abbd41610397c635b275a8ee4a2b5bc72a75572b98ac6ae7befa471e'] + +builddependencies = [ + ('binutils', '2.34'), +] + +dependencies = [ + ('Python', '3.8.2'), + ('PROJ', '7.0.0'), +] + +download_dep_fail = True +use_pip = True + +preinstallopts = "export PROJ_DIR=$EBROOTPROJ && " + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/q/Qt5/Qt5-5.12.3-GCCcore-8.2.0.eb b/easybuild/easyconfigs/q/Qt5/Qt5-5.12.3-GCCcore-8.2.0.eb index fe82e328477..910718cb715 100644 --- a/easybuild/easyconfigs/q/Qt5/Qt5-5.12.3-GCCcore-8.2.0.eb +++ b/easybuild/easyconfigs/q/Qt5/Qt5-5.12.3-GCCcore-8.2.0.eb @@ -3,7 +3,7 @@ easyblock = 'EB_Qt' name = 'Qt5' version = '5.12.3' -homepage = 'http://qt.io/' +homepage = 'https://qt.io/' description = "Qt is a comprehensive cross-platform C++ application framework." toolchain = {'name': 'GCCcore', 'version': '8.2.0'} @@ -11,8 +11,8 @@ toolchain = {'name': 'GCCcore', 'version': '8.2.0'} toolchainopts = {'vectorize': False} source_urls = [ - 'http://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/', - 'http://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/' + 'https://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/', + 'https://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/' ] sources = ['qt-everywhere-src-%(version)s.tar.xz'] patches = [ @@ -44,12 +44,14 @@ dependencies = [ ('libpng', '1.6.36'), # deps for QtWebEngine ('X11', '20190311'), + ('fontconfig', '2.13.1'), ('DBus', '1.13.8'), ('libevent', '2.1.8'), ('libGLU', '9.0.0'), ('libjpeg-turbo', '2.0.2'), ('NSS', '3.42.1'), ('snappy', '1.1.7'), + ('bzip2', '1.0.6'), ] # qtgamepad needs recent kernel/libevdev (fails on RHEL 6.x) diff --git a/easybuild/easyconfigs/q/Qt5/Qt5-5.13.1-GCCcore-8.3.0.eb b/easybuild/easyconfigs/q/Qt5/Qt5-5.13.1-GCCcore-8.3.0.eb index 5eadc5a2d20..df51b43241c 100644 --- a/easybuild/easyconfigs/q/Qt5/Qt5-5.13.1-GCCcore-8.3.0.eb +++ b/easybuild/easyconfigs/q/Qt5/Qt5-5.13.1-GCCcore-8.3.0.eb @@ -46,6 +46,7 @@ dependencies = [ ('libpng', '1.6.37'), # deps for QtWebEngine ('X11', '20190717'), + ('fontconfig', '2.13.1'), ('DBus', '1.13.12'), ('libevent', '2.1.11'), ('libGLU', '9.0.1'), @@ -53,6 +54,7 @@ dependencies = [ ('NSS', '3.45'), ('snappy', '1.1.7'), ('JasPer', '2.0.14'), + ('bzip2', '1.0.8'), ] # qtgamepad needs recent kernel/libevdev (fails on RHEL 6.x) diff --git a/easybuild/easyconfigs/q/Qt5/Qt5-5.14.1-GCCcore-9.3.0.eb b/easybuild/easyconfigs/q/Qt5/Qt5-5.14.1-GCCcore-9.3.0.eb index 05c2a6c405c..f1be03a77df 100644 --- a/easybuild/easyconfigs/q/Qt5/Qt5-5.14.1-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/q/Qt5/Qt5-5.14.1-GCCcore-9.3.0.eb @@ -18,11 +18,13 @@ sources = ['qt-everywhere-src-%(version)s.tar.xz'] patches = [ 'Qt5-5.13.1_fix-avx2.patch', 'Qt5-5.13.1_fix-qmake-libdir.patch', + 'Qt5-5.14.1_fix-mantissatable.patch', ] checksums = [ '6f17f488f512b39c2feb57d83a5e0a13dcef32999bea2e2a8f832f54a29badb8', # qt-everywhere-src-5.14.1.tar.xz '6f46005f056bf9e6ff3e5d012a874d18ee03b33e685941f2979c970be91a9dbc', # Qt5-5.13.1_fix-avx2.patch '511ca9c0599ceb1989f73d8ceea9199c041512d3a26ee8c5fd870ead2c10cb63', # Qt5-5.13.1_fix-qmake-libdir.patch + '11db32da45a003963e6abfd8ab7161d7e4ec3a8d668b54d18a3f6a713fd813a2', # Qt5-5.14.1_fix-mantissatable.patch ] builddependencies = [ @@ -44,6 +46,7 @@ dependencies = [ ('libpng', '1.6.37'), # deps for QtWebEngine ('X11', '20200222'), + ('fontconfig', '2.13.92'), ('DBus', '1.13.12'), ('libevent', '2.1.11'), ('libGLU', '9.0.1'), @@ -51,10 +54,12 @@ dependencies = [ ('NSS', '3.51'), ('snappy', '1.1.8'), ('JasPer', '2.0.14'), + ('bzip2', '1.0.8'), ] # qtgamepad needs recent kernel/libevdev (fails on RHEL 6.x) -configopts = '-skip qtgamepad' +# qtwayland fails to build on (some) Centos 7 systems +configopts = '-skip qtgamepad -skip qtwayland' # make sure QtWebEngine component is being built & installed check_qtwebengine = True diff --git a/easybuild/easyconfigs/q/Qt5/Qt5-5.14.1_fix-mantissatable.patch b/easybuild/easyconfigs/q/Qt5/Qt5-5.14.1_fix-mantissatable.patch new file mode 100644 index 00000000000..6603177399f --- /dev/null +++ b/easybuild/easyconfigs/q/Qt5/Qt5-5.14.1_fix-mantissatable.patch @@ -0,0 +1,21 @@ +# replaces F16C preprocessor conditional directives in gen_qfloat16_tables.cpp +# author: Jiri Furst, see also easybuild pr #10332 +--- qtbase/src/corelib/global/qfloat16tables.cpp.orig 2020-08-04 14:15:28.796162843 +0200 ++++ qtbase/src/corelib/global/qfloat16tables.cpp 2020-08-04 14:16:18.775679078 +0200 +@@ -44,7 +44,7 @@ + + QT_BEGIN_NAMESPACE + +-#if !defined(__F16C__) && !defined(__ARM_FP16_FORMAT_IEEE) ++#if !defined(__ARM_FP16_FORMAT_IEEE) + + const quint32 qfloat16::mantissatable[2048] = { + 0, +@@ -3261,6 +3261,6 @@ + 0xDU, + }; + +-#endif // !__F16C__ && !__ARM_FP16_FORMAT_IEEE ++#endif // !__ARM_FP16_FORMAT_IEEE + + QT_END_NAMESPACE diff --git a/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-6.6-intel-2019b.eb b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-6.6-intel-2019b.eb new file mode 100644 index 00000000000..0799f90ab36 --- /dev/null +++ b/easybuild/easyconfigs/q/QuantumESPRESSO/QuantumESPRESSO-6.6-intel-2019b.eb @@ -0,0 +1,43 @@ +name = 'QuantumESPRESSO' +version = '6.6' + +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': '2019b'} +toolchainopts = {'usempi': True, 'openmp': True} + +source_urls = [ + 'https://github.com/QEF/q-e/releases/download/qe-%(version)s/', + 'https://github.com/dceresoli/qe-gipaw/archive/', + 'https://github.com/wannier-developers/wannier90/archive/' +] +sources = [ + 'qe-%(version)s-ReleasePack.tgz', + # to be uncommented once qe-gipaw-6.6 is released + # {'filename': 'qe-gipaw-%(version)s.tar.gz', 'download_filename': '%(version)s.tar.gz'}, + {'filename': 'wannier90-3.1.0.tar.gz', 'download_filename': 'v3.1.0.tar.gz'}, +] +checksums = [ + 'de6996b9f1bf480bcd0166d24e918f5ff3c8fdb710f59f781bc9d33819280eb5', # qe-6.6-ReleasePack.tgz + '40651a9832eb93dec20a8360dd535262c261c34e13c41b6755fa6915c936b254', # wannier90-3.1.0.tar.gz +] + +dependencies = [ + ('HDF5', '1.10.5'), + ('ELPA', '2019.11.001'), + ('libxc', '4.3.4'), +] + +# The third party packages should be installed separately and added as +# dependencies. The exception is w90, which is force built +buildopts = 'all gwl xspectra couple epw w90' # gipaw + +# parallel build tends to fail +parallel = 1 + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/q/Qwt/Qwt-6.1.5-GCCcore-9.3.0.eb b/easybuild/easyconfigs/q/Qwt/Qwt-6.1.5-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..becf844cebd --- /dev/null +++ b/easybuild/easyconfigs/q/Qwt/Qwt-6.1.5-GCCcore-9.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'ConfigureMake' + +name = 'Qwt' +version = '6.1.5' + +homepage = 'https://qwt.sourceforge.io/' +description = """The Qwt library contains GUI Components and utility classes which are primarily useful for programs + with a technical background.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [SOURCEFORGE_SOURCE] +sources = [SOURCELOWER_TAR_BZ2] +patches = ['Qwt-6.1.4_Fix_prefix_and_pkgconfig.patch'] +checksums = [ + '4076de63ec2b5e84379ddfebf27c7b29b8dc9074f3db7e2ca61d11a1d8adc041', # qwt-6.1.5.tar.bz2 + '82788aaa23e4bc764ab1f2769e9260d154976c7d7f043ba4e288330d6984b6a9', # Qwt-6.1.4_Fix_prefix_and_pkgconfig.patch +] + +builddependencies = [ + ('binutils', '2.34'), + ('pkg-config', '0.29.2'), +] + +dependencies = [ + ('Qt5', '5.14.1'), +] + +skipsteps = ['configure'] + +prebuildopts = 'export QWT_PREFIX=%(installdir)s && ' +prebuildopts += "qmake qwt.pro && " + +sanity_check_paths = { + 'files': ['lib/libqwt.%s' % SHLIB_EXT, 'lib/pkgconfig/Qt5Qwt6.pc'], + 'dirs': ['doc', 'features', 'include', 'plugins'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.10-foss-2019b.eb b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.10-foss-2019b.eb index 9dee229ed9e..8f86132d3df 100644 --- a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.10-foss-2019b.eb +++ b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.10-foss-2019b.eb @@ -9,6 +9,8 @@ description = """Bioconductor provides tools for the analysis and coprehension toolchain = {'name': 'foss', 'version': '2019b'} +builddependencies = [('pkg-config', '0.29.2')] + dependencies = [ ('R', '3.6.2'), ('HDF5', '1.10.5'), # for rhdf5 @@ -743,6 +745,12 @@ exts_list = [ ('diffcyt', '1.6.6', { 'checksums': ['7bb7203b399c0d96920c80d2e027003ba584e06d02a8261d6e300724e9278ed6'], }), + ('DRIMSeq', '1.14.0', { + 'checksums': ['b3600e6c8b2e06874ec3ce265c52e6e21d3d05b862e1733a0a3e138d8e250ee8'], + }), + ('stageR', '1.8.0', { + 'checksums': ['7303a28d0bf6281a209f65748537d182de524dfa1daaad86abfc8f1aaae8dce5'], + }), ] modextrapaths = {'R_LIBS': ''} diff --git a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.11-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.11-foss-2020a-R-4.0.0.eb index 74439b72b20..12af07db83f 100644 --- a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.11-foss-2020a-R-4.0.0.eb +++ b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.11-foss-2020a-R-4.0.0.eb @@ -10,6 +10,8 @@ description = """Bioconductor provides tools for the analysis and coprehension toolchain = {'name': 'foss', 'version': '2020a'} +builddependencies = [('pkg-config', '0.29.2')] + dependencies = [ ('R', '4.0.0'), ('HDF5', '1.10.6'), # for rhdf5 @@ -40,7 +42,7 @@ exts_filter = ("R -q --no-save", "%s { %s }" % (local_ext_version_check, local_s # 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 May 11th 2020 +# packages updated on July 8th 2020 exts_list = [ ('readr', '1.3.1', { 'checksums': ['33f94de39bb7f2a342fbb2bd4e5afcfec08798eac39672ee18042ac0b349e4f3'], @@ -783,6 +785,9 @@ exts_list = [ ('IlluminaHumanMethylationEPICanno.ilm10b2.hg19', '0.6.0', { 'checksums': ['4decdbc78a6a8d02bf8aecb0d6e1d81134ae9dbc2375add52574f07829e8cd69'], }), + ('IlluminaHumanMethylationEPICanno.ilm10b4.hg19', '0.6.0', { + 'checksums': ['2c8128126b63e7fa805a5f3b02449367dca9c3be3eb5f6300acc718826590719'], + }), ('conumee', '1.22.0', { 'checksums': ['cdbbf1ee7e87422b21e2d938559c1b30ce81cc4ccf0bbd9f06a74f5cb162f972'], }), @@ -795,6 +800,18 @@ exts_list = [ ('SingleR', '1.2.4', { 'checksums': ['371fd11ed0ab8d6be7353267061d5210d788f9efa4b50d2c22c21467225a82aa'], }), + ('FlowSorted.Blood.EPIC', '1.6.1', { + 'checksums': ['be13359127cfba5973ac86b41455cc705770bfe846c0813325c671605e0d7cc2'], + }), + ('FlowSorted.CordBloodCombined.450k', '1.4.1', { + 'checksums': ['f57308a0bc1f7c7e25564e1ea3da521fa04ff010f6359fad065eb0cf5089d277'], + }), + ('DRIMSeq', '1.16.0', { + 'checksums': ['c1842cbd875de8572e8349faf211c5403ca681696102c38973c69590c43ad6c4'], + }), + ('stageR', '1.10.0', { + 'checksums': ['34c31e771fa76cb474966121baaef52eefc5a4f66b9c8e86889b7318d159353f'], + }), ] modextrapaths = {'R_LIBS': ''} diff --git a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.9-foss-2019a-R-3.6.0.eb b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.9-foss-2019a-R-3.6.0.eb index 1e485dc39d0..fb4d20e6969 100644 --- a/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.9-foss-2019a-R-3.6.0.eb +++ b/easybuild/easyconfigs/r/R-bundle-Bioconductor/R-bundle-Bioconductor-3.9-foss-2019a-R-3.6.0.eb @@ -10,6 +10,8 @@ description = """Bioconductor provides tools for the analysis and coprehension toolchain = {'name': 'foss', 'version': '2019a'} +builddependencies = [('pkg-config', '0.29.2')] + dependencies = [ ('R', '3.6.0'), ('HDF5', '1.10.5'), # for rhdf5 diff --git a/easybuild/easyconfigs/r/R/R-3.6.0-foss-2019a.eb b/easybuild/easyconfigs/r/R/R-3.6.0-foss-2019a.eb index 8a607a089fb..c26d6d44760 100644 --- a/easybuild/easyconfigs/r/R/R-3.6.0-foss-2019a.eb +++ b/easybuild/easyconfigs/r/R/R-3.6.0-foss-2019a.eb @@ -2081,7 +2081,13 @@ exts_list = [ 'checksums': ['982b9f34dbcf98136a8406b9ce4717faf155c7d5d923dcdf0dca6a9d53e27219'], }), ('liquidSVM', '1.2.2.1', { - 'checksums': ['95e5620fa1561b8410398ea56480c540555615b2c94bb0356106f4638e7cfce8'], + 'patches': ['liquidSVM-1.2.4-fix_ppc_build.patch'], + 'checksums': [ + '95e5620fa1561b8410398ea56480c540555615b2c94bb0356106f4638e7cfce8', + '21e65c8ff3f14678e43c19b4f8c36fce9bed796965abf161a147040941fc55ab', # liquidSVM-1.2.4-fix_ppc_build.patch + ], + # Don't add optimization flags by liquidSVM which may not be known e.g. on PPC + 'preinstallopts': 'LIQUIDSVM_TARGET="empty"', }), ('oddsratio', '1.0.3', { 'checksums': ['b33861d8beae189c66e6b94d59cc698bf08aeafb47262b5f7a1d2e88a2b2b8cd'], diff --git a/easybuild/easyconfigs/r/R/R-3.6.0-fosscuda-2019a.eb b/easybuild/easyconfigs/r/R/R-3.6.0-fosscuda-2019a.eb index f4a1195d8f7..25789a8d362 100644 --- a/easybuild/easyconfigs/r/R/R-3.6.0-fosscuda-2019a.eb +++ b/easybuild/easyconfigs/r/R/R-3.6.0-fosscuda-2019a.eb @@ -42,6 +42,7 @@ dependencies = [ ('UDUNITS', '2.2.26'), # for units ('GSL', '2.5'), # for RcppGSL ('ImageMagick', '7.0.8-46'), # for animation + ('pocl', '1.3'), # for OpenCL support # OS dependency should be preferred if the os version is more recent then # this version, it's nice to have an up to date openssl for security # reasons @@ -792,7 +793,8 @@ exts_list = [ 'checksums': ['1f06ab3660c940405230ad16ff6e4ba38d4418a59cd9b16d78a4349f8b488372'], }), ('pkgmaker', '0.27', { - 'checksums': ['17a289d8f596ba5637b07077b3bff22411a2c2263c0b7de59fe848666555ec6a'], + 'checksums': [('17a289d8f596ba5637b07077b3bff22411a2c2263c0b7de59fe848666555ec6a', + 'e5eb9058e68702c15e8dc6fee6ede41cdbe8e3914d190a5a1113079db26fb003')], }), ('rngtools', '1.3.1.1', { 'checksums': ['99e1a8fde6b81128d0946746c1ef84ec5b6c2973ad843a080098baf73aa3364c'], @@ -1257,7 +1259,8 @@ exts_list = [ 'checksums': ['8e259c2b12446197d1152b83a81bab84ccb5a5b77021a9b5645dd4c63c804bd1'], }), ('doRNG', '1.7.1', { - 'checksums': ['27533d54464889d1c21301594137fc0f536574e3a413d61d7df9463ab12a67e9'], + 'checksums': [('27533d54464889d1c21301594137fc0f536574e3a413d61d7df9463ab12a67e9', + 'bda8143e2b5554fb39fdea81af6482f8938160fdbf5c45014f3a5de40aacf4c4')], }), ('nleqslv', '3.3.2', { 'checksums': ['f54956cf67f9970bb3c6803684c84a27ac78165055745e444efc45cfecb63fed'], @@ -2079,7 +2082,13 @@ exts_list = [ 'checksums': ['982b9f34dbcf98136a8406b9ce4717faf155c7d5d923dcdf0dca6a9d53e27219'], }), ('liquidSVM', '1.2.2.1', { - 'checksums': ['95e5620fa1561b8410398ea56480c540555615b2c94bb0356106f4638e7cfce8'], + 'patches': ['liquidSVM-1.2.4-fix_ppc_build.patch'], + 'checksums': [ + '95e5620fa1561b8410398ea56480c540555615b2c94bb0356106f4638e7cfce8', + '21e65c8ff3f14678e43c19b4f8c36fce9bed796965abf161a147040941fc55ab', # liquidSVM-1.2.4-fix_ppc_build.patch + ], + # Don't add optimization flags by liquidSVM which may not be known e.g. on PPC + 'preinstallopts': 'LIQUIDSVM_TARGET="empty"', }), ('oddsratio', '1.0.3', { 'checksums': ['b33861d8beae189c66e6b94d59cc698bf08aeafb47262b5f7a1d2e88a2b2b8cd'], @@ -2127,7 +2136,8 @@ exts_list = [ 'checksums': ['76cee2393757390ad91d3db3e5aeb2c2d34c0a46822b7941498571a473417142'], }), ('cobs', '1.3-3', { - 'checksums': ['6b1e760cf8dec6b6e63f042cdc3e5e633de5f982e8bc743a891932f6d9f91bdf'], + 'checksums': [('6b1e760cf8dec6b6e63f042cdc3e5e633de5f982e8bc743a891932f6d9f91bdf', + 'f3fca282c9a258cc5e4976780f4907aca1051796524d6861fc15204ab22ab7d2')], }), ('resample', '0.4', { 'checksums': ['f0d5f735e1b812612720845d79167a19f713a438fd10a6a3206e667045fd93e5'], diff --git a/easybuild/easyconfigs/r/R/R-3.6.0-intel-2019a.eb b/easybuild/easyconfigs/r/R/R-3.6.0-intel-2019a.eb index 6418b616d87..f7a5158b553 100644 --- a/easybuild/easyconfigs/r/R/R-3.6.0-intel-2019a.eb +++ b/easybuild/easyconfigs/r/R/R-3.6.0-intel-2019a.eb @@ -801,7 +801,8 @@ exts_list = [ 'checksums': ['1f06ab3660c940405230ad16ff6e4ba38d4418a59cd9b16d78a4349f8b488372'], }), ('pkgmaker', '0.27', { - 'checksums': ['17a289d8f596ba5637b07077b3bff22411a2c2263c0b7de59fe848666555ec6a'], + 'checksums': [('17a289d8f596ba5637b07077b3bff22411a2c2263c0b7de59fe848666555ec6a', + 'e5eb9058e68702c15e8dc6fee6ede41cdbe8e3914d190a5a1113079db26fb003')], }), ('rngtools', '1.3.1.1', { 'checksums': ['99e1a8fde6b81128d0946746c1ef84ec5b6c2973ad843a080098baf73aa3364c'], @@ -1283,7 +1284,8 @@ exts_list = [ 'checksums': ['8e259c2b12446197d1152b83a81bab84ccb5a5b77021a9b5645dd4c63c804bd1'], }), ('doRNG', '1.7.1', { - 'checksums': ['27533d54464889d1c21301594137fc0f536574e3a413d61d7df9463ab12a67e9'], + 'checksums': [('27533d54464889d1c21301594137fc0f536574e3a413d61d7df9463ab12a67e9', + 'bda8143e2b5554fb39fdea81af6482f8938160fdbf5c45014f3a5de40aacf4c4')], }), ('nleqslv', '3.3.2', { 'checksums': ['f54956cf67f9970bb3c6803684c84a27ac78165055745e444efc45cfecb63fed'], @@ -2186,7 +2188,8 @@ exts_list = [ 'checksums': ['76cee2393757390ad91d3db3e5aeb2c2d34c0a46822b7941498571a473417142'], }), ('cobs', '1.3-3', { - 'checksums': ['6b1e760cf8dec6b6e63f042cdc3e5e633de5f982e8bc743a891932f6d9f91bdf'], + 'checksums': [('6b1e760cf8dec6b6e63f042cdc3e5e633de5f982e8bc743a891932f6d9f91bdf', + 'f3fca282c9a258cc5e4976780f4907aca1051796524d6861fc15204ab22ab7d2')], }), ('resample', '0.4', { 'checksums': ['f0d5f735e1b812612720845d79167a19f713a438fd10a6a3206e667045fd93e5'], diff --git a/easybuild/easyconfigs/r/R/R-3.6.2-foss-2019b.eb b/easybuild/easyconfigs/r/R/R-3.6.2-foss-2019b.eb index 0810a290d2b..63ab090811a 100644 --- a/easybuild/easyconfigs/r/R/R-3.6.2-foss-2019b.eb +++ b/easybuild/easyconfigs/r/R/R-3.6.2-foss-2019b.eb @@ -2399,6 +2399,9 @@ exts_list = [ ('ggnetwork', '0.5.8', { 'checksums': ['a8c7c19a2bafce898c95d0b2401ef052925db57b85058c7203f0122b3af7bbbd'], }), + ('qqman', '0.1.4', { + 'checksums': ['3ad01f82132bf75960ae0d8a81cae84eaf4a9ab262f183fc3d6439189e4a3aed'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/R/R-3.6.2-fosscuda-2019b.eb b/easybuild/easyconfigs/r/R/R-3.6.2-fosscuda-2019b.eb index e7c87a269ca..32979dd7f9a 100644 --- a/easybuild/easyconfigs/r/R/R-3.6.2-fosscuda-2019b.eb +++ b/easybuild/easyconfigs/r/R/R-3.6.2-fosscuda-2019b.eb @@ -2400,6 +2400,9 @@ exts_list = [ ('ggnetwork', '0.5.8', { 'checksums': ['a8c7c19a2bafce898c95d0b2401ef052925db57b85058c7203f0122b3af7bbbd'], }), + ('qqman', '0.1.4', { + 'checksums': ['3ad01f82132bf75960ae0d8a81cae84eaf4a9ab262f183fc3d6439189e4a3aed'], + }), # Specific packages for GPUs ('OpenCL', '0.1-3.1', { 'checksums': ['daff23d777a27cd9d2e67ca8f5db1d29940cf0422708c1ea7e2d9661e3d6ae6f'], diff --git a/easybuild/easyconfigs/r/R/R-3.6.3-foss-2020a.eb b/easybuild/easyconfigs/r/R/R-3.6.3-foss-2020a.eb index 69b000b9ab3..d891419b018 100644 --- a/easybuild/easyconfigs/r/R/R-3.6.3-foss-2020a.eb +++ b/easybuild/easyconfigs/r/R/R-3.6.3-foss-2020a.eb @@ -112,8 +112,12 @@ exts_list = [ ('filehash', '2.4-2', { 'checksums': ['b6d056f75d45e315943a4618f5f62802612cd8931ba3f9f474b595140a3cfb93'], }), - ('ff', '2.2-14', { - 'checksums': ['1c6307847275b1b8ad9e2ffdce3f4df3c9d955dc2e8a45e3fd7bfd2b0926e2f0'], + ('ff', '2.2-14.2', { + 'checksums': [ + 'f8c06ac333ffe3545cdf56531619865176e1827728f7aeeba82d135d5c5e37e4', + 'beae9b31d7962b035329e07f4dc09308ca3a527327885d1c4ba9a1dd105e0bbd' # ff_2.2-14.2_aarch64_support.patch + ], + 'patches': ['ff-2.2-14.2_aarch64_support.patch'], }), ('bnlearn', '4.5', { 'checksums': ['a8047625533260a855d309b3c0785cbeec0f9ec13f284b6664a1f61638138578'], @@ -2102,10 +2106,12 @@ exts_list = [ 'checksums': ['3a1f166f1c71b5877a2acca1384ec6c9b430b67af67ef26125f2abbb53c66206'], }), ('liquidSVM', '1.2.4', { - 'patches': ['liquidSVM-1.2.4-fix_ppc_build.patch'], + 'checksums': ['15a9c7f2930e2ed3f4c5bcd9b042884ea580d2b2e52e1c68041600c196046aba'], + 'patches': ['liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch'], 'checksums': [ '15a9c7f2930e2ed3f4c5bcd9b042884ea580d2b2e52e1c68041600c196046aba', - '21e65c8ff3f14678e43c19b4f8c36fce9bed796965abf161a147040941fc55ab', # liquidSVM-1.2.4-fix_ppc_build.patch + # liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch + '46b09e441c3b59af535f20d8db0dee7f1d6a7ddd511175d252115b53cb8b86f8', ], # Don't add optimization flags by liquidSVM which may not be known e.g. on PPC 'preinstallopts': 'LIQUIDSVM_TARGET="empty"', @@ -2393,6 +2399,9 @@ exts_list = [ ('ggnetwork', '0.5.8', { 'checksums': ['a8c7c19a2bafce898c95d0b2401ef052925db57b85058c7203f0122b3af7bbbd'], }), + ('qqman', '0.1.4', { + 'checksums': ['3ad01f82132bf75960ae0d8a81cae84eaf4a9ab262f183fc3d6439189e4a3aed'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/R/R-4.0.0-foss-2020a.eb b/easybuild/easyconfigs/r/R/R-4.0.0-foss-2020a.eb index 892a0196062..03fe2b132b7 100644 --- a/easybuild/easyconfigs/r/R/R-4.0.0-foss-2020a.eb +++ b/easybuild/easyconfigs/r/R/R-4.0.0-foss-2020a.eb @@ -49,7 +49,7 @@ dependencies = [ # ('OpenSSL', '1.1.1e'), ] -osdependencies = [('openssl-devel', 'libssl-dev', 'libopenssl-devel')] +osdependencies = [OS_PKG_OPENSSL_DEV] configopts = "--with-pic --enable-threads --enable-R-shlib" # some recommended packages may fail in a parallel build (e.g. Matrix), and @@ -70,7 +70,7 @@ exts_default_options = { } # !! order of packages is important !! -# packages updated on 11 May 2020 +# packages updated on 23 July 2020 exts_list = [ 'base', 'datasets', @@ -114,7 +114,11 @@ exts_list = [ 'checksums': ['b6d056f75d45e315943a4618f5f62802612cd8931ba3f9f474b595140a3cfb93'], }), ('ff', '2.2-14.2', { - 'checksums': ['f8c06ac333ffe3545cdf56531619865176e1827728f7aeeba82d135d5c5e37e4'], + 'checksums': [ + 'f8c06ac333ffe3545cdf56531619865176e1827728f7aeeba82d135d5c5e37e4', + 'beae9b31d7962b035329e07f4dc09308ca3a527327885d1c4ba9a1dd105e0bbd' # ff_2.2-14.2_aarch64_support.patch + ], + 'patches': ['ff-2.2-14.2_aarch64_support.patch'], }), ('bnlearn', '4.5', { 'checksums': ['a8047625533260a855d309b3c0785cbeec0f9ec13f284b6664a1f61638138578'], @@ -2118,10 +2122,11 @@ exts_list = [ }), ('liquidSVM', '1.2.4', { 'checksums': ['15a9c7f2930e2ed3f4c5bcd9b042884ea580d2b2e52e1c68041600c196046aba'], - 'patches': ['liquidSVM-1.2.4-fix_ppc_build.patch'], + 'patches': ['liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch'], 'checksums': [ '15a9c7f2930e2ed3f4c5bcd9b042884ea580d2b2e52e1c68041600c196046aba', - '21e65c8ff3f14678e43c19b4f8c36fce9bed796965abf161a147040941fc55ab', # liquidSVM-1.2.4-fix_ppc_build.patch + # liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch + '46b09e441c3b59af535f20d8db0dee7f1d6a7ddd511175d252115b53cb8b86f8', ], # Don't add optimization flags by liquidSVM which may not be known e.g. on PPC 'preinstallopts': 'LIQUIDSVM_TARGET="empty"', @@ -2406,8 +2411,12 @@ exts_list = [ ('ggnetwork', '0.5.8', { 'checksums': ['a8c7c19a2bafce898c95d0b2401ef052925db57b85058c7203f0122b3af7bbbd'], }), + ('qqman', '0.1.4', { + 'checksums': ['3ad01f82132bf75960ae0d8a81cae84eaf4a9ab262f183fc3d6439189e4a3aed'], + }), ('rstantools', '2.0.0', { - 'checksums': ['4ae78aa39c3d4897f453e621a09961d6f2cda27a1b5657d4d4b32d3d89bd80c6'], + 'checksums': [('4ae78aa39c3d4897f453e621a09961d6f2cda27a1b5657d4d4b32d3d89bd80c6', + 'd200a4d8c62d8577fdba819bf770e7abb11c57c3332f4498e1d30ce824598b3a')], }), ('bayesplot', '1.7.1', { 'checksums': ['820ca9ca3258fc68333e75fd60898c0d0f08f513b66c161ca6159a54ad54006b'], @@ -2448,6 +2457,69 @@ exts_list = [ ('drugCombo', '1.1.1', { 'checksums': ['9fdc3a7cf63552c32f1c7573258fc4ceacdaf5c475fe79aa4ca8c9226b9f8a38'], }), + ('betareg', '3.1-3', { + 'checksums': ['cc19387ec516492d11cf59cdfa07e1733950a2af8196c1e155bc95939bc76246'], + }), + ('unmarked', '1.0.1', { + 'checksums': ['a3bb9bdc7a4a79ea38482df3f8cbb6e9082332a0d894eeb4b3dc816344cec0e4'], + }), + ('maxlike', '0.1-8', { + 'checksums': ['90aaab9602f259cbfae61fe96e105cc4a0c2a385b42380f85c14f5d544107251'], + }), + ('coxme', '2.2-16', { + 'checksums': ['a0ce4b5649c4c1abbfe2c2bf23089744d1f66eb8368dea16e74e090f366a5111'], + }), + ('AICcmodavg', '2.3-0', { + 'checksums': ['4d6bcff3c549be9dcefdd849b239659618fdaf9ba0d27b9d0589620d104e5e24'], + }), + ('pacman', '0.5.1', { + 'checksums': ['9ec9a72a15eda5b8f727adc877a07c4b36f8372fe7ed80a1bc6c2068dab3ef7c'], + }), + ('spaa', '0.2.2', { + 'checksums': ['a5a54454d4a7af473ce797875f849bd893005cb04325bf3e0dbddb19fe8d7198'], + }), + ('maxnet', '0.1.2', { + 'checksums': ['dfa02ca1031b369415d8b16863ca5fd115c7bf96b1f8fc24f91719b017f5cce5'], + }), + ('ENMeval', '0.3.0', { + 'checksums': ['1c924098a27c82a9bf75408173b47429c40cc41cae3aba18c86ba217bb45ba60'], + }), + ('plotmo', '3.5.7', { + 'checksums': ['aa366a49a63cabfd5d799a1524e23a4faed022f10ee60f8407d70ab70731b38c'], + }), + ('earth', '5.1.2', { + 'checksums': ['326f98e8c29365ca3cd5584cf2bd6529358f5ef81664cbd494162f92b6c3488d'], + }), + ('mda', '0.5-2', { + 'checksums': ['344f2053215ddf535d1554b4539e9b09067dac878887cc3eb995cef421fc00c3'], + }), + ('biomod2', '3.4.6', { + 'checksums': ['41fd7745f4d0af3f799e9cf4fa5484a427de6854db84c6476fde7a7414787d5b'], + }), + ('poLCA', '1.4.1', { + 'checksums': ['2e69975b5e7da8c36641bfa9453afdb4861523866b8799bec1d4eace9ab5762e'], + }), + ('PermAlgo', '1.1', { + 'checksums': ['d7157b92241c34b71ad19901b52144973b49df453bf2a5edf4497d4bf26bd099'], + }), + ('coxed', '0.3.3', { + 'checksums': ['d0d6cb8fea9516b3c63b34d0d81f3804c18a07f97a83e51555575c8ed4c75626'], + }), + ('testit', '0.11', { + 'checksums': ['12fb24f0c7b032ae0d146d22161efc676ef4cdf604b81f6345e8d9dfd125388e'], + }), + ('data.tree', '1.0.0', { + 'checksums': ['40674c90a5bd00f5185db9adbd221c6f1114043e69095249f5fa8b3044af3f5e'], + }), + ('NISTunits', '1.0.1', { + 'checksums': ['eaccd68db5c73d6a089ce5b323cdd51bc6a6a58ce467987158ba8c9be6a0a94e'], + }), + ('celestial', '1.4.6', { + 'checksums': ['9f647f41465ac65b254717698f1978871c378ad8e6ccaa693abf579437069abe'], + }), + ('fasterize', '1.0.3', { + 'checksums': ['62b459625e9bdb00251ec5f6cb873e0c59713f3e86dc1e2c8332adc0cea17f81'], + }), ] moduleclass = 'lang' diff --git a/easybuild/easyconfigs/r/R/ff-2.2-14.2_aarch64_support.patch b/easybuild/easyconfigs/r/R/ff-2.2-14.2_aarch64_support.patch new file mode 100644 index 00000000000..0da84016a4a --- /dev/null +++ b/easybuild/easyconfigs/r/R/ff-2.2-14.2_aarch64_support.patch @@ -0,0 +1,16 @@ +# ff does not recognize aarch64 as a valid architecture. +# Patch by Terje Kvernes +# Pushed upstream: https://github.com/truecluster/ff/pull/4 +diff --git a/src/utk_platform_macros.hpp b/src/utk_platform_macros.hpp +index d82ad4f..027b685 100644 +--- a/src/utk_platform_macros.hpp ++++ b/src/utk_platform_macros.hpp +@@ -134,6 +134,8 @@ + #define UTK__Arch_ARM_ARM + #elif defined(__arm__) && defined(__thumb__) + #define UTK__Arch_ARM_THUMB ++ #elif defined(__aarch64__) ++ #define UTK__Aarch_AARCH64 + #elif defined(__sh__) + #define UTK__Arch_SuperH + #else diff --git a/easybuild/easyconfigs/r/R/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch b/easybuild/easyconfigs/r/R/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch new file mode 100644 index 00000000000..56af45097b7 --- /dev/null +++ b/easybuild/easyconfigs/r/R/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch @@ -0,0 +1,49 @@ +The code requires C++11 but nvcc is not passed any flag for it, do that to avoid 'error: identifier "__ieee128" is undefined' on PPC +Use uppercase __PPC64__ to detect PPC 64bit (defined by GCC) +Use lowercase __aarch64__ to detect aarch64 (defined by GCC) +diff -aur liquidSVM-orig/MD5 liquidSVM/MD5 +--- liquidSVM-orig/MD5 2020-02-20 15:51:17.387058566 +0100 ++++ liquidSVM/MD5 2020-02-20 16:48:06.042078399 +0100 +@@ -66,7 +66,7 @@ + e0ea06f050a2ae8ed2f2e401d968f0ce *man/test.liquidSVM.Rd + 8874fc45419e3174bf06013d887f6582 *man/trainSVMs.Rd + 4cf2abf7c6d415a4a8cd7f5dee2df959 *man/write.liquidData.Rd +-854c1eecccd169acdb80b03ad6d768dc *src/Makevars.in ++8c4346267f7b7f649ff27fb5288d4e23 *src/Makevars.in + e6d47b428caa2cc55798b431cb5e504f *src/kernel_calculator.cpp + 13af8529f5c2bccd4ea03288e9adf908 *src/kernel_calculator.h + dc2c86cbe61e7b7c5dd433f9fa41fac6 *src/liquidSVM.cpp +@@ -155,7 +155,7 @@ + 8b39ec05680bf3416bc1de3ad92f043f *src/sources/shared/system_support/cuda_simple_vector_operations.h + 806ca83732bff4b1b89adfc3494e90da *src/sources/shared/system_support/full_64bit_support.h + dfb08cdb449d490d86dd33bee186aac5 *src/sources/shared/system_support/memory_allocation.cpp +-aec0000be577e69e88c040b641d6818a *src/sources/shared/system_support/memory_allocation.h ++f0231e65bd627116f1b5ebcc45ab1e66 *src/sources/shared/system_support/memory_allocation.h + 683d4ee517b1c760dc410c69c5508ce2 *src/sources/shared/system_support/memory_allocation.ins.cpp + cbd209324ad752e19be10d8975d65e2f *src/sources/shared/system_support/os_specifics.h + 54e8583d2e8e269ff2b6d7a79d57cbd5 *src/sources/shared/system_support/parallel_control.cpp +diff -aur liquidSVM-orig/src/Makevars.in liquidSVM/src/Makevars.in +--- liquidSVM-orig/src/Makevars.in 2020-02-20 15:51:17.377058962 +0100 ++++ liquidSVM/src/Makevars.in 2020-02-20 16:47:44.042949538 +0100 +@@ -39,7 +39,7 @@ + # The architecure flag can be set to higher values, if the hardware supports this. + # The value below should be safe for essentially all non stone-age systems. + +-NVCCFLAGS= -arch sm_30 -L$(CUDA_LIB_PATH) -DCOMPILE_WITH_CUDA__ -U__SSE2__ -U__AVX__ ++NVCCFLAGS= -arch sm_30 -L$(CUDA_LIB_PATH) -DCOMPILE_WITH_CUDA__ -U__SSE2__ -U__AVX__ -std=c++11 + + + #----------- CUDA related flags for GCC ---------------------------------------------------- +diff -aur liquidSVM-orig/src/sources/shared/system_support/memory_allocation.h liquidSVM/src/sources/shared/system_support/memory_allocation.h +--- liquidSVM-orig/src/sources/shared/system_support/memory_allocation.h 2020-02-20 15:51:17.377058962 +0100 ++++ liquidSVM/src/sources/shared/system_support/memory_allocation.h 2020-02-20 15:56:04.905673381 +0100 +@@ -42,7 +42,7 @@ + + // Check for GCC + #if __GNUC__ +- #if __x86_64__ || __ppc64__ ++ #if __x86_64__ || __ppc64__ || __PPC64__ || __aarch64__ + #define SYSTEM_WITH_64BIT + #else + #define SYSTEM_WITH_32BIT + 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 5f32d943ef0..64470d96046 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 @@ -51,7 +51,7 @@ dependencies = [ builddependencies = [ ('binutils', '2.32'), ('CMake', '3.15.3'), - ('gtest', '1.10.0'), + ('googletest', '1.10.0'), ('flex', '2.6.4'), ('Bison', '3.3.2'), ] diff --git a/easybuild/easyconfigs/r/RDKit/RDKit-2020.03.3-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/r/RDKit/RDKit-2020.03.3-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..9990f9acddb --- /dev/null +++ b/easybuild/easyconfigs/r/RDKit/RDKit-2020.03.3-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,74 @@ +easyblock = 'CMakeMake' + +name = 'RDKit' +version = '2020.03.3' +versionsuffix = '-Python-%(pyver)s' + +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': '2020a'} +# 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 = [ + '%(name)s-%(version)s_skip_tests.patch', +] +checksums = [ + 'f25529dd80795a499907b90625c4d107ad10211aaf138a07e1a0d8e3426d78c4', # Release_2020_03_3.tar.gz + 'f7c42749c9b198226125c353b934a49340b132e5a03cfbfa0fd344e501f544f7', # RDKit-2020.03.3_skip_tests.patch +] + +# Dependencies varies from version to version +# https://rdkit.readthedocs.io/en/latest/Install.html#installing-prerequisites-from-source +builddependencies = [ + ('CMake', '3.16.4'), + ('Eigen', '3.3.7', '', True), + ('pkg-config', '0.29.2'), +] +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('SQLite', '3.31.1'), + ('matplotlib', '3.2.1', versionsuffix), + ('Pillow', '7.0.0', versionsuffix), + ('Boost.Python', '1.72.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 && ' +# '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/RDKit/RDKit-2020.03.3-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/r/RDKit/RDKit-2020.03.3-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..7715adac08e --- /dev/null +++ b/easybuild/easyconfigs/r/RDKit/RDKit-2020.03.3-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,75 @@ +easyblock = 'CMakeMake' + +name = 'RDKit' +version = '2020.03.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.rdkit.org' +description = "RDKit is a collection of cheminformatics and machine-learning software written in C++ and Python." + +toolchain = {'name': 'intel', 'version': '2020a'} +# 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 = [ + '%(name)s-%(version)s_skip_tests.patch', +] +checksums = [ + 'f25529dd80795a499907b90625c4d107ad10211aaf138a07e1a0d8e3426d78c4', # Release_2020_03_3.tar.gz + 'f7c42749c9b198226125c353b934a49340b132e5a03cfbfa0fd344e501f544f7', # RDKit-2020.03.3_skip_tests.patch +] + +# Dependencies varies from version to version +# https://rdkit.readthedocs.io/en/latest/Install.html#installing-prerequisites-from-source +builddependencies = [ + ('CMake', '3.16.4'), + ('Eigen', '3.3.7', '', True), + ('pkg-config', '0.29.2'), +] +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('SQLite', '3.31.1'), + ('matplotlib', '3.2.1', versionsuffix), + ('Pillow', '7.0.0', versionsuffix), + ('Boost.Python', '1.72.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 && ' +# 'ctest' allows to pass additional arguments opposed to 'make test' +# Exclude RGroup test on intel - https://github.com/rdkit/rdkit/issues/3291 +buildopts += 'ctest --output-on-failure -E RGroup' + +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/RDKit/RDKit-2020.03.3_skip_tests.patch b/easybuild/easyconfigs/r/RDKit/RDKit-2020.03.3_skip_tests.patch new file mode 100644 index 00000000000..ef3572b0344 --- /dev/null +++ b/easybuild/easyconfigs/r/RDKit/RDKit-2020.03.3_skip_tests.patch @@ -0,0 +1,57 @@ +Skip failing (*broken*) tests + +Tests are broken and probably never been run on Python until Python 3.8? +Find more about tests on following issues on GitHub: +https://github.com/rdkit/rdkit/issues/3185 +https://github.com/rdkit/rdkit/issues/3278 +https://github.com/rdkit/rdkit/issues/3291 +Author: Pavel Grochal (INUITS) +diff -rub --new-file rdkit-Release_2020_03_3.orig/Code/GraphMol/Descriptors/Wrap/testMolDescriptors.py rdkit-Release_2020_03_3/Code/GraphMol/Descriptors/Wrap/testMolDescriptors.py +--- rdkit-Release_2020_03_3.orig/Code/GraphMol/Descriptors/Wrap/testMolDescriptors.py 2020-06-10 05:59:48.000000000 +0200 ++++ rdkit-Release_2020_03_3/Code/GraphMol/Descriptors/Wrap/testMolDescriptors.py 2020-07-08 13:17:22.320695386 +0200 +@@ -617,6 +617,7 @@ + nTPSA = rdMD.CalcTPSA(mol, force=True, includeSandP=True) + self.assertAlmostEqual(nTPSA, new_tpsa[i], 2) + ++ @unittest.skip("Broken test - skipping") + @unittest.skipIf(not haveBCUT, "BCUT descriptors not present") + def testBCUT(self): + smiles = ("c1ccccc1S", "c1cscc1", "CC(=S)C", "CSC", "CS(=O)C", "CP(C)C", "CP=O", "CP(C)(C)=O", +diff -rub --new-file rdkit-Release_2020_03_3.orig/rdkit/Chem/EnumerateStereoisomers.py rdkit-Release_2020_03_3/rdkit/Chem/EnumerateStereoisomers.py +--- rdkit-Release_2020_03_3.orig/rdkit/Chem/EnumerateStereoisomers.py 2020-06-10 05:59:48.000000000 +0200 ++++ rdkit-Release_2020_03_3/rdkit/Chem/EnumerateStereoisomers.py 2020-07-08 09:35:11.297909322 +0200 +@@ -280,11 +280,12 @@ + + Or randomly sample a small subset: + +- >>> m = Chem.MolFromSmiles('Br' + '[CH](Cl)' * 20 + 'F') +- >>> opts = StereoEnumerationOptions(maxIsomers=3) +- >>> isomers = EnumerateStereoisomers(m, options=opts) +- >>> for smi in sorted(Chem.MolToSmiles(x, isomericSmiles=True) for x in isomers): +- ... print(smi) ++ # This is skipped test below ++ >> m = Chem.MolFromSmiles('Br' + '[CH](Cl)' * 20 + 'F') ++ >> opts = StereoEnumerationOptions(maxIsomers=3) ++ >> isomers = EnumerateStereoisomers(m, options=opts) ++ >> for smi in sorted(Chem.MolToSmiles(x, isomericSmiles=True) for x in isomers): ++ .. print(smi) + F[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@H](Cl)[C@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@H](Cl)[C@@H](Cl)[C@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@@H](Cl)Br + F[C@@H](Cl)[C@H](Cl)[C@@H](Cl)[C@H](Cl)[C@@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@H](Cl)[C@@H](Cl)Br + F[C@H](Cl)[C@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@H](Cl)[C@@H](Cl)[C@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@@H](Cl)[C@H](Cl)[C@@H](Cl)Br +@@ -345,5 +346,3 @@ + break + elif verbose: + print("%s failed to embed" % (Chem.MolToSmiles(isomer, isomericSmiles=True))) +- +- +diff -rub --new-file rdkit-Release_2020_03_3.orig/rdkit/Chem/UnitTestMol3D.py rdkit-Release_2020_03_3/rdkit/Chem/UnitTestMol3D.py +--- rdkit-Release_2020_03_3.orig/rdkit/Chem/UnitTestMol3D.py 2020-06-10 05:59:48.000000000 +0200 ++++ rdkit-Release_2020_03_3/rdkit/Chem/UnitTestMol3D.py 2020-07-08 09:35:53.666235177 +0200 +@@ -207,6 +207,7 @@ + smiles = set(Chem.MolToSmiles(i, isomericSmiles=True) for i in AllChem.EnumerateStereoisomers(mol, opts)) + self.assertEqual(len(smiles), 13) + ++ @unittest.skip("Broken test - skipping") + def testEnumerateStereoisomersRandomSamplingShouldBeDeterministicAndPortable(self): + mol = Chem.MolFromSmiles('CC(F)=CC(Cl)C=C(Br)C(I)N') + opts = AllChem.StereoEnumerationOptions(maxIsomers=2) diff --git a/easybuild/easyconfigs/r/Racon/Racon-1.4.13-GCCcore-9.3.0.eb b/easybuild/easyconfigs/r/Racon/Racon-1.4.13-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..37a280d605a --- /dev/null +++ b/easybuild/easyconfigs/r/Racon/Racon-1.4.13-GCCcore-9.3.0.eb @@ -0,0 +1,27 @@ +easyblock = 'CMakeMake' + +name = 'Racon' +version = '1.4.13' + +homepage = 'https://github.com/lbcb-sci/racon' +description = """Ultrafast consensus module for raw de novo genome assembly of long uncorrected reads.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://github.com/lbcb-sci/racon/releases/download/%(version)s/'] +sources = ['%(namelower)s-v%(version)s.tar.gz'] +checksums = ['4220e98bf84768483bd94eef62a0821cffc74f4e7139c74685c08161909263b0'] + +builddependencies = [ + ('CMake', '3.16.4'), + ('binutils', '2.34'), +] + +sanity_check_paths = { + 'files': ['bin/racon'], + 'dirs': [], +} + +sanity_check_commands = ['racon --help'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/Reapr/Reapr-1.0.18-cleanup.patch b/easybuild/easyconfigs/r/Reapr/Reapr-1.0.18-cleanup.patch new file mode 100644 index 00000000000..f6d12af1caa --- /dev/null +++ b/easybuild/easyconfigs/r/Reapr/Reapr-1.0.18-cleanup.patch @@ -0,0 +1,392 @@ +This patch makes Reapr compatible with EasyBuild. + +Henrik R. Nagel, 20191119 +diff -ruN Reapr_1.0.18.orig/Makefile Reapr_1.0.18/Makefile +--- Reapr_1.0.18.orig/Makefile 1970-01-01 01:00:00.000000000 +0100 ++++ Reapr_1.0.18/Makefile 2019-11-13 12:17:03.000000000 +0100 +@@ -0,0 +1,8 @@ ++all: ++ cd third_party/tabix ; make ++ cd third_party/snpomatic ; make ++ mkdir -p bin/tabix ; cp third_party/tabix/tabix third_party/tabix/bgzip third_party/tabix/tabix++ bin/tabix ++ mkdir bin/snpomatic ; cp third_party/snpomatic/findknownsnps bin/snpomatic ++ cp third_party/smalt_x86_64 bin/smalt ++ cd src ; make ++ cd bin ; ln -s reapr.pl reapr +diff -ruN Reapr_1.0.18.orig/src/Makefile Reapr_1.0.18/src/Makefile +--- Reapr_1.0.18.orig/src/Makefile 2014-03-13 11:15:43.000000000 +0100 ++++ Reapr_1.0.18/src/Makefile 2019-11-18 14:34:49.000000000 +0100 +@@ -1,6 +1,4 @@ +-BAMTOOLS_ROOT = $(CURDIR)/bamtools +-CC = g++ +-CFLAGS = -Wl,-rpath,$(BAMTOOLS_ROOT)/lib -Wall -O3 -I $(BAMTOOLS_ROOT)/include -L $(BAMTOOLS_ROOT)/lib ++INC = -I$(EBROOTBAMTOOLS)/include/bamtools + TABIX = tabix/tabix.o -L./tabix -ltabix -lz + STATS_OBJS = trianglePlot.o coveragePlot.o fasta.o histogram.o utils.o + SCORE_OBJS = errorWindow.o utils.o histogram.o +@@ -18,108 +16,109 @@ + EXECUTABLES = task_score task_stats task_break bam2fragCov bam2insert bam2fcdEstimate make_plots fa2gaps fa2gc scaff2contig n50 task_gapresize task_fcdrate bam2perfect + + all: $(EXECUTABLES) ++ cp $(EXECUTABLES) *.pl ../bin + + errorWindow.o: errorWindow.cpp +- $(CC) $(CFLAGS) -c errorWindow.cpp ++ $(CXX) $(CFLAGS) $(INC) -c errorWindow.cpp + + trianglePlot.o: trianglePlot.cpp utils.o +- $(CC) $(CFLAGS) -c trianglePlot.cpp ++ $(CXX) $(CFLAGS) $(INC) -c trianglePlot.cpp + + coveragePlot.o: coveragePlot.cpp +- $(CC) $(CFLAGS) -c coveragePlot.cpp ++ $(CXX) $(CFLAGS) $(INC) -c coveragePlot.cpp + + fasta.o: fasta.cpp +- $(CC) $(CFLAGS) -c fasta.cpp ++ $(CXX) $(CFLAGS) $(INC) -c fasta.cpp + + histogram.o: histogram.cpp +- $(CC) $(CFLAGS) -c histogram.cpp ++ $(CXX) $(CFLAGS) $(INC) -c histogram.cpp + + utils.o: utils.cpp +- $(CC) $(CFLAGS) -lbamtools -c utils.cpp ++ $(CXX) $(CFLAGS) $(INC) -lbamtools -c utils.cpp + + task_stats: task_stats.o $(STATS_OBJS) +- $(CC) $(CFLAGS) task_stats.o $(STATS_OBJS) -lbamtools -o task_stats $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) task_stats.o $(STATS_OBJS) -lbamtools -o task_stats $(TABIX) + + task_stats.o: task_stats.cpp $(STATS_OBJS) +- $(CC) $(CFLAGS) -c task_stats.cpp ++ $(CXX) $(CFLAGS) $(INC) -c task_stats.cpp + + task_score: task_score.o $(SCORE_OBJS) +- $(CC) $(CFLAGS) task_score.o $(SCORE_OBJS) -lbamtools -o task_score $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) task_score.o $(SCORE_OBJS) -lbamtools -o task_score $(TABIX) + + task_score.o: task_score.cpp $(SCORE_OBJS) +- $(CC) $(CFLAGS) -c task_score.cpp ++ $(CXX) $(CFLAGS) $(INC) -c task_score.cpp + + task_break: task_break.o $(BREAK_OBJS) +- $(CC) $(CFLAGS) task_break.o $(BREAK_OBJS) -lbamtools -o task_break $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) task_break.o $(BREAK_OBJS) -lbamtools -o task_break $(TABIX) + + task_break.o: task_break.cpp $(BREAK_OBJS) +- $(CC) $(CFLAGS) -c task_break.cpp ++ $(CXX) $(CFLAGS) $(INC) -c task_break.cpp + + bam2fragCov: bam2fragCov.o $(BAM2COV_OBJS) +- $(CC) $(CFLAGS) bam2fragCov.o $(BAM2COV_OBJS) -lbamtools -o bam2fragCov $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) bam2fragCov.o $(BAM2COV_OBJS) -lbamtools -o bam2fragCov $(TABIX) + + bam2fragCov.o: bam2fragCov.cpp $(BAM2COV_OBJS) +- $(CC) $(CFLAGS) -c bam2fragCov.cpp ++ $(CXX) $(CFLAGS) $(INC) -c bam2fragCov.cpp + + bam2insert: bam2insert.o $(BAM2INSERT_OBJS) +- $(CC) $(CFLAGS) bam2insert.o $(BAM2INSERT_OBJS) -lbamtools -o bam2insert $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) bam2insert.o $(BAM2INSERT_OBJS) -lbamtools -o bam2insert $(TABIX) + + bam2insert.o: bam2insert.cpp $(BAM2INSERT_OBJS) +- $(CC) $(CFLAGS) -c bam2insert.cpp ++ $(CXX) $(CFLAGS) $(INC) -c bam2insert.cpp + + bam2perfect: bam2perfect.o $(BAM2PERFECT_OBJS) +- $(CC) $(CFLAGS) bam2perfect.o $(BAM2PERFECT_OBJS) -lbamtools -o bam2perfect $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) bam2perfect.o $(BAM2PERFECT_OBJS) -lbamtools -o bam2perfect $(TABIX) + + bam2perfect.o: bam2perfect.cpp $(BAM2PERFECT_OBJS) +- $(CC) $(CFLAGS) -c bam2perfect.cpp ++ $(CXX) $(CFLAGS) $(INC) -c bam2perfect.cpp + + bam2fcdEstimate: bam2fcdEstimate.o $(BAM2FCDESTIMATE_OBJS) +- $(CC) $(CFLAGS) bam2fcdEstimate.o $(BAM2FCDESTIMATE_OBJS) -lbamtools -o bam2fcdEstimate $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) bam2fcdEstimate.o $(BAM2FCDESTIMATE_OBJS) -lbamtools -o bam2fcdEstimate $(TABIX) + + bam2fcdEstimate.o: bam2fcdEstimate.cpp $(BAM2FCDESTIMATE_OBJS) +- $(CC) $(CFLAGS) -c bam2fcdEstimate.cpp ++ $(CXX) $(CFLAGS) $(INC) -c bam2fcdEstimate.cpp + + make_plots: make_plots.o +- $(CC) $(CFLAGS) make_plots.o -o make_plots ++ $(CXX) $(CFLAGS) $(INC) make_plots.o -o make_plots + + make_plots.o: make_plots.cpp +- $(CC) $(CFLAGS) -c make_plots.cpp ++ $(CXX) $(CFLAGS) $(INC) -c make_plots.cpp + + fa2gc: fa2gc.o $(FA2GC_OBJS) +- $(CC) $(CFLAGS) fa2gc.o $(FA2GC_OBJS) -o fa2gc ++ $(CXX) $(CFLAGS) $(INC) fa2gc.o $(FA2GC_OBJS) -o fa2gc + + fa2gc.o: fa2gc.cpp $(FA2GC_OBJS) +- $(CC) $(CFLAGS) -c fa2gc.cpp ++ $(CXX) $(CFLAGS) $(INC) -c fa2gc.cpp + + fa2gaps: fa2gaps.o $(FA2GAPS_OBJS) +- $(CC) $(CFLAGS) fa2gaps.o $(FA2GAPS_OBJS) -o fa2gaps ++ $(CXX) $(CFLAGS) $(INC) fa2gaps.o $(FA2GAPS_OBJS) -o fa2gaps + + fa2gaps.o: fa2gaps.cpp $(FA2GAPS_OBJS) +- $(CC) $(CFLAGS) -c fa2gaps.cpp ++ $(CXX) $(CFLAGS) $(INC) -c fa2gaps.cpp + + n50: n50.o $(N50_OBJS) +- $(CC) $(CFLAGS) n50.o $(N50_OBJS) -o n50 ++ $(CXX) $(CFLAGS) $(INC) n50.o $(N50_OBJS) -o n50 + + n50.o: n50.cpp $(N50_OBJS) +- $(CC) $(CFLAGS) -c n50.cpp ++ $(CXX) $(CFLAGS) $(INC) -c n50.cpp + + scaff2contig: scaff2contig.o $(SCAFF2CONTIG_OBJS) +- $(CC) $(CFLAGS) scaff2contig.o $(SCAFF2CONTIG_OBJS) -o scaff2contig ++ $(CXX) $(CFLAGS) $(INC) scaff2contig.o $(SCAFF2CONTIG_OBJS) -o scaff2contig + + scaff2contig.o: scaff2contig.cpp $(SCAFF2CONTIG_OBJS) +- $(CC) $(CFLAGS) -c scaff2contig.cpp ++ $(CXX) $(CFLAGS) $(INC) -c scaff2contig.cpp + + task_gapresize: task_gapresize.o $(GAPRESIZE_OBJS) +- $(CC) $(CFLAGS) task_gapresize.o $(GAPRESIZE_OBJS) -lbamtools -o task_gapresize $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) task_gapresize.o $(GAPRESIZE_OBJS) -lbamtools -o task_gapresize $(TABIX) + + task_gapresize.o: task_gapresize.cpp $(GAPRESIZE_OBJS) +- $(CC) $(CFLAGS) -c task_gapresize.cpp ++ $(CXX) $(CFLAGS) $(INC) -c task_gapresize.cpp + + task_fcdrate: task_fcdrate.o $(FCDRATE_OBJS) +- $(CC) $(CFLAGS) task_fcdrate.o $(FCDRATE_OBJS) -lbamtools -o task_fcdrate $(TABIX) ++ $(CXX) $(CFLAGS) $(INC) task_fcdrate.o $(FCDRATE_OBJS) -lbamtools -o task_fcdrate $(TABIX) + + task_fcdrate.o: task_fcdrate.cpp $(FCDRATE_OBJS) +- $(CC) $(CFLAGS) -c task_fcdrate.cpp ++ $(CXX) $(CFLAGS) $(INC) -c task_fcdrate.cpp + + clean: + rm -rf *.o $(EXECUTABLES) +diff -ruN Reapr_1.0.18.orig/src/task_perfectfrombam.pl Reapr_1.0.18/src/task_perfectfrombam.pl +--- Reapr_1.0.18.orig/src/task_perfectfrombam.pl 2013-04-05 14:22:12.000000000 +0200 ++++ Reapr_1.0.18/src/task_perfectfrombam.pl 2019-11-13 12:02:08.000000000 +0100 +@@ -62,7 +62,7 @@ + my $ERROR_PREFIX = '[REAPR perfectfrombam]'; + my $perfect_bam = "$out_prefix.tmp.perfect.bam"; + my $repetitive_bam = "$out_prefix.tmp.repetitive.bam"; +-my $samtools = File::Spec->catfile($scriptdir, 'samtools'); ++# my $samtools = File::Spec->catfile($scriptdir, 'samtools'); + my %seq_lengths; + my %used_seqs; + my $hist_file = "$out_prefix.hist"; +@@ -75,7 +75,7 @@ + system_call("$bam2perfect $bam_in $out_prefix.tmp $min_insert $max_insert $max_repeat_map_qual $min_perfect_map_qual $min_align_score"); + + # Get sequence length info from bam header +-open F, "$samtools view -H $bam_in |" or die "$ERROR_PREFIX Error reading header of '$bam_in'"; ++open F, "samtools view -H $bam_in |" or die "$ERROR_PREFIX Error reading header of '$bam_in'"; + while () { + if (/^\@SQ/) { + my $id; +@@ -99,7 +99,7 @@ + + # run samtools mpileup on the perfect coverage BAM, writing the coverage to a new file. + # Have to be careful because mpileup only reports bases with != coverage. +-open FIN, "$samtools mpileup $perfect_bam | cut -f 1,2,4|" or die "$ERROR_PREFIX Error running samtools mpileup on '$perfect_bam'"; ++open FIN, "samtools mpileup $perfect_bam | cut -f 1,2,4|" or die "$ERROR_PREFIX Error running samtools mpileup on '$perfect_bam'"; + open FOUT, "| $bgzip -c > $perfect_cov_out" or die "$ERROR_PREFIX Error opening '$perfect_cov_out'"; + my $current_ref = ""; + my $current_pos = 1; +@@ -164,7 +164,7 @@ + + # get the regions of nonzero repetitive coverage from the + # repetitive BAM +-open FIN, "$samtools mpileup -A -C 0 $repetitive_bam | cut -f 1,2,4|" or die "$ERROR_PREFIX Error running samtools mpileup on '$repetitive_bam'"; ++open FIN, "samtools mpileup -A -C 0 $repetitive_bam | cut -f 1,2,4|" or die "$ERROR_PREFIX Error running samtools mpileup on '$repetitive_bam'"; + open FOUT, "| $bgzip -c > $repetitive_regions_out" or die "$ERROR_PREFIX Error opening '$repetitive_regions_out'"; + $current_ref = ""; + my $interval_start = -1; +diff -ruN Reapr_1.0.18.orig/src/task_perfectmap.pl Reapr_1.0.18/src/task_perfectmap.pl +--- Reapr_1.0.18.orig/src/task_perfectmap.pl 2012-11-15 17:27:30.000000000 +0100 ++++ Reapr_1.0.18/src/task_perfectmap.pl 2019-11-13 12:03:01.000000000 +0100 +@@ -45,7 +45,7 @@ + my $tmp_bin_single_match = "$tmp_bin\_single_match.fastq"; + my $tabix = File::Spec->catfile($scriptdir, 'tabix/tabix'); + my $bgzip = File::Spec->catfile($scriptdir, 'tabix/bgzip'); +-my $samtools = File::Spec->catfile($scriptdir, 'samtools'); ++# my $samtools = File::Spec->catfile($scriptdir, 'samtools'); + my $all_bases_outfile = "$preout.perfect_cov.gz"; + my $hist_outfile = "$preout.hist"; + my @coverage = (0) x 101; +@@ -56,7 +56,7 @@ + + # we want an indexed fasta file + unless (-e "$ref_fa.fai"){ +- system_call("$samtools faidx $ref_fa"); ++ system_call("samtools faidx $ref_fa"); + } + + # snp-o-matic can't take gzipped reads, so decompress them first if necessary +diff -ruN Reapr_1.0.18.orig/src/task_plots.pl Reapr_1.0.18/src/task_plots.pl +--- Reapr_1.0.18.orig/src/task_plots.pl 2013-03-08 13:58:00.000000000 +0100 ++++ Reapr_1.0.18/src/task_plots.pl 2019-11-13 12:03:19.000000000 +0100 +@@ -52,7 +52,7 @@ + + my $tabix = File::Spec->catfile($scriptdir, 'tabix/tabix'); + my $bgzip = File::Spec->catfile($scriptdir, 'tabix/bgzip'); +-my $samtools = File::Spec->catfile($scriptdir, 'samtools'); ++# my $samtools = File::Spec->catfile($scriptdir, 'samtools'); + my @plot_list = ('frag_cov', 'frag_cov_cor', 'read_cov', 'read_ratio_f', 'read_ratio_r', 'clip', 'FCD_err'); + my @file_list; + my $fa_out = "$outprefix.ref.fa"; +@@ -85,7 +85,7 @@ + if (-e $perfect_plot) {push @file_list, $perfect_plot}; + + # get the reference sequence from the fasta file +-system_call("$samtools faidx $ref_fa '$ref_id' > $fa_out"); ++system_call("samtools faidx $ref_fa '$ref_id' > $fa_out"); + + # bgzip the plots + foreach (@file_list) { +diff -ruN Reapr_1.0.18.orig/src/task_preprocess.pl Reapr_1.0.18/src/task_preprocess.pl +--- Reapr_1.0.18.orig/src/task_preprocess.pl 2014-07-18 13:05:19.000000000 +0200 ++++ Reapr_1.0.18/src/task_preprocess.pl 2019-11-13 12:03:35.000000000 +0100 +@@ -54,7 +54,7 @@ + my $r_script = File::Spec->catfile($sample_dir, 'gc_vs_cov.R'); + my $tabix = File::Spec->catfile($scriptdir, 'tabix/tabix'); + my $bgzip = File::Spec->catfile($scriptdir, 'tabix/bgzip'); +-my $samtools = File::Spec->catfile($scriptdir, 'samtools'); ++# my $samtools = File::Spec->catfile($scriptdir, 'samtools'); + + # make directory and soft links to required files + $fasta_in = File::Spec->rel2abs($fasta_in); +@@ -76,14 +76,14 @@ + symlink "$fasta_in.fai", "$ref.fai"; + } + else { +- system_call("$samtools faidx $ref"); ++ system_call("samtools faidx $ref"); + } + + if (-e "$bam_in.bai") { + symlink "$bam_in.bai", "$bam.bai"; + } + else { +- system_call("$samtools index $bam"); ++ system_call("samtools index $bam"); + } + + # make gaps file of gaps in reference +diff -ruN Reapr_1.0.18.orig/src/task_seqrename.pl Reapr_1.0.18/src/task_seqrename.pl +--- Reapr_1.0.18.orig/src/task_seqrename.pl 2014-02-24 17:35:11.000000000 +0100 ++++ Reapr_1.0.18/src/task_seqrename.pl 2019-11-13 12:03:52.000000000 +0100 +@@ -7,7 +7,7 @@ + use Getopt::Long; + + my ($scriptname, $scriptdir) = fileparse($0); +-my $samtools = File::Spec->catfile($scriptdir, 'samtools'); ++# my $samtools = File::Spec->catfile($scriptdir, 'samtools'); + my %options; + my $usage = qq/ + +@@ -52,8 +52,8 @@ + $old2new{'='} = '='; + + # make the new bam file +-open FIN, "$samtools view -h $bam_in|" or die $!; +-open FOUT, "| $samtools view -bS - > $bam_out" or die $!; ++open FIN, "samtools view -h $bam_in|" or die $!; ++open FOUT, "| samtools view -bS - > $bam_out" or die $!; + + while () { + chomp; +diff -ruN Reapr_1.0.18.orig/src/task_smaltmap.pl Reapr_1.0.18/src/task_smaltmap.pl +--- Reapr_1.0.18.orig/src/task_smaltmap.pl 2014-03-13 09:31:14.000000000 +0100 ++++ Reapr_1.0.18/src/task_smaltmap.pl 2019-11-13 12:04:27.000000000 +0100 +@@ -77,7 +77,7 @@ + my $reads_2 = $ARGV[2]; + my $final_bam = $ARGV[3]; + my $ERROR_PREFIX = '[REAPR smaltmap]'; +-my $samtools = File::Spec->catfile($scriptdir, 'samtools'); ++# my $samtools = File::Spec->catfile($scriptdir, 'samtools'); + my $smalt = File::Spec->catfile($scriptdir, 'smalt'); + my $tmp_prefix = "$final_bam.tmp.$$.smaltmap"; + my $smalt_index = "$tmp_prefix.smalt_index"; +@@ -115,7 +115,7 @@ + # already). The .fai file would get made in the samtools view -T .. call + # anyway. + unless (-e "$assembly.fai") { +- my $cmd = "$samtools faidx $assembly"; ++ my $cmd = "samtools faidx $assembly"; + if (system($cmd)) { + print STDERR "$ERROR_PREFIX Error in system call:\n$cmd\n\n"; + print STDERR "This means samtools is unhappy with the assembly +@@ -152,24 +152,24 @@ + + push @commands, "$smalt map -r 0 -x -y $options{y} $n_option $m_option -g $smalt_sample -f samsoft $smalt_index $reads_1 $reads_2" + . q{ | awk '$1!~/^#/' } # SMALT writes some stuff to do with the sampling to stdout +- . " | $samtools view -S -T $assembly -b - > $raw_bam"; ++ . " | samtools view -S -T $assembly -b - > $raw_bam"; + + # sort the bam by coordinate +-push @commands, "$samtools sort $raw_bam $raw_bam.sort"; ++push @commands, "samtools sort $raw_bam $raw_bam.sort"; + + # remove duplicates +-push @commands, "$samtools rmdup $raw_bam.sort.bam $rmdup_bam"; ++push @commands, "samtools rmdup $raw_bam.sort.bam $rmdup_bam"; + + # Bamtools needs the @HD line of the BAM to be present. + # So need to make new header for the BAM + + # need to get tab characters printed properly. Can't rely on echo -e working, so pipe through awk + push @commands, q~echo "@HD VN:1.0 SO:coordinate" | awk '{OFS="\t"; $1=$1; print}' > ~ . "$header"; +-push @commands, "$samtools view -H $rmdup_bam >> $header"; +-push @commands, "$samtools reheader $header $rmdup_bam > $final_bam"; ++push @commands, "samtools view -H $rmdup_bam >> $header"; ++push @commands, "samtools reheader $header $rmdup_bam > $final_bam"; + + # index the BAM +-push @commands, "$samtools index $final_bam"; ++push @commands, "samtools index $final_bam"; + + # clean up temp files + push @commands, "rm $tmp_prefix.*"; +diff -ruN Reapr_1.0.18.orig/third_party/ekg-tabixpp-fbdde77/Makefile Reapr_1.0.18/third_party/ekg-tabixpp-fbdde77/Makefile +--- Reapr_1.0.18.orig/third_party/ekg-tabixpp-fbdde77/Makefile 2013-02-25 17:47:26.000000000 +0100 ++++ Reapr_1.0.18/third_party/ekg-tabixpp-fbdde77/Makefile 2019-11-18 14:23:07.000000000 +0100 +@@ -1,6 +1,3 @@ +-CC= gcc +-CPP= g++ +-CFLAGS= -g -Wall -O2 -fPIC #-m64 #-arch ppc + DFLAGS= -D_FILE_OFFSET_BITS=64 -D_USE_KNETFILE + LOBJS= bgzf.o kstring.o knetfile.o index.o bedidx.o + AOBJS= main.o +@@ -40,13 +37,13 @@ + ranlib $@ + + tabix:lib $(AOBJS) +- $(CC) $(CFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) -L. -ltabix -lz ++ $(CXX) $(CFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) -L. -ltabix -lz + + tabix.o: tabix.hpp tabix.cpp +- $(CPP) $(CFLAGS) -c tabix.cpp ++ $(CXX) $(CFLAGS) -c tabix.cpp + + tabix++:lib tabix.o main.cpp +- $(CPP) $(CFLAGS) -o $@ main.cpp tabix.o bgzf.o -lm $(LIBPATH) -L. -ltabix -lz ++ $(CXX) $(CFLAGS) -o $@ main.cpp tabix.o bgzf.o -lm $(LIBPATH) -L. -ltabix -lz + + bgzip:bgzip.o bgzf.o knetfile.o + $(CC) $(CFLAGS) -o $@ bgzip.o bgzf.o knetfile.o -lz +diff -ruN Reapr_1.0.18.orig/third_party/snpomatic/Makefile Reapr_1.0.18/third_party/snpomatic/Makefile +--- Reapr_1.0.18.orig/third_party/snpomatic/Makefile 2012-03-21 14:00:17.000000000 +0100 ++++ Reapr_1.0.18/third_party/snpomatic/Makefile 2019-11-18 13:48:16.000000000 +0100 +@@ -1,6 +1,3 @@ +-# Use g++ +-CXX=g++ +-CXXFLAGS=-g -O3 + LIBS=-lm + + # Use Intel compiler (faster!) diff --git a/easybuild/easyconfigs/r/Reapr/Reapr-1.0.18-foss-2019a.eb b/easybuild/easyconfigs/r/Reapr/Reapr-1.0.18-foss-2019a.eb new file mode 100644 index 00000000000..e5af9c93723 --- /dev/null +++ b/easybuild/easyconfigs/r/Reapr/Reapr-1.0.18-foss-2019a.eb @@ -0,0 +1,50 @@ +easyblock = 'MakeCp' + +name = 'Reapr' +version = '1.0.18' + +homepage = 'https://www.sanger.ac.uk/science/tools/reapr' +description = """A tool that evaluates the accuracy of a genome assembly using mapped paired end reads, +without the use of a reference genome for comparison.""" + +toolchain = {'name': 'foss', 'version': '2019a'} + +source_urls = ['ftp://ftp.sanger.ac.uk/pub/resources/software/reapr/'] +sources = ['Reapr_%(version)s.tar.gz'] +patches = ['Reapr-1.0.18-cleanup.patch'] +checksums = [ + '6d691b5b49c58aef332e771d339e32097a7696e9c68bd8f16808b46d648b6660', # Reapr_1.0.18.tar.gz + 'f4a8b4a98a6c95c43b8a152d884a38e62285832103df26d656987bfaf358e451' # Reapr-1.0.18-cleanup.patch +] + +dependencies = [ + ('Perl', '5.28.1'), + ('R', '3.6.0'), + ('BamTools', '2.5.1'), + ('SAMtools', '1.9'), +] + +builddependencies = [('CMake', '3.13.3')] + +exts_defaultclass = 'PerlModule' + +exts_list = [ + ('File::Spec::Link', '0.140', { + 'source_tmpl': 'File-Copy-Link-%(version)s.tar.gz', + 'source_urls': ['https://cpan.metacpan.org/authors/id/R/RM/RMBARKER/'], + 'checksums': ['2063656dcd38bade43dc7f1e2ef5f1b6a8086c2f15d37b334189bd2a28e8ffeb'], + }) +] + +files_to_copy = [(['bin/*'], "bin")] + +sanity_check_paths = { + 'files': ['bin/reapr'], + 'dirs': ['lib/perl5'], +} + +sanity_check_commands = ["reapr 2>&1 | grep 'REAPR version: %(version)s'"] + +modextrapaths = {'PERL5LIB': 'lib/perl5/site_perl/%(perlver)s/'} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/RnBeads/RnBeads-2.6.0-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/r/RnBeads/RnBeads-2.6.0-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..86ceeb5100b --- /dev/null +++ b/easybuild/easyconfigs/r/RnBeads/RnBeads-2.6.0-foss-2020a-R-4.0.0.eb @@ -0,0 +1,56 @@ +easyblock = 'Bundle' + +name = 'RnBeads' +version = '2.6.0' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://rnbeads.org' +description = """RnBeads is an R package for comprehensive analysis of DNA methylation data obtained with any +experimental protocol that provides single-CpG resolution.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('R', '4.0.0'), + ('R-bundle-Bioconductor', '3.11', versionsuffix), + ('Ghostscript', '9.52'), + ('Zip', '3.0'), +] + +exts_default_options = { + 'source_urls': [ + 'https://bioconductor.org/packages/3.11/bioc/src/contrib/', + 'https://bioconductor.org/packages/3.11/bioc/src/contrib/Archive/%(name)s', + 'https://bioconductor.org/packages/3.11/data/annotation/src/contrib/', + 'https://bioconductor.org/packages/3.11/data/experiment/src/contrib/', + ], + 'source_tmpl': '%(name)s_%(version)s.tar.gz' +} + +exts_defaultclass = 'RPackage' + +exts_filter = ("R -q --no-save", "library(%(ext_name)s)") + +exts_list = [ + ('RnBeads', '2.6.0', { + 'checksums': ['5c7f1f3f3a6ecf3efc199723950f02d6ffb8460e2bc3e964266c5bdb1b369186'], + }), + ('RnBeads.hg19', '1.20.0', { + 'checksums': ['8fbda7e67661994791d8986f8d54cd3ae7495299dfe56fd2069396cdaa75e089'], + }), + ('RnBeads.mm10', '1.20.0', { + 'checksums': ['7aeff709a3669476240727a36da0cb21c138729ee41d3188527c74c9fc2dc0f2'], + }), + ('RnBeads.hg38', '1.20.0', { + 'checksums': ['7e3d625b98876a49ecd31406a73feeaebd1b0fb9fb3b6fd371a5962aaca3e8a2'], + }), +] + +modextrapaths = {'R_LIBS': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/r/rgdal/rgdal-1.5-16-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/r/rgdal/rgdal-1.5-16-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..0aabffa5847 --- /dev/null +++ b/easybuild/easyconfigs/r/rgdal/rgdal-1.5-16-foss-2020a-R-4.0.0.eb @@ -0,0 +1,32 @@ +# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. +easyblock = 'RPackage' + +name = 'rgdal' +version = '1.5-16' +versionsuffix = '-R-%(rver)s' + +homepage = "https://rgdal.r-forge.r-project.org/" +description = """Provides bindings to the 'Geospatial' Data Abstraction Library ('GDAL') (>= 1.11.4 and <= 2.5.0) and + access to projection/transformation operations from the 'PROJ.4' library.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +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 +] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['f7c5bfd0ebeda1522456904688f873e5b8f171522a32d2a2a30ebf8e9dd29467'] + +dependencies = [ + ('R', '4.0.0'), + ('GDAL', '3.0.4', '-Python-3.8.2'), +] + +sanity_check_paths = { + 'files': ['rgdal/R/rgdal'], + 'dirs': [], +} + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/r/rgeos/rgeos-0.5-5-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/r/rgeos/rgeos-0.5-5-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..a1817cc9a56 --- /dev/null +++ b/easybuild/easyconfigs/r/rgeos/rgeos-0.5-5-foss-2020a-R-4.0.0.eb @@ -0,0 +1,30 @@ +easyblock = 'RPackage' + +name = 'rgeos' +version = '0.5-5' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cran.r-project.org/web/packages/rgeos/' +description = """R interface to Geometry Engine - Open Source (GEOS) using the C API for topology operations + on geometries""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +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 +] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['4baa0dfe6ff76e87ddb67a030fc14fe963d28b518485a4d71058923b2606d420'] + +dependencies = [ + ('R', '4.0.0'), + ('GEOS', '3.8.1', '-Python-3.8.2'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['%(namelower)s'], +} + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/r/rickflow/rickflow-0.7.0-20200529-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/r/rickflow/rickflow-0.7.0-20200529-intel-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..ede9f792dcc --- /dev/null +++ b/easybuild/easyconfigs/r/rickflow/rickflow-0.7.0-20200529-intel-2019b-Python-3.7.4.eb @@ -0,0 +1,57 @@ +easyblock = 'PythonBundle' + +name = 'rickflow' +local_commit = 'f2772edb58bc1d117f2fa646bdb87c1339891438' +version = '0.7.0-20200529' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://gitlab.com/Olllom/rickflow' +description = "Running and Analyzing OpenMM Jobs" + +toolchain = {'name': 'intel', 'version': '2019b'} + + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('PyYAML', '5.1.2'), + ('MDTraj', '1.9.3', versionsuffix), + ('networkx', '2.4', versionsuffix), + ('OpenMM', '7.4.1', versionsuffix), + ('netcdf4-python', '1.5.3', versionsuffix), +] + +use_pip = True + +exts_list = [ + ('mpiplus', '0.0.1', { + 'source_tmpl': 'v%(version)s.tar.gz', + 'source_urls': ['https://github.com/choderalab/mpiplus/archive/'], + 'checksums': ['a3d50157a274decab87589ad78b9e41e9f3d34eb27a7d50cc6e7ef34def98b44'], + }), + ('pymbar', '3.0.5', { + 'source_urls': ['https://pypi.python.org/packages/source/%(nameletter)s/%(name)s'], + 'checksums': ['b079a7d0b9fbc8a92850277b664bb582991ef5ac399b3607e695569148f6c784'], + }), + ('openmmtools', '0.19.0', { + 'source_tmpl': '%(version)s.tar.gz', + 'source_urls': ['https://github.com/choderalab/openmmtools/archive/'], + 'checksums': ['32f74d9ff9d3897d907b57ae1480929dd3ef29918cf82da13a2a2d6f74d5eeb8'], + }), + (name, version, { + 'modulename': 'rflow', + 'source_urls': ['https://gitlab.com/Olllom/%%(name)s/-/archive/%s/' % local_commit], + 'checksums': ['84b687a6aafc7109aaf684c1a77c416dfea30a59d544dc4285efd94421523d07'], + }), +] + +sanity_check_paths = { + 'files': ['bin/rflow'], + 'dirs': [], +} + +sanity_check_commands = ["rflow --help"] + +sanity_pip_check = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/r/rjags/rjags-4-10-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/r/rjags/rjags-4-10-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..e06d1a1f83d --- /dev/null +++ b/easybuild/easyconfigs/r/rjags/rjags-4-10-foss-2020a-R-4.0.0.eb @@ -0,0 +1,29 @@ +easyblock = 'RPackage' + +name = 'rjags' +version = '4-10' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cran.r-project.org/web/packages/rjags' +description = """The rjags package is an interface to the JAGS library.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = [ + 'https://cran.r-project.org/src/contrib/', + 'https://cran.r-project.org/src/contrib/Archive/rjags/', +] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['bd3e0bdf50b23b63061a0caa2428be585ccbf0b3f5d28eaa690e714e508d0ada'] + +dependencies = [ + ('R', '4.0.0'), + ('JAGS', '4.3.0'), +] + +sanity_check_paths = { + 'files': [], + 'dirs': ['rjags'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SCOTCH/SCOTCH-6.0.9-iimpic-2019b.eb b/easybuild/easyconfigs/s/SCOTCH/SCOTCH-6.0.9-iimpic-2019b.eb new file mode 100644 index 00000000000..2e36fcaed14 --- /dev/null +++ b/easybuild/easyconfigs/s/SCOTCH/SCOTCH-6.0.9-iimpic-2019b.eb @@ -0,0 +1,19 @@ +name = 'SCOTCH' +version = '6.0.9' + +homepage = 'https://gforge.inria.fr/projects/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': 'iimpic', 'version': '2019b'} +toolchainopts = {'pic': True} + +source_urls = ['https://gforge.inria.fr/frs/download.php/file/38187/'] +sources = ['%(namelower)s_%(version)s.tar.gz'] +checksums = ['622b4143cf01c480bb15708b3651b29c25e4aeb00c8c6447ff196aca2eca5c93'] + +dependencies = [ + ('zlib', '1.2.11'), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SDSL/SDSL-2.1.1-20191211-GCC-8.3.0.eb b/easybuild/easyconfigs/s/SDSL/SDSL-2.1.1-20191211-GCCcore-8.3.0.eb similarity index 57% rename from easybuild/easyconfigs/s/SDSL/SDSL-2.1.1-20191211-GCC-8.3.0.eb rename to easybuild/easyconfigs/s/SDSL/SDSL-2.1.1-20191211-GCCcore-8.3.0.eb index 93ea19af749..d4447b65b62 100644 --- a/easybuild/easyconfigs/s/SDSL/SDSL-2.1.1-20191211-GCC-8.3.0.eb +++ b/easybuild/easyconfigs/s/SDSL/SDSL-2.1.1-20191211-GCCcore-8.3.0.eb @@ -7,37 +7,41 @@ homepage = 'https://github.com/simongog/sdsl-lite' description = """The Succinct Data Structure Library (SDSL) is a powerful and flexible C++11 library implementing succinct data structures.""" -toolchain = {'name': 'GCC', 'version': '8.3.0'} +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} +local_sdsldir = 'sdsl-lite-*' +local_extract_cmd_pattern = "pwd && ls && tar -C %s/%s --strip-components=1 -xf %%s" source_urls = ['https://github.com/simongog/sdsl-lite/archive/'] + sources = [ { 'download_filename': 'c32874c.tar.gz', 'filename': SOURCE_TAR_GZ, }, - { - 'source_urls': ['https://github.com/google/googletest/archive/'], - 'download_filename': 'release-1.10.0.tar.gz', - 'filename': 'googletest-1.10.0.tar.gz', - }, { 'source_urls': ['https://github.com/simongog/libdivsufsort/archive/'], 'download_filename': '22e6b23.tar.gz', 'filename': 'libdivsufsort-2.0.1-20161201.tar.gz', + 'extract_cmd': local_extract_cmd_pattern % (local_sdsldir, 'external/libdivsufsort'), }, ] +patches = ['SDSL-remove-googletest.patch', 'SDSL-deactivate-failed-test.patch'] checksums = [ 'ffab55af40d33a1a1705a693589d95ec31318270d58830a00d3723ee74b0c47b', # SDSL-2.1.1-20191211.tar.gz - '9dc9157a9a1551ec7a7e43daea9a694a0bb5fb8bec81235d8a1e6ef64c716dcb', # googletest-1.10.0.tar.gz '211d4c64c13175a5020f4f16e418b9410facf5d22fb2cb7295a58887a61ae13f', # libdivsufsort-2.0.1-20161201.tar.gz + 'a355a66bffd41c21a65fe6e25e9076da81a7fd5275294cf5a0c8facec2fc42f6', # SDSL-remove-googletest.patch + 'd0136af5e786f05d117bce473702986373327c4b69e3a68d0fd4e081096d0807', # SDSL-deactivate-failed-test.patch ] -builddependencies = [('CMake', '3.15.3')] - -preconfigopts = "cp -a %(builddir)s/googletest-*/* %(builddir)s/sdsl-lite-*/external/googletest/ && " -preconfigopts += "cp -a %(builddir)s/libdivsufsort-*/* %(builddir)s/sdsl-lite-*/external/libdivsufsort/ && " +builddependencies = [ + ('CMake', '3.15.3'), + ('googletest', '1.10.0'), + ('binutils', '2.32') +] +buildopts = 'sdsl' +runtest = 'test-sdsl' -configopts = "-DBUILD_GMOCK=OFF -DINSTALL_GTEST=OFF" +separate_build_dir = True sanity_check_paths = { 'files': ['lib/libsdsl.a'], diff --git a/easybuild/easyconfigs/s/SDSL/SDSL-deactivate-failed-test.patch b/easybuild/easyconfigs/s/SDSL/SDSL-deactivate-failed-test.patch new file mode 100644 index 00000000000..6bc29387425 --- /dev/null +++ b/easybuild/easyconfigs/s/SDSL/SDSL-deactivate-failed-test.patch @@ -0,0 +1,14 @@ +# This test fails on some filesystem. +# Author : Maxime Boissonneault (Compute Canada) +diff -ru sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4.orig/test/cst_byte_test.cpp sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4/test/cst_byte_test.cpp +--- sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4.orig/test/cst_byte_test.cpp 2020-08-10 20:04:55.633988867 -0000 ++++ sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4/test/cst_byte_test.cpp 2020-08-10 20:07:01.710194212 -0000 +@@ -55,7 +55,7 @@ + { + TypeParam cst; + typedef typename TypeParam::node_type node_t; +- ASSERT_TRUE(load_from_file(cst, temp_file)); ++// ASSERT_TRUE(load_from_file(cst, temp_file)); + for(const node_t& node : cst) { + node_t ancestor = node; + size_t level = 0; diff --git a/easybuild/easyconfigs/s/SDSL/SDSL-remove-googletest.patch b/easybuild/easyconfigs/s/SDSL/SDSL-remove-googletest.patch new file mode 100644 index 00000000000..961250691c3 --- /dev/null +++ b/easybuild/easyconfigs/s/SDSL/SDSL-remove-googletest.patch @@ -0,0 +1,22 @@ +# This removes the vendored googletest dependency. EasyBuild uses the module instead +# Author : Maxime Boissonneault (Compute Canada) +diff -ru sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4.orig/external/CMakeLists.txt sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4/external/CMakeLists.txt +--- sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4.orig/external/CMakeLists.txt 2020-08-10 19:07:11.804540614 -0000 ++++ sdsl-lite-c32874cb2d8524119f25f3b501526fe692df29f4/external/CMakeLists.txt 2020-08-10 19:07:34.993778036 -0000 +@@ -13,16 +13,4 @@ + + add_subdirectory(libdivsufsort) + +-## Add gtest +-set(gtest_dir ${CMAKE_CURRENT_LIST_DIR}/googletest) +-set(gtest_file ${gtest_dir}/CMakeLists.txt) +-if(NOT EXISTS ${gtest_file}) +- EXECUTE_PROCESS(COMMAND git submodule update --init external/googletest +- WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/.. +- OUTPUT_QUIET +- ) +-endif(NOT EXISTS ${gtest_file}) +- +-add_subdirectory(googletest/googletest) +- + diff --git a/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-foss-2019b.eb b/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-foss-2019b-Python-3.7.4.eb similarity index 83% rename from easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-foss-2019b.eb rename to easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-foss-2019b-Python-3.7.4.eb index 3d4db4f854b..44de4cd2c7b 100644 --- a/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-foss-2019b.eb +++ b/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-foss-2019b-Python-3.7.4.eb @@ -1,5 +1,6 @@ name = 'SLEPc' version = '3.12.2' +versionsuffix = '-Python-%(pyver)s' homepage = 'https://slepc.upv.es/' description = """SLEPc (Scalable Library for Eigenvalue Problem Computations) is a software library for the solution @@ -14,8 +15,11 @@ source_urls = ['https://slepc.upv.es/download/distrib'] sources = [SOURCELOWER_TAR_GZ] checksums = ['a586ce572a928ed87f04961850992a9b8e741677397cbaa3fb028323eddf4598'] -dependencies = [('PETSc', '3.12.4')] +dependencies = [ + ('Python', '3.7.4'), + ('PETSc', '3.12.4', versionsuffix), +] -petsc_arch = 'installed-arch-linux2-c-opt' +petsc_arch = 'installed-arch-linux-c-opt' moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b.eb b/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b-Python-2.7.16.eb similarity index 87% rename from easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b.eb rename to easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b-Python-2.7.16.eb index 0ba8ff863e9..1eef1795cf2 100644 --- a/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b.eb +++ b/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b-Python-2.7.16.eb @@ -1,5 +1,6 @@ name = 'SLEPc' version = '3.12.2' +versionsuffix = '-Python-%(pyver)s' homepage = 'https://slepc.upv.es/' description = """SLEPc (Scalable Library for Eigenvalue Problem Computations) is a software library for the solution @@ -14,7 +15,10 @@ source_urls = ['https://slepc.upv.es/download/distrib'] sources = [SOURCELOWER_TAR_GZ] checksums = ['a586ce572a928ed87f04961850992a9b8e741677397cbaa3fb028323eddf4598'] -dependencies = [('PETSc', '3.12.4')] +dependencies = [ + ('Python', '2.7.16'), + ('PETSc', '3.12.4', versionsuffix), +] petsc_arch = 'installed-arch-linux2-c-opt' diff --git a/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..f4362d7c43f --- /dev/null +++ b/easybuild/easyconfigs/s/SLEPc/SLEPc-3.12.2-intel-2019b-Python-3.7.4.eb @@ -0,0 +1,25 @@ +name = 'SLEPc' +version = '3.12.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://slepc.upv.es/' +description = """SLEPc (Scalable Library for Eigenvalue Problem Computations) is a software library for the solution + of large scale sparse eigenvalue problems on parallel computers. It is an extension of PETSc and can be used for + either standard or generalized eigenproblems, with real or complex arithmetic. It can also be used for computing a + partial SVD of a large, sparse, rectangular matrix, and to solve quadratic eigenvalue problems.""" + +toolchain = {'name': 'intel', 'version': '2019b'} +toolchainopts = {'usempi': True, 'openmp': True} + +source_urls = ['https://slepc.upv.es/download/distrib'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['a586ce572a928ed87f04961850992a9b8e741677397cbaa3fb028323eddf4598'] + +dependencies = [ + ('Python', '3.7.4'), + ('PETSc', '3.12.4', versionsuffix), +] + +petsc_arch = 'installed-arch-linux-c-opt' + +moduleclass = 'numlib' diff --git a/easybuild/easyconfigs/s/SLiM/SLiM-3.4-GCC-9.3.0.eb b/easybuild/easyconfigs/s/SLiM/SLiM-3.4-GCC-9.3.0.eb new file mode 100644 index 00000000000..a6a6b3b9873 --- /dev/null +++ b/easybuild/easyconfigs/s/SLiM/SLiM-3.4-GCC-9.3.0.eb @@ -0,0 +1,32 @@ +easyblock = 'CMakeMake' + +name = 'SLiM' +version = '3.4' + +homepage = 'https://messerlab.org/slim' +description = """SLiM is an evolutionary simulation framework that combines a powerful engine for population + genetic simulations with the capability of modeling arbitrarily complex evolutionary scenarios.""" + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +source_urls = ['https://github.com/MesserLab/%(name)s/archive'] +sources = ['v%(version)s.tar.gz'] +checksums = ['b25a39109e7dbacb847ce4241a59788db645d199eacb607d002295d0a369d798'] + +builddependencies = [ + ('CMake', '3.16.4'), +] + +sanity_check_paths = { + 'files': ['bin/eidos', 'bin/slim'], + 'dirs': [], +} + +sanity_check_commands = [ + "eidos -usage", + "eidos -testEidos", + "slim -usage", + "slim -testSLiM", +] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/STREAM/STREAM-5.10-GCC-9.3.0.eb b/easybuild/easyconfigs/s/STREAM/STREAM-5.10-GCC-9.3.0.eb new file mode 100644 index 00000000000..f775913ef4f --- /dev/null +++ b/easybuild/easyconfigs/s/STREAM/STREAM-5.10-GCC-9.3.0.eb @@ -0,0 +1,41 @@ +easyblock = 'CmdCp' + +name = 'STREAM' +version = '5.10' + +homepage = 'https://www.cs.virginia.edu/stream/' +description = """The STREAM benchmark is a simple synthetic benchmark program that measures sustainable + memory bandwidth (in MB/s) and the corresponding computation rate for simple vector kernels.""" + +toolchain = {'name': 'GCC', 'version': '9.3.0'} +toolchainopts = {'openmp': True} + +source_urls = ['https://www.cs.virginia.edu/stream/FTP/Code/'] +sources = [{'download_filename': '%(namelower)s.c', 'filename': 'stream-%(version)s.c'}] +checksums = ['a52bae5e175bea3f7832112af9c085adab47117f7d2ce219165379849231692b'] + +skipsteps = ['source'] + +# 10 million array elements (1000 runs): requires ~224MB of memory +local_cmds = "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=10000000 -DNTIMES=1000 -o stream_1Kx10M; " +# 100 million array elements (1000 runs): requires ~2.2GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=100000000 -DNTIMES=1000 -o stream_1Kx100M; " +# 1 billion array elements (1000 runs): requires ~22.4 GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=1000000000 -DNTIMES=1000 -o stream_1Kx1B; " +# 2.5 billion array elements (1000 runs): requires ~56 GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=2500000000 -DNTIMES=1000 -o stream_1Kx2.5B; " +# 5 billion array elements (1000 runs): requires ~111 GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=5000000000 -DNTIMES=1000 -o stream_1Kx5B; " + +cmds_map = [('stream-%(version)s.c', local_cmds)] + +files_to_copy = [(['stream_1Kx10M', 'stream_1Kx100M', 'stream_1Kx1B', 'stream_1Kx2.5B', 'stream_1Kx5B'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/stream_1Kx10M', 'bin/stream_1Kx100M', 'bin/stream_1Kx1B', 'bin/stream_1Kx2.5B', 'bin/stream_1Kx5B'], + 'dirs': [], +} + +tests = ['%(installdir)s/bin/stream_1Kx10M'] + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/STREAM/STREAM-5.10-iccifort-2020.1.217.eb b/easybuild/easyconfigs/s/STREAM/STREAM-5.10-iccifort-2020.1.217.eb new file mode 100644 index 00000000000..3e547e86eea --- /dev/null +++ b/easybuild/easyconfigs/s/STREAM/STREAM-5.10-iccifort-2020.1.217.eb @@ -0,0 +1,41 @@ +easyblock = 'CmdCp' + +name = 'STREAM' +version = '5.10' + +homepage = 'https://www.cs.virginia.edu/stream/' +description = """The STREAM benchmark is a simple synthetic benchmark program that measures sustainable + memory bandwidth (in MB/s) and the corresponding computation rate for simple vector kernels.""" + +toolchain = {'name': 'iccifort', 'version': '2020.1.217'} +toolchainopts = {'openmp': True} + +source_urls = ['https://www.cs.virginia.edu/stream/FTP/Code/'] +sources = [{'download_filename': '%(namelower)s.c', 'filename': 'stream-%(version)s.c'}] +checksums = ['a52bae5e175bea3f7832112af9c085adab47117f7d2ce219165379849231692b'] + +skipsteps = ['source'] + +# 10 million array elements (1000 runs): requires ~224MB of memory +local_cmds = "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=10000000 -DNTIMES=1000 -o stream_1Kx10M; " +# 100 million array elements (1000 runs): requires ~2.2GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=100000000 -DNTIMES=1000 -o stream_1Kx100M; " +# 1 billion array elements (1000 runs): requires ~22.4 GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=1000000000 -DNTIMES=1000 -o stream_1Kx1B; " +# 2.5 billion array elements (1000 runs): requires ~56 GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=2500000000 -DNTIMES=1000 -o stream_1Kx2.5B; " +# 5 billion array elements (1000 runs): requires ~111 GiB of memory +local_cmds += "$CC $CFLAGS %(source)s -mcmodel=large -DSTREAM_ARRAY_SIZE=5000000000 -DNTIMES=1000 -o stream_1Kx5B; " + +cmds_map = [('stream-%(version)s.c', local_cmds)] + +files_to_copy = [(['stream_1Kx10M', 'stream_1Kx100M', 'stream_1Kx1B', 'stream_1Kx2.5B', 'stream_1Kx5B'], 'bin')] + +sanity_check_paths = { + 'files': ['bin/stream_1Kx10M', 'bin/stream_1Kx100M', 'bin/stream_1Kx1B', 'bin/stream_1Kx2.5B', 'bin/stream_1Kx5B'], + 'dirs': [], +} + +tests = ['%(installdir)s/bin/stream_1Kx10M'] + +moduleclass = 'perf' diff --git a/easybuild/easyconfigs/s/SYMPHONY/SYMPHONY-5.6.16-foss-2018b.eb b/easybuild/easyconfigs/s/SYMPHONY/SYMPHONY-5.6.16-foss-2018b.eb index 8e49421b009..0ee83d5b1fb 100644 --- a/easybuild/easyconfigs/s/SYMPHONY/SYMPHONY-5.6.16-foss-2018b.eb +++ b/easybuild/easyconfigs/s/SYMPHONY/SYMPHONY-5.6.16-foss-2018b.eb @@ -31,17 +31,16 @@ configopts = '--with-blas="$LIBBLAS" --with-lapack="$LIBLAPACK" ' # Disable GLPK, dependencies have to be built with it as well configopts += '--without-glpk ' # Use CoinUtils from EB -configopts += '--with-coinutils-lib="-lCoinUtils" --with-coinutils-incdir=$EBROOTCOINUTILS/include/coin ' +configopts += '--with-coinutils-lib="-lCoinUtils" ' configopts += '--with-coinutils-datadir=$EBROOTCOINUTILS/share/coin/Data' # Use Clp from EB -configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" --with-clp-incdir="$EBROOTCLP/include/coin" ' +configopts += '--with-clp-lib="-lOsiClp -lClpSolver -lClp" ' configopts += '--with-clp-datadir=$EBROOTCLP/share/coin/Data ' # Use Osi from EB (also needs links to Clp due to OsiClpSolver) configopts += '--with-osi-lib="-lOsiClp -lClpSolver -lClp -lOsi" ' -configopts += '--with-osi-incdir="$EBROOTOSI/include/coin -I$EBROOTCLP/include/coin" ' configopts += '--with-osi-datadir=$EBROOTOSI/share/coin/Data ' # Use Cgl from EB -configopts += '--with-cgl-lib="-lCgl" --with-cgl-incdir="$EBROOTCGL/include/coin" ' +configopts += '--with-cgl-lib="-lCgl" ' configopts += '--with-cgl-datadir=$EBROOTCGL/share/coin/Data ' sanity_check_paths = { @@ -49,4 +48,7 @@ sanity_check_paths = { 'dirs': ['include/coin', 'lib/pkgconfig', 'share/coin'] } +# other coin-or projects expect instead of +modextrapaths = {'CPATH': 'include/coin'} + moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/Salmon/Salmon-1.3.0-gompi-2020a.eb b/easybuild/easyconfigs/s/Salmon/Salmon-1.3.0-gompi-2020a.eb new file mode 100644 index 00000000000..9d600a075dc --- /dev/null +++ b/easybuild/easyconfigs/s/Salmon/Salmon-1.3.0-gompi-2020a.eb @@ -0,0 +1,61 @@ +## +# 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:: GLPv2 +# +# Notes:: +## +# Contribution from the NIHR Biomedical Research Centre +# Guy's and St Thomas' NHS Foundation Trust and King's College London +# uploaded by J. Sassmannshausen +# Thanks to people like Simon Brandord, Mikael Oehmann and Kenneth Hoste +# for their help with the ICE + +easyblock = 'CMakeMake' + +name = 'Salmon' +version = '1.3.0' + +homepage = 'https://github.com/COMBINE-lab/salmon' +description = """Salmon is a wicked-fast program to produce a highly-accurate, + transcript-level quantification estimates from RNA-seq data.""" + +toolchain = {'name': 'gompi', 'version': '2020a'} +toolchainopts = {'pic': True, 'openmp': True} + +github_account = 'COMBINE-lab' +source_urls = [GITHUB_LOWER_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['c105be481630d57e7022bf870eb040857834303abff05fe0e971dda5ed6f0236'] + +builddependencies = [ + ('CMake', '3.16.4'), + ('pkg-config', '0.29.2'), + ('jemalloc', '5.2.1'), +] + +dependencies = [ + ('Boost', '1.72.0'), + ('tbb', '2020.1'), +] + +# Disable link-time optimizations (-flto) because it triggers a segfault/internal compiler error (ICE) with GCC 9.3.0 +# This problem might be solved with a newer version of either GCC or Salmon. +configopts = '-DJEMALLOC_ROOT=$EBROOTJEMALLOC -DNO_IPO=1' + +# need to unset the $LD_PRELOAD set be jemalloc to avoid hanging 'make test' +# since jemalloc is statically linked in Salmon (and hence only a build dep), +# this only affects the tests +pretestopts = "unset LD_PRELOAD && " +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/%(namelower)s'] + ['lib/lib%s.a' % x for x in ['graphdump', 'ntcard', 'salmon_core', 'twopaco']], + 'dirs': [], +} + +sanity_check_commands = ["salmon --help"] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-foss-2020a.eb b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-foss-2020a.eb index b81b63698e1..99337960764 100644 --- a/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-foss-2020a.eb +++ b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-foss-2020a.eb @@ -28,8 +28,8 @@ dependencies = [ preconfigopts = 'unset F77 && ' configopts = '--enable-shared --enable-static --disable-doc ' -# Tell it where to find FFTW -configopts += '--with-fftw3-includedir=$FFTW_INC_DIR --with-fftw3-libdir=$FFTW_LIB_DIR ' +# tell it where to find provided FFTW +configopts += '--without-internal-fftw --with-fftw3-includedir=$EBROOTFFTW/include --with-fftw3-libdir=$EBROOTFFTW/lib ' # only include the solvers supported for LAMMPS # (for p2nfft we need an additonal dependency) configopts += '--enable-fcs-solvers=direct,ewald,fmm,p3m ' diff --git a/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-intel-2020a.eb b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-intel-2020a.eb index 7898a906584..5dd1d679921 100644 --- a/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-intel-2020a.eb +++ b/easybuild/easyconfigs/s/ScaFaCoS/ScaFaCoS-1.0.1-intel-2020a.eb @@ -23,13 +23,14 @@ builddependencies = [ dependencies = [ ('GMP', '6.2.0'), ('GSL', '2.6'), + ('FFTW', '3.3.8'), ] preconfigopts = 'unset F77 && ' configopts = '--enable-shared --enable-static --disable-doc ' -# Tell it where to find FFTW -configopts += '--with-fftw3-includedir=$FFTW_INC_DIR --with-fftw3-libdir=$FFTW_LIB_DIR ' +# tell it where to find provided FFTW +configopts += '--without-internal-fftw --with-fftw3-includedir=$EBROOTFFTW/include --with-fftw3-libdir=$EBROOTFFTW/lib ' # only include the solvers supported for LAMMPS # (for p2nfft we need an additonal dependency) configopts += '--enable-fcs-solvers=direct,ewald,fmm,p3m ' diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2019.10-fosscuda-2019b-Python-2.7.16.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2019.10-fosscuda-2019b-Python-2.7.16.eb new file mode 100644 index 00000000000..331f7bf8155 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2019.10-fosscuda-2019b-Python-2.7.16.eb @@ -0,0 +1,46 @@ +easyblock = 'PythonBundle' + +name = 'SciPy-bundle' +version = '2019.10' +versionsuffix = '-Python-2.7.16' + +homepage = 'https://python.org/' +description = "Bundle of Python packages for scientific software" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} +toolchainopts = {'pic': True, 'lowopt': True} + +dependencies = [ + ('Python', '2.7.16'), +] + +use_pip = True +sanity_pip_check = True + +# order is important! +# package versions updated Sep 17th 2019 to latest versions compatible with python2 +exts_list = [ + ('numpy', '1.16.5', { + 'source_tmpl': '%(name)s-%(version)s.zip', + 'source_urls': ['https://pypi.python.org/packages/source/n/numpy/'], + 'checksums': ['8bb452d94e964b312205b0de1238dd7209da452343653ab214b5d681780e7a0c'], + }), + ('scipy', '1.2.2', { + 'source_urls': ['https://pypi.python.org/packages/source/s/scipy/'], + 'checksums': ['a4331e0b8dab1ff75d2c67b5158a8bb9a83c799d7140094dda936d876c7cfbb1'], + }), + ('mpi4py', '3.0.2', { + 'source_urls': ['https://bitbucket.org/mpi4py/mpi4py/downloads/'], + 'checksums': ['f8d629d1e3e3b7b89cb99d0e3bc5505e76cc42089829807950d5c56606ed48e0'], + }), + ('pandas', '0.24.2', { + 'source_urls': ['https://pypi.python.org/packages/source/p/pandas/'], + 'checksums': ['4f919f409c433577a501e023943e582c57355d50a724c589e78bc1d551a535a2'], + }), + ('mpmath', '1.1.0', { + 'source_urls': ['https://pypi.python.org/packages/source/m/mpmath/'], + 'checksums': ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2019.10-intelcuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2019.10-intelcuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..8f227716c41 --- /dev/null +++ b/easybuild/easyconfigs/s/SciPy-bundle/SciPy-bundle-2019.10-intelcuda-2019b-Python-3.7.4.eb @@ -0,0 +1,49 @@ +easyblock = 'PythonBundle' + +name = 'SciPy-bundle' +version = '2019.10' +versionsuffix = '-Python-3.7.4' + +homepage = 'https://python.org/' +description = "Bundle of Python packages for scientific software" + +toolchain = {'name': 'intelcuda', 'version': '2019b'} +toolchainopts = {'pic': True, 'lowopt': True} + +dependencies = [ + ('Python', '3.7.4'), +] + +use_pip = True +sanity_pip_check = True + +# order is important! +exts_list = [ + ('numpy', '1.17.3', { + 'source_urls': ['https://pypi.python.org/packages/source/n/numpy/'], + 'source_tmpl': '%(name)s-%(version)s.zip', + 'patches': ['numpy-1.12.0-mkl.patch'], + 'checksums': [ + 'a0678793096205a4d784bd99f32803ba8100f639cf3b932dc63b21621390ea7e', + 'f212296ed289eb1b4e3f703997499dee8a2cdd0af78b55e017477487b6377ca4', # numpy-1.12.0-mkl.patch + ], + }), + ('scipy', '1.3.1', { + 'source_urls': ['https://pypi.python.org/packages/source/s/scipy/'], + 'checksums': ['2643cfb46d97b7797d1dbdb6f3c23fe3402904e3c90e6facfe6a9b98d808c1b5'], + }), + ('mpi4py', '3.0.2', { + 'source_urls': ['https://bitbucket.org/mpi4py/mpi4py/downloads/'], + 'checksums': ['f8d629d1e3e3b7b89cb99d0e3bc5505e76cc42089829807950d5c56606ed48e0'], + }), + ('pandas', '0.25.3', { + 'source_urls': ['https://pypi.python.org/packages/source/p/pandas/'], + 'checksums': ['52da74df8a9c9a103af0a72c9d5fdc8e0183a90884278db7f386b5692a2220a4'], + }), + ('mpmath', '1.1.0', { + 'source_urls': ['https://pypi.python.org/packages/source/m/mpmath/'], + 'checksums': ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'], + }), +] + +moduleclass = 'lang' diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-6.0-gompi-2020a.eb b/easybuild/easyconfigs/s/Score-P/Score-P-6.0-gompi-2020a.eb index b904d8ada8e..497c64d9f05 100644 --- a/easybuild/easyconfigs/s/Score-P/Score-P-6.0-gompi-2020a.eb +++ b/easybuild/easyconfigs/s/Score-P/Score-P-6.0-gompi-2020a.eb @@ -1,6 +1,6 @@ ## # This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild -# Copyright:: Copyright 2013-2019 Juelich Supercomputing Centre, Germany +# Copyright:: Copyright 2013-2020 Juelich Supercomputing Centre, Germany # Authors:: Bernd Mohr # Markus Geimer # License:: 3-clause BSD @@ -23,8 +23,10 @@ toolchain = {'name': 'gompi', 'version': '2020a'} source_urls = ['https://www.vi-hps.org/cms/upload/packages/scorep/'] sources = ['scorep-%(version)s.tar.gz'] +patches = ['Score-P-6.0_binutils_2.34_api_change.patch'] checksums = [ '5dc1023eb766ba5407f0b5e0845ec786e0021f1da757da737db1fb71fc4236b8', # scorep-6.0.tar.gz + 'd5a5208077f60850d61a230c3a2d5e0d46ac0b5ec962904cba3010b9a904b59f', # Score-P-6.0_binutils_2.34_api_change.patch ] dependencies = [ diff --git a/easybuild/easyconfigs/s/Score-P/Score-P-6.0_binutils_2.34_api_change.patch b/easybuild/easyconfigs/s/Score-P/Score-P-6.0_binutils_2.34_api_change.patch new file mode 100644 index 00000000000..37d8af47e38 --- /dev/null +++ b/easybuild/easyconfigs/s/Score-P/Score-P-6.0_binutils_2.34_api_change.patch @@ -0,0 +1,24 @@ +Support libbfd API change introduced with binutils 2.34. Patch backported +from upstream repo; fix will be included in releases after v6.0. +--- a/src/services/unwinding/scorep_unwinding_unify.c ++++ b/src/services/unwinding/scorep_unwinding_unify.c +@@ -28,6 +28,19 @@ + + #if HAVE( LIBBFD ) + #include ++ ++#ifndef bfd_get_section_size ++#define bfd_get_section_size( asection ) bfd_section_size( asection ) ++#endif ++ ++#ifndef bfd_get_section_vma ++#define bfd_get_section_vma( abfd, asection ) bfd_section_vma( asection ) ++#endif ++ ++#ifndef bfd_get_section_flags ++#define bfd_get_section_flags( abfd, asection ) bfd_section_flags( asection ) ++#endif ++ + #endif + + #include "scorep_unwinding_region.h" diff --git a/easybuild/easyconfigs/s/Shapely/Shapely-1.7.1-GCC-9.3.0-Python-3.8.2.eb b/easybuild/easyconfigs/s/Shapely/Shapely-1.7.1-GCC-9.3.0-Python-3.8.2.eb new file mode 100644 index 00000000000..22ce03ba680 --- /dev/null +++ b/easybuild/easyconfigs/s/Shapely/Shapely-1.7.1-GCC-9.3.0-Python-3.8.2.eb @@ -0,0 +1,26 @@ +easyblock = 'PythonPackage' + +name = 'Shapely' +version = '1.7.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/Toblerity/Shapely' +description = """Shapely is a BSD-licensed Python package for manipulation and analysis of planar geometric objects. +It is based on the widely deployed GEOS (the engine of PostGIS) and JTS (from which GEOS is ported) libraries.""" + +toolchain = {'name': 'GCC', 'version': '9.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['1641724c1055459a7e2b8bbe47ba25bdc89554582e62aec23cb3f3ca25f9b129'] + +dependencies = [ + ('Python', '3.8.2'), + ('GEOS', '3.8.1', versionsuffix), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/SimpleElastix/SimpleElastix-1.1.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/s/SimpleElastix/SimpleElastix-1.1.0-foss-2019b-Python-3.7.4.eb index ce7e162fc4a..7a9bf4502a2 100644 --- a/easybuild/easyconfigs/s/SimpleElastix/SimpleElastix-1.1.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/s/SimpleElastix/SimpleElastix-1.1.0-foss-2019b-Python-3.7.4.eb @@ -17,7 +17,7 @@ builddependencies = [ ('CMake', '3.15.3'), ('Bison', '3.3.2'), ('Eigen', '3.3.7', '', True), - ('gtest', '1.10.0'), + ('googletest', '1.10.0'), ] dependencies = [ diff --git a/easybuild/easyconfigs/s/Spark/Spark-3.0.0-foss-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/s/Spark/Spark-3.0.0-foss-2018b-Python-2.7.15.eb new file mode 100644 index 00000000000..6ae5535e4df --- /dev/null +++ b/easybuild/easyconfigs/s/Spark/Spark-3.0.0-foss-2018b-Python-2.7.15.eb @@ -0,0 +1,54 @@ +easyblock = 'Tarball' + +name = 'Spark' +version = '3.0.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://spark.apache.org' +description = """Spark is Hadoop MapReduce done in memory""" + +toolchain = {'name': 'foss', 'version': '2018b'} + +source_urls = [ + 'http://www.eu.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s/', + 'http://www.us.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s/', + 'https://apache.belnet.be/%(namelower)s/%(namelower)s-%(version)s/', +] +sources = ['spark-%(version)s-bin-hadoop2.7.tgz'] +checksums = ['98f6b92e5c476d7abb93cc179c2616aa5dc897da25753bd197e20ef54a28d945'] + +dependencies = [ + ('Python', '2.7.15'), + ('Java', '1.8', '', True), + ('Hadoop', '2.9.2', '-native'), + ('Arrow', '0.12.0', versionsuffix), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'download_dep_fail': True, + 'use_pip': True, +} + +exts_list = [ + ('py4j', '0.10.9', { + 'source_urls': ['https://pypi.python.org/packages/source/%(nameletter)s/%(name)s'], + 'checksums': ['36ec57f43ff8ced260a18aa9a4e46c3500a730cac8860e259cbaa546c2b9db2f'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pyspark', 'bin/spark-shell'], + 'dirs': ['python'] +} + +sanity_check_commands = [ + "pyspark -h", + "python -c 'import pyspark'", +] + +modextrapaths = {'PYTHONPATH': ['python', 'lib/python%(pyshortver)s/site-packages']} + +modextravars = {'SPARK_HOME': '%(installdir)s'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/s/Spark/Spark-3.0.0-intel-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/s/Spark/Spark-3.0.0-intel-2018b-Python-2.7.15.eb new file mode 100644 index 00000000000..ec3723f625c --- /dev/null +++ b/easybuild/easyconfigs/s/Spark/Spark-3.0.0-intel-2018b-Python-2.7.15.eb @@ -0,0 +1,54 @@ +easyblock = 'Tarball' + +name = 'Spark' +version = '3.0.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://spark.apache.org' +description = """Spark is Hadoop MapReduce done in memory""" + +toolchain = {'name': 'intel', 'version': '2018b'} + +source_urls = [ + 'http://www.eu.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s/', + 'http://www.us.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s/', + 'https://apache.belnet.be/%(namelower)s/%(namelower)s-%(version)s/', +] +sources = ['spark-%(version)s-bin-hadoop2.7.tgz'] +checksums = ['98f6b92e5c476d7abb93cc179c2616aa5dc897da25753bd197e20ef54a28d945'] + +dependencies = [ + ('Python', '2.7.15'), + ('Java', '1.8', '', True), + ('Hadoop', '2.9.2', '-native'), + ('Arrow', '0.12.0', versionsuffix), +] + +exts_defaultclass = 'PythonPackage' +exts_default_options = { + 'download_dep_fail': True, + 'use_pip': True, +} + +exts_list = [ + ('py4j', '0.10.9', { + 'source_urls': ['https://pypi.python.org/packages/source/%(nameletter)s/%(name)s'], + 'checksums': ['36ec57f43ff8ced260a18aa9a4e46c3500a730cac8860e259cbaa546c2b9db2f'], + }), +] + +sanity_check_paths = { + 'files': ['bin/pyspark', 'bin/spark-shell'], + 'dirs': ['python'] +} + +sanity_check_commands = [ + "pyspark -h", + "python -c 'import pyspark'", +] + +modextrapaths = {'PYTHONPATH': ['python', 'lib/python%(pyshortver)s/site-packages']} + +modextravars = {'SPARK_HOME': '%(installdir)s'} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/s/Sumo/Sumo-1.3.1-GCCcore-8.3.0-Python-3.7.4.eb b/easybuild/easyconfigs/s/Sumo/Sumo-1.3.1-GCCcore-8.3.0-Python-3.7.4.eb new file mode 100644 index 00000000000..cdaad45b36c --- /dev/null +++ b/easybuild/easyconfigs/s/Sumo/Sumo-1.3.1-GCCcore-8.3.0-Python-3.7.4.eb @@ -0,0 +1,37 @@ +easyblock = 'CMakeMake' + +name = 'Sumo' +version = '1.3.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = "https://sumo.sourceforge.net/" +description = """Sumo is an open source, highly portable, microscopic and continuous traffic simulation package + designed to handle large road networks.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://iweb.dl.sourceforge.net/project/sumo/sumo/version%20%(version)s'] +sources = ["sumo-src-%(version)s.tar.gz"] +checksums = ['dd089814499cc8d21ea90ab506adbb01e7fda9d9685d9d90a1a41cc3fe680505'] + +dependencies = [ + ('googletest', '1.10.0'), + ('Python', '3.7.4'), + ('Xerces-C++', '3.2.2'), +] + +builddependencies = [ + ('CMake', '3.15.3'), + ('binutils', '2.32'), +] + +separate_build_dir = True + +configopts = '-DPROFILING=ON -DCOVERAGE=ON ' + +sanity_check_paths = { + 'files': [], + 'dirs': ['bin', 'lib'] +} + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/s/scikit-image/scikit-image-0.16.2-intel-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/s/scikit-image/scikit-image-0.16.2-intel-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..b426d2a3c14 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-image/scikit-image-0.16.2-intel-2019b-Python-3.7.4.eb @@ -0,0 +1,48 @@ +easyblock = 'PythonBundle' + +name = 'scikit-image' +version = '0.16.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://scikit-image.org/' +description = "scikit-image is a collection of algorithms for image processing." + +toolchain = {'name': 'intel', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('matplotlib', '3.1.1', versionsuffix), + ('Pillow', '6.2.1'), + ('dask', '2.8.0', versionsuffix), +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('networkx', '2.4', { + 'checksums': ['f8f4ff0b6f96e4f9b16af6b84622597b5334bf9cae8cf9b2e42e7985d5c95c64'], + }), + ('PyWavelets', '1.1.1', { + 'modulename': 'pywt', + 'checksums': ['1a64b40f6acb4ffbaccce0545d7fc641744f95351f62e4c6aaa40549326008c9'], + }), + ('imageio', '2.6.1', { + 'checksums': ['f44eb231b9df485874f2ffd22dfd0c3c711e7de076516b9374edea5c65bc67ae'], + }), + ('imread', '0.7.1', { + 'checksums': ['c343b546ab54acdb50dbe69d6793d64ead3ba6d585022f5a7ad4687b7f3db79b'], + }), + (name, version, { + 'modulename': 'skimage', + 'checksums': ['dd7fbd32da74d4e9967dc15845f731f16e7966cee61f5dc0e12e2abb1305068c'], + # avoid building with OpenMP support, since that triggers a nasty internal compiler error with icpc 19.0.5.281: + # Segmentation violation signal raised + 'preinstallopts': "sed -i 's/-fopenmp//g' setup.py && " + }), +] + +sanity_pip_check = True + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/s/scikit-image/scikit-image-0.17.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/s/scikit-image/scikit-image-0.17.1-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..25182d7b991 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-image/scikit-image-0.17.1-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,50 @@ +easyblock = 'PythonBundle' + +name = 'scikit-image' +version = '0.17.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://scikit-image.org/' +description = "scikit-image is a collection of algorithms for image processing." + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('matplotlib', '3.2.1', versionsuffix), + ('Pillow', '7.0.0', versionsuffix), + ('dask', '2.18.1', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('networkx', '2.4', { + 'checksums': ['f8f4ff0b6f96e4f9b16af6b84622597b5334bf9cae8cf9b2e42e7985d5c95c64'], + }), + ('PyWavelets', '1.1.1', { + 'modulename': 'pywt', + 'checksums': ['1a64b40f6acb4ffbaccce0545d7fc641744f95351f62e4c6aaa40549326008c9'], + }), + ('imageio', '2.9.0', { + 'checksums': ['52ddbaeca2dccf53ba2d6dec5676ca7bc3b2403ef8b37f7da78b7654bb3e10f0'], + }), + ('imread', '0.7.4', { + 'checksums': ['0487adef11a22168700968c1727020361a72f6132b6ced2b8826b02d8cbf744f'], + }), + ('pooch', '1.1.1', { + 'checksums': ['a19fa11d46ddfd72e272e111ed165394b5875b7948425bc9c1df8b1a3a93ba68'], + }), + ('tifffile', '2020.7.17', { + 'checksums': ['5bcad7e2e1d88c7923da662bf85ca2a1302ceaea04198d4ca696e0f7e7908576'], + }), + (name, version, { + 'modulename': 'skimage', + 'checksums': ['1e2e2cf2572549bdb20b88a0f0ac275eea9f04f78b2b6973afdc3f329a73c75c'], + }), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-0.23.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-0.23.1-foss-2020a-Python-3.8.2.eb index 3adb470aa56..0983cabe6ae 100644 --- a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-0.23.1-foss-2020a-Python-3.8.2.eb +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-0.23.1-foss-2020a-Python-3.8.2.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonPackage' +easyblock = 'PythonBundle' name = 'scikit-learn' version = '0.23.1' @@ -12,19 +12,34 @@ It strives to be simple and efficient, accessible to everybody, and reusable in toolchain = {'name': 'foss', 'version': '2020a'} -source_urls = [PYPI_SOURCE] -sources = [SOURCE_TAR_GZ] -checksums = ['e3fec1c8831f8f93ad85581ca29ca1bb88e2da377fb097cf8322aa89c21bc9b8'] - dependencies = [ ('Python', '3.8.2'), ('SciPy-bundle', '2020.03', versionsuffix) ] -download_dep_fail = True use_pip = True -options = {'modulename': 'sklearn'} +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('pytoml', '0.1.21', { + 'checksums': ['8eecf7c8d0adcff3b375b09fe403407aa9b645c499e5ab8cac670ac4a35f61e7'], + }), + ('flit-core', '2.3.0', { + 'source_tmpl': 'flit_core-%(version)s.tar.gz', + 'checksums': ['a50bcd8bf5785e3a7d95434244f30ba693e794c5204ac1ee908fc07c4acdbf80'], + }), + ('flit', '2.3.0', { + 'checksums': ['017012b809ec489918afd68af7a70bd7c8c770c87b60159d875c126866e97a4b'], + }), + ('threadpoolctl', '2.1.0', { + 'checksums': ['ddc57c96a38beb63db45d6c159b5ab07b6bced12c45a1f07b2b92f272aebfa6b'], + }), + (name, version, { + 'modulename': 'sklearn', + 'checksums': ['e3fec1c8831f8f93ad85581ca29ca1bb88e2da377fb097cf8322aa89c21bc9b8'], + }), +] sanity_pip_check = True diff --git a/easybuild/easyconfigs/s/scikit-learn/scikit-learn-0.23.1-intel-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-0.23.1-intel-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..2eeae321c16 --- /dev/null +++ b/easybuild/easyconfigs/s/scikit-learn/scikit-learn-0.23.1-intel-2020a-Python-3.8.2.eb @@ -0,0 +1,46 @@ +easyblock = 'PythonBundle' + +name = 'scikit-learn' +version = '0.23.1' +versionsuffix = '-Python-%(pyver)s' + +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': 'intel', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix) +] + +use_pip = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('pytoml', '0.1.21', { + 'checksums': ['8eecf7c8d0adcff3b375b09fe403407aa9b645c499e5ab8cac670ac4a35f61e7'], + }), + ('flit-core', '2.3.0', { + 'source_tmpl': 'flit_core-%(version)s.tar.gz', + 'checksums': ['a50bcd8bf5785e3a7d95434244f30ba693e794c5204ac1ee908fc07c4acdbf80'], + }), + ('flit', '2.3.0', { + 'checksums': ['017012b809ec489918afd68af7a70bd7c8c770c87b60159d875c126866e97a4b'], + }), + ('threadpoolctl', '2.1.0', { + 'checksums': ['ddc57c96a38beb63db45d6c159b5ab07b6bced12c45a1f07b2b92f272aebfa6b'], + }), + (name, version, { + 'modulename': 'sklearn', + 'checksums': ['e3fec1c8831f8f93ad85581ca29ca1bb88e2da377fb097cf8322aa89c21bc9b8'], + }), +] + +sanity_pip_check = True + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/scipy/scipy-1.4.1-fix-pthread.patch b/easybuild/easyconfigs/s/scipy/scipy-1.4.1-fix-pthread.patch new file mode 100644 index 00000000000..d399b2ba412 --- /dev/null +++ b/easybuild/easyconfigs/s/scipy/scipy-1.4.1-fix-pthread.patch @@ -0,0 +1,39 @@ +From https://github.com/scipy/scipy/pull/11324 +Author: Peter Bell +diff --git a/scipy/fft/_pocketfft/setup.py b/scipy/fft/_pocketfft/setup.py +index a4411bdedb1..493387d9719 100644 +--- a/scipy/fft/_pocketfft/setup.py ++++ b/scipy/fft/_pocketfft/setup.py +@@ -5,20 +5,28 @@ def pre_build_hook(build_ext, ext): + cc = build_ext._cxx_compiler + args = ext.extra_compile_args + +- std_flag = get_cxx_std_flag(build_ext._cxx_compiler) ++ std_flag = get_cxx_std_flag(cc) + if std_flag is not None: + args.append(std_flag) + + if cc.compiler_type == 'msvc': + args.append('/EHsc') + else: +- try_add_flag(args, cc, '-fvisibility=hidden') +- ++ # Use pthreads if available + has_pthreads = try_compile(cc, code='#include \n' + 'int main(int argc, char **argv) {}') + if has_pthreads: + ext.define_macros.append(('POCKETFFT_PTHREADS', None)) +- ++ if has_flag(cc, '-pthread'): ++ args.append('-pthread') ++ ext.extra_link_args.append('-pthread') ++ else: ++ raise RuntimeError("Build failed: System has pthreads header " ++ "but could not compile with -pthread option") ++ ++ # Don't export library symbols ++ try_add_flag(args, cc, '-fvisibility=hidden') ++ # Set min macOS version + min_macos_flag = '-mmacosx-version-min=10.9' + import sys + if sys.platform == 'darwin' and has_flag(cc, min_macos_flag): diff --git a/easybuild/easyconfigs/s/scipy/scipy-1.4.1-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/s/scipy/scipy-1.4.1-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..85622b36c98 --- /dev/null +++ b/easybuild/easyconfigs/s/scipy/scipy-1.4.1-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,32 @@ +name = 'scipy' +version = '1.4.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.scipy.org' +description = """SciPy is a collection of mathematical algorithms and convenience + functions built on the Numpy extension for Python.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'pic': True} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['scipy-1.4.1-fix-pthread.patch'] +checksums = [ + 'dee1bbf3a6c8f73b6b218cb28eed8dd13347ea2f87d572ce19b289d6fd3fbc59', # scipy-1.4.1.tar.gz + '4e2162a93caddce63a1aa2dfb6c181774a4f6615950e1d60c54bb4308fee3bb3', # scipy-1.4.1-fix-pthread.patch +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +builddependencies = [ + ('pybind11', '2.4.3', versionsuffix), +] +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/scipy/scipy-1.4.1-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/s/scipy/scipy-1.4.1-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..e73aa803e91 --- /dev/null +++ b/easybuild/easyconfigs/s/scipy/scipy-1.4.1-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,32 @@ +name = 'scipy' +version = '1.4.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.scipy.org' +description = """SciPy is a collection of mathematical algorithms and convenience + functions built on the Numpy extension for Python.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} +toolchainopts = {'pic': True} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['scipy-1.4.1-fix-pthread.patch'] +checksums = [ + 'dee1bbf3a6c8f73b6b218cb28eed8dd13347ea2f87d572ce19b289d6fd3fbc59', # scipy-1.4.1.tar.gz + '4e2162a93caddce63a1aa2dfb6c181774a4f6615950e1d60c54bb4308fee3bb3', # scipy-1.4.1-fix-pthread.patch +] + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +builddependencies = [ + ('pybind11', '2.4.3', versionsuffix), +] +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.1.1-GCCcore-8.3.0.eb b/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.1.1-GCCcore-8.3.0.eb deleted file mode 100644 index e53981c4053..00000000000 --- a/easybuild/easyconfigs/s/sdsl-lite/sdsl-lite-2.1.1-GCCcore-8.3.0.eb +++ /dev/null @@ -1,56 +0,0 @@ -# Author: Pavel Grochal (INUITS) -# License: GPLv2 - -easyblock = 'CMakeMake' - -name = 'sdsl-lite' -version = '2.1.1' - -homepage = 'https://github.com/simongog/sdsl-lite' -description = "Succinct Data Structure Library 2.0" - -toolchain = {'name': 'GCCcore', 'version': '8.3.0'} - -local_sdsldir = '%(name)s-%(version)s' -local_extract_cmd_pattern = "tar -C %s/%s --strip-components=1 -xf %%s" - -# https://github.com/simongog/sdsl-lite -github_account = 'simongog' -source_urls = [GITHUB_SOURCE] -sources = [ - 'v%(version)s.tar.gz', # sdsl-lite - { - 'source_urls': ['https://github.com/google/googletest/archive'], - 'download_filename': 'c2d90bddc6a2a562ee7750c14351e9ca16a6a37a.tar.gz', - 'filename': 'googletest-20170612.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_sdsldir, 'external/googletest'), - }, - { - 'source_urls': ['https://github.com/simongog/libdivsufsort/archive'], - 'download_filename': '0f24acd8de208464769c782119dacf158647f7ed.tar.gz', - 'filename': 'libdivsufsort-20150914.tar.gz', - 'extract_cmd': local_extract_cmd_pattern % (local_sdsldir, 'external/libdivsufsort'), - }, -] -checksums = [ - 'e36591338c390184760dbdddbb653d972d9c1986c8819f462e7e73ddd28b992b', # v2.1.1.tar.gz - 'b5438c07027869aa98b94570532e0b5fb7b23a2ba95e109a5684644d300d8d7d', # googletest-20170612.tar.gz - '41f94b06b1677952ac19c72c4048bbb874140b50089713e683f11adec80643b7', # libdivsufsort-20150914.tar.gz -] - -builddependencies = [ - ('binutils', '2.32'), - ('CMake', '3.15.3'), - ('gtest', '1.10.0'), -] - -separate_build_dir = True - -buildopts = 'sdsl' - -sanity_check_paths = { - 'files': ['lib/libsdsl.a', 'lib/libdivsufsort.a', 'lib/libgtest.a'], - 'dirs': ['include'], -} - -moduleclass = 'data' diff --git a/easybuild/easyconfigs/s/segemehl/segemehl-0.3.4-GCC-8.3.0.eb b/easybuild/easyconfigs/s/segemehl/segemehl-0.3.4-GCC-8.3.0.eb new file mode 100644 index 00000000000..ba8b90537df --- /dev/null +++ b/easybuild/easyconfigs/s/segemehl/segemehl-0.3.4-GCC-8.3.0.eb @@ -0,0 +1,36 @@ +easyblock = 'MakeCp' + +name = "segemehl" +version = "0.3.4" + +homepage = 'https://www.bioinf.uni-leipzig.de/Software/segemehl/' +description = """segemehl is a software to map short sequencer reads to reference genomes. + Unlike other methods, segemehl is able to detect not only mismatches but also insertions + and deletions. Furthermore, segemehl is not limited to a specific read length and is able + to mapprimer- or polyadenylation contaminated reads correctly. segemehl implements a matching + strategy based on enhanced suffix arrays (ESA). Segemehl now supports the SAM format, reads + gziped queries to save both disk and memory space and allows bisulfite sequencing mapping + and split read mapping.""" + +toolchain = {'name': 'GCC', 'version': '8.3.0'} + +source_urls = ['https://www.bioinf.uni-leipzig.de/Software/segemehl/downloads/'] +sources = [SOURCE_TAR_GZ] +checksums = ['e4336f03d0d15126dbb1c6368c7e80421b0c7354f4a6b492d54d7d14cf5a7f51'] + +dependencies = [ + ('HTSlib', '1.10.2'), + ('ncurses', '6.1'), + ('zlib', '1.2.11'), +] + +buildopts = 'all' + +files_to_copy = [(["haarz.x", "segemehl.x"], "bin")] + +sanity_check_paths = { + 'files': ["bin/%s" % x for x in ["haarz.x", "segemehl.x"]], + 'dirs': [] +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/sf/sf-0.9-5-foss-2020a-R-4.0.0-Python-3.8.2.eb b/easybuild/easyconfigs/s/sf/sf-0.9-5-foss-2020a-R-4.0.0-Python-3.8.2.eb new file mode 100644 index 00000000000..04c5353c58c --- /dev/null +++ b/easybuild/easyconfigs/s/sf/sf-0.9-5-foss-2020a-R-4.0.0-Python-3.8.2.eb @@ -0,0 +1,38 @@ +easyblock = 'RPackage' + +name = 'sf' +version = '0.9-5' +local_pyver = '3.8.2' +versionsuffix = '-R-%%(rver)s-Python-%s' % local_pyver + +homepage = 'https://cran.r-project.org/package=sf' +description = """Support for simple features, a standardized way to encode spatial vector data. Binds to GDAL for +reading and writing data, to GEOS for geometrical operations, and to PROJ for projection conversions and datum +transformations.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +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 +] +sources = ['%(name)s_%(version)s.tar.gz'] +checksums = ['8e3f3bf0b967c213c495e0a7d17abd832cced0e77f52b0669b37fc9db156a830'] + +dependencies = [ + ('R', '4.0.0'), + ('Python', local_pyver), + ('GDAL', '3.0.4', '-Python-%s' % local_pyver), # required for sf + ('GEOS', '3.8.1', '-Python-%s' % local_pyver), # required for sf + ('PROJ', '7.0.0'), # required for sf +] + +modextrapaths = {'R_LIBS': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/snpEff/snpEff-5.0-Java-13.eb b/easybuild/easyconfigs/s/snpEff/snpEff-5.0-Java-13.eb new file mode 100644 index 00000000000..eb6fcd69eee --- /dev/null +++ b/easybuild/easyconfigs/s/snpEff/snpEff-5.0-Java-13.eb @@ -0,0 +1,24 @@ +easyblock = 'PackedBinary' + +name = 'snpEff' +version = '5.0' +versionsuffix = '-Java-%(javaver)s' + +homepage = 'https://pcingola.github.io/SnpEff/' +description = """SnpEff is a variant annotation and effect prediction tool. + It annotates and predicts the effects of genetic variants (such as amino acid changes).""" + +toolchain = SYSTEM + +source_urls = ['https://snpeff.blob.core.windows.net/versions/'] +sources = ['%%(name)s_v%s_core.zip' % version.replace('.', '_')] +checksums = ['448cdae47247fde506e259938b195511f531f85ab2cd66a06cedf85fe215c7c7'] + +dependencies = [('Java', '13')] + +sanity_check_paths = { + 'files': ['%(name)s.jar', 'SnpSift.jar'], + 'dirs': [], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/s/sparsehash/sparsehash-2.0.4-GCCcore-9.3.0.eb b/easybuild/easyconfigs/s/sparsehash/sparsehash-2.0.4-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..cabdc34d6b0 --- /dev/null +++ b/easybuild/easyconfigs/s/sparsehash/sparsehash-2.0.4-GCCcore-9.3.0.eb @@ -0,0 +1,34 @@ +# Updated from previous easyconfig +# Author: Pavel Grochal (INUITS) +# License: GPLv2 + +easyblock = 'ConfigureMake' + +name = 'sparsehash' +version = '2.0.4' + +homepage = 'https://github.com/sparsehash/sparsehash' +description = """ + An extremely memory-efficient hash_map implementation. 2 bits/entry overhead! + The SparseHash library contains several hash-map implementations, including + implementations that optimize for space or speed. +""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} +toolchainopts = {'pic': True} + +source_urls = [GITHUB_SOURCE] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['8cd1a95827dfd8270927894eb77f62b4087735cbede953884647f16c521c7e58'] + +builddependencies = [ + ('binutils', '2.34'), +] + + +sanity_check_paths = { + 'files': ['include/google/type_traits.h'], + 'dirs': [], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/s/stars/stars-0.4-3-foss-2020a-R-4.0.0-Python-3.8.2.eb b/easybuild/easyconfigs/s/stars/stars-0.4-3-foss-2020a-R-4.0.0-Python-3.8.2.eb new file mode 100644 index 00000000000..6a2f9269898 --- /dev/null +++ b/easybuild/easyconfigs/s/stars/stars-0.4-3-foss-2020a-R-4.0.0-Python-3.8.2.eb @@ -0,0 +1,58 @@ +easyblock = 'Bundle' + +name = 'stars' +version = '0.4-3' +local_pyver = '3.8.2' +versionsuffix = '-R-%%(rver)s-Python-%s' % local_pyver + +homepage = 'https://cran.r-project.org/package=stars' +description = """Reading, manipulating, writing and plotting spatiotemporal arrays (raster and vector data cubes) + in R, using GDAL bindings provided by sf, and NetCDF bindings by ncmeta and RNetCDF.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('R', '4.0.0'), + ('Python', local_pyver), + ('GDAL', '3.0.4', '-Python-%s' % local_pyver), # required for sf + ('GEOS', '3.8.1', '-Python-%s' % local_pyver), # required for sf + ('PROJ', '7.0.0'), # required for sf + ('netCDF', '4.7.4'), + ('sf', '0.9-5', versionsuffix), +] + +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_defaultclass = 'RPackage' +exts_filter = ("R -q --no-save", "library(%(ext_name)s)") + +exts_list = [ + ('RNetCDF', '2.3-1', { + 'checksums': ['7537196ee4a2ae71dd4c0e3bb4d35d2220349d82afb019a1477ed2eba06344c6'], + }), + ('ncmeta', '0.3.0', { + 'checksums': ['4b34fd27a7bfaee87ddfbc0387ed2b45956f6bbc04652649f29c311d16053766'], + }), + ('lwgeom', '0.2-5', { + 'checksums': ['4a1d93f96c10c2aac173d8186cf7d7bef7febcb3cf066a7f45da32251496d02f'], + }), + (name, version, { + 'checksums': ['a2f38d5ed4130ea36b20597ffdcc2dc0619df13804c69d72486cf93528eac279'], + }), +] + +modextrapaths = {'R_LIBS': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['lwgeom', name], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/statsmodels/statsmodels-0.11.1-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/s/statsmodels/statsmodels-0.11.1-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..6b56bad00d6 --- /dev/null +++ b/easybuild/easyconfigs/s/statsmodels/statsmodels-0.11.1-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,32 @@ +easyblock = 'PythonBundle' + +name = 'statsmodels' +version = '0.11.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.statsmodels.org/' +description = """Statsmodels is a Python module that allows users to explore data, estimate statistical models, +and perform statistical tests.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), +] + +use_pip = True +sanity_pip_check = True + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +exts_list = [ + ('patsy', '0.5.1', { + 'checksums': ['f115cec4201e1465cd58b9866b0b0e7b941caafec129869057405bfe5b5e3991'], + }), + (name, version, { + 'checksums': ['5bde3fa0a35a91b45dba7cbc28270b5b649ff1d721c89290883f6e831672d5f0'], + }), +] + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/sympy/sympy-1.6.2-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/s/sympy/sympy-1.6.2-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..5e1a3be33d2 --- /dev/null +++ b/easybuild/easyconfigs/s/sympy/sympy-1.6.2-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,41 @@ +easyblock = 'PythonPackage' + +name = 'sympy' +version = '1.6.2' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://sympy.org/' +description = """SymPy is a Python library for symbolic mathematics. It aims to + become a full-featured computer algebra system (CAS) while keeping the code as + simple as possible in order to be comprehensible and easily extensible. SymPy + is written entirely in Python and does not require any external libraries.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +patches = ['%(name)s-%(version)s_allpython.patch'] +checksums = [ + '1cfadcc80506e4b793f5b088558ca1fcbeaec24cd6fc86f1fdccaa3ee1d48708', # sympy-1.6.2.tar.gz + '605f4f1aadbbfd3d44f1cfeae34ed920323a408efb5b43737b0458e9a90e447f', # sympy-1.6.2_allpython.patch +] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('gmpy2', '2.1.0b5'), +] + +download_dep_fail = True +use_pip = True + +runtest = 'python setup.py test' + +sanity_pip_check = True + +sanity_check_paths = { + 'files': ['bin/isympy'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/sympy'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/s/sympy/sympy-1.6.2_allpython.patch b/easybuild/easyconfigs/s/sympy/sympy-1.6.2_allpython.patch new file mode 100644 index 00000000000..bd3676e70a6 --- /dev/null +++ b/easybuild/easyconfigs/s/sympy/sympy-1.6.2_allpython.patch @@ -0,0 +1,138 @@ +Updated patch file sympy-1.5.1_allpython.patch for version 1.6.2 +Author: Samuel Moors, Vrije Universiteit Brussel (VUB) +# this patch contains fixes for two different problems: +# +# *** IOError: [Errno 39] aka "Directory not empty" FIX *** +# +# - 22.1.2019, J. Dvoracek (Institute of Physics | Czech Academy of Sciences, www.fzu.cz +# +# While running test step on NFS share, it fails with: +# File "(...)sympy/utilities/_compilation/tests/test_compilation.py", line 61 +# in test_compile_link_import_strings +# shutil.rmtree(info['build_dir']) +# File "(...)lib/python3.6/shutil.py", line 484, in rmtree +# onerror(os.rmdir, path, sys.exc_info()) +# File "(...)lib/python3.6/shutil.py", line 482, in rmtree +# os.rmdir(path) +# OSError: [Errno 39] Directory not empty: '(...)sympy-1.3/tmp695y36rc' +# +# shmem.rmtree() is called when file inside is stil being used, so files are renamed to .nfsXXXXX +# and rmtee fails with Errno 39 (Directory not empty) error. +# As we're running the tests in Easybuild, we can assume that the buil_dir will be deleted by EasyBuild, +# so we can safely skip the delete operation +# +# *** IOError: [Errno 2] aka "No such file or directory" FIX *** +# +# - original (1.10.2018, B. Hajgato (Free Ubiversity Brussels - VUB) +# +# During some test jobs, an error +# IOError: [Errno 2] No such file or directory: '/tmp/hajgato/link/eb-Tfchx1/tmpx5Z16m/_newton.c' +# occured, if the tmpdir was a symlink or any of its subdir was a symlink. Therefore, realpath is used. +# +# - update (22.1.2019, J. Dvoracek (Institute of Physics | Czech Academy of Sciences, www.fzu.cz ) +# +# fix above deals just with the occurence in Python2. Now we use the same trick for Python3 too. + +--- sympy-1.3/sympy/utilities/_compilation/tests/test_compilation.py_orig 2019-01-21 21:47:46.552355000 +0100 ++++ sympy-1.3/sympy/utilities/_compilation/tests/test_compilation.py 2019-01-21 21:48:16.358586000 +0100 +@@ -58,4 +58,4 @@ + assert numpy.allclose(res_mod, res_npy) + finally: + if info and info['build_dir']: +- shutil.rmtree(info['build_dir']) ++ pass + +diff -ur sympy-1.6.2.orig/sympy/codegen/tests/test_algorithms.py sympy-1.6.2/sympy/codegen/tests/test_algorithms.py +--- sympy-1.6.2.orig/sympy/codegen/tests/test_algorithms.py 2020-08-09 18:58:47.000000000 +0200 ++++ sympy-1.6.2/sympy/codegen/tests/test_algorithms.py 2020-09-07 14:27:54.479107000 +0200 +@@ -8,7 +8,8 @@ + from sympy.external import import_module + from sympy.printing.ccode import ccode + from sympy.utilities._compilation import compile_link_import_strings, has_c, has_fortran +-from sympy.utilities._compilation.util import TemporaryDirectory, may_xfail ++from sympy.utilities._compilation.util import may_xfail ++from sympy.utilities._compilation.util import TemporaryDirectory_DND as TemporaryDirectory + from sympy.testing.pytest import skip, raises + + cython = import_module('cython') +diff -ur sympy-1.6.2.orig/sympy/codegen/tests/test_applications.py sympy-1.6.2/sympy/codegen/tests/test_applications.py +--- sympy-1.6.2.orig/sympy/codegen/tests/test_applications.py 2020-08-09 18:58:47.000000000 +0200 ++++ sympy-1.6.2/sympy/codegen/tests/test_applications.py 2020-09-07 14:30:30.424309000 +0200 +@@ -3,7 +3,8 @@ + from sympy.external import import_module + from sympy.printing.ccode import ccode + from sympy.utilities._compilation import compile_link_import_strings, has_c +-from sympy.utilities._compilation.util import TemporaryDirectory, may_xfail ++from sympy.utilities._compilation.util import may_xfail ++from sympy.utilities._compilation.util import TemporaryDirectory_DND as TemporaryDirectory + from sympy.testing.pytest import skip + from sympy.codegen.ast import ( + FunctionDefinition, FunctionPrototype, Variable, Pointer, real, Assignment, +diff -ur sympy-1.6.2.orig/sympy/codegen/tests/test_fnodes.py sympy-1.6.2/sympy/codegen/tests/test_fnodes.py +--- sympy-1.6.2.orig/sympy/codegen/tests/test_fnodes.py 2020-08-09 18:58:47.000000000 +0200 ++++ sympy-1.6.2/sympy/codegen/tests/test_fnodes.py 2020-09-07 14:29:15.151121000 +0200 +@@ -14,7 +14,8 @@ + from sympy.external import import_module + from sympy.printing.fcode import fcode + from sympy.utilities._compilation import has_fortran, compile_run_strings, compile_link_import_strings +-from sympy.utilities._compilation.util import TemporaryDirectory, may_xfail ++from sympy.utilities._compilation.util import may_xfail ++from sympy.utilities._compilation.util import TemporaryDirectory_DND as TemporaryDirectory + from sympy.testing.pytest import skip + + cython = import_module('cython') + +--- sympy-1.3/sympy/utilities/_compilation/compilation.py.orig 2019-01-21 17:28:36.327899000 +0100 ++++ sympy-1.3/sympy/utilities/_compilation/compilation.py 2019-01-21 17:31:32.197254000 +0100 +@@ -535,7 +535,8 @@ + return mod + + def _write_sources_to_build_dir(sources, build_dir): +- build_dir = build_dir or tempfile.mkdtemp() ++ #build_dir = build_dir or tempfile.mkdtemp() ++ build_dir = build_dir or tempfile.mkdtemp(prefix=os.path.realpath(tempfile.gettempprefix())) + if not os.path.isdir(build_dir): + raise OSError("Non-existent directory: ", build_dir) + +--- sympy-1.3/sympy/utilities/_compilation/util.py.orig 2018-09-06 21:27:21.000000000 +0200 ++++ sympy-1.3/sympy/utilities/_compilation/util.py 2019-01-21 20:19:25.030436000 +0100 +@@ -25,21 +25,26 @@ + return func + + +-if sys.version_info[0] == 2: +- class FileNotFoundError(IOError): +- pass ++class FileNotFoundError(IOError): ++ pass + +- class TemporaryDirectory(object): +- def __init__(self): +- self.path = tempfile.mkdtemp() +- def __enter__(self): +- return self.path +- def __exit__(self, exc, value, tb): +- shutil.rmtree(self.path) +-else: +- FileNotFoundError = FileNotFoundError +- TemporaryDirectory = tempfile.TemporaryDirectory ++class TemporaryDirectory(object): ++ def __init__(self): ++ # self.path = tempfile.mkdtemp() ++ self.path = tempfile.mkdtemp(prefix=os.path.realpath(tempfile.gettempprefix())) ++ def __enter__(self): ++ return self.path ++ def __exit__(self, exc, value, tb): ++ shutil.rmtree(self.path) + ++class TemporaryDirectory_DND(object): ++ def __init__(self): ++ # self.path = tempfile.mkdtemp() ++ self.path = tempfile.mkdtemp(prefix=os.path.realpath(tempfile.gettempprefix())) ++ def __enter__(self): ++ return self.path ++ def __exit__(self, exc, value, tb): ++ pass + + class CompilerNotFoundError(FileNotFoundError): + pass diff --git a/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.0-foss-2020a.eb b/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.0-foss-2020a.eb index 7b52aaa1a7d..e43b91cf35f 100644 --- a/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.0-foss-2020a.eb +++ b/easybuild/easyconfigs/t/TEtranscripts/TEtranscripts-2.2.0-foss-2020a.eb @@ -1,4 +1,4 @@ -easyblock = 'PythonPackage' +easyblock = 'PythonBundle' name = 'TEtranscripts' version = '2.2.0' @@ -10,10 +10,6 @@ TEtranscripts then performs differential analysis using DESeq2.""" toolchain = {'name': 'foss', 'version': '2020a'} -source_urls = ['https://github.com/mhammell-laboratory/TEtranscripts/archive/'] -sources = ['%(version)s.tar.gz'] -checksums = ['9060f284ca20d598cfb6cc6895d5708afdd7850b353359fbe32e893f29bda98e'] - multi_deps = {'Python': ['3.8.2', '2.7.18']} dependencies = [ @@ -21,11 +17,20 @@ dependencies = [ ('R-bundle-Bioconductor', '3.11', '-R-4.0.0'), ] -download_dep_fail = True use_pip = True -sanity_pip_check = True -options = {'modulename': 'TEToolkit'} +exts_list = [ + ('argparse', '1.4.0', { + 'source_urls': [PYPI_SOURCE], + 'checksums': ['62b089a55be1d8949cd2bc7e0df0bddb9e028faefc8c32038cc84862aefdd6e4'], + }), + (name, version, { + 'source_urls': ['https://github.com/mhammell-laboratory/TEtranscripts/archive/'], + 'source_tmpl': '%(version)s.tar.gz', + 'checksums': ['9060f284ca20d598cfb6cc6895d5708afdd7850b353359fbe32e893f29bda98e'], + 'modulename': 'TEToolkit', + }), +] fix_python_shebang_for = ['bin/*'] @@ -39,4 +44,6 @@ sanity_check_commands = [ 'TEcount --version', ] +sanity_pip_check = True + moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TINKER/TINKER-8.7.2-foss-2019b.eb b/easybuild/easyconfigs/t/TINKER/TINKER-8.7.2-foss-2019b.eb new file mode 100644 index 00000000000..2a36bea687e --- /dev/null +++ b/easybuild/easyconfigs/t/TINKER/TINKER-8.7.2-foss-2019b.eb @@ -0,0 +1,22 @@ +name = 'TINKER' +version = '8.7.2' + +homepage = 'https://dasher.wustl.edu/tinker' +description = """The TINKER molecular modeling software is a complete and general package for molecular mechanics + and dynamics, with some special features for biopolymers.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +source_urls = ['https://dasher.wustl.edu/tinker/downloads/'] +sources = [SOURCELOWER_TAR_GZ] +patches = [ + '%(name)s-%(version)s_fix_BAR_mode_1.patch', +] +checksums = [ + 'f9e94ae0684d527cd2772a4a7a05c41864ce6246f1194f6c1c402a94598151c2', # tinker-8.7.2.tar.gz + 'c5122fe5ed778ceacf9bad144c5eb381506cab407a7733a6de05b4252bd1e9cf', # TINKER-8.7.2_fix_BAR_mode_1.patch +] + +runtest = True + +moduleclass = 'chem' diff --git a/easybuild/easyconfigs/t/TINKER/TINKER-8.7.2_fix_BAR_mode_1.patch b/easybuild/easyconfigs/t/TINKER/TINKER-8.7.2_fix_BAR_mode_1.patch new file mode 100644 index 00000000000..0b5340801e4 --- /dev/null +++ b/easybuild/easyconfigs/t/TINKER/TINKER-8.7.2_fix_BAR_mode_1.patch @@ -0,0 +1,228 @@ +commit 2a94406b7e7c41fb4c39d52a77eaf4798342d7a4 +Author: Jay Ponder +Date: Thu Jul 2 16:17:05 2020 -0500 + + change BAR mode 1 to allow all input from command line + +diff --git a/source/bar.f b/source/bar.f +index 9d1d2d4..2652ac5 100644 +--- a/source/bar.f ++++ b/source/bar.f +@@ -158,7 +158,7 @@ c perform dynamic allocation of some local arrays + c + allocate (keys0(nkey)) + c +-c store the keyword vqlues for state 0 ++c store the keyword values for state 0 + c + nkey0 = nkey + do i = 1, nkey0 +@@ -225,13 +225,20 @@ c + c decide whether to use energies from trajectory log files + c + recompute = .true. +- write (iout,90) +- 90 format (/,' Obtain Energies from Trajectory Logs if', +- & ' Available [N] : ',$) +- read (input,100) record +- 100 format (a240) +- next = 1 +- call gettext (record,answer,next) ++ answer = ' ' ++ call nextarg (string,exist) ++ if (exist) read (string,*,err=90,end=90) answer ++ 90 continue ++ if (answer .eq. ' ') then ++ answer = 'N' ++ write (iout,100) ++ 100 format (/,' Obtain Energies from Trajectory Logs if', ++ & ' Available [N] : ',$) ++ read (input,110) record ++ 110 format (a240) ++ next = 1 ++ call gettext (record,answer,next) ++ end if + call upcase (answer) + if (answer .eq. 'Y') recompute = .false. + c +@@ -280,24 +287,24 @@ c + c + c find potential energies for trajectory A in state 0 + c +- write (iout,110) +- 110 format (/,' Initial Processing for Trajectory A :',/) ++ write (iout,120) ++ 120 format (/,' Initial Processing for Trajectory A :',/) + i = 0 + do while (.not. abort) + i = i + 1 + if (use_log) then + abort = .true. + dowhile (abort) +- read (ilog,120,err=140,end=140) record +- 120 format (a240) ++ read (ilog,130,err=150,end=150) record ++ 130 format (a240) + if (record(1:18) .eq. ' Current Potential') then + string = record(19:240) +- read (string,*,err=130,end=130) ua0(i) ++ read (string,*,err=140,end=140) ua0(i) + abort = .false. + end if +- 130 continue ++ 140 continue + end do +- 140 continue ++ 150 continue + if (abort) i = i - 1 + else + call cutoffs +@@ -306,8 +313,8 @@ c + end if + imod = mod(i,100) + if ((.not.abort.and.imod.eq.0) .or. (abort.and.imod.ne.0)) then +- write (iout,150) i +- 150 format (7x,'Completed',i8,' Coordinate Frames') ++ write (iout,160) i ++ 160 format (7x,'Completed',i8,' Coordinate Frames') + flush (iout) + end if + if (i .ge. maxframe) abort = .true. +@@ -326,8 +333,8 @@ c + c find potential energies for trajectory A in state 1 + c + if (verbose) then +- write (iout,160) +- 160 format (/,' Potential Energy Values for Trajectory A :', ++ write (iout,170) ++ 170 format (/,' Potential Energy Values for Trajectory A :', + & //,7x,'Frame',9x,'State 0',9x,'State 1',12x,'Delta',/) + end if + i = 0 +@@ -337,8 +344,8 @@ c + ua1(i) = energy () + vola(i) = volbox + if (verbose) then +- write (iout,170) i,ua0(i),ua1(i),ua1(i)-ua0(i) +- 170 format (i11,2x,3f16.4) ++ write (iout,180) i,ua0(i),ua1(i),ua1(i)-ua0(i) ++ 180 format (i11,2x,3f16.4) + end if + call readxyz (iarc) + if (i .ge. maxframe) abort = .true. +@@ -352,15 +359,15 @@ c + barfile = filea(1:lenga)//'.bar' + call version (barfile,'new') + open (unit=ibar,file=barfile,status ='new') +- write (ibar,180) nfrma,tempa,titlea(1:ltitlea) +- 180 format (i8,f10.2,2x,a) ++ write (ibar,190) nfrma,tempa,titlea(1:ltitlea) ++ 190 format (i8,f10.2,2x,a) + do i = 1, nfrma + if (vola(i) .eq. 0.0d0) then +- write (ibar,190) i,ua0(i),ua1(i) +- 190 format (i8,2x,2f18.4) ++ write (ibar,200) i,ua0(i),ua1(i) ++ 200 format (i8,2x,2f18.4) + else +- write (ibar,200) i,ua0(i),ua1(i),vola(i) +- 200 format (i8,2x,3f18.4) ++ write (ibar,210) i,ua0(i),ua1(i),vola(i) ++ 210 format (i8,2x,3f18.4) + end if + end do + flush (ibar) +@@ -398,24 +405,24 @@ c + c + c find potential energies for trajectory B in state 1 + c +- write (iout,210) +- 210 format (/,' Initial Processing for Trajectory B :',/) ++ write (iout,220) ++ 220 format (/,' Initial Processing for Trajectory B :',/) + i = 0 + do while (.not. abort) + i = i + 1 + if (use_log) then + abort = .true. + dowhile (abort) +- read (ilog,220,err=240,end=240) record +- 220 format (a240) ++ read (ilog,230,err=250,end=250) record ++ 230 format (a240) + if (record(1:18) .eq. ' Current Potential') then + string = record(19:240) +- read (string,*,err=230,end=230) ub1(i) ++ read (string,*,err=240,end=240) ub1(i) + abort = .false. + end if +- 230 continue ++ 240 continue + end do +- 240 continue ++ 250 continue + if (abort) i = i - 1 + else + call cutoffs +@@ -424,8 +431,8 @@ c + end if + imod = mod(i,100) + if ((.not.abort.and.imod.eq.0) .or. (abort.and.imod.ne.0)) then +- write (iout,250) i +- 250 format (7x,'Completed',i8,' Coordinate Frames') ++ write (iout,260) i ++ 260 format (7x,'Completed',i8,' Coordinate Frames') + flush (iout) + end if + if (i .ge. maxframe) abort = .true. +@@ -444,8 +451,8 @@ c + c find potential energies for trajectory B in state 0 + c + if (verbose) then +- write (iout,260) +- 260 format (/,' Potential Energy Values for Trajectory B :', ++ write (iout,270) ++ 270 format (/,' Potential Energy Values for Trajectory B :', + & //,7x,'Frame',9x,'State 0',9x,'State 1',12x,'Delta',/) + end if + i = 0 +@@ -455,8 +462,8 @@ c + ub0(i) = energy () + volb(i) = volbox + if (verbose) then +- write (iout,270) i,ub0(i),ub1(i),ub0(i)-ub1(i) +- 270 format (i11,2x,3f16.4) ++ write (iout,280) i,ub0(i),ub1(i),ub0(i)-ub1(i) ++ 280 format (i11,2x,3f16.4) + end if + call readxyz (iarc) + if (i .ge. maxframe) abort = .true. +@@ -466,20 +473,20 @@ c + c + c save potential energies and volumes for trajectory B + c +- write (ibar,280) nfrmb,tempb,titleb(1:ltitleb) +- 280 format (i8,f10.2,2x,a) ++ write (ibar,290) nfrmb,tempb,titleb(1:ltitleb) ++ 290 format (i8,f10.2,2x,a) + do i = 1, nfrmb + if (volb(i) .eq. 0.0d0) then +- write (ibar,290) i,ub0(i),ub1(i) +- 290 format (i8,2x,2f18.4) ++ write (ibar,300) i,ub0(i),ub1(i) ++ 300 format (i8,2x,2f18.4) + else +- write (ibar,300) i,ub0(i),ub1(i),volb(i) +- 300 format (i8,2x,3f18.4) ++ write (ibar,310) i,ub0(i),ub1(i),volb(i) ++ 310 format (i8,2x,3f18.4) + end if + end do + close (unit=ibar) +- write (iout,310) barfile(1:trimtext(barfile)) +- 310 format (/,' Potential Energy Values Written To : ',a) ++ write (iout,320) barfile(1:trimtext(barfile)) ++ 320 format (/,' Potential Energy Values Written To : ',a) + c + c perform deallocation of some local arrays + c diff --git a/easybuild/easyconfigs/t/Telescope/Telescope-1.0.3-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/Telescope/Telescope-1.0.3-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..884924c7d50 --- /dev/null +++ b/easybuild/easyconfigs/t/Telescope/Telescope-1.0.3-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,35 @@ +easyblock = 'PythonPackage' + +name = 'Telescope' +version = '1.0.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/mlbendall/telescope' +description = 'Single locus resolution of Transposable ELEment expression using next-generation sequencing.' + +toolchain = {'name': 'foss', 'version': '2019b'} + +github_account = 'mlbendall' +source_urls = [GITHUB_SOURCE] +sources = ['v%(version)s.tar.gz'] +checksums = ['115928f5aa347bf2416a15e9d790744e42553bb1118809b5677788e649269f74'] + +dependencies = [ + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', versionsuffix), + ('PyYAML', '5.1.2'), + ('Pysam', '0.15.3'), + ('HTSlib', '1.10.2'), +] + +use_pip = True +download_dep_fail = True + +sanity_pip_check = True +sanity_check_paths = { + 'files': ['bin/telescope'], + 'dirs': ['lib/python%(pyshortver)s/site-packages/telescope'], +} +sanity_check_commands = ['telescope --version'] + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-foss-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-foss-2019a-Python-3.7.2.eb index 2d69314d4a7..a46fdedca19 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-foss-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-foss-2019a-Python-3.7.2.eb @@ -22,6 +22,10 @@ dependencies = [ ('h5py', '2.9.0'), ] +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'sanity_pip_check': True, +} use_pip = True exts_list = [ @@ -39,55 +43,44 @@ exts_list = [ 'modulename': 'google.protobuf', }), ('absl-py', '0.7.1', { - 'source_urls': ['https://pypi.python.org/packages/source/a/absl-py'], 'checksums': ['b943d1c567743ed0455878fcd60bc28ac9fae38d129d1ccfad58079da00b8951'], 'modulename': 'absl', }), ('astor', '0.7.1', { - 'source_urls': ['https://pypi.python.org/packages/source/a/astor'], 'checksums': ['95c30d87a6c2cf89aa628b87398466840f0ad8652f88eb173125a6df8533fb8d'], }), ('gast', '0.2.2', { - 'source_urls': ['https://pypi.python.org/packages/source/g/gast'], 'checksums': ['fe939df4583692f0512161ec1c880e0a10e71e6a232da045ab8edd3756fbadf0'], }), ('grpcio', '1.20.1', { - 'source_urls': ['https://pypi.python.org/packages/source/g/grpcio'], 'checksums': ['84eb47b1a47e206e78f453fb92a155ed0d18d2ca8747f5c67e4b50b9c37180a7'], 'modulename': 'grpc', }), ('Markdown', '3.1', { - 'source_urls': ['https://pypi.python.org/packages/source/M/Markdown'], 'checksums': ['fc4a6f69a656b8d858d7503bda633f4dd63c2d70cf80abdc6eafa64c4ae8c250'], }), ('tensorboard', version, { - 'source_urls': ['https://pypi.python.org/packages/source/t/tensorboard'], 'source_tmpl': 'tensorboard-%(version)s-py3-none-any.whl', 'checksums': ['b664fe7772be5670d8b04200342e681af7795a12cd752709aed565c06c0cc196'], 'unpack_sources': False, }), ('termcolor', '1.1.0', { - 'source_urls': ['https://pypi.python.org/packages/source/t/termcolor'], 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], }), ('Werkzeug', '0.15.2', { - 'source_urls': ['https://pypi.python.org/packages/source/W/Werkzeug'], 'checksums': ['0a73e8bb2ff2feecfc5d56e6f458f5b99290ef34f565ffb2665801ff7de6af7a'], }), ('Keras-Applications', '1.0.7', { - 'source_urls': ['https://pypi.python.org/packages/source/K/Keras-Applications'], 'source_tmpl': 'Keras_Applications-%(version)s.tar.gz', 'checksums': ['60607b2b98868983e5153bf1cc6aa468ba73adc93bc977a90edaa4bc595e69fa'], 'modulename': 'keras_applications', }), ('Keras-Preprocessing', '1.0.9', { - 'source_urls': ['https://pypi.python.org/packages/source/K/Keras-Preprocessing'], 'source_tmpl': 'Keras_Preprocessing-%(version)s.tar.gz', 'checksums': ['5e3700117981c2db762e512ed6586638124fac5842170701628088a11aeb51ac'], 'modulename': 'keras_preprocessing', }), ('tensorflow-estimator', '1.13.0', { - 'source_urls': ['https://pypi.python.org/packages/source/t/tensorflow-estimator'], 'source_tmpl': 'tensorflow_estimator-1.13.0-py2.py3-none-any.whl', 'checksums': ['7cfdaa3e83e3532f31713713feb98be7ea9f3065722be4267e49b6c301271419'], 'unpack_sources': False, @@ -99,7 +92,6 @@ exts_list = [ 'TensorFlow-1.11.0_swig-env.patch', 'TensorFlow-1.11.0_remove-msse-hardcoding.patch', 'TensorFlow-1.13.1_lrt-flag.patch', - 'TensorFlow-1.13.1_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.13.1_fix_protobuf_problem.patch', ], 'checksums': [ @@ -108,8 +100,6 @@ exts_list = [ # TensorFlow-1.11.0_remove-msse-hardcoding.patch 'a0f00ee4d03bb4fd3a645ee06045cedaf97d0b85675ec35187e9dd7e479d7bb6', 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch - # TensorFlow-1.13.1_remove_usrbin_from_linker_bin_path_flag.patch - 'e6122f34557fbe9e705ce1999403053b0ac4bdd058e4a31a182a16446c87bdb3', # TensorFlow-1.13.1_fix_protobuf_problem.patch 'd2fab1497078a2980a68adeea4d0f8719be5bef03741ea4775163745a1e52d40', ], diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-fosscuda-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-fosscuda-2019a-Python-3.7.2.eb index 58bc96ede6a..8b353ed51ae 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-fosscuda-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.13.1-fosscuda-2019a-Python-3.7.2.eb @@ -24,6 +24,10 @@ dependencies = [ ('NCCL', '2.4.2'), ] +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'sanity_pip_check': True, +} use_pip = True exts_list = [ @@ -41,55 +45,44 @@ exts_list = [ 'modulename': 'google.protobuf', }), ('absl-py', '0.7.1', { - 'source_urls': ['https://pypi.python.org/packages/source/a/absl-py'], 'checksums': ['b943d1c567743ed0455878fcd60bc28ac9fae38d129d1ccfad58079da00b8951'], 'modulename': 'absl', }), ('astor', '0.7.1', { - 'source_urls': ['https://pypi.python.org/packages/source/a/astor'], 'checksums': ['95c30d87a6c2cf89aa628b87398466840f0ad8652f88eb173125a6df8533fb8d'], }), ('gast', '0.2.2', { - 'source_urls': ['https://pypi.python.org/packages/source/g/gast'], 'checksums': ['fe939df4583692f0512161ec1c880e0a10e71e6a232da045ab8edd3756fbadf0'], }), ('grpcio', '1.20.1', { - 'source_urls': ['https://pypi.python.org/packages/source/g/grpcio'], 'checksums': ['84eb47b1a47e206e78f453fb92a155ed0d18d2ca8747f5c67e4b50b9c37180a7'], 'modulename': 'grpc', }), ('Markdown', '3.1', { - 'source_urls': ['https://pypi.python.org/packages/source/M/Markdown'], 'checksums': ['fc4a6f69a656b8d858d7503bda633f4dd63c2d70cf80abdc6eafa64c4ae8c250'], }), ('tensorboard', version, { - 'source_urls': ['https://pypi.python.org/packages/source/t/tensorboard'], 'source_tmpl': 'tensorboard-%(version)s-py3-none-any.whl', 'checksums': ['b664fe7772be5670d8b04200342e681af7795a12cd752709aed565c06c0cc196'], 'unpack_sources': False, }), ('termcolor', '1.1.0', { - 'source_urls': ['https://pypi.python.org/packages/source/t/termcolor'], 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], }), ('Werkzeug', '0.15.2', { - 'source_urls': ['https://pypi.python.org/packages/source/W/Werkzeug'], 'checksums': ['0a73e8bb2ff2feecfc5d56e6f458f5b99290ef34f565ffb2665801ff7de6af7a'], }), ('Keras-Applications', '1.0.7', { - 'source_urls': ['https://pypi.python.org/packages/source/K/Keras-Applications'], 'source_tmpl': 'Keras_Applications-%(version)s.tar.gz', 'checksums': ['60607b2b98868983e5153bf1cc6aa468ba73adc93bc977a90edaa4bc595e69fa'], 'modulename': 'keras_applications', }), ('Keras-Preprocessing', '1.0.9', { - 'source_urls': ['https://pypi.python.org/packages/source/K/Keras-Preprocessing'], 'source_tmpl': 'Keras_Preprocessing-%(version)s.tar.gz', 'checksums': ['5e3700117981c2db762e512ed6586638124fac5842170701628088a11aeb51ac'], 'modulename': 'keras_preprocessing', }), ('tensorflow-estimator', '1.13.0', { - 'source_urls': ['https://pypi.python.org/packages/source/t/tensorflow-estimator'], 'source_tmpl': 'tensorflow_estimator-1.13.0-py2.py3-none-any.whl', 'checksums': ['7cfdaa3e83e3532f31713713feb98be7ea9f3065722be4267e49b6c301271419'], 'unpack_sources': False, @@ -102,7 +95,6 @@ exts_list = [ 'TensorFlow-1.11.0_remove-msse-hardcoding.patch', 'TensorFlow-1.13.1_lrt-flag.patch', 'TensorFlow-1.13.1_dont_expand_cuda_cudnn_path.patch', - 'TensorFlow-1.13.1_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.13.1_fix_protobuf_problem.patch', 'TensorFlow-1.13.1_fix_cudalib_version_for_cuda10.1.patch', ], @@ -114,8 +106,6 @@ exts_list = [ 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch # TensorFlow-1.13.1_dont_expand_cuda_cudnn_path.patch '3722764db136c58a1310aa087b6be6c34dd10c6fb5b6b215a9ae83946fd1c4ae', - # TensorFlow-1.13.1_remove_usrbin_from_linker_bin_path_flag.patch - 'e6122f34557fbe9e705ce1999403053b0ac4bdd058e4a31a182a16446c87bdb3', # TensorFlow-1.13.1_fix_protobuf_problem.patch 'd2fab1497078a2980a68adeea4d0f8719be5bef03741ea4775163745a1e52d40', # TensorFlow-1.13.1_fix_cudalib_version_for_cuda10.1.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-foss-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-foss-2019a-Python-3.7.2.eb index 0a9861bdbbd..b45ba1102ab 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-foss-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-foss-2019a-Python-3.7.2.eb @@ -22,11 +22,18 @@ dependencies = [ ('h5py', '2.9.0'), ] +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'sanity_pip_check': True, +} use_pip = True -exts_default_options = {'source_urls': [PYPI_SOURCE]} - exts_list = [ + # tensorboard 1.14.0 has requirement setuptools>=41.0.0 + ('setuptools', '41.3.0', { + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': ['9f5c54b529b2156c6f288e837e625581bb31ff94d4cfd116b8f271c589749556'], + }), ('protobuf-python', '3.8.0', { 'modulename': 'google.protobuf', 'patches': ['TensorFlow-1.13.1_protobuf-3.6.1.2_fix_26155.patch'], @@ -47,6 +54,10 @@ exts_list = [ ('astor', '0.8.0', { 'checksums': ['37a6eed8b371f1228db08234ed7f6cfdc7817a3ed3824797e20cbb11dc2a7862'], }), + ('google-pasta', '0.1.8', { + 'checksums': ['713813a9f7d6589e5defdaf21e80e4392eb124662f8bd829acd51a4f8735c0cb'], + 'modulename': 'pasta', + }), ('gast', '0.2.2', { 'checksums': ['fe939df4583692f0512161ec1c880e0a10e71e6a232da045ab8edd3756fbadf0'], }), @@ -93,7 +104,6 @@ exts_list = [ 'TensorFlow-%(version)s_swig-env.patch', 'TensorFlow-1.11.0_remove-msse-hardcoding.patch', 'TensorFlow-1.13.1_lrt-flag.patch', - 'TensorFlow-%(version)s_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.13.1_fix_protobuf_problem.patch', 'TensorFlow-%(version)s_fix-mpi-undeclared-inclusion.patch', ], @@ -103,8 +113,6 @@ exts_list = [ # TensorFlow-1.11.0_remove-msse-hardcoding.patch 'a0f00ee4d03bb4fd3a645ee06045cedaf97d0b85675ec35187e9dd7e479d7bb6', 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.13.1_fix_protobuf_problem.patch 'd2fab1497078a2980a68adeea4d0f8719be5bef03741ea4775163745a1e52d40', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-fosscuda-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-fosscuda-2019a-Python-3.7.2.eb index f89afd5e4c8..d5954f6bf81 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-fosscuda-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.14.0-fosscuda-2019a-Python-3.7.2.eb @@ -23,11 +23,18 @@ dependencies = [ ('NCCL', '2.4.2'), ] +exts_default_options = { + 'source_urls': [PYPI_SOURCE], + 'sanity_pip_check': True, +} use_pip = True -exts_default_options = {'source_urls': [PYPI_SOURCE]} - exts_list = [ + # tensorboard 1.14.0 has requirement setuptools>=41.0.0 + ('setuptools', '41.3.0', { + 'source_tmpl': '%(name)s-%(version)s.zip', + 'checksums': ['9f5c54b529b2156c6f288e837e625581bb31ff94d4cfd116b8f271c589749556'], + }), ('protobuf-python', '3.8.0', { 'modulename': 'google.protobuf', 'patches': ['TensorFlow-1.13.1_protobuf-3.6.1.2_fix_26155.patch'], @@ -48,6 +55,10 @@ exts_list = [ ('astor', '0.8.0', { 'checksums': ['37a6eed8b371f1228db08234ed7f6cfdc7817a3ed3824797e20cbb11dc2a7862'], }), + ('google-pasta', '0.1.8', { + 'checksums': ['713813a9f7d6589e5defdaf21e80e4392eb124662f8bd829acd51a4f8735c0cb'], + 'modulename': 'pasta', + }), ('gast', '0.2.2', { 'checksums': ['fe939df4583692f0512161ec1c880e0a10e71e6a232da045ab8edd3756fbadf0'], }), @@ -94,7 +105,6 @@ exts_list = [ 'TensorFlow-%(version)s_swig-env.patch', 'TensorFlow-1.11.0_remove-msse-hardcoding.patch', 'TensorFlow-1.13.1_lrt-flag.patch', - 'TensorFlow-%(version)s_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.13.1_fix_protobuf_problem.patch', 'TensorFlow-%(version)s_fix-mpi-undeclared-inclusion.patch', 'TensorFlow-%(version)s_fix-cuda-build.patch', @@ -106,8 +116,6 @@ exts_list = [ # TensorFlow-1.11.0_remove-msse-hardcoding.patch 'a0f00ee4d03bb4fd3a645ee06045cedaf97d0b85675ec35187e9dd7e479d7bb6', 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.13.1_fix_protobuf_problem.patch 'd2fab1497078a2980a68adeea4d0f8719be5bef03741ea4775163745a1e52d40', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-foss-2019b-Python-3.7.4.eb index c906d3d7ddc..9f9f2544785 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-foss-2019b-Python-3.7.4.eb @@ -95,7 +95,6 @@ exts_list = [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-%(version)s_remove-msse-hardcoding.patch', 'TensorFlow-%(version)s_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', @@ -106,8 +105,6 @@ exts_list = [ # TensorFlow-1.15.0_remove-msse-hardcoding.patch '59e408f1cf5a97d90f33861123d55eb1332b8fef1d5d8fdfdea413c4b481ee56', 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', # TensorFlow-1.15.0_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', ], diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-fosscuda-2019b-Python-3.7.4.eb index a4354b6ea11..1fd5a54d703 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.0-fosscuda-2019b-Python-3.7.4.eb @@ -97,7 +97,6 @@ exts_list = [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-%(version)s_remove-msse-hardcoding.patch', 'TensorFlow-%(version)s_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', 'TensorFlow-1.14.0_fix-cuda-build.patch', 'TensorFlow-1.14.0_fix-cuda-mpi.patch', @@ -110,8 +109,6 @@ exts_list = [ # TensorFlow-1.15.0_remove-msse-hardcoding.patch '59e408f1cf5a97d90f33861123d55eb1332b8fef1d5d8fdfdea413c4b481ee56', 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', # TensorFlow-1.15.0_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', # TensorFlow-1.14.0_fix-cuda-build.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-foss-2019b-Python-3.7.4.eb index a15bd6cccf8..77544972806 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-foss-2019b-Python-3.7.4.eb @@ -94,7 +94,6 @@ exts_list = [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.15.0_remove-msse-hardcoding.patch', 'TensorFlow-1.15.0_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', @@ -105,8 +104,6 @@ exts_list = [ # TensorFlow-1.15.0_remove-msse-hardcoding.patch '59e408f1cf5a97d90f33861123d55eb1332b8fef1d5d8fdfdea413c4b481ee56', 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', # TensorFlow-1.15.0_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', ], diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-fosscuda-2019b-Python-3.7.4.eb index cedb2f0006c..6af7e534de8 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-1.15.2-fosscuda-2019b-Python-3.7.4.eb @@ -96,7 +96,6 @@ exts_list = [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.15.0_remove-msse-hardcoding.patch', 'TensorFlow-1.15.0_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', 'TensorFlow-1.14.0_fix-cuda-build.patch', 'TensorFlow-1.14.0_fix-cuda-mpi.patch', @@ -109,8 +108,6 @@ exts_list = [ # TensorFlow-1.15.0_remove-msse-hardcoding.patch '59e408f1cf5a97d90f33861123d55eb1332b8fef1d5d8fdfdea413c4b481ee56', 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', # TensorFlow-1.15.0_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', # TensorFlow-1.14.0_fix-cuda-build.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-foss-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-foss-2019a-Python-3.7.2.eb index 3465b04f5fc..cc83c753e7b 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-foss-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-foss-2019a-Python-3.7.2.eb @@ -127,7 +127,6 @@ exts_list = [ 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.13.1_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', 'TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch', ], @@ -137,8 +136,6 @@ exts_list = [ '49b5f0495cd681cbcb5296a4476853d4aea19a43bdd9f179c928a977308a0617', # v2.0.0.tar.gz 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', # TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-fosscuda-2019b-Python-3.7.4.eb index b7758d43fae..7173464f038 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0-fosscuda-2019b-Python-3.7.4.eb @@ -17,11 +17,29 @@ builddependencies = [ ('git', '2.23.0', '-nodocs'), ] dependencies = [ + ('cuDNN', '7.6.4.38'), + ('NCCL', '2.4.8'), ('Python', '3.7.4'), ('SciPy-bundle', '2019.10', versionsuffix), ('h5py', '2.10.0', versionsuffix), - ('cuDNN', '7.6.4.38'), - ('NCCL', '2.4.8'), + ('cURL', '7.66.0'), + ('double-conversion', '3.1.4'), + ('flatbuffers', '1.12.0'), + ('giflib', '5.2.1'), + ('hwloc', '1.11.12'), + ('ICU', '64.2'), + ('JsonCpp', '1.9.3'), + ('libjpeg-turbo', '2.0.3'), + ('LMDB', '0.9.24'), + ('NASM', '2.14.02'), + ('nsync', '1.24.0'), + ('SQLite', '3.29.0'), + ('PCRE', '8.43'), + ('protobuf-python', '3.10.0', versionsuffix), + ('libpng', '1.6.37'), + ('snappy', '1.1.7'), + ('SWIG', '4.0.1'), + ('zlib', '1.2.11'), ] exts_default_options = { @@ -119,10 +137,12 @@ exts_list = [ 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.13.1_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', 'TensorFlow-1.14.0_fix-cuda-build.patch', 'TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch', + 'TensorFlow-2.0.0_fix-system-flatbuffers.patch', + 'TensorFlow-2.0.0_fix-system-nasm.patch', + 'TensorFlow-2.1.0_fix-system-jsoncpp.patch', ], 'source_urls': ['https://github.com/tensorflow/tensorflow/archive/'], 'source_tmpl': 'v%(version)s.tar.gz', @@ -130,14 +150,18 @@ exts_list = [ '49b5f0495cd681cbcb5296a4476853d4aea19a43bdd9f179c928a977308a0617', # v2.0.0.tar.gz 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', # TensorFlow-1.14.0_fix-cuda-build.patch '92afeee76520a63dc638c2cd4adaf2e7429411068ea4be96718255f67f113e43', # TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch 'ee65c8e34b62644f426054b67386734b8bf51c43ac0da4d51331b4ba191fad17', + # TensorFlow-2.0.0_fix-system-flatbuffers.patch + '43158beea40c8eb4198c50290e47122152d0726402878a944ee462a5f0247282', + # TensorFlow-2.0.0_fix-system-nasm.patch + '774ff64973cefd803b5cc442baba2fa49a4c015a1f86cf71379a7e47cb45b82d', + # TensorFlow-2.1.0_fix-system-jsoncpp.patch + 'd0c8ca54a9e2c232908016e08b982dbb63765de3472253cba5ae38d823d5f156', ], 'test_script': 'TensorFlow-2.x_mnist-test.py', }), diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0_fix-system-flatbuffers.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0_fix-system-flatbuffers.patch new file mode 100644 index 00000000000..6889708c111 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0_fix-system-flatbuffers.patch @@ -0,0 +1,71 @@ +Extracted from https://github.com/tensorflow/tensorflow/commit/adf6e22e4af83afd55e0da3caa7e7959def1e6b6 +to allow usage with newer flatbuffers + +diff --git a/tensorflow/lite/kernels/BUILD b/tensorflow/lite/kernels/BUILD +index 172a041b31b55..0d1fb476e323a 100644 +--- a/tensorflow/lite/kernels/BUILD ++++ b/tensorflow/lite/kernels/BUILD +@@ -488,6 +488,8 @@ cc_library( + "//tensorflow/lite/kernels/internal:tensor_utils", + "//tensorflow/lite/kernels/internal:types", + "//third_party/eigen3", ++ "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + "@farmhash_archive//:farmhash", + "@flatbuffers", + ], +diff --git a/tensorflow/lite/tools/optimize/BUILD b/tensorflow/lite/tools/optimize/BUILD +index bf7e1baafd930..878d3ae5ef081 100644 +--- a/tensorflow/lite/tools/optimize/BUILD ++++ b/tensorflow/lite/tools/optimize/BUILD +@@ -17,6 +17,7 @@ cc_library( + srcs = ["quantization_utils.cc"], + hdrs = ["quantization_utils.h"], + deps = [ ++ ":model_utils", + "//tensorflow/lite:framework", + "//tensorflow/lite/c:c_api_internal", + "//tensorflow/lite/kernels/internal:quantization_util", +@@ -87,6 +87,7 @@ cc_library( + "//tensorflow/lite/kernels/internal:types", + "//tensorflow/lite/schema:schema_fbs", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + ], + ) + +diff --git a/tensorflow/lite/tools/optimize/calibration/BUILD b/tensorflow/lite/tools/optimize/calibration/BUILD +index 4ae881ba508db..a394156786fe2 100644 +--- a/tensorflow/lite/tools/optimize/calibration/BUILD ++++ b/tensorflow/lite/tools/optimize/calibration/BUILD +@@ -50,6 +50,7 @@ cc_library( + "//tensorflow/lite/kernels:kernel_util", + "//tensorflow/lite/schema:schema_fbs", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + "@flatbuffers", + ], + ) +@@ -75,6 +76,7 @@ tf_cc_test( + "//tensorflow/lite:framework", + "//tensorflow/lite/kernels:builtin_ops", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + "@com_google_googletest//:gtest", + ], + ) +@@ -89,6 +91,7 @@ cc_library( + "//tensorflow/lite:framework", + "//tensorflow/lite/core/api", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + ], + ) + +@@ -112,6 +115,7 @@ cc_library( + ":calibration_logger", + "//tensorflow/lite:framework", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + ], + ) diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0_fix-system-nasm.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0_fix-system-nasm.patch new file mode 100644 index 00000000000..76f50b6c82b --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.0_fix-system-nasm.patch @@ -0,0 +1,28 @@ +commit 5b3b9c7fe7501acd6bd69abe26fd3f9e0f1df4ef +Author: Alexander Grund +Date: Wed Aug 12 15:48:17 2020 +0200 + + Use nasmlink genrule + + Avoids cyclic dependency as the name and src must not be the same + +diff --git a/third_party/nasm/BUILD.system b/third_party/nasm/BUILD.system +index 7f74da7595..52f608187f 100644 +--- a/third_party/nasm/BUILD.system ++++ b/third_party/nasm/BUILD.system +@@ -5,8 +5,14 @@ filegroup( + visibility = ["//visibility:public"], + ) + ++genrule( ++ name = "lnnasmlink", ++ outs = ["nasmlink"], ++ cmd = "ln -s $$(which nasm) $@", ++) ++ + sh_binary( + name = "nasm", +- srcs = ["nasm"], ++ srcs = ["nasmlink"], + visibility = ["@jpeg//:__pkg__"], + ) diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-foss-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-foss-2019a-Python-3.7.2.eb index f5a8113899d..a5bc827e864 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-foss-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-foss-2019a-Python-3.7.2.eb @@ -127,7 +127,6 @@ exts_list = [ 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.13.1_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', 'TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch', ], @@ -137,8 +136,6 @@ exts_list = [ '29197d30923b9670992ee4b9c6161f50c7452e9a4158c720746e846080ac245a', # v2.0.1.tar.gz 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', # TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-fosscuda-2019b-Python-3.7.4.eb index d326d27342b..7bbd2bfce7a 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.0.1-fosscuda-2019b-Python-3.7.4.eb @@ -17,11 +17,29 @@ builddependencies = [ ('git', '2.23.0', '-nodocs'), ] dependencies = [ + ('cuDNN', '7.6.4.38'), + ('NCCL', '2.4.8'), ('Python', '3.7.4'), ('SciPy-bundle', '2019.10', versionsuffix), ('h5py', '2.10.0', versionsuffix), - ('cuDNN', '7.6.4.38'), - ('NCCL', '2.4.8'), + ('cURL', '7.66.0'), + ('double-conversion', '3.1.4'), + ('flatbuffers', '1.12.0'), + ('giflib', '5.2.1'), + ('hwloc', '1.11.12'), + ('ICU', '64.2'), + ('JsonCpp', '1.9.3'), + ('libjpeg-turbo', '2.0.3'), + ('LMDB', '0.9.24'), + ('NASM', '2.14.02'), + ('nsync', '1.24.0'), + ('SQLite', '3.29.0'), + ('PCRE', '8.43'), + ('protobuf-python', '3.10.0', versionsuffix), + ('libpng', '1.6.37'), + ('snappy', '1.1.7'), + ('SWIG', '4.0.1'), + ('zlib', '1.2.11'), ] exts_default_options = { @@ -119,10 +137,12 @@ exts_list = [ 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.13.1_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch', 'TensorFlow-1.14.0_fix-cuda-build.patch', 'TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch', + 'TensorFlow-2.0.0_fix-system-flatbuffers.patch', + 'TensorFlow-2.0.0_fix-system-nasm.patch', + 'TensorFlow-2.1.0_fix-system-jsoncpp.patch', ], 'source_urls': ['https://github.com/tensorflow/tensorflow/archive/'], 'source_tmpl': 'v%(version)s.tar.gz', @@ -130,14 +150,18 @@ exts_list = [ '29197d30923b9670992ee4b9c6161f50c7452e9a4158c720746e846080ac245a', # v2.0.1.tar.gz 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch 'b388be35f2581786bcd533b1bfa375165d7f35e38a3aab74570019312816bf1b', # TensorFlow-1.13.1_lrt-flag.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', # TensorFlow-1.14.0_fix-mpi-undeclared-inclusion.patch '09e5fdce89588074b3c2abb6a4705b1f141b43395c960660320cf1cb79cd1ef4', # TensorFlow-1.14.0_fix-cuda-build.patch '92afeee76520a63dc638c2cd4adaf2e7429411068ea4be96718255f67f113e43', # TensorFlow-2.0.0_fix-build-tf-lite-avx512.patch 'ee65c8e34b62644f426054b67386734b8bf51c43ac0da4d51331b4ba191fad17', + # TensorFlow-2.0.0_fix-system-flatbuffers.patch + '43158beea40c8eb4198c50290e47122152d0726402878a944ee462a5f0247282', + # TensorFlow-2.0.0_fix-system-nasm.patch + '774ff64973cefd803b5cc442baba2fa49a4c015a1f86cf71379a7e47cb45b82d', + # TensorFlow-2.1.0_fix-system-jsoncpp.patch + 'd0c8ca54a9e2c232908016e08b982dbb63765de3472253cba5ae38d823d5f156', ], 'test_script': 'TensorFlow-2.x_mnist-test.py', }), diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-foss-2019b-Python-3.7.4.eb index 555c4e95d22..5fba7ffeeed 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-foss-2019b-Python-3.7.4.eb @@ -15,12 +15,32 @@ builddependencies = [ ('protobuf', '3.10.0'), # git 2.x required, see also https://github.com/tensorflow/tensorflow/issues/29053 ('git', '2.23.0', '-nodocs'), - # For SciPy - ('pybind11', '2.4.3', versionsuffix), ] dependencies = [ ('Python', '3.7.4'), ('h5py', '2.10.0', versionsuffix), + ('cURL', '7.66.0'), + ('double-conversion', '3.1.4'), + ('flatbuffers', '1.12.0'), + ('giflib', '5.2.1'), + ('hwloc', '1.11.12'), + ('ICU', '64.2'), + ('JsonCpp', '1.9.3'), + ('libjpeg-turbo', '2.0.3'), + ('LMDB', '0.9.24'), + ('NASM', '2.14.02'), + ('nsync', '1.24.0'), + ('SQLite', '3.29.0'), + ('PCRE', '8.43'), + ('protobuf-python', '3.10.0', versionsuffix), + ('libpng', '1.6.37'), + ('snappy', '1.1.7'), + ('SWIG', '4.0.1'), + ('zlib', '1.2.11'), + # TF 2.1 requires SciPy 1.4.1 due to potential crashes with other versions + # See https://github.com/tensorflow/tensorflow/commit/54daf3c5700897a6062313983933ca28e92c410d + # Add at bottom so it will be loaded after any dependency loading the SciPy-Bundle + ('scipy', '1.4.1', versionsuffix), ] exts_default_options = { @@ -30,20 +50,10 @@ exts_default_options = { use_pip = True exts_list = [ - # TF 2.1 requires SciPy 1.4.1 due to potential crashes with other versions - # See https://github.com/tensorflow/tensorflow/commit/54daf3c5700897a6062313983933ca28e92c410d - ('scipy', '1.4.1', { - 'patches': ['scipy-1.4.1-fix-pthread.patch'], - 'checksums': [ - 'dee1bbf3a6c8f73b6b218cb28eed8dd13347ea2f87d572ce19b289d6fd3fbc59', - '4e2162a93caddce63a1aa2dfb6c181774a4f6615950e1d60c54bb4308fee3bb3', # scipy-1.4.1-fix-pthread.patch - ], - }), ('Markdown', '3.1.1', { 'checksums': ['2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a'], }), ('pyasn1-modules', '0.2.7', { - 'modulename': 'pyasn1_modules', 'checksums': ['0c35a52e00b672f832e5846826f1fb7507907f7d52fba6faa9e3c4cbe874fe4b'], }), ('rsa', '4.0', { @@ -60,20 +70,14 @@ exts_list = [ 'checksums': ['bee41cc35fcca6e988463cacc3bcb8a96224f470ca547e697b604cc697b2f889'], }), ('requests-oauthlib', '1.3.0', { - 'modulename': 'requests_oauthlib', 'checksums': ['b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a'], }), ('google-auth-oauthlib', '0.4.1', { - 'modulename': 'google_auth_oauthlib', 'checksums': ['88d2cd115e3391eb85e1243ac6902e76e77c5fe438b7276b297fbe68015458dd'], }), ('Werkzeug', '0.16.0', { 'checksums': ['7280924747b5733b246fe23972186c6b348f9ae29724135a6dfc1e53cea433e7'], }), - ('protobuf', '3.10.0', { - 'modulename': 'google.protobuf', - 'checksums': ['db83b5c12c0cd30150bb568e6feb2435c49ce4e68fe2d7b903113f0e221e58fe'], - }), ('absl-py', '0.8.1', { 'modulename': 'absl', 'checksums': ['d9129186431e150d7fe455f1cb1ecbb92bb5dba9da9bc3ef7b012d98c4db2526'], @@ -82,7 +86,7 @@ exts_list = [ 'modulename': 'grpc', 'checksums': ['c948c034d8997526011960db54f512756fb0b4be1b81140a15b4ef094c6594a4'], }), - ('tensorboard', '2.1.0', { + ('tensorboard', version, { 'source_tmpl': 'tensorboard-%(version)s-py3-none-any.whl', 'unpack_sources': False, 'checksums': ['e6e64ec1e1500cc963b300895258f9605032c3a18bb40f95f2b3b12be16ff2f2'], @@ -94,7 +98,7 @@ exts_list = [ ('termcolor', '1.1.0', { 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], }), - ('tensorflow-estimator', '2.1.0', { + ('tensorflow-estimator', version, { 'source_tmpl': 'tensorflow_estimator-%(version)s-py2.py3-none-any.whl', 'unpack_sources': False, 'checksums': ['e5c5f648a636f18d1be4cf7ed46132b108a2f0f3fd9f1c850eba924263dc6972'], @@ -103,7 +107,6 @@ exts_list = [ 'checksums': ['37a6eed8b371f1228db08234ed7f6cfdc7817a3ed3824797e20cbb11dc2a7862'], }), ('Keras-Applications', '1.0.8', { - 'modulename': 'keras_applications', 'source_tmpl': 'Keras_Applications-%(version)s.tar.gz', 'checksums': ['5579f9a12bcde9748f4a12233925a59b93b73ae6947409ff34aa2ba258189fe5'], }), @@ -119,7 +122,6 @@ exts_list = [ 'checksums': ['565a021fd19419476b9362b05eeaa094178de64f8361e44468f9e9d7843901e1'], }), ('Keras-Preprocessing', '1.1.0', { - 'modulename': 'keras_preprocessing', 'source_tmpl': 'Keras_Preprocessing-%(version)s.tar.gz', 'checksums': ['5a8debe01d840de93d49e05ccf1c9b81ae30e210d34dacbcc47aeb3049b528e5'], }), @@ -127,23 +129,32 @@ exts_list = [ 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.15.0_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-2.1.0_fix-build-tf-lite-avx512.patch', + 'TensorFlow-2.1.0_fix-collective-all-reduce-strategy.patch', + 'TensorFlow-2.1.0_fix-system-flatbuffers.patch', + 'TensorFlow-2.1.0_fix-system-jsoncpp.patch', + 'TensorFlow-2.1.0_fix-system-nasm.patch', + 'TensorFlow-2.1.0_fix-system-protobuf.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', 'source_urls': ['https://github.com/tensorflow/tensorflow/archive/'], 'test_script': 'TensorFlow-2.x_mnist-test.py', 'checksums': [ - # v2.1.0.tar.gz - '638e541a4981f52c69da4a311815f1e7989bf1d67a41d204511966e1daed14f7', - # TensorFlow-1.14.0_swig-env.patch - 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', - # TensorFlow-1.15.0_lrt-flag.patch - 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', + '638e541a4981f52c69da4a311815f1e7989bf1d67a41d204511966e1daed14f7', # v2.1.0.tar.gz + 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch + 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', # TensorFlow-1.15.0_lrt-flag.patch # TensorFlow-2.1.0_fix-build-tf-lite-avx512.patch '022fde8f01deb08fc6d31a03ba693da7f684c6c150502ab2ace7ca02c4c0d4cf', + # TensorFlow-2.1.0_fix-collective-all-reduce-strategy.patch + '093f4dd3ec372a82d50dffe32eea6821025cd1c406911a746c4367a40bc38486', + # TensorFlow-2.1.0_fix-system-flatbuffers.patch + '0375281b87c2f5f5038621667d10e04aad0fffbbab46c91062f5c08cc56825e3', + # TensorFlow-2.1.0_fix-system-jsoncpp.patch + 'd0c8ca54a9e2c232908016e08b982dbb63765de3472253cba5ae38d823d5f156', + # TensorFlow-2.1.0_fix-system-nasm.patch + '6671e40d60edaf1e57b1861aa3b2178d48f9b7dfb5b5c0d44db541116f848f2a', + # TensorFlow-2.1.0_fix-system-protobuf.patch + 'cc5981cc3d766346bcaf039c1c50a23feb23e814f321146fac714cae7e4b4167', ], }), ] diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-fosscuda-2019b-Python-3.7.4.eb index 3ef9eff9052..d21c85292bd 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0-fosscuda-2019b-Python-3.7.4.eb @@ -15,14 +15,34 @@ builddependencies = [ ('protobuf', '3.10.0'), # git 2.x required, see also https://github.com/tensorflow/tensorflow/issues/29053 ('git', '2.23.0', '-nodocs'), - # For SciPy - ('pybind11', '2.4.3', versionsuffix), ] dependencies = [ - ('Python', '3.7.4'), - ('h5py', '2.10.0', versionsuffix), ('cuDNN', '7.6.4.38'), ('NCCL', '2.4.8'), + ('Python', '3.7.4'), + ('h5py', '2.10.0', versionsuffix), + ('cURL', '7.66.0'), + ('double-conversion', '3.1.4'), + ('flatbuffers', '1.12.0'), + ('giflib', '5.2.1'), + ('hwloc', '1.11.12'), + ('ICU', '64.2'), + ('JsonCpp', '1.9.3'), + ('libjpeg-turbo', '2.0.3'), + ('LMDB', '0.9.24'), + ('NASM', '2.14.02'), + ('nsync', '1.24.0'), + ('SQLite', '3.29.0'), + ('PCRE', '8.43'), + ('protobuf-python', '3.10.0', versionsuffix), + ('libpng', '1.6.37'), + ('snappy', '1.1.7'), + ('SWIG', '4.0.1'), + ('zlib', '1.2.11'), + # TF 2.1 requires SciPy 1.4.1 due to potential crashes with other versions + # See https://github.com/tensorflow/tensorflow/commit/54daf3c5700897a6062313983933ca28e92c410d + # Add at bottom so it will be loaded after any dependency loading the SciPy-Bundle + ('scipy', '1.4.1', versionsuffix), ] exts_default_options = { @@ -32,20 +52,10 @@ exts_default_options = { use_pip = True exts_list = [ - # TF 2.1 requires SciPy 1.4.1 due to potential crashes with other versions - # See https://github.com/tensorflow/tensorflow/commit/54daf3c5700897a6062313983933ca28e92c410d - ('scipy', '1.4.1', { - 'patches': ['scipy-1.4.1-fix-pthread.patch'], - 'checksums': [ - 'dee1bbf3a6c8f73b6b218cb28eed8dd13347ea2f87d572ce19b289d6fd3fbc59', - '4e2162a93caddce63a1aa2dfb6c181774a4f6615950e1d60c54bb4308fee3bb3', # scipy-1.4.1-fix-pthread.patch - ], - }), ('Markdown', '3.1.1', { 'checksums': ['2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a'], }), ('pyasn1-modules', '0.2.7', { - 'modulename': 'pyasn1_modules', 'checksums': ['0c35a52e00b672f832e5846826f1fb7507907f7d52fba6faa9e3c4cbe874fe4b'], }), ('rsa', '4.0', { @@ -62,20 +72,14 @@ exts_list = [ 'checksums': ['bee41cc35fcca6e988463cacc3bcb8a96224f470ca547e697b604cc697b2f889'], }), ('requests-oauthlib', '1.3.0', { - 'modulename': 'requests_oauthlib', 'checksums': ['b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a'], }), ('google-auth-oauthlib', '0.4.1', { - 'modulename': 'google_auth_oauthlib', 'checksums': ['88d2cd115e3391eb85e1243ac6902e76e77c5fe438b7276b297fbe68015458dd'], }), ('Werkzeug', '0.16.0', { 'checksums': ['7280924747b5733b246fe23972186c6b348f9ae29724135a6dfc1e53cea433e7'], }), - ('protobuf', '3.10.0', { - 'modulename': 'google.protobuf', - 'checksums': ['db83b5c12c0cd30150bb568e6feb2435c49ce4e68fe2d7b903113f0e221e58fe'], - }), ('absl-py', '0.8.1', { 'modulename': 'absl', 'checksums': ['d9129186431e150d7fe455f1cb1ecbb92bb5dba9da9bc3ef7b012d98c4db2526'], @@ -84,7 +88,7 @@ exts_list = [ 'modulename': 'grpc', 'checksums': ['c948c034d8997526011960db54f512756fb0b4be1b81140a15b4ef094c6594a4'], }), - ('tensorboard', '2.1.0', { + ('tensorboard', version, { 'source_tmpl': 'tensorboard-%(version)s-py3-none-any.whl', 'unpack_sources': False, 'checksums': ['e6e64ec1e1500cc963b300895258f9605032c3a18bb40f95f2b3b12be16ff2f2'], @@ -96,7 +100,7 @@ exts_list = [ ('termcolor', '1.1.0', { 'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'], }), - ('tensorflow-estimator', '2.1.0', { + ('tensorflow-estimator', version, { 'source_tmpl': 'tensorflow_estimator-%(version)s-py2.py3-none-any.whl', 'unpack_sources': False, 'checksums': ['e5c5f648a636f18d1be4cf7ed46132b108a2f0f3fd9f1c850eba924263dc6972'], @@ -105,7 +109,6 @@ exts_list = [ 'checksums': ['37a6eed8b371f1228db08234ed7f6cfdc7817a3ed3824797e20cbb11dc2a7862'], }), ('Keras-Applications', '1.0.8', { - 'modulename': 'keras_applications', 'source_tmpl': 'Keras_Applications-%(version)s.tar.gz', 'checksums': ['5579f9a12bcde9748f4a12233925a59b93b73ae6947409ff34aa2ba258189fe5'], }), @@ -121,7 +124,6 @@ exts_list = [ 'checksums': ['565a021fd19419476b9362b05eeaa094178de64f8361e44468f9e9d7843901e1'], }), ('Keras-Preprocessing', '1.1.0', { - 'modulename': 'keras_preprocessing', 'source_tmpl': 'Keras_Preprocessing-%(version)s.tar.gz', 'checksums': ['5a8debe01d840de93d49e05ccf1c9b81ae30e210d34dacbcc47aeb3049b528e5'], }), @@ -129,26 +131,35 @@ exts_list = [ 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', 'TensorFlow-1.15.0_lrt-flag.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', - 'TensorFlow-2.1.0_fix-cuda-build.patch', 'TensorFlow-2.1.0_fix-build-tf-lite-avx512.patch', + 'TensorFlow-2.1.0_fix-collective-all-reduce-strategy.patch', + 'TensorFlow-2.1.0_fix-cuda-build.patch', + 'TensorFlow-2.1.0_fix-system-flatbuffers.patch', + 'TensorFlow-2.1.0_fix-system-jsoncpp.patch', + 'TensorFlow-2.1.0_fix-system-nasm.patch', + 'TensorFlow-2.1.0_fix-system-protobuf.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', 'source_urls': ['https://github.com/tensorflow/tensorflow/archive/'], 'test_script': 'TensorFlow-2.x_mnist-test.py', 'checksums': [ - # v2.1.0.tar.gz - '638e541a4981f52c69da4a311815f1e7989bf1d67a41d204511966e1daed14f7', - # TensorFlow-1.14.0_swig-env.patch - 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', - # TensorFlow-1.15.0_lrt-flag.patch - 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', - # TensorFlow-2.1.0_fix-cuda-build.patch - '78c20aeaa7784b8ceb46238a81e8c2461137d28e0b576deeba8357d23fbe1f5a', + '638e541a4981f52c69da4a311815f1e7989bf1d67a41d204511966e1daed14f7', # v2.1.0.tar.gz + 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch + 'b0fd4c7902be45bba18bd04192800852b140a9cf312a44ac1efb7ee653d3d886', # TensorFlow-1.15.0_lrt-flag.patch # TensorFlow-2.1.0_fix-build-tf-lite-avx512.patch '022fde8f01deb08fc6d31a03ba693da7f684c6c150502ab2ace7ca02c4c0d4cf', + # TensorFlow-2.1.0_fix-collective-all-reduce-strategy.patch + '093f4dd3ec372a82d50dffe32eea6821025cd1c406911a746c4367a40bc38486', + # TensorFlow-2.1.0_fix-cuda-build.patch + '78c20aeaa7784b8ceb46238a81e8c2461137d28e0b576deeba8357d23fbe1f5a', + # TensorFlow-2.1.0_fix-system-flatbuffers.patch + '0375281b87c2f5f5038621667d10e04aad0fffbbab46c91062f5c08cc56825e3', + # TensorFlow-2.1.0_fix-system-jsoncpp.patch + 'd0c8ca54a9e2c232908016e08b982dbb63765de3472253cba5ae38d823d5f156', + # TensorFlow-2.1.0_fix-system-nasm.patch + '6671e40d60edaf1e57b1861aa3b2178d48f9b7dfb5b5c0d44db541116f848f2a', + # TensorFlow-2.1.0_fix-system-protobuf.patch + 'cc5981cc3d766346bcaf039c1c50a23feb23e814f321146fac714cae7e4b4167', ], }), ] diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-collective-all-reduce-strategy.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-collective-all-reduce-strategy.patch new file mode 100644 index 00000000000..bc1b8a20f01 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-collective-all-reduce-strategy.patch @@ -0,0 +1,22 @@ +Fix for AttributeError: 'CollectiveAllReduceExtended' object has no attribute '_cfer_fn_cache' +See https://github.com/tensorflow/tensorflow/issues/39417 + +Author: Alexander Grund +--- tensorflow-2.1.0-orig/tensorflow/python/distribute/collective_all_reduce_strategy.py 2020-05-11 18:14:03.682085572 +0200 ++++ tensorflow-2.1.0/tensorflow/python/distribute/collective_all_reduce_strategy.py 2020-05-11 18:15:41.623409641 +0200 +@@ -19,6 +19,7 @@ + from __future__ import print_function + + import copy ++import weakref + + from tensorflow.core.protobuf import config_pb2 + from tensorflow.core.protobuf import rewriter_config_pb2 +@@ -172,6 +173,7 @@ + cross_device_ops_lib.CollectiveCommunication) + self._communication = communication + self._initialize_strategy(cluster_resolver) ++ self._cfer_fn_cache = weakref.WeakKeyDictionary() + assert isinstance(self._get_cross_device_ops(), + cross_device_ops_lib.CollectiveAllReduce) + diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-flatbuffers.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-flatbuffers.patch new file mode 100644 index 00000000000..9b7ecfd8003 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-flatbuffers.patch @@ -0,0 +1,62 @@ +Extracted from https://github.com/tensorflow/tensorflow/commit/adf6e22e4af83afd55e0da3caa7e7959def1e6b6 +to allow usage with newer flatbuffers + +diff --git a/tensorflow/lite/kernels/BUILD b/tensorflow/lite/kernels/BUILD +index 172a041b31b55..0d1fb476e323a 100644 +--- a/tensorflow/lite/kernels/BUILD ++++ b/tensorflow/lite/kernels/BUILD +@@ -543,6 +543,7 @@ cc_library( + "//tensorflow/lite/kernels/internal:types", + "//third_party/eigen3", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + "@farmhash_archive//:farmhash", + "@flatbuffers", + ], +diff --git a/tensorflow/lite/tools/optimize/BUILD b/tensorflow/lite/tools/optimize/BUILD +index bf7e1baafd930..878d3ae5ef081 100644 +--- a/tensorflow/lite/tools/optimize/BUILD ++++ b/tensorflow/lite/tools/optimize/BUILD +@@ -87,6 +87,7 @@ cc_library( + "//tensorflow/lite/kernels/internal:types", + "//tensorflow/lite/schema:schema_fbs", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + ], + ) + +diff --git a/tensorflow/lite/tools/optimize/calibration/BUILD b/tensorflow/lite/tools/optimize/calibration/BUILD +index 4ae881ba508db..a394156786fe2 100644 +--- a/tensorflow/lite/tools/optimize/calibration/BUILD ++++ b/tensorflow/lite/tools/optimize/calibration/BUILD +@@ -50,6 +50,7 @@ cc_library( + "//tensorflow/lite/kernels:kernel_util", + "//tensorflow/lite/schema:schema_fbs", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + "@flatbuffers", + ], + ) +@@ -75,6 +76,7 @@ tf_cc_test( + "//tensorflow/lite:framework", + "//tensorflow/lite/kernels:builtin_ops", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + "@com_google_googletest//:gtest", + ], + ) +@@ -89,6 +91,7 @@ cc_library( + "//tensorflow/lite:framework", + "//tensorflow/lite/core/api", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + ], + ) + +@@ -112,6 +115,7 @@ cc_library( + ":calibration_logger", + "//tensorflow/lite:framework", + "@com_google_absl//absl/memory", ++ "@com_google_absl//absl/strings", + ], + ) diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-jsoncpp.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-jsoncpp.patch new file mode 100644 index 00000000000..4938b1f06b5 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-jsoncpp.patch @@ -0,0 +1,15 @@ +diff --git a/third_party/systemlibs/jsoncpp.BUILD b/third_party/systemlibs/jsoncpp.BUILD +index 7d54f9289b..ba921bdfb0 100644 +--- a/third_party/systemlibs/jsoncpp.BUILD ++++ b/third_party/systemlibs/jsoncpp.BUILD +@@ -32,8 +32,8 @@ genrule( + + cc_library( + name = "jsoncpp", +- hdrs = HEADERS, +- includes = ["."], ++ #hdrs = HEADERS, ++ #includes = ["."], + linkopts = ["-ljsoncpp"], + visibility = ["//visibility:public"], + ) diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-nasm.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-nasm.patch new file mode 100644 index 00000000000..5a3341ecaa9 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-nasm.patch @@ -0,0 +1,28 @@ +commit 5b3b9c7fe7501acd6bd69abe26fd3f9e0f1df4ef +Author: Alexander Grund +Date: Wed Aug 12 15:48:17 2020 +0200 + + Use nasmlink genrule + + Avoids cyclic dependency as the name and src must not be the same + +diff --git a/third_party/nasm/BUILD.system b/third_party/nasm/BUILD.system +index 7f74da7595..52f608187f 100644 +--- a/third_party/nasm/BUILD.system ++++ b/third_party/nasm/BUILD.system +@@ -5,8 +5,14 @@ filegroup( + visibility = ["//visibility:public"], + ) + ++genrule( ++ name = "lnnasmlink", ++ outs = ["nasmlink"], ++ cmd = "ln -s $$(which nasm) $@", ++) ++ + sh_binary( + name = "nasm", +- srcs = ["nasm"], ++ srcs = ["nasmlink"], + visibility = ["@libjpeg_turbo//:__pkg__"], + ) diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-protobuf.patch b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-protobuf.patch new file mode 100644 index 00000000000..3db6a2d2053 --- /dev/null +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.1.0_fix-system-protobuf.patch @@ -0,0 +1,43 @@ +From 9cee90ac957f2575da2415242c5c127c0dd61430 Mon Sep 17 00:00:00 2001 +From: Jason Zaman +Date: Wed, 8 Apr 2020 03:15:14 +0800 +Subject: [PATCH] systemlibs: protobuf: update for + --incompatible_no_support_tools_in_action_inputs + +Just the minimal changes needed to work with the change instead of +pulling the entire updated file which would be a much larger change + +Signed-off-by: Jason Zaman +--- + third_party/systemlibs/protobuf.bzl | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/third_party/systemlibs/protobuf.bzl b/third_party/systemlibs/protobuf.bzl +index bb807e904a3fc..367ac286395cb 100644 +--- a/third_party/systemlibs/protobuf.bzl ++++ b/third_party/systemlibs/protobuf.bzl +@@ -93,6 +93,7 @@ def _proto_gen_impl(ctx): + args += ["--python_out=" + gen_dir] + + inputs = srcs + deps ++ tools = [ctx.executable.protoc] + if ctx.executable.plugin: + plugin = ctx.executable.plugin + lang = ctx.attr.plugin_language +@@ -106,7 +107,7 @@ def _proto_gen_impl(ctx): + outdir = ",".join(ctx.attr.plugin_options) + ":" + outdir + args += ["--plugin=protoc-gen-%s=%s" % (lang, plugin.path)] + args += ["--%s_out=%s" % (lang, outdir)] +- inputs += [plugin] ++ tools.append(plugin) + + if args: + ctx.actions.run( +@@ -115,6 +116,7 @@ def _proto_gen_impl(ctx): + arguments = args + import_flags + [s.path for s in srcs], + executable = ctx.executable.protoc, + mnemonic = "ProtoCompile", ++ tools = tools, + use_default_shell_env = True, + ) + diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-foss-2019b-Python-3.7.4.eb index 9fce463ed35..7c4e03c0c7d 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-foss-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-foss-2019b-Python-3.7.4.eb @@ -115,6 +115,11 @@ exts_list = [ ('wrapt', '1.12.1', { 'checksums': ['b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7'], }), + ('Keras-Applications', '1.0.8', { + 'modulename': 'keras_applications', + 'source_tmpl': 'Keras_Applications-%(version)s.tar.gz', + 'checksums': ['5579f9a12bcde9748f4a12233925a59b93b73ae6947409ff34aa2ba258189fe5'], + }), ('Keras-Preprocessing', '1.1.0', { 'modulename': 'keras_preprocessing', 'source_tmpl': 'Keras_Preprocessing-%(version)s.tar.gz', @@ -123,7 +128,6 @@ exts_list = [ (name, version, { 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-2.1.0_fix-cuda-build.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', @@ -132,8 +136,6 @@ exts_list = [ 'checksums': [ '69cd836f87b8c53506c4f706f655d423270f5a563b76dc1cfa60fbc3184185a3', # v2.2.0.tar.gz 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', '78c20aeaa7784b8ceb46238a81e8c2461137d28e0b576deeba8357d23fbe1f5a', # TensorFlow-2.1.0_fix-cuda-build.patch ], }), diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-fosscuda-2019b-Python-3.7.4.eb index 95d9b76fa77..fe727062968 100644 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-fosscuda-2019b-Python-3.7.4.eb +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.2.0-fosscuda-2019b-Python-3.7.4.eb @@ -117,6 +117,11 @@ exts_list = [ ('wrapt', '1.12.1', { 'checksums': ['b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7'], }), + ('Keras-Applications', '1.0.8', { + 'modulename': 'keras_applications', + 'source_tmpl': 'Keras_Applications-%(version)s.tar.gz', + 'checksums': ['5579f9a12bcde9748f4a12233925a59b93b73ae6947409ff34aa2ba258189fe5'], + }), ('Keras-Preprocessing', '1.1.0', { 'modulename': 'keras_preprocessing', 'source_tmpl': 'Keras_Preprocessing-%(version)s.tar.gz', @@ -125,7 +130,6 @@ exts_list = [ (name, version, { 'patches': [ 'TensorFlow-1.14.0_swig-env.patch', - 'TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch', 'TensorFlow-2.1.0_fix-cuda-build.patch', ], 'source_tmpl': 'v%(version)s.tar.gz', @@ -134,8 +138,6 @@ exts_list = [ 'checksums': [ '69cd836f87b8c53506c4f706f655d423270f5a563b76dc1cfa60fbc3184185a3', # v2.2.0.tar.gz 'b83cce6b91c7d19b8b320158ffc50fb4b2de454f5ac191c58d704234a1bf9005', # TensorFlow-1.14.0_swig-env.patch - # TensorFlow-1.14.0_remove_usrbin_from_linker_bin_path_flag.patch - 'bfa2701495dddfbbf4fbec808ea3c982b50043a16d28a8d1283f44df0b8aae7d', '78c20aeaa7784b8ceb46238a81e8c2461137d28e0b576deeba8357d23fbe1f5a', # TensorFlow-2.1.0_fix-cuda-build.patch ], }), diff --git a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.x_mnist-test.py b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.x_mnist-test.py index 6a9ff69f178..e8424c608e4 100755 --- a/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.x_mnist-test.py +++ b/easybuild/easyconfigs/t/TensorFlow/TensorFlow-2.x_mnist-test.py @@ -19,4 +19,4 @@ model.fit(x_train, y_train, epochs=5) -model.evaluate(x_test, y_test, verbose=2) +model.evaluate(x_test, y_test, verbose=2) diff --git a/easybuild/easyconfigs/t/Theano/Theano-1.0.4-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/t/Theano/Theano-1.0.4-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..1493f84b278 --- /dev/null +++ b/easybuild/easyconfigs/t/Theano/Theano-1.0.4-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,33 @@ +easyblock = 'PythonPackage' + +name = 'Theano' +version = '1.0.4' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://deeplearning.net/software/theano' +description = """Theano is a Python library that allows you to define, optimize, +and evaluate mathematical expressions involving multi-dimensional arrays efficiently.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['35c9bbef56b61ffa299265a42a4e8f8cb5a07b2997dabaef0f8830b397086913'] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), +] + +download_dep_fail = True +use_pip = True +sanity_pip_check = True + +fix_python_shebang_for = ['bin/theano-cache', 'bin/theano-nose'] + +sanity_check_paths = { + 'files': ['bin/theano-cache', 'bin/theano-nose'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +moduleclass = 'math' diff --git a/easybuild/easyconfigs/t/Trycycler/Trycycler-0.3.3-foss-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/t/Trycycler/Trycycler-0.3.3-foss-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..794d3e87fb2 --- /dev/null +++ b/easybuild/easyconfigs/t/Trycycler/Trycycler-0.3.3-foss-2020a-Python-3.8.2.eb @@ -0,0 +1,34 @@ +easyblock = 'PythonPackage' + +name = 'Trycycler' +version = '0.3.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/rrwick/Trycycler' +description = "Trycycler is a tool for generating consensus long-read assemblies for bacterial genomes." + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = ['https://github.com/rrwick/Trycycler/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['fa79c9d8b5ca4696b660faa9a438ecd41a2f2ea59e17280e72e24be613f461d5'] + +dependencies = [ + ('Python', '3.8.2'), + ('SciPy-bundle', '2020.03', versionsuffix), + ('edlib', '1.3.8.post1', versionsuffix), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': ['bin/trycycler'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["trycycler --help"] + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/t/tensorflow-probability/tensorflow-probability-0.9.0-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/t/tensorflow-probability/tensorflow-probability-0.9.0-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..fe98b1397a7 --- /dev/null +++ b/easybuild/easyconfigs/t/tensorflow-probability/tensorflow-probability-0.9.0-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,47 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# +# Authors:: Dugan Witherick (University of Warwick) +# License:: MIT/GPL +# $Id$ +# +## + +easyblock = 'PythonBundle' + +name = 'tensorflow-probability' +version = '0.9.0' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.tensorflow.org/probability' +description = """TensorFlow Probability (TFP) is a library for probabilistic reasoning and statistical analysis.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'usempi': True, 'pic': True} + +dependencies = [ + ('Python', '3.7.4'), + ('TensorFlow', '2.1.0', versionsuffix), +] + +exts_default_options = {'source_urls': [PYPI_SOURCE]} + +use_pip = True + +exts_list = [ + ('cloudpickle', '1.3.0', { + 'checksums': ['38af54d0e7705d87a287bdefe1df00f936aadb1f629dca383e825cca927fa753'], + }), + (name, version, { + 'modulename': 'tensorflow_probability', + 'source_tmpl': 'tensorflow_probability-%(version)s-py2.py3-none-any.whl', + 'checksums': ['66928dcbbc12987e574232a576bd9643ba7ca6b2a837f2182417286ac955d50f'], + 'unpack_sources': False, + }), +] + +sanity_check_commands = ["python -c 'import tensorflow; import tensorflow_probability'"] + +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/texinfo/texinfo-6.7-GCCcore-9.3.0.eb b/easybuild/easyconfigs/t/texinfo/texinfo-6.7-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..1d569338e0a --- /dev/null +++ b/easybuild/easyconfigs/t/texinfo/texinfo-6.7-GCCcore-9.3.0.eb @@ -0,0 +1,48 @@ +## +# This is a contribution from Phoenix HPC Service, The University of Adelaide, Australia +# Homepage: https://www.adelaide.edu.au/phoenix/ +# +# Copyright:: adelaide.edu.au/phoenix +# Authors:: Robert Qiao , Exe Escobedo +# License:: +# +# Notes:: +## + +easyblock = 'ConfigureMake' + +name = 'texinfo' +version = '6.7' + +homepage = 'https://www.gnu.org/software/texinfo/' +description = """Texinfo is the official documentation format of the GNU project.""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [GNU_SOURCE] +sources = [SOURCELOWER_TAR_XZ] +checksums = ['988403c1542d15ad044600b909997ba3079b10e03224c61188117f3676b02caa'] + +builddependencies = [('binutils', '2.34')] + +osdependencies = ['texlive'] + +preinstallopts = "make TEXMF=%(installdir)s/texmf install-tex && " + +# This will overwrite a users $TEXMFHOME so this module is best used as a build dependency +modextravars = {'TEXMFHOME': '%(installdir)s/texmf'} +modloadmsg = "\n\nWARNING: This texinfo module has (re)defined the value for the environment variable $TEXMFHOME.\n" +modloadmsg += "If you use a custom texmf directory (such as ~/texmf) you should copy files found in the\n" +modloadmsg += "new $TEXMFHOME to your custom directory and reset the value of $TEXMFHOME to point to that space:\n" +modloadmsg += "\tcp -r $TEXMFHOME/* /path/to/your/texmf\n" +modloadmsg += "\texport TEXMFHOME=/path/to/your/texmf\n\n" + +sanity_check_paths = { + 'files': [ + 'texmf/tex/texinfo/texinfo.tex', + 'bin/install-info', 'bin/makeinfo', 'bin/pdftexi2dvi', 'bin/pod2texi', 'bin/texi2pdf' + ], + 'dirs': ['bin', 'share', 'texmf'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/t/texlive/texlive-20200406-GCCcore-8.3.0.eb b/easybuild/easyconfigs/t/texlive/texlive-20200406-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..7c74e626642 --- /dev/null +++ b/easybuild/easyconfigs/t/texlive/texlive-20200406-GCCcore-8.3.0.eb @@ -0,0 +1,60 @@ +# Based off the 2017 version by John Dey jfdey@fredhutch.org +# https://github.com/easybuilders/easybuild-easyconfigs/pull/5085 +easyblock = 'Tarball' + +name = 'texlive' +version = '20200406' + +homepage = 'https://tug.org' +description = """TeX is a typesetting language. Instead of visually formatting your text, you enter your manuscript + text intertwined with TeX commands in a plain text file. You then run TeX to produce formatted output, such as a + PDF file. Thus, in contrast to standard word processors, your document is a separate file that does not pretend to + be a representation of the final typeset output, and so can be easily edited and manipulated.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['ftp://tug.org/texlive/historic/2020/'] +sources = [ + { + 'download_filename': 'install-tl-unx.tar.gz', + 'filename': 'install-tl-unx-%(version)s.tar.gz', + } +] +checksums = ['7c90a50e55533d57170cbc7c0370a010019946eb18570282948e1af6f809382d'] + +dependencies = [ + ('X11', '20190717'), + ('libpng', '1.6.37'), + ('libGLU', '9.0.1'), + ('Perl', '5.30.0'), + ('HarfBuzz', '2.6.4'), + ('poppler', '0.90.1'), + ('cairo', '1.16.0'), + ('fontconfig', '2.13.1'), + ('zlib', '1.2.11'), + ('graphite2', '1.3.14'), +] + +postinstallcmds = [ + 'echo "TEXDIR %(installdir)s/" > %(installdir)s/texlive.profile && ' + 'echo "TEXMFLOCAL %(installdir)s/texmf-local" >> %(installdir)s/texlive.profile && ' + 'echo "TEXMFSYSCONFIG %(installdir)s/texmf-config" >> %(installdir)s/texlive.profile && ' + 'echo "TEXMFSYSVAR %(installdir)s/texmf-var" >> %(installdir)s/texlive.profile && ' + '%(builddir)s/install-tl-%(version)s/install-tl -profile %(installdir)s/texlive.profile' +] + +modextrapaths = { + 'PATH': 'bin/x86_64-linux', + 'INFOPATH': 'texmf-dist/doc/info', + 'MANPATH': 'texmf-dist/doc/man', +} +modextravars = { + 'TEXMFHOME': '%(installdir)s/texmf-dist' +} + +sanity_check_paths = { + 'files': ['bin/x86_64-linux/tex', 'bin/x86_64-linux/latex'], + 'dirs': ['bin/x86_64-linux', 'texmf-dist'], +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/t/tidymodels/tidymodels-0.1.0-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/t/tidymodels/tidymodels-0.1.0-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..9eb67a50a60 --- /dev/null +++ b/easybuild/easyconfigs/t/tidymodels/tidymodels-0.1.0-foss-2020a-R-4.0.0.eb @@ -0,0 +1,93 @@ +easyblock = 'Bundle' + +name = 'tidymodels' +version = '0.1.0' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://cran.r-project.org/package=tidymodels' +description = """The tidy modeling "verse" is a collection of packages for +modeling and statistical analysis that share the underlying design philosophy, +grammar, and data structures of the tidyverse.""" + +toolchain = {'name': 'foss', 'version': '2020a'} + +dependencies = [('R', '4.0.0')] + +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', +} + +# as some extensions require 'vctrs >= 0.3.0' we have to make this separate bundle to override +# the lower version included on R-4.0.0 easyconfig, on a newer R release this bundle should +# be easily ingested on it + +exts_defaultclass = 'RPackage' +exts_filter = ("R -q --no-save", "library(%(ext_name)s)") + +exts_list = [ + ('GPfit', '1.0-8', { + 'checksums': ['7e4dfc28c49cad67afbd9c018255234c57a4baadc10a412ee660f72da28fb716'], + }), + ('vctrs', '0.3.1', { + 'checksums': ['17e6358735504166ecb1aab581e5fa5e565ffb6f10e8a12c4d476a8e1f8aba08'], + }), + ('hardhat', '0.1.4', { + 'checksums': ['7a4b0707b031344fbed7521972f0a6f7c61dd587609fab959247c8463224523d'], + }), + ('yardstick', '0.0.6', { + 'checksums': ['0aa7be3b2ec35e15bf3329057f31f89f20bf50b35c1f32672d945b06d85e7be2'], + }), + ('furrr', version, { + 'checksums': ['dd2937f7cad1bc69e7a512b2a777f82d6cb7e40fe99afa2049ca360f9352a9d1'], + }), + ('rsample', '0.0.7', { + 'checksums': ['a832e978edde276d79e513bfa75e289c174fc64f76e016bd55716c96017ed068'], + }), + ('RcppParallel', '5.0.2', { + 'checksums': ['8ca200908c6365aafb2063be1789f0894969adc03c0f523c6cc45434b8236f81'], + }), + ('rstanarm', '2.19.3', { + 'checksums': ['7ae06e19a193f6d1eaa722d893cd004bb5ea6917e1c236ec44ad6dda16c2b23f'], + }), + ('tidyposterior', '0.0.3', { + 'checksums': ['0ff24ae844f2ac32f801bd655f2c439112df2ab3872a6e178edf14c001405b73'], + }), + ('tidypredict', '0.4.5', { + 'checksums': ['e4d578bb43f44b814d06595134201e93bd8fee8ce92736ebbc8b9b2fb9a1dfc4'], + }), + ('parsnip', '0.1.2', { + 'checksums': ['33772a0cae462ff64895fc821281ed8bcfeba4cb126b9d8d6a4272906db49f23'], + }), + ('workflows', '0.1.1', { + 'checksums': ['143bdc14e986da692fb4a81bf53de72ba315107430f05f14fe6ef9f3bf5e9f92'], + }), + ('infer', '0.5.2', { + 'checksums': ['7580f1308f9e786b34ca04531ffd4d76c70f3b9f8a592e89e453d79d3fec0054'], + }), + ('DiceDesign', '1.8-1', { + 'checksums': ['7717e77531daf181bc84a672a793d4c7d800ef351fc1aac87ea6f53948a94187'], + }), + ('dials', '0.0.7', { + 'checksums': ['00bfaf3ffceacfd46965ee9042bd383fda857f7eca037344b4f5f2c61f6d1d3b'], + }), + ('tune', version, { + 'checksums': ['107d0d273b61f8276f5d8991c3c7f0af7123de9c6207288f036d4140e76f3176'], + }), + (name, version, { + 'checksums': ['a84a28113d2b175a416446ee2208ea73d6800fb5ef2ae5e18ac2190710dc25ae'], + }), +] + +modextrapaths = {'R_LIBS': ''} + +sanity_check_paths = { + 'files': [], + 'dirs': ['tidymodels'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/t/torchvision/torchvision-0.5.0-fosscuda-2019b-Python-3.7.4-PyTorch-1.4.0.eb b/easybuild/easyconfigs/t/torchvision/torchvision-0.5.0-fosscuda-2019b-Python-3.7.4-PyTorch-1.4.0.eb index d87d227ec79..5ba49db6ea4 100644 --- a/easybuild/easyconfigs/t/torchvision/torchvision-0.5.0-fosscuda-2019b-Python-3.7.4-PyTorch-1.4.0.eb +++ b/easybuild/easyconfigs/t/torchvision/torchvision-0.5.0-fosscuda-2019b-Python-3.7.4-PyTorch-1.4.0.eb @@ -23,6 +23,9 @@ dependencies = [ use_pip = True download_dep_fail = True + +preinstallopts = 'export TORCH_CUDA_ARCH_LIST="3.5 3.7 5.2 6.0 6.1 7.0 7.2 7.5" && ' + sanity_pip_check = True moduleclass = 'vis' diff --git a/easybuild/easyconfigs/t/tqdm/tqdm-4.47.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/t/tqdm/tqdm-4.47.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..a1847f64cc4 --- /dev/null +++ b/easybuild/easyconfigs/t/tqdm/tqdm-4.47.0-GCCcore-9.3.0.eb @@ -0,0 +1,23 @@ +easyblock = 'PythonPackage' + +name = 'tqdm' +version = '4.47.0' + +homepage = "https://github.com/tqdm/tqdm" +description = """A fast, extensible progress bar for Python and CLI""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['63ef7a6d3eb39f80d6b36e4867566b3d8e5f1fe3d6cb50c5e9ede2b3198ba7b7'] + +builddependencies = [('binutils', '2.34')] + +multi_deps = {'Python': ['2.7.18', '3.8.2']} + +use_pip = True +download_dep_fail = True +sanity_pip_check = True + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.7-foss-2019a-Python-3.7.2.eb b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.7-foss-2019a-Python-3.7.2.eb index 763f7216106..890acbbf6f4 100644 --- a/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.7-foss-2019a-Python-3.7.2.eb +++ b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.7-foss-2019a-Python-3.7.2.eb @@ -4,7 +4,7 @@ name = 'Unicycler' version = '0.4.7' versionsuffix = '-Python-%(pyver)s' -homepage = '' +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. """ @@ -34,4 +34,6 @@ sanity_check_paths = { 'dirs': ['lib/python%(pyshortver)s/site-packages'], } +sanity_pip_check = True + moduleclass = 'bio' diff --git a/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.8-gompi-2020a-Python-3.8.2.eb b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.8-gompi-2020a-Python-3.8.2.eb new file mode 100644 index 00000000000..70ef7ebfed1 --- /dev/null +++ b/easybuild/easyconfigs/u/Unicycler/Unicycler-0.4.8-gompi-2020a-Python-3.8.2.eb @@ -0,0 +1,39 @@ +easyblock = 'PythonPackage' + +name = 'Unicycler' +version = '0.4.8' +versionsuffix = '-Python-%(pyver)s' + +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': '2020a'} + +source_urls = ['https://github.com/rrwick/Unicycler/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['e948871e4de9db5964c9ca6f8f877c3cbe6a46f62052dfab52ffe0f45bbbd203'] + +dependencies = [ + ('Python', '3.8.2'), + ('Java', '11', '', True), + ('Bowtie2', '2.4.1'), + ('SAMtools', '1.10'), + ('SPAdes', '3.14.1', versionsuffix), + ('Racon', '1.4.13'), + ('Pilon', '1.23', '-Java-%(javaver)s', True), + ('BLAST+', '2.10.1'), +] + +download_dep_fail = True +use_pip = True + +sanity_check_paths = { + 'files': [], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_pip_check = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/u/umi4cPackage/umi4cPackage-20200116-foss-2020a-R-4.0.0.eb b/easybuild/easyconfigs/u/umi4cPackage/umi4cPackage-20200116-foss-2020a-R-4.0.0.eb new file mode 100644 index 00000000000..17ff83f9d26 --- /dev/null +++ b/easybuild/easyconfigs/u/umi4cPackage/umi4cPackage-20200116-foss-2020a-R-4.0.0.eb @@ -0,0 +1,30 @@ +easyblock = 'RPackage' + +name = 'umi4cPackage' +local_commit = '926c982' +# there doesn't seem to be a proper version, so use datestamp of commit +version = '20200116' +versionsuffix = '-R-%(rver)s' + +homepage = 'https://github.com/tanaylab/umi4cpackage' +description = "umi4cPackage is a processing and analysis pipeline for UMI-4C experiment." + +toolchain = {'name': 'foss', 'version': '2020a'} + +source_urls = ['https://github.com/tanaylab/umi4cpackage/archive'] +sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}] +checksums = ['6daa4f8907d64a2a23ab6bd9dfa5811531ec9528e685f9e778e613bc738560b5'] + +dependencies = [ + ('R', '4.0.0'), # include 'zoo' package + ('Perl', '5.30.2'), + ('Bowtie2', '2.4.1'), + ('misha', '4.0.10', versionsuffix), +] + +sanity_check_paths = { + 'files': [], + 'dirs': [name], +} + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43-fosscuda-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43-fosscuda-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..5c2bcb96f52 --- /dev/null +++ b/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43-fosscuda-2019b-Python-3.7.4.eb @@ -0,0 +1,62 @@ +## +# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild +# Authors:: Stephane Thiell +## +name = 'VMD' +version = '1.9.4a43' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://www.ks.uiuc.edu/Research/vmd' +description = """VMD is a molecular visualization program for displaying, animating, and analyzing large biomolecular + systems using 3-D graphics and built-in scripting.""" + +toolchain = {'name': 'fosscuda', 'version': '2019b'} + +source_urls = [ + 'https://www.ks.uiuc.edu/Research/vmd/vmd-1.9.4/files/alpha/', + 'https://www.ks.uiuc.edu/Research/vmd/vmd-%(version)s/files/final', + 'http://webclu.bio.wzw.tum.de/stride/' +] +sources = [ + 'vmd-%(version)s.src.tar.gz', + {'filename': 'stride.tar.gz', 'extract_cmd': "tar -C vmd-%(version)s/lib/stride -xf %s"}, +] +patches = [ + ('VMD-1.9.3_plugins.patch'), + ('VMD-1.9.3_surf_Makefile.patch', 'vmd-%(version)s'), + ('VMD-1.9.3_surf_bad_printfs.patch', 'vmd-%(version)s'), + ('VMD-1.9.3_stride_Makefile.patch', 'vmd-%(version)s'), + ('VMD-1.9.3_stride_MAX_AT_IN_RES.patch', 'vmd-%(version)s'), + ('VMD-%(version)s_configure.patch', 'vmd-%(version)s'), + ('VMD-%(version)s_extra_colors.patch', 'vmd-%(version)s'), +] +checksums = [ + '84323b2c34db8ce5739372dd6e225ef1fa1dc5c4b82d3810d55923a653b1bdc0', # vmd-1.9.4a43.src.tar.gz + '51a8bc2988bb184bd08216124f61725225bb1a6f563bdf8cd35154cb5d621c1a', # stride.tar.gz + '85760d6ae838e2b09801e34b36b484532383f7aaf2e8634b3ef808002a92baa3', # VMD-1.9.3_plugins.patch + 'd5cfa88064b7cffbc75accd69707d4e45fda974e8127de9ab606fdad501bd68a', # VMD-1.9.3_surf_Makefile.patch + 'f3c2a8c155e38db8e644cee6a01f6beaea5988e72ac74cde26b71670b151cc34', # VMD-1.9.3_surf_bad_printfs.patch + 'eb194ac0d8c086b73f87b29f7d732687f902431b1cdfa139c090401fefdee51e', # VMD-1.9.3_stride_Makefile.patch + 'eff1ca00cec637a6c8a156b2fb038e078d1835ba0eb15a571ed820bca5a866d9', # VMD-1.9.3_stride_MAX_AT_IN_RES.patch + '67430fb48dc847874098603dff82952af6dc939cc0c9621fd876a182f9aeed04', # VMD-1.9.4_configure.patch + '253eba282b570eb00e4764f46f77fd5ca898d10360d5707dd50ad1f14615af80', # VMD-1.9.4_extra_colors.patch +] + +dependencies = [ + ('Tcl', '8.6.9'), + ('Tk', '8.6.9'), + ('FLTK', '1.3.5'), + ('Python', '3.7.4'), + ('SciPy-bundle', '2019.10', '-Python-%(pyver)s'), + ('Tkinter', '3.7.4'), + ('Mesa', '19.1.7'), + ('netCDF', '4.7.1'), + ('FFmpeg', '4.2.1'), + ('ImageMagick', '7.0.9-5'), + ('ACTC', '1.1'), + ('OptiX', '6.5.0', '', True), + ('zlib', '1.2.11'), + ('libpng', '1.6.37'), +] + +moduleclass = 'vis' diff --git a/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43_configure.patch b/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43_configure.patch new file mode 100644 index 00000000000..24aff4e5a6a --- /dev/null +++ b/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43_configure.patch @@ -0,0 +1,150 @@ +fix hardcoded stuff in VMD configure script +authors: Stephane Thiell (Stanford University), Kenneth Hoste (HPC-UGent) +modified for version 1.9.4: Bob Dröge (University of Groningen) +--- configure.orig 2020-06-10 17:50:44.000000000 +0200 ++++ configure 2020-06-25 15:51:54.000000000 +0200 +@@ -487,7 +487,7 @@ + + $arch_cc = "cc"; + $arch_ccpp = "CC"; +-$arch_nvcc = "/usr/local/cuda-10.2/bin/nvcc"; ++$arch_nvcc = "nvcc"; + $arch_nvccflags = "-lineinfo --ptxas-options=-v " . + "-gencode arch=compute_30,code=compute_30 " . + "-gencode arch=compute_30,code=sm_35 " . +@@ -623,17 +623,17 @@ + # location of Mesa library and include files; basically does the same + # as OpenGL. This is based on the default instructions from the Mesa + # README; the include files should by default be in /usr/local/include/GL. +-$mesa_dir = "$vmd_library_dir/Mesa"; ++$mesa_dir = $ENV{'EBROOTMESA'}; + $mesa_include = "-I$mesa_dir/include"; + $mesa_library = "-L$mesa_dir/lib_$config_arch"; + #$mesa_libs = "-lMesaGL -lMesaGLU"; +-$mesa_libs = "-lMesaGL"; ++$mesa_libs = "-lGL -lGLU"; + $mesa_defines = "-DUSELINEAXES -DVMDMESA -DVMDOPENGL"; + @mesa_cc = (); + @mesa_cu = (); +-@mesa_ccpp = @opengl_ccpp; +-@mesa_h = @opengl_h; +-@mesa_extra = @opengl_extra; ++@mesa_ccpp = (); ++@mesa_h = (); ++@mesa_extra = (); + + + # +@@ -708,10 +708,10 @@ + + ################ FLTK GUI + $fltk_defines = "-DVMDGUI -DVMDFLTK"; +-$fltk_dir = "$vmd_library_dir/fltk"; ++$fltk_dir = $ENV{'EBROOTFLTK'}; + $fltk_include = "-I$fltk_dir/include"; + $fltk_library = "-L$fltk_dir/$config_arch"; +-$fltk_libs = "-lfltk -lX11"; ++$fltk_libs = "-lfltk -lX11 -lXfixes -lXcursor -lXinerama"; + #@fltk_cc = ('forms_ui.c'); + @fltk_cu = (); + @fltk_ccpp = ( 'ColorFltkMenu.C', +@@ -753,7 +753,6 @@ + $stock_tcl_include_dir=$ENV{"TCL_INCLUDE_DIR"} || "$vmd_library_dir/tcl/include"; + $stock_tcl_library_dir=$ENV{"TCL_LIBRARY_DIR"} || "$vmd_library_dir/tcl/lib_$config_arch"; + +- + # location of Tk (for TK option) + #$stock_tk_include_dir=$ENV{"TK_INCLUDE_DIR"} || "/usr/local/include"; + #$stock_tk_library_dir=$ENV{"TK_LIBRARY_DIR"} || "/usr/local/lib"; +@@ -771,8 +770,8 @@ + if ($config_tk) { $tcl_include .= " -I$stock_tk_include_dir"; } + $tcl_library = "-L$stock_tcl_library_dir"; + if ($config_tk) { $tcl_library .= " -L$stock_tk_library_dir"; } +-$tcl_libs = "-ltcl8.5"; +-if ($config_tk) { $tcl_libs = "-ltk8.5 -lX11 " . $tcl_libs; } ++$tcl_libs = "-ltcl8.6"; ++if ($config_tk) { $tcl_libs = "-ltk8.6 -lX11 " . $tcl_libs; } + + @tcl_cc = (); + @tcl_cu = (); +@@ -936,7 +935,7 @@ + # This option enables the use of CUDA GPU acceleration functions. + ####################### + $cuda_defines = "-DVMDCUDA -DMSMPOT_CUDA"; +-$cuda_dir = "/usr/local/cuda-10.2"; ++$cuda_dir = "$ENV{'CUDA_HOME'}"; + $cuda_include = ""; + $cuda_library = ""; + $cuda_libs = "-Wl,-rpath -Wl,\$\$ORIGIN/ -lcudart_static -lrt"; +@@ -1103,7 +1102,7 @@ + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-5.0.1-linux64"; + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-5.1.0-linux64"; + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-6.0.0-linux64"; +-$liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-6.5.0-linux64"; ++$liboptix_dir = "$ENV{'EBROOTOPTIX'}"; + # $liboptix_dir = "/usr/local/encap/NVIDIA-OptiX-SDK-7.0.0-linux64"; + + # NCSA Blue Waters +@@ -1194,7 +1193,7 @@ + die "LIBPNG option requires ZLIB!"; + } + $libpng_defines = "-DVMDLIBPNG"; +-$libpng_dir = "/Projects/vmd/vmd/lib/libpng"; ++$libpng_dir = "$ENV{'EBROOTLIBPNG'}"; + $libpng_include = "-I$libpng_dir/include"; + $libpng_library = "-L$libpng_dir/lib_$config_arch"; + $libpng_libs = "-lpng16"; +@@ -1222,7 +1221,7 @@ + # OPTIONAL COMPONENT: Data compresssion library + # This may be commented out if not required. + $zlib_defines = "-DVMDZLIB"; +-$zlib_dir = "/Projects/vmd/vmd/lib/zlib"; ++$zlib_dir = "$ENV{'EBROOTZLIB'}"; + $zlib_include = "-I$zlib_dir/include"; + $zlib_library = "-L$zlib_dir/lib_$config_arch"; + $zlib_libs = "-lz"; +@@ -1413,7 +1412,7 @@ + # primitives. + ####################### + $actc_defines = "-DVMDACTC"; +-$actc_dir = "$vmd_library_dir/actc"; ++$actc_dir = "$ENV{'EBROOTACTC'}"; + $actc_include = "-I$actc_dir/include"; + $actc_library = "-L$actc_dir/lib_$config_arch"; + $actc_libs = "-lactc"; +@@ -1428,7 +1427,7 @@ + # OPTIONAL COMPONENT: NetCDF I/O Library (Used by cdfplugin) + ####################### + $netcdf_defines = ""; +-$netcdf_dir = "$vmd_library_dir/netcdf"; ++$netcdf_dir = "$ENV{'EBROOTNETCDF'}"; + $netcdf_include = "-I$netcdf_dir/include"; + $netcdf_library = "-L$netcdf_dir/lib_$config_arch"; + $netcdf_libs = "-lnetcdf"; +@@ -1492,7 +1491,7 @@ + $python_defines = "-DVMDPYTHON"; + $python_include = "-I$stock_python_include_dir -I$stock_numpy_include_dir -I$stock_numpy_library_dir"; + $python_library = "-L$stock_python_library_dir"; +-$python_libs = "-lpython2.5 -lpthread"; ++$python_libs = "$ENV{'PYTHON_LIBRARIES'}" || "-lpython2.5 -lpthread"; + @python_h = ('PythonTextInterp.h', + 'VMDTkinterMenu.h', + 'py_commands.h', +@@ -2401,7 +2400,7 @@ + + if ($config_cuda) { + $arch_nvccflags .= " --machine 64 -O3 $cuda_include"; +- $cuda_library = "-L/usr/local/cuda-10.2/lib64"; ++ $cuda_library = "-L/$ENV{'EBROOTCUDA'}/lib64"; + } + + $arch_lex = "flex"; # has problems with vendor lex +@@ -2411,7 +2410,7 @@ + # they likely serve no useful purpose going forward. + if (!$config_opengl_dispatch) { + $opengl_dep_libs = "-L/usr/X11R6/lib64 -lGL -lX11"; +- $mesa_libs = "-lMesaGL -L/usr/X11R6/lib64 -lXext -lX11"; ++ $mesa_libs = "-lGL -lGLU -L/usr/X11R6/lib64 -lXext -lX11"; + } + + # this is to make tcl happy diff --git a/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43_extra_colors.patch b/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43_extra_colors.patch new file mode 100644 index 00000000000..26e9ba954db --- /dev/null +++ b/easybuild/easyconfigs/v/VMD/VMD-1.9.4a43_extra_colors.patch @@ -0,0 +1,46 @@ +Add some additional colors, e.g. to allow for color blind compatible rendering. +Bob Dröge, 2020-06-23 +--- src/Scene.C.orig 2020-06-23 09:37:41.000000000 +0200 ++++ src/Scene.C 2020-06-23 09:40:59.000000000 +0200 +@@ -63,7 +63,10 @@ + ,"yellow2", "yellow3", "green2", "green3", + "cyan2", "cyan3", "blue2", "blue3", + "violet", "violet2", "magenta", "magenta2", +- "red2", "red3", "orange2", "orange3" ++ "red2", "red3", "orange2", "orange3", ++ "matisse", "flamenco", "forest_green", "punch", ++ "wisteria", "spicy_mix", "orchid", "gray2", ++ "lime_pie", "java" + #endif + + }; +@@ -89,7 +92,17 @@ + 0.27f, 0.00f, 0.98f, 0.45f, 0.00f, 0.90f, // violet + 0.90f, 0.00f, 0.90f, 1.00f, 0.00f, 0.66f, // magenta + 0.98f, 0.00f, 0.23f, 0.81f, 0.00f, 0.00f, // red +- 0.89f, 0.35f, 0.00f, 0.96f, 0.72f, 0.00f // orange ++ 0.89f, 0.35f, 0.00f, 0.96f, 0.72f, 0.00f, // orange ++ 0.1f, 0.5f, 0.7f, // MPL1, matisse ++ 1.0f, 0.5f, 0.1f, // MPL2, flamenco ++ 0.2f, 0.6f, 0.2f, // MPL3, forest green ++ 0.8f, 0.2f, 0.2f, // MPL4, punch ++ 0.6f, 0.4f, 0.7f, // MPL5, wisteria ++ 0.5f, 0.3f, 0.3f, // MPL6, spicy mix ++ 0.9f, 0.5f, 0.8f, // MPL7, orchid ++ 0.5f, 0.5f, 0.5f, // MPL8, gray ++ 0.7f, 0.7f, 0.1f, // MPL9, key lime pie ++ 0.1f, 0.7f, 0.8f // MPL10, java + #endif + + }; +--- src/Scene.h.orig 2020-06-23 09:37:45.000000000 +0200 ++++ src/Scene.h 2020-06-23 09:42:21.000000000 +0200 +@@ -37,7 +37,7 @@ + #define DISP_LIGHTS 4 + + // total number of colors defined here +-#define REGCLRS 33 ++#define REGCLRS 43 + #define EXTRACLRS 1 + #define VISCLRS (REGCLRS - EXTRACLRS) + #define MAPCLRS 1024 diff --git a/easybuild/easyconfigs/v/variant_tools/variant_tools-3.1.3-foss-2019b-Python-3.7.4.eb b/easybuild/easyconfigs/v/variant_tools/variant_tools-3.1.3-foss-2019b-Python-3.7.4.eb new file mode 100644 index 00000000000..557ad9b9f3f --- /dev/null +++ b/easybuild/easyconfigs/v/variant_tools/variant_tools-3.1.3-foss-2019b-Python-3.7.4.eb @@ -0,0 +1,35 @@ +# This easyconfig was created by Simon Branford of the BEAR Software team at the University of Birmingham. +easyblock = 'PythonPackage' + +name = 'variant_tools' +version = '3.1.3' +versionsuffix = '-Python-%(pyver)s' + +homepage = "https://vatlab.github.io/vat-docs/" +description = """Variant tools is a software tool for the manipulation, annotation, selection, simulation, and + analysis of variants in the context of next-gen sequencing analysis. Unlike some other tools used for Next-Gen + sequencing analysis, variant tools is project based and provides a whole set of tools to manipulate and analyze + genetic variants.""" + +toolchain = {'name': 'foss', 'version': '2019b'} + +dependencies = [ + ('Python', '3.7.4'), + ('PycURL', '7.43.0.5', versionsuffix), + ('PyTables', '3.6.1', versionsuffix), + ('PyZMQ', '18.1.1', versionsuffix), + ('SciPy-bundle', '2019.10', versionsuffix), + ('Boost', '1.71.0'), + ('GSL', '2.6'), + ('HDF5', '1.10.5'), +] + +source_urls = [PYPI_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['c5afa8a2129205492786700c93a117504b2162aa6df3d5d10ff575cc946a923c'] + +download_dep_fail = True +sanity_pip_check = True +use_pip = True + +moduleclass = 'bio' diff --git a/easybuild/easyconfigs/w/WRF/WRF-4.1.3-foss-2019b-dmpar.eb b/easybuild/easyconfigs/w/WRF/WRF-4.1.3-foss-2019b-dmpar.eb new file mode 100644 index 00000000000..1b6259b805d --- /dev/null +++ b/easybuild/easyconfigs/w/WRF/WRF-4.1.3-foss-2019b-dmpar.eb @@ -0,0 +1,41 @@ +name = 'WRF' +version = '4.1.3' +buildtype = "dmpar" +versionsuffix = '-%s' % buildtype + +homepage = 'https://www.wrf-model.org' +description = """The Weather Research and Forecasting (WRF) Model is a next-generation mesoscale + numerical weather prediction system designed to serve both operational forecasting and atmospheric + research needs.""" + +toolchain = {'name': 'foss', 'version': '2019b'} +toolchainopts = {'opt': False} # don't use agressive optimization, stick to -O2 + +source_urls = ['https://github.com/wrf-model/WRF/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = [ + 'WRF_parallel_build_fix.patch', + 'WRFv4_netCDF-Fortran_separate_path.patch', +] +checksums = [ + 'a020e83e8a7a927fb080075031630e2af592e9fa802293ad72caa7ee50d6968d', # v4.1.3.tar.gz + 'f93bb6dbb8b52d72f816e2f9a6815bffd536afeca8511552ec5abc4253a59346', # WRF_parallel_build_fix.patch + 'a431159180757a895c07fc193fe93bb69c4c9d25d31adcc7c2adfa7c1edb04ad', # WRFv4_netCDF-Fortran_separate_path.patch +] + +# csh is used by WRF install scripts +builddependencies = [ + ('tcsh', '6.22.02'), + ('time', '1.9'), +] + +dependencies = [ + ('JasPer', '2.0.14'), + ('netCDF', '4.7.1'), + ('netCDF-Fortran', '4.5.2'), +] + +# limit parallel build to 20 +maxparallel = 20 + +moduleclass = 'geo' diff --git a/easybuild/easyconfigs/w/WRF/WRF-4.1.3-intel-2019b-dmpar.eb b/easybuild/easyconfigs/w/WRF/WRF-4.1.3-intel-2019b-dmpar.eb index ca1b5d4a5dd..30576fad4f2 100644 --- a/easybuild/easyconfigs/w/WRF/WRF-4.1.3-intel-2019b-dmpar.eb +++ b/easybuild/easyconfigs/w/WRF/WRF-4.1.3-intel-2019b-dmpar.eb @@ -1,5 +1,7 @@ name = 'WRF' version = '4.1.3' +buildtype = "dmpar" +versionsuffix = '-%s' % buildtype homepage = 'http://www.wrf-model.org' description = """The Weather Research and Forecasting (WRF) Model is a next-generation mesoscale @@ -36,7 +38,4 @@ dependencies = [ # limit parallel build to 20 maxparallel = 20 -buildtype = "dmpar" -versionsuffix = '-%s' % buildtype - moduleclass = 'geo' diff --git a/easybuild/easyconfigs/x/X11/X11-20200222-GCCcore-9.3.0.eb b/easybuild/easyconfigs/x/X11/X11-20200222-GCCcore-9.3.0.eb index c0134438868..0c4398adb92 100644 --- a/easybuild/easyconfigs/x/X11/X11-20200222-GCCcore-9.3.0.eb +++ b/easybuild/easyconfigs/x/X11/X11-20200222-GCCcore-9.3.0.eb @@ -24,7 +24,7 @@ builddependencies = [ ('gettext', '0.20.1'), ('pkg-config', '0.29.2'), ('intltool', '0.51.0'), - ('Meson', '0.53.2', '-Python-3.8.2'), + ('Meson', '0.55.1', '-Python-3.8.2'), ('Ninja', '1.10.0'), ] dependencies = [ diff --git a/easybuild/easyconfigs/x/Xerces-C++/Xerces-C++-3.2.2-GCCcore-8.3.0.eb b/easybuild/easyconfigs/x/Xerces-C++/Xerces-C++-3.2.2-GCCcore-8.3.0.eb new file mode 100644 index 00000000000..87b226b2464 --- /dev/null +++ b/easybuild/easyconfigs/x/Xerces-C++/Xerces-C++-3.2.2-GCCcore-8.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'Xerces-C++' +version = '3.2.2' + +homepage = 'https://xerces.apache.org/xerces-c/' + +description = """Xerces-C++ is a validating XML parser written in a portable +subset of C++. Xerces-C++ makes it easy to give your application the ability to +read and write XML data. A shared library is provided for parsing, generating, +manipulating, and validating XML documents using the DOM, SAX, and SAX2 +APIs.""" + +toolchain = {'name': 'GCCcore', 'version': '8.3.0'} + +source_urls = ['https://archive.apache.org/dist/xerces/c/%(version_major)s/sources/'] +sources = ['xerces-c-%(version)s.tar.gz'] +checksums = ['dd6191f8aa256d3b4686b64b0544eea2b450d98b4254996ffdfe630e0c610413'] + +builddependencies = [ + ('pkg-config', '0.29.2'), + ('binutils', '2.32'), + ('CMake', '3.15.3'), +] + +dependencies = [ + ('cURL', '7.66.0'), +] + +runtest = 'test' + +sanity_check_paths = { + 'files': ['bin/XInclude', + 'include/xercesc/xinclude/XIncludeUtils.hpp', + 'lib/libxerces-c-3.2.so'], + 'dirs': ['bin', 'include', 'lib'] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-9.3.0.eb b/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..0a2078907fa --- /dev/null +++ b/easybuild/easyconfigs/x/xproto/xproto-7.0.31-GCCcore-9.3.0.eb @@ -0,0 +1,29 @@ +easyblock = 'ConfigureMake' + +name = 'xproto' +version = '7.0.31' + +homepage = 'https://www.freedesktop.org/wiki/Software/xlibs' +description = "X protocol and ancillary headers" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = [XORG_PROTO_SOURCE] +sources = [SOURCE_TAR_GZ] +checksums = ['6d755eaae27b45c5cc75529a12855fed5de5969b367ed05003944cf901ed43c7'] + +builddependencies = [ + ('binutils', '2.34'), + ('xorg-macros', '1.19.2'), +] + +sanity_check_paths = { + 'files': ['include/X11/%s' % x for x in ['ap_keysym.h', 'HPkeysym.h', 'keysym.h', 'Xalloca.h', 'Xatom.h', + 'XF86keysym.h', 'Xfuncs.h', 'Xmd.h', 'Xos.h', 'Xpoll.h', 'Xprotostr.h', + 'Xw32defs.h', 'Xwindows.h', 'DECkeysym.h', 'keysymdef.h', 'Sunkeysym.h', + 'Xarch.h', 'Xdefs.h', 'Xfuncproto.h', 'X.h', 'Xosdefs.h', 'Xos_r.h', + 'Xproto.h', 'Xthreads.h', 'XWDFile.h', 'Xwinsock.h']], + 'dirs': [] +} + +moduleclass = 'devel' diff --git a/easybuild/easyconfigs/z/Zip/Zip-3.0-GCCcore-9.3.0.eb b/easybuild/easyconfigs/z/Zip/Zip-3.0-GCCcore-9.3.0.eb new file mode 100644 index 00000000000..70f710266a7 --- /dev/null +++ b/easybuild/easyconfigs/z/Zip/Zip-3.0-GCCcore-9.3.0.eb @@ -0,0 +1,40 @@ +easyblock = 'ConfigureMake' + +name = 'Zip' +version = '3.0' + +homepage = 'http://www.info-zip.org/Zip.html' +description = """Zip is a compression and file packaging/archive utility. +Although highly compatible both with PKWARE's PKZIP and PKUNZIP +utilities for MS-DOS and with Info-ZIP's own UnZip, our primary objectives +have been portability and other-than-MSDOS functionality""" + +toolchain = {'name': 'GCCcore', 'version': '9.3.0'} + +source_urls = ['https://download.sourceforge.net/infozip'] +sources = ['%(namelower)s%(version_major)s%(version_minor)s.tar.gz'] +checksums = ['f0e8bb1f9b7eb0b01285495a2699df3a4b766784c1765a8f1aeedf63c0806369'] + +builddependencies = [ + ('binutils', '2.34'), +] +dependencies = [ + ('bzip2', '1.0.8'), +] + +skipsteps = ['configure'] + +buildopts = '-f unix/Makefile CC="$CC" IZ_OUR_BZIP2_DIR=$EBROOTBZIP2 ' +buildopts += 'CFLAGS="$CFLAGS -I. -DUNIX -DBZIP2_SUPPORT -DUNICODE_SUPPORT -DLARGE_FILE_SUPPORT" ' +buildopts += 'generic_gcc' + +installopts = '-f unix/Makefile prefix=%(installdir)s ' + +sanity_check_paths = { + 'files': ['bin/zip', 'bin/zipcloak', 'bin/zipnote', 'bin/zipsplit'], + 'dirs': ['man/man1'] +} + +sanity_check_commands = ["zip --version"] + +moduleclass = 'tools' diff --git a/easybuild/easyconfigs/z/zlib/zlib-1.2.11-GCCcore-10.2.0.eb b/easybuild/easyconfigs/z/zlib/zlib-1.2.11-GCCcore-10.2.0.eb new file mode 100644 index 00000000000..c26c13b8e50 --- /dev/null +++ b/easybuild/easyconfigs/z/zlib/zlib-1.2.11-GCCcore-10.2.0.eb @@ -0,0 +1,26 @@ +easyblock = 'ConfigureMake' + +name = 'zlib' +version = '1.2.11' + +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': '10.2.0'} +toolchainopts = {'pic': True} + +source_urls = ['https://zlib.net/fossils'] +sources = [SOURCELOWER_TAR_GZ] +checksums = ['c3e5e9fdd5004dcb542feda5ee4f0ff0744628baf8ed2dd5d66f8ca1197cb1a1'] + +# use same binutils version that was used when building GCC toolchain +builddependencies = [('binutils', '2.35', '', 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 2866959711d..9b93cac3d31 100644 --- a/setup.cfg +++ b/setup.cfg @@ -3,6 +3,9 @@ # never install as a zipped egg, since then easyconfig file can't be found zip_ok = 0 +[flake8] +max-line-length = 120 + [sdist] # Don't remove CVS and RCS directories prune = 0 diff --git a/setup.py b/setup.py index aab39a9b276..d4601306a5a 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.2.2' +VERSION = '4.3.0' MAJ_VER = VERSION.split('.')[0] MAJMIN_VER = '.'.join(VERSION.split('.')[0:2]) diff --git a/test/__init__.py b/test/__init__.py index d90fcf47716..b67524e91bf 100644 --- a/test/__init__.py +++ b/test/__init__.py @@ -35,4 +35,4 @@ from pkgutil import extend_path # we're not the only ones in this namespace -__path__ = extend_path(__path__, __name__) #@ReservedAssignment +__path__ = extend_path(__path__, __name__) # @ReservedAssignment diff --git a/test/easyconfigs/easyconfigs.py b/test/easyconfigs/easyconfigs.py index a5654e2d5f5..2f3d251a790 100644 --- a/test/easyconfigs/easyconfigs.py +++ b/test/easyconfigs/easyconfigs.py @@ -43,14 +43,14 @@ from easybuild.framework.easyblock import EasyBlock 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, is_generic_easyblock, letter_dir_for +from easybuild.framework.easyconfig.easyconfig import get_easyblock_class, letter_dir_for from easybuild.framework.easyconfig.easyconfig import resolve_template from easybuild.framework.easyconfig.parser import EasyConfigParser, fetch_parameters_from_easyconfig from easybuild.framework.easyconfig.tools import check_sha256_checksums, dep_graph, get_paths_for, process_easyconfig from easybuild.tools import config from easybuild.tools.build_log import EasyBuildError from easybuild.tools.config import GENERAL_CLASS, build_option -from easybuild.tools.filetools import change_dir, read_file, remove_file, write_file +from easybuild.tools.filetools import change_dir, read_file, remove_file, write_file, is_generic_easyblock from easybuild.tools.module_naming_scheme.utilities import det_full_ec_version from easybuild.tools.modules import modules_tool from easybuild.tools.py2vs3 import string_type, urlopen @@ -117,7 +117,8 @@ def process_all_easyconfigs(self): if dep.get('external_module', False): ec['dependencies'].remove(dep) - EasyConfigTest.ordered_specs = resolve_dependencies(EasyConfigTest.parsed_easyconfigs, modules_tool(), retain_all_deps=True) + EasyConfigTest.ordered_specs = resolve_dependencies( + EasyConfigTest.parsed_easyconfigs, modules_tool(), retain_all_deps=True) def test_dep_graph(self): """Unit test that builds a full dependency graph.""" @@ -448,9 +449,9 @@ def get_deps_for(ec): # restrict to checking dependencies of easyconfigs using common toolchains (start with 2018a) # and GCCcore subtoolchain for common toolchains, starting with GCCcore 7.x - for pattern in ['201[89][ab]', '20[2-9][0-9][ab]', 'GCCcore-[7-9]\.[0-9]']: + for pattern in ['201[89][ab]', '20[2-9][0-9][ab]', r'GCCcore-[7-9]\.[0-9]']: all_deps = {} - regex = re.compile('^.*-(?P%s).*\.eb$' % pattern) + regex = re.compile(r'^.*-(?P%s).*\.eb$' % pattern) # collect variants for all dependencies of easyconfigs that use a toolchain that matches for ec in EasyConfigTest.ordered_specs: @@ -602,7 +603,8 @@ def check_python_packages(self, changed_ecs, added_ecs_filenames): # if Python is a dependency, that should be reflected in the versionsuffix # Tkinter is an exception, since its version always matches the Python version anyway # Also whitelist some updated versions of Amber - whitelist_python_suffix = ['Amber-16-*-2018b-AmberTools-17-patchlevel-10-15.eb', 'Amber-16-intel-2017b-AmberTools-17-patchlevel-8-12.eb'] + whitelist_python_suffix = ['Amber-16-*-2018b-AmberTools-17-patchlevel-10-15.eb', + 'Amber-16-intel-2017b-AmberTools-17-patchlevel-8-12.eb'] whitelisted = any(re.match(regex, ec_fn) for regex in whitelist_python_suffix) has_python_dep = any(dep['name'] == 'Python' for dep in ec['dependencies']) if has_python_dep and ec.name != 'Tkinter' and not whitelisted: @@ -632,7 +634,7 @@ def check_sanity_check_paths(self, changed_ecs): whitelist = ['BuildEnv', 'CrayToolchain', 'GoPackage', 'ModuleRC', 'PythonBundle', 'PythonPackage', 'Toolchain'] # Autotools & (recent) GCC are just bundles (Autotools: Autoconf+Automake+libtool, GCC: GCCcore+binutils) - bundles_whitelist = ['Autotools', 'GCC'] + bundles_whitelist = ['Autotools', 'GCC', 'CUDA'] failing_checks = [] @@ -659,6 +661,8 @@ def check_https(self, changed_ecs): 'ITSTool', # https://itstool.org/ doesn't work 'UCX-', # bad certificate for https://www.openucx.org 'MUMPS', # https://mumps.enseeiht.fr doesn't work + 'PyFR', # https://www.pyfr.org doesn't work + 'PycURL', # bad certificate for https://pycurl.io/ ] url_whitelist = [ # https:// doesn't work, results in index page being downloaded instead @@ -679,7 +683,7 @@ def check_https(self, changed_ecs): continue # ignore commented out lines in easyconfig files when checking for http:// URLs - ec_txt = '\n'.join(l for l in ec.rawtxt.split('\n') if not l.startswith('#')) + ec_txt = '\n'.join(line for line in ec.rawtxt.split('\n') if not line.startswith('#')) for http_url in http_regex.findall(ec_txt): @@ -701,10 +705,24 @@ def check_https(self, changed_ecs): def test_changed_files_pull_request(self): """Specific checks only done for the (easyconfig) files that were changed in a pull request.""" def get_eb_files_from_diff(diff_filter): - cmd = "git diff --name-only --diff-filter=%s %s...HEAD" % (diff_filter, target_branch) - out, ec = run_cmd(cmd, simple=False) - return [os.path.basename(f) for f in out.strip().split('\n') if f.endswith('.eb')] + # first determine the 'merge base' between target branch and PR branch + # cfr. https://git-scm.com/docs/git-merge-base + cmd = "git merge-base %s HEAD" % target_branch + out, ec = run_cmd(cmd, simple=False, log_ok=False) + if ec == 0: + merge_base = out.strip() + print("Merge base for %s and HEAD: %s" % (target_branch, merge_base)) + else: + msg = "Failed to determine merge base (ec: %s, output: '%s'), " + msg += "falling back to specifying target branch %s" + print(msg % (ec, out, target_branch)) + merge_base = target_branch + + # determine list of changed files using 'git diff' and merge base determined above + cmd = "git diff --name-only --diff-filter=%s %s..HEAD" % (diff_filter, merge_base) + out, _ = run_cmd(cmd, simple=False) + return [os.path.basename(f) for f in out.strip().split('\n') if f.endswith('.eb')] # $TRAVIS_PULL_REQUEST should be a PR number, otherwise we're not running tests for a PR travis_pr_test = re.match('^[0-9]+$', os.environ.get('TRAVIS_PULL_REQUEST', '(none)')) @@ -842,12 +860,12 @@ def template_easyconfig_test(self, spec): self.assertFalse(ec['toolchain']['name'] == 'dummy', error_msg_tmpl % os.path.basename(spec)) # make sure that $root is not used, since it is not compatible with module files in Lua syntax - res = re.findall('.*\$root.*', ec.rawtxt, re.M) + res = re.findall(r'.*\$root.*', ec.rawtxt, re.M) error_msg = "Found use of '$root', not compatible with modules in Lua syntax, use '%%(installdir)s' instead: %s" self.assertFalse(res, error_msg % res) # check for redefined easyconfig parameters, there should be none... - param_def_regex = re.compile('^(?P\w+)\s*=', re.M) + param_def_regex = re.compile(r'^(?P\w+)\s*=', re.M) keys = param_def_regex.findall(ec.rawtxt) redefined_keys = [] for key in sorted(nub(keys)): @@ -999,6 +1017,11 @@ def template_easyconfig_test(self, spec): def suite(): """Return all easyblock initialisation tests.""" + def make_inner_test(spec_path): + def innertest(self): + template_easyconfig_test(self, spec_path) + return innertest + # dynamically generate a separate test for each of the available easyconfigs # define new inner functions that can be added as class methods to InitTest easyconfigs_path = get_paths_for('easyconfigs')[0] @@ -1012,8 +1035,7 @@ def suite(): for spec in specs: if spec.endswith('.eb') and spec != 'TEMPLATE.eb': cnt += 1 - code = "def innertest(self): template_easyconfig_test(self, '%s')" % os.path.join(subpath, spec) - exec(code, globals()) + innertest = make_inner_test(os.path.join(subpath, spec)) innertest.__doc__ = "Test for parsing of easyconfig %s" % spec # double underscore so parsing tests are run first innertest.__name__ = "test__parse_easyconfig_%s" % spec diff --git a/test/easyconfigs/styletests.py b/test/easyconfigs/styletests.py index ac5502d0526..ca98984f59c 100644 --- a/test/easyconfigs/styletests.py +++ b/test/easyconfigs/styletests.py @@ -29,8 +29,7 @@ """ import glob -import sys -from unittest import TestCase, TestLoader, main +from unittest import TestCase, TestLoader, main, skipIf from easybuild.base import fancylogger from easybuild.framework.easyconfig.tools import get_paths_for @@ -39,18 +38,15 @@ try: import pep8 except ImportError: - pass + pep8 = None class StyleTest(TestCase): log = fancylogger.getLogger("StyleTest", fname=False) + @skipIf(not pep8, 'no pep8 available') def test_style_conformance(self): """Check the easyconfigs for style""" - if 'pep8' not in sys.modules: - print("Skipping style checks (no pep8 available)") - return - # all available easyconfig files easyconfigs_path = get_paths_for("easyconfigs")[0] specs = glob.glob('%s/*/*/*.eb' % easyconfigs_path)