Makefile revision bf56214c0556fa6864189c826d39dbe156bb22a0
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# CDDL HEADER START
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# The contents of this file are subject to the terms of the
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# Common Development and Distribution License (the "License").
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# You may not use this file except in compliance with the License.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# or http://www.opensolaris.org/os/licensing.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# See the License for the specific language governing permissions
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# and limitations under the License.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# When distributing Covered Code, include this CDDL HEADER in each
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# If applicable, add the following below this CDDL HEADER, with the
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# fields enclosed by brackets "[]" replaced with your own identifying
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# information: Portions Copyright [yyyy] [name of copyright owner]
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# CDDL HEADER END
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# Use is subject to license terms.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# uts/sparc/usb_as/Makefile
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# This makefile drives the production of the usb_as driver
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# kernel module. Intel architecture dependent
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#ident "%Z%%M% %I% %E% SMI"
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
64185f9824e42f21ca7b9ae6c004484215c031a7rbb#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# Path to the base of the uts directory tree (usually /usr/src/uts).
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingUTSBASE = ../..
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# Define the module and object file sets.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingMODULE = usb_as
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingOBJECTS = $(USB_AS_OBJS:%=$(OBJS_DIR)/%)
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingLINTS = $(USB_AS_OBJS:%.o=$(LINTS_DIR)/%.ln)
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingWARLOCK_OUT = $(USB_AS_OBJS:%.o=%.ll)
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldingWARLOCK_OK = $(MODULE).ok
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingWLCMD_DIR = $(UTSBASE)/common/io/warlock
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# Include common rules.
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fieldinginclude $(UTSBASE)/intel/Makefile.intel
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding# Define targets
ab2c1c1c83ec91415565da5a71fbc15d9685caa6fielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingALL_TARGET = $(BINARY)
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingLINT_TARGET = $(MODULE).lint
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# Override defaults to build a unique, local modstubs.o.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingMODSTUBS_DIR = $(OBJS_DIR)
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingCLEANFILES += $(MODSTUBS_O)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# do not remove depends on amsrc2. If removed, amsrc2 gets unloaded when
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# usb_ac_dacf gets unloaded
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingLDFLAGS += -dy -Nmisc/usba -Nmisc/audiosup -Nmisc/mixer -Nmisc/amsrc2
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# For now, disable these lint checks; maintainers should endeavor
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# to investigate and remove these for maximum lint coverage.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# Please do not carry these forward to new Makefiles.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# Default build targets.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding.KEEP_STATE:
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingdef: $(DEF_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingall: $(ALL_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingclean: $(CLEAN_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingclobber: $(CLOBBER_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldinglint: $(LINT_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingmodlintlib: $(MODLINTLIB_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingclean.lint: $(CLEAN_LINT_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldinginstall: $(INSTALL_DEPS)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# Include common targets.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldinginclude $(UTSBASE)/intel/Makefile.targ
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# Defines for local commands.
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingWARLOCK = warlock
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingWLCC = wlcc
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingTOUCH = touch
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingTEST = test
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
2d71630471d1c23f0137309e3c3957c633ecbfd6rbb# lock_lint rules
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingUSB_AS_FILES = $(MODULE).ll
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingUSBA_FILES = $(USBA_OBJS:%.o=../usba/%.ll)
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingUHCI_FILES = $(UHCI_OBJS:%.o=../uhci/%.ll)
fd0edaa8e3d4dd67d0604ccef2e96b071db96643fieldingOHCI_FILES = $(OHCI_OBJS:%.o=../ohci/%.ll)
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingEHCI_FILES = $(EHCI_OBJS:%.o=../ehci/%.ll)
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingMIXER_FILES = $(MIXER_OBJS:%.o=$(UTSBASE)/intel/mixer/%.ll)
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingAUDIO_SUP_FILES = $(AUDIO_SUP_OBJS:%.o=$(UTSBASE)/intel/audiosup/%.ll)
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingAMSRC2_FILES = $(AMSRC2_OBJS:%.o=$(UTSBASE)/intel/amsrc2/%.ll)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding# Warlock targets
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding#
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingwarlock: $(WARLOCK_OK)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding$(WARLOCK_OK): $(WARLOCK_OUT) warlock_ddi.files \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding warlock_audiosup.files warlock_mixer.files warlock_amsrc2.files \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding warlock_standalone warlock_with_usba warlock_with_sada
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(TOUCH) $(WARLOCK_OK)
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbbwarlock_with_sada: $(WLCMD_DIR)/usb_as_with_sada.wlcmd \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(WARLOCK_OUT) \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding warlock_audiosup.files warlock_amsrc2.files warlock_mixer.files
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(WARLOCK) -c $(WLCMD_DIR)/usb_as_with_sada.wlcmd $(WARLOCK_OUT) \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(MIXER_FILES) $(AUDIO_SUP_FILES) $(AMSRC2_FILES) \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding -l ../warlock/ddi_dki_impl.ll
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingwarlock_with_usba: $(WLCMD_DIR)/usb_as_with_usba.wlcmd $(WARLOCK_OUT) \
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697rbb warlock_ddi.files warlock_ohci.files warlock_usba.files \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding warlock_ehci.files warlock_uhci.files
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(WARLOCK) -c $(WLCMD_DIR)/usb_as_with_usba.wlcmd \
e68becff3c3ddc18723c9799b8cc2e6e9c3dbd66wrowe $(USBA_FILES) $(OHCI_FILES) $(EHCI_FILES) $(UHCI_FILES) \
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding $(WARLOCK_OUT) -l ../warlock/ddi_dki_impl.ll
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar
b4a6dfb838d9820516bbca38bd466fca7d31809bcoarwarlock_standalone: $(WARLOCK_OUT) warlock_ddi.files $(WLCMD_DIR)/usb_as.wlcmd
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar $(WARLOCK) -c $(WLCMD_DIR)/usb_as.wlcmd $(WARLOCK_OUT) \
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar -l ../warlock/ddi_dki_impl.ll
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar%.ll: $(UTSBASE)/common/io/usb/clients/audio/usb_as/%.c
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar
b4a6dfb838d9820516bbca38bd466fca7d31809bcoarwarlock_usba.files:
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar @cd ../usba;pwd; $(MAKE) warlock
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingwarlock_ohci.files:
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding @cd ../ohci;pwd; $(MAKE) warlock
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingwarlock_uhci.files:
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding @cd ../uhci;pwd; $(MAKE) warlock
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
b4a6dfb838d9820516bbca38bd466fca7d31809bcoarwarlock_ehci.files:
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar @cd ../ehci;pwd; $(MAKE) warlock
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar
b4a6dfb838d9820516bbca38bd466fca7d31809bcoarwarlock_ddi.files:
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar @cd ../warlock; pwd; $(MAKE) warlock
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar
b4a6dfb838d9820516bbca38bd466fca7d31809bcoarwarlock_audiosup.files:
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar @cd ../audiosup; pwd; $(MAKE) warlock
b4a6dfb838d9820516bbca38bd466fca7d31809bcoar
b4a6dfb838d9820516bbca38bd466fca7d31809bcoarwarlock_amsrc2.files:
404e2e1f8ad30c2d996f5fb6b3a9a4a4a14a004brbb @cd ../amsrc2; pwd; $(MAKE) warlock
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding
0f081398cf0eef8cc7c66a535d450110a92dc8aefieldingwarlock_mixer.files:
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding @cd ../mixer; pwd; $(MAKE) warlock
0f081398cf0eef8cc7c66a535d450110a92dc8aefielding