我正在寻找类似的东西:
function(my_function)
return(PARENT_SCOPE)
endfunction()
my_function() # Should return here
message("don't print this")
我希望对
my_function
的呼叫表现得就像我此时已呼叫 return
一样。
您在这里看到的文件是一个子
CMakeLists.txt
,我想从我调用的函数内部停止处理。该函数在另一个文件中定义,该文件通过 include
包含。
这可以用 CMake 实现吗?
如果我正确地理解了您的要求,您希望根据您的函数发生的情况有条件地停止脚本。由于不能直接从函数返回,因此需要在函数中设置一个变量,然后在函数调用后检查它,如下所示:
function(my_function result_var)
set(${result_var} "STOP" PARENT_SCOPE)
endfunction()
my_function(should_stop)
if(should_stop STREQUAL "STOP")
return()
endif()
message("don't print this")