[CMake] Ninja on windows ( latest ninja from git, cmake 2.8.9 )

Peter Kuemmel syntheticpp at gmx.net
Thu Aug 16 09:34:50 EDT 2012


It's a ninja bug. I hope this ninja patch

  https://github.com/martine/ninja/pull/401

is the right solution.

Peter


-------- Original-Nachricht --------
> Datum: Wed, 15 Aug 2012 20:59:26 +0000
> Von: "Malfettone, Kris" <Kris.Malfettone at sig.com>
> An: Bill Hoffman <bill.hoffman at kitware.com>, "cmake at cmake.org" <cmake at cmake.org>
> Betreff: Re: [CMake] Ninja on windows ( latest ninja from git, cmake 2.8.9 )

> Sure although you will need to map a network drive to properly recreate
> it.
> 
> In a project have:
> CMakeLists.txt
> cmake_minimum_required(VERSION 2.8)
> project(foo)
> #include_directories("H:\\test")
> include_directories("\\\\machine\\share\\test")
> add_executable(foo main.cpp)
> 
> main.cpp
> #include "inc.h"
> 
> int main( int, char ** )
> {
>    return code(1);
> }
> 
> 
> Then on shared network folder "test" that contains:
> inc.h
> inline int code( int i ) { return i+1; }
> 
> 
> 
> 
> To reproduce first build the project foo by trying to use the include
> directory as: "\\\\machine\\share\\test"
> Everything will work but it will always rebuild the project thinking inc.h
> is "dirty".
> 
> Then map a drive to "\\\\machine\\share" and change the include directory
> to your newly mapped drive, ex. "H:\\test"
> Then ninja will correctly determine that your project has nothing to do.
> 
> 
> I know that it is probably a pain to setup this test, thank you for taking
> the time to do it.
> 
> -Kris
> 
> 
> 
> 
> 
> 
> -----Original Message-----
> From: cmake-bounces at cmake.org [mailto:cmake-bounces at cmake.org] On Behalf
> Of Bill Hoffman
> Sent: Wednesday, August 15, 2012 4:36 PM
> To: cmake at cmake.org
> Subject: Re: [CMake] Ninja on windows ( latest ninja from git, cmake 2.8.9
> )
> 
> On 8/15/2012 2:48 PM, Malfettone, Kris wrote:
> > So I think I found the issue. When the include directories are
> specified via the network path ( \\machine\dir\ ) vs. a drive letter (
> N:\dir ) ninja always thinks they are out of date. This is a pretty big hurdle
> for us since our toolchain files can be mapped to different drives for
> different users so our builds reference the network paths.
> >
> > This seems like a bug in ninja, but it could also be a problem with
> the Windows APIs used to get the information. Any thoughts?
> 
> 
> If you could create a really small example of this and then send the
> binary tree to me that would be helpful.  It might be cmake might be ninja...
> 
> -Bill
> 
> --
> 
> 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://www.cmake.org/mailman/listinfo/cmake
> 
> ________________________________
> 
> IMPORTANT: The information contained in this email and/or its attachments
> is confidential. If you are not the intended recipient, please notify the
> sender immediately by reply and immediately delete this message and all its
> attachments. Any review, use, reproduction, disclosure or dissemination of
> this message or any attachment by an unintended recipient is strictly
> prohibited. Neither this message nor any attachment is intended as or should be
> construed as an offer, solicitation or recommendation to buy or sell any
> security or other financial instrument. Neither the sender, his or her
> employer nor any of their respective affiliates makes any warranties as to the
> completeness or accuracy of any of the information contained herein or that
> this message or any of its attachments is free of viruses.
> --
> 
> 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://www.cmake.org/mailman/listinfo/cmake


More information about the CMake mailing list