11.48Schristos# $NetBSD: Makefile,v 1.48 2025/03/08 16:40:44 christos Exp $
21.4Sthorpej
31.48SchristosUSE_FORT?= yes	# network client and server
41.48SchristosWARNS=3
51.2Sitojun
61.2Sitojun.include <bsd.own.mk>
71.1Sitojun
81.18Stls
91.4SthorpejPROG=	racoon
101.48SchristosSRCS+= admin.c algorithm.c backupsa.c cfparse.y cftoken.l dnssec.c evt.c \
111.48Schristos    getcertsbyname.c grabmyaddr.c gssapi.c handler.c ipsec_doi.c isakmp.c \
121.48Schristos    isakmp_agg.c isakmp_base.c isakmp_cfg.c isakmp_frag.c isakmp_ident.c \
131.48Schristos    isakmp_inf.c isakmp_newg.c isakmp_quick.c isakmp_unity.c isakmp_xauth.c \
141.48Schristos    localconf.c main.c nattraversal.c oakley.c pfkey.c policy.c privsep.c \
151.48Schristos    proposal.c remoteconf.c safefile.c sainfo.c schedule.c session.c \
161.48Schristos    str2val.c strnames.c throttle.c vendorid.c
171.48Schristos
181.7SmanuMAN=	racoon.8 racoon.conf.5
191.4Sthorpej
201.48SchristosCPPFLAGS+= -DIPSEC_DEBUG -DENABLE_WILDCARD_MATCH
211.8SmanuCPPFLAGS+= -DADMINPORTDIR=\"/var/run\"
221.5SthorpejCPPFLAGS+= -DSYSCONFDIR=\"/etc/racoon\"
231.32Schristos.if ${HAVE_OPENSSL} < 11
241.33SchristosCPPFLAGS+= -DHAVE_OPENSSL_RC5_H
251.31SchristosCPPFLAGS+= -DOPENSSL_API_COMPAT=0x10100000L
261.32Schristos.endif
271.5Sthorpej
281.15SmanuLDADD+= -ll -ly -lipsec -lutil
291.47SchristosDPADD+= ${LIBL} ${LIBY} ${LIBIPSEC} ${LIBUTIL}
301.5Sthorpej
311.5SthorpejYHEADER=cfparse.h
321.2Sitojun
331.6SmanuCPPFLAGS+=-DHAVE_LIBRADIUS
341.6SmanuLDADD+=-lradius
351.6SmanuDPADD+= ${LIBRADIUS}
361.4Sthorpej.if (${USE_PAM} != "no")
371.4SthorpejCPPFLAGS+=-DHAVE_LIBPAM
381.17SchristosLDADD+=	-lpam -lutil ${PAM_STATIC_LDADD}
391.11SheDPADD+=	${LIBPAM} ${PAM_STATIC_DPADD}
401.4Sthorpej.endif
411.4Sthorpej.if (${USE_KERBEROS} != "no")
421.4SthorpejCPPFLAGS+=-DHAVE_GSSAPI
431.34SmrgLDADD+= -lgssapi -lheimntlm ${LIBKRB5_LDADD}
441.34SmrgDPADD+= ${LIBGSSAPI} ${LIBHEIMNTLM} ${LIBKRB5_DPADD}
451.4Sthorpej.endif
461.4SthorpejCPPFLAGS+=-DHAVE_OPENSSL_IDEA_H
471.4Sthorpej.if (${USE_INET6} != "no")
481.4SthorpejCPPFLAGS+=-DINET6
491.2Sitojun.endif
501.1Sitojun
511.37Sbouyer.if (${USE_LDAP} != "no")
521.37SbouyerCPPFLAGS+=-DHAVE_LIBLDAP
531.40SchristosLDADD+= ${LIBLDAP_LDADD}
541.40SchristosDPADD+= ${LIBLDAP_DPADD}
551.37Sbouyer.endif
561.37Sbouyer
571.12SchristosLDADD+= -lcrypto -lcrypt
581.47SchristosDPADD+= ${LIBCRYPTO} ${LIBCRYPT}
591.10She
601.35Schristos#CPPFLAGS+= -DDEBUG_RECORD_MALLOCATION
611.35Schristos#SRCS+= debugrm.c
621.35Schristos
631.35Schristos#CFLAGS+=-fsanitize=address
641.35Schristos#LDFLAGS+=-fsanitize=address
651.35Schristos
661.4Sthorpej
671.43SlukemCWARNFLAGS.gcc+=        ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
681.48SchristosCOPTS.cftoken.c+=-Wno-error=unused-function
691.48SchristosCOPTS.isakmp.c+=${CC_WNO_STRINGOP_TRUNCATION}
701.48SchristosCOPTS.isakmp_cfg.c+=${CC_WNO_STRINGOP_TRUNCATION} ${${ACTIVE_CC} == "gcc" :? -Wno-error=format-truncation :}
711.36Smrg
721.48Schristos#COPTS+=		-fcommon
731.47Schristos
741.47Schristos.include "${.CURDIR}/Makefile.racoon"
751.48Schristos.PATH:  ${NETBSDSRCDIR}/lib/libipsec
761.41Schristos
771.4Sthorpej.include <bsd.prog.mk>
78