| rjw | 1f88458 | 2022-01-06 17:20:42 +0800 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0 | 
 | 2 | # Makefile for the Linux sound card driver | 
 | 3 | # | 
 | 4 | # 18 Apr 1998, Michael Elizabeth Chastain, <mailto:mec@shout.net> | 
 | 5 | # Rewritten to use lists instead of if-statements. | 
 | 6 |  | 
 | 7 | # Each configuration option enables a list of files. | 
 | 8 |  | 
 | 9 | obj-$(CONFIG_SOUND_OSS)		+= sound.o | 
 | 10 |  | 
 | 11 | # Please leave it as is, cause the link order is significant ! | 
 | 12 |  | 
 | 13 | obj-$(CONFIG_SOUND_AEDSP16)	+= aedsp16.o | 
 | 14 | obj-$(CONFIG_SOUND_PSS)		+= pss.o ad1848.o mpu401.o | 
 | 15 | obj-$(CONFIG_SOUND_TRIX)	+= trix.o ad1848.o sb_lib.o uart401.o | 
 | 16 | obj-$(CONFIG_SOUND_MSS)		+= ad1848.o | 
 | 17 | obj-$(CONFIG_SOUND_PAS)		+= pas2.o sb.o sb_lib.o uart401.o | 
 | 18 | obj-$(CONFIG_SOUND_SB)		+= sb.o sb_lib.o uart401.o | 
 | 19 | obj-$(CONFIG_SOUND_KAHLUA)	+= kahlua.o | 
 | 20 | obj-$(CONFIG_SOUND_MPU401)	+= mpu401.o | 
 | 21 | obj-$(CONFIG_SOUND_UART6850)	+= uart6850.o | 
 | 22 | obj-$(CONFIG_SOUND_YM3812)	+= opl3.o | 
 | 23 | obj-$(CONFIG_SOUND_VMIDI)	+= v_midi.o | 
 | 24 | obj-$(CONFIG_SOUND_VIDC)	+= vidc_mod.o | 
 | 25 | obj-$(CONFIG_SOUND_WAVEARTIST)	+= waveartist.o | 
 | 26 | obj-$(CONFIG_SOUND_MSNDCLAS)	+= msnd.o msnd_classic.o | 
 | 27 | obj-$(CONFIG_SOUND_MSNDPIN)	+= msnd.o msnd_pinnacle.o | 
 | 28 | obj-$(CONFIG_SOUND_BCM_CS4297A)	+= swarm_cs4297a.o | 
 | 29 |  | 
 | 30 | obj-$(CONFIG_DMASOUND)		+= dmasound/ | 
 | 31 |  | 
 | 32 | # Declare multi-part drivers. | 
 | 33 |  | 
 | 34 | sound-objs	:= 							\ | 
 | 35 |     dev_table.o soundcard.o 		\ | 
 | 36 |     audio.o dmabuf.o					\ | 
 | 37 |     midi_synth.o midibuf.o					\ | 
 | 38 |     sequencer.o sound_timer.o sys_timer.o | 
 | 39 |  | 
 | 40 | pas2-objs	:= pas2_card.o pas2_midi.o pas2_mixer.o pas2_pcm.o | 
 | 41 | sb-objs		:= sb_card.o | 
 | 42 | sb_lib-objs	:= sb_common.o sb_audio.o sb_midi.o sb_mixer.o sb_ess.o | 
 | 43 | vidc_mod-objs	:= vidc.o vidc_fill.o | 
 | 44 |  | 
 | 45 | hostprogs-y	:= bin2hex hex2hex | 
 | 46 |  | 
 | 47 | # Files generated that shall be removed upon make clean | 
 | 48 | clean-files := msndperm.c msndinit.c pndsperm.c pndspini.c \ | 
 | 49 |                pss_boot.h trix_boot.h | 
 | 50 |  | 
 | 51 | # Firmware files that need translation | 
 | 52 | # | 
 | 53 | # The translated files are protected by a file that keeps track | 
 | 54 | # of what name was used to build them.  If the name changes, they | 
 | 55 | # will be forced to be remade. | 
 | 56 | # | 
 | 57 |  | 
 | 58 | # Turtle Beach MultiSound | 
 | 59 |  | 
 | 60 | ifeq ($(CONFIG_MSNDCLAS_HAVE_BOOT),y) | 
 | 61 |     $(obj)/msnd_classic.o: $(obj)/msndperm.c $(obj)/msndinit.c | 
 | 62 |  | 
 | 63 |     $(obj)/msndperm.c: $(patsubst "%", %, $(CONFIG_MSNDCLAS_PERM_FILE)) $(obj)/bin2hex | 
 | 64 | 	$(obj)/bin2hex msndperm < $< > $@ | 
 | 65 |  | 
 | 66 |     $(obj)/msndinit.c: $(patsubst "%", %, $(CONFIG_MSNDCLAS_INIT_FILE)) $(obj)/bin2hex | 
 | 67 | 	$(obj)/bin2hex msndinit < $< > $@ | 
 | 68 | endif | 
 | 69 |  | 
 | 70 | ifeq ($(CONFIG_MSNDPIN_HAVE_BOOT),y) | 
 | 71 |     $(obj)/msnd_pinnacle.o: $(obj)/pndsperm.c $(obj)/pndspini.c | 
 | 72 |  | 
 | 73 |     $(obj)/pndsperm.c: $(patsubst "%", %, $(CONFIG_MSNDPIN_PERM_FILE)) $(obj)/bin2hex | 
 | 74 | 	$(obj)/bin2hex pndsperm < $< > $@ | 
 | 75 |  | 
 | 76 |     $(obj)/pndspini.c: $(patsubst "%", %, $(CONFIG_MSNDPIN_INIT_FILE)) $(obj)/bin2hex | 
 | 77 | 	$(obj)/bin2hex pndspini < $< > $@ | 
 | 78 | endif | 
 | 79 |  | 
 | 80 | # PSS (ECHO-ADI2111) | 
 | 81 |  | 
 | 82 | $(obj)/pss.o: $(obj)/pss_boot.h | 
 | 83 |  | 
 | 84 | ifeq ($(CONFIG_PSS_HAVE_BOOT),y) | 
 | 85 |     $(obj)/pss_boot.h: $(patsubst "%", %, $(CONFIG_PSS_BOOT_FILE)) $(obj)/bin2hex | 
 | 86 | 	$(obj)/bin2hex pss_synth < $< > $@ | 
 | 87 | else | 
 | 88 |     $(obj)/pss_boot.h: | 
 | 89 | 	$(Q)(							\ | 
 | 90 | 	    echo 'static unsigned char * pss_synth = NULL;';	\ | 
 | 91 | 	    echo 'static int pss_synthLen = 0;';		\ | 
 | 92 | 	) > $@ | 
 | 93 | endif | 
 | 94 |  | 
 | 95 | # MediaTrix AudioTrix Pro | 
 | 96 |  | 
 | 97 | $(obj)/trix.o: $(obj)/trix_boot.h | 
 | 98 |  | 
 | 99 | ifeq ($(CONFIG_TRIX_HAVE_BOOT),y) | 
 | 100 |     $(obj)/trix_boot.h: $(patsubst "%", %, $(CONFIG_TRIX_BOOT_FILE)) $(obj)/hex2hex | 
 | 101 | 	$(obj)/hex2hex -i trix_boot < $< > $@ | 
 | 102 | else | 
 | 103 |     $(obj)/trix_boot.h: | 
 | 104 | 	$(Q)(							\ | 
 | 105 | 	    echo 'static unsigned char * trix_boot = NULL;';	\ | 
 | 106 | 	    echo 'static int trix_boot_len = 0;';		\ | 
 | 107 | 	) > $@ | 
 | 108 | endif |