mirror of
https://github.com/labwc/labwc.git
synced 2026-03-02 01:40:24 -05:00
CI: add address sanitizer to Debian runtime tests
This commit is contained in:
parent
918e64bb0b
commit
af3054394e
3 changed files with 35 additions and 6 deletions
34
.github/workflows/build.yml
vendored
34
.github/workflows/build.yml
vendored
|
|
@ -186,9 +186,9 @@ jobs:
|
||||||
echo '
|
echo '
|
||||||
cd "$GITHUB_WORKSPACE"
|
cd "$GITHUB_WORKSPACE"
|
||||||
export CC=gcc
|
export CC=gcc
|
||||||
meson setup build-gcc-ci -Dxwayland=enabled -Db_sanitize=undefined --werror
|
meson setup build-gcc-gdb -Dxwayland=enabled -Db_sanitize=undefined --werror
|
||||||
meson compile -C build-gcc-ci
|
meson compile -C build-gcc-gdb
|
||||||
scripts/ci/smoke-test.sh build-gcc-ci
|
scripts/ci/smoke-test.sh build-gcc-gdb
|
||||||
' | $TARGET
|
' | $TARGET
|
||||||
|
|
||||||
- name: Build with clang - runtime test
|
- name: Build with clang - runtime test
|
||||||
|
|
@ -197,9 +197,31 @@ jobs:
|
||||||
echo '
|
echo '
|
||||||
cd "$GITHUB_WORKSPACE"
|
cd "$GITHUB_WORKSPACE"
|
||||||
export CC=clang
|
export CC=clang
|
||||||
meson setup build-clang-ci -Dxwayland=enabled -Db_sanitize=undefined --werror
|
meson setup build-clang-gdb -Dxwayland=enabled -Db_sanitize=undefined --werror
|
||||||
meson compile -C build-clang-ci
|
meson compile -C build-clang-gdb
|
||||||
scripts/ci/smoke-test.sh build-clang-ci
|
scripts/ci/smoke-test.sh build-clang-gdb
|
||||||
|
' | $TARGET
|
||||||
|
|
||||||
|
- name: Build with gcc - runtime leak test
|
||||||
|
if: matrix.name == 'Debian'
|
||||||
|
run: |
|
||||||
|
echo '
|
||||||
|
cd "$GITHUB_WORKSPACE"
|
||||||
|
export CC=gcc
|
||||||
|
meson setup build-gcc-leak -Dxwayland=enabled -Db_sanitize=address,undefined --werror
|
||||||
|
meson compile -C build-gcc-leak
|
||||||
|
LABWC_LEAK_TEST=1 scripts/ci/smoke-test.sh build-gcc-leak
|
||||||
|
' | $TARGET
|
||||||
|
|
||||||
|
- name: Build with clang - runtime leak test
|
||||||
|
if: matrix.name == 'Debian'
|
||||||
|
run: |
|
||||||
|
echo '
|
||||||
|
cd "$GITHUB_WORKSPACE"
|
||||||
|
export CC=clang
|
||||||
|
meson setup build-clang-leak -Dxwayland=enabled -Db_sanitize=address,undefined --werror
|
||||||
|
meson compile -C build-clang-leak
|
||||||
|
LABWC_LEAK_TEST=1 scripts/ci/smoke-test.sh build-clang-leak
|
||||||
' | $TARGET
|
' | $TARGET
|
||||||
|
|
||||||
# Void-musl doesn't support sanitizer
|
# Void-musl doesn't support sanitizer
|
||||||
|
|
|
||||||
1
scripts/asan_leak_suppressions
Normal file
1
scripts/asan_leak_suppressions
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
leak:libfontconfig.so
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
: ${LABWC_RUNS:=1}
|
: ${LABWC_RUNS:=1}
|
||||||
|
: ${LABWC_LEAK_TEST:=0}
|
||||||
|
|
||||||
if ! test -x "$1/labwc"; then
|
if ! test -x "$1/labwc"; then
|
||||||
echo "$1/labwc not found"
|
echo "$1/labwc not found"
|
||||||
|
|
@ -44,6 +45,11 @@ gdb_run() {
|
||||||
|
|
||||||
echo "Running with LABWC_RUNS=$LABWC_RUNS"
|
echo "Running with LABWC_RUNS=$LABWC_RUNS"
|
||||||
|
|
||||||
|
if test "$LABWC_LEAK_TEST" != "0"; then
|
||||||
|
LSAN_OPTIONS=suppressions=scripts/asan_leak_suppressions "${args[@]}"
|
||||||
|
exit $?
|
||||||
|
fi
|
||||||
|
|
||||||
ret=0
|
ret=0
|
||||||
for((i=1; i<=LABWC_RUNS; i++)); do
|
for((i=1; i<=LABWC_RUNS; i++)); do
|
||||||
printf "Starting run %2s\n" $i
|
printf "Starting run %2s\n" $i
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue