设置返回值

  1. # list参数是一个返回值,给宏调用方使用
  2. macro(fillList list)
  3. # 设置值
  4. set(${list} a b c)
  5. # 取值
  6. message("${{list}}") #要取两下!
  7. endmacro()

宏的变参

  1. # 第一个参数为dependlib_dir,即依赖库的目录
  2. # 将剩下的参数装载到dependlibs_name中,所以dependlibs_name是一个list
  3. macro(create_dotnet_project_by_dependlibname dependlib_dir)
  4. set(dependlibs_name "${ARGN}") #将剩下的参数放到这个变量中
  5. endmacro()