xref: /titanic_50/usr/src/uts/sun4v/vfalls/Makefile (revision 895ca178e38ac3583d0c0d8317d51dc5f388df6e)
159ac0c16Sdavemq#
259ac0c16Sdavemq# CDDL HEADER START
359ac0c16Sdavemq#
459ac0c16Sdavemq# The contents of this file are subject to the terms of the
559ac0c16Sdavemq# Common Development and Distribution License (the "License").
659ac0c16Sdavemq# You may not use this file except in compliance with the License.
759ac0c16Sdavemq#
859ac0c16Sdavemq# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
959ac0c16Sdavemq# or http://www.opensolaris.org/os/licensing.
1059ac0c16Sdavemq# See the License for the specific language governing permissions
1159ac0c16Sdavemq# and limitations under the License.
1259ac0c16Sdavemq#
1359ac0c16Sdavemq# When distributing Covered Code, include this CDDL HEADER in each
1459ac0c16Sdavemq# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1559ac0c16Sdavemq# If applicable, add the following below this CDDL HEADER, with the
1659ac0c16Sdavemq# fields enclosed by brackets "[]" replaced with your own identifying
1759ac0c16Sdavemq# information: Portions Copyright [yyyy] [name of copyright owner]
1859ac0c16Sdavemq#
1959ac0c16Sdavemq# CDDL HEADER END
2059ac0c16Sdavemq#
2159ac0c16Sdavemq#
2259ac0c16Sdavemq# uts/sun4v/vfalls/Makefile
23*895ca178Sae112802# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
2459ac0c16Sdavemq# Use is subject to license terms.
2559ac0c16Sdavemq#
2659ac0c16Sdavemq#ident	"%Z%%M%	%I%	%E% SMI"
2759ac0c16Sdavemq#
2859ac0c16Sdavemq#	This makefile drives the production of the UltraSPARC-T2+ cpu module.
2959ac0c16Sdavemq#
3059ac0c16Sdavemq#	sun4v implementation architecture dependent
3159ac0c16Sdavemq#
3259ac0c16Sdavemq
3359ac0c16Sdavemq#
3459ac0c16Sdavemq#	Path to the base of the uts directory tree (usually /usr/src/uts).
3559ac0c16Sdavemq#
3659ac0c16SdavemqUTSBASE	= ../..
3759ac0c16Sdavemq
3859ac0c16Sdavemq#
3959ac0c16Sdavemq#	Define the module and object file sets.
4059ac0c16Sdavemq#
4159ac0c16SdavemqMODULE		= SUNW,UltraSPARC-T2+
4259ac0c16SdavemqOBJECTS		= $(NIAGARA2CPU_OBJS:%=$(OBJS_DIR)/%)
4359ac0c16SdavemqLINTS		= $(NIAGARA2CPU_OBJS:%.o=$(LINTS_DIR)/%.ln)
4459ac0c16SdavemqROOTMODULE	= $(ROOT_PSM_CPU_DIR)/$(MODULE)
4559ac0c16Sdavemq
4659ac0c16SdavemqCPU_DIR		= .
4759ac0c16SdavemqHERE		= ../vfalls
4859ac0c16Sdavemq
4959ac0c16Sdavemq#
5059ac0c16Sdavemq#	Include common rules.
5159ac0c16Sdavemq#
5259ac0c16Sdavemqinclude $(UTSBASE)/sun4v/Makefile.sun4v
5359ac0c16Sdavemq
5459ac0c16Sdavemq#
5559ac0c16Sdavemq#	Override defaults
5659ac0c16Sdavemq#
5759ac0c16SdavemqCLEANFILES	+= $(CPULIB) $(SYM_MOD)
5859ac0c16Sdavemq
5959ac0c16Sdavemq#
6059ac0c16Sdavemq#	Define targets
6159ac0c16Sdavemq#
6259ac0c16SdavemqALL_TARGET	= $(SYM_MOD)
6359ac0c16SdavemqLINT_TARGET	= $(MODULE).lint
6459ac0c16SdavemqINSTALL_TARGET	= def $(BINARY) $(ROOTMODULE)
6559ac0c16Sdavemq
6659ac0c16Sdavemq#
6759ac0c16Sdavemq# lint pass one enforcement
6859ac0c16Sdavemq#
69*895ca178Sae112802CFLAGS += $(CCVERBOSE) -DVFALLS_IMPL
7059ac0c16Sdavemq
7159ac0c16Sdavemq#
7259ac0c16Sdavemq# cpu-module-specific flags
7359ac0c16Sdavemq#
74*895ca178Sae112802CPPFLAGS += -DCPU_MODULE -DVFALLS_IMPL
757ec363dcSwh94709CPPFLAGS += -DSUN4V_CONTIG_MEM_PREALLOC_SIZE_MB=68
76*895ca178Sae112802AS_CPPFLAGS += -DCPU_MODULE -DVFALLS_IMPL
77*895ca178Sae112802
78*895ca178Sae112802#
79*895ca178Sae112802# The ATOMIC_BO_ENABLE_SHIFT enables backoff in atomic routines.
80*895ca178Sae112802# It is also used to scale final limit value w.r.t. number of
81*895ca178Sae112802# online cpus.
82*895ca178Sae112802#
83*895ca178Sae112802ATOMIC_BO_FLAG = -DATOMIC_BO_ENABLE_SHIFT=4
84*895ca178Sae112802CFLAGS += $(ATOMIC_BO_FLAG)
85*895ca178Sae112802CPPFLAGS +=$(ATOMIC_BO_FLAG)
86*895ca178Sae112802AS_CPPFLAGS += $(ATOMIC_BO_FLAG)
8759ac0c16Sdavemq
8859ac0c16Sdavemq#
8959ac0c16Sdavemq#	Default build targets.
9059ac0c16Sdavemq#
9159ac0c16Sdavemq.KEEP_STATE:
9259ac0c16Sdavemq
9359ac0c16Sdavemqdef:		$(DEF_DEPS)
9459ac0c16Sdavemq
9559ac0c16Sdavemqall:		$(ALL_DEPS)
9659ac0c16Sdavemq
9759ac0c16Sdavemqclean:		$(CLEAN_DEPS)
9859ac0c16Sdavemq
9959ac0c16Sdavemqclobber:	$(CLOBBER_DEPS)
10059ac0c16Sdavemq
10159ac0c16Sdavemqlint:		$(LINT_DEPS)
10259ac0c16Sdavemq
10359ac0c16Sdavemqmodlintlib:	$(MODLINTLIB_DEPS)
10459ac0c16Sdavemq
10559ac0c16Sdavemqclean.lint:	$(CLEAN_LINT_DEPS)
10659ac0c16Sdavemq
10759ac0c16Sdavemqinstall:	$(INSTALL_DEPS)
10859ac0c16Sdavemq
10959ac0c16Sdavemq$(CPULIB):	$(BINARY)
11059ac0c16Sdavemq	$(BUILD.SO) $(BINARY)
11159ac0c16Sdavemq
11259ac0c16Sdavemq$(SYM_MOD):	$(UNIX_O) $(CPULIB)
11359ac0c16Sdavemq	@echo "resolving symbols against unix.o"
11459ac0c16Sdavemq	@(cd $(UNIX_DIR); pwd; \
11559ac0c16Sdavemq	    CPU_DIR=$(HERE) SYM_MOD=$(HERE)/$(SYM_MOD) $(MAKE) symcheck)
11659ac0c16Sdavemq
11759ac0c16Sdavemq#	Include common targets.
11859ac0c16Sdavemq#
11959ac0c16Sdavemqinclude $(UTSBASE)/$(PLATFORM)/Makefile.targ
120