dev-libs/json-c: Sync with Gentoo

It's from Gentoo commit 87dd721dfc5e069f58725070880c226464ede5de.
This commit is contained in:
Flatcar Buildbot 2024-10-07 07:04:49 +00:00 committed by Krzesimir Nowak
parent c5b55710b2
commit b80e2b609f
3 changed files with 84 additions and 3 deletions

View File

@ -1 +1,2 @@
DIST json-c-0.17.tar.gz 390045 BLAKE2B 26be25141447f2b652fa09d7096141a8bf7992469bcc53b275c1bc0108fc36a8898a8185c381218d3146d00fa03bdd0b837be073410fc93af943b5f083dbaa69 SHA512 4cbedd559502bf9014cfcd1d0bb8bb80d2abac4e969d95d4170123cd9cbafb0756b913fdbb83f666d14f674d6539a60ed1c5d0eb03c36b8037a2e00dc1636e19
DIST json-c-0.18.tar.gz 401788 BLAKE2B d39bab289976cb2f76bcf3ad8254f7f5b4d11e2aa4dedebd60dc7d131a3f6ec57beacdc575aeeb191cf449d16c549d424172e78464731eeb66305f47f72371c2 SHA512 4763f2352414dac3599bc2183b4fa57dbfaac0ca24de890097bd7d0bdda93c91efa280f6566e949e6d94212ef39a63fc76c5f9d0c54ff3d04b13c859717dba5a

View File

@ -0,0 +1,68 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit cmake-multilib
DESCRIPTION="A JSON implementation in C"
HOMEPAGE="https://github.com/json-c/json-c/wiki"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/json-c/json-c.git"
inherit git-r3
else
SRC_URI="https://s3.amazonaws.com/json-c_releases/releases/${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
fi
LICENSE="MIT"
# .1 is a fudge factor for 0.18 fixing compat w/ 0.16, drop on next
# SONAME change.
SLOT="0/5.1"
IUSE="cpu_flags_x86_rdrand doc static-libs threads"
BDEPEND="doc? ( >=app-text/doxygen-1.8.13 )"
MULTILIB_WRAPPED_HEADERS=(
/usr/include/json-c/config.h
)
multilib_src_configure() {
# Tests use Valgrind automagically otherwise (bug #927027)
export USE_VALGRIND=0
local mycmakeargs=(
# apps are not installed, so disable unconditionally.
# https://github.com/json-c/json-c/blob/json-c-0.17-20230812/apps/CMakeLists.txt#L119...L121
-DBUILD_APPS=OFF
-DBUILD_STATIC_LIBS=$(usex static-libs)
-DDISABLE_EXTRA_LIBS=ON
-DDISABLE_WERROR=ON
-DENABLE_RDRAND=$(usex cpu_flags_x86_rdrand)
-DENABLE_THREADING=$(usex threads)
)
cmake_src_configure
}
multilib_src_compile() {
cmake_src_compile
if use doc && multilib_is_native_abi; then
cmake_build doc
fi
}
multilib_src_test() {
multilib_is_native_abi && cmake_src_test
}
multilib_src_install() {
cmake_src_install
if multilib_is_native_abi; then
use doc && HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
einstalldocs
fi
}

View File

@ -3,14 +3,24 @@
EAPI=8
inherit cmake-multilib git-r3 multibuild
inherit cmake-multilib
DESCRIPTION="A JSON implementation in C"
HOMEPAGE="https://github.com/json-c/json-c/wiki"
EGIT_REPO_URI="https://github.com/json-c/json-c.git"
if [[ ${PV} == 9999 ]] ; then
EGIT_REPO_URI="https://github.com/json-c/json-c.git"
inherit git-r3
else
SRC_URI="https://s3.amazonaws.com/json-c_releases/releases/${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
fi
LICENSE="MIT"
SLOT="0/5"
# .1 is a fudge factor for 0.18 fixing compat w/ 0.16, drop on next
# SONAME change.
SLOT="0/5.1"
IUSE="cpu_flags_x86_rdrand doc static-libs threads"
BDEPEND="doc? ( >=app-text/doxygen-1.8.13 )"
@ -49,6 +59,8 @@ multilib_src_test() {
}
multilib_src_install() {
cmake_src_install
if multilib_is_native_abi; then
use doc && HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
einstalldocs