all: sch_log.o CC=gcc KERNEL = $(shell uname -r) SCH_LOG_TARGET := $(shell echo $(KERNEL) | cut -b1-3 | sed -e 's/\.//') EXTRA_CFLAGS += -O2 -Wall EXTRA_CFLAGS += -I/usr/src/linux/include -I. EXTRA_CFLAGS += -D__KERNEL__ -DMODULE EXTRA_CFLAGS += -DSCH_LOG_TARGET=$(SCH_LOG_TARGET) KERNEL_SRC := /lib/modules/$(KERNEL)/build obj-m += sch_log.o sch_log.o: sch_log.c ifeq ($(SCH_LOG_TARGET),24) $(CC) -c $(CFLAGS) sch_log.c -o sch_log.o else make -C $(KERNEL_SRC) SUBDIRS=$(PWD) modules endif .PHONY: reload pack clean install: sch_log.o cp -a sch_log.ko sch_log.o /lib/modules/`uname -r`/kernel/net/sched/ depmod -a clean: @-rm -rf sch_*.o sch_*.ko sch_*.mod.* .sch* built-in* .tmp_versions pack: clean @-rm -f ../sch_log-*.tar.bz2 @tar cjvf ../sch_log-`date +%Y-%m-%d`.tar.bz2 -C.. \ --exclude .svn \ sch_log release: tar czvf sch_log-0.10.tar.gz \ Makefile sch_log.c iproute2/*.patch \ README Changelog WARNING run