1168404Spjd# $FreeBSD: releng/10.2/cddl/lib/libzpool/Makefile 275236 2014-11-29 08:33:54Z rodrigc $
2168404Spjd
3177674Sjb.include "${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/Makefile.files"
4168404Spjd
5168404Spjd# ZFS_COMMON_SRCS
6177674Sjb.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs
7168404Spjd# ZFS_SHARED_SRCS
8177674Sjb.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs
9168404Spjd# KERNEL_SRCS
10177674Sjb.PATH: ${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libzpool/common
11168404Spjd# LIST_SRCS
12177674Sjb.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/os
13168404Spjd# ATOMIC_SRCS
14219089Spjd.if exists(${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}/opensolaris_atomic.S)
15177674Sjb.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}
16191933SkmacyATOMIC_SRCS=	opensolaris_atomic.S
17218725Sdim.if ${MACHINE_ARCH} != "ia64" && ${MACHINE_ARCH} != "sparc64"
18218723SdimACFLAGS+=	-Wa,--noexecstack
19218725Sdim.endif
20170431Spjd.else
21177674Sjb.PATH: ${.CURDIR}/../../../sys/cddl/compat/opensolaris/kern
22170431SpjdATOMIC_SRCS=	opensolaris_atomic.c
23170431Spjd.endif
24185029Spjd# UNICODE_SRCS
25185029Spjd.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/unicode
26168404Spjd
27168792SruLIB=		zpool
28168404Spjd
29240868SpjdZFS_COMMON_SRCS= ${ZFS_COMMON_OBJS:C/.o$/.c/} vdev_file.c trim_map.c
30168792SruZFS_SHARED_SRCS= ${ZFS_SHARED_OBJS:C/.o$/.c/}
31168792SruKERNEL_SRCS=	kernel.c taskq.c util.c
32168792SruLIST_SRCS=	list.c
33185029SpjdUNICODE_SRCS=	u8_textprep.c
34168404Spjd
35168792SruSRCS=		${ZFS_COMMON_SRCS} ${ZFS_SHARED_SRCS} \
36185029Spjd		${KERNEL_SRCS} ${LIST_SRCS} ${ATOMIC_SRCS} \
37185029Spjd		${UNICODE_SRCS}
38168404Spjd
39204597SuqsWARNS?=		0
40177674SjbCFLAGS+=	-I${.CURDIR}/../../../sys/cddl/compat/opensolaris
41219089SpjdCFLAGS+=	-I${.CURDIR}/../../compat/opensolaris/include
42219089SpjdCFLAGS+=	-I${.CURDIR}/../../compat/opensolaris/lib/libumem
43219089SpjdCFLAGS+=	-I${.CURDIR}/../../contrib/opensolaris/lib/libzpool/common
44177674SjbCFLAGS+=	-I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/sys
45177674SjbCFLAGS+=	-I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs
46177674SjbCFLAGS+=	-I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs
47177674SjbCFLAGS+=	-I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common
48219089SpjdCFLAGS+=	-I${.CURDIR}/../../contrib/opensolaris/head
49219089SpjdCFLAGS+=	-I${.CURDIR}/../../lib/libumem
50219089SpjdCFLAGS+=	-I${.CURDIR}/../../contrib/opensolaris/lib/libnvpair
51185029Spjd# XXX: pthread doesn't have mutex_owned() equivalent, so we need to look
52185029Spjd#      into libthr private structures. That's sooo evil, but it's only for
53185029Spjd#      ZFS debugging tools needs.
54185029SpjdCFLAGS+=	-DWANTS_MUTEX_OWNED
55185029SpjdCFLAGS+=	-I${.CURDIR}/../../../lib/libpthread/thread
56185029SpjdCFLAGS+=	-I${.CURDIR}/../../../lib/libpthread/sys
57211725SimpCFLAGS+=	-I${.CURDIR}/../../../lib/libthr/arch/${MACHINE_CPUARCH}/include
58168404Spjd
59275236SrodrigcDPADD=		${LIBMD} ${LIBPTHREAD} ${LIBZ} ${LIBNVPAIR} \
60275236Srodrigc		${LIBAVL} ${LIBUMEM}
61275236SrodrigcLDADD=		-lmd -lpthread -lz -lnvpair -lavl -lumem
62168404Spjd
63168404Spjd# atomic.S doesn't like profiling.
64168404SpjdNO_PROFILE=
65168404Spjd
66189801SrdivackyCSTD=	c99
67189801Srdivacky
68254949Swill# Since there are many asserts in this library, it makes no sense to compile
69254949Swill# it without debugging.
70240415Smm
71254949SwillCFLAGS+=	-g -DDEBUG=1
72254949Swill
73168404Spjd.include <bsd.lib.mk>
74