diff options
author | Khem Raj <raj.khem@gmail.com> | 2012-08-15 20:15:46 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-08-17 17:44:57 +0100 |
commit | 43600df0d4efc976a9451163dd334b4763937932 (patch) | |
tree | 82ff0d0de8ac3d6b014bb797c7fdbdde8060502f /meta | |
parent | 73e2c12534856f14c1a94fb51874e9ba1655f07b (diff) | |
download | openembedded-core-43600df0d4efc976a9451163dd334b4763937932.tar.gz openembedded-core-43600df0d4efc976a9451163dd334b4763937932.tar.bz2 openembedded-core-43600df0d4efc976a9451163dd334b4763937932.zip |
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
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/chrpath.bbclass | 3 |
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): 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 |