# 
# Makefile
#

MAJOR=MAJOR_REPLACE
MINOR=MINOR_REPLACE
PATCH=PATCH_REPLACE

ifeq ("$(ARCH)","um")
modules install:
else

DRIVER_RELEASE=$(MAJOR).$(MINOR)-$(PATCH)
KERNEL_RELEASE := $(shell strings $(KERNEL_SOURCE)/vmlinux|grep "^Linux version"|awk '{print $$3}')
PROC_VERSION := $(shell strings $(KERNEL_SOURCE)/vmlinux|grep "^Linux version")
OBJ_DIR=$(INSTALL_MOD_PATH)/lib/modules/scripts/nvidia/$(KERNEL_RELEASE)
PRE_DIR=$(INSTALL_MOD_PATH)/lib/modules/precompiled/$(KERNEL_RELEASE)/nvidia/gfx

modules:
	export IGNORE_CC_MISMATCH=1
	SYSSRC=$(KERNEL_SOURCE) $(MAKE) -C $(KERNEL_SOURCE) modules SUBDIRS=$(CURDIR)/$(DRIVER_RELEASE); \
	SYSSRC=$(KERNEL_SOURCE) $(MAKE) -C $(DRIVER_RELEASE) nv-linux.o

install:
	mkdir -p $(OBJ_DIR) $(PRE_DIR)
	install -m 644 $(DRIVER_RELEASE)/nv-linux.o \
	  $(OBJ_DIR)/nv-linux.o-$(DRIVER_RELEASE)
	./mkprecompiled \
	--interface=$(OBJ_DIR)/nv-linux.o-$(DRIVER_RELEASE) \
	--output=$(PRE_DIR)/nv-linux.o-$(DRIVER_RELEASE).pre \
	--description="$(KERNEL_RELEASE)" \
	--proc-version="$(PROC_VERSION)" \
	--major=$(MAJOR) --minor=$(MINOR) --patch=$(PATCH)

clean:
	make -C $(DRIVER_RELEASE) clean

endif
