summaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2012-08-15 20:15:46 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-08-17 17:45:12 +0100
commit650227eea3f36f18b6cfbfc23a30474cc07014e1 (patch)
tree83d7bf8b743791d4cf6c8614bfa0eba160a19ff5 /meta/classes
parentb0b92d7916d0f4106f16a1a301f7f2ea466b9411 (diff)
downloadpoky-650227eea3f36f18b6cfbfc23a30474cc07014e1.tar.gz
chrpath.bbclass: Account for case when ORIGIN is in RPATH
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: 43600df0d4efc976a9451163dd334b4763937932) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/chrpath.bbclass3
1 files changed, 2 insertions, 1 deletions
diff --git a/meta/classes/chrpath.bbclass b/meta/classes/chrpath.bbclass
index 659db31cb8..4a6e697380 100644
--- a/meta/classes/chrpath.bbclass
+++ b/meta/classes/chrpath.bbclass
@@ -48,8 +48,9 @@ def process_dir (directory, d):
48 rpaths = curr_rpath.split(":") 48 rpaths = curr_rpath.split(":")
49 new_rpaths = [] 49 new_rpaths = []
50 for rpath in rpaths: 50 for rpath in rpaths:
51 # If rpath is already dynamic continue 51 # If rpath is already dynamic copy it to new_rpath and continue
52 if rpath.find("$ORIGIN") != -1: 52 if rpath.find("$ORIGIN") != -1:
53 new_rpaths.append(rpath.strip())
53 continue 54 continue
54 # If the rpath shares a root with base_prefix determine a new dynamic rpath from the 55 # If the rpath shares a root with base_prefix determine a new dynamic rpath from the
55 # base_prefix shared root 56 # base_prefix shared root