KERNELVER ?= $(shell uname -r)
KERNELDIR ?= /lib/modules/$(KERNELVER)/build
INSTALLDIR ?= /lib/modules/$(KERNELVER)/kernel/drivers/char/agp
PWD ?= $(realpath .)

EXTRA_CFLAGS += -march=i486 -mtune=i686 -Os -pipe -fomit-frame-pointer
EXTRA_CFLAGS += -I$(PWD)/include
EXTRA_CFLAGS += -I/home/tc/ext/iegd-emgd-2.6.33.3-tinycore/src_iegd/IEGD_10_4_Linux/IKM/include
EXTRA_CFLAGS += -I/home/tc/ext/iegd-emgd-2.6.33.3-tinycore/src_iegd/IEGD_10_4_Linux/IKM/include/agp
EXTRA_CFLAGS += -I$(PWD)/../linux-$(KERNELVER)/drivers/char/agp
EXTRA_CFLAGS += -I/lib/modules/$(KERNELVER)/build/include/drm

all: clean modules

modules:
	@echo $(PWD)
	@$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
	@gzip -11 iegd_mod.ko

install:
	install -o root -g root -m 755 -d $(INSTALLDIR)
	install -o root -g root -m 744 iegd_mod.ko $(INSTALLDIR)
	/sbin/depmod -a

uninstall:
	rm -rf $(INSTALLDIR)/iegd_mod.ko.gz
	/sbin/depmod -a

clean:
	@rm -f *.o iegd*.ko.gz iegd*.ko iegd*.mod.c iegd*.o agp/*.o drm/*.o Module.symvers
	@rm -fr .intel* .tmp* .*.cmd agp/.*.cmd drm/.*.cmd

obj-m := iegd_mod.o
iegd_mod-objs := agp/pci.o agp/global.o agp/drv_alm.o agp/drv_nap.o agp/drv_plb.o agp/drv_cmn.o agp/drv_gn4.o drm/iegd_drv.o drm/iegd_interface.o drm/iegd_interface_265.o drm/iegd_interface_2611.o drm/iegd_interface_2615.o drm/iegd_interface_2624.o drm/psb_irq.o
