xref: /titanic_44/usr/src/uts/sun4v/n2piupc/Makefile (revision 7014882c6a3672fd0e5d60200af8643ae53c5928)
1ea1a228cSschwartz#
2ea1a228cSschwartz# CDDL HEADER START
3ea1a228cSschwartz#
4ea1a228cSschwartz# The contents of this file are subject to the terms of the
5ea1a228cSschwartz# Common Development and Distribution License (the "License").
6ea1a228cSschwartz# You may not use this file except in compliance with the License.
7ea1a228cSschwartz#
8ea1a228cSschwartz# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9ea1a228cSschwartz# or http://www.opensolaris.org/os/licensing.
10ea1a228cSschwartz# See the License for the specific language governing permissions
11ea1a228cSschwartz# and limitations under the License.
12ea1a228cSschwartz#
13ea1a228cSschwartz# When distributing Covered Code, include this CDDL HEADER in each
14ea1a228cSschwartz# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15ea1a228cSschwartz# If applicable, add the following below this CDDL HEADER, with the
16ea1a228cSschwartz# fields enclosed by brackets "[]" replaced with your own identifying
17ea1a228cSschwartz# information: Portions Copyright [yyyy] [name of copyright owner]
18ea1a228cSschwartz#
19ea1a228cSschwartz# CDDL HEADER END
20ea1a228cSschwartz#
21ea1a228cSschwartz# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
22ea1a228cSschwartz# Use is subject to license terms.
23ea1a228cSschwartz#
24*7014882cSRichard Lowe
25ea1a228cSschwartz#
26ea1a228cSschwartz#	uts/sun4v/n2piupc/Makefile
27ea1a228cSschwartz#
28ea1a228cSschwartz#	This makefile drives the production of the
29ea1a228cSschwartz#	N2 PIU performance counter kernel module
30ea1a228cSschwartz#
31ea1a228cSschwartz#	sun4v implementation architecture dependent
32ea1a228cSschwartz#
33ea1a228cSschwartz
34ea1a228cSschwartz#
35ea1a228cSschwartz#	Path to the base of the uts directory tree (usually /usr/src/uts).
36ea1a228cSschwartz#
37ea1a228cSschwartzUTSBASE	= ../..
38ea1a228cSschwartz
39ea1a228cSschwartz#
40ea1a228cSschwartz#	Define the module and object file sets.
41ea1a228cSschwartz#
42ea1a228cSschwartzMODULE		= n2piupc
43ea1a228cSschwartzOBJECTS		= $(N2PIUPC_OBJS:%=$(OBJS_DIR)/%)
44ea1a228cSschwartzLINTS		= $(N2PIUPC_OBJS:%.o=$(LINTS_DIR)/%.ln)
45ea1a228cSschwartzROOTMODULE	= $(ROOT_PSM_DRV_DIR)/$(MODULE)
46ea1a228cSschwartzCONF_SRCDIR	= $(UTSBASE)/sun4v/io/n2piupc
47ea1a228cSschwartz
48ea1a228cSschwartz#
49ea1a228cSschwartz#	Include common rules.
50ea1a228cSschwartz#
51ea1a228cSschwartzinclude $(UTSBASE)/sun4v/Makefile.sun4v
52ea1a228cSschwartz
53ea1a228cSschwartz#
54ea1a228cSschwartz#	Define targets
55ea1a228cSschwartz#
56ea1a228cSschwartzALL_TARGET	= $(BINARY) $(SRC_CONFFILE)
57ea1a228cSschwartzLINT_TARGET	= $(MODULE).lint
58ea1a228cSschwartzINSTALL_TARGET	= $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
59ea1a228cSschwartz
60ea1a228cSschwartz#
61ea1a228cSschwartz#	Include SUN4 and SUN4V specific headers files
62ea1a228cSschwartz#
63ea1a228cSschwartzINC_PATH	+= -I$(UTSBASE)/sun4v/io/n2piupc
64ea1a228cSschwartz
65ea1a228cSschwartz#
66ea1a228cSschwartz# lint pass one enforcement
67ea1a228cSschwartz#
68ea1a228cSschwartzCFLAGS += $(CCVERBOSE)
69*7014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-label
70ea1a228cSschwartz
71ea1a228cSschwartz#
72ea1a228cSschwartz# Turn on doubleword alignment for 64 bit registers, and pass in module name
73ea1a228cSschwartz#
74ea1a228cSschwartzCFLAGS += -dalign -DMODULE_NAME=\"$(MODULE)\"
75ea1a228cSschwartz
76ea1a228cSschwartz#
77ea1a228cSschwartz# Lint needs module name too
78ea1a228cSschwartz#
79ea1a228cSschwartzLINTFLAGS += -DMODULE_NAME=\"$(MODULE)\"
80ea1a228cSschwartz
81ea1a228cSschwartz#
82ea1a228cSschwartz#	Default build targets.
83ea1a228cSschwartz#
84ea1a228cSschwartz.KEEP_STATE:
85ea1a228cSschwartz
86ea1a228cSschwartzdef:		$(DEF_DEPS)
87ea1a228cSschwartz
88ea1a228cSschwartzall:		$(ALL_DEPS)
89ea1a228cSschwartz
90ea1a228cSschwartzclean:		$(CLEAN_DEPS)
91ea1a228cSschwartz
92ea1a228cSschwartzclobber:	$(CLOBBER_DEPS)
93ea1a228cSschwartz
94ea1a228cSschwartzlint:		$(LINT_DEPS)
95ea1a228cSschwartz
96ea1a228cSschwartzmodlintlib:	$(MODLINTLIB_DEPS)
97ea1a228cSschwartz
98ea1a228cSschwartzclean.lint:	$(CLEAN_LINT_DEPS)
99ea1a228cSschwartz
100ea1a228cSschwartzinstall:	$(INSTALL_DEPS)
101ea1a228cSschwartz
102ea1a228cSschwartz#
103ea1a228cSschwartz#	Include common targets.
104ea1a228cSschwartz#
105ea1a228cSschwartzinclude $(UTSBASE)/$(PLATFORM)/Makefile.targ
106