Re: [CMake] Why is Ninja generator disabled by default?

2012-05-28 Thread Claus Klein
Please tack a lock at my builds tooAll of this errors are NOT caused by ninja!http://open.cdash.org/buildSummary.php?buildid=2315144But with ninja I get the same result.Some of the errors are caused by the fact that I use the current gcc47 compiler (build with macports), which does not understand the -arch options used by this tests!For the X11 error here is a patch which fix it (missing include)The others, no idea, but this is a makefile project, not ninja!With regards,Claus

TestsX11HelloWorldX11.patch
Description: Binary data
On 22.05.2012, at 13:02, David Cole wrote:Please take a look at the CMake dashboard:  http://open.cdash.org/index.php?project=CMakeI will allow the ninja generator to be enabled by default after interested parties fix all the failing tests in the "Nightly Expected" section related to the ninja generator submissions. Honestly, I was opposed to the ninja generator being merged to 'master' and enabled at all because of the failing tests on our dashboard. Luckily for all you ninja fans out there, I do not have dictator powers. ;-) DavidOn Mon, May 21, 2012 at 4:27 PM, Andreas Mohr  wrote: Hi,  On Mon, May 21, 2012 at 10:40:03AM -0400, cmake-requ...@cmake.org wrote: > From: David Cole  > I agree with Bill here -- we cannot turn it on by default until it works > sufficiently for typical use cases.  So, what would be needed to turn CMake on by default? 'cause it does not "work sufficiently for typical use cases" :->While there might be backwards compatibility reasons for only actually having Ninja truly enabled once it truly works (after all after some years certain user code may resort to merely checking whether the feature is provided or not, rather than doing sufficiently precise checks "well, in this CMake pre-beta it actually was still broken, and 3 days later they fixed it"), I cannot help but wonder whether this configuration (build-time disabling rather than a slightly special way of runtime disabling) is hindering progress a bit due to artificially limiting developer uptake. OTOH people who tend to like playing with certain bleeding edge things (like me) are actually able to enable it manually - it's just somewhat more effort:  > For specialized use cases, if you know you want to turn it on, you can > easily re-build a CMake of your own that has it enabled. Simply turn on the > advanced cache option CMAKE_ENABLE_NINJA when configuring CMake.   Andreas Mohr  --Powered by www.kitware.comVisit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.htmlPlease keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQFollow this link to subscribe/unsubscribe:http://www.cmake.org/mailman/listinfo/cmake--

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

Re: [CMake] Why is Ninja generator disabled by default?

2012-05-23 Thread Andreas Mohr
Hi,

On Tue, May 22, 2012 at 10:33:06AM -0400, cmake-requ...@cmake.org wrote:
> Date: Tue, 22 May 2012 06:35:35 -0500
> From: Richard Wackerbarth 
> 
> One of the differences that shows up in the dashboard is that there is a 
> compile test which passes with normal Unix file paths, but fails when there 
> is a space in one of the directory names. Perhaps we need to add an explicit 
> test for everyone, ninja or otherwise, to test that compiles work with spaces 
> in the path. I have a feeling that we may find additional failures.

With yesterday's CMake next and an old Ninja (commit 
1b471c1c4251dc05c2d5b71dd5d1d335c7827a9b Dec 2011),
on a temporarily reactivated (Ninja did hit issues)
whitespace test target within my build environment
it complained with
ninja: error: loading 'build.ninja': line 305, col 1: expected variable after $

due to Ninja generator converting "Script Engine" into "Script$ Engine"
and old Ninja having issues with that syntax.

