Makefile revision 88543b5cfb7f04aeebd3e525cacd360547c0c16c
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# CDDL HEADER START
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# The contents of this file are subject to the terms of the
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Common Development and Distribution License (the "License").
9b2bd54c98edb185a3985410367754ab33217362bnicholes# You may not use this file except in compliance with the License.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9b2bd54c98edb185a3985410367754ab33217362bnicholes# or http://www.opensolaris.org/os/licensing.
9b2bd54c98edb185a3985410367754ab33217362bnicholes# See the License for the specific language governing permissions
9b2bd54c98edb185a3985410367754ab33217362bnicholes# and limitations under the License.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# When distributing Covered Code, include this CDDL HEADER in each
9b2bd54c98edb185a3985410367754ab33217362bnicholes# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9b2bd54c98edb185a3985410367754ab33217362bnicholes# If applicable, add the following below this CDDL HEADER, with the
9b2bd54c98edb185a3985410367754ab33217362bnicholes# fields enclosed by brackets "[]" replaced with your own identifying
9b2bd54c98edb185a3985410367754ab33217362bnicholes# information: Portions Copyright [yyyy] [name of copyright owner]
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# CDDL HEADER END
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
70953fb44a7140fe206c3a5f011e24209c8c5c6abnicholes# Use is subject to license terms.
70953fb44a7140fe206c3a5f011e24209c8c5c6abnicholes#
70953fb44a7140fe206c3a5f011e24209c8c5c6abnicholes#ident "%Z%%M% %I% %E% SMI"
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# This makefile drives the production of the zulunvm
9b2bd54c98edb185a3985410367754ab33217362bnicholes# mics module
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# sun4u implementation architecture dependent
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
be06f010941d039a422f1bbd7e321a1a0e92e291bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Path to the base of the uts directory tree (usually /usr/src/uts).
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesUTSBASE = ../..
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Define the module and object file sets.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesMODULE = zuluvm
9b2bd54c98edb185a3985410367754ab33217362bnicholesOBJECTS = $(ZULUVM_OBJS:%=$(OBJS_DIR)/%)
9b2bd54c98edb185a3985410367754ab33217362bnicholesLINTS = $(ZULUVM_OBJS:%.o=$(LINTS_DIR)/%.ln)
9b2bd54c98edb185a3985410367754ab33217362bnicholesROOTMODULE = $(ROOT_PSM_MISC_DIR)/$(MODULE)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Include common rules.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesinclude $(UTSBASE)/sun4u/Makefile.sun4u
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Override defaults to build a unique, local modstubs.o.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesMODSTUBS_DIR = .
be06f010941d039a422f1bbd7e321a1a0e92e291bnicholes$(MODSTUBS_O) := AS_CPPFLAGS += -DZULU_MISC_MODULE
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesCLEANFILES += $(MODSTUBS_O)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Define targets
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
be06f010941d039a422f1bbd7e321a1a0e92e291bnicholesALL_TARGET = $(BINARY)
9b2bd54c98edb185a3985410367754ab33217362bnicholesLINT_TARGET = $(MODULE).lint
9b2bd54c98edb185a3985410367754ab33217362bnicholesINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesZULUVM_OFFSETS = $(UTSBASE)/sun4u/zuluvm/zuluvm_offsets.in
9b2bd54c98edb185a3985410367754ab33217362bnicholesZULUVM_OFFSETS_H = $(OBJS_DIR)/zuluvm_offsets.h
9b2bd54c98edb185a3985410367754ab33217362bnicholes
be06f010941d039a422f1bbd7e321a1a0e92e291bnicholesZULUVM_STATS = -DZULUVM_STATS
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# We turn off tnf probes for opt builds.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesPROBE_FLAGS_OBJ64 = -DNPROBE
9b2bd54c98edb185a3985410367754ab33217362bnicholes
be06f010941d039a422f1bbd7e321a1a0e92e291bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# lint pass one enforcement
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesCFLAGS += $(CCVERBOSE) $(ZULUVM_STATS) $(PROBE_FLAGS_$(BUILD_TYPE))
9b2bd54c98edb185a3985410367754ab33217362bnicholesASFLAGS += $(ZULUVM_STATS)
9b2bd54c98edb185a3985410367754ab33217362bnicholesLINTFLAGS += -I$(OBJS_DIR)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Default build targets.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes.KEEP_STATE:
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesdef: $(DEF_DEPS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesall: $(ALL_DEPS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesclean: $(CLEAN_DEPS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesclobber: $(CLOBBER_DEPS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholeslint: $(LINT_DEPS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesmodlintlib: $(MODLINTLIB_DEPS) lint64
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesclean.lint: $(CLEAN_LINT_DEPS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesinstall: $(INSTALL_DEPS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Special rules for generating assym.h for inclusion in assembly files
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes#$(DSF_DIR)/$(OBJS_DIR)/assym.h: FRC
9b2bd54c98edb185a3985410367754ab33217362bnicholes# @cd $(DSF_DIR); $(MAKE) all.targ
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesAS_INC_PATH += -I$(OBJS_DIR)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesZULUVM_DEPS += zulu_hat_asm.o zulu_asm.o zulu_asm.ln zulu_hat_asm.ln
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholesCLEANFILES += $(ZULUVM_OFFSETS_H) $(ZULUVM_OFFSETS_OUT)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
be06f010941d039a422f1bbd7e321a1a0e92e291bnicholes$(ZULUVM_DEPS:%=$(OBJS_DIR)/%): $(ZULUVM_OFFSETS_H)
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes$(ZULUVM_OFFSETS_H): $(ZULUVM_OFFSETS)
9b2bd54c98edb185a3985410367754ab33217362bnicholes $(OFFSETS_CREATE) <$(ZULUVM_OFFSETS) >$@
9b2bd54c98edb185a3985410367754ab33217362bnicholes
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholes# Include common targets.
9b2bd54c98edb185a3985410367754ab33217362bnicholes#
9b2bd54c98edb185a3985410367754ab33217362bnicholesinclude $(UTSBASE)/sun4u/Makefile.targ
9b2bd54c98edb185a3985410367754ab33217362bnicholes