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 50eb1a3463STruong NguyenMANIFEST= 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 RossCFLAGS += $(CCVERBOSE) 63c7e79765SAlexander PyhalovCPPFLAGS += -D_IPP_PRIVATE_STRUCTURES 64b819cea2SGordon RossCPPFLAGS += -D_REENTRANT 65b819cea2SGordon RossCPPFLAGS += -Dsyslog=smb_syslog 66b819cea2SGordon Ross$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG 67b819cea2SGordon Ross 6812b65585SGordon Ross# Should not have to do this, but the Kerberos includes are a mess. 6912b65585SGordon RossCPPFLAGS += -I $(ROOT)/usr/include/kerberosv5 7012b65585SGordon Ross 71e48c84d7SJohn Levon# needs work 72e48c84d7SJohn LevonSMOFF += all_func_returns,deref_check 73e48c84d7SJohn Levon 74bd0ce624SYuri PankovCSTD = $(CSTD_GNU99) 75da6c28aaSamw 7667e3a03eSrieLDFLAGS += -R/usr/lib/smbsrv 7712b65585SGordon RossLDLIBS += -L$(ROOT)/usr/lib/smbsrv 7812b65585SGordon Ross# prefer to keep libs ordered by dependence 7912b65585SGordon RossLDLIBS += -lmlsvc -lmlrpc -lsmbns -lsmb -lsmbfs -lgss 8012b65585SGordon RossLDLIBS += -lzfs -lbsm -lscf -lcmdutils -lsocket -lnsl -lumem 8112b65585SGordon Ross$(PROG) := LDLIBS += -lkrb5 82da6c28aaSamw 8386d7016bSGordon Ross$(ENABLE_SMB_PRINTING) CPPFLAGS += -DHAVE_CUPS 8486d7016bSGordon Ross 85da6c28aaSamwROOTSMBDDIR = $(ROOTLIB)/smbsrv 86da6c28aaSamwROOTSMBDFILE = $(PROG:%=$(ROOTSMBDDIR)/%) 87da6c28aaSamw 88da6c28aaSamwFILEMODE = 0444 89da6c28aaSamw$(ROOTSMBDFILE):= FILEMODE = 0555 90da6c28aaSamw 91da6c28aaSamw$(ROOTSMBDDIR)/%: % 92da6c28aaSamw $(INS.file) 93da6c28aaSamw 949fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States$(ROOTVARSMBDLLDIR)/%: % 959fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States $(INS.file) 969fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States 97da6c28aaSamwall: $(PROG) 98da6c28aaSamw 99da6c28aaSamwclean: 100da6c28aaSamw $(RM) $(OBJS) 101da6c28aaSamw 102da6c28aaSamw$(PROG): $(OBJS) 103da6c28aaSamw $(LINK.c) -o $@ $(OBJS) $(LDLIBS) 104da6c28aaSamw $(POST_PROCESS) 105da6c28aaSamw 106da6c28aaSamwcheck: $(CHKMANIFEST) 107da6c28aaSamw 108da6c28aaSamw_msg: 109da6c28aaSamw 110da6c28aaSamwinclude ../../Makefile.targ 111da6c28aaSamw 112da6c28aaSamwinstall: all .WAIT $(ROOTETCDEFAULTFILES) $(ROOTMANIFEST) \ 1139fb67ea3Safshin salek ardakani - Sun Microsystems - Irvine United States $(ROOTSMBDFILE) ${ROOTSVCMETHOD} $(ROOTVARSMBDLL) 114b3700b07SGordon Ross 115b3700b07SGordon Ross.KEEP_STATE: 116