1 # Makefile for the Linux sound card driver
3 # 18 Apr 1998, Michael Elizabeth Chastain, <mailto:mec@shout.net>
4 # Rewritten to use lists instead of if-statements.
6 # Each configuration option enables a list of files.
8 obj-$(CONFIG_SOUND_OSS) += sound.o
10 # Please leave it as is, cause the link order is significant !
12 obj-$(CONFIG_SOUND_SH_DAC_AUDIO) += sh_dac_audio.o
13 obj-$(CONFIG_SOUND_HAL2) += hal2.o
14 obj-$(CONFIG_SOUND_AEDSP16) += aedsp16.o
15 obj-$(CONFIG_SOUND_PSS) += pss.o ad1848.o mpu401.o
16 obj-$(CONFIG_SOUND_TRIX) += trix.o ad1848.o sb_lib.o uart401.o
17 obj-$(CONFIG_SOUND_SSCAPE) += sscape.o ad1848.o mpu401.o
18 obj-$(CONFIG_SOUND_MSS) += ad1848.o
19 obj-$(CONFIG_SOUND_PAS) += pas2.o sb.o sb_lib.o uart401.o
20 obj-$(CONFIG_SOUND_SB) += sb.o sb_lib.o uart401.o
21 obj-$(CONFIG_SOUND_KAHLUA) += kahlua.o
22 obj-$(CONFIG_SOUND_MPU401) += mpu401.o
23 obj-$(CONFIG_SOUND_UART6850) += uart6850.o
24 obj-$(CONFIG_SOUND_YM3812) += opl3.o
25 obj-$(CONFIG_SOUND_VMIDI) += v_midi.o
26 obj-$(CONFIG_SOUND_VIDC) += vidc_mod.o
27 obj-$(CONFIG_SOUND_WAVEARTIST) += waveartist.o
28 obj-$(CONFIG_SOUND_MSNDCLAS) += msnd.o msnd_classic.o
29 obj-$(CONFIG_SOUND_MSNDPIN) += msnd.o msnd_pinnacle.o
30 obj-$(CONFIG_SOUND_VWSND) += vwsnd.o
31 obj-$(CONFIG_SOUND_AU1550_AC97) += au1550_ac97.o ac97_codec.o
32 obj-$(CONFIG_SOUND_TRIDENT) += trident.o ac97_codec.o
33 obj-$(CONFIG_SOUND_BCM_CS4297A) += swarm_cs4297a.o
35 obj-$(CONFIG_SOUND_WM97XX) += ac97_plugin_wm97xx.o
37 obj-$(CONFIG_DMASOUND) += dmasound/
39 # Declare multi-part drivers.
42 dev_table.o soundcard.o \
44 midi_synth.o midibuf.o \
45 sequencer.o sound_timer.o sys_timer.o
47 pas2-objs := pas2_card.o pas2_midi.o pas2_mixer.o pas2_pcm.o
49 sb_lib-objs := sb_common.o sb_audio.o sb_midi.o sb_mixer.o sb_ess.o
50 vidc_mod-objs := vidc.o vidc_fill.o
52 hostprogs-y := bin2hex hex2hex
54 # Files generated that shall be removed upon make clean
55 clean-files := msndperm.c msndinit.c pndsperm.c pndspini.c \
56 pss_boot.h trix_boot.h
58 # Firmware files that need translation
60 # The translated files are protected by a file that keeps track
61 # of what name was used to build them. If the name changes, they
62 # will be forced to be remade.
65 # Turtle Beach MultiSound
67 ifeq ($(CONFIG_MSNDCLAS_HAVE_BOOT),y)
68 $(obj)/msnd_classic.o: $(obj)/msndperm.c $(obj)/msndinit.c
70 $(obj)/msndperm.c: $(patsubst "%", %, $(CONFIG_MSNDCLAS_PERM_FILE)) $(obj)/bin2hex
71 $(obj)/bin2hex msndperm < $< > $@
73 $(obj)/msndinit.c: $(patsubst "%", %, $(CONFIG_MSNDCLAS_INIT_FILE)) $(obj)/bin2hex
74 $(obj)/bin2hex msndinit < $< > $@
77 ifeq ($(CONFIG_MSNDPIN_HAVE_BOOT),y)
78 $(obj)/msnd_pinnacle.o: $(obj)/pndsperm.c $(obj)/pndspini.c
80 $(obj)/pndsperm.c: $(patsubst "%", %, $(CONFIG_MSNDPIN_PERM_FILE)) $(obj)/bin2hex
81 $(obj)/bin2hex pndsperm < $< > $@
83 $(obj)/pndspini.c: $(patsubst "%", %, $(CONFIG_MSNDPIN_INIT_FILE)) $(obj)/bin2hex
84 $(obj)/bin2hex pndspini < $< > $@
89 $(obj)/pss.o: $(obj)/pss_boot.h
91 ifeq ($(CONFIG_PSS_HAVE_BOOT),y)
92 $(obj)/pss_boot.h: $(patsubst "%", %, $(CONFIG_PSS_BOOT_FILE)) $(obj)/bin2hex
93 $(obj)/bin2hex pss_synth < $< > $@
97 echo 'static unsigned char * pss_synth = NULL;'; \
98 echo 'static int pss_synthLen = 0;'; \
102 # MediaTrix AudioTrix Pro
104 $(obj)/trix.o: $(obj)/trix_boot.h
106 ifeq ($(CONFIG_TRIX_HAVE_BOOT),y)
107 $(obj)/trix_boot.h: $(patsubst "%", %, $(CONFIG_TRIX_BOOT_FILE)) $(obj)/hex2hex
108 $(obj)/hex2hex -i trix_boot < $< > $@
112 echo 'static unsigned char * trix_boot = NULL;'; \
113 echo 'static int trix_boot_len = 0;'; \