summaryrefslogtreecommitdiff
path: root/dev-libs/yajl
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-03-19 11:37:34 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-03-19 11:37:34 +0000
commitb7b97785ebbb2f11d24d14dab8b81ed274f4ce6a (patch)
tree9fd110f9fc996e8a4213eeda994a8c112491b86d /dev-libs/yajl
parent066d27181e9a797ad9f8fc43b49fc9a10ff2f707 (diff)
gentoo resync : 19.03.2019
Diffstat (limited to 'dev-libs/yajl')
-rw-r--r--dev-libs/yajl/Manifest2
-rw-r--r--dev-libs/yajl/files/yajl-2.1.0-pkg-config.patch50
-rw-r--r--dev-libs/yajl/yajl-2.1.0-r2.ebuild38
3 files changed, 90 insertions, 0 deletions
diff --git a/dev-libs/yajl/Manifest b/dev-libs/yajl/Manifest
index 376f0852905b..26819f315dd2 100644
--- a/dev-libs/yajl/Manifest
+++ b/dev-libs/yajl/Manifest
@@ -1,4 +1,6 @@
+AUX yajl-2.1.0-pkg-config.patch 2299 BLAKE2B 1de5b3d183b692b8be1fe37d0f05e97141b82dcfce7770e9b4e27ed2443b8506efb8a6cff2bbc5ebac640ba87819833d0e6eb5d8cd8139a973861904afbea648 SHA512 0cc7f685b80280af209c8b3d9443711174a0439dc59f3e81dbd1f78b8aecca3eb29b2c8b88d94b8a4200a1248fb03948a1e51206373af49a55fb2eb32e9d7dde
AUX yajl-2.1.0-uclibc.patch 487 BLAKE2B 873f1c4d4c53ff155814d960301f0932267ce277bfe772593853234c446ef949a7bd424c7db8f97c9dbc14428b03210b1c740a51b5379dbcebefbb311144a826 SHA512 7d81f13329da5fa81c31b07763b50153197760c93ceaf14d3b87232a377fb0871dc522f73a7d556131d1272496d7e8082eaef8ec968b8004e2d2c5e74987167d
DIST yajl-2.1.0.tar.gz 84039 BLAKE2B 53cfa60994a478050ef1ab35ecfe60cc51f166bc101ee81f42122b134cc30afd1277c3c2661f5c03dc8c8117fcfdaab8ec7c6d735a6810ea4700f1afaea60e1a SHA512 671c06081e01584d170b614dc0685f49c6d7448b673d8ed99749ce4e0ca73875af9f62df7787b919ceaecab213668ac1d2a5800b6831731ec146353552f36985
EBUILD yajl-2.1.0-r1.ebuild 930 BLAKE2B 0a7882f77bf56732226ac8187954c2733a33c1438d39e76d1d26c7c9b3e713bcb6706190350f3b8409e8c53957c42556c2888b6687f0f99e0aca30fc567b98fa SHA512 5f6462f1b1a53e558f25c1e91d3e0b6dd624d33f5a83f01742212f6ceae3a6940ba74f84b5857be1f5480ec152141aaeda6cbef5152b5d3b353e774725d09b8d
+EBUILD yajl-2.1.0-r2.ebuild 974 BLAKE2B d4a6ce6abbc3c5c77380c38fe63aacab05dbb9c5f0a5a3d02d886a54060ad228b1a838db4827b5398d009fb60fc0c3b232fec8c311d1c9b6c170f99f8b2c96a6 SHA512 8d51be22de264e3646cda6175f05b42cac76c59e6bea91b1c10f4a3d0a398a59bfa044bca43a651467738cc52ae9a36466acc5f403cc9db50ee335b47073c251
MISC metadata.xml 336 BLAKE2B cfff08a4c7fbc2990928356c47d5110c6e6de6278ec3a45ac89f7dc1ae5f247a12214c41c884e622d264142b3f487fb82ff0457e15a0d39080e7680ad72d790e SHA512 c01c9b3ba695bb76ef55ede76c3e4b2e6843b27d4148aca7c290ac909aa8800541f0b85c043c5a74e518e4e84a0d3c6907cc4f93bbe8d0addfaaa40ede3a347d
diff --git a/dev-libs/yajl/files/yajl-2.1.0-pkg-config.patch b/dev-libs/yajl/files/yajl-2.1.0-pkg-config.patch
new file mode 100644
index 000000000000..fc31ef0cf5d9
--- /dev/null
+++ b/dev-libs/yajl/files/yajl-2.1.0-pkg-config.patch
@@ -0,0 +1,50 @@
+From 63703fd039fce33ac36e94b9ace4b7c12ef042b9 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sun, 24 Feb 2019 10:49:44 +0100
+Subject: [PATCH] cmake: Fix installing pkg-config file into libdir
+
+Fix the CMake rules to install pkg-config file into lib/pkgconfig
+rather than share/pkgconfig. The former location is correct
+for ABI-dependent files such as libraries, while the latter should be
+used only for ABI-agnostic resources (data files, executables).
+
+This fixes using yajl on multilib systems where 32-bit and 64-bit
+versions of the library are installed separately. This requires two
+separate pkg-config files to be installed along with the libraries
+into appropriate libdirs. When the file was installed into /usr/share,
+only one variant was permitted and effectively using the other multilib
+variant was broken, breaking other packages.
+
+Original bug report: https://bugs.gentoo.org/677870
+---
+ src/CMakeLists.txt | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 99cf9e9..81369e4 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -30,7 +30,7 @@ ADD_DEFINITIONS(-DYAJL_BUILD)
+ # set up some paths
+ SET (libDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib)
+ SET (incDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/include/yajl)
+-SET (shareDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/share/pkgconfig)
++SET (pcDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib/pkgconfig)
+
+ # set the output path for libraries
+ SET(LIBRARY_OUTPUT_PATH ${libDir})
+@@ -61,7 +61,7 @@ FILE(MAKE_DIRECTORY ${incDir})
+ # generate build-time source
+ SET(dollar $)
+ CONFIGURE_FILE(api/yajl_version.h.cmake ${incDir}/yajl_version.h)
+-CONFIGURE_FILE(yajl.pc.cmake ${shareDir}/yajl.pc)
++CONFIGURE_FILE(yajl.pc.cmake ${pcDir}/yajl.pc)
+
+ # copy public headers to output directory
+ FOREACH (header ${PUB_HDRS})
+@@ -84,4 +84,4 @@ INSTALL(TARGETS yajl
+ INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX})
+ INSTALL(FILES ${PUB_HDRS} DESTINATION include/yajl)
+ INSTALL(FILES ${incDir}/yajl_version.h DESTINATION include/yajl)
+-INSTALL(FILES ${shareDir}/yajl.pc DESTINATION share/pkgconfig)
++INSTALL(FILES ${pcDir}/yajl.pc DESTINATION lib${LIB_SUFFIX}/pkgconfig)
diff --git a/dev-libs/yajl/yajl-2.1.0-r2.ebuild b/dev-libs/yajl/yajl-2.1.0-r2.ebuild
new file mode 100644
index 000000000000..9abc15c922f5
--- /dev/null
+++ b/dev-libs/yajl/yajl-2.1.0-r2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-multilib vcs-snapshot
+
+DESCRIPTION="Small event-driven (SAX-style) JSON parser"
+HOMEPAGE="https://lloyd.github.com/yajl/"
+SRC_URI="https://github.com/lloyd/yajl/tarball/${PV} -> ${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="static-libs"
+
+PATCHES=( "${FILESDIR}"/${P}-uclibc.patch "${FILESDIR}"/${P}-pkg-config.patch )
+
+src_prepare() {
+ cmake-utils_src_prepare
+
+ multilib_copy_sources
+}
+
+src_test() {
+ run_test() {
+ cd "${BUILD_DIR}"/test/parsing
+ ./run_tests.sh ./yajl_test || die
+ }
+ multilib_parallel_foreach_abi run_test
+}
+
+src_install() {
+ cmake-multilib_src_install
+
+ use static-libs || \
+ find "${D}" -name libyajl_s.a -delete
+}