14df55fdeSJanie Lu# 24df55fdeSJanie Lu# CDDL HEADER START 34df55fdeSJanie Lu# 44df55fdeSJanie Lu# The contents of this file are subject to the terms of the 54df55fdeSJanie Lu# Common Development and Distribution License (the "License"). 64df55fdeSJanie Lu# You may not use this file except in compliance with the License. 74df55fdeSJanie Lu# 84df55fdeSJanie Lu# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 94df55fdeSJanie Lu# or http://www.opensolaris.org/os/licensing. 104df55fdeSJanie Lu# See the License for the specific language governing permissions 114df55fdeSJanie Lu# and limitations under the License. 124df55fdeSJanie Lu# 134df55fdeSJanie Lu# When distributing Covered Code, include this CDDL HEADER in each 144df55fdeSJanie Lu# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 154df55fdeSJanie Lu# If applicable, add the following below this CDDL HEADER, with the 164df55fdeSJanie Lu# fields enclosed by brackets "[]" replaced with your own identifying 174df55fdeSJanie Lu# information: Portions Copyright [yyyy] [name of copyright owner] 184df55fdeSJanie Lu# 194df55fdeSJanie Lu# CDDL HEADER END 204df55fdeSJanie Lu# 214df55fdeSJanie Lu# 224df55fdeSJanie Lu# uts/sun4v/kt/Makefile 23*c4c6ba57SVivek Gavaskar# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 244df55fdeSJanie Lu# 25*c4c6ba57SVivek Gavaskar# This makefile drives the production of the SPARC-T3 cpu module. 264df55fdeSJanie Lu# 274df55fdeSJanie Lu# sun4v implementation architecture dependent 284df55fdeSJanie Lu# 294df55fdeSJanie Lu 304df55fdeSJanie Lu# 314df55fdeSJanie Lu# Path to the base of the uts directory tree (usually /usr/src/uts). 324df55fdeSJanie Lu# 334df55fdeSJanie LuUTSBASE = ../.. 344df55fdeSJanie Lu 354df55fdeSJanie Lu# 364df55fdeSJanie Lu# Define the module and object file sets. 374df55fdeSJanie Lu# 38*c4c6ba57SVivek GavaskarMODULE = SPARC-T3 394df55fdeSJanie LuOBJECTS = $(NIAGARA2CPU_OBJS:%=$(OBJS_DIR)/%) 404df55fdeSJanie LuLINTS = $(NIAGARA2CPU_OBJS:%.o=$(LINTS_DIR)/%.ln) 414df55fdeSJanie LuROOTMODULE = $(ROOT_PSM_CPU_DIR)/$(MODULE) 424df55fdeSJanie Lu 434df55fdeSJanie LuCPU_DIR = . 444df55fdeSJanie LuHERE = ../kt 454df55fdeSJanie Lu 464df55fdeSJanie Lu# 474df55fdeSJanie Lu# Include common rules. 484df55fdeSJanie Lu# 494df55fdeSJanie Luinclude $(UTSBASE)/sun4v/Makefile.sun4v 504df55fdeSJanie Lu 514df55fdeSJanie Lu# 524df55fdeSJanie Lu# Override defaults 534df55fdeSJanie Lu# 544df55fdeSJanie LuCLEANFILES += $(CPULIB) $(SYM_MOD) 554df55fdeSJanie Lu 564df55fdeSJanie Lu# 574df55fdeSJanie Lu# Define targets 584df55fdeSJanie Lu# 594df55fdeSJanie LuALL_TARGET = $(SYM_MOD) 604df55fdeSJanie LuLINT_TARGET = $(MODULE).lint 614df55fdeSJanie LuINSTALL_TARGET = def $(BINARY) $(ROOTMODULE) 624df55fdeSJanie Lu 634df55fdeSJanie Lu# 644df55fdeSJanie Lu# lint pass one enforcement 654df55fdeSJanie Lu# 664df55fdeSJanie LuCFLAGS += $(CCVERBOSE) -DKT_IMPL 674df55fdeSJanie Lu 684df55fdeSJanie Lu# 694df55fdeSJanie Lu# The ATOMIC_BO_ENABLE_SHIFT enables backoff in atomic routines. 704df55fdeSJanie Lu# It is also used to scale final limit value w.r.t. number of 714df55fdeSJanie Lu# online cpus. 724df55fdeSJanie Lu# 734df55fdeSJanie LuATOMIC_BO_FLAG = -DATOMIC_BO_ENABLE_SHIFT=4 744df55fdeSJanie LuCFLAGS += $(ATOMIC_BO_FLAG) 754df55fdeSJanie LuCPPFLAGS +=$(ATOMIC_BO_FLAG) 764df55fdeSJanie LuAS_CPPFLAGS += $(ATOMIC_BO_FLAG) 774df55fdeSJanie Lu 784df55fdeSJanie Lu# 794df55fdeSJanie Lu# cpu-module-specific flags 804df55fdeSJanie Lu# 814df55fdeSJanie LuCPPFLAGS += -DCPU_MODULE -DKT_IMPL 824df55fdeSJanie LuCPPFLAGS += -DSUN4V_CONTIG_MEM_PREALLOC_SIZE_MB=68 834df55fdeSJanie LuAS_CPPFLAGS += -DCPU_MODULE -DKT_IMPL 844df55fdeSJanie Lu 854df55fdeSJanie Lu# 864df55fdeSJanie Lu# Default build targets. 874df55fdeSJanie Lu# 884df55fdeSJanie Lu.KEEP_STATE: 894df55fdeSJanie Lu 904df55fdeSJanie Ludef: $(DEF_DEPS) 914df55fdeSJanie Lu 924df55fdeSJanie Luall: $(ALL_DEPS) 934df55fdeSJanie Lu 944df55fdeSJanie Luclean: $(CLEAN_DEPS) 954df55fdeSJanie Lu 964df55fdeSJanie Luclobber: $(CLOBBER_DEPS) 974df55fdeSJanie Lu 984df55fdeSJanie Lulint: $(LINT_DEPS) 994df55fdeSJanie Lu 1004df55fdeSJanie Lumodlintlib: $(MODLINTLIB_DEPS) 1014df55fdeSJanie Lu 1024df55fdeSJanie Luclean.lint: $(CLEAN_LINT_DEPS) 1034df55fdeSJanie Lu 1044df55fdeSJanie Luinstall: $(INSTALL_DEPS) 1054df55fdeSJanie Lu 1064df55fdeSJanie Lu$(CPULIB): $(BINARY) 1074df55fdeSJanie Lu $(BUILD.SO) $(BINARY) 1084df55fdeSJanie Lu 1094df55fdeSJanie Lu$(SYM_MOD): $(UNIX_O) $(CPULIB) 1104df55fdeSJanie Lu @echo "resolving symbols against unix.o" 1114df55fdeSJanie Lu @(cd $(UNIX_DIR); pwd; \ 1124df55fdeSJanie Lu CPU_DIR=$(HERE) SYM_MOD=$(HERE)/$(SYM_MOD) $(MAKE) symcheck) 1134df55fdeSJanie Lu 1144df55fdeSJanie Lu# Include common targets. 1154df55fdeSJanie Lu# 1164df55fdeSJanie Luinclude $(UTSBASE)/$(PLATFORM)/Makefile.targ 117