#
# Makefile for ALSA low level driver (Linux version)
# Copyright (c) 1994-2000 by Jaroslav Kysela <perex@suse.cz>
#

TOPDIR  = ..

include $(TOPDIR)/Makefile.conf
include $(TOPDIR)/cards.config

SUBDIRS =
ifeq (1,$(CONFIG_SND_OSSEMUL))
SUBDIRS += oss
endif
ifeq (1,$(CONFIG_SND_SEQUENCER))
SUBDIRS += seq
endif
TARGETS = $(SNDVERSIONS)
ifeq (1,$(CONFIG_SND))
TARGETS += $(TOPDIR)/modules/snd.o
EXPORTS += sound.o
endif
ifeq (1,$(CONFIG_SND_PCM))
TARGETS += $(TOPDIR)/modules/snd-pcm.o
EXPORTS += pcm.o pcm_lib.o
endif
ifeq (1,$(CONFIG_SND_RAWMIDI))
TARGETS += $(TOPDIR)/modules/snd-rawmidi.o
EXPORTS += rawmidi.o
endif
ifeq (1,$(CONFIG_SND_TIMER))
TARGETS += $(TOPDIR)/modules/snd-timer.o
EXPORTS += timer.o
endif
ifeq (1,$(CONFIG_SND_RTC))
ifeq (1,$(CONFIG_SND_RTCTIMER))
TARGETS += $(TOPDIR)/modules/snd-rtctimer.o
EXPORTS += rtctimer.o
endif
endif
ifeq (1,$(CONFIG_SND_HWDEP))
TARGETS += $(TOPDIR)/modules/snd-hwdep.o
EXPORTS += hwdep.o
endif

OBJECTS = sound.o init.o memory.o \
          info.o control.o device.o misc.o wrappers.o isadma.o
ifeq (1,$(CONFIG_SND_OSSEMUL))
OBJECTS += sound_oss.o info_oss.o
endif
PCM	= pcm.o pcm_native.o pcm_lib.o pcm_misc.o pcm_timer.o pcm_memory.o
RAWMIDI = rawmidi.o
TIMER	= timer.o
RTCTIMER = rtctimer.o
HWDEP   = hwdep.o

include $(TOPDIR)/Rules.make

all: $(TARGETS)
ifneq ("$(SUBDIRS)", "")
	@for d in $(SUBDIRS); do if ! $(MAKE) -C $$d; then exit 1; fi; done
endif

include $(TOPDIR)/Rules1.make

$(TOPDIR)/modules/snd.o: .depend $(SNDVERSIONS) $(OBJECTS)
	$(LINKER) -o $@ $(OBJECTS)

$(TOPDIR)/modules/snd-pcm.o: .depend $(SNDVERSIONS) $(PCM)
	$(LINKER) -o $@ $(PCM)

$(TOPDIR)/modules/snd-rawmidi.o: .depend $(SNDVERSIONS) $(RAWMIDI)
	$(LINKER) -o $@ $(RAWMIDI)

$(TOPDIR)/modules/snd-timer.o: .depend $(SNDVERSIONS) $(TIMER)
	$(LINKER) -o $@ $(TIMER)

$(TOPDIR)/modules/snd-rtctimer.o: .depend $(SNDVERSIONS) $(RTCTIMER)
	$(LINKER) -o $@ $(RTCTIMER)

$(TOPDIR)/modules/snd-hwdep.o: .depend $(SNDVERSIONS) $(HWDEP)
	$(LINKER) -o $@ $(HWDEP)

gcompile: $(TARGETS)

clean:
ifneq ("$(SUBDIRS)", "")
	@for d in $(SUBDIRS); do if ! $(MAKE) -C $$d clean; then exit 1; fi; done
endif
	rm -f .depend *.o *.orig snd.map snd.map? *.old *~
	rm -f core $(SNDVERSIONS) $(SYMFILES)

.depend: $(SYMFILES)
	$(CPP) $(COPTS) $(INCLUDE) *.c > .depend

dep:	.depend

dummy:

#
# include a dependency file if one exists
#
ifeq (.depend,$(wildcard .depend))
include .depend
endif
