From f6fd5814bb74f7e48a9629e559e69ea5c50bc17e Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Fri, 2 Jul 2021 11:13:46 -0400 Subject: kernel-devsrc: fix scripts prepare for powerpc 5.13 introduces some new tweaks required to get on target scripts and prepare working for powerpc: - 'nm' is detected as 'nm --synthetic', so we adjust our replacement - more vdso is required on target, so we copy those files (like arm64 does) - grep is required during processing, so we add it to the redpends Signed-off-by: Bruce Ashfield Signed-off-by: Alexandre Belloni Signed-off-by: Richard Purdie (cherry picked from commit c43baf3a0e41b41a64f450fd03810306c8ddd314) Signed-off-by: Anuj Mittal --- meta/recipes-kernel/linux/kernel-devsrc.bb | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/meta/recipes-kernel/linux/kernel-devsrc.bb b/meta/recipes-kernel/linux/kernel-devsrc.bb index b1837b3a51..92076ac8b0 100644 --- a/meta/recipes-kernel/linux/kernel-devsrc.bb +++ b/meta/recipes-kernel/linux/kernel-devsrc.bb @@ -112,6 +112,9 @@ do_install() { if [ "${ARCH}" = "arm64" ]; then cp -a --parents arch/arm64/kernel/vdso/vdso.lds $kerneldir/build/ fi + if [ "${ARCH}" = "powerpc" ]; then + cp -a --parents arch/powerpc/kernel/vdso32/vdso32.lds $kerneldir/build 2>/dev/null || : + fi cp -a include $kerneldir/build/include @@ -178,6 +181,7 @@ do_install() { cp -a --parents arch/${ARCH}/kernel/syscalls/syscall.tbl $kerneldir/build/ 2>/dev/null || : cp -a --parents arch/${ARCH}/kernel/syscalls/syscalltbl.sh $kerneldir/build/ 2>/dev/null || : cp -a --parents arch/${ARCH}/kernel/syscalls/syscallhdr.sh $kerneldir/build/ 2>/dev/null || : + cp -a --parents arch/${ARCH}/kernel/vdso32/* $kerneldir/build/ 2>/dev/null || : fi # include the machine specific headers for ARM variants, if available. @@ -281,7 +285,11 @@ do_install() { sed -i 's/ifneq "$(LD)" ".*-linux-.*ld.bfd.*$/ifneq "$(LD)" "ld"/' "$kerneldir/build/include/config/auto.conf.cmd" sed -i 's/ifneq "$(AR)" ".*-linux-.*ar.*$/ifneq "$(AR)" "ar"/' "$kerneldir/build/include/config/auto.conf.cmd" sed -i 's/ifneq "$(OBJCOPY)" ".*-linux-.*objcopy.*$/ifneq "$(OBJCOPY)" "objcopy"/' "$kerneldir/build/include/config/auto.conf.cmd" - sed -i 's/ifneq "$(NM)" ".*-linux-.*nm.*$/ifneq "$(NM)" "nm"/' "$kerneldir/build/include/config/auto.conf.cmd" + if [ "${ARCH}" = "powerpc" ]; then + sed -i 's/ifneq "$(NM)" ".*-linux-.*nm.*$/ifneq "$(NM)" "nm --synthetic"/' "$kerneldir/build/include/config/auto.conf.cmd" + else + sed -i 's/ifneq "$(NM)" ".*-linux-.*nm.*$/ifneq "$(NM)" "nm"/' "$kerneldir/build/include/config/auto.conf.cmd" + fi sed -i 's/ifneq "$(HOSTCXX)" ".*$/ifneq "$(HOSTCXX)" "g++"/' "$kerneldir/build/include/config/auto.conf.cmd" sed -i 's/ifneq "$(HOSTCC)" ".*$/ifneq "$(HOSTCC)" "gcc"/' "$kerneldir/build/include/config/auto.conf.cmd" sed -i 's/ifneq "$(CC_VERSION_TEXT)".*\(gcc.*\)"/ifneq "$(CC_VERSION_TEXT)" "\1"/' "$kerneldir/build/include/config/auto.conf.cmd" @@ -317,3 +325,5 @@ RDEPENDS_${PN} += "${@bb.utils.contains('ARCH', 'x86', 'elfutils', '', d)}" RDEPENDS_${PN} += "gcc-plugins libmpc-dev" # 5.13+ needs awk for arm64 RDEPENDS_${PN}_append_aarch64 = " gawk" +# 5.13+ needs grep for powerpc +RDEPENDS_${PN}_append_powerpc = " grep" -- cgit 1.2.3-korg