chore: Override minimum MacOS SDK version, b=no-bug, c=workflows

This commit is contained in:
mr. m
2026-01-09 02:45:52 +01:00
parent 4d1e091af6
commit 88068613a1
4 changed files with 17 additions and 262 deletions

View File

@@ -122,9 +122,12 @@ jobs:
- name: Bootstrap
run: |
cd engine
export SURFER_PLATFORM="darwin"
export PATH="$(python3 -m site --user-base)/bin":$PATH
npm run bootstrap
# Always exist with 0, even if bootstrap fails
./mach --no-interactive bootstrap --application-choice browser --exclude macos-sdk || true
cd ..
- name: Build language packs
run: sh scripts/download-language-packs.sh

View File

@@ -1,13 +0,0 @@
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
index 0fb4faa598072ccad47c376765a9433b40e27a6d..6ab448cc4202e5a3e871dfd753e95d76453758e5 100644
--- a/build/moz.configure/toolchain.configure
+++ b/build/moz.configure/toolchain.configure
@@ -1995,7 +1995,7 @@ def select_linker_tmpl(host_or_target):
# ensure consistent output.
env["LC_ALL"] = "C"
retcode, stdout, stderr = get_cmd_output(*cmd, env=env)
- if retcode == 1 and "Logging ld64 options" in stderr:
+ if retcode == 1 and "ld: unknown options: --version" in stderr:
kind = "ld64"
elif retcode != 0:

View File

