]> granicus.if.org Git - libexpat/commitdiff
CMake option to treat warnings as errors
authorvanklompf <fkorta@gmail.com>
Mon, 4 Dec 2017 22:31:10 +0000 (23:31 +0100)
committervanklompf <fkorta@gmail.com>
Mon, 4 Dec 2017 22:31:10 +0000 (23:31 +0100)
appveyor.yml
expat/CMakeLists.txt

index 7a5f3e37155bb8de3a2eabb60ef1a0e7c1a3b79f..f52e7871d40e506869d7b0845c3da18ffe19735d 100644 (file)
@@ -164,7 +164,7 @@ environment:
 before_build:
   - echo Running cmake...
   - cd c:\projects\libexpat
-  - cmake -G"%GENERATOR%" expat
+  - cmake -DWARNINGS_AS_ERRORS=ON -G"%GENERATOR%" expat
 
 build:
   parallel: true                  # enable MSBuild parallel builds
index 504d087a18aca006e3a0f7d3c5e6ad68c2f84b2d..43a2e12d4070c2ad2cc93041e75db8bfb9335ec7 100644 (file)
@@ -47,6 +47,7 @@ endif()
 set(XML_CONTEXT_BYTES 1024 CACHE STRING "Define to specify how much context to retain around the current parse point")\r
 option(XML_DTD "Define to make parameter entity parsing functionality available" ON)\r
 option(XML_NS "Define to make XML Namespaces functionality available" ON)\r
+option(WARNINGS_AS_ERRORS "Treat all compiler warnings as errors" OFF)\r
 if(NOT WIN32)\r
     option(XML_DEV_URANDOM "Define to include code reading entropy from `/dev/urandom'." ON)\r
     if(XML_DEV_URANDOM)\r
@@ -75,6 +76,13 @@ set(EXTRA_COMPILE_FLAGS)
 if(FLAG_NO_STRICT_ALIASING)\r
     set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -fno-strict-aliasing")\r
 endif()\r
+if (WARNINGS_AS_ERRORS)\r
+    if(MSVC)\r
+        add_definitions(/WX)\r
+    else(MSVC)\r
+        set(EXTRA_COMPILE_FLAGS "${EXTRA_COMPILE_FLAGS} -Werror")\r
+    endif(MSVC)\r
+endif(WARNINGS_AS_ERRORS)\r
 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_COMPILE_FLAGS}")\r
 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_COMPILE_FLAGS}")\r
 \r