# obj-m specifie we're a kernel module.
obj-m += advligorts-rt-bench.o
advligorts-rt-bench-objs := src/module.o  

CPU_ISO_HEADERS_DIR ?= /usr/src/rts-cpu-isolator-*/
ifeq ("$(wildcard $(CPU_ISO_HEADERS_DIR)/rts-cpu-isolator.h)","")
$(error Could not find the CPU Isolator header. Is the advligorts-cpu-isolator-dkms package installed? You can also define CPU_ISO_HEADERS_DIR if you have a repo checkout)
endif

# Get dir name of header
CPU_ISO_HEADERS := $(shell dirname $(shell find $(CPU_ISO_HEADERS_DIR) -name rts-cpu-isolator.h) )

ccflags-y := -std=gnu99 -Wno-declaration-after-statement -I$(src)/../include -I$(src)/ -I$(CPU_ISO_HEADERS)


# Set the path to the Kernel build utils.
KBUILD=/lib/modules/$(shell uname -r)/build/

CPU_ISO_SYMVERS := $(shell find /var/lib/dkms/rts-cpu-isolator/ -name Module.symvers | head -n 1)
#CPU_ISO_SYMVERS := $(shell find $(src)/../../advligorts/src/drv/rts-cpu-isolator -name Module.symvers | head -n 1)

KBUILD_EXTRA_SYMBOLS := $(CPU_ISO_SYMVERS)

default:
	$(MAKE) -C $(KBUILD) M=$(PWD) modules

clean:
	$(MAKE) -C $(KBUILD) M=$(PWD) clean

menuconfig:
	$(MAKE) -C $(KBUILD) M=$(PWD) menuconfig
