# Makefile for a basic kernel module

CC=gcc
MODCFLAGS := -Wall -O2 -DMODULE -D__KERNEL__ -DLINUX -I/lib/modules/2.4.4-4GB/build/include

pcl726.o: pcl726.c /lib/modules/2.4.4-4GB/build/include/linux/version.h
	$(CC) $(MODCFLAGS) -c pcl726.c
	@echo
	@echo "'make install' to install module at /lib/modules/pcl726 "
	@echo "               and install devices /dev/pcl_da* "
	@echo "'make remove'  to remove  module and devices "
	@echo "(you have to be root to do this)"
	@echo

install:
	mknod /dev/pcl_da0 c 253 0
	mknod /dev/pcl_da1 c 253 1
	mknod /dev/pcl_da2 c 253 2
	mknod /dev/pcl_da3 c 253 3
	mknod /dev/pcl_da4 c 253 4
	mknod /dev/pcl_da5 c 253 5
	chmod 666 /dev/pcl_da*
	mkdir /lib/modules/pcl726
	cp pcl726.o load_pcl726 remove_pcl726 /lib/modules/pcl726
	ln -s /lib/modules/pcl726/load_pcl726 /etc/init.d/rc3.d/S63pcl726
	ln -s /lib/modules/pcl726/remove_pcl726 /etc/init.d/rc3.d/K63pcl726	
	@echo
	@echo "'make remove'  to remove  module and devices "
	@echo "(you have to be root to do this)"
	@echo
	
remove:
	rm -f /dev/pcl_da*
	rm -f /lib/modules/pcl726/pcl726.o
	rm -f /lib/modules/pcl726/load_pcl726
	rm -f /lib/modules/pcl726/remove_pcl726
	rmdir /lib/modules/pcl726
	rm -f /etc/init.d/rc3.d/S63pcl726
	rm -f /etc/init.d/rc3.d/K63pcl726
	
clean:
	rm -f *.o *~
