Makefile revision 76574
1# $FreeBSD: head/kerberos5/lib/libhdb/Makefile 76574 2001-05-14 09:24:50Z assar $
2
3LIB=	hdb
4CFLAGS+=-I${KRB5DIR}/include \
5	-I${INCLUDEOBJDIR} \
6	-I${KRB5DIR}/lib/krb5 \
7	-I${KRB5DIR}/lib/hdb \
8	-I${KRB5DIR}/lib/asn1 \
9	-I${KRB5DIR}/lib/roken \
10	-I${.OBJDIR} \
11	-I${ASN1OBJDIR}
12
13SRCS=	\
14	common.c				\
15	db.c					\
16	db3.c					\
17	hdb-ldap.c				\
18	hdb.c					\
19	keytab.c				\
20	mkey.c					\
21	ndbm.c					\
22	print.c					\
23	hdb_err.c				\
24	hdb_err.h				\
25	hdb_asn1.h				\
26	krb5_err.h				\
27	heim_err.h				\
28	${GEN:S/.x/.c/g}
29
30GEN=						\
31	asn1_Key.x				\
32	asn1_Event.x				\
33	asn1_HDBFlags.x				\
34	asn1_hdb_entry.x			\
35	asn1_Salt.x
36
37.include <bsd.lib.mk>
38
39.PATH:	${KRB5DIR}/lib/hdb
40.PATH:	${KRB5DIR}/lib/asn1
41.PATH:	${KRB5DIR}/lib/vers
42.PATH:	${KRB5DIR}/lib/roken
43
44build-tools:	make-print-version asn1_compile
45
46.for I in ${GEN}
47${I:S/.x/.c/}:  ${I}
48	cmp -s ${.OODATE} ${.TARGET} 2> /dev/null || cp ${.OODATE} ${.TARGET}
49.endfor
50
51CLEANFILES+=	${GEN:S/.x/.c/g} asn1.h asn1_files
52
53${GEN} hdb_asn1.h:	asn1_compile hdb.asn1
54	./asn1_compile ${KRB5DIR}/lib/hdb/hdb.asn1 hdb_asn1
55
56asn1_compile:	parse.o lex.o main.c hash.c symbol.c gen.c \
57		gen_encode.c gen_decode.c gen_free.c gen_length.c \
58		gen_copy.c gen_glue.c getarg.c warnerr.c print_version.o \
59		get_window_size.c strupr.c
60	${CC} ${CFLAGS} ${.OODATE} -o ${.TARGET}
61
62parse.o:	parse.c
63
64parse.h parse.c:	parse.y
65	${YACC}	-d ${.OODATE}
66	mv y.tab.c parse.c
67	mv y.tab.h parse.h
68
69lex.o:		lex.l
70
71print_version.o: print_version.h print_version.c
72	${CC} ${CFLAGS} -c -o ${.TARGET} ${KRB5DIR}/lib/vers/print_version.c
73
74print_version.h: make-print-version
75	./make-print-version print_version.h
76
77make-print-version: make-print-version.c
78	${CC} ${CFLAGS} -static -o ${.TARGET} ${.OODATE}
79
80CLEANFILES+=	${GEN} asn1_compile lex.o parse.o parse.c parse.h \
81		hdb_asn1.h make-print-version print_version.h print_version.o
82
83