Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
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 2008 Sun Microsystems, Inc. All rights reserved.
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews# Use is subject to license terms.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# This makefile drives the production of the ehci driver kernel module.
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark AndrewsUTSBASE = ../..
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Define the module and object file sets.
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsMODULE = ehci
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserOBJECTS = $(EHCI_OBJS:%=$(OBJS_DIR)/%)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLINTS = $(EHCI_OBJS:%.o=$(LINTS_DIR)/%.ln)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsCONF_SRCDIR = $(UTSBASE)/common/io/usb/hcd/ehci
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox UserWARLOCK_OUT = $(EHCI_OBJS:%.o=%.ll)
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark AndrewsWARLOCK_OK = $(MODULE).ok
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntWLCMD_DIR = $(UTSBASE)/common/io/warlock
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox User#
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt# Include common rules.
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
16f6050f29b6b0422cee858e609f65e474e70ef2Tinderbox Userinclude $(UTSBASE)/intel/Makefile.intel
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntCERRWARN += -_gcc=-Wno-uninitialized
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox UserCERRWARN += -_gcc=-Wno-switch
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox User
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User# depends on misc/usba
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterLDFLAGS += -dy -Nmisc/usba
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater# Define targets
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsALL_TARGET = $(BINARY)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsALL_TARGET = $(BINARY) $(SRC_CONFFILE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLINT_TARGET = $(MODULE).lint
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
16f6050f29b6b0422cee858e609f65e474e70ef2Tinderbox User# Default build targets.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater.KEEP_STATE:
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrewsdef: $(DEF_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsall: $(ALL_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsclean: $(CLEAN_DEPS)
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
2ae159b376dac23870d8005563c585acf85a4b5aEvan Huntclobber: $(CLOBBER_DEPS)
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
95637507c3d47481fbf0a8a8c750a57f944f677fMark Andrews
2ae159b376dac23870d8005563c585acf85a4b5aEvan Huntlint: $(LINT_DEPS)
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
2ae159b376dac23870d8005563c585acf85a4b5aEvan Huntmodlintlib: $(MODLINTLIB_DEPS)
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
2ae159b376dac23870d8005563c585acf85a4b5aEvan Huntclean.lint: $(CLEAN_LINT_DEPS)
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
2ae159b376dac23870d8005563c585acf85a4b5aEvan Huntinstall: $(INSTALL_DEPS)
7cc0a5d21ef046bfd630c4769943d896a7d7472cTinderbox User
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Include common targets.
950d203b64f512b85fcc093ee1e9e3e531a1aea3Tinderbox User#
27739dd25026283c24645c8a1044b95ef9eb5ac6Tinderbox Userinclude $(UTSBASE)/intel/Makefile.targ
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox User#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Defines for local commands.
7a6494cfb6cc7d3f67af07359561e05e6bb8c0edTinderbox User#
0e573cdd111e060e5f6c18249b5ccacbe8abe278Tinderbox UserWARLOCK = warlock
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsWLCC = wlcc
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox UserTOUCH = touch
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsTEST = test
7a6494cfb6cc7d3f67af07359561e05e6bb8c0edTinderbox User
77932ac533c711eca5cd86de4e7eca8d91102b43Tinderbox User#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# lock_lint rules
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonUSBA_FILES = $(USBA_OBJS:%.o= -l ../usba/%.ll)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewswarlock: $(WARLOCK_OK)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews$(WARLOCK_OK): $(WARLOCK_OUT) $(WLCMD_DIR)/ehci.wlcmd warlock_ddi.files \
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User usba.files
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews $(WARLOCK) -c $(WLCMD_DIR)/ehci.wlcmd $(WARLOCK_OUT) \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $(USBA_FILES) \
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User -l ../warlock/ddi_dki_impl.ll
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $(TOUCH) $@
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson%.ll: $(UTSBASE)/common/io/usb/hcd/ehci/%.c
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox Userwarlock_ddi.files:
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @cd ../warlock; pwd; $(MAKE) warlock
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafssonusba.files:
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User @cd ../usba; pwd; $(MAKE) warlock
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews