This commit is contained in:
Mr. M
2025-04-24 23:29:26 +02:00
7 changed files with 72 additions and 245 deletions

View File

@@ -24,7 +24,7 @@ on:
jobs:
mac-build:
name: Build macOS - ${{ matrix.arch }}
runs-on: ${{ inputs.release-branch == 'release' && 'macos-14' || 'macos-14' }}
runs-on: macos-15
strategy:
fail-fast: false
@@ -123,7 +123,8 @@ jobs:
cd engine
export SURFER_PLATFORM="darwin"
export PATH="$(python3 -m site --user-base)/bin":$PATH
./mach --no-interactive bootstrap --application-choice browser --no-system-changes
# Always exist with 0, even if bootstrap fails
./mach --no-interactive bootstrap --application-choice browser --no-system-changes --exclude macos-sdk || true
cd ..
- name: Build language packs

View File

@@ -15,7 +15,7 @@ on:
jobs:
mac-build:
name: Unify macOS (Universal)
runs-on: 'macos-14'
runs-on: 'macos-15'
strategy:
fail-fast: false
@@ -83,7 +83,7 @@ jobs:
cd engine
export SURFER_PLATFORM="darwin"
export PATH="$(python3 -m site --user-base)/bin":$PATH
./mach --no-interactive bootstrap --application-choice browser --no-system-changes
./mach --no-interactive bootstrap --application-choice browser --no-system-changes || true
cd ..
- name: Import

View File

@@ -3,7 +3,7 @@
set -xe
if command -v apt-get &> /dev/null; then
sudo add-apt-repository ppa:kisak/kisak-mesa
sudo apt-get install python3-launchpadlib
sudo apt-get update
sudo apt-get install -y xvfb libnvidia-egl-wayland1 mesa-utils libgl1-mesa-dri
fi

View File

