#!/usr/bin/make -f
-# Copyright 1996-2013 Ian Jackson <ijackson@chiark.greenend.org.uk>
+# Copyright 1996-2013,2016 Ian Jackson <ijackson@chiark.greenend.org.uk>
# Copyright 1998 David Damerell <damerell@chiark.greenend.org.uk>
# Copyright 1999,2003
# Chancellor Masters and Scholars of the University of Cambridge
# You should have received a copy of the GNU General Public License
# along with userv-utils; if not, see http://www.gnu.org/licenses/.
-subdirs_build= ipif www-cgi git-daemon
+subdirs_build= ipif ucgi git-daemon
subdirs_nobuild=dyndns groupmanage misc
package= userv-utils
-packages_indep= userv-dyndns userv-groupmanage userv-misc userv-git-daemon
+packages_indep= userv-dyndns userv-groupmanage userv-utils userv-git-daemon
packages_arch= userv-ipif userv-cgi
packages= $(packages_indep) $(packages_arch)
+SHELL=/bin/bash
+
cwd= $(shell pwd)
d= $(cwd)/debian
-t= $d/tmp
-build:
+%:
+ dh $@
+
+override_dh_auto_configure:
+
+override_dh_auto_build:
$(checkdir)
set -e; for s in $(subdirs_build); do \
- $(MAKE) -C $$s all depr=disable; \
+ $(MAKE) -C $$s all; \
done
touch build
-clean:
+override_dh_auto_install:
+ $(checkdir)
+ -
+ set -e; for p in $(packages); do rm -rf $d/$$p; done
+ -
+ set -e; for s in $(subdirs_build) $(subdirs_nobuild); do \
+ t=$d/userv-$$s; \
+ rm -rf $$t; \
+ $(MAKE) -C $$s install install-docs install-examples \
+ prefix=$$t/usr \
+ etcdir=$$t/etc \
+ vardir=$$t/var \
+ gituser=root \
+ ; \
+ done
+ -
+ mv debian/userv-misc debian/userv-utils
+ -
+ mv $d/userv-ipif/usr/share/doc/userv-ipif/{service.c.txt,ipif.txt}
+ -
+ set -e; cd debian/userv-ucgi/usr/share/doc/userv-ucgi; \
+ rename 's/^/ucgi-/' *
+ -
+ set -e; cd debian/userv-groupmanage/usr/share/doc; \
+ mv groupmanage userv-groupmanage; \
+ rm userv-groupmanage/INSTALL
+ -
+ set -e; for p in userv-ipif userv-ucgi userv-groupmanage; do \
+ (cd debian/$$p/usr/share/doc; \
+ mv $$p userv-utils); \
+ cp -al debian/$$p/. debian/userv-utils/.; \
+ done
+ -
+ perl -pe 's{/usr/local/}{/usr/}' ucgi/www-cgi \
+ >debian/userv-utils/etc/userv/services.d/www-cgi
+ -
+ rename 's/\.example$$//' $d/userv-ipif/etc/userv/vpn/*.example \
+ $d/userv-dyndns/etc/userv/dyndns-service-users.example \
+ $d/userv-utils/etc/groupmanage.conf.example
+ rename 's/\.distrib$$//' $d/*/etc/userv/services.d/*.distrib
+ -
+ mv $d/userv-utils/usr/bin/mailq $d/userv-utils/usr/bin/mailq.userv
+ -
+ set -e; cd $d/userv-utils/etc/userv; \
+ mkdir services-available; \
+ mv services.d/* services-available/
+
+override_dh_install:
+
+override_dh_auto_clean:
$(checkdir)
rm -f build
set -e; for s in $(subdirs_build); do \
done
rm -rf *~ debian/tmp debian/*~ debian/files* debian/substvars*
-binary-prep:
- $(checkdir)
- rm -rf debian/tmp*
- #
- #
- set -e; for s in $(subdirs_build) $(subdirs_nobuild); do \
- $(MAKE) -C $$s install install-docs install-examples \
- prefix=$t/userv-$$s/usr \
- etcdir=$t/userv-$$s/etc \
- vardir=$t/userv-$$s/var \
- gituser=root; \
- depr=disable; \
- done
- #
- mv debian/tmp/userv-www-cgi debian/tmp/userv-cgi
- mv debian/tmp/userv-groupmanage/usr/share/doc/groupmanage \
- debian/tmp/userv-groupmanage/usr/share/doc/userv-groupmanage
- #
- set -e; for p in $(packages); do \
- install -d $t/$$p/DEBIAN $t/$$p/usr/share/doc/$$p; \
- cp debian/copyright debian/changelog \
- $t/$$p/usr/share/doc/$$p/; \
- ln -s changelog.gz \
- $t/$$p/usr/share/doc/$$p/changelog.Debian.gz; \
- gzip -9v $t/$$p/usr/share/doc/$$p/changelog; \
- done
- #
- rename 's/\.example$$//' $t/userv-ipif/etc/userv/vpn/*.example \
- $t/userv-dyndns/etc/userv/dyndns-service-users.example \
- $t/userv-groupmanage/etc/groupmanage.conf.example
- rename 's/\.distrib$$//' $t/*/etc/userv/services.d/*.distrib
- rename 's/$$/\.disabled/' $t/userv-misc/etc/userv/services.d/mailq
- set -e; for p in $(packages); do \
- cd $t/$$p; \
- test ! -d etc || \
- find etc -type f -exec printf '/%s\n' '{}' ';' \
- >>DEBIAN/conffiles; \
- done
- #
- mv $t/userv-misc/usr/bin/mailq $t/userv-misc/usr/bin/mailq.userv
- #
-# gzip -9f $t/*/usr/share/man/man*/*
-
-binary-hook-userv-misc:
-binary-hook-userv-groupmanage:
-binary-hook-userv-cgi:
-binary-hook-userv-dyndns:
-binary-hook-userv-ipif:
-binary-hook-userv-git-daemon:
-
-binary-one:
- set -e; for f in preinst postinst prerm postrm conffiles; do \
- test -f debian/$p/$$f || continue; \
- cp debian/$p/$$f $t/$p/DEBIAN/$$f; \
- chmod u=rwX,go=rX $t/$p/DEBIAN/$$f; \
- done
- dpkg-gencontrol -p$p -P$t/$p -Tdebian/sv-$p
- chown -R root.root debian/tmp
- chmod -R g-ws debian/tmp
- debian/rules binary-hook-$p
- dpkg --build $t/$p ..
-
-binary-indep: checkroot build binary-prep
- set -e; for p in $(packages_indep); do \
- debian/rules binary-one p=$$p; done
-
-binary-arch: checkroot build binary-prep
- $(checkdir)
- dpkg-shlibdeps -Tdebian/sv-userv-ipif \
- $t/userv-ipif/usr/bin/udptunnel-forwarder \
- $t/userv-ipif/usr/lib/userv/ipif
- dpkg-shlibdeps -Tdebian/sv-userv-cgi \
- $t/userv-cgi/usr/lib/userv/cgi/target \
- $t/userv-cgi/usr/lib/userv/cgi/cgi/ucgi
- set -e; for p in $(packages_arch); \
- do debian/rules binary-one p=$$p; done
-
define checkdir
test -f ipif/service.c
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`"
-
-.PHONY: binary binary-arch binary-indep clean checkroot