CMake:如何使用add_custom_command(…)中的条件

我想使用Linux,如果CMakeLists.txt中的条件由add_custom_command(…),我需要运行这些条件,并在makefile做一些判断。 喜欢这个:

cmake_minimum_required(VERSION 2.8) add_custom_target(temp_target ALL) add_custom_command(TARGET temp_target PRE_BUILD COMMAND if ["a" != "b"]; then echo 1; fi; VERBATIM ) 

我应该怎么做,如果我想使用

 if ["a" != "b"]; then echo 1; fi; 

什么时候make makefile? 非常感谢您的帮助!

您可以使用/bin/sh -c作为COMMAND参数指定一行shell代码:

 COMMAND /bin/sh -c "if [ 'a' != 'b' ]; then echo 1; fi;" 

请注意, [是bash的扩展,对于像“dash”这样简单的shell可能是未知的。