CMake-添加编译时选项的几种方式

1. add_compile_options(<option> ...) :可以给当前目录以及当前目录以下的目录的 sources 添加编译选项。

2. target_compile_definitions :

1 target_compile_definitions(<target>
2   <INTERFACE|PUBLIC|PRIVATE> [items1...]
3   [<INTERFACE|PUBLIC|PRIVATE> [items2...] ...])

  是给给定的 <target> 添加编译选项, <target> 指的是由 add_executable() 产生的可执行文件或 add_library() 添加进来的库。 <INTERFACE|PUBLIC|PRIVATE> 指的是 [items...] 选项可以传播的范围, PUBLIC and INTERFACE  会传播 <target> 的 INTERFACE_COMPILE_DEFINITIONS 属性, PRIVATE and PUBLIC 会传播 <target> 的 COMPILE_DEFINITIONS  属性。

3.  add_definitions(-DFOO -DBAR ...) :可以给当前目录以及当前目录以下的目录的 sources 添加编译行命令。如 cmake . 这样的在命令行输入的命令。cmake的命令格式如下:

1 cmake [<options>] (<path-to-source> | <path-to-existing-build>)
2 cmake [(-D<var>=<value>)...] -P <cmake-script-file>
3 cmake --build <dir> [<options>] [-- <build-tool-options>...]
4 cmake -E <command> [<options>]
5 cmake --find-package <options>...

   [<options>] 可以是 -C, -D, -U... 之类的选项,这个 add_definitions(-DFOO -DBAR ...) 函数可以添加任意选项,但主要是用来添加 -D 选项。

posted @ 2016-04-16 11:24  一张煎饼  阅读(37430)  评论(0编辑  收藏  举报