Closed Bug 1537669 Opened 5 years ago Closed 4 years ago

Use llvm-mt.exe instead of mt.exe when available

Categories

(Firefox Build System :: General, enhancement)

enhancement
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: glandium, Assigned: glandium)

Details

Attachments

(1 obsolete file)

MT is part of the Windows SDK, not MSVC, but an alternative exists for it: llvm-mt. The official LLVM distribution for Windows doesn't include it[1], though, so we can't just switch to it.

  1. https://bugs.llvm.org/show_bug.cgi?id=40152
Summary: Use llvm-mt.exe instead of mt.exe when available → Use llvm-mt.exe/llvm-rc.exe instead of mt.exe/rc.exe when available
Summary: Use llvm-mt.exe/llvm-rc.exe instead of mt.exe/rc.exe when available → Use llvm-mt.exe instead of mt.exe when available

MT is part of the Windows SDK, not MSVC, but an alternative exists for
it: llvm-mt. The official LLVM distribution for Windows doesn't include
it[1], though, so we can't just switch to it.

  1. https://bugs.llvm.org/show_bug.cgi?id=40152

While here, remove the .exe suffix from the check, to future-proof for
cross-windows builds.

Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/40832d187454
Use llvm-mt.exe instead of mt.exe when available. r=dmajor
Flags: needinfo?(mh+mozilla)

So it turns out llvm-mt was found by configure, but that disabled running mt entirely because of MSMANIFEST_TOOL. Now, with fixing this, we end up with:

04:03:31     INFO -  llvm-mt: error: no libxml2
04:03:31     INFO -  llvm-mt: ignoring unsupported 'outputresource:' option

which doesn't sound great.

That no libxml2 error is behind a #ifndef LLVM_LIBXML2_ENABLED, and from a quick glance at the cmake files, building on Windows never enables libxml2.

There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:glandium, could you have a look please?

Flags: needinfo?(mh+mozilla)

Can the release mgmt bot treat backed out bugs differently?

Flags: needinfo?(mh+mozilla) → needinfo?(sledru)

Yeah, we should ignore then. I reported https://github.com/mozilla/relman-auto-nag/issues/628 for that

Flags: needinfo?(sledru)

Turns out llvm-mt is useless in its current implementation. All it does is merge manifests, and we don't even do that. It can't embed a manifest in a binary. For Windows cross-builds, I'm going to try to move off MT entirely instead.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WONTFIX
Attachment #9052517 - Attachment is obsolete: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: