1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# 22# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# Copyright 2021 Tintri by DDN, Inc. All rights reserved. 26# 27 28PROG = in.mpathd 29ROOTFS_PROG = $(PROG) 30OBJS = mpd_tables.o mpd_main.o mpd_probe.o 31SRCS = $(OBJS:%.o=%.c) 32DEFAULTFILES = mpathd.dfl 33SVCMETHOD = net-ipmp 34MANIFEST = network-ipmp.xml 35 36include ../../../Makefile.cmd 37 38ROOTCMDDIR = $(ROOT)/lib/inet 39ROOTMANIFESTDIR = $(ROOTSVCNETWORK) 40 41POFILE = $(PROG).po 42POFILES = $(SRCS:%.c=%.po) 43 44CSTD = $(CSTD_GNU99) 45 46# 47# We need access to the ancillary data features which are only available 48# via the SUS standards. Further, C99 support requires SUSv3 or higher. 49# 50CPPFLAGS += -D_XOPEN_SOURCE=600 -D__EXTENSIONS__ 51LDLIBS += -lsocket -lnsl -lsysevent -lnvpair -lipmp -linetutil -ldlpi 52LINTFLAGS += -erroff=E_INCONS_ARG_DECL2 -erroff=E_INCONS_ARG_USED2 53 54CERRWARN += $(CNOWARN_UNINIT) 55 56# 57# Instrument in.mpathd with CTF data to ease debugging. 58# 59CTFCONVERT_HOOK = && $(CTFCONVERT_O) 60CTFMERGE_HOOK = && $(CTFMERGE) -L VERSION -o $@ $(OBJS) 61$(OBJS) := CFLAGS += $(CTF_FLAGS) 62 63.KEEP_STATE: 64 65all: $(PROG) 66 67$(PROG): $(OBJS) 68 $(LINK.c) -o $@ $(OBJS) $(LDLIBS) $(CTFMERGE_HOOK) 69 $(POST_PROCESS) 70 71check: $(CHKMANIFEST) 72 73install: all $(ROOTCMD) $(ROOTMANIFEST) $(ROOTSVCMETHOD) \ 74 $(ROOTETCDEFAULTFILES) 75 76clean: 77 $(RM) $(OBJS) 78 79lint: lint_SRCS 80 81$(POFILE): $(POFILES) 82 $(RM) $@ 83 $(CAT) $(POFILES) > $@ 84 85include ../../../Makefile.targ 86