diff mbox series

[meta-oe,2/2] kernel-selftest: Use clang options when clang is available

Message ID 20231010185238.2842132-2-raj.khem@gmail.com
State New
Headers show
Series [meta-oe,1/2] kernel-selftest: Copy the .config from kernel build | expand

Commit Message

Khem Raj Oct. 10, 2023, 6:52 p.m. UTC
Enable bpf only with clang

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../kernel-selftest/kernel-selftest.bb           | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

Comments

Ryan Eatmon Oct. 11, 2023, 2:23 p.m. UTC | #1
Thank you.  This fixed our nightly master builds.  Much appreciated.


On 10/10/2023 1:52 PM, Khem Raj wrote:
> Enable bpf only with clang
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>   .../kernel-selftest/kernel-selftest.bb           | 16 ++++++++--------
>   1 file changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb b/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
> index 2e5680d775..291a83aaad 100644
> --- a/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
> +++ b/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
> @@ -18,7 +18,9 @@ SRC_URI += "file://run-ptest \
>   # we will append other kernel selftest in the future
>   # bpf was added in 4.10 with: https://github.com/torvalds/linux/commit/5aa5bd14c5f8660c64ceedf14a549781be47e53d
>   # if you have older kernel than that you need to remove it from PACKAGECONFIG
> -PACKAGECONFIG ??= "firmware bpf"
> +PACKAGECONFIG ??= "firmware"
> +# bpf needs working clang compiler anyway
> +PACKAGECONFIG:append:toolchain-clang:x86-64 = " bpf"
>   PACKAGECONFIG:remove:x86 = "bpf"
>   PACKAGECONFIG:remove:arm = "bpf vm"
>   # host ptrace.h is used to compile BPF target but mips ptrace.h is needed
> @@ -54,17 +56,15 @@ EXTRA_OEMAKE = '\
>       CC="${CC}" \
>       AR="${AR}" \
>       LD="${LD}" \
> -    LLVM=1 \
> -    CONFIG_CC_IS_GCC= \
> -    CONFIG_CC_IS_CLANG=y \
> -    CONFIG_CC_IMPLICIT_FALLTHROUGH= \
>       CLANG="clang -fno-stack-protector -target ${TARGET_ARCH} ${TOOLCHAIN_OPTIONS} -isystem ${S} -D__WORDSIZE=\'64\' -Wno-error=unused-command-line-argument" \
> -    HOSTCC="clang -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -Wno-error=unused-command-line-argument" \
> -    HOSTLD="clang ${BUILD_LDFLAGS} -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++" \
>       DESTDIR="${D}" \
> -    MACHINE="${ARCH}" \
>       V=1 \
>   '
> +EXTRA_OEMAKE:append:toolchain-clang = "\
> +    LLVM=1 CONFIG_CC_IS_GCC= CONFIG_CC_IS_CLANG=y CONFIG_CC_IMPLICIT_FALLTHROUGH= \
> +    HOSTCC="clang -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -Wno-error=unused-command-line-argument" \
> +    HOSTLD="clang ${BUILD_LDFLAGS} -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++" \
> +"
>   
>   KERNEL_SELFTEST_SRC ?= "Makefile \
>                           include \
> 
> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#105415): https://lists.openembedded.org/g/openembedded-devel/message/105415
> Mute This Topic: https://lists.openembedded.org/mt/101881727/6551054
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [reatmon@ti.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
diff mbox series

Patch

diff --git a/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb b/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
index 2e5680d775..291a83aaad 100644
--- a/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
+++ b/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
@@ -18,7 +18,9 @@  SRC_URI += "file://run-ptest \
 # we will append other kernel selftest in the future
 # bpf was added in 4.10 with: https://github.com/torvalds/linux/commit/5aa5bd14c5f8660c64ceedf14a549781be47e53d
 # if you have older kernel than that you need to remove it from PACKAGECONFIG
-PACKAGECONFIG ??= "firmware bpf"
+PACKAGECONFIG ??= "firmware"
+# bpf needs working clang compiler anyway
+PACKAGECONFIG:append:toolchain-clang:x86-64 = " bpf"
 PACKAGECONFIG:remove:x86 = "bpf"
 PACKAGECONFIG:remove:arm = "bpf vm"
 # host ptrace.h is used to compile BPF target but mips ptrace.h is needed
@@ -54,17 +56,15 @@  EXTRA_OEMAKE = '\
     CC="${CC}" \
     AR="${AR}" \
     LD="${LD}" \
-    LLVM=1 \
-    CONFIG_CC_IS_GCC= \
-    CONFIG_CC_IS_CLANG=y \
-    CONFIG_CC_IMPLICIT_FALLTHROUGH= \
     CLANG="clang -fno-stack-protector -target ${TARGET_ARCH} ${TOOLCHAIN_OPTIONS} -isystem ${S} -D__WORDSIZE=\'64\' -Wno-error=unused-command-line-argument" \
-    HOSTCC="clang -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -Wno-error=unused-command-line-argument" \
-    HOSTLD="clang ${BUILD_LDFLAGS} -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++" \
     DESTDIR="${D}" \
-    MACHINE="${ARCH}" \
     V=1 \
 '
+EXTRA_OEMAKE:append:toolchain-clang = "\
+    LLVM=1 CONFIG_CC_IS_GCC= CONFIG_CC_IS_CLANG=y CONFIG_CC_IMPLICIT_FALLTHROUGH= \
+    HOSTCC="clang -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++ ${BUILD_CFLAGS} ${BUILD_LDFLAGS} -Wno-error=unused-command-line-argument" \
+    HOSTLD="clang ${BUILD_LDFLAGS} -unwindlib=libgcc -rtlib=libgcc -stdlib=libstdc++" \
+"
 
 KERNEL_SELFTEST_SRC ?= "Makefile \
                         include \