summaryrefslogtreecommitdiffstats
path: root/cddl/lib/libzpool
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2007-06-08 12:35:47 +0000
committerpjd <pjd@FreeBSD.org>2007-06-08 12:35:47 +0000
commit9eba2904d11ed785ef1cc694b8615aeb353c2252 (patch)
treec13033e14290bd6f5979ef75215789df0fb2f0d4 /cddl/lib/libzpool
parentf25cc1ca4c9929dff27e1d0db4c78685b01657c9 (diff)
downloadFreeBSD-src-9eba2904d11ed785ef1cc694b8615aeb353c2252.zip
FreeBSD-src-9eba2904d11ed785ef1cc694b8615aeb353c2252.tar.gz
- Reduce number of atomic operations needed to be implemented in asm by
implementing some of them using existing ones. - Allow to compile ZFS on all archs and use atomic operations surrounded by global mutex on archs we don't have or can't have all atomic operations needed by ZFS.
Diffstat (limited to 'cddl/lib/libzpool')
-rw-r--r--cddl/lib/libzpool/Makefile7
1 files changed, 6 insertions, 1 deletions
diff --git a/cddl/lib/libzpool/Makefile b/cddl/lib/libzpool/Makefile
index 28e09b9..f086b6d 100644
--- a/cddl/lib/libzpool/Makefile
+++ b/cddl/lib/libzpool/Makefile
@@ -11,7 +11,13 @@
# LIST_SRCS
.PATH: ${.CURDIR}/../../../sys/contrib/opensolaris/uts/common/os
# ATOMIC_SRCS
+.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "ia64"
.PATH: ${.CURDIR}/../../../sys/contrib/opensolaris/common/atomic/${MACHINE_ARCH}
+ATOMIC_SRCS= atomic.S
+.else
+.PATH: ${.CURDIR}/../../../sys/compat/opensolaris/kern
+ATOMIC_SRCS= opensolaris_atomic.c
+.endif
LIB= zpool
@@ -19,7 +25,6 @@ ZFS_COMMON_SRCS= ${ZFS_COMMON_OBJS:C/.o$/.c/} vdev_file.c
ZFS_SHARED_SRCS= ${ZFS_SHARED_OBJS:C/.o$/.c/}
KERNEL_SRCS= kernel.c taskq.c util.c
LIST_SRCS= list.c
-ATOMIC_SRCS= atomic.S
SRCS= ${ZFS_COMMON_SRCS} ${ZFS_SHARED_SRCS} \
${KERNEL_SRCS} ${LIST_SRCS} ${ATOMIC_SRCS}
OpenPOWER on IntegriCloud