Skip to content

[libgd] [package list]

libgd/2.3.3-cpeAOCC-24.03 (libgd-2.3.3-cpeAOCC-24.03.eb)

To access module help and find out for which stacks and partitions the module is installed, use module spider libgd/2.3.3-cpeAOCC-24.03.

EasyConfig:

easyblock = 'ConfigureMake'

local_fontconfig_version =   '2.14.2'        # https://www.freedesktop.org/software/fontconfig/release/
local_libjpegturbo_version = '3.0.1'         # https://github.com/libjpeg-turbo/libjpeg-turbo/releases
local_libpng_version =       '1.6.40'        # http://www.libpng.org/pub/png/libpng.html
local_zlib_version =         '1.3.1'         # https://zlib.net/

local_libgd_version =        '2.3.3'         # http://www.libgd.org/

name =    'libgd'
version = local_libgd_version

homepage = 'http://www.libgd.org/'

whatis = [
    'Description: GD, a library for the dynamic creation of images',
    'This module provides a number of command line tools and static and shared libraries',
]

description = """
GD is an open source code library for the dynamic creation of images by
programmers. GD is written in C, and "wrappers" are available for Perl, PHP and
other languages. GD creates PNG, JPEG, GIF, WebP, XPM, BMP images, among other
formats. GD is commonly used to generate charts, graphics, thumbnails, and most
anything else, on the fly. While not restricted to use on the web, the most
common applications of GD involve website development.

This module provides a number of command line tools and static and shared libraries.
"""

docurls = [
    "Web-based documentation: https://libgd.github.io/manuals/%(version)s/files/preamble-txt.html",
]

software_license_urls = [
    f'https://github.com/libgd/libgd/blob/gd-{version}/COPYING',
]

toolchain = {'name': 'cpeAOCC', 'version': '24.03'}
toolchainopts = {'pic': True}

source_urls = ['https://github.com/libgd/libgd/releases/download/gd-%(version)s/']
sources =     [SOURCELOWER_TAR_GZ]
checksums =   ['dd3f1f0bb016edcc0b2d082e8229c822ad1d02223511997c80461481759b1ed2']

builddependencies = [
    ('buildtools', '%(toolchain_version)s', '', True), # For ninja, meson, pkg-config and for help2man to generate the man page.
]

dependencies = [
    ('fontconfig',    local_fontconfig_version),
    ('libjpeg-turbo', local_libjpegturbo_version),
    ('libpng',        local_libpng_version),
    ('zlib',          local_zlib_version),
]

# Doesn't need MPI, ROCm or BLAS, and module unload never fails so this is safe.
preconfigopts = 'module unload cray-libsci cray-mpich rocm xpmem && '
prebuildopts = preconfigopts
preinstallopts = preconfigopts

configopts  = "--with-fontconfig=$EBROOTFONTCONFIG --with-jpeg=$EBROOTLIBJPEGMINTURBO "
configopts += "--with-png=$EBROOTLIBPNG --with-zlib=$EBROOTZLIB"

postinstallcmds = [
    'mkdir -p %(installdir)s/share/licenses/%(name)s',
    'cp CHANGELOG.md COPYING README.md %(installdir)s/share/licenses/%(name)s',   
]

sanity_check_paths = {
    'files': ['lib/libgd.a', 'lib/libgd.%s' % SHLIB_EXT,
              f'share/licenses/{name}/COPYING'],
    'dirs':  ['bin', 'include'],
}

sanity_check_commands = [
    'webpng --help'
]

moduleclass = 'lib'

[libgd] [package list]