ifneq (${KERNELRELEASE},)

# KERNELRELEASE defined: we are being compiled as part of the Kernel
obj-m := audio_driver.o user_interface.o

else

# We are being compiled as a module: use the Kernel build system

KERNEL_SOURCE := /usr/src/linux-headers-$(shell uname -r)
PWD := $(shell pwd)


default: module hello

module:
	$(MAKE) -C $(KERNEL_SOURCE) SUBDIRS=$(PWD) modules

CFLAGS = -Wall

OBJECTS = hello.o usbmidi.o wav_handler.o

TARFILES = Makefile README wav_handler.h wav_handler.c user_interface.h user_interface.c hello.c
TARFILE = lab3-sw.tar.gz

hello : $(OBJECTS) 
	cc $(CFLAGS) -o hello $(OBJECTS) -lusb-1.0

hello.o: hello.c usbmidi.h wav_handler.h
usbkeyboard.o = usbmidi.c usbmidi.h
wav_handler.o = wav_handler.h wav_handler.c

.PHONY : tar
tar : $(TARFILE)

$(TARFILE) : $(TARFILES)
	tar zcfC $(TARFILE) .. $(TARFILES:%=lab3-sw/%)

endif
