From 825c647f6571e14969f645a41650e54a86350090 Mon Sep 17 00:00:00 2001 From: Scott Garman Date: Tue, 4 Sep 2012 16:19:51 -0700 Subject: relocatable.bbclass: Account for case when ORIGIN is in RPATH This patch was backported from OE-Core rev: 43600df0d4efc976a9451163dd334b4763937932 This fixes a case when RPATH embedded in program have one of its path already relative to ORIGIN. We were losing that path if such a path existed. This patch appends it to the new edited rpath being created when we see it. so RPATH like below (RPATH) Library rpath: [$ORIGIN/../lib/amd64/jli:$ORIGIN/../jre/lib/amd64/jli] would end up being empty but after this patch its kept intact (From OE-Core rev: 9ebb327ae17d1a765fd1499546ccf9076bb93234) Signed-off-by: Khem Raj Signed-off-by: Richard Purdie Signed-off-by: Scott Garman Signed-off-by: Richard Purdie --- meta/classes/relocatable.bbclass | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'meta') diff --git a/meta/classes/relocatable.bbclass b/meta/classes/relocatable.bbclass index 072f533f4f..7bbfe32d9f 100644 --- a/meta/classes/relocatable.bbclass +++ b/meta/classes/relocatable.bbclass @@ -50,8 +50,9 @@ def process_dir (directory, d): rpaths = curr_rpath.split(":") new_rpaths = [] for rpath in rpaths: - # If rpath is already dynamic continue + # If rpath is already dynamic copy it to new_rpath and continue if rpath.find("$ORIGIN") != -1: + new_rpaths.append(rpath.strip()) continue # If the rpath shares a root with base_prefix determine a new dynamic rpath from the # base_prefix shared root -- cgit v1.2.3-54-g00ecf