diff options
author | 2022-11-12 00:04:20 +0000 | |
---|---|---|
committer | 2022-11-12 00:04:20 +0000 | |
commit | dccc798b9d6c58ca245b20055c6cab0430a12692 (patch) | |
tree | efe1839133ab4ed43346de49f928cc9284249e5e /dev-libs/boost/files | |
parent | net-libs/nodejs: Stabilize 18.12.1 amd64, #880795 (diff) | |
download | gentoo-dccc798b9d6c58ca245b20055c6cab0430a12692.tar.gz gentoo-dccc798b9d6c58ca245b20055c6cab0430a12692.tar.bz2 gentoo-dccc798b9d6c58ca245b20055c6cab0430a12692.zip |
dev-libs/boost: backport Python 3.11 and malloc FTM patches
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-libs/boost/files')
-rw-r--r-- | dev-libs/boost/files/boost-1.80.0-python3.11.patch | 33 | ||||
-rw-r--r-- | dev-libs/boost/files/boost-1.80.0-unordered-ftm-malloc.patch | 21 |
2 files changed, 54 insertions, 0 deletions
diff --git a/dev-libs/boost/files/boost-1.80.0-python3.11.patch b/dev-libs/boost/files/boost-1.80.0-python3.11.patch new file mode 100644 index 000000000000..cdbc36ca953f --- /dev/null +++ b/dev-libs/boost/files/boost-1.80.0-python3.11.patch @@ -0,0 +1,33 @@ +https://github.com/boostorg/python/commit/a218babc8daee904a83f550fb66e5cb3f1cb3013 +https://github.com/boostorg/python/pull/385 + +From a218babc8daee904a83f550fb66e5cb3f1cb3013 Mon Sep 17 00:00:00 2001 +From: Victor Stinner <vstinner@python.org> +Date: Mon, 25 Apr 2022 10:51:46 +0200 +Subject: [PATCH] Fix enum_type_object type on Python 3.11 + +The enum_type_object type inherits from PyLong_Type which is not tracked +by the GC. Instances doesn't have to be tracked by the GC: remove the +Py_TPFLAGS_HAVE_GC flag. + +The Python C API documentation says: + + "To create a container type, the tp_flags field of the type object + must include the Py_TPFLAGS_HAVE_GC and provide an implementation of + the tp_traverse handler." + +https://docs.python.org/dev/c-api/gcsupport.html + +The new exception was introduced in Python 3.11 by: +https://github.com/python/cpython/issues/88429 +--- a/libs/python/src/object/enum.cpp ++++ b/libs/python/src/object/enum.cpp +@@ -113,7 +113,6 @@ static PyTypeObject enum_type_object = { + #if PY_VERSION_HEX < 0x03000000 + | Py_TPFLAGS_CHECKTYPES + #endif +- | Py_TPFLAGS_HAVE_GC + | Py_TPFLAGS_BASETYPE, /* tp_flags */ + 0, /* tp_doc */ + 0, /* tp_traverse */ + diff --git a/dev-libs/boost/files/boost-1.80.0-unordered-ftm-malloc.patch b/dev-libs/boost/files/boost-1.80.0-unordered-ftm-malloc.patch new file mode 100644 index 000000000000..95b39e4bb6be --- /dev/null +++ b/dev-libs/boost/files/boost-1.80.0-unordered-ftm-malloc.patch @@ -0,0 +1,21 @@ +https://github.com/boostorg/align/commit/5ad7df63cd792fbdb801d600b93cad1a432f0151 +https://github.com/boostorg/align/pull/19 + +From 5ad7df63cd792fbdb801d600b93cad1a432f0151 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C3=89rico=20Nogueira=20Rolim?= + <34201958+ericonr@users.noreply.github.com> +Date: Fri, 11 Nov 2022 18:29:45 -0300 +Subject: [PATCH] Don't use FTMs to determine implementation choice + +--- a/boost/align/aligned_alloc.hpp ++++ b/boost/align/aligned_alloc.hpp +@@ -38,7 +38,7 @@ Distributed under the Boost Software License, Version 1.0. + #include <boost/align/detail/aligned_alloc_posix.hpp> + #elif defined(sun) || defined(__sun) + #include <boost/align/detail/aligned_alloc_sunos.hpp> +-#elif (_POSIX_C_SOURCE >= 200112L) || (_XOPEN_SOURCE >= 600) ++#elif defined(_POSIX_VERSION) + #include <boost/align/detail/aligned_alloc_posix.hpp> + #else + #include <boost/align/detail/aligned_alloc.hpp> + |