All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-oe][master][PATCH 1/2] suitesparse: fix CMake 4 configure failure
@ 2026-08-20 13:03 Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco)
  2026-08-20 13:03 ` [meta-oe][master][PATCH 2/2] suitesparse: avoid install rpath buildpaths QA Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco)
  0 siblings, 1 reply; 2+ messages in thread
From: Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco) @ 2026-08-20 13:03 UTC (permalink / raw)
  To: openembedded-devel

From: Himanshu Jadon <hjadon@cisco.com>

SuiteSparse 5.10.1 still carries bundled CMake entry points with
2.x minimum versions. CMake 4 rejects projects which request
compatibility with versions older than 3.5, so configure fails before
SuiteSparse can build.

Backport the upstream SuiteSparse change which raises the bundled
Mongoose, METIS and GKlib minimum version to 3.13. This version also
reaches two bundled GraphBLAS CMake entry points with the same old
minimum, so update those in the backport as well.

Signed-off-by: Himanshu Jadon <hjadon@cisco.com>
---
 .../0004-Allow-build-with-CMake-4.patch       | 86 +++++++++++++++++++
 .../suitesparse/suitesparse_5.10.1.bb         |  1 +
 2 files changed, 87 insertions(+)
 create mode 100644 meta-oe/recipes-devtools/suitesparse/suitesparse/0004-Allow-build-with-CMake-4.patch

diff --git a/meta-oe/recipes-devtools/suitesparse/suitesparse/0004-Allow-build-with-CMake-4.patch b/meta-oe/recipes-devtools/suitesparse/suitesparse/0004-Allow-build-with-CMake-4.patch
new file mode 100644
index 0000000000..5fc3f666c3
--- /dev/null
+++ b/meta-oe/recipes-devtools/suitesparse/suitesparse/0004-Allow-build-with-CMake-4.patch
@@ -0,0 +1,86 @@
+From 57e1fd1a4bf7878136a9f5070dadb310f233f489 Mon Sep 17 00:00:00 2001
+From: Tim Davis <DrTimothyAldenDavis@gmail.com>
+Date: Wed, 9 Mar 2022 10:33:33 -0600
+Subject: [PATCH] require cmake 3.13
+
+Upstream-Status: Backport [https://github.com/DrTimothyAldenDavis/SuiteSparse/commit/ae0be0028e68d429feb565f093aec875235447cc]
+Backport-Changes:
+ * Also update the two bundled GraphBLAS CMake entry points reached by
+   the SuiteSparse 5.10.1 build.
+ * Preserve the METIS_VERSION value supplied by the existing OE patch
+   after CMake policy CMP0048 becomes NEW.
+
+(cherry picked from commit ae0be0028e68d429feb565f093aec875235447cc)
+Signed-off-by: Deepak Rathore <deeratho@cisco.com>
+---
+ GraphBLAS/CMakeLists.txt           | 2 +-
+ GraphBLAS/GraphBLAS/CMakeLists.txt | 2 +-
+ Mongoose/CMakeLists.txt            | 2 +-
+ metis-5.1.0/CMakeLists.txt         | 2 +-
+ metis-5.1.0/GKlib/CMakeLists.txt   | 2 +-
+ 5 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/GraphBLAS/CMakeLists.txt b/GraphBLAS/CMakeLists.txt
+index 7eb999189..eecfa0ac5 100644
+--- a/GraphBLAS/CMakeLists.txt
++++ b/GraphBLAS/CMakeLists.txt
+@@ -12,7 +12,7 @@
+ #-------------------------------------------------------------------------------
+ 
+ # cmake 3.13 is preferred.
+-cmake_minimum_required ( VERSION 2.8.12 )
++cmake_minimum_required ( VERSION 3.13 )
+ 
+ message ( STATUS "CMake version: " ${CMAKE_VERSION} )
+ 
+diff --git a/GraphBLAS/GraphBLAS/CMakeLists.txt b/GraphBLAS/GraphBLAS/CMakeLists.txt
+index f365251db..26928dc0a 100644
+--- a/GraphBLAS/GraphBLAS/CMakeLists.txt
++++ b/GraphBLAS/GraphBLAS/CMakeLists.txt
+@@ -17,7 +17,7 @@
+ #-------------------------------------------------------------------------------
+ 
+ # cmake 3.13 is preferred.
+-cmake_minimum_required ( VERSION 2.8.12 )
++cmake_minimum_required ( VERSION 3.13 )
+ 
+ message ( STATUS "CMake version: " ${CMAKE_VERSION} )
+ 
+diff --git a/Mongoose/CMakeLists.txt b/Mongoose/CMakeLists.txt
+index 91a7f70ef..361fa1239 100644
+--- a/Mongoose/CMakeLists.txt
++++ b/Mongoose/CMakeLists.txt
+@@ -20,7 +20,7 @@
+ #
+ #   make distclean
+ 
+-cmake_minimum_required(VERSION 2.8)
++cmake_minimum_required(VERSION 3.13)
+ include(CMake/cmake_colors.cmake)
+ 
+ if (POLICY CMP0048)
+diff --git a/metis-5.1.0/CMakeLists.txt b/metis-5.1.0/CMakeLists.txt
+index 318019bfc..1a72ed0d0 100644
+--- a/metis-5.1.0/CMakeLists.txt
++++ b/metis-5.1.0/CMakeLists.txt
+@@ -1,5 +1,5 @@
+-cmake_minimum_required(VERSION 2.8)
+-project(METIS)
++cmake_minimum_required(VERSION 3.13)
++project(METIS VERSION ${METIS_VERSION})
+ 
+ set(GKLIB_PATH "GKlib" CACHE PATH "path to GKlib")
+ set(SHARED FALSE CACHE BOOL "build a shared library")
+diff --git a/metis-5.1.0/GKlib/CMakeLists.txt b/metis-5.1.0/GKlib/CMakeLists.txt
+index 67b600aa6..2f4ae75d7 100644
+--- a/metis-5.1.0/GKlib/CMakeLists.txt
++++ b/metis-5.1.0/GKlib/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 2.8)
++cmake_minimum_required(VERSION 3.13)
+ project(GKlib)
+ 
+ get_filename_component(abs "." ABSOLUTE)
+-- 
+2.35.6
+
diff --git a/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb b/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb
index 377801579e..f655ac17fd 100644
--- a/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb
+++ b/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb
@@ -5,6 +5,7 @@ SRC_URI = "git://github.com/DrTimothyAldenDavis/SuiteSparse;protocol=https;branc
            file://0002-Preserve-links-when-installing-libmetis.patch \
            file://0003-Add-version-information-to-libmetis.patch \
            file://makefile-quoting.patch \
+           file://0004-Allow-build-with-CMake-4.patch \
            "
 SRCREV = "538273cfd53720a10e34a3d80d3779b607e1ac26"
 
-- 
2.35.6



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [meta-oe][master][PATCH 2/2] suitesparse: avoid install rpath buildpaths QA
  2026-08-20 13:03 [meta-oe][master][PATCH 1/2] suitesparse: fix CMake 4 configure failure Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco)
@ 2026-08-20 13:03 ` Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco)
  0 siblings, 0 replies; 2+ messages in thread
From: Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco) @ 2026-08-20 13:03 UTC (permalink / raw)
  To: openembedded-devel

From: Himanshu Jadon <hjadon@cisco.com>

SuiteSparse adds -Wl,-rpath=$(INSTALL_LIB) while linking shared
libraries on Linux. In the OpenEmbedded build this value can resolve to
a build or install path under TMPDIR, so installed ELF files can keep an
absolute build path and fail buildpaths QA.

The packaged libraries do not need this install-tree rpath. Runtime
resolution is handled through normal package dependencies and the target
library search path. Keep the librt link and drop only the rpath entry.

Signed-off-by: Himanshu Jadon <hjadon@cisco.com>
---
 ...dd-install-rpath-to-shared-libraries.patch | 37 +++++++++++++++++++
 .../suitesparse/suitesparse_5.10.1.bb         |  1 +
 2 files changed, 38 insertions(+)
 create mode 100644 meta-oe/recipes-devtools/suitesparse/suitesparse/0005-Do-not-add-install-rpath-to-shared-libraries.patch

diff --git a/meta-oe/recipes-devtools/suitesparse/suitesparse/0005-Do-not-add-install-rpath-to-shared-libraries.patch b/meta-oe/recipes-devtools/suitesparse/suitesparse/0005-Do-not-add-install-rpath-to-shared-libraries.patch
new file mode 100644
index 0000000000..a6105f73f8
--- /dev/null
+++ b/meta-oe/recipes-devtools/suitesparse/suitesparse/0005-Do-not-add-install-rpath-to-shared-libraries.patch
@@ -0,0 +1,37 @@
+From f8be0a727c506d25450386c370a846e66b3f3297 Mon Sep 17 00:00:00 2001
+From: Deepak Rathore <deeratho@cisco.com>
+Date: Wed, 5 Aug 2026 00:00:00 -0700
+Subject: [PATCH] Do not add install rpath to shared libraries
+
+SuiteSparse adds the install library directory to Linux shared library
+links through -Wl,-rpath=$(INSTALL_LIB). In Yocto builds INSTALL_LIB
+resolves to a build or install path under TMPDIR, so the final ELF files
+keep an absolute TMPDIR path in .dynstr even after chrpath removes the
+dynamic rpath tag.
+
+Yocto stages dependent SuiteSparse libraries through normal sysroot and
+package runtime dependencies. The install-tree rpath is not required for
+packaged target libraries, and it makes buildpaths QA fail.
+
+Upstream-Status: Inappropriate [oe-specific: build/install path triggers buildpaths QA]
+
+Signed-off-by: Deepak Rathore <deeratho@cisco.com>
+---
+ SuiteSparse_config/SuiteSparse_config.mk | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/SuiteSparse_config/SuiteSparse_config.mk b/SuiteSparse_config/SuiteSparse_config.mk
+index 8309c5142..807323c4c 100644
+--- a/SuiteSparse_config/SuiteSparse_config.mk
++++ b/SuiteSparse_config/SuiteSparse_config.mk
+@@ -358,7 +358,7 @@ SUITESPARSE_VERSION = 5.10.1
+ 
+     ifeq ($(UNAME),Linux)
+         # add the realtime library, librt, and SuiteSparse/lib
+-        LDLIBS += -lrt -Wl,-rpath=$(INSTALL_LIB)
++        LDLIBS += -lrt
+     endif
+ 
+     #---------------------------------------------------------------------------
+-- 
+2.43.0
diff --git a/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb b/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb
index f655ac17fd..a2fee6400c 100644
--- a/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb
+++ b/meta-oe/recipes-devtools/suitesparse/suitesparse_5.10.1.bb
@@ -6,6 +6,7 @@ SRC_URI = "git://github.com/DrTimothyAldenDavis/SuiteSparse;protocol=https;branc
            file://0003-Add-version-information-to-libmetis.patch \
            file://makefile-quoting.patch \
            file://0004-Allow-build-with-CMake-4.patch \
+           file://0005-Do-not-add-install-rpath-to-shared-libraries.patch \
            "
 SRCREV = "538273cfd53720a10e34a3d80d3779b607e1ac26"
 
-- 
2.35.6



^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-08-20 13:04 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-20 13:03 [meta-oe][master][PATCH 1/2] suitesparse: fix CMake 4 configure failure Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco)
2026-08-20 13:03 ` [meta-oe][master][PATCH 2/2] suitesparse: avoid install rpath buildpaths QA Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco)

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.