KERNEL_VERSION=$(shell uname -r)
#GCCVERSION=$(shell cat /proc/version|awk '{print $$7}' |cut -d. -f 1)
KERNEL=$(shell uname -r | cut -f1 -d-)
KERNEL_DIR=/lib/modules/`uname -r`/build
obj ?=.
src ?=.
obj-m += epass.o
epass-objs := epass1.o epass2.o
default:
	$(MAKE) -C $(KERNEL_DIR) SUBDIRS=$(shell pwd) modules
$(obj)/epass2.o:
	cp $(src)/gcc$(GCCVERSION)/epass-$(KERNEL).o $(obj)/epass2.o
clean:
	rm -f *.o *.mod.c .ft* .bu* *.ko

install:
	mkdir -p /lib/modules/$(KERNEL_VERSION)/misc
	cp epass.ko /lib/modules/$(KERNEL_VERSION)/misc/epass.ko
	mkdir -p /usr/local/include

	if [ ! -c /dev/epass ]; then \
	        mknod /dev/epass c 10 140;\
		chmod go+w /dev/epass; \
	fi; \
	if [ -e /etc/conf.modules ]; then \
		mconf="/etc/conf.modules"; \
	else \
		if [ -e /etc/modprobe.conf ]; then \
			mconf="/etc/modprobe.conf"; \
		else \
			mconf="/etc/modules.conf"; \
		fi; \
	fi; \
	inconf=`grep 'alias char-major-10-140 epass' $$mconf`; \
	if [ -z "$$inconf" ]; then \
		echo "alias char-major-10-140 epass" >> $$mconf; \
	fi; \
	/sbin/depmod -a 
uninstall:
	rm /lib/modules/$(KERNEL_VERSION)/misc/epass.ko
	rm /dev/epass
	if [ -e /etc/conf.modules ]; then \
		mconf="/etc/conf.modules"; \
	else \
		if [ -e /etc/modprobe.conf ]; then \
			mconf="/etc/modprobe.conf"; \
		else \
			mconf="/etc/modules.conf"; \
		fi; \
	fi; \
	declare -i inconf=0; \
	inconf=`grep "alias char-major-10-140 epass"  $$mconf -n | head -1 | cut -f1 -d:`; \
	if [ $$inconf != 0 ]; then \
	cp $$mconf $$mconf.tmp; \
	cat $$mconf.tmp |sed "$$inconf"d > $$mconf; \
	rm -f $$mconf.tmp; \
	fi
	/sbin/depmod -a 
