summaryrefslogtreecommitdiff
path: root/dev-libs/json-c
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-09-27 20:47:58 +0100
committerSam James <sam@gentoo.org>2024-09-27 20:48:59 +0100
commit87dd721dfc5e069f58725070880c226464ede5de (patch)
treeedd97e54f8451fb7d2e2df9bf3e21beb82a992b6 /dev-libs/json-c
parent3d64ff650710794a669008564e7285f5d7bd51d5 (diff)
downloadgentoo-87dd721dfc5e069f58725070880c226464ede5de.tar.gz
gentoo-87dd721dfc5e069f58725070880c226464ede5de.tar.bz2
gentoo-87dd721dfc5e069f58725070880c226464ede5de.zip
dev-libs/json-c: add 0.18
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/json-c')
-rw-r--r--dev-libs/json-c/Manifest1
-rw-r--r--dev-libs/json-c/json-c-0.18.ebuild68
-rw-r--r--dev-libs/json-c/json-c-9999.ebuild18
3 files changed, 84 insertions, 3 deletions
diff --git a/dev-libs/json-c/Manifest b/dev-libs/json-c/Manifest
index 31bdc97c1853..9d148cfa4f3e 100644
--- a/dev-libs/json-c/Manifest
+++ b/dev-libs/json-c/Manifest
@@ -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
diff --git a/dev-libs/json-c/json-c-0.18.ebuild b/dev-libs/json-c/json-c-0.18.ebuild
new file mode 100644
index 000000000000..582ba35e41c2
--- /dev/null
+++ b/dev-libs/json-c/json-c-0.18.ebuild
@@ -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
+}
diff --git a/dev-libs/json-c/json-c-9999.ebuild b/dev-libs/json-c/json-c-9999.ebuild
index 2ee46fcafda5..582ba35e41c2 100644
--- a/dev-libs/json-c/json-c-9999.ebuild
+++ b/dev-libs/json-c/json-c-9999.ebuild
@@ -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