]>
Commit | Line | Data |
---|---|---|
5f5d1ea2 TL |
1 | # Makefile.dist |
2 | # | |
7512d88b | 3 | # Copyright (c) 2004-2007 by Internet Systems Consortium, Inc. ("ISC") |
98311e4b | 4 | # Copyright (c) 1996-2003 by Internet Software Consortium |
5f5d1ea2 | 5 | # |
7512d88b TM |
6 | # This Source Code Form is subject to the terms of the Mozilla Public |
7 | # License, v. 2.0. If a copy of the MPL was not distributed with this | |
8 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. | |
5f5d1ea2 | 9 | # |
98311e4b DH |
10 | # THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES |
11 | # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
12 | # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR | |
13 | # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
14 | # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
15 | # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT | |
16 | # OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
5f5d1ea2 | 17 | # |
98311e4b DH |
18 | # Internet Systems Consortium, Inc. |
19 | # 950 Charter Street | |
20 | # Redwood City, CA 94063 | |
21 | # <info@isc.org> | |
2c85ac9b | 22 | # https://www.isc.org/ |
5f5d1ea2 TL |
23 | # |
24 | ||
0f829600 | 25 | CATMANPAGES = dhcpd.cat8 dhcpd.conf.cat5 dhcpd.leases.cat5 |
74aa4f0e | 26 | SEDMANPAGES = dhcpd.man8 dhcpd.conf.man5 dhcpd.leases.man5 |
8b9bc09d | 27 | SRCS = dhcpd.c dhcp.c bootp.c confpars.c db.c class.c failover.c \ |
98bd7ca0 DH |
28 | omapi.c mdb.c stables.c salloc.c ddns.c dhcpleasequery.c dhcpv6.c \ |
29 | mdb6.c | |
8b9bc09d | 30 | OBJS = dhcpd.o dhcp.o bootp.o confpars.o db.o class.o failover.o \ |
98bd7ca0 DH |
31 | omapi.o mdb.o stables.o salloc.o ddns.o dhcpleasequery.o dhcpv6.o \ |
32 | mdb6.o | |
33 | PROG = dhcpd testmdb6 | |
0f829600 | 34 | MAN = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5 |
5f5d1ea2 | 35 | |
88dd0d20 | 36 | INCLUDES = -I$(TOP) $(BINDINC) -I$(TOP)/includes |
793b7b9f | 37 | DHCPLIB = ../common/libdhcp.a $(BINDLIB) ../omapip/libomapi.a ../dst/libdst.a |
5f5d1ea2 TL |
38 | CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) |
39 | ||
40 | all: $(PROG) $(CATMANPAGES) | |
41 | ||
74f45f96 TL |
42 | install: all |
43 | for dir in $(BINDIR) $(ADMMANDIR) $(FFMANDIR) $(VARDB); do \ | |
44 | foo=""; \ | |
45 | for bar in `echo $(DESTDIR)$${dir} |tr / ' '`; do \ | |
46 | foo=$${foo}/$$bar; \ | |
47 | if [ ! -d $$foo ]; then \ | |
48 | mkdir $$foo; \ | |
06e77c34 | 49 | $(CHMOD) 755 $$foo; \ |
086032ce | 50 | fi; \ |
086032ce TL |
51 | done; \ |
52 | done | |
74f45f96 TL |
53 | $(INSTALL) dhcpd $(DESTDIR)$(BINDIR) |
54 | $(CHMOD) 755 $(DESTDIR)$(BINDIR)/dhcpd | |
fa007e82 | 55 | $(MANINSTALL) $(MANFROM) dhcpd.$(MANCAT)8 $(MANTO) \ |
74f45f96 | 56 | $(DESTDIR)$(ADMMANDIR)/dhcpd$(ADMMANEXT) |
fa007e82 | 57 | $(MANINSTALL) $(MANFROM) dhcpd.conf.$(MANCAT)5 $(MANTO) \ |
74f45f96 | 58 | $(DESTDIR)$(FFMANDIR)/dhcpd.conf$(FFMANEXT) |
fa007e82 | 59 | $(MANINSTALL) $(MANFROM) dhcpd.leases.$(MANCAT)5 $(MANTO) \ |
74f45f96 | 60 | $(DESTDIR)$(FFMANDIR)/dhcpd.leases$(FFMANEXT) |
06e77c34 DH |
61 | $(TOUCH) $(DESTDIR)$(VARDB)/dhcpd.leases |
62 | # Note file mode is hardcoded to mode 0664 in server/db.c (889). | |
63 | $(CHMOD) 664 $(DESTDIR)$(VARDB)/dhcpd.leases | |
5f5d1ea2 | 64 | |
94ab0b3b | 65 | depend: |
88dd0d20 | 66 | $(MKDEP) $(INCLUDES) $(PREDEFINES) $(SRCS) |
94ab0b3b | 67 | |
5f5d1ea2 TL |
68 | clean: |
69 | -rm -f $(OBJS) | |
94ab0b3b | 70 | |
5f5d1ea2 | 71 | realclean: clean |
74aa4f0e | 72 | -rm -f $(PROG) $(CATMANPAGES) $(SEDMANPAGES) *~ #* |
5f5d1ea2 TL |
73 | |
74 | distclean: realclean | |
75 | -rm -f Makefile | |
76 | ||
88dd0d20 TL |
77 | links: |
78 | @for foo in $(SRCS) $(MAN); do \ | |
79 | if [ ! -b $$foo ]; then \ | |
80 | rm -f $$foo; \ | |
81 | fi; \ | |
82 | ln -s $(TOP)/server/$$foo $$foo; \ | |
83 | done | |
84 | ||
5f5d1ea2 TL |
85 | # These should only be done on 4.4 BSD-based systems, since the mandoc |
86 | # macros aren't available on older unices. Catted man pages are | |
87 | # provided in the distribution so that this doesn't become a problem. | |
88 | ||
ff7f93ee TL |
89 | dhcpd.cat8: dhcpd.man8 |
90 | nroff -man dhcpd.man8 >dhcpd.cat8 | |
91 | ||
92 | dhcpd.man8: dhcpd.8 | |
93 | sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \ | |
94 | -e "s#RUNDIR#$(VARRUN)#g" < dhcpd.8 >dhcpd.man8 | |
95 | ||
96 | dhcpd.conf.cat5: dhcpd.conf.man5 | |
97 | nroff -man dhcpd.conf.man5 >dhcpd.conf.cat5 | |
98 | ||
99 | dhcpd.conf.man5: dhcpd.conf.5 | |
0f829600 | 100 | sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \ |
ff7f93ee | 101 | -e "s#RUNDIR#$(VARRUN)#g" < dhcpd.conf.5 >dhcpd.conf.man5 |
5f5d1ea2 | 102 | |
ff7f93ee TL |
103 | dhcpd.leases.cat5: dhcpd.leases.man5 |
104 | nroff -man dhcpd.leases.man5 >dhcpd.leases.cat5 | |
5f5d1ea2 | 105 | |
ff7f93ee | 106 | dhcpd.leases.man5: dhcpd.leases.5 |
0f829600 | 107 | sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \ |
ff7f93ee | 108 | -e "s#RUNDIR#$(VARRUN)#g" < dhcpd.leases.5 >dhcpd.leases.man5 |
0f829600 | 109 | |
b4c0cd45 | 110 | dhcpd: $(OBJS) $(COBJ) $(DHCPLIB) |
5f5d1ea2 TL |
111 | $(CC) $(LFLAGS) -o dhcpd $(OBJS) $(DHCPLIB) $(LIBS) |
112 | ||
98bd7ca0 | 113 | testmdb6.o: mdb6.c |
6705543f DH |
114 | $(CC) -c -DUNIT_TEST $(CFLAGS) -o testmdb6.o $(INCLUDES) \ |
115 | $(PREDEFINES) mdb6.c | |
98bd7ca0 DH |
116 | |
117 | testdhcpd.o: dhcpd.c | |
6705543f DH |
118 | $(CC) -c -DUNIT_TEST $(CFLAGS) -o testdhcpd.o $(INCLUDES) \ |
119 | $(PREDEFINES) dhcpd.c | |
98bd7ca0 DH |
120 | |
121 | TOBJS = dhcp.o bootp.o confpars.o db.o class.o failover.o \ | |
122 | omapi.o mdb.o stables.o salloc.o ddns.o dhcpleasequery.o dhcpv6.o | |
123 | ||
124 | testmdb6: testmdb6.o testdhcpd.o $(TOBJS) $(COBJ) $(DHCPLIB) | |
125 | $(CC) $(LFLAGS) -o testmdb6 testmdb6.o testdhcpd.o \ | |
126 | $(TOBJS) $(DHCPLIB) $(LIBS) | |
127 | ||
5f5d1ea2 | 128 | # Dependencies (semi-automatically-generated) |