summaryrefslogtreecommitdiffstats
path: root/meta-python/recipes-devtools/python/python3-pybind11
diff options
context:
space:
mode:
authorLeon Anavi <leon.anavi@konsulko.com>2021-01-28 12:29:02 +0200
committerKhem Raj <raj.khem@gmail.com>2021-02-01 10:44:20 -0800
commit82b80e6ab10a0cf678428ff11832dc9b90f9d5a6 (patch)
tree2f85bf8a69c5617558fea04cab7676e441abc939 /meta-python/recipes-devtools/python/python3-pybind11
parenta66ddd88a7db5c601e51c17028199e95799806c7 (diff)
downloadmeta-openembedded-82b80e6ab10a0cf678428ff11832dc9b90f9d5a6.tar.gz
python3-pybind11: Upgrade 2.5.0 -> 2.6.2
Upgrade to release 2.6.2: - enum: add missing Enum.value property. - Allow thread termination to be avoided during shutdown for CPython 3.7+ via .disarm for gil_scoped_acquire/gil_scoped_release. - Fix bug where the constructor of object subclasses would not throw on being passed a Python object of the wrong type. - The type_caster for integers does not convert Python objects with __int__ anymore with noconvert or during the first round of trying overloads. - When casting to a C++ integer, __index__ is always called and not considered as conversion, consistent with Python 3.8+. - Fixed segfault in multithreaded environments when using scoped_ostream_redirect. - Leave docstring unset when all docstring-related options are disabled, rather than set an empty string. - The module key in builtins that pybind11 uses to store its internals changed from std::string to a python str type (more natural on Python 2, no change on Python 3). - Fixed assertion error related to unhandled (later overwritten) exception in CPython 3.8 and 3.9 debug builds. - Fix py::gil_scoped_acquire assert with CPython 3.9 debug build. - Fix issue with a test failing on PyTest 6.2. - Fix warning modifying constructor parameter 'flag' that shadows a field of 'set_flag' [-Wshadow-field-in-constructor-modified]. - Suppressed some deprecation warnings about old-style __init__/__setstate__ in the tests. - Fix invalid access when calling a pybind11 __init__ on a non-pybind11 class instance. - Fixed various minor memory leaks in pybind11's test suite. - Resolved memory leak in cpp_function initialization when exceptions occurred. - Added a Valgrind build, checking for leaks and memory-related UB, to CI. - Intel compiler was not activating C++14 support due to a broken define. - Support ICC and NVIDIA HPC SDK in C++17 mode. - Support Intel OneAPI compiler (ICC 20.2) and add to CI. License-Update: Update a link. Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> Acked-by: Trevor Gamblin <trevor.gamblin@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-python/recipes-devtools/python/python3-pybind11')
-rw-r--r--meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-check-pointer-size-when-cross-compiling.patch15
-rw-r--r--meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-strip-binaries.patch51
2 files changed, 38 insertions, 28 deletions
diff --git a/meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-check-pointer-size-when-cross-compiling.patch b/meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-check-pointer-size-when-cross-compiling.patch
index 6455c95e77..761422e07e 100644
--- a/meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-check-pointer-size-when-cross-compiling.patch
+++ b/meta-python/recipes-devtools/python/python3-pybind11/0001-Do-not-check-pointer-size-when-cross-compiling.patch
@@ -1,4 +1,4 @@
1From 3abfa65517959ad279481021fafefba28f955e76 Mon Sep 17 00:00:00 2001 1From 2e9318f7a70699eed239aee6301d1d0bbd2457ee Mon Sep 17 00:00:00 2001
2From: Philip Balister <philip@balister.org> 2From: Philip Balister <philip@balister.org>
3Date: Fri, 10 Jul 2020 10:14:59 -0400 3Date: Fri, 10 Jul 2020 10:14:59 -0400
4Subject: [PATCH] Do not check pointer size when cross compiling. 4Subject: [PATCH] Do not check pointer size when cross compiling.
@@ -8,23 +8,24 @@ It is reasonable to build for 32 machine on a 64 bit build machine. Prevents:
8| Python config failure: Python is 64-bit, chosen compiler is 32-bit 8| Python config failure: Python is 64-bit, chosen compiler is 32-bit
9 9
10Signed-off-by: Philip Balister <philip@balister.org> 10Signed-off-by: Philip Balister <philip@balister.org>
11Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
11--- 12---
12 tools/FindPythonLibsNew.cmake | 2 +- 13 tools/FindPythonLibsNew.cmake | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-) 14 1 file changed, 1 insertion(+), 1 deletion(-)
14 15
15diff --git a/tools/FindPythonLibsNew.cmake b/tools/FindPythonLibsNew.cmake 16diff --git a/tools/FindPythonLibsNew.cmake b/tools/FindPythonLibsNew.cmake
16index d0c8fa2..8479e70 100644 17index 3605aebc..67f4d4a0 100644
17--- a/tools/FindPythonLibsNew.cmake 18--- a/tools/FindPythonLibsNew.cmake
18+++ b/tools/FindPythonLibsNew.cmake 19+++ b/tools/FindPythonLibsNew.cmake
19@@ -123,7 +123,7 @@ list(GET _PYTHON_VALUES 9 PYTHON_MULTIARCH) 20@@ -156,7 +156,7 @@ list(GET _PYTHON_VALUES 9 PYTHON_MULTIARCH)
20 21
21 # Make sure the Python has the same pointer-size as the chosen compiler 22 # Make sure the Python has the same pointer-size as the chosen compiler
22 # Skip if CMAKE_SIZEOF_VOID_P is not defined 23 # Skip if CMAKE_SIZEOF_VOID_P is not defined
23-if(CMAKE_SIZEOF_VOID_P AND (NOT "${PYTHON_SIZEOF_VOID_P}" STREQUAL "${CMAKE_SIZEOF_VOID_P}")) 24-if(CMAKE_SIZEOF_VOID_P AND (NOT "${PYTHON_SIZEOF_VOID_P}" STREQUAL "${CMAKE_SIZEOF_VOID_P}"))
24+if((NOT CMAKE_CROSSCOMPILING) AND CMAKE_SIZEOF_VOID_P AND (NOT "${PYTHON_SIZEOF_VOID_P}" STREQUAL "${CMAKE_SIZEOF_VOID_P}")) 25+if((NOT CMAKE_CROSSCOMPILING) AND CMAKE_SIZEOF_VOID_P AND (NOT "${PYTHON_SIZEOF_VOID_P}" STREQUAL "${CMAKE_SIZEOF_VOID_P}"))
25 if(PythonLibsNew_FIND_REQUIRED) 26 if(PythonLibsNew_FIND_REQUIRED)
26 math(EXPR _PYTHON_BITS "${PYTHON_SIZEOF_VOID_P} * 8") 27 math(EXPR _PYTHON_BITS "${PYTHON_SIZEOF_VOID_P} * 8")
27 math(EXPR _CMAKE_BITS "${CMAKE_SIZEOF_VOID_P} * 8") 28 math(EXPR _CMAKE_BITS "${CMAKE_SIZEOF_VOID_P} * 8")
28-- 29--
292.25.4 302.17.1
30 31
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
index 07ab9a03b5..699eb61550 100644
--- 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
@@ -1,4 +1,4 @@
1From 918f3ef01c7a67f3beb67307966698474f144581 Mon Sep 17 00:00:00 2001 1From debd676cd94f92a30b3be45f1245aa13d8c398c0 Mon Sep 17 00:00:00 2001
2From: Philip Balister <philip@balister.org> 2From: Philip Balister <philip@balister.org>
3Date: Wed, 8 Jul 2020 09:41:43 -0400 3Date: Wed, 8 Jul 2020 09:41:43 -0400
4Subject: [PATCH] Do not strip binaries. 4Subject: [PATCH] Do not strip binaries.
@@ -6,34 +6,43 @@ Subject: [PATCH] Do not strip binaries.
6 * OpenEmbedded strips them after creating debug packages. 6 * OpenEmbedded strips them after creating debug packages.
7 7
8Signed-off-by: Philip Balister <philip@balister.org> 8Signed-off-by: Philip Balister <philip@balister.org>
9Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
9--- 10---
10 tools/pybind11Tools.cmake | 13 ------------- 11 tools/pybind11NewTools.cmake | 5 -----
11 1 file changed, 13 deletions(-) 12 tools/pybind11Tools.cmake | 4 ----
13 2 files changed, 9 deletions(-)
12 14
15diff --git a/tools/pybind11NewTools.cmake b/tools/pybind11NewTools.cmake
16index 18da8be1..82ebf5e7 100644
17--- a/tools/pybind11NewTools.cmake
18+++ b/tools/pybind11NewTools.cmake
19@@ -246,11 +246,6 @@ function(pybind11_add_module target_name)
20 endif()
21 endif()
22
23- if(NOT MSVC AND NOT ${CMAKE_BUILD_TYPE} MATCHES Debug|RelWithDebInfo)
24- # Strip unnecessary sections of the binary on Linux/macOS
25- pybind11_strip(${target_name})
26- endif()
27-
28 if(MSVC)
29 target_link_libraries(${target_name} PRIVATE pybind11::windows_extras)
30 endif()
13diff --git a/tools/pybind11Tools.cmake b/tools/pybind11Tools.cmake 31diff --git a/tools/pybind11Tools.cmake b/tools/pybind11Tools.cmake
14index a3603ab..b4c8f63 100644 32index 32313539..a7d81012 100644
15--- a/tools/pybind11Tools.cmake 33--- a/tools/pybind11Tools.cmake
16+++ b/tools/pybind11Tools.cmake 34+++ b/tools/pybind11Tools.cmake
17@@ -230,19 +230,6 @@ function(pybind11_add_module target_name) 35@@ -201,10 +201,6 @@ function(pybind11_add_module target_name)
18 36 endif()
19 _pybind11_add_lto_flags(${target_name} ${ARG_THIN_LTO}) 37 endif()
20 38
21- if (NOT MSVC AND NOT ${CMAKE_BUILD_TYPE} MATCHES Debug|RelWithDebInfo) 39- if(NOT MSVC AND NOT ${CMAKE_BUILD_TYPE} MATCHES Debug|RelWithDebInfo)
22- # Strip unnecessary sections of the binary on Linux/Mac OS 40- pybind11_strip(${target_name})
23- if(CMAKE_STRIP)
24- if(APPLE)
25- add_custom_command(TARGET ${target_name} POST_BUILD
26- COMMAND ${CMAKE_STRIP} -x $<TARGET_FILE:${target_name}>)
27- else()
28- add_custom_command(TARGET ${target_name} POST_BUILD
29- COMMAND ${CMAKE_STRIP} $<TARGET_FILE:${target_name}>)
30- endif()
31- endif()
32- endif() 41- endif()
33- 42-
34 if(MSVC) 43 if(MSVC)
35 # /MP enables multithreaded builds (relevant when there are many files), /bigobj is 44 target_link_libraries(${target_name} PRIVATE pybind11::windows_extras)
36 # needed for bigger binding projects due to the limit to 64k addressable sections 45 endif()
37-- 46--
382.25.4 472.17.1
39 48