1*25cf1a30Sjl139090# 2*25cf1a30Sjl139090# CDDL HEADER START 3*25cf1a30Sjl139090# 4*25cf1a30Sjl139090# The contents of this file are subject to the terms of the 5*25cf1a30Sjl139090# Common Development and Distribution License (the "License"). 6*25cf1a30Sjl139090# You may not use this file except in compliance with the License. 7*25cf1a30Sjl139090# 8*25cf1a30Sjl139090# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*25cf1a30Sjl139090# or http://www.opensolaris.org/os/licensing. 10*25cf1a30Sjl139090# See the License for the specific language governing permissions 11*25cf1a30Sjl139090# and limitations under the License. 12*25cf1a30Sjl139090# 13*25cf1a30Sjl139090# When distributing Covered Code, include this CDDL HEADER in each 14*25cf1a30Sjl139090# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*25cf1a30Sjl139090# If applicable, add the following below this CDDL HEADER, with the 16*25cf1a30Sjl139090# fields enclosed by brackets "[]" replaced with your own identifying 17*25cf1a30Sjl139090# information: Portions Copyright [yyyy] [name of copyright owner] 18*25cf1a30Sjl139090# 19*25cf1a30Sjl139090# CDDL HEADER END 20*25cf1a30Sjl139090# 21*25cf1a30Sjl139090# 22*25cf1a30Sjl139090# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23*25cf1a30Sjl139090# Use is subject to license terms. 24*25cf1a30Sjl139090# 25*25cf1a30Sjl139090# ident "%Z%%M% %I% %E% SMI" 26*25cf1a30Sjl139090# 27*25cf1a30Sjl139090# This Makefile defines the build rules for the directory 28*25cf1a30Sjl139090# uts/sun4u/opl and its children. 29*25cf1a30Sjl139090# 30*25cf1a30Sjl139090 31*25cf1a30Sjl139090# 32*25cf1a30Sjl139090# Section 1a: C object build rules 33*25cf1a30Sjl139090# 34*25cf1a30Sjl139090 35*25cf1a30Sjl139090# 36*25cf1a30Sjl139090# inline support for DR. 37*25cf1a30Sjl139090# 38*25cf1a30Sjl139090 39*25cf1a30Sjl139090 40*25cf1a30Sjl139090$(OBJS_DIR)/dr_mem.o: $(UTSBASE)/sun4u/opl/io/dr_mem.c 41*25cf1a30Sjl139090 $(COMPILE.c) -o $@ $(UTSBASE)/sun4u/opl/io/dr_mem.c 42*25cf1a30Sjl139090 $(CTFCONVERT_O) 43*25cf1a30Sjl139090 44*25cf1a30Sjl139090$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/ngdr/io/%.c 45*25cf1a30Sjl139090 $(COMPILE.c) -o $@ $< 46*25cf1a30Sjl139090 $(CTFCONVERT_O) 47*25cf1a30Sjl139090 48*25cf1a30Sjl139090DR_IO= $(UTSBASE)/sun4u/ngdr/io 49*25cf1a30Sjl139090SBD_IOCTL= $(UTSBASE)/sun4u/sys/sbd_ioctl.h 50*25cf1a30Sjl139090SBDGENERR= $(DR_IO)/sbdgenerr 51*25cf1a30Sjl139090 52*25cf1a30Sjl139090CLEANFILES += $(SBDGENERR) 53*25cf1a30Sjl139090CLEANFILES += $(DR_IO)/dr_err.c 54*25cf1a30Sjl139090 55*25cf1a30Sjl139090$(DR_IO)/dr_err.c: $(SBDGENERR) $(SBD_IOCTL) 56*25cf1a30Sjl139090 $(RM) $@ 57*25cf1a30Sjl139090 $(SBDGENERR) ESBD < $(SBD_IOCTL) > $(DR_IO)/dr_err.c 58*25cf1a30Sjl139090 59*25cf1a30Sjl139090$(SBDGENERR): $(DR_IO)/sbdgenerr.pl 60*25cf1a30Sjl139090 $(RM) $@ 61*25cf1a30Sjl139090 $(CAT) $(DR_IO)/sbdgenerr.pl > $@ 62*25cf1a30Sjl139090 $(CHMOD) +x $@ 63*25cf1a30Sjl139090 64*25cf1a30Sjl139090IL_CPP=$(CPP) -P -DINLINE -D_ASM $(AS_INC_PATH) \ 65*25cf1a30Sjl139090 $(CPP_DEFS) $(ALWAYS_DEFS) $(ALL_DEFS) $(CONFIG_DEFS) 66*25cf1a30Sjl139090 67*25cf1a30Sjl139090DRMACH_IL= $(OBJS_DIR)/drmach.il 68*25cf1a30Sjl139090$(OBJS_DIR)/drmach.o := CC_XARCH_32 = -xarch=v8plusa 69*25cf1a30Sjl139090$(OBJS_DIR)/drmach.o: $(UTSBASE)/sun4u/opl/io/drmach.c $(DRMACH_IL) 70*25cf1a30Sjl139090 $(COMPILE.c) $(DRMACH_IL) -o $@ $(UTSBASE)/sun4u/opl/io/drmach.c 71*25cf1a30Sjl139090 $(CTFCONVERT_O) 72*25cf1a30Sjl139090 73*25cf1a30Sjl139090$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/opl/io/%.c 74*25cf1a30Sjl139090 $(COMPILE.c) -o $@ $< 75*25cf1a30Sjl139090 $(CTFCONVERT_O) 76*25cf1a30Sjl139090 77*25cf1a30Sjl139090$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/opl/io/pcicmu/%.c 78*25cf1a30Sjl139090 $(COMPILE.c) -o $@ $< 79*25cf1a30Sjl139090 $(CTFCONVERT_O) 80*25cf1a30Sjl139090 81*25cf1a30Sjl139090$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/opl/ml/%.s 82*25cf1a30Sjl139090 $(COMPILE.s) -o $@ $< 83*25cf1a30Sjl139090 84*25cf1a30Sjl139090$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/opl/os/%.c 85*25cf1a30Sjl139090 $(COMPILE.c) -o $@ $< 86*25cf1a30Sjl139090 $(CTFCONVERT_O) 87*25cf1a30Sjl139090 88*25cf1a30Sjl139090$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/opl/io/oplpanel/%.c 89*25cf1a30Sjl139090 $(COMPILE.c) -o $@ $< 90*25cf1a30Sjl139090 $(CTFCONVERT_O) 91*25cf1a30Sjl139090 92*25cf1a30Sjl139090$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/opl/io/oplmsu/%.c 93*25cf1a30Sjl139090 $(COMPILE.c) -o $@ $< 94*25cf1a30Sjl139090 $(CTFCONVERT_O) 95*25cf1a30Sjl139090 96*25cf1a30Sjl139090OPL_IO= $(UTSBASE)/sun4u/opl/io 97*25cf1a30Sjl139090 98*25cf1a30Sjl139090CLEANFILES += $(OPL_IO)/drmach_err.c 99*25cf1a30Sjl139090 100*25cf1a30Sjl139090$(OPL_IO)/drmach_err.c: $(SBDGENERR) $(SBD_IOCTL) 101*25cf1a30Sjl139090 $(RM) $@ 102*25cf1a30Sjl139090 $(SBDGENERR) EOPL < $(SBD_IOCTL) > $@ 103*25cf1a30Sjl139090 104*25cf1a30Sjl139090CLEANFILES += $(DRMACH_IL) 105*25cf1a30Sjl139090 106*25cf1a30Sjl139090$(DRMACH_IL): $(UTSBASE)/sun4u/opl/ml/drmach.il.cpp 107*25cf1a30Sjl139090 $(IL_CPP) $(UTSBASE)/sun4u/opl/ml/drmach.il.cpp > $@ 108*25cf1a30Sjl139090 109*25cf1a30Sjl139090 110*25cf1a30Sjl139090# 111*25cf1a30Sjl139090# Section 1b: Lint object build rules 112*25cf1a30Sjl139090# 113*25cf1a30Sjl139090 114*25cf1a30Sjl139090$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/ngdr/io/%.c 115*25cf1a30Sjl139090 @($(LHEAD) $(LINT.c) $< $(LTAIL)) 116*25cf1a30Sjl139090 117*25cf1a30Sjl139090$(LINTS_DIR)/dr_mem.ln: $(UTSBASE)/sun4u/opl/io/dr_mem.c 118*25cf1a30Sjl139090 @($(LHEAD) $(LINT.c) $(UTSBASE)/sun4u/opl/io/dr_mem.c $(LTAIL)) 119*25cf1a30Sjl139090 120*25cf1a30Sjl139090$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/opl/io/%.c 121*25cf1a30Sjl139090 @($(LHEAD) $(LINT.c) $< $(LTAIL)) 122*25cf1a30Sjl139090 123*25cf1a30Sjl139090$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/opl/io/pcicmu/%.c 124*25cf1a30Sjl139090 @($(LHEAD) $(LINT.c) $< $(LTAIL)) 125*25cf1a30Sjl139090 126*25cf1a30Sjl139090$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/opl/ml/%.s 127*25cf1a30Sjl139090 @($(LHEAD) $(LINT.s) $< $(LTAIL)) 128*25cf1a30Sjl139090 129*25cf1a30Sjl139090$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/opl/os/%.c 130*25cf1a30Sjl139090 @($(LHEAD) $(LINT.c) $< $(LTAIL)) 131*25cf1a30Sjl139090 132*25cf1a30Sjl139090$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/opl/io/oplpanel/%.c 133*25cf1a30Sjl139090 @($(LHEAD) $(LINT.c) $< $(LTAIL)) 134*25cf1a30Sjl139090 135*25cf1a30Sjl139090$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/opl/io/oplmsu/%.c 136*25cf1a30Sjl139090 @($(LHEAD) $(LINT.c) $< $(LTAIL)) 137*25cf1a30Sjl139090 138*25cf1a30Sjl139090.KEEP_STATE: 139