@@ -170,7 +170,6 @@ var gZenMarketplaceManager = {
for (const theme of Object.values(themes).sort((a, b) => a.name.localeCompare(b.name))) {
const sanitizedName = `theme-${theme.name?.replaceAll(/\s/g, '-')?.replaceAll(/[^A-z_-]+/g, '')}`;
const isThemeEnabled = theme.enabled === undefined || theme.enabled;
const fragment = window.MozXULElement.parseXULToFragment(`
<vbox class="zenThemeMarketplaceItem">
<vbox class="zenThemeMarketplaceItemContent">
@@ -181,6 +180,7 @@ var gZenMarketplaceManager = {
</vbox>
<hbox class="zenThemeMarketplaceItemActions">
${theme.preferences ? `<button id="zenThemeMarketplaceItemConfigureButton-${sanitizedName}" class="zenThemeMarketplaceItemConfigureButton" hidden="true"></button>` : ''}
${theme.homepage ? `<button id="zenThemeMarketplaceItemHomePageLink-${sanitizedName}" class="zenThemeMarketplaceItemHomepageButton" zen-theme-id="${theme.id}"></button>` : ''}
<button class="zenThemeMarketplaceItemUninstallButton" data-l10n-id="zen-theme-marketplace-remove-button" zen-theme-id="${theme.id}"></button>
</hbox>
</vbox>
@@ -274,6 +274,16 @@ var gZenMarketplaceManager = {
await this.removeTheme(event.target.getAttribute('zen-theme-id'));
});
if (theme.homepage) {
const homepageButton = fragment.querySelector('.zenThemeMarketplaceItemHomepageButton');
homepageButton.addEventListener('click', () => {
// open the homepage url in a new tab
const url = theme.homepage;
window.open(url, '_blank');
});
}
if (theme.preferences) {
fragment.querySelector('.zenThemeMarketplaceItemConfigureButton').addEventListener('click', () => {
dialog.showModal();

View File

@@ -470,10 +470,33 @@ groupbox h2 {
align-items: center;
}
.zenThemeMarketplaceItemHomepageButton {
width: 30px;
min-width: 0;
position: relative;
cursor: pointer;
&::before {
content: '';
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 18px;
height: 18px;
background-image: url('chrome://browser/skin/home.svg');
background-repeat: no-repeat;
background-size: cover;
fill: currentColor;
-moz-context-properties: fill, fill-opacity;
}
}
.zenThemeMarketplaceItemConfigureButton {
width: 30px;
min-width: 0;
position: relative;
cursor: pointer;
&::before {
content: '';

View File

@@ -1,239 +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
@@ -223,11 +223,11 @@
nargs=1,
help="Location of platform SDK to use",
)
def mac_sdk_min_version():
- return "15.2"
+ return "15.4"
@depends(
"--with-macos-sdk",
host,
bootstrap_path(
diff --git a/python/mozbuild/mozbuild/test/configure/macos_fake_sdk/SDKSettings.plist b/python/mozbuild/mozbuild/test/configure/macos_fake_sdk/SDKSettings.plist
--- a/python/mozbuild/mozbuild/test/configure/macos_fake_sdk/SDKSettings.plist
+++ b/python/mozbuild/mozbuild/test/configure/macos_fake_sdk/SDKSettings.plist
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Version</key>
- <string>15.2</string>
+ <string>15.4</string>
</dict>
</plist>
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
@@ -30,24 +30,24 @@
- Library/Developer/CommandLineTools/SDKs/MacOSX13.3.sdk
toolchain-artifact: project/gecko/mac-sdk/MacOSX13.3.sdk.tar.zst
toolchain-alias:
- MacOSX13.3.sdk
-macosx64-sdk-15.2:
- description: "MacOSX15.2 SDK"
+macosx64-sdk-15.4:
+ description: "MacOSX15.4 SDK"
treeherder:
- symbol: TM(sdk15.2)
+ symbol: TM(sdk15.4)
run:
arguments:
- - https://swcdn.apple.com/content/downloads/36/33/072-44426-A_G1AII30AST/ddbss9h6gse6a32rg6luosbrm6vgniu033/CLTools_macOSNMOS_SDK.pkg
- - 3370660f3e5c9f422a013afcf12fa2ba93b4da3ab8d0a2b2c18e978c55d4da4cb16322ca5afd8b04de0229a2960065f71421258e9d4f1413c039bcc9f1a07a65
- - Library/Developer/CommandLineTools/SDKs/MacOSX15.2.sdk
- toolchain-artifact: project/gecko/mac-sdk/MacOSX15.2.sdk.tar.zst
+ - https://swcdn.apple.com/content/downloads/10/32/082-12052-A_AHPGDY76PT/1a419zaf3vh8o9t3c0usblyr8eystpnsh5/CLTools_macOSNMOS_SDK.pkg
+ - fd01c70038dbef48bd23fb8b7d18f234910733635f1b44518e71a66d2db92a70180e6a595c6bdd837fa8df7e9b297e570560842e9a6db863840bd051fe69fea5
+ - Library/Developer/CommandLineTools/SDKs/MacOSX15.4.sdk
+ toolchain-artifact: project/gecko/mac-sdk/MacOSX15.4.sdk.tar.zst
toolchain-alias:
- macosx64-sdk
- macosx64-sdk-toolchain
- - MacOSX15.2.sdk
+ - MacOSX15.4.sdk
ios-sdk-17.4:
description: "iPhoneOS17.4 SDK"
treeherder:
symbol: TM(ios17.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.12
;;
esac
# NOTE: both CFLAGS and CPPFLAGS need to be set here, otherwise
# configure step fails.
- sysroot_flags="-isysroot ${MOZ_FETCHES_DIR}/MacOSX15.2.sdk -mmacosx-version-min=${macosx_version_min}"
+ sysroot_flags="-isysroot ${MOZ_FETCHES_DIR}/MacOSX15.4.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/MacOSX15.2.sdk"
+ export MACOS_SYSROOT="$MOZ_FETCHES_DIR/MacOSX15.4.sdk"
# Avoid mixing up the system python and toolchain python in the
# python path configuration
# https://bugs.python.org/issue22490
unset __PYVENV_LAUNCHER__
@@ -167,11 +167,11 @@
fi
# Now we can run hooks and fetch PGO + everything else
gclient runhooks
-# PGO data should be in src/chrome/build/pgo_profiles/
+# PGO data should be in src/chrome/build/pgo_profiles/
# with a name like "chrome-{OS}-<some unique identifier>"
export PGO_DATA_DIR="$CUSTOM_CAR_DIR/chromium/src/chrome/build/pgo_profiles"
for entry in "$PGO_DATA_DIR"/*
do
if [ -f "$entry" ]; then
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/MacOSX15.2.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/MacOSX15.4.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.12
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/MacOSX15.2.sdk
+CROSS_SYSROOT=$MOZ_FETCHES_DIR/MacOSX15.4.sdk
export MACOSX_DEPLOYMENT_TARGET=10.12
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/MacOSX15.2.sdk
+ -DCMAKE_OSX_SYSROOT=$MOZ_FETCHES_DIR/MacOSX15.4.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/MacOSX15.2.sdk
+ -DDARWIN_osx_SYSROOT=$MOZ_FETCHES_DIR/MacOSX15.4.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
@@ -14,11 +14,11 @@
index de99d076..47031e12 100644
--- a/output/outelf.c
+++ b/output/outelf.c
@@ -3275,7 +3275,7 @@ static void dwarf_generate(void)
WRITELONG(pbuf,framelen-4); /* initial length */
-
+
/* build loc section */
- loclen = 16;
+ loclen = is_elf64() ? 16 : 8;
locbuf = pbuf = nasm_malloc(loclen);
if (is_elf32()) {
@@ -36,17 +36,17 @@
EXE=.exe
;;
macosx64)
export MACOSX_DEPLOYMENT_TARGET=10.12
TARGET=x86_64-apple-darwin
- CC="clang -fuse-ld=lld --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX15.2.sdk"
+ CC="clang -fuse-ld=lld --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX15.4.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/MacOSX15.2.sdk"
+ CC="clang -fuse-ld=lld --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX15.4.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.12
TARGET=$1
- CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX15.2.sdk"
+ CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX15.4.sdk"
EXE=
;;
aarch64-apple-darwin)
export MACOSX_DEPLOYMENT_TARGET=11.0
TARGET=$1
- CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX15.2.sdk"
+ CC="clang --target=$TARGET -isysroot $MOZ_FETCHES_DIR/MacOSX15.4.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
@@ -37,11 +37,11 @@
if test "$TARGET" = "aarch64-apple-darwin"; then
export MACOSX_DEPLOYMENT_TARGET=11.0
else
export MACOSX_DEPLOYMENT_TARGET=10.12
fi
- MACOS_SYSROOT=$MOZ_FETCHES_DIR/MacOSX15.2.sdk
+ MACOS_SYSROOT=$MOZ_FETCHES_DIR/MacOSX15.4.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"
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++"

View File

@@ -0,0 +1,32 @@
# HG changeset patch
# User Julian Descottes <jdescottes@mozilla.com>
# Date 1744201993 0
# Node ID 2e2d932d75c44447af89224be5e4324dc080c447
# Parent 9f134a1b1a884a857c59517ba0e8f3603e4009dd
Bug 1959377 - Include vector in mac/Sandbox.h to fix build on macos 15.4 r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D244870
diff --git a/security/sandbox/mac/Sandbox.h b/security/sandbox/mac/Sandbox.h
--- a/security/sandbox/mac/Sandbox.h
+++ b/security/sandbox/mac/Sandbox.h
@@ -2,16 +2,17 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef mozilla_Sandbox_h
#define mozilla_Sandbox_h
#include <string>
+#include <vector>
#include "mozilla/ipc/UtilityProcessSandboxing.h"
enum MacSandboxType {
MacSandboxType_Default = 0,
MacSandboxType_Content,
MacSandboxType_GMP,
MacSandboxType_RDD,
MacSandboxType_Socket,