[CMake] more targets to run in parallel
Andrea Crotti
andrea.crotti.0 at gmail.com
Mon Feb 20 11:00:43 EST 2012
On 02/20/2012 03:42 PM, Eric Noulard wrote:
> You may avoid to create a list in the first place: set(myoptions "one
> two three") instead of set(myoptions one two three) see cmake
> --help-command list or you can string(REPLACE ";" " " stringopts
> "${myoptions}") message(STATUS "${stringopts}")
So now I ended up with this, where the final command is the list
concatenation of two other lists,
and then use the replace trick and create a custom_command which should
run it.
set(GEN_DEPENDENCY_SCRIPT $ENV{PSI_PATH}/devsonly/devsonly/bin/build_app.py)
set(INSTALLED_EGGS_LIST installed_eggs.txt)
set(BUILD_APP_OPTIONS -o ${INSTALLED_EGGS_LIST} -w ${WORKSPACE}
${APPLICATION})
list(APPEND GEN_DEPENDENCY_CMD ${PYTHON_EXECUTABLE}
${GEN_DEPENDENCY_SCRIPT} ${BUILD_APP_OPTIONS})
string(REPLACE ";" " " GEN_DEPENDENCY_CMD ${GEN_DEPENDENCY_CMD})
add_custom_command(
OUTPUT ${INSTALLED_EGGS_LIST}
COMMAND ${GEN_DEPENDENCY_CMD}
)
But it doesn't work yet, even if the list is actually correct the
command executed gives this:
/bin/sh:
/usr/bin/python~/git_projs/PSI_Hamburg/devsonly/devsonly/bin/build_app.py-oinstalled_eggs.txt-w/home/andrea/git_projs/home/andrea/git_projs/Minimum_Drag/airbus.application.minimum_drag:
No such file or directory
The thing which is not quite clear is what COMMAND takes as option,
probably not a list but a list
is converted automatically to the arguments that it takes?
More information about the CMake
mailing list