[meta-oe][master][PATCH 2/2] suitesparse: avoid install rpath buildpaths QA
"Himanshu Jadon -X (hjadon - E INFOCHIPS PRIVATE LIMITED at Cisco)" <[email protected]>
| Newsgroups | org.openembedded.lists.openembedded-devel |
|---|---|
| Message-ID | <[email protected]> |
From: Himanshu Jadon <[email protected]> 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 <[email protected]> --- ...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 <[email protected]> +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 <[email protected]> +--- + 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