1#
2# $Id: Makefile.in,v 1.2 2008/11/20 21:40:02 Exp $
3#
4
5srcdir=	@srcdir@
6CFLAGS=	@CFLAGS@ @DEFS@
7LDFLAGS=@LDFLAGS@
8LIBOBJS=@LIBOBJS@
9LIBS=	@LIBS@
10CC=	@CC@
11YACC=	@YACC@
12LEX=	@LEX@
13TARGET=	dhcp6c dhcp6s dhcp6r
14DESTDIR=
15
16INSTALL=@INSTALL@
17INSTALL_PROGRAM=@INSTALL_PROGRAM@
18INSTALL_DATA=@INSTALL_DATA@
19prefix=	@prefix@
20exec_prefix=	@exec_prefix@
21bindir=	@bindir@
22sbindir=@sbindir@
23mandir=	@mandir@
24initdir=/etc/rc.d/init.d
25etc=/etc
26sysconfigdir=/etc/sysconfig
27CHKCONFIG=/sbin/chkconfig
28
29COMMONGENSRCS=lease_token.c
30CLIENTGENSRCS=client6_parse.c client6_token.c dad_token.c ra_token.c \
31		resolv_token.c radvd_token.c
32SERVERGENSRCS=server6_parse.c server6_token.c 
33CLIENTOBJS=	dhcp6c.o common.o config.o timer.o client6_addr.o \
34		hash.o lease.o netlink.o\
35	$(CLIENTGENSRCS:%.c=%.o) $(COMMONGENSRCS:%.c=%.o)
36SERVOBJS=	dhcp6s.o common.o timer.o hash.o lease.o \
37		server6_conf.o server6_addr.o \
38	$(SERVERGENSRCS:%.c=%.o) $(COMMONGENSRCS:%.c=%.o)
39RELAYOBJS=	dhcp6r.o relay6_database.o relay6_parser.o relay6_socket.o
40
41CLEANFILES=cf.tab.h cp.tab.h sf.tab.h dad_token.c ra_token.c client6_token.c client6_parse.c \
42		server6_parse.c server6_token.c lease_token.c resolv_token.c radvd_token.c
43
44all:	$(TARGET) 
45dhcp6c:	$(CLIENTOBJS) $(LIBOBJS)
46	$(CC) $(LDFLAGS) -o dhcp6c $(CLIENTOBJS) $(LIBOBJS) $(LIBS) 
47dhcp6s:	$(SERVOBJS) $(LIBOBJS)
48	$(CC) $(LDFLAGS) -o dhcp6s $(SERVOBJS) $(LIBOBJS) $(LIBS) 
49dhcp6r: $(RELAYOBJS) $(LIBOBJS)
50	$(CC) $(LDFLAGS) -o dhcp6r $(RELAYOBJS)
51
52dad_token.c: dad_token.l
53	$(LEX) -Pifyy dad_token.l
54	mv lex.ifyy.c $@
55
56ra_token.c: ra_token.l
57	$(LEX) -Prayy ra_token.l
58	mv lex.rayy.c $@
59
60resolv_token.c: resolv_token.l
61	$(LEX) -Prvyy resolv_token.l
62	mv lex.rvyy.c $@
63
64radvd_token.c: radvd_token.l
65	$(LEX) -Prdyy radvd_token.l
66	mv lex.rdyy.c $@
67
68client6_parse.c cp.tab.h: client6_parse.y
69	$(YACC) -d -p cpyy client6_parse.y
70	mv y.tab.h cp.tab.h
71	mv y.tab.c client6_parse.c
72
73client6_token.c: client6_token.l
74	$(LEX) -Pcpyy client6_token.l
75	mv lex.cpyy.c $@	
76
77lease_token.c: lease_token.l
78	$(LEX) -Plyy lease_token.l
79	mv lex.lyy.c $@
80
81server6_parse.c sf.tab.h: server6_parse.y
82	$(YACC) -d -p sfyy server6_parse.y
83	mv y.tab.h sf.tab.h
84	mv y.tab.c server6_parse.c 
85
86server6_token.c: server6_token.l sf.tab.h
87	$(LEX) -Psfyy server6_token.l
88	mv lex.sfyy.c $@
89
90install::
91	$(INSTALL) -d $(DESTDIR)$(sbindir)
92	$(INSTALL_PROGRAM) -s -o bin -g bin $(TARGET) $(DESTDIR)$(sbindir)
93	$(INSTALL) -d $(DESTDIR)$(mandir)/man8 $(DESTDIR)$(mandir)/man5
94	$(INSTALL_DATA) -o bin -g bin dhcp6c.8 $(DESTDIR)$(mandir)/man8/
95	$(INSTALL_DATA) -o bin -g bin dhcp6s.8 $(DESTDIR)$(mandir)/man8/
96	$(INSTALL_DATA) -o bin -g bin dhcp6r.8 $(DESTDIR)$(mandir)/man8/
97	$(INSTALL_DATA) -o bin -g bin dhcp6c.conf.5 $(DESTDIR)$(mandir)/man5/
98	$(INSTALL_DATA) -o bin -g bin dhcp6s.conf.5 $(DESTDIR)$(mandir)/man5/
99
100rh_install:: install
101	$(INSTALL) -d $(initdir)
102	$(INSTALL_PROGRAM) -o root -g root dhcp6s.sh $(initdir)/dhcp6s
103	$(INSTALL_PROGRAM) -o root -g root dhcp6c.sh $(initdir)/dhcp6c
104	$(CHKCONFIG) --add dhcp6s
105	$(CHKCONFIG) --add dhcp6c
106
107uninstall::
108	for progs in $(TARGET); do \
109		/bin/rm -f $(sbindir)/$$progs; \
110	done
111	/bin/rm -f $(mandir)/man8/dhcp6c.8
112	/bin/rm -f $(mandir)/man8/dhcp6s.8
113	/bin/rm -f $(mandir)/man5/dhcp6c.conf.5
114	/bin/rm -f $(mandir)/man5/dhcp6s.conf.5
115
116rh_uninstall:: uninstall
117	$(CHKCONFIG) --del dhcp6s
118	$(CHKCONFIG) --del dhcp6c
119	/bin/rm -f $(initdir)/dhcp6s
120	/bin/rm -f $(initdir)/dhcp6c
121
122includes::
123
124clean::
125	/bin/rm -f *.o $(TARGET) $(CLEANFILES) $(GENSRCS)
126
127distclean:: clean
128	/bin/rm -f config.cache config.log config.status .depend 
129
130depend:
131	mkdep ${CFLAGS:M-[ID]*} $(srcdir)/*.c
132