chiark / gitweb /
debian: Switch to dh auto sequencer
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Tue, 28 Dec 2021 16:24:32 +0000 (16:24 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Wed, 29 Dec 2021 18:34:44 +0000 (18:34 +0000)
We drop much code from debian/rules.  In particular, we now use the
upstream `make install` targets.  (As a side effect, we discovered
some bugs ion the upstream Makefile which have just been fixed in the
commits leading up to this one.)

Consequences for the generated binaries:

 * Upstream README is shipped as /usr/share/doc/userv/README,
   not README.upstream.  This seems conventional in Debian nowadays.
 * Control file md5sums are provided.
 * There is a new changelog symlink for changelog.Debian.gz.
 * We use the proper Debian debug information scheme.
 * We use different compiler flags, which will hopefully produce
   better hardening and better reproducibility.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
debian/.gitignore
debian/conffiles [deleted file]
debian/lintian-overrides [moved from debian/lintian with 100% similarity]
debian/rules
debian/userv.docs [new file with mode: 0644]
debian/userv.init [moved from debian/initd with 100% similarity]

index f1fdb13b34fc46c2aabd7d0140a2bd0242ad6438..750a563a286af92e7ab351190df5589663ed097b 100644 (file)
@@ -1,7 +1,11 @@
-tmp
+userv
+.debhelper
 substvars
 *.substvars
 files
 debhelper.log
+debhelper-build-stamp
 userv.debhelper.log
 userv.*.debhelper
+autoreconf.before
+autoreconf.after
diff --git a/debian/conffiles b/debian/conffiles
deleted file mode 100644 (file)
index 2463c0f..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-/etc/init.d/userv
-/etc/userv/system.default
-/etc/userv/system.override
similarity index 100%
rename from debian/lintian
rename to debian/lintian-overrides
index 65c44fc9c58586ead8d02e60845454abe2bcc7c9..62957350d87f4f4d42c2d1b834e41512635127b3 100755 (executable)
@@ -3,85 +3,20 @@
 SHELL=/bin/bash
 package=userv
 
-t=debian/tmp
-
-DPKG_EXPORT_BUILDTOOLS=1
-include /usr/share/dpkg/buildtools.mk
-
-ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-       INSTOPTS= LDFLAGS=-s INSTALL_PROGRAM='install -c -s --strip-program=$(STRIP)'
-else
-       INSTOPTS= INSTALL_PROGRAM='install -c'
-endif
-
 makebuildargs := OPTIMISE= \
  XCFLAGS="$(shell dpkg-buildflags --get CFLAGS)" \
  XCPPFLAGS="$(shell dpkg-buildflags --get CPPFLAGS)" \
  XLDFLAGS="$(shell dpkg-buildflags --get LDFLAGS)"
 
-build: build-arch build-indep
+%:
+       dh "$@"
 
-build-arch:
-       $(checkdir)
-       ./configure --prefix=/usr
+override_dh_auto_build:
        $(MAKE) $(makebuildargs) all docs
-       touch build-arch
-
-clean:
-       $(checkdir)
-       rm -f build build-arch
-       $(MAKE) -i distclean || $(MAKE) -f Makefile.in distclean
-       rm -rf *~ $t
-       rm -rf spec.html spec.ps debian/substvars*
-       dh_clean
-
-build-indep:
-binary-indep:
-
-binary-arch:   checkroot build
-       $(checkdir)
-       -rm -rf $t
-       install -d $t/{DEBIAN,etc/init.d} $t/usr/{sbin,bin}
-       install -d $t/etc/userv/{override,default}.d
-       install -d $t/usr/share/doc/$(package)/examples/
-       install -d $t/usr/share/lintian/overrides/
-       install -m 755 debian/{postinst,prerm,postrm} $t/DEBIAN/.
-       install -m 644 debian/conffiles $t/DEBIAN/.
-       install -m 755 debian/initd $t/etc/init.d/userv
-       $(MAKE) $(INSTOPTS) $(makebuildargs) \
-               prefix=$t/usr etcdir=$t/etc \
-               docdir=$t/usr/share/doc/userv \
-               mandir=$t/usr/share/man \
-               install install-doc
-       cp debian/copyright $t/usr/share/doc/$(package)/.
-       cp debian/changelog $t/usr/share/doc/$(package)/changelog
-       cp README $t/usr/share/doc/$(package)/README.upstream
-       cp system.default system.override $t/usr/share/doc/$(package)/examples
-       ln -s changelog.gz $t/usr/share/doc/$(package)/changelog.Debian.gz
-       gzip -9v $t/usr/share/doc/$(package)/changelog \
-               $t/usr/share/man/man1/*.1 $t/usr/share/man/man8/*.8 \
-               $t/usr/share/doc/userv/*.ps
-       cp debian/lintian $t/usr/share/lintian/overrides/userv
-       dpkg-shlibdeps daemon client
-       dpkg-gencontrol -isp
-       dh_fixperms -Pdebian/tmp
-       chown root.root debian/tmp/usr/bin/userv
-       chmod 4755 debian/tmp/usr/bin/userv
-       dpkg --build $t ..
-
-define checkdir
-       test -f overlord.c -a -f lexer.l.m4 -a -f debian/rules
-endef
-
-# Below here is fairly generic really
-
-binary:                binary-indep binary-arch
-
-source diff:
-       @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
 
-checkroot:
-       $(checkdir)
-       test root = "`whoami`"
+override_dh_auto_install:
+       $(MAKE) $(makebuildargs) install install-docs \
+               DESTDIR=$(PWD)/debian/userv
 
-.PHONY: binary binary-arch binary-indep clean checkroot
+override_dh_fixperms:
+       dh_fixperms -X usr/bin/userv
diff --git a/debian/userv.docs b/debian/userv.docs
new file mode 100644 (file)
index 0000000..e845566
--- /dev/null
@@ -0,0 +1 @@
+README
similarity index 100%
rename from debian/initd
rename to debian/userv.init