[Pkg-telepathy-maintainers] Bug#939946: telepathy-logger: missing python build-dependency causes FTBFS with gtk-doc-tools 1.32

Andreas Henriksson andreas at fatal.se
Tue Sep 10 12:54:31 BST 2019

Source: telepathy-logger
Severity: important
Control: block 939500 by -1

Dear Maintainer,

The telepathy-logger package seems to require python(2) during build,
but relies on gtk-doc-tools to actually pull in python.  This causes a
failure to build from source when building with the new gtk-doc-tools
1.32 (currently in experimental).
(The new gtk-doc-tools has been fully ported to python3 and no longer
pulls in python(2).)

Snippet from the build log:

make[3]: Entering directory '/build/telepathy-logger-0.8.2/extensions'
/bin/mkdir -p _gen
/usr/bin/python3 ../tools/xincludator.py all.xml > _gen/all.xml
Traceback (most recent call last):
  File "../tools/xincludator.py", line 36, in <module>
    xincludate(dom, argv[0])
  File "../tools/xincludator.py", line 14, in xincludate
    for i in xrange(dom.documentElement.attributes.length):
NameError: name 'xrange' is not defined
make[3]: *** [Makefile:936: _gen/all.xml] Error 1
make[3]: Leaving directory '/build/telepathy-logger-0.8.2/extensions'
make[2]: *** [Makefile:489: all-recursive] Error 1
make[2]: Leaving directory '/build/telepathy-logger-0.8.2'
make[1]: *** [Makefile:420: all] Error 2
make[1]: Leaving directory '/build/telepathy-logger-0.8.2'
dh_auto_build: make -j1 returned exit code 2
make: *** [debian/rules:6: build] Error 255
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2

My conclusion is that it seems the tools/xincludator.py file is a
python2 (only) script, not compatible with python3.  The reason the
shebang in that file (which references python(2)) is not used, is
because it's invoked as "python3 ../tools/..." rather than directly
executing the script. The reason python3 is used here is because the
Makefile(.am) specifies $(PYTHON) which is set via AM_PATH_PYTHON in
configure(.ac) which will find python3 since python(2) is nowhere to be

This issue could simply be fixed by adding the missing python (or
python:any) build-dependency. However, there's currently ongong work to
remove python2 from bullseye so a better solution would be to properly
port to python3 (and get rid of python(2) dependency).

Andreas Henriksson

More information about the Pkg-telepathy-maintainers mailing list