CI/msys2-mingw32: Set G_DEBUGGER environment variable

This enables us to catch access violation errors in CI and
get meaningful stacktraces with gdb.

Helps #3042

See https://docs.gtk.org/glib/running.html#environment-variables
This commit is contained in:
Luca Bacci 2024-08-23 10:34:29 +02:00
parent 3d53902fc3
commit 1265b456d1
2 changed files with 5 additions and 2 deletions

View File

@ -521,6 +521,7 @@ msys2-mingw32:
CHERE_INVOKING: "yes"
CFLAGS: -coverage -ftest-coverage -fprofile-arcs
PYTHONUTF8: "1"
G_DEBUGGER: 'gdb.exe -batch -ex "set logging enabled on" -ex "attach %p" -ex "signal-event %e" -ex "c" -ex "thread apply all bt full" -ex "k"'
script:
- C:\msys64\usr\bin\pacman --noconfirm -Syyuu --ask 20
- C:\msys64\usr\bin\bash .gitlab-ci/show-execution-environment.sh
@ -535,6 +536,7 @@ msys2-mingw32:
expire_in: 1 week
paths:
- _build/meson-logs
- _build/gdb.txt
- _coverage/
- _reference/

View File

@ -21,7 +21,8 @@ pacman --noconfirm -S --needed \
"${MINGW_PACKAGE_PREFIX}"-python-pip \
"${MINGW_PACKAGE_PREFIX}"-toolchain \
"${MINGW_PACKAGE_PREFIX}"-zlib \
"${MINGW_PACKAGE_PREFIX}"-libelf
"${MINGW_PACKAGE_PREFIX}"-libelf \
"${MINGW_PACKAGE_PREFIX}"-gdb
mkdir -p _coverage
mkdir -p _ccache
@ -75,4 +76,4 @@ fi
# can then pull it from there — see https://gitlab.gnome.org/GNOME/gtk/-/blob/docs-gtk-org/README.md
mkdir -p _reference/
mv _build/docs/reference/glib/glib-win32-2.0/ _reference/glib-win32/
mv _build/docs/reference/gio/gio-win32-2.0/ _reference/gio-win32/
mv _build/docs/reference/gio/gio-win32-2.0/ _reference/gio-win32/