1
2PACKAGE=lib${LIB}
3# Vendor sources and generated files
4LDNSDIR= ${SRCTOP}/contrib/ldns
5UNBOUNDDIR= ${SRCTOP}/contrib/unbound
6
7# Hold my beer and watch this
8.PATH: ${UNBOUNDDIR} ${UNBOUNDDIR}/cachedb ${UNBOUNDDIR}/dns64 ${UNBOUNDDIR}/iterator ${UNBOUNDDIR}/sldns ${UNBOUNDDIR}/libunbound ${UNBOUNDDIR}/services ${UNBOUNDDIR}/services/cache ${UNBOUNDDIR}/util ${UNBOUNDDIR}/util/data ${UNBOUNDDIR}/respip ${UNBOUNDDIR}/util/storage ${UNBOUNDDIR}/validator 
9
10LIB=	unbound
11PRIVATELIB=
12PACKAGE=	unbound
13
14CFLAGS+= -I${UNBOUNDDIR} -I${LDNSDIR} -I${.OBJDIR} -I${.CURDIR}
15CFLAGS+= -DOPENSSL_API_COMPAT=0x10100000L
16
17SRCS=	alloc.c as112.c authzone.c autotrust.c cachedb.c config_file.c \
18	configlexer.l configparser.y context.c dname.c dns.c dns64.c \
19	dnstree.c edns.c fptr_wlist.c infra.c iter_delegpt.c iter_donotq.c \
20	iter_fwd.c iter_hints.c iter_priv.c iter_resptype.c iter_scrub.c \
21	iter_utils.c iterator.c keyraw.c libunbound.c libworker.c \
22	listen_dnsport.c localzone.c locks.c log.c lookup3.c lruhash.c \
23	mesh.c mini_event.c modstack.c module.c msgencode.c msgparse.c \
24	msgreply.c net_help.c netevent.c outbound_list.c outside_network.c \
25	packed_rrset.c parse.c parseutil.c proxy_protocol.c \
26	random.c rbtree.c redis.c \
27	regional.c respip.c rfc_1982.c rpz.c rrdef.c rrset.c rtt.c sbuffer.c \
28	siphash.c slabhash.c \
29	str2wire.c tcp_conn_limit.c timehist.c timeval_func.c \
30	tube.c ub_event_pluggable.c \
31	val_anchor.c val_kcache.c val_kentry.c val_neg.c val_nsec.c \
32	val_nsec3.c val_secalgo.c val_sigcrypt.c val_utils.c validator.c \
33	view.c winsock_event.c wire2str.c
34
35WARNS?=	2
36NO_WTHREAD_SAFETY= true
37
38LIBADD=	ssl crypto pthread
39
40# Misnamed file in upstream source
41configlexer.l: configlexer.lex
42	${CP} ${.ALLSRC} ${.TARGET}
43CLEANFILES+= configlexer.l
44
45# Symbol prefix for lex and yacc
46LFLAGS= -Pub_c_
47YFLAGS= -pub_c_ -d
48
49.include <bsd.lib.mk>
50