6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# CDDL HEADER START
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# The contents of this file are subject to the terms of the
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# Common Development and Distribution License (the "License").
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# You may not use this file except in compliance with the License.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# or http://www.opensolaris.org/os/licensing.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# See the License for the specific language governing permissions
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# and limitations under the License.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# When distributing Covered Code, include this CDDL HEADER in each
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# If applicable, add the following below this CDDL HEADER, with the
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# fields enclosed by brackets "[]" replaced with your own identifying
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# information: Portions Copyright [yyyy] [name of copyright owner]
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# CDDL HEADER END
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# Copyright 2010 Sun Microsystems, Inc. All rights reserved.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# Use is subject to license terms.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailPROG = ipadm
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailROOTFS_PROG = $(PROG)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailLOCALOBJS= ipadm.o
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailCOMMONOBJS=
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailOBJS= $(LOCALOBJS) $(COMMONOBJS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbailinclude ../../../Makefile.cmd
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbailinclude ../../Makefile.cmd-inet
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailXGETFLAGS += -a -x $(PROG).xcl
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailLOCALSRCS= $(LOCALOBJS:%.o=%.c)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailCOMMONSRCS= $(CMDINETCOMMONDIR)/$(COMMONOBJS:%.o=%.c)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailSRCS= $(LOCALSRCS) $(COMMONSRCS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailCPPFLAGS += -I$(CMDINETCOMMONDIR)
7014882c6a3672fd0e5d60200af8643ae53c5928Richard LoweCERRWARN += -_gcc=-Wno-unused-label
7014882c6a3672fd0e5d60200af8643ae53c5928Richard LoweCERRWARN += -_gcc=-Wno-uninitialized
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailLDLIBS += -linetutil -lipadm -lnvpair
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailLINTFLAGS += -m
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailROOTUSRSBINLINKS = $(PROG:%=$(ROOTUSRSBIN)/%)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# ipadm uses the ancillary data feature which is available only through
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# UNIX 98 standards version of Socket interface. This interface is supposed to
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# be accessed by -lxnet. In addition -lsocket is used to capture new
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# not-yet-standard interfaces. Someday -lxnet alone should be enough when IPv6
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# inspired new interfaces are part of standards.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailLDLIBS += -lxnet -lsocket
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# these #defines are required to use UNIX 98 interfaces
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail_D_UNIX98_EXTN= -D_XOPEN_SOURCE=500 -D__EXTENSIONS__
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail$(OBJS) := CPPFLAGS += $(_D_UNIX98_EXTN)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailLINTFLAGS += $(_D_UNIX98_EXTN)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail$(ROOTCFGDIR)/ipadm.conf := FILEMODE= 644
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail# Instrument ipadm with CTF data to ease debugging.
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail#
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailCTFCONVERT_HOOK = && $(CTFCONVERT_O)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish MoodalbailCTFMERGE_HOOK = && $(CTFMERGE) -L VERSION -o $@ $(OBJS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail$(OBJS) := CFLAGS += $(CTF_FLAGS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail.KEEP_STATE:
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbailall: $(ROOTFS_PROG)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail$(PROG): $(OBJS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail $(LINK.c) $(OBJS) -o $@ $(LDLIBS) $(CTFMERGE_HOOK)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail $(POST_PROCESS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbailinstall: all $(ROOTSBINPROG) $(ROOTCFGDIR) $(ROOTCFGFILES) $(ROOTUSRSBINLINKS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail$(ROOTUSRSBINLINKS):
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail -$(RM) $@; $(SYMLINK) ../../sbin/$(@F) $@
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbailclean:
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail $(RM) $(OBJS)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbaillint: lint_SRCS
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail$(ROOTCFGDIR):
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail $(INS.dir)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail$(ROOTCFGDIR)/%: $(ROOTCFGDIR) %
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail $(INS.file)
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbail
6e91bba0d6c6bdabbba62cefae583715a4a58e2aGirish Moodalbailinclude ../../../Makefile.targ