I am currently using cmake 2.4 (patch 8) and i'm having a problem with
ADD_CUSTOM_COMMAND

I created a macro which defined an add_custom_command to which i'd like
to pass some extra arguments in variables.  However, when I try to pass
in a string with spaces, the spaces get "escaped" which breaks the
command.  Below is a simplified CMakeLists.txt  that illustrates the
issue I am having.

SET(OPTIONS "-H -l")

MACRO(RUN_CMD FILENAME)
  ADD_CUSTOM_COMMAND(
     OUTPUT new.cpp
     COMMAND cp ${OPTIONS} ${FILENAME} new.cpp
  )
ENDMACRO(RUN_CMD)

RUN_CMD(old.cpp)

ADD_EXECUTABLE(new new.cpp)


I'd like the the custom command to run to be 
  cp -H -l old.cpp new.cpp
but instead, what is generated into the CMakeFiles/new.dir/build.make
file is
  cp -H\ -l old.cpp new.cpp

Note the -H\ -l.  This breaks the command I need to run.  The above is a
contrived example.  In actuality, I define the Macro in a "UseXXX.cmake"
type file and it is used elsewhere.  The "OPTIONS" variable is used to
pass extra options as needed to the command.  Is there anyway to do this
with getting the string escaped when run as part of the command?

Thanks,

Michael Kaplan


_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to