Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# CDDL HEADER START
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# The contents of this file are subject to the terms of the
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Common Development and Distribution License (the "License").
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# You may not use this file except in compliance with the License.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# or http://www.opensolaris.org/os/licensing.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# See the License for the specific language governing permissions
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# and limitations under the License.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# When distributing Covered Code, include this CDDL HEADER in each
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# If applicable, add the following below this CDDL HEADER, with the
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# fields enclosed by brackets "[]" replaced with your own identifying
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# information: Portions Copyright [yyyy] [name of copyright owner]
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# CDDL HEADER END
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Use is subject to license terms.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# This makefile drives the production of the tem module
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder#
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder# intel implementation architecture dependent
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder#
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder#
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder# Path to the base of the uts directory tree (usually /usr/src/uts).
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederUTSBASE = ../..
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder
904efdc72d29946a966c65fcc624068f38127c84Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Define the module and object file sets.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
904efdc72d29946a966c65fcc624068f38127c84Christian MaederMODULE = tem
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederOBJECTS = $(TEM_OBJS:%=$(OBJS_DIR)/%)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederLINTS = $(TEM_OBJS:%.o=$(LINTS_DIR)/%.ln)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederROOTMODULE = $(ROOT_MISC_DIR)/$(MODULE)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederWARLOCK_OUT = $(TEM_OBJS:%.o=%.ll)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederWARLOCK_OK = $(MODULE).ok
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederWLCMD_DIR = $(UTSBASE)/common/io/warlock
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Include common rules.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederinclude $(UTSBASE)/intel/Makefile.intel
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Define targets
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederALL_TARGET = $(BINARY)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederLINT_TARGET = $(MODULE).lint
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederLDFLAGS += -dy -Ndacf/consconfig_dacf
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# For now, disable these lint checks; maintainers should endeavor
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# to investigate and remove these for maximum lint coverage.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Please do not carry these forward to new Makefiles.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederLINTTAGS += -erroff=E_STATIC_UNUSED
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederCERRWARN += -_gcc=-Wno-unused-function
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederCERRWARN += -_gcc=-Wno-uninitialized
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Default build targets.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder.KEEP_STATE:
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederdef: $(DEF_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederall: $(ALL_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederclean: $(CLEAN_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederclobber: $(CLOBBER_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederlint: $(LINT_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maedermodlintlib: $(MODLINTLIB_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederclean.lint: $(CLEAN_LINT_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederinstall: $(INSTALL_DEPS)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Include common targets.
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederinclude $(UTSBASE)/intel/Makefile.targ
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# Defines for local commands
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederTEST = test
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederWLCC = wlcc
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederTOUCH = touch
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian MaederWARLOCK = warlock
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder# warlock targets
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder#
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederwarlock: $(WARLOCK_OUT) warlock_ddi.files
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder $(WARLOCK) -c $(WLCMD_DIR)/tem.wlcmd $(WARLOCK_OUT) \
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder -l ../../intel/warlock/ddi_dki_impl.ll
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder $(TOUCH) $(WARLOCK_OK)
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder%.ll: $(UTSBASE)/common/io/%.c
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maederwarlock_ddi.files:
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder @cd ../../intel/warlock; pwd; $(MAKE) warlock
4eeeca8e688ff5fb58bad5610d12f3f7a9866e85Christian Maeder