[cmake-developers] Fwd: Re: Ninja keeps starting cmake
Bill Hoffman
bill.hoffman at kitware.com
Tue Oct 29 11:58:32 EDT 2013
An issue came up on the ninja list. Seems that the most recent version
of cmake in some cases re-runs cmake every time in some cases on the
Mac. It seems to be related to app bundle creation.
Here is the information so far:
-------- Original Message --------
Subject: Re: Ninja keeps starting cmake
Date: Mon, 28 Oct 2013 09:12:18 +0100
From: Peter Kümmel <syntheticpp at gmx.net>
To: ninja-build at googlegroups.com
On 23.10.2013 22:49, Pierre-Nicolas Rigal wrote:
>
> $ ninja -d explain -v
> ninja explain: output build.ninja older than most recent input /Users/pnr/github/master-build/bin/xxx.app/Contents/MacOS
> (1382557340 vs 1382557345)
Looks like the file "MacOS" is generated after building build.ninja.
I assume it is also listed by "ninja -t query build.ninja".
Does the name look different to the existing path (final slash, quote,
or something similar)?
I found this commit in cmake which has touched MacOS since 28.11:
https://github.com/Kitware/CMake/commit/483e208482ff46532e7ae48659e569580a88af9c
> [1/1] /usr/local/Cellar/cmake/2.8.12/bin/cmake -H/Users/pnr/github/master-B/Users/pnr/github/master-build
>
> and:
>
> [pnr at pnr master-build]$ ls -lT build.ninja
> -rw-r--r-- 1 pnr staff 4160361 23 oct 21:21:45 2013 build.ninja
> [pnr at pnr master-build]$ ls -lT /Users/pnr/github/master-build/bin/xxx.app/Contents/MacOS
> total 54432
> -rwxr-xr-x 1 pnr staff 27866012 23 oct 21:21:49 2013 xxx
> [pnr at pnr master-build]$
>
> so it looks like one file is now built / created after build.ninja is getting updated.
>
> if I'm doing : ninja && touch build.ninja, it works as expected, i.e. superfast "nothing to rebuild" run.
>
> I tried the following:
>
> ninja -d explain && date
>
> I get: Mer 23 oct 2013 22:42:38 CEST
>
> and if I do at the same time sudo opensnoop -v -f build.ninja
>
> 2013 Oct 23 22:42:21 501 98860 ninja 3 build.ninja
>
> so the build ends at 22:42:38, but the last time buid.ninja has been openis at 22:42:21.
>
> Not sure how to force ninja to update build.ninja only at the end.
>
> Thanks & regards,
> pn
>
>
>
>
> Le mercredi 23 octobre 2013 21:16:59 UTC+2, Pierre-Nicolas Rigal a écrit :
>
> Hello,
>
> I just moved to OSX 10.9, and decided to upgrade my build box. I was using mac ports, but following some colleagues
> advices, I moved to homebrew. Therefore I upgraded both cmake (2.8.12) and ninja ( moved to 1.4.0 ). After
> struggling a bit with the changes introduced with XCode 5.0.1 and 10.9, I've now a running build system ( I'm using
> Qt 4.8.5 + Qt Creator).
>
> Everything seems to work fine, except that calling ninja will re-run cmake even if no there is no change in the
> code, which leads to re-link all executables in my project ( including the 100+ unit tests...), which is a bit bad (
> it takes 12 seconds using make, 25 using ninja...)
>
> any idea about what could be the reason for this, or any hint on whatI could do to track what's going wrong ?
>
> thanks in advance.
> regards,
> Pn
>
> --
> You received this message because you are subscribed to the Google Groups"ninja-build" group.
> To unsubscribe from this group and stop receiving emails from it, send anemail to ninja-build+unsubscribe at googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
--
You received this message because you are subscribed to the Google
Groups "ninja-build" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to ninja-build+unsubscribe at googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
More information about the cmake-developers
mailing list