You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
2.2 KiB
51 lines
2.2 KiB
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)
|