Initial import from FreeBSD RELENG_4:
[dragonfly.git] / contrib / isc-dhcp / client / Makefile.dist
1 # Makefile.dist
2 #
3 # Copyright (c) 1996-2002 Internet Software Consortium.
4 # Use is subject to license terms which appear in the file named
5 # ISC-LICENSE that should have accompanied this file when you
6 # received it.   If a file named ISC-LICENSE did not accompany this
7 # file, or you are not sure the one you have is correct, you may
8 # obtain an applicable copy of the license at:
9 #
10 #             http://www.isc.org/isc-license-1.0.html. 
11 #
12 # This file is part of the ISC DHCP distribution.   The documentation
13 # associated with this file is listed in the file DOCUMENTATION,
14 # included in the top-level directory of this release.
15 #
16 # Support and other services are available for ISC products - see
17 # http://www.isc.org for more information.
18 #
19
20 CATMANPAGES = dhclient.cat8 dhclient.conf.cat5 dhclient-script.cat8 \
21               dhclient.leases.cat5
22 SEDMANPAGES = dhclient.man8 dhclient.conf.man5 dhclient-script.man8 \
23               dhclient.leases.man5
24 SRCS   = dhclient.c clparse.c
25 OBJS   = dhclient.o clparse.o
26 PROG   = dhclient
27 MAN    = dhclient.8 dhclient.conf.5 dhclient-script.8 dhclient.leases.5
28
29 INCLUDES = -I$(TOP) $(BINDINC) -I$(TOP)/includes
30 DHCPLIB = ../common/libdhcp.a $(BINDLIB) ../omapip/libomapi.a ../dst/libdst.a
31 CFLAGS = $(DEBUG) $(PREDEFINES) $(INCLUDES) $(COPTS) \
32                 -DCLIENT_PATH=${CLIENT_PATH}
33
34 all:    $(PROG) $(CATMANPAGES)
35
36 install: all
37         for dir in $(CLIENTBINDIR) $(ETC) $(FFMANDIR) $(ADMMANDIR) $(VARDB); \
38         do \
39           foo=""; \
40           for bar in `echo $(DESTDIR)$${dir} |tr / ' '`; do \
41             foo=$${foo}/$$bar; \
42             if [ ! -d $$foo ]; then \
43               mkdir $$foo; \
44               chmod 755 $$foo; \
45             fi; \
46           done; \
47         done
48         $(INSTALL) dhclient $(DESTDIR)$(CLIENTBINDIR)
49         $(CHMOD) 755 $(DESTDIR)$(CLIENTBINDIR)/dhclient
50         if [ x$(SCRIPT) = xnone ]; then \
51           echo "No client script available."; \
52         else \
53           $(INSTALL) $(TOP)/client/scripts/$(SCRIPT)\
54                                 $(DESTDIR)$(CLIENTBINDIR)/dhclient-script; \
55           $(CHMOD) 700 $(DESTDIR)$(CLIENTBINDIR)/dhclient-script; \
56         fi
57         $(MANINSTALL) $(MANFROM) dhclient.$(MANCAT)8 $(MANTO) \
58                         $(DESTDIR)$(ADMMANDIR)/dhclient$(ADMMANEXT)
59         $(MANINSTALL) $(MANFROM) dhclient-script.$(MANCAT)8 $(MANTO) \
60                         $(DESTDIR)$(ADMMANDIR)/dhclient-script$(ADMMANEXT)
61         $(MANINSTALL) $(MANFROM) dhclient.conf.$(MANCAT)5 $(MANTO) \
62                         $(DESTDIR)$(FFMANDIR)/dhclient.conf$(FFMANEXT)
63         $(MANINSTALL) $(MANFROM) dhclient.leases.$(MANCAT)5 $(MANTO) \
64                         $(DESTDIR)$(FFMANDIR)/dhclient.leases$(FFMANEXT)
65
66 depend:
67         $(MKDEP) $(INCLUDES) $(PREDEFINES) $(SRCS)
68
69 clean:
70         -rm -f $(OBJS)
71
72 realclean: clean
73         -rm -f $(PROG) $(CATMANPAGES) $(SEDMANPAGES) *~ #*
74
75 distclean: realclean
76         -rm -f Makefile
77
78 links:
79         @for foo in $(SRCS) $(MAN); do \
80           if [ ! -b $$foo ]; then \
81             rm -f $$foo; \
82           fi; \
83           ln -s $(TOP)/client/$$foo $$foo; \
84         done
85
86 # These should only be done on 4.4 BSD-based systems, since the mandoc
87 # macros aren't available on older unices.   Catted man pages are
88 # provided in the distribution so that this doesn't become a problem.
89
90 dhclient.cat8:  dhclient.man8
91         nroff -man dhclient.man8 >dhclient.cat8
92
93 dhclient.man8: dhclient.8
94         sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \
95                 -e "s#CLIENTBINDIR#$(CLIENTBINDIR)#g" \
96                 -e "s#RUNDIR#$(VARRUN)#g" < dhclient.8 >dhclient.man8
97
98 dhclient-script.cat8:   dhclient-script.man8
99         nroff -man dhclient-script.man8 >dhclient-script.cat8
100
101 dhclient-script.man8:   dhclient-script.8
102         sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \
103                 -e "s#CLIENTBINDIR#$(CLIENTBINDIR)#g" \
104                 -e "s#RUNDIR#$(VARRUN)#g" < dhclient-script.8 \
105                                                 >dhclient-script.man8
106
107 dhclient.conf.man5:     dhclient.conf.5
108         sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \
109                 -e "s#CLIENTBINDIR#$(CLIENTBINDIR)#g" \
110                 -e "s#RUNDIR#$(VARRUN)#g" < dhclient.conf.5 \
111                                                 >dhclient.conf.man5
112
113 dhclient.conf.cat5:     dhclient.conf.man5
114         nroff -man dhclient.conf.man5 >dhclient.conf.cat5
115
116 dhclient.leases.man5:   dhclient.leases.5
117         sed -e "s#ETCDIR#$(ETC)#g" -e "s#DBDIR#$(VARDB)#g" \
118                 -e "s#CLIENTBINDIR#$(CLIENTBINDIR)#g" \
119                 -e "s#RUNDIR#$(VARRUN)#g" < dhclient.leases.5 \
120                                                 >dhclient.leases.man5
121
122 dhclient.leases.cat5:   dhclient.leases.man5
123         nroff -man dhclient.leases.man5 >dhclient.leases.cat5
124
125
126 dhclient:       $(OBJS) $(DHCPLIB)
127         $(CC) $(LFLAGS) -o $(PROG) $(OBJS) $(DHCPLIB) $(LIBS)
128
129 # Dependencies (semi-automatically-generated)