With a current Ninja (git://github.com/martine/ninja.git master), the
same generated build.ninja content now is accepted, and so far I haven't
detected more whitespace issues here.

So it's at least *better* than it used to be, but there might be hidden 
niceties lurking
(and this is what the dashboard test result likely hints at).

Andreas Mohr
--

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


Re: [CMake] Why is Ninja generator disabled by default?

2012-05-22 Thread Bill Hoffman
Could be a change in ninja.  Our machine updates ninja each build.

- sent from my open source android phone.
On May 22, 2012 6:55 PM, "Claus Klein"  wrote:

> But it works for each variant:
>
> claus-kleins-macbook-pro:My Tests clausklein$ mkdir ninja
> claus-kleins-macbook-pro:My Tests clausklein$ cd ninja/
> claus-kleins-macbook-pro:ninja clausklein$ pwd
> /Users/clausklein/Downloads/**cmake/My Tests/ninja
> claus-kleins-macbook-pro:ninja clausklein$ "/usr/local/CMake
> 2.8-8.app/Contents/bin/cmake" -G Ninja -DMAKE_SUPPORTS_SPACES=0 ../../Tests/
> **CompileCommandOutput/
> -- The CXX compiler identification is GNU 4.7.0
> -- Checking whether CXX compiler has -isysroot
> -- Checking whether CXX compiler has -isysroot - yes
> -- Checking whether CXX compiler supports OSX deployment target flag
> -- Checking whether CXX compiler supports OSX deployment target flag - yes
> -- Check for working CXX compiler using: Ninja
> -- Check for working CXX compiler using: Ninja -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /Users/clausklein/Downloads/**cmake/My
> Tests/ninja
>
> claus-kleins-macbook-pro:ninja clausklein$ ninja -d explain
> ninja explain: output CMakeFiles/test2.dir/relative.**cxx.o doesn't exist
> ninja explain: CMakeFiles/test2.dir/relative.**cxx.o is dirty
> ninja explain: output CMakeFiles/test1.dir/file_**with_spaces.cxx.o
> doesn't exist
> ninja explain: CMakeFiles/test1.dir/file_**with_spaces.cxx.o is dirty
> ninja explain: output 
> CMakeFiles/**CompileCommandOutput.dir/**compile_command_output.cxx.o
> doesn't exist
> ninja explain: 
> CMakeFiles/**CompileCommandOutput.dir/**compile_command_output.cxx.o
> is dirty
> ninja explain: libtest1.a is dirty
> ninja explain: libtest2.dylib is dirty
> ninja explain: CompileCommandOutput is dirty
> ninja explain: libtest1.a is dirty
> ninja explain: libtest2.dylib is dirty
> [6/6] Linking CXX executable CompileCommandOutput
> claus-kleins-macbook-pro:ninja clausklein$ ls -lrta
> total 72
> drwxr-xr-x  4 clausklein staff   136 May 23 00:49 ..
> -rw-r--r--  1 clausklein staff  2989 May 23 00:50 rules.ninja
> -rw-r--r--  1 clausklein staff  1492 May 23 00:50 cmake_install.cmake
> -rw-r--r--  1 clausklein staff  9248 May 23 00:50 build.ninja
> -rw-r--r--  1 clausklein staff 10666 May 23 00:50 CMakeCache.txt
> -rwxr-xr-x  1 clausklein staff 12432 May 23 00:50 libtest2.dylib
> -rw-r--r--  1 clausklein staff   672 May 23 00:50 libtest1.a
> -rwxr-xr-x  1 clausklein staff 12652 May 23 00:50 CompileCommandOutput
> drwxr-xr-x 13 clausklein staff   442 May 23 00:50 CMakeFiles
> -rw-r--r--  1 clausklein staff  1934 May 23 00:50 .ninja_log
> drwxr-xr-x 11 clausklein staff   374 May 23 00:50 .
> claus-kleins-macbook-pro:ninja clausklein$
>
> claus-kleins-macbook-pro:ninja clausklein$ ninja clean
> [1/1] Cleaning all built files...
> Cleaning... 9 files.
> claus-kleins-macbook-pro:ninja clausklein$ ninja rebuild_cache
> [1/1] Running CMake to regenerate build system...
> -- Configuring done
> -- Generating done
> -- Build files have been written to: /Users/clausklein/Downloads/**cmake/My
> Tests/ninja
> claus-kleins-macbook-pro:ninja clausklein$ ninja
> [6/6] Linking CXX executable CompileCommandOutput
> claus-kleins-macbook-pro:ninja clausklein$
>
> space in source; space in working dir, ...
>
> Claus
>
> On 23.05.2012, at 00:42, Richard Wackerbarth wrote:
>
>  Yes, you changed the test configuration and that configuration will work.
>> However, for other generators, you do not need to add the
>> -DMAKE_SUPPORTS_SPACES
>>
>> Richard
>>
>> On May 22, 2012, at 5:18 PM, Claus Klein 
>> wrote:
>>
>>> claus-kleins-macbook-pro:**CompileCommandOutput clausklein$
>>> "/usr/local/CMake 2.8-8.app/Contents/bin/cmake" -G Ninja
>>> -DMAKE_SUPPORTS_SPACES=1
>>>
>>
> --
>
> 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
>
--

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

Re: [CMake] Why is Ninja generator disabled by default?

2012-05-22 Thread Claus Klein

But it works for each variant:

claus-kleins-macbook-pro:My Tests clausklein$ mkdir ninja
claus-kleins-macbook-pro:My Tests clausklein$ cd ninja/
claus-kleins-macbook-pro:ninja clausklein$ pwd
/Users/clausklein/Downloads/cmake/My Tests/ninja
claus-kleins-macbook-pro:ninja clausklein$ "/usr/local/CMake 2.8-8.app/ 
Contents/bin/cmake" -G Ninja -DMAKE_SUPPORTS_SPACES=0 ../../Tests/ 
CompileCommandOutput/

-- The CXX compiler identification is GNU 4.7.0
-- Checking whether CXX compiler has -isysroot
-- Checking whether CXX compiler has -isysroot - yes
-- Checking whether CXX compiler supports OSX deployment target flag
-- Checking whether CXX compiler supports OSX deployment target flag -  
yes

-- Check for working CXX compiler using: Ninja
-- Check for working CXX compiler using: Ninja -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/clausklein/Downloads/cmake/ 
My Tests/ninja


claus-kleins-macbook-pro:ninja clausklein$ ninja -d explain
ninja explain: output CMakeFiles/test2.dir/relative.cxx.o doesn't exist
ninja explain: CMakeFiles/test2.dir/relative.cxx.o is dirty
ninja explain: output CMakeFiles/test1.dir/file_with_spaces.cxx.o  
doesn't exist

ninja explain: CMakeFiles/test1.dir/file_with_spaces.cxx.o is dirty
ninja explain: output CMakeFiles/CompileCommandOutput.dir/ 
compile_command_output.cxx.o doesn't exist
ninja explain: CMakeFiles/CompileCommandOutput.dir/ 
compile_command_output.cxx.o is dirty

ninja explain: libtest1.a is dirty
ninja explain: libtest2.dylib is dirty
ninja explain: CompileCommandOutput is dirty
ninja explain: libtest1.a is dirty
ninja explain: libtest2.dylib is dirty
[6/6] Linking CXX executable CompileCommandOutput
claus-kleins-macbook-pro:ninja clausklein$ ls -lrta
total 72
drwxr-xr-x  4 clausklein staff   136 May 23 00:49 ..
-rw-r--r--  1 clausklein staff  2989 May 23 00:50 rules.ninja
-rw-r--r--  1 clausklein staff  1492 May 23 00:50 cmake_install.cmake
-rw-r--r--  1 clausklein staff  9248 May 23 00:50 build.ninja
-rw-r--r--  1 clausklein staff 10666 May 23 00:50 CMakeCache.txt
-rwxr-xr-x  1 clausklein staff 12432 May 23 00:50 libtest2.dylib
-rw-r--r--  1 clausklein staff   672 May 23 00:50 libtest1.a
-rwxr-xr-x  1 clausklein staff 12652 May 23 00:50 CompileCommandOutput
drwxr-xr-x 13 clausklein staff   442 May 23 00:50 CMakeFiles
-rw-r--r--  1 clausklein staff  1934 May 23 00:50 .ninja_log
drwxr-xr-x 11 clausklein staff   374 May 23 00:50 .
claus-kleins-macbook-pro:ninja clausklein$

claus-kleins-macbook-pro:ninja clausklein$ ninja clean
[1/1] Cleaning all built files...
Cleaning... 9 files.
claus-kleins-macbook-pro:ninja clausklein$ ninja rebuild_cache
[1/1] Running CMake to regenerate build system...
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/clausklein/Downloads/cmake/ 
My Tests/ninja

claus-kleins-macbook-pro:ninja clausklein$ ninja
[6/6] Linking CXX executable CompileCommandOutput
claus-kleins-macbook-pro:ninja clausklein$

space in source; space in working dir, ...

Claus

On 23.05.2012, at 00:42, Richard Wackerbarth wrote:

Yes, you changed the test configuration and that configuration will  
work. However, for other generators, you do not need to add the - 
DMAKE_SUPPORTS_SPACES


Richard

On May 22, 2012, at 5:18 PM, Claus Klein   
wrote:
claus-kleins-macbook-pro:CompileCommandOutput clausklein$ "/usr/ 
local/CMake 2.8-8.app/Contents/bin/cmake" -G Ninja - 
DMAKE_SUPPORTS_SPACES=1


--

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


Re: [CMake] Why is Ninja generator disabled by default?

2012-05-22 Thread Richard Wackerbarth
Yes, you changed the test configuration and that configuration will work. 
However, for other generators, you do not need to add the -DMAKE_SUPPORTS_SPACES

Richard

On May 22, 2012, at 5:18 PM, Claus Klein  wrote:
> claus-kleins-macbook-pro:CompileCommandOutput clausklein$ "/usr/local/CMake 
> 2.8-8.app/Contents/bin/cmake" -G Ninja -DMAKE_SUPPORTS_SPACES=1 
--

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


Re: [CMake] Why is Ninja generator disabled by default?

2012-05-22 Thread Claus Klein

it works on my macbook:

"/usr/local/CMake 2.8-8.app/Contents/bin/cmake" --version
cmake version 2.8.8.20120520-g4742e

claus-kleins-macbook-pro:CompileCommandOutput clausklein$ "/usr/local/ 
CMake 2.8-8.app/Contents/bin/cmake" -G Ninja -DMAKE_SUPPORTS_SPACES=1

-- The CXX compiler identification is GNU 4.7.0
-- Checking whether CXX compiler has -isysroot
-- Checking whether CXX compiler has -isysroot - yes
-- Checking whether CXX compiler supports OSX deployment target flag
-- Checking whether CXX compiler supports OSX deployment target flag -  
yes

-- Check for working CXX compiler using: Ninja
-- Check for working CXX compiler using: Ninja -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/clausklein/Downloads/cmake/ 
Tests/CompileCommandOutput


claus-kleins-macbook-pro:CompileCommandOutput clausklein$ ninja -d  
explain
ninja explain: output CMakeFiles/test1.dir/file_with_spaces.cxx.o  
doesn't exist

ninja explain: CMakeFiles/test1.dir/file_with_spaces.cxx.o is dirty
ninja explain: output CMakeFiles/test2.dir/relative.cxx.o doesn't exist
ninja explain: CMakeFiles/test2.dir/relative.cxx.o is dirty
ninja explain: output CMakeFiles/CompileCommandOutput.dir/ 
compile_command_output.cxx.o doesn't exist
ninja explain: CMakeFiles/CompileCommandOutput.dir/ 
compile_command_output.cxx.o is dirty

ninja explain: libtest1.a is dirty
ninja explain: libtest2.dylib is dirty
ninja explain: CompileCommandOutput is dirty
ninja explain: libtest1.a is dirty
ninja explain: libtest2.dylib is dirty
[6/6] Linking CXX executable CompileCommandOutput
claus-kleins-macbook-pro:CompileCommandOutput clausklein$

claus-kleins-macbook-pro:CompileCommandOutput clausklein$ touch file\  
with\ spaces.cxx
claus-kleins-macbook-pro:CompileCommandOutput clausklein$ ninja -d  
explain
ninja explain: output CMakeFiles/test1.dir/file_with_spaces.cxx.o  
older than most recent input file with spaces.cxx (1337723824000  
vs 1337723927000)

ninja explain: CMakeFiles/test1.dir/file_with_spaces.cxx.o is dirty
ninja explain: libtest1.a is dirty
ninja explain: CompileCommandOutput is dirty
ninja explain: libtest1.a is dirty
[3/3] Linking CXX executable CompileCommandOutput
claus-kleins-macbook-pro:CompileCommandOutput clausklein$


On 22.05.2012, at 13:35, Richard Wackerbarth wrote:

One of the differences that shows up in the dashboard is that there  
is a compile test which passes with normal Unix file paths, but  
fails when there is a space in one of the directory names. Perhaps  
we need to add an explicit test for everyone, ninja or otherwise, to  
test that compiles work with spaces in the path. I have a feeling  
that we may find additional failures.


On May 22, 2012, at 6:02 AM, David Cole wrote:


Please take a look at the CMake dashboard:

  http://open.cdash.org/index.php?project=CMake

I will allow the ninja generator to be enabled by default after  
interested parties fix all the failing tests in the "Nightly  
Expected" section related to the ninja generator submissions.


Honestly, I was opposed to the ninja generator being merged to  
'master' and enabled at all because of the failing tests on our  
dashboard. Luckily for all you ninja fans out there, I do not have  
dictator powers. ;-)



David


--

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


--

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

Re: [CMake] Why is Ninja generator disabled by default?

2012-05-22 Thread Bill Hoffman

On 5/22/2012 7:35 AM, Richard Wackerbarth wrote:

One of the differences that shows up in the dashboard is that there is a
compile test which passes with normal Unix file paths, but fails when
there is a space in one of the directory names. Perhaps we need to add
an explicit test for everyone, ninja or otherwise, to test that compiles
work with spaces in the path. I have a feeling that we may find
additional failures.
Pretty much all of the dashboards run at kitware have spaces in the 
path, and there is already a test like that.   What test are you talking 
about?  I am pretty sure ninja is ok with spaces.


-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


Re: [CMake] Why is Ninja generator disabled by default?

2012-05-22 Thread Richard Wackerbarth
One of the differences that shows up in the dashboard is that there is a 
compile test which passes with normal Unix file paths, but fails when there is 
a space in one of the directory names. Perhaps we need to add an explicit test 
for everyone, ninja or otherwise, to test that compiles work with spaces in the 
path. I have a feeling that we may find additional failures.

On May 22, 2012, at 6:02 AM, David Cole wrote:

> Please take a look at the CMake dashboard:
> 
>   http://open.cdash.org/index.php?project=CMake
> 
> I will allow the ninja generator to be enabled by default after interested 
> parties fix all the failing tests in the "Nightly Expected" section related 
> to the ninja generator submissions.
> 
> Honestly, I was opposed to the ninja generator being merged to 'master' and 
> enabled at all because of the failing tests on our dashboard. Luckily for all 
> you ninja fans out there, I do not have dictator powers. ;-)
> 
> 
> David

--

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

Re: [CMake] Why is Ninja generator disabled by default?

2012-05-22 Thread David Cole
Please take a look at the CMake dashboard:

  http://open.cdash.org/index.php?project=CMake

I will allow the ninja generator to be enabled by default after interested
parties fix all the failing tests in the "Nightly Expected" section related
to the ninja generator submissions.

Honestly, I was opposed to the ninja generator being merged to 'master' and
enabled at all because of the failing tests on our dashboard. Luckily for
all you ninja fans out there, I do not have dictator powers. ;-)


David


On Mon, May 21, 2012 at 4:27 PM, Andreas Mohr  wrote:

> Hi,
>
> On Mon, May 21, 2012 at 10:40:03AM -0400, cmake-requ...@cmake.org wrote:
> > From: David Cole 
> > I agree with Bill here -- we cannot turn it on by default until it works
> > sufficiently for typical use cases.
>
> So, what would be needed to turn CMake on by default?
> 'cause it does not "work sufficiently for typical use cases" :->
> 
>
>
> While there might be backwards compatibility reasons for only actually
> having Ninja truly enabled once it truly works (after all after some years
> certain user code may resort to merely checking whether the feature
> is provided or not, rather than doing sufficiently precise checks
> "well, in this CMake pre-beta it actually was still broken,
> and 3 days later they fixed it"),
> I cannot help but wonder whether this configuration (build-time disabling
> rather than a slightly special way of runtime disabling)
> is hindering progress a bit due to artificially limiting developer uptake.
> OTOH people who tend to like playing with certain bleeding edge things
> (like me)
> are actually able to enable it manually - it's just somewhat more
> effort:
>
> > For specialized use cases, if you know you want to turn it on, you can
> > easily re-build a CMake of your own that has it enabled. Simply turn on
> the
> > advanced cache option CMAKE_ENABLE_NINJA when configuring CMake.
>
>
> Andreas Mohr
>
--

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

Re: [CMake] Why is Ninja generator disabled by default?

2012-05-21 Thread Andreas Mohr
Hi,

On Mon, May 21, 2012 at 10:40:03AM -0400, cmake-requ...@cmake.org wrote:
> From: David Cole 
> I agree with Bill here -- we cannot turn it on by default until it works
> sufficiently for typical use cases.

So, what would be needed to turn CMake on by default?
'cause it does not "work sufficiently for typical use cases" :->



While there might be backwards compatibility reasons for only actually
having Ninja truly enabled once it truly works (after all after some years
certain user code may resort to merely checking whether the feature
is provided or not, rather than doing sufficiently precise checks
"well, in this CMake pre-beta it actually was still broken,
and 3 days later they fixed it"),
I cannot help but wonder whether this configuration (build-time disabling
rather than a slightly special way of runtime disabling)
is hindering progress a bit due to artificially limiting developer uptake.
OTOH people who tend to like playing with certain bleeding edge things (like me)
are actually able to enable it manually - it's just somewhat more
effort:

> For specialized use cases, if you know you want to turn it on, you can
> easily re-build a CMake of your own that has it enabled. Simply turn on the
> advanced cache option CMAKE_ENABLE_NINJA when configuring CMake.


Andreas Mohr
--

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


Re: [CMake] Why is Ninja generator disabled by default?

2012-05-21 Thread David Cole
On Mon, May 21, 2012 at 9:01 AM, Bill Hoffman wrote:

> On 5/20/2012 7:58 AM, Claus Klein wrote:
>
>>
>> So please, there is no reason to disable the ninja generator by default.
>>
>
>
> Sorry, until it actually works with full features I can not do that. OSX
> needs the frameworks and application bundles implemented.  Windows needs
> file level depends.  Too many projects depend on those features. I realized
> there are use cases that do not use those features on OSX, but if you are
> building any application on OSX natively that has a GUI it will not work
> without those features.
>
>
> -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
>


I agree with Bill here -- we cannot turn it on by default until it works
sufficiently for typical use cases.

For specialized use cases, if you know you want to turn it on, you can
easily re-build a CMake of your own that has it enabled. Simply turn on the
advanced cache option CMAKE_ENABLE_NINJA when configuring CMake.


HTH,
David
--

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

Re: [CMake] Why is Ninja generator disabled by default?

2012-05-21 Thread Bill Hoffman

On 5/20/2012 7:58 AM, Claus Klein wrote:


So please, there is no reason to disable the ninja generator by default.



Sorry, until it actually works with full features I can not do that. 
OSX needs the frameworks and application bundles implemented.  Windows 
needs file level depends.  Too many projects depend on those features. 
I realized there are use cases that do not use those features on OSX, 
but if you are building any application on OSX natively that has a GUI 
it will not work without those features.


-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


Re: [CMake] Why is Ninja generator disabled by default?

2012-05-20 Thread Claus Klein
Hi Bill,thank you for that info.Indeed, the only major issue I can see is the problem with broken CMakeLists.txt files.http://public.kitware.com/Bug/view.php?id=13105But the solution is quit simple: cmake must add the missing include rules.ninja to the generated build.ninja file.You should know, many people do cross-compile on an UNIX like host (including macos), because it is mutch faster than Windows.With mingw or ppc toolchains build with busybox it is quiet easy (and fast)In these case, the ninja generator can double the build speed again!It is so fast, that the time-stamp resolution with secs is not enough, I have situations, where I need the nsec resolution too while building!I have provided a patch for ninja to used stat64() and a higher resolutions than secs.So for me nina works quiet well on OSX with gcc (tested with macports gcc V4.x, V4.6, V4.7 and mingw).The xcode IDE use a very old gcc, I would never use it!As IDE I use Eclipse and NetBeens, it works well with ninja ( with a makefile stub or direct)On Windows I use cygwin, mingw and gnu tools with Eclipse too, but I prefer a UNIX like development host.So please, there is no reason to disable the ninja generator by default.With regards,Clausp.s. try this script on an unix like system with this CMakeLists file to see what happens if the system is very fast.

bootstrap.sh
Description: Binary data
cmake_minimum_required(VERSION 2.8)
project(ninja_reconfigure_destroy_test CXX)

if(NOT CMAKE_GENERATOR MATCHES "Ninja")
  message(FATAL_ERROR "CMAKE_GENERATOR is not set to Ninja!")
endif(NOT CMAKE_GENERATOR MATCHES "Ninja")

file(WRITE "test.cpp"
"int main()
{
  return 0;
}")

set(file_list
  test.cpp
#FIXME test_not_existing_file.cpp # <== TODO: UNCOMMENT THIS LINE after 
first successfully build!
)

add_executable(test ${file_list})

On 18.05.2012, at 23:48, Bill Hoffman wrote:On 5/18/2012 5:37 PM, Claus Klein wrote:Hi,I downloaded the newest version 2.8 of cmake for MACOS and dit not foundthe new generator for ninja.So I downloaded the sources and build it myself.It seems to work fine and just 2 times faster than with make.Why is it disabled?See my post here:http://www.cmake.org/pipermail/cmake/2012-May/050304.htmlI assume you are on windows or Mac.So, if you are 2 times faster on windows it is because incremental builds are totally broken (although I suspect it will still be faster)...  On the mac, you would be ok as long as the project does not create frameworks or app bundles.-Bill--Powered by www.kitware.comVisit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.htmlPlease keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQFollow this link to subscribe/unsubscribe:http://www.cmake.org/mailman/listinfo/cmake--

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

Re: [CMake] Why is Ninja generator disabled by default?

2012-05-18 Thread Bill Hoffman

On 5/18/2012 5:37 PM, Claus Klein wrote:

Hi,

I downloaded the newest version 2.8 of cmake for MACOS and dit not found
the new generator for ninja.

So I downloaded the sources and build it myself.

It seems to work fine and just 2 times faster than with make.

Why is it disabled?


See my post here:
http://www.cmake.org/pipermail/cmake/2012-May/050304.html

I assume you are on windows or Mac.

So, if you are 2 times faster on windows it is because incremental 
builds are totally broken (although I suspect it will still be 
faster)...  On the mac, you would be ok as long as the project does not 
create frameworks or app bundles.


-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


[CMake] Why is Ninja generator disabled by default?

2012-05-18 Thread Claus Klein

Hi,

I downloaded the newest version 2.8 of cmake for MACOS and dit not  
found the new generator for ninja.


So I downloaded the sources and build it myself.

It seems to work fine and just 2 times faster than with make.

Why is it disabled?


With regards

Claus
--

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