xref: /titanic_50/usr/src/cmd/zonecfg/Makefile (revision b6805bf78d2bbbeeaea8909a05623587b42d58b3)
17c478bd9Sstevel@tonic-gate#
27c478bd9Sstevel@tonic-gate# CDDL HEADER START
37c478bd9Sstevel@tonic-gate#
47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
59acbbeafSnn35248# Common Development and Distribution License (the "License").
69acbbeafSnn35248# You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate#
87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate# and limitations under the License.
127c478bd9Sstevel@tonic-gate#
137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate#
197c478bd9Sstevel@tonic-gate# CDDL HEADER END
207c478bd9Sstevel@tonic-gate#
217c478bd9Sstevel@tonic-gate#
22c9f134eaSjv227347# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
237c478bd9Sstevel@tonic-gate# Use is subject to license terms.
247c478bd9Sstevel@tonic-gate#
257c478bd9Sstevel@tonic-gate
267c478bd9Sstevel@tonic-gatePROG=	zonecfg
277c478bd9Sstevel@tonic-gateOBJS=	zonecfg.o zonecfg_lex.o zonecfg_grammar.tab.o
287c478bd9Sstevel@tonic-gate
297c478bd9Sstevel@tonic-gateinclude ../Makefile.cmd
307c478bd9Sstevel@tonic-gate
31df4628cbSrie# zonecfg has a name clash with main() and libl.so.1.  However, zonecfg must
32df4628cbSrie# still export a number of "yy*" (libl) interfaces.  Reduce all other symbols
33df4628cbSrie# to local scope.
34df4628cbSrieMAPFILES +=	$(MAPFILE.LEX) $(MAPFILE.NGB)
35df4628cbSrieMAPOPTS =	$(MAPFILES:%=-M%)
36df4628cbSrie
377c478bd9Sstevel@tonic-gateLFLAGS =	-t
387c478bd9Sstevel@tonic-gateYFLAGS =	-d -b zonecfg_grammar
39c9f134eaSjv227347LDLIBS +=	-lzonecfg -ll -lnsl -ltecla -lzfs -lbrand -ldladm -linetutil
407c478bd9Sstevel@tonic-gateCPPFLAGS +=	-I.
41df4628cbSrieLDFLAGS +=	$(MAPOPTS)
427c478bd9Sstevel@tonic-gateCLEANFILES +=	zonecfg_lex.c zonecfg_grammar.tab.c zonecfg_grammar.tab.h
437c478bd9Sstevel@tonic-gate
447014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-uninitialized
457014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-unused-label
467014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-unused-variable
477014882cSRichard LoweCERRWARN +=	-_gcc=-Wno-implicit-function-declaration
487014882cSRichard Lowe
49*b6805bf7SGordon RossCLOBBERFILES += $(PROG).ln
50*b6805bf7SGordon Ross
517c478bd9Sstevel@tonic-gate.KEEP_STATE:
527c478bd9Sstevel@tonic-gate
537c478bd9Sstevel@tonic-gateall: $(PROG)
547c478bd9Sstevel@tonic-gate
55df4628cbSrie$(PROG): $(OBJS) $(MAPFILES)
567c478bd9Sstevel@tonic-gate	$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
577c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
587c478bd9Sstevel@tonic-gate
597c478bd9Sstevel@tonic-gateinstall: all $(ROOTUSRSBINPROG)
607c478bd9Sstevel@tonic-gate
617c478bd9Sstevel@tonic-gatezonecfg_lex.c:	zonecfg_lex.l zonecfg_grammar.tab.h zonecfg.h
627c478bd9Sstevel@tonic-gate	$(LEX) $(LFLAGS) zonecfg_lex.l > $@
637c478bd9Sstevel@tonic-gate
647c478bd9Sstevel@tonic-gatezonecfg_grammar.tab.h zonecfg_grammar.tab.c:	zonecfg_grammar.y zonecfg.h
657c478bd9Sstevel@tonic-gate	$(YACC) $(YFLAGS) zonecfg_grammar.y
667c478bd9Sstevel@tonic-gate
677c478bd9Sstevel@tonic-gatezonecfg_lex.o zonecfg_grammar.tab.o := CCVERBOSE =
687c478bd9Sstevel@tonic-gate
697c478bd9Sstevel@tonic-gatecheck:	$(PROG).c $(PROG).h
707c478bd9Sstevel@tonic-gate	$(CSTYLE) -pP $(PROG).c $(PROG).h
717c478bd9Sstevel@tonic-gate	$(HDRCHK) $(PROG).h
727c478bd9Sstevel@tonic-gate
737c478bd9Sstevel@tonic-gateclean:
747c478bd9Sstevel@tonic-gate	$(RM) $(OBJS) $(CLEANFILES)
757c478bd9Sstevel@tonic-gate
767c478bd9Sstevel@tonic-gate#
777c478bd9Sstevel@tonic-gate# We don't do lint of lex- and yacc- generated source files
787c478bd9Sstevel@tonic-gate#
797c478bd9Sstevel@tonic-gatelint:
807c478bd9Sstevel@tonic-gate	$(LINT.c) -c $(PROG).c $(LDLIBS)
817c478bd9Sstevel@tonic-gate
827c478bd9Sstevel@tonic-gateinclude ../Makefile.targ
83