[CMake] Invoke-Build support

Nagy-Egri Máté Ferenc csiga.biga at aol.com
Sat Dec 13 15:28:26 EST 2014


Hi!


Being a CMake user for some time, I have come across the issue of parallel builds still being problem with no trivial solution. the NMake back-end does not have batch support, which is said to be non-trivial, while the ninja generator did tend to fail some builds for me too, when I gave it a spin not too long ago (few months). MSBuild.exe seems to do the job, yet some argued that if one does not have access to the IDE itself (I do not exactly know that is possible to have cl.exe but not MSBuild.exe) then it is not feasable.


I have started using PowerShell recently (to move out of my comfort zone, which is C++ and GPGPU), and instantly fell in love. I was looking for scriptable PS build systems, and found PSake and Invoke-Build. The former I did not take a deep look into, but the latter seems like a very nice project, with a fairly straight-forward syntax (as far as the makefile goes), as well as parallel capable back-end. The simplicity of the makefile, along with the power of .NET and all the built-in scripting fun of PS, I’d guess it might be the simplest back-end of CMake yet, if it were supported.


I am very enthusiastic with a very limited amount of time I could dedicate to such work, but I thought I’d ask you folks if you see any added value in case such a back-end existed? With the chocolatey repository for Windows (in case you’ve never heard of it, google first hit gives you the answer) boasting a successful Kickstarter funding to raise it to a new level, I believe all package maintainers would benefit from a scriptable make system in PS.


I have not looked at CMake source code, but just how much effort would it take to fork CMake and create a back-end for Invoke-Build? I have already contacted Invoke-Build’s developer, and while he never had to use CMake during his work, he is willing to take on the effort from IB’s side if some feature were missing to make ends meet.


Best regards,

Máté
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20141213/9392be9b/attachment.html>


More information about the CMake mailing list