Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
…asyconfigs into 20230903170925_new_pr_OpenMPI415
  • Loading branch information
branfosj committed Sep 5, 2023
2 parents 5277b18 + 69a2897 commit 9fba2e5
Show file tree
Hide file tree
Showing 34 changed files with 1,465 additions and 0 deletions.
48 changes: 48 additions & 0 deletions easybuild/easyconfigs/a/Autoconf/Autoconf-2.71-GCCcore-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
easyblock = 'ConfigureMake'

name = 'Autoconf'
version = '2.71'

homepage = 'https://www.gnu.org/software/autoconf/'

description = """
Autoconf is an extensible package of M4 macros that produce shell scripts
to automatically configure software source code packages. These scripts can
adapt the packages to many kinds of UNIX-like systems without manual user
intervention. Autoconf creates a configuration script for a package from a
template file that lists the operating system features that the package can
use, in the form of M4 macro calls.
"""

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

source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['431075ad0bf529ef13cb41e9042c542381103e80015686222b8a9d4abef42a1c']

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

dependencies = [
('M4', '1.4.19'),
# non-standard Perl modules are required,
# see https://github.com/easybuilders/easybuild-easyconfigs/issues/1822
('Perl', '5.38.0'),
]

preconfigopts = "export PERL='/usr/bin/env perl' && "

sanity_check_paths = {
'files': ["bin/%s" % x
for x in ["autoconf", "autoheader", "autom4te", "autoreconf",
"autoscan", "autoupdate", "ifnames"]],
'dirs': [],
}

sanity_check_commands = [
"autoconf --help",
"autom4te --help",
]

moduleclass = 'devel'
39 changes: 39 additions & 0 deletions easybuild/easyconfigs/a/Automake/Automake-1.16.5-GCCcore-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
easyblock = 'ConfigureMake'

name = 'Automake'
version = '1.16.5'

homepage = 'https://www.gnu.org/software/automake/automake.html'

description = "Automake: GNU Standards-compliant Makefile generator"

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

source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['07bd24ad08a64bc17250ce09ec56e921d6343903943e99ccf63bbf0705e34605']

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

dependencies = [
('Autoconf', '2.71'),
# non-standard Perl modules are required,
# see https://github.com/easybuilders/easybuild-easyconfigs/issues/1822
('Perl', '5.38.0'),
]

preconfigopts = "export PERL='/usr/bin/env perl' && "

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

sanity_check_commands = [
"aclocal --help",
"automake --help",
]

moduleclass = 'devel'
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
easyblock = 'Bundle'

name = 'Autotools'
version = '20220317' # date of the most recent change

homepage = 'https://autotools.io'

description = """
This bundle collect the standard GNU build tools: Autoconf, Automake
and libtool
"""

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

dependencies = [
('Autoconf', '2.71'), # 20210128
('Automake', '1.16.5'), # 20211003
('libtool', '2.4.7'), # 20220317
]

# Pure bundle -- no need to specify 'binutils' used when building GCCcore
# toolchain as build dependency

moduleclass = 'devel'
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
easyblock = 'PythonPackage'

name = 'Biopython'
version = '1.76'
versionsuffix = '-Python-%(pyver)s'

homepage = 'https://www.biopython.org'
description = """Biopython is a set of freely available tools for biological
computation written in Python by an international team of developers. It is
a distributed collaborative effort to develop Python libraries and
applications which address the needs of current and future work in
bioinformatics. """

toolchain = {'name': 'foss', 'version': '2021b'}

source_urls = ['https://biopython.org/DIST']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['3873cb98dad5e28d5e3f2215a012565345a398d3d2c4eebf7cd701757b828c72']

dependencies = [
('Python', '2.7.18'),
('SciPy-bundle', '2021.10', versionsuffix),
]

download_dep_fail = True
use_pip = True
sanity_pip_check = True

# Run only tests that don't require internet connection
runtest = 'python setup.py test --offline'

sanity_check_paths = {
'files': [],
'dirs': ['lib/python%(pyshortver)s/site-packages/Bio',
'lib/python%(pyshortver)s/site-packages/BioSQL']
}

