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
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
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