ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.6.tar.bz2
[linux-2.6.git] / sound / oss / Makefile
1 # Makefile for the Linux sound card driver
2 #
3 # 18 Apr 1998, Michael Elizabeth Chastain, <mailto:mec@shout.net>
4 # Rewritten to use lists instead of if-statements.
5
6 # Each configuration option enables a list of files.
7
8 obj-$(CONFIG_SOUND_OSS)         += sound.o
9 obj-$(CONFIG_SOUND_CS4232)      += cs4232.o ad1848.o 
10
11 # Please leave it as is, cause the link order is significant !
12
13 obj-$(CONFIG_SOUND_SH_DAC_AUDIO)        += sh_dac_audio.o
14 obj-$(CONFIG_SOUND_HAL2)        += hal2.o
15 obj-$(CONFIG_SOUND_AEDSP16)     += aedsp16.o
16 obj-$(CONFIG_SOUND_PSS)         += pss.o ad1848.o mpu401.o
17 obj-$(CONFIG_SOUND_TRIX)        += trix.o ad1848.o sb_lib.o uart401.o
18 obj-$(CONFIG_SOUND_OPL3SA1)     += opl3sa.o ad1848.o uart401.o
19 obj-$(CONFIG_SOUND_SSCAPE)      += sscape.o ad1848.o mpu401.o
20 obj-$(CONFIG_SOUND_MAD16)       += mad16.o ad1848.o sb_lib.o uart401.o
21 obj-$(CONFIG_SOUND_CS4232)      += cs4232.o uart401.o
22 obj-$(CONFIG_SOUND_MSS)         += ad1848.o
23 obj-$(CONFIG_SOUND_OPL3SA2)     += opl3sa2.o ad1848.o mpu401.o
24 obj-$(CONFIG_SOUND_PAS)         += pas2.o sb.o sb_lib.o uart401.o
25 obj-$(CONFIG_SOUND_SB)          += sb.o sb_lib.o uart401.o
26 obj-$(CONFIG_SOUND_KAHLUA)      += kahlua.o
27 obj-$(CONFIG_SOUND_WAVEFRONT)   += wavefront.o
28 obj-$(CONFIG_SOUND_MAUI)        += maui.o mpu401.o
29 obj-$(CONFIG_SOUND_MPU401)      += mpu401.o
30 obj-$(CONFIG_SOUND_UART6850)    += uart6850.o
31 obj-$(CONFIG_SOUND_GUS)         += gus.o ad1848.o
32 obj-$(CONFIG_SOUND_ADLIB)       += adlib_card.o opl3.o
33 obj-$(CONFIG_SOUND_YM3812)      += opl3.o
34 obj-$(CONFIG_SOUND_VMIDI)       += v_midi.o
35 obj-$(CONFIG_SOUND_VIDC)        += vidc_mod.o
36 obj-$(CONFIG_SOUND_WAVEARTIST)  += waveartist.o
37 obj-$(CONFIG_SOUND_SGALAXY)     += sgalaxy.o ad1848.o
38 obj-$(CONFIG_SOUND_AD1816)      += ad1816.o
39 obj-$(CONFIG_SOUND_AD1889)      += ad1889.o ac97_codec.o
40 obj-$(CONFIG_SOUND_ACI_MIXER)   += aci.o
41 obj-$(CONFIG_SOUND_AWE32_SYNTH) += awe_wave.o
42
43 obj-$(CONFIG_SOUND_VIA82CXXX)   += via82cxxx_audio.o ac97_codec.o
44 ifeq ($(CONFIG_MIDI_VIA82CXXX),y)
45   obj-$(CONFIG_SOUND_VIA82CXXX) += sound.o uart401.o
46 endif
47 obj-$(CONFIG_SOUND_YMFPCI)      += ymfpci.o ac97_codec.o
48 ifeq ($(CONFIG_SOUND_YMFPCI_LEGACY),y)
49   obj-$(CONFIG_SOUND_YMFPCI)    += opl3.o uart401.o
50 endif
51 obj-$(CONFIG_SOUND_MSNDCLAS)    += msnd.o msnd_classic.o
52 obj-$(CONFIG_SOUND_MSNDPIN)     += msnd.o msnd_pinnacle.o
53 obj-$(CONFIG_SOUND_VWSND)       += vwsnd.o
54 obj-$(CONFIG_SOUND_NM256)       += nm256_audio.o ac97.o
55 obj-$(CONFIG_SOUND_ICH)         += i810_audio.o ac97_codec.o
56 obj-$(CONFIG_SOUND_SONICVIBES)  += sonicvibes.o
57 obj-$(CONFIG_SOUND_CMPCI)       += cmpci.o
58 obj-$(CONFIG_SOUND_ES1370)      += es1370.o
59 obj-$(CONFIG_SOUND_ES1371)      += es1371.o ac97_codec.o
60 obj-$(CONFIG_SOUND_VRC5477)     += nec_vrc5477.o ac97_codec.o
61 obj-$(CONFIG_SOUND_ESSSOLO1)    += esssolo1.o
62 obj-$(CONFIG_SOUND_FUSION)      += cs46xx.o ac97_codec.o
63 obj-$(CONFIG_SOUND_MAESTRO)     += maestro.o
64 obj-$(CONFIG_SOUND_MAESTRO3)    += maestro3.o ac97_codec.o
65 obj-$(CONFIG_SOUND_TRIDENT)     += trident.o ac97_codec.o
66 obj-$(CONFIG_SOUND_HARMONY)     += harmony.o
67 obj-$(CONFIG_SOUND_EMU10K1)     += ac97_codec.o
68 obj-$(CONFIG_SOUND_RME96XX)     += rme96xx.o
69 obj-$(CONFIG_SOUND_BT878)       += btaudio.o
70 obj-$(CONFIG_SOUND_ALI5455)     += ali5455.o ac97_codec.o
71 obj-$(CONFIG_SOUND_IT8172)      += ite8172.o ac97_codec.o
72 obj-$(CONFIG_SOUND_FORTE)       += forte.o ac97_codec.o
73
74 obj-$(CONFIG_SOUND_AD1980)      += ac97_plugin_ad1980.o
75 obj-$(CONFIG_SOUND_WM97XX)      += ac97_plugin_wm97xx.o
76
77 ifeq ($(CONFIG_MIDI_EMU10K1),y)
78   obj-$(CONFIG_SOUND_EMU10K1)   += sound.o
79 endif
80
81 obj-$(CONFIG_SOUND_EMU10K1)     += emu10k1/
82 obj-$(CONFIG_SOUND_CS4281)      += cs4281/
83 obj-$(CONFIG_DMASOUND)          += dmasound/
84
85 # Declare multi-part drivers.
86
87 sound-objs      :=                                                      \
88     dev_table.o soundcard.o sound_syms.o                \
89     audio.o audio_syms.o dmabuf.o                                       \
90     midi_syms.o midi_synth.o midibuf.o                                  \
91     sequencer.o sequencer_syms.o sound_timer.o sys_timer.o
92
93 gus-objs        := gus_card.o gus_midi.o gus_vol.o gus_wave.o ics2101.o
94 pas2-objs       := pas2_card.o pas2_midi.o pas2_mixer.o pas2_pcm.o
95 sb-objs         := sb_card.o
96 sb_lib-objs     := sb_common.o sb_audio.o sb_midi.o sb_mixer.o sb_ess.o
97 vidc_mod-objs   := vidc.o vidc_fill.o
98 wavefront-objs  := wavfront.o wf_midi.o yss225.o
99
100 host-progs      := bin2hex hex2hex
101
102 # Files generated that shall be removed upon make clean
103 clean-files := maui_boot.h msndperm.c msndinit.c pndsperm.c pndspini.c \
104                pss_boot.h trix_boot.h
105
106 # Firmware files that need translation
107 #
108 # The translated files are protected by a file that keeps track
109 # of what name was used to build them.  If the name changes, they
110 # will be forced to be remade.
111 #
112
113 # Turtle Beach Maui / Tropez
114
115 $(obj)/maui.o: $(obj)/maui_boot.h
116
117 ifeq ($(CONFIG_MAUI_HAVE_BOOT),y)
118     $(obj)/maui_boot.h: $(patsubst "%", %, $(CONFIG_MAUI_BOOT_FILE)) $(obj)/bin2hex
119         $(obj)/bin2hex -i maui_os < $< > $@
120 else
121     $(obj)/maui_boot.h:
122         (                                                       \
123             echo 'static unsigned char * maui_os = NULL;';      \
124             echo 'static int maui_osLen = 0;';                  \
125         ) > $@
126 endif
127
128 # Turtle Beach MultiSound
129
130 ifeq ($(CONFIG_MSNDCLAS_HAVE_BOOT),y)
131     $(obj)/msnd_classic.o: $(obj)/msndperm.c $(obj)/msndinit.c
132
133     $(obj)/msndperm.c: $(patsubst "%", %, $(CONFIG_MSNDCLAS_PERM_FILE)) $(obj)/bin2hex
134         $(obj)/bin2hex msndperm < $< > $@
135
136     $(obj)/msndinit.c: $(patsubst "%", %, $(CONFIG_MSNDCLAS_INIT_FILE)) $(obj)/bin2hex
137         $(obj)/bin2hex msndinit < $< > $@
138 endif
139
140 ifeq ($(CONFIG_MSNDPIN_HAVE_BOOT),y)
141     $(obj)/msnd_pinnacle.o: $(obj)/pndsperm.c $(obj)/pndspini.c
142
143     $(obj)/pndsperm.c: $(patsubst "%", %, $(CONFIG_MSNDPIN_PERM_FILE)) $(obj)/bin2hex
144         $(obj)/bin2hex pndsperm < $< > $@
145
146     $(obj)/pndspini.c: $(patsubst "%", %, $(CONFIG_MSNDPIN_INIT_FILE)) $(obj)/bin2hex
147         $(obj)/bin2hex pndspini < $< > $@
148 endif
149
150 # PSS (ECHO-ADI2111)
151
152 $(obj)/pss.o: $(obj)/pss_boot.h
153
154 ifeq ($(CONFIG_PSS_HAVE_BOOT),y)
155     $(obj)/pss_boot.h: $(patsubst "%", %, $(CONFIG_PSS_BOOT_FILE)) $(obj)/bin2hex
156         $(obj)/bin2hex pss_synth < $< > $@
157 else
158     $(obj)/pss_boot.h:
159         (                                                       \
160             echo 'static unsigned char * pss_synth = NULL;';    \
161             echo 'static int pss_synthLen = 0;';                \
162         ) > $@
163 endif
164
165 # MediaTrix AudioTrix Pro
166
167 $(obj)/trix.o: $(obj)/trix_boot.h
168
169 ifeq ($(CONFIG_TRIX_HAVE_BOOT),y)
170     $(obj)/trix_boot.h: $(patsubst "%", %, $(CONFIG_TRIX_BOOT_FILE)) $(obj)/hex2hex
171         $(obj)/hex2hex -i trix_boot < $< > $@
172 else
173     $(obj)/trix_boot.h:
174         (                                                       \
175             echo 'static unsigned char * trix_boot = NULL;';    \
176             echo 'static int trix_boot_len = 0;';               \
177         ) > $@
178 endif