2013-10-02 9 views
10

क्या सीएमके IF कथन में OR विकल्प भी है? कुछ ऐसा है: IF (NOT this OR that) ... ENDIF?सीएमके आईएफ (कुछ या कुछ और)

मेरे पास लाइन if (NOT ${TARGET_PLATFORM} STREQUAL "test") है, जो परियोजना से कुछ बिल्ड फ़ाइलों को हटा देती है। मैं एक दूसरा लक्ष्य प्लेटफार्म विकल्प, "my_board" जोड़ना चाहता हूं, जिसे उन समान बिल्ड फ़ाइलों को हटाने की आवश्यकता है। मैंने पहले IF के बाद elseif(NOT ${TARGET_PLATFORM} STREQUAL "my_board") जोड़ने का प्रयास किया, लेकिन यह सफल नहीं था।

क्या मैं सीएमके के साथ संभव करने की कोशिश कर रहा हूं, और यदि हां, तो उचित वाक्यविन्यास क्या है?

धन्यवाद

+3

मेरे अपने प्रश्न का उत्तर दिया। राजधानी या सिर्फ ठीक काम करता है! मेरे उदाहरण के लिए समाधान होगा: यदि (नहीं ($ {TARGET_PLATFORM} स्ट्राइकल "परीक्षण" या $ {TARGET_PLATFORM} स्थिर "my_board")) –

+0

सेमेक ऑनलाइन दस्तावेज़ बहुत अच्छा है, इसका उदार उपयोग करें। [सेमीकेक: अगर कमांड] (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) 
संबंधित मुद्दे