[cmake-developers] ExternalProject: using the same argument multiple times

Alexander Neundorf neundorf at kde.org
Mon Jun 13 08:44:55 EDT 2011


Hi Dave,

I want to wrap the externalproject_add() function, so that in the normal case 
only the git URL has to be specified, and all other arguments have been 
already set. 
But it should still be possible to override "my" default arguments.

So I had a look how the argument parsing is done in ExternalProject.cmake

When a value for a keyword is found, set_property(APPEND) is used.
This means that if I do

externalproject_add(INSTALL_DIR /opt/foo
                    INSTALL_DIR /opt/bar )

then INSTALL_DIR will be /opt/foo;/opt/bar .

I'd like to change this so that the second argument will override the first 
one (I saw that this appending is also used to append the multiple arguments 
for one keyword to the property of this keyword, so I will not break this).

What do you think ?
Are there use cases where I would actually want to split my arguments into 
multiple parts and have them concatenated ?

Alex



More information about the cmake-developers mailing list