# Makefile for the lirc drivers.
#

# Each configuration option enables a list of files.

obj-$(CONFIG_LIRC_BT829)	+= lirc_bt829.o
obj-$(CONFIG_LIRC_IMON)		+= lirc_imon.o
obj-$(CONFIG_LIRC_PARALLEL)	+= lirc_parallel.o
obj-$(CONFIG_LIRC_SASEM)	+= lirc_sasem.o
obj-$(CONFIG_LIRC_SERIAL)	+= lirc_serial.o
obj-$(CONFIG_LIRC_SIR)		+= lirc_sir.o
obj-$(CONFIG_LIRC_ZILOG)	+= lirc_zilog.o