@@ -1,248 +0,0 @@
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
--- a/build/moz.configure/toolchain.configure
+++ b/build/moz.configure/toolchain.configure
@@ -231,11 +231,11 @@
nargs=1,
help="Location of platform SDK to use",
)
def mac_sdk_min_version():
- return "26.1"
+ return "26.2"
@depends(
"--with-macos-sdk",
host,
bootstrap_path(
diff --git a/taskcluster/kinds/toolchain/macos-sdk.yml b/taskcluster/kinds/toolchain/macos-sdk.yml
--- a/taskcluster/kinds/toolchain/macos-sdk.yml
+++ b/taskcluster/kinds/toolchain/macos-sdk.yml
@@ -28,24 +28,24 @@
- https://swcdn.apple.com/content/downloads/15/62/032-84673-A_7A1TG1RF8Z/xpc8q44ggn2pkn82iwr0fi1zeb9cxi8ath/CLTools_macOSNMOS_SDK.pkg
- 8de3306508dca31040b3b49ff370e96c94f4546bcf22cb4069abbb18e2d6bce8e20d40a6903f00ae75558175b624a979ea0444f54bc6d9d67e841f2000b0d863
- Library/Developer/CommandLineTools/SDKs/MacOSX13.3.sdk
toolchain-artifact: project/gecko/mac-sdk/MacOSX13.3.sdk.tar.zst
-macosx64-sdk-26.1:
- description: "macOS 26.1 SDK"
+macosx64-sdk-26.2:
+ description: "macOS 26.2 SDK"
treeherder:
- symbol: TM(sdk26.1)
+ symbol: TM(sdk26.2)
run:
arguments:
- - https://swcdn.apple.com/content/downloads/22/09/093-00219-A_WIA1LP39TY/evbam2mb02xqr05ju9ddb95y8qil8kz9tm/CLTools_macOSNMOS_SDK.pkg
- - f6a5f44b3652f5abdf7ad2602f54ad38774404f45264a4e70cfccc58b8b39aed2a89f74ef22c44bf932d0a55b062ebc3651f73fa06ff755ee5da53b9dcc62fba
- - Library/Developer/CommandLineTools/SDKs/MacOSX26.1.sdk
- toolchain-artifact: project/gecko/mac-sdk/MacOSX26.1.sdk.tar.zst
+ - https://swcdn.apple.com/content/downloads/60/22/089-71960-A_W8BL1RUJJ6/5zkyplomhk1cm7z6xja2ktgapnhhti6wwd/CLTools_macOSNMOS_SDK.pkg
+ - f3785f1bbc3b8323121b66fc28ef59083b4f508c7bdabb9d8d916f142ee89b01cb8030eba469eb9107b416d1c9d523a1d2e009cddb83536a819a3704a5d3ce17
+ - Library/Developer/CommandLineTools/SDKs/MacOSX26.2.sdk
+ toolchain-artifact: project/gecko/mac-sdk/MacOSX26.2.sdk.tar.zst
toolchain-alias:
- macosx64-sdk
- macosx64-sdk-toolchain
- - MacOSX26.1.sdk
+ - MacOSX26.2.sdk
ios-sdk-18.4:
description: "iPhoneOS18.4 SDK"
treeherder:
symbol: TM(ios18.4)
diff --git a/taskcluster/scripts/misc/build-cpython.sh b/taskcluster/scripts/misc/build-cpython.sh
--- a/taskcluster/scripts/misc/build-cpython.sh
+++ b/taskcluster/scripts/misc/build-cpython.sh
@@ -35,11 +35,11 @@
macosx_version_min=10.15
;;
esac
# NOTE: both CFLAGS and CPPFLAGS need to be set here, otherwise
# configure step fails.
- sysroot_flags="-isysroot ${MOZ_FETCHES_DIR}/MacOSX26.1.sdk -mmacosx-version-min=${macosx_version_min}"
+ sysroot_flags="-isysroot ${MOZ_FETCHES_DIR}/MacOSX26.2.sdk -mmacosx-version-min=${macosx_version_min}"
export CPPFLAGS="${sysroot_flags} -I${xz_prefix}/include"
export CFLAGS=${sysroot_flags}
export LDFLAGS="${LDFLAGS} ${sysroot_flags} -L${xz_prefix}/lib"
configure_flags_extra=--with-openssl=/usr/local/opt/openssl
diff --git a/taskcluster/scripts/misc/build-custom-car.sh b/taskcluster/scripts/misc/build-custom-car.sh
--- a/taskcluster/scripts/misc/build-custom-car.sh
+++ b/taskcluster/scripts/misc/build-custom-car.sh
@@ -58,11 +58,11 @@
fi
# Logic for macosx64
if [[ $(uname -s) == "Darwin" ]]; then
# Modify the config with fetched sdk path
- export MACOS_SYSROOT="$MOZ_FETCHES_DIR/MacOSX26.1.sdk"
+ export MACOS_SYSROOT="$MOZ_FETCHES_DIR/MacOSX26.2.sdk"
# Bug 1990712 & 1989676
# HACK: Create a stub DarwinBasic.modulemap to satisfy Ninjas dependency graph.
# This file does not exist in Command Line Tools SDKs. It seems only the full
# Xcode SDK includes DarwinBasic/DarwinFoundation modulemaps.
mkdir -p "$MACOS_SYSROOT/usr/include"
diff --git a/taskcluster/scripts/misc/build-geckodriver.sh b/taskcluster/scripts/misc/build-geckodriver.sh
--- a/taskcluster/scripts/misc/build-geckodriver.sh
+++ b/taskcluster/scripts/misc/build-geckodriver.sh
@@ -23,11 +23,11 @@
export TARGET_CXXFLAGS="-Xclang -ivfsoverlay -Xclang $MOZ_FETCHES_DIR/vs/overlay.yaml"
;;
# OSX cross builds are a bit harder
*-apple-darwin)
export PATH="$MOZ_FETCHES_DIR/clang/bin:$PATH"
- RUSTFLAGS="-Clinker=$MOZ_FETCHES_DIR/clang/bin/clang++ -C link-arg=-isysroot -C link-arg=$MOZ_FETCHES_DIR/MacOSX26.1.sdk -C link-arg=-fuse-ld=lld -C link-arg=--target=$TARGET"
+ RUSTFLAGS="-Clinker=$MOZ_FETCHES_DIR/clang/bin/clang++ -C link-arg=-isysroot -C link-arg=$MOZ_FETCHES_DIR/MacOSX26.2.sdk -C link-arg=-fuse-ld=lld -C link-arg=--target=$TARGET"
if test "$TARGET" = "aarch64-apple-darwin"; then
export MACOSX_DEPLOYMENT_TARGET=11.0
else
export MACOSX_DEPLOYMENT_TARGET=10.15
fi
diff --git a/taskcluster/scripts/misc/build-gn-macosx.sh b/taskcluster/scripts/misc/build-gn-macosx.sh
--- a/taskcluster/scripts/misc/build-gn-macosx.sh
+++ b/taskcluster/scripts/misc/build-gn-macosx.sh
@@ -3,11 +3,11 @@
# This script is for building GN.
WORKSPACE=$HOME/workspace
-CROSS_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.1.sdk
+CROSS_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.2.sdk
export MACOSX_DEPLOYMENT_TARGET=10.15
export CC=$MOZ_FETCHES_DIR/clang/bin/clang
export CXX=$MOZ_FETCHES_DIR/clang/bin/clang++
export AR=$MOZ_FETCHES_DIR/clang/bin/llvm-ar
diff --git a/taskcluster/scripts/misc/build-llvm-common.sh b/taskcluster/scripts/misc/build-llvm-common.sh
--- a/taskcluster/scripts/misc/build-llvm-common.sh
+++ b/taskcluster/scripts/misc/build-llvm-common.sh
@@ -37,15 +37,15 @@
$EXTRA_CMAKE_FLAGS
-DCMAKE_LINKER=$MOZ_FETCHES_DIR/clang/bin/ld64.lld
-DCMAKE_LIPO=$MOZ_FETCHES_DIR/clang/bin/llvm-lipo
-DCMAKE_SYSTEM_NAME=Darwin
-DCMAKE_SYSTEM_VERSION=$MACOSX_DEPLOYMENT_TARGET
- -DCMAKE_OSX_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.1.sdk
+ -DCMAKE_OSX_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.2.sdk
-DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld
-DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=lld
-DDARWIN_osx_ARCHS=$arch
- -DDARWIN_osx_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.1.sdk
+ -DDARWIN_osx_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.2.sdk
-DDARWIN_macosx_OVERRIDE_SDK_VERSION=11.0
-DDARWIN_osx_BUILTIN_ARCHS=$arch
-DLLVM_DEFAULT_TARGET_TRIPLE=$target
"
# compiler-rt build script expects to find `codesign` in $PATH.
diff --git a/taskcluster/scripts/misc/build-nasm.sh b/taskcluster/scripts/misc/build-nasm.sh
--- a/taskcluster/scripts/misc/build-nasm.sh
+++ b/taskcluster/scripts/misc/build-nasm.sh
@@ -36,17 +36,17 @@
EXE=.exe
;;
macosx64)
export MACOSX_DEPLOYMENT_TARGET=10.15
TARGET=x86_64-apple-darwin
- CC="clang -fuse-ld=lld --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.1.sdk"
+ CC="clang -fuse-ld=lld --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.2.sdk"
EXE=
;;
macosx64-aarch64)
export MACOSX_DEPLOYMENT_TARGET=11.0
TARGET=aarch64-apple-darwin
- CC="clang -fuse-ld=lld --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.1.sdk"
+ CC="clang -fuse-ld=lld --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.2.sdk"
EXE=
;;
*)
CC="clang --sysroot=$MOZ_FETCHES_DIR/sysroot-x86_64-linux-gnu"
EXE=
diff --git a/taskcluster/scripts/misc/build-pkgconf.sh b/taskcluster/scripts/misc/build-pkgconf.sh
--- a/taskcluster/scripts/misc/build-pkgconf.sh
+++ b/taskcluster/scripts/misc/build-pkgconf.sh
@@ -19,17 +19,17 @@
EXE=
;;
x86_64-apple-darwin)
export MACOSX_DEPLOYMENT_TARGET=10.15
TARGET=$1
- CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.1.sdk"
+ CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.2.sdk"
EXE=
;;
aarch64-apple-darwin)
export MACOSX_DEPLOYMENT_TARGET=11.0
TARGET=$1
- CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.1.sdk"
+ CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX26.2.sdk"
EXE=
;;
x86_64-pc-windows-gnu)
TARGET=x86_64-w64-mingw32
CC="x86_64-w64-mingw32-clang -DPKGCONFIG_IS_STATIC=1"
diff --git a/taskcluster/scripts/misc/build-rust-based-toolchain.sh b/taskcluster/scripts/misc/build-rust-based-toolchain.sh
--- a/taskcluster/scripts/misc/build-rust-based-toolchain.sh
+++ b/taskcluster/scripts/misc/build-rust-based-toolchain.sh
@@ -40,11 +40,11 @@
if test "$TARGET" = "aarch64-apple-darwin"; then
export MACOSX_DEPLOYMENT_TARGET=11.0
else
export MACOSX_DEPLOYMENT_TARGET=10.15
fi
- MACOS_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.1.sdk
+ MACOS_SYSROOT=$MOZ_FETCHES_DIR/MacOSX26.2.sdk
export RUSTFLAGS="-Clinker=$MOZ_FETCHES_DIR/clang/bin/clang++ -C link-arg=-isysroot -C link-arg=$MACOS_SYSROOT -C link-arg=-fuse-ld=lld -C link-arg=--target=$TARGET $rust_lto_flags"
export CC="$MOZ_FETCHES_DIR/clang/bin/clang"
export CXX="$MOZ_FETCHES_DIR/clang/bin/clang++"
export TARGET_CFLAGS="-isysroot $MACOS_SYSROOT -fuse-ld=lld"
export TARGET_CXXFLAGS="-isysroot $MACOS_SYSROOT -fuse-ld=lld -stdlib=libc++"
diff --git a/testing/mozharness/configs/openh264/macosx64-aarch64.py b/testing/mozharness/configs/openh264/macosx64-aarch64.py
--- a/testing/mozharness/configs/openh264/macosx64-aarch64.py
+++ b/testing/mozharness/configs/openh264/macosx64-aarch64.py
@@ -20,18 +20,18 @@
"arch": "aarch64",
"operating_system": "darwin",
"partial_env": {
"CFLAGS": (
"-target aarch64-apple-darwin -mcpu=apple-a12 "
- "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.1.sdk "
+ "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.2.sdk "
"-mmacosx-version-min=11.0".format(
MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"]
)
),
"LDFLAGS": (
"-target aarch64-apple-darwin -mcpu=apple-a12 "
- "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.1.sdk "
+ "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.2.sdk "
"-mmacosx-version-min=11.0".format(
MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"]
)
),
"PATH": (
diff --git a/testing/mozharness/configs/openh264/macosx64.py b/testing/mozharness/configs/openh264/macosx64.py
--- a/testing/mozharness/configs/openh264/macosx64.py
+++ b/testing/mozharness/configs/openh264/macosx64.py
@@ -20,18 +20,18 @@
"arch": "x64",
"operating_system": "darwin",
"partial_env": {
"CXXFLAGS": (
"-target x86_64-apple-darwin "
- "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.1.sdk "
+ "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.2.sdk "
"-mmacosx-version-min=10.12".format(
MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"]
)
),
"LDFLAGS": (
"-target x86_64-apple-darwin "
- "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.1.sdk "
+ "-isysroot {MOZ_FETCHES_DIR}/MacOSX26.2.sdk "
"-mmacosx-version-min=10.12".format(
MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"]
)
),
"PATH": (

View File

@@ -0,0 +1,13 @@
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
index 0fb4faa598072ccad47c376765a9433b40e27a6d..1fc128de1823048820ade9e24ff3b288defcf4ed 100644
--- a/build/moz.configure/toolchain.configure
+++ b/build/moz.configure/toolchain.configure
@@ -233,7 +233,7 @@ with only_when(host_is_osx | target_is_osx):
)
def mac_sdk_min_version():
- return "26.1"
+ return "26.0"
@depends(
"--with-macos-sdk",