Package: lvm2-dbusd
Version: 2.02.176-4.1
Tags: patch
User: helm...@debian.org
Usertags: rebootstrap

Please trun lvm2-dbusd into an Architecture: all package. Doing so
solves a number of problems relevant to bootstrapping:
 * lvm2 cannot be cross built, because its depenedency on python3-pyudev
   cannot be satisfied. Given that python3-pyudev is Architecture: all,
   not even annotating it :native will help here. This package can be
   demoted to Build-Depends-Indep after making lvm2-dbusd Architecture:
   all. Thus cross-Build-Depends become satisfiable (in a non-bootstrap
   setting).
 * There is a longer dependency cycle between lvm2 (via systemd) through
   python3. Turning lvm2-dbusd Architecture: all means that all of the
   python depends can be moved to Build-Depends-Indep solving the cycle.
 * We save approximately 450kb of mirror space. ;)

The attached patch implements the requested feature. I used reproducible
builds to verify that the differences between arch-only, indep-only and
full builds are reasonable. In fact, there is no difference for
lvm2-dbusd and for the Architecture: any packages the differences result
from embedding the ./configure flags and deriving the build-id from the
build directory. So the change should be reasonably safe. Please
consider applying it.

Helmut
diff --minimal -Nru lvm2-2.02.176/debian/changelog 
lvm2-2.02.176/debian/changelog
--- lvm2-2.02.176/debian/changelog      2017-12-03 03:39:59.000000000 +0100
+++ lvm2-2.02.176/debian/changelog      2018-09-15 20:42:21.000000000 +0200
@@ -1,3 +1,10 @@
+lvm2 (2.02.176-4.2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Turn lvm2-dbusd Architecture: all. (Closes: #-1)
+
+ -- Helmut Grohne <hel...@subdivi.de>  Sat, 15 Sep 2018 20:42:21 +0200
+
 lvm2 (2.02.176-4.1) unstable; urgency=high
 
   * Non-maintainer upload.
diff --minimal -Nru lvm2-2.02.176/debian/control lvm2-2.02.176/debian/control
--- lvm2-2.02.176/debian/control        2017-11-09 20:40:11.000000000 +0100
+++ lvm2-2.02.176/debian/control        2018-09-15 20:42:15.000000000 +0200
@@ -5,7 +5,6 @@
 Uploaders: Bastian Blank <wa...@debian.org>
 Build-Depends:
  debhelper (>= 10.9.2),
- dh-python,
  autoconf-archive,
  automake,
  libblkid-dev,
@@ -19,11 +18,13 @@
  libselinux1-dev,
  libsystemd-dev,
  libudev-dev,
+ pkg-config,
+ systemd
+Build-Depends-Indep:
+ dh-python,
  python3-dev,
  python3-dbus,
  python3-pyudev,
- pkg-config,
- systemd
 Standards-Version: 4.1.1
 Homepage: http://sources.redhat.com/lvm2/
 Vcs-Git: https://gitlab.com/debian-lvm/lvm2.git
@@ -56,8 +57,8 @@
  regular block devices.
 
 Package: lvm2-dbusd
-Architecture: linux-any
-Depends: ${shlibs:Depends}, ${python3:Depends}, ${misc:Depends}, lvm2 (= 
${binary:Version}), dbus,
+Architecture: all
+Depends: ${python3:Depends}, ${misc:Depends}, lvm2 (>= ${source:Version}), 
lvm2 (<< ${source:Version}.1), dbus,
  python3-dbus,
  python3-gi,
  python3-pyudev,
diff --minimal -Nru lvm2-2.02.176/debian/rules lvm2-2.02.176/debian/rules
--- lvm2-2.02.176/debian/rules  2017-12-03 03:37:24.000000000 +0100
+++ lvm2-2.02.176/debian/rules  2018-09-15 20:42:21.000000000 +0200
@@ -27,7 +27,8 @@
 endif
 
 %:
-       dh $@ --parallel --with python3
+       dh $@ --parallel $(DH_ADDONS)
+build binary %-indep: DH_ADDONS+=--with=python3
 
 override_dh_auto_configure: SOURCE_FILES = $(filter-out debian, $(wildcard * 
.[^.]*))
 override_dh_auto_configure:
@@ -59,7 +60,7 @@
                --enable-cmdlib \
                --enable-cmirrord \
                --enable-dmeventd \
-               --enable-dbus-service \
+               --$(if $(filter lvm2-dbusd,$(shell 
dh_listpackages)),en,dis)able-dbus-service \
                --enable-lvmetad \
                --enable-lvmlockd-dlm \
                --enable-lvmlockd-sanlock \

Reply via email to