[clang] [Clang][Driver][AArch64] Add support for aarch64-amazon-linux triple (PR #109263)

Stewart Smith via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 1 13:43:59 PDT 2024


stewartsmith wrote:

For context and history on Amazon Linux and triplets:

Amazon Linux 1 (otherwise known as Amazon Linux AMI / al-ami) is (was?) the now End-of-Life first Amazon Linux version. It was only ever built for x86 and x86-64, and used the $ARCH-amazon-linux triplet.

The [last 32bit AMI being part of the 2014.09 release](https://aws.amazon.com/amazon-linux-ami/2014.09-release-notes/), which means it's been close to a decade now of booting 32bit not being supported in AL. Runtime support for 32-bit continued however, until EoL.

Amazon Linux 2 (released 2018, still supported) was the first to add `aarch64` (on top of `x86-64`). It still had some `i686` runtime support, but didn't ship devel packages. The compiler triplet was `$ARCH-redhat-linux-gcc` (for gcc), reflecting its closer lineage.

The current release, [Amazon Linux 2023, is back to using the `-amazon-linux` part](https://docs.aws.amazon.com/linux/al2023/ug/compare-with-al2.html#compiler-triplet).

tl;dr: AL2 has `-redhat-linux-` in the triplet, and AL2023 goes back to having `-amazon-linux-` like AL1 had.

I've attached the patch we carry in `clang` on AL2023 so we get all the right triplets, which is effectively what the PR here does (albeit adding `i686` as well, as we only dropped 32-bit builds later in the AL2023 development cycle). Apologies for not sending this upstream at the time - certainly my bad there.

Going forward, I can't see any future version of Amazon Linux changing away from `-amazon-linux-` in the triplet.

[0003-Add-Amazon-Linux-vendor-triplets-to-set-of-GNU-toolc.patch](https://github.com/user-attachments/files/17216212/0003-Add-Amazon-Linux-vendor-triplets-to-set-of-GNU-toolc.patch)

For the tests being added here, if covering the (EoL) AL1 is desired, then that'd be separate from what covering AL2023 would be.


https://github.com/llvm/llvm-project/pull/109263


More information about the cfe-commits mailing list