CURRENT = $(shell uname -r) TARGET = asix OBJS = asix.o MDIR = drivers/net/usb KDIR = /lib/modules/$(CURRENT)/build SUBLEVEL= $(shell uname -r | cut -d '.' -f 3 | cut -d '.' -f 1 | cut -d '-' -f 1 | cut -d '_' -f 1) ifneq (,$(filter $(SUBLEVEL),14 15 16 17 18 19 20 21)) MDIR = drivers/usb/net endif EXTRA_CFLAGS = -DEXPORT_SYMTAB PWD = $(shell pwd) obj-m := $(TARGET).o default: echo "Run make install." $(TARGET).o: $(OBJS) $(LD) $(LD_RFLAG) -r -o $@ $(OBJS) install: for kernel in `ls /lib/modules`; do \ $(MAKE) -C /lib/modules/$$kernel/build SUBDIRS=$(PWD) modules; \ su -c "cp -v $(TARGET).ko /lib/modules/$$kernel/kernel/$(MDIR) && /sbin/depmod -a"; \ rm $(TARGET).ko; \ done clean: for kernel in `ls /lib/modules`; do \ $(MAKE) -C /lib/modules/$$kernel/build SUBDIRS=$(PWD) clean; \ done .PHONY: modules clean -include $(KDIR)/Rules.make .