From 1ffe454ca0c9dcf2e04901d553ac8877eaaf26e6 Mon Sep 17 00:00:00 2001 From: florian Date: Sun, 30 Apr 2006 23:09:45 +0000 Subject: Now build rootfs+kernel images git-svn-id: svn://svn.openwrt.org/openwrt/trunk@3717 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- openwrt/target/linux/image/au1000/Makefile | 72 +++++++++++++++++++++++++++--- 1 file changed, 65 insertions(+), 7 deletions(-) (limited to 'openwrt/target/linux/image') diff --git a/openwrt/target/linux/image/au1000/Makefile b/openwrt/target/linux/image/au1000/Makefile index 04a89f9b19..fd805eef72 100644 --- a/openwrt/target/linux/image/au1000/Makefile +++ b/openwrt/target/linux/image/au1000/Makefile @@ -1,17 +1,58 @@ include $(TOPDIR)/rules.mk +LOADADDR = 0x8008c8f4 # RAM start + 16M +KERNEL_ENTRY = 0x80100000 +RAMSIZE = 0x04000000 # 1MB + +LOADER_MAKEOPTS= \ + KDIR=$(KDIR) \ + LOADADDR=$(LOADADDR) \ + KERNEL_ENTRY=$(KERNEL_ENTRY) \ + RAMSIZE=$(RAMSIZE) + KDIR:=$(BUILD_DIR)/linux-$(KERNEL)-$(BOARD) +lzma-loader-clean: + $(MAKE) -C ../generic/lzma-loader $(LOADER_MAKEOPTS) clean -ifeq ($(FS),jffs2-8MB) +lzma-loader-prepare: + $(MAKE) -C ../generic/lzma-loader $(LOADER_MAKEOPTS) prepare -$(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FS).img: $(KDIR)/root.$(FS) - $(CP) $^ $@ +lzma-loader-compile: $(KDIR)/vmlinux.lzma lzma-loader-prepare + $(MAKE) -C ../generic/lzma-loader $(LOADER_MAKEOPTS) compile + +ifeq ($(IB),) +$(KDIR)/vmlinux.lzma: $(KDIR)/vmlinux + cat $^ | $(STAGING_DIR)/bin/lzma e -si -so -eos -lc1 -lp2 -pb2 > $@ || (rm -f $@ && false) + +install: $(KDIR)/vmlinux.lzma +endif + +ifeq ($(KERNEL),2.6) +FSNAME:=$(patsubst jffs2-%,jffs2,$(FS)) + +$(KDIR)/vmlinux.srec: $(KDIR)/vmlinux + $(TARGET_CROSS)objcopy -O srec $(LINUX_DIR)/vmlinux $(KDIR)/vmlinux.srec -install: $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FS).img +ifeq ($(FS),jffs2-4MB) +$(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FSNAME).bin: $(KDIR)/root.$(FS) $(KDIR)/vmlinux.srec + $(TARGET_CROSS)objcopy -O srec -I binary --adjust-vma 0xbe000000 $(KDIR)/root.$(FS) $(KDIR)/root.srec + grep -v S7 $(KDIR)/root.srec > $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FS).img + grep -v S0 $(KDIR)/vmlinux.srec >> $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FS).img + +install: $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FSNAME).bin endif +ifeq ($(FS),jffs2-8MB) + +$(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FSNAME).bin: $(KDIR)/root.$(FS) $(KDIR)/vmlinux.srec + $(TARGET_CROSS)objcopy -O srec -I binary --adjust-vma 0xbe000000 $(KDIR)/root.$(FS) $(KDIR)/root.srec + grep -v S7 $(KDIR)/root.srec > $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FS).img + grep -v S0 $(KDIR)/vmlinux.srec >> $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FS).img + +install: $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FSNAME).bin +endif ifeq ($(FS),tgz) @@ -22,15 +63,32 @@ install: $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-rootfs.tar.gz endif +ifeq ($(FS),squashfs) +$(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FSNAME).bin: $(KDIR)/root.$(FS) $(KDIR)/vmlinux.srec + $(TARGET_CROSS)objcopy -O srec -I binary --adjust-vma 0xbe000000 $(KDIR)/root.$(FS) $(KDIR)/root.srec + grep -v S7 $(KDIR)/root.srec > $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FS).img + +endif + +install: $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-$(FSNAME).bin +endif $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinuz: $(KDIR)/vmlinux $(CP) $^ $@ - +ifeq ($(IB),) +clean: lzma-loader-clean +prepare: lzma-loader-prepare +compile: lzma-loader-compile +else clean: prepare: compile: -install: $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinuz +endif install-ib: + mkdir -p $(IB_DIR)/staging_dir_$(ARCH)/bin mkdir -p $(IB_DIR)/build_$(ARCH)/linux-$(KERNEL)-$(BOARD) - $(CP) $(KDIR)/bzImage $(IB_DIR)/build_$(ARCH)/linux-$(KERNEL)-$(BOARD)/ + $(CP) $(KDIR)/loader.elf $(IB_DIR)/build_$(ARCH)/ + $(CP) $(KDIR)/vmlinux.lzma $(IB_DIR)/build_$(ARCH)/linux-$(KERNEL)-$(BOARD)/ + $(TARGET_CROSS)objcopy -O srec $(KDIR)/loader.elf $(KDIR)/loader.srec + grep -v S0 $(KDIR)/loader.srec > $(KDIR)/kernel.srec -- cgit v1.2.3