That doesn't work either: foo: $(CMAKE_COMMAND) -E cmake_progress_report /home/bnewcomb/tmp/cmake-tests/custom-or/CMakeFiles $(CMAKE_PROGRESS_1) @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue --bold "Generating foo" generate-foo "|| echo \"no big deal\""
The whole string gets passed as the first argument to generate-foo. B. On 07/25/2014 09:43 AM, Iosif Neitzke wrote: > "If VERBATIM is given then all arguments to the commands will be > escaped properly for the build tool so that the invoked command > receives each argument unchanged. Note that one level of escapes is > still used by the CMake language processor before add_custom_command > even sees the arguments. Use of VERBATIM is recommended as it enables > correct behavior. When VERBATIM is not given the behavior is platform > specific because there is no protection of tool-specific special > characters." > > http://www.cmake.org/cmake/help/v3.0/command/add_custom_command.html > > On Fri, Jul 25, 2014 at 11:20 AM, Bill Newcomb <bnewc...@nvidia.com> wrote: >> I want to add stuff to a custom command based on some definition: >> >> cmake_minimum_required(VERSION 2.6) >> >> set(DO_RELAX 1) >> if(DO_RELAX) >> set(OR_RELAX "|| echo \"no big deal\"") >> else() >> set(OR_RELAX "") >> endif() >> >> add_custom_command(OUTPUT foo COMMAND generate-foo ${OR_RELAX}) >> add_custom_target(do-foo ALL DEPENDS foo) >> >> >> However, this produces the following rule in the generated makefile: >> >> foo: >> $(CMAKE_COMMAND) -E cmake_progress_report >> /home/bnewcomb/tmp/cmake-tests/custom-or/CMakeFiles $(CMAKE_PROGRESS_1) >> @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --blue >> --bold "Generating foo" >> generate-foo ||\ echo\ "no\ big\ deal" >> >> Is there some way I can get cmake to not escape all of the >> spaces in the value of OR_RELAX? >> >> Thanks, >> B. >> >> ----------------------------------------------------------------------------------- >> This email message is for the sole use of the intended recipient(s) and may >> contain >> confidential information. Any unauthorized review, use, disclosure or >> distribution >> is prohibited. If you are not the intended recipient, please contact the >> sender by >> reply email and destroy all copies of the original message. >> ----------------------------------------------------------------------------------- >> -- >> >> 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: >> http://public.kitware.com/mailman/listinfo/cmake -- 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: http://public.kitware.com/mailman/listinfo/cmake