Home | History | Annotate | Line # | Download | only in libdns
      1 #	$NetBSD: Makefile,v 1.16 2025/06/05 14:53:03 christos Exp $
      2 
      3 LIB=dns
      4 #USE_SHLIBDIR=   yes
      5 
      6 .include <bsd.own.mk>
      7 
      8 .include "${.CURDIR}/../Makefile.inc"
      9 
     10 DIST=	${IDIST}/lib/dns
     11 #.include "${DIST}/mapapi"
     12 
     13 LIBDPLIBS+=	isc	${.CURDIR}/../libisc
     14 
     15 .PATH.c:	${DIST}/unix ${DIST}/sec/dst ${DIST}
     16 CPPFLAGS+=	-I${BIND_SRCDIR}/include/dns -I${DIST}
     17 CPPFLAGS+=	-I${IDIST}/lib/isc
     18 
     19 CWARNFLAGS.clang+=	-Wno-tautological-constant-out-of-range-compare
     20 
     21 .for f in byaddr request validator skr
     22 COPTS.${f}.c+=  -Wno-pointer-sign -fno-strict-aliasing
     23 .endfor
     24 
     25 DNSSEC_SRCS=    dst_api.c dst_parse.c gssapictx.c hmac_link.c key.c \
     26 		openssl_link.c opensslrsa_link.c opensslecdsa_link.c \
     27 		openssleddsa_link.c
     28 
     29 .if ${MKKERBEROS} != "no"
     30 DNSSEC_SRCS+=   gssapi_link.c
     31 
     32 CWARNFLAGS.clang+=	-Wno-error=tautological-constant-compare
     33 .endif
     34 
     35 # util.h, ISC_REQUIRE
     36 LINTFLAGS+=	-X 129	# expression has null effect
     37 # opensslecdsa_link.c, DST_RET does not conform to macro conventions.
     38 LINTFLAGS+=	-X 193	# statement not reached
     39 # Most casts are to isc__magic_t and thus look intentional.
     40 LINTFLAGS+=	-X 247	# pointer cast from '%s' to '%s' may be troublesome
     41 # 'uint32_tobuffer(token.value.as_ulong' looks obviously wrong but is used in
     42 # a lot of places.
     43 LINTFLAGS+=	-X 132	# conversion from '%s' to '%s' may lose accuracy
     44 LINTFLAGS+=	-X 298	# conversion from '%s' to '%s' may lose accuracy, arg #%d
     45 
     46 SRCS=   acl.c adb.c badcache.c byaddr.c cache.c callbacks.c catz.c \
     47 	clientinfo.c compress.c client.c dyndb.c ecs.c db.c \
     48 	dbiterator.c diff.c dispatch.c dlz.c dns64.c dnsrps.c \
     49 	dnssec.c ds.c ede.c fixedname.c forward.c ipkeylist.c iptable.c \
     50 	journal.c kasp.c keydata.c keymgr.c keystore.c keytable.c \
     51 	log.c master.c masterdump.c message.c name.c nametree.c \
     52 	ncache.c nsec.c nsec3.c nta.c order.c peer.c qp.c qpcache.c \
     53 	qpzone.c rbt.c rbt-cachedb.c rbt-zonedb.c rbtdb.c rcode.c \
     54 	remote.c resconf.c rdata.c rdatalist.c rdataset.c rdatasetiter.c \
     55 	rdataslab.c request.c resolver.c result.c rootns.c rpz.c \
     56 	rriterator.c rrl.c skr.c soa.c ssu.c ssu_external.c stats.c \
     57 	time.c tkey.c transport.c tsig.c ttl.c private.c validator.c \
     58 	view.c xfrin.c zone.c zonekey.c zoneverify.c zt.c sdlz.c \
     59 	update.c ${DNSSEC_SRCS}
     60 
     61 COPTS.openssl_link.c+= -Wno-error=deprecated-declarations
     62 COPTS.opensslecdsa_link.c+= -Wno-error=deprecated-declarations
     63 COPTS.openssleddsa_link.c+= -Wno-error=deprecated-declarations
     64 COPTS.opensslrsa_link.c+= -Wno-error=deprecated-declarations
     65 
     66 
     67 EXPSYM_SRCS+=	dns.common.expsym
     68 .if ${MKKERBEROS:Uno} != "no"
     69 EXPSYM_SRCS+=	dns.kerberos.expsym
     70 .endif
     71 
     72 LIB_EXPSYM=	dns.expsym
     73 dns.expsym: ${EXPSYM_SRCS}
     74 	${_MKTARGET_CREATE}
     75 	LC_ALL=C sort -m ${.ALLSRC} >${.TARGET}.tmp && \
     76 	${MV} ${.TARGET}.tmp ${.TARGET}
     77 CLEANFILES+=	dns.expsym dns.expsym.tmp
     78 
     79 .include <bsd.lib.mk>
     80