xref: /titanic_51/usr/src/uts/sun4v/tpm/Makefile (revision 494f7e12a62129ef191a15f9dfde6b7abe3bf510)
18d26100cSWyllys Ingersoll#
28d26100cSWyllys Ingersoll# CDDL HEADER START
38d26100cSWyllys Ingersoll#
48d26100cSWyllys Ingersoll# The contents of this file are subject to the terms of the
58d26100cSWyllys Ingersoll# Common Development and Distribution License (the "License").
68d26100cSWyllys Ingersoll# You may not use this file except in compliance with the License.
78d26100cSWyllys Ingersoll#
88d26100cSWyllys Ingersoll# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
98d26100cSWyllys Ingersoll# or http://www.opensolaris.org/os/licensing.
108d26100cSWyllys Ingersoll# See the License for the specific language governing permissions
118d26100cSWyllys Ingersoll# and limitations under the License.
128d26100cSWyllys Ingersoll#
138d26100cSWyllys Ingersoll# When distributing Covered Code, include this CDDL HEADER in each
148d26100cSWyllys Ingersoll# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
158d26100cSWyllys Ingersoll# If applicable, add the following below this CDDL HEADER, with the
168d26100cSWyllys Ingersoll# fields enclosed by brackets "[]" replaced with your own identifying
178d26100cSWyllys Ingersoll# information: Portions Copyright [yyyy] [name of copyright owner]
188d26100cSWyllys Ingersoll#
198d26100cSWyllys Ingersoll# CDDL HEADER END
208d26100cSWyllys Ingersoll#
218d26100cSWyllys Ingersoll#
228d26100cSWyllys Ingersoll# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
238d26100cSWyllys Ingersoll# Use is subject to license terms.
248d26100cSWyllys Ingersoll#
258d26100cSWyllys Ingersoll#
268d26100cSWyllys Ingersoll#	This makefile drives the production of the sun4v physical tpm
278d26100cSWyllys Ingersoll#	kernel module.
288d26100cSWyllys Ingersoll#
298d26100cSWyllys Ingersoll#	sun4v implementation architecture dependent
308d26100cSWyllys Ingersoll#
318d26100cSWyllys Ingersoll
328d26100cSWyllys Ingersoll#
338d26100cSWyllys Ingersoll#	Path to the base of the uts directory tree (usually /usr/src/uts).
348d26100cSWyllys Ingersoll#
358d26100cSWyllys IngersollUTSBASE	= ../..
368d26100cSWyllys Ingersoll
378d26100cSWyllys Ingersoll#
388d26100cSWyllys Ingersoll#	Define the module and object file sets.
398d26100cSWyllys Ingersoll#
408d26100cSWyllys IngersollMODULE		= tpm
418d26100cSWyllys IngersollOBJECTS		= $(TPM_OBJS:%=$(OBJS_DIR)/%)
428d26100cSWyllys IngersollLINTS		= $(TPM_OBJS:%.o=$(LINTS_DIR)/%.ln)
438d26100cSWyllys IngersollROOTMODULE	= $(ROOT_PSM_DRV_DIR)/$(MODULE)
448d26100cSWyllys Ingersoll
458d26100cSWyllys Ingersoll#
468d26100cSWyllys Ingersoll#	Include common rules.
478d26100cSWyllys Ingersoll#
488d26100cSWyllys Ingersollinclude $(UTSBASE)/sun4v/Makefile.sun4v
498d26100cSWyllys Ingersoll
508d26100cSWyllys Ingersoll#
518d26100cSWyllys Ingersoll#	Override defaults to build a unique, local modstubs.o.
528d26100cSWyllys Ingersoll#
538d26100cSWyllys IngersollMODSTUBS_DIR	= $(OBJS_DIR)
548d26100cSWyllys Ingersoll
558d26100cSWyllys IngersollCLEANFILES	+= $(MODSTUBS_O)
568d26100cSWyllys Ingersoll
578d26100cSWyllys Ingersoll#
588d26100cSWyllys Ingersoll#	Define targets
598d26100cSWyllys Ingersoll#
608d26100cSWyllys IngersollALL_TARGET	= $(BINARY)
618d26100cSWyllys IngersollLINT_TARGET	= $(MODULE).lint
628d26100cSWyllys IngersollINSTALL_TARGET	= $(BINARY) $(ROOTMODULE)
638d26100cSWyllys Ingersoll
648d26100cSWyllys Ingersoll#
658d26100cSWyllys Ingersoll# lint pass one enforcement
668d26100cSWyllys Ingersoll#
678d26100cSWyllys IngersollCFLAGS += $(CCVERBOSE)
688d26100cSWyllys IngersollCFLAGS += -xCC
698d26100cSWyllys Ingersoll
7006d2b6d4SWyllys Ingersoll# This is for everything except /usr/include/tss
7106d2b6d4SWyllys IngersollCPPFLAGS	+= -I$(ROOT)/usr/include
7206d2b6d4SWyllys Ingersoll
738d26100cSWyllys Ingersoll# This is for /usr/include/tss/, which is not built in the ON consolidation
74*494f7e12SKeith M WesolowskiCPPFLAGS        += -I$(ADJUNCT_PROTO)/usr/include
758d26100cSWyllys Ingersoll
768d26100cSWyllys IngersollLDFLAGS += -dy -Nmisc/kcf
778d26100cSWyllys Ingersoll
788d26100cSWyllys Ingersoll#
798d26100cSWyllys Ingersoll# For now, disable these lint checks; maintainers should endeavor
808d26100cSWyllys Ingersoll# to investigate and remove these for maximum lint coverage.
818d26100cSWyllys Ingersoll# Please do not carry these forward to new Makefiles.
828d26100cSWyllys Ingersoll#
838d26100cSWyllys IngersollLINTTAGS	+= -erroff=E_BAD_PTR_CAST_ALIGN
848d26100cSWyllys IngersollLINTTAGS	+= -erroff=E_ASSIGN_NARROW_CONV
858d26100cSWyllys IngersollLINTTAGS	+= -erroff=E_SUSPICIOUS_COMPARISON
868d26100cSWyllys Ingersoll
878d26100cSWyllys Ingersoll#
888d26100cSWyllys Ingersoll#	Default build targets.
898d26100cSWyllys Ingersoll#
908d26100cSWyllys Ingersoll.KEEP_STATE:
918d26100cSWyllys Ingersoll
928d26100cSWyllys Ingersolldef:		$(DEF_DEPS)
938d26100cSWyllys Ingersoll
948d26100cSWyllys Ingersollall:		$(ALL_DEPS)
958d26100cSWyllys Ingersoll
968d26100cSWyllys Ingersollclean:		$(CLEAN_DEPS)
978d26100cSWyllys Ingersoll
988d26100cSWyllys Ingersollclobber:	$(CLOBBER_DEPS)
998d26100cSWyllys Ingersoll
1008d26100cSWyllys Ingersolllint:		$(LINT_DEPS)
1018d26100cSWyllys Ingersoll
1028d26100cSWyllys Ingersollmodlintlib:	$(MODLINTLIB_DEPS)
1038d26100cSWyllys Ingersoll
1048d26100cSWyllys Ingersollclean.lint:	$(CLEAN_LINT_DEPS)
1058d26100cSWyllys Ingersoll
1068d26100cSWyllys Ingersollinstall:	$(INSTALL_DEPS)
1078d26100cSWyllys Ingersoll
1088d26100cSWyllys Ingersoll#
1098d26100cSWyllys Ingersoll#	Include common targets.
1108d26100cSWyllys Ingersoll#
1118d26100cSWyllys Ingersollinclude $(UTSBASE)/$(PLATFORM)/Makefile.targ
112