| IF(MSGPACK_BOOST) |
| LIST(APPEND exec_PROGRAMS msgpack_variant_capitalize.cpp msgpack_variant_mapbased.cpp) |
| ENDIF() |
| |
| FOREACH(source_file ${exec_PROGRAMS}) |
| GET_FILENAME_COMPONENT(source_file_we ${source_file} NAME_WE) |
| ADD_EXECUTABLE(${source_file_we} ${source_file}) |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") |
| SET_PROPERTY( |
| TARGET ${source_file_we} |
| APPEND_STRING |
| PROPERTY COMPILE_FLAGS "-Wall -Wextra -Werror -g -O3" |
| ) |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") |
| SET_PROPERTY( |
| TARGET ${source_file_we} |
| APPEND_STRING |
| PROPERTY COMPILE_FLAGS " -Wno-mismatched-tags" |
| ) |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") |
| IF( |
| (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER ${GNUCXX_NO_MISMATCHED_TAGS_SUPPORT_VERSION} |
| ) |
| OR |
| (CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL |
| ${GNUCXX_NO_MISMATCHED_TAGS_SUPPORT_VERSION} |
| ) |
| ) |
| SET_PROPERTY( |
| TARGET ${source_file_we} |
| APPEND_STRING |
| PROPERTY COMPILE_FLAGS " -Wno-mismatched-tags" |
| ) |
| ENDIF() |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") |
| IF(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") |
| STRING( |
| REGEX |
| REPLACE |
| "/W[0-4]" |
| "/W3 /WX" |
| CMAKE_CXX_FLAGS |
| "${CMAKE_CXX_FLAGS}" |
| ) |
| ELSE() |
| SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W3 /WX") |
| ENDIF() |
| ENDIF() |
| ENDFOREACH() |