194047d49SGordon Ross# 294047d49SGordon Ross# CDDL HEADER START 394047d49SGordon Ross# 494047d49SGordon Ross# The contents of this file are subject to the terms of the 594047d49SGordon Ross# Common Development and Distribution License (the "License"). 694047d49SGordon Ross# You may not use this file except in compliance with the License. 794047d49SGordon Ross# 894047d49SGordon Ross# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 994047d49SGordon Ross# or http://www.opensolaris.org/os/licensing. 1094047d49SGordon Ross# See the License for the specific language governing permissions 1194047d49SGordon Ross# and limitations under the License. 1294047d49SGordon Ross# 1394047d49SGordon Ross# When distributing Covered Code, include this CDDL HEADER in each 1494047d49SGordon Ross# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1594047d49SGordon Ross# If applicable, add the following below this CDDL HEADER, with the 1694047d49SGordon Ross# fields enclosed by brackets "[]" replaced with your own identifying 1794047d49SGordon Ross# information: Portions Copyright [yyyy] [name of copyright owner] 1894047d49SGordon Ross# 1994047d49SGordon Ross# CDDL HEADER END 2094047d49SGordon Ross# 2194047d49SGordon Ross# 2294047d49SGordon Ross# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. 2394047d49SGordon Ross# Copyright 2018 Nexenta Systems, Inc. All rights reserved. 2494047d49SGordon Ross# 2594047d49SGordon Ross 2694047d49SGordon Ross 2794047d49SGordon RossPROG= testoplock 2894047d49SGordon Ross 2994047d49SGordon RossOBJS_LOCAL= tol_main.o tol_misc.o 3094047d49SGordon RossOBJS_SMBSRV= smb_cmn_oplock.o 3194047d49SGordon RossOBJS_LIBSMB= smb_status_tbl.o 3294047d49SGordon Ross 3394047d49SGordon RossOBJS= ${OBJS_LOCAL} ${OBJS_SMBSRV} ${OBJS_LIBSMB} 3494047d49SGordon Ross 3594047d49SGordon RossSMBSRV_SRCDIR=../../../uts/common/fs/smbsrv 3694047d49SGordon RossSRCS= ${OBJS_LOCAL:.o=.c} \ 3794047d49SGordon Ross ${OBJS_SMBSRV:%.o=${SMBSRV_SRCDIR}/%.c} 3894047d49SGordon Ross 3994047d49SGordon Rossinclude ../../Makefile.cmd 4094047d49SGordon Rossinclude ../../Makefile.ctf 4194047d49SGordon Ross 4294047d49SGordon Ross# Note: need our sys includes _before_ ENVCPPFLAGS, proto etc. 4394047d49SGordon RossCPPFLAGS.first += -I. 4494047d49SGordon RossCPPFLAGS.first += -I../../../lib/libfakekernel/common 4594047d49SGordon RossCPPFLAGS.first += -I../../../lib/smbsrv/libfksmbsrv/common 4694047d49SGordon Ross 4794047d49SGordon RossINCS += -I../../../uts/common 4894047d49SGordon Ross 4994047d49SGordon RossCSTD= $(CSTD_GNU99) 5094047d49SGordon Ross 5194047d49SGordon RossCFLAGS += $(CCVERBOSE) 5294047d49SGordon RossCFLAGS64 += $(CCVERBOSE) 5394047d49SGordon Ross 5494047d49SGordon RossCPPFLAGS.master=$(DTEXTDOM) $(DTS_ERRNO) 5594047d49SGordon Ross 5694047d49SGordon Ross# CPPFLAGS is deliberatly set with a "=" and not a "+="... 5794047d49SGordon RossCPPFLAGS= $(CPPFLAGS.first) $(CPPFLAGS.master) 5894047d49SGordon Ross 5994047d49SGordon RossCPPFLAGS += -D_REENTRANT 6094047d49SGordon RossCPPFLAGS += -DTESTJIG 6194047d49SGordon RossCPPFLAGS += -Dsyslog=smb_syslog 6294047d49SGordon RossCPPFLAGS += -D_LARGEFILE64_SOURCE=1 6394047d49SGordon Ross# Always debug here 6494047d49SGordon RossCPPFLAGS += -DDEBUG 6594047d49SGordon RossCPPFLAGS += $(INCS) 6694047d49SGordon Ross 6794047d49SGordon RossLDFLAGS += $(ZNOLAZYLOAD) 68*94afd144SGordon RossLDFLAGS += '-R$$ORIGIN/..' 6994047d49SGordon RossLDLIBS += -lfakekernel -lcmdutils 7094047d49SGordon Ross 7194047d49SGordon RossLINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2 7294047d49SGordon RossLINTFLAGS += -xerroff=E_NAME_USED_NOT_DEF2 7394047d49SGordon RossLINTFLAGS += -xerroff=E_INCONS_ARG_DECL2 7494047d49SGordon RossLINTFLAGS += -xerroff=E_INCONS_VAL_TYPE_DECL2 7594047d49SGordon Ross 7694047d49SGordon RossROOTSMBDDIR = $(ROOTLIB)/smbsrv 7794047d49SGordon RossROOTSMBDFILE = $(PROG:%=$(ROOTSMBDDIR)/%) 7894047d49SGordon Ross 7994047d49SGordon Ross.KEEP_STATE: 8094047d49SGordon Ross 8194047d49SGordon Rossall: $(PROG) 8294047d49SGordon Ross 8394047d49SGordon Ross$(PROG): $(OBJS) 8494047d49SGordon Ross $(LINK.c) -o $(PROG) $(OBJS) $(LDLIBS) 8594047d49SGordon Ross $(POST_PROCESS) 8694047d49SGordon Ross 8794047d49SGordon Rossclean: 8894047d49SGordon Ross -$(RM) $(OBJS) 8994047d49SGordon Ross 9094047d49SGordon Rosslint: # lint_SRCS 9194047d49SGordon Ross 9294047d49SGordon Rossinclude ../../Makefile.targ 9394047d49SGordon Ross 9494047d49SGordon Rossinstall: all $(ROOTSMBDFILE) 9594047d49SGordon Ross 9694047d49SGordon Ross 9794047d49SGordon Rosstol_main.o : tol_main.c 9894047d49SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -D_KMEMUSER -c tol_main.c 9994047d49SGordon Ross $(POST_PROCESS_O) 10094047d49SGordon Ross 10194047d49SGordon Rosstol_misc.o : tol_misc.c 10294047d49SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -D_FAKE_KERNEL \ 10394047d49SGordon Ross -I../../../uts/common/smbsrv \ 10494047d49SGordon Ross -I../../../common/smbsrv -c tol_misc.c 10594047d49SGordon Ross $(POST_PROCESS_O) 10694047d49SGordon Ross 10794047d49SGordon Ross# OBJS_SMBSRV 10894047d49SGordon Ross%.o: ../../../uts/common/fs/smbsrv/%.c 10994047d49SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -D_FAKE_KERNEL \ 11094047d49SGordon Ross -I../../../uts/common/smbsrv \ 11194047d49SGordon Ross -I../../../common/smbsrv -c $< 11294047d49SGordon Ross $(POST_PROCESS_O) 11394047d49SGordon Ross 11494047d49SGordon Ross# OBJS_LIBSMB 11594047d49SGordon Ross%.o: ../../../lib/smbsrv/libsmb/common/%.c 11694047d49SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -c $< 11794047d49SGordon Ross $(POST_PROCESS_O) 11894047d49SGordon Ross 11994047d49SGordon Ross 12094047d49SGordon Ross$(ROOTSMBDDIR)/%: % 12194047d49SGordon Ross $(INS.file) 122