Re: arm64 system clang & llvm
- Reply: void : "Re: arm64 system clang & llvm"
- In reply to: void : "arm64 system clang & llvm"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 30 Jan 2024 17:14:22 UTC
On Jan 30, 2024, at 08:01, void <void@f-m.fm> wrote: > context is main-n267804 arm64 > > I'd like to avoid building base compilers for arches I'll never use. > I want aarch64 *only* > > To achieve this, there's the following in /etc/src.conf > > ### > # LLVM > WITHOUT_LLVM_TARGET_ALL= > WITH_LLVM_TARGET_AARCH64= > WITHOUT_LLVM_TARGET_ARM= > WITHOUT_LLVM_ASSERTIONS= > > But looking at buildworld output, I see what *looks* like building for other arches happening. Is this the case, or am I reading it wrong, or > is the src.conf wrong? FYI: On aarch64, for non-debug builds I use: #Disables avoiding bootstrap: WITHOUT_LLVM_TARGET_ALL= WITH_LLVM_TARGET_AARCH64= WITH_LLVM_TARGET_ARM= WITHOUT_LLVM_TARGET_MIPS= WITHOUT_LLVM_TARGET_POWERPC= WITHOUT_LLVM_TARGET_RISCV= WITHOUT_LLVM_TARGET_X86= MALLOC_PRODUCTION= WITH_MALLOC_PRODUCTION= WITHOUT_ASSERT_DEBUG= WITHOUT_LLVM_ASSERTIONS= (I've not validated the comment in a very long time. There used to be the odd side effect on when bootstrap builds happened.) As FreeBSD main [so: 15] has lib32 support by default these days, does your aarch64 hardware support AArch32/armv7 code, at least for EL0? Most of the hardware around probabaly does. Having WITH_LLVM_TARGET_AARCH64= may override any attempt to disable code generation for the likely hardware-supported type of code. But, if it is possible to have aarch64 disable armv7 code generation, you would also need: WITHOUT_LIB32= Otherwise, you would be asking for armv7 code generation to be done in order to build lib32. (Since AARch32/armv7 also supports armv6, that is likely also involved. But I keep the wording generally simpler.) === Mark Millard marklmi at yahoo.com