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 (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
238329232eSGordon Ross# Copyright 2017 Nexenta Systems, Inc.  All rights reserved.
24*a8cc26d6SJohn Levon# Copyright 2019, Joyent, Inc.
258329232eSGordon Ross#
268329232eSGordon Ross
278329232eSGordon RossPROG=	fksmbcl
288329232eSGordon Ross
298329232eSGordon RossOBJS_LOCAL = \
308329232eSGordon Ross	fksmbcl_main.o \
318329232eSGordon Ross	fkdev.o \
328329232eSGordon Ross	fknewvc.o \
338329232eSGordon Ross	fkiod_cl.o \
348329232eSGordon Ross	shares.o
358329232eSGordon Ross
368329232eSGordon RossOBJS=	${OBJS_LOCAL}
378329232eSGordon RossSRCS=	${OBJS_LOCAL:.o=.c}
388329232eSGordon Ross
398329232eSGordon Rossinclude ../../../Makefile.cmd
408329232eSGordon Rossinclude ../../../Makefile.ctf
418329232eSGordon Ross
428329232eSGordon Ross# Force SOURCEDEBUG
438329232eSGordon RossCSOURCEDEBUGFLAGS	= -g
448329232eSGordon RossCCSOURCEDEBUGFLAGS	= -g
458329232eSGordon RossSTRIP_STABS	= :
468329232eSGordon Ross
478329232eSGordon Ross# Note: need our sys includes _before_ ENVCPPFLAGS, proto etc.
488329232eSGordon Ross# Also, like Makefile.uts, reset CPPFLAGS
498329232eSGordon Ross# CPPFLAGS.first += -I$(SRC)/lib/libfakekernel/common
508329232eSGordon RossCPPFLAGS.first += -I$(SRC)/lib/smbclnt/libfknsmb/common
518329232eSGordon RossCPPFLAGS= $(CPPFLAGS.first)
528329232eSGordon Ross
538329232eSGordon RossINCS += -I$(SRC)/uts/common/fs/smbclnt
548329232eSGordon RossINCS += -I$(SRC)/uts/common
558329232eSGordon RossINCS += -I$(SRC)/common/smbclnt
568329232eSGordon RossINCS += -I$(SRC)/common
578329232eSGordon Ross
588329232eSGordon Ross# Allow cpp to find libfknsmb.h etc. via
598329232eSGordon Ross# include <libfknsmb/common/libfknsmb.h>
608329232eSGordon RossINCS += -I$(SRC)/lib/smbclnt
618329232eSGordon RossINCS += -I$(SRC)/lib/libsmbfs
628329232eSGordon RossINCS += -I$(SRC)/lib/libsmbfs/netsmb
638329232eSGordon Ross
648329232eSGordon RossCPPFLAGS += $(INCS)
658329232eSGordon RossCPPFLAGS += -D_REENTRANT
668329232eSGordon RossCPPFLAGS += -D_FILE_OFFSET_BITS=64
678329232eSGordon RossCPPFLAGS += -D_LARGEFILE64_SOURCE=1
688329232eSGordon RossCPPFLAGS += -DFKSMBCL
698329232eSGordon Ross# Always want DEBUG here
708329232eSGordon RossCPPFLAGS += -DDEBUG
718329232eSGordon Ross
72*a8cc26d6SJohn Levon# needs work
73*a8cc26d6SJohn LevonSMOFF += all_func_returns
74*a8cc26d6SJohn Levon
758329232eSGordon RossCSTD=		$(CSTD_GNU99)
768329232eSGordon Ross
778329232eSGordon RossCFLAGS += $(CCVERBOSE)
788329232eSGordon RossCFLAGS64 += $(CCVERBOSE)
798329232eSGordon Ross
808329232eSGordon RossLDFLAGS += $(ZNOLAZYLOAD)
818329232eSGordon RossLDFLAGS += -R/usr/lib/smbfs
828329232eSGordon RossLDLIBS += -L$(ROOT)/usr/lib/smbfs
838329232eSGordon RossLDLIBS += -lsmbfs -lfksmbfs -lfknsmb
848329232eSGordon RossLDLIBS += -lsocket
858329232eSGordon Ross
868329232eSGordon RossROOTSMBDDIR = $(ROOTLIB)/smbfs
878329232eSGordon RossROOTSMBDFILE = $(PROG:%=$(ROOTSMBDDIR)/%)
888329232eSGordon Ross
898329232eSGordon Ross.KEEP_STATE:
908329232eSGordon Ross
918329232eSGordon Rossall: $(PROG)
928329232eSGordon Ross
938329232eSGordon Ross$(PROG): $(OBJS)
948329232eSGordon Ross	$(LINK.c) -o $(PROG) $(OBJS) $(LDLIBS)
958329232eSGordon Ross	$(POST_PROCESS)
968329232eSGordon Ross
978329232eSGordon Rossclean:
988329232eSGordon Ross	-$(RM) $(OBJS)
998329232eSGordon Ross
1008329232eSGordon Rossinclude ../../../Makefile.targ
1018329232eSGordon Ross
1028329232eSGordon Rossinstall: all $(ROOTSMBDFILE)
1038329232eSGordon Ross
1048329232eSGordon Ross$(ROOTSMBDDIR)/%: %
1058329232eSGordon Ross	$(INS.file)
106