diff options
| author | Ruslan Bilovol <rbilovol@cisco.com> | 2019-02-07 13:00:01 +0200 |
|---|---|---|
| committer | Khem Raj <raj.khem@gmail.com> | 2019-02-07 10:06:29 -0800 |
| commit | 2e0fd78621b05acb6df58adf910373a8814b70a1 (patch) | |
| tree | dbf98a7d15c3c9f9a9a149e054cf1fa568914d48 | |
| parent | c245374fafbc4769e0c98ae18ac9ff71f9f14169 (diff) | |
| download | meta-openembedded-2e0fd78621b05acb6df58adf910373a8814b70a1.tar.gz | |
rapidjson: fix cmake artifacts installation for non-default BASELIB case
If BASELIB is set to non-default value (like lib64),
next 'installed but not shipped' issue happens:
/usr/lib
/usr/lib/cmake
/usr/lib/pkgconfig
/usr/lib/cmake/RapidJSON
/usr/lib/cmake/RapidJSON/RapidJSONConfigVersion.cmake
/usr/lib/cmake/RapidJSON/RapidJSONConfig.cmake
/usr/lib/pkgconfig/RapidJSON.pc
This is because rapidjson has library installation dir set
to 'lib' by default and hardcoded in another place.
Fix this by next changes:
- set appropriate LIB_INSTALL_DIR
- fix hardcoded 'lib' in CMAKECONFIG_INSTALL_DIR case
Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
| -rw-r--r-- | meta-oe/recipes-devtools/rapidjson/rapidjson/0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch | 36 | ||||
| -rw-r--r-- | meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb | 5 |
2 files changed, 39 insertions, 2 deletions
diff --git a/meta-oe/recipes-devtools/rapidjson/rapidjson/0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch b/meta-oe/recipes-devtools/rapidjson/rapidjson/0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch new file mode 100644 index 0000000000..745f5d0132 --- /dev/null +++ b/meta-oe/recipes-devtools/rapidjson/rapidjson/0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | From 8d272e53a4d1dc405e08ce2dd50159c58f4451e9 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Ruslan Bilovol <rbilovol@cisco.com> | ||
| 3 | Date: Thu, 24 Jan 2019 18:11:39 +0200 | ||
| 4 | Subject: [PATCH] CMake: remove hardcoded CMAKECONFIG_INSTALL_DIR path | ||
| 5 | |||
| 6 | Currently this path is hardcoded to lib/cmake. | ||
| 7 | Some distributions have different library path (like lib64). | ||
| 8 | So reuse LIB_INSTALL_DIR for that to make CMAKECONFIG_INSTALL_DIR | ||
| 9 | configurable and usable in such distros. | ||
| 10 | |||
| 11 | Upstream-Status: Backport [https://github.com/Tencent/rapidjson/commit/8d272e53a4d1dc405e08ce2dd50159c58f4451e9] | ||
| 12 | |||
| 13 | Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com> | ||
| 14 | --- | ||
| 15 | CMakeLists.txt | 4 ++-- | ||
| 16 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
| 17 | |||
| 18 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 19 | index 7c60407..0275672 100644 | ||
| 20 | --- a/CMakeLists.txt | ||
| 21 | +++ b/CMakeLists.txt | ||
| 22 | @@ -199,9 +199,9 @@ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}ConfigVersion.cmake.in | ||
| 23 | ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake @ONLY) | ||
| 24 | |||
| 25 | # ... for the install tree | ||
| 26 | -SET( CMAKECONFIG_INSTALL_DIR lib/cmake/${PROJECT_NAME} ) | ||
| 27 | +SET( CMAKECONFIG_INSTALL_DIR ${LIB_INSTALL_DIR}/cmake/${PROJECT_NAME} ) | ||
| 28 | FILE( RELATIVE_PATH REL_INCLUDE_DIR | ||
| 29 | - "${CMAKE_INSTALL_PREFIX}/${CMAKECONFIG_INSTALL_DIR}" | ||
| 30 | + "${CMAKECONFIG_INSTALL_DIR}" | ||
| 31 | "${CMAKE_INSTALL_PREFIX}/include" ) | ||
| 32 | |||
| 33 | SET( ${PROJECT_NAME}_INCLUDE_DIR "\${${PROJECT_NAME}_CMAKE_DIR}/${REL_INCLUDE_DIR}" ) | ||
| 34 | -- | ||
| 35 | 1.9.1 | ||
| 36 | |||
diff --git a/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb b/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb index c90eab043b..e3ed9c6a17 100644 --- a/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb +++ b/meta-oe/recipes-devtools/rapidjson/rapidjson_git.bb | |||
| @@ -4,7 +4,8 @@ SECTION = "libs" | |||
| 4 | LICENSE = "MIT" | 4 | LICENSE = "MIT" |
| 5 | LIC_FILES_CHKSUM = "file://license.txt;md5=ba04aa8f65de1396a7e59d1d746c2125" | 5 | LIC_FILES_CHKSUM = "file://license.txt;md5=ba04aa8f65de1396a7e59d1d746c2125" |
| 6 | 6 | ||
| 7 | SRC_URI = "git://github.com/miloyip/rapidjson.git;nobranch=1" | 7 | SRC_URI = "git://github.com/miloyip/rapidjson.git;nobranch=1 \ |
| 8 | file://0001-CMake-remove-hardcoded-CMAKECONFIG_INSTALL_DIR-path.patch" | ||
| 8 | 9 | ||
| 9 | SRCREV = "6a905f9311f82d306da77bd963ec5aa5da07da9c" | 10 | SRCREV = "6a905f9311f82d306da77bd963ec5aa5da07da9c" |
| 10 | 11 | ||
| @@ -14,7 +15,7 @@ S = "${WORKDIR}/git" | |||
| 14 | 15 | ||
| 15 | inherit cmake | 16 | inherit cmake |
| 16 | 17 | ||
| 17 | EXTRA_OECMAKE += "-DRAPIDJSON_BUILD_DOC=OFF -DRAPIDJSON_BUILD_TESTS=OFF -DRAPIDJSON_BUILD_EXAMPLES=OFF" | 18 | EXTRA_OECMAKE += "-DRAPIDJSON_BUILD_DOC=OFF -DRAPIDJSON_BUILD_TESTS=OFF -DRAPIDJSON_BUILD_EXAMPLES=OFF -DLIB_INSTALL_DIR:STRING=${libdir}" |
| 18 | 19 | ||
| 19 | # RapidJSON is a header-only C++ library, so the main package will be empty. | 20 | # RapidJSON is a header-only C++ library, so the main package will be empty. |
| 20 | 21 | ||
