summaryrefslogtreecommitdiffstats
path: root/meta/classes-recipe/module.bbclass
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2023-06-16 01:31:07 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-06-19 13:18:56 +0100
commit0ef2e5081b9c7250d2755e038f911a99ebe43a65 (patch)
tree108a99949aa27eeb5d2ae7ab1025fa0e8dfc43cd /meta/classes-recipe/module.bbclass
parent8502913bd3a653031943d8b1045153196ee30406 (diff)
downloadpoky-0ef2e5081b9c7250d2755e038f911a99ebe43a65.tar.gz
kernel: Add kernel specific STRIP variable
strip can be coming from binutils or from llvm in some cases llvm-strip can fail on kernel Subprocess output:aarch64-yoe-linux-llvm-strip: error: Link field value 28 in section .rela.dyn is not a symbol table This helps in selecting which strip is used when building kernel (From OE-Core rev: 03973c8c1c93ddb1c8e05b773bfcc45aed73a99f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes-recipe/module.bbclass')
-rw-r--r--meta/classes-recipe/module.bbclass7
1 files changed, 7 insertions, 0 deletions
diff --git a/meta/classes-recipe/module.bbclass b/meta/classes-recipe/module.bbclass
index b3b852be5f..f2f0b25a2d 100644
--- a/meta/classes-recipe/module.bbclass
+++ b/meta/classes-recipe/module.bbclass
@@ -20,6 +20,10 @@ python __anonymous () {
20 d.setVar('KBUILD_EXTRA_SYMBOLS', " ".join(extra_symbols)) 20 d.setVar('KBUILD_EXTRA_SYMBOLS', " ".join(extra_symbols))
21} 21}
22 22
23python do_package:prepend () {
24 os.environ['STRIP'] = d.getVar('KERNEL_STRIP')
25}
26
23python do_devshell:prepend () { 27python do_devshell:prepend () {
24 os.environ['CFLAGS'] = '' 28 os.environ['CFLAGS'] = ''
25 os.environ['CPPFLAGS'] = '' 29 os.environ['CPPFLAGS'] = ''
@@ -33,6 +37,7 @@ python do_devshell:prepend () {
33 os.environ['LD'] = d.getVar('KERNEL_LD') 37 os.environ['LD'] = d.getVar('KERNEL_LD')
34 os.environ['AR'] = d.getVar('KERNEL_AR') 38 os.environ['AR'] = d.getVar('KERNEL_AR')
35 os.environ['OBJCOPY'] = d.getVar('KERNEL_OBJCOPY') 39 os.environ['OBJCOPY'] = d.getVar('KERNEL_OBJCOPY')
40 os.environ['STRIP'] = d.getVar('KERNEL_STRIP')
36 os.environ['O'] = d.getVar('STAGING_KERNEL_BUILDDIR') 41 os.environ['O'] = d.getVar('STAGING_KERNEL_BUILDDIR')
37 kbuild_extra_symbols = d.getVar('KBUILD_EXTRA_SYMBOLS') 42 kbuild_extra_symbols = d.getVar('KBUILD_EXTRA_SYMBOLS')
38 if kbuild_extra_symbols: 43 if kbuild_extra_symbols:
@@ -47,6 +52,7 @@ module_do_compile() {
47 KERNEL_VERSION=${KERNEL_VERSION} \ 52 KERNEL_VERSION=${KERNEL_VERSION} \
48 CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ 53 CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
49 AR="${KERNEL_AR}" OBJCOPY="${KERNEL_OBJCOPY}" \ 54 AR="${KERNEL_AR}" OBJCOPY="${KERNEL_OBJCOPY}" \
55 STRIP="${KERNEL_STRIP}" \
50 O=${STAGING_KERNEL_BUILDDIR} \ 56 O=${STAGING_KERNEL_BUILDDIR} \
51 KBUILD_EXTRA_SYMBOLS="${KBUILD_EXTRA_SYMBOLS}" \ 57 KBUILD_EXTRA_SYMBOLS="${KBUILD_EXTRA_SYMBOLS}" \
52 ${MAKE_TARGETS} 58 ${MAKE_TARGETS}
@@ -57,6 +63,7 @@ module_do_install() {
57 oe_runmake DEPMOD=echo MODLIB="${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}" \ 63 oe_runmake DEPMOD=echo MODLIB="${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}" \
58 INSTALL_FW_PATH="${D}${nonarch_base_libdir}/firmware" \ 64 INSTALL_FW_PATH="${D}${nonarch_base_libdir}/firmware" \
59 CC="${KERNEL_CC}" LD="${KERNEL_LD}" OBJCOPY="${KERNEL_OBJCOPY}" \ 65 CC="${KERNEL_CC}" LD="${KERNEL_LD}" OBJCOPY="${KERNEL_OBJCOPY}" \
66 STRIP="${KERNEL_STRIP}" \
60 O=${STAGING_KERNEL_BUILDDIR} \ 67 O=${STAGING_KERNEL_BUILDDIR} \
61 ${MODULES_INSTALL_TARGET} 68 ${MODULES_INSTALL_TARGET}
62 69