12654012fSReza Sabdar# 28c4f9701SJanice Chang# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. 32654012fSReza Sabdar# 42654012fSReza Sabdar 52654012fSReza Sabdar# 62654012fSReza Sabdar# BSD 3 Clause License 72654012fSReza Sabdar# 82654012fSReza Sabdar# Copyright (c) 2007, The Storage Networking Industry Association. 92654012fSReza Sabdar# 102654012fSReza Sabdar# Redistribution and use in source and binary forms, with or without 112654012fSReza Sabdar# modification, are permitted provided that the following conditions 122654012fSReza Sabdar# are met: 132654012fSReza Sabdar# - Redistributions of source code must retain the above copyright 142654012fSReza Sabdar# notice, this list of conditions and the following disclaimer. 152654012fSReza Sabdar# 162654012fSReza Sabdar# - Redistributions in binary form must reproduce the above copyright 172654012fSReza Sabdar# notice, this list of conditions and the following disclaimer in 182654012fSReza Sabdar# the documentation and/or other materials provided with the 192654012fSReza Sabdar# distribution. 202654012fSReza Sabdar# 212654012fSReza Sabdar# - Neither the name of The Storage Networking Industry Association (SNIA) 222654012fSReza Sabdar# nor the names of its contributors may be used to endorse or promote 232654012fSReza Sabdar# products derived from this software without specific prior written 242654012fSReza Sabdar# permission. 252654012fSReza Sabdar# 262654012fSReza Sabdar# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 272654012fSReza Sabdar# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 282654012fSReza Sabdar# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 292654012fSReza Sabdar# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 302654012fSReza Sabdar# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 312654012fSReza Sabdar# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 322654012fSReza Sabdar# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 332654012fSReza Sabdar# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 342654012fSReza Sabdar# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 352654012fSReza Sabdar# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 362654012fSReza Sabdar# POSSIBILITY OF SUCH DAMAGE. 372654012fSReza Sabdar# 382654012fSReza SabdarPROG = ndmpd 392654012fSReza Sabdar 402654012fSReza Sabdarinclude $(SRC)/cmd/Makefile.cmd 412654012fSReza Sabdar 422654012fSReza SabdarNDMP_DIR = ndmp 432654012fSReza SabdarTLM_DIR = tlm 442654012fSReza Sabdar 452654012fSReza Sabdarinclude $(NDMP_DIR)/Makefile.rpcgen 462654012fSReza Sabdar 472654012fSReza SabdarCFLAGS += $(CCVERBOSE) 482654012fSReza Sabdar 492654012fSReza SabdarCPPFLAGS += $(LFLAGS64) 502654012fSReza Sabdar 512654012fSReza SabdarCPPFLAGS += -D_FILE_OFFSET_BITS=64 -DDEBUG 522654012fSReza SabdarCPPFLAGS += -I. -Iinclude 532654012fSReza Sabdar 542654012fSReza SabdarC99MODE = $(C99_ENABLE) 552654012fSReza Sabdar 562654012fSReza Sabdar# lint does not like unused _umem_*_init 572654012fSReza SabdarLINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2 582654012fSReza Sabdar 592654012fSReza Sabdar# function argument declared inconsistently 602654012fSReza SabdarLINTFLAGS += -xerroff=E_INCONS_ARG_DECL2 612654012fSReza Sabdar# value type used inconsistently 622654012fSReza SabdarLINTFLAGS += -xerroff=E_INCONS_VAL_TYPE_USED2 632654012fSReza Sabdar# value type declared inconsistently 642654012fSReza SabdarLINTFLAGS += -xerroff=E_INCONS_VAL_TYPE_DECL2 652654012fSReza Sabdar# argument used inconsistently 662654012fSReza SabdarLINTFLAGS += -xerroff=E_INCONS_ARG_USED2 672654012fSReza Sabdar 68*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-variable 69*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-switch 70*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-uninitialized 71*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-address 72*7014882cSRichard Lowe 73588541fbSReza SabdarLDLIBS += -lsocket -lnsl -lzfs -lsec -lndmp -lmd5 -lnvpair -lumem -lbsm -lgen -lcmdutils -linetutil 742654012fSReza Sabdar 752654012fSReza SabdarOBJS= \ 762654012fSReza Sabdar $(NDMP_DIR)/ndmp_xdr.o \ 772654012fSReza Sabdar $(NDMP_OBJ:%.o=$(NDMP_DIR)/%.o) $(TLM_OBJ:%.o=$(TLM_DIR)/%.o) 782654012fSReza Sabdar 792654012fSReza SabdarNDMP_OBJ = \ 802654012fSReza Sabdar ndmpd_callbacks.o \ 812654012fSReza Sabdar ndmpd_chkpnt.o \ 822654012fSReza Sabdar ndmpd_comm.o \ 832654012fSReza Sabdar ndmpd_config.o \ 842654012fSReza Sabdar ndmpd_connect.o \ 852654012fSReza Sabdar ndmpd_data.o \ 862654012fSReza Sabdar ndmpd_door.o \ 872654012fSReza Sabdar ndmpd_dtime.o \ 882654012fSReza Sabdar ndmpd_fhistory.o \ 892654012fSReza Sabdar ndmpd_handler.o \ 902654012fSReza Sabdar ndmpd_log.o \ 912654012fSReza Sabdar ndmpd_main.o \ 922654012fSReza Sabdar ndmpd_mark.o \ 932654012fSReza Sabdar ndmpd_mover.o \ 948c4f9701SJanice Chang ndmpd_prop.o \ 952654012fSReza Sabdar ndmpd_scsi.o \ 962654012fSReza Sabdar ndmpd_tape.o \ 972654012fSReza Sabdar ndmpd_tar.o \ 982654012fSReza Sabdar ndmpd_tar3.o \ 998c4f9701SJanice Chang ndmpd_util.o \ 1008c4f9701SJanice Chang ndmpd_zfs.o 1012654012fSReza Sabdar 1022654012fSReza SabdarTLM_OBJ = \ 1032654012fSReza Sabdar tlm_backup_reader.o \ 1042654012fSReza Sabdar tlm_bitmap.o \ 1052654012fSReza Sabdar tlm_buffers.o \ 1062654012fSReza Sabdar tlm_info.o \ 1072654012fSReza Sabdar tlm_init.o \ 1082654012fSReza Sabdar tlm_lib.o \ 1092654012fSReza Sabdar tlm_restore_writer.o \ 1102654012fSReza Sabdar tlm_traverse.o \ 1112654012fSReza Sabdar tlm_util.o \ 1122654012fSReza Sabdar tlm_hardlink.o 1132654012fSReza Sabdar 1142654012fSReza SabdarSRCS= $(NDMP_OBJ:%.o=$(NDMP_DIR)/%.c) $(TLM_OBJ:%.o=$(TLM_DIR)/%.c) 1152654012fSReza Sabdar 1162654012fSReza SabdarSVCMETHOD = svc-ndmp 1172654012fSReza Sabdar$(ROOTSVCMETHOD) := FILEMODE = 0555 1182654012fSReza Sabdar 1192654012fSReza SabdarMANIFEST = ndmp.xml 1202654012fSReza SabdarROOTMANIFESTDIR= $(ROOTSVCSYSTEM) 1212654012fSReza Sabdar$(ROOTMANIFEST) := FILEMODE = 444 1222654012fSReza Sabdar 1232654012fSReza SabdarROOTNDMPDDIR= $(ROOTLIB)/ndmp 1242654012fSReza SabdarROOTNDMPDFILE = $(PROG:%=$(ROOTNDMPDDIR)/%) 1252654012fSReza Sabdar 1262654012fSReza SabdarFILEMODE = 0444 1272654012fSReza Sabdar$(ROOTNDMPDFILE):= FILEMODE = 0555 1282654012fSReza Sabdar 1292654012fSReza Sabdar$(ROOTNDMPDDIR): 1302654012fSReza Sabdar $(INS.dir) 1312654012fSReza Sabdar 1322654012fSReza Sabdar$(ROOTNDMPDDIR)/%: % 1332654012fSReza Sabdar $(INS.file) 1342654012fSReza Sabdar 1352654012fSReza Sabdar.KEEP_STATE: 1362654012fSReza Sabdar 1372654012fSReza Sabdarall: $(PROG) 1382654012fSReza Sabdar 1392654012fSReza Sabdarinstall: all $(ROOTNDMPDDIR) $(ROOTNDMPDFILE) $(ROOTSVCMETHOD) $(ROOTMANIFEST) 1402654012fSReza Sabdar 1413afe87ebSRoger A. Faulknercheck: $(CHKMANIFEST) 1423afe87ebSRoger A. Faulkner 1432654012fSReza Sabdarclobber: 1442654012fSReza Sabdar 1452654012fSReza Sabdar$(PROG) : $(OBJS) 1462654012fSReza Sabdar $(LINK.c) -o $@ $(OBJS) $(LDLIBS) 1472654012fSReza Sabdar $(POST_PROCESS) 1482654012fSReza Sabdar 1492654012fSReza Sabdar$(NDMP_DIR)/%.o : $(NDMP_DIR)/%.c 1502654012fSReza Sabdar $(COMPILE.c) -o $@ $< 1512654012fSReza Sabdar 1522654012fSReza Sabdar$(TLM_DIR)/%.o : $(TLM_DIR)/%.c 1532654012fSReza Sabdar $(COMPILE.c) -o $@ $< 1542654012fSReza Sabdar 1552654012fSReza Sabdarlint: lint_SRCS 1562654012fSReza Sabdar 1572654012fSReza Sabdarclean: rpcclean 1582654012fSReza Sabdar rm -f $(NDMP_DIR)/*.o $(TLM_DIR)/*.o 1592654012fSReza Sabdar 1602654012fSReza Sabdarinclude $(SRC)/cmd/Makefile.targ 161