diff options
-rw-r--r-- | target/linux/package/mini_fo/Makefile | 20 | ||||
-rw-r--r-- | target/linux/package/mini_fo/patches/101-kmod_build.patch | 52 | ||||
-rw-r--r-- | target/linux/package/shfs/Makefile | 1 |
3 files changed, 56 insertions, 17 deletions
diff --git a/target/linux/package/mini_fo/Makefile b/target/linux/package/mini_fo/Makefile index 357d09b945..3a00149608 100644 --- a/target/linux/package/mini_fo/Makefile +++ b/target/linux/package/mini_fo/Makefile @@ -17,17 +17,7 @@ PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install ifeq ($(KERNEL_DIR),) KERNEL_DIR:=$(LINUX_DIR) endif -ifeq ($(LINUX_VERSION),2.4.30) -KERNEL_VERSION=2.4 -else -KERNEL_VERSION=2.6 -endif - -KERNEL_FLAGS=-D__KERNEL__ -DMODULE -DFISTGEN -I. -I$(KERNEL_DIR)/include \ - -Wno-unused -fno-common -fno-schedule-insns -fno-schedule-insns2 \ - -fomit-frame-pointer -finline-limit=100000 -mabi=32 -march=mips32 \ - -Wa,-32 -Wa,-march=mips32 -Wa,-mips32 -Wa,--trap -DMODULE -mlong-calls \ - -fno-strict-aliasing -G 0 -mno-abicalls -fno-pic +KERNEL_VERSION=$(shell echo "$(LINUX_VERSION)" | cut -d. -f1,2) include $(TOPDIR)/package/rules.mk @@ -37,15 +27,11 @@ $(PKG_BUILD_DIR)/.configured: touch $@ $(PKG_BUILD_DIR)/.built: - rm -rf $(PKG_INSTALL_DIR) - mkdir -p $(PKG_INSTALL_DIR) $(MAKE) -C $(PKG_BUILD_DIR) \ - CFLAGS="$(TARGET_CFLAGS) $(KERNEL_FLAGS)" \ - CC="$(TARGET_CC)" \ - LD="$(TARGET_CROSS)ld" \ + ARCH="$(LINUX_KARCH)" \ KERNELVERSION="$(KERNEL_VERSION)" \ KERNEL_SRC="$(KERNEL_DIR)" \ - ROOT="$(PKG_INSTALL_DIR)" + all touch $@ $(IPKG_KMOD_MINI_FO): diff --git a/target/linux/package/mini_fo/patches/101-kmod_build.patch b/target/linux/package/mini_fo/patches/101-kmod_build.patch new file mode 100644 index 0000000000..f6a752c1f6 --- /dev/null +++ b/target/linux/package/mini_fo/patches/101-kmod_build.patch @@ -0,0 +1,52 @@ +diff -ruN mini_fo-old/Makefile mini_fo-new/Makefile +--- mini_fo-old/Makefile 2005-05-08 01:22:51.000000000 +0200 ++++ mini_fo-new/Makefile 2005-08-15 04:37:22.000000000 +0200 +@@ -26,36 +26,32 @@ + # allow custom override of TOPINC for fistgen developers + -include fistdev.mk + ++obj-m := mini_fo.o ++mini_fo-objs := meta.o dentry.o file.o inode.o main.o super.o state.o aux.o ++ + ifeq ($(KERNELVERSION),2.4) +-CFLAGS = -D__KERNEL__ -DMODULE -DFISTGEN -I. ${TOPINC} -O2 -Wall -Wno-unused -g -fno-common -fno-schedule-insns -fno-schedule-insns2 -fno-strict-aliasing -msoft-float -Werror +-ifeq ($(ARCH),um) +-CFLAGS += $(shell cd $(KERNEL_SRC) ; make script 'SCRIPT=@echo $$(CFLAGS)' ARCH=um) +-endif +-UCFLAGS = -DFISTGEN -I. ${TOPINC} -g -O2 -Wall -Wno-unused -Werror +-endif + +-CC = $(CROSS_COMPILE)gcc +-LD = $(CROSS_COMPILE)ld ++O_TARGET := $(obj-m) ++obj-y := $(mini_fo-objs) + +-obj-m := mini_fo.o +-mini_fo-objs := meta.o dentry.o file.o inode.o main.o super.o state.o aux.o ++-include $(TOPDIR)/Rules.make ++ ++endif + + all: mini_fo$(KERNELVERSION) + +-mini_fo2.4: ${obj-m} ++mini_fo2.4: ++ $(MAKE) -C ${KERNEL_SRC} TOPDIR="${KERNEL_SRC}" SUBDIRS=$(shell pwd) modules + + mini_fo2.6: +- make -C ${KERNEL_SRC} SUBDIRS=$(PWD) modules +- +-${obj-m}: ${mini_fo-objs} +- $(LD) -o ${obj-m} -r ${mini_fo-objs} ++ $(MAKE) -C ${KERNEL_SRC} SUBDIRS=$(shell pwd) modules + + TAGS: + etags -t *.[hc] + + clean: + ifeq ($(KERNELVERSION),2.6) +- -make -C ${KERNEL_SRC} SUBDIRS=$(PWD) clean ++ -$(MAKE) -C ${KERNEL_SRC} SUBDIRS=$(shell pwd) clean + endif + rm -f ${obj-m} ${mini_fo-objs} ${obj-m:.o=.ko} *.d .*.flags *~ + rm -f TAGS diff --git a/target/linux/package/shfs/Makefile b/target/linux/package/shfs/Makefile index 36046065f8..af1d1f9842 100644 --- a/target/linux/package/shfs/Makefile +++ b/target/linux/package/shfs/Makefile @@ -29,6 +29,7 @@ $(PKG_BUILD_DIR)/.built: rm -rf $(PKG_INSTALL_DIR) mkdir -p $(PKG_INSTALL_DIR) $(MAKE) -C $(PKG_BUILD_DIR) \ + ARCH="$(LINUX_KARCH)" \ OFLAGS="$(TARGET_CFLAGS)" \ CC="$(TARGET_CC)" \ LINKER="$(TARGET_CC)" \ |