Makefile revision 89b43686db1fe9681d80a7cf5662730cb9378cae
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe#
bf52162f2d05c1fb1a107c7ef108de73f739b3edpquerna# CDDL HEADER START
4ea8055e720d18f386b8026b546e5836ecccba4arjung#
4ea8055e720d18f386b8026b546e5836ecccba4arjung# The contents of this file are subject to the terms of the
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe# Common Development and Distribution License (the "License").
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe# You may not use this file except in compliance with the License.
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe#
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe# or http://www.opensolaris.org/os/licensing.
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe# See the License for the specific language governing permissions
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe# and limitations under the License.
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe#
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# When distributing Covered Code, include this CDDL HEADER in each
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# If applicable, add the following below this CDDL HEADER, with the
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# fields enclosed by brackets "[]" replaced with your own identifying
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# information: Portions Copyright [yyyy] [name of copyright owner]
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# CDDL HEADER END
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# uts/sparc/ssd/Makefile
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# Use is subject to license terms.
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe# Copyright (c) 2011 Bayard G. Bell. All rights reserved.
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe#
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe#
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe# This makefile drives the production of the ssd driver kernel module.
433d36fd71af86369719893afe09877be4cb4f3asf#
433d36fd71af86369719893afe09877be4cb4f3asf# sparc architecture dependent
433d36fd71af86369719893afe09877be4cb4f3asf#
14e5a8cc15b1dcc26ad5420973304e53a9e5406bsf
14e5a8cc15b1dcc26ad5420973304e53a9e5406bsf#
14e5a8cc15b1dcc26ad5420973304e53a9e5406bsf# Path to the base of the uts directory tree (usually /usr/src/uts).
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawickUTSBASE = ../..
46fdfef7dfc745effe179387e1dcb8245d3804batrawick
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# Define the module and object file sets.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawickMODULE = ssd
46fdfef7dfc745effe179387e1dcb8245d3804batrawickOBJECTS = $(SSD_OBJS:%=$(OBJS_DIR)/%)
46fdfef7dfc745effe179387e1dcb8245d3804batrawickLINTS = $(SSD_OBJS:%.o=$(LINTS_DIR)/%.ln)
46fdfef7dfc745effe179387e1dcb8245d3804batrawickROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
46fdfef7dfc745effe179387e1dcb8245d3804batrawickCONF_SRCDIR = $(UTSBASE)/sun/io/scsi/targets
573f949c582f06bd738a96196f40b646b6d540b8rpluemWARLOCK_OUT = ssd.ll
573f949c582f06bd738a96196f40b646b6d540b8rpluemWARLOCK_OK = $(MODULE).ok
573f949c582f06bd738a96196f40b646b6d540b8rpluemWLCMD_DIR = $(UTSBASE)/common/io/warlock
c44902d07eab7deb803a59e959f57cf3b7d56655poirier
c44902d07eab7deb803a59e959f57cf3b7d56655poirier#
c44902d07eab7deb803a59e959f57cf3b7d56655poirier# Include common rules.
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener#
ae1981fc94adf2b231e2d0e15d2f895b2138c969covenerinclude $(UTSBASE)/sparc/Makefile.sparc
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener#
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener# Define targets
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener#
ae1981fc94adf2b231e2d0e15d2f895b2138c969covenerALL_TARGET = $(BINARY) $(SRC_CONFILE)
4ac05f9625e37cc421f4ea548422827b4de163d7niqLINT_TARGET = $(MODULE).lint
4ac05f9625e37cc421f4ea548422827b4de163d7niqINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
4ac05f9625e37cc421f4ea548422827b4de163d7niq
4ac05f9625e37cc421f4ea548422827b4de163d7niq#
4ac05f9625e37cc421f4ea548422827b4de163d7niq# lint pass one enforcement
6999a76d8eb5ef6b4b295e51df0b2fb6064bd373covener#
6999a76d8eb5ef6b4b295e51df0b2fb6064bd373covenerCFLAGS += $(CCVERBOSE) -D__fibre -dalign
6999a76d8eb5ef6b4b295e51df0b2fb6064bd373covenerLINTFLAGS += -D__fibre
ead0b57bbeaec5acb14f931b5641962f429dabc9trawickWLCCFLAGS = -D__fibre
ead0b57bbeaec5acb14f931b5641962f429dabc9trawick
ead0b57bbeaec5acb14f931b5641962f429dabc9trawick#
77d6f9d5c2a5cab805e9ace265628f3d791b937dniq# For now, disable these lint checks; maintainers should endeavor
77d6f9d5c2a5cab805e9ace265628f3d791b937dniq# to investigate and remove these for maximum lint coverage.
77d6f9d5c2a5cab805e9ace265628f3d791b937dniq# Please do not carry these forward to new Makefiles.
a9d359cdeb1cee65cdb9fab5e19ffb4846172183trawick#
77d6f9d5c2a5cab805e9ace265628f3d791b937dniqLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
9f35dd32eedd781d218a85f0315ea5526a8adc84minfrinLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
9f35dd32eedd781d218a85f0315ea5526a8adc84minfrinLINTTAGS += -erroff=E_STATIC_UNUSED
9f35dd32eedd781d218a85f0315ea5526a8adc84minfrinLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
9f35dd32eedd781d218a85f0315ea5526a8adc84minfrin
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin#
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin# Depends on scsi and cmlb
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin# fcp included for fibre support
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin#
5dc4220fc22561537ce1421a03e11846a5b719ebminfrinLDFLAGS += -dy -N misc/scsi -N misc/cmlb -N drv/fcp
bd27541a0c96caa881f17a490e23cdd220d480c8poirier
a9d359cdeb1cee65cdb9fab5e19ffb4846172183trawick#
bd27541a0c96caa881f17a490e23cdd220d480c8poirier# Default build targets.
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrin#
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrin.KEEP_STATE:
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrin
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrinall: $(ALL_DEPS)
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrin
e33d0698670fead33dbd7c907363053b9e2be454minfrindef: $(DEF_DEPS)
e33d0698670fead33dbd7c907363053b9e2be454minfrin
e33d0698670fead33dbd7c907363053b9e2be454minfrinclean: $(CLEAN_DEPS)
e33d0698670fead33dbd7c907363053b9e2be454minfrin $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
e33d0698670fead33dbd7c907363053b9e2be454minfrin
cf8a8738330694e60bad421fcc8361d80b0e9124minfrinclobber: $(CLOBBER_DEPS)
cf8a8738330694e60bad421fcc8361d80b0e9124minfrin $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
cf8a8738330694e60bad421fcc8361d80b0e9124minfrin
4ea8055e720d18f386b8026b546e5836ecccba4arjunglint: $(LINT_DEPS)
a9d359cdeb1cee65cdb9fab5e19ffb4846172183trawick
a9d359cdeb1cee65cdb9fab5e19ffb4846172183trawickmodlintlib: $(MODLINTLIB_DEPS)
4ea8055e720d18f386b8026b546e5836ecccba4arjung
f80ef15dcf58050fbfbe12b000de043f6ae6ac82pquernaclean.lint: $(CLEAN_LINT_DEPS)
f80ef15dcf58050fbfbe12b000de043f6ae6ac82pquerna
60a8830541cd85d23a42ccb1639bc4744de9d526poirierinstall: $(INSTALL_DEPS)
60a8830541cd85d23a42ccb1639bc4744de9d526poirier
60a8830541cd85d23a42ccb1639bc4744de9d526poirier#
60a8830541cd85d23a42ccb1639bc4744de9d526poirier# Include common targets.
5ae15cd9d22fb3bdfd2eb0b9761c4ef07fbf2f96minfrin#
5ae15cd9d22fb3bdfd2eb0b9761c4ef07fbf2f96minfrininclude $(UTSBASE)/sparc/Makefile.targ
5ae15cd9d22fb3bdfd2eb0b9761c4ef07fbf2f96minfrin
5ae15cd9d22fb3bdfd2eb0b9761c4ef07fbf2f96minfrinbrowser: $(BINARY)
69fc9805c344b2dd5fd49a4f75cbf55dedeac7d6minfrin
69fc9805c344b2dd5fd49a4f75cbf55dedeac7d6minfrinbrowser := CFLAGS += -xsb
69fc9805c344b2dd5fd49a4f75cbf55dedeac7d6minfrin
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawick# Defines for local commands.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick#
46fdfef7dfc745effe179387e1dcb8245d3804batrawickWARLOCK = warlock
ca0a943242b488c162aa89874498e0316f7b2f2eminfrinWLCC = wlcc
e1c6c1dac26c35ecebe158438bb0c56afbb9bfb0sfTOUCH = touch
e1c6c1dac26c35ecebe158438bb0c56afbb9bfb0sfTEST = test
dd90cc3ba2a09e7be46c9d8f5faad90edf18134fsf
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsf#
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsf# Warlock targets
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsf
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsfSCSI_FILES = $(SCSI_OBJS:%.o=-l ../scsi/%.ll)
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsfCMLB_FILES = $(CMLB_OBJS:%.o=-l ../cmlb/%.ll)
505e342aefa9fbccc857f1bc653a310e25511946sf
505e342aefa9fbccc857f1bc653a310e25511946sfwarlock: warlock_alone
505e342aefa9fbccc857f1bc653a310e25511946sf
505e342aefa9fbccc857f1bc653a310e25511946sfwarlock_alone: $(WARLOCK_OK)
26734c75baf170a492ef6a82f07b24ee1af7d0b1sf
26734c75baf170a492ef6a82f07b24ee1af7d0b1sfscsi_files:
26734c75baf170a492ef6a82f07b24ee1af7d0b1sf @cd ../scsi; pwd; $(MAKE) warlock
dda254ba84bdff5e236917af1b31693ca4360eabcovener
dda254ba84bdff5e236917af1b31693ca4360eabcovenercmlb_files:
dda254ba84bdff5e236917af1b31693ca4360eabcovener @cd ../cmlb; pwd; $(MAKE) warlock
dda254ba84bdff5e236917af1b31693ca4360eabcovener
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna$(WARLOCK_OK): $(WLCMD_DIR)/ssd.wlcmd $(WARLOCK_OUT) scsi.files cmlb_files
bf52162f2d05c1fb1a107c7ef108de73f739b3edpquerna $(WARLOCK) -c $(WLCMD_DIR)/ssd.wlcmd $(WARLOCK_OUT) \
e1d33ac481c6683a069630c8f9aceec3a48babcetrawick $(SCSI_FILES) $(CMLB_FILES) \
e1d33ac481c6683a069630c8f9aceec3a48babcetrawick -l ../warlock/ddi_dki_impl.ll
cf12a027b0859c14d5c4852efffeff62158cd98dtrawick $(TOUCH) $@
3becbd2611ffb2e8391a8eacce765b43dcb1c669wrowe
8e5e9b2d4c6cbcd21ca182fe1109d59284239515wrowessd.ll: $(UTSBASE)/common/io/scsi/targets/sd.c
3becbd2611ffb2e8391a8eacce765b43dcb1c669wrowe $(WLCC) $(CPPFLAGS) $(WLCCFLAGS) -DDEBUG -o $@ $(UTSBASE)/common/io/scsi/targets/sd.c
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsf
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsfwarlock_ddi.files:
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsf @cd ../warlock; pwd; $(MAKE) warlock
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsf
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsfscsi.files:
4be9c459920a7c1cfe62d654327dae5c4bb6b284sf @cd ../scsi; pwd; $(MAKE) warlock
4be9c459920a7c1cfe62d654327dae5c4bb6b284sf