# extra check to ensure numpy dependency is available
sanity_check_commands = ["python -c 'import Bio.MarkovModel'"]

options = {'modulename': 'Bio'}

moduleclass = 'bio'
24 changes: 24 additions & 0 deletions easybuild/easyconfigs/c/CUDA/CUDA-12.2.2.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name = 'CUDA'
version = '12.2.2'
local_nv_version = '535.104.05'

homepage = 'https://developer.nvidia.com/cuda-toolkit'
description = """CUDA (formerly Compute Unified Device Architecture) is a parallel
computing platform and programming model created by NVIDIA and implemented by the
graphics processing units (GPUs) that they produce. CUDA gives developers access
to the virtual instruction set and memory of the parallel computational elements in CUDA GPUs."""

toolchain = SYSTEM

source_urls = ['https://developer.download.nvidia.com/compute/cuda/%(version)s/local_installers/']
sources = ['cuda_%%(version)s_%s_linux%%(cudaarch)s.run' % local_nv_version]
checksums = [{
'cuda_%%(version)s_%s_linux.run' % local_nv_version:
'2b39aae3e7618d9f59a3c8fa1f1bc61f29c0b0e0df75fb05076badb352952ef2',
'cuda_%%(version)s_%s_linux_ppc64le.run' % local_nv_version:
'18848278e7f2bd4b4481f5665633d7e3d46e9a562d175d5ff278218188b01342',
'cuda_%%(version)s_%s_linux_sbsa.run' % local_nv_version:
'4113a15e6b27a02638c72edeb5f89de4c9ea312febba12fc4cefff2edc882268'
}]

moduleclass = 'system'
41 changes: 41 additions & 0 deletions easybuild/easyconfigs/c/CatBoost/CatBoost-1.2-gfbf-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
easyblock = 'PythonBundle'

name = 'CatBoost'
version = '1.2'

homepage = 'https://catboost.ai'
description = """CatBoost is a high-performance open source library for gradient boosting on decision trees"""

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

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

dependencies = [
('Python', '3.11.3'),
('Clang', '16.0.6'),
('SciPy-bundle', '2023.07'),
('matplotlib', '3.7.2'),
('plotly.py', '5.16.0'),
('graphviz-python', '0.20.1'),
('Ninja', '1.11.1'),
]

use_pip = True
sanity_pip_check = True

exts_list = [
(name, version, {
'patches': ['%(name)s-%(version)s_disable-widget.patch'],
'source_urls': ['https://pypi.python.org/packages/source/c/catboost'],
'sources': ['catboost-%(version)s.tar.gz'],
'checksums': [
{'catboost-1.2.tar.gz': '39e53403727ecfbb48156773ef3006b4e71cc35ab49cc9a0cf044b474c34be0c'},
{'CatBoost-1.2_disable-widget.patch': '468be5b5e9eaf655d407a342b786bb419d4ceaeb9df5c753c256a8bd6d69f9df'},
],
}),
]

moduleclass = 'ai'
14 changes: 14 additions & 0 deletions easybuild/easyconfigs/c/CatBoost/CatBoost-1.2_disable-widget.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Disabling optional widget, as it requires `yarn`
Author: Denis Kristak (Inuits)
diff -ruN catboost-1.2_pypi_orig/setup.py catboost-1.2_pypi/setup.py
--- catboost-1.2_pypi_orig/setup.py 2023-08-08 13:41:49.501481901 +0200
+++ catboost-1.2_pypi/setup.py 2023-08-08 13:43:39.744105439 +0200
@@ -245,7 +245,7 @@

@staticmethod
def initialize_options(command):
- command.no_widget = False
+ command.no_widget = True
command.prebuilt_widget = False

@staticmethod
54 changes: 54 additions & 0 deletions easybuild/easyconfigs/c/ccache/ccache-4.8.3.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
# Authors:: Fotis Georgatos <fotis@cern.ch>
# License:: MIT/GPL

easyblock = 'CMakeNinja'

name = 'ccache'
version = '4.8.3'

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 = ['d59dd569ad2bbc826c0bc335c8ebd73e78ed0f2f40ba6b30069347e63585d9ef']

