Skip to content
Snippets Groups Projects
Commit d3e2fb77 authored by Alexandre Strube's avatar Alexandre Strube
Browse files

Merge branch 'sa-GCCcore' into '2022'

[GCCcore/11.2.0] core bundle

See merge request hps-public/easybuild-repository!853
parents 71914b83 6a6d184e
No related branches found
No related tags found
No related merge requests found
Showing
with 579 additions and 1 deletion
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': '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'
......@@ -29,4 +29,6 @@ sanity_check_paths = {
'dirs': [],
}
hidden = True
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"
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'
......@@ -28,4 +28,6 @@ sanity_check_paths = {
'dirs': []
}
hidden = True
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
"""
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'
......@@ -23,4 +23,6 @@ dependencies = [
# Pure bundle -- no need to specify 'binutils' used when building GCCcore
# toolchain as build dependency
hidden = True
moduleclass = 'devel'
easyblock = 'ConfigureMake'
name = 'cairo'
version = '1.16.0'
homepage = 'https://cairographics.org'
description = """Cairo is a 2D graphics library with support for multiple output devices.
Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers,
PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB"""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = ['https://cairographics.org/releases/']
sources = [SOURCE_TAR_XZ]
checksums = ['5e7b29b3f113ef870d1e3ecf8adf21f923396401604bda16d44be45e66052331']
builddependencies = [
('binutils', '2.37'),
('pkg-config', '0.29.2'),
]
dependencies = [
('bzip2', '1.0.8'),
('zlib', '1.2.11'),
('libpng', '1.6.37'),
('freetype', '2.11.0'),
('pixman', '0.40.0'),
('expat', '2.4.1'),
('GLib', '2.69.1'),
('X11', '20210802'),
]
# disable symbol lookup, which requires -lbfd, to avoid link issues with (non-PIC) libiberty.a provided by GCC
configopts = "--enable-symbol-lookup=no --enable-gobject=yes --enable-svg=yes --enable-tee=yes --enable-xlib-xcb "
sanity_check_paths = {
'files': ['bin/cairo-trace', 'lib/cairo/libcairo-trace.%s' % SHLIB_EXT, 'lib/cairo/libcairo-trace.a',
'lib/libcairo.a', 'lib/libcairo-gobject.a', 'lib/libcairo-script-interpreter.a',
'lib/libcairo.%s' % SHLIB_EXT, 'lib/libcairo-gobject.%s' % SHLIB_EXT,
'lib/libcairo-script-interpreter.%s' % SHLIB_EXT] +
['include/cairo/cairo%s.h' % x for x in ['', '-deprecated', '-features', '-ft', '-gobject', '-pdf', '-ps',
'-script', '-script-interpreter', '-svg', '-version', '-xcb',
'-xlib', '-xlib-xrender']],
'dirs': ['lib/pkgconfig'],
}
moduleclass = 'vis'
easyblock = 'ConfigureMake'
name = 'DBus'
version = '1.13.18'
homepage = 'https://dbus.freedesktop.org/'
description = """
D-Bus is a message bus system, a simple way for applications to talk
to one another. In addition to interprocess communication, D-Bus helps
coordinate process lifecycle; it makes it simple and reliable to code
a "single instance" application or daemon, and to launch applications
and daemons on demand when their services are needed.
"""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
toolchainopts = {'pic': True}
source_urls = ['https://dbus.freedesktop.org/releases/dbus']
sources = [SOURCELOWER_TAR_XZ]
checksums = ['8078f5c25e34ab907ce06905d969dc8ef0ccbec367e1e1707c7ecf8460f4254e']
builddependencies = [
('binutils', '2.37'),
('pkg-config', '0.29.2'),
]
dependencies = [
('expat', '2.4.1'),
]
configopts = '--without-systemdsystemunitdir'
sanity_check_paths = {
'files': ['bin/dbus-%s' % x for x in
['cleanup-sockets', 'daemon', 'launch', 'monitor',
'run-session', 'send', 'uuidgen']] +
['lib/libdbus-1.%s' % x for x in ['a', SHLIB_EXT]],
'dirs': ['include', 'share'],
}
moduleclass = 'devel'
name = 'Doxygen'
version = '1.9.1'
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.
"""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [SOURCEFORGE_SOURCE]
sources = ['%(namelower)s-%(version)s.src.tar.gz']
checksums = ['67aeae1be4e1565519898f46f1f7092f1973cce8a767e93101ee0111717091d1']
builddependencies = [
('binutils', '2.37'),
('Bison', '3.7.6'),
('CMake', '3.21.1'),
('flex', '2.6.4'),
('pkg-config', '0.29.2'),
]
dependencies = [('libiconv', '1.16')]
configopts = "-DICONV_DIR=$EBROOTLIBICONV -DICONV_IN_GLIBC=OFF"
moduleclass = 'devel'
easyblock = 'CMakeMake'
name = 'double-conversion'
version = '3.1.5'
homepage = 'https://github.com/google/double-conversion'
description = "Efficient binary-decimal and decimal-binary conversion routines for IEEE doubles."
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = ['https://github.com/google/%(name)s/archive']
sources = ['v%(version)s.tar.gz']
checksums = ['a63ecb93182134ba4293fd5f22d6e08ca417caafa244afaa751cbfddf6415b13']
builddependencies = [
('binutils', '2.37'),
('CMake', '3.21.1'),
]
separate_build_dir = True
build_type = 'Release'
# Build static lib, static lib with -fPIC and shared lib
configopts = [
'',
'-DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_STATIC_LIBRARY_SUFFIX_CXX=_pic.a',
'-DBUILD_SHARED_LIBS=ON'
]
sanity_check_paths = {
'files': ['include/double-conversion/%s.h' % h for h in ['bignum', 'cached-powers', 'diy-fp', 'double-conversion',
'fast-dtoa', 'fixed-dtoa', 'ieee', 'strtod', 'utils']] +
['lib/libdouble-conversion.%s' % e for e in ['a', SHLIB_EXT]] +
['lib/libdouble-conversion_pic.a'],
'dirs': [],
}
moduleclass = 'lib'
name = 'Eigen'
version = '3.3.9'
homepage = 'https://eigen.tuxfamily.org'
description = """Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers,
and related algorithms."""
# only includes header files, but requires CMake so using non-system toolchain
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = ['https://gitlab.com/libeigen/eigen/-/archive/%(version)s']
sources = [SOURCELOWER_TAR_BZ2]
checksums = ['0fa5cafe78f66d2b501b43016858070d52ba47bd9b1016b0165a7b8e04675677']
# using CMake built with GCCcore to avoid relying on the system compiler to build it
builddependencies = [
('binutils', '2.37'), # to make CMake compiler health check pass on old systems
('CMake', '3.21.1'),
]
moduleclass = 'math'
easyblock = 'ConfigureMake'
name = 'FriBidi'
version = '1.0.10'
homepage = 'https://github.com/fribidi/fribidi'
description = """
The Free Implementation of the Unicode Bidirectional Algorithm.
"""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [
'https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s']
sources = [SOURCELOWER_TAR_XZ]
checksums = ['7f1c687c7831499bcacae5e8675945a39bacbad16ecaa945e9454a32df653c01']
builddependencies = [
('Autotools', '20210726'),
('binutils', '2.37'),
('pkg-config', '0.29.2'),
]
configopts = '--disable-docs'
sanity_check_paths = {
'files': ['bin/%(namelower)s', 'include/%(namelower)s/%(namelower)s.h',
'lib/lib%%(namelower)s.%s' % SHLIB_EXT],
'dirs': []
}
moduleclass = 'lang'
easyblock = 'ConfigureMake'
name = 'GLPK'
version = '5.0'
homepage = 'https://www.gnu.org/software/glpk/'
description = """The GLPK (GNU Linear Programming Kit) package is intended for
solving large-scale linear programming (LP),
mixed integer programming (MIP), and other related problems.
It is a set of routines written in ANSI C
and organized in the form of a callable library."""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['4a1013eebb50f728fc601bdd833b0b2870333c3b3e5a816eeba921d95bec6f15']
builddependencies = [('binutils', '2.37')]
dependencies = [('GMP', '6.2.1')]
configopts = "--with-gmp"
sanity_check_paths = {
'files': ['bin/glpsol', 'include/glpk.h'] +
['lib/libglpk.%s' % x for x in [SHLIB_EXT, 'a']],
'dirs': [],
}
moduleclass = 'tools'
easyblock = 'MesonNinja'
name = 'GLib'
version = '2.69.1'
homepage = 'https://www.gtk.org/'
description = """GLib is one of the base libraries of the GTK+ project"""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
toolchainopts = {'pic': True}
source_urls = [FTPGNOME_SOURCE]
sources = [SOURCELOWER_TAR_XZ]
checksums = ['f92f34057a091fc8638d91f10cece842cb8618e9a1090b0ddb19cc15a21bf39c']
builddependencies = [
# Python is required for building against GLib, at least when
# gdbus-codegen or one of the other python scripts are used.
# Since Meson 0.50 and later are Python >=3.5 only we can't build
# Python specific versions of GLib that uses Python 2.x
# thus Python should not be a runtime dependency for GLib.
# Packages that use GLib should either have an explicit
# (build)dependency on Python or it will use the system version
# EasyBuild itself uses.
('Python', '3.9.6'),
('Meson', '0.58.2'),
('Ninja', '1.10.2'),
('binutils', '2.37'),
('pkg-config', '0.29.2'),
]
dependencies = [
('libffi', '3.4.2'),
('gettext', '0.21'),
('libxml2', '2.9.10'),
('PCRE', '8.45'),
('util-linux', '2.37'),
]
# avoid using hardcoded path to Python binary in build step
preconfigopts = "export PYTHON=python && "
configopts = "--buildtype=release --default-library=both "
fix_python_shebang_for = ['bin/*']
sanity_check_paths = {
'files': ['lib/libglib-%(version_major)s.0.a', 'lib/libglib-%%(version_major)s.0.%s' % SHLIB_EXT],
'dirs': ['bin', 'include'],
}
moduleclass = 'vis'
......@@ -17,7 +17,7 @@ sources = [SOURCELOWER_TAR_BZ2]
checksums = ['eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c']
builddependencies = [
('Autotools', '20210726', '', SYSTEM),
('Autotools', '20210726'),
('binutils', '2.37'),
]
......
easyblock = 'ConfigureMake'
name = 'Ghostscript'
version = '9.54.0'
homepage = 'https://ghostscript.com'
description = """Ghostscript is a versatile processor for PostScript data with the ability to render PostScript to
different targets. It used to be part of the cups printing stack, but is no longer used for that."""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
toolchainopts = {'pic': True}
source_urls = [
'https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs%s/' % version.replace(
'.', ''),
]
sources = [SOURCELOWER_TAR_GZ]
checksums = ['0646bb97f6f4d10a763f4919c54fa28b4fbdd3dff8e7de3410431c81762cade0']
builddependencies = [
('binutils', '2.37'),
('pkg-config', '0.29.2'),
]
dependencies = [
('zlib', '1.2.11'),
('libpng', '1.6.37'),
('freetype', '2.11.0'),
('libjpeg-turbo', '2.0.6'),
('expat', '2.4.1'),
('GLib', '2.69.1'),
('cairo', '1.16.0'),
('LibTIFF', '4.3.0'),
]
# Do not use local copies of zlib, jpeg, freetype, and png
preconfigopts = "mv zlib zlib.no && mv jpeg jpeg.no && mv freetype freetype.no && mv libpng libpng.no && "
preconfigopts += 'export LIBS="$LIBS -L$EBROOTZLIB/lib -lz" && '
configopts = "--with-system-libtiff --enable-dynamic"
# Avoid race condition in build if too much parallelism is used
maxparallel = 4
postinstallcmds = [
# build and install shared libs
"make so && make soinstall",
# install header files
"mkdir -p %(installdir)s/include/ghostscript",
"install -v -m644 base/*.h %(installdir)s/include/ghostscript",
"install -v -m644 psi/*.h %(installdir)s/include/ghostscript",
]
sanity_check_paths = {
'files': ['bin/gs', 'lib/libgs.%s' % SHLIB_EXT],
'dirs': ['lib/ghostscript', 'include/ghostscript', 'share/man'],
}
moduleclass = 'tools'
easyblock = 'ConfigureMake'
name = 'giflib'
version = '5.2.1'
homepage = 'http://giflib.sourceforge.net/'
description = """giflib is a library for reading and writing gif images.
It is API and ABI compatible with libungif which was in wide use while
the LZW compression algorithm was patented."""
source_urls = [SOURCEFORGE_SOURCE]
sources = [SOURCE_TAR_GZ]
checksums = ['31da5562f44c5f15d63340a09a4fd62b48c45620cd302f77a6d9acf0077879bd']
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
builddependencies = [('binutils', '2.37')]
skipsteps = ['configure']
installopts = 'PREFIX=%(installdir)s'
sanity_check_paths = {
'files': ['bin/giftool'],
'dirs': []
}
moduleclass = 'lib'
easyblock = 'ConfigureMake'
name = 'gzip'
version = '1.10'
homepage = 'https://www.gnu.org/software/gzip/'
description = "gzip (GNU zip) is a popular data compression program as a replacement for compress"
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_GZ]
checksums = ['c91f74430bf7bc20402e1f657d0b252cb80aa66ba333a25704512af346633c68']
builddependencies = [('binutils', '2.37')]
sanity_check_paths = {
'files': ["bin/gunzip", "bin/gzip", "bin/uncompress"],
'dirs': [],
}
sanity_check_commands = [True, ('gzip', '--version')]
moduleclass = 'tools'
easyblock = 'ConfigureMake'
name = 'LAME'
version = '3.100'
homepage = 'http://lame.sourceforge.net/'
description = """LAME is a high quality MPEG Audio Layer III (MP3) encoder licensed under the LGPL."""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = [
'https://sourceforge.net/projects/lame/files/lame/%(version_major_minor)s/']
sources = [SOURCELOWER_TAR_GZ]
patches = ['LAME-3.99.5_check-tgetent.patch']
checksums = [
'ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175b1da1e', # lame-3.100.tar.gz
# LAME-3.99.5_check-tgetent.patch
'8bfb6a73f2db1511baf90fbd7174f11043ec4b592a4917edc30ccfb53bf37256',
]
builddependencies = [
('binutils', '2.37'),
('Autotools', '20210726'),
]
dependencies = [('ncurses', '6.2')]
preconfigopts = "autoconf && "
# configure is broken: add workaround to find libncurses...
configure_cmd_prefix = "FRONTEND_LDADD='-L${EBROOTNCURSES}/lib' "
sanity_check_paths = {
'files': ['bin/lame', 'include/lame/lame.h', 'lib/libmp3lame.%s' % SHLIB_EXT],
'dirs': [],
}
moduleclass = 'data'
easyblock = 'MakeCp'
name = 'LMDB'
version = '0.9.29'
homepage = 'https://symas.com/lmdb'
description = """LMDB is a fast, memory-efficient database. With memory-mapped files, it has the read performance
of a pure in-memory database while retaining the persistence of standard disk-based databases."""
toolchain = {'name': 'GCCcore', 'version': '11.2.0'}
source_urls = ['https://github.com/LMDB/lmdb/archive/']
sources = ['%(name)s_%(version)s.tar.gz']
checksums = ['22054926b426c66d8f2bc22071365df6e35f3aacf19ad943bc6167d4cae3bebb']
builddependencies = [('binutils', '2.37')]
buildopts = 'CC="$CC" OPT="$CFLAGS"'
runtest = 'test'
files_to_copy = [
(['lmdb.h', 'midl.h'], 'include'),
(['mdb_copy', 'mdb_dump', 'mdb_load', 'mdb_stat'], 'bin'),
(['liblmdb.a', 'liblmdb.%s' % SHLIB_EXT], 'lib'),
]
sanity_check_paths = {
'files': ['bin/mdb_copy', 'bin/mdb_dump', 'bin/mdb_load', 'bin/mdb_stat', 'include/lmdb.h',
'include/midl.h', 'lib/liblmdb.a', 'lib/liblmdb.%s' % SHLIB_EXT],
'dirs': [],
}
moduleclass = 'lib'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment