I'm collecting sources and includes into a parent scope variable, and then attempting to use that variable to reference the right sources. Sources get added to the list as ../(theirpath)/(source) so in the parent level I can simply replace "../" with "" and then they are relative in the right place. This works; as far as, the includes, sources and defines get all collected into the top level, but when i try to remove the ../ the list gets converted into a string.
# Create a list of things set( SIMPLE_LIST -I../lib1/include -I../lib2/include -I../lib3/include ) # set a variable using that list... set( AMALG_COMMAND echo ${SIMPLE_LIST} ) # this outputs COMMAND:echo;-I../lib1/include;-I../lib2/include;-I../lib3/include message( "COMMAND:${AMALG_COMMAND}") # replace ../ with nothing STRING( REPLACE "../" "" SIMPLE_LIST ${SIMPLE_LIST} ) # re-set a variable with the eventual command to run set( AMALG_COMMAND echo ${SIMPLE_LIST} ) # this outputs COMMAND:echo;-Ilib1/include -Ilib2/include -Ilib3/include message( "COMMAND:${AMALG_COMMAND}") When that final command actually gets run in a add_custom_command( OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/out.c COMMAND ${AMALG_COMMAND} ) Then the command is 'echo "-Ilib1/include -Ilib2/include -Ilib3/include"' which is incorrect. I tried first LIST(JOIN) but that defiantly makes a string and doesn't help. string(REPLACE " " ";" SIMPLE_LIST ${SIMPLE_LIST}) to try and reverse it back to a list doesn't seem to help...
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: https://cmake.org/mailman/listinfo/cmake