commit bab7b73b85f865d20a5c4f2d78ac9e81b3d39109 from: Russ Cox date: Mon Jan 24 18:47:27 2022 UTC INSTALL: build arm64 binaries on arm64 Macs If there is any x86 binary in the chain of parent processes from the current one, then uname -m prints x86_64 and clang defaults to building x86_64 binaries. Detect arm64 using the kernel version and force building an arm64 toolchain instead of perpetuating x86. This is particularly important when the user shell is rc, which has been built for x86, because then rebuilding under rc continues to use x86. commit - d0d440860f2000a1560abb3f593cdc325fcead4c commit + bab7b73b85f865d20a5c4f2d78ac9e81b3d39109 blob - 79c0745faf3b6ec4424fb49c7f53c4a527934629 blob + 92ac19593f6025f1024c384a7108ce1efd0cc6e8 --- INSTALL +++ INSTALL @@ -95,7 +95,15 @@ if [ `uname` = Darwin ]; then echo "See http://swtch.com/go/xcodegcc for details." >&2 exit 1 fi - echo "CC9='xcrun --sdk macosx clang'" >>$PLAN9/config + CC9="xcrun --sdk macosx clang" + case "$(uname -a)" in + *ARM64*) + CC9="$CC9 -arch arm64" + echo ' Forcing arm64 binaries with clang.' + ;; + esac + + echo "CC9='$CC9'" >>$PLAN9/config rm -f ./a.out fi