1.PATH: ${ZFSTOP}/module/icp 2.PATH: ${ZFSTOP}/module/zcommon 3.PATH: ${ZFSTOP}/module/zfs 4.PATH: ${ZFSTOP}/lib/libzfs 5.PATH: ${ZFSTOP}/lib/libzfs/os/freebsd 6.PATH: ${ZFSTOP}/include 7.PATH: ${ZFSTOP}/module/zstd 8.PATH: ${ZFSTOP}/module/zstd/lib 9 10PACKAGE= zfs 11LIB_PACKAGE= 12 13LIB= zfs 14LIBADD= \ 15 avl \ 16 bsdxml \ 17 crypto \ 18 geom \ 19 m \ 20 md \ 21 nvpair \ 22 pthread \ 23 rt \ 24 umem \ 25 util \ 26 z \ 27 zfs_core \ 28 zutil 29 30INCS= libzfs.h 31USER_C = \ 32 libzfs_changelist.c \ 33 libzfs_config.c \ 34 libzfs_crypto.c \ 35 libzfs_dataset.c \ 36 libzfs_diff.c \ 37 libzfs_import.c \ 38 libzfs_iter.c \ 39 libzfs_mnttab.c \ 40 libzfs_mount.c \ 41 libzfs_pool.c \ 42 libzfs_sendrecv.c \ 43 libzfs_share.c \ 44 libzfs_share_nfs.c \ 45 libzfs_status.c \ 46 libzfs_util.c \ 47 os/freebsd/libzfs_share_nfs.c \ 48 os/freebsd/libzfs_share_smb.c 49 50# FreeBSD 51USER_C += \ 52 libzfs_compat.c \ 53 libzfs_zmount.c 54 55KERNEL_C = \ 56 btree.c \ 57 cityhash.c \ 58 range_tree.c \ 59 zfeature_common.c \ 60 zfs_comutil.c \ 61 zfs_deleg.c \ 62 zfs_fletcher.c \ 63 zfs_fletcher_superscalar.c \ 64 zfs_fletcher_superscalar4.c \ 65 zfs_namecheck.c \ 66 zfs_prop.c \ 67 zfs_valstr.c \ 68 zpool_prop.c \ 69 zprop_common.c 70 71ARCH_C = 72.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" 73ARCH_C += zfs_fletcher_intel.c \ 74 zfs_fletcher_sse.c 75CFLAGS += -DHAVE_TOOLCHAIN_SSE2 -DHAVE_TOOLCHAIN_SSSE3 76.endif 77.if ${MACHINE_ARCH} == "amd64" 78ARCH_C += zfs_fletcher_avx512.c 79CFLAGS+= -D__x86_64 -DHAVE_TOOLCHAIN_AVX2 -DHAVE_TOOLCHAIN_AVX \ 80 -DHAVE_TOOLCHAIN_AVX512F 81.endif 82.if ${MACHINE_CPUARCH} == "aarch64" 83ARCH_C += zfs_fletcher_aarch64_neon.c 84.endif 85 86SRCS= $(USER_C) $(KERNEL_C) $(ARCH_C) 87 88WARNS?= 2 89SHLIB_MAJOR= 4 90CSTD= c99 91CFLAGS+= -DIN_BASE 92CFLAGS+= -I${ZFSTOP}/include 93CFLAGS+= -I${ZFSTOP}/include/os/freebsd 94CFLAGS+= -I${ZFSTOP}/lib/libspl/include 95CFLAGS+= -I${ZFSTOP}/lib/libspl/include/os/freebsd 96CFLAGS+= -I${ZFSTOP}/lib/libshare 97CFLAGS+= -I${ZFSTOP}/lib/libzpool/include 98CFLAGS+= -I${SRCTOP}/sys/contrib/ck/include 99CFLAGS+= -I${SRCTOP}/sys 100CFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include 101CFLAGS+= -I${ZFSTOP}/module/icp/include 102CFLAGS+= -include ${ZFSTOP}/include/sys/simd_config.h 103CFLAGS+= -include ${ZFSTOP}/include/os/freebsd/spl/sys/ccompile.h 104CFLAGS+= -DHAVE_ISSETUGID 105CFLAGS+= -DHAVE_EXECVPE 106CFLAGS+= -include ${SRCTOP}/sys/modules/zfs/zfs_config.h 107CFLAGS+= -DSYSCONFDIR=\"/etc\" 108CFLAGS+= -DPKGDATADIR=\"/usr/share/zfs\" 109CFLAGS+= -DZFSEXECDIR=\"${LIBEXECDIR}/zfs\" 110 111CFLAGS.btree.c+=-fvisibility=hidden 112CFLAGS.range_tree.c+= -fvisibility=hidden 113 114.include <bsd.lib.mk> 115