Closed Bug 1670156 Opened 4 years ago Closed 4 years ago

No rule to make target '/builds/worker/workspace/obj-build/i686-pc-windows-gnu/release/osclientcerts_static.lib', needed by 'osclientcerts.dll'. Stop.

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(firefox84 fixed)

RESOLVED FIXED
84 Branch
Tracking Status
firefox84 --- fixed

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(2 files)

mingw builds fail with rustc >= 1.44.0 because the output file for staticlib crates changed from $crate_name.lib to lib$crate_name.a.

Assignee: nobody → mh+mozilla

That is what rust uses, and versions of rust >= 1.44 make the
discrepancy visible as a linker error on missing the _Unwind_Resume
symbol, so we need to align things.

Rustc >= 1.44 changed the file names of the static libraries it
produces with -windows-gnu targets, to match that of mingw clang/gcc.

Considering we still build on 1.43, the best fix would be to derive the
prefix/suffix based on the version of rust, but that actually turns into
a hard-to-solve problem because of configure tests for bindgen also
depending on the prefix/suffix value to be known.

On the other hand, we're soon due to an update to 1.47, so the simpler
solution is to just push mingw builds to require 1.44 (settling for the
smallest upgrade possible for now) and to remove the split between C and
rust library prefix/suffixes.

Pushed by mh@glandium.org: https://hg.mozilla.org/integration/autoland/rev/56701b76ae0b Switch 32-bits mingw clang to dwarf exceptions. r=tjr https://hg.mozilla.org/integration/autoland/rev/c7d67cf0e265 Use the same prefix/suffix for rust libraries on mingw builds. r=firefox-build-system-reviewers,dmajor
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 84 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: