From 39028d0d9da7aef2dd547f76dd5f9b02b0209c00 Mon Sep 17 00:00:00 2001 From: Niko Mauno Date: Mon, 26 Feb 2024 11:41:54 +0000 Subject: python3-pybind11: Restore strip prevention patch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The patch which removed the pybind11_strip() call from provisioned pybind11*Tools.cmake files was dropped in commit 5c455804aede17e0ea0cbb7ab55f8580f912e664 ("python3-pybind11: Upgrade to 2.10.3"). However this change delegated the requirement to set CMAKE_BUILD_TYPE as 'Debug' or 'RelWithDebInfo' (or as unset) to the cmake utilizing packages which have build time dependency on python3-pybind11, failure to do which causes following kind of BitBake failure with Yocto: ERROR: foobar-1.0.0-r0 do_package: QA Issue: File '/usr/lib/python3.11/site-packages/foobar.so' from foobar was already stripped, this will prevent future debugging! [already-stripped] Restore the patch so that the stripping is delegated to Yocto once more, allowing depending cmake packages to work out of the box also when they use 'Release' or 'MinSizeRel' as CMAKE_BUILD_TYPE by default. Signed-off-by: Joonas Salonpää Signed-off-by: Niko Mauno Signed-off-by: Khem Raj --- .../0001-Do-not-strip-binaries.patch | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-strip-binaries.patch (limited to 'meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-strip-binaries.patch') diff --git a/meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-strip-binaries.patch b/meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-strip-binaries.patch new file mode 100644 index 0000000000..37cb78a308 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-strip-binaries.patch @@ -0,0 +1,52 @@ +From debd676cd94f92a30b3be45f1245aa13d8c398c0 Mon Sep 17 00:00:00 2001 +From: Philip Balister +Date: Wed, 8 Jul 2020 09:41:43 -0400 +Subject: [PATCH] Do not strip binaries. + + * OpenEmbedded strips them after creating debug packages. + +Signed-off-by: Philip Balister +Signed-off-by: Leon Anavi +--- + tools/pybind11NewTools.cmake | 7 ------- + tools/pybind11Tools.cmake | 6 ------ + 2 files changed, 13 deletions(-) + +diff --git a/tools/pybind11NewTools.cmake b/tools/pybind11NewTools.cmake +index 7d7424a7..accd90c4 100644 +--- a/tools/pybind11NewTools.cmake ++++ b/tools/pybind11NewTools.cmake +@@ -233,13 +233,6 @@ function(pybind11_add_module target_name) + endif() + endif() + +- # Use case-insensitive comparison to match the result of $ +- string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE) +- if(NOT MSVC AND NOT "${uppercase_CMAKE_BUILD_TYPE}" MATCHES DEBUG|RELWITHDEBINFO) +- # Strip unnecessary sections of the binary on Linux/macOS +- pybind11_strip(${target_name}) +- endif() +- + if(MSVC) + target_link_libraries(${target_name} PRIVATE pybind11::windows_extras) + endif() +diff --git a/tools/pybind11Tools.cmake b/tools/pybind11Tools.cmake +index 66ad00a4..855ede41 100644 +--- a/tools/pybind11Tools.cmake ++++ b/tools/pybind11Tools.cmake +@@ -212,12 +212,6 @@ function(pybind11_add_module target_name) + endif() + endif() + +- # Use case-insensitive comparison to match the result of $ +- string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE) +- if(NOT MSVC AND NOT "${uppercase_CMAKE_BUILD_TYPE}" MATCHES DEBUG|RELWITHDEBINFO) +- pybind11_strip(${target_name}) +- endif() +- + if(MSVC) + target_link_libraries(${target_name} PRIVATE pybind11::windows_extras) + endif() +-- +2.39.2 + -- cgit v1.2.3-54-g00ecf