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 (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
23#
24
25PROG=		vrrpd
26OBJS=		vrrpd.o
27SRCS=		$(OBJS:.o=.c)
28SVCMETHOD=	svc-vrrp
29MANIFEST=	vrrp.xml
30CFGFILES=	vrrp.conf
31
32include ../../../Makefile.cmd
33
34ROOTMANIFESTDIR=	$(ROOTSVCNETWORK)
35
36$(ROOTETC)/inet/$(CFGFILES):= FILEMODE= 644
37$(ROOTETC)/inet/$(CFGFILES):= OWNER= root
38$(ROOTETC)/inet/$(CFGFILES):= GROUP= sys
39
40CSTD=		$(CSTD_GNU99)
41
42#
43# We need access to the ancillary data features which are only available
44# via the SUS standards.  Further, C99 support requires SUSv3 or higher.
45#
46CPPFLAGS += -D_XOPEN_SOURCE=600 -D__EXTENSIONS__
47LDLIBS += -lvrrpadm -lsocket -lnsl -ldladm -linetutil -lipadm -lsysevent -lnvpair -lsecdb
48LINTFLAGS += -erroff=E_INCONS_ARG_DECL2  -erroff=E_INCONS_ARG_USED2
49
50CERRWARN += -_gcc=-Wno-uninitialized
51
52#
53# Instrument vrrpd with CTF data to ease debugging.
54#
55CTFCONVERT_HOOK = && $(CTFCONVERT_O)
56CTFMERGE_HOOK = && $(CTFMERGE) -L VERSION -o $@ $(OBJS)
57$(OBJS) := CFLAGS += $(CTF_FLAGS)
58
59# for messaging catalog. No messages are present in CMN_DIR sources.
60POFILES = $(LOCAL_OBJS:%.o=%.po)
61XGETFLAGS += -a -x vrrpd.xcl
62
63.KEEP_STATE:
64
65all: $(PROG)
66
67$(PROG): $(OBJS)
68	$(LINK.c) -o $@ $(OBJS) $(LDLIBS) $(CTFMERGE_HOOK)
69	$(POST_PROCESS)
70
71include ../Makefile.lib
72
73install: all $(ROOTLIBINETPROG) $(ROOTMANIFEST) $(ROOTSVCMETHOD) \
74	$(ROOTETC)/inet/$(CFGFILES)
75
76check:	$(CHKMANIFEST)
77
78clean:
79	$(RM) $(OBJS)
80
81lint:	lint_SRCS
82
83include ../../../Makefile.targ
84