2013-10-02 77 views
10

CMake的IF声明是否有一个OR的选择呢?例如:IF (NOT this OR that) ... ENDIFCMake的IF(某事或别的东西)

我也行if (NOT ${TARGET_PLATFORM} STREQUAL "test"),从项目中删除某些构建文件。我想添加第二个目标平台选项“my_board”,它需要删除这些相同的构建文件。我尝试在第一个IF之后添加elseif(NOT ${TARGET_PLATFORM} STREQUAL "my_board"),但那不成功。

是什么,我试图做可能与CMake的,如果是这样,什么是正确的语法?

感谢

+3

回答我自己的问题。 Capital或者工作得很好!在我的例子的解决办法是:如果(NOT($ {} TARGET_PLATFORM STREQUAL “测试” 或$ {} TARGET_PLATFORM STREQUAL “my_board”)) –

+0

CMake的在线文档是伟大的,自由使用它。 [cmake:if command](http://www.cmake.org/cmake/help/cmake2.6docs.html#command:if)将整个事情分解了。 – grim

+1

您可以回答自己的问题,并将其标记为“已解决”=)。 – JonesV

回答

9
if (NOT (${TARGET_PLATFORM} STREQUAL "test" OR ${TARGET_PLATFORM} STREQUAL "my_board")) 

或者更简单地说

if (CONDITION1 OR CONDITION2) 
相关问题