Commit Graph

5 Commits

Author SHA1 Message Date
Saleem Abdulrasool
decb484fac build: repair Windows build
`-ivfsoverlay` is no longer passed through to the driver with
`clang-cl`.  Explicitly mark it as a clang option to ensure that the
option is handled properly.  This repairs the build on Windows.
2018-04-23 11:20:48 -07:00
Saleem Abdulrasool
3e21e7ad9f build: canonicalise the windows paths prior to use
In order to substitute the path into the VFS overlay, we need to escape
the paths.  Instead, opt on the CMake behaviour of
`get_filename_component` providing the canonicalised path with forward
slashes rather than backslashes.  This allows the overlay to be used on
Windows as well as Linux.
2018-02-02 11:37:01 -08:00
Saleem Abdulrasool
5e4cd22e41 build: use VFS overlay for Windows SDK
The Windows SDK provides headers which have incorrect cases.  The
incorrect cases are in the SDK headers as well.  On case sensitive file
systems this causes build issues due to the incorrect name.  Use the
clang VFS overlay to avoid the need for providing copies to the expected
cases.  This improves the cross-compilation on Linux to Windows.
2017-11-03 12:50:47 -07:00
Saleem Abdulrasool
a6323fd362 build: swap include order
Visual Studio places shared above um.  Follow their ordering.
2017-10-16 16:32:51 -07:00
Saleem Abdulrasool
27d051a6c3 build: improve the Windows build infrastructure
Rather than use the `INCLUDE` and `LIB` environment variables to build
the Windows code, use the `UniversalCRTSdkDir`, `UCRTVersion`, and
`VCToolsInstallDir` variables.  Using these we can compute the right set
of include directories and library search paths for the various
architectures.  This will enable us to build multiple variants of the
Windows stdlib at the same time.

Additionally, rather than relying on the magic environment variables to
be processed by the driver, pass them explicitly to the driver through
the build system.  This also is needed to allow parallel builds of
various architecture variants of the stdlib on Windows.
2017-09-23 16:08:42 -07:00