obj-m	:= bibest.o
bibest-objs := 	BEST_PCIe.o 		\
		BEST_dma_device.o 	\
		BEST_mailbox_device.o 	\
		BEST_direct_tetramm.o  	\
		BEST_direct_predac.o  	\
		BEST_flash.o		\
		system_id/system_id.o

KERNELVER ?= $(shell uname -r)
KERNELDIR ?= /lib/modules/$(KERNELVER)/build
PWD := $(shell pwd)
VER=$(shell cat .version)
BUILDNR=$(shell cat .buildnumber)
UBUNTUVER=$(shell lsb_release -sr)
ifeq ($(UBUNTUVER), 14.04)
	BUILDNREXT=$(BUILDNR)-bibest1~trusty
else
	BUILDNREXT=$(BUILDNR)-bibest1~focal
endif

all: default

default:
	$(MAKE) -C ${KERNELDIR} M=$(PWD) modules 

publish:
	python3 get_version.py > .version
	$(eval VER = $(shell cat .version))
	python3 generate_dkms_conf.py
	echo "Making " /usr/src/bibestdriver-$(VER).$(BUILDNREXT)
	mkdir -p  /usr/src/bibestdriver-$(VER).$(BUILDNREXT)
	cp -ar 	.buildnumber \
			.version \
			alt_pcie/ \
			BEST_direct_predac.c \
			BEST_direct_predac.h \
			BEST_direct_tetramm.c \
			BEST_direct_tetramm.h \
			BEST_dma_device.c \
			BEST_dma_device.h \
			bestdriver-dkms-mkdeb/ \
			BEST_flash.c \
			BEST_flash.h \
			BEST_mailbox_device.c \
			BEST_mailbox_device.h \
			BEST_PCIe.c \
			BEST_PCIe.h \
			BEST_PCIe_internal.h \
			build_dkms.sh \
			dkms.conf \
			Docs/ \
			Doxyfile \
			load_req_modules.sh \
			mailbox/ \
			mainpage.dox \
			Makefile \
			msgdma/ \
			README.md \
			system_id/ \
			/usr/src/bibestdriver-$(VER).$(BUILDNREXT)
	dkms build -m bibestdriver/$(VER).$(BUILDNREXT)
	dkms mkdsc -m bibestdriver/$(VER).$(BUILDNREXT) --source-only
	dkms mkdeb -m bibestdriver/$(VER).$(BUILDNREXT) --source-only
	mkdir -p pkg
	cp -r /var/lib/dkms/bibestdriver/$(VER).$(BUILDNREXT)/deb/* ./pkg/

clean:
	rm -f *.o *.ko *.mod.* *.order *.symvers system_id/system_id.o



