Closed
Bug 1013341
Opened 10 years ago
Closed 10 years ago
"make package" fails in ASan build using GCC 4.8.2
Categories
(Firefox Build System :: General, defect)
Tracking
(firefox31 fixed, firefox32 fixed)
RESOLVED
FIXED
mozilla32
People
(Reporter: gk, Assigned: gk)
References
Details
Attachments
(1 file)
722 bytes,
patch
|
glandium
:
review+
lmandel
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
Building Fx 29 with ASan enabled and GCC 4.8.2 I got (in the packaging step): "Error: /path/to/build/obj-x86_64-unknown-linux-gnu/browser/installer/package-manifest:549: Missing files(s): bin/llvm-symbolizer" Seems this got introduced by bug 917242.
Assignee | ||
Updated•10 years ago
|
OS: Windows 7 → Linux
Hardware: x86 → x86_64
Comment 1•10 years ago
|
||
you can probably just add to the #ifdef MOZ_ASAN a check we're using clang. I'm not sure off hand if we already have a define for that, but if not adding one shouldn't be that hard.
Assignee | ||
Comment 2•10 years ago
|
||
(In reply to Trevor Saunders (:tbsaunde) from comment #1) > you can probably just add to the #ifdef MOZ_ASAN a check we're using clang. > I'm not sure off hand if we already have a define for that, but if not > adding one shouldn't be that hard. That is one solution, yes. But maybe the smarter one is to have an option whether to add a symbolizer in the packaging step at all given that at least GCC 4.8.x has no own symbolizer yet and one probably can use clang's instead: http://tsdgeos.blogspot.de/2014/03/asan-and-gcc-how-to-get-line-numbers-in.html
Comment 3•10 years ago
|
||
Leaving the fact aside that we should fix this, why are you building with GCC anyway? As far as I know, the Clang support for ASan is much better and there's no reason not to use Clang, since we support it (and we even create release builds with it).
Assignee | ||
Comment 4•10 years ago
|
||
(In reply to Christian Holler (:decoder) from comment #3) > Leaving the fact aside that we should fix this, why are you building with > GCC anyway? Because the browser we ship (Tor Browser) is just one part of a bundle containing a bunch of other software that is currently built with GCC. So it felt quite natural to not introduce an additional compiler in the build process but just upgrade the GCC version used. Especially as these ASan builds are currently only test builds for us.
Comment 5•10 years ago
|
||
Especially for testing I can highly recommend Clang. ASan isn't the only thing available there, you also get TSan, UBSan, LSan and some other checkers that GCC lacks. Not all of these are usable on Firefox, since our codebase has quite a few races and undefined behavior, but smaller programs can be tested quite well.
Comment 6•10 years ago
|
||
(In reply to Georg Koppen from comment #2) > (In reply to Trevor Saunders (:tbsaunde) from comment #1) > > you can probably just add to the #ifdef MOZ_ASAN a check we're using clang. > > I'm not sure off hand if we already have a define for that, but if not > > adding one shouldn't be that hard. > > That is one solution, yes. But maybe the smarter one is to have an option > whether to add a symbolizer in the packaging step at all given that at least > GCC 4.8.x has no own symbolizer yet and one probably can use clang's > instead: > http://tsdgeos.blogspot.de/2014/03/asan-and-gcc-how-to-get-line-numbers-in. > html judging by https://gcc.gnu.org/ml/gcc-patches/2013-12/msg00558.html I'd guess after gcc 4.8 your not going to need a symbolizer, so it hardly seems worth bothering. (In reply to Christian Holler (:decoder) from comment #3) > Leaving the fact aside that we should fix this, why are you building with > GCC anyway? As far as I know, the Clang support for ASan is much better and its certainly not going to get better if nobody uses it ;) but its kind of off topic.
Assignee | ||
Comment 7•10 years ago
|
||
Trying to follow the idea in comment 1: Including the llvm-symbolizer only if CLANG_CXX is defined. I tested this with my GCC setup and it worked.
Attachment #8428597 -
Flags: review?(mh+mozilla)
Updated•10 years ago
|
Attachment #8428597 -
Flags: review?(mh+mozilla) → review+
Assignee | ||
Updated•10 years ago
|
Comment 8•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/98644e8a0e12
Keywords: checkin-needed
Comment 9•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/98644e8a0e12
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla32
Assignee | ||
Comment 10•10 years ago
|
||
Comment on attachment 8428597 [details] [diff] [review] Adding a CLANG_CXX check. [Approval Request Comment] Bug caused by (feature/regressing bug #): 917242 User impact if declined: Downstream builds based on ESR can't be hardened with GCC >= 4.8.x and get deployed Testing completed (on m-c, etc.): nothing besides landing the patch on mozilla-inbound and m-c Risk to taking this patch (and alternatives if risky): none String or IDL/UUID changes made by this patch: none
Attachment #8428597 -
Flags: approval-mozilla-aurora?
Comment 11•9 years ago
|
||
Comment on attachment 8428597 [details] [diff] [review] Adding a CLANG_CXX check. Aurora approval granted.
Attachment #8428597 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 12•9 years ago
|
||
https://hg.mozilla.org/releases/mozilla-aurora/rev/780cfe21c209
status-firefox31:
--- → fixed
status-firefox32:
--- → fixed
Updated•6 years ago
|
Product: Core → Firefox Build System
You need to log in
before you can comment on or make changes to this bug.
Description
•