简单宏用于根据输入定义变量

macro(set_my_variable _INPUT)
  if("${_INPUT}" STREQUAL "Foo")
    set(my_output_variable "foo")
  else()
    set(my_output_variable "bar")
  endif()
endmacro(set_my_variable)

使用宏:

set_my_variable("Foo")
message(STATUS ${my_output_variable})

将打印

-- foo

set_my_variable("something else")
message(STATUS ${my_output_variable})

将打印

-- bar