1# $FreeBSD$ 2 3.include "${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/Makefile.files" 4 5# ZFS_COMMON_SRCS 6.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs 7# ZFS_SHARED_SRCS 8.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs 9# KERNEL_SRCS 10.PATH: ${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libzpool/common 11# LIST_SRCS 12.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/os 13# ATOMIC_SRCS 14.if exists(${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}/opensolaris_atomic.S) 15.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH} 16ATOMIC_SRCS= opensolaris_atomic.S 17.if ${MACHINE_ARCH} != "sparc64" 18ACFLAGS+= -Wa,--noexecstack 19.endif 20.else 21.PATH: ${.CURDIR}/../../../sys/cddl/compat/opensolaris/kern 22ATOMIC_SRCS= opensolaris_atomic.c 23.endif 24# UNICODE_SRCS 25.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/unicode 26 27LIB= zpool 28 29ZFS_COMMON_SRCS= ${ZFS_COMMON_OBJS:C/.o$/.c/} vdev_file.c trim_map.c 30ZFS_SHARED_SRCS= ${ZFS_SHARED_OBJS:C/.o$/.c/} 31KERNEL_SRCS= kernel.c taskq.c util.c 32LIST_SRCS= list.c 33UNICODE_SRCS= u8_textprep.c 34 35SRCS= ${ZFS_COMMON_SRCS} ${ZFS_SHARED_SRCS} \ 36 ${KERNEL_SRCS} ${LIST_SRCS} ${ATOMIC_SRCS} \ 37 ${UNICODE_SRCS} 38 39WARNS?= 0 40CFLAGS+= -I${.CURDIR}/../../../sys/cddl/compat/opensolaris 41CFLAGS+= -I${.CURDIR}/../../compat/opensolaris/include 42CFLAGS+= -I${.CURDIR}/../../compat/opensolaris/lib/libumem 43CFLAGS+= -I${.CURDIR}/../../contrib/opensolaris/lib/libzpool/common 44CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/sys 45CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs 46CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs 47CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common 48CFLAGS+= -I${.CURDIR}/../../contrib/opensolaris/head 49CFLAGS+= -I${.CURDIR}/../../lib/libumem 50CFLAGS+= -I${.CURDIR}/../../contrib/opensolaris/lib/libnvpair 51# XXX: pthread doesn't have mutex_owned() equivalent, so we need to look 52# into libthr private structures. That's sooo evil, but it's only for 53# ZFS debugging tools needs. 54CFLAGS+= -DWANTS_MUTEX_OWNED 55CFLAGS+= -I${.CURDIR}/../../../lib/libpthread/thread 56CFLAGS+= -I${.CURDIR}/../../../lib/libpthread/sys 57CFLAGS+= -I${.CURDIR}/../../../lib/libthr/arch/${MACHINE_CPUARCH}/include 58 59DPADD= ${LIBMD} ${LIBPTHREAD} ${LIBZ} ${LIBNVPAIR} \ 60 ${LIBAVL} ${LIBUMEM} 61LDADD= -lmd -lpthread -lz -lnvpair -lavl -lumem 62 63# atomic.S doesn't like profiling. 64MK_PROFILE= no 65 66CSTD= c99 67 68# Since there are many asserts in this library, it makes no sense to compile 69# it without debugging. 70 71CFLAGS+= -g -DDEBUG=1 72 73.include <bsd.lib.mk> 74