Makefile revision 4ebb14b236958cfe1ef4ff3b7a50216d9e51f997
d657c51f14601d0235434ffb78cf6ac0f27cc83cLennart Poettering#
220a21d38f675eb835f5758e3d23e896573aa5eaLennart Poettering# CDDL HEADER START
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering#
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# The contents of this file are subject to the terms of the
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# Common Development and Distribution License (the "License").
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# You may not use this file except in compliance with the License.
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering#
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# or http://www.opensolaris.org/os/licensing.
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# See the License for the specific language governing permissions
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# and limitations under the License.
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering#
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# When distributing Covered Code, include this CDDL HEADER in each
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# If applicable, add the following below this CDDL HEADER, with the
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# fields enclosed by brackets "[]" replaced with your own identifying
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# information: Portions Copyright [yyyy] [name of copyright owner]
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering#
075d4ecb4026c5bc55e73bd2d44e3fc4d679adc7Lennart Poettering# CDDL HEADER END
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# Use is subject to license terms.
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# uts/i86pc/audioixp/Makefile
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#ident "%Z%%M% %I% %E% SMI"
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# This makefile drives the production of high definition audio
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# driver (audioixp) kernel module.
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# Path to the base of the uts directory tree (usually /usr/src/uts).
6563b535a062055ae68f2e574018d9d04a864b65Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart PoetteringUTSBASE = ../..
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# Define the module and object file sets.
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart PoetteringMODULE = audioixp
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart PoetteringOBJECTS = $(AUDIOIXP_OBJS:%=$(OBJS_DIR)/%)
6563b535a062055ae68f2e574018d9d04a864b65Lennart PoetteringLINTS = $(AUDIOIXP_OBJS:%.o=$(LINTS_DIR)/%.ln)
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart PoetteringROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart PoetteringCONF_SRCDIR = $(UTSBASE)/common/io/audio/sada/drv/audioixp
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart PoetteringWARLOCK_OUT = $(AUDIOIXP_OBJS:%.o=%.ll)
6563b535a062055ae68f2e574018d9d04a864b65Lennart PoetteringWARLOCK_OK = $(MODULE).ok
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart PoetteringWLCMD_DIR = $(UTSBASE)/common/io/warlock
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering# Include common rules.
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering#
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poetteringinclude $(UTSBASE)/i86pc/Makefile.i86pc
b6a867398de9f75fb623a84db7c6181d26b0a8d5Lennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# Overrides, lint pass one enforcement
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringCFLAGS += $(CCVERBOSE)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringDEBUG_FLGS =
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering$(NOT_RELEASE_BUILD)DEBUG_DEFS += $(DEBUG_FLGS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
8d0256b7eb119de92c748cf566257996b02fb506Lennart Poettering# Depends on misc/audiosup
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringLDFLAGS += -dy -Nmisc/amsrc2 -Nmisc/audiosup -Nmisc/mixer
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# Define targets
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringALL_TARGET = $(BINARY) $(SRC_CONFILE)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringLINT_TARGET = $(MODULE).lint
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# For now, disable these lint checks; maintainers should endeavor
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# to investigate and remove these for maximum lint coverage.
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# Please do not carry these forward to new Makefiles.
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# Default build targets.
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering.KEEP_STATE:
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringdef: $(DEF_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringall: $(ALL_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringclean: $(CLEAN_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringclobber: $(CLOBBER_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringlint: $(LINT_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringmodlintlib: $(MODLINTLIB_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringclean.lint: $(CLEAN_LINT_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringinstall: $(INSTALL_DEPS)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# Include common targets.
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringinclude $(UTSBASE)/i86pc/Makefile.targ
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# Defines for local commands.
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringSCCS = sccs
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringTEST = test
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringWLCC = wlcc
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringTOUCH = touch
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringWARLOCK = warlock
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering# Warlock targets
a98d5d64720bdf32e3b5f72f896b583e23f730adLennart Poettering#
a98d5d64720bdf32e3b5f72f896b583e23f730adLennart Poettering# NOTE: there will be warnings about q_lock which is the simulated
a98d5d64720bdf32e3b5f72f896b583e23f730adLennart Poettering# rwlock of the taskq framework
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering#
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringMIXER_FILES = $(MIXER_OBJS:%.o=$(UTSBASE)/intel/mixer/%.ll)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringAUDIO_SUP_FILES = $(AUDIO_SUP_OBJS:%.o=$(UTSBASE)/intel/audiosup/%.ll)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart PoetteringAMSRC2_FILES = $(AMSRC2_OBJS:%.o=$(UTSBASE)/intel/amsrc2/%.ll)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering%.wlcmd:
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering cd $(WLCMD_DIR); $(TEST) -f $@ || $(SCCS) get $@
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringwarlock: $(WARLOCK_OK)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering$(WARLOCK_OK): $(WARLOCK_OUT) warlock_ddi.files warlock_standalone \
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering warlock_audiosup.files warlock_mixer.files warlock_amsrc2.files \
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering audioixp_with_sada.wlcmd
aaccc32cdc44b2b972946e44792d63ae17c089c2Lennart Poettering $(WARLOCK) -c $(WLCMD_DIR)/audioixp_with_sada.wlcmd $(WARLOCK_OUT) \
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering $(MIXER_FILES) $(AUDIO_SUP_FILES) $(AMSRC2_FILES) \
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering -l ../../intel/warlock/ddi_dki_impl.ll
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering $(TOUCH) $(WARLOCK_OK)
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering%.ll: $(UTSBASE)/common/io/audio/sada/drv/audioixp/%.c
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringwarlock_standalone: $(WARLOCK_OUT) warlock_ddi.files audioixp.wlcmd
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering $(WARLOCK) -c $(WLCMD_DIR)/audioixp.wlcmd $(WARLOCK_OUT) \
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering -l ../../intel/warlock/ddi_dki_impl.ll
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringwarlock_ddi.files:
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering @cd ../../intel/warlock; pwd; $(MAKE) warlock
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringwarlock_audiosup.files:
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering @cd ../../intel/audiosup; pwd; $(MAKE) warlock
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringwarlock_amsrc2.files:
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering @cd ../../intel/amsrc2; pwd; $(MAKE) warlock
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poetteringwarlock_mixer.files:
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering @cd ../../intel/mixer; pwd; $(MAKE) warlock
0c11f949db8d6d9899e0c473bf1f8cca0614493eLennart Poettering