Skip to content

Commit

Permalink
Merge pull request #20314 from boegel/5.0.x
Browse files Browse the repository at this point in the history
sync with develop (20240406)
  • Loading branch information
Micket authored Apr 6, 2024
2 parents b824ac2 + 88f6f9c commit 87e8368
Show file tree
Hide file tree
Showing 110 changed files with 3,923 additions and 87 deletions.
191 changes: 190 additions & 1 deletion RELEASE_NOTES

Large diffs are not rendered by default.

67 changes: 67 additions & 0 deletions easybuild/easyconfigs/a/AFNI/AFNI-24.0.02-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Updated to version 24.0.02
# Author: J. Sassmannshausen (Imperial College London/UK)

easyblock = 'CMakeMake'

name = 'AFNI'
version = '24.0.02'

homepage = 'http://afni.nimh.nih.gov/'
description = """AFNI is a set of C programs for processing, analyzing, and displaying functional MRI (FMRI) data -
a technique for mapping human brain activity."""

toolchain = {'name': 'foss', 'version': '2023a'}
toolchainopts = {'openmp': True, 'pic': True}

source_urls = ['https://github.com/afni/afni/archive/']
sources = ['AFNI_%(version)s.tar.gz']
checksums = ['2915ed5bf98712abe3373bfc285f946fdee6cf1367e23ba80575dd6eedb3529a']

builddependencies = [
('CMake', '3.26.3'),
]

dependencies = [
('tcsh', '6.24.10'),
('Python', '3.11.3'),
('X11', '20230603'),
('motif', '2.3.8'),
('R', '4.3.2'),
('PyQt5', '5.15.10'),
('expat', '2.5.0'),
('libpng', '1.6.39'),
('libjpeg-turbo', '2.1.5.1'),
('GSL', '2.7'),
('GLib', '2.77.1'),
('zlib', '1.2.13'),
('freeglut', '3.4.0'),
('Pillow', '10.0.0'),
('matplotlib', '3.7.2'),
('SciPy-bundle', '2023.07'),
('Xvfb', '21.1.8'),
('FFmpeg', '6.0'), # required for running the program
]

# Make sure stuff does not get installed in .local
configopts = '-DSTANDARD_PYTHON_INSTALL=OFF '

# Changing permissions of some files
postinstallcmds = ['chmod a+x %(installdir)s/bin/afni_system_check.py ;']
postinstallcmds += ['chmod a+x %(installdir)s/bin/uber_subject.py ; ']
postinstallcmds += ['chmod a+x %(installdir)s/bin/init_user_dotfiles.py ; ']
# Copying apparently missing files over
postinstallcmds += ['cp -f %(start_dir)s/src/discoraj/ClusterExplorer/ClustExp_HistTable.py %(installdir)s/bin ; ']
postinstallcmds += ['cp -f %(start_dir)s/src/discoraj/ClusterExplorer/ClustExp_StatParse.py %(installdir)s/bin ; ']
postinstallcmds += ['cp -rf %(start_dir)s/src/scripts_for_r %(installdir)s/bin ; ']
postinstallcmds += ['cp -rf %(start_dir)s/src/R_scripts %(installdir)s/bin/scripts_for_r ; ']

sanity_check_commands = ["afni -help"]

sanity_check_paths = {
'files': ['bin/afni', 'lib/libgts.%s' % SHLIB_EXT, 'lib/libnifti2.%s' % SHLIB_EXT],
'dirs': ['include', 'share'],
}

modextrapaths = {'PATH': ['bin/scripts_for_r']}

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Thomas Hoffmann, EMBL Heidelberg, [email protected], 2024/1
easyblock = 'MakeCp'

name = 'AreTomo2'
version = '1.0.0'
versionsuffix = '-CUDA-%(cudaver)s'

homepage = 'https://github.com/czimaginginstitute/AreTomo2'

