Open Bug 892533 Opened 12 years ago Updated 3 years ago

Unable to use VS2012 to build mail.dll as a libxul SDK component

Categories

(Firefox Build System :: General, defect)

x86_64
Windows 8
defect

Tracking

(Not tracked)

People

(Reporter: neil, Unassigned)

Details

For some time it's been possible to build mail.dll as a separate component against the libxul SDK rather than linking it into libxul as Thunderbird currently does. This works on Linux and on Windows with VS2010, but it fails on VS2012 which requires all objects in the same library to build against the same CRT. Since mail.dll has to link against XPCOM, RDF, unicharutil and zlib, there doesn't appear to be any combination of flags that will get this to work. Building against the dynamic CRT almost works; only unicharutil_external_s fails to link. However according to bug 732124 it looks as if this is because I'm supposed to link against the static CRT, which gives me two problems. A minor problem is that RDF is built against the dynamic CRT but I suppose this might just be because nobody's needed to fix it. However the big problem is that linking against the static CRT explicitly disables mozglue and therefore zlib which it contains. VS2012 won't let me link against zlib directly of course.
I've been meaning to overhaul how we link to the CRT (which is a prerequisite to killing libmozalloc properly), because our linking story is kind of broken. I think that would solve your problem.
Product: Core → Firefox Build System
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.