8d769cc9 |
1 | ## Makefile for miscellaneous stuff |
2 | ## |
3 | ## No proper build system here. Just kludgy hacks. |
4 | |
f342fce2 |
5 | VERSION = 1.1.0 |
6 | |
e063712b |
7 | BINSCRIPTS = \ |
8 | cdb-assign cdb-list check-sender \ |
e9d283da |
9 | unfwd splitconf z |
f342fce2 |
10 | |
e063712b |
11 | SBINSCRIPTS = \ |
12 | shadowfix |
13 | |
14 | SCRIPTS = $(BINSCRIPTS) $(SBINSCRIPTS) |
15 | |
16 | BINPROGS = \ |
e9d283da |
17 | not \ |
8d769cc9 |
18 | cdb-probe cdb-check-domain \ |
f342fce2 |
19 | gorp \ |
20 | locking if-mtu |
21 | |
e063712b |
22 | SBINPROGS = \ |
23 | qmail-checkspam |
24 | |
25 | PROGS = $(BINPROGS) $(SBINPROGS) |
26 | |
27 | PERLLIBS = MdwOpt.pm |
28 | |
29 | LIBS = \ |
8d769cc9 |
30 | xtitle.so |
31 | |
f342fce2 |
32 | MAN1 = \ |
e9d283da |
33 | not.1 z.1 \ |
f342fce2 |
34 | cdb-assign.1 cdb-list.1 cdb-probe.1 cdb-check-domain.1 \ |
35 | gorp.1 \ |
36 | unfwd.1 splitconf.1 locking.1 if-mtu.1 |
37 | |
38 | MAN8 = \ |
e063712b |
39 | qmail-checkspam.8 \ |
40 | shadowfix.8 |
41 | |
42 | BUILDFILES = \ |
43 | shadowfix.8 |
f342fce2 |
44 | |
8d769cc9 |
45 | CC = gcc |
46 | LD = gcc |
f342fce2 |
47 | CFLAGS = -O2 -g -pedantic -Wall -DVERSION=\"$(VERSION)\" |
8d769cc9 |
48 | LINK = $(LD) $(LDFLAGS) -o $@ $^ |
49 | |
f342fce2 |
50 | prefix = /usr/local |
51 | bindir = $(prefix)/bin |
e063712b |
52 | sbindir = $(prefix)/sbin |
f342fce2 |
53 | mandir = $(prefix)/man |
54 | man1dir = $(mandir)/man1 |
55 | man8dir = $(mandir)/man8 |
56 | libdir = $(prefix)/lib |
e063712b |
57 | perllibdir = $(libdir)/site_perl |
f342fce2 |
58 | |
de6fc7a9 |
59 | all: $(BUILDFILES) $(PROGS) $(LIBS) |
f342fce2 |
60 | |
61 | install: all |
e063712b |
62 | [ -d $(libdir) ] || install -d $(libdir) |
63 | install -m644 $(LIBS) $(libdir) |
64 | [ -d $(perllibdir) ] || install -d $(perllibdir) |
65 | install -m644 $(PERLLIBS) $(perllibdir) |
f342fce2 |
66 | [ -d $(bindir) ] || install -d $(bindir) |
e063712b |
67 | install -m775 $(BINPROGS) $(BINSCRIPTS) $(bindir) |
68 | [ -d $(sbindir) ] || install -d $(sbindir) |
69 | install -m775 $(SBINPROGS) $(SBINSCRIPTS) $(sbindir) |
f342fce2 |
70 | [ -d $(man1dir) ] || install -d $(man1dir) |
71 | install -m644 $(MAN1) $(man1dir) |
72 | [ -d $(man8dir) ] || install -d $(man8dir) |
73 | install -m644 $(MAN8) $(man8dir) |
8d769cc9 |
74 | |
75 | qmail-checkspam: qmail-checkspam.o |
76 | $(LINK) -lspamc |
77 | |
78 | cdb-probe: cdb-probe.o |
79 | $(LINK) -lfreecdb |
80 | |
81 | cdb-check-domain: cdb-check-domain.o |
82 | $(LINK) -lfreecdb |
83 | |
84 | not: not.o |
85 | $(LINK) |
86 | |
87 | xtitle.o: xtitle.c |
88 | $(CC) $(CFLAGS) -c -fpic -I/usr/include/bash -DBASH_BUILTIN -o $@ $^ |
89 | xtitle.so: xtitle.o |
90 | $(LINK) -shared |
91 | |
f342fce2 |
92 | gorp: gorp.o |
93 | $(LINK) -lcatacomb -lmLib |
94 | |
95 | locking: locking.o |
96 | $(LINK) -lmLib |
97 | |
98 | if-mtu: if-mtu.o |
99 | $(LINK) |
100 | |
e063712b |
101 | shadowfix.8: shadowfix |
de6fc7a9 |
102 | pod2man --section 8 shadowfix >shadowfix.8.new |
e063712b |
103 | mv shadowfix.8.new shadowfix.8 |
104 | |
f342fce2 |
105 | clean:; rm -f *.o *~ $(PROGS) $(OTHERS) |
8d769cc9 |
106 | |
f342fce2 |
107 | .PHONY: all clean install |