# Taken from orinoco-0.13d VERSION = 0.13d TOPDIR = $(shell pwd) KERNEL_VERSION = $(shell uname -r) #KERNEL_SRC = /lib/modules/$(KERNEL_VERSION)/build KERNEL_SRC = /storage/pub/src/kernel/bk-cvs/linux-2.5 # if Rules.make exists in the kernel tree, we assume 2.4 style modules # if it doesn't assume 2.5 style OLDMAKE = $(wildcard $(KERNEL_SRC)/Rules.make) MODULES = firmware_class.o firmware_sample_driver.o all: modules clean: rm -f core *.o *~ a.out *.d rm -f *.s *.i userhermes bufparse rm -f *.ko *.mod.c .*.o.cmd ifeq (,$(OLDMAKE)) # 2.5 style modules, get the kernel makefiles to do the work KBUILD_VERBOSE = 0 # default obj-m := $(MODULES) modules: $(MAKE) -C $(KERNEL_SRC) SUBDIRS=$(TOPDIR) KBUILD_VERBOSE=$(KBUILD_VERBOSE) modules install: all $(MAKE) -C $(KERNEL_SRC) SUBDIRS=$(TOPDIR) KBUILD_VERBOSE=$(KBUILD_VERBOSE) modules_install else # 2.4 style modules KERNEL_HEADERS = -I$(KERNEL_SRC)/include MODULE_DIR_TOP = /lib/modules/$(KERNEL_VERSION) MODULE_DIR_WIRELESS = $(MODULE_DIR_TOP)/kernel/drivers/net/wireless CPPFLAGS = -D__KERNEL__ -DPCMCIA_DEBUG=1 \ -DMODULE -DEXPORT_SYMTAB \ $(PCMCIA_HEADERS) $(KERNEL_HEADERS) CFLAGS = -O2 -Wall -Wstrict-prototypes -fno-common -pipe $(EXTRACFLAGS) MODVER = $(shell if cat $(KERNEL_SRC)/include/linux/autoconf.h 2>/dev/null | \ grep -q '^[[:space:]]*\#define[[:space:]]*CONFIG_MODVERSIONS[[:space:]]*1'; \ then echo 1; else echo 0; fi) ifeq ($(MODVER),1) MFLAG = -DMODVERSIONS -include $(KERNEL_SRC)/include/linux/modversions.h endif modules: $(MODULES) %.o: %.c $(CC) -MD $(CFLAGS) $(CPPFLAGS) $(MFLAG) -c $< %.s: %.c $(CC) -MD $(CFLAGS) $(CPPFLAGS) -S $< %.i: %.c $(CC) -MD $(CPPFLAGS) -E $< -o $@ endif