Re: [cmake-developers] Ninja windows

2012-03-09 Thread Nicolas Desprès
On Fri, Mar 9, 2012 at 3:24 AM, Peter Collingbourne pe...@pcc.me.uk wrote:
 On Tue, Mar 06, 2012 at 03:56:24PM -0500, Bill Hoffman wrote:
 On 3/6/2012 1:29 PM, Peter Collingbourne wrote:

 We can certainly do that, but the ninja binary would need to be
 switched as soon as we get around to using rspfile in Ninja (and
 no sooner).


 OK, so is there a ninja binary that I can download right now that will
 work if I change the cmake files for cmake to build the ninja generator
 on windows?  If so, where is it?  My idea is to try it on my machine. If
 it works I will push the change into next that enables ninja on windows
 and setup a dashboard that pulls ninja from that spot each night. When
 cmake is changed to work with master ninja if someone updates that
 binary, then it will pull that and just work.  That is what I have been
 doing with jom.

 That would be Peter Kummel's ninja.  But what I would suggest we do,
 as I suggested before, is to use an internal variable to turn on the
 Ninja generator on Windows and Mac.  This way, we can safely merge
 ninja-generator into master without confusing users on Windows or
 Mac by shipping a non-working Ninja generator in the next release,
 while keeping the ability to test (on the dashboard and otherwise).
 I have no idea what the timeframe for the Windows and Mac people
 is, but I really would like the Ninja generator to be available on
 non-Windows/Mac platforms in 2.8.8.

Sounds fair enough.

-- 
Nicolas Desprès
--

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


[cmake-developers] [CMake 0013032]: Support the option Use Library Dependency Inputs in Visual Studio 2005+

2012-03-09 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
http://www.cmake.org/Bug/view.php?id=13032 
== 
Reported By:Zahary Karadjov
Assigned To:
== 
Project:CMake
Issue ID:   13032
Category:   CMake
Reproducibility:always
Severity:   tweak
Priority:   normal
Status: new
== 
Date Submitted: 2012-03-09 05:24 EST
Last Modified:  2012-03-09 05:24 EST
== 
Summary:Support the option Use Library Dependency Inputs
in Visual Studio 2005+
Description: 
The build times of Visual Studio CMake generated projects could be significantly
improved if 
1) All dependent static libraries of an executable are listed as dependencies in
Visual Studio
2) The Linker-General-Use Library Dependency Inputs option is enabled.

Reference Information:

http://msdn.microsoft.com/en-us/library/024awkd1(v=vs.80).aspx
Use Library Dependency Inputs
In a large project, when a dependent project produces a .lib file, incremental
linking is disabled. If there are many dependent projects that produce .lib
files, building the application can take a long time. When this property is set
to Yes, the project system links in the .obj files for .libs produced by
dependent projects, thus enabling incremental linking.

http://blogs.msdn.com/b/vcblog/archive/2010/05/03/flexible-project-to-project-references.aspx

http://code.google.com/p/chromium/wiki/WindowsIncrementalLinking

http://www.xoreax.com/webhelp/pages/advanced_incredilink.htm
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2012-03-09 05:24 Zahary KaradjovNew Issue
==

--

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


[cmake-developers] [CMake 0013033]: Enhance verbosity of tests failing with OTHER_FAULT on windows

2012-03-09 Thread Mantis Bug Tracker

The following issue has been SUBMITTED. 
== 
http://public.kitware.com/Bug/view.php?id=13033 
== 
Reported By:ngladitz
Assigned To:
== 
Project:CMake
Issue ID:   13033
Category:   CTest
Reproducibility:always
Severity:   feature
Priority:   normal
Status: new
== 
Date Submitted: 2012-03-09 10:24 EST
Last Modified:  2012-03-09 10:24 EST
== 
Summary:Enhance verbosity of tests failing with
OTHER_FAULT on windows
Description: 
I'm not sure how (or if this is even possible) but it would be helpful if the
ctest reports could include more information on why a test failed when reporting
OTHER_FAULT.

When I'm at the computer running the tests I get e.g. a message box that reports
that there is a specific DLL missing but when ctest runs scheduled through CDash
that information is lost.
== 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2012-03-09 10:24 ngladitz   New Issue
==

--

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


Re: [cmake-developers] Ninja windows

2012-03-09 Thread Peter Kümmel

On 09.03.2012 10:40, Nicolas Desprès wrote:

