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@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/40... + 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