X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=chiark-utils.git;a=blobdiff_plain;f=cprogs%2FMakefile;h=c64a984f22e291cd98857c14f42230138d32807b;hp=48e6d93c14bfcc7e9f23551062308fa7079ef16f;hb=c72a0f46e7e39f4106fc9967cd3d233e3c97b504;hpb=c3db12b88fda05670222f143a68755bb673c0a31 diff --git a/cprogs/Makefile b/cprogs/Makefile index 48e6d93..c64a984 100644 --- a/cprogs/Makefile +++ b/cprogs/Makefile @@ -1,6 +1,103 @@ -CC= gcc -g -Wall -CFLAGS= -Werror -Wstrict-prototypes -Wmissing-prototypes \ - -Wwrite-strings -Wpointer-arith $(OPTIMISE) -OPTIMISE=-O2 +# Makefile +# simple make settings +# +# This file is part of chiark backup, a system for backing up GNU/Linux and +# other UN*X-compatible machines, as used on chiark.greenend.org.uk. +# +# chiark backup is: +# Copyright (C) 1997-1998,2000-2001 Ian Jackson +# Copyright (C) 1999 Peter Maydell +# +# 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 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 +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along +# 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. -acctdump: acctdump.o myopt.o +us= chiark-utils-bin + +include ../settings.make + +RWBUFFER_SIZE_MB=16 + +PROGRAMS= readbuffer writebuffer with-lock-ex xbatmon-simple \ + summer watershed rcopy-repeatedly xduplic-copier +SUIDSBINPROGRAMS= really +DAEMONS= trivsoundd +MAN1PAGES= readbuffer.1 writebuffer.1 with-lock-ex.1 \ + xduplic-copier.1 +MAN8PAGES= trivsoundd.8 really.8 +BUILTTXTDOCS= watershed.txt +TXTDOCS= $(BUILTTXTDOCS) + +acctdump_cc_out:=$(shell \ + printf "\#include \n\#include " \ + | $(CC) -E - 2>&1 >/dev/null \ +) +ifeq (,$(acctdump_cc_out)) +PROGRAMS+=acctdump +MAN8PAGES+=acctdump.8 +else +$(warning Not building acctdump: $(acctdump_cc_out)) +endif + +TARGETS= $(PROGRAMS) $(SUIDSBINPROGRAMS) $(DAEMONS) $(BUILTTXTDOCS) + +all: $(TARGETS) + +readbuffer: readbuffer.o rwbuffer.o +writebuffer: writebuffer.o wrbufcore.o rwbuffer.o +trivsoundd: trivsoundd.o wrbufcore.o rwbuffer.o +really: really.o myopt.o +acctdump: acctdump.o myopt.o + +acctdump.o really.o myopt.o rcopy-repeatedly.o: myopt.h +readbuffer.o writebuffer.o rwbuffer.o wrbufcore.o trivsoundd.o: rwbuffer.h + +xbatmon-simple: LDLIBS += -lX11 -lm + +xduplic-copier: LDLIBS += -lXmu -lSM -lICE -lXt -lXext +xduplic-copier: LDLIBS += -lX11 -lxcb -lXau -lXdmcp + +summer: summer.o +summer: LDLIBS += -lnettle -lgmp + +rcopy-repeatedly: rcopy-repeatedly.o myopt.o +rcopy-repeatedly: LDLIBS += -lm -lrt + +watershed: watershed.o common.o +watershed: LDLIBS += -lnettle -lgmp + +cgi-fcgi-interp: cgi-fcgi-interp.o myopt.o common.o +cgi-fcgi-interp: LDLIBS += -lnettle -lgmp + +watershed.txt: watershed.c + sed '/^$$/,$$d' <$^ >$@.new && mv -f $@.new $@ + +install: all + $(INSTALL_DIRECTORY) $(bindir) $(sbindir) + $(INSTALL_PROGRAM) $(PROGRAMS) $(bindir) + $(INSTALL_PROGRAM) $(DAEMONS) $(sbindir) + $(INSTALL) -m 4774 -o root -g $(SYSTEM_GROUP) \ + $(SUIDSBINPROGRAMS) $(sbindir) + +install-docs: watershed.txt + $(INSTALL_DIRECTORY) $(man1dir) $(man8dir) $(txtdocdir) + $(INSTALL) -m 644 $(MAN1PAGES) ${man1dir}/. + $(INSTALL) -m 644 $(MAN8PAGES) ${man8dir}/. + $(INSTALL) -m 644 $(TXTDOCS) ${txtdocdir}/. + +install-examples: + +clean: + rm -f *~ ./#*# *.o $(PROGRAMS) + +distclean realclean: clean + rm -f $(TARGETS)