Opened 11 months ago

Closed 6 months ago

Last modified 6 months ago

#24632 closed defect (fixed)

Update macOS toolchain for ESR 60

Reported by: gk Owned by: tbb-team
Priority: Very High Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-rbm, ff60-esr, TorBrowserTeam201806R, GeorgKoppen201805
Cc: mcs, brade, boklm Actual Points:
Parent ID: #24631 Points:
Reviewer: Sponsor:

Description

This bug will cover the macOS related changes for the ESR 59 switch.

Child Tickets

TicketStatusOwnerSummaryComponent
#9711closedtbb-teamBuild our own cctools for macOS cross-compilationApplications/Tor Browser
#25548closedtbb-teamUpdate macOS SDK for Tor Browser builds to 10.11Applications/Tor Browser
#26003closedtbb-teamClean up our mozconfig-osx-x86_64 fileApplications/Tor Browser
#26195closedtbb-teamUse new cctools in our macosx-toolchain projectApplications/Tor Browser
#26249closedtbb-teamUpdate libevent to prevent broken compilation when targetting macOS 10.7Applications/Tor Browser

Attachments (1)

dmg installer.png (93.0 KB) - added by mcs 6 months ago.

Download all attachments as: .zip

Change History (21)

comment:1 Changed 11 months ago by gk

We need at least a newer SDK (https://bugzilla.mozilla.org/show_bug.cgi?id=1324892). It seems building with the older one is causing more and more crashes on newer Apple hardware. :(

comment:2 Changed 11 months ago by gk

Keywords: ff59-esr added

comment:3 Changed 11 months ago by gk

We need a newer cctools and clang, too, see: https://bugzilla.mozilla.org/show_bug.cgi?id=1337233 (might be another good opportunity to finally solve #9711?)

comment:4 Changed 10 months ago by gk

Keywords: ff60-esr added; ff59-esr removed

Firefox 60 is the new ESR.

comment:5 Changed 9 months ago by cypherpunks

Summary: Update macOS toolchain for ESR 59Update macOS toolchain for ESR 60

comment:6 Changed 8 months ago by gk

Keywords: TorBrowserTeam201804 added

comment:7 Changed 7 months ago by gk

Priority: MediumHigh

comment:8 Changed 7 months ago by gk

Keywords: tbb-rbm added

comment:9 Changed 7 months ago by gk

Keywords: TorBrowserTeam201805 added; TorBrowserTeam201804 removed

Move our roadmap tickets to May.

comment:10 Changed 7 months ago by gk

Keywords: GeorgKoppen201805 added

comment:11 Changed 6 months ago by gk

Priority: HighVery High

comment:12 Changed 6 months ago by gk

I opened to #26251 to track the snowflake related changes. We wont' wait for them though before switching our macOS nightly builds to ESR 60. Thus, I'll disable snowflake for the time being in case it takes a bit longer to adapt it to the new toolchain.

comment:13 Changed 6 months ago by gk

Cc: mcs brade added

The first pre-nightly Tor Browser based on ESR 60 finished building. Could someone with recent enough macOS systems test whether the bundle is at least running?

https://people.torproject.org/~gk/testbuilds/TorBrowser-tbb-nightly-esr60-osx64_en-US.dmg
https://people.torproject.org/~gk/testbuilds/TorBrowser-tbb-nightly-esr60-osx64_en-US.dmg.asc

Changed 6 months ago by mcs

Attachment: dmg installer.png added

comment:14 in reply to:  13 ; Changed 6 months ago by mcs

Replying to gk:

The first pre-nightly Tor Browser based on ESR 60 finished building. Could someone with recent enough macOS systems test whether the bundle is at least running?

I did some quick tests on a Retina MacBook Pro (macOS 10.13.4) and on an
older iMac (macOS 10.11.6). Good news so far: the only problem I noticed that might not be
known yet is that the app icon was positioned incorrectly within the DMG installer window:


I am not sure what caused that problem, but we should fix it when we re-do that window to use the new icon.

comment:15 in reply to:  14 Changed 6 months ago by mcs

Replying to mcs:

Good news so far: the only problem I noticed that might not be
known yet is that the app icon was positioned incorrectly within the DMG installer window....

I created #26263 to track this issue.

comment:16 in reply to:  14 Changed 6 months ago by gk

Replying to mcs:

Replying to gk:

The first pre-nightly Tor Browser based on ESR 60 finished building. Could someone with recent enough macOS systems test whether the bundle is at least running?

I did some quick tests on a Retina MacBook Pro (macOS 10.13.4) and on an
older iMac (macOS 10.11.6). Good news so far: the only problem I noticed that might not be
known yet is that the app icon was positioned incorrectly within the DMG installer window:

That's great news, thanks! I posted patches for all child bugs. I'll add patches for the remaining bugs on a branch for this ticket including all the other patches, too, in order to have one branch which one can actually use to test building the whole thing.

comment:17 Changed 6 months ago by gk

Cc: boklm added
Keywords: TorBrowserTeam201806R added; TorBrowserTeam201805 removed
Status: newneeds_review

bug_24632_v2 (https://gitweb.torproject.org/user/gk/tor-browser-build.git/log/?h=bug_24632_v2) has all the 8 patches to fix this bug. Please review.

Last edited 6 months ago by gk (previous) (diff)

comment:18 Changed 6 months ago by boklm

I cherry-picked the following commits on master:

  • 7997d2322347f742e7f4ede47379119faeb03bdd: Bug 24632: Use our new toolchain for rustc compilation
  • 3b5038d90cac5cfcf6856cc0786cfa99adbc775a: Bug 24632: Adapt tor and OpenSSL for new macOS toolchain
  • a0130c9a178ae919a400ad014d7f855a282c72b4: Bug 24632: Bump clang version in go build script comment
  • 3db16b9c473ec950452126700fc1e22f71ed8190: Bug 24632: Disable snowflake for macOS for now

The last missing one is Bug 24632: Adapt firefox and tor-browser to new macOS toolchain. For this one, I think we don't need to include llvm in the firefox build for macOS, as it is already included in macosx-toolchain. So I suggest the following change (fixup commit to be squased after review):
https://gitweb.torproject.org/user/boklm/tor-browser-build.git/commit/?h=bug_26003_v2&id=6f7ae06bbae28efc8a84db504c1ceb1744bb8a88

comment:19 Changed 6 months ago by gk

Resolution: fixed
Status: needs_reviewclosed

That's a good point, thanks. I squashed your commit into mine and pushed everything to master (commit e76952c389487d657c3f52fede5e9ca56ec02397). So, we are supposed to be good. \o/

comment:20 Changed 6 months ago by gk

We needed two small fixups here:

commit aabed936170b9ea88df2037e8d452dc5d9915f20 which installs xz-utils which we now need for MAR file generation and commit fcb2a3707af71bcd564bf0dd8a563835eeea6b9b which fixed a missing "TorBrowser.app" -> "Tor Browser.app" transition.

Note: See TracTickets for help on using tickets.