1*7d1ffc32SGordon Ross# 2*7d1ffc32SGordon Ross# CDDL HEADER START 3*7d1ffc32SGordon Ross# 4*7d1ffc32SGordon Ross# The contents of this file are subject to the terms of the 5*7d1ffc32SGordon Ross# Common Development and Distribution License (the "License"). 6*7d1ffc32SGordon Ross# You may not use this file except in compliance with the License. 7*7d1ffc32SGordon Ross# 8*7d1ffc32SGordon Ross# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*7d1ffc32SGordon Ross# or http://www.opensolaris.org/os/licensing. 10*7d1ffc32SGordon Ross# See the License for the specific language governing permissions 11*7d1ffc32SGordon Ross# and limitations under the License. 12*7d1ffc32SGordon Ross# 13*7d1ffc32SGordon Ross# When distributing Covered Code, include this CDDL HEADER in each 14*7d1ffc32SGordon Ross# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*7d1ffc32SGordon Ross# If applicable, add the following below this CDDL HEADER, with the 16*7d1ffc32SGordon Ross# fields enclosed by brackets "[]" replaced with your own identifying 17*7d1ffc32SGordon Ross# information: Portions Copyright [yyyy] [name of copyright owner] 18*7d1ffc32SGordon Ross# 19*7d1ffc32SGordon Ross# CDDL HEADER END 20*7d1ffc32SGordon Ross# 21*7d1ffc32SGordon Ross# 22*7d1ffc32SGordon Ross# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. 23*7d1ffc32SGordon Ross# Copyright 2018 Nexenta Systems, Inc. All rights reserved. 24*7d1ffc32SGordon Ross# 25*7d1ffc32SGordon Ross 26*7d1ffc32SGordon Ross 27*7d1ffc32SGordon RossPROG= test-msgbuf 28*7d1ffc32SGordon Ross 29*7d1ffc32SGordon RossOBJS_LOCAL= test_main.o test_misc.o test_conv.o \ 30*7d1ffc32SGordon Ross test_mbmarshal.o test_msgbuf.o 31*7d1ffc32SGordon RossOBJS_SMBSRV= smb_mbuf_marshaling.o smb_mbuf_util.o smb_alloc.o 32*7d1ffc32SGordon RossOBJS_SMBCMN= smb_msgbuf.o smb_string.o smb_utf8.o 33*7d1ffc32SGordon Ross 34*7d1ffc32SGordon RossOBJS= ${OBJS_LOCAL} ${OBJS_SMBSRV} ${OBJS_SMBCMN} 35*7d1ffc32SGordon Ross 36*7d1ffc32SGordon RossSMBSRV_SRCDIR=../../../uts/common/fs/smbsrv 37*7d1ffc32SGordon RossSMBSRV_CMNDIR=../../../common/smbsrv 38*7d1ffc32SGordon RossSRCS= ${OBJS_LOCAL:.o=.c} \ 39*7d1ffc32SGordon Ross ${OBJS_SMBSRV:%.o=${SMBSRV_SRCDIR}/%.c} \ 40*7d1ffc32SGordon Ross ${OBJS_SMBCMN:%.o=${SMBSRV_CMNDIR}/%.c} 41*7d1ffc32SGordon Ross 42*7d1ffc32SGordon Rossinclude ../../Makefile.cmd 43*7d1ffc32SGordon Rossinclude ../../Makefile.ctf 44*7d1ffc32SGordon Ross 45*7d1ffc32SGordon Ross# Note: need our sys includes _before_ ENVCPPFLAGS, proto etc. 46*7d1ffc32SGordon RossCPPFLAGS.first += -I. 47*7d1ffc32SGordon RossCPPFLAGS.first += -I../../../lib/libfakekernel/common 48*7d1ffc32SGordon RossCPPFLAGS.first += -I../../../lib/smbsrv/libfksmbsrv/common 49*7d1ffc32SGordon Ross 50*7d1ffc32SGordon RossINCS += -I../../../uts/common 51*7d1ffc32SGordon RossINCS += -I../../../uts/common/smbsrv 52*7d1ffc32SGordon RossINCS += -I../../../common/smbsrv 53*7d1ffc32SGordon Ross 54*7d1ffc32SGordon RossCSTD= $(CSTD_GNU99) 55*7d1ffc32SGordon RossC99LMODE= -Xc99=%all 56*7d1ffc32SGordon Ross 57*7d1ffc32SGordon RossCFLAGS += $(CCVERBOSE) 58*7d1ffc32SGordon RossCFLAGS64 += $(CCVERBOSE) 59*7d1ffc32SGordon Ross 60*7d1ffc32SGordon RossCERRWARN += -_gcc=-Wno-parentheses 61*7d1ffc32SGordon Ross 62*7d1ffc32SGordon RossCPPFLAGS += -D_REENTRANT 63*7d1ffc32SGordon RossCPPFLAGS += -DTESTJIG 64*7d1ffc32SGordon RossCPPFLAGS += -Dsyslog=smb_syslog 65*7d1ffc32SGordon RossCPPFLAGS += -D_LARGEFILE64_SOURCE=1 66*7d1ffc32SGordon Ross# Always debug here 67*7d1ffc32SGordon RossCPPFLAGS += -DDEBUG 68*7d1ffc32SGordon RossCPPFLAGS += $(INCS) 69*7d1ffc32SGordon Ross 70*7d1ffc32SGordon RossLDFLAGS += $(ZNOLAZYLOAD) 71*7d1ffc32SGordon RossLDFLAGS += '-R$$ORIGIN/..' 72*7d1ffc32SGordon RossLDLIBS += -lfakekernel -lcmdutils 73*7d1ffc32SGordon Ross 74*7d1ffc32SGordon RossLINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2 75*7d1ffc32SGordon RossLINTFLAGS += -xerroff=E_NAME_USED_NOT_DEF2 76*7d1ffc32SGordon RossLINTFLAGS += -xerroff=E_INCONS_ARG_DECL2 77*7d1ffc32SGordon RossLINTFLAGS += -xerroff=E_INCONS_VAL_TYPE_DECL2 78*7d1ffc32SGordon Ross 79*7d1ffc32SGordon RossROOTSMBDDIR = $(ROOTLIB)/smbsrv 80*7d1ffc32SGordon RossROOTSMBDFILE = $(PROG:%=$(ROOTSMBDDIR)/%) 81*7d1ffc32SGordon Ross 82*7d1ffc32SGordon Ross.KEEP_STATE: 83*7d1ffc32SGordon Ross 84*7d1ffc32SGordon Rossall: $(PROG) 85*7d1ffc32SGordon Ross 86*7d1ffc32SGordon Ross$(PROG): $(OBJS) 87*7d1ffc32SGordon Ross $(LINK.c) -o $(PROG) $(OBJS) $(LDLIBS) 88*7d1ffc32SGordon Ross $(POST_PROCESS) 89*7d1ffc32SGordon Ross 90*7d1ffc32SGordon Rossclean: 91*7d1ffc32SGordon Ross -$(RM) $(OBJS) 92*7d1ffc32SGordon Ross 93*7d1ffc32SGordon Rosslint: # lint_SRCS 94*7d1ffc32SGordon Ross 95*7d1ffc32SGordon Rossinclude ../../Makefile.targ 96*7d1ffc32SGordon Ross 97*7d1ffc32SGordon Rossinstall: all $(ROOTSMBDFILE) 98*7d1ffc32SGordon Ross 99*7d1ffc32SGordon Rosstest_main.o : test_main.c 100*7d1ffc32SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -D_KMEMUSER -c test_main.c 101*7d1ffc32SGordon Ross $(POST_PROCESS_O) 102*7d1ffc32SGordon Ross 103*7d1ffc32SGordon Rosstest_misc.o : test_misc.c 104*7d1ffc32SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -D_FAKE_KERNEL \ 105*7d1ffc32SGordon Ross -I../../../uts/common/smbsrv \ 106*7d1ffc32SGordon Ross -I../../../common/smbsrv -c test_misc.c 107*7d1ffc32SGordon Ross $(POST_PROCESS_O) 108*7d1ffc32SGordon Ross 109*7d1ffc32SGordon Ross# OBJS_SMBSRV 110*7d1ffc32SGordon Ross%.o: ../../../uts/common/fs/smbsrv/%.c 111*7d1ffc32SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -D_FAKE_KERNEL \ 112*7d1ffc32SGordon Ross -I../../../uts/common/smbsrv \ 113*7d1ffc32SGordon Ross -I../../../common/smbsrv -c $< 114*7d1ffc32SGordon Ross $(POST_PROCESS_O) 115*7d1ffc32SGordon Ross 116*7d1ffc32SGordon Ross# OBJS_SMBCMN 117*7d1ffc32SGordon Ross%.o: ../../../common/smbsrv/%.c 118*7d1ffc32SGordon Ross $(CC) $(CFLAGS) $(CPPFLAGS) -D_FAKE_KERNEL \ 119*7d1ffc32SGordon Ross -I../../../uts/common/smbsrv \ 120*7d1ffc32SGordon Ross -I../../../common/smbsrv -c $< 121*7d1ffc32SGordon Ross $(POST_PROCESS_O) 122*7d1ffc32SGordon Ross 123*7d1ffc32SGordon Ross$(ROOTSMBDDIR)/%: % 124*7d1ffc32SGordon Ross $(INS.file) 125