HomeDefectsLIN6-14908
Fixed

LIN6-14908 : Package flip/extra package when building same configuration

Created: Aug 21, 2018    Updated: Aug 6, 2019
Resolved Date: Aug 6, 2019
Found In Version: 6.0.0.17
Fix Version: 6.0.0.38
Severity: Standard
Applicable for: Wind River Linux 6
Component/s: Build & Config

Description

Performing a number if identical builds and comparing the results of the installed packages reveals a number of variations in the results.

The actual RPM files built are identical, so the issue seems to be with the install stage.

Steps to Reproduce

Create 5 identical projects. No sstate or ccache are used so the results should be identical:

$ cd /path/to/work/area
$ mkdir prj01 && cd prj01
$ configure --enable-board=intel-x86-64 \
    --enable-kernel=standard --enable-rootfs=glibc_std+installer-support \
    --with-template=feature/target-toolchain,feature/lttng2,feature/wrsv-ltt,feature/nfsd,feature/build_libc,feature/debug-wb,feature/kexec,feature/kdump \
    --enable-checkout-all-layers=yes --enable-bootimage=ext3 \
    --enable-reconfig --enable-doc-pages=target --enable-prelink=no \
    --enable-rm-oldimgs=yes --with-layer=meta-selinux,wr-security \
    --enable-jobs=8 --enable-parallel-pkgbuilds=8 --with-rcpl-version=0017
$ vi local.conf

>>> Add the following <<<
IMAGE_INSTALL_append += "lib32-binutils"
IMAGE_INSTALL_append += "lib32-libffi"
IMAGE_INSTALL_append += "lib32-zlib"
LICENSE_CREATE_PACKAGE = "1" 

$ make fs
$ cd ..

Repeat for prj02 ... prj05

Compare the list of RPM files built to ensure they are identical:

$ find prj01/export/RPMS/ -name '*rpm' | awk -F\/ '{ print $5 }' | sort > prj01-built-rpms.txt

repeat for prj02 .. prj05

$ diff prj01-built-rpms.txt prj02-built-rpms
$ diff prj01-built-rpms.txt prj03-built-rpms

repeat for prj04 & prj05 and you should see no differences, all project uilt the identical set of RPMs.

Now compare what was actually installed in the target rootfs.

$ rpm --root=/$PWD/prj01/export/dist --dbpath=/var/lib/rpm -qa | sort > prj01-installed-rpms.txt

* Note, the customer uses the host-cross verion of the rpm command as follows:
host-cross/usr/bin/rpm --dbpath export/dist/var/lib/rpm/ -qa --queryformat "[%{NAME}_%{RELEASE}_%{VERSION}_%{ARCH}]\n" | sort > <file as backup for comparison>

Repeat above for prj02 .. prj05 then diff

$ diff prj01-installed-rpms.txt prj02-installed-rpms.txt
$ diff prj01-installed-rpms.txt prj03-installed-rpms.txt

repeat for prj04 .. prj05 and you should see differences in each case.

This is unexpected, the installed list of rpms should be identical in every case.

Other Downloads