Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#999730: mtr: Fix FTBFS with glib2.0 >= 2.70 and deprecated GTimeVal of gtk+2.0

28 views
Skip to first unread message

Lukas Märdian

unread,
Nov 15, 2021, 11:30:04 AM11/15/21
to
Package: mtr
Version: 0.94-2
Severity: serious
Tags: patch ftbfs
Justification: fails to build from source (but built successfully in the past)
User: ubuntu...@lists.ubuntu.com
Usertags: origin-ubuntu jammy ubuntu-patch
X-Debbugs-Cc: sl...@ubuntu.com

Hi Robert,

mtr fails to build from source, if compiled against glib2.0 >= v2.70, due to usage of deprecated GTimeVal in gtk+2.0 headers (that's a dependency of mtr).

In Ubuntu, the attached patch was applied to achieve the following:

* Fix FTBFS with glib >= 2.70 & deprecated definitions of GTimeVal in gtk+2.0


Thanks for considering the patch.

Cheers,
Lukas

Build log:
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -pthread -I/usr/include/gtk-2.0 -I/usr/lib/s390x-linux-gnu/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/s390x-linux-gnu -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/s390x-linux-gnu/glib-2.0/include -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o ui/mtr-gtk.o `test -f 'ui/gtk.c' || echo '../'`ui/gtk.c
../ui/curses.c: In function ‘mtr_curses_hosts’:
../ui/curses.c:435:17: error: format not a string literal and no format arguments [-Werror=format-security]
435 | printw(fmt_ipinfo(ctl, addr));
| ^~~~~~
../ui/curses.c:488:21: error: format not a string literal and no format arguments [-Werror=format-security]
488 | printw(fmt_ipinfo(ctl, addrs));
| ^~~~~~
../ui/curses.c: In function ‘mtr_curses_graph’:
../ui/curses.c:653:17: error: format not a string literal and no format arguments [-Werror=format-security]
653 | printw(fmt_ipinfo(ctl, addr));
| ^~~~~~
../ui/curses.c: In function ‘mtr_curses_redraw’:
../ui/curses.c:703:5: error: format not a string literal and no format arguments [-Werror=format-security]
703 | mvprintw(1, maxx - 25, iso_time(&t));
| ^~~~~~~~
../ui/curses.c:763:42: error: format not a string literal and no format arguments [-Werror=format-security]
763 | mvprintw(rowstat - 1, startstat, msg);
| ^~~
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/packet.o ../packet/packet.c
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/cmdparse.o ../packet/cmdparse.c
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/command.o ../packet/command.c
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/probe.o ../packet/probe.c
In file included from /usr/include/gtk-2.0/gtk/gtkobject.h:37,
from /usr/include/gtk-2.0/gtk/gtkwidget.h:36,
from /usr/include/gtk-2.0/gtk/gtkcontainer.h:35,
from /usr/include/gtk-2.0/gtk/gtkbin.h:35,
from /usr/include/gtk-2.0/gtk/gtkwindow.h:36,
from /usr/include/gtk-2.0/gtk/gtkdialog.h:35,
from /usr/include/gtk-2.0/gtk/gtkaboutdialog.h:32,
from /usr/include/gtk-2.0/gtk/gtk.h:33,
from ../ui/gtk.c:31:
/usr/include/gtk-2.0/gtk/gtktypeutils.h:236:1: warning: ‘GTypeDebugFlags’ is deprecated [-Wdeprecated-declarations]
236 | void gtk_type_init (GTypeDebugFlags debug_flags);
| ^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:24,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:22,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
from /usr/include/gtk-2.0/gdk/gdk.h:32,
from /usr/include/gtk-2.0/gtk/gtk.h:32,
from ../ui/gtk.c:31:
/usr/include/glib-2.0/gobject/gtype.h:698:1: note: declared here
698 | {
| ^
In file included from /usr/include/string.h:519,
from ../packet/probe.c:31:
In function ‘strncat’,
inlined from ‘respond_to_probe’ at ../packet/probe.c:296:9:
/usr/include/s390x-linux-gnu/bits/string_fortified.h:135:10: warning: ‘__strncat_chk’ output may be truncated copying between 0 and 4095 bytes from a string of length 4095 [-Wstringop-truncation]
135 | return __builtin___strncat_chk (__dest, __src, __len,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
136 | __glibc_objsize (__dest));
| ~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
from /usr/include/gtk-2.0/gtk/gtk.h:126,
from ../ui/gtk.c:31:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: ‘GTimeVal’ is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
73 | GTimeVal last_popdown;
| ^~~~~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from /usr/include/glib-2.0/gobject/gbinding.h:28,
from /usr/include/glib-2.0/glib-object.h:22,
from /usr/include/glib-2.0/gio/gioenums.h:28,
from /usr/include/glib-2.0/gio/giotypes.h:28,
from /usr/include/glib-2.0/gio/gio.h:26,
from /usr/include/gtk-2.0/gdk/gdkapplaunchcontext.h:30,
from /usr/include/gtk-2.0/gdk/gdk.h:32,
from /usr/include/gtk-2.0/gtk/gtk.h:32,
from ../ui/gtk.c:31:
/usr/include/glib-2.0/glib/gtypes.h:547:8: note: declared here
547 | struct _GTimeVal
| ^~~~~~~~~
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/timeval.o ../packet/timeval.c
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/sockaddr.o ../packet/sockaddr.c
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/construct_unix.o ../packet/construct_unix.c
gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-pointer-sign -c -o packet/deconstruct_unix.o ../packet/deconstruct_unix.c
cc1: some warnings being treated as errors
make[2]: *** [Makefile:1159: ui/mtr-curses.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/<<PKGBUILDDIR>>/mtr'
dh_auto_install: error: cd mtr && make -j4 install DESTDIR=/<<PKGBUILDDIR>>/debian/mtr AM_UPDATE_INFO_DIR=no returned exit code 2
make[1]: *** [debian/rules:39: override_dh_installdirs-arch] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:7: binary-arch] Error 2
dpkg-buildpackage: error: debian/rules binary-arch subprocess returned exit status 2


-- System Information:
Debian Release: 11.0
APT prefers impish-updates
APT policy: (500, 'impish-updates'), (500, 'impish-security'), (500, 'impish'), (100, 'impish-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.13.0-20-generic (SMP w/4 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE:en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

mtr_0.94-2ubuntu1.debdiff

Graham Inggs

unread,
Jan 8, 2022, 2:40:03 PM1/8/22
to
Hi Maintainer

The release team no longer [1] considers popcon a criterion for
inclusion in the list of key packages [2].

This email is a courtesy reminder of this bug, and should prevent
instant auto-removal once the rule is changed in britney.

Regards
Graham


[1] http://meetbot.debian.net/debian-release/2021/debian-release.2021-01-27-19.07.html
[2] https://udd.debian.org/cgi-bin/key_packages.yaml.cgi
0 new messages