2014-12-05 49 views
0

我可以从CMake中间返回吗?macro?我想到的一个用例如下。CMake宏从流中返回?

macro (my_macro a b c) 
    if (NOT USE_${a}) 
     # I WANT TO RETURN FROM HERE. 
    endif() 
    if (NOT USE_${b}) 
     # I WANT TO RETURN FROM HERE. 
    endif() 
    # Do something to c... 
endmacro() 

回答

3

宏在CMake的基本替换,这样你就不会真正从它返回。我建议你将“b”和“c”代码包装成else()

macro (my_macro a b c) 
    if (NOT USE_${a}) 
     # I WANT TO RETURN FROM HERE. 
    else() 
    if (NOT USE_${b}) 
     # I WANT TO RETURN FROM HERE. 
    endif() 
    # Do something to c... 
    endif(NOT USE_${a}) 
endmacro()