json-c/0.16-cpeAOCC-22.12 (json-c-0.16-cpeAOCC-22.12.eb)
This software is archived in the LUMI-EasyBuild-contrib GitHub repository as easybuild/easyconfigs/__archive__/j/json-c/json-c-0.16-cpeAOCC-22.12.eb. The corresponding module would be json-c/0.16-cpeAOCC-22.12.
# Adapted from the recipe in the EasyBuilders repository by Kurt Lust
# (kurt.lust@uantwerpen.be) for the LUMI consortium.
easyblock = 'CMakeMake'
local_jsonc_version = '0.16' # https://github.com/json-c/json-c/tags
name = 'json-c'
version = local_jsonc_version
homepage = 'https://github.com/json-c/json-c'
whatis = [
'Description: JSON-C implements a reference counting object model'
]
description = """
JSON-C implements a reference counting object model that allows you to easily
construct JSON objects in C, output them as JSON formatted strings and parse
JSON formatted strings back into the C representation of JSON objects.
"""
toolchain = {'name': 'cpeAOCC', 'version': '22.12'}
# https://s3.amazonaws.com/json-c_releases/releases/json-c-0.16.tar.gz
source_urls = ['https://s3.amazonaws.com/json-c_releases/releases']
sources = [SOURCELOWER_TAR_GZ]
checksums = ['8e45ac8f96ec7791eaf3bb7ee50e9c2100bbbc87b8d0f1d030c5ba8a0288d96b']
builddependencies = [
('buildtools', '%(toolchain_version)s', '', True),
]
configopts = '-DCMAKE_INSTALL_LIBDIR=lib '
# disable using Valgrind during the tests to avoid failures caused by using an OS Valgrind
pretestopts = 'USE_VALGRIND=0 '
runtest = 'test'
postinstallcmds = [
'mkdir -p %(installdir)s/share/licenses/%(name)s && cp ../%(name)s-%(version)s/COPYING ../%(name)s-%(version)s/AUTHORS %(installdir)s/share/licenses/%(name)s'
]
sanity_check_paths = {
'files': ['lib/libjson-c.a', 'lib/libjson-c.%s' % SHLIB_EXT, 'lib/pkgconfig/json-c.pc'],
'dirs': ['include/json-c', 'lib/cmake/json-c'],
}
sanity_check_commands = [
'pkg-config --libs json-c',
]
moduleclass = 'lib'