[cmake-developers] Ninja/Win32: Negating UsingMinGW default to support Windows hosted cross compilers

Claus Klein claus.klein at arcormail.de
Fri Jun 22 15:42:14 EDT 2012


You are right,

in general backslashes as path separator are not needed on windows  
except for cmd.ex cd buildin.

It is a quote character in strings and make always trouble on bash and  
make!

Claus

On 22.06.2012, at 20:15, OKUMURA Yuki wrote:

> Hi list,
>
> Current CMake Ninja generator will translate backslashes in the path
> into forward slashes iff you are using MinGW(= Windows hosted Windows
> compiler).
> I feel this behavior should be default because Windows hosted
> cross-compilers -- Android NDK for example -- also require this path
> translation but they never recognized as MinGW.
>
> Attached patch implements this and my life became much happier with
> CMake+Ninja :)
> I think this change would break non-MSVC and non-GNU toolchain (e.g.
> bcc32) though.
>
> (To implement it precisely, every Ninja generator has to know whether
> to escape response file which will feed to the compiler/linker/...
> I posted around this before at Ninja-build group:
> https://groups.google.com/d/msg/ninja-build/KrxvzcSJQbY/140CDdXKGVIJ
> Of course, current workaround; not to use backslashes in the filenames
> for MinGW; is smart enough but it would break if user fed too many -D
> options to the compiler and rspfile used.)
>
> Any thoughts?
> -- oku
> <0001-Ninja-win32-Negate-UsingMinGW-default.patch>--
>
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers




More information about the cmake-developers mailing list