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
26PROG		= in.mpathd
27ROOTFS_PROG	= $(PROG)
28OBJS		= mpd_tables.o mpd_main.o mpd_probe.o
29SRCS		= $(OBJS:%.o=%.c)
30DEFAULTFILES	= mpathd.dfl
31
32include ../../../Makefile.cmd
33
34ROOTCMDDIR	= $(ROOT)/lib/inet
35
36POFILE		= $(PROG).po
37POFILES		= $(SRCS:%.c=%.po)
38
39C99MODE		= $(C99_ENABLE)
40
41#
42# We need access to the ancillary data features which are only available
43# via the SUS standards.  Further, C99 support requires SUSv3 or higher.
44#
45CPPFLAGS += -D_XOPEN_SOURCE=600 -D__EXTENSIONS__
46LDLIBS	+= -lsocket -lnsl -lsysevent -lnvpair -lipmp -linetutil -ldlpi
47LINTFLAGS += -erroff=E_INCONS_ARG_DECL2 -erroff=E_INCONS_ARG_USED2
48
49CERRWARN += -_gcc=-Wno-uninitialized
50
51#
52# Instrument in.mpathd with CTF data to ease debugging.
53#
54CTFCONVERT_HOOK = && $(CTFCONVERT_O)
55CTFMERGE_HOOK = && $(CTFMERGE) -L VERSION -o $@ $(OBJS)
56$(OBJS) := CFLAGS += $(CTF_FLAGS)
57
58.KEEP_STATE:
59
60all:		$(PROG)
61
62$(PROG):	$(OBJS)
63		$(LINK.c) -o $@ $(OBJS) $(LDLIBS) $(CTFMERGE_HOOK)
64		$(POST_PROCESS)
65
66include ../Makefile.lib
67
68$(ROOTLIBINETPROG):
69		$(RM) $@; $(SYMLINK) ../../../lib/inet/$(PROG) $@
70
71$(ROOTSBINPROG):
72		$(RM) $@; $(SYMLINK) ../lib/inet/$(PROG) $@
73
74install:	all $(ROOTLIBINETPROG) $(ROOTSBINPROG) $(ROOTCMD) \
75		$(ROOTETCDEFAULTFILES)
76
77clean:
78		$(RM) $(OBJS)
79
80lint:		lint_SRCS
81
82$(POFILE): 	$(POFILES)
83		$(RM) $@
84		$(CAT) $(POFILES) > $@
85
86include ../../../Makefile.targ
87