1# $FreeBSD$ 2 3LIB= asn1 4CFLAGS+=-I${KRB5DIR}/include \ 5 -I${KRB5DIR}/lib/asn1 \ 6 -I${KRB5DIR}/lib/roken \ 7 -I${INCLUDEOBJDIR} \ 8 -I${.OBJDIR} 9SRCS= der_get.c der_put.c der_free.c der_length.c der_copy.c \ 10 timegm.c asn1_err.c asn1_err.h asn1.h roken.h \ 11 ${GEN:S/.x/.c/g} 12 13GEN= asn1_APOptions.x asn1_AP_REP.x asn1_AP_REQ.x asn1_AS_REP.x \ 14 asn1_AS_REQ.x asn1_Authenticator.x asn1_AuthorizationData.x \ 15 asn1_Checksum.x asn1_EncAPRepPart.x asn1_EncASRepPart.x \ 16 asn1_EncKDCRepPart.x asn1_EncKrbCredPart.x \ 17 asn1_EncKrbPrivPart.x asn1_EncTGSRepPart.x \ 18 asn1_EncTicketPart.x asn1_EncryptedData.x \ 19 asn1_EncryptionKey.x asn1_ETYPE_INFO.x asn1_ETYPE_INFO_ENTRY.x \ 20 asn1_HostAddress.x asn1_HostAddresses.x asn1_KDCOptions.x \ 21 asn1_KDC_REP.x asn1_KDC_REQ.x asn1_KDC_REQ_BODY.x \ 22 asn1_KRB_CRED.x asn1_KRB_ERROR.x asn1_KRB_PRIV.x \ 23 asn1_KRB_SAFE.x asn1_KRB_SAFE_BODY.x asn1_KerberosTime.x \ 24 asn1_KrbCredInfo.x asn1_LastReq.x asn1_METHOD_DATA.x \ 25 asn1_PA_DATA.x asn1_PA_ENC_TS_ENC.x asn1_Principal.x \ 26 asn1_PrincipalName.x asn1_Realm.x asn1_TGS_REP.x \ 27 asn1_TGS_REQ.x asn1_Ticket.x asn1_TicketFlags.x \ 28 asn1_TransitedEncoding.x 29 30INCLUDES=asn1.h asn1_err.h 31 32.include <bsd.lib.mk> 33 34.PATH: ${KRB5DIR}/lib/asn1 35.PATH: ${KRB5DIR}/lib/roken 36 37build-tools: make-print-version asn1_compile 38 39beforedepend all: roken.h 40 41.for I in ${GEN} 42${I:S/.x/.c/}: ${I} 43 cmp -s ${.OODATE} ${.TARGET} 2> /dev/null || cp ${.OODATE} ${.TARGET} 44.endfor 45 46CLEANFILES+= ${GEN:S/.x/.c/g} asn1.h asn1_files 47 48${GEN} asn1.h: asn1_compile k5.asn1 49 ./asn1_compile ${KRB5DIR}/lib/asn1/k5.asn1 50 51build-tools: make-print-version asn1_compile 52 53asn1_compile: parse.o lex.o main.c hash.c symbol.c gen.c \ 54 gen_encode.c gen_decode.c gen_free.c gen_length.c \ 55 gen_copy.c gen_glue.c getarg.c warnerr.c print_version.o \ 56 get_window_size.c strupr.c 57 ${CC} ${CFLAGS} ${.OODATE} -o ${.TARGET} 58 59parse.o: parse.c roken.h 60 61parse.h parse.c: parse.y 62 ${YACC} -d ${.OODATE} 63 mv y.tab.c parse.c 64 mv y.tab.h parse.h 65 66lex.o: lex.l 67 68print_version.o: print_version.h print_version.c roken.h 69 ${CC} ${CFLAGS} -c -o ${.TARGET} ${KRB5DIR}/lib/roken/print_version.c 70 71print_version.h: make-print-version 72 ./make-print-version print_version.h 73 74make-print-version: make-print-version.c 75 ${CC} ${CFLAGS} -static -o ${.TARGET} ${.OODATE} 76 77CLEANFILES+= ${GEN} asn1_compile lex.o parse.o parse.c parse.h \ 78 hdb_asn1.h make-print-version print_version.h print_version.o 79