X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=chiark-utils.git;a=blobdiff_plain;f=cprogs%2FMakefile;h=cd82ab1bf55cbdc43881de5b0d1ab3685737d727;hp=fb2d9fb42c326b1ea7e2e4380c4fdf9b1645f856;hb=236653b7bc419c519da8d479abc0c78d0a748c4c;hpb=9e194d5bb088d41e7aa29042090b94d23a4ecb79 diff --git a/cprogs/Makefile b/cprogs/Makefile index fb2d9fb..cd82ab1 100644 --- a/cprogs/Makefile +++ b/cprogs/Makefile @@ -10,7 +10,7 @@ # # 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 @@ -18,60 +18,83 @@ # 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-utils-bin -WARNINGS= -Wall -Wwrite-strings -Wmissing-prototypes \ - -Wstrict-prototypes -Wpointer-arith -OPTIMISE= -O2 -DEBUG= -g -RWBUFFER_SIZE_MB=16 - -SYSTEM_GROUP= root - -prefix=/usr/local +include ../settings.make -bindir=$(prefix)/bin -sbindir=$(prefix)/sbin -mandir=${prefix}/man -man1dir=${mandir}/man1 -man8dir=${mandir}/man8 +RWBUFFER_SIZE_MB=16 -INSTALL= install -c -INSTALL_PROGRAM= $(INSTALL_SCRIPT) -s +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) -PROGRAMS= readbuffer writebuffer -DAEMONS= trivsoundd -MAN1PAGES= readbuffer.1 writebuffer.1 -MAN8PAGES= trivsoundd.8 +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) $(DAEMONS) +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 +watershed: 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: +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 + rm -f *~ ./#*# *.o $(PROGRAMS) distclean realclean: clean rm -f $(TARGETS)