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#
27a8cc26d6SJohn Levon# Copyright 2019, Joyent, Inc.
28a8cc26d6SJohn Levon#
298329232eSGordon Ross
308329232eSGordon RossLIBRARY =	libfknsmb.a
318329232eSGordon RossVERS =		.1
328329232eSGordon Ross
338329232eSGordon RossOBJS_LOCAL = \
348329232eSGordon Ross	fksmb_sign_pkcs.o \
358329232eSGordon Ross	fake_ddi.o \
368329232eSGordon Ross	fake_fio.o \
378329232eSGordon Ross	fake_kmem.o \
388329232eSGordon Ross	fake_ktli.o \
398329232eSGordon Ross	fake_pkey.o \
408329232eSGordon Ross	fake_policy.o \
418329232eSGordon Ross	fake_sdt.o \
428329232eSGordon Ross	fake_softc.o \
438329232eSGordon Ross	fake_stream.o \
448329232eSGordon Ross	fake_strsubr.o
458329232eSGordon Ross
468329232eSGordon Ross# See also: $SRC/uts/common/Makefile.files
478329232eSGordon Ross# NB: Intentionally ommitted, compared w/ the above:
488329232eSGordon Ross#  smb_dev.o smb_pass.o	smb_sign_kcf.o
498329232eSGordon Ross#
508329232eSGordon RossOBJS_NSMB = \
518329232eSGordon Ross	smb_dev.o \
528329232eSGordon Ross	smb_conn.o \
538329232eSGordon Ross	smb_iod.o \
548329232eSGordon Ross	smb_rq.o \
558329232eSGordon Ross	smb_sign.o \
568329232eSGordon Ross	smb_smb.o \
578329232eSGordon Ross	smb_subrs.o \
588329232eSGordon Ross	smb_time.o \
598329232eSGordon Ross	smb_tran.o \
608329232eSGordon Ross	smb_trantcp.o \
618329232eSGordon Ross	smb_usr.o \
62adee6784SGordon Ross	smb2_rq.o \
63adee6784SGordon Ross	smb2_sign.o \
64adee6784SGordon Ross	smb2_smb.o \
658329232eSGordon Ross	subr_mchain.o
668329232eSGordon Ross
678329232eSGordon RossOBJECTS = \
688329232eSGordon Ross	$(OBJS_LOCAL) \
698329232eSGordon Ross	$(OBJS_NSMB)
708329232eSGordon Ross
718329232eSGordon Rossinclude ../../../Makefile.lib
728329232eSGordon Rossinclude ../../Makefile.lib
738329232eSGordon Ross
748329232eSGordon Ross# Force SOURCEDEBUG
758329232eSGordon RossCSOURCEDEBUGFLAGS	= -g
768329232eSGordon RossCCSOURCEDEBUGFLAGS	= -g
778329232eSGordon RossSTRIP_STABS	= :
788329232eSGordon Ross
798329232eSGordon Ross# Note: need our sys includes _before_ ENVCPPFLAGS, proto etc.
808329232eSGordon Ross# Also, like Makefile.uts, reset CPPFLAGS
818329232eSGordon RossCPPFLAGS.first += -I../../../libfakekernel/common
828329232eSGordon RossCPPFLAGS.first += -I../common
838329232eSGordon RossCPPFLAGS= $(CPPFLAGS.first)
848329232eSGordon Ross
858329232eSGordon RossINCS += -I$(SRC)/uts/common/fs/smbclnt
868329232eSGordon RossINCS += -I$(SRC)/uts/common
878329232eSGordon Ross
888329232eSGordon RossCPPFLAGS += $(INCS) -D_REENTRANT -D_FAKE_KERNEL
898329232eSGordon RossCPPFLAGS += -D_FILE_OFFSET_BITS=64
908329232eSGordon Ross# Always want DEBUG here
918329232eSGordon RossCPPFLAGS += -DDEBUG
928329232eSGordon Ross
938329232eSGordon RossCERRWARN += -_gcc=-Wno-switch
948329232eSGordon Ross
95a8cc26d6SJohn Levon# needs work
96a8cc26d6SJohn LevonSMOFF += all_func_returns,deref_check,signed
97a8cc26d6SJohn Levon
988329232eSGordon RossLDLIBS +=	$(MACH_LDLIBS)
998329232eSGordon RossLDLIBS +=	-lfakekernel -lpkcs11 -lnsl -lc
1008329232eSGordon Ross
101*8222814eSRichard Lowe# libfknsmb isn't delivered, and is a special case, disable global data complaints
102*8222814eSRichard LoweZGUIDANCE= -Wl,-zguidance=noasserts
103*8222814eSRichard Lowe
1048329232eSGordon RossNSMB_DIR=$(SRC)/uts/common/fs/smbclnt/netsmb
1058329232eSGordon RossSRCS=   $(OBJS_LOCAL:%.o=$(SRCDIR)/%.c) \
1068329232eSGordon Ross	$(OBJS_NSMB:%.o=$(NSMB_DIR)/%.c)
1078329232eSGordon Ross
1088329232eSGordon Rossall:
1098329232eSGordon Ross
1108329232eSGordon Rosspics/%.o:	$(NSMB_DIR)/%.c
1118329232eSGordon Ross	$(COMPILE.c) -o $@ $<
1128329232eSGordon Ross	$(POST_PROCESS_O)
1138329232eSGordon Ross
1148329232eSGordon Ross.KEEP_STATE:
1158329232eSGordon Ross
1168329232eSGordon Rossinclude ../../Makefile.targ
1178329232eSGordon Rossinclude ../../../Makefile.targ
118