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

Malfettone, Kris Kris.Malfettone at sig.com
Wed Aug 15 16:59:26 EDT 2012


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.


More information about the CMake mailing list