Commit bcb7e92d by Edward Thomson Committed by GitHub

Merge pull request #4279 from pks-t/pks/error-builds

-Werror builds for Travis
parents 0a93ded1 414a3384
...@@ -18,8 +18,8 @@ env: ...@@ -18,8 +18,8 @@ env:
- secure: "YnhS+8n6B+uoyaYfaJ3Lei7cSJqHDPiKJCKFIF2c87YDfmCvAJke8QtE7IzjYDs7UFkTCM4ox+ph2bERUrxZbSCyEkHdjIZpKuMJfYWja/jgMqTMxdyOH9y8JLFbZsSXDIXDwqBlC6vVyl1fP90M35wuWcNTs6tctfVWVofEFbs=" - secure: "YnhS+8n6B+uoyaYfaJ3Lei7cSJqHDPiKJCKFIF2c87YDfmCvAJke8QtE7IzjYDs7UFkTCM4ox+ph2bERUrxZbSCyEkHdjIZpKuMJfYWja/jgMqTMxdyOH9y8JLFbZsSXDIXDwqBlC6vVyl1fP90M35wuWcNTs6tctfVWVofEFbs="
- GITTEST_INVASIVE_FS_SIZE=1 - GITTEST_INVASIVE_FS_SIZE=1
matrix: matrix:
- OPTIONS="-DTHREADSAFE=ON -DCMAKE_BUILD_TYPE=Release" - OPTIONS="-DTHREADSAFE=ON -DCMAKE_BUILD_TYPE=Release -DENABLE_WERROR=ON"
- OPTIONS="-DTHREADSAFE=OFF -DBUILD_EXAMPLES=ON" - OPTIONS="-DTHREADSAFE=OFF -DBUILD_EXAMPLES=ON -DENABLE_WERROR=ON"
dist: trusty dist: trusty
sudo: true sudo: true
......
...@@ -49,6 +49,7 @@ OPTION( VALGRIND "Configure build for valgrind" OFF ) ...@@ -49,6 +49,7 @@ OPTION( VALGRIND "Configure build for valgrind" OFF )
OPTION( CURL "Use curl for HTTP if available" ON) OPTION( CURL "Use curl for HTTP if available" ON)
OPTION( USE_EXT_HTTP_PARSER "Use system HTTP_Parser if available" ON) OPTION( USE_EXT_HTTP_PARSER "Use system HTTP_Parser if available" ON)
OPTION( DEBUG_POOL "Enable debug pool allocator" OFF ) OPTION( DEBUG_POOL "Enable debug pool allocator" OFF )
OPTION( ENABLE_WERROR "Enable compilation with -Werror" OFF )
IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") IF(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
SET( USE_ICONV ON ) SET( USE_ICONV ON )
...@@ -223,8 +224,23 @@ IF (MSVC) ...@@ -223,8 +224,23 @@ IF (MSVC)
ELSE () ELSE ()
SET(CMAKE_C_FLAGS "-D_GNU_SOURCE ${CMAKE_C_FLAGS}") SET(CMAKE_C_FLAGS "-D_GNU_SOURCE ${CMAKE_C_FLAGS}")
ADD_C_FLAG_IF_SUPPORTED(-Wall) MACRO(ENABLE_WARNINGS flag)
ADD_C_FLAG_IF_SUPPORTED(-Wextra) IF(ENABLE_WERROR)
ADD_C_FLAG_IF_SUPPORTED(-Werror=${flag})
ELSE()
ADD_C_FLAG_IF_SUPPORTED(-W${flag})
ENDIF()
ENDMACRO()
MACRO(DISABLE_WARNINGS flag)
ADD_C_FLAG_IF_SUPPORTED(-Wno-${flag})
IF(ENABLE_WERROR)
ADD_C_FLAG_IF_SUPPORTED(-Wno-error=${flag})
ENDIF()
ENDMACRO()
ENABLE_WARNINGS(all)
ENABLE_WARNINGS(extra)
IF (CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)") IF (CMAKE_SYSTEM_NAME MATCHES "(Solaris|SunOS)")
SET(CMAKE_C_FLAGS "-std=c99 -D_POSIX_C_SOURCE=200112L -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS ${CMAKE_C_FLAGS}") SET(CMAKE_C_FLAGS "-std=c99 -D_POSIX_C_SOURCE=200112L -D__EXTENSIONS__ -D_POSIX_PTHREAD_SEMANTICS ${CMAKE_C_FLAGS}")
...@@ -247,16 +263,16 @@ ELSE () ...@@ -247,16 +263,16 @@ ELSE ()
ADD_DEFINITIONS(-D__USE_MINGW_ANSI_STDIO=1) ADD_DEFINITIONS(-D__USE_MINGW_ANSI_STDIO=1)
ENDIF () ENDIF ()
ADD_C_FLAG_IF_SUPPORTED(-Wdocumentation) ENABLE_WARNINGS(documentation)
ADD_C_FLAG_IF_SUPPORTED(-Wno-missing-field-initializers) DISABLE_WARNINGS(missing-field-initializers)
ADD_C_FLAG_IF_SUPPORTED(-Wstrict-aliasing=2) ENABLE_WARNINGS(strict-aliasing=2)
ADD_C_FLAG_IF_SUPPORTED(-Wstrict-prototypes) ENABLE_WARNINGS(strict-prototypes)
ADD_C_FLAG_IF_SUPPORTED(-Wdeclaration-after-statement) ENABLE_WARNINGS(declaration-after-statement)
ADD_C_FLAG_IF_SUPPORTED(-Wno-unused-const-variable) DISABLE_WARNINGS(unused-const-variable)
ADD_C_FLAG_IF_SUPPORTED(-Wno-unused-function) DISABLE_WARNINGS(unused-function)
IF (APPLE) # Apple deprecated OpenSSL IF (APPLE) # Apple deprecated OpenSSL
ADD_C_FLAG_IF_SUPPORTED(-Wno-deprecated-declarations) DISABLE_WARNINGS(deprecated-declarations)
ENDIF() ENDIF()
IF (PROFILE) IF (PROFILE)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment