From 80737b583d0becd2e8d6f9182bc4d03eb680d04a Mon Sep 17 00:00:00 2001 From: nico Date: Sun, 2 May 2010 23:05:23 +0000 Subject: [PATCH] [backfire] merge [21237:21239] & [21244] git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@21322 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- Config.in | 490 ++++++++++++++++----------------- include/image.mk | 191 +++++++------ scripts/metadata.pl | 2 +- target/Config.in | 2 +- target/linux/ar71xx/Makefile | 2 +- target/linux/cobalt/Makefile | 2 +- target/linux/kirkwood/Makefile | 2 +- target/linux/rb532/Makefile | 2 +- target/linux/x86/Makefile | 2 +- target/linux/xburst/Makefile | 2 +- 10 files changed, 357 insertions(+), 340 deletions(-) diff --git a/Config.in b/Config.in index ffe1147f4..e4c133f40 100644 --- a/Config.in +++ b/Config.in @@ -13,66 +13,55 @@ config HAVE_DOT_CONFIG source "target/Config.in" menu "Target Images" - config TARGET_ROOTFS_INITRAMFS + + menuconfig TARGET_ROOTFS_INITRAMFS bool "ramdisk" default y if USES_INITRAMFS depends LINUX_2_6 help Embed the rootfs into the kernel (initramfs) - choice - prompt "ramdisk compression" - depends TARGET_ROOTFS_INITRAMFS - depends !LINUX_2_6_25 - default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx - default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips - default TARGET_INITRAMFS_COMPRESSION_NONE + choice + prompt "Compression" + default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx + default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips + default TARGET_INITRAMFS_COMPRESSION_NONE + depends TARGET_ROOTFS_INITRAMFS + depends !LINUX_2_6_25 + help + Select ramdisk compression. + + config TARGET_INITRAMFS_COMPRESSION_NONE + bool "none" + + config TARGET_INITRAMFS_COMPRESSION_GZIP + bool "gzip" + + config TARGET_INITRAMFS_COMPRESSION_BZIP2 + bool "bzip2" + + config TARGET_INITRAMFS_COMPRESSION_LZMA + bool "lzma" + + config TARGET_INITRAMFS_COMPRESSION_LZO + bool "lzo" + endchoice + + comment "Root filesystem archives" + + config TARGET_ROOTFS_CPIOGZ + bool "cpio.gz" + default y if USES_CPIOGZ help - Select ramdisk compression. + Build a compressed cpio archive of the the root filesystem - config TARGET_INITRAMFS_COMPRESSION_NONE - bool "NONE" - - config TARGET_INITRAMFS_COMPRESSION_GZIP - bool "GZIP" - - config TARGET_INITRAMFS_COMPRESSION_BZIP2 - bool "BZIP2" - - config TARGET_INITRAMFS_COMPRESSION_LZMA - bool "LZMA" - - config TARGET_INITRAMFS_COMPRESSION_LZO - bool "LZO" - endchoice - - config TARGET_ROOTFS_JFFS2 - bool "jffs2" - default y if USES_JFFS2 - depends !TARGET_ROOTFS_INITRAMFS - help - Build a jffs2 root filesystem - - config TARGET_ROOTFS_SQUASHFS - bool "squashfs" - default y if USES_SQUASHFS - depends !TARGET_ROOTFS_INITRAMFS - help - Build a squashfs-lzma root filesystem - - config TARGET_ROOTFS_TGZ - bool "tgz" - default y if USES_TGZ - depends !TARGET_ROOTFS_INITRAMFS + config TARGET_ROOTFS_TARGZ + bool "tar.gz" + default y if USES_TARGZ help Build a compressed tar archive of the the root filesystem - config TARGET_ROOTFS_CPIOGZ - bool "cpiogz" - default y if USES_CPIOGZ - depends !TARGET_ROOTFS_INITRAMFS - help - Build a compressed cpio archive of the the root filesystem + comment "Root filesystem images" config TARGET_ROOTFS_EXT2FS bool "ext2" @@ -88,6 +77,20 @@ menu "Target Images" help Create some bootable ISO image + config TARGET_ROOTFS_JFFS2 + bool "jffs2" + default y if USES_JFFS2 + depends !TARGET_ROOTFS_INITRAMFS + help + Build a jffs2 root filesystem + + config TARGET_ROOTFS_SQUASHFS + bool "squashfs" + default y if USES_SQUASHFS + depends !TARGET_ROOTFS_INITRAMFS + help + Build a squashfs-lzma root filesystem + config TARGET_ROOTFS_UBIFS bool "ubifs" default y if USES_UBIFS @@ -95,155 +98,157 @@ menu "Target Images" help Build a ubifs root filesystem -comment "Image Options" + comment "Image Options" -source "target/linux/*/image/Config.in" + source "target/linux/*/image/Config.in" - config TARGET_ROOTFS_FSPART - int "Filesystem part size (in MB)" - depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT2FS || TARGET_rb532 || TARGET_olpc - default 48 - help - Allows you to change the filesystem partition size + config TARGET_ROOTFS_FSPART + int "Root filesystem partition size (in MB)" + depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT2FS || TARGET_rb532 + default 48 + help + Allows you to change the root filesystem partition size - config TARGET_ROOTFS_MAXINODE - int "Maximum number of inodes in filesystem" - depends TARGET_ROOTFS_EXT2FS - default 6000 - help - Allows you to change the maximum number of inodes in the filesystem + config TARGET_ROOTFS_MAXINODE + int "Maximum number of inodes in root filesystem" + depends TARGET_ROOTFS_EXT2FS + default 6000 + help + Allows you to change the maximum number of inodes in the root filesystem endmenu menu "Global build settings" -config ALL - bool "Select all packages by default" - default n + config ALL + bool "Select all packages by default" + default n -comment "General build options" + comment "General build options" -config CLEAN_IPKG - bool - prompt "Disable ipkg/opkg installation on the target" - default n - help - This removes all ipkg data from the target directory before building the root fs - -config LARGEFILE - bool - prompt "Enable large file (files > 2 GB) support" - default y - help - Enable large file (files > 2 GB) support. - -config SHADOW_PASSWORDS - bool - prompt "Enable shadow password support" - default y - help - Enable shadow password support. - -choice - prompt "Binary stripping method" - default USE_STRIP if EXTERNAL_TOOLCHAIN - default USE_STRIP if USE_GLIBC || USE_EGLIBC - default USE_SSTRIP - help - Select the binary stripping method you wish to use. - - config NO_STRIP - bool "none" + config BUILD_PATENTED + default y + bool "Compile with support for patented functionality" help - This will install unstripped binaries (useful for native compiling/debugging) + When this option is disabled, software which provides patented functionality will not be built. + In case software provides optional support for patented functionality, + this optional support will get disabled for this package. - config USE_STRIP - bool "strip" + config LARGEFILE + bool + prompt "Enable large file (files > 2 GB) support" + default y help - This will install binaries stripped using strip from binutils + Enable large file (files > 2 GB) support. - - config USE_SSTRIP - bool "sstrip" - depends !DEBUG - depends !USE_GLIBC - depends !USE_EGLIBC + config SHADOW_PASSWORDS + bool + prompt "Enable shadow password support" + default y help - This will install binaries stripped using sstrip -endchoice + Enable shadow password support. -config BUILD_PATENTED - default y - bool "Compile with support for patented functionality" - help - When this option is disabled, software which provides patented functionality will not be built. - In case software provides optional support for patented functionality, - this optional support will get disabled for this package. + config CLEAN_IPKG + bool + prompt "Remove ipkg/opkg status data files in final images" + default n + help + This removes all ipkg/opkg status data files from the target directory before building the root fs -config STRIP_ARGS - string - prompt "Strip arguments" - depends USE_STRIP - default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG - default "--strip-all" - help - Specifies arguments passed to the strip command when stripping binaries + comment "Kernel build options" -config USE_MKLIBS - bool "Strip unnecessary functions from libraries" - help - Reduces libraries to only those functions that are necessary for using all - selected packages (including those selected as ) - Note that this will make the system libraries incompatible with most of the packages - that are not selected during the build process + config KERNEL_DEBUG_FS + bool "Compile the kernel with Debug FileSystem enabled" + default y + depends LINUX_2_6 + help + debugfs is a virtual file system that kernel developers use to put + debugging files into. Enable this option to be able to read and + write to these files. -config STRIP_KERNEL_EXPORTS - depends LINUX_2_6 - bool "Strip unnecessary exports from the kernel image" - help - Reduces kernel size by stripping unused kernel exports from the kernel image - Note that this might make the kernel incompatible with any kernel modules that - were not selected at the time the kernel image was created + config KERNEL_PROFILING + bool "Compile the kernel with profiling enabled" + default n + help + Enable the extended profiling support mechanisms used by profilers such + as OProfile. -comment "Package build options" + config KERNEL_KALLSYMS + bool "Compile the kernel with symbol table information" + default n + help + This will give you more information in stack traces from kernel oopses -config DEBUG - bool - prompt "Compile packages with debugging info" - default n - help - Adds -g3 to the CFLAGS + comment "Package build options" -config IPV6 - bool - prompt "Enable IPv6 support in packages" - default n - help - Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts). + config DEBUG + bool + prompt "Compile packages with debugging info" + default n + help + Adds -g3 to the CFLAGS -comment "Kernel build options" + config IPV6 + bool + prompt "Enable IPv6 support in packages" + default n + help + Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts). -config KERNEL_KALLSYMS - bool "Compile the kernel with symbol table information" - default n - help - This will give you more information in stack traces from kernel oopses + comment "Stripping options" -config KERNEL_PROFILING - bool "Compile the kernel with profiling enabled" - default n - help - Enable the extended profiling support mechanisms used by profilers such - as OProfile. + choice + prompt "Binary stripping method" + default USE_STRIP if EXTERNAL_TOOLCHAIN + default USE_STRIP if USE_GLIBC || USE_EGLIBC + default USE_SSTRIP + help + Select the binary stripping method you wish to use. -config KERNEL_DEBUG_FS - bool "Compile the kernel with Debug Filesystem enabled" - depends LINUX_2_6 - default y - help - debugfs is a virtual file system that kernel developers use to put - debugging files into. Enable this option to be able to read and - write to these files. + config NO_STRIP + bool "none" + help + This will install unstripped binaries (useful for native compiling/debugging) + + config USE_STRIP + bool "strip" + help + This will install binaries stripped using strip from binutils + + + config USE_SSTRIP + bool "sstrip" + depends !DEBUG + depends !USE_GLIBC + depends !USE_EGLIBC + help + This will install binaries stripped using sstrip + endchoice + + config STRIP_ARGS + string + prompt "Strip arguments" + depends USE_STRIP + default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG + default "--strip-all" + help + Specifies arguments passed to the strip command when stripping binaries + + config STRIP_KERNEL_EXPORTS + depends LINUX_2_6 + bool "Strip unnecessary exports from the kernel image" + help + Reduces kernel size by stripping unused kernel exports from the kernel image + Note that this might make the kernel incompatible with any kernel modules that + were not selected at the time the kernel image was created + + config USE_MKLIBS + bool "Strip unnecessary functions from libraries" + help + Reduces libraries to only those functions that are necessary for using all + selected packages (including those selected as ) + Note that this will make the system libraries incompatible with most of the packages + that are not selected during the build process endmenu @@ -251,97 +256,84 @@ menuconfig DEVEL bool "Advanced configuration options (for developers)" default n -config BROKEN - bool - prompt "Show broken platforms / packages" if DEVEL - default n + config BROKEN + bool "Show broken platforms / packages" if DEVEL + default n -config DOWNLOAD_FOLDER - string - prompt "Download folder" if DEVEL - default "" + config DOWNLOAD_FOLDER + string "Download folder" if DEVEL + default "" -config LOCALMIRROR - string - prompt "Local mirror for source packages" if DEVEL + config LOCALMIRROR + string "Local mirror for source packages" if DEVEL + default "" -config AUTOREBUILD - bool - prompt "Automatic rebuild of packages" if DEVEL - default y - help - Automatically rebuild packages when their files change + config AUTOREBUILD + bool "Automatic rebuild of packages" if DEVEL + default y + help + Automatically rebuild packages when their files change -config BUILD_SUFFIX - string - prompt "Build suffix to append to the BUILD_DIR variable" if DEVEL - default "" - help - Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix + config BUILD_SUFFIX + string "Build suffix to append to the BUILD_DIR variable" if DEVEL + default "" + help + Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix -config TARGET_ROOTFS_DIR - string - prompt "Override the default TARGET_ROOTFS_DIR variable" if DEVEL - default "" - help - Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path. - Use this option to re-define the location of the target root file system directory. + config TARGET_ROOTFS_DIR + string "Override the default TARGET_ROOTFS_DIR variable" if DEVEL + default "" + help + Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path. + Use this option to re-define the location of the target root file system directory. -config CCACHE - bool - prompt "Use ccache" if DEVEL - default n - help - Compiler cache; see http://ccache.samba.org/ + config CCACHE + bool "Use ccache" if DEVEL + default n + help + Compiler cache; see http://ccache.samba.org/ -config EXTERNAL_KERNEL_TREE - string - prompt "Use external kernel tree" if DEVEL - default "" + config EXTERNAL_KERNEL_TREE + string "Use external kernel tree" if DEVEL + default "" -config KERNEL_GIT_CLONE_URI - string - prompt "Enter git repository to clone" if DEVEL - default "" - help - Enter the full git repository path i.e.: - git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git - This will create a git clone of the kernel in your build - directory. - -config KERNEL_GIT_LOCAL_REPOSITORY - string - prompt "Enter path to local reference repository" if DEVEL - default "" - help - Enter a full pathname to a local reference git repository. - In this instance, the --refererence option of git clone will - be used thus creating a quick local clone of your repo. + config KERNEL_GIT_CLONE_URI + string "Enter git repository to clone" if DEVEL + default "" + help + Enter the full git repository path i.e.: + git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git + This will create a git clone of the kernel in your build + directory. + config KERNEL_GIT_LOCAL_REPOSITORY + string "Enter path to local reference repository" if DEVEL + default "" + help + Enter a full pathname to a local reference git repository. + In this instance, the --refererence option of git clone will + be used thus creating a quick local clone of your repo. menuconfig TARGET_OPTIONS bool "Target Options" if DEVEL -config TARGET_OPTIMIZATION - string - prompt "Target Optimizations" if TARGET_OPTIONS - default DEFAULT_TARGET_OPTIMIZATION - help - Optimizations to use when building for the target host. + config TARGET_OPTIMIZATION + string "Target Optimizations" if TARGET_OPTIONS + default DEFAULT_TARGET_OPTIMIZATION + help + Optimizations to use when building for the target host. -config SOFT_FLOAT - bool - prompt "Use software floating point by default" if TARGET_OPTIONS - default y - depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU - help - If your target CPU does not have a Floating Point Unit (FPU) or a - kernel FPU emulator, but you still wish to support floating point - functions, then everything will need to be compiled with soft floating - point support (-msoft-float). - - Most people will answer N. + config SOFT_FLOAT + bool "Use software floating point by default" if TARGET_OPTIONS + default y + depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU + help + If your target CPU does not have a Floating Point Unit (FPU) or a + kernel FPU emulator, but you still wish to support floating point + functions, then everything will need to be compiled with soft floating + point support (-msoft-float). + Most people will answer N. source "toolchain/Config.in" @@ -350,5 +342,3 @@ source "target/sdk/Config.in" source "target/toolchain/Config.in" source "tmp/.config-package.in" - - diff --git a/include/image.mk b/include/image.mk index 98e32b349..de5f4d84c 100644 --- a/include/image.mk +++ b/include/image.mk @@ -17,23 +17,42 @@ KDIR=$(KERNEL_BUILD_DIR) IMG_PREFIX:=openwrt-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET)) -ifneq ($(CONFIG_BIG_ENDIAN),y) -JFFS2OPTS := --pad --little-endian --squash -SQUASHFS_OPTS := -le +ifneq ($(CONFIG_BIG_ENDIAN),) + JFFS2OPTS := --pad --big-endian --squash -v + SQUASHFS_OPTS := -be else -JFFS2OPTS := --pad --big-endian --squash -SQUASHFS_OPTS := -be + JFFS2OPTS := --pad --little-endian --squash -v + SQUASHFS_OPTS := -le +endif + +ifeq ($(CONFIG_JFFS2_RTIME),y) + JFFS2OPTS += -X rtime +endif +ifeq ($(CONFIG_JFFS2_ZLIB),y) + JFFS2OPTS += -X zlib +endif +ifeq ($(CONFIG_JFFS2_LZMA),y) + JFFS2OPTS += -X lzma --compression-mode=size +endif +ifneq ($(CONFIG_JFFS2_RTIME),y) + JFFS2OPTS += -x rtime +endif +ifneq ($(CONFIG_JFFS2_ZLIB),y) + JFFS2OPTS += -x zlib +endif +ifneq ($(CONFIG_JFFS2_LZMA),y) + JFFS2OPTS += -x lzma endif ifneq ($(CONFIG_LINUX_2_4)$(CONFIG_LINUX_2_6_25),) -USE_SQUASHFS3 := y + USE_SQUASHFS3 := y endif ifneq ($(USE_SQUASHFS3),) -MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs-lzma + MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs-lzma else -MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs4 -SQUASHFS_OPTS := -comp lzma -processors 1 + MKSQUASHFS_CMD := $(STAGING_DIR_HOST)/bin/mksquashfs4 + SQUASHFS_OPTS := -comp lzma -processors 1 endif JFFS2_BLOCKSIZE ?= 64k 128k @@ -55,8 +74,17 @@ define prepare_generic_squashfs rm -f $(KDIR)/tmpfile.* endef -ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y) - ifeq ($(CONFIG_TARGET_ROOTFS_JFFS2),y) + +ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),) + + define Image/BuildKernel + cp $(KDIR)/vmlinux.elf $(BIN_DIR)/$(IMG_PREFIX)-vmlinux.elf + $(call Image/Build/Initramfs) + endef + +else + + ifneq ($(CONFIG_TARGET_ROOTFS_JFFS2),) define Image/mkfs/jffs2/sub # FIXME: removing this line will cause strange behaviour in the foreach loop below $(STAGING_DIR_HOST)/bin/mkfs.jffs2 $(JFFS2OPTS) -e $(patsubst %k,%KiB,$(1)) -o $(KDIR)/root.jffs2-$(1) -d $(TARGET_DIR) @@ -68,7 +96,7 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y) endef endif - ifeq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),y) + ifneq ($(CONFIG_TARGET_ROOTFS_SQUASHFS),) define Image/mkfs/squashfs @mkdir -p $(TARGET_DIR)/overlay $(MKSQUASHFS_CMD) $(TARGET_DIR) $(KDIR)/root.squashfs -nopad -noappend -root-owned $(SQUASHFS_OPTS) @@ -76,18 +104,7 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y) endef endif - ifeq ($(CONFIG_TARGET_ROOTFS_TGZ),y) - define Image/mkfs/tgz - $(TAR) -zcf $(BIN_DIR)/$(IMG_PREFIX)-rootfs.tgz --numeric-owner --owner=0 --group=0 -C $(TARGET_DIR)/ . - endef - endif - - ifeq ($(CONFIG_TARGET_ROOTFS_CPIOGZ),y) - define Image/mkfs/cpiogz - ( cd $(TARGET_DIR); find . | cpio -o -H newc | gzip -9 >$(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz ) - endef - endif - ifeq ($(CONFIG_TARGET_ROOTFS_UBIFS),y) + ifneq ($(CONFIG_TARGET_ROOTFS_UBIFS),) define Image/mkfs/ubifs $(CP) ./ubinize.cfg $(KDIR) $(STAGING_DIR_HOST)/bin/mkfs.ubifs $(UBIFS_OPTS) -o $(KDIR)/root.ubifs -d $(TARGET_DIR) @@ -96,22 +113,22 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y) $(call Image/Build,ubi) endef endif -else - define Image/BuildKernel - cp $(KDIR)/vmlinux.elf $(BIN_DIR)/$(IMG_PREFIX)-vmlinux.elf - $(call Image/Build/Initramfs) + +endif + +ifneq ($(CONFIG_TARGET_ROOTFS_CPIOGZ),) + define Image/mkfs/cpiogz + ( cd $(TARGET_DIR); find . | cpio -o -H newc | gzip -9 >$(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz ) endef endif -define Image/Checksum - ( cd ${BIN_DIR} ; \ - $(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs \ - md5sum --binary > md5sums \ - ) -endef +ifneq ($(CONFIG_TARGET_ROOTFS_TARGZ),) + define Image/mkfs/targz + $(TAR) -zcf $(BIN_DIR)/$(IMG_PREFIX)-rootfs.tar.gz --numeric-owner --owner=0 --group=0 -C $(TARGET_DIR)/ . + endef +endif - -ifeq ($(CONFIG_TARGET_ROOTFS_EXT2FS),y) +ifneq ($(CONFIG_TARGET_ROOTFS_EXT2FS),) E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_FSPART)*1024))) define Image/mkfs/ext2 @@ -120,7 +137,7 @@ ifeq ($(CONFIG_TARGET_ROOTFS_EXT2FS),y) endef endif -ifeq ($(CONFIG_TARGET_ROOTFS_ISO),y) +ifneq ($(CONFIG_TARGET_ROOTFS_ISO),) define Image/mkfs/iso $(call Image/Build,iso) endef @@ -139,52 +156,62 @@ define Image/mkfs/prepare $(call Image/mkfs/prepare/default) endef -define BuildImage -download: -prepare: -ifneq ($(IB),1) - compile: compile-targets FORCE - $(call Build/Compile) -else - compile: -endif -ifneq ($(IB),1) - install: compile install-targets FORCE - $(call Image/Prepare) - $(call Image/mkfs/prepare) - $(call Image/BuildKernel) - $(call Image/mkfs/jffs2) - $(call Image/mkfs/squashfs) - $(call Image/mkfs/tgz) - $(call Image/mkfs/cpiogz) - $(call Image/mkfs/ext2) - $(call Image/mkfs/iso) - $(call Image/mkfs/ubifs) - $(call Image/Checksum) -else - install: compile install-targets - $(call Image/BuildKernel) - $(call Image/mkfs/jffs2) - $(call Image/mkfs/squashfs) - $(call Image/mkfs/tgz) - $(call Image/mkfs/cpiogz) - $(call Image/mkfs/ext2) - $(call Image/mkfs/iso) - $(call Image/mkfs/ubifs) - $(call Image/Checksum) -endif - -ifneq ($(IB),1) - clean: clean-targets - $(call Build/Clean) -else - clean: -endif - -compile-targets: -install-targets: -clean-targets: +define Image/Checksum + ( cd ${BIN_DIR} ; \ + $(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs \ + md5sum --binary > md5sums \ + ) endef +define BuildImage + + download: + prepare: + + ifeq ($(IB),) + compile: compile-targets FORCE + $(call Build/Compile) + else + compile: + endif + + ifeq ($(IB),) + install: compile install-targets FORCE + $(call Image/Prepare) + $(call Image/mkfs/prepare) + $(call Image/BuildKernel) + $(call Image/mkfs/cpiogz) + $(call Image/mkfs/targz) + $(call Image/mkfs/ext2) + $(call Image/mkfs/iso) + $(call Image/mkfs/jffs2) + $(call Image/mkfs/squashfs) + $(call Image/mkfs/ubifs) + $(call Image/Checksum) + else + install: compile install-targets + $(call Image/BuildKernel) + $(call Image/mkfs/cpiogz) + $(call Image/mkfs/targz) + $(call Image/mkfs/ext2) + $(call Image/mkfs/iso) + $(call Image/mkfs/jffs2) + $(call Image/mkfs/squashfs) + $(call Image/mkfs/ubifs) + $(call Image/Checksum) + endif + + ifeq ($(IB),) + clean: clean-targets + $(call Build/Clean) + else + clean: + endif + + compile-targets: + install-targets: + clean-targets: + +endef diff --git a/scripts/metadata.pl b/scripts/metadata.pl index 70d1b4025..d76a295ee 100755 --- a/scripts/metadata.pl +++ b/scripts/metadata.pl @@ -162,7 +162,7 @@ sub target_config_features(@) { /squashfs/ and $ret .= "\tselect USES_SQUASHFS\n"; /jffs2/ and $ret .= "\tselect USES_JFFS2\n"; /ext2/ and $ret .= "\tselect USES_EXT2\n"; - /tgz/ and $ret .= "\tselect USES_TGZ\n"; + /targz/ and $ret .= "\tselect USES_TARGZ\n"; /cpiogz/ and $ret .= "\tselect USES_CPIOGZ\n"; /ubifs/ and $ret .= "\tselect USES_UBIFS\n"; /fpu/ and $ret .= "\tselect HAS_FPU\n"; diff --git a/target/Config.in b/target/Config.in index f881245c6..48fd82732 100644 --- a/target/Config.in +++ b/target/Config.in @@ -49,7 +49,7 @@ config USES_JFFS2 config USES_EXT2 bool -config USES_TGZ +config USES_TARGZ bool config USES_CPIOGZ diff --git a/target/linux/ar71xx/Makefile b/target/linux/ar71xx/Makefile index 74f409478..d1519feac 100644 --- a/target/linux/ar71xx/Makefile +++ b/target/linux/ar71xx/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk ARCH:=mips BOARD:=ar71xx BOARDNAME:=Atheros AR71xx/AR7240/AR913x -FEATURES:=squashfs jffs2 tgz +FEATURES:=squashfs jffs2 targz CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -funit-at-a-time LINUX_VERSION:=2.6.32.10 diff --git a/target/linux/cobalt/Makefile b/target/linux/cobalt/Makefile index d09117764..6c0746cc2 100644 --- a/target/linux/cobalt/Makefile +++ b/target/linux/cobalt/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk ARCH:=mipsel BOARD:=cobalt BOARDNAME:=Cobalt Microservers -FEATURES:=tgz pci ext2 +FEATURES:=targz pci ext2 CFLAGS:=-O2 -pipe -mtune=r5000 -funit-at-a-time LINUX_VERSION:=2.6.32.10 diff --git a/target/linux/kirkwood/Makefile b/target/linux/kirkwood/Makefile index a1e9e5f57..13f38af45 100644 --- a/target/linux/kirkwood/Makefile +++ b/target/linux/kirkwood/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk ARCH:=arm BOARD:=kirkwood BOARDNAME:=Marvell Kirkwood -FEATURES:=tgz usb +FEATURES:=targz usb LINUX_VERSION:=2.6.30.10 diff --git a/target/linux/rb532/Makefile b/target/linux/rb532/Makefile index 3b2716d8a..23c7e7646 100644 --- a/target/linux/rb532/Makefile +++ b/target/linux/rb532/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk ARCH:=mipsel BOARD:=rb532 BOARDNAME:=Mikrotik RouterBoard 532 -FEATURES:=jffs2 pci tgz +FEATURES:=jffs2 pci targz LINUX_VERSION:=2.6.32.10 diff --git a/target/linux/x86/Makefile b/target/linux/x86/Makefile index 4cf011af7..2870e19ce 100644 --- a/target/linux/x86/Makefile +++ b/target/linux/x86/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk ARCH:=i386 BOARD:=x86 BOARDNAME:=x86 -FEATURES:=squashfs jffs2 ext2 vdi vmdk pcmcia tgz +FEATURES:=squashfs jffs2 ext2 vdi vmdk pcmcia targz SUBTARGETS=generic olpc xen_domu ep80579 LINUX_VERSION:=2.6.32.10 diff --git a/target/linux/xburst/Makefile b/target/linux/xburst/Makefile index f118b7cdb..4614eca94 100644 --- a/target/linux/xburst/Makefile +++ b/target/linux/xburst/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk ARCH:=mipsel BOARD:=xburst BOARDNAME:=Ingenic XBurst -FEATURES:=jffs2 tgz ubifs audio +FEATURES:=jffs2 targz ubifs audio SUBTARGETS:=qi_lb60 n516 n526 LINUX_VERSION:=2.6.32.10