[tbb-commits] [builders/tor-browser-build] 01/05: Bug 40439: Create universal x86_64/arm64 mac builds
gitolite role
git at cupani.torproject.org
Tue Nov 15 09:35:03 UTC 2022
This is an automated email from the git hooks/post-receive script.
boklm pushed a commit to branch main
in repository builders/tor-browser-build.
commit ea8a16205f22342a6eb1f1b63eca639c54735a3a
Author: Nicolas Vigier <boklm at torproject.org>
AuthorDate: Wed Sep 28 11:56:50 2022 +0200
Bug 40439: Create universal x86_64/arm64 mac builds
Instead of having separate x86_64 and arm64 macos builds, we merge the
two builds to create an universal build, using the unify.py script from
Mozilla.
We also start renaming osx64 to macos for tor-browser-build#40067.
---
Makefile | 58 ++++++---------------
README | 2 +-
doc/HACKING.txt | 6 +--
doc/MAKEFILE.txt | 6 +--
projects/browser/build | 135 +++++++++++++++++++++++++++++++++++++-----------
projects/browser/config | 29 +++++++----
projects/release/build | 7 +--
projects/release/config | 24 +++------
rbm.conf | 14 ++---
9 files changed, 163 insertions(+), 118 deletions(-)
diff --git a/Makefile b/Makefile
index 465d0ea1..fa5220ed 100644
--- a/Makefile
+++ b/Makefile
@@ -42,11 +42,8 @@ torbrowser-release-windows-i686: submodule-update
torbrowser-release-windows-x86_64: submodule-update
$(rbm) build release --target release --target browser-windows-x86_64 --target torbrowser
-torbrowser-release-osx-x86_64: submodule-update
- $(rbm) build release --target release --target browser-osx-x86_64 --target torbrowser
-
-torbrowser-release-osx-aarch64: submodule-update
- $(rbm) build release --target release --target browser-osx-aarch64 --target torbrowser
+torbrowser-release-macos: submodule-update
+ $(rbm) build release --target release --target browser-macos --target torbrowser
torbrowser-release-src: submodule-update
$(rbm) build release --target release --target browser-src --target torbrowser
@@ -87,11 +84,8 @@ torbrowser-alpha-windows-i686: submodule-update
torbrowser-alpha-windows-x86_64: submodule-update
$(rbm) build release --target alpha --target browser-windows-x86_64 --target torbrowser
-torbrowser-alpha-osx-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-osx-x86_64 --target torbrowser
-
-torbrowser-alpha-osx-aarch64: submodule-update
- $(rbm) build release --target alpha --target browser-osx-aarch64 --target torbrowser
+torbrowser-alpha-macos: submodule-update
+ $(rbm) build release --target alpha --target browser-macos --target torbrowser
torbrowser-alpha-src: submodule-update
$(rbm) build release --target alpha --target browser-src --target torbrowser
@@ -132,11 +126,8 @@ torbrowser-nightly-windows-i686: submodule-update
torbrowser-nightly-windows-x86_64: submodule-update
$(rbm) build release --target nightly --target browser-windows-x86_64 --target torbrowser
-torbrowser-nightly-osx-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-osx-x86_64 --target torbrowser
-
-torbrowser-nightly-osx-aarch64: submodule-update
- $(rbm) build release --target nightly --target browser-osx-aarch64 --target torbrowser
+torbrowser-nightly-macos: submodule-update
+ $(rbm) build release --target nightly --target browser-macos --target torbrowser
torbrowser-nightly-src: submodule-update
$(rbm) build release --target nightly --target browser-src --target torbrowser
@@ -177,11 +168,8 @@ torbrowser-testbuild-windows-x86_64: submodule-update
torbrowser-testbuild-windows-i686: submodule-update
$(rbm) build release --target testbuild --target browser-windows-i686 --target torbrowser
-torbrowser-testbuild-osx-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-osx-x86_64 --target torbrowser
-
-torbrowser-testbuild-osx-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-osx-aarch64 --target torbrowser
+torbrowser-testbuild-macos: submodule-update
+ $(rbm) build release --target testbuild --target browser-macos --target torbrowser
torbrowser-testbuild-src: submodule-update
$(rbm) build release --target testbuild --target browser-src-testbuild --target torbrowser
@@ -239,7 +227,7 @@ list_toolchain_updates-firefox-windows: submodule-update
$(rbm) build firefox --step list_toolchain_updates --target nightly --target torbrowser-windows-x86_64
list_toolchain_updates-firefox-macos: submodule-update
- $(rbm) build firefox --step list_toolchain_updates --target nightly --target torbrowser-osx-x86_64
+ $(rbm) build firefox --step list_toolchain_updates --target nightly --target torbrowser-macos
list_toolchain_updates-android-components: submodule-update
$(rbm) build android-components --step list_toolchain_updates --target nightly --target torbrowser-android-armv7
@@ -321,11 +309,8 @@ basebrowser-release-windows-i686: submodule-update
basebrowser-release-windows-x86_64: submodule-update
$(rbm) build release --target release --target browser-windows-x86_64 --target basebrowser
-basebrowser-release-osx-x86_64: submodule-update
- $(rbm) build release --target release --target browser-osx-x86_64 --target basebrowser
-
-basebrowser-release-osx-aarch64: submodule-update
- $(rbm) build release --target release --target browser-osx-aarch64 --target basebrowser
+basebrowser-release-macos: submodule-update
+ $(rbm) build release --target release --target browser-macos --target basebrowser
basebrowser-release-src: submodule-update
$(rbm) build release --target release --target browser-src --target basebrowser
@@ -366,11 +351,8 @@ basebrowser-alpha-windows-i686: submodule-update
basebrowser-alpha-windows-x86_64: submodule-update
$(rbm) build release --target alpha --target browser-windows-x86_64 --target basebrowser
-basebrowser-alpha-osx-x86_64: submodule-update
- $(rbm) build release --target alpha --target browser-osx-x86_64 --target basebrowser
-
-basebrowser-alpha-osx-aarch64: submodule-update
- $(rbm) build release --target alpha --target browser-osx-aarch64 --target basebrowser
+basebrowser-alpha-macos: submodule-update
+ $(rbm) build release --target alpha --target browser-macos --target basebrowser
basebrowser-alpha-src: submodule-update
$(rbm) build release --target alpha --target browser-src --target basebrowser
@@ -411,11 +393,8 @@ basebrowser-nightly-windows-i686: submodule-update
basebrowser-nightly-windows-x86_64: submodule-update
$(rbm) build release --target nightly --target browser-windows-x86_64 --target basebrowser
-basebrowser-nightly-osx-x86_64: submodule-update
- $(rbm) build release --target nightly --target browser-osx-x86_64 --target basebrowser
-
-basebrowser-nightly-osx-aarch64: submodule-update
- $(rbm) build release --target nightly --target browser-osx-aarch64 --target basebrowser
+basebrowser-nightly-macos: submodule-update
+ $(rbm) build release --target nightly --target browser-macos --target basebrowser
basebrowser-nightly-src: submodule-update
$(rbm) build release --target nightly --target browser-src --target basebrowser
@@ -456,11 +435,8 @@ basebrowser-testbuild-windows-x86_64: submodule-update
basebrowser-testbuild-windows-i686: submodule-update
$(rbm) build release --target testbuild --target browser-windows-i686 --target basebrowser
-basebrowser-testbuild-osx-x86_64: submodule-update
- $(rbm) build release --target testbuild --target browser-osx-x86_64 --target basebrowser
-
-basebrowser-testbuild-osx-aarch64: submodule-update
- $(rbm) build release --target testbuild --target browser-osx-aarch64 --target basebrowser
+basebrowser-testbuild-macos: submodule-update
+ $(rbm) build release --target testbuild --target browser-macos --target basebrowser
basebrowser-testbuild-src: submodule-update
$(rbm) build release --target testbuild --target browser-src-testbuild --target basebrowser
diff --git a/README b/README
index 6a29f8e8..6f72aeec 100644
--- a/README
+++ b/README
@@ -81,7 +81,7 @@ name to the makefile target:
$ make torbrowser-nightly-linux-i686
$ make torbrowser-nightly-windows-i686
$ make torbrowser-nightly-windows-x86_64
- $ make torbrowser-nightly-osx-x86_64
+ $ make torbrowser-nightly-macos
$ make torbrowser-nightly-android-armv7
$ make torbrowser-nightly-android-aarch64
$ make torbrowser-nightly-android-x86
diff --git a/doc/HACKING.txt b/doc/HACKING.txt
index 1c4e6381..d08b3155 100644
--- a/doc/HACKING.txt
+++ b/doc/HACKING.txt
@@ -44,13 +44,13 @@ In each of those places, an option can be defined:
The targets are usually used to select:
- the platform: torbrowser-linux-x86_64, torbrowser-linux-i686,
- torbrowser-windows-i686, torbrowser-windows-x86_64, torbrowser-osx-x86_64,
+ torbrowser-windows-i686, torbrowser-windows-x86_64, torbrowser-macos,
torbrowser-android-armv7, torbrowser-android-aarch64, torbrowser-android-x86,
torbrowser-android-x86_64
- the channel: release, nightly, alpha
The targets torbrowser-linux-x86_64, torbrowser-linux-i686,
-torbrowser-windows-i686, torbrowser-windows-x86_64, torbrowser-osx-x86_64,
+torbrowser-windows-i686, torbrowser-windows-x86_64, torbrowser-macos,
torbrowser-android-armv7, torbrowser-android-x86, torbrowser-android-aarch64,
torbrowser-android-x86_64 are special cases. They do not contain options
directly, instead they contain a list of other targets. For instance, the
@@ -154,7 +154,7 @@ $platform should be one of the following:
- torbrowser-windows-x86_64
- - torbrowser-osx-x86_64
+ - torbrowser-macos
- torbrowser-android-armv7
diff --git a/doc/MAKEFILE.txt b/doc/MAKEFILE.txt
index 823de3b2..0eec68ff 100644
--- a/doc/MAKEFILE.txt
+++ b/doc/MAKEFILE.txt
@@ -7,7 +7,7 @@ torbrowser-release
Build Tor Browser for the release channel, for all supported platforms.
The resulting build can be found in directory release/$version.
-torbrowser-release-{linux-x86_64,linux-i686,windows-i686,osx-x86_64,
+torbrowser-release-{linux-x86_64,linux-i686,windows-i686,macos,
android-armv7, android-x86,android-x86_64,
android-aarch64,desktop,android}
--------------------------------------------------------------------
@@ -20,7 +20,7 @@ torbrowser-alpha
Build Tor Browser for the alpha channel, for all supported platforms.
The resulting build can be found in directory alpha/$version.
-torbrowser-alpha-{linux-x86_64,linux-i686,windows-i686,osx-x86_64,
+torbrowser-alpha-{linux-x86_64,linux-i686,windows-i686,macos,
android-armv7,android-x86,android-x86_64,
android-aarch64,desktop,android}
------------------------------------------------------------------
@@ -35,7 +35,7 @@ components.
The resulting build can be found in directory nightly/$date
-torbrowser-nightly-{linux-x86_64,linux-i686,windows-i686,osx-x86_64,
+torbrowser-nightly-{linux-x86_64,linux-i686,windows-i686,macos,
android-armv7,android-x86,android-x86_64,
android-aarch64,desktop,android}
--------------------------------------------------------------------
diff --git a/projects/browser/build b/projects/browser/build
index 43cd81d7..9618e3ec 100644
--- a/projects/browser/build
+++ b/projects/browser/build
@@ -21,6 +21,8 @@ touch "$GENERATEDPREFSPATH"
[% IF c("var/osx") %]
TBDIR="$TB_STAGE_DIR/[% c("var/Project_Name") %].app"
+ TBDIR_AARCH64="$TB_STAGE_DIR/[% c("var/Project_Name") %]-aarch64.app"
+ TBDIRS=("$TBDIR" "$TBDIR_AARCH64")
DOCSPATH=Contents/Resources/[% c('var/ProjectName') %]/Docs
EXTSPATH=Contents/Resources/distribution/extensions
@@ -31,6 +33,7 @@ touch "$GENERATEDPREFSPATH"
export PATH=/var/tmp/dist/libdmg-hfsplus:$PATH
[% ELSE %]
TBDIR=$TB_STAGE_DIR/Browser
+ TBDIRS=("$TBDIR")
DOCSPATH=[% c('var/ProjectName') %]/Docs
EXTSPATH=[% c('var/ProjectName') %]/Data/Browser/profile.default/extensions
@@ -40,7 +43,10 @@ touch "$GENERATEDPREFSPATH"
mkdir -p "$TBDIR/[% c('var/ProjectName') %]/Data/Browser/Caches"
[% END %]
-mkdir -p "$TBDIR/$EXTSPATH"
+for tbdir in "${TBDIRS[@]}"
+do
+ mkdir -p "$tbdir/$EXTSPATH"
+done
# Extract the MAR tools.
unzip -d $rootdir $rootdir/[% c('input_files_by_name/firefox') %]/mar-tools-*.zip
@@ -49,26 +55,45 @@ MARTOOLS=$rootdir/mar-tools
mv [% c('input_files_by_name/noscript') %] "$TBDIR/$EXTSPATH/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi"
[% IF c("var/tor-browser") -%]
+ function mv_tbdir {
+ declare args=($@)
+ local dest="${args[-1]}"
+ unset args[-1]
+ mv ${args[@]} "$TBDIR/$dest"
+ [% IF c("var/osx") -%]
+ for src in ${args[@]}
+ do
+ mv "aarch64/$src" "$TBDIR_AARCH64/$dest"
+ done
+ [% END -%]
+ }
+
tar -xvf [% c('input_files_by_name/tor-expert-bundle') %]
+ [% IF c("var/osx") -%]
+ mkdir aarch64
+ tar -C aarch64 -xf [% c('input_files_by_name/tor-expert-bundle-aarch64') %]
+ [% END -%]
# geoip(6) and anything else that belongs in the data dir from the expert bundle
- mkdir -p "$TBDIR/$TORCONFIGPATH"
- mv data/{geoip,geoip6} "$TBDIR/$TORCONFIGPATH"
+ mkdir -p "$TBDIR/$TORCONFIGPATH" [% IF c("var/osx") %]"$TBDIR_AARCH64/$TORCONFIGPATH"[% END %]
+ mv_tbdir data/{geoip,geoip6} "$TORCONFIGPATH"
# Bridge lists will be consumed later in `bridges_conf`
mv tor/pluggable_transports/bridges_list.*.txt $rootdir
+ [% IF c("var/osx") %]
+ rm -f aarch64/tor/pluggable_transports/bridges_list.*.txt
+ [% END -%]
# Snowflake's README is the only documentation shipped in tor-expert-bundle
- mkdir -p "$TBDIR/$DOCSPATH/snowflake"
- find tor
- mv tor/pluggable_transports/README.SNOWFLAKE.md "$TBDIR/$DOCSPATH/snowflake/README.md"
+ mkdir -p "$TBDIR/$DOCSPATH/snowflake" [% IF c("var/osx") %]"$TBDIR_AARCH64/$DOCSPATH/snowflake"[% END %]
+ mv_tbdir tor/pluggable_transports/README.SNOWFLAKE.md "$DOCSPATH/snowflake/README.md"
# Move the PTs to where TB expects them
- mkdir -p "$TBDIR/$TORBINPATH"
- mv tor/pluggable_transports "$TBDIR/$TORBINPATH/PluggableTransports"
+ mkdir -p "$TBDIR/$TORBINPATH" [% IF c("var/osx") %]"$TBDIR_AARCH64/$TORBINPATH"[% END %]
+ mv_tbdir tor/pluggable_transports "$TORBINPATH/PluggableTransports"
# Move tor and dependencies to where TB expects them
- mv tor/* "$TBDIR/$TORBINPATH"
+ mv_tbdir tor/* "$TORBINPATH"
# on linux, libstdc++ lives in it's own directory
[% IF c("var/linux") %]
@@ -84,7 +109,13 @@ mv [% c('input_files_by_name/noscript') %] "$TBDIR/$EXTSPATH/{73a6fe31-595d-460b
[% END -%]
-tar -C "$TBDIR[% IF c("var/osx") %]/Contents/Resources[% END %]" -xf [% c('input_files_by_name/fonts') %]
+for tbdir in "${TBDIRS[@]}"
+do
+ [% IF c("var/osx") -%]
+ tbdir="$tbdir/Contents/Resources"
+ [% END -%]
+ tar -C "$tbdir" -xf [% c('input_files_by_name/fonts') %]
+done
[% IF c("var/linux") %]
cat > ${TB_STAGE_DIR}/start-[% c("var/project-name") %].desktop << 'RBM_TB_EOF'
@@ -114,6 +145,13 @@ RBM_TB_EOF
tar -C ${TB_STAGE_DIR} -xf [% c('input_files_by_name/firefox') %]/browser.tar.gz
+[% IF c("var/osx") -%]
+ # Use symlink in tmp dir to extract "Tor Browser.app" to "Tor Browser-aarch64.app"
+ ff_aarch64=$(mktemp -d)
+ ln -s "$TBDIR_AARCH64" "$ff_aarch64/[% c("var/Project_Name") %].app"
+ tar -C $ff_aarch64 -xf [% c('input_files_by_name/firefox-aarch64') %]/browser.tar.gz
+[% END %]
+
[% IF c("var/tor-browser") -%]
# Include the Tor Browser manual
TMP_MANUAL_PATH=$rootdir/tmp_manual/
@@ -121,7 +159,10 @@ tar -C ${TB_STAGE_DIR} -xf [% c('input_files_by_name/firefox') %]/browser.tar.gz
pushd $TMP_MANUAL_PATH
tar -xf $rootdir/[% c('input_files_by_name/manual') %]
find . -exec [% c("touch") %] {} \;
- find chrome/ | sort | zip -X -@ "$TBDIR[% IF c("var/osx") %]/Contents/Resources[% END %]/browser/omni.ja"
+ for tbdir in "${TBDIRS[@]}"
+ do
+ find chrome/ | sort | zip -X -@ "$tbdir[% IF c('var/osx') %]/Contents/Resources[% END %]/browser/omni.ja"
+ done
popd
rm -rf $TMP_MANUAL_PATH
[% END -%]
@@ -165,19 +206,30 @@ tar -C ${TB_STAGE_DIR} -xf [% c('input_files_by_name/firefox') %]/browser.tar.gz
[% IF c("var/tor-browser") -%]
# Install a "tor" shim that sets the working directory. See #10030.
- mv "$TBDIR/$TORBINPATH/tor" "$TBDIR/$TORBINPATH/tor.real"
- cp Bundle-Data/mac-tor.sh "$TBDIR/$TORCONFIGPATH/tor"
+ for tbdir in "${TBDIRS[@]}"
+ do
+ mv "$tbdir/$TORBINPATH/tor" "$tbdir/$TORBINPATH/tor.real"
+ cp Bundle-Data/mac-tor.sh "$tbdir/$TORCONFIGPATH/tor"
+ done
[% END -%]
tar -C Bundle-Data/mac-applications.dmg -c . | tar -C $TB_STAGE_DIR -x
[% END %]
-mkdir -p "$TBDIR/$DOCSPATH"
-cp -a Bundle-Data/Docs/* "$TBDIR/$DOCSPATH"
-tar -C Bundle-Data/[% bundledata_osname %] [% IF ! c("var/namecoin") %]--exclude=*Electrum-NMC* --exclude=*ncprop279*[% END %] -c . | tar -C "$TBDIR[% IF ! c("var/osx") %]/[% c('var/ProjectName') %][% END %]" -x
+for tbdir in "${TBDIRS[@]}"
+do
+ mkdir -p "$tbdir/$DOCSPATH"
+ cp -a Bundle-Data/Docs/* "$tbdir/$DOCSPATH"
+ tar -C Bundle-Data/[% bundledata_osname %] \
+ [% IF ! c("var/namecoin") %]--exclude=*Electrum-NMC* --exclude=*ncprop279*[% END %] \
+ -c . | tar -C "$tbdir[% IF ! c("var/osx") %]/[% c('var/ProjectName') %][% END %]" -x
+done
[% IF c("var/tor-browser") -%]
- cat Bundle-Data/PTConfigs/[% bundledata_osname %]/torrc-defaults-appendix >> "$TBDIR/$TORCONFIGPATH/torrc-defaults"
+ for tbdir in "${TBDIRS[@]}"
+ do
+ cat Bundle-Data/PTConfigs/[% bundledata_osname %]/torrc-defaults-appendix >> "$tbdir/$TORCONFIGPATH/torrc-defaults"
+ done
cat Bundle-Data/PTConfigs/bridge_prefs.js >> "$GENERATEDPREFSPATH"
function bridges_conf {
@@ -208,17 +260,21 @@ tar -C Bundle-Data/[% bundledata_osname %] [% IF ! c("var/namecoin") %]--exclude
PKG_LOCALE="ALL"
PKG_DIR='[% c("var/project-name") %]'
-pushd "$TBDIR[% IF c("var/osx") %]/Contents/Resources[% END %]/browser/"
-unzip omni.ja defaults/preferences/[% c("var/prefs_file") %] || [ $? -lt 3 ]
-# Append our built extension-overrides.js to the preferences file
-cat "$GENERATEDPREFSPATH" >> defaults/preferences/[% c("var/prefs_file") %]
-cp defaults/preferences/[% c("var/prefs_file") %] $rootdir
-[% c("touch") %] defaults/preferences/[% c("var/prefs_file") %]
-zip -Xm omni.ja defaults/preferences/[% c("var/prefs_file") %]
-rm -rf defaults
-# create tbb_version.json file for #25020
-echo '{"version":"[% c("var/torbrowser_version") %]","architecture":"[% c("var/mar_osname") %]","channel":"[% c("var/channel") %]","locale":"en-US"}' > ../tbb_version.json
-popd
+for tbdir in "${TBDIRS[@]}"
+do
+ tbdir="$tbdir[% IF c('var/osx') %]/Contents/Resources[% END %]/browser/"
+ pushd "$tbdir"
+ unzip omni.ja defaults/preferences/[% c("var/prefs_file") %] || [ $? -lt 3 ]
+ # Append our built extension-overrides.js to the preferences file
+ cat "$GENERATEDPREFSPATH" >> defaults/preferences/[% c("var/prefs_file") %]
+ cp defaults/preferences/[% c("var/prefs_file") %] $rootdir
+ [% c("touch") %] defaults/preferences/[% c("var/prefs_file") %]
+ zip -Xm omni.ja defaults/preferences/[% c("var/prefs_file") %]
+ rm -rf defaults
+ # create tbb_version.json file for #25020
+ echo '{"version":"[% c("var/torbrowser_version") %]","architecture":"[% c("var/mar_osname") %]","channel":"[% c("var/channel") %]","locale":"en-US"}' > ../tbb_version.json
+ popd
+done
[% IF c("var/windows") %]
tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/nsis') %]
@@ -229,6 +285,27 @@ popd
mv $distdir/windows-installer ${TB_STAGE_DIR}
[% END %]
+[% IF c("var/osx") -%]
+ # unify.py requires lipo, so we need to add cctools in the PATH
+ tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/macosx-toolchain') %]
+ export PATH="/var/tmp/dist/macosx-toolchain/cctools/bin:$PATH"
+ firefox_src=/var/tmp/dist/firefox-src
+ mkdir -p $firefox_src
+ tar -C $firefox_src -xf $rootdir/[% c('input_files_by_name/src-firefox') %]
+ firefox_src=$(echo $firefox_src/firefox-*)
+ # Temporarily move noscript outside of $TBDIR to avoid error when running unify.py:
+ # File "/var/tmp/dist/firefox-src/firefox-69721baf14f0/python/mozbuild/mozpack/mozjar.py", line 452, in _getreader
+ # raise JarReaderError(
+ # mozpack.mozjar.JarReaderError: Central directory and file header mismatch. Corrupted archive?
+ #
+ # See https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/issues/40439#note_2838724
+ mv "$TBDIR/$EXTSPATH/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi" $rootdir/ns.xpi
+ MOZ_AUTOMATION=1 $firefox_src/mach python $firefox_src/toolkit/mozapps/installer/unify.py "$TBDIR" "$TBDIR_AARCH64"
+ mkdir -p "$TBDIR/$EXTSPATH"
+ mv $rootdir/ns.xpi "$TBDIR/$EXTSPATH/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi"
+ rm -Rf "$TBDIR_AARCH64"
+[% END -%]
+
[% IF c("var/windows") %]
TBDIR="$distdir/$PKG_DIR/[% c("var/Project_Name") %]/Browser"
[% ELSIF c("var/osx") %]
@@ -266,7 +343,7 @@ cd $distdir
[% ELSIF c("var/osx") %]
[% c('var/ddmg', {
dmg_src => '"$PKG_DIR"',
- dmg_out => '$OUTDIR/' _ c('var/ProjectName') _ '-' _ c("var/torbrowser_version") _ '-' _ c("var/dmg_name") _ '_${PKG_LOCALE}.dmg',
+ dmg_out => '$OUTDIR/' _ c('var/ProjectName') _ '-' _ c("var/torbrowser_version") _ '-' _ c("var/mar_osname") _ '_${PKG_LOCALE}.dmg',
}) %]
[% ELSIF c("var/windows") %]
find "$PKG_DIR" -exec [% c("touch") %] {} \;
diff --git a/projects/browser/config b/projects/browser/config
index 29d65f7e..e7d9f31f 100644
--- a/projects/browser/config
+++ b/projects/browser/config
@@ -26,19 +26,16 @@ targets:
linux-x86_64:
var:
mar_osname: linux64
- osx-x86_64:
- var:
- mar_osname: osx64
- dmg_name: osx64
- osx-aarch64:
- var:
- mar_osname: osx64-aarch64
- dmg_name: osx64-aarch64
osx:
var:
+ mar_osname: osx64
arch_deps:
- genisoimage
- faketime
+ - python3-dev
+ - python3-pip
+ - python3-distutils-extra
+ - python3-psutil
windows:
var:
arch_deps:
@@ -67,12 +64,26 @@ input_files:
- project: firefox
name: firefox
enable: '[% ! c("var/android") %]'
+ - project: firefox
+ name: firefox-aarch64
+ enable: '[% c("var/osx") %]'
+ target_prepend:
+ - osx-aarch64
+ - project: firefox
+ name: src-firefox
+ pkg_type: src-tarballs
+ enable: '[% c("var/osx") %]'
- project: fenix
name: fenix
enable: '[% c("var/android") %]'
- project: tor-expert-bundle
name: tor-expert-bundle
enable: '[% c("var/tor-browser") %]'
+ - project: tor-expert-bundle
+ name: tor-expert-bundle-aarch64
+ enable: '[% c("var/osx") && c("var/tor-browser") %]'
+ target_prepend:
+ - osx-aarch64
- project: fonts
name: fonts
enable: '[% ! c("var/android") %]'
@@ -98,7 +109,7 @@ input_files:
enable: '[% c("var/android") %]'
- name: '[% c("var/compiler") %]'
project: '[% c("var/compiler") %]'
- enable: '[% c("var/android") %]'
+ enable: '[% c("var/android") || c("var/osx") %]'
- name: electrum-nmc
project: electrum-nmc
enable: '[% c("var/namecoin") %]'
diff --git a/projects/release/build b/projects/release/build
index 15e3e86f..84d09b05 100644
--- a/projects/release/build
+++ b/projects/release/build
@@ -22,11 +22,8 @@ mkdir -p "$destdir"
[% IF c("var/browser-windows-x86_64") -%]
mv [% c('input_files_by_name/windows-x86_64') %]/* "$destdir"/
[% END -%]
-[% IF c("var/browser-osx-x86_64") -%]
- mv [% c('input_files_by_name/osx-x86_64') %]/* "$destdir"/
-[% END -%]
-[% IF c("var/browser-osx-aarch64") -%]
- mv [% c('input_files_by_name/osx-aarch64') %]/* "$destdir"/
+[% IF c("var/browser-macos") -%]
+ mv [% c('input_files_by_name/macos') %]/* "$destdir"/
[% END -%]
[% IF c("var/browser-linux-i686") -%]
mv [% c('input_files_by_name/linux-i686') %]/* "$destdir"/
diff --git a/projects/release/config b/projects/release/config
index f3165ed8..cd1c7d74 100644
--- a/projects/release/config
+++ b/projects/release/config
@@ -14,7 +14,7 @@ targets:
- browser-linux-i686
- browser-windows-i686
- browser-windows-x86_64
- - browser-osx-x86_64
+ - browser-macos
- browser-android-armv7
- browser-android-x86
- browser-android-x86_64
@@ -25,7 +25,7 @@ targets:
- browser-linux-i686
- browser-windows-i686
- browser-windows-x86_64
- - browser-osx-x86_64
+ - browser-macos
- browser-src
browser-all-android:
- browser-android-armv7
@@ -60,12 +60,9 @@ targets:
browser-windows-x86_64:
var:
browser-windows-x86_64: 1
- browser-osx-x86_64:
+ browser-macos:
var:
- browser-osx-x86_64: 1
- browser-osx-aarch64:
- var:
- browser-osx-aarch64: 1
+ browser-macos: 1
browser-src:
var:
browser-src: '[% ! c("var/testbuild") %]'
@@ -188,19 +185,12 @@ input_files:
- '[% c("var/build_target") %]'
- '[% c("var/browser_type") %]-windows-x86_64'
- - name: osx-x86_64
- project: browser
- enable: '[% c("var/browser-osx-x86_64") %]'
- target:
- - '[% c("var/build_target") %]'
- - '[% c("var/browser_type") %]-osx-x86_64'
-
- - name: osx-aarch64
+ - name: macos
project: browser
- enable: '[% c("var/browser-osx-aarch64") %]'
+ enable: '[% c("var/browser-macos") %]'
target:
- '[% c("var/build_target") %]'
- - '[% c("var/browser_type") %]-osx-aarch64'
+ - '[% c("var/browser_type") %]-macos'
- name: src-firefox
project: firefox
diff --git a/rbm.conf b/rbm.conf
index 0d34a766..c4dd832d 100644
--- a/rbm.conf
+++ b/rbm.conf
@@ -499,26 +499,19 @@ targets:
- zip
- unzip
- torbrowser-osx-x86_64:
+ torbrowser-macos:
- osx-x86_64
- osx
- torbrowser
- torbrowser-osx-aarch64:
- - osx-aarch64
- - osx
- - torbrowser
- basebrowser-osx-x86_64:
+ basebrowser-macos:
- osx-x86_64
- osx
- basebrowser
- basebrowser-osx-aarch64:
- - osx-aarch64
- - osx
- - basebrowser
osx-aarch64:
arch: aarch64
var:
osx-aarch64: 1
+ osx-x86_64: 0
osname: osx-aarch64
osx_arch: arm64
build_target: aarch64-apple-darwin
@@ -534,6 +527,7 @@ targets:
osx:
var:
osx: 1
+ osname: macos
container:
suite: bullseye
arch: amd64
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the tbb-commits
mailing list