osdependencies = [('glibc-static', 'libc6-dev')]

local_gccver = '12.3.0'
builddependencies = [
('GCC', local_gccver),
('CMake', '3.26.3', '', ('GCCcore', local_gccver)),
('Ninja', '1.11.1', '', ('GCCcore', local_gccver)),
('hiredis', '1.2.0', '', ('GCCcore', local_gccver)),
('zstd', '1.5.5', '', ('GCCcore', local_gccver)),
]

# use BFD linker rather than default ld.gold (required on CentOS 8)
preconfigopts = 'LDFLAGS="-fuse-ld=bfd"'
configopts = ' '.join([
'-DENABLE_DOCUMENTATION=OFF',
'-DENABLE_IPO=ON',
# Link dependencies and binary statically
'-DCMAKE_EXE_LINKER_FLAGS="-static"',
'-DZSTD_LIBRARY="$EBROOTZSTD/lib/libzstd.a"',
'-DHIREDIS_LIBRARY="$EBROOTHIREDIS/lib/libhiredis.a"',
# Disable downloading dependencies
'-DZSTD_FROM_INTERNET=OFF -DHIREDIS_FROM_INTERNET=OFF',
])

sanity_check_paths = {
'files': ['bin/ccache'],
'dirs': []
}
sanity_check_commands = [
'ccache --help',
# Ensure that the binary does not depend on any shared library
'LC_ALL=C ldd $(which ccache) | grep -q "not a dynamic executable"',
]

moduleclass = 'tools'
64 changes: 64 additions & 0 deletions easybuild/easyconfigs/c/conan/conan-1.60.2-GCCcore-12.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
easyblock = 'PythonBundle'

name = 'conan'
version = '1.60.2' # have to stick to an older version because catboost is not compatible with newer one

homepage = 'https://conan.io'
description = "Decentralized, open-source (MIT), C/C++ package manager."

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

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

dependencies = [
('Python', '3.11.3'),
('PyYAML', '6.0'),
('tqdm', '4.66.1'),
('Python-bundle-PyPI', '2023.06'),
]

use_pip = True

exts_list = [
('bottle', '0.12.25', {
'checksums': ['e1a9c94970ae6d710b3fb4526294dfeb86f2cb4a81eff3a4b98dc40fb0e5e021'],
}),
('distro', '1.8.0', {
'checksums': ['02e111d1dc6a50abb8eed6bf31c3e48ed8b0830d1ea2a1b78c61765c2513fdd8'],
}),
('fasteners', '0.18', {
'checksums': ['cb7c13ef91e0c7e4fe4af38ecaf6b904ec3f5ce0dda06d34924b6b74b869d953'],
}),
('node-semver', '0.6.1', {
'modulename': 'semver',
'checksums': ['4016f7c1071b0493f18db69ea02d3763e98a633606d7c7beca811e53b5ac66b7'],
}),
('patch-ng', '1.17.4', {
'checksums': ['627abc5bd723c8b481e96849b9734b10065426224d4d22cd44137004ac0d4ace'],
}),
('pluginbase', '1.0.1', {
'checksums': ['ff6c33a98fce232e9c73841d787a643de574937069f0d18147028d70d7dee287'],
}),
('PyJWT', '2.8.0', {
'modulename': 'jwt',
'checksums': ['57e28d156e3d5c10088e0c68abb90bfac3df82b40a71bd0daa20c65ccd5c23de'],
}),
(name, version, {
'source_tmpl': '%(version)s.tar.gz',
'source_urls': ['https://github.com/conan-io/conan/archive/'],
'checksums': ['63dc6e92fc7f1d77fe08488bd78cd8a20fdddf454e55e1244107d1aec974377c'],
}),
]

sanity_check_paths = {
'files': ['bin/conan'],
'dirs': ['lib/python%(pyshortver)s/site-packages'],
}

sanity_check_commands = ["conan --help"]

sanity_pip_check = True

moduleclass = 'devel'
Loading

0 comments on commit 9fba2e5

Please sign in to comment.