X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=chiark-utils.git;a=blobdiff_plain;f=debian%2Frules;h=ee7e2832a6b586d38ec297915d59dcc7d28fd0f0;hp=54280cd2cd0cf445f9e6d9ecbaf498db1f3eac2e;hb=30cbd6a4e31c37e9726f1d6f1eaab7a60ba7aa76;hpb=e6baac1140f363866393b9937db076e0e1b327e3;ds=sidebyside diff --git a/debian/rules b/debian/rules index 54280cd..ee7e283 100755 --- a/debian/rules +++ b/debian/rules @@ -1,35 +1,48 @@ #!/usr/bin/make -f -subdirs_build= cprogs +SHELL=/bin/bash + +subdirs_build_arch= cprogs subdirs_nobuild=backup sync-accounts scripts package= chiark-utils packages_indep= chiark-backup chiark-scripts -packages_arch= chiark-rwbuffer chiark-really +packages_arch= chiark-rwbuffer chiark-really chiark-utils-bin packages= $(packages_indep) $(packages_arch) cwd= $(shell pwd) d= $(cwd)/debian t= $d/tmp +makebuildargs := OPTIMISE= DEBUG= \ + CMDLINE_CFLAGS="$(shell dpkg-buildflags --get CFLAGS)" \ + CMDLINE_CPPFLAGS="$(shell dpkg-buildflags --get CPPFLAGS)" \ + CMDLINE_LDFLAGS="$(shell dpkg-buildflags --get LDFLAGS)" + build: $(checkdir) - set -e; for s in $(subdirs_build); do $(MAKE) -C $$s all; done + set -e; for s in $(subdirs_build_arch); do \ + $(MAKE) -C $$s all $(makebuildargs); \ + done touch build +build-indep: build +build-arch: build + clean: $(checkdir) rm -f build - set -e; for s in $(subdirs_build); do \ + set -e; for s in $(subdirs_build_arch); do \ $(MAKE) -C $$s -i distclean || \ $(MAKE) -C $$s -f Makefile.in distclean; \ done rm -rf *~ debian/tmp debian/*~ debian/files* debian/substvars* + rm -rf debian/sv-* debian/*.debhelper.log binary-prep: $(checkdir) rm -rf debian/tmp* # - set -e; for s in $(subdirs_build) $(subdirs_nobuild); do \ + set -e; for s in $(subdirs_build_arch) $(subdirs_nobuild); do \ $(MAKE) -C $$s install install-docs install-examples \ prefix=$t/$$s/usr \ etcdir=$t/$$s/etc \ @@ -37,6 +50,8 @@ binary-prep: mandir=$t/$$s/usr/share/man; \ done # + mv $t/cprogs $t/chiark-utils-bin + # cp -a debian/tmp/sync-accounts/* debian/tmp/scripts/. rm -r debian/tmp/sync-accounts mv debian/tmp/scripts debian/tmp/chiark-scripts @@ -53,17 +68,30 @@ binary-prep: # install -d $t/chiark-rwbuffer/usr/bin install -d $t/chiark-rwbuffer/usr/share/man/man1 - cd $t/cprogs/usr/bin && \ + cd $t/chiark-utils-bin/usr/bin && \ mv readbuffer writebuffer $t/chiark-rwbuffer/usr/bin/ - cd $t/cprogs/usr/share/man/man1 && \ + cd $t/chiark-utils-bin/usr/share/man/man1 && \ mv readbuffer.1 writebuffer.1 $t/chiark-rwbuffer/usr/share/man/man1/ # - install -sd $t/chiark-really/usr/sbin + install -d $t/chiark-backup/usr/share/man/man1 + cp backup/man/*.1 $t/chiark-backup/usr/share/man/man1/ + cd $t/chiark-backup/usr/share/man/man1 && \ + for m in *.1; do \ + mv "$$m" backup-"$$m"; \ + done + cp \ + $t/chiark-backup/usr/share/doc/chiark-backup/examples/chiark/settings.sh \ + $t/chiark-backup/etc/chiark-backup/settings.sh + # + install -d $t/chiark-really/usr/sbin install -d $t/chiark-really/usr/share/man/man8 - cd $t/cprogs/usr/sbin && \ + cd $t/chiark-utils-bin/usr/sbin && \ mv really $t/chiark-really/usr/sbin/ - cd $t/cprogs/usr/share/man/man8 && \ + cd $t/chiark-utils-bin/usr/share/man/man8 && \ mv really.8 $t/chiark-really/usr/share/man/man8/ + rm $t/chiark-utils-bin/usr/sbin/trivsoundd \ + $t/chiark-utils-bin/usr/share/man/man8/trivsoundd.8 + rmdir $t/chiark-utils-bin/usr/sbin # gzip -9f $t/*/usr/share/man/man*/* @@ -72,6 +100,7 @@ binary-hook-chiark-rwbuffer: binary-hook-sync-accounts: binary-hook-chiark-scripts: binary-hook-chiark-really: +binary-hook-chiark-utils-bin: binary-one: set -e; for f in preinst postinst prerm postrm conffiles; do \ @@ -79,6 +108,7 @@ binary-one: cp debian/$p/$$f $t/$p/DEBIAN/$$f; \ chmod u=rwX,go=rX $t/$p/DEBIAN/$$f; \ done + dh_link -p$p -Pdebian/tmp/$p dpkg-gencontrol -p$p -P$t/$p -Tdebian/sv-$p chown -R root.root debian/tmp chmod -R g-ws debian/tmp @@ -91,7 +121,29 @@ binary-indep: checkroot build binary-prep binary-arch: checkroot build binary-prep $(checkdir) - dpkg-shlibdeps -Tdebian/sv-chiark-rwbuffer $t/chiark-rwbuffer/usr/bin/* + set -ex; for p in chiark-really chiark-utils-bin chiark-rwbuffer; do \ + dh_strip -p$$p -Pdebian/tmp/$$p; done + dpkg-shlibdeps -Tdebian/sv-chiark-rwbuffer \ + $t/chiark-rwbuffer/usr/bin/* + dpkg-shlibdeps -Tdebian/sv-chiark-really \ + $t/chiark-really/usr/sbin/* + set -e; for f in $t/chiark-utils-bin/usr/bin/*; do \ + case "$$f" in \ + */xbatmon-simple|*/xduplic-copier) \ + d=Suggests ;; \ + */watershed|*/summer|*/cgi-fcgi-interp) \ + d=Recommends ;; \ + *) d=Depends ;; \ + esac; \ + a="$$a -d$$d $$f"; \ + done; set -x; \ + dpkg-shlibdeps -Tdebian/sv-chiark-utils-bin $$a + perl -i~ -pe ' '\ + -e' next unless m/^shlibs:/; '\ + -e' s/$$/,/; s/=/=, /; '\ + -e' s/, libgmp3(?:c2)?,/, libgmp3 | libgmp3c2,/; '\ + -e' s/=, /=/; s/,$$//; '\ + debian/sv-*[!~] set -e; for p in $(packages_arch); \ do debian/rules binary-one p=$$p; done