chiark / gitweb /
e50424d21871b22c8d183329c817af780125c55e
[misc] / Makefile
1 ## Makefile for miscellaneous stuff
2 ##
3 ## No proper build system here.  Just kludgy hacks.
4
5 VERSION = 1.1.0
6
7 SCRIPTS = \
8         cdb-assign cdb-list \
9         unfwd splitconf
10
11 PROGS = \
12         qmail-checkspam not \
13         cdb-probe cdb-check-domain \
14         gorp \
15         locking if-mtu
16
17 OTHERS = \
18         xtitle.so
19
20 MAN1 = \
21         not.1 \
22         cdb-assign.1 cdb-list.1 cdb-probe.1 cdb-check-domain.1 \
23         gorp.1 \
24         unfwd.1 splitconf.1 locking.1 if-mtu.1
25
26 MAN8 = \
27         qmail-checkspam.8
28
29 CC = gcc
30 LD = gcc
31 CFLAGS = -O2 -g -pedantic -Wall -DVERSION=\"$(VERSION)\"
32 LINK = $(LD) $(LDFLAGS) -o $@ $^
33
34 prefix = /usr/local
35 bindir = $(prefix)/bin
36 mandir = $(prefix)/man
37 man1dir = $(mandir)/man1
38 man8dir = $(mandir)/man8
39 libdir = $(prefix)/lib
40
41 all: $(PROGS) $(OTHERS)
42
43 install: all
44         [ -d $(bindir) ] || install -d $(bindir)
45         install -m775 $(PROGS) $(SCRIPTS) $(bindir)
46         [ -d $(man1dir) ] || install -d $(man1dir)
47         install -m644 $(MAN1) $(man1dir)
48         [ -d $(man8dir) ] || install -d $(man8dir)
49         install -m644 $(MAN8) $(man8dir)
50         [ -d $(libdir) ] || install -d $(libdir)
51         install -m644 xtitle.so $(libdir)
52
53 qmail-checkspam: qmail-checkspam.o
54         $(LINK) -lspamc
55
56 cdb-probe: cdb-probe.o
57         $(LINK) -lfreecdb
58
59 cdb-check-domain: cdb-check-domain.o
60         $(LINK) -lfreecdb
61
62 not: not.o
63         $(LINK)
64
65 xtitle.o: xtitle.c
66         $(CC) $(CFLAGS) -c -fpic -I/usr/include/bash -DBASH_BUILTIN -o $@ $^
67 xtitle.so: xtitle.o
68         $(LINK) -shared
69
70 gorp: gorp.o
71         $(LINK) -lcatacomb -lmLib
72
73 locking: locking.o
74         $(LINK) -lmLib
75
76 if-mtu: if-mtu.o
77         $(LINK)
78
79 clean:; rm -f *.o *~ $(PROGS) $(OTHERS)
80
81 .PHONY: all clean install