]> git.ipfire.org Git - thirdparty/dhcp.git/blob - server/Makefile.dist
MASSIVE merge from V3-RELEASE-BRANCH into HEAD. HEAD and V3-RELEASE are
[thirdparty/dhcp.git] / server / Makefile.dist
1 # Makefile.dist
2 #
3 # Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC")
4 # Copyright (c) 1996-2003 by Internet Software Consortium
5 #
6 # Permission to use, copy, modify, and distribute this software for any
7 # purpose with or without fee is hereby granted, provided that the above
8 # copyright notice and this permission notice appear in all copies.
9 #
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.
17 #
18 # Internet Systems Consortium, Inc.
19 # 950 Charter Street
20 # Redwood City, CA 94063
21 # <info@isc.org>
22 # http://www.isc.org/
23 #
24
25 CATMANPAGES = dhcpd.cat8 dhcpd.conf.cat5 dhcpd.leases.cat5
26 SEDMANPAGES = dhcpd.man8 dhcpd.conf.man5 dhcpd.leases.man5
27 SRCS = dhcpd.c dhcp.c bootp.c confpars.c db.c class.c failover.c \
28 omapi.c mdb.c stables.c salloc.c ddns.c
29 OBJS = dhcpd.o dhcp.o bootp.o confpars.o db.o class.o failover.o \
30 omapi.o mdb.o stables.o salloc.o ddns.o
31 PROG = dhcpd
32 MAN = dhcpd.8 dhcpd.conf.5 dhcpd.leases.5
33
34 INCLUDES = -I$(TOP) $(BINDINC) -I$(TOP)/includes
35 DHCPLIB = ../common/libdhcp.a $(BINDLIB) ../omapip/libomapi.a ../dst/libdst.a
36 CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS)
37
38 all: $(PROG) $(CATMANPAGES)
39
40 install: all
41 for dir in $(BINDIR) $(ADMMANDIR) $(FFMANDIR) $(VARDB); do \
42 foo=""; \
43 for bar in `echo $(DESTDIR)$${dir} |tr / ' '`; do \
44 foo=$${foo}/$$bar; \
45 if [ ! -d $$foo ]; then \
46 mkdir $$foo; \
47 chmod 755 $$foo; \
48 fi; \
49 done; \
50 done
51 $(INSTALL) dhcpd $(DESTDIR)$(BINDIR)
52 $(CHMOD) 755 $(DESTDIR)$(BINDIR)/dhcpd
53 $(MANINSTALL) $(MANFROM) dhcpd.$(MANCAT)8 $(MANTO) \
54 $(DESTDIR)$(ADMMANDIR)/dhcpd$(ADMMANEXT)
55 $(MANINSTALL) $(MANFROM) dhcpd.conf.$(MANCAT)5 $(MANTO) \
56 $(DESTDIR)$(FFMANDIR)/dhcpd.conf$(FFMANEXT)
57 $(MANINSTALL) $(MANFROM) dhcpd.leases.$(MANCAT)5 $(MANTO) \
58 $(DESTDIR)$(FFMANDIR)/dhcpd.leases$(FFMANEXT)
59 umask 177; $(TOUCH) $(DESTDIR)$(VARDB)/dhcpd.leases
60
61 depend:
62 $(MKDEP) $(INCLUDES) $(PREDEFINES) $(SRCS)
63
64 clean:
65 -rm -f $(OBJS)
66
67 realclean: clean
68 -rm -f $(PROG) $(CATMANPAGES) $(SEDMANPAGES) *~ #*
69
70 distclean: realclean
71 -rm -f Makefile
72
73 links:
74 @for foo in $(SRCS) $(MAN); do \
75 if [ ! -b $$foo ]; then \
76 rm -f $$foo; \
77 fi; \
78 ln -s $(TOP)/server/$$foo $$foo; \
79 done
80
81 # These should only be done on 4.4 BSD-based systems, since the mandoc
82 # macros aren't available on older unices. Catted man pages are
83 # provided in the distribution so that this doesn't become a problem.
84
85 dhcpd.cat8: dhcpd.man8
86 nroff -man dhcpd.man8 >dhcpd.cat8
87
88 dhcpd.man8: dhcpd.8
89 sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \
90 -e "s#RUNDIR#$(VARRUN)#g" < dhcpd.8 >dhcpd.man8
91
92 dhcpd.conf.cat5: dhcpd.conf.man5
93 nroff -man dhcpd.conf.man5 >dhcpd.conf.cat5
94
95 dhcpd.conf.man5: dhcpd.conf.5
96 sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \
97 -e "s#RUNDIR#$(VARRUN)#g" < dhcpd.conf.5 >dhcpd.conf.man5
98
99 dhcpd.leases.cat5: dhcpd.leases.man5
100 nroff -man dhcpd.leases.man5 >dhcpd.leases.cat5
101
102 dhcpd.leases.man5: dhcpd.leases.5
103 sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \
104 -e "s#RUNDIR#$(VARRUN)#g" < dhcpd.leases.5 >dhcpd.leases.man5
105
106 dhcpd: $(OBJS) $(COBJ) $(DHCPLIB)
107 $(CC) $(LFLAGS) -o dhcpd $(OBJS) $(DHCPLIB) $(LIBS)
108
109 # Dependencies (semi-automatically-generated)