Unverified Commit d81d9d38 authored by Thomas Weißschuh's avatar Thomas Weißschuh Committed by Nicolas Schier
Browse files

kbuild: don't enable CC_CAN_LINK if the dummy program generates warnings



It is possible that the kernel toolchain generates warnings when used
together with the system toolchain. This happens for example when the
older kernel toolchain does not handle new versions of sframe debug
information. While these warnings where ignored during the evaluation
of CC_CAN_LINK, together with CONFIG_WERROR the actual userprog build
will later fail.

Example warning:

.../x86_64-linux/13.2.0/../../../../x86_64-linux/bin/ld:
error in /lib/../lib64/crt1.o(.sframe); no .sframe will be created
collect2: error: ld returned 1 exit status

Make sure that the very simple example program does not generate
warnings already to avoid breaking the userprog compilations.

Fixes: ec4a3992 ("kbuild: respect CONFIG_WERROR for linker and assembler")
Fixes: 3f0ff4cc ("kbuild: respect CONFIG_WERROR for userprogs")
Signed-off-by: default avatarThomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: default avatarNicolas Schier <nsc@kernel.org>
Reviewed-by: default avatarNathan Chancellor <nathan@kernel.org>
Link: https://patch.msgid.link/20251114-kbuild-userprogs-bits-v3-1-4dee0d74d439@linutronix.de


Signed-off-by: default avatarNicolas Schier <nsc@kernel.org>
parent 7bade3f7
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
#!/bin/sh
# SPDX-License-Identifier: GPL-2.0

cat << "END" | $@ -x c - -o /dev/null >/dev/null 2>&1
cat << "END" | $@ -Werror -Wl,--fatal-warnings -x c - -o /dev/null >/dev/null 2>&1
#include <stdio.h>
int main(void)
{