# # Makefile borrowed from acer_acpi # KERNELSRC?=/lib/modules/`uname -r`/build KERNELVERSION=$(shell awk -F\" '/REL/ {print $$2}' $(shell grep -s -l REL $(KERNELSRC)/include/linux/version.h $(KERNELSRC)/include/linux/utsrelease.h)) KERNELMAJOR=$(shell echo $(KERNELVERSION)|head -c3) KBUILD_BASENAME= obj-m += quickstart.o CC=gcc CFLAGS+=-c -Wall -Wstrict-prototypes -Os -pipe INCLUDE=-I$(KERNELSRC)/include ifneq ($(KERNELMAJOR), 2.6) exit: endif TARGET := quickstart.ko SOURCE := quickstart.c all: $(TARGET) exit: @echo "No support for 2.4 series kernels" help: @echo Possible targets: @echo -e all\\t- default target, builds kernel module @echo -e install\\t- copies module binary to /lib/modules/$(KERNELVERSION)/extra/ @echo -e clean\\t- removes all binaries and temporary files quickstart.ko: $(SOURCE) $(MAKE) -C $(KERNELSRC) SUBDIRS=$(PWD) modules quickstart.o: $(SOURCE) $(CC) $(INCLUDE) $(CFLAGS) -DMODVERSIONS -DMODULE -D__KERNEL__ -o $(TARGET) $(SOURCE) clean: rm -f *~ *.o *.s *.ko *.mod.c .*.cmd Module.symvers rm -rf .tmp_versions load: $(TARGET) insmod $(TARGET) unload: rmmod quickstart install: $(TARGET) mkdir -p ${DESTDIR}/lib/modules/$(KERNELVERSION)/extra cp -v $(TARGET) ${DESTDIR}/lib/modules/$(KERNELVERSION)/extra/ depmod -a