suitesparse: avoid install rpath buildpaths QA

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>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
Himanshu Jadon
2026-08-20 06:03:58 -07:00
committed by Khem Raj
parent de2fc817a4
commit 47037e87d5
2 changed files with 38 additions and 0 deletions
@@ -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
@@ -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"