Makefile revision 1c42de6d020629af774dd9e9fc81be3f3ed9398e
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# CDDL HEADER START
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# The contents of this file are subject to the terms of the
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# Common Development and Distribution License (the "License").
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# You may not use this file except in compliance with the License.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# or http://www.opensolaris.org/os/licensing.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# See the License for the specific language governing permissions
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# and limitations under the License.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# When distributing Covered Code, include this CDDL HEADER in each
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# If applicable, add the following below this CDDL HEADER, with the
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# fields enclosed by brackets "[]" replaced with your own identifying
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# information: Portions Copyright [yyyy] [name of copyright owner]
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# CDDL HEADER END
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# Use is subject to license terms.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# ident "%Z%%M% %I% %E% SMI"
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen
cb241c1aa2096e51864b45398cc15850b0ce4d8cjamiebowen# This makefile drives the production of the i2bsc nexus driver.
cb241c1aa2096e51864b45398cc15850b0ce4d8cjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# Path to the base of the uts directory tree (usually /usr/src/uts).
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowenUTSBASE = ../..
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# Define the module and object file sets.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowenMODULE = i2bsc
cb241c1aa2096e51864b45398cc15850b0ce4d8cjamiebowenOBJECTS = $(I2BSC_OBJS:%=$(OBJS_DIR)/%)
cb241c1aa2096e51864b45398cc15850b0ce4d8cjamiebowenLINTS = $(I2BSC_OBJS:%.o=$(LINTS_DIR)/%.ln)
cb241c1aa2096e51864b45398cc15850b0ce4d8cjamiebowenROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE)
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowenCONF_SRCDIR = $(UTSBASE)/sun4u/io/i2c/nexus
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen# Include common rules.
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen#
cb241c1aa2096e51864b45398cc15850b0ce4d8cjamieboweninclude $(UTSBASE)/sun4u/Makefile.sun4u
3e7992560027364f56fb4fb0ef645623bd020c3bjamiebowen
#
# lint pass one enforcement
#
CFLAGS += $(CCVERBOSE) -I$(UTSBASE)/sun4u
LDFLAGS += -dy -N misc/i2c_svc
#
# Define targets
#
ALL_TARGET = $(BINARY)
LINT_TARGET = $(MODULE).lint
INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
#
# For now, disable these lint checks; maintainers should endeavor
# to investigate and remove these for maximum lint coverage.
# Please do not carry these forward to new Makefiles.
#
LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
.KEEP_STATE:
def: $(DEF_DEPS)
all: $(ALL_DEPS)
clean: $(CLEAN_DEPS)
clobber: $(CLOBBER_DEPS)
lint: $(LINT_DEPS)
modlintlib: $(MODLINTLIB_DEPS)
clean.lint: $(CLEAN_LINT_DEPS)
install: $(INSTALL_DEPS)
#
# Defines for local commands.
#
WLCC = wlcc
TOUCH = touch
WARLOCK = warlock
#
# Warlock targets
#
I2BSC = $(I2BSC_OBJS:%.o=%.ll)
warlock: $(MODULE).ok
%.ok: $(I2BSC_FILES)
$(TOUCH) $@
%.ll: $(UTSBASE)/sun4u/io/i2c/nexus/i2bsc/%.c
$(WLCC) $(CFLAGS) $(CPPFLAGS) -DDEBUG -o $@ $<
#
# Include common targets
#
include $(UTSBASE)/sun4u/Makefile.targ