aboutsummaryrefslogtreecommitdiffhomepage
path: root/.github/workflows/ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/ci.yml')
-rw-r--r--.github/workflows/ci.yml13
1 files changed, 9 insertions, 4 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index aeecd9a..9a289f3 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -7,9 +7,7 @@ jobs:
strategy:
matrix:
os: [ubuntu-20.04, ubuntu-22.04]
- # Enable Adress Sanitizer only on Clang.
- # This will improve the test suite quality, even without Valgrind.
- compiler: ['CC=gcc CXX=g++', '--disable-malloc-replacement CC=clang CXX=clang++ CFLAGS="-fsanitize=address -fno-omit-frame-pointer" CXXFLAGS="-fsanitize=address -fno-omit-frame-pointer"']
+ compiler: ['CC=gcc CXX=g++', 'CC=clang CXX=clang++']
interface: [ncurses, gtk]
# NOTE: The virtual environments already contain both GCC and Clang
@@ -33,10 +31,17 @@ jobs:
groff doxygen
- name: Configure Build
+ env:
+ # Enable Adress Sanitizer only on ncurses.
+ # Gtk produces a lot of false negatives.
+ # This will improve the test suite quality, even without Valgrind.
+ CFLAGS: ${{ matrix.interface == 'ncurses' && '-fsanitize=address -fno-omit-frame-pointer' }}
+ CXXFLAGS: ${{ matrix.interface == 'ncurses' && '-fsanitize=address -fno-omit-frame-pointer' }}
+ MALLOC_REPLACEMENT: ${{ matrix.interface == 'ncurses' && 'no' || 'check' }}
run: |
autoreconf -i
./configure --with-interface=${{ matrix.interface }} --enable-debug --enable-html-manual \
- ${{ matrix.compiler }}
+ --enable-malloc-replacement=$MALLOC_REPLACEMENT ${{ matrix.compiler }}
# NOTE: xvfb-run emulates an XServer and is required when building
# Gtk versions (since SciTECO calls itself during the build).