Makefile revision 494f7e12a62129ef191a15f9dfde6b7abe3bf510
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maeder#
306763c67bb99228487345b32ab8c5c6cd41f23cChristian Maeder# CDDL HEADER START
e6d40133bc9f858308654afb1262b8b483ec5922Till Mossakowski#
ef567531a4343e1f8f28a523b7a3cc16a7f3e122Christian Maeder# The contents of this file are subject to the terms of the
97018cf5fa25b494adffd7e9b4e87320dae6bf47Christian Maeder# Common Development and Distribution License (the "License").
306763c67bb99228487345b32ab8c5c6cd41f23cChristian Maeder# You may not use this file except in compliance with the License.
b4fbc96e05117839ca409f5f20f97b3ac872d1edTill Mossakowski#
306763c67bb99228487345b32ab8c5c6cd41f23cChristian Maeder# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
306763c67bb99228487345b32ab8c5c6cd41f23cChristian Maeder# or http://www.opensolaris.org/os/licensing.
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder# See the License for the specific language governing permissions
e6d40133bc9f858308654afb1262b8b483ec5922Till Mossakowski# and limitations under the License.
d543cf2bb0c810781625c76fe135476d46270d88Till Mossakowski#
1921826503a6c342d31a646e513e6250d8c28128Christian Maeder# When distributing Covered Code, include this CDDL HEADER in each
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder# If applicable, add the following below this CDDL HEADER, with the
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder# fields enclosed by brackets "[]" replaced with your own identifying
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder# information: Portions Copyright [yyyy] [name of copyright owner]
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder#
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder# CDDL HEADER END
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder#
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder# Use is subject to license terms.
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder#
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder# This makefile drives the production of the TPM driver kernel
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder# module.
80165d62acd4644f062affcd5968ebed7b5b4b51Christian Maeder#
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
2eb84fc82d3ffa9116bc471fda3742bd9e5a24bbChristian MaederUTSBASE = $(SRC)/uts
e509b6f97f98f96ef258c1c3f7968241da8bde5dTill Mossakowski
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder#
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder# Define the module and object file sets.
2da76b16c033999e20d20bd6f4df3d1c5922f42aChristian Maeder#
80165d62acd4644f062affcd5968ebed7b5b4b51Christian MaederMODULE = tpm
1d65374b2198c0c570ac2c24b41adfa345f4b59bKlaus LuettichOBJECTS = $(TPM_OBJS:%=$(OBJS_DIR)/%)
1d65374b2198c0c570ac2c24b41adfa345f4b59bKlaus LuettichLINTS = $(TPM_OBJS:%.o=$(LINTS_DIR)/%.ln)
1d65374b2198c0c570ac2c24b41adfa345f4b59bKlaus LuettichROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
3cacbe09b608e5fbd23dc6ffca12d31b957cb5d7Heng Jiang
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder#
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder# Include common rules.
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder#
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder# For now, TPM only delivers on x86/64 platforms, so only build
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder# with the Intel rules.
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder#
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maederinclude $(UTSBASE)/intel/Makefile.intel
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder
2dc26996d32244796c48c71fe44413c8ebf8bbc9Christian Maeder#
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maeder# Define targets
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder#
0ea2cddb8715a770e646895e16b7b8085f49167cChristian MaederALL_TARGET = $(BINARY)
0ea2cddb8715a770e646895e16b7b8085f49167cChristian MaederLINT_TARGET = $(MODULE).lint
9929f81562adecc8aafaefb14a0159afcf4a3351Christian MaederINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
2da76b16c033999e20d20bd6f4df3d1c5922f42aChristian Maeder
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maeder#
1921826503a6c342d31a646e513e6250d8c28128Christian Maeder# Dependency
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder#
9929f81562adecc8aafaefb14a0159afcf4a3351Christian MaederLDFLAGS += -dy
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
0ea2cddb8715a770e646895e16b7b8085f49167cChristian MaederCFLAGS += -xCC
35c4f82f148c6325473ff97b616ba4507d8db739Christian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder# This is for everything except /usr/include/tss/
9929f81562adecc8aafaefb14a0159afcf4a3351Christian MaederCPPFLAGS += -I$(ROOT)/usr/include
2da76b16c033999e20d20bd6f4df3d1c5922f42aChristian Maeder
2da76b16c033999e20d20bd6f4df3d1c5922f42aChristian Maeder# This is for /usr/include/tss/, which is not built in the ON consolidation
0ea2cddb8715a770e646895e16b7b8085f49167cChristian MaederCPPFLAGS += -I$(ADJUNCT_PROTO)/usr/include
35c4f82f148c6325473ff97b616ba4507d8db739Christian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian MaederCERRWARN += -_gcc=-Wno-parentheses
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder#
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder# Default build targets.
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder#
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder.KEEP_STATE:
2da76b16c033999e20d20bd6f4df3d1c5922f42aChristian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maederdef: $(DEF_DEPS)
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maederall: $(ALL_DEPS)
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maederclean: $(CLEAN_DEPS)
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
2da76b16c033999e20d20bd6f4df3d1c5922f42aChristian Maederclobber: $(CLOBBER_DEPS)
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maederlint: $(LINT_DEPS)
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maedermodlintlib: $(MODLINTLIB_DEPS)
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maederclean.lint: $(CLEAN_LINT_DEPS)
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maederinstall: $(INSTALL_DEPS)
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maeder
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maederinclude $(UTSBASE)/intel/Makefile.targ
2da76b16c033999e20d20bd6f4df3d1c5922f42aChristian Maeder
9929f81562adecc8aafaefb14a0159afcf4a3351Christian Maeder$(OBJECTS): $(OBJS_DIR)
0ea2cddb8715a770e646895e16b7b8085f49167cChristian Maeder