[CMake] Ninja: a small build system closest in spirit to Make

Nicolas Desprès nicolas.despres at gmail.com
Wed Mar 23 07:02:23 EDT 2011


On Mon, Feb 14, 2011 at 9:39 PM, Bill Hoffman <bill.hoffman at kitware.com> wrote:
> On 2/14/2011 3:37 PM, Jean-Christophe Fillion-Robin wrote:
>>
>> Last night, I started a topic named "ninja-generator" on my github ...
>> see https://github.com/jcfr/CMake/tree/ninja-generator
>>
>> Right now, I just copied all the file related to CMakefile generator and
>> named using the "Ninja" prefix.
>>

I think we should submit patches to Ninja using Github since it has
been published there. For submitting patches to CMake, I think it is
better to follow its regular workflow.

>> Is that the right approach ? Comment from "CMake Internals" experts are
>> welcome :)
>>
>> Thanks
>
> This should move to the cmake-developers mailing list.

I have started a new thread on this mailing list.

-Nico

>
>> Jc
>>
>> On Sun, Feb 13, 2011 at 12:19 PM, Caner Candan <caner at candan.fr
>> <mailto:caner at candan.fr>> wrote:
>>
>>    You are followed :) great job!
>>
>>    On Sat, Feb 12, 2011 at 2:15 PM, Jean-Christophe Fillion-Robin
>>    <jchris.fillionr at kitware.com <mailto:jchris.fillionr at kitware.com>>
>>    wrote:
>>     > I forked the original ninja project on my github and cmake'ified it.
>>     >
>>     > It successfully compile on linux [ubuntu 10.04, g++ (Ubuntu
>>    4.4.3-4ubuntu5)
>>     > 4.4.3]
>>     >
>>     > Note that both In and Out-of-source built are handled properly.
>>     >
>>     > See https://github.com/jcfr/ninja topic branch: cmakeified-project
>>     >
>>     >
>>     > git clone git://github.com/jcfr/ninja.git
>>    <http://github.com/jcfr/ninja.git>
>>     > mkdir ninja-build
>>     > cd ninja-build
>>     > cmake ../ninja && make
>>     >
>>     >
>>     >
>>     >
>>     > I also added the option BUILD_TESTING, by default enabled.
>>     >
>>     > Running ctest, a test named "LongSlowBuild" will proceed.
>>     > This test invoke the following command:
>>     >   ninja -f <SRC>/misc/long-slow-build.ninja all
>>     >
>>     > The associated dashboard is available on my.cdash.org
>>    <http://my.cdash.org>.
>>     > See http://my.cdash.org/index.php?project=ninja
>>     >
>>     >
>>     >
>>     > I submitted some experimentals dashboards ...
>>     >   - Linux: build and test pass
>>     >   - Windows: doesn't compile. See
>>     > http://my.cdash.org/buildSummary.php?buildid=155950
>>     >
>>     > ... and also setup a nightly for both windows and linux.
>>    (Template dashboard
>>     > script here)
>>     >
>>     > Note that I fix some of the windows error. Changes are in the topic
>>     > fix-windows-build of github.com:jcfr/ninja.git
>>     >
>>     > Most of the remaining errors are listed here:
>>     > http://my.cdash.org/viewBuildError.php?buildid=156132
>>     >
>>     > Thks
>>     > Jc
>>     >
>>     > On Fri, Feb 11, 2011 at 9:59 PM, Clifford Yapp
>>    <cliffyapp at gmail.com <mailto:cliffyapp at gmail.com>> wrote:
>>     >>
>>     >> We could start with the CMakeLists.txt file :-).
>>     >>
>>     >> It doesn't want to do an out of source dir build either, have to
>> see
>>     >> why...
>>     >>
>>     >> On Fri, Feb 11, 2011 at 9:58 AM, David Cole
>>    <david.cole at kitware.com <mailto:david.cole at kitware.com>>
>>     >> wrote:
>>     >> >
>>     >> > I tried compiling it on Windows yesterday with just the following
>>     >> > CMakeLists.txt file, and there were a bunch of compile errors. It
>>     >> > shouldn't
>>     >> > be too hard to make it work on Windows, though, if Mr. Martin
>> will
>>     >> > accept
>>     >> > some patches for it... :-)
>>     >> >
>>     >> >
>>     >> > cmake_minimum_required(VERSION 2.8)
>>     >> > project(ninja)
>>     >> >
>>     >> > set(ninja_lib_sources
>>     >> >   src/build.cc
>>     >> >   src/build_log.cc
>>     >> >   src/eval_env.cc
>>     >> >   src/graph.cc
>>     >> >   src/parsers.cc
>>     >> >   src/subprocess.cc
>>     >> >   src/util.cc
>>     >> >   src/ninja_jumble.cc
>>     >> > )
>>     >> > add_library(ninjaLib STATIC ${ninja_lib_sources})
>>     >> >
>>     >> > add_executable(ninja src/ninja.cc)
>>     >> > target_link_libraries(ninja ninjaLib)
>>     >> >
>>     >> >
>>     >> > Cheers,
>>     >> > David
>>     >> >
>>     >> >
>>     >> > _______________________________________________
>>     >> > Powered by www.kitware.com <http://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 <http://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
>>     >
>>     >
>>     >
>>     > --
>>     > Direct: 1-518-836-2174
>>     > Ext: 304
>>     >
>>     > _______________________________________________
>>     > Powered by www.kitware.com <http://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
>>     >
>>
>>
>>
>>
>> --
>> Direct: 1-518-836-2174
>> Ext: 304
>>
>>
>>
>> _______________________________________________
>> 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
>
>
> --
> Bill Hoffman
> Kitware, Inc.
> 28 Corporate Drive
> Clifton Park, NY 12065
> bill.hoffman at kitware.com
> http://www.kitware.com
> 518 881-4905 (Direct)
> 518 371-3971 x105
> Fax (518) 371-4573
> _______________________________________________
> 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
>



-- 
Nicolas Desprès


More information about the CMake mailing list