Nobody has yet made a successful case that for a large project,
"fullblown" scripting languages can do things that CMake script can't.
Perhaps that case could be made, and I keep looking around for an
exemplar of it, but it hasn't been made. I think Kitware would be
receptive to the argument *if* it could be made, but nobody's been
able to make it. People keep talking about things that Kitware is
capable of addressing by improving CMake in pretty much the form it's
currently in.
Please enlighten me if the following 'case' can be easily implemented with CMake.
I'm not sure, but couldn't find the necessary means by browsing the documentation.
Consider a large component-based application. Its build script has several 'build options' that enable/disable the integration of some set of components into the application.
These (more than 50) components are not distributed with the application's source code, they are rather automatically downloaded by the build script based on the build options (since there are so many optional components, only those needed components should be downloaded).
Now, for every downloaded component, the build script should run some custom tool on the IDL files that come with the component bundles, then build the application, then create a installer for the application including the components that were downloaded.