1JEMALLOCSRCS:= jemalloc.c arena.c background_thread.c base.c bin.c bitmap.c \
2	ckh.c ctl.c div.c extent.c extent_dss.c extent_mmap.c hash.c hook.c \
3	large.c log.c malloc_io.c mutex.c mutex_pool.c nstime.c pages.c \
4	prng.c prof.c rtree.c safety_check.c sc.c stats.c sz.c tcache.c \
5	test_hooks.c ticker.c tsd.c witness.c
6
7CFLAGS+=-I${SRCTOP}/contrib/jemalloc/include
8.if ${MK_JEMALLOC_LG_VADDR_WIDE} != no
9CFLAGS+=-D_USE_LG_VADDR_WIDE
10.endif
11
12.for src in ${JEMALLOCSRCS}
13MISRCS+=jemalloc_${src}
14CLEANFILES+=jemalloc_${src}
15jemalloc_${src}: ${SRCTOP}/contrib/jemalloc/src/${src} .NOMETA
16	ln -sf ${.ALLSRC} ${.TARGET}
17.endfor
18
19MAN+=jemalloc.3
20CLEANFILES+=jemalloc.3
21jemalloc.3: ${SRCTOP}/contrib/jemalloc/doc/jemalloc.3 .NOMETA
22	ln -sf ${.ALLSRC} ${.TARGET}
23
24MLINKS+= \
25	jemalloc.3 malloc.3 \
26	jemalloc.3 calloc.3 \
27	jemalloc.3 posix_memalign.3 \
28	jemalloc.3 aligned_alloc.3 \
29	jemalloc.3 realloc.3 \
30	jemalloc.3 free.3 \
31	jemalloc.3 malloc_usable_size.3 \
32	jemalloc.3 malloc_stats_print.3 \
33	jemalloc.3 mallctl.3 \
34	jemalloc.3 mallctlnametomib.3 \
35	jemalloc.3 mallctlbymib.3 \
36	jemalloc.3 mallocx.3 \
37	jemalloc.3 rallocx.3 \
38	jemalloc.3 xallocx.3 \
39	jemalloc.3 sallocx.3 \
40	jemalloc.3 dallocx.3 \
41	jemalloc.3 sdallocx.3 \
42	jemalloc.3 nallocx.3 \
43	jemalloc.3 malloc.conf.5
44
45.if ${MK_MALLOC_PRODUCTION} != "no" || defined(MALLOC_PRODUCTION)
46CFLAGS+=	-DMALLOC_PRODUCTION
47.endif
48