# COMMON

CARD		:= fcdsl
LIBDIR		:= $(SUBDIRS)
OBJECTS		:= main.o driver.o tools.o dbgif.o tables.o queue.o lib.o

ifneq ($(KERNELVERSION),)

# KERNEL

EXTRA_CFLAGS	+= -D__$(CARD)__ -DTARGET=\"$(CARD)\"
ifndef DEBUG
EXTRA_CFLAGS	+= -DNDEBUG
endif
EXTRA_LDFLAGS	+= $(LIBDIR)/$(CARD)-lib.o

obj-m		:= $(CARD).o
$(CARD)-objs	:= $(OBJECTS)

else

# ARCHIVE

SOURCES		:= $(patsubst %.o,%.c,$(OBJECTS))
HEADERS		:= defs.h driver.h lib.h libdefs.h libstub.h lock.h \
		   main.h queue.h tables.h tools.h dbgif.h image.h \
		   regs.h

ifeq ($(KDIR),)
KDIR		:= /lib/modules/$(KERNELRELEASE)/build
endif

all:		$(CARD).o
	
$(CARD).o:	$(LIBDIR) $(SOURCES) $(HEADERS)

		$(MAKE) -C $(KDIR) SUBDIRS=$(shell pwd) modules

clean:	;	$(RM) $(OBJECTS)
		$(RM) $(CARD).o $(CARD).ko 
		@$(RM) .*.cmd $(CARD).mod.* 

$(LIBDIR):	
		mkdir -p $(LIBDIR)

endif

