Wind River Support Network

HomeDefectsLIN6-7539
Fixed

LIN6-7539 : perf build dependency broken

Created: May 26, 2014    Updated: Dec 3, 2018
Resolved Date: Jun 19, 2014
Found In Version: 6.0.0.6
Fix Version: 6.0.0.11
Severity: Standard
Applicable for: Wind River Linux 6
Component/s: Userspace

Description

Building perf in filesystem containing the package "audit" with parallel-pkgbuild will create different content depending if audit was build before or after perf. The packageconfig setup in wrlinux/yocto is broken!!!
Building a package, e.g. "perf" should always give the same content independently of the build order of the packages. 

Include the following in the perf.bbappend file
DEPENDS += "audit"

NOTE; This is not the only package that is broken like this!!


----------------------------------------------------------------------
cat ./wr-kernel/recipes-kernel/perf/perf.bbappend 
#
# Copyright (C) 2013 Wind River Systems, Inc.
#

PACKAGECONFIG ??= ""

PACKAGECONFIG_append_x86 ??= "numactl"
PACKAGECONFIG_append_x86-64 ??= "numactl"

# enable,disable,depends,rdepends
#
PACKAGECONFIG[audit] = ",,audit,audit"
PACKAGECONFIG[numactl] = ",,numactl,numactl"

Workaround

Include the following in the perf.bbappend file
DEPENDS += "audit"

Steps to Reproduce

$ $WRL6_INSTALL_PATH/wrlinux_600.6/wrlinux-6/wrlinux/configure --with-package=audit,perf --enable-build=production --enable-rootfs=glibc_tiny --enable-kernel=standard --enable-board=lsi-axm55xx --enable-reconfig --enable-parallel-pkgbuilds=4 --enable-jobs=4 --enable-unsupported-config=yes --enable-addons=cgp --with-layer=cgp,wr-security,meta-selinux
$ make fs
$ make bbs
$ bitbake -c cleanall perf
$ bitbake -c cleanall audit
$ bitbake wrlinux-image-glibc-tiny
$ cat tmp/work/lsi_axm55xx-wrs-linux-gnueabi/perf/1.0-r8/temp/log.do_compile

DEBUG: Executing shell function do_compile
NOTE: make -C /wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/sysroots/lsi-axm55xx/usr/src/kernel/tools/perf O=/wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/work/lsi_axm55xx-wrs-linux-gnueabi/perf/1.0-r8/perf-1.0 CROSS_COMPILE=arm-wrs-linux-gnueabi- ARCH=arm CC=ccache arm-wrs-linux-gnueabi-gcc  -march=armv7-a -marm -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -tthumb2-v7-a-neon --sysroot=/wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/sysroots/lsi-axm55xx AR=arm-wrs-linux-gnueabi-ar perfexecdir=/usr/lib/perf NO_GTK2=1 NO_DWARF=1 prefix=/usr bindir=/usr/bin sharedir=/usr/share sysconfdir=/etc perfexecdir=/usr/lib/perf/perf-core ETC_PERFCONFIG=../etc sharedir=share mandir=share/man infodir=share/info all
    CHK -fstack-protector-all
    CHK -Wstack-protector
    CHK -Wvolatile-register-var
    CHK -D_FORTIFY_SOURCE=2
    CHK bionic
    CHK libelf
    CHK libdw
make: Entering directory `/wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/sysroots/lsi-axm55xx/usr/src/kernel/tools/perf'
Makefile:603: No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev
    CHK -DLIBELF_MMAP
    CHK libaudit
Makefile:681: No libaudit.h found, disables 'trace' tool, please install audit-libs-devel or libaudit-dev
    CHK libslang
    CHK perl
.....

$ bitbake -c cleanall perf
$ bitbake wrlinux-image-glibc-tiny
$ cat tmp/work/lsi_axm55xx-wrs-linux-gnueabi/perf/1.0-r8/temp/log.do_compile

DEBUG: Executing shell function do_compile
NOTE: make -C /wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/sysroots/lsi-axm55xx/usr/src/kernel/tools/perf O=/wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/work/lsi_axm55xx-wrs-linux-gnueabi/perf/1.0-r8/perf-1.0 CROSS_COMPILE=arm-wrs-linux-gnueabi- ARCH=arm CC=ccache arm-wrs-linux-gnueabi-gcc  -march=armv7-a -marm -mthumb-interwork -mfloat-abi=softfp -mfpu=neon -tthumb2-v7-a-neon --sysroot=/wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/sysroots/lsi-axm55xx AR=arm-wrs-linux-gnueabi-ar perfexecdir=/usr/lib/perf NO_GTK2=1 NO_DWARF=1 prefix=/usr bindir=/usr/bin sharedir=/usr/share sysconfdir=/etc perfexecdir=/usr/lib/perf/perf-core ETC_PERFCONFIG=../etc sharedir=share mandir=share/man infodir=share/info all
    CHK -fstack-protector-all
    CHK -Wstack-protector
    CHK -Wvolatile-register-var
    CHK -D_FORTIFY_SOURCE=2
    CHK bionic
    CHK libelf
    CHK libdw
make: Entering directory `/wrl6/example/wrl-axm55xx/out/kalle/bitbake_build/tmp/sysroots/lsi-axm55xx/usr/src/kernel/tools/perf'
Makefile:603: No libdw.h found or old libdw.h found or elfutils is older than 0.138, disables dwarf support. Please install new elfutils-devel/libdw-dev
    CHK -DLIBELF_MMAP
    CHK libaudit
    CHK libslang
    CHK perl

Other Downloads


Live chat
Online