Earlier I wondered if there was a way to stop recusive invocation of a build command in a cmake script - I found something like a solution; when I run the command, set an environment variable and don't run the command if that environment variable is set... But...
If I specify 'TARGET' in BUILD_COMMAND, then it gets extra quotes around it, which make it impossible to pass to execute_process. Also why doesn't cmake-gui run certain commands? ------example - probably incomplete ----------- PROJECT( whatever ) build_command( GENERATOR_BUILD_COMMAND CONFIGURATION ${CMAKE_BUILD_TYPE} PROJECT_NAME ${PROJECT_NAME} TARGET all ) message( "build command:${GENERATOR_BUILD_COMMAND}" ) --------- output ------- build command:e:/tools/unix/mingw/bin/mingw32-make.exe -i "all" mingw32-make.exe: *** No rule to make target `"all"'. Stop. ---end output, begin explanation-------- In order to get BUILD_COMMAND output to work at all I have to STRING( REPLACE "\ " ";" GENERATOR_BUILD_COMMAND ${GENERATOR_BUILD_COMMAND} ) which replaces the spaces in the command with semicolons, so it looks like seperate commands for EXECUTE_PROCESS(COMMAND ${GENERATOR_BUILD_COMMAND} WORKING_DIRECTORY ${CMAKE_BINARY_DIR} ) and in cmake-gui the output looks something like --- build command:e:/tools/unix/mingw/bin/mingw32-make.exe -i "all" Executing command... (output just before Execute_process) Configuring done --- but the command is never actually executed? I go out to a command line and type cmake . and the build goes. -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake