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