Open Bug 1237502 Opened 8 years ago Updated 2 years ago

Make --disable-compile-environment on Windows work without the Windows SDK and toolchain

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(Not tracked)

People

(Reporter: nalexander, Unassigned)

References

Details

Attachments

(1 file)

This is the Windows equivalent of Bug 1220476.  Bug 1236111 will make --disable-compile-environment work on Windows, but still requires a toolchain in some subtle ways.  Let's go all the way and require only MozillaBuild (and no toolchain).
The configure.in parts are ready to go.  The Makefile.in parts are
just workarounds; I'll try to replace the $(CPP) invocations with
Preprocessor.py sometime soon.  (The preprocessing is tricky, so I'm
not sure it'll Just Work.)  It's worth noting that the Windows Make is
behaving differently than both Mac and Linux Make: the $(CPP) failures
abort the build, where-as on Mac and Linux the failures are logged and
ignored.  I can't explain this -- perhaps it's the piping?

Review commit: https://reviewboard.mozilla.org/r/29823/diff/#index_header
See other reviews: https://reviewboard.mozilla.org/r/29823/
Attachment #8704956 - Flags: review?(gps)
Comment on attachment 8704956 [details]
MozReview Request: Bug 1237502 - Make --disable-compile-environment work without a Windows toolchain. r?gps

https://reviewboard.mozilla.org/r/29823/#review26767

Regarding the WebIDL hacks, perhaps this is a sign that WebIDL shouldn't be built if !COMPILE_ENVIRONMENT? WebIDL is pretty intricately tied to Gecko/C++, so I don't think it will be missed.

::: configure.in:5766
(Diff revision 1)
> +if test "$COMPILE_ENVIRONMENT"; then

Was this move intentional?
Attachment #8704956 - Flags: review?(gps)
(In reply to Gregory Szorc [:gps] from comment #2)
> Comment on attachment 8704956 [details]
> MozReview Request: Bug 1237502 - Make --disable-compile-environment work
> without a Windows toolchain. r?gps
> 
> https://reviewboard.mozilla.org/r/29823/#review26767
> 
> Regarding the WebIDL hacks, perhaps this is a sign that WebIDL shouldn't be
> built if !COMPILE_ENVIRONMENT? WebIDL is pretty intricately tied to
> Gecko/C++, so I don't think it will be missed.

FWIW, I don't really know tooooo much about webidl, but it can be (and is) sometimes JS-component-implemented as well, cf. bug 926712. So if it can work without a compile environment (just not these 2 files), IMO we should keep it enabled.
Product: Core → Firefox Build System
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: