Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

{devel,lib}[GCC/13.2.0] poppler v24.04.0, texlive v20230313 #20406

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
easyblock = 'Bundle'

name = 'gnupg-bundle'
version = '20240306'

homepage = 'https://www.gnupg.org/software/index.html'
description = """GnuPG — The Universal Crypto Engine"""

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

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

default_easyblock = 'ConfigureMake'

default_component_specs = {
'sources': [SOURCE_TAR_BZ2],
'start_dir': '%(name)s-%(version)s',
}

components = [
('libgpg-error', '1.48', { # 2024-02-23
'source_urls': ['https://www.gnupg.org/ftp/gcrypt/libgpg-error/'],
'checksums': ['89ce1ae893e122924b858de84dc4f67aae29ffa610ebf668d5aa539045663d6f'],
}),
('libassuan', '2.5.7', { # 2024-03-06
'source_urls': ['https://www.gnupg.org/ftp/gcrypt/libassuan/'],
'checksums': ['0103081ffc27838a2e50479153ca105e873d3d65d8a9593282e9c94c7e6afb76'],
}),
('libgcrypt', '1.10.3', { # 2023-11-14
'source_urls': ['https://www.gnupg.org/ftp/gcrypt/libgcrypt/'],
'checksums': ['8b0870897ac5ac67ded568dcfadf45969cfa8a6beb0fd60af2a9eadc2a3272aa'],
}),
('libksba', '1.6.6', { # 2024-02-23
'source_urls': ['https://www.gnupg.org/ftp/gcrypt/libksba/'],
'checksums': ['5dec033d211559338838c0c4957c73dfdc3ee86f73977d6279640c9cd08ce6a4'],
}),
('npth', '1.7', { # 2024-02-23
'source_urls': ['https://www.gnupg.org/ftp/gcrypt/npth/'],
'checksums': ['8589f56937b75ce33b28d312fccbf302b3b71ec3f3945fde6aaa74027914ad05'],
}),
('gnupg', '2.4.5', { # 2024-03-07
'source_urls': ['https://www.gnupg.org/ftp/gcrypt/gnupg/'],
'checksums': ['f68f7d75d06cb1635c336d34d844af97436c3f64ea14bcb7c869782f96f44277'],
}),
('gpgme', '1.23.2', { # 2023-11-28
'source_urls': ['https://www.gnupg.org/ftp/gcrypt/gpgme/'],
'checksums': ['9499e8b1f33cccb6815527a1bc16049d35a6198a6c5fae0185f2bd561bce5224'],
}),
]

sanity_check_paths = {
'files': [
'bin/gpgrt-config',
'bin/libassuan-config',
'bin/libgcrypt-config',
'include/gpg-error.h',
'include/gcrypt.h',
'include/gpgrt.h',
'include/gpgme.h',
'include/npth.h',
'include/assuan.h',
],
'dirs': ['lib/pkgconfig'],
}

moduleclass = 'system'
60 changes: 60 additions & 0 deletions easybuild/easyconfigs/p/poppler/poppler-24.04.0-GCC-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
easyblock = 'Bundle'

name = 'poppler'
version = '24.04.0'

homepage = 'https://poppler.freedesktop.org'
description = "Poppler is a PDF rendering library"

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

builddependencies = [
('CMake', '3.27.6'),
('pkgconf', '2.0.3'),
('Python', '3.11.5'),
]

dependencies = [
('freetype', '2.13.2'),
('fontconfig', '2.14.2'),
('libjpeg-turbo', '3.0.1'),
('libpng', '1.6.40'),
('NSS', '3.94'),
('LibTIFF', '4.6.0'),
('Qt6', '6.6.3'),
('Boost', '1.83.0'),
('cairo', '1.18.0'),
('OpenJPEG', '2.5.0'),
('zlib', '1.2.13'),
('gnupg-bundle', '20240306'),
]

default_easyblock = 'CMakeMake'

default_component_specs = {
'start_dir': '%(name)s-%(version)s',
}

components = [
(name, version, {
'source_urls': ['https://poppler.freedesktop.org/'],
'sources': [SOURCE_TAR_XZ],
'checksums': ['1e804ec565acf7126eb2e9bb3b56422ab2039f7e05863a5dfabdd1ffd1bb77a7'],
'configopts': "-DENABLE_BOOST=ON -DENABLE_QT5=OFF -DENABLE_LCMS=OFF",
}),
('poppler-data', '0.4.12', {
'source_urls': ['https://poppler.freedesktop.org/'],
'sources': [SOURCE_TAR_GZ],
'checksums': ['c835b640a40ce357e1b83666aabd95edffa24ddddd49b8daff63adb851cdab74'],
}),
]

sanity_check_paths = {
'files': ['bin/pdfinfo', 'lib/libpoppler.%s' % SHLIB_EXT, 'lib/libpoppler-cpp.%s' % SHLIB_EXT,
'lib/libpoppler-glib.%s' % SHLIB_EXT, 'lib/libpoppler-qt6.%s' % SHLIB_EXT],
'dirs': ['include/poppler', 'lib/pkgconfig', 'share'],
}

sanity_check_commands = ["pdfinfo --help"]

moduleclass = 'lib'
78 changes: 78 additions & 0 deletions easybuild/easyconfigs/t/texlive/texlive-20230313-GCC-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Based off the 2017 version by John Dey jfdey@fredhutch.org
# https://github.com/easybuilders/easybuild-easyconfigs/pull/5085
easyblock = 'Tarball'

name = 'texlive'
version = '20230313'
local_ver_year = version[:4]

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': 'GCC', 'version': '13.2.0'}

source_urls = [
'ftp://tug.org/texlive/historic/%s/' % local_ver_year,
'https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/%s/' % local_ver_year,
]
sources = [
{
'download_filename': 'install-tl-unx.tar.gz',
'filename': 'install-tl-unx-%(version)s.tar.gz'
}
]
checksums = ['d97bdb3b1903428e56373e70861b24db448243d74d950cdff96f4e888f008605']

dependencies = [
('X11', '20231019'),
('libpng', '1.6.40'),
('libGLU', '9.0.3'),
('Perl', '5.38.0'),
('HarfBuzz', '8.2.2'),
('poppler', '24.04.0'),
('cairo', '1.18.0'),
('fontconfig', '2.14.2'),
('zlib', '1.2.13'),
('graphite2', '1.3.14'),
]

# For the latest release, the tlnet-final repository isn't available yet, so we use the default
# But, the default can _not_ be used for the historic releases. The only way to write an EasyConfig
# that will work today and in the future, is to try one by one.
# Similarly, ftp is not available on all HPC systems, hence providing fallback to https
# See https://github.com/easybuilders/easybuild-easyconfigs/issues/17871
local_install_tl = "%%(builddir)s/install-tl-%%(version)s/install-tl -profile %%(installdir)s/texlive.profile %s"
local_ftp = '-repository ftp://ftp.math.utah.edu/pub/tex/historic/systems/textlive/%s/tlnet-final' % local_ver_year
local_https = '-repository https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/%s/tlnet-final' % local_ver_year
local_install_tl_or = (
' || '.join([
local_install_tl % '',
local_install_tl % local_ftp,
local_install_tl % local_https,
])
)
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 && '
'%s' % local_install_tl_or
]

sanity_check_paths = {
'files': ['bin/%(arch)s-linux/tex', 'bin/%(arch)s-linux/latex'],
'dirs': ['bin/%(arch)s-linux', 'texmf-dist'],
}

modextrapaths = {
'INFOPATH': 'texmf-dist/doc/info',
'MANPATH': 'texmf-dist/doc/man',
'PATH': 'bin/%(arch)s-linux',
}

modextravars = {'TEXMFHOME': '%(installdir)s/texmf-dist'}

moduleclass = 'devel'