summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorDana Robinson <43805+derobins@users.noreply.github.com>2022-06-30 22:38:18 (GMT)
committerGitHub <noreply@github.com>2022-06-30 22:38:18 (GMT)
commit41526f68f3482f2b3a7aa581288bc86e9c6dcb43 (patch)
treef71c11d0d03557b82e0f7132c0b50c0901564c8a /.github
parent015240e790c8cee1a34c7e201cc68701e8e46120 (diff)
downloadhdf5-41526f68f3482f2b3a7aa581288bc86e9c6dcb43.zip
hdf5-41526f68f3482f2b3a7aa581288bc86e9c6dcb43.tar.gz
hdf5-41526f68f3482f2b3a7aa581288bc86e9c6dcb43.tar.bz2
Adds a -Werror debug Autotools test and updates build modes (#1833)
* Adds a -Werror debug Autotools test and updates build modes * Un-excludes the workflow files * Strip out -Werror from CFLAGS when running configure tests This causes spurious test failures when the configuration test programs raise warnings.
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/main.yml29
-rw-r--r--.github/workflows/pr-check.yml29
2 files changed, 54 insertions, 4 deletions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index c99aba9..6fe8f0c 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -21,7 +21,7 @@ jobs:
strategy:
# fail-fast: false
matrix:
- name: ["Windows Latest MSVC", "Ubuntu Latest GCC", "Ubuntu Debug GCC", "macOS Latest Clang", "Ubuntu Autotools GCC", "Ubuntu Debug Autotools GCC", "Windows TS MSVC", "Ubuntu TS GCC", "TS Debug GCC", "macOS TS Clang", "TS Autotools GCC"]
+ name: ["Windows Latest MSVC", "Ubuntu Latest GCC", "Ubuntu Debug GCC", "macOS Latest Clang", "Ubuntu Autotools GCC", "Ubuntu Debug Autotools GCC", "-Werror Ubuntu Debug Autotools GCC", "Windows TS MSVC", "Ubuntu TS GCC", "TS Debug GCC", "macOS TS Clang", "TS Autotools GCC"]
include:
- name: "Windows Latest MSVC"
artifact: "Windows-MSVC.tar.xz"
@@ -35,6 +35,7 @@ jobs:
hl: ON
parallel: OFF
generator: "-G \"Visual Studio 17 2022\" -A x64"
+ flags: ""
- name: "Ubuntu Latest GCC"
artifact: "Linux.tar.xz"
os: ubuntu-latest
@@ -47,6 +48,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "macOS Latest Clang"
artifact: "macOS.tar.xz"
os: macos-latest
@@ -59,6 +61,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/clang.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "Ubuntu Debug GCC"
artifact: "LinuxDBG.tar.xz"
os: ubuntu-latest
@@ -71,6 +74,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "Ubuntu Autotools GCC"
artifact: "LinuxA.tar.xz"
os: ubuntu-latest
@@ -83,6 +87,7 @@ jobs:
parallel: disable
toolchain: ""
generator: "autogen"
+ flags: ""
- name: "Ubuntu Debug Autotools GCC"
artifact: "LinuxA.tar.xz"
os: ubuntu-latest
@@ -95,6 +100,21 @@ jobs:
parallel: disable
toolchain: ""
generator: "autogen"
+ flags: ""
+ # Build that ensures no new warnings sneak into the library.
+ - name: "-Werror Ubuntu Debug Autotools GCC"
+ artifact: "LinuxA.tar.xz"
+ os: ubuntu-latest
+ build_type: "debug"
+ cpp: disable
+ fortran: disable
+ java: disable
+ ts: disable
+ hl: enable
+ parallel: disable
+ toolchain: ""
+ generator: "autogen"
+ flags: "CFLAGS=-Werror"
# Threadsafe runs
- name: "Windows TS MSVC"
artifact: "Windows-MSVCTS.tar.xz"
@@ -108,6 +128,7 @@ jobs:
hl: OFF
parallel: OFF
generator: "-G \"Visual Studio 16 2019\" -A x64"
+ flags: ""
- name: "Ubuntu TS GCC"
artifact: "LinuxTS.tar.xz"
os: ubuntu-latest
@@ -120,6 +141,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "macOS TS Clang"
artifact: "macOSTS.tar.xz"
os: macos-latest
@@ -132,6 +154,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/clang.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "TS Debug GCC"
artifact: "LinuxTSDBG.tar.xz"
os: ubuntu-latest
@@ -144,6 +167,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "TS Autotools GCC"
artifact: "LinuxATS.tar.xz"
os: ubuntu-latest
@@ -156,6 +180,7 @@ jobs:
parallel: disable
toolchain: ""
generator: "autogen"
+ flags: ""
name: ${{ matrix.name }}
# The type of runner that the job will run on
@@ -197,7 +222,7 @@ jobs:
sh ./autogen.sh
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
- $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_type }} --enable-shared --${{ matrix.ts }}-threadsafe --${{ matrix.hl }}-hl --${{ matrix.parallel }}-parallel --${{ matrix.cpp }}-cxx --${{ matrix.fortran }}-fortran --${{ matrix.java }}-java
+ ${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_type }} --enable-shared --${{ matrix.ts }}-threadsafe --${{ matrix.hl }}-hl --${{ matrix.parallel }}-parallel --${{ matrix.cpp }}-cxx --${{ matrix.fortran }}-fortran --${{ matrix.java }}-java
shell: bash
env:
CC: gcc-11
diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml
index eab08cd..6b409f9 100644
--- a/.github/workflows/pr-check.yml
+++ b/.github/workflows/pr-check.yml
@@ -20,7 +20,7 @@ jobs:
strategy:
# fail-fast: false
matrix:
- name: ["Windows Latest MSVC", "Ubuntu Latest GCC", "Ubuntu Debug GCC", "macOS Latest Clang", "Ubuntu Autotools GCC", "Ubuntu Debug Autotools GCC", "Windows TS MSVC", "Ubuntu TS GCC", "TS Debug GCC", "macOS TS Clang", "TS Autotools GCC"]
+ name: ["Windows Latest MSVC", "Ubuntu Latest GCC", "Ubuntu Debug GCC", "macOS Latest Clang", "Ubuntu Autotools GCC", "Ubuntu Debug Autotools GCC", "-Werror Ubuntu Debug Autotools GCC", "Windows TS MSVC", "Ubuntu TS GCC", "TS Debug GCC", "macOS TS Clang", "TS Autotools GCC"]
include:
- name: "Windows Latest MSVC"
artifact: "Windows-MSVC.tar.xz"
@@ -34,6 +34,7 @@ jobs:
hl: ON
parallel: OFF
generator: "-G \"Visual Studio 17 2022\" -A x64"
+ flags: ""
- name: "Ubuntu Latest GCC"
artifact: "Linux.tar.xz"
os: ubuntu-latest
@@ -46,6 +47,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "macOS Latest Clang"
artifact: "macOS.tar.xz"
os: macos-latest
@@ -58,6 +60,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/clang.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "Ubuntu Debug GCC"
artifact: "LinuxDBG.tar.xz"
os: ubuntu-latest
@@ -70,6 +73,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "Ubuntu Autotools GCC"
artifact: "LinuxA.tar.xz"
os: ubuntu-latest
@@ -82,6 +86,7 @@ jobs:
parallel: disable
toolchain: ""
generator: "autogen"
+ flags: ""
- name: "Ubuntu Debug Autotools GCC"
artifact: "LinuxA.tar.xz"
os: ubuntu-latest
@@ -94,6 +99,21 @@ jobs:
parallel: disable
toolchain: ""
generator: "autogen"
+ flags: ""
+ # Build that ensures no new warnings sneak into the library.
+ - name: "-Werror Ubuntu Debug Autotools GCC"
+ artifact: "LinuxDBG.tar.xz"
+ os: ubuntu-latest
+ build_type: "debug"
+ cpp: disable
+ fortran: disable
+ java: disable
+ ts: disable
+ hl: enable
+ parallel: disable
+ toolchain: ""
+ generator: "autogen"
+ flags: "CFLAGS=-Werror"
# Threadsafe runs
- name: "Windows TS MSVC"
artifact: "Windows-MSVCTS.tar.xz"
@@ -107,6 +127,7 @@ jobs:
hl: OFF
parallel: OFF
generator: "-G \"Visual Studio 16 2019\" -A x64"
+ flags: ""
- name: "Ubuntu TS GCC"
artifact: "LinuxTS.tar.xz"
os: ubuntu-latest
@@ -119,6 +140,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "macOS TS Clang"
artifact: "macOSTS.tar.xz"
os: macos-latest
@@ -131,6 +153,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/clang.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "TS Debug GCC"
artifact: "LinuxTSDBG.tar.xz"
os: ubuntu-latest
@@ -143,6 +166,7 @@ jobs:
parallel: OFF
toolchain: "config/toolchain/GCC.cmake"
generator: "-G Ninja"
+ flags: ""
- name: "TS Autotools GCC"
artifact: "LinuxATS.tar.xz"
os: ubuntu-latest
@@ -155,6 +179,7 @@ jobs:
parallel: disable
toolchain: ""
generator: "autogen"
+ flags: ""
name: ${{ matrix.name }}
# The type of runner that the job will run on
@@ -196,7 +221,7 @@ jobs:
sh ./autogen.sh
mkdir "${{ runner.workspace }}/build"
cd "${{ runner.workspace }}/build"
- $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_type }} --enable-shared --${{ matrix.ts }}-threadsafe --${{ matrix.hl }}-hl --${{ matrix.parallel }}-parallel --${{ matrix.cpp }}-cxx --${{ matrix.fortran }}-fortran --${{ matrix.java }}-java
+ ${{ matrix.flags }} $GITHUB_WORKSPACE/configure --enable-build-mode=${{ matrix.build_type }} --enable-shared --${{ matrix.ts }}-threadsafe --${{ matrix.hl }}-hl --${{ matrix.parallel }}-parallel --${{ matrix.cpp }}-cxx --${{ matrix.fortran }}-fortran --${{ matrix.java }}-java
shell: bash
env:
CC: gcc-11