17 lines
692 B
CMake
17 lines
692 B
CMake
# Opciones del compilador comunes a todos los destinos.
|
|
function(tahgibu_apply_warnings target)
|
|
if(MSVC)
|
|
target_compile_options(${target} PRIVATE /W4 /utf-8)
|
|
target_compile_definitions(${target} PRIVATE _CRT_SECURE_NO_WARNINGS)
|
|
else()
|
|
target_compile_options(${target} PRIVATE -Wall -Wextra -Wshadow -Wpedantic)
|
|
if(TAHGIBU_WARNINGS_AS_ERRORS)
|
|
target_compile_options(${target} PRIVATE -Werror)
|
|
endif()
|
|
if(TAHGIBU_SANITIZE)
|
|
target_compile_options(${target} PRIVATE -fsanitize=address,undefined -fno-omit-frame-pointer -fno-sanitize-recover=all)
|
|
target_link_options(${target} PRIVATE -fsanitize=address,undefined)
|
|
endif()
|
|
endif()
|
|
endfunction()
|