Closed
Bug 1474024
Opened 6 years ago
Closed 6 years ago
Enabling LTO on macOS builds breaks breakpad symbols
Categories
(Firefox Build System :: General, defect)
Firefox Build System
General
Tracking
(firefox63 fixed)
RESOLVED
FIXED
mozilla63
Tracking | Status | |
---|---|---|
firefox63 | --- | fixed |
People
(Reporter: glandium, Assigned: glandium)
References
Details
(Keywords: in-triage)
Attachments
(1 file)
$ unzip -l target.crashreporter-symbols.zip Archive: target.crashreporter-symbols.zip Length Date Time Name --------- ---------- ----- ---- 35768326 2010-01-01 00:00 XUL/02090A86BD603B49865D8E78782645420/XUL.sym 40509807 2010-01-01 00:00 XUL/884D9FB3B9A1377C9F3841F7CFA223450/XUL.sym 185798 2010-01-01 00:00 libnss3.dylib/F686E908492C3FB9B719F485D0B9F2800/libnss3.dylib.sym --------- ------- A lot of files don't even have symbols anymore, and the XUL symbols are way too small. The current size of a non-LTOed build: 238680820 2010-01-01 00:00 XUL/2A0886A0EA763D6983D08153CD10D0030/XUL.sym 209391087 2010-01-01 00:00 XUL/90E414C5EB293A51BBE055BA08F1670F0/XUL.sym
Assignee | ||
Comment 2•6 years ago
|
||
Found a fix.
Assignee: nobody → mh+mozilla
Flags: needinfo?(mh+mozilla)
Comment hidden (mozreview-request) |
Assignee | ||
Comment 4•6 years ago
|
||
For the record, I originally was setting this in toolchain.configure, but then I found out the race condition mentioned in the comment, which requires using a make variable in the linker flags, and we don't have a way to handle those things outside a Makefile currently.
Comment 5•6 years ago
|
||
It looks like clang has code to do this automatically, does it not get used in our build configuration? https://github.com/llvm-mirror/clang/blob/1d90e7314049f86752943b0568a805a7f11b7b89/lib/Driver/ToolChains/Darwin.cpp#L227
Assignee | ||
Comment 6•6 years ago
|
||
Apparently not.
Updated•6 years ago
|
Attachment #8991220 -
Flags: review?(core-build-config-reviews) → review?(nfroyd)
Comment 7•6 years ago
|
||
mozreview-review |
Comment on attachment 8991220 [details] Bug 1474024 - Avoid LTO breaking debug info on macOS builds. https://reviewboard.mozilla.org/r/256176/#review264062 Thanks for the great explanatory comment. ::: config/config.mk:218 (Diff revision 1) > HOST_C_LDFLAGS = $(COMPUTED_HOST_C_LDFLAGS) > HOST_CXX_LDFLAGS = $(COMPUTED_HOST_CXX_LDFLAGS) > > +ifdef MOZ_LTO > +ifeq (Darwin,$(OS_TARGET)) > +# When linking on macOS, debug info is not linked along, and the dwarf Nit: "not linked along with the final binary"?
Attachment #8991220 -
Flags: review?(nfroyd) → review+
Comment hidden (mozreview-request) |
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/autoland/rev/a0733849c96b Avoid LTO breaking debug info on macOS builds. r=froydnj
Comment 10•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/a0733849c96b
Status: NEW → RESOLVED
Closed: 6 years ago
status-firefox63:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
You need to log in
before you can comment on or make changes to this bug.
Description
•