cmake_minimum_required(VERSION 2.8.12) message(WARNING "add_global_compiler_switch() is deprecated. Use target_compile_options() instead") # Make macros that can add compiler switches to the entire project. Not just # to the current cmake folder being built. macro ( add_global_compiler_switch switch_name ) # If removing the switch would change the flags then it's already present # and we don't need to do anything. string(REPLACE "${switch_name}" "" tempstr "${CMAKE_CXX_FLAGS}") if ("${CMAKE_CXX_FLAGS}" STREQUAL "${tempstr}" ) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${switch_name}" CACHE STRING "Flags used by the compiler during all C++ builds." FORCE) endif () endmacro() macro ( remove_global_compiler_switch switch_name ) string(REPLACE "${switch_name}" "" tempstr "${CMAKE_CXX_FLAGS}") if (NOT "${CMAKE_CXX_FLAGS}" STREQUAL "${tempstr}" ) set (CMAKE_CXX_FLAGS "${tempstr}" CACHE STRING "Flags used by the compiler during all C++ builds." FORCE) endif () endmacro() macro (add_global_define def_name) add_global_compiler_switch(-D${def_name}) endmacro() macro (remove_global_define def_name) remove_global_compiler_switch(-D${def_name}) endmacro()