Makefile revision bb25c06cca41ca78e5fb87fbb8e81d55beb18c95
0N/A#
553N/A# CDDL HEADER START
0N/A#
0N/A# The contents of this file are subject to the terms of the
0N/A# Common Development and Distribution License (the "License").
0N/A# You may not use this file except in compliance with the License.
0N/A#
0N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
0N/A# or http://www.opensolaris.org/os/licensing.
0N/A# See the License for the specific language governing permissions
0N/A# and limitations under the License.
0N/A#
0N/A# When distributing Covered Code, include this CDDL HEADER in each
0N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
0N/A# If applicable, add the following below this CDDL HEADER, with the
0N/A# fields enclosed by brackets "[]" replaced with your own identifying
0N/A# information: Portions Copyright [yyyy] [name of copyright owner]
0N/A#
553N/A# CDDL HEADER END
553N/A#
553N/A#
0N/A# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
0N/A# Use is subject to license terms.
0N/A#
0N/A#ident "%Z%%M% %I% %E% SMI"
0N/A#
0N/A# This makefile drives the production of the zulunvm
0N/A# mics module
0N/A#
288N/A# sun4u implementation architecture dependent
0N/A#
0N/A
0N/A#
0N/A# Path to the base of the uts directory tree (usually /usr/src/uts).
0N/A#
0N/AUTSBASE = ../..
0N/A
0N/A#
0N/A# Define the module and object file sets.
0N/A#
0N/AMODULE = zuluvm
0N/AOBJECTS = $(ZULUVM_OBJS:%=$(OBJS_DIR)/%)
0N/ALINTS = $(ZULUVM_OBJS:%.o=$(LINTS_DIR)/%.ln)
0N/AROOTMODULE = $(ROOT_PSM_MISC_DIR)/$(MODULE)
0N/A
0N/A#
# Include common rules.
#
include $(UTSBASE)/sun4u/Makefile.sun4u
#
# Override defaults to build a unique, local modstubs.o.
#
MODSTUBS_DIR = .
$(MODSTUBS_O) := AS_CPPFLAGS += -DZULU_MISC_MODULE
CLEANFILES += $(MODSTUBS_O)
#
# Define targets
#
ALL_TARGET = $(BINARY)
LINT_TARGET = $(MODULE).lint
INSTALL_TARGET = $(BINARY) $(ROOTMODULE)
ZULUVM_OFFSETS = $(UTSBASE)/sun4u/zuluvm/zuluvm_offsets.in
ZULUVM_OFFSETS_H = $(OBJS_DIR)/zuluvm_offsets.h
ZULUVM_STATS = -DZULUVM_STATS
#
# We turn off tnf probes for opt builds.
#
PROBE_FLAGS_OBJ64 = -DNPROBE
#
# lint pass one enforcement
#
CFLAGS += $(CCVERBOSE) $(ZULUVM_STATS) $(PROBE_FLAGS_$(BUILD_TYPE))
ASFLAGS += $(ZULUVM_STATS)
LINTFLAGS += -I$(OBJS_DIR)
#
# For now, disable these lint checks; maintainers should endeavor
# to investigate and remove these for maximum lint coverage.
# Please do not carry these forward to new Makefiles.
#
LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
#
# Default build targets.
#
.KEEP_STATE:
def: $(DEF_DEPS)
all: $(ALL_DEPS)
clean: $(CLEAN_DEPS)
clobber: $(CLOBBER_DEPS)
lint: $(LINT_DEPS)
modlintlib: $(MODLINTLIB_DEPS) lint64
clean.lint: $(CLEAN_LINT_DEPS)
install: $(INSTALL_DEPS)
#
# Special rules for generating assym.h for inclusion in assembly files
#
#$(DSF_DIR)/$(OBJS_DIR)/assym.h: FRC
# @cd $(DSF_DIR); $(MAKE) all.targ
#
AS_INC_PATH += -I$(OBJS_DIR)
ZULUVM_DEPS += zulu_hat_asm.o zulu_asm.o zulu_asm.ln zulu_hat_asm.ln
CLEANFILES += $(ZULUVM_OFFSETS_H) $(ZULUVM_OFFSETS_OUT)
$(ZULUVM_DEPS:%=$(OBJS_DIR)/%): $(ZULUVM_OFFSETS_H)
$(ZULUVM_OFFSETS_H): $(ZULUVM_OFFSETS)
$(OFFSETS_CREATE) <$(ZULUVM_OFFSETS) >$@
#
# Include common targets.
#
include $(UTSBASE)/sun4u/Makefile.targ