diff --git a/CMakeLists.txt b/CMakeLists.txt index 8eb353a80c6783e429ceca04f2e87e98aa0d6ac7..6e394f2e136d2e234dd5057448ff7c25ebdd5edc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -56,13 +56,15 @@ endif() ### ### set(${CMAKE_C_COMPILER_ID}_C_FLAGS) -set(${CMAKE_BUILD_TYPE}_C_FLAGS) -set(RelWithDebInfo_C_FLAGS - -Wno-switch # For the CI -) -set(Release_C_FLAGS - -Wno-switch # For the CI -) +set(${CMAKE_BUILD_TYPE}_${CMAKE_C_COMPILER_ID}_C_FLAGS) + +# For the CI... +set(RelWithDebInfo_GNU_C_FLAGS -Wno-switch) +set(Release_GNU_C_FLAGS -Wno-switch) +set(RelWithDebInfo_Clang_C_FLAGS -Wno-switch-enum) +set(Release_Clang_C_FLAGS -Wno-switch-enum) + +# Common flags, also per compiler set(COMMON_C_FLAGS -Wall -Wextra -Werror -Wshadow @@ -336,8 +338,18 @@ target_compile_definitions(lektord PRIVATE ${common_DEFINITIONS} QTCREATOR_UTILS_STATIC_LIB ) -target_compile_options(lektord PRIVATE ${COMMON_C_FLAGS} ${${CMAKE_C_COMPILER_ID}_C_FLAGS} ${${CMAKE_CXX_COMPILER_ID}_CXX_FLAGS} ${${CMAKE_C_COMPILER_ID}_C_FLAGS}) -target_compile_options(lkt PRIVATE ${COMMON_C_FLAGS} ${${CMAKE_C_COMPILER_ID}_C_FLAGS} ${${CMAKE_CXX_COMPILER_ID}_CXX_FLAGS} ${${CMAKE_C_COMPILER_ID}_C_FLAGS}) +target_compile_options(lektord PRIVATE + ${COMMON_C_FLAGS} + ${${CMAKE_C_COMPILER_ID}_C_FLAGS} + ${${CMAKE_CXX_COMPILER_ID}_CXX_FLAGS} + ${${CMAKE_C_COMPILER_ID}_${CMAKE_C_COMPILER_ID}_C_FLAGS} +) +target_compile_options(lkt PRIVATE + ${COMMON_C_FLAGS} + ${${CMAKE_C_COMPILER_ID}_C_FLAGS} + ${${CMAKE_CXX_COMPILER_ID}_CXX_FLAGS} + ${${CMAKE_C_COMPILER_ID}_${CMAKE_C_COMPILER_ID}_C_FLAGS} +) set_property(TARGET lektord PROPERTY CXX_STANDARD 20)