From: Bruce Ashfield Date: Mon, 21 Oct 2019 20:16:15 +0000 (-0400) Subject: perf: fix v5.4+ builds X-Git-Tag: uninative-2.8~1214 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=6a000d734c2fe57b4a601fe7e7373096345b02b4;p=openembedded-core.git perf: fix v5.4+ builds When building perf for 5.4+, we have some new files that need to be copied (and synchronized) due to structural changes in the kernel source tree. Some of the issues these fixes are warnings, but none the less, they are worth fixing. - We copy arch/${ARCH}/Makefile, since it is source by some perf Makefiles - We copy scripts/, since the perf utilities are looking for files in that directory stucture. - We have *three* copies of ctypes.h in the tools/* hierarchy during the build. If the tools/perf/util/include/linux/ variant is used, it will trigger build errors since it is not complete. We copy the kernel's main include/linux/ctype.h to ensure they are in sync. Signed-off-by: Bruce Ashfield Signed-off-by: Ross Burton --- diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb index 8201c0cb60..0f5df74f11 100644 --- a/meta/recipes-kernel/perf/perf.bb +++ b/meta/recipes-kernel/perf/perf.bb @@ -113,6 +113,8 @@ PERF_SRC ?= "Makefile \ tools/Makefile \ tools/perf \ tools/scripts \ + scripts/ \ + arch/${ARCH}/Makefile \ " PERF_EXTRA_LDFLAGS = "" @@ -246,6 +248,11 @@ do_configure_prepend () { # bits.h can have the same issue as unistd.h, so we make the tools variant take precedence [ -e ${S}/tools/include/linux/bits.h ] && install -D -m0644 ${S}/tools/include/linux/bits.h ${S}/include/linux/bits.h + + [ -e ${S}/tools/perf/util/include/linux/ctype.h ] && install -D -m0644 ${S}/include/linux/ctype.h ${S}/tools/perf/util/include/linux/ctype.h + + [ -e ${S}/include/uapi/linux/kvm.h ] && install -D -m0644 ${S}/include/uapi/linux/kvm.h ${S}/tools/include/uapi/linux/kvm.h + [ -e ${S}/include/uapi/linux/sched.h ] && install -D -m0644 ${S}/include/uapi/linux/sched.h ${S}/tools/include/uapi/linux/sched.h } python do_package_prepend() {