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