1fa9e4066Sahrens# 2fa9e4066Sahrens# CDDL HEADER START 3fa9e4066Sahrens# 4fa9e4066Sahrens# The contents of this file are subject to the terms of the 5f808c858Sraf# Common Development and Distribution License (the "License"). 6f808c858Sraf# You may not use this file except in compliance with the License. 7fa9e4066Sahrens# 8fa9e4066Sahrens# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9fa9e4066Sahrens# or http://www.opensolaris.org/os/licensing. 10fa9e4066Sahrens# See the License for the specific language governing permissions 11fa9e4066Sahrens# and limitations under the License. 12fa9e4066Sahrens# 13fa9e4066Sahrens# When distributing Covered Code, include this CDDL HEADER in each 14fa9e4066Sahrens# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15fa9e4066Sahrens# If applicable, add the following below this CDDL HEADER, with the 16fa9e4066Sahrens# fields enclosed by brackets "[]" replaced with your own identifying 17fa9e4066Sahrens# information: Portions Copyright [yyyy] [name of copyright owner] 18fa9e4066Sahrens# 19fa9e4066Sahrens# CDDL HEADER END 20fa9e4066Sahrens# 21fa9e4066Sahrens# 2299d5e173STim Haley# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 2388f61deeSIgor Kozhukhov# Copyright 2016 Igor Kozhukhov <ikozhukhov@gmail.com> 24591e0e13SSebastien Roy# Copyright (c) 2011, 2017 by Delphix. All rights reserved. 25d8ab6e12SDon Brady# Copyright 2020 Joyent, Inc. 26*0886dcadSAndy Fiddaman# Copyright 2024 Oxide Computer Company 27fa9e4066Sahrens# 28fa9e4066Sahrens 29fa9e4066SahrensLIBRARY= libzfs.a 30fa9e4066SahrensVERS= .1 31fa9e4066Sahrens 32*0886dcadSAndy Fiddamanamd64_OBJS_SHARED= \ 33*0886dcadSAndy Fiddaman zfs_fletcher_avx512.o \ 34*0886dcadSAndy Fiddaman zfs_fletcher_intel.o \ 35*0886dcadSAndy Fiddaman zfs_fletcher_sse.o 36*0886dcadSAndy Fiddaman 37069f55e2SEric SchrockOBJS_SHARED= \ 38*0886dcadSAndy Fiddaman $($(MACH64)_OBJS_SHARED) \ 39ad135b5dSChristopher Siden zfeature_common.o \ 40069f55e2SEric Schrock zfs_comutil.o \ 41069f55e2SEric Schrock zfs_deleg.o \ 42069f55e2SEric Schrock zfs_fletcher.o \ 43*0886dcadSAndy Fiddaman zfs_fletcher_superscalar.o \ 44*0886dcadSAndy Fiddaman zfs_fletcher_superscalar4.o \ 45069f55e2SEric Schrock zfs_namecheck.o \ 46069f55e2SEric Schrock zfs_prop.o \ 47069f55e2SEric Schrock zpool_prop.o \ 48069f55e2SEric Schrock zprop_common.o 49069f55e2SEric Schrock 50069f55e2SEric SchrockOBJS_COMMON= \ 51069f55e2SEric Schrock libzfs_changelist.o \ 52069f55e2SEric Schrock libzfs_config.o \ 53eb633035STom Caputi libzfs_crypto.o \ 54069f55e2SEric Schrock libzfs_dataset.o \ 5599d5e173STim Haley libzfs_diff.o \ 56069f55e2SEric Schrock libzfs_fru.o \ 57069f55e2SEric Schrock libzfs_import.o \ 5819b94df9SMatthew Ahrens libzfs_iter.o \ 59069f55e2SEric Schrock libzfs_mount.o \ 60069f55e2SEric Schrock libzfs_pool.o \ 61069f55e2SEric Schrock libzfs_sendrecv.o \ 62069f55e2SEric Schrock libzfs_status.o \ 63591e0e13SSebastien Roy libzfs_util.o \ 64591e0e13SSebastien Roy libzfs_taskq.o 65069f55e2SEric Schrock 66fa9e4066SahrensOBJECTS= $(OBJS_COMMON) $(OBJS_SHARED) 67fa9e4066Sahrens 68fa9e4066Sahrensinclude ../../Makefile.lib 69fa9e4066Sahrens 70bbf21555SRichard Lowe# libzfs must be installed in the root filesystem for mount(8) 7164dbca9eSeschrockinclude ../../Makefile.rootfs 7264dbca9eSeschrock 735801b0f0SToomas SoomeLIBS= $(DYNLIB) 74fa9e4066Sahrens 75f808c858SrafSRCDIR = ../common 76f808c858Sraf 77fa9e4066SahrensINCS += -I$(SRCDIR) 78fa9e4066SahrensINCS += -I../../../uts/common/fs/zfs 79fa9e4066SahrensINCS += -I../../../common/zfs 804f67d755SEric TaylorINCS += -I../../libc/inc 81d8ab6e12SDon BradyINCS += -I../../libzutil/common 82fa9e4066Sahrens 83bd0ce624SYuri PankovCSTD= $(CSTD_GNU99) 84681d9761SEric TaylorLDLIBS += -lc -lm -ldevid -lgen -lnvpair -luutil -lavl -lefi \ 85d8ab6e12SDon Brady -lidmap -ltsol -lcryptoutil -lpkcs11 -lmd -lumem -lzfs_core \ 86d8ab6e12SDon Brady -ldevinfo -lzutil 8799d5e173STim HaleyCPPFLAGS += $(INCS) -D_LARGEFILE64_SOURCE=1 -D_REENTRANT 887c13517fSSerapheim Dimitropoulos$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 89fa9e4066Sahrens 9005ede3dbSJohn Levon# not linted 9105ede3dbSJohn LevonSMATCH=off 9205ede3dbSJohn Levon 935801b0f0SToomas SoomeLDLIBS += -lz 945801b0f0SToomas SoomeNATIVE_LIBS += libz.so 954ba5b961SDan Kimmel 96fa9e4066SahrensSRCS= $(OBJS_COMMON:%.o=$(SRCDIR)/%.c) \ 97fa9e4066Sahrens $(OBJS_SHARED:%.o=$(SRC)/common/zfs/%.c) 98eb633035STom Caputi 99fa9e4066Sahrens.KEEP_STATE: 100fa9e4066Sahrens 101fa9e4066Sahrensall: $(LIBS) 102fa9e4066Sahrens 103fa9e4066Sahrenspics/%.o: ../../../common/zfs/%.c 104fa9e4066Sahrens $(COMPILE.c) -o $@ $< 105fa9e4066Sahrens $(POST_PROCESS_O) 106fa9e4066Sahrens 107fa9e4066Sahrensinclude ../../Makefile.targ 108