Incl. fixing up the d_do_test.d tool to work properly with MODEL=32
on Windows.
And somewhat improve the documentation of MODEL=32omf, nowadays used
for the 32-bit OMF toolchain.
* Produce MS Coff by default when targetting windows
This rebases #12825 but doesn't attempt to rename phobos libraries and doesn't change the build infra where possible(and doesn't have a large diff in `link.d`). See if this fixes the CI issues.
* remove OMF piplines
* Update glue.d
* Update target.d
* Update target.d
* Update frontend.h
The currently used bash uploader is deprecated and will be removed in
the future[1]. This commit replaces the existing setup with the new
uploader for all currently supported platforms as proposed in [2].
Additional notes:
- FreeBSD support isn't supported yet and keeps using the old uploader
- Moved the new implementation into a dedicated file `source`d by
all coverage CI's (instead of changing each individual configuration)
[1] https://about.codecov.io/blog/codecov-uploader-deprecation-plan
[2] https://about.codecov.io/blog/introducing-codecovs-new-uploader
Current coverage report is linux only, this adds reports for Win64.
Win32 is currently excluded because dmd fails the test suite with weird
linker errors when using coverage build.
As I suspect libcurl.dll bundled with LDC v1.20 to be the cause for the
crashing Phobos unittests. That DLL was upgraded with LDC v1.21 from
v7.65.3 to v7.69.1.
This requires to build run.d (incl. its tools) and druntime (which also
involves building a little tool - with the host compiler - to copy the
imports...) before tampering with the LIB and DFLAGS environment
variables (for MinGW).
Current master seems to trigger an already fixed bug in the host compiler.
(Obviously not an ideal solution, just trying to unblock the CI for now.
We can always revert this later)
when linking through lld-link, add /SAFESEH:NO to linker command line
add build on azure that uses lld and mingw import libraries
use run.d instead of gmake to run tests
d_do_test: remove legacy command line "-map nul.map"
update to build with LDC 1.20.0