3 .include "${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/Makefile.files"
6 .PATH: ${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
8 .PATH: ${SRCTOP}/sys/cddl/contrib/opensolaris/common/zfs
10 .PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libzpool/common
12 .PATH: ${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/os
14 .if exists(${SRCTOP}/sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}/opensolaris_atomic.S)
15 .PATH: ${SRCTOP}/sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}
16 ATOMIC_SRCS= opensolaris_atomic.S
17 .if ${MACHINE_ARCH} != "ia64" && ${MACHINE_ARCH} != "sparc64"
18 ACFLAGS+= -Wa,--noexecstack
21 .PATH: ${SRCTOP}/sys/cddl/compat/opensolaris/kern
22 ATOMIC_SRCS= opensolaris_atomic.c
25 .PATH: ${SRCTOP}/sys/cddl/contrib/opensolaris/common/unicode
27 .PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libcmdutils/common
31 ZFS_COMMON_SRCS= ${ZFS_COMMON_OBJS:C/.o$/.c/} vdev_file.c trim_map.c
32 ZFS_SHARED_SRCS= ${ZFS_SHARED_OBJS:C/.o$/.c/}
33 KERNEL_SRCS= kernel.c taskq.c util.c
35 UNICODE_SRCS= u8_textprep.c
36 LIBCMDUTILS_SRCS=nicenum.c
38 SRCS= ${ZFS_COMMON_SRCS} ${ZFS_SHARED_SRCS} \
39 ${KERNEL_SRCS} ${LIST_SRCS} ${ATOMIC_SRCS} \
40 ${UNICODE_SRCS} ${LIBCMDUTILS_SRCS}
43 CFLAGS+= -I${SRCTOP}/sys/cddl/compat/opensolaris
44 CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include
45 CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/lib/libumem
46 CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libzpool/common
47 CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/sys
48 CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
49 CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/common/zfs
50 CFLAGS+= -I${SRCTOP}/sys/cddl/contrib/opensolaris/uts/common
51 CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/head
52 CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libnvpair
53 CFLAGS+= -I${SRCTOP}/cddl/contrib/opensolaris/lib/libcmdutils
54 # XXX: pthread doesn't have mutex_owned() equivalent, so we need to look
55 # into libthr private structures. That's sooo evil, but it's only for
56 # ZFS debugging tools needs.
57 CFLAGS+= -DWANTS_MUTEX_OWNED
58 CFLAGS+= -I${SRCTOP}/lib/libpthread/thread
59 CFLAGS+= -I${SRCTOP}/lib/libpthread/sys
60 CFLAGS+= -I${SRCTOP}/lib/libthr/arch/${MACHINE_CPUARCH}/include
62 DPADD= ${LIBMD} ${LIBPTHREAD} ${LIBZ} ${LIBNVPAIR} \
64 LDADD= -lmd -lpthread -lz -lnvpair -lavl -lumem
66 # atomic.S doesn't like profiling.
71 # Since there are many asserts in this library, it makes no sense to compile
72 # it without debugging.