Open
Description
Hello,
This is partly a questions of "is this desired?"
If you ask Clang to build for "arm-none-eabi", this is essentially an alias for "armv4t-unknown-none-eabi". This is good, and also consistent with GCC.
Next if you would like to build compiler_rt for "arm-none-eabi", it is not quite the same as Clang's interpretation. Instead it builds for "armv7-a". This is surprising! It can lead to build failures that are unexpected, for example:
/build/compiler-rt-src-19.1.7/compiler-rt/lib/builtins/arm/sync-ops.h:22:2: error: #error DMB is only supported on ARMv6+
22 | #error DMB is only supported on ARMv6+
When building compiler-rt for arm-embedded (Clang's interpretation) on nixpkgs right now, because it expects that the two agree on what it means.
There is a test that checks for this (I think?) as well, so at minimum someone knows of it.