[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#360068: openssh: Set proper dependencies for udebs



Package: openssh
Version: 4.2p1-7
Severity: wishlist
Tags: d-i, patch

The openssh udebs currently depend on regular packages. Recent changes in
debhelper and dpkg-dev have made it possible to automatically  generate
properly dependencies on udebs instead.

The attached patch implements this for openssh. The needed changes are:
- update dephelper dependency to 5.0.22; this also pulls in the correct
  version of dpkg-dev
- add "XC-Package-Type: udeb" lines in debian/control to make debhelper
  aware which binaries are udebs

The last change also makes a few simplifications possible in the
debian/rules file. I've included these in the patch.

The result is the following changes in dependencies for both udebs:
  Depends: libc6 (>= 2.3.5-1), [-libssl0.9.8-] {+libcrypto0.9.8-udeb+}
  (>= 0.9.8a-1), [-zlib1g-] {+zlib1g-udeb+} (>= 1:1.2.1), libnss-files-udeb

I've checked that there are no other unexpected changes using debdiff.

Cheers,
FJP

diff -u openssh-4.2p1/debian/rules openssh-4.2p1/debian/rules
--- openssh-4.2p1/debian/rules
+++ openssh-4.2p1/debian/rules
@@ -15,8 +15,6 @@
 OPTFLAGS := -O0
 endif
 
-VERSION := $(shell dpkg-parsechangelog | grep ^Version: | cut -d' ' -f2 | sed 's/.*://')
-DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
 DEB_HOST_ARCH_OS := $(shell dpkg-architecture -qDEB_HOST_ARCH_OS 2>/dev/null)
 
 # Take account of old dpkg-architecture output.
@@ -27,9 +25,6 @@
   endif
 endif
 
-CLIENT_UDEB := openssh-client-udeb_$(VERSION)_$(DEB_HOST_ARCH).udeb
-SERVER_UDEB := openssh-server-udeb_$(VERSION)_$(DEB_HOST_ARCH).udeb
-
 ifeq (,$(wildcard /usr/bin/po2debconf))
 PO2DEBCONF := no
 MINDEBCONFVER := 0.5
@@ -278,9 +273,9 @@
 	dh_installdeb
 	install -p -o root -g root -m 755 debian/openssh-client-udeb.isinstallable debian/openssh-client-udeb/DEBIAN/isinstallable
 	dh_shlibdeps
-	dh_gencontrol -- -fdebian/files~
-	dpkg-distaddfile $(CLIENT_UDEB) debian-installer optional
-	dh_builddeb --filename=$(CLIENT_UDEB)
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
 
 binary-openssh-server-udeb: DH_OPTIONS=-popenssh-server-udeb
 binary-openssh-server-udeb: build install
@@ -291,9 +286,9 @@
 	dh_fixperms
 	dh_installdeb
 	dh_shlibdeps
-	dh_gencontrol -- -fdebian/files~
-	dpkg-distaddfile $(SERVER_UDEB) debian-installer optional
-	dh_builddeb --filename=$(SERVER_UDEB)
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
 
 binary: binary-indep binary-arch
 
diff -u openssh-4.2p1/debian/control openssh-4.2p1/debian/control
--- openssh-4.2p1/debian/control
+++ openssh-4.2p1/debian/control
@@ -2,7 +2,7 @@
 Section: net
 Priority: standard
 Maintainer: Matthew Vernon <matthew@debian.org>
-Build-Depends: libwrap0-dev | libwrap-dev, zlib1g-dev | libz-dev, libssl-dev (>= 0.9.8-1), libpam0g-dev | libpam-dev, libgnomeui-dev (>= 2.0.0) | libgnome-dev, libedit-dev, groff, debhelper (>= 3), sharutils, libselinux1-dev [alpha amd64 arm armeb hppa i386 ia64 m68k mips mipsel powerpc ppc64 s390 sparc], libkrb5-dev
+Build-Depends: libwrap0-dev | libwrap-dev, zlib1g-dev | libz-dev, libssl-dev (>= 0.9.8-1), libpam0g-dev | libpam-dev, libgnomeui-dev (>= 2.0.0) | libgnome-dev, libedit-dev, groff, debhelper (>= 5.0.22), sharutils, libselinux1-dev [alpha amd64 arm armeb hppa i386 ia64 m68k mips mipsel powerpc ppc64 s390 sparc], libkrb5-dev
 Standards-Version: 3.6.2
 Uploaders: Colin Watson <cjwatson@debian.org>
 
@@ -87,6 +87,7 @@
  provided to add to your choice and/or confusion.
 
 Package: openssh-client-udeb
+XC-Package-Type: udeb
 Section: debian-installer
 Priority: optional
 Architecture: any
@@ -100,6 +101,7 @@
  This package provides the ssh client for use in debian-installer.
 
 Package: openssh-server-udeb
+XC-Package-Type: udeb
 Section: debian-installer
 Priority: optional
 Architecture: any

Attachment: pgpQSuhSJGv7Y.pgp
Description: PGP signature


Reply to: