perf: Ensure we use CFLAGS and LDFLAGS settings from kernel build system
authorOtavio Salvador <otavio@ossystems.com.br>
Tue, 17 Sep 2013 04:18:20 +0000 (01:18 -0300)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 17 Sep 2013 19:53:56 +0000 (20:53 +0100)
The kernel build system does the right thing here and we should stop
overriding it. This code has been added based on a change from
'meta-metro' layer, revision 9d698004137c1a888d40d6a4808d94afa22387e7,
without any information about what problem it fixes so I am reverting
it.

Using the CFLAGS and LDFLAGS makes it impossible for kernel build
system to append to it, thus making the build fail in various ways as:

|     CC /.../perf/1.0-r8/perf-1.0/perf.o
| In file included from builtin.h:4:0,
|                  from perf.c:9:
| util/util.h:74:24: fatal error: lk/debugfs.h: No such file or directory
|  #include <lk/debugfs.h>
|                         ^
| compilation terminated.

The unset is done in do_compile and do_install otherwise it /rebuild/
perf as it detects the compiler options has change.

(From OE-Core rev: 2e90f8846db0f3ed99a175befff9ec67fe12bc4e)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-kernel/perf/perf.bb

index d2c1048..4a815ff 100644 (file)
@@ -60,7 +60,6 @@ B = "${WORKDIR}/${BPN}-${PV}"
 SCRIPTING_DEFINES = "${@perf_feature_enabled('perf-scripting', '', 'NO_LIBPERL=1 NO_LIBPYTHON=1',d)}"
 TUI_DEFINES = "${@perf_feature_enabled('perf-tui', '', 'NO_NEWT=1',d)}"
 
-export LDFLAGS = "-ldl -lutil"
 EXTRA_OEMAKE = \
                '-C ${S}/tools/perf \
                O=${B} \
@@ -72,13 +71,7 @@ EXTRA_OEMAKE = \
                NO_GTK2=1 ${TUI_DEFINES} NO_DWARF=1 ${SCRIPTING_DEFINES} \
                '
 
-# We already pass the correct arguments to our compiler for the CFLAGS (if we
-# don't override it, it'll add -m32/-m64 itself). For LDFLAGS, it was failing
-# to find bfd symbols.
 EXTRA_OEMAKE += "\
-       'CFLAGS=${CFLAGS} -fPIC' \
-       'LDFLAGS=${LDFLAGS} -lpthread -lrt -lelf -lm -lbfd' \
-       \
        'prefix=${prefix}' \
        'bindir=${bindir}' \
        'sharedir=${datadir}' \
@@ -94,10 +87,14 @@ EXTRA_OEMAKE += "\
 PARALLEL_MAKE = ""
 
 do_compile() {
+       # Linux kernel build system is expected to do the right thing
+       unset CFLAGS LDFLAGS
        oe_runmake all
 }
 
 do_install() {
+       # Linux kernel build system is expected to do the right thing
+       unset CFLAGS LDFLAGS
        oe_runmake DESTDIR=${D} install
        # we are checking for this make target to be compatible with older perf versions
        if [ "${@perf_feature_enabled('perf-scripting', 1, 0, d)}" = "1" -a $(grep install-python_ext ${S}/tools/perf/Makefile) = "0"]; then