-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 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?
At least udev: ERROR: QA Issue with udev: package udev contains bad RPATH /OE/angstrom-setup-scripts/build/tmp-angstrom_2008_1/sysroots/armv7a-angstrom-linux-gnueabi/usr/lib in file /OE/angstrom-setup-scripts/build/tmp-angstrom_2008_1/work/armv7a-angstrom-linux-gnueabi/udev-165-r0/packages-split/udev/lib/udev/udev-acl ERROR: QA Issue with udev: package udev contains bad RPATH /OE/angstrom-setup-scripts/build/tmp-angstrom_2008_1/sysroots/armv7a-angstrom-linux-gnueabi/usr/lib in file /OE/angstrom-setup-scripts/build/tmp-angstrom_2008_1/work/armv7a-angstrom-linux-gnueabi/udev-165-r0/packages-split/udev/lib/udev/hid2hci ERROR: QA Issue with udev: package udev contains bad RPATH /OE/angstrom-setup-scripts/build/tmp-angstrom_2008_1/sysroots/armv7a-angstrom-linux-gnueabi/usr/lib in file /OE/angstrom-setup-scripts/build/tmp-angstrom_2008_1/work/armv7a-angstrom-linux-gnueabi/udev-165-r0/packages-split/udev/lib/udev/mobile-action-modeswitch I'm doing a build from scratch now to see what will fail first. Richard and Scott have fixed a number of those in yocto, so I'll be working with them and Khem to 'port' those over to OE. This patch is merely here to have people realize how buggered OE currently is with stray RPATHs regards, Koen > > Philip > > >> >> Based on insane.bbclass from yocto >> >> Signed-off-by: Koen Kooi<[email protected]> >> --- >> 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) iD8DBQFNN0JLMkyGM64RGpERAlmoAKC4ydMPfud8DpW5RZOEtiB+z+o0DACeO2jb dmskeJB73C+waA899CHri2w= =q33T -----END PGP SIGNATURE----- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
