diff mbox series

[meta-oe] libeigen: Backport a patch to make eigen_packet_wrapper trivial for c++11

Message ID 20251014000413.1137269-1-pkj@axis.com
State New
Headers show
Series [meta-oe] libeigen: Backport a patch to make eigen_packet_wrapper trivial for c++11 | expand

Commit Message

Peter Kjellerstedt Oct. 14, 2025, 12:04 a.m. UTC
A corresponding patch was removed with the upgrade to 3.4.1 since it had
been integrated upstream. However, it had also been reverted again,
which was not noticed.

This backports a subsequent fix for the problem.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
---
 ...igen_packet_wrapper-trivial-for-c-11.patch | 26 +++++++++++++++++++
 .../libeigen/libeigen_3.4.1.bb                |  2 +-
 2 files changed, 27 insertions(+), 1 deletion(-)
 create mode 100644 meta-oe/recipes-support/libeigen/libeigen/0001-Make-eigen_packet_wrapper-trivial-for-c-11.patch
diff mbox series

Patch

diff --git a/meta-oe/recipes-support/libeigen/libeigen/0001-Make-eigen_packet_wrapper-trivial-for-c-11.patch b/meta-oe/recipes-support/libeigen/libeigen/0001-Make-eigen_packet_wrapper-trivial-for-c-11.patch
new file mode 100644
index 0000000000..855bf01ae9
--- /dev/null
+++ b/meta-oe/recipes-support/libeigen/libeigen/0001-Make-eigen_packet_wrapper-trivial-for-c-11.patch
@@ -0,0 +1,26 @@ 
+From 0295f81a835ef69e2bacd9e75ab5782eca398720 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Antonio=20S=C3=A1nchez?= <cantonios@google.com>
+Date: Thu, 2 Oct 2025 17:53:19 +0000
+Subject: [PATCH] Make `eigen_packet_wrapper` trivial for c++11.
+
+Upstream-Status: Backport [https://gitlab.com/libeigen/eigen/-/commit/0295f81a835ef69e2bacd9e75ab5782eca398720]
+---
+ Eigen/src/Core/GenericPacketMath.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/Eigen/src/Core/GenericPacketMath.h b/Eigen/src/Core/GenericPacketMath.h
+index af45f3936..4aeb77de8 100644
+--- a/Eigen/src/Core/GenericPacketMath.h
++++ b/Eigen/src/Core/GenericPacketMath.h
+@@ -160,7 +160,11 @@ struct eigen_packet_wrapper
+ {
+   EIGEN_ALWAYS_INLINE operator T&() { return m_val; }
+   EIGEN_ALWAYS_INLINE operator const T&() const { return m_val; }
++#if EIGEN_HAS_CXX11
++  EIGEN_ALWAYS_INLINE eigen_packet_wrapper() = default;
++#else
+   EIGEN_ALWAYS_INLINE eigen_packet_wrapper() {};
++#endif
+   EIGEN_ALWAYS_INLINE eigen_packet_wrapper(const T &v) : m_val(v) {}
+   EIGEN_ALWAYS_INLINE eigen_packet_wrapper& operator=(const T &v) {
+     m_val = v;
diff --git a/meta-oe/recipes-support/libeigen/libeigen_3.4.1.bb b/meta-oe/recipes-support/libeigen/libeigen_3.4.1.bb
index c5421e4621..5cb7407608 100644
--- a/meta-oe/recipes-support/libeigen/libeigen_3.4.1.bb
+++ b/meta-oe/recipes-support/libeigen/libeigen_3.4.1.bb
@@ -14,11 +14,11 @@  LIC_FILES_CHKSUM = "file://COPYING.MPL2;md5=815ca599c9df247a0c7f619bab123dad \
 
 SRC_URI = "git://gitlab.com/libeigen/eigen.git;protocol=http;branch=3.4 \
     file://0001-Remove-LGPL-Code-and-references.patch \
+    file://0001-Make-eigen_packet_wrapper-trivial-for-c-11.patch \
 "
 
 SRCREV = "d71c30c47858effcbd39967097a2d99ee48db464"
 
-
 inherit cmake
 
 PACKAGECONFIG ??= ""