From 09b6a82dbf94eb39d9d47692318f4df49aacfbe3 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 21 Mar 2025 22:56:23 -0700 Subject: python3-pybind11-json: Specify -DPYBIND11_USE_CROSSCOMPILING=ON to support pybind11 13.x Add support for pkgconfig Use python-native during build to avoid host variability Signed-off-by: Khem Raj --- .../d72ad4df929bc9d0882298fc1f85ecf589456ff6.patch | 59 ++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 meta-python/recipes-devtools/python/python3-pybind11-json/d72ad4df929bc9d0882298fc1f85ecf589456ff6.patch (limited to 'meta-python/recipes-devtools/python/python3-pybind11-json') diff --git a/meta-python/recipes-devtools/python/python3-pybind11-json/d72ad4df929bc9d0882298fc1f85ecf589456ff6.patch b/meta-python/recipes-devtools/python/python3-pybind11-json/d72ad4df929bc9d0882298fc1f85ecf589456ff6.patch new file mode 100644 index 0000000000..c216ce66cb --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-pybind11-json/d72ad4df929bc9d0882298fc1f85ecf589456ff6.patch @@ -0,0 +1,59 @@ +From d72ad4df929bc9d0882298fc1f85ecf589456ff6 Mon Sep 17 00:00:00 2001 +From: Daniel Lundberg Pedersen +Date: Thu, 23 Jan 2025 11:48:16 +0100 +Subject: [PATCH] CMakeLists.txt: Add support for pkg-config + +Create and install pkg-config (.pc) file for dependency detection. +Upstream-Status: Submitted [https://github.com/pybind/pybind11_json/pull/75] +Signed-off-by: Khem Raj +--- + CMakeLists.txt | 24 ++++++++++++++++++++++++ + pybind11_json.pc.in | 7 +++++++ + 2 files changed, 31 insertions(+) + create mode 100644 pybind11_json.pc.in + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index c0ef675..a92240a 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -133,3 +133,27 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/${PROJECT_NAME}Config.cmake + install(EXPORT ${PROJECT_NAME}-targets + FILE ${PROJECT_NAME}Targets.cmake + DESTINATION ${PYBIND11_JSON_CMAKECONFIG_INSTALL_DIR}) ++ ++# pkg-config support ++if(NOT prefix_for_pc_file) ++if(IS_ABSOLUTE "${CMAKE_INSTALL_DATAROOTDIR}") ++ set(prefix_for_pc_file "${CMAKE_INSTALL_PREFIX}") ++else() ++ set(pc_datarootdir "${CMAKE_INSTALL_DATAROOTDIR}") ++ if(CMAKE_VERSION VERSION_LESS 3.20) ++ set(prefix_for_pc_file "\${pcfiledir}/..") ++ while(pc_datarootdir) ++ get_filename_component(pc_datarootdir "${pc_datarootdir}" DIRECTORY) ++ string(APPEND prefix_for_pc_file "/..") ++ endwhile() ++ else() ++ cmake_path(RELATIVE_PATH CMAKE_INSTALL_PREFIX BASE_DIRECTORY CMAKE_INSTALL_DATAROOTDIR ++ OUTPUT_VARIABLE prefix_for_pc_file) ++ endif() ++endif() ++endif() ++set(includedir_for_pc_file "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}") ++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/pybind11_json.pc.in" ++ "${CMAKE_CURRENT_BINARY_DIR}/pybind11_json.pc" @ONLY) ++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/pybind11_json.pc" ++ DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/pkgconfig/") +diff --git a/pybind11_json.pc.in b/pybind11_json.pc.in +new file mode 100644 +index 0000000..da5bfde +--- /dev/null ++++ b/pybind11_json.pc.in +@@ -0,0 +1,7 @@ ++prefix=@prefix_for_pc_file@ ++includedir=@includedir_for_pc_file@ ++ ++Name: @PROJECT_NAME@ ++Description: Using nlohmann::json with pybind11 ++Version: @PROJECT_VERSION@ ++Cflags: -I${includedir} -- cgit v1.2.3-54-g00ecf