# other UN*X-compatible machines, as used on chiark.greenend.org.uk.
#
# chiark backup is:
-# Copyright (C) 1997-1998,2000-2001 Ian Jackson <ian@chiark.greenend.org.uk>
+# Copyright (C) 1997-1998,2000-2001,2007
+# Ian Jackson <ian@chiark.greenend.org.uk>
# Copyright (C) 1999 Peter Maydell <pmaydell@chiark.greenend.org.uk>
#
# This is free software; you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
-# Foundation; either version 2, or (at your option) any later version.
+# Foundation; either version 3, or (at your option) any later version.
#
# This is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# details.
#
# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# with this program; if not, consult the Free Software Foundation's
+# website at www.fsf.org, or the GNU Project website at www.gnu.org.
-CC= gcc
-CFLAGS= $(WARNINGS) $(OPTIMISE) $(DEBUG)
-CPPFLAGS= -DRWBUFFER_SIZE_MB=$(RWBUFFER_SIZE_MB)
+us= chiark-backup
-WARNINGS= -Wall -Wwrite-strings -Wmissing-prototypes \
- -Wstrict-prototypes -Wpointer-arith
-OPTIMISE= -O2
-DEBUG= -g
-RWBUFFER_SIZE_MB=16
+include ../settings.make
-SYSTEM_GROUP= root
-
-prefix=/usr/local
-etcdir=/etc
-varlib=/var/lib
-
-confdir=$(etcdir)/chiark-backup
-bindir=$(prefix)/bin
-sharedir=$(prefix)/share/chiark-backup
-txtdocdir=$(prefix)/share/doc/chiark-backup
-exampledir=$(txtdocdir)/examples
-vardir=$(varlib)/chiark-backup
-mandir=${prefix}/man
-man1dir=${mandir}/man1
-
-INSTALL= install -c
-INSTALL_SHARE= $(INSTALL) -m 644 -o root -g $(SYSTEM_GROUP)
-INSTALL_SCRIPT= $(INSTALL) -m 755 -o root -g $(SYSTEM_GROUP)
-INSTALL_PROGRAM= $(INSTALL_SCRIPT) -s
-INSTALL_DIRECTORY= $(INSTALL) -m 2755 -o root -g $(SYSTEM_GROUP) -d
-
-CTARGETS= readbuffer writebuffer
-BINSCRIPTS= checkallused loaded driver takedown whatsthis labeltape
-SHARESCRIPTS= bringup full increm
-SHAREFILES= backuplib.pl
+BINSCRIPTS= checkallused loaded driver takedown whatsthis labeltape \
+ snaprsync
+SHARESCRIPTS= bringup full increm snap-drop
+SHAREFILES= backuplib.pl snap-common
+SNAPKINDS= lvm remount remountrocp nosnap
EXAMPLES= relativity chiark
-all: $(CTARGETS)
-
-readbuffer: readbuffer.o rwbuffer.o
-writebuffer: writebuffer.o rwbuffer.o
-readbuffer.o writebuffer.o rwbuffer.o: rwbuffer.h
+all:
install: all
- $(INSTALL_DIRECTORY) $(confdir) $(bindir) $(sharedir) $(vardir) $(man1dir)
- $(INSTALL_PROGRAM) $(CTARGETS) $(bindir)
+ $(INSTALL_DIRECTORY) $(confdir) $(confdir)/snap $(bindir) \
+ $(sharedir) $(vardir) $(man1dir)
set -e; for s in $(BINSCRIPTS); do \
$(INSTALL_SCRIPT) $$s $(bindir)/backup-$$s; done
$(INSTALL_SHARE) $(SHAREFILES) $(sharedir)
$(INSTALL_SCRIPT) $(SHARESCRIPTS) $(sharedir)
- $(INSTALL) -m 644 readbuffer.1 ${man1dir}/readbuffer.1
- $(INSTALL) -m 644 writebuffer.1 ${man1dir}/writebuffer.1
+ set -e; for s in $(SNAPKINDS); do \
+ d=$(confdir)/snap/$$s; \
+ test ! -f $$d || d=$$d.dist; \
+ $(INSTALL_SCRIPT) $$s $$d; done
install-docs:
$(INSTALL_DIRECTORY) $(txtdocdir)
set -e; for e in $(EXAMPLES); do \
cd examples/$$e; \
$(INSTALL_DIRECTORY) $(exampledir)/$$e; \
- $(INSTALL_SHARE) [^A-Z]*[^~] $(exampledir)/$$e; \
+ $(INSTALL_SHARE) [!A-Z]*[!~] $(exampledir)/$$e; \
if test -f SYMLINKS.tar; then \
exec <SYMLINKS.tar; \
- (set -e; cd $(exampledir) && tar -xf -); \
+ (set -e; cd $(exampledir)/$$e && tar -xf -); \
fi; \
cd ../..; \
done
rm -f *~ ./#*# *.o
distclean realclean: clean
- rm -f $(CTARGETS)