18329232eSGordon Ross#
28329232eSGordon Ross# CDDL HEADER START
38329232eSGordon Ross#
48329232eSGordon Ross# The contents of this file are subject to the terms of the
58329232eSGordon Ross# Common Development and Distribution License (the "License").
68329232eSGordon Ross# You may not use this file except in compliance with the License.
78329232eSGordon Ross#
88329232eSGordon Ross# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
98329232eSGordon Ross# or http://www.opensolaris.org/os/licensing.
108329232eSGordon Ross# See the License for the specific language governing permissions
118329232eSGordon Ross# and limitations under the License.
128329232eSGordon Ross#
138329232eSGordon Ross# When distributing Covered Code, include this CDDL HEADER in each
148329232eSGordon Ross# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
158329232eSGordon Ross# If applicable, add the following below this CDDL HEADER, with the
168329232eSGordon Ross# fields enclosed by brackets "[]" replaced with your own identifying
178329232eSGordon Ross# information: Portions Copyright [yyyy] [name of copyright owner]
188329232eSGordon Ross#
198329232eSGordon Ross# CDDL HEADER END
208329232eSGordon Ross#
218329232eSGordon Ross#
228329232eSGordon Ross# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
238329232eSGordon Ross# Use is subject to license terms.
248329232eSGordon Ross#
25adee6784SGordon Ross# Copyright 2018 Nexenta Systems, Inc.  All rights reserved.
268329232eSGordon Ross#
27*a8cc26d6SJohn Levon# Copyright 2019, Joyent, Inc.
28*a8cc26d6SJohn Levon#
298329232eSGordon Ross
308329232eSGordon RossLIBRARY =	libfksmbfs.a
318329232eSGordon RossVERS =		.1
328329232eSGordon Ross
338329232eSGordon RossOBJS_LOCAL = \
348329232eSGordon Ross	fksmbfs_rwlock.o \
358329232eSGordon Ross	fake_fssub.o \
368329232eSGordon Ross	fake_getdents.o \
378329232eSGordon Ross	fake_lookup.o \
388329232eSGordon Ross	fake_misc.o \
398329232eSGordon Ross	fake_modconf.o \
408329232eSGordon Ross	fake_nbmlock.o \
418329232eSGordon Ross	fake_open.o \
428329232eSGordon Ross	fake_rename.o \
438329232eSGordon Ross	fake_rw.o \
448329232eSGordon Ross	fake_stat.o \
458329232eSGordon Ross	fake_unlink.o \
468329232eSGordon Ross	fake_vfs.o \
478329232eSGordon Ross	fake_vnode.o \
488329232eSGordon Ross	fake_zone.o
498329232eSGordon Ross
508329232eSGordon Ross# See also: $SRC/uts/common/Makefile.files
518329232eSGordon Ross# NB: Intentionally ommitted, compared w/ the above:
528329232eSGordon Ross#  smbfs_rwlock.o
538329232eSGordon Ross#
548329232eSGordon RossOBJS_FS_SMBFS = \
558329232eSGordon Ross	smbfs_vfsops.o \
568329232eSGordon Ross	smbfs_vnops.o \
578329232eSGordon Ross	smbfs_client.o \
588329232eSGordon Ross	smbfs_node.o \
598329232eSGordon Ross	smbfs_smb.o \
60adee6784SGordon Ross	smbfs_smb1.o \
61adee6784SGordon Ross	smbfs_smb2.o \
628329232eSGordon Ross	smbfs_subr.o \
638329232eSGordon Ross	smbfs_subr2.o \
648329232eSGordon Ross	smbfs_acl.o \
658329232eSGordon Ross	smbfs_xattr.o
668329232eSGordon Ross
678329232eSGordon RossOBJS_CMN_SMBFS = \
688329232eSGordon Ross	smbfs_ntacl.o
698329232eSGordon Ross
708329232eSGordon RossOBJS_MISC = \
718329232eSGordon Ross	acl_common.o \
728329232eSGordon Ross	pathname.o \
738329232eSGordon Ross	refstr.o
748329232eSGordon Ross
758329232eSGordon RossOBJECTS = \
768329232eSGordon Ross	$(OBJS_LOCAL) \
778329232eSGordon Ross	$(OBJS_FS_SMBFS) \
788329232eSGordon Ross	$(OBJS_CMN_SMBFS) \
798329232eSGordon Ross	$(OBJS_MISC)
808329232eSGordon Ross
818329232eSGordon Rossinclude ../../../Makefile.lib
828329232eSGordon Rossinclude ../../Makefile.lib
838329232eSGordon Ross
848329232eSGordon Ross# Force SOURCEDEBUG
858329232eSGordon RossCSOURCEDEBUGFLAGS	= -g
868329232eSGordon RossCCSOURCEDEBUGFLAGS	= -g
878329232eSGordon RossSTRIP_STABS	= :
888329232eSGordon Ross
898329232eSGordon Ross# Note: need our sys includes _before_ ENVCPPFLAGS, proto etc.
908329232eSGordon Ross# Also, like Makefile.uts, reset CPPFLAGS
918329232eSGordon RossCPPFLAGS.first += -I../../../libfakekernel/common
928329232eSGordon RossCPPFLAGS.first += -I../../libfknsmb/common
938329232eSGordon RossCPPFLAGS.first += -I../common
948329232eSGordon RossCPPFLAGS= $(CPPFLAGS.first)
958329232eSGordon Ross
968329232eSGordon RossINCS += -I$(SRC)/uts/common/fs/smbclnt
978329232eSGordon RossINCS += -I$(SRC)/uts/common
988329232eSGordon RossINCS += -I$(SRC)/common/smbclnt
998329232eSGordon RossINCS += -I$(SRC)/common
1008329232eSGordon Ross
1018329232eSGordon RossCPPFLAGS += $(INCS) -D_REENTRANT -D_FAKE_KERNEL
1028329232eSGordon RossCPPFLAGS += -D_FILE_OFFSET_BITS=64
1038329232eSGordon Ross# Always want DEBUG here
1048329232eSGordon RossCPPFLAGS += -DDEBUG
1058329232eSGordon Ross
1068329232eSGordon RossCERRWARN += -_gcc=-Wno-switch
1078329232eSGordon RossCERRWARN += -_gcc=-Wno-parentheses
1088329232eSGordon Ross
109*a8cc26d6SJohn Levon# needs work
110*a8cc26d6SJohn LevonSMOFF += all_func_returns,deref_check,signed,or_vs_and
111*a8cc26d6SJohn Levon
1128329232eSGordon RossLDLIBS +=	$(MACH_LDLIBS)
1138329232eSGordon RossLDLIBS +=	-lfknsmb -lfakekernel -lidmap -lcmdutils -lavl -lc
1148329232eSGordon Ross
1158329232eSGordon RossFS_SMBFS_DIR=$(SRC)/uts/common/fs/smbclnt/smbfs
1168329232eSGordon RossCMN_SMBFS_DIR=$(SRC)/common/smbclnt
1178329232eSGordon RossSRCS=   $(OBJS_LOCAL:%.o=$(SRCDIR)/%.c) \
1188329232eSGordon Ross	$(OBJS_FS_SMBFS:%.o=$(FS_SMBFS_DIR)/%.c) \
1198329232eSGordon Ross	$(OBJS_CMN_SMBFS:%.o=$(CMN_SMBFS_DIR)/%.c)
1208329232eSGordon Ross
1218329232eSGordon Rossall:
1228329232eSGordon Ross
1238329232eSGordon Rosspics/%.o:	$(FS_SMBFS_DIR)/%.c
1248329232eSGordon Ross	$(COMPILE.c) -o $@ $<
1258329232eSGordon Ross	$(POST_PROCESS_O)
1268329232eSGordon Ross
1278329232eSGordon Ross# pathname.o
1288329232eSGordon Rosspics/%.o:	$(SRC)/uts/common/fs/%.c
1298329232eSGordon Ross	$(COMPILE.c) -o $@ $<
1308329232eSGordon Ross	$(POST_PROCESS_O)
1318329232eSGordon Ross
1328329232eSGordon Ross# refstr.o
1338329232eSGordon Rosspics/%.o:	$(SRC)/uts/common/os/%.c
1348329232eSGordon Ross	$(COMPILE.c) -o $@ $<
1358329232eSGordon Ross	$(POST_PROCESS_O)
1368329232eSGordon Ross
1378329232eSGordon Rosspics/acl_common.o:	   $(SRC)/common/acl/acl_common.c
1388329232eSGordon Ross	$(COMPILE.c) -o $@ $(SRC)/common/acl/acl_common.c
1398329232eSGordon Ross	$(POST_PROCESS_O)
1408329232eSGordon Ross
1418329232eSGordon Ross.KEEP_STATE:
1428329232eSGordon Ross
1438329232eSGordon Rossinclude ../../Makefile.targ
1448329232eSGordon Rossinclude ../../../Makefile.targ
145