Drop support for building on MSVC
Categories
(Firefox Build System :: General, enhancement)
Tracking
(firefox67 fixed)
Tracking | Status | |
---|---|---|
firefox67 | --- | fixed |
People
(Reporter: RyanVM, Assigned: glandium)
References
()
Details
Attachments
(4 files)
Per discussion today, we intend to drop support for MSVC once clang-cl has proper ARM64 support.
Updated•5 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
I'll work on a patch for this, although I'm not sure when we should go ahead and actually land it.
Comment 2•5 years ago
|
||
An bonus point of dropping MSVC support is that we would be able to start using designated initializer immediately, as GCC and Clang have supported that in C++ for long, while MSVC only supports it under C99 (thus not in C++).
Comment 3•5 years ago
|
||
(In reply to Mike Hommey [:glandium] from comment #1)
I'll work on a patch for this, although I'm not sure when we should go ahead and actually land it.
The next merge day is Monday, January 28th, so I'd vote for immediately after the merge.
(In reply to Ted Mielczarek [:ted] [:ted.mielczarek] from comment #3)
(In reply to Mike Hommey [:glandium] from comment #1)
I'll work on a patch for this, although I'm not sure when we should go ahead and actually land it.
The next merge day is Monday, January 28th, so I'd vote for immediately
after the merge.
We just updated clang to a release candidate build that may still have some bugs to shake out before the official release. I don't want to open myself up to "you broke my clang and took away my MSVC" rage. Could I ask for at least a week of grace period?
Comment 5•5 years ago
|
||
(In reply to David Major [:dmajor] from comment #4)
We just updated clang to a release candidate build that may still have some bugs to shake out before the official release. I don't want to open myself up to "you broke my clang and took away my MSVC" rage. Could I ask for at least a week of grace period?
There's no real pressing need here. We can just start removing MSVC-specific code once we do this.
Assignee | ||
Comment 6•5 years ago
|
||
Assignee | ||
Comment 7•5 years ago
|
||
Consequently, this removes:
- MOZ_LIBPRIO, which is now always enabled.
- non_msvc_compiler, which is now always true.
- The cl.py wrapper, since it's not used anymore.
- CL_INCLUDES_PREFIX, which was only used for the cl.py wrapper.
- NONASCII, which was only there to ensure CL_INCLUDES_PREFIX still
worked in non-ASCII cases.
This however keeps a large part of detecting and configuring for MSVC,
because we still do need it for at least headers, libraries, and midl.
Depends on D19614
Assignee | ||
Comment 8•5 years ago
|
||
Depends on D19615
Assignee | ||
Comment 9•5 years ago
|
||
clang-cl defines it on its own, although the value is slightly different
from FUNCSIG (it doesn't contain the ABI, which doesn't really
matter). We've only been setting it this was on clang-cl by extension of
setting it for msvc.
Depends on D19616
Comment 10•5 years ago
|
||
Pushed by mh@glandium.org: https://hg.mozilla.org/integration/autoland/rev/a47861d74f11 Remove automated msvc builds. r=froydnj https://hg.mozilla.org/integration/autoland/rev/51c3380d5b94 Remove support for MSVC. r=froydnj https://hg.mozilla.org/integration/autoland/rev/d4093b779fa4 Remove now unused CFG test. r=tjr https://hg.mozilla.org/integration/autoland/rev/b29c87add05f Don't set __PRETTY_FUNCTION__ on clang-cl. r=froydnj
Comment 11•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/a47861d74f11
https://hg.mozilla.org/mozilla-central/rev/51c3380d5b94
https://hg.mozilla.org/mozilla-central/rev/d4093b779fa4
https://hg.mozilla.org/mozilla-central/rev/b29c87add05f
Description
•