diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-08-17 16:37:47 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-08-17 17:42:37 +0100 |
commit | 73e2c12534856f14c1a94fb51874e9ba1655f07b (patch) | |
tree | e1629946039e15a936434ba2fdff69bbf6244033 | |
parent | 99815eddd4e1eb5d939831704231537dd5a995ad (diff) | |
download | openembedded-core-73e2c12534856f14c1a94fb51874e9ba1655f07b.tar.gz openembedded-core-73e2c12534856f14c1a94fb51874e9ba1655f07b.tar.bz2 openembedded-core-73e2c12534856f14c1a94fb51874e9ba1655f07b.zip |
chrpath.bbclass: Ensure we only process tmpdir in paths which actually contain that path
Without this change, a path to "/lib/xxx" or "/usr/lib/xxx" would also
attempt to be remapped to be relative to $ORIGIN which makes no sense.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/chrpath.bbclass | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/meta/classes/chrpath.bbclass b/meta/classes/chrpath.bbclass index 89222484b8..659db31cb8 100644 --- a/meta/classes/chrpath.bbclass +++ b/meta/classes/chrpath.bbclass @@ -60,10 +60,12 @@ def process_dir (directory, d): # NOTE: This will not work reliably for cross packages, particularly in the case # where your TMPDIR is a short path (i.e. /usr/poky) as chrpath cannot insert an # rpath longer than that which is already set. - else: + elif rpath.find(tmpdir) != -1: depth = fpath.rpartition(tmpdir)[2].count('/') libpath = rpath.partition(tmpdir)[2].strip() - + else: + new_rpaths.append(rpath.strip()) + continue base = "$ORIGIN" while depth > 1: base += "/.." |