summaryrefslogtreecommitdiff
path: root/openwrt/target
diff options
context:
space:
mode:
authorWaldemar Brodkorb <mail@waldemar-brodkorb.de>2005-04-02 12:12:58 +0000
committerWaldemar Brodkorb <mail@waldemar-brodkorb.de>2005-04-02 12:12:58 +0000
commit8f80e98934c5bb973caad880bd17fddf709046a3 (patch)
tree055a93ec854a535cea0fb03637e40e82661918d7 /openwrt/target
parentd2a31e404c9392a3f532a99e20ea65c96493748c (diff)
downloadmtk-20170518-8f80e98934c5bb973caad880bd17fddf709046a3.zip
mtk-20170518-8f80e98934c5bb973caad880bd17fddf709046a3.tar.gz
mtk-20170518-8f80e98934c5bb973caad880bd17fddf709046a3.tar.bz2
lzma loader patch from oleg, great thanks good work, saves another 300 kb flashmemory
SVN-Revision: 513
Diffstat (limited to 'openwrt/target')
-rw-r--r--openwrt/target/Makefile16
-rw-r--r--openwrt/target/jffs2/Makefile8
-rw-r--r--openwrt/target/squashfs-lzma/Makefile4
-rw-r--r--openwrt/target/squashfs-lzma/squashfslzmaroot.mk10
4 files changed, 26 insertions, 12 deletions
diff --git a/openwrt/target/Makefile b/openwrt/target/Makefile
index a17a80f..c8baab5 100644
--- a/openwrt/target/Makefile
+++ b/openwrt/target/Makefile
@@ -29,6 +29,20 @@ IMAGE_TARGETS += $(BIN_DIR)/openwrt-motorola-$(1).bin
endif
endef
+# Enable loader and prepare kernel
+ifeq ($(strip $(BR2_PACKAGE_LOADER)),y)
+export LINUX_LOADER=$(BUILD_DIR)/lzmaldr
+export LINUX_IMAGE=$(BUILD_DIR)/piggy.lzma
+else
+export LINUX_IMAGE=$(BUILD_DIR)/piggy.gz
+endif
+
+$(BUILD_DIR)/piggy.lzma: $(LINUX_KERNEL)
+ cat $^ | $(BUILD_DIR)/lzma/lzma e -si -so -eos > $@ || (rm -f $@ && false)
+
+$(BUILD_DIR)/piggy.gz: $(LINUX_KERNEL)
+ cat $^ | gzip -c9 $^ > $@ || (rm -f $@ && false)
+
TARGET_DIRS:=
TARGET_FS:=
IMAGE_TARGETS:=
@@ -70,7 +84,7 @@ $(BIN_DIR):
mkdir -p $(BIN_DIR)
compile: $(patsubst %,%-compile,$(TARGET_DIRS))
-install: utils-install $(patsubst %,%-install,$(TARGET_DIRS)) $(IMAGE_TARGETS)
+install: utils-install lzma-install $(LINUX_IMAGE) $(patsubst %,%-install,$(TARGET_DIRS)) $(IMAGE_TARGETS)
clean: $(patsubst %,%-clean,$(TARGET_DIRS)) image_clean
image_clean:
diff --git a/openwrt/target/jffs2/Makefile b/openwrt/target/jffs2/Makefile
index ff63e6f..ca61feb 100644
--- a/openwrt/target/jffs2/Makefile
+++ b/openwrt/target/jffs2/Makefile
@@ -12,14 +12,14 @@ clean: jffs2root-dirclean
$(BIN_DIR)/openwrt-generic-jffs2-4MB.trx:
$(MKFS_JFFS2) --pad --little-endian --squash -e 0x10000 \
-d $(TARGET_DIR) -o $(IMAGE)-4MB.jffs2
- PATH=$(TARGET_PATH) trx -o $@ \
- $(LINUX_KERNEL) -a 0x10000 $(IMAGE)-4MB.jffs2
+ PATH=$(TARGET_PATH) trx -o $@ $(LINUX_LOADER) \
+ $(LINUX_IMAGE) -a 0x10000 $(IMAGE)-4MB.jffs2
$(BIN_DIR)/openwrt-generic-jffs2-8MB.trx:
$(MKFS_JFFS2) --pad --little-endian --squash -e 0x20000 \
-d $(TARGET_DIR) -o $(IMAGE)-8MB.jffs2
- PATH=$(TARGET_PATH) trx -o $@ \
- $(LINUX_KERNEL) -a 0x20000 $(IMAGE)-8MB.jffs2
+ PATH=$(TARGET_PATH) trx -o $@ $(LINUX_LOADER) \
+ $(LINUX_IMAGE) -a 0x20000 $(IMAGE)-8MB.jffs2
$(BIN_DIR)/openwrt-wrt54g-jffs2.bin: $(BIN_DIR)/openwrt-generic-jffs2-4MB.trx
PATH=$(TARGET_PATH) addpattern -2 -i $< -o $@ -g
diff --git a/openwrt/target/squashfs-lzma/Makefile b/openwrt/target/squashfs-lzma/Makefile
index 6c70995..8e7e8e4 100644
--- a/openwrt/target/squashfs-lzma/Makefile
+++ b/openwrt/target/squashfs-lzma/Makefile
@@ -11,6 +11,6 @@ clean: squashfslzmaroot-dirclean
$(BIN_DIR)/openwrt-generic-squashfs.trx:
@mkdir -p $(TARGET_DIR)/jffs
$(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma $(TARGET_DIR) $(IMAGE).squashfslzma -noappend -root-owned -le
- PATH=$(TARGET_PATH) trx -o $@ \
- $(LINUX_KERNEL) $(IMAGE).squashfslzma
+ PATH=$(TARGET_PATH) trx -o $@ $(LINUX_LOADER) \
+ $(LINUX_IMAGE) $(IMAGE).squashfslzma
diff --git a/openwrt/target/squashfs-lzma/squashfslzmaroot.mk b/openwrt/target/squashfs-lzma/squashfslzmaroot.mk
index 62b7dbb..ca493d7 100644
--- a/openwrt/target/squashfs-lzma/squashfslzmaroot.mk
+++ b/openwrt/target/squashfs-lzma/squashfslzmaroot.mk
@@ -4,20 +4,20 @@
#
#############################################################
-SQUASHFSLZMA_DIR=$(BUILD_DIR)/squashfs2.1-r2-lzma
-SQUASHFSLZMA_SOURCE=squashfs2.1-r2-lzma.tar.gz
-SQUASHFSLZMA_SITE=http://openwrt.openbsd-geek.de
+SQUASHFSLZMA_DIR=$(BUILD_DIR)/squashfs2.1-r2
+SQUASHFSLZMA_SOURCE=squashfs2.1-r2.tar.gz
+SQUASHFSLZMA_SITE=http://mesh.dl.sourceforge.net/sourceforge/squashfs/
$(DL_DIR)/$(SQUASHFSLZMA_SOURCE):
$(SCRIPT_DIR)/download.pl $(DL_DIR) $(SQUASHFSLZMA_SOURCE) x $(SQUASHFSLZMA_SITE)
$(SQUASHFSLZMA_DIR)/.unpacked: $(DL_DIR)/$(SQUASHFSLZMA_SOURCE)
zcat $(DL_DIR)/$(SQUASHFSLZMA_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ patch -d $(SQUASHFSLZMA_DIR) -p1 < squashfs2.0-tools-lzma.patch
touch $(SQUASHFSLZMA_DIR)/.unpacked
$(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs: $(SQUASHFSLZMA_DIR)/.unpacked
- $(MAKE) -C $(SQUASHFSLZMA_DIR)/lzma/SRC/7zip/Compress/LZMA_Lib
- $(MAKE) -C $(SQUASHFSLZMA_DIR)/squashfs-tools mksquashfs-lzma
+ $(MAKE) -C $(SQUASHFSLZMA_DIR)/squashfs-tools mksquashfs-lzma LZMAPATH=$(BUILD_DIR)/lzma
squashfslzma: $(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs