2005-04-16 22:20:36 +00:00
|
|
|
#
|
|
|
|
# Makefile for ALSA
|
2007-10-15 07:50:19 +00:00
|
|
|
# Copyright (c) 1999 by Jaroslav Kysela <perex@perex.cz>
|
2005-04-16 22:20:36 +00:00
|
|
|
#
|
|
|
|
|
|
|
|
snd-seq-objs := seq.o seq_lock.o seq_clientmgr.o seq_memory.o seq_queue.o \
|
|
|
|
seq_fifo.o seq_prioq.o seq_timer.o \
|
2015-04-23 08:34:34 +00:00
|
|
|
seq_system.o seq_ports.o
|
2015-05-29 05:01:28 +00:00
|
|
|
snd-seq-$(CONFIG_SND_PROC_FS) += seq_info.o
|
2005-04-16 22:20:36 +00:00
|
|
|
snd-seq-midi-objs := seq_midi.o
|
|
|
|
snd-seq-midi-emul-objs := seq_midi_emul.o
|
|
|
|
snd-seq-midi-event-objs := seq_midi_event.o
|
|
|
|
snd-seq-dummy-objs := seq_dummy.o
|
|
|
|
snd-seq-virmidi-objs := seq_virmidi.o
|
|
|
|
|
ALSA: seq: Allow the modular sequencer registration
Many drivers bind the sequencer stuff in off-load by another driver
module, so that it's loaded only on demand. In the current code, this
mechanism doesn't work when the driver is built-in while the sequencer
is module. We check with IS_REACHABLE() and enable only when the
sequencer is in the same level of build.
However, this is basically a overshoot. The binder code
(snd-seq-device) is an individual module from the sequencer core
(snd-seq), and we just have to make the former a built-in while
keeping the latter a module for allowing the scenario like the above.
This patch achieves that by rewriting Kconfig slightly. Now, a driver
that provides the manual sequencer device binding should select
CONFIG_SND_SEQ_DEVICE in a way as
select SND_SEQ_DEVICE if SND_SEQUENCER != n
Note that the "!=n" is needed here to avoid the influence of the
sequencer core is module while the driver is built-in.
Also, since rawmidi.o may be linked with snd_seq_device.o when
built-in, we have to shuffle the code to make the linker happy.
(the kernel linker isn't smart enough yet to handle such a case.)
That is, snd_seq_device.c is moved to sound/core from sound/core/seq,
as well as Makefile.
Last but not least, the patch replaces the code using IS_REACHABLE()
with IS_ENABLED(), since now the condition meets always when enabled.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2017-06-09 13:11:58 +00:00
|
|
|
obj-$(CONFIG_SND_SEQUENCER) += snd-seq.o
|
2017-06-09 12:06:46 +00:00
|
|
|
obj-$(CONFIG_SND_SEQUENCER_OSS) += oss/
|
|
|
|
|
2005-04-16 22:20:36 +00:00
|
|
|
obj-$(CONFIG_SND_SEQ_DUMMY) += snd-seq-dummy.o
|
2017-06-09 12:40:18 +00:00
|
|
|
obj-$(CONFIG_SND_SEQ_MIDI) += snd-seq-midi.o
|
|
|
|
obj-$(CONFIG_SND_SEQ_MIDI_EMUL) += snd-seq-midi-emul.o
|
|
|
|
obj-$(CONFIG_SND_SEQ_MIDI_EVENT) += snd-seq-midi-event.o
|
|
|
|
obj-$(CONFIG_SND_SEQ_VIRMIDI) += snd-seq-virmidi.o
|