Bug 1026162 (asan-macbuilds)

Automate Mac ASan builds and make them publicly available (like Linux builds)

RESOLVED FIXED

Status

defect
RESOLVED FIXED
5 years ago
Last year

People

(Reporter: smichaud, Unassigned)

Tracking

(Blocks 1 bug, {sec-want})

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/3320] )

Attachments

(1 attachment)

Current documentation on ASan builds is here:
https://developer.mozilla.org/en-US/docs/Mozilla/Testing/Firefox_and_Address_Sanitizer

As this doc says, nightly Linux trunk ASan builds are currently available.  But this isn't yet true for Mac builds.

Currently I'm doing Mac ASan builds "by hand", about once a week, and am making them available here:

http://people.mozilla.org/~stmichaud/bmo/firefox-asan.dmg

Instructions for how I do these builds are available here:

http://people.mozilla.org/~stmichaud/bmo/firefox-asan-howto.txt

But these builds should really be automated and done nightly, like the Linux builds.
See Also: → 923916
In the week since my "hand made" builds were first available, they've been instrumental in finding three bugs, two of which are security-sensitive.  So Mac ASan builds are clearly useful.

Automating these builds (and making them publicly available as nightlies) will enhance their usefulness, increase the number of users, and presumably increase the number of bugs found.
Who can we assign this to?
This is a release engineering bug as opposed to a core build system bug.
Component: Build Config → Release Automation
Product: Core → Release Engineering
QA Contact: bhearsum
Component: Release Automation → General Automation
QA Contact: bhearsum → catlee
I can certainly help with some of the TODOs here, especially getting the newer Clang to work. But I'd have to get a Mac for this, I assume. And we should make it part of the Q3 goals then.
> especially getting the newer Clang to work

I've had much better luck with LLVM revision 208032 (which I *think* corresponds to the 3.4.1 release) than with 200213.  But use of 208032 is currently blocked by bug 982693.

With both 200213 and 208032, you need to add the following cmake parameter to build llvm successfully on OS X 10.7:

-DLLVM_ENABLE_LIBCXX:BOOL=ON
Thanks, that valuable information Steven :)

If 208032 works better, we might as well target that version for the next ASan Clang upgrade, also on Linux :)
Depends on: 982693
Alias: asan-macbuilds
Depends on: 935795
Depends on: 1051190
Depends on: 1052439
Depends on: 1063944
Whiteboard: [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/3313]
Whiteboard: [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/3313] → [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/3318]
Whiteboard: [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/3318] → [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/3320]
Depends on: 923916
I'm going to be retiring in the next few months, and my people.mozilla.org account will presumably disappear.  In anticipation of that (and in case I forget), I'm attaching the latest revision of my instructions for doing a Mac ASan build "by hand".

I'm no longer doing these builds -- I stopped some months ago.
FWIW I think this is now unblocked. I can create local ASan builds on Mac without issue.
Done in 1421728.

Fuzzing ASan builds are now available from taskcluster, eg. latest: https://tools.taskcluster.net/index/gecko.v2.mozilla-central.latest.firefox/macosx64-fuzzing-asan-opt
Status: NEW → RESOLVED
Closed: Last year
Depends on: 1421728
Resolution: --- → FIXED
Component: General Automation → General
You need to log in before you can comment on or make changes to this bug.