Source: glib2.0
Version: 2.72.0-1
Severity: important
Justification: fails to build from source when built in past
User: debian-al...@lists.debian.org
Usertags: ftbfs
X-Debbugs-Cc: debian-al...@lists.debian.org

glib2.0 FTBFS on alpha in the test suite with:

GLib-GIO:ERROR:../../../gio/tests/pollable.c:198:test_pollable_unix_pty: 
'handle' should not be NULL
Bail out! 
GLib-GIO:ERROR:../../../gio/tests/pollable.c:198:test_pollable_unix_pty: 
'handle' should not be NULL
――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
161/266 glib:gio / pollable                             FAIL             0.04s  
 killed by signal 6 SIGABRT

The code at line 198 of ../../../gio/tests/pollable.c is:

handle = dlopen (LIBUTIL_SONAME, RTLD_GLOBAL | RTLD_LAZY);

And in the meson configure log at the start of the build we see:

Message: Found libutil as libutil.so.1

This is wrong.  There is no libutil.so.1 on Alpha.  It should
be libutil.so.1.1

The problem seems to me to be at lines 18 to 20 of
gio/tests/meson.build:

libutil = run_command('sh', '-c',
    '''ldconfig -p | grep -o "[[:space:]]@0@\.so\(\.[0-9]\+\)\?\b"'''
    .format(libutil_name), check: false).stdout().strip().split('\n')

in which a regular expression is used to match the detected libutil.so
version.  That regular expression assumes that there is only one digit
in the so version thus incorrectly detects the libutil.so version on
Alpha.

Changing the "\?" to "*" would probably be the fix.

Regards,
Michael.

Reply via email to