Skip to content

[libdap] [package list]

libdap/3.21.1-cpeCray-25.03 (libdap-3.21.1-cpeCray-25.03.eb)

Install with the EasyBuild-user module:

eb libdap-3.21.1-cpeCray-25.03.eb -r
To access module help after installation and get reminded for which stacks and partitions the module is installed, use module spider libdap/3.21.1-cpeCray-25.03.

EasyConfig:

# Adapted by Kurt Lust (kurt.lust@uantwerpen.be) for the LUMI consortium
easyblock = 'ConfigureMake'

local_cURL_version =         '8.11.1'        # https://curl.haxx.se/download/
local_CppUnit_version =      '1.15.1'        # https://dev-www.libreoffice.org/src/
local_libxml2_version =      '2.13.4'        # http://xmlsoft.org/sources/
local_PCRE2_version =        '10.45'         # https://github.com/PCRE2Project/pcre2/releases  # Not yet in EB 2025a when checked for installation
local_libtirpc_version =     '1.3.6'         # https://sourceforge.net/projects/libtirpc/files/libtirpc/
local_libnsl_version =       '2.0.1'         # https://github.com/thkukuk/libnsl/releases
local_util_version =         '2.40.4'        # https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/ (Not yet in EB 2025a when checking)

local_libdap_version =       '3.21.1'        # https://www.opendap.org/pub/source/

name =    'libdap'
version = local_libdap_version

homepage = 'https://www.opendap.org/software/libdap'

whatis = [
    'Description: libdap is a C++ SDK implementtin DAP 2.0 and 4.0'
]

description = """
A C++ SDK which contains an implementation of DAP 2.0 and
DAP4.0. This includes both Client- and Server-side support classes.
"""

software_license_urls = ['https://github.com/OPENDAP/libdap4/blob/master/COPYING']

toolchain = {'name': 'cpeCray', 'version': '25.03'}

sources = [
    {
        'download_filename': '%(version)s.tar.gz',
        'filename':          SOURCE_TAR_GZ,
        'source_urls':       ['https://github.com/OPENDAP/libdap4/archive/refs/tags/']
    }
]
checksums =   ['d5b301e03af89b4c4269d594164ba2e709b51d54468caf8a9a7ba2ffc0f711b9']

builddependencies = [ # Create a reproducible build environment.
    ('buildtools',         '%(toolchain_version)s',   '', True),  # Bison, flex
    ('craype-network-none', EXTERNAL_MODULE),
    ('craype-accel-host',   EXTERNAL_MODULE),
]

dependencies = [
    ('cURL',       local_cURL_version),
    ('CppUnit',    local_CppUnit_version),
    ('libxml2',    local_libxml2_version),
    ('libtirpc',   local_libtirpc_version),
    ('PCRE2',      local_PCRE2_version),
    ('util-linux', local_util_version),
]

preconfigopts = 'module unload rocm cray-libsci && '
preinstallopts = pretestopts = prebuildopts = preconfigopts

preconfigopts += 'autoreconf --force --install --verbose && '
preconfigopts += 'LDFLAGS="$LDFLAGS -L$EBROOTICU/lib -licuuc -Wl,--allow-shlib-undefined" '
configopts = 'TIRPC_LIBS="-L$EBROOTLIBTIRPC/lib -ltirpc"'

postinstallcmds = [
    'mkdir -p %(installdir)s/share/licenses/%(name)s && cp COPYING COPYRIGHT_URI COPYRIGHT_W3C %(installdir)s/share/licenses/%(name)s'
]

sanity_check_paths = {
    'files': ['bin/getdap', 'bin/getdap4', 'bin/dap-config', 'lib/libdap.a', 'lib/libdap.%s' % SHLIB_EXT],
    'dirs':  ['include'],
}

sanity_check_commands = [
    'dap-config --libs',
    'dap-config-pkgconfig --libs',
    'getdap -V',
    'getdap4 -V',
    'pkg-config libdap --libs',
    'pkg-config libdapclient --libs',
    'pkg-config libdapserver --libs',
]

moduleclass = 'lib'

[libdap] [package list]