1da6c28aaSamw# 2da6c28aaSamw# CDDL HEADER START 3da6c28aaSamw# 4da6c28aaSamw# The contents of this file are subject to the terms of the 5da6c28aaSamw# Common Development and Distribution License (the "License"). 6da6c28aaSamw# You may not use this file except in compliance with the License. 7da6c28aaSamw# 8da6c28aaSamw# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9da6c28aaSamw# or http://www.opensolaris.org/os/licensing. 10da6c28aaSamw# See the License for the specific language governing permissions 11da6c28aaSamw# and limitations under the License. 12da6c28aaSamw# 13da6c28aaSamw# When distributing Covered Code, include this CDDL HEADER in each 14da6c28aaSamw# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15da6c28aaSamw# If applicable, add the following below this CDDL HEADER, with the 16da6c28aaSamw# fields enclosed by brackets "[]" replaced with your own identifying 17da6c28aaSamw# information: Portions Copyright [yyyy] [name of copyright owner] 18da6c28aaSamw# 19da6c28aaSamw# CDDL HEADER END 20da6c28aaSamw# 21da6c28aaSamw# 22148c5f43SAlan Wright# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. 23b819cea2SGordon Ross# Copyright 2014 Nexenta Systems, Inc. All rights reserved. 24e48c84d7SJohn Levon# Copyright (c) 2018, Joyent, Inc. 25da6c28aaSamw# 2689dc44ceSjose borrego 27da6c28aaSamw 28da6c28aaSamwPROG= smbd 29b819cea2SGordon RossOBJS= \ 3012b65585SGordon Ross smbd_authsvc.o \ 31b819cea2SGordon Ross smbd_doorsvc.o \ 32b819cea2SGordon Ross smbd_join.o \ 33b3700b07SGordon Ross smbd_krb5lookup.o \ 3412b65585SGordon Ross smbd_krb5ssp.o \ 35b819cea2SGordon Ross smbd_logon.o \ 36b819cea2SGordon Ross smbd_main.o \ 37b819cea2SGordon Ross smbd_nicmon.o \ 3812b65585SGordon Ross smbd_ntlmssp.o \ 3968b2bbf2SGordon Ross smbd_pipesvc.o \ 40b819cea2SGordon Ross smbd_share_doorsvc.o \ 41b819cea2SGordon Ross smbd_spool.o \ 42b819cea2SGordon Ross smbd_syslog.o \ 43b819cea2SGordon Ross smbd_vss.o 44b819cea2SGordon Ross 45b819cea2SGordon RossSRCS= $(OBJS:%.o=%.c) 46da6c28aaSamw 47da6c28aaSamwinclude ../../Makefile.cmd 48*6f1fa39eSGordon Rossinclude ../../Makefile.ctf 49da6c28aaSamw 50da6c28aaSamwMANIFEST= server.xml 51eb1a3463STruong NguyenSVCMETHOD= svc-smbd 529fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United StatesLOGDLL= eventlog.dll 53da6c28aaSamw 54da6c28aaSamwROOTMANIFESTDIR = $(ROOTSVCSMB) 559fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United StatesROOTVARSMBDLLDIR = $(ROOTVARSMB)/cvol/windows/system32 569fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United StatesROOTVARSMBDLL= $(LOGDLL:%=$(ROOTVARSMBDLLDIR)/%) 57da6c28aaSamw 589fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States$(ROOTMANIFEST):= FILEMODE = 0444 59eb1a3463STruong Nguyen$(ROOTSVCMETHOD):= FILEMODE = 0555 609fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States$(ROOTVARSMBDLL):= FILEMODE = 0755 61eb1a3463STruong Nguyen 62b819cea2SGordon RossLINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2 6312b65585SGordon RossLINTFLAGS += -xerroff=E_NAME_USED_NOT_DEF2 64b819cea2SGordon Ross 65b819cea2SGordon RossCFLAGS += $(CCVERBOSE) 66c7e79765SAlexander PyhalovCPPFLAGS += -D_IPP_PRIVATE_STRUCTURES 67b819cea2SGordon RossCPPFLAGS += -D_REENTRANT 68b819cea2SGordon RossCPPFLAGS += -Dsyslog=smb_syslog 69b819cea2SGordon Ross$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 70b819cea2SGordon Ross 7112b65585SGordon Ross# Should not have to do this, but the Kerberos includes are a mess. 7212b65585SGordon RossCPPFLAGS += -I $(ROOT)/usr/include/kerberosv5 7312b65585SGordon Ross 74e48c84d7SJohn Levon# needs work 75e48c84d7SJohn LevonSMOFF += all_func_returns,deref_check 76e48c84d7SJohn Levon 77bd0ce624SYuri PankovCSTD = $(CSTD_GNU99) 78b819cea2SGordon RossC99LMODE = -Xc99=%all 79da6c28aaSamw 8067e3a03eSrieLDFLAGS += -R/usr/lib/smbsrv 8112b65585SGordon RossLDLIBS += -L$(ROOT)/usr/lib/smbsrv 8212b65585SGordon Ross# prefer to keep libs ordered by dependence 8312b65585SGordon RossLDLIBS += -lmlsvc -lmlrpc -lsmbns -lsmb -lsmbfs -lgss 8412b65585SGordon RossLDLIBS += -lzfs -lbsm -lscf -lcmdutils -lsocket -lnsl -lumem 8512b65585SGordon Ross$(PROG) := LDLIBS += -lkrb5 86da6c28aaSamw 8786d7016bSGordon Ross$(ENABLE_SMB_PRINTING) CPPFLAGS += -DHAVE_CUPS 8886d7016bSGordon Ross 89da6c28aaSamwROOTSMBDDIR = $(ROOTLIB)/smbsrv 90da6c28aaSamwROOTSMBDFILE = $(PROG:%=$(ROOTSMBDDIR)/%) 91da6c28aaSamw 92da6c28aaSamwFILEMODE = 0444 93da6c28aaSamw$(ROOTSMBDFILE):= FILEMODE = 0555 94da6c28aaSamw 95da6c28aaSamw$(ROOTSMBDDIR)/%: % 96da6c28aaSamw $(INS.file) 97da6c28aaSamw 989fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States$(ROOTVARSMBDLLDIR)/%: % 999fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States $(INS.file) 1009fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States 101da6c28aaSamwall: $(PROG) 102da6c28aaSamw 103da6c28aaSamwclean: 104da6c28aaSamw $(RM) $(OBJS) 105da6c28aaSamw 106da6c28aaSamwlint: lint_SRCS 107da6c28aaSamw 108da6c28aaSamw$(PROG): $(OBJS) 109da6c28aaSamw $(LINK.c) -o $@ $(OBJS) $(LDLIBS) 110da6c28aaSamw $(POST_PROCESS) 111da6c28aaSamw 112da6c28aaSamwcheck: $(CHKMANIFEST) 113da6c28aaSamw 114da6c28aaSamw_msg: 115da6c28aaSamw 116da6c28aaSamwinclude ../../Makefile.targ 117da6c28aaSamw 118da6c28aaSamwinstall: all .WAIT $(ROOTETCDEFAULTFILES) $(ROOTMANIFEST) \ 1199fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States $(ROOTSMBDFILE) ${ROOTSVCMETHOD} $(ROOTVARSMBDLL) 120b3700b07SGordon Ross 121b3700b07SGordon Ross.KEEP_STATE: 122