Makefile revision 4ebb14b236958cfe1ef4ff3b7a50216d9e51f997
37bd255fd499c26aaf474f4294212951b84d9068Mark Andrews#
37bd255fd499c26aaf474f4294212951b84d9068Mark Andrews# CDDL HEADER START
37bd255fd499c26aaf474f4294212951b84d9068Mark Andrews#
7aa21a491d9468bfc29d8cc331a4e963874426dfFrancis Dupont# The contents of this file are subject to the terms of the
7aa21a491d9468bfc29d8cc331a4e963874426dfFrancis Dupont# Common Development and Distribution License (the "License").
7aa21a491d9468bfc29d8cc331a4e963874426dfFrancis Dupont# You may not use this file except in compliance with the License.
34416a7954da96c5a5f5803fe02f059cb94bf6fdMark Andrews#
34416a7954da96c5a5f5803fe02f059cb94bf6fdMark Andrews# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
34416a7954da96c5a5f5803fe02f059cb94bf6fdMark Andrews# or http://www.opensolaris.org/os/licensing.
11e9195ad15d1a3f2b4dcd79b64a6e19d89bbac3Mark Andrews# See the License for the specific language governing permissions
6100b1769956200b2815803ab7b35556396ce0d1Mark Andrews# and limitations under the License.
12a67391fd763fa67764dc993173eb0e90076503Mark Andrews#
12a67391fd763fa67764dc993173eb0e90076503Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
03152360db6fcb0fcc95fa63c20c5c829c95f1f6Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
03152360db6fcb0fcc95fa63c20c5c829c95f1f6Mark Andrews# If applicable, add the following below this CDDL HEADER, with the
03152360db6fcb0fcc95fa63c20c5c829c95f1f6Mark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
aacd7daaf7859de742ab35eac00e70676b1b9f4fEvan Hunt# information: Portions Copyright [yyyy] [name of copyright owner]
aacd7daaf7859de742ab35eac00e70676b1b9f4fEvan Hunt#
aacd7daaf7859de742ab35eac00e70676b1b9f4fEvan Hunt# CDDL HEADER END
a379c8c108de279cc4e09139c12457c1531bd122Mark Andrews#
a379c8c108de279cc4e09139c12457c1531bd122Mark Andrews#
a379c8c108de279cc4e09139c12457c1531bd122Mark Andrews# uts/sparc/hci1394/Makefile
a379c8c108de279cc4e09139c12457c1531bd122Mark Andrews#
7433a204d32673e9f6747172f202272cc5bfe27cMark Andrews# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
7433a204d32673e9f6747172f202272cc5bfe27cMark Andrews# Use is subject to license terms.
7433a204d32673e9f6747172f202272cc5bfe27cMark Andrews#
1a4725bef25e60de161f77318f362c327b690d72Mark Andrews#ident "%Z%%M% %I% %E% SMI"
1a4725bef25e60de161f77318f362c327b690d72Mark Andrews#
1a4725bef25e60de161f77318f362c327b690d72Mark Andrews# This makefile drives the production of the hci1394 OHCI HAL module.
5bb783ce9ab27c13627f6bf2dd11de4d8a2c9c7bMark Andrews#
c9ee72cb3acb4562c43333b206737ee94cbbda5eMark Andrews# sparc architecture dependent
c9ee72cb3acb4562c43333b206737ee94cbbda5eMark Andrews#
fb623f9a07857d95cf6c47db0aa81a28c3bbc5c0Mark Andrews
fb623f9a07857d95cf6c47db0aa81a28c3bbc5c0Mark Andrews#
fb623f9a07857d95cf6c47db0aa81a28c3bbc5c0Mark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
5116f25421090dffe637eb8f6cf7b44acd83678bMark Andrews#
5116f25421090dffe637eb8f6cf7b44acd83678bMark AndrewsUTSBASE = ../..
5116f25421090dffe637eb8f6cf7b44acd83678bMark Andrews
00043fc284892099b309be37340ae80893146c69Mark Andrews#
00043fc284892099b309be37340ae80893146c69Mark Andrews# Define the module and object file sets.
00043fc284892099b309be37340ae80893146c69Mark Andrews#
9fa2a0deed3b880f3bf04d4f615c13a0d67cc0ceMark AndrewsMODULE = hci1394
9fa2a0deed3b880f3bf04d4f615c13a0d67cc0ceMark AndrewsOBJECTS = $(HCI1394_OBJS:%=$(OBJS_DIR)/%)
97a2a26cd93e153dcf8fb1ea6bf2311426496251Mark AndrewsLINTS = $(HCI1394_OBJS:%.o=$(LINTS_DIR)/%.ln)
97a2a26cd93e153dcf8fb1ea6bf2311426496251Mark AndrewsROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
97a2a26cd93e153dcf8fb1ea6bf2311426496251Mark AndrewsCONF_SRCDIR = $(UTSBASE)/common/io/1394/adapters
c1b8fa61604e153d6f2c6d91acc9481446e631f2Mark AndrewsLDFLAGS += -dy -Nmisc/s1394
c1b8fa61604e153d6f2c6d91acc9481446e631f2Mark AndrewsWARLOCK_OUT = $(HCI1394_OBJS:%.o=%.ll)
c1b8fa61604e153d6f2c6d91acc9481446e631f2Mark AndrewsWARLOCK_OK = $(MODULE).ok
c7965f84c23ea9e9b8d6508e4f77d596c227ab75Evan HuntWLCMD_DIR = $(UTSBASE)/common/io/warlock
c7965f84c23ea9e9b8d6508e4f77d596c227ab75Evan Hunt
c7965f84c23ea9e9b8d6508e4f77d596c227ab75Evan Hunt#
a747113422afaa29ce72d2c5ba7f0b7ea9ec2054Evan Hunt# Include common rules.
a747113422afaa29ce72d2c5ba7f0b7ea9ec2054Evan Hunt#
a747113422afaa29ce72d2c5ba7f0b7ea9ec2054Evan Huntinclude $(UTSBASE)/sparc/Makefile.sparc
76df835d59b4715dbd3346fd65114714a42495c9Mark Andrews
76df835d59b4715dbd3346fd65114714a42495c9Mark Andrews#
76df835d59b4715dbd3346fd65114714a42495c9Mark Andrews# Define targets
18df9e628ea10c7d607f43fcfd935e7924731f24Evan Hunt#
54a00ea5ca94ff9e3a4204aea78639ba781d5865Mark AndrewsALL_TARGET = $(BINARY) $(SRC_CONFILE)
18df9e628ea10c7d607f43fcfd935e7924731f24Evan HuntLINT_TARGET = $(MODULE).lint
cb69994ff89179166d5e21ccc7a34223b51676c0Mark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
cb69994ff89179166d5e21ccc7a34223b51676c0Mark Andrews
cb69994ff89179166d5e21ccc7a34223b51676c0Mark Andrews#
3ad8f24ddd043148525b68a676ebdc71f6900ca9Mark Andrews# Overrides
3ad8f24ddd043148525b68a676ebdc71f6900ca9Mark Andrews#
3ad8f24ddd043148525b68a676ebdc71f6900ca9Mark AndrewsALL_BUILDS = $(ALL_BUILDSONLY64)
2bae76022cbdf8a207d4c3982b589156e1a09e09Evan HuntDEF_BUILDS = $(DEF_BUILDSONLY64)
2bae76022cbdf8a207d4c3982b589156e1a09e09Evan HuntCLEANLINTFILES += $(LINT32_FILES)
0c91911b4d1e872b87eaf6431ed47fe24d18dd43Mark Andrews
0c91911b4d1e872b87eaf6431ed47fe24d18dd43Mark AndrewsDEBUG_DEFS_DBG32 += -DTNF_DEBUG
2634686b14ccdf0aa18a6d346628d03ce3e3d0b4Mark AndrewsDEBUG_DEFS_DBG64 += -DTNF_DEBUG
54a00ea5ca94ff9e3a4204aea78639ba781d5865Mark Andrews
b5f4cc132e91afb1217f4aa79424793c0e11c09aMark Andrews#
b5f4cc132e91afb1217f4aa79424793c0e11c09aMark Andrews# lint pass one enforcement
54a00ea5ca94ff9e3a4204aea78639ba781d5865Mark Andrews#
8afea636ab0c07399aa3e2410b2cfbd41099df98Mark AndrewsCFLAGS += $(CCVERBOSE)
8afea636ab0c07399aa3e2410b2cfbd41099df98Mark Andrews
8afea636ab0c07399aa3e2410b2cfbd41099df98Mark Andrews#
8afea636ab0c07399aa3e2410b2cfbd41099df98Mark Andrews# For now, disable these lint checks; maintainers should endeavor
d6f99498d624d5c5c8ee45067df02e6a6b35a1a3Mark Andrews# to investigate and remove these for maximum lint coverage.
d6f99498d624d5c5c8ee45067df02e6a6b35a1a3Mark Andrews# Please do not carry these forward to new Makefiles.
d6f99498d624d5c5c8ee45067df02e6a6b35a1a3Mark Andrews#
54a00ea5ca94ff9e3a4204aea78639ba781d5865Mark AndrewsLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
c4348cb50f039f0785bd1d6f6a37c0a85d15c1f4Curtis BlackburnLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
c4348cb50f039f0785bd1d6f6a37c0a85d15c1f4Curtis BlackburnLINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
997c2c5116927bab77284c24c3bd0d7f646da5eeMark AndrewsLINTTAGS += -erroff=E_STATIC_UNUSED
997c2c5116927bab77284c24c3bd0d7f646da5eeMark AndrewsLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
997c2c5116927bab77284c24c3bd0d7f646da5eeMark AndrewsLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
e548e07a9a2f1ec64774d7ae872d530eaf270eb7Mark Andrews
e548e07a9a2f1ec64774d7ae872d530eaf270eb7Mark Andrews#
e548e07a9a2f1ec64774d7ae872d530eaf270eb7Mark Andrews# Default build targets.
d1e22676de16e6dee54c58b27cca11c5fb8f1ff5Mark Andrews#
fdc41dd109fba6b95a4ed7355210118ad9fe5e90Jeremy C. Reed.KEEP_STATE:
d1e22676de16e6dee54c58b27cca11c5fb8f1ff5Mark Andrews
0e1dfb8ff5ac2cf1215691ffc32d7a0b76709721Mark Andrewsdef: $(DEF_DEPS)
0e1dfb8ff5ac2cf1215691ffc32d7a0b76709721Mark Andrews
0e1dfb8ff5ac2cf1215691ffc32d7a0b76709721Mark Andrewsall: $(ALL_DEPS)
8e091f3d3ee0079f35dfccdc4479105e8f087ab2Mark Andrews
8e091f3d3ee0079f35dfccdc4479105e8f087ab2Mark Andrewsclean: $(CLEAN_DEPS)
8e091f3d3ee0079f35dfccdc4479105e8f087ab2Mark Andrews $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
7ace3277956c49f7554b7130ef761bde3b35db30Mark Andrews
7ace3277956c49f7554b7130ef761bde3b35db30Mark Andrewsclobber: $(CLOBBER_DEPS)
7ace3277956c49f7554b7130ef761bde3b35db30Mark Andrews $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
06ace051e7522b153b487581c9439fc8c162fb18Mark Andrews
06ace051e7522b153b487581c9439fc8c162fb18Mark Andrewslint: $(LINT_DEPS)
06ace051e7522b153b487581c9439fc8c162fb18Mark Andrews
5d4343a9988cd5bd057aa385bb8c5e72d41202d1Evan Huntmodlintlib: $(MODLINTLIB_DEPS) lint32
5d4343a9988cd5bd057aa385bb8c5e72d41202d1Evan Hunt
75ae74f8fd0847817bce2db7c868b179db67f019Mark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
75ae74f8fd0847817bce2db7c868b179db67f019Mark Andrews
75ae74f8fd0847817bce2db7c868b179db67f019Mark Andrewsinstall: $(INSTALL_DEPS)
75ae74f8fd0847817bce2db7c868b179db67f019Mark Andrews
16bd30ae6987cd4ba4fe3b873e72abf5b7178c26Mark Andrews#
16bd30ae6987cd4ba4fe3b873e72abf5b7178c26Mark Andrews# Include common targets.
16bd30ae6987cd4ba4fe3b873e72abf5b7178c26Mark Andrews#
df0892aea6bfd20a01c3abf2b756625d23830390Mark Andrewsinclude $(UTSBASE)/sparc/Makefile.targ
df0892aea6bfd20a01c3abf2b756625d23830390Mark Andrews
a499dddb4b4d4db2bb6ced82b5ee7a459e23603eEvan Hunt#
a499dddb4b4d4db2bb6ced82b5ee7a459e23603eEvan Hunt# Defines for local commands.
f45f6541857a5dbb93ac24f321b9cf350ce242baMark Andrews#
f45f6541857a5dbb93ac24f321b9cf350ce242baMark AndrewsWARLOCK = warlock
f45f6541857a5dbb93ac24f321b9cf350ce242baMark AndrewsWLCC = wlcc
673a2bb07b9e54a32699a9d7ca916dc5114d8d45Mark AndrewsTOUCH = touch
673a2bb07b9e54a32699a9d7ca916dc5114d8d45Mark AndrewsSCCS = sccs
673a2bb07b9e54a32699a9d7ca916dc5114d8d45Mark AndrewsTEST = test
e3c273a865bede10bfb1e0f29d300706cae3e00dMark Andrews
e3c273a865bede10bfb1e0f29d300706cae3e00dMark Andrews#
d640b4a0ab9dec252749793f78a1ed1e8551ea19Evan Hunt# Warlock targets
d640b4a0ab9dec252749793f78a1ed1e8551ea19Evan Hunt#
d640b4a0ab9dec252749793f78a1ed1e8551ea19Evan HuntS1394_FILES = $(S1394_OBJS:%.o= -l ../s1394/%.ll)
fdb4ae8f6c00d8ea03bde929bd4e47056972017dMark Andrews
fdb4ae8f6c00d8ea03bde929bd4e47056972017dMark Andrewswarlock: $(WARLOCK_OK)
fdb4ae8f6c00d8ea03bde929bd4e47056972017dMark Andrews
fdb4ae8f6c00d8ea03bde929bd4e47056972017dMark Andrews%.wlcmd:
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt cd $(WLCMD_DIR); $(TEST) -f $@ || $(SCCS) get $@
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt$(WARLOCK_OK): $(WARLOCK_OUT) s1394.files warlock_ddi.files hci1394.wlcmd
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt $(WARLOCK) -c $(WLCMD_DIR)/hci1394.wlcmd \
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt $(WARLOCK_OUT) $(S1394_FILES) \
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt -l ../warlock/ddi_dki_impl.ll
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt $(TOUCH) $@
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt
421d4a06479e61fbdc35087f3c4abc9fe65ad72aEvan Hunt%.ll: $(UTSBASE)/common/io/1394/adapters/%.c
0949306cb96f9ccbb7d0205584ed2db293a5aad2Evan Hunt $(WLCC) $(CPPFLAGS) -DNPROBE -DDEBUG -o $@ $<
0949306cb96f9ccbb7d0205584ed2db293a5aad2Evan Hunt
0949306cb96f9ccbb7d0205584ed2db293a5aad2Evan Huntwarlock_ddi.files:
0949306cb96f9ccbb7d0205584ed2db293a5aad2Evan Hunt @cd ../warlock; pwd; $(MAKE) warlock
964bdcd7add44e5bc87e1d44f2f4ece351b28eedEvan Hunt
964bdcd7add44e5bc87e1d44f2f4ece351b28eedEvan Hunts1394.files:
964bdcd7add44e5bc87e1d44f2f4ece351b28eedEvan Hunt @cd ../s1394; pwd; $(MAKE) warlock
cf0a69e999430722e3c3942929eeb304b658dfb0Evan Hunt
cf0a69e999430722e3c3942929eeb304b658dfb0Evan Hunt