chiark / gitweb /
xbatmon-simple: Saner build rune.
[chiark-utils.git] / debian / rules
index 86fb5b4b4edb2469ea04b01524e664b315b4418f..62d84cfccfdc115b37bdda682985667e2c980c76 100755 (executable)
@@ -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
@@ -13,23 +15,27 @@ t=  $d/tmp
 
 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; 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,7 +80,6 @@ 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 \
@@ -97,6 +102,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 -isp -p$p -P$t/$p -Tdebian/sv-$p
        chown -R root.root debian/tmp
        chmod -R g-ws debian/tmp
@@ -109,13 +115,27 @@ 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/[^x]* \
-               -dSuggests $t/chiark-utils-bin/usr/bin/x*
+       set -e; for f in $t/chiark-utils-bin/usr/bin/*; do \
+               case "$$f" in \
+               */xbatmon-simple)       d=Suggests      ;; \
+               */watershed|*/summer)   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