[PATCH] D32681: [builtins] Enabled emulated TLS on WOA.

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 1 12:15:33 PDT 2017


mstorsjo added a comment.

In https://reviews.llvm.org/D32681#742185, @martell wrote:

> In https://reviews.llvm.org/D32681#741979, @compnerd wrote:
>
> > The file is Windows.h in the SDK, so why are you changing it to the lower case?
>
>
> Mingw headers do not follow the uppercase naming conventions of the windows sdk.
>  Projects that are typically build from not windows platforms follow the mingw convention when supporting both msvc and mingw.
>  Example https://github.com/videolan/vlc/blob/master/modules/video_output/win32/common.c#L38
>
> The reason for me changing to lowercase is that MSVC is case insensitive on windows so it should not affect the target, while fixing cross building mingw at the same time.
>  The only downside to using lowercase `W` is someone would be restricted if they tried to use the MSVC SDK from a non windows machine that is case sensitive.


FWIW, the official Windows SDK isn't internally consistent with this either - e.g. files are included with a different variant of upper/lowercase than the actual filenames.

I'm using the windows SDK both with MSVC (run via wine) and with clang from linux on case sensitive filesystems, and to make this work properly, I normally end up lowercasing all the filenames (matching the mingw headers), despite starting out with intentions to modify it as little as possible.


Repository:
  rL LLVM

https://reviews.llvm.org/D32681





More information about the llvm-commits mailing list