summaryrefslogtreecommitdiffstats
path: root/kerberos5/lib/libhdb/Makefile
blob: 0970b1360265c9b9f56ca84b0032ef1b33198445 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# $FreeBSD$

LIB=	hdb
CFLAGS+=-I${KRB5DIR}/include \
	-I${INCLUDEOBJDIR} \
	-I${KRB5DIR}/lib/krb5 \
	-I${KRB5DIR}/lib/hdb \
	-I${KRB5DIR}/lib/asn1 \
	-I${KRB5DIR}/lib/roken \
	-I${.OBJDIR} \
	-I${ASN1OBJDIR}

SRCS=	\
	common.c				\
	db.c					\
	db3.c					\
	hdb-ldap.c				\
	hdb.c					\
	keytab.c				\
	mkey.c					\
	ndbm.c					\
	print.c					\
	hdb_err.c				\
	hdb_err.h				\
	hdb_asn1.h				\
	k524_err.h				\
	krb5_err.h				\
	heim_err.h				\
	${GEN:S/.x/.c/g}

GEN=						\
	asn1_Key.x				\
	asn1_GENERATION.x			\
	asn1_Event.x				\
	asn1_HDBFlags.x				\
	asn1_hdb_entry.x			\
	asn1_Salt.x

.include <bsd.lib.mk>

.PATH:	${KRB5DIR}/lib/hdb
.PATH:	${KRB5DIR}/lib/asn1
.PATH:	${KRB5DIR}/lib/vers
.PATH:	${KRB5DIR}/lib/roken

build-tools:	make-print-version asn1_compile

.for I in ${GEN}
${I:S/.x/.c/}:  ${I}
	cmp -s ${.OODATE} ${.TARGET} 2> /dev/null || cp ${.OODATE} ${.TARGET}
.endfor

CLEANFILES+=	${GEN:S/.x/.c/g} hdb_asn1.h asn1_files

${GEN} hdb_asn1.h:	asn1_compile hdb.asn1
	./asn1_compile ${KRB5DIR}/lib/hdb/hdb.asn1 hdb_asn1

asn1_compile:	parse.o lex.o main.c hash.c symbol.c emalloc.c gen.c \
		gen_encode.c gen_decode.c gen_free.c gen_length.c \
		gen_copy.c gen_glue.c getarg.c warnerr.c print_version.o \
		get_window_size.c strupr.c
	${CC} ${CFLAGS} ${.OODATE} -o ${.TARGET}

.if defined(BOOTSTRAPPING) && \
    ( ${BOOTSTRAPPING} < 440001 || \
    ( ${BOOTSTRAPPING} >= 500000 && ${BOOTSTRAPPING} < 500023 ))
asn1_compile: getprogname.c setprogname.c
.endif

parse.o:	parse.c

.ORDER: parse.c parse.h
parse.h parse.c:	parse.y
	${YACC}	-d ${.OODATE}
	cp y.tab.c parse.c
	cp y.tab.h parse.h

lex.o:		lex.l

print_version.o: print_version.h print_version.c
	${CC} ${CFLAGS} -c -o ${.TARGET} ${KRB5DIR}/lib/vers/print_version.c

print_version.h: make-print-version
	./make-print-version print_version.h

make-print-version: make-print-version.c
	${CC} ${CFLAGS} -static -o ${.TARGET} ${.OODATE}

CLEANFILES+=	${GEN} asn1_compile lex.o parse.o parse.c parse.h \
		hdb_asn1.h make-print-version print_version.h print_version.o \
		y.tab.c y.tab.h
OpenPOWER on IntegriCloud