perf: fix undefined pr_* routines

When cross compiling libunwind support for ARM a missing debug include means
that pr* macros are not expanded, and hence link failures on the undefined
functions.

Since we must be compatible with many versions of the kernel and perf, we
sed the proper include into the files, while the permanent fix goes upstream
to the mainline kernel.

(From OE-Core rev: 81bb7a163d7e3c0bdcc72894ef731521d58edf90)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Bruce Ashfield 2014-10-01 00:43:36 -04:00 committed by Richard Purdie
parent 96c46db3c0
commit 319eb6021e

View File

@ -145,9 +145,14 @@ do_configure_prepend () {
if [ -e "${S}/tools/perf/config/feature-checks/Makefile" ]; then
sed -i 's,CC := $(CROSS_COMPILE)gcc -MD,CC += -MD,' ${S}/tools/perf/config/feature-checks/Makefile
fi
# 3.17-rc1+ has a include issue for powerpc. Temporarily sed in the appropriate include
if [ -e "${S}/tools/perf/arch/powerpc/util/skip-callchain-idx.c" ]; then
sed -i 's,#include "util/callchain.h",#include "util/callchain.h"\n#include "util/debug.h",' ${S}/tools/perf/arch/powerpc/util/skip-callchain-idx.c
# 3.17-rc1+ has a include issue for arm/powerpc. Temporarily sed in the appropriate include
if [ -e "${S}/tools/perf/arch/$ARCH/util/skip-callchain-idx.c" ]; then
sed -i 's,#include "util/callchain.h",#include "util/callchain.h"\n#include "util/debug.h",' ${S}/tools/perf/arch/$ARCH/util/skip-callchain-idx.c
fi
if [ -e "${S}/tools/perf/arch/arm/util/unwind-libunwind.c" ] && [ -e "${S}/tools/perf/arch/arm/tests/dwarf-unwind.c" ]; then
sed -i 's,#include "tests/tests.h",#include "tests/tests.h"\n#include "util/debug.h",' ${S}/tools/perf/arch/arm/tests/dwarf-unwind.c
sed -i 's,#include "perf_regs.h",#include "perf_regs.h"\n#include "util/debug.h",' ${S}/tools/perf/arch/arm/util/unwind-libunwind.c
fi
}