description = """AreTomo2, a multi-GPU accelerated software package that fully automates motion-
corrected marker-free tomographic alignment and reconstruction, now includes
robust GPU-accelerated CTF (Contrast Transfer Function) estimation in a single
package. AreTomo2 is part of our endeavor to build a fully-automated high-
throughput processing pipeline that enables real-time reconstruction of
tomograms in parallel with tomographic data collection. It strives to be fast
and accurate, as well as provides for easy integration into subtomogram
processing workflows by generating IMod compatible files containing alignment
and CTF parameters needed to bootstrap subtomogram averaging. AreTomo2 can also
be used for on-the-fly reconstruction of tomograms and CTF estimation in
parallel with tilt series collection, enabling real-time assessment of sample
quality and adjustment of collection parameters"""

toolchain = {'name': 'GCCcore', 'version': '12.3.0'}
toolchainopts = {'cstd': 'c++11'}

source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
patches = ['%(name)s-%(version)s_makefile.patch']
checksums = [
{'v1.0.0.tar.gz': '5518cd5d7bc13a6dbb6d9310b22c301e73a0c91dc059da403445d79ca0ff8892'},
{'AreTomo2-1.0.0_makefile.patch': '8595b2fc55e0b5e1bf7c077c93c09503b4e8f95123c6aaf0a5fbe44dda871c73'},
]

github_account = 'czimaginginstitute'

build_cmd = 'make exe -f makefile11 CUDAHOME=$CUDA_HOME CUDACC="%(cuda_cc_cmake)s"'

builddependencies = [
('binutils', '2.40')
]

dependencies = [
('CUDA', '12.1.1', '', SYSTEM),
]

files_to_copy = [(['%(name)s'], 'bin')]

sanity_check_paths = {
'files': ['bin/%(name)s'],
'dirs': ['bin'],
}

sanity_check_commands = ['%(name)s -h']

moduleclass = 'bio'
46 changes: 46 additions & 0 deletions easybuild/easyconfigs/a/AreTomo2/AreTomo2-1.0.0_makefile.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Thomas Hoffmann, EBML Heidelberg, [email protected], 2023/10
# allow to inject cuda compute capabilities and cfalgs
diff -ru AreTomo2-1.0.0/makefile11 AreTomo2-1.0.0_makefile/makefile11
--- AreTomo2-1.0.0/makefile11 2023-10-26 19:49:07.000000000 +0200
+++ AreTomo2-1.0.0_makefile/makefile11 2023-10-30 19:00:07.212270395 +0100
@@ -156,18 +156,21 @@
$(CUCPPS)
OBJS = $(patsubst %.cpp, %.o, $(SRCS))
#-------------------------------------
-CC = g++ -std=c++11
-CFLAG = -c -g -pthread -m64
+#CC = g++ -std=c++11
+CFLAG = -c -g -pthread -m64 $(CFLAGS)
NVCC = $(CUDAHOME)/bin/nvcc -std=c++11
-CUFLAG = -Xptxas -dlcm=ca -O2 \
- -gencode arch=compute_80,code=sm_80 \
- -gencode arch=compute_75,code=sm_75 \
- -gencode arch=compute_70,code=sm_70 \
- -gencode arch=compute_61,code=sm_61 \
- -gencode arch=compute_60,code=sm_60 \
- -gencode arch=compute_53,code=sm_53 \
- -gencode arch=compute_52,code=sm_52 \
- -gencode arch=compute_86,code=sm_86
+SPACE= ' '
+SEMI= ;
+GENCODES = $(foreach x,$(subst $(SEMI),$(SPACE),$(CUDACC)),-gencode arch=compute_$x,code=sm_$x)
+CUFLAG = -Xptxas -dlcm=ca -O2 $(GENCODES)
+# -gencode arch=compute_80,code=sm_80 \
+# -gencode arch=compute_75,code=sm_75 \
+# -gencode arch=compute_70,code=sm_70 \
+# -gencode arch=compute_61,code=sm_61 \
+# -gencode arch=compute_60,code=sm_60 \
+# -gencode arch=compute_53,code=sm_53 \
+# -gencode arch=compute_52,code=sm_52 \
+# -gencode arch=compute_86,code=sm_86
#------------------------------------------
cuda: $(CUCPPS)

