xref: /netbsd-src/usr.sbin/racoon/Makefile (revision f937c412f371bc14cc109a4768482c4850abc7a5)
1# $NetBSD: Makefile,v 1.43 2023/06/03 08:53:01 lukem Exp $
2
3WARNS?=	0	# XXX third-party program, many issues
4NOCLANGERROR=	# defined
5
6.include <bsd.own.mk>
7
8USE_FORT?= yes	# network client and server
9
10PROG=	racoon
11SRCS=	main.c session.c isakmp.c handler.c 			\
12	isakmp_ident.c isakmp_agg.c isakmp_base.c 		\
13	isakmp_quick.c isakmp_inf.c isakmp_newg.c 		\
14	gssapi.c dnssec.c getcertsbyname.c privsep.c		\
15	pfkey.c admin.c evt.c ipsec_doi.c oakley.c 		\
16	grabmyaddr.c vendorid.c policy.c localconf.c 		\
17	remoteconf.c crypto_openssl.c algorithm.c		\
18	proposal.c sainfo.c strnames.c plog.c logger.c 		\
19	schedule.c str2val.c safefile.c backupsa.c 		\
20	genlist.c rsalist.c cftoken.l cfparse.y 		\
21	prsa_tok.l prsa_par.y isakmp_xauth.c isakmp_cfg.c 	\
22	isakmp_unity.c throttle.c isakmp_frag.c 		\
23	nattraversal.c vmbuf.c sockmisc.c misc.c
24MAN=	racoon.8 racoon.conf.5
25
26DIST=	${NETBSDSRCDIR}/crypto/dist/ipsec-tools
27CPPFLAGS+= -I${DIST}/src/racoon -I${DIST}/src/racoon/missing
28CPPFLAGS+= -I${DIST}/src/libipsec
29CPPFLAGS+= -I${NETBSDSRCDIR}/lib/libipsec -I.
30CPPFLAGS+= -DIPSEC_DEBUG -DHAVE_CONFIG_H -DENABLE_WILDCARD_MATCH
31CPPFLAGS+= -DADMINPORTDIR=\"/var/run\"
32CPPFLAGS+= -DSYSCONFDIR=\"/etc/racoon\"
33.if ${HAVE_OPENSSL} < 11
34CPPFLAGS+= -DHAVE_OPENSSL_RC5_H
35CPPFLAGS+= -DOPENSSL_API_COMPAT=0x10100000L
36.endif
37
38LDADD+= -ll -ly -lipsec -lutil
39DPADD+= ${LIBL} ${LIBY} ${LIBCRYPTO} ${LIBUTIL}
40
41YHEADER=cfparse.h
42
43CPPFLAGS+=-DHAVE_LIBRADIUS
44LDADD+=-lradius
45DPADD+= ${LIBRADIUS}
46.if (${USE_PAM} != "no")
47CPPFLAGS+=-DHAVE_LIBPAM
48LDADD+=	-lpam -lutil ${PAM_STATIC_LDADD}
49DPADD+=	${LIBPAM} ${PAM_STATIC_DPADD}
50.endif
51.if (${USE_KERBEROS} != "no")
52CPPFLAGS+=-DHAVE_GSSAPI
53LDADD+= -lgssapi -lheimntlm ${LIBKRB5_LDADD}
54DPADD+= ${LIBGSSAPI} ${LIBHEIMNTLM} ${LIBKRB5_DPADD}
55.endif
56CPPFLAGS+=-DHAVE_OPENSSL_IDEA_H
57.if (${USE_INET6} != "no")
58CPPFLAGS+=-DINET6
59.endif
60
61.if (${USE_LDAP} != "no")
62CPPFLAGS+=-DHAVE_LIBLDAP
63LDADD+= ${LIBLDAP_LDADD}
64DPADD+= ${LIBLDAP_DPADD}
65.endif
66
67LDADD+= -lcrypto -lcrypt
68DPADD+= ${LIBIPSEC} ${LIBCRYPT}
69
70#CPPFLAGS+= -DDEBUG_RECORD_MALLOCATION
71#SRCS+= debugrm.c
72
73#CFLAGS+=-fsanitize=address
74#LDFLAGS+=-fsanitize=address
75
76.PATH:  ${NETBSDSRCDIR}/lib/libipsec ${DIST}/src/racoon
77
78prsa_tok.c: ${DIST}/src/racoon/prsa_tok.l
79	${LEX} -Pprsa -o${.TARGET} ${.ALLSRC}
80
81prsa_par.c: ${DIST}/src/racoon/prsa_par.y
82	${YACC} -pprsa -d -o ${.TARGET} ${.ALLSRC}
83
84CWARNFLAGS.gcc+=        ${CC_WNO_ADDRESS_OF_PACKED_MEMBER}
85
86COPTS+=		-fcommon
87COPTS.crypto_openssl.c+= -Wno-error=deprecated-declarations
88COPTS.rsalist.c+= -Wno-error=deprecated-declarations
89COPTS.prsa_par.c+= -Wno-error=deprecated-declarations
90COPTS.plainrsa-gen.c+= -Wno-error=deprecated-declarations
91
92
93.include <bsd.prog.mk>
94