1#	$NetBSD: Makefile,v 1.22 2024/02/29 20:41:52 christos Exp $
2
3NOLINT=yes # XXX
4LIB=isc
5#USE_SHLIBDIR=   yes
6
7.include <bsd.own.mk>
8
9LIBUVDIR=${NETBSDSRCDIR}/external/mit/libuv
10LIBUVOBJDIR!=   cd ${LIBUVDIR}/lib && ${PRINTOBJDIR}
11CPPFLAGS+=-I${LIBUVDIR}/dist/include
12
13.include "${.CURDIR}/../Makefile.inc"
14
15DIST=	${IDIST}/lib/isc
16CPPFLAGS+=-I${IDIST}/lib/isc
17
18DIST_ISC= ${DIST} ${DIST}/netmgr
19
20.PATH.c:	${DIST}/unix ${DIST}/nls ${DIST}/pthreads ${DIST_ISC}
21
22UNIX_SRCS=	backtrace.c dir.c entropy.c errno.c errno2result.c \
23		file.c interfaceiter.c net.c os.c resource.c \
24		stdio.c stdtime.c syslog.c time.c \
25		meminfo.c
26
27PTHREAD_SRCS=	condition.c mutex.c thread.c
28
29NETMGR_SRCS=    tcp.c udp.c netmgr.c tcpdns.c tlsdns.c \
30		uv-compat.c netmgr-timer.c uverr2result.c 
31
32CRYPTO_SRCS=	aes.c
33
34SRCS=		app.c assertions.c astack.c base32.c base64.c buffer.c \
35		commandline.c crc64.c counter.c error.c event.c glob.c \
36		hash.c heap.c hex.c hmac.c httpd.c ht.c managers.c \
37		iterated_hash.c lex.c lib.c log.c md.c mem.c \
38		mutexblock.c netaddr.c netscope.c nonce.c parseint.c \
39		picohttpparser.c pool.c portset.c quota.c radix.c random.c \
40		ratelimiter.c regex.c trampoline.c \
41		region.c result.c rwlock.c safe.c serial.c siphash.c \
42		sockaddr.c stats.c string.c symtab.c task.c \
43		taskpool.c timer.c tls.c tm.c url.c utf8.c \
44		${UNIX_SRCS} ${PTHREAD_SRCS} ${CRYPTO_SRCS} ${NETMGR_SRCS}
45
46
47.if (${USE_INET6} == "no")
48CPPFLAGS.net.c=	-Wno-error
49SRCS+=		ipv6.c
50.endif
51
52LDFLAGS+=-Wl,--version-script=${.CURDIR}/isc.map
53LDADD+=-Wl,-Bstatic
54
55.if ${MKPICLIB} != "no"
56LDADD+=-L${LIBUVOBJDIR} -luv_pic
57DPADD+=${LIBUVOBJDIR}/libuv_pic.a
58.else
59LDADD+=-L${LIBUVOBJDIR} -luv
60DPADD+=${LIBUVOBJDIR}/libuv.a
61.endif
62
63LDADD+=-Wl,-Bdynamic
64
65LDADD+=-lz
66DPADD+=${LIBZ}
67
68COPTS.iterated_hash.c+= -Wno-error=deprecated-declarations
69COPTS.hmac.c+= -Wno-error=deprecated-declarations
70COPTS.md.c+= -Wno-error=deprecated-declarations
71
72CLEANTFILES+=netmgr-timer.c
73
74CPPFLAGS.netmgr-timer.c+=-I${DIST}/netmgr
75netmgr-timer.c: ${DIST}/netmgr/timer.c
76	${MKTARGET_CREATE}
77	cp ${.ALLSRC} ${.TARGET}
78
79.include <bsd.lib.mk>
80