@@ -183,6 +186,7 @@
-lcufft -lcudart -lcuda -lc -lm -lpthread \
-o AreTomo2
@echo AreTomo2 has been generated.
+ @echo used cuda gencodes: $(GENCODES)

%.o: %.cu
@$(NVCC) -c $(CUFLAG) -I$(PRJINC) -I$(CUPRJINC) $< -o $@
27 changes: 27 additions & 0 deletions easybuild/easyconfigs/a/ant/ant-1.10.14-Java-21.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
easyblock = 'PackedBinary'

name = 'ant'
version = '1.10.14'
versionsuffix = '-Java-%(javaver)s'

homepage = 'https://ant.apache.org/'
description = """Apache Ant is a Java library and command-line tool whose mission is to drive processes described in
build files as targets and extension points dependent upon each other. The main known usage of Ant is the build of
Java applications."""

toolchain = SYSTEM

source_urls = ['https://archive.apache.org/dist/ant/binaries/']
sources = ['apache-%(name)s-%(version)s-bin.tar.gz']
checksums = ['e2852fddaaddc1ab76a099ca0d7b2ee47a907b8a91a64f70f6aa9e6a3d0dd504']

dependencies = [('Java', '21')]

sanity_check_paths = {
'files': ['bin/ant', 'lib/ant.jar'],
'dirs': [],
}

modextravars = {'ANT_HOME': '%(installdir)s'}

moduleclass = 'devel'
30 changes: 30 additions & 0 deletions easybuild/easyconfigs/a/argtable/argtable-2.13-GCCcore-11.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
# Author: Pablo Escobar Lopez
# Swiss Institute of Bioinformatics
# Biozentrum - University of Basel
# Modified by: Adam Huffman
# The Francis Crick Institute

easyblock = 'ConfigureMake'

name = 'argtable'
version = '2.13'

homepage = 'https://argtable.sourceforge.io/'
description = """ Argtable is an ANSI C library for parsing GNU style
command line options with a minimum of fuss. """

toolchain = {'name': 'GCCcore', 'version': '11.2.0'}

source_urls = [SOURCEFORGE_SOURCE]
sources = ['%s%s.tar.gz' % (name, version.replace('.', '-'))]
checksums = ['8f77e8a7ced5301af6e22f47302fdbc3b1ff41f2b83c43c77ae5ca041771ddbf']

builddependencies = [('binutils', '2.37')]

sanity_check_paths = {
'files': ['include/argtable2.h', 'lib/libargtable2.%s' % SHLIB_EXT, 'lib/libargtable2.a'],
'dirs': ['share'],
}

moduleclass = 'lib'
36 changes: 36 additions & 0 deletions easybuild/easyconfigs/a/assimp/assimp-5.3.1-GCCcore-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Authors:: Richard Lawrence <[email protected]> - TAMU HPRC - https://hprc.tamu.edu

easyblock = 'CMakeMake'

name = 'assimp'
version = '5.3.1'

homepage = 'https://github.com/assimp/assimp'

description = """
Open Asset Import Library (assimp) is a library to import and export various
3d-model-formats including scene-post-processing to generate missing render data.
"""

toolchain = {'name': 'GCCcore', 'version': '13.2.0'}

source_urls = ['https://github.com/%(name)s/%(name)s/archive']
sources = ['v%(version)s.tar.gz']
checksums = ['a07666be71afe1ad4bc008c2336b7c688aca391271188eb9108d0c6db1be53f1']

builddependencies = [
('binutils', '2.40'),
('pkgconf', '2.0.3'),
('CMake', '3.27.6'),
('zlib', '1.2.13'),
]

# workaround bug with GCC13 https://github.com/assimp/assimp/issues/5315
configopts = '-DASSIMP_WARNINGS_AS_ERRORS=OFF '

