Source: libraw1394
Version: 2.1.0-1
Severity: wishlist
Tags: patch

Hi,

Thanks for taking care of the libraw1394 Debian package!

As part of this year's "Bootstrappable Debian" Google Summer of Code
project I took a look at it to break a circular build dependency as
noted in the "Feedback Arc Set" section of
http://bootstrap.debian.net/amd64/ and, more specifically, at
http://bootstrap.debian.net/source/libraw1394_2.1.0-1.html
- docbook-utils depends on libcupsfilters1 (through jadetex,
  texlive-latex-base, texlive-binaries, libgs9, libcupsimage2)
- src:cups-filters build-depends on librsvg2-bin
- librsvg2-bin depends on libproxy1 (through libgtk-3.0, libsoup2.4-1,
  glib-networking)
- src:libproxy build-depends on kdelibs5-dev
- kdelibs5-dev depends on libraw1394-11 (through libphonon-dev, phonon,
  phonon-backend-vlc, vlc-nox)

What do you think of the attached patch that does not build the -doc
package at all if "stage1" is in the DEB_BUILD_PROFILES environment
variable?  The goal here is to provide binary-package-level granularity
in the limited-features bootstrapping builds: to be able to build the
binary packages that are needed to bootstrap the build of the next wave
of packages, while delaying the build of the non-essential packages for
later.  Later, the build of src:libraw1394 will be redone without
DEB_BUILD_PROFILES=stage1 and the -doc package will be built.

The modification of the libraw1394 build is done in a way that is
compatible with the current Debian archive infrastructure; this change
may be uploaded now, even before the changes to sbuild, apt, dpkg, etc
are present in a stable release.  The modification of the control file
to add the <!profile.stage1> and the "Build-Profiles: !stage1" notations
will be sent in a separate bug report.

Thanks again for your work on libraw1394 and on Debian in general!

G'luck,
Peter

-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'stable'), (500, 'oldstable')
Architecture: i386 (i686)
Foreign Architectures: amd64

Kernel: Linux 3.14-1-686-pae (SMP w/4 CPU cores)
Locale: LANG=bg_BG.UTF-8, LC_CTYPE=bg_BG.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash


-- 
Peter Pentchev  r...@ringlet.net r...@freebsd.org p.penc...@storpool.com
PGP key:        http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint 2EE7 A7A5 17FC 124C F115  C354 651E EFB0 2527 DF13
If there were no counterfactuals, this sentence would not have been paradoxical.
From 7b53b147fef836a39e4605f37358cdbb187858b0 Mon Sep 17 00:00:00 2001
From: Peter Pentchev <r...@ringlet.net>
Date: Sat, 31 May 2014 13:42:22 +0300
Subject: [PATCH] stage1: do not build libraw1394-doc.

---
 debian/control | 1 +
 debian/rules   | 7 +++++++
 2 files changed, 8 insertions(+)

diff --git a/debian/control b/debian/control
index f54f3ca..0b49015 100644
--- a/debian/control
+++ b/debian/control
@@ -1,6 +1,7 @@
 Source: libraw1394
 Priority: optional
 Maintainer: Guus Sliepen <g...@debian.org>
+# For stage1 builds, drop the docbook-utils and docbook-xml dependencies.
 Build-Depends: debhelper (>= 9), autotools-dev, docbook-utils, docbook-xml, 
dpkg-dev (>= 1.16.1~)
 Standards-Version: 3.9.3
 Section: libs
diff --git a/debian/rules b/debian/rules
index 49a8afe..c641a04 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,10 +1,17 @@
 #!/usr/bin/make -f
 
+ifneq (,$(filter stage1,$(DEB_BUILD_PROFILES)))
+DH_OPTIONS     += -Nlibraw1394-doc
+export DH_OPTIONS
+endif
+
 %:
        dh $@
 
+ifeq (,$(filter stage1,$(DEB_BUILD_PROFILES)))
 override_dh_auto_build-indep:
        $(MAKE) -C doc libraw1394.pdf libraw1394
+endif
 
 override_dh_strip:
        dh_strip --dbg-package=libraw1394-11-dbg
-- 
2.0.0.rc2

Attachment: signature.asc
Description: Digital signature

Reply via email to