1313 CFLAGS_GCC_STYLE : ' -Wall -Wextra -pedantic -Wdeclaration-after-statement -Wshadow -Wno-overlength-strings'
1414 CFLAGS_MSVC : ' /W3'
1515 CFLAGS_SOLARIS_CC : ' -errtags=yes -erroff=E_STATEMENT_NOT_REACHED'
16+ CMAKE_FLAGS : ' -Wdev -Werror=dev -Wdeprecated -Werror=deprecated --warn-uninitialized'
1617
1718jobs :
1819 linux :
@@ -106,7 +107,7 @@ jobs:
106107 submodules : true
107108
108109 - name : Configure
109- run : cmake -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DPCRE2_SUPPORT_LIBZ=ON -DPCRE2_SUPPORT_LIBBZ2=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DCMAKE_OSX_ARCHITECTURES='arm64;x86_64' -DCMAKE_C_FLAGS="$CFLAGS_GCC_STYLE" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_BUILD_TYPE=Release -B build
110+ run : cmake $CMAKE_FLAGS -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DPCRE2_SUPPORT_LIBZ=ON -DPCRE2_SUPPORT_LIBBZ2=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DCMAKE_OSX_ARCHITECTURES='arm64;x86_64' -DCMAKE_C_FLAGS="$CFLAGS_GCC_STYLE" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_BUILD_TYPE=Release -B build
110111
111112 - name : Build
112113 run : cd build && make -j3
@@ -129,7 +130,7 @@ jobs:
129130 for useStaticLibs in ON OFF; do
130131 echo "== Testing CMake install interface with PCRE2_USE_STATIC_LIBS=$useStaticLibs =="
131132 rm -rf build
132- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$INSTALL_PREFIX" -DPCRE2_USE_STATIC_LIBS=$useStaticLibs -B build
133+ cmake $CMAKE_FLAGS -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="$INSTALL_PREFIX" -DPCRE2_USE_STATIC_LIBS=$useStaticLibs -B build
133134 (cd build; make)
134135 ./build/test_executable
135136 otool -L ./build/test_executable
@@ -153,7 +154,7 @@ jobs:
153154 shared=`echo $buildLibs | cut -d';' -f2`
154155 echo "== Testing CMake build interface with BUILD_STATIC_LIBS=$static and BUILD_SHARED_LIBS=$shared =="
155156 rm -rf build
156- cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_STATIC_LIBS=$static -DBUILD_SHARED_LIBS=$shared -B build
157+ cmake $CMAKE_FLAGS -DCMAKE_BUILD_TYPE=Debug -DBUILD_STATIC_LIBS=$static -DBUILD_SHARED_LIBS=$shared -B build
157158 (cd build; make)
158159 ./build/test_executable
159160 otool -L ./build/test_executable
@@ -194,7 +195,7 @@ jobs:
194195 - name : Configure
195196 run : |
196197 echo "PATH=$env:PATH"
197- cmake -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DCMAKE_C_FLAGS="$CFLAGS_MSVC" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -B build -A ${{ matrix.arch }}
198+ cmake $CMAKE_FLAGS -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DCMAKE_C_FLAGS="$CFLAGS_MSVC" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -B build -A ${{ matrix.arch }}
198199
199200 - name : Build
200201 run : cmake --build build --config Release
@@ -220,7 +221,7 @@ jobs:
220221 foreach ($useStaticLibs in @("ON", "OFF")) {
221222 echo "== Testing CMake install interface with PCRE2_USE_STATIC_LIBS=$useStaticLibs =="
222223 if (Test-Path build) { rm -Recurse -Force build }
223- cmake "-DCMAKE_PREFIX_PATH=$INSTALL_PREFIX" "-DPCRE2_USE_STATIC_LIBS=$useStaticLibs" -B build -A ${{ matrix.arch }}
224+ cmake $CMAKE_FLAGS "-DCMAKE_PREFIX_PATH=$INSTALL_PREFIX" "-DPCRE2_USE_STATIC_LIBS=$useStaticLibs" -B build -A ${{ matrix.arch }}
224225 cmake --build build --config Release
225226 ./build/Release/test_executable.exe
226227 & $dumpbin /dependents ./build/Release/test_executable.exe
@@ -251,7 +252,7 @@ jobs:
251252 foreach ($buildLibs in @(@{static="ON"; shared="OFF"}, @{static="OFF"; shared="ON"})) {
252253 echo "== Testing CMake build interface with BUILD_STATIC_LIBS=$($buildLibs.static) =="
253254 if (Test-Path build) { rm -Recurse -Force build }
254- cmake "-DBUILD_STATIC_LIBS=$($buildLibs.static)" "-DBUILD_SHARED_LIBS=$($buildLibs.shared)" -B build -A ${{ matrix.arch }}
255+ cmake $CMAKE_FLAGS "-DBUILD_STATIC_LIBS=$($buildLibs.static)" "-DBUILD_SHARED_LIBS=$($buildLibs.shared)" -B build -A ${{ matrix.arch }}
255256 cmake --build build --config Debug
256257 ./build/Debug/test_executable.exe
257258 & $dumpbin /dependents ./build/Debug/test_executable.exe
@@ -285,7 +286,7 @@ jobs:
285286 - name : Build & test
286287 uses : vmactions/freebsd-vm@c3ae29a132c8ef1924775414107a97cac042aad5 # v1.2.0
287288 with :
288- envs : ' CFLAGS_GCC_STYLE'
289+ envs : ' CFLAGS_GCC_STYLE CMAKE_FLAGS '
289290 usesh : true
290291 prepare : |
291292 pkg install -y cmake
@@ -310,7 +311,7 @@ jobs:
310311 echo "== CMake =="
311312 cd ../build-cmake
312313
313- cmake -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DPCRE2_DEBUG=ON -DCMAKE_C_FLAGS="$CFLAGS_GCC_STYLE" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_BUILD_TYPE=Release -B build
314+ cmake $CMAKE_FLAGS -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DPCRE2_DEBUG=ON -DCMAKE_C_FLAGS="$CFLAGS_GCC_STYLE" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_BUILD_TYPE=Release -B build
314315 cd build
315316 make -j3
316317 ctest -j3 --output-on-failure
@@ -342,7 +343,7 @@ jobs:
342343 - name : Build & test
343344 uses : vmactions/solaris-vm@cc8f82fa1a7cc746153ec3f71bf11f311f16e225 # v1.1.1
344345 with :
345- envs : ' CFLAGS_SOLARIS_CC'
346+ envs : ' CFLAGS_SOLARIS_CC CMAKE_FLAGS '
346347 usesh : true
347348 # Seriously! Solaris is the only OS to actually ship without a C
348349 # compiler, and not even to provide a simple download to get one!
@@ -392,7 +393,7 @@ jobs:
392393 echo "== CMake, 64-bit =="
393394 cd ../build-cmake-64
394395
395- CC="cc -m64" cmake -DNCURSES_LIBRARY=termcap -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DPCRE2_DEBUG=ON -DCMAKE_C_FLAGS="$CFLAGS_SOLARIS_CC" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_BUILD_TYPE=Release -B build
396+ CC="cc -m64" cmake $CMAKE_FLAGS -DNCURSES_LIBRARY=termcap -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON -DPCRE2_DEBUG=ON -DCMAKE_C_FLAGS="$CFLAGS_SOLARIS_CC" -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -DCMAKE_BUILD_TYPE=Release -B build
396397 cd build
397398 make
398399 ctest -j3 --output-on-failure
@@ -520,7 +521,7 @@ jobs:
520521 submodules : true
521522
522523 - name : Configure
523- run : CC="clang -fprofile-instr-generate -fcoverage-mapping" cmake -DCMAKE_BUILD_TYPE=Debug -DPCRE2_DEBUG=OFF -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DPCRE2_SUPPORT_LIBZ=ON -DPCRE2_SUPPORT_LIBBZ2=ON -DPCRE2_SUPPORT_LIBEDIT=ON -DPCRE2_SUPPORT_LIBREADLINE=OFF -B build
524+ run : CC="clang -fprofile-instr-generate -fcoverage-mapping" cmake $CMAKE_FLAGS -DCMAKE_BUILD_TYPE=Debug -DPCRE2_DEBUG=OFF -DPCRE2_SUPPORT_JIT=ON -DPCRE2_BUILD_PCRE2_16=ON -DPCRE2_BUILD_PCRE2_32=ON -DPCRE2_SUPPORT_LIBZ=ON -DPCRE2_SUPPORT_LIBBZ2=ON -DPCRE2_SUPPORT_LIBEDIT=ON -DPCRE2_SUPPORT_LIBREADLINE=OFF -B build
524525
525526 - name : Build
526527 run : cd build && make -j3
0 commit comments