Makefile revision bf56214c0556fa6864189c826d39dbe156bb22a0
9725N/A#
9725N/A# CDDL HEADER START
9725N/A#
9725N/A# The contents of this file are subject to the terms of the
9725N/A# Common Development and Distribution License (the "License").
9725N/A# You may not use this file except in compliance with the License.
9725N/A#
9725N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9725N/A# or http://www.opensolaris.org/os/licensing.
9725N/A# See the License for the specific language governing permissions
9725N/A# and limitations under the License.
9725N/A#
9725N/A# When distributing Covered Code, include this CDDL HEADER in each
9725N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9725N/A# If applicable, add the following below this CDDL HEADER, with the
9725N/A# fields enclosed by brackets "[]" replaced with your own identifying
9725N/A# information: Portions Copyright [yyyy] [name of copyright owner]
9725N/A#
9725N/A# CDDL HEADER END
9725N/A#
9725N/A#
9725N/A# uts/sparc/ssd/Makefile
9725N/A#
9725N/A# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
9725N/A# Use is subject to license terms.
9725N/A#
9725N/A#ident "%Z%%M% %I% %E% SMI"
9725N/A
9725N/A#
9725N/A# This makefile drives the production of the ssd driver kernel module.
9725N/A#
9725N/A# sparc architecture dependent
9725N/A#
9725N/A
9725N/A#
9725N/A# Path to the base of the uts directory tree (usually /usr/src/uts).
9725N/A#
9725N/AUTSBASE = ../..
9725N/A
9725N/A#
9725N/A# Define the module and object file sets.
9725N/A#
9725N/AMODULE = ssd
9725N/AOBJECTS = $(SSD_OBJS:%=$(OBJS_DIR)/%)
9725N/ALINTS = $(SSD_OBJS:%.o=$(LINTS_DIR)/%.ln)
9725N/AROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
9725N/ACONF_SRCDIR = $(UTSBASE)/sun/io/scsi/targets
9725N/AWARLOCK_OUT = ssd.ll
9725N/AWARLOCK_OK = $(MODULE).ok
9725N/AWLCMD_DIR = $(UTSBASE)/common/io/warlock
9725N/A
9725N/A#
9725N/A# Include common rules.
9725N/A#
9725N/Ainclude $(UTSBASE)/sparc/Makefile.sparc
9725N/A
9725N/A#
9725N/A# Define targets
9725N/A#
9725N/AALL_TARGET = $(BINARY) $(SRC_CONFILE)
9725N/ALINT_TARGET = $(MODULE).lint
9725N/AINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
9725N/A
9725N/A#
9725N/A# lint pass one enforcement
9725N/A#
9728N/ACFLAGS += $(CCVERBOSE) -D__fibre -dalign
9725N/ALINTFLAGS += -D__fibre
9725N/AWLCCFLAGS = -D__fibre
9725N/A
9725N/A#
9725N/A# For now, disable these lint checks; maintainers should endeavor
9725N/A# to investigate and remove these for maximum lint coverage.
9725N/A# Please do not carry these forward to new Makefiles.
9725N/A#
9725N/ALINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
9725N/ALINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
9725N/ALINTTAGS += -erroff=E_STATIC_UNUSED
9725N/ALINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
9725N/A
9725N/A#
9725N/A# Default build targets.
9725N/A#
9725N/A.KEEP_STATE:
9725N/A
9725N/Aall: $(ALL_DEPS)
9725N/A
9725N/Adef: $(DEF_DEPS)
9725N/A
9725N/Aclean: $(CLEAN_DEPS)
9725N/A $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
9725N/A
9725N/Aclobber: $(CLOBBER_DEPS)
9725N/A $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
9725N/A
9725N/Alint: $(LINT_DEPS)
9725N/A
9725N/Amodlintlib: $(MODLINTLIB_DEPS)
9725N/A
9725N/Aclean.lint: $(CLEAN_LINT_DEPS)
9725N/A
9725N/Ainstall: $(INSTALL_DEPS)
9725N/A
9725N/A#
9725N/A# Include common targets.
9725N/A#
9725N/Ainclude $(UTSBASE)/sparc/Makefile.targ
9725N/A
9725N/Abrowser: $(BINARY)
9725N/A
9725N/Abrowser := CFLAGS += -xsb
9725N/A
9725N/A#
9725N/A# Defines for local commands.
9725N/A#
9725N/AWARLOCK = warlock
9725N/AWLCC = wlcc
9725N/ATOUCH = touch
9725N/ATEST = test
9725N/A
9725N/A#
9725N/A# Warlock targets
9725N/A
9725N/ASCSI_FILES = $(SCSI_OBJS:%.o=-l ../scsi/%.ll)
9725N/ACMLB_FILES = $(CMLB_OBJS:%.o=-l ../cmlb/%.ll)
9725N/A
9725N/Awarlock: warlock_alone
9725N/A
9725N/Awarlock_alone: $(WARLOCK_OK)
9725N/A
9725N/Ascsi_files:
9725N/A @cd ../scsi; pwd; $(MAKE) warlock
9725N/A
9725N/Acmlb_files:
9725N/A @cd ../cmlb; pwd; $(MAKE) warlock
9725N/A
9725N/A$(WARLOCK_OK): $(WLCMD_DIR)/ssd.wlcmd $(WARLOCK_OUT) scsi.files cmlb_files
9725N/A $(WARLOCK) -c $(WLCMD_DIR)/ssd.wlcmd $(WARLOCK_OUT) \
9725N/A $(SCSI_FILES) $(CMLB_FILES) \
9725N/A -l ../warlock/ddi_dki_impl.ll
9725N/A $(TOUCH) $@
9725N/A
9725N/Assd.ll: $(UTSBASE)/common/io/scsi/targets/sd.c
9725N/A $(WLCC) $(CPPFLAGS) $(WLCCFLAGS) -DDEBUG -o $@ $(UTSBASE)/common/io/scsi/targets/sd.c
9725N/A
warlock_ddi.files:
@cd ../warlock; pwd; $(MAKE) warlock
scsi.files:
@cd ../scsi; pwd; $(MAKE) warlock