add option to mtd to select daily snapshot or a default version

This commit is contained in:
David Anders 2006-01-24 14:20:55 +00:00
parent 46142ab628
commit c1846c6566
2 changed files with 79 additions and 8 deletions

View File

@ -5,6 +5,44 @@ config BR2_PACKAGE_MTD
help
Build mtd/jffs utilities
menu "MTD package selection"
depends on BR2_PACKAGE_MTD
choice
prompt "Source package selection"
depends on BR2_PACKAGE_MTD
default BR2_PACKAGE_MTD_ORIG
config BR2_PACKAGE_MTD_ORIG
bool "Default source"
depends on BR2_PACKAGE_MTD
help
Use the stable release.
config BR2_PACKAGE_MTD_SNAPSHOT
bool "Daily snapshot"
depends on BR2_PACKAGE_MTD
help
Use the latest MTD daily snapshot instead of release.
You should probably say NO except for specific purpose.
endchoice
config BR2_PACKAGE_MTD_ORIG_STRING
string "MTD package name"
depends on BR2_PACKAGE_MTD_ORIG
default "mtd_20050122.orig.tar.gz"
help
You should not modify the file name, unless you want to
use a specific and private MTD package.
Default is mtd_20050122.orig.tar.gz
endmenu
menu "MTD tools selection"
depends BR2_PACKAGE_MTD
config BR2_PACKAGE_MTD_FLASH_ERASE
bool "flash_erase"
default y
@ -104,3 +142,5 @@ config BR2_PACKAGE_MTD_DOC_LOADBIOS
bool "doc_loadbios"
default y
depends on BR2_PACKAGE_MTD
endmenu

View File

@ -3,9 +3,24 @@
# mtd provides jffs2 utilities
#
#############################################################
MTD_SOURCE := mtd_20050122.orig.tar.gz
MTD_SITE := http://ftp.debian.org/debian/pool/main/m/mtd
MTD_HOST_DIR := $(TOOL_BUILD_DIR)/mtd-20050122.orig
ifeq ($(strip $(BR2_PACKAGE_MTD_SNAPSHOT)),y)
# Be aware that this changes daily....
TODAY=$(shell date -u +%Y%m%d)
MTD_DL_SOURCE=mtd-snapshot-$(TODAY).tar.bz2
MTD_SOURCE=mtd-snapshot.tar.bz2
MTD_SITE=ftp://ftp.uk.linux.org/pub/people/dwmw2/mtd/cvs
MTD_HOST_DIR := $(TOOL_BUILD_DIR)/mtd_snapshot
MTD_DIR:=$(BUILD_DIR)/mtd_snapshot
MTD_UNZIP=bzcat
else
MTD_SOURCE=$(shell echo -n $(BR2_PACKAGE_MTD_ORIG_STRING))
MTD_SITE=http://ftp.debian.org/debian/pool/main/m/mtd
MTD_HOST_DIR := $(TOOL_BUILD_DIR)/mtd_orig
MTD_DIR:=$(BUILD_DIR)/mtd_orig
MTD_UNZIP=zcat
endif
#############################################################
#
@ -15,15 +30,27 @@ MTD_HOST_DIR := $(TOOL_BUILD_DIR)/mtd-20050122.orig
#############################################################
MKFS_JFFS2 := $(MTD_HOST_DIR)/util/mkfs.jffs2
ifeq ($(strip $(BR2_PACKAGE_MTD_SNAPSHOT)),y)
$(DL_DIR)/$(MTD_SOURCE):
$(WGET) -P $(DL_DIR) $(MTD_SITE)/$(MTD_DL_SOURCE)
mv $(DL_DIR)/$(MTD_DL_SOURCE) $(DL_DIR)/$(MTD_SOURCE)
$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE_GENERIC)
$(MTD_UNZIP) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS)
mv $(TOOL_BUILD_DIR)/$(shell tar tjf dl/$(MTD_SOURCE) | head -n 1 | xargs basename) $(MTD_HOST_DIR)
touch $(MTD_HOST_DIR)/.unpacked
else
$(DL_DIR)/$(MTD_SOURCE):
echo $(DL_DIR)/$(MTD_SOURCE)
$(WGET) -P $(DL_DIR) $(MTD_SITE)/$(MTD_SOURCE)
$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
zcat $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
$(MTD_UNZIP) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS)
mv $(TOOL_BUILD_DIR)/$(shell tar tjf dl/$(MTD_SOURCE) | head -n 1 | xargs basename) $(MTD_HOST_DIR)
toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
package/mtd \*.patch
touch $(MTD_HOST_DIR)/.unpacked
endif
$(MTD_HOST_DIR)/util/mkfs.jffs2: $(MTD_HOST_DIR)/.unpacked
CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
@ -44,13 +71,17 @@ mtd-host-dirclean:
# build mtd for use on the target system
#
#############################################################
MTD_DIR := $(BUILD_DIR)/mtd-20050122.orig
$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
zcat $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
$(MTD_UNZIP) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
ifeq ($(strip $(BR2_PACKAGE_MTD_SNAPSHOT)),y)
mv $(BUILD_DIR)/$(shell tar tjf dl/$(MTD_SOURCE) | head -n 1 | xargs basename) $(MTD_DIR)
touch $(MTD_DIR)/.unpacked
else
mv $(BUILD_DIR)/$(shell tar tzf dl/$(MTD_SOURCE) | head -n 1 | xargs basename) $(MTD_DIR)
toolchain/patch-kernel.sh $(MTD_DIR) \
package/mtd \*.patch
touch $(MTD_DIR)/.unpacked
endif
MTD_TARGETS_n :=
MTD_TARGETS_y :=