On Fri, Mar 9, 2012 at 3:24 AM, Peter Collingbournepe...@pcc.me.uk  wrote:

On Tue, Mar 06, 2012 at 03:56:24PM -0500, Bill Hoffman wrote:

On 3/6/2012 1:29 PM, Peter Collingbourne wrote:


We can certainly do that, but the ninja binary would need to be
switched as soon as we get around to using rspfile in Ninja (and
no sooner).



OK, so is there a ninja binary that I can download right now that will
work if I change the cmake files for cmake to build the ninja generator
on windows?  If so, where is it?  My idea is to try it on my machine. If
it works I will push the change into next that enables ninja on windows
and setup a dashboard that pulls ninja from that spot each night. When
cmake is changed to work with master ninja if someone updates that
binary, then it will pull that and just work.  That is what I have been
doing with jom.


That would be Peter Kummel's ninja.  But what I would suggest we do,
as I suggested before, is to use an internal variable to turn on the
Ninja generator on Windows and Mac.  This way, we can safely merge
ninja-generator into master without confusing users on Windows or
Mac by shipping a non-working Ninja generator in the next release,
while keeping the ability to test (on the dashboard and otherwise).
I have no idea what the timeframe for the Windows and Mac people
is, but I really would like the Ninja generator to be available on
non-Windows/Mac platforms in 2.8.8.


Sounds fair enough.



Yes, please enable the ninja generator for Linux in 2.8.8. I don't
think I will fix the cmake-windows support soon and don't know if
there is anyone else working on it.

Maybe having ninja support on Linux attracts interested people
also on the other platforms.

(and I assume Peter C. gets really annoyed if the ninja support
will be postponed again)

Peter
--

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


Re: [cmake-developers] Rename Ninja generator?

2012-03-09 Thread Peter Kümmel

On 09.03.2012 03:34, Peter Collingbourne wrote:

On Thu, Mar 08, 2012 at 05:44:09PM -0500, Bill Hoffman wrote:

Thoughts?


Hi Bill,

I thought about this for a while and I decided that this probably
isn't a good idea for a few reasons:

1) It is inaccurate.  The Ninja generator uses a fundamentally different
approach to generating build files and I think that should be
reflected in the name.

2) If we go with your suggestion, things will continue to work if what
the project does for Make happens to also be appropriate for Ninja.
But that isn't always the case -- if the project cares about
which generator is being used then it may well be doing something
specific to the Makefile generator (such as relying on the fact
that CMake builds recursive makefiles by running the build program
in a subdirectory, or using $(MAKE) -- you can see an example
of that in ExternalProject.cmake).  In that case things would break
unless the conditional excludes Ninja:

IF(CMAKE_GENERATOR MATCHES Makefiles AND NOT CMAKE_GENERATOR MATCHES 
Ninja)

Things like that need to be decided on a case by case basis by
the project developer and I don't see any reason to favour one
scenario over the other.  All things being equal I would err on
the conservative side and say that Ninja shouldn't receive any
special treatment from projects by default -- if projects need
the Ninja generator to get the same special treatment, they can
match Ninja explicitly.

3) Less typing :) (Though one idea I had for improving the
user interface for the -G option was to allow the argument to
be matched case insensitively, and for unambiguous prefixes to
be expanded.  So for example you could say -G nmake which would
be disambiguated to NMake Makefiles, but -G n would return an
error since it matches both Ninja and NMake).


Yes, please don't call it a Makefile when it is definitely NOT a Makefile.

I also like the short -GNinja. -GVisual Studio 9 2008 is really to long
as command line argument.

Peter



--

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


[cmake-developers] ninja bug on windows

2012-03-09 Thread Bill Hoffman
I am seeing that ninja always wants to relink the executables for me 
every time it is run.  The output is this:


$ ninja
[1/9] Linking C static library 
Utilities\cmlibarchive\libarchive\cmlibarchive.lib

[2/9] Linking CXX executable bin\cmake.exe
[3/9] Linking CXX executable bin\cmw9xcom.exe
[4/9] Linking CXX executable bin\cpack.exe
[5/9] Linking CXX executable bin\ctest.exe
[6/9] Linking CXX executable Tests\CMakeLib\CMakeLibTests.exe
[7/9] Generating ../Docs/ctest.txt
[8/9] Generating ../Docs/cpack.txt
[9/9] Generating ../Docs/cmake.txt

Looks like the problem is libarchive getting recreated each time.

-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://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers