resource test fails on Debian mips64el: test5.gresource is not linked but the test assumes it should be
Testing a 2.79.x snapshot of GLib in Debian experimental failed on the official autobuilder.
342/369 glib:gio / resources RUNNING
>>> MALLOC_PERTURB_=216 G_TEST_SRCDIR='/<<PKGBUILDDIR>>/gio/tests' GIO_MODULE_DIR='' G_DEBUG=gc-friendly MALLOC_CHECK_=2 LD_LIBRARY_PATH='/<<PKGBUILDDIR>>/debian/build/deb/glib:/<<PKGBUILDDIR>>/debian/build/deb/gio/tests:/<<PKGBUILDDIR>>/debian/build/deb/gio:/<<PKGBUILDDIR>>/debian/build/deb/gmodule:/<<PKGBUILDDIR>>/debian/build/deb/gobject' G_TEST_BUILDDIR='/<<PKGBUILDDIR>>/debian/build/deb/gio/tests' GIO_LAUNCH_DESKTOP='/<<PKGBUILDDIR>>/debian/build/deb/gio/gio-launch-desktop' ASAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1 G_ENABLE_DIAGNOSTIC=1 UBSAN_OPTIONS=halt_on_error=1:abort_on_error=1:print_summary=1:print_stacktrace=1 '/<<PKGBUILDDIR>>/debian/build/deb/gio/tests/resources'
▶ 342/369 /resource/file OK
▶ 342/369 /resource/file-path OK
▶ 342/369 /resource/data OK
▶ 342/369 /resource/data_unaligned OK
▶ 342/369 /resource/data-corrupt OK
▶ 342/369 /resource/data-empty OK
▶ 342/369 /resource/registered OK
▶ 342/369 /resource/manual OK
▶ 342/369 /resource/manual2 OK
▶ 342/369 /resource/automatic OK
▶ 342/369 /resource/module OK
▶ 342/369 /resource/binary-linked - GLib-GIO:ERROR:../../../gio/tests/resources.c:658:test_resource_binary_linked: 'found' should be TRUE FAIL
▶ 342/369 ERROR
342/369 glib:gio / resources ERROR 0.02s killed by signal 6 SIGABRT
――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――
stderr:
**
GLib-GIO:ERROR:../../../gio/tests/resources.c:658:test_resource_binary_linked: 'found' should be TRUE
(test program exited with status code -6)
――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
I haven't bisected this yet, because the only mips64el machine I have access to (Debian's eberlin
) is very slow, but on looking at what this test does, it seems fairly obvious where this must have regressed and why:
The failing part of the test asserts that a resource named /binary_linked/test1.txt
, which is provided by test5.gresource.xml
, has been linked into the test program.
Since commit 81059169 "GIO/tests: skip test_resources_binary on MIPS platform" (!3640 (merged)), linking test5.gresource.xml
into the program is not done on MIPS platforms, because of some technical problems with how it is done. The result is that /binary_linked/test1.txt
is not there, so obviously the test is going to fail.
@yqsu, how did you test !3640 (merged)? Did you successfully run the test suite on a MIPS machine? If so, how?