diff options
author | João Valverde <joao.valverde@tecnico.ulisboa.pt> | 2017-09-24 02:30:08 +0100 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2017-10-13 21:32:18 +0000 |
commit | 9bba3866ffc0d382d511d298d2460c618bfa6c0d (patch) | |
tree | d900cce53485ca54b579cc71c3e0e726ff898041 /epan | |
parent | 68ef8797118b6015ac47130c789cd93e73b03597 (diff) |
CMake: Allow user build flags to override default build flags
Autotools has the very useful feature by design of allowing the user
to override the default build flags (you break it you keep it).
Apparently CMake applies COMPILE_OPTIONS target property after
CMAKE_{C,CXX}_FLAGS so that doesn't work here. Prepend our flags to those
variables instead to make it work then.
Specific target flag overrides can still be added with COMPILER_OPTIONS
(e.g: generated files with -Wno-warning) but this is less effective and
then we're back at the point where this overrides user flags. It's less
of a concern though.
Change-Id: I44761a79be4289238e02d4e781fef0099628817b
Reviewed-on: https://code.wireshark.org/review/23675
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Diffstat (limited to 'epan')
-rw-r--r-- | epan/CMakeLists.txt | 12 | ||||
-rw-r--r-- | epan/crypt/CMakeLists.txt | 1 | ||||
-rw-r--r-- | epan/dfilter/CMakeLists.txt | 1 | ||||
-rw-r--r-- | epan/dissectors/CMakeLists.txt | 2 | ||||
-rw-r--r-- | epan/ftypes/CMakeLists.txt | 1 | ||||
-rw-r--r-- | epan/wmem/CMakeLists.txt | 2 | ||||
-rw-r--r-- | epan/wslua/CMakeLists.txt | 1 |
7 files changed, 5 insertions, 15 deletions
diff --git a/epan/CMakeLists.txt b/epan/CMakeLists.txt index adadd689e5..b5d1d2a20b 100644 --- a/epan/CMakeLists.txt +++ b/epan/CMakeLists.txt @@ -357,10 +357,11 @@ add_dependencies(epan version) set(FULL_SO_VERSION "0.0.0") -set_target_properties(epan PROPERTIES COMPILE_DEFINITIONS "WS_BUILD_DLL") -set_target_properties(epan PROPERTIES COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}") -set_target_properties(epan PROPERTIES LINK_FLAGS "${WS_LINK_FLAGS}") -set_target_properties(epan PROPERTIES VERSION ${FULL_SO_VERSION} SOVERSION 0) +set_target_properties(epan PROPERTIES + COMPILE_DEFINITIONS "WS_BUILD_DLL" + LINK_FLAGS "${WS_LINK_FLAGS}" + VERSION ${FULL_SO_VERSION} SOVERSION 0 +) if(ENABLE_APPLICATION_BUNDLE) set_target_properties(epan PROPERTIES @@ -444,7 +445,6 @@ target_link_libraries(exntest ${GLIB2_LIBRARIES}) set_target_properties(exntest PROPERTIES FOLDER "Tests" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) add_executable(oids_test EXCLUDE_FROM_ALL oids_test.c) @@ -452,7 +452,6 @@ target_link_libraries(oids_test epan ${ZLIB_LIBRARIES}) set_target_properties(oids_test PROPERTIES FOLDER "Tests" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) add_executable(reassemble_test EXCLUDE_FROM_ALL reassemble_test.c) @@ -466,7 +465,6 @@ target_link_libraries(tvbtest epan) set_target_properties(tvbtest PROPERTIES FOLDER "Tests" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) CHECKAPI( diff --git a/epan/crypt/CMakeLists.txt b/epan/crypt/CMakeLists.txt index a06aa60482..b76188f406 100644 --- a/epan/crypt/CMakeLists.txt +++ b/epan/crypt/CMakeLists.txt @@ -48,7 +48,6 @@ add_library(crypt OBJECT set_target_properties(crypt PROPERTIES FOLDER "Libs/epan/crypt" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) CHECKAPI( diff --git a/epan/dfilter/CMakeLists.txt b/epan/dfilter/CMakeLists.txt index 4a2ebad0f9..3f60b771f7 100644 --- a/epan/dfilter/CMakeLists.txt +++ b/epan/dfilter/CMakeLists.txt @@ -70,7 +70,6 @@ add_library(dfilter OBJECT set_target_properties(dfilter PROPERTIES FOLDER "Libs/epan/dfilter" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) if(NOT WIN32) diff --git a/epan/dissectors/CMakeLists.txt b/epan/dissectors/CMakeLists.txt index 0b5c5921a2..1aa7b85426 100644 --- a/epan/dissectors/CMakeLists.txt +++ b/epan/dissectors/CMakeLists.txt @@ -196,7 +196,6 @@ add_library(dissectors-corba OBJECT set_target_properties(dissectors-corba PROPERTIES FOLDER "Libs/epan/dissectors" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) if(WIN32 AND "${CMAKE_GENERATOR}" STREQUAL "Visual Studio 12 2013 Win64") @@ -1857,7 +1856,6 @@ add_library(dissectors OBJECT set_target_properties(dissectors PROPERTIES FOLDER "Libs/epan/dissectors" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) if(NOT WIN32) diff --git a/epan/ftypes/CMakeLists.txt b/epan/ftypes/CMakeLists.txt index 1ca5e213ee..fb9bac2fd5 100644 --- a/epan/ftypes/CMakeLists.txt +++ b/epan/ftypes/CMakeLists.txt @@ -58,7 +58,6 @@ add_library(ftypes OBJECT set_target_properties(ftypes PROPERTIES FOLDER "Libs/epan/ftypes" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) if(NOT WIN32) diff --git a/epan/wmem/CMakeLists.txt b/epan/wmem/CMakeLists.txt index 87a077472d..710f023f74 100644 --- a/epan/wmem/CMakeLists.txt +++ b/epan/wmem/CMakeLists.txt @@ -74,7 +74,6 @@ add_library(wmem OBJECT set_target_properties(wmem PROPERTIES FOLDER "Libs/epan/wmem" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) add_executable(wmem_test EXCLUDE_FROM_ALL wmem_test.c $<TARGET_OBJECTS:wmem>) @@ -84,7 +83,6 @@ target_link_libraries(wmem_test ${GLIB2_LIBRARIES} wsutil) set_target_properties(wmem_test PROPERTIES FOLDER "Tests" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) if(NOT WIN32) diff --git a/epan/wslua/CMakeLists.txt b/epan/wslua/CMakeLists.txt index 473558d709..b32eaa0269 100644 --- a/epan/wslua/CMakeLists.txt +++ b/epan/wslua/CMakeLists.txt @@ -160,7 +160,6 @@ add_library(wslua OBJECT set_target_properties(wslua PROPERTIES FOLDER "Libs/epan/wslua" COMPILE_DEFINITIONS "WS_BUILD_DLL" - COMPILE_OPTIONS "${WS_WARNINGS_C_FLAGS}" ) CHECKAPI( |