[CMake] ExternalProjects_Add limitations

David Cole dlrdave at aol.com
Mon Jan 6 11:14:23 EST 2014


I mostly agree with Bill's reply, especially the advice about the all 
or nothing approach. If you use ExternalProject, go all the way, build 
all your dependencies first, and then your own project as an 
ExternalProject.

After the build is done, it's easy enough to switch to the "inner" 
project files for your project, and your developers can work in there 
"as usual."

The best (in my opinion) public open source example of a SuperBuild 
that works this way with dependencies and actively developed 
sub-projects, is the Open Chemistry project. Slicer is also a good, but 
a bit more complicated, example.

See the CMakeLists and *.cmake files here:

    https://github.com/OpenChemistry/openchemistry
     
https://github.com/OpenChemistry/openchemistry/blob/master/CMakeLists.txt
    https://github.com/OpenChemistry/openchemistry/tree/master/cmake


HTH,
David C.



More information about the CMake mailing list