# $NetBSD: Makefile,v 1.5 2017/02/21 16:07:17 christos Exp $ USE_FORT?= yes # network protocol library .include .include <${.CURDIR}/../../Makefile.inc> .PATH: ${HEIMDIST}/lib/asn1 ${HEIMBASE}/include LIB= asn1 LIBDPLIBS+= com_err ${.CURDIR}/../libcom_err LIBDPLIBS+= roken ${.CURDIR}/../libroken HEIMSRCS = \ asn1_err.et \ krb5.asn1 \ cms.asn1 \ rfc2459.asn1 \ pkinit.asn1 \ pkcs12.asn1 \ pkcs8.asn1 \ pkcs9.asn1 \ digest.asn1 \ kx509.asn1 ASN1_OPTS.rfc2459.asn1 = \ --one-code-file \ --preserve-binary=TBSCertificate \ --preserve-binary=TBSCRLCertList \ --preserve-binary=Name \ --sequence=GeneralNames \ --sequence=Extensions \ --sequence=CRLDistributionPoints INCSDIR= /usr/include/krb5 INCS= asn1-common.h \ heim_asn1.h \ der.h \ der-protos.h \ ${COMPILE_ET_INCS} \ ${ASN1_INCS} SRCS= \ der.c \ der_get.c \ der_put.c \ der_free.c \ der_length.c \ der_copy.c \ der_cmp.c \ der_format.c \ fuzzer.c \ extra.c \ template.c \ timegm.c .if ${USETOOLS} != "yes" # .PHONY: ${ASN1COMPILEOBJ}/asn1_compile .PHONY: try_to_build_asn1_compile try_to_build_asn1_compile: @cd ${.CURDIR}/asn1_compile && ${MAKE} ${ASN1COMPILEOBJ}/asn1_compile: try_to_build_asn1_compile SUBDIR= asn1_compile .endif .include <${HEIMBASE}/Makefile.rules.inc> .include .if ${USETOOLS} != "yes" .include .endif .if ${MACHINE_ARCH} == "sparc64" # Or anything else that uses PROFILE_HOOK with gcc. # What happens is that we end up generating one of two different # function orders and since the profile code uses the function # number for label generation, we end up with one of two different # label orders. Disabling ASLR or optimization fixes it. COPTS.asn1_krb5_asn1.c+=-O0 .endif