Makefile.rules revision 42d734fc7fb75dc32911962a45df1e01e6e87c46
2N/A#
2N/A# CDDL HEADER START
2N/A#
2N/A# The contents of this file are subject to the terms of the
2N/A# Common Development and Distribution License (the "License").
2N/A# You may not use this file except in compliance with the License.
2N/A#
2N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
2N/A# or http://www.opensolaris.org/os/licensing.
2N/A# See the License for the specific language governing permissions
2N/A# and limitations under the License.
2N/A#
2N/A# When distributing Covered Code, include this CDDL HEADER in each
2N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2N/A# If applicable, add the following below this CDDL HEADER, with the
2N/A# fields enclosed by brackets "[]" replaced with your own identifying
2N/A# information: Portions Copyright [yyyy] [name of copyright owner]
2N/A#
2N/A# CDDL HEADER END
2N/A#
2N/A#
2N/A# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
2N/A# Use is subject to license terms.
2N/A#
2N/A# ident "%Z%%M% %I% %E% SMI"
2N/A#
2N/A# This Makefile defines the build rules for the directory
2N/A# uts/sun4u/starfire and its children.
2N/A#
2N/A# The following two-level ordering must be maintained in this file.
2N/A# Lines are sorted first in order of decreasing specificity based on
2N/A# the first directory component. That is, sun4u rules come before
2N/A# sparc rules come before common rules.
2N/A#
2N/A# Lines whose initial directory components are equal are sorted
2N/A# alphabetically by the remaining components.
2N/A
2N/A#
2N/A# inline support for DR.
2N/A#
2N/A
2N/AIL_CPP=$(CPP) -P -DINLINE -D_ASM $(AS_INC_PATH) \
2N/A $(CPP_DEFS) $(ALWAYS_DEFS) $(ALL_DEFS) $(CONFIG_DEFS)
2N/A
2N/A#
2N/A# Section 1a: C object build rules
2N/A#
2N/A
2N/A$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/starfire/cvc/%.c
$(COMPILE.c) -o $@ $<
$(CTFCONVERT_O)
$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/starfire/cvcredir/%.c
$(COMPILE.c) -o $@ $<
$(CTFCONVERT_O)
DRMACH_IL= $(OBJS_DIR)/drmach.il
$(OBJS_DIR)/drmach.o := CC_XARCH_32 = -xarch=v8plusa
$(OBJS_DIR)/drmach.o: $(UTSBASE)/sun4u/starfire/io/drmach.c $(DRMACH_IL)
$(COMPILE.c) $(DRMACH_IL) -o $@ $(UTSBASE)/sun4u/starfire/io/drmach.c
$(CTFCONVERT_O)
$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/starfire/io/%.c
$(COMPILE.c) -o $@ $<
$(CTFCONVERT_O)
$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/starfire/ml/%.s
$(COMPILE.s) -o $@ $<
$(OBJS_DIR)/%.o: $(UTSBASE)/sun4u/starfire/os/%.c
$(COMPILE.c) -o $@ $<
$(CTFCONVERT_O)
STARFIRE_IO= $(UTSBASE)/sun4u/starfire/io
CLEANFILES += $(STARFIRE_IO)/drmach_err.c
$(STARFIRE_IO)/drmach_err.c: $(SBDGENERR) $(SBD_IOCTL)
$(RM) $@
$(SBDGENERRCMD) ESTF < $(SBD_IOCTL) > $@
# inline stuff
CLEANFILES += $(DRMACH_IL)
$(DRMACH_IL): $(UTSBASE)/sun4u/starfire/ml/drmach.il.cpp
$(IL_CPP) $(UTSBASE)/sun4u/starfire/ml/drmach.il.cpp > $@
#
# Section 1b: Lint object build rules
#
$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/starfire/cvc/%.c
@($(LHEAD) $(LINT.c) $< $(LTAIL))
$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/starfire/cvcredir/%.c
@($(LHEAD) $(LINT.c) $< $(LTAIL))
$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/starfire/io/%.c
@($(LHEAD) $(LINT.c) $< $(LTAIL))
$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/starfire/ml/%.s
@($(LHEAD) $(LINT.s) $< $(LTAIL))
$(LINTS_DIR)/%.ln: $(UTSBASE)/sun4u/starfire/os/%.c
@($(LHEAD) $(LINT.c) $< $(LTAIL))