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, Version 1.0 only 6# (the "License"). You may not use this file except in compliance 7# with the License. 8# 9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10# or http://www.opensolaris.org/os/licensing. 11# See the License for the specific language governing permissions 12# and limitations under the License. 13# 14# When distributing Covered Code, include this CDDL HEADER in each 15# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16# If applicable, add the following below this CDDL HEADER, with the 17# fields enclosed by brackets "[]" replaced with your own identifying 18# information: Portions Copyright [yyyy] [name of copyright owner] 19# 20# CDDL HEADER END 21# 22# 23# Copyright 2003 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26# Copyright (c) 2018, Joyent, Inc. 27 28PROG= bc 29XPG6PROG= bc 30XD= exobjs.xpg6 31EXOBJS= bc.o 32XPG6EXOBJS= exobjs.xpg6/bc.o 33 34LIBB= lib.b 35CLOBBERFILES= $(LIBB) 36 37include ../Makefile.cmd 38 39CERRWARN += -_gcc=-Wno-implicit-function-declaration 40CERRWARN += -_gcc=-Wno-parentheses 41CERRWARN += -_gcc=-Wno-unused-label 42 43# nothing lintable 44SMATCH=off 45 46$(XPG6EXOBJS) := CFLAGS += -DXPG6 47ROOTLIBB= $(LIBB:%=$(ROOTLIB)/%) 48$(ROOTLIBB) := FILEMODE = $(LIBFILEMODE) 49 50.KEEP_STATE: 51 52all: $(PROG) $(XPG6) $(LIBB) 53 54$(PROG): $(EXOBJS) 55 $(LINK.c) -o $@ $(EXOBJS) $(LDLIBS) 56 $(POST_PROCESS) 57 58 59$(XPG6): $(XD) $(XPG6EXOBJS) 60 $(LINK.c) -o $@ $(XPG6EXOBJS) $(LDLIBS) 61 $(POST_PROCESS) 62 63 64$(LIBB): $(LIBB).data 65 -$(RM) $(LIBB) 66 $(CP) $(LIBB).data $(LIBB) 67 68install: all $(ROOTPROG) $(ROOTXPG6PROG) $(ROOTLIBB) 69 70clean: 71 -@rm -rf $(PROG).c $(PROG).x $(EXOBJS) $(XD) $(PROG) $(XPG6) 72 73lint: 74 75$(XPG6EXOBJS): $(XD) 76 77$(XD)/bc.o: bc.y 78 $(YACC.y) bc.y 79 $(COMPILE.c) -o $@ y.tab.c 80 $(POST_PROCESS_O) 81 $(RM) y.tab.c 82 83$(XD): 84 -@mkdir -p $@ 85 86 87include ../Makefile.targ 88