[oe] [PATCH] insane bbclass: extend RPATH check to cover sysroots as well

Koen Kooi k.kooi at student.utwente.nl
Tue Jan 25 13:41:42 UTC 2011


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 20-01-11 08:10, Koen Kooi wrote:
> On 19-01-11 20:35, Philip Balister wrote:
>> On 01/19/2011 11:21 AM, Koen Kooi wrote:
>>> * Having rpath to sysroot is just as bad as one to workdir
> 
>> When you do a build with this, how many recipes have issues?
> 
> Console-image is clean now :)

And angstrom-gnome-image as well, so can I get some Acks or tested-bys
please?

> 
> 
>> Philip
> 
> 
>>>
>>> Based on insane.bbclass from yocto
>>>
>>> Signed-off-by: Koen Kooi<koen at openembedded.org>
>>> ---
>>>   classes/insane.bbclass |   11 ++++++-----
>>>   1 files changed, 6 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/classes/insane.bbclass b/classes/insane.bbclass
>>> index 677db27..50752b5 100644
>>> --- a/classes/insane.bbclass
>>> +++ b/classes/insane.bbclass
>>> @@ -160,20 +160,21 @@ def package_qa_check_rpath(file,name,d, elf):
>>>       import bb, os
>>>       sane = True
>>>       scanelf =
>>> os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True),'scanelf')
>>> -    bad_dir = bb.data.getVar('TMPDIR', d, True) + "/work"
>>> +    bad_dirs = [bb.data.getVar('TMPDIR', d, True) + "/work",
>>> bb.data.getVar('STAGING_DIR_TARGET', d, True)]
>>>       bad_dir_test = bb.data.getVar('TMPDIR', d, True)
>>>       if not os.path.exists(scanelf):
>>>           bb.fatal("Can not check RPATH, scanelf (part of
>>> pax-utils-native) not found")
>>>
>>> -    if not bad_dir in bb.data.getVar('WORKDIR', d, True):
>>> +    if not bad_dirs[0] in bb.data.getVar('WORKDIR', d, True):
>>>           bb.fatal("This class assumed that WORKDIR is
>>> ${TMPDIR}/work... Not doing any check")
>>>
>>>       output = os.popen("%s -B -F%%r#F '%s'" % (scanelf,file))
>>>       txt    = output.readline().split()
>>>       for line in txt:
>>> -        if bad_dir in line:
>>> -            error_msg = "package %s contains bad RPATH %s in file %s"
>>> % (name, line, file)
>>> -            sane = package_qa_handle_error(1, error_msg, name, file, d)
>>> +        for dir in bad_dirs:
>>> +            if dir in line:
>>> +                error_msg = "package %s contains bad RPATH %s in file
>>> %s" % (name, line, file)
>>> +                sane = sane + package_qa_handle_error(1, error_msg,
>>> name, file, d)
>>>
>>>       return sane
>>>
> 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFNPtMWMkyGM64RGpERAoWvAKC2+GgE7rmeUXUClmBBlAx5WB1dNgCgjGlf
IkvPXdAoZ6J072F/YSctiyE=
=Pndr
-----END PGP SIGNATURE-----





More information about the Openembedded-devel mailing list