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
5753d2d2eSraf# Common Development and Distribution License (the "License").
6753d2d2eSraf# 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#
22753d2d2eSraf# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
237c478bd9Sstevel@tonic-gate# Use is subject to license terms.
247c478bd9Sstevel@tonic-gate#
25*5661bb76SJohn Levon# Copyright (c) 2018, Joyent, Inc.
267c478bd9Sstevel@tonic-gate
277c478bd9Sstevel@tonic-gateinclude $(SRC)/cmd/Makefile.cmd
287c478bd9Sstevel@tonic-gate
297c478bd9Sstevel@tonic-gatePROG_BIN =	$(ROOTLIB)/abi/$(PROG)
307c478bd9Sstevel@tonic-gate.PRECIOUS:	$(PROG)
317c478bd9Sstevel@tonic-gate
327c478bd9Sstevel@tonic-gateU_LIB	=	parse
337c478bd9Sstevel@tonic-gateU_BASE	=	../../parser
347c478bd9Sstevel@tonic-gateU_DIR	= 	$(U_BASE)/$(MACH)
357c478bd9Sstevel@tonic-gateU_LIB_A	=	$(U_DIR)/lib$(U_LIB).a
367c478bd9Sstevel@tonic-gate
377c478bd9Sstevel@tonic-gateCFLAGS +=	$(CCVERBOSE)
387c478bd9Sstevel@tonic-gateCPPFLAGS +=	-I$(U_BASE) -I..
397c478bd9Sstevel@tonic-gateLDFLAGS	+=	-L$(U_DIR)
407c478bd9Sstevel@tonic-gateLINTFLAGS +=	-xsuF -errtags=yes
417c478bd9Sstevel@tonic-gate
42*5661bb76SJohn Levon# not linted
43*5661bb76SJohn LevonSMATCH=off
44*5661bb76SJohn Levon
457c478bd9Sstevel@tonic-gateLDLIBS	+=	-l$(U_LIB) -lgen
467c478bd9Sstevel@tonic-gateLINTLIBS =	-L$(U_DIR) -l$(U_LIB)
477c478bd9Sstevel@tonic-gate
487c478bd9Sstevel@tonic-gateSRCS	=	$(OBJECTS:%.o=../%.c)
497c478bd9Sstevel@tonic-gate
507c478bd9Sstevel@tonic-gate.KEEP_STATE:
517c478bd9Sstevel@tonic-gate
527c478bd9Sstevel@tonic-gateall:	$(PROG)
537c478bd9Sstevel@tonic-gate
547c478bd9Sstevel@tonic-gate%.o:	../%.y
557c478bd9Sstevel@tonic-gate	$(YACC.y) $<
567c478bd9Sstevel@tonic-gate	$(COMPILE.c) -o $@ y.tab.c
577c478bd9Sstevel@tonic-gate	$(RM) y.tab.c
587c478bd9Sstevel@tonic-gate
597c478bd9Sstevel@tonic-gate%.o:	../%.c
607c478bd9Sstevel@tonic-gate	$(COMPILE.c) -o $@ $<
617c478bd9Sstevel@tonic-gate	$(POST_PROCESS_O)
627c478bd9Sstevel@tonic-gate
637c478bd9Sstevel@tonic-gate$(PROG): $(U_LIB_A) $(OBJECTS) $(YACC_OBJS)
647c478bd9Sstevel@tonic-gate	$(LINK.c) -o $@ $(OBJECTS) $(YACC_OBJS) $(LDLIBS)
657c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
667c478bd9Sstevel@tonic-gate
677c478bd9Sstevel@tonic-gate$(U_LIB_A):
687c478bd9Sstevel@tonic-gate	@cd $(U_DIR); pwd; $(MAKE) all
697c478bd9Sstevel@tonic-gate
707c478bd9Sstevel@tonic-gateinstall: $(PROG_BIN)
717c478bd9Sstevel@tonic-gate
727c478bd9Sstevel@tonic-gate$(PROG_BIN) :=	FILEMODE = 755
737c478bd9Sstevel@tonic-gate$(PROG_BIN): $(PROG)
747c478bd9Sstevel@tonic-gate	$(INS.file) $(PROG)
757c478bd9Sstevel@tonic-gate
767c478bd9Sstevel@tonic-gateclean:
777c478bd9Sstevel@tonic-gate	-$(RM) $(OBJECTS) $(YACC_OBJS)
787c478bd9Sstevel@tonic-gate
797c478bd9Sstevel@tonic-gateclobber: clean
807c478bd9Sstevel@tonic-gate	-$(RM) $(PROG) $(CLOBBERFILES)
817c478bd9Sstevel@tonic-gate
827c478bd9Sstevel@tonic-gatelint:
837c478bd9Sstevel@tonic-gate	$(LINT.c) $(SRCS) $(LINTLIBS)
84