xref: /freebsd/cddl/lib/libzfs/Makefile (revision 10f57cb98fd61b2669640a84aa73ad118601f281)
1f0a75d27SPawel Jakub Dawidek# $FreeBSD$
2f0a75d27SPawel Jakub Dawidek
39e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/module/icp
49e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zcommon
59e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libzfs
69e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libzfs/os/freebsd
79e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libshare
89e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/lib/libshare/os/freebsd
99e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/include
109e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zstd
119e5787d2SMatt Macy.PATH: ${SRCTOP}/sys/contrib/openzfs/module/zstd/lib
12f0a75d27SPawel Jakub Dawidek
13c2a7c3beSEmmanuel VadotPACKAGE=	runtime
14f0a75d27SPawel Jakub DawidekLIB=	zfs
1540d0fd28SRyan MoellerLIBADD= \
1640d0fd28SRyan Moeller	avl \
1740d0fd28SRyan Moeller	bsdxml \
1840d0fd28SRyan Moeller	crypto \
1940d0fd28SRyan Moeller	geom \
2040d0fd28SRyan Moeller	m \
2140d0fd28SRyan Moeller	md \
2240d0fd28SRyan Moeller	nvpair \
2340d0fd28SRyan Moeller	pthread \
2440d0fd28SRyan Moeller	umem \
2540d0fd28SRyan Moeller	util \
2640d0fd28SRyan Moeller	uutil \
2740d0fd28SRyan Moeller	z \
2840d0fd28SRyan Moeller	zfs_core \
2940d0fd28SRyan Moeller	zutil
30f0a75d27SPawel Jakub Dawidek
319e5787d2SMatt MacyINCS=	libzfs.h
329e5787d2SMatt MacyUSER_C = \
339e5787d2SMatt Macy        libzfs_changelist.c \
3410b9d77bSPawel Jakub Dawidek        libzfs_config.c \
359e5787d2SMatt Macy        libzfs_crypto.c \
3610b9d77bSPawel Jakub Dawidek        libzfs_dataset.c \
3710b9d77bSPawel Jakub Dawidek        libzfs_diff.c \
3810b9d77bSPawel Jakub Dawidek        libzfs_import.c \
392f7f0f41SMartin Matuska        libzfs_iter.c \
4010b9d77bSPawel Jakub Dawidek        libzfs_mount.c \
4110b9d77bSPawel Jakub Dawidek        libzfs_pool.c \
4210b9d77bSPawel Jakub Dawidek        libzfs_sendrecv.c \
4310b9d77bSPawel Jakub Dawidek        libzfs_status.c \
449e5787d2SMatt Macy        libzfs_util.c
459e5787d2SMatt Macy
469e5787d2SMatt Macy# FreeBSD
479e5787d2SMatt MacyUSER_C += \
489e5787d2SMatt Macy        libzfs_compat.c \
499e5787d2SMatt Macy        libzfs_ioctl_compat.c \
509e5787d2SMatt Macy        libzfs_zmount.c
519e5787d2SMatt Macy
529e5787d2SMatt Macy# libshare
539e5787d2SMatt MacyUSER_C += \
549e5787d2SMatt Macy	libshare.c \
559e5787d2SMatt Macy	nfs.c \
569e5787d2SMatt Macy	smb.c
579e5787d2SMatt Macy
589e5787d2SMatt Macy
599e5787d2SMatt MacyKERNEL_C = \
609e5787d2SMatt Macy        algs/sha2/sha2.c \
619e5787d2SMatt Macy        cityhash.c \
622d9cf57eSMartin Matuska        zfeature_common.c \
6310b9d77bSPawel Jakub Dawidek        zfs_comutil.c \
6410b9d77bSPawel Jakub Dawidek        zfs_deleg.c \
6510b9d77bSPawel Jakub Dawidek        zfs_fletcher.c \
669e5787d2SMatt Macy        zfs_fletcher_superscalar.c \
679e5787d2SMatt Macy        zfs_fletcher_superscalar4.c \
681ba4a712SPawel Jakub Dawidek        zfs_namecheck.c \
695941f035SRuslan Ermilov        zfs_prop.c \
701ba4a712SPawel Jakub Dawidek        zpool_prop.c \
719e5787d2SMatt Macy        zprop_common.c
72f0a75d27SPawel Jakub Dawidek
739e5787d2SMatt Macy
749e5787d2SMatt MacyARCH_C =
759e5787d2SMatt Macy.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
769e5787d2SMatt MacyARCH_C += 	zfs_fletcher_intel.c \
779e5787d2SMatt Macy		zfs_fletcher_sse.c
789e5787d2SMatt MacyCFLAGS +=  -DHAVE_SSE2
799e5787d2SMatt Macy.endif
809e5787d2SMatt Macy.if ${MACHINE_ARCH} == "amd64"
819e5787d2SMatt MacyARCH_C +=	zfs_fletcher_avx512.c
829e5787d2SMatt MacyCFLAGS+= -DHAVE_AVX2 -DHAVE_AVX -D__x86_64 -DHAVE_AVX512F
839e5787d2SMatt Macy.endif
842a6803deSAndrew Turner.if ${MACHINE_CPUARCH} == "aarch64"
859e5787d2SMatt MacyARCH_C +=	zfs_fletcher_aarch64_neon.c
869e5787d2SMatt Macy.endif
879e5787d2SMatt Macy
889e5787d2SMatt MacySRCS= $(USER_C) $(KERNEL_C) $(ARCH_C)
899e5787d2SMatt Macy
909e5787d2SMatt MacyWARNS?=	2
919e5787d2SMatt MacySHLIB_MAJOR= 4
9210b9d77bSPawel Jakub DawidekCSTD=	c99
939e5787d2SMatt MacyCFLAGS+= -DIN_BASE
949e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/include
959e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/include/os/freebsd
969e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include
979e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libspl/include/os/freebsd
989e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/lib/libshare
999e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/ck/include
1009e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys
101acc37ca1SEnji CooperCFLAGS+= -I${SRCTOP}/cddl/compat/opensolaris/include
1029e5787d2SMatt MacyCFLAGS+= -I${SRCTOP}/sys/contrib/openzfs/module/icp/include
1039e5787d2SMatt MacyCFLAGS+= -include ${SRCTOP}/sys/contrib/openzfs/include/os/freebsd/spl/sys/ccompile.h
1049e5787d2SMatt MacyCFLAGS+= -DHAVE_ISSETUGID
1059e5787d2SMatt MacyCFLAGS+= -include ${SRCTOP}/sys/modules/zfs/zfs_config.h
106*10f57cb9SMartin MatuskaCFLAGS+= -DSYSCONFDIR=\"/etc\"
107*10f57cb9SMartin MatuskaCFLAGS+= -DPKGDATADIR=\"/usr/share/zfs\"
1089e5787d2SMatt Macy
109f0a75d27SPawel Jakub Dawidek
110f0a75d27SPawel Jakub Dawidek.include <bsd.lib.mk>
111