mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2025-10-22 15:03:59 +02:00
libeigen: upgrade 3.4.0 -> 3.4.1
- Move Eigen BLAS, LAPACK as packageconfig as they requires Fortran compiler - Disable building TESTING - Remove patch that has been merged Signed-off-by: Clément Péron <peron.clem@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
c5d239faa6
commit
d47510d417
|
@ -1,72 +0,0 @@
|
|||
From cb507309937958c632147de87e8f1231d6698847 Mon Sep 17 00:00:00 2001
|
||||
From: Antonio Sanchez <cantonios@google.com>
|
||||
Date: Tue, 14 Sep 2021 10:57:22 -0700
|
||||
Subject: [PATCH] Default eigen_packet_wrapper constructor.
|
||||
|
||||
This makes it trivial, allowing use of `memcpy`.
|
||||
|
||||
Fixes #2326
|
||||
|
||||
Upstream-Status: Backport [https://gitlab.com/libeigen/eigen/-/merge_requests/645/diffs?commit_id=cb507309937958c632147de87e8f1231d6698847]
|
||||
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
||||
|
||||
* fixes build failures for arm targets with NEON enabled (e.g. -mfpu=neon-vfpv4)
|
||||
for recipes with -Werror enabled and gcc-11, e.g. fuse-core, robot-localization,
|
||||
prbt-ikfast-manipulator-plugin, rm-chassis-controllers in meta-ros1-noetic:
|
||||
|
||||
In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:214,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34:
|
||||
/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function 'Packet Eigen::internal::pload(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]':
|
||||
/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1671:9: error: 'void* memcpy(void*, const void*, size_t)' copying an object of non-trivial type 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} from an array of 'const int8_t' {aka 'const signed char'} [-Werror=class-memaccess]
|
||||
1671 | memcpy(&res, from, sizeof(Packet4c));
|
||||
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:172,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34:
|
||||
/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} declared here
|
||||
159 | struct eigen_packet_wrapper
|
||||
| ^~~~~~~~~~~~~~~~~~~~
|
||||
In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:214,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34:
|
||||
/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h: In function 'Packet Eigen::internal::ploadu(const typename Eigen::internal::unpacket_traits<T>::type*) [with Packet = Eigen::internal::eigen_packet_wrapper<int, 2>; typename Eigen::internal::unpacket_traits<T>::type = signed char]':
|
||||
/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/arch/NEON/PacketMath.h:1716:9: error: 'void* memcpy(void*, const void*, size_t)' copying an object of non-trivial type 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} from an array of 'const int8_t' {aka 'const signed char'} [-Werror=class-memaccess]
|
||||
1716 | memcpy(&res, from, sizeof(Packet4c));
|
||||
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
In file included from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/Core:172,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/macros.h:63,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/loss.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/include/fuse_core/constraint.h:37,
|
||||
from /jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/git/src/constraint.cpp:34:
|
||||
/jenkins/mjansa/build/ros/webos-noetic-honister/tmp-glibc/work/raspberrypi4-webos-linux-gnueabi/fuse-core/0.4.2-1-r0/recipe-sysroot/usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:159:8: note: 'Eigen::internal::Packet4c' {aka 'struct Eigen::internal::eigen_packet_wrapper<int, 2>'} declared here
|
||||
159 | struct eigen_packet_wrapper
|
||||
| ^~~~~~~~~~~~~~~~~~~~
|
||||
cc1plus: all warnings being treated as errors
|
||||
|
||||
---
|
||||
Eigen/src/Core/GenericPacketMath.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Eigen/src/Core/GenericPacketMath.h b/Eigen/src/Core/GenericPacketMath.h
|
||||
index 8f8f64f15..72234288e 100644
|
||||
--- a/Eigen/src/Core/GenericPacketMath.h
|
||||
+++ b/Eigen/src/Core/GenericPacketMath.h
|
||||
@@ -162,7 +162,7 @@ struct eigen_packet_wrapper
|
||||
{
|
||||
EIGEN_ALWAYS_INLINE operator T&() { return m_val; }
|
||||
EIGEN_ALWAYS_INLINE operator const T&() const { return m_val; }
|
||||
- EIGEN_ALWAYS_INLINE eigen_packet_wrapper() {}
|
||||
+ EIGEN_ALWAYS_INLINE eigen_packet_wrapper() = default;
|
||||
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;
|
||||
--
|
||||
2.17.1
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
From e63a6950dbebf4dd95e5c74c423c06fd65df5182 Mon Sep 17 00:00:00 2001
|
||||
From 5e7b53a3268e7cdc81e358825a8c84f06289866c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Antonio=20S=C3=A1nchez?= <cantonios@google.com>
|
||||
Date: Wed, 8 Feb 2023 01:25:06 +0000
|
||||
Subject: [PATCH] Remove LGPL Code and references.
|
||||
|
@ -12,12 +12,11 @@ Upstream-Status: Backport [https://gitlab.com/libeigen/eigen/-/commit/e256ad1823
|
|||
bench/tensors/eigen_sycl_bench.sh | 1 -
|
||||
bench/tensors/eigen_sycl_bench_contract.sh | 2 +-
|
||||
doc/PreprocessorDirectives.dox | 3 -
|
||||
test/CMakeLists.txt | 1 -
|
||||
test/mpl2only.cpp | 24 -
|
||||
unsupported/Eigen/IterativeSolvers | 6 -
|
||||
.../IterativeSolvers/ConstrainedConjGrad.h | 187 -------
|
||||
.../IterativeSolvers/IterationController.h | 154 ------
|
||||
12 files changed, 4 insertions(+), 898 deletions(-)
|
||||
11 files changed, 4 insertions(+), 897 deletions(-)
|
||||
delete mode 100644 COPYING.LGPL
|
||||
delete mode 100644 Eigen/src/Core/util/NonMPL2.h
|
||||
delete mode 100644 test/mpl2only.cpp
|
||||
|
@ -567,7 +566,7 @@ index 1af67cf18..000000000
|
|||
-#error Including non-MPL2 code in EIGEN_MPL2_ONLY mode
|
||||
-#endif
|
||||
diff --git a/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h b/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h
|
||||
index 7803fd817..1a5d7faeb 100644
|
||||
index 5e632c4e2..8b6077601 100644
|
||||
--- a/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h
|
||||
+++ b/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h
|
||||
@@ -24,8 +24,7 @@ namespace Eigen {
|
||||
|
@ -606,7 +605,7 @@ index 73fd6c4a0..3ab0138a1 100644
|
|||
./tensor_contract_sycl_bench
|
||||
|
||||
diff --git a/doc/PreprocessorDirectives.dox b/doc/PreprocessorDirectives.dox
|
||||
index 0f545b086..b7d59ccbc 100644
|
||||
index eda0d1961..2b5cb1b92 100644
|
||||
--- a/doc/PreprocessorDirectives.dox
|
||||
+++ b/doc/PreprocessorDirectives.dox
|
||||
@@ -92,9 +92,6 @@ run time. However, these assertions do cost time and can thus be turned off.
|
||||
|
@ -619,18 +618,6 @@ index 0f545b086..b7d59ccbc 100644
|
|||
|
||||
\section TopicPreprocessorDirectivesPerformance Alignment, vectorization and performance tweaking
|
||||
|
||||
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
|
||||
index 5136f82aa..9f557743a 100644
|
||||
--- a/test/CMakeLists.txt
|
||||
+++ b/test/CMakeLists.txt
|
||||
@@ -277,7 +277,6 @@ ei_add_test(special_numbers)
|
||||
ei_add_test(rvalue_types)
|
||||
ei_add_test(dense_storage)
|
||||
ei_add_test(ctorleak)
|
||||
-ei_add_test(mpl2only)
|
||||
ei_add_test(inplace_decomposition)
|
||||
ei_add_test(half_float)
|
||||
ei_add_test(bfloat16_float)
|
||||
diff --git a/test/mpl2only.cpp b/test/mpl2only.cpp
|
||||
deleted file mode 100644
|
||||
index 296350d08..000000000
|
||||
|
@ -662,11 +649,11 @@ index 296350d08..000000000
|
|||
- return 0;
|
||||
-}
|
||||
diff --git a/unsupported/Eigen/IterativeSolvers b/unsupported/Eigen/IterativeSolvers
|
||||
index a3f58d676..f045fb607 100644
|
||||
index b53f10937..3ac64e9f8 100644
|
||||
--- a/unsupported/Eigen/IterativeSolvers
|
||||
+++ b/unsupported/Eigen/IterativeSolvers
|
||||
@@ -19,7 +19,6 @@
|
||||
* \defgroup IterativeLinearSolvers_Module Iterative solvers module
|
||||
* \defgroup IterativeLinearSolvers_Module IterativeLinearSolvers module
|
||||
* This module aims to provide various iterative linear and non linear solver algorithms.
|
||||
* It currently provides:
|
||||
- * - a constrained conjugate gradient
|
||||
|
@ -1038,3 +1025,6 @@ index a116e09e2..000000000
|
|||
-} // end namespace Eigen
|
||||
-
|
||||
-#endif // EIGEN_ITERATION_CONTROLLER_H
|
||||
--
|
||||
2.48.1
|
||||
|
|
@ -13,15 +13,23 @@ LIC_FILES_CHKSUM = "file://COPYING.MPL2;md5=815ca599c9df247a0c7f619bab123dad \
|
|||
"
|
||||
|
||||
SRC_URI = "git://gitlab.com/libeigen/eigen.git;protocol=http;branch=3.4 \
|
||||
file://0001-Default-eigen_packet_wrapper-constructor.patch \
|
||||
file://0002-Remove-LGPL-Code-and-references.patch \
|
||||
file://0001-Remove-LGPL-Code-and-references.patch \
|
||||
"
|
||||
|
||||
SRCREV = "3147391d946bb4b6c68edd901f2add6ac1f31f8c"
|
||||
SRCREV = "d71c30c47858effcbd39967097a2d99ee48db464"
|
||||
|
||||
|
||||
inherit cmake
|
||||
|
||||
PACKAGECONFIG ??= ""
|
||||
|
||||
PACKAGECONFIG[blas] = "-DEIGEN_BUILD_BLAS=ON,-DEIGEN_BUILD_BLAS=OFF,libgfortran"
|
||||
PACKAGECONFIG[lapack] = "-DEIGEN_BUILD_LAPACK=ON,-DEIGEN_BUILD_LAPACK=OFF,libgfortran"
|
||||
|
||||
EXTRA_OECMAKE += " \
|
||||
-DEIGEN_BUILD_TESTING=OFF \
|
||||
"
|
||||
|
||||
FILES:${PN}-dev += "${datadir}/eigen3/cmake"
|
||||
|
||||
# ${PN} is empty so we need to tweak -dev and -dbg package dependencies
|
Loading…
Reference in New Issue
Block a user