Skip to content
Snippets Groups Projects
Commit 332371b9 authored by Sebastian Achilles's avatar Sebastian Achilles
Browse files

add easyconfig for gompi/2022

parent a3a045af
No related branches found
No related tags found
No related merge requests found
Showing
with 677 additions and 0 deletions
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.
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['431075ad0bf529ef13cb41e9042c542381103e80015686222b8a9d4abef42a1c']
builddependencies = [
('binutils', '2.37'),
# non-standard Perl modules are required,
# see https://github.com/easybuilders/easybuild-easyconfigs/issues/1822
('Perl', '5.34.0'),
]
dependencies = [
('M4', '1.4.19'),
]
sanity_check_paths = {
'files': ["bin/%s" % x
for x in ["autoconf", "autoheader", "autom4te", "autoreconf",
"autoscan", "autoupdate", "ifnames"]],
'dirs': [],
}
moduleclass = 'devel'
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.
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = SYSTEM
source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_XZ]
checksums = ['f14c83cfebcc9427f2c3cea7258bd90df972d92eb26752da4ddad81c87a0faa4']
dependencies = [
('M4', '1.4.19'),
]
sanity_check_paths = {
'files': ["bin/%s" % x for x in ["autoconf", "autoheader", "autom4te", "autoreconf", "autoscan",
"autoupdate", "ifnames"]],
'dirs': [],
}
moduleclass = 'devel'
easyblock = 'ConfigureMake'
name = 'Automake'
version = '1.16.4'
homepage = 'https://www.gnu.org/software/automake/automake.html'
description = "Automake: GNU Standards-compliant Makefile generator"
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['8a0f0be7aaae2efa3a68482af28e5872d8830b9813a6a932a2571eac63ca1794']
builddependencies = [
('binutils', '2.37'),
# non-standard Perl modules are required,
# see https://github.com/easybuilders/easybuild-easyconfigs/issues/1822
('Perl', '5.34.0'),
]
dependencies = [
('Autoconf', '2.71'),
]
sanity_check_paths = {
'files': ['bin/automake', 'bin/aclocal'],
'dirs': []
}
moduleclass = 'devel'
easyblock = 'ConfigureMake'
name = 'Automake'
version = '1.16.4'
homepage = 'https://www.gnu.org/software/automake/automake.html'
description = "Automake: GNU Standards-compliant Makefile generator"
site_contacts = 'sc@fz-juelich.de'
toolchain = SYSTEM
source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['8a0f0be7aaae2efa3a68482af28e5872d8830b9813a6a932a2571eac63ca1794']
builddependencies = [
('binutils', '2.37'),
]
dependencies = [
('Autoconf', '2.71'),
]
sanity_check_paths = {
'files': ['bin/automake', 'bin/aclocal'],
'dirs': []
}
moduleclass = 'devel'
easyblock = 'Bundle'
name = 'Autotools'
version = '20210726' # date of the most recent change
homepage = 'https://autotools.io'
description = """
This bundle collect the standard GNU build tools: Autoconf, Automake
and libtool
"""
site_contacts = 'a.strube@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
dependencies = [
('Autoconf', '2.71'), # 20210128
('Automake', '1.16.4'), # 20210726
('libtool', '2.4.6'), # 20150215
]
# Pure bundle -- no need to specify 'binutils' used when building GCCcore
# toolchain as build dependency
moduleclass = 'devel'
easyblock = 'Bundle'
name = 'Autotools'
version = '20210726' # date of the most recent change
homepage = 'https://autotools.io'
description = """
This bundle collect the standard GNU build tools: Autoconf, Automake
and libtool
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = SYSTEM
dependencies = [
('Autoconf', '2.71'), # 20210128
('Automake', '1.16.4'), # 20210726
('libtool', '2.4.6'), # 20150215
]
# Pure bundle -- no need to specify 'binutils' used when building GCCcore
# toolchain as build dependency
moduleclass = 'devel'
name = 'DB'
version = '18.1.40'
homepage = 'https://www.oracle.com/technetwork/products/berkeleydb'
description = """Berkeley DB enables the development of custom data management
solutions, without the overhead traditionally associated with such custom
projects."""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
# use http to allow auto-downloading...
source_urls = ['http://download.oracle.com/berkeley-db/']
sources = [SOURCELOWER_TAR_GZ]
patches = ['%(name)s-%(version)s_fix_doc_install.patch']
checksums = [
'0cecb2ef0c67b166de93732769abdeba0555086d51de1090df325e18ee8da9c8', # db-18.1.40.tar.gz
'441f48568156f72f02a8662998d293cc7edad687604b4f8af722f21c6db2a52d', # DB-18.1.40_fix_doc_install.patch
]
builddependencies = [('binutils', '2.37')]
dependencies = [('OpenSSL', '1.1', '', True)]
sanity_check_paths = {
'files': ['bin/db_%s' % x for x in ['archive', 'checkpoint', 'convert', 'deadlock', 'dump', 'hotbackup',
'load', 'log_verify', 'printlog', 'recover', 'replicate', 'stat',
'tuner', 'upgrade', 'verify']] +
['include/db.h', 'lib/libdb.a', 'lib/libdb.%s' % SHLIB_EXT],
'dirs': [],
}
moduleclass = 'tools'
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)
"""
site_contacts = 'a.strube@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '10.3.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/libexpat/libexpat/releases/download/R_%s/' %
version.replace('.', '_')]
sources = [SOURCE_TAR_BZ2]
checksums = ['f1063084dc4302a427dabcca499c8312b3a32a29b7d2506653ecc8f950a9a237']
builddependencies = [('binutils', '2.36.1')]
# 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'
easyblock = 'ConfigureMake'
name = 'expat'
version = '2.2.9'
homepage = 'http://expat.sourceforge.net/'
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)"""
site_contacts = 'a.strube@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '9.3.0'}
toolchainopts = {'pic': True}
sources = [SOURCELOWER_TAR_BZ2]
source_urls = [SOURCEFORGE_SOURCE]
builddependencies = [
('binutils', '2.34'),
]
moduleclass = 'tools'
easyblock = 'ConfigureMake'
name = 'expat'
version = '2.4.1'
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)
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/libexpat/libexpat/releases/download/R_%s/' %
version.replace('.', '_')]
sources = [SOURCE_TAR_BZ2]
checksums = ['2f9b6a580b94577b150a7d5617ad4643a4301a6616ff459307df3e225bcfbf40']
builddependencies = [('binutils', '2.37')]
# 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'
easyblock = 'ConfigureMake'
name = 'gettext'
version = '0.21'
homepage = 'https://www.gnu.org/software/gettext/'
description = """GNU 'gettext' is an important step for the GNU Translation Project, as it is an asset on which we may
build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools
and documentation"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_GZ]
checksums = ['c77d0da3102aec9c07f43671e60611ebff89a996ef159497ce8e59d075786b12']
builddependencies = [('binutils', '2.37')]
dependencies = [
('libxml2', '2.9.10'),
('ncurses', '6.2'),
]
configopts = '--without-emacs --with-libxml2-prefix=$EBROOTLIBXML2'
sanity_check_paths = {
'files': ['bin/gettext', 'lib/libasprintf.a', 'lib/libasprintf.%s' % SHLIB_EXT,
'lib/libgettextpo.a', 'lib/libgettextpo.%s' % SHLIB_EXT],
'dirs': ['include'],
}
moduleclass = 'tools'
easyblock = 'ConfigureMake'
name = 'gettext'
version = '0.21'
homepage = 'https://www.gnu.org/software/gettext/'
description = """GNU 'gettext' is an important step for the GNU Translation Project, as it is an asset on which we may
build many other steps. This package offers to programmers, translators, and even users, a well integrated set of tools
and documentation"""
site_contacts = 'sc@fz-juelich.de'
# This is a basic stripped down version of gettext without any
# dependencies on other packages used as initial builddep for XZ
# It is the first step in the cyclic dependency chain of
# XZ -> libxml2 -> gettext -> XZ
toolchain = SYSTEM
source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_GZ]
checksums = ['c77d0da3102aec9c07f43671e60611ebff89a996ef159497ce8e59d075786b12']
builddependencies = [
('binutils', '2.37'),
]
dependencies = [
('ncurses', '6.2'),
]
configopts = '--without-emacs --with-included-libxml --without-xz --without-bzip2'
sanity_check_paths = {
'files': ['bin/gettext', 'lib/libasprintf.a', 'lib/libasprintf.%s' % SHLIB_EXT,
'lib/libgettextpo.a', 'lib/libgettextpo.%s' % SHLIB_EXT],
'dirs': ['include'],
}
moduleclass = 'tools'
easyblock = 'ConfigureMake'
name = 'groff'
version = '1.22.4'
homepage = 'https://www.gnu.org/software/groff'
description = """Groff (GNU troff) is a typesetting system that reads plain text mixed with formatting commands
and produces formatted output."""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = ['https://ftp.gnu.org/gnu/groff']
sources = [SOURCE_TAR_GZ]
checksums = ['e78e7b4cb7dec310849004fa88847c44701e8d133b5d4c13057d876c1bad0293']
builddependencies = [
('binutils', '2.37'),
]
configopts = '--with-doc=no'
sanity_check_paths = {
'files': ['bin/groff', 'bin/nroff', 'bin/troff'],
'dirs': ['lib/groff', 'share'],
}
moduleclass = 'tools'
easyblock = 'ConfigureMake'
name = 'hwloc'
version = '2.5.0'
homepage = 'https://www.open-mpi.org/projects/hwloc/'
description = """
The Portable Hardware Locality (hwloc) software package provides a portable
abstraction (across OS, versions, architectures, ...) of the hierarchical
topology of modern architectures, including NUMA memory nodes, sockets, shared
caches, cores and simultaneous multithreading. It also gathers various system
attributes such as cache and memory information as well as the locality of I/O
devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily
aims at helping applications with gathering information about modern computing
hardware so as to exploit it accordingly and efficiently.
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
# need to build with -fno-tree-vectorize to avoid segfaulting lstopo on Intel Skylake
# cfr. https://github.com/open-mpi/hwloc/issues/315
toolchainopts = {'vectorize': False}
source_urls = ['https://www.open-mpi.org/software/hwloc/v%(version_major_minor)s/downloads/']
sources = [SOURCE_TAR_GZ]
checksums = ['38aa8102faec302791f6b4f0d23960a3ffa25af3af6af006c64dbecac23f852c']
builddependencies = [
('binutils', '2.37'),
]
dependencies = [
('numactl', '2.0.14', '', SYSTEM),
('libxml2', '2.9.10'),
('libpciaccess', '0.16'),
('CUDA', '11.4', '', SYSTEM),
]
configopts = "--enable-libnuma=$EBROOTNUMACTL --enable-cuda --enable-nvml --enable-opencl "
configopts += "--disable-cairo --disable-gl --disable-libudev "
sanity_check_paths = {
'files': ['bin/lstopo', 'include/hwloc/linux.h',
'lib/libhwloc.%s' % SHLIB_EXT],
'dirs': ['share/man/man3'],
}
sanity_check_commands = ['lstopo']
modluafooter = '''
add_property("arch","gpu")
'''
moduleclass = 'system'
easyblock = 'ConfigureMake'
name = 'libevent'
version = '2.1.12'
homepage = 'https://libevent.org/'
description = """
The libevent API provides a mechanism to execute a callback function when
a specific event occurs on a file descriptor or after a timeout has been
reached. Furthermore, libevent also support callbacks due to signals or
regular timeouts.
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/%(name)s/%(name)s/releases/download/release-%(version)s-stable/']
sources = ['%(name)s-%(version)s-stable.tar.gz']
checksums = ['92e6de1be9ec176428fd2367677e61ceffc2ee1cb119035037a27d346b0403bb']
builddependencies = [
('binutils', '2.37'),
('pkg-config', '0.29.2'),
]
dependencies = [
('zlib', '1.2.11'),
('OpenSSL', '1.1', '', SYSTEM),
]
sanity_check_paths = {
'files': ['bin/event_rpcgen.py', 'include/event.h', 'include/event2/event.h',
'lib/libevent_core.%s' % SHLIB_EXT, 'lib/pkgconfig/libevent.pc'],
'dirs': [],
}
moduleclass = 'lib'
easyblock = 'ConfigureMake'
name = 'libpciaccess'
version = '0.16'
homepage = 'https://cgit.freedesktop.org/xorg/lib/libpciaccess/'
description = """Generic PCI access library."""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = ['https://www.x.org/releases/individual/lib/']
sources = [SOURCE_TAR_GZ]
checksums = ['84413553994aef0070cf420050aa5c0a51b1956b404920e21b81e96db6a61a27']
builddependencies = [
('binutils', '2.37'),
('Autotools', '20210726'),
('xorg-macros', '1.19.3'),
]
sanity_check_paths = {
'files': ['include/pciaccess.h', 'lib/libpciaccess.a'],
'dirs': ['lib/pkgconfig'],
}
moduleclass = 'system'
easyblock = 'ConfigureMake'
name = 'libreadline'
version = '8.1'
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.
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
toolchainopts = {'pic': True}
source_urls = ['https://ftp.gnu.org/gnu/readline']
sources = ['readline-%(version)s.tar.gz']
checksums = ['f8ceb4ee131e3232226a17f51b164afc46cd0b9e6cef344be87c65962cb82b02']
builddependencies = [
('binutils', '2.37'),
]
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'
easyblock = 'ConfigureMake'
name = 'libtool'
version = '2.4.6'
homepage = 'https://www.gnu.org/software/libtool'
description = """
GNU libtool is a generic library support script. Libtool hides the complexity
of using shared libraries behind a consistent, portable interface.
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3']
builddependencies = [
('binutils', '2.37'),
]
dependencies = [
('M4', '1.4.19'),
]
sanity_check_paths = {
'files': ['bin/libtool', 'bin/libtoolize', 'lib/libltdl.%s' % SHLIB_EXT],
'dirs': ['include/libltdl', 'share/libtool/loaders', 'share/man/man1'],
}
moduleclass = 'lib'
easyblock = 'ConfigureMake'
name = 'libtool'
version = '2.4.6'
homepage = 'http://www.gnu.org/software/libtool'
description = """GNU libtool is a generic library support script. Libtool hides the complexity of using shared libraries
behind a consistent, portable interface.
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = SYSTEM
sources = [SOURCELOWER_TAR_GZ]
source_urls = [GNU_SOURCE]
builddependencies = [
('binutils', '2.37')
]
dependencies = [
('M4', '1.4.19'),
]
moduleclass = 'lib'
name = 'libxml2'
version = '2.9.10'
homepage = 'http://xmlsoft.org/'
description = """
Libxml2 is the XML C parser and toolchain developed for the Gnome project
(but usable outside of the Gnome platform).
"""
site_contacts = 'sc@fz-juelich.de'
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
toolchainopts = {'pic': True}
source_urls = [
'http://xmlsoft.org/sources/',
'http://xmlsoft.org/sources/old/'
]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['aafee193ffb8fe0c82d4afef6ef91972cbaf5feea100edc2f262750611b4be1f']
builddependencies = [('binutils', '2.37')]
dependencies = [
('XZ', '5.2.5'),
('zlib', '1.2.11'),
]
moduleclass = 'lib'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment