Makefile revision 4ebb14b236958cfe1ef4ff3b7a50216d9e51f997
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User#
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater# CDDL HEADER START
c78c39caab4cf8b5daefc9c65878f7f5ed3eb7a0Tinderbox User#
f536382c59dd492a14667b753816d920f9981f1cTinderbox User# The contents of this file are subject to the terms of the
ab496cc3df1648e9ad992a87c35c2c0870fdc69dTinderbox User# Common Development and Distribution License (the "License").
7c1468ed500356839a4a222517364e6ce18cb1a2Tinderbox User# You may not use this file except in compliance with the License.
c57668a2fbbe558c1bd21652813616f2f517c469Tinderbox User#
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
1f4c645185bd8fc70048e0a69eee46193a284e5cTinderbox User# or http://www.opensolaris.org/os/licensing.
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews# See the License for the specific language governing permissions
8de3f14f1c300c3e1ed99084cc03485b42c92bf1Tinderbox User# and limitations under the License.
950d203b64f512b85fcc093ee1e9e3e531a1aea3Tinderbox User#
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# When distributing Covered Code, include this CDDL HEADER in each
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# If applicable, add the following below this CDDL HEADER, with the
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews#
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews# CDDL HEADER END
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# Use is subject to license terms.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# uts/intel/usb_ac/Makefile
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# This makefile drives the production of the usb_ac driver
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# kernel module. Intel architecture dependent
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#ident "%Z%%M% %I% %E% SMI"
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# Path to the base of the uts directory tree (usually /usr/src/uts).
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserUTSBASE = ../..
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Define the module and object file sets.
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsMODULE = usb_ac
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox UserOBJECTS = $(USB_AC_OBJS:%=$(OBJS_DIR)/%)
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark AndrewsLINTS = $(USB_AC_OBJS:%.o=$(LINTS_DIR)/%.ln)
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox UserCONF_SRCDIR = $(UTSBASE)/common/io/usb/clients/audio/usb_ac
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox UserWARLOCK_OUT = $(USB_AC_OBJS:%.o=%.ll) usb_ac_dacf.ll
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntWARLOCK_OK = $(MODULE).ok
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterWLCMD_DIR = $(UTSBASE)/common/io/warlock
16f6050f29b6b0422cee858e609f65e474e70ef2Tinderbox User
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt# Include common rules.
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User#
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox Userinclude $(UTSBASE)/intel/Makefile.intel
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# Define targets
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterALL_TARGET = $(BINARY) $(SRC_CONFILE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLINT_TARGET = $(MODULE).lint
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic UpdaterINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Override defaults to build a unique, local modstubs.o.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterMODSTUBS_DIR = $(OBJS_DIR)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsCLEANFILES += $(MODSTUBS_O)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
16f6050f29b6b0422cee858e609f65e474e70ef2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# depends on misc/usba
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLDFLAGS += -dy -Nmisc/usba -Nmisc/audiosup -Nmisc/mixer
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# For now, disable these lint checks; maintainers should endeavor
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# to investigate and remove these for maximum lint coverage.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Please do not carry these forward to new Makefiles.
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User#
2ae159b376dac23870d8005563c585acf85a4b5aEvan HuntLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
2ae159b376dac23870d8005563c585acf85a4b5aEvan HuntLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
2ae159b376dac23870d8005563c585acf85a4b5aEvan HuntLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
95637507c3d47481fbf0a8a8c750a57f944f677fMark AndrewsLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt#
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt# Default build targets.
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt#
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt.KEEP_STATE:
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
2ae159b376dac23870d8005563c585acf85a4b5aEvan Huntdef: $(DEF_DEPS)
7cc0a5d21ef046bfd630c4769943d896a7d7472cTinderbox User
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrewsall: $(ALL_DEPS)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
950d203b64f512b85fcc093ee1e9e3e531a1aea3Tinderbox Userclean: $(CLEAN_DEPS)
27739dd25026283c24645c8a1044b95ef9eb5ac6Tinderbox User $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox Userclobber: $(CLOBBER_DEPS)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
7a6494cfb6cc7d3f67af07359561e05e6bb8c0edTinderbox User
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox Userlint: $(LINT_DEPS)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox Usermodlintlib: $(MODLINTLIB_DEPS)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
7a6494cfb6cc7d3f67af07359561e05e6bb8c0edTinderbox Userclean.lint: $(CLEAN_LINT_DEPS)
77932ac533c711eca5cd86de4e7eca8d91102b43Tinderbox User
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewsinstall: $(INSTALL_DEPS)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# Include common targets.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox Userinclude $(UTSBASE)/intel/Makefile.targ
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews# Defines for local commands.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserWARLOCK = warlock
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsWLCC = wlcc
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserTOUCH = touch
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonSCCS = sccs
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserTEST = test
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# lock_lint rules
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonUSBA_FILES = $(USBA_OBJS:%.o=../usba/%.ll)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserUHCI_FILES = $(UHCI_OBJS:%.o=../uhci/%.ll)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsOHCI_FILES = $(OHCI_OBJS:%.o=../ohci/%.ll)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserEHCI_FILES = $(EHCI_OBJS:%.o=../ehci/%.ll)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsMIXER_FILES = $(MIXER_OBJS:%.o=../mixer/%.ll)
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark AndrewsAUDIO_SUP_FILES = $(AUDIO_SUP_OBJS:%.o=../audiosup/%.ll)
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark AndrewsAMSRC2_FILES = $(AMSRC2_OBJS:%.o=$(UTSBASE)/intel/amsrc2/%.ll)
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox User#
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews# Warlock targets
fd972434c29fc1169d66594e4cc7697d33036c2bTinderbox User#
37d8e0a4455876fe1e4cca511076cc2c5ab9eedeTinderbox User%.wlcmd:
37d8e0a4455876fe1e4cca511076cc2c5ab9eedeTinderbox User cd $(WLCMD_DIR); $(TEST) -f $@ || $(SCCS) get $@
fd972434c29fc1169d66594e4cc7697d33036c2bTinderbox User
2a31bd531072824ef252c18303859d6af7451b00Francis Dupontwarlock: $(WARLOCK_OK)
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews$(WARLOCK_OK): $(WARLOCK_OUT) warlock_ddi.files \
2a31bd531072824ef252c18303859d6af7451b00Francis Dupont warlock_audiosup.files warlock_mixer.files \
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews warlock_standalone warlock_with_usba warlock_with_sada
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews $(TOUCH) $(WARLOCK_OK)
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewswarlock_with_sada: usb_ac_with_sada.wlcmd \
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews $(WARLOCK_OUT) \
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews warlock_audiosup.files warlock_mixer.files warlock_amsrc2.files
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews $(WARLOCK) -c $(WLCMD_DIR)/usb_ac_with_sada.wlcmd $(WARLOCK_OUT) \
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews $(MIXER_FILES) $(AUDIO_SUP_FILES) $(AMSRC2_FILES) \
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews -l ../warlock/ddi_dki_impl.ll
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrewswarlock_with_usba: usb_ac_with_usba.wlcmd $(WARLOCK_OUT) \
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews warlock_ddi.files warlock_usba.files warlock_ohci.files \
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User warlock_ehci.files warlock_uhci.files
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews $(WARLOCK) -c $(WLCMD_DIR)/usb_ac_with_usba.wlcmd \
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews $(USBA_FILES) $(OHCI_FILES) $(EHCI_FILES) $(UHCI_FILES) \
e20788e1216ed720aefa84f3295f7899d9f28c22Mark Andrews $(WARLOCK_OUT) -l ../warlock/ddi_dki_impl.ll
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrewswarlock_standalone: $(WARLOCK_OUT) warlock_ddi.files usb_ac.wlcmd
01a5c5503482fb3ba52088bf0178a7213273bf96Mark Andrews $(WARLOCK) -c $(WLCMD_DIR)/usb_ac.wlcmd $(WARLOCK_OUT) \
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User -l ../warlock/ddi_dki_impl.ll
37d8e0a4455876fe1e4cca511076cc2c5ab9eedeTinderbox User
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User%.ll: $(UTSBASE)/common/io/usb/clients/audio/usb_ac/%.c
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox Userwarlock_usba.files:
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @cd ../usba;pwd; $(MAKE) warlock
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
fe80a4909bf62b602feaf246866e9d29f7654194Automatic Updaterwarlock_ohci.files:
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User @cd ../ohci;pwd; $(MAKE) warlock
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox Userwarlock_uhci.files:
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @cd ../uhci;pwd; $(MAKE) warlock
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
fa0326cc2cf428f67575b6ba3b97b528a31b0010Tinderbox Userwarlock_ehci.files:
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User @cd ../ehci;pwd; $(MAKE) warlock
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox Userwarlock_ddi.files:
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @cd ../warlock; pwd; $(MAKE) warlock
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
fe80a4909bf62b602feaf246866e9d29f7654194Automatic Updaterwarlock_audiosup.files:
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User @cd ../audiosup; pwd; $(MAKE) warlock
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox Userwarlock_mixer.files:
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @cd ../mixer; pwd; $(MAKE) warlock
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafssonwarlock_amsrc2.files:
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User @cd ../amsrc2; pwd; $(MAKE) warlock
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews