STATUS: FAILED BUILD: master:3ec4df57540421df2cda6b83c615bfb7cebccefd ENVIRONMENT: Multiple environments STEPS TO REPRODUCE: Test if sanity check could report warning if there are packages installed under /bin or /sbin, but depends on something under /usr/lib 1. prepare yocto build environment 2. modify or add a recipe, which is installed under /bin or /sbin, but depends on something under /usr/lib. For example, we could revert following patch against recipe libusb and build udev##### diff --git a/meta/recipes-support/libusb/libusb-compat_0.1.3.bb b/meta/recipes-support/libusb/libusb-compat_0.1.3.bb index ef8552b..e070463 100644 --- a/meta/recipes-support/libusb/libusb-compat_0.1.3.bb +++ b/meta/recipes-support/libusb/libusb-compat_0.1.3.bb @@ -15,7 +15,7 @@ DEPENDS = "libusb1" PROVIDES = "libusb" PE = "1" -PR = "r0" +PR = "r1" SRC_URI = "${SOURCEFORGE_MIRROR}/libusb/libusb-compat-${PV}.tar.bz2 \ file://0.1.0-beta1-gcc3.4-fix.patch" @@ -24,3 +24,13 @@ SRC_URI[md5sum] = "570ac2ea085b80d1f74ddc7c6a93c0eb" SRC_URI[sha256sum] = "a590a03b6188030ee1ca1a0af55685fcde005ca807b963970f839be776031d94" inherit autotools pkgconfig binconfig + +EXTRA_OECONF = "--libdir=${base_libdir}" + +do_install_append() { + install -d ${D}${libdir} + mv ${D}${base_libdir}/*.la ${D}${libdir} + mv ${D}${base_libdir}/pkgconfig ${D}${libdir}+ +FILES_${PN}-dev += "${base_libdir}/*.so" ##### 3. check if yocto build will report warning for udev EXPECTED OUTCOME: Sanity check should report warning if there are packages installed under /bin or /sbin, but depends on something under /usr/lib ACTUAL OUTCOME: Even though some are expected, no such warning are shown for the following commands: "bitbake libusb-compat" "bitbake core-image-sato" "bitbake udev" PS: After a talk with Richard, the fact that the test case asks to build "udev" in order to test this patch is unnecessary. Udev does pull in libusb-compat though so it should be relevant. Also a core-image-sato should give off at least a few warnings like the ones described even without the patch.
I believe that we have disabled those checks by default, is this a new failure? Has this test been run on past milestones?
Indeed. I forgot to mention I also added WARN_QA_append = " unsafe-references-in-binaries unsafe-references-in-scripts" in local.conf . This should trigger those warnings. The test case was updated. I tested this issue for the last month and because I was not getting any warnings I believed I was doing something wrong and that I did not have enough information. I will come back with details about the last working build.
The last known working build for this feature: 1.3 M4 RC2
This seems to work correctly for the existing packages, it might be your libusb is no longer valid. WARNING: QA Issue: nfs-utils: Found a reference to /usr/ in /home/sgw/yocto/builds/world/tmp/work/x86_64-poky-linux/nfs-utils/1.2.7-r0/packages-split/nfs-utils/sbin/osd_login WARNING: QA Issue: Shell scripts in base_bindir and base_sbindir should not reference anything in exec_prefix WARNING: QA Issue: gzip: Found a reference to /usr/ in /home/sgw/yocto/builds/world/tmp/work/x86_64-poky-linux/gzip/1.5-r0/packages-split/gzip/bin/zcat.gzip WARNING: QA Issue: Shell scripts in base_bindir and base_sbindir should not reference anything in exec_prefix WARNING: QA Issue: gzip: Found a reference to /usr/ in /home/sgw/yocto/builds/world/tmp/work/x86_64-poky-linux/gzip/1.5-r0/packages-split/gzip/bin/gunzip.gzip WARNING: QA Issue: Shell scripts in base_bindir and base_sbindir should not reference anything in exec_prefix Please try to use an unmodified recipe for this test.
I am still not able to make this work. I made a core-image-sato and core-image-sato-sdk with WARN_QA_append = " unsafe-references-in-binaries unsafe-references-in-scripts" in local.conf and I got no such warnings. My setup: Machine: Ubuntu 12.04 x86-64 branch: master commit:7d22ef28e64de06b6238d0ef9b664c0bee6efa46 Extra options: download mirror in local.conf Saul, can you please give us your steps to reproduce and setup? Maybe we are missing something.
Switching to reopened as no qa-warns are available, although WARN_QA_append = " unsafe-references-in-binaries unsafe-references-in-scripts" is mentioned in local.conf. Waiting for steps from Saul.
1) Clean sstate of gzip and nfs-utils bitbake -c cleansstate gzip nfs-utils 2) Add correct warning to local.conf WARN_QA_append = " unsafe-references-in-binaries unsafe-references-in-scripts" 3) rebuild gzip and nfs-utils bitbake gzip nfs-utils 4) Observe warnings
I suggest using existing recipes and not modifying the udev recipe. The gzip and nfs-utils are packages that should show this issue as I reported above.
Verified on danny branch, commit ID:955827af15f611189c66850fd077de344e1285c3
Verified on master branch also. Commit ID:365eb9b5d22208c967dcd91d8ab52faed20f04b5
Switching to verified