Closed
Bug 1002596
Opened 11 years ago
Closed 11 years ago
Fix various sccache problems with clang
Categories
(Firefox Build System :: General, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
mozilla32
People
(Reporter: glandium, Assigned: glandium)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
6.95 KB,
patch
|
mshal
:
review+
|
Details | Diff | Splinter Review |
I only tested the initial clang support in sccache worked with simple commands, but trying to build firefox revealed many issues:
- The compiler detection uses a c input, which clang++ complain about on stderr, and that fails because stderr is not opened for write when executing it.
- The -M* flags are given to both the preprocessor and the compiler, which breaks what ends up in depfiles because of the temporary source files for compilation. We only mean to use those flags on preprocessor.
- sccache doesn't know all flags clang supports that take a value, most notably -arch, we use during the build.
- clan.g tries to be smart with warnings, and may emit more of them when compiling preprocessed output, which, when combined with -Werror leads to build failures.
- ECONNREFUSED value is not the same as on Linux
Assignee | ||
Comment 1•11 years ago
|
||
Assignee: nobody → mh+mozilla
Attachment #8413861 -
Flags: review?(mshal)
Assignee | ||
Updated•11 years ago
|
Blocks: sccache-mac
Comment 2•11 years ago
|
||
Comment on attachment 8413861 [details] [diff] [review]
Fix various sccache problems with clang
The clang -Werror issue is really unfortunate. Can you provide some details in this bug about it? Maybe it is something we could get fixed upstream eventually.
Attachment #8413861 -
Flags: review?(mshal) → review+
Assignee | ||
Comment 3•11 years ago
|
||
In file included from /builds/slave/try-osx64-d-000000000000000000/build/obj-firefox/security/certverifier/Unified_cpp_certverifier0.cpp:15:
/builds/slave/try-osx64-d-000000000000000000/build/security/certverifier/ExtendedValidation.cpp:839:36: error: self-comparison always evaluates to true [-Werror,-Wtautological-compare]
unsigned int flags = (((trustSSL)==trustSSL)?((&nssTrust)->sslFlags): (((trustSSL)==trustEmail)?((&nssTrust)->emailFlags): (((trustSSL)==trustObjectSigning)?((&nssTrust)->objectSigningFlags):0)));
^
1 error generated.
Assignee | ||
Comment 4•11 years ago
|
||
Assignee | ||
Updated•11 years ago
|
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Updated•11 years ago
|
Target Milestone: --- → mozilla32
Updated•7 years ago
|
Product: Core → Firefox Build System
You need to log in
before you can comment on or make changes to this bug.
Description
•