a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# CDDL HEADER START
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# The contents of this file are subject to the terms of the
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Common Development and Distribution License (the "License").
a23fd118e437af0a7877dd313db8fdaa3537c675yl# You may not use this file except in compliance with the License.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
a23fd118e437af0a7877dd313db8fdaa3537c675yl# or http://www.opensolaris.org/os/licensing.
a23fd118e437af0a7877dd313db8fdaa3537c675yl# See the License for the specific language governing permissions
a23fd118e437af0a7877dd313db8fdaa3537c675yl# and limitations under the License.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# When distributing Covered Code, include this CDDL HEADER in each
a23fd118e437af0a7877dd313db8fdaa3537c675yl# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
a23fd118e437af0a7877dd313db8fdaa3537c675yl# If applicable, add the following below this CDDL HEADER, with the
a23fd118e437af0a7877dd313db8fdaa3537c675yl# fields enclosed by brackets "[]" replaced with your own identifying
a23fd118e437af0a7877dd313db8fdaa3537c675yl# information: Portions Copyright [yyyy] [name of copyright owner]
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# CDDL HEADER END
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
8347601bcb0a439f6e50fc36b4039a73d08700e1yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Use is subject to license terms.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# This makefile drives the production of the cmlb "misc"
a23fd118e437af0a7877dd313db8fdaa3537c675yl# kernel module.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# intel architecture dependent
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Path to the base of the uts directory tree (usually /usr/src/uts).
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylUTSBASE = ../..
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Define the module and object file sets.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylMODULE = cmlb
a23fd118e437af0a7877dd313db8fdaa3537c675ylOBJECTS = $(CMLB_OBJS:%=$(OBJS_DIR)/%)
a23fd118e437af0a7877dd313db8fdaa3537c675ylLINTS = $(CMLB_OBJS:%.o=$(LINTS_DIR)/%.ln)
a23fd118e437af0a7877dd313db8fdaa3537c675ylWARLOCK_OUT = $(CMLB_OBJS:%.o=%.ll)
a23fd118e437af0a7877dd313db8fdaa3537c675ylWARLOCK_OK = $(MODULE).ok
a23fd118e437af0a7877dd313db8fdaa3537c675ylROOTMODULE = $(ROOT_MISC_DIR)/$(MODULE)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Include common rules.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylinclude $(UTSBASE)/intel/Makefile.intel
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Define targets
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylALL_TARGET = $(BINARY)
a23fd118e437af0a7877dd313db8fdaa3537c675ylLINT_TARGET = $(MODULE).lint
a23fd118e437af0a7877dd313db8fdaa3537c675ylINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Overrides.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylDEBUG_FLGS =
a23fd118e437af0a7877dd313db8fdaa3537c675ylDEBUG_DEFS += $(DEBUG_FLGS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl# enable larger than 1TB VTOC support
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylCPPFLAGS += -D_EXTVTOC
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# For now, disable these lint checks; maintainers should endeavor
a23fd118e437af0a7877dd313db8fdaa3537c675yl# to investigate and remove these for maximum lint coverage.
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Please do not carry these forward to new Makefiles.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
a23fd118e437af0a7877dd313db8fdaa3537c675ylLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
a23fd118e437af0a7877dd313db8fdaa3537c675ylLINTTAGS += -erroff=E_STATIC_UNUSED
a23fd118e437af0a7877dd313db8fdaa3537c675ylLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylCERRWARN += -_gcc=-Wno-unused-label
a23fd118e437af0a7877dd313db8fdaa3537c675ylCERRWARN += -_gcc=-Wno-type-limits
a23fd118e437af0a7877dd313db8fdaa3537c675ylCERRWARN += -_gcc=-Wno-parentheses
a23fd118e437af0a7877dd313db8fdaa3537c675ylCERRWARN += -_gcc=-Wno-unused-function
a23fd118e437af0a7877dd313db8fdaa3537c675ylCERRWARN += -_gcc=-Wno-uninitialized
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Default build targets.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl.KEEP_STATE:
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yldef: $(DEF_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylall: $(ALL_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylclean: $(CLEAN_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylclobber: $(CLOBBER_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yllint: $(LINT_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylmodlintlib: $(MODLINTLIB_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylclean.lint: $(CLEAN_LINT_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675ylinstall: $(INSTALL_DEPS)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Include common targets.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylinclude $(UTSBASE)/intel/Makefile.targ
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Defines for local commands.
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylWLCC = wlcc
a23fd118e437af0a7877dd313db8fdaa3537c675ylTOUCH = touch
a23fd118e437af0a7877dd313db8fdaa3537c675ylWARLOCK = warlock
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675yl# Warlock targets
a23fd118e437af0a7877dd313db8fdaa3537c675yl#
a23fd118e437af0a7877dd313db8fdaa3537c675ylwarlock: $(WARLOCK_OK)
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl$(WARLOCK_OK): $(WARLOCK_OUT)
a23fd118e437af0a7877dd313db8fdaa3537c675yl $(TOUCH) $@
a23fd118e437af0a7877dd313db8fdaa3537c675yl
a23fd118e437af0a7877dd313db8fdaa3537c675yl%.ll: $(UTSBASE)/common/io/%.c
a23fd118e437af0a7877dd313db8fdaa3537c675yl $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
a23fd118e437af0a7877dd313db8fdaa3537c675yl