[cmake-developers] [RFC] Fastbuild generator

comic fans comicfans44 at gmail.com
Thu Jan 12 20:47:01 EST 2017


I hope I've known this earlier so I can do less... and I'll goto your branch and
join gitter channel to discuss .

On Mon, Jan 9, 2017 at 5:12 PM, Charles Huet <charles.huet at gmail.com> wrote:
> Hi,
>
> I ported the work of @inbilla to CMake trunk a few months ago, and fixed
> quite a few tests on my fork: https://github.com/packadal/CMake
>
> I think it would be best if we tried to synchronize our efforts, since lots
> of people are interested in getting a FastBuild generator for CMake !
> There is a gitter channel that is used to discuss the progress here:
> https://gitter.im/inbilla/CMake
>
> I hope we can get this to work well enough to be iontegrated in CMake 3.8,
> but I did not have time to work on this lately.
> I hope to get back to it this week, but I am always available for discussion
> :)
>
> Best
>
>
> Le dim. 8 janv. 2017 à 05:59, comic fans <comicfans44 at gmail.com> a écrit :
>>
>> Hello:
>>
>> Fastbuild is a opensource multi platform build tool which has built-in
>> cache/distribute (likes ccache/distcc) and pch/unity build
>> support(http://fastbuild.org/docs/home.html).
>>
>>
>> @inbilla created fastbuild generator based on 3.2.1 here
>> https://github.com/inbilla/CMake , this completed almost everything
>> but didn't continue developing for a while. recently I've rebase his
>> work on master branch, with some
>> tweaks(https://gitlab.kitware.com/comicfans/cmake/commits/upstream2),now
>> it can builds cmake , and almost llvm/clang,  so I'd like to share
>> this here, hopes more user to test this out.
>>
>> I haven't touch cmake code before so it may not as good as you think.
>> If anyone interested to try this code, any comments and suggestion
>> would be helpful.
>>
>>
>> How Fastbuild compares to Ninja :
>> If build locally, fastbuild almost as fast as ninja , but fastbuild
>> provides simpler distrubte support,you can just run fastbuild worker
>> on many woker machine (without need to install toolchain) to speed up.
>> As I tested,
>>
>> host (4core4thread 8GB ) local build clang:  60 min
>> host + worker (6core12thread 32GB) distrubite clang : 30 min
>>
>> Fastbuild Generator current status:
>>
>>  local build works on linux/windows (I don't have mac to test)
>>
>>  some cmake variable not set correctly (RUNTIME_OUTPUT_DIRECTORY,
>> LIBRARY_OUTPUT_DIRECTORY,  how to put CFGIntDir in ?  help needed !),
>>
>>  distrubte build not work (you can list toolchain exe/dll in header,
>> or just copy header from fastbuild src's to make distribute build
>> work) I wonder if cmake has builtin support to list all these files,
>> help needed!
>>
>> config/build on windows must run from vs cmd console, because cmake
>> didn't detect windows SDK for include/link path (Ninja generator also
>> suffer from this). help needed.
>>
>> edit CMake files didn't auto trigger fastbuild auto rebuild, must rerun
>> cmake
>>
>> rerun cmake makes fastbuild rebuild everything. this is fastbuild's
>> shortcoming, author is working on this.
>>
>> custom commands will generate script file (bash/bat) ,should we write
>> commands as argument to sh/cmd , or improve this in fastbuild ?
>> --
>>
>> Powered by www.kitware.com
>>
>> Please keep messages on-topic and check the CMake FAQ at:
>> http://www.cmake.org/Wiki/CMake_FAQ
>>
>> Kitware offers various services to support the CMake community. For more
>> information on each offering, please visit:
>>
>> CMake Support: http://cmake.org/cmake/help/support.html
>> CMake Consulting: http://cmake.org/cmake/help/consulting.html
>> CMake Training Courses: http://cmake.org/cmake/help/training.html
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Follow this link to subscribe/unsubscribe:
>> http://public.kitware.com/mailman/listinfo/cmake-developers


More information about the cmake-developers mailing list