xen: Update toolchain requirements to GCC 5.1/Binutils 2.25 or Clang/LLVM 11

GCC 4.1.2 is from 2007, and Binutils 2.16 is a similar vintage.  Clang 3.5 is
from 2014.  Supporting toolchains this old is a massive development and
testing burden.

Set a minimum baseline of GCC 5.1 across the board, along with Binutils 2.25
which is the same age.  These were chosen *3 years ago* as Linux's minimum
requirements because even back then, they were ubiquitous in distros.  Choose
Clang/LLVM 11 as a baseline for similar reasons; the Linux commit making this
change two years ago cites a laudry list of code generation bugs.

This will allow us to retire a lot of compatiblity logic, and start using new
features previously unavailable because of no viable compatibility option.

Merge the ARM 32bit and 64bit sections now they're the same.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Julien Grall <jgrall@amazon.com>
Acked-by: Roger Pau Monné <roger.pau@citrix.com>
This commit is contained in:
Andrew Cooper committed 2025-03-19 16:44:00 +00:00
1 parent 3ee55c9543
commit aa78a7d10c
1 file changed
+6 -9
+6 -9
View File
@@ -38,16 +38,13 @@ provided by your OS distributor:
* GNU Make v3.80 or later * GNU Make v3.80 or later
* C compiler and linker: * C compiler and linker:
- For x86: - For x86:
- GCC 4.1.2_20070115 or later
- GNU Binutils 2.16.91.0.5 or later
or
- Clang/LLVM 3.5 or later
- For ARM 32-bit:
- GCC 4.9 or later
- GNU Binutils 2.24 or later
- For ARM 64-bit:
- GCC 5.1 or later - GCC 5.1 or later
- GNU Binutils 2.24 or later - GNU Binutils 2.25 or later
or
- Clang/LLVM 11 or later
- For ARM:
- GCC 5.1 or later
- GNU Binutils 2.25 or later
- For RISC-V 64-bit: - For RISC-V 64-bit:
- GCC 12.2 or later - GCC 12.2 or later
- GNU Binutils 2.39 or later - GNU Binutils 2.39 or later
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.