aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cmd/link/internal/ld/macho.go4
-rw-r--r--src/cmd/link/link_test.go6
2 files changed, 4 insertions, 6 deletions
diff --git a/src/cmd/link/internal/ld/macho.go b/src/cmd/link/internal/ld/macho.go
index fc38b0d99d..91e908c97f 100644
--- a/src/cmd/link/internal/ld/macho.go
+++ b/src/cmd/link/internal/ld/macho.go
@@ -478,13 +478,11 @@ func (ctxt *Link) domacho() {
if ctxt.LinkMode == LinkInternal && machoPlatform == PLATFORM_MACOS {
var version uint32
switch ctxt.Arch.Family {
- case sys.AMD64:
+ case sys.ARM64, sys.AMD64:
// This must be fairly recent for Apple signing (go.dev/issue/30488).
// Having too old a version here was also implicated in some problems
// calling into macOS libraries (go.dev/issue/56784).
// In general this can be the most recent supported macOS version.
- version = 10<<16 | 13<<8 | 0<<0 // 10.13.0
- case sys.ARM64:
version = 11<<16 | 0<<8 | 0<<0 // 11.0.0
}
ml := newMachoLoad(ctxt.Arch, LC_BUILD_VERSION, 4)
diff --git a/src/cmd/link/link_test.go b/src/cmd/link/link_test.go
index 897607c4fa..7029d3213f 100644
--- a/src/cmd/link/link_test.go
+++ b/src/cmd/link/link_test.go
@@ -388,9 +388,9 @@ func TestMachOBuildVersion(t *testing.T) {
found := false
const LC_BUILD_VERSION = 0x32
checkMin := func(ver uint32) {
- major, minor := (ver>>16)&0xff, (ver>>8)&0xff
- if major != 10 || minor < 9 {
- t.Errorf("LC_BUILD_VERSION version %d.%d < 10.9", major, minor)
+ major, minor, patch := (ver>>16)&0xff, (ver>>8)&0xff, (ver>>0)&0xff
+ if major < 11 {
+ t.Errorf("LC_BUILD_VERSION version %d.%d.%d < 11.0.0", major, minor, patch)
}
}
for _, cmd := range exem.Loads {