Makefile revision d29f5a711240f866521445b1656d114da090335e
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# CDDL HEADER START
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# The contents of this file are subject to the terms of the
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# Common Development and Distribution License (the "License").
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# You may not use this file except in compliance with the License.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# or http://www.opensolaris.org/os/licensing.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# See the License for the specific language governing permissions
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# and limitations under the License.
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse# When distributing Covered Code, include this CDDL HEADER in each
bc8fd1b0b1afdf89b8d28eefa8cd74e26ba97986fielding# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse# If applicable, add the following below this CDDL HEADER, with the
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# fields enclosed by brackets "[]" replaced with your own identifying
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# information: Portions Copyright [yyyy] [name of copyright owner]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# CDDL HEADER END
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# Use is subject to license terms.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse# This makefile drives the production of the ugen driver
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# kernel module. intel architecture dependent
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse# Path to the base of the uts directory tree (usually /usr/src/uts).
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseUTSBASE = ../..
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse# Define the module and object file sets.
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseMODULE = ugen
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseOBJECTS = $(UGEN_OBJS:%=$(OBJS_DIR)/%)
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseLINTS = $(UGEN_OBJS:%.o=$(LINTS_DIR)/%.ln)
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseWARLOCK_OUT = $(UGEN_OBJS:%.o=%.ll)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseWARLOCK_OK = $(MODULE).ok
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseWLCMD_DIR = $(UTSBASE)/common/io/warlock
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse# Include common rules.
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseinclude $(UTSBASE)/intel/Makefile.intel
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse# Define targets
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rse#
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseALL_TARGET = $(BINARY)
d86ef5503dcbc38e87c0e03cd3e1f16458cb6323rseLINT_TARGET = $(MODULE).lint
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# depends on misc/usba misc/scsi
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseLDFLAGS += -dy -Nmisc/usba
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
60c1c6006c048e5009ae91fa2ba4cd35e5f78e10rse#
60c1c6006c048e5009ae91fa2ba4cd35e5f78e10rse# Default build targets.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
a943533fd4d91d114af622731a405407990c4fb1rse.KEEP_STATE:
a943533fd4d91d114af622731a405407990c4fb1rse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrsedef: $(DEF_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseall: $(ALL_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseclean: $(CLEAN_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseclobber: $(CLOBBER_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrselint: $(LINT_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrsemodlintlib: $(MODLINTLIB_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseclean.lint: $(CLEAN_LINT_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseinstall: $(INSTALL_DEPS)
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# Include common targets.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseinclude $(UTSBASE)/intel/Makefile.targ
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse# Defines for local commands.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse#
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseWARLOCK = warlock
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseWLCC = wlcc
a943533fd4d91d114af622731a405407990c4fb1rseTOUCH = touch
a943533fd4d91d114af622731a405407990c4fb1rseTEST = test
a943533fd4d91d114af622731a405407990c4fb1rse
a943533fd4d91d114af622731a405407990c4fb1rse#
a943533fd4d91d114af622731a405407990c4fb1rse# lock_lint rules
a943533fd4d91d114af622731a405407990c4fb1rse#
22889d69e2b1dc1197419786bc1294498e124803wroweUSBA_FILES = $(USBA_OBJS:%.o=../usba/%.ll)
2b206c2066dcdc042661ea9a07802f344e852808rbbUHCI_FILES = $(UHCI_OBJS:%.o=../uhci/%.ll)
a943533fd4d91d114af622731a405407990c4fb1rseOHCI_FILES = $(OHCI_OBJS:%.o=../ohci/%.ll)
a943533fd4d91d114af622731a405407990c4fb1rseEHCI_FILES = $(EHCI_OBJS:%.o=../ehci/%.ll)
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse
d1bb6e2664788e0437acc18e877562c9a796d7cersewarlock: $(WARLOCK_OK) warlock_with_usba
7933d4a963def02417113b6798d87a36395053b0rse
a943533fd4d91d114af622731a405407990c4fb1rse$(WARLOCK_OK): $(WARLOCK_OUT) $(WLCMD_DIR)/ugen.wlcmd warlock_ddi.files
ab2053f3cdda69cfa5e4ce0800ea7af203cc6d5ddougm $(WARLOCK) -c $(WLCMD_DIR)/ugen.wlcmd $(WARLOCK_OUT) \
ab2053f3cdda69cfa5e4ce0800ea7af203cc6d5ddougm -l ../warlock/ddi_dki_impl.ll
9603c496d9e1dbc213141ca64378df5fa45a9aa4dougm $(TOUCH) $@
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe%.ll: $(UTSBASE)/common/io/usb/clients/ugen/%.c \
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe $(UTSBASE)/common/sys/usb/clients/ugen/ugend.h
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowewarlock_with_usba: $(WLCMD_DIR)/ugen_with_usba.wlcmd $(WARLOCK_OUT) usba_files \
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe ohci_files ehci_files uhci_files warlock_ddi.files
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe $(WARLOCK) -c $(WLCMD_DIR)/ugen_with_usba.wlcmd \
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe $(USBA_FILES) $(OHCI_FILES) $(EHCI_FILES) $(UHCI_FILES) \
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe $(WARLOCK_OUT) \
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe -l ../warlock/ddi_dki_impl.ll
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wrowe
af5dd1c93d2185f7e37f8783c593b64fd35ea8a6wroweusba_files:
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse @cd ../usba;pwd; $(MAKE) warlock
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseuhci_files:
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse @cd ../uhci;pwd; $(MAKE) warlock
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseohci_files:
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martin @cd ../ohci;pwd; $(MAKE) warlock
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martin
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martinehci_files:
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martin @cd ../ehci;pwd; $(MAKE) warlock
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martin
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martinwarlock_ddi.files:
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martin cd ../warlock; pwd; $(MAKE) warlock
fe46444c8f32f00d040ebefa94bcd0c05ab15ab9martin