xref: /titanic_51/usr/src/uts/sparc/audio1575/Makefile (revision 75d01c9ab5ef6f1bbac9f9d4eb379d5c38583d82)
1*75d01c9aSsm142603#
2*75d01c9aSsm142603# CDDL HEADER START
3*75d01c9aSsm142603#
4*75d01c9aSsm142603# The contents of this file are subject to the terms of the
5*75d01c9aSsm142603# Common Development and Distribution License, Version 1.0 only
6*75d01c9aSsm142603# (the "License").  You may not use this file except in compliance
7*75d01c9aSsm142603# with the License.
8*75d01c9aSsm142603#
9*75d01c9aSsm142603# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*75d01c9aSsm142603# or http://www.opensolaris.org/os/licensing.
11*75d01c9aSsm142603# See the License for the specific language governing permissions
12*75d01c9aSsm142603# and limitations under the License.
13*75d01c9aSsm142603#
14*75d01c9aSsm142603# When distributing Covered Code, include this CDDL HEADER in each
15*75d01c9aSsm142603# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*75d01c9aSsm142603# If applicable, add the following below this CDDL HEADER, with the
17*75d01c9aSsm142603# fields enclosed by brackets "[]" replaced with your own identifying
18*75d01c9aSsm142603# information: Portions Copyright [yyyy] [name of copyright owner]
19*75d01c9aSsm142603#
20*75d01c9aSsm142603# CDDL HEADER END
21*75d01c9aSsm142603#
22*75d01c9aSsm142603#
23*75d01c9aSsm142603# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24*75d01c9aSsm142603# Use is subject to license terms.
25*75d01c9aSsm142603#
26*75d01c9aSsm142603# uts/sparc/audio1575/Makefile
27*75d01c9aSsm142603#
28*75d01c9aSsm142603#pragma ident	"%Z%%M%	%I%	%E% SMI"
29*75d01c9aSsm142603#
30*75d01c9aSsm142603#	This makefile drives the production of the M1575 audio driver
31*75d01c9aSsm142603#	(audio1575) kernel module.
32*75d01c9aSsm142603#
33*75d01c9aSsm142603#
34*75d01c9aSsm142603#	Path to the base of the uts directory tree (usually /usr/src/uts).
35*75d01c9aSsm142603#
36*75d01c9aSsm142603UTSBASE = ../..
37*75d01c9aSsm142603
38*75d01c9aSsm142603#
39*75d01c9aSsm142603#	Define the module and object file sets.
40*75d01c9aSsm142603#
41*75d01c9aSsm142603MODULE		= audio1575
42*75d01c9aSsm142603OBJECTS		= $(AUDIO1575_OBJS:%=$(OBJS_DIR)/%)
43*75d01c9aSsm142603LINTS		= $(AUDIO1575_OBJS:%.o=$(LINTS_DIR)/%.ln)
44*75d01c9aSsm142603ROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
45*75d01c9aSsm142603CONF_SRCDIR	= $(UTSBASE)/sun/io/audio/sada/drv/audio1575
46*75d01c9aSsm142603
47*75d01c9aSsm142603WARLOCK_OBJECTS = $(AUDIO1575_OBJS:%.o=%.ll)
48*75d01c9aSsm142603WARLOCK_OK	= $(MODULE).ok
49*75d01c9aSsm142603
50*75d01c9aSsm142603#
51*75d01c9aSsm142603#	Include common rules.
52*75d01c9aSsm142603#
53*75d01c9aSsm142603include $(UTSBASE)/sparc/Makefile.sparc
54*75d01c9aSsm142603
55*75d01c9aSsm142603#
56*75d01c9aSsm142603#	Overrides, lint pass one enforcement
57*75d01c9aSsm142603#
58*75d01c9aSsm142603CFLAGS		+= $(CCVERBOSE)
59*75d01c9aSsm142603
60*75d01c9aSsm142603#
61*75d01c9aSsm142603#	Depends on misc/audiosup
62*75d01c9aSsm142603#
63*75d01c9aSsm142603LDFLAGS		+= -dy -Nmisc/amsrc2 -Nmisc/mixer -Nmisc/audiosup
64*75d01c9aSsm142603
65*75d01c9aSsm142603#
66*75d01c9aSsm142603#	Define targets
67*75d01c9aSsm142603#
68*75d01c9aSsm142603ALL_TARGET	= $(BINARY) $(SRC_CONFILE)
69*75d01c9aSsm142603LINT_TARGET	= $(MODULE).lint
70*75d01c9aSsm142603INSTALL_TARGET	= $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE_64)
71*75d01c9aSsm142603
72*75d01c9aSsm142603#
73*75d01c9aSsm142603#       Overrides
74*75d01c9aSsm142603#
75*75d01c9aSsm142603ALL_BUILDS	= $(ALL_BUILDSONLY64)
76*75d01c9aSsm142603DEF_BUILDS	= $(DEF_BUILDSONLY64)
77*75d01c9aSsm142603CLEANLINTFILES	+= $(LINT32_FILES)
78*75d01c9aSsm142603
79*75d01c9aSsm142603#
80*75d01c9aSsm142603#	Default build targets.
81*75d01c9aSsm142603#
82*75d01c9aSsm142603.KEEP_STATE:
83*75d01c9aSsm142603
84*75d01c9aSsm142603def:		$(DEF_DEPS)
85*75d01c9aSsm142603
86*75d01c9aSsm142603all:		$(ALL_DEPS)
87*75d01c9aSsm142603
88*75d01c9aSsm142603clean:		$(CLEAN_DEPS); \
89*75d01c9aSsm142603		$(RM) $(WARLOCK_OBJECTS) $(WARLOCK_OK)
90*75d01c9aSsm142603
91*75d01c9aSsm142603clobber:	$(CLOBBER_DEPS); \
92*75d01c9aSsm142603		$(RM) $(WARLOCK_OBJECTS) $(WARLOCK_OK)
93*75d01c9aSsm142603
94*75d01c9aSsm142603lint:		$(LINT_DEPS)
95*75d01c9aSsm142603
96*75d01c9aSsm142603modlintlib:	$(MODLINTLIB_DEPS) lint32
97*75d01c9aSsm142603
98*75d01c9aSsm142603clean.lint:	$(CLEAN_LINT_DEPS)
99*75d01c9aSsm142603
100*75d01c9aSsm142603install:	$(INSTALL_DEPS)
101*75d01c9aSsm142603
102*75d01c9aSsm142603#
103*75d01c9aSsm142603#	Include common targets.
104*75d01c9aSsm142603#
105*75d01c9aSsm142603include $(UTSBASE)/sparc/Makefile.targ
106*75d01c9aSsm142603
107*75d01c9aSsm142603#
108*75d01c9aSsm142603#	Defines for local commands.
109*75d01c9aSsm142603#
110*75d01c9aSsm142603SCCS		= sccs
111*75d01c9aSsm142603TEST		= test
112*75d01c9aSsm142603WLCC		= wlcc
113*75d01c9aSsm142603TOUCH		= touch
114*75d01c9aSsm142603WARLOCK 	= warlock
115*75d01c9aSsm142603
116*75d01c9aSsm142603#
117*75d01c9aSsm142603#	Mapfile target
118*75d01c9aSsm142603#
119*75d01c9aSsm142603mapfile:
120*75d01c9aSsm142603	$(TEST) -f $@ || $(SCCS) get $@
121*75d01c9aSsm142603
122*75d01c9aSsm142603#
123*75d01c9aSsm142603#	Warlock targets
124*75d01c9aSsm142603#
125*75d01c9aSsm142603# NOTE: there will be warnings about q_lock which is the simulated
126*75d01c9aSsm142603# rwlock of the taskq framework
127*75d01c9aSsm142603#
128*75d01c9aSsm142603
129*75d01c9aSsm142603%.wlcmd:
130*75d01c9aSsm142603	$(TEST) -f $@ || $(SCCS) get $@
131*75d01c9aSsm142603
132*75d01c9aSsm142603warlock:	$(WARLOCK_OK)
133*75d01c9aSsm142603
134*75d01c9aSsm142603$(WARLOCK_OK):	$(WARLOCK_OBJECTS) warlock_ddi.files \
135*75d01c9aSsm142603	warlock_audiosup.files warlock_mixer.files warlock_amsrc2.files
136*75d01c9aSsm142603	$(WARLOCK) -c audio1575_with_sada.wlcmd $(WARLOCK_OBJECTS) \
137*75d01c9aSsm142603	../audiosup/audio_support.ll ../amsrc2/am_src2.ll \
138*75d01c9aSsm142603	../mixer/am_main.ll ../mixer/am_ad.ll ../mixer/am_ioctl.ll \
139*75d01c9aSsm142603	-l ../warlock/ddi_dki_impl.ll
140*75d01c9aSsm142603	$(TOUCH) $(WARLOCK_OK)
141*75d01c9aSsm142603
142*75d01c9aSsm142603%.ll: $(UTSBASE)/sun/io/audio/sada/drv/audio1575/%.c
143*75d01c9aSsm142603	$(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
144*75d01c9aSsm142603
145*75d01c9aSsm142603warlock_standalone: $(WARLOCK_OBJECTS) warlock_ddi.files audio1575.wlcmd
146*75d01c9aSsm142603	$(WARLOCK) -c audio1575.wlcmd $(WARLOCK_OBJECTS) \
147*75d01c9aSsm142603	-l ../warlock/ddi_dki_impl.ll
148*75d01c9aSsm142603
149*75d01c9aSsm142603warlock_ddi.files:
150*75d01c9aSsm142603	@cd ../warlock; pwd; $(MAKE) warlock
151*75d01c9aSsm142603
152*75d01c9aSsm142603warlock_audiosup.files:
153*75d01c9aSsm142603	@cd ../audiosup; pwd; $(MAKE) warlock
154*75d01c9aSsm142603
155*75d01c9aSsm142603warlock_amsrc2.files:
156*75d01c9aSsm142603	@cd ../amsrc2; pwd; $(MAKE) warlock
157*75d01c9aSsm142603
158*75d01c9aSsm142603warlock_mixer.files:
159*75d01c9aSsm142603	@cd ../mixer; pwd; $(MAKE) warlock
160