thread 'main' panicked at 'unable to generate bindings: ClangDiagnostic("error: unknown argument: '-mno-thumb-interwork'\n")', ../third_party/rust/neqo-crypto/build.rs:282:39
Categories
(Firefox Build System :: General, defect)
Tracking
(firefox-esr102 unaffected, firefox111 unaffected, firefox112 fixed, firefox113 fixed)
Tracking | Status | |
---|---|---|
firefox-esr102 | --- | unaffected |
firefox111 | --- | unaffected |
firefox112 | --- | fixed |
firefox113 | --- | fixed |
People
(Reporter: herrtimson, Assigned: glandium)
References
(Regression)
Details
(Keywords: regression)
Attachments
(2 files)
1.11 MB,
application/gzip
|
Details | |
48 bytes,
text/x-phabricator-request
|
diannaS
:
approval-mozilla-release+
|
Details | Review |
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
Steps to reproduce:
I downloaded latest git sources and compiled them for armv7a
Actual results:
I got these errors:
27:01.23 [neqo-crypto 0.6.4] thread 'main' panicked at 'unable to generate bindings: ClangDiagnostic("error: unknown argument: '-mno-thumb-interwork'\n")', /var/tmp/portage/www-client/firefox-113.0/work/firefox-113.0/third_party/rust/neqo-crypto/build.rs:282:39
27:01.23 [neqo-crypto 0.6.4] stack backtrace:
27:01.23 [neqo-crypto 0.6.4] 0: 0x55e4d261955a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h0d52a35915fffbeb
27:01.23 [neqo-crypto 0.6.4] 1: 0x55e4d263e0de - core::fmt::write::hd30867c928528e61
27:01.24 [neqo-crypto 0.6.4] 2: 0x55e4d2616935 - std::io::Write::write_fmt::hc403056a57833035
27:01.24 [neqo-crypto 0.6.4] 3: 0x55e4d2619325 - std::sys_common::backtrace::print::h54d034229014d02f
27:01.24 [neqo-crypto 0.6.4] 4: 0x55e4d261ab0f - std::panicking::default_hook::{{closure}}::h4c9968a7ce9703d0
27:01.24 [neqo-crypto 0.6.4] 5: 0x55e4d261a84b - std::panicking::default_hook::h3659243b9a491a62
27:01.24 [neqo-crypto 0.6.4] 6: 0x55e4d261b219 - std::panicking::rust_panic_with_hook::h1e42a9ebf2e8998e
27:01.24 [neqo-crypto 0.6.4] 7: 0x55e4d261afb9 - std::panicking::begin_panic_handler::{{closure}}::h1aa0e1fd7f7248e0
27:01.25 [neqo-crypto 0.6.4] 8: 0x55e4d2619a0c - std::sys_common::backtrace::__rust_end_short_backtrace::hc17453f54d491454
27:01.36 #include "..." search starts here:
27:01.36 #include <...> search starts here:
27:01.37 /usr/armv7a-unknown-linux-gnueabihf/usr/include/nspr
27:01.37 /usr/armv7a-unknown-linux-gnueabihf/usr/include/nss
27:01.37 /var/tmp/portage/www-client/firefox-113.0/work/firefox_build/dist/include/nss
27:01.37 /usr/armv7a-unknown-linux-gnueabihf/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/10/include/g++-v10
27:01.37 /usr/armv7a-unknown-linux-gnueabihf/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/10/include/g++-v10/armv7a-unknown-linux-gnueabihf
27:01.37 /usr/armv7a-unknown-linux-gnueabihf/usr/lib/gcc/armv7a-unknown-linux-gnueabihf/10/include/g++-v10/backward
27:01.37 /usr/armv7a-unknown-linux-gnueabihf/usr/include
27:01.37 End of search list.
27:01.38 thread 'main' panicked at 'unable to generate bindings: ClangDiagnostic("error: unknown argument: '-mno-thumb-interwork'\n")', /var/tmp/portage/www-client/firefox-113.0/work/firefox-113.0/third_party/rust/neqo-crypto/build.rs:282:39
27:01.38 stack backtrace:
27:01.38 0: 0x55e4d261955a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h0d52a35915fffbeb
27:01.38 1: 0x55e4d263e0de - core::fmt::write::hd30867c928528e61
27:01.38 2: 0x55e4d2616935 - std::io::Write::write_fmt::hc403056a57833035
27:01.39 3: 0x55e4d2619325 - std::sys_common::backtrace::print::h54d034229014d02f
27:01.39 4: 0x55e4d261ab0f - std::panicking::default_hook::{{closure}}::h4c9968a7ce9703d0
27:01.39 5: 0x55e4d261a84b - std::panicking::default_hook::h3659243b9a491a62
27:01.39 6: 0x55e4d261b219 - std::panicking::rust_panic_with_hook::h1e42a9ebf2e8998e
27:01.39 7: 0x55e4d261afb9 - std::panicking::begin_panic_handler::{{closure}}::h1aa0e1fd7f7248e0
27:01.39 8: 0x55e4d2619a0c - std::sys_common::backtrace::__rust_end_short_backtrace::hc17453f54d491454
Expected results:
I expect the compile to pass smothly and bake me a nice firefox nightly.
This is a cross compile with gcc-10, -mno-thumb-interwork is an input clang doesn't understand. Which makes me think something made the build system asssume this is a clang build, which its not.
The full build log is attached
the behavior was introduced in firefox-112.0 branch, which is also affected, via bug 1820946
of the seven commits linked to that bug, this one is responsible for the breakage: https://hg.mozilla.org/mozilla-central/rev/80c39fbdd3cc66add325ea29450293816bfec722
I reverted it for firefox-112.0_beta5 and it did compile a perfectly fine binary
Comment 2•2 years ago
•
|
||
AFAIK thumb-interwork
/mno-thumb-interwork
is a gcc only flag and we pass all_arm_flags to bindgen here. Note that all_arm_flags includes interwork. Perhaps we need another subset of arm flags that only includes arm flags that clang also understands.
Comment 3•2 years ago
|
||
The Bugbug bot thinks this bug should belong to the 'Firefox Build System::General' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Comment 4•2 years ago
|
||
:glandium, since you are the author of the regressor, bug 1820946, could you take a look? Also, could you set the severity field?
For more information, please visit auto_nag documentation.
Assignee | ||
Comment 5•2 years ago
|
||
Updated•2 years ago
|
Assignee | ||
Updated•2 years ago
|
Comment 6•2 years ago
|
||
Set release status flags based on info from the regressing bug 1820946
Updated•2 years ago
|
Assignee | ||
Comment 7•2 years ago
|
||
Comment on attachment 9326770 [details]
Bug 1824166 - Avoid passing thumb-interwork flags to clang for bindgen.
Beta/Release Uplift Approval Request
- User impact if declined: Build failure in some non-standard configurations
- Is this code covered by automated tests?: No
- Has the fix been verified in Nightly?: No
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): The patch only affects (downstream) builds that use the --with-thumb-interwork/--without-thumb-interwork build options explicitly.
- String changes made/needed:
- Is Android affected?: No
Comment 9•2 years ago
|
||
bugherder |
Comment 10•2 years ago
|
||
Comment on attachment 9326770 [details]
Bug 1824166 - Avoid passing thumb-interwork flags to clang for bindgen.
Approved for 112.0rc2
Comment 11•2 years ago
|
||
bugherder uplift |
Description
•