sanity_check_paths = {
'files': ['include/assimp/types.h', 'lib/libassimp.%s' % SHLIB_EXT],
'dirs': [],
}

moduleclass = 'vis'
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
##
# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia
# Homepage: https://staff.flinders.edu.au/research/deep-thought
#
# Authors:: Robert Qiao <[email protected]>
# License:: Revised BSD
#
# Notes:: updated by Kenneth Hoste (HPC-UGent) for foss/2021b
##
# Updated: Petr Král (INUITS)

easyblock = 'PythonPackage'

name = 'biom-format'
version = '2.1.15'

homepage = 'https://biom-format.org'
description = """
The BIOM file format (canonically pronounced biome) is designed to be
a general-use format for representing biological sample by observation
contingency tables. BIOM is a recognized standard for the Earth Microbiome
Project and is a Genomics Standards Consortium supported project.
"""

toolchain = {'name': 'foss', 'version': '2023a'}
toolchainopts = {'usempi': True}

sources = [SOURCE_TAR_GZ]
checksums = ['3bda2096e663dc1cb6f90f51b394da0838b9be5164a44370c134ce5b3b2a4dd3']

dependencies = [
('Python', '3.11.3'),
('SciPy-bundle', '2023.07'),
('h5py', '3.9.0'),
]

sanity_check_paths = {
'files': ['bin/biom'],
'dirs': ['lib'],
}

options = {'modulename': 'biom'}

moduleclass = 'bio'
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
# Author: Pablo Escobar Lopez
# Swiss Institute of Bioinformatics
# Biozentrum - University of Basel
# Modified by Adam Huffman
# Francis Crick Institute

easyblock = 'ConfigureMake'

name = 'Clustal-Omega'
version = '1.2.4'

homepage = 'http://www.clustal.org/omega/'
description = """ Clustal Omega is a multiple sequence alignment
program for proteins. It produces biologically meaningful multiple
sequence alignments of divergent sequences. Evolutionary relationships
can be seen via viewing Cladograms or Phylograms """

toolchain = {'name': 'GCC', 'version': '11.2.0'}
toolchainopts = {'openmp': True}

source_urls = [homepage]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['8683d2286d663a46412c12a0c789e755e7fd77088fb3bc0342bb71667f05a3ee']

dependencies = [('argtable', '2.13')]

sanity_check_paths = {
'files': ['bin/clustalo'],
'dirs': [],
}

sanity_check_commands = ["clustalo --help"]

moduleclass = 'bio'
35 changes: 35 additions & 0 deletions easybuild/easyconfigs/c/contextily/contextily-1.5.0-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
easyblock = 'PythonBundle'

name = 'contextily'
version = '1.5.0'

homepage = 'https://contextily.readthedocs.io/'
description = """contextily is a small Python 3 package to retrieve tile maps from the internet.
It can add those tiles as basemap to matplotlib figures or write tile maps to
disk into geospatial raster files. Bounding boxes can be passed in both WGS84
(EPSG:4326) and Spheric Mercator (EPSG:3857)."""

toolchain = {'name': 'foss', 'version': '2023a'}

dependencies = [
('Python', '3.11.3'),
('Python-bundle-PyPI', '2023.06'),
('geopy', '2.4.1'),
('matplotlib', '3.7.2'),
('Pillow', '10.0.0'),
('rasterio', '1.3.9'),
]

exts_list = [
('xyzservices', '2023.7.0', {
'checksums': ['0ec928742227d6f5d4367ea7b457fcfed943429f4de2949b5b02a82cdf5569d6'],
}),
('mercantile', '1.2.1', {
'checksums': ['fa3c6db15daffd58454ac198b31887519a19caccee3f9d63d17ae7ff61b3b56b'],
}),
(name, version, {
'checksums': ['295b2d8097f8f6e80e1cb5e6e77538d1cdf729f827ec54eedc57f613c0a3ce0e'],
}),
]

moduleclass = 'geo'
Loading

0 comments on commit 87e8368

Please sign in to comment.