diff options
author | Andy Ross <andy.ross@windriver.com> | 2012-08-20 14:05:58 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-08-21 11:49:45 +0100 |
commit | 72a924d0686389d648338efd3f675fc85ee2d181 (patch) | |
tree | 26cfc42dcfb3ae7ff55ef9cd887fed372558a144 | |
parent | f5c39ea822b440ae4bdd38be94fcf8a2814d2229 (diff) | |
download | openembedded-core-72a924d0686389d648338efd3f675fc85ee2d181.tar.gz openembedded-core-72a924d0686389d648338efd3f675fc85ee2d181.tar.bz2 openembedded-core-72a924d0686389d648338efd3f675fc85ee2d181.zip |
insane.bbclass: Fix RPATH warning in the face of funny path strings
In toolchain edge cases it's possible for the RPATH of a library to be
set to something like "/usr/lib/../lib". This should be detected as
"/usr/lib" and generate a warning.
Signed-off-by: Andy Ross <andy.ross@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/insane.bbclass | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index 0f3f1cd082..8b6f05413d 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass @@ -166,6 +166,9 @@ def package_qa_check_useless_rpaths(file, name, d, elf, messages): """ Check for RPATHs that are useless but not dangerous """ + def rpath_eq(a, b): + return os.path.normpath(a) == os.path.normpath(b) + if not elf: return @@ -181,7 +184,7 @@ def package_qa_check_useless_rpaths(file, name, d, elf, messages): m = rpath_re.match(line) if m: rpath = m.group(1) - if rpath == libdir or rpath == base_libdir: + if rpath_eq(rpath, libdir) or rpath_eq(rpath, base_libdir): # The dynamic linker searches both these places anyway. There is no point in # looking there again. messages.append("%s: %s contains probably-redundant RPATH %s" % (name, package_qa_clean_path(file, d), rpath)) |