xref: /illumos-gate/usr/src/cmd/cmd-inet/sbin/dhcpagent/Makefile (revision 30165b7f6753bc3d48c52319bed7ec7b3ea36b3c)
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 2007 Sun Microsystems, Inc.  All rights reserved.
23# Use is subject to license terms.
24# Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
25# Copyright (c) 2018, Joyent, Inc.
26#
27
28PROG    = dhcpagent
29ROOTFS_PROG = $(PROG)
30DEFAULTFILES = dhcpagent.dfl
31
32OBJS =	adopt.o agent.o async.o bound.o class_id.o defaults.o inform.o \
33	init_reboot.o interface.o ipc_action.o packet.o release.o renew.o \
34	request.o script_handler.o select.o states.o util.o
35
36include ../../../Makefile.cmd
37
38SRCS    = $(OBJS:%.o=%.c)
39POFILES = $(OBJS:%.o=%.po)
40XGETFLAGS += -a -x dhcpagent.xcl
41
42CERRWARN += -_gcc=-Wno-switch
43CERRWARN += -_gcc=-Wno-parentheses
44
45# not linted
46SMATCH=off
47
48#
49# to compile a debug version, do a `make COPTFLAG="-g -XO0"'
50#
51
52CPPFLAGS  += -D_XOPEN_SOURCE=500 -D__EXTENSIONS__
53LDLIBS    += -lxnet -lnvpair -ldhcpagent -ldhcputil -linetutil -ldevinfo \
54	-ldlpi -lresolv -lsocket -lipadm
55
56# Disable warnings that affect all XPG applications.
57LINTFLAGS += -erroff=E_INCONS_ARG_DECL2 -erroff=E_INCONS_VAL_TYPE_DECL2
58
59.KEEP_STATE:
60
61all:		$(ROOTFS_PROG)
62
63install:	all $(ROOTSBINPROG) $(ROOTETCDEFAULTFILES)
64
65$(PROG):	$(OBJS)
66		$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
67		$(POST_PROCESS)
68
69$(POFILE):	$(POFILES)
70		$(RM) $@; $(CAT) $(POFILES) > $@; $(RM) $(POFILES)
71
72clean:
73		$(RM) $(OBJS)
74
75lint:		lint_SRCS
76
77include ../../../Makefile.targ
78