Commit dee264c1 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'gcc-minimum-version-6.16' of...

Merge tag 'gcc-minimum-version-6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic

Pull compiler version requirement update from Arnd Bergmann:
 "Require gcc-8 and binutils-2.30

  x86 already uses gcc-8 as the minimum version, this changes all other
  architectures to the same version. gcc-8 is used is Debian 10 and Red
  Hat Enterprise Linux 8, both of which are still supported, and
  binutils 2.30 is the oldest corresponding version on those.

  Ubuntu Pro 18.04 and SUSE Linux Enterprise Server 15 both use gcc-7 as
  the system compiler but additionally include toolchains that remain
  supported.

  With the new minimum toolchain versions, a number of workarounds for
  older versions can be dropped, in particular on x86_64 and arm64.
  Importantly, the updated compiler version allows removing two of the
  five remaining gcc plugins, as support for sancov and structeak
  features is already included in modern compiler versions.

  I tried collecting the known changes that are possible based on the
  new toolchain version, but expect that more cleanups will be possible.

  Since this touches multiple architectures, I merged the patches
  through the asm-generic tree."

* tag 'gcc-minimum-version-6.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:
  Makefile.kcov: apply needed compiler option unconditionally in CFLAGS_KCOV
  Documentation: update binutils-2.30 version reference
  gcc-plugins: remove SANCOV gcc plugin
  Kbuild: remove structleak gcc plugin
  arm64: drop binutils version checks
  raid6: skip avx512 checks
  kbuild: require gcc-8 and binutils-2.30
parents 31848987 582847f9
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -259,7 +259,7 @@ Configuring the kernel
Compiling the kernel
--------------------

 - Make sure you have at least gcc 5.1 available.
 - Make sure you have at least gcc 8.1 available.
   For more information, refer to :ref:`Documentation/process/changes.rst <changes>`.

 - Do a ``make`` to create a compressed kernel image. It is also possible to do
+2 −2
Original line number Diff line number Diff line
@@ -625,10 +625,10 @@ gcc-min-version

  Example::

    cflags-$(call gcc-min-version, 70100) := -foo
    cflags-$(call gcc-min-version, 110100) := -foo

  In this example, cflags-y will be assigned the value -foo if $(CC) is gcc and
  $(CONFIG_GCC_VERSION) is >= 7.1.
  $(CONFIG_GCC_VERSION) is >= 11.1.

clang-min-version
  clang-min-version tests if the value of $(CONFIG_CLANG_VERSION) is greater
+3 −3
Original line number Diff line number Diff line
@@ -29,13 +29,13 @@ you probably needn't concern yourself with pcmciautils.
====================== ===============  ========================================
        Program        Minimal version       Command to check the version
====================== ===============  ========================================
GNU C                  5.1              gcc --version
GNU C                  8.1              gcc --version
Clang/LLVM (optional)  13.0.1           clang --version
Rust (optional)        1.78.0           rustc --version
bindgen (optional)     0.65.1           bindgen --version
GNU make               4.0              make --version
bash                   4.2              bash --version
binutils               2.25             ld -v
binutils               2.30             ld -v
flex                   2.5.35           flex --version
bison                  2.0              bison --version
pahole                 1.16             pahole --version
@@ -116,7 +116,7 @@ Bash 4.2 or newer is needed.
Binutils
--------

Binutils 2.25 or newer is needed to build the kernel.
Binutils 2.30 or newer is needed to build the kernel.

pkg-config
----------
+3 −3
Original line number Diff line number Diff line
@@ -32,13 +32,13 @@ PC Card, per esempio, probabilmente non dovreste preoccuparvi di pcmciautils.
====================== =================  ========================================
        Programma       Versione minima       Comando per verificare la versione
====================== =================  ========================================
GNU C                  5.1                gcc --version
GNU C                  8.1                gcc --version
Clang/LLVM (optional)  13.0.0             clang --version
Rust (opzionale)       1.78.0             rustc --version
bindgen (opzionale)    0.65.1             bindgen --version
GNU make               4.0                make --version
bash                   4.2                bash --version
binutils               2.25               ld -v
binutils               2.30               ld -v
flex                   2.5.35             flex --version
bison                  2.0                bison --version
pahole                 1.16               pahole --version
@@ -118,7 +118,7 @@ Questo richiede bash 4.2 o successivo.
Binutils
--------

Per generare il kernel è necessario avere Binutils 2.25 o superiore.
Per generare il kernel è necessario avere Binutils 2.30 o superiore.

pkg-config
----------
+1 −1
Original line number Diff line number Diff line
@@ -224,7 +224,7 @@ Linux内核6.x版本 <http://kernel.org/>
编译内核
---------

 - 确保您至少有gcc 5.1可用。
 - 确保您至少有gcc 8.1可用。
   有关更多信息,请参阅 :ref:`Documentation/process/changes.rst <changes>` 。

 - 执行 ``make`` 来创建压缩内核映像。如果您安装了lilo以适配内核makefile,
Loading