function(print2Args arg1 arg2)
message(STATUS ${arg1} " " ${arg2})
endfunction(print2Args)
是否可以更新用户定义的函数print2Args
s.t.,它将接受 * 选项 *,如内置CMake函数execute_process
?
function(print2Args arg1 arg2)
message(STATUS ${arg1} " " ${arg2})
endfunction(print2Args)
是否可以更新用户定义的函数print2Args
s.t.,它将接受 * 选项 *,如内置CMake函数execute_process
?
1条答案
按热度按时间kcwpcxri1#
CMake通过
CMakeParseArguments
提供此功能。您不必像在示例中那样在函数签名中指定参数。CMake接受的参数比函数签名中给出的要多。您可以在变量中定义选项、单值参数和成对参数,并将它们传递给
cmake_parse_arguments
。此命令设置了几个变量,您可以使用这些变量来检查设置了哪些参数。文档和示例:https://cmake.org/cmake/help/latest/module/CMakeParseArguments.html