1753d2d2eSraf# 2753d2d2eSraf# CDDL HEADER START 3753d2d2eSraf# 4753d2d2eSraf# 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. 7753d2d2eSraf# 8753d2d2eSraf# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9753d2d2eSraf# or http://www.opensolaris.org/os/licensing. 10753d2d2eSraf# See the License for the specific language governing permissions 11753d2d2eSraf# and limitations under the License. 12753d2d2eSraf# 13753d2d2eSraf# When distributing Covered Code, include this CDDL HEADER in each 14753d2d2eSraf# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15753d2d2eSraf# If applicable, add the following below this CDDL HEADER, with the 16753d2d2eSraf# fields enclosed by brackets "[]" replaced with your own identifying 17753d2d2eSraf# information: Portions Copyright [yyyy] [name of copyright owner] 18753d2d2eSraf# 19753d2d2eSraf# CDDL HEADER END 20753d2d2eSraf# 21753d2d2eSraf# 22753d2d2eSraf# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23753d2d2eSraf# Use is subject to license terms. 24753d2d2eSraf# 25*5661bb76SJohn Levon# Copyright (c) 2018, Joyent, Inc. 26753d2d2eSraf 27753d2d2eSrafinclude $(SRC)/cmd/Makefile.cmd 28753d2d2eSraf 29753d2d2eSrafPROG_BIN = $(ROOTLIB)/abi/$(PROG) 30753d2d2eSraf.PRECIOUS: $(PROG) 31753d2d2eSraf 32753d2d2eSrafU_LIB = parse 33753d2d2eSrafU_BASE = ../../parser 34753d2d2eSrafU_DIR = $(U_BASE)/$(MACH) 35753d2d2eSrafU_LIB_A = $(U_DIR)/lib$(U_LIB).a 36753d2d2eSraf 37753d2d2eSrafCFLAGS += $(CCVERBOSE) 38753d2d2eSrafCPPFLAGS += -I$(U_BASE) -I.. 39753d2d2eSrafLDFLAGS += -L$(U_DIR) 40753d2d2eSrafLINTFLAGS += -xsuF -errtags=yes 41753d2d2eSraf 42*5661bb76SJohn Levon# not linted 43*5661bb76SJohn LevonSMATCH=off 44*5661bb76SJohn Levon 45753d2d2eSrafLDLIBS += -l$(U_LIB) -lgen 46753d2d2eSrafLINTLIBS = -L$(U_DIR) -l$(U_LIB) 47753d2d2eSraf 48753d2d2eSrafSRCS = $(OBJECTS:%.o=../%.c) 49753d2d2eSraf 50753d2d2eSraf.KEEP_STATE: 51753d2d2eSraf 52753d2d2eSrafall: $(PROG) 53753d2d2eSraf 54753d2d2eSraf%.o: ../%.y 55753d2d2eSraf $(YACC.y) $< 56753d2d2eSraf $(COMPILE.c) -o $@ y.tab.c 57753d2d2eSraf $(RM) y.tab.c 58753d2d2eSraf 59753d2d2eSraf%.o: ../%.c 60753d2d2eSraf $(COMPILE.c) -o $@ $< 61753d2d2eSraf $(POST_PROCESS_O) 62753d2d2eSraf 63753d2d2eSraf$(PROG): $(U_LIB_A) $(OBJECTS) $(YACC_OBJS) 64753d2d2eSraf $(LINK.c) -o $@ $(OBJECTS) $(YACC_OBJS) $(LDLIBS) 65753d2d2eSraf $(POST_PROCESS) 66753d2d2eSraf 67753d2d2eSraf$(U_LIB_A): 68753d2d2eSraf @cd $(U_DIR); pwd; $(MAKE) all 69753d2d2eSraf 70753d2d2eSrafinstall: $(PROG_BIN) 71753d2d2eSraf 72753d2d2eSraf$(PROG_BIN) := FILEMODE = 755 73753d2d2eSraf$(PROG_BIN): $(PROG) 74753d2d2eSraf $(INS.file) $(PROG) 75753d2d2eSraf 76753d2d2eSrafclean: 77753d2d2eSraf -$(RM) $(OBJECTS) $(YACC_OBJS) 78753d2d2eSraf 79753d2d2eSrafclobber: clean 80753d2d2eSraf -$(RM) $(PROG) $(CLOBBERFILES) 81753d2d2eSraf 82753d2d2eSraflint: 83753d2d2eSraf $(LINT.c) $(SRCS) $(LINTLIBS) 84