| # add compile options to warning_options to ensure unused-function throws a warning |
| # if warning_options is NOT DEFINED, assume compiler doesn't support warning as error |
| macro(get_warning_options warning_options) |
| if (CMAKE_CXX_COMPILER_ID MATCHES "^(GNU|Clang|AppleClang|XLClang|IBMClang|LCC|NVCC|IntelLLVM)$") |
| set(${warning_options} "-Wall") |
| elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC" |
| OR (CMAKE_CXX_COMPILER_ID STREQUAL "Intel" AND CMAKE_CXX_SIMULATE_ID MATCHES "MSVC")) |
| set(${warning_options} "-W4") |
| elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel") |
| set(${warning_options} "-w3") |
| elseif (CMAKE_CXX_COMPILER_ID STREQUAL "XL") |
| set(${warning_options} "-qinfo=all") |
| elseif (CMAKE_CXX_COMPILER_ID STREQUAL "SunPro") |
| set(${warning_options} "+w;+w2") |
| elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Fujitsu") |
| set(${warning_options} "SHELL:-w 8") |
| endif() |
| endmacro() |