1235633Sdim# $FreeBSD$
2218885Sdim
3218885SdimKMOD=	zfs
4218885Sdim
5218885SdimSRCS=	bus_if.h device_if.h vnode_if.h
6218885Sdim
7218885Sdim.if !defined(KERNBUILDDIR)
8218885SdimSRCS+=	opt_kdtrace.h
9218885Sdimopt_kdtrace.h:
10218885Sdim	echo "" > ${.TARGET}
11218885Sdim.endif
12218885Sdim
13218885SdimSUNW=	${.CURDIR}/../../cddl/contrib/opensolaris
14218885Sdim
15218885Sdim.PATH:	${SUNW}/common/acl
16218885SdimSRCS+=	acl_common.c
17218885Sdim.PATH:	${SUNW}/common/avl
18218885SdimSRCS+=	avl.c
19218885Sdim.PATH:	${SUNW}/common/nvpair
20218885SdimSRCS+=	nvpair.c
21218885SdimSRCS+=	nvpair_alloc_fixed.c
22218885SdimSRCS+=	fnvpair.c
23218885Sdim.PATH:	${.CURDIR}/../../cddl/contrib/opensolaris/common/unicode
24218885SdimSRCS+=	u8_textprep.c
25218885Sdim
26218885Sdim.PATH:	${.CURDIR}/../../cddl/compat/opensolaris/kern
27218885SdimSRCS+=	opensolaris_acl.c
28218885SdimSRCS+=	opensolaris_kobj.c
29218885SdimSRCS+=	opensolaris_kstat.c
30218885SdimSRCS+=	opensolaris_lookup.c
31218885SdimSRCS+=	opensolaris_policy.c
32245431SdimSRCS+=	opensolaris_string.c
33245431SdimSRCS+=	opensolaris_sysevent.c
34218885SdimSRCS+=	opensolaris_taskq.c
35218885SdimSRCS+=	opensolaris_uio.c
36218885SdimSRCS+=	opensolaris_vfs.c
37218885SdimSRCS+=	opensolaris_zone.c
38218885Sdim
39218885Sdim_A=${.CURDIR}/../../cddl/contrib/opensolaris/common/atomic
40218885Sdim.if exists(${_A}/${MACHINE_CPUARCH}/opensolaris_atomic.S)
41218885Sdim.PATH:	${_A}/${MACHINE_CPUARCH}
42218885SdimSRCS+=		opensolaris_atomic.S
43218885Sdim.elif exists(${_A}/${MACHINE_ARCH}/opensolaris_atomic.S)
44218885Sdim.PATH:	${_A}/${MACHINE_ARCH}
45218885SdimSRCS+=		opensolaris_atomic.S
46218885Sdim.else
47218885SdimSRCS+=		opensolaris_atomic.c
48.endif
49
50.PATH:	${SUNW}/uts/common/fs
51SRCS+=	gfs.c
52SRCS+=	vnode.c
53
54.PATH:	${SUNW}/uts/common/os
55SRCS+=	callb.c
56SRCS+=	fm.c
57SRCS+=	list.c
58SRCS+=	nvpair_alloc_system.c
59
60.PATH:	${SUNW}/uts/common/zmod
61SRCS+=	adler32.c
62SRCS+=	opensolaris_crc32.c
63SRCS+=	deflate.c
64SRCS+=	inffast.c
65SRCS+=	inflate.c
66SRCS+=	inftrees.c
67SRCS+=	trees.c
68SRCS+=	zmod.c
69SRCS+=	zmod_subr.c
70SRCS+=	zutil.c
71
72.PATH:	${.CURDIR}/../../crypto/sha2
73SRCS+=	sha2.c
74
75.PATH:	${SUNW}/common/zfs
76.include "${SUNW}/uts/common/Makefile.files"
77.PATH:	${SUNW}/uts/common/fs/zfs
78ZFS_SRCS=	${ZFS_OBJS:C/.o$/.c/}
79SRCS+=	${ZFS_SRCS}
80SRCS+=	vdev_geom.c
81SRCS+=	trim_map.c
82
83# Use FreeBSD's namecache.
84CFLAGS+=-DFREEBSD_NAMECACHE
85
86CFLAGS+=-I${.CURDIR}/../../cddl/compat/opensolaris
87CFLAGS+=-I${SUNW}/uts/common/fs/zfs
88CFLAGS+=-I${SUNW}/uts/common/zmod
89CFLAGS+=-I${SUNW}/uts/common
90CFLAGS+=-I${.CURDIR}/../..
91CFLAGS+=-I${SUNW}/common/zfs
92CFLAGS+=-I${SUNW}/common
93CFLAGS+=-DBUILDING_ZFS
94
95.if ${MACHINE_ARCH} == "powerpc64"
96CFLAGS+=-mminimal-toc
97.endif
98
99#CFLAGS+=-DDEBUG=1
100#DEBUG_FLAGS=-g
101
102.include <bsd.kmod.mk>
103
104CFLAGS+=	-include ${.CURDIR}/../../cddl/compat/opensolaris/sys/debug_compat.h
105
106CWARNFLAGS+=-Wno-unknown-pragmas
107CWARNFLAGS+=-Wno-missing-prototypes
108CWARNFLAGS+=-Wno-undef
109CWARNFLAGS+=-Wno-strict-prototypes
110CWARNFLAGS+=-Wno-cast-qual
111CWARNFLAGS+=-Wno-parentheses
112CWARNFLAGS+=-Wno-redundant-decls
113CWARNFLAGS+=-Wno-missing-braces
114CWARNFLAGS+=-Wno-uninitialized
115CWARNFLAGS+=-Wno-unused
116CWARNFLAGS+=-Wno-inline
117CWARNFLAGS+=-Wno-switch
118CWARNFLAGS+=-Wno-pointer-arith
119