xref: /illumos-gate/usr/src/cmd/cmd-inet/usr.lib/in.mpathd/Makefile (revision 2c65701281156d8db8fa6f6f9c5faa6ca021c621)
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