chiark / gitweb /
remountrocp is a conffile
[chiark-utils.git] / debian / rules
index b9df6ceb812342e6f311c63b3dd74487674196c5..86fb5b4b4edb2469ea04b01524e664b315b4418f 100755 (executable)
@@ -1,9 +1,10 @@
 #!/usr/bin/make -f
 
-subdirs=       backup
+subdirs_build= cprogs
+subdirs_nobuild=backup sync-accounts scripts
 package=       chiark-utils
-packages_indep=        chiark-backup chiark-named-conf
-packages_arch= chiark-rwbuffer
+packages_indep=        chiark-backup chiark-scripts
+packages_arch= chiark-rwbuffer chiark-really chiark-utils-bin
 packages=      $(packages_indep) $(packages_arch)
 
 cwd=   $(shell pwd)
@@ -12,13 +13,13 @@ t=  $d/tmp
 
 build:
        $(checkdir)
-       set -e; for s in $(subdirs); do $(MAKE) -C $$s all; done
+       set -e; for s in $(subdirs_build); do $(MAKE) -C $$s all; done
        touch build
 
 clean:
        $(checkdir)
        rm -f build
-       set -e; for s in $(subdirs); do \
+       set -e; for s in $(subdirs_build); do \
                $(MAKE) -C $$s -i distclean || \
                $(MAKE) -C $$s -f Makefile.in distclean; \
        done
@@ -28,38 +29,67 @@ 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/$$s/usr \
+                       etcdir=$t/$$s/etc \
+                       varlib=$t/$$s/var/lib \
+                       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
+       mv debian/tmp/backup debian/tmp/chiark-backup
+       #
        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; \
+                       $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
        #
-       $(MAKE) -C backup install install-docs install-examples \
-               prefix=$t/chiark-backup/usr \
-               etcdir=$t/chiark-backup/etc \
-               varlib=$t/chiark-backup/var/lib \
-               mandir=$t/chiark-backup/usr/share/man
-       #
-       $(MAKE) -C scripts install install-docs install-examples \
-               prefix=$t/chiark-named-conf/usr \
-               etcdir=$t/chiark-named-conf/etc \
-               varlib=$t/chiark-named-conf/var/lib \
-               mandir=$t/chiark-named-conf/usr/share/man
-       #
        install -d $t/chiark-rwbuffer/usr/bin
        install -d $t/chiark-rwbuffer/usr/share/man/man1
-       cd $t/chiark-backup/usr/bin && \
-               mv readbuffer writebuffer $t/chiark-rwbuffer/usr/bin
+       cd $t/chiark-utils-bin/usr/bin && \
+               mv readbuffer writebuffer $t/chiark-rwbuffer/usr/bin/
+       cd $t/chiark-utils-bin/usr/share/man/man1 && \
+               mv readbuffer.1 writebuffer.1 $t/chiark-rwbuffer/usr/share/man/man1/
+       #
+       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 && \
-               mv readbuffer.1 writebuffer.1 $t/chiark-rwbuffer/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/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
+       #
        gzip -9f $t/*/usr/share/man/man*/*
 
 binary-hook-chiark-backup:
 binary-hook-chiark-rwbuffer:
-binary-hook-chiark-named-conf:
+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 \
@@ -67,7 +97,7 @@ binary-one:
                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
+       dpkg-gencontrol -isp -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
@@ -79,12 +109,18 @@ binary-indep:      checkroot build binary-prep
 
 binary-arch:   checkroot build binary-prep
        $(checkdir)
-       dpkg-shlibdeps -Tdebian/sv-chiark-rwbuffer $t/chiark-rwbuffer/usr/bin/*
+       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 p in $(packages_arch); \
                do debian/rules binary-one p=$$p; done
 
 define checkdir
-       test -f backup/writebuffer.c
+       test -f cprogs/writebuffer.c
 endef
 
 # Below here is fairly generic really