CMAKe library level CFLAGS



我有一个项目下面的结构

 A 
   CMakeLists.txt
 B 
   CMakeLists.txt
 C
   CMakeLists.txt

I目录级CFLAGS。

所以A用来编译的CFLAGS将只用于A。

如何使用cmake

设置目录级别或(子项目级别)CFLAGS

您可以这样做:

set_source_files_properties(file1.c file2.c
    PROPERTIES COMPILE_FLAGS ${YOUR_CFLAGS_HERE}
)

仍然建议使用add_definitions()、include_directories()、link_directories()等。

如果这些函数中的任何一个将在A/CMakeLists.txt中被调用,它们将不会对{B,C}/CMakeLists.txt产生任何影响。

最新更新