xref: /titanic_51/usr/src/uts/sun4v/kt/Makefile (revision c4c6ba57afa115b6a7e20afa6a2da6c99f521616)
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