В моем проекте CMake настроить флаги компилятора, как это:Как установить флаги компилятора для групп файлов в CMake?
if (MSVC)
# Build cpp files on all cores
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP /W4")
# can't use the "secure" versions as they're Windows specific
add_definitions("/D\"_CRT_SECURE_NO_WARNINGS\"")
add_definitions("/D\"_SCL_SECURE_NO_WARNINGS\"")
add_definitions("/wd4290")
else()
# Enable C++11, you may need to use -std=c++0x if using an older gcc compiler
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
else()
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wno-unused-parameter -fPIC -Wall -Weffc++ -pedantic")
endif()
endif()
Чтобы установить флаги для MSVC, Clang и GCC. Однако в моих исходных файлах var у меня есть исходный код и сторонние вещи, такие как gtest и gmock.
Как установить эти флаги так, чтобы они применимы только к некоторому подмножеству исходного кода?
например
# This should use the flags set above
SET(source
mycode/mysrc.cpp)
# This should not use the flags from above
SET(not_my_source
3rdparty/3rdparty.cpp)
# But both end up being part of the same executable
add_executable(Test ${source} ${not_my_source})
Возможный дубликат [CMake - игнорировать/показывать только ошибки/предупреждения из определенного каталога] (http://stackoverflow.com/questions/15133332/cmake-ignore-only-show-errors-warnings-from-certain-directory) – herohuyongtao