diff mbox series

[meta-oe,1/2] json-schema-validator: restore 0004-cmake-Use-GNUInstallDirs.patch

Message ID 20230830163404.3466695-1-Martin.Jansa@gmail.com
State Under Review
Headers show
Series [meta-oe,1/2] json-schema-validator: restore 0004-cmake-Use-GNUInstallDirs.patch | expand

Commit Message

Martin Jansa Aug. 30, 2023, 4:34 p.m. UTC
* it was removed in:
  https://git.openembedded.org/meta-openembedded/commit/?id=0697d52777cd530dc59bb05a506327c365bc78a2

* but the patch wasn't applied upstream yet
  and now fails in multilib builds with:
ERROR: lib32-json-schema-validator-2.2.0-r0 do_package: QA Issue: lib32-json-schema-validator: Files/directories were installed but not shipped in any package:
  /usr/lib/libnlohmann_json_schema_validator.so.2
  /usr/lib/libnlohmann_json_schema_validator.so.2.2.0
  /usr/lib/libnlohmann_json_schema_validator.so
  /usr/lib/cmake
  /usr/lib/cmake/nlohmann_json_schema_validator
  /usr/lib/cmake/nlohmann_json_schema_validator/nlohmann_json_schema_validatorConfig.cmake
  /usr/lib/cmake/nlohmann_json_schema_validator/nlohmann_json_schema_validatorConfigVersion.cmake
  /usr/lib/cmake/nlohmann_json_schema_validator/nlohmann_json_schema_validatorTargets.cmake
  /usr/lib/cmake/nlohmann_json_schema_validator/nlohmann_json_schema_validatorTargets-noconfig.cmake
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
lib32-json-schema-validator: 9 installed and not shipped files. [installed-vs-shipped]

https://github.com/pboettch/json-schema-validator/pull/197 was closed due to branch rename, but I don't see this change applied in:
https://github.com/pboettch/json-schema-validator/commits/main/CMakeLists.txt
so I guess the .patch is still needed.

* adjust the patch to apply on new version and restore it

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---
 .../0004-cmake-Use-GNUInstallDirs.patch       | 43 +++++++++++++++++++
 .../json-schema-validator_2.2.0.bb            |  1 +
 2 files changed, 44 insertions(+)
 create mode 100644 meta-oe/recipes-devtools/json-schema-validator/json-schema-validator/0004-cmake-Use-GNUInstallDirs.patch
diff mbox series

Patch

diff --git a/meta-oe/recipes-devtools/json-schema-validator/json-schema-validator/0004-cmake-Use-GNUInstallDirs.patch b/meta-oe/recipes-devtools/json-schema-validator/json-schema-validator/0004-cmake-Use-GNUInstallDirs.patch
new file mode 100644
index 0000000000..8199e4f8d4
--- /dev/null
+++ b/meta-oe/recipes-devtools/json-schema-validator/json-schema-validator/0004-cmake-Use-GNUInstallDirs.patch
@@ -0,0 +1,43 @@ 
+From a42d374aa260caec5f683c75d0db322811e51ab9 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 19 Mar 2022 22:40:49 -0700
+Subject: [PATCH] cmake: Use GNUInstallDirs
+
+This helps it make it platform independent, some platforms e.g.
+ppc64/linux use /usr/lib64 for system libraries
+
+Upstream-Status: Submitted [https://github.com/pboettch/json-schema-validator/pull/197]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ CMakeLists.txt | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9e4587f..3eff234 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -93,11 +93,13 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+     endif()
+ endif()
+ 
++include(GNUInstallDirs)
++
+ if(JSON_VALIDATOR_INSTALL)
+     install(TARGETS nlohmann_json_schema_validator
+             EXPORT ${PROJECT_NAME}Targets
+-            LIBRARY DESTINATION lib
+-            ARCHIVE DESTINATION lib
++            LIBRARY DESTINATION ${LIBDIR}
++            ARCHIVE DESTINATION ${LIBDIR}
+             RUNTIME DESTINATION bin)
+ 
+     install(FILES src/nlohmann/json-schema.hpp
+@@ -129,7 +131,7 @@ endif()
+ 
+ if(JSON_VALIDATOR_INSTALL)
+     # Set the install path to the cmake config files (Relative, so install works correctly under Hunter as well)
+-    set(INSTALL_CMAKE_DIR "lib/cmake/${PROJECT_NAME}")
++    set(INSTALL_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME})
+     set(INSTALL_CMAKEDIR_ROOT share/cmake)
+ 
+     # Install Targets
diff --git a/meta-oe/recipes-devtools/json-schema-validator/json-schema-validator_2.2.0.bb b/meta-oe/recipes-devtools/json-schema-validator/json-schema-validator_2.2.0.bb
index 6f0b424024..02dcdb2696 100644
--- a/meta-oe/recipes-devtools/json-schema-validator/json-schema-validator_2.2.0.bb
+++ b/meta-oe/recipes-devtools/json-schema-validator/json-schema-validator_2.2.0.bb
@@ -6,6 +6,7 @@  SRC_URI = "git://github.com/pboettch/json-schema-validator;branch=main;protocol=
            file://0001-Set-Json_validator-Install-off-if-it-finds-it-via-li.patch \
            file://0002-Fix-assumed-signed-char.patch \
            file://0003-For-root-value-use-empty-pointer.patch \
+           file://0004-cmake-Use-GNUInstallDirs.patch \
            "
 
 SRCREV = "6b17782d6a5d1dee5d2c4fc5d25ffb1123913431"