forked from Minki/linux
e24b3ffcf4
The kernel build uses various tools, many of which are provided by the same software suite, for example, LLVM and Binutils. When you raise the minimum version of Clang/LLVM, you need to update clang_min_version in scripts/cc-version.sh and also lld_min_version in scripts/ld-version.sh. Kbuild can handle CC=clang and LD=ld.lld independently, but it does not make much sense to maintain their versions separately. Let's create a central place of minimum tool versions so you do not need to touch multiple files. scripts/min-tool-version.sh prints the minimum version of the given tool. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Reviewed-by: Nathan Chancellor <nathan@kernel.org> Acked-by: Miguel Ojeda <ojeda@kernel.org> Tested-by: Sedat Dilek <sedat.dilek@gmail.com>
40 lines
631 B
Bash
Executable File
40 lines
631 B
Bash
Executable File
#!/bin/sh
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# Print the minimum supported version of the given tool.
|
|
# When you raise the minimum version, please update
|
|
# Documentation/process/changes.rst as well.
|
|
|
|
set -e
|
|
|
|
if [ $# != 1 ]; then
|
|
echo "Usage: $0 toolname" >&2
|
|
exit 1
|
|
fi
|
|
|
|
case "$1" in
|
|
binutils)
|
|
echo 2.23.0
|
|
;;
|
|
gcc)
|
|
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63293
|
|
# https://lore.kernel.org/r/20210107111841.GN1551@shell.armlinux.org.uk
|
|
if [ "$SRCARCH" = arm64 ]; then
|
|
echo 5.1.0
|
|
else
|
|
echo 4.9.0
|
|
fi
|
|
;;
|
|
icc)
|
|
# temporary
|
|
echo 16.0.3
|
|
;;
|
|
llvm)
|
|
echo 10.0.1
|
|
;;
|
|
*)
|
|
echo "$1: unknown tool" >&2
|
|
exit 1
|
|
;;
|
|
esac
|