描述
定义宏,它可以用作编译宏,也可以用作普通宏。我建议当作编译宏去使用,对于普通宏,我们直接定义在代码里即可。
格式
target_compile_definitions(<target> <INTERFACE|PUBLIC|PRIVATE> [items1...] [<INTERFACE|PUBLIC|PRIVATE> [items2...] ...])
例子
add_library(mylib mylib.c)
target_compile_definitions(mylib PRIVATE FOO)
注意
使用PUBLIC 或者PRIVATE的时候,target 只能来自add_library 或者add_executable并且不能是ALIAS taget。
使用INTERFACE的时候,可以是add_library ,add_executable 或者IMPORTED target。