From 7b53739128fe99b170011ab8c2733b7f56d93116 Mon Sep 17 00:00:00 2001 From: Christophe Date: Tue, 6 Feb 2024 16:06:52 +0100 Subject: [PATCH] Only enable compiler warnings and warnings as error on unit tests --- CMakeLists.txt | 43 ------------------------------------------- readme.md | 3 +++ test/CMakeLists.txt | 41 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+), 43 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 217b76bf..03417722 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -244,49 +244,6 @@ elseif(GLM_ENABLE_SIMD_SSE2) message(STATUS "GLM: SSE2 instruction set") endif() -# Compiler and default options - -if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") - if(NOT GLM_QUIET) - message("GLM: Clang - ${CMAKE_CXX_COMPILER_ID} compiler") - endif() - - if(NOT GLM_DISABLE_AUTO_DETECTION) - add_compile_options(-Werror -Weverything) - endif() -# add_compile_options(-Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-c++11-long-long -Wno-padded -Wno-gnu-anonymous-struct -Wno-nested-anon-types) -# add_compile_options(-Wno-undefined-reinterpret-cast -Wno-sign-conversion -Wno-unused-variable -Wno-missing-prototypes -Wno-unreachable-code -Wno-missing-variable-declarations -Wno-sign-compare -Wno-global-constructors -Wno-unused-macros -Wno-format-nonliteral -Wno-float-equal) - -elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU") - if(NOT GLM_QUIET) - message("GLM: GCC - ${CMAKE_CXX_COMPILER_ID} compiler") - endif() - - if(NOT GLM_DISABLE_AUTO_DETECTION) - add_compile_options(-Werror) -# add_compile_options(-Wpedantic) -# add_compile_options(-Wall) -# add_compile_options(-Wextra) - endif() - add_compile_options(-O2) - #add_compile_options(-Wno-long-long) -elseif(CMAKE_CXX_COMPILER_ID MATCHES "Intel") - if(NOT GLM_QUIET) - message("GLM: Intel - ${CMAKE_CXX_COMPILER_ID} compiler") - endif() - -elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC") - if(NOT GLM_QUIET) - message("GLM: Visual C++ - ${CMAKE_CXX_COMPILER_ID} compiler") - endif() - - if(NOT GLM_DISABLE_AUTO_DETECTION) - add_compile_options(/W4 /WX) - endif() -# add_compile_options(/wd4309 /wd4324 /wd4389 /wd4127 /wd4267 /wd4146 /wd4201 /wd4464 /wd4514 /wd4701 /wd4820 /wd4365) - add_definitions(-D_CRT_SECURE_NO_WARNINGS) -endif() - add_subdirectory(glm) if (GLM_BUILD_TESTS) diff --git a/readme.md b/readme.md index 0f38fc6d..3f17512b 100644 --- a/readme.md +++ b/readme.md @@ -107,6 +107,9 @@ target_link_libraries(main PRIVATE glm::glm) ### [GLM 1.0.1](https://github.com/g-truc/glm) - 2024-XX-XX +#### Improvements: +- Enables only warnings as errors while building unit tests + #### Fixes: - Fixed C++ language auto detection build, disable C++98 warnings with Clang #1235, #1231 - Fixed `GTX_color_space` missing include #1233 #1238 diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index abfa3345..9272c591 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -3,6 +3,47 @@ option(GLM_QUIET "No CMake Message" OFF) option(GLM_TEST_ENABLE "Build unit tests" ON) option(GLM_PERF_TEST_ENABLE "Build perf tests" OFF) +# Compiler and default options + +if(CMAKE_CXX_COMPILER_ID MATCHES "Clang") + if(NOT GLM_QUIET) + message("GLM: Clang - ${CMAKE_CXX_COMPILER_ID} compiler") + endif() + + if(NOT GLM_DISABLE_AUTO_DETECTION) + add_compile_options(-Werror -Weverything) + endif() + +elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU") + if(NOT GLM_QUIET) + message("GLM: GCC - ${CMAKE_CXX_COMPILER_ID} compiler") + endif() + + if(NOT GLM_DISABLE_AUTO_DETECTION) + add_compile_options(-Werror) +# add_compile_options(-Wpedantic) +# add_compile_options(-Wall) +# add_compile_options(-Wextra) + endif() + add_compile_options(-O2) + #add_compile_options(-Wno-long-long) +elseif(CMAKE_CXX_COMPILER_ID MATCHES "Intel") + if(NOT GLM_QUIET) + message("GLM: Intel - ${CMAKE_CXX_COMPILER_ID} compiler") + endif() + +elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC") + if(NOT GLM_QUIET) + message("GLM: Visual C++ - ${CMAKE_CXX_COMPILER_ID} compiler") + endif() + + if(NOT GLM_DISABLE_AUTO_DETECTION) + add_compile_options(/W4 /WX) + endif() +# add_compile_options(/wd4309 /wd4324 /wd4389 /wd4127 /wd4267 /wd4146 /wd4201 /wd4464 /wd4514 /wd4701 /wd4820 /wd4365) + add_definitions(-D_CRT_SECURE_NO_WARNINGS) +endif() + function(glmCreateTestGTC NAME) set(SAMPLE_NAME test-${NAME}) add_executable(${SAMPLE_NAME} ${NAME}.cpp)