Control: retitle -1 gstreamer1.0: run gtkdocize during build
Control: severity -1 wishlist

On Sat, 19 May 2018 at 13:08:12 +0100, Simon McVittie wrote:
> Recent versions of dh-autoreconf automatically run gtkdocize if gtk-doc
> is found in configure.ac. This caused gstreamer1.0/1.14.1-1 to FTBFS on
> all architectures (except amd64 and all which were built by the uploader,
> presumably on a non-minimal system).

This change in dh-autoreconf has been reverted in v19. The attached
patches (which fixed the FTBFS against dh-autoreconf/18) might still be
beneficial; I think the plan is for a future dh-autoreconf version to
run gtkdocize if and only if it's in the Build-Depends(-Indep), and in
general having an updated gtk-doc.{mak,m4} is beneficial.

Until that future dh-autoreconf version, I think the state of the art
for running gtkdocize is something like the combination of these commits:
https://salsa.debian.org/debian/flatpak/commit/d8004c50ffb6c99e20a77873e8cf48967afddfe8
https://salsa.debian.org/debian/flatpak/commit/8686daaf43a6d5674d1d545435f19b89773790b4
(or using upstream's autogen.sh if it's present and suitable, but
gstreamer's seems to be full of git-based assumptions that probably
won't work for a tar-based Debian package).

    smcv
>From 5f8e7be7c465669bde3a80fa72e44ee95eaa68f0 Mon Sep 17 00:00:00 2001
From: Simon McVittie <s...@debian.org>
Date: Sat, 19 May 2018 18:37:36 +0100
Subject: [PATCH 1/2] d/rules: Only build documentation if we are building the
 -doc package

We don't need documentation for binary-arch builds, even if gtk-doc-tools
happens to be installed too.

Signed-off-by: Simon McVittie <s...@debian.org>
---
 debian/rules | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/debian/rules b/debian/rules
index fdfd6e1b..915fe52e 100755
--- a/debian/rules
+++ b/debian/rules
@@ -34,6 +34,8 @@ gst_lib_dev=$(gst_lib_prefix)-dev
 # gstreamer shlibs
 gst_shlibs_dep="$(gst_lib) (>= $(gst_version))"
 
+binaries := $(shell dh_listpackages)
+
 # debug package
 DEB_DH_STRIP_ARGS := --dbg-package=$(gst_lib)-dbg
 
@@ -211,9 +213,8 @@ endif
 indep_conf_flags = \
 	--with-html-dir=\$${prefix}/share/doc/$(gst_pkgname)-doc
 
-# only build the docs if gtk-doc-tools is installed, i.e. binary-indep is
-# called
-ifeq ($(shell test "`dpkg -l gtk-doc-tools | grep ^ii`" && echo binary-indep),binary-indep)
+# Only build documentation if we are building the -doc package
+ifneq ($(filter $(gst_pkgname)-doc,$(binaries)),)
 indep_conf_flags += --enable-gtk-doc --enable-docbook
 endif
 
-- 
2.17.0

>From 273b3e83e72cefcb74a3a0914c21e4136fadd212 Mon Sep 17 00:00:00 2001
From: Simon McVittie <s...@debian.org>
Date: Sat, 19 May 2018 18:41:25 +0100
Subject: [PATCH 2/2] d/control: Move gtk-doc-tools from B-D-I to B-D

They are needed at autoreconf time with dh-autoreconf/18, to replace
gtk-doc.mak and gtk-doc.m4 with current versions.

Signed-off-by: Simon McVittie <s...@debian.org>
---
 debian/control    | 4 ++--
 debian/control.in | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/debian/control b/debian/control
index 90b69caa..be56f557 100644
--- a/debian/control
+++ b/debian/control
@@ -12,6 +12,7 @@ Build-Depends: debhelper (>= 9),
                autotools-dev,
                automake (>= 1.14),
                autoconf (>= 2.69),
+               gtk-doc-tools (>= 1.12),
                libtool (>= 2.2.6),
                dh-autoreconf,
                autopoint (>= 0.17),
@@ -29,8 +30,7 @@ Build-Depends: debhelper (>= 9),
                gir1.2-glib-2.0,
                gir1.2-freedesktop,
                libcap-dev [linux-any]
-Build-Depends-Indep: gtk-doc-tools (>= 1.12),
-                     libglib2.0-doc
+Build-Depends-Indep: libglib2.0-doc
 Standards-Version: 3.9.3
 Vcs-Git: https://salsa.debian.org/gstreamer-team/gstreamer1.0.git
 Vcs-Browser: https://salsa.debian.org/gstreamer-team/gstreamer1.0/
diff --git a/debian/control.in b/debian/control.in
index 2b6a3b87..b2163337 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -12,6 +12,7 @@ Build-Depends: debhelper (>= 9),
                autotools-dev,
                automake (>= 1.14),
                autoconf (>= 2.69),
+               gtk-doc-tools (>= 1.12),
                libtool (>= 2.2.6),
                dh-autoreconf,
                autopoint (>= 0.17),
@@ -29,8 +30,7 @@ Build-Depends: debhelper (>= 9),
                gir1.2-glib-2.0,
                gir1.2-freedesktop,
                libcap-dev [linux-any]
-Build-Depends-Indep: gtk-doc-tools (>= 1.12),
-                     libglib2.0-doc
+Build-Depends-Indep: libglib2.0-doc
 Standards-Version: 3.9.3
 Vcs-Git: https://salsa.debian.org/gstreamer-team/gstreamer1.0.git
 Vcs-Browser: https://salsa.debian.org/gstreamer-team/gstreamer1.0/
-- 
2.17.0

Reply via email to