What's new with respect to External_Project build systems?

4 years ago I converted the program I work on to use External_Project to build prerequisites for the main code.

It uses the “SuperBuild then Build” pattern where all the prerequisites are built out of one main CMakeLists.txt, which then calls a sub-build for the application proper.

I haven’t been following the latest features in CMake that might make this process more streamlined and intuitive. So my question is what are these features and are there good examples of how to put them to use?


I don’t think there’s been any advancements to make that better. I think @craig.scott might have input on it though.

In general, you should be able to scan through the release notes of each CMake release and any new user-facing features will be mentioned there. The easiest way is probably to go to the documentation page, enter ExternalProject in the search box in the left sidebar and then take a look at each search result that is for a release notes page (searching for ExternalProject again in each of those pages quickly takes you to the relevant items, which are typically all grouped together). I did that just now and you can quickly find the changes, so I’ll leave that for you to go through.