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=30a80f09fb3ef9defb7bb96c8ecd902e9141f45d;hb=30cbd6a4e31c37e9726f1d6f1eaab7a60ba7aa76;hpb=3132b6c3eebf3f16d43c2189fc9be5e52a6b2018 diff --git a/debian/rules b/debian/rules index 30a80f0..ee7e283 100755 --- a/debian/rules +++ b/debian/rules @@ -1,6 +1,8 @@ #!/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 @@ -11,25 +13,36 @@ 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 \ @@ -74,13 +87,11 @@ binary-prep: install -d $t/chiark-really/usr/share/man/man8 cd $t/chiark-utils-bin/usr/sbin && \ mv really $t/chiark-really/usr/sbin/ - strip --strip-unneeded --remove-section .note --remove-section .comment $t/chiark-really/usr/sbin/really 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 \ - $t/chiark-utils-bin/usr/share/man/man8 + rmdir $t/chiark-utils-bin/usr/sbin # gzip -9f $t/*/usr/share/man/man*/* @@ -97,7 +108,8 @@ binary-one: cp debian/$p/$$f $t/$p/DEBIAN/$$f; \ chmod u=rwX,go=rX $t/$p/DEBIAN/$$f; \ done - dpkg-gencontrol -isp -p$p -P$t/$p -Tdebian/sv-$p + 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 debian/rules binary-hook-$p @@ -109,12 +121,29 @@ binary-indep: checkroot build binary-prep binary-arch: checkroot build binary-prep $(checkdir) + 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/* - dpkg-shlibdeps -Tdebian/sv-chiark-utils-bin \ - $t/chiark-utils-bin/usr/bin/* + 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