Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/5] mtd-utils
@ 2009-03-26 20:20 Michael Roth
  2009-03-26 20:20 ` [Buildroot] [PATCH 1/5] mtd-utils: Prepare for version dump Michael Roth
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Michael Roth @ 2009-03-26 20:20 UTC (permalink / raw)
  To: buildroot

Hello,

I refurbished the mtd-utils a little bit. Hope it is ok.
If not, please let me know.


Michael Roth

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 1/5] mtd-utils: Prepare for version dump
  2009-03-26 20:20 [Buildroot] [PATCH 0/5] mtd-utils Michael Roth
@ 2009-03-26 20:20 ` Michael Roth
  2009-03-26 20:20 ` [Buildroot] [PATCH 3/5] mtd-utils: Prepare for upcoming mtd-utils with included mkfs.ubifs Michael Roth
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Michael Roth @ 2009-03-26 20:20 UTC (permalink / raw)
  To: buildroot

Prepared for new mtd-utils version and some cleanup and
clarification on configure options.

Signed-off-by: Michael Roth <mroth@nessie.de>
---
 package/mtd/1.1.0/mtd-utils-1.1.0-all-acl.patch    |   48 ++++++++
 .../mtd-utils-1.1.0-all-flashcp-npow2-erase.patch  |   23 ++++
 ...ils-1.1.0-all-mkfs.jffs2-device_table-fix.patch |   23 ++++
 .../mtd/1.1.0/mtd-utils-1.1.0-all-targets.patch    |   34 +++++
 package/mtd/1.1.0/mtd.mk                           |  128 ++++++++++++++++++++
 package/mtd/Config.in                              |   49 ++++----
 .../mtd/mtd-utils/mtd-utils-1.1.0-all-acl.patch    |   48 --------
 .../mtd-utils-1.1.0-all-flashcp-npow2-erase.patch  |   23 ----
 ...ils-1.1.0-all-mkfs.jffs2-device_table-fix.patch |   23 ----
 .../mtd-utils/mtd-utils-1.1.0-all-targets.patch    |   34 -----
 package/mtd/mtd-utils/mtd.mk                       |  128 --------------------
 package/mtd/mtd.mk                                 |    8 +-
 12 files changed, 287 insertions(+), 282 deletions(-)
 create mode 100644 package/mtd/1.1.0/mtd-utils-1.1.0-all-acl.patch
 create mode 100644 package/mtd/1.1.0/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch
 create mode 100644 package/mtd/1.1.0/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch
 create mode 100644 package/mtd/1.1.0/mtd-utils-1.1.0-all-targets.patch
 create mode 100644 package/mtd/1.1.0/mtd.mk
 delete mode 100644 package/mtd/mtd-utils/mtd-utils-1.1.0-all-acl.patch
 delete mode 100644 package/mtd/mtd-utils/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch
 delete mode 100644 package/mtd/mtd-utils/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch
 delete mode 100644 package/mtd/mtd-utils/mtd-utils-1.1.0-all-targets.patch
 delete mode 100644 package/mtd/mtd-utils/mtd.mk

diff --git a/package/mtd/1.1.0/mtd-utils-1.1.0-all-acl.patch b/package/mtd/1.1.0/mtd-utils-1.1.0-all-acl.patch
new file mode 100644
index 0000000..953786e
--- /dev/null
+++ b/package/mtd/1.1.0/mtd-utils-1.1.0-all-acl.patch
@@ -0,0 +1,48 @@
+Author:	Ulf Samuelsson
+Date:	2007-01-25
+
+Log:
+Patch adding "sys/acl.h" needed to compile mtd.
+
+Modified:
+	package/mtd/mtd_acl.patch
+
+Changeset
+	package/mtd/mtd_acl.patch
+
+diff -urN mtd_orig-0rig/include/sys/acl.h mtd_orig/include/sys/acl.h
+--- mtd_orig-0rig/include/sys/acl.h	1970-01-01 01:00:00.000000000 +0100
++++ mtd_orig/include/sys/acl.h	2007-01-17 20:11:22.000000000 +0100
+@@ -0,0 +1,32 @@
++/*
++  File: linux/posix_acl.h
++
++  (C) 2002 Andreas Gruenbacher, <a.gruenbacher@computer.org>
++*/
++
++
++#ifndef __LINUX_POSIX_ACL_H
++#define __LINUX_POSIX_ACL_H
++
++#define ACL_UNDEFINED_ID	(-1)
++
++/* a_type field in acl_user_posix_entry_t */
++#define ACL_TYPE_ACCESS		(0x8000)
++#define ACL_TYPE_DEFAULT	(0x4000)
++
++/* e_tag entry in struct posix_acl_entry */
++#define ACL_USER_OBJ		(0x01)
++#define ACL_USER		(0x02)
++#define ACL_GROUP_OBJ		(0x04)
++#define ACL_GROUP		(0x08)
++#define ACL_MASK		(0x10)
++#define ACL_OTHER		(0x20)
++
++/* permissions in the e_perm field */
++#define ACL_READ		(0x04)
++#define ACL_WRITE		(0x02)
++#define ACL_EXECUTE		(0x01)
++//#define ACL_ADD		(0x08)
++//#define ACL_DELETE		(0x10)
++
++#endif  /* __LINUX_POSIX_ACL_H */
diff --git a/package/mtd/1.1.0/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch b/package/mtd/1.1.0/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch
new file mode 100644
index 0000000..b9a0a60
--- /dev/null
+++ b/package/mtd/1.1.0/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch
@@ -0,0 +1,23 @@
+flashcp: handle non-power-of-2 erase size (E.G. for dataflash)
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ flashcp.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: mtd-utils-1.1.0/flashcp.c
+===================================================================
+--- mtd-utils-1.1.0.orig/flashcp.c	2007-08-03 15:55:51.000000000 +0200
++++ mtd-utils-1.1.0/flashcp.c	2009-02-17 14:02:09.000000000 +0100
+@@ -255,8 +255,9 @@
+ #warning "Check for smaller erase regions"
+ 
+ 	erase.start = 0;
+-	erase.length = filestat.st_size & ~(mtd.erasesize - 1);
+-	if (filestat.st_size % mtd.erasesize) erase.length += mtd.erasesize;
++	erase.length = (filestat.st_size + mtd.erasesize - 1) / mtd.erasesize;
++	erase.length *= mtd.erasesize;
++
+ 	if (flags & FLAG_VERBOSE)
+ 	{
+ 		/* if the user wants verbose output, erase 1 block at a time and show him/her what's going on */
diff --git a/package/mtd/1.1.0/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch b/package/mtd/1.1.0/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch
new file mode 100644
index 0000000..1fe23c8
--- /dev/null
+++ b/package/mtd/1.1.0/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch
@@ -0,0 +1,23 @@
+mkfs.jffs2.c: fix device_table handling
+
+find_filesystem_entry would ignore device_table entries for existing elements
+if the device type / permissions weren't exactly the same, effectively
+rendering device_table useless.
+---
+ mkfs.jffs2.c |    3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+Index: mtd-utils-1.1.0/mkfs.jffs2.c
+===================================================================
+--- mtd-utils-1.1.0.orig/mkfs.jffs2.c
++++ mtd-utils-1.1.0/mkfs.jffs2.c
+@@ -246,8 +246,7 @@
+ 		e = dir->files;
+ 	}
+ 	while (e) {
+-		/* Only bother to do the expensive strcmp on matching file types */
+-		if (type == (e->sb.st_mode & S_IFMT)) {
++		if (1) {
+ 			if (S_ISDIR(e->sb.st_mode)) {
+ 				int len = strlen(e->fullname);
+ 
diff --git a/package/mtd/1.1.0/mtd-utils-1.1.0-all-targets.patch b/package/mtd/1.1.0/mtd-utils-1.1.0-all-targets.patch
new file mode 100644
index 0000000..e887118
--- /dev/null
+++ b/package/mtd/1.1.0/mtd-utils-1.1.0-all-targets.patch
@@ -0,0 +1,34 @@
+diff -urN mtd-utils-1.1.0-0rig/Makefile mtd-utils-1.1.0/Makefile
+--- mtd-utils-1.1.0-0rig/Makefile	2007-08-03 15:55:51.000000000 +0200
++++ mtd-utils-1.1.0/Makefile	2007-09-27 08:20:55.000000000 +0200
+@@ -72,6 +72,30 @@
+ $(BUILDDIR)/sumtool: $(BUILDDIR)/sumtool.o $(BUILDDIR)/crc32.o
+ 	$(CC) $(LDFLAGS) -o $@ $^
+ 
++ftl_format:	$(BUILDDIR)/ftl_format
++flash_erase:	$(BUILDDIR)/flash_erase
++flash_eraseall:	$(BUILDDIR)/flash_eraseall
++nanddump:	$(BUILDDIR)/nanddump
++doc_loadbios:	$(BUILDDIR)/doc_loadbios
++mkfs.jffs:	$(BUILDDIR)/mkfs.jffs
++ftl_check:	$(BUILDDIR)/ftl_check
++mkfs.jffs2:	$(BUILDDIR)/mkfs.jffs2
++flash_lock:	$(BUILDDIR)/flash_lock
++flash_unlock:	$(BUILDDIR)/flash_unlock
++flash_info:	$(BUILDDIR)/flash_info
++flash_otp_info:	$(BUILDDIR)/flash_otp_info
++flash_otp_dump:	$(BUILDDIR)/flash_otp_dump
++mtd_debug:	$(BUILDDIR)/mtd_debug
++flashcp:	$(BUILDDIR)/flashcp
++nandwrite:	$(BUILDDIR)/nandwrite
++jffs2dump:	$(BUILDDIR)/jffs2dump
++nftldump:	$(BUILDDIR)/nftldump
++nftl_format:	$(BUILDDIR)/nftl_format
++docfdisk:	$(BUILDDIR)/docfdisk
++rfddump:	$(BUILDDIR)/rfddump
++rfdformat:	$(BUILDDIR)/rfdformat
++sumtool:	$(BUILDDIR)/sumtool
++
+ install: ${TARGETS}
+ 	mkdir -p ${DESTDIR}/${SBINDIR}
+ 	install -m0755 ${TARGETS} ${DESTDIR}/${SBINDIR}/
diff --git a/package/mtd/1.1.0/mtd.mk b/package/mtd/1.1.0/mtd.mk
new file mode 100644
index 0000000..e89e9ce
--- /dev/null
+++ b/package/mtd/1.1.0/mtd.mk
@@ -0,0 +1,128 @@
+#############################################################
+#
+# mtd provides jffs2 utilities
+#
+#############################################################
+MTD_VERSION:=1.1.0
+MTD_SOURCE:=mtd-utils-$(MTD_VERSION).tar.bz2
+MTD_SITE:=ftp://ftp.infradead.org/pub/mtd-utils
+MTD_HOST_DIR:= $(TOOL_BUILD_DIR)/mtd_orig
+MTD_DIR:=$(BUILD_DIR)/mtd_orig
+MTD_CAT:=$(BZCAT)
+MTD_NAME:=mtd-utils-$(MTD_VERSION)
+
+#############################################################
+#
+# Build mkfs.jffs2 and sumtool for use on the local host system if
+# needed by target/jffs2root.
+#
+#############################################################
+MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
+SUMTOOL := $(MTD_HOST_DIR)/sumtool
+
+$(DL_DIR)/$(MTD_SOURCE):
+	$(call DOWNLOAD,$(MTD_SITE),$(MTD_SOURCE))
+
+$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
+	rm -rf $(MTD_HOST_DIR)
+	mv $(TOOL_BUILD_DIR)/$(MTD_NAME) $(MTD_HOST_DIR)
+	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
+		package/mtd/1.1.0 mtd-utils-$(MTD_VERSION)-all\*.patch
+	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
+		package/mtd/1.1.0 mtd-utils-$(MTD_VERSION)-host\*.patch
+	touch $@
+
+
+$(MKFS_JFFS2): $(MTD_HOST_DIR)/.unpacked
+	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
+		$(MAKE) LINUXDIR=$(LINUX_DIR) \
+		BUILDDIR=$(MTD_HOST_DIR) \
+		-C $(MTD_HOST_DIR) mkfs.jffs2
+
+$(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
+	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
+		$(MAKE) LINUXDIR=$(LINUX_DIR) \
+		BUILDDIR=$(MTD_HOST_DIR) \
+		-C $(MTD_HOST_DIR) sumtool
+
+mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
+
+mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
+
+mtd-host-clean:
+	-$(MAKE) -C $(MTD_HOST_DIR) clean
+
+mtd-host-dirclean:
+	rm -rf $(MTD_HOST_DIR)
+
+#############################################################
+#
+# build mtd for use on the target system
+#
+#############################################################
+$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+	mv $(BUILD_DIR)/$(MTD_NAME) $(MTD_DIR)
+	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/1.1.0 mtd-utils-$(MTD_VERSION)-all\*.patch
+	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/1.1.0 mtd-utils-$(MTD_VERSION)-target\*.patch
+	touch $@
+
+MTD_TARGETS_n :=
+MTD_TARGETS_y :=
+
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASE) += flash_erase
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASEALL) += flash_eraseall
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_INFO) += flash_info
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_LOCK) += flash_lock
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_UNLOCK) += flash_unlock
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASHCP) += flashcp
+MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2) += mkfs.jffs2
+MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS) += mkfs.jffs
+MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP) += jffs2dump
+#MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS3DUMP) += jffs3dump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_SUMTOOL) += sumtool
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_CHECK) += ftl_check
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT) += ftl_format
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTLDUMP) += nftldump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTL_FORMAT) += nftl_format
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP) += nanddump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE) += nandwrite
+MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG) += mtd_debug
+MTD_TARGETS_$(BR2_PACKAGE_MTD_DOCFDISK) += docfdisk
+MTD_TARGETS_$(BR2_PACKAGE_MTD_DOC_LOADBIOS) += doc_loadbios
+
+MTD_BUILD_TARGETS := $(addprefix $(MTD_DIR)/, $(MTD_TARGETS_y))
+
+$(MTD_BUILD_TARGETS): $(MTD_DIR)/.unpacked
+	mkdir -p $(TARGET_DIR)/usr/sbin
+	$(MAKE) CFLAGS="-I. -I./include -I$(LINUX_HEADERS_DIR)/include -I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		BUILDDIR=$(MTD_DIR) \
+		CROSS=$(TARGET_CROSS) CC=$(TARGET_CC) LINUXDIR=$(LINUX26_DIR) WITHOUT_XATTR=1 -C $(MTD_DIR)
+
+MTD_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_y))
+
+$(MTD_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/%
+	cp -f $< $@
+	$(STRIPCMD) $@
+
+mtd: zlib $(MTD_TARGETS)
+
+mtd-source: $(DL_DIR)/$(MTD_SOURCE)
+
+mtd-clean:
+	-$(MAKE) -C $(MTD_DIR) clean
+
+mtd-dirclean:
+	rm -rf $(MTD_DIR)
+
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(BR2_PACKAGE_MTD),y)
+TARGETS+=mtd
+endif
diff --git a/package/mtd/Config.in b/package/mtd/Config.in
index 0bf489b..e2f2306 100644
--- a/package/mtd/Config.in
+++ b/package/mtd/Config.in
@@ -6,31 +6,36 @@ menuconfig BR2_PACKAGE_MTD
 
 if BR2_PACKAGE_MTD
 choice
-	prompt "Source package selection"
+	prompt "MTD-utils Version"
 	depends on BR2_PACKAGE_MTD
-	default BR2_PACKAGE_MTD20061007
+	default BR2_PACKAGE_MTD_UTILS_1_1_0
 
-config BR2_PACKAGE_MTD_UTILS
-	bool "Use MTD-utils release"
-	depends on BR2_PACKAGE_MTD
-	select BR2_PACKAGE_LZO
+
+config BR2_PACKAGE_MTD_UTILS_20050122
+	bool "mtd-utils 20050122"
+	depends on BR2_DEPRECATED
 	help
-	  Build mtd/jffs utilities with Dataflash support
+	  MTD snapshot from 20050122.
 
-config BR2_PACKAGE_MTD_20061007
-	bool "Use MTD snapshot from 20061007"
+config BR2_PACKAGE_MTD_UTILS_20061007
+	bool "mtd-utils 20061007"
 	depends on BR2_PACKAGE_MTD
 	help
-	  Build mtd/jffs utilities with Dataflash support
+	  MTD snapshot from 20061007.
 
-config BR2_PACKAGE_MTD_20050122
-	bool "Use MTD snapshot from 20050122"
-	depends on BR2_DEPRECATED
+	  Build mtd/jffs utilities with Dataflash support.
+
+config BR2_PACKAGE_MTD_UTILS_1_1_0
+	bool "mtd-utils 1.1.0"
+	depends on BR2_PACKAGE_MTD
+	select BR2_PACKAGE_LZO
 	help
-	  Use the stable release.
+	  MTD Utils release 1.1.0.
+
+	  Build mtd/jffs utilities with Dataflash support.
 
 config BR2_PACKAGE_MTD_UTILS_GIT
-	bool "Use MTD-utils from GIT"
+	bool "mtd-utils (almost) latest GIT"
 	help
 	  Use the latest from GIT or a particular revision.
 	  You should probably say NO except for specific purpose.
@@ -53,7 +58,7 @@ config BR2_PACKAGE_MTD_DOC_LOADBIOS
 config BR2_PACKAGE_MTD_ERASE
 	bool "erase"
 	default y
-	depends on BR2_PACKAGE_MTD_20050122
+	depends on BR2_PACKAGE_MTD_UTILS_20050122
 
 config BR2_PACKAGE_MTD_FLASHCP
 	bool "flashcp"
@@ -103,18 +108,18 @@ config BR2_PACKAGE_MTD_JFFS2DUMP
 config BR2_PACKAGE_MTD_JFFS3DUMP
 	bool "jffs3dump"
 	default y
-	depends on BR2_PACKAGE_MTD_20050122
+	depends on BR2_PACKAGE_MTD_UTILS_20050122
+
+config BR2_PACKAGE_MTD_MKFSJFFS
+	bool "mkfs.jffs"
+	default y
+	depends on BR2_PACKAGE_MTD_UTILS_20050122 || BR2_PACKAGE_MTD_UTILS_20061007 || BR2_PACKAGE_MTD_UTILS_1_1_0
 
 config BR2_PACKAGE_MTD_MKFSJFFS2
 	bool "mkfs.jffs2"
 	default y
 	depends on BR2_PACKAGE_MTD
 
-config BR2_PACKAGE_MTD_MKFSJFFS
-	bool "mkfs.jffs"
-	default y
-	depends on BR2_PACKAGE_MTD_20050122 || BR2_PACKAGE_MTD_20061007 || BR2_PACKAGE_MTD_UTILS
-
 config BR2_PACKAGE_MTD_MTD_DEBUG
 	bool "mtd_debug"
 	default y
diff --git a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-acl.patch b/package/mtd/mtd-utils/mtd-utils-1.1.0-all-acl.patch
deleted file mode 100644
index 953786e..0000000
--- a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-acl.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Author:	Ulf Samuelsson
-Date:	2007-01-25
-
-Log:
-Patch adding "sys/acl.h" needed to compile mtd.
-
-Modified:
-	package/mtd/mtd_acl.patch
-
-Changeset
-	package/mtd/mtd_acl.patch
-
-diff -urN mtd_orig-0rig/include/sys/acl.h mtd_orig/include/sys/acl.h
---- mtd_orig-0rig/include/sys/acl.h	1970-01-01 01:00:00.000000000 +0100
-+++ mtd_orig/include/sys/acl.h	2007-01-17 20:11:22.000000000 +0100
-@@ -0,0 +1,32 @@
-+/*
-+  File: linux/posix_acl.h
-+
-+  (C) 2002 Andreas Gruenbacher, <a.gruenbacher@computer.org>
-+*/
-+
-+
-+#ifndef __LINUX_POSIX_ACL_H
-+#define __LINUX_POSIX_ACL_H
-+
-+#define ACL_UNDEFINED_ID	(-1)
-+
-+/* a_type field in acl_user_posix_entry_t */
-+#define ACL_TYPE_ACCESS		(0x8000)
-+#define ACL_TYPE_DEFAULT	(0x4000)
-+
-+/* e_tag entry in struct posix_acl_entry */
-+#define ACL_USER_OBJ		(0x01)
-+#define ACL_USER		(0x02)
-+#define ACL_GROUP_OBJ		(0x04)
-+#define ACL_GROUP		(0x08)
-+#define ACL_MASK		(0x10)
-+#define ACL_OTHER		(0x20)
-+
-+/* permissions in the e_perm field */
-+#define ACL_READ		(0x04)
-+#define ACL_WRITE		(0x02)
-+#define ACL_EXECUTE		(0x01)
-+//#define ACL_ADD		(0x08)
-+//#define ACL_DELETE		(0x10)
-+
-+#endif  /* __LINUX_POSIX_ACL_H */
diff --git a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch b/package/mtd/mtd-utils/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch
deleted file mode 100644
index b9a0a60..0000000
--- a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-flashcp-npow2-erase.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-flashcp: handle non-power-of-2 erase size (E.G. for dataflash)
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- flashcp.c |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-Index: mtd-utils-1.1.0/flashcp.c
-===================================================================
---- mtd-utils-1.1.0.orig/flashcp.c	2007-08-03 15:55:51.000000000 +0200
-+++ mtd-utils-1.1.0/flashcp.c	2009-02-17 14:02:09.000000000 +0100
-@@ -255,8 +255,9 @@
- #warning "Check for smaller erase regions"
- 
- 	erase.start = 0;
--	erase.length = filestat.st_size & ~(mtd.erasesize - 1);
--	if (filestat.st_size % mtd.erasesize) erase.length += mtd.erasesize;
-+	erase.length = (filestat.st_size + mtd.erasesize - 1) / mtd.erasesize;
-+	erase.length *= mtd.erasesize;
-+
- 	if (flags & FLAG_VERBOSE)
- 	{
- 		/* if the user wants verbose output, erase 1 block at a time and show him/her what's going on */
diff --git a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch b/package/mtd/mtd-utils/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch
deleted file mode 100644
index 1fe23c8..0000000
--- a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-mkfs.jffs2-device_table-fix.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-mkfs.jffs2.c: fix device_table handling
-
-find_filesystem_entry would ignore device_table entries for existing elements
-if the device type / permissions weren't exactly the same, effectively
-rendering device_table useless.
----
- mkfs.jffs2.c |    3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-Index: mtd-utils-1.1.0/mkfs.jffs2.c
-===================================================================
---- mtd-utils-1.1.0.orig/mkfs.jffs2.c
-+++ mtd-utils-1.1.0/mkfs.jffs2.c
-@@ -246,8 +246,7 @@
- 		e = dir->files;
- 	}
- 	while (e) {
--		/* Only bother to do the expensive strcmp on matching file types */
--		if (type == (e->sb.st_mode & S_IFMT)) {
-+		if (1) {
- 			if (S_ISDIR(e->sb.st_mode)) {
- 				int len = strlen(e->fullname);
- 
diff --git a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-targets.patch b/package/mtd/mtd-utils/mtd-utils-1.1.0-all-targets.patch
deleted file mode 100644
index e887118..0000000
--- a/package/mtd/mtd-utils/mtd-utils-1.1.0-all-targets.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -urN mtd-utils-1.1.0-0rig/Makefile mtd-utils-1.1.0/Makefile
---- mtd-utils-1.1.0-0rig/Makefile	2007-08-03 15:55:51.000000000 +0200
-+++ mtd-utils-1.1.0/Makefile	2007-09-27 08:20:55.000000000 +0200
-@@ -72,6 +72,30 @@
- $(BUILDDIR)/sumtool: $(BUILDDIR)/sumtool.o $(BUILDDIR)/crc32.o
- 	$(CC) $(LDFLAGS) -o $@ $^
- 
-+ftl_format:	$(BUILDDIR)/ftl_format
-+flash_erase:	$(BUILDDIR)/flash_erase
-+flash_eraseall:	$(BUILDDIR)/flash_eraseall
-+nanddump:	$(BUILDDIR)/nanddump
-+doc_loadbios:	$(BUILDDIR)/doc_loadbios
-+mkfs.jffs:	$(BUILDDIR)/mkfs.jffs
-+ftl_check:	$(BUILDDIR)/ftl_check
-+mkfs.jffs2:	$(BUILDDIR)/mkfs.jffs2
-+flash_lock:	$(BUILDDIR)/flash_lock
-+flash_unlock:	$(BUILDDIR)/flash_unlock
-+flash_info:	$(BUILDDIR)/flash_info
-+flash_otp_info:	$(BUILDDIR)/flash_otp_info
-+flash_otp_dump:	$(BUILDDIR)/flash_otp_dump
-+mtd_debug:	$(BUILDDIR)/mtd_debug
-+flashcp:	$(BUILDDIR)/flashcp
-+nandwrite:	$(BUILDDIR)/nandwrite
-+jffs2dump:	$(BUILDDIR)/jffs2dump
-+nftldump:	$(BUILDDIR)/nftldump
-+nftl_format:	$(BUILDDIR)/nftl_format
-+docfdisk:	$(BUILDDIR)/docfdisk
-+rfddump:	$(BUILDDIR)/rfddump
-+rfdformat:	$(BUILDDIR)/rfdformat
-+sumtool:	$(BUILDDIR)/sumtool
-+
- install: ${TARGETS}
- 	mkdir -p ${DESTDIR}/${SBINDIR}
- 	install -m0755 ${TARGETS} ${DESTDIR}/${SBINDIR}/
diff --git a/package/mtd/mtd-utils/mtd.mk b/package/mtd/mtd-utils/mtd.mk
deleted file mode 100644
index f6b67da..0000000
--- a/package/mtd/mtd-utils/mtd.mk
+++ /dev/null
@@ -1,128 +0,0 @@
-#############################################################
-#
-# mtd provides jffs2 utilities
-#
-#############################################################
-MTD_VERSION:=1.1.0
-MTD_SOURCE:=mtd-utils-$(MTD_VERSION).tar.bz2
-MTD_SITE:=ftp://ftp.infradead.org/pub/mtd-utils
-MTD_HOST_DIR:= $(TOOL_BUILD_DIR)/mtd_orig
-MTD_DIR:=$(BUILD_DIR)/mtd_orig
-MTD_CAT:=$(BZCAT)
-MTD_NAME:=mtd-utils-$(MTD_VERSION)
-
-#############################################################
-#
-# Build mkfs.jffs2 and sumtool for use on the local host system if
-# needed by target/jffs2root.
-#
-#############################################################
-MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
-SUMTOOL := $(MTD_HOST_DIR)/sumtool
-
-$(DL_DIR)/$(MTD_SOURCE):
-	$(call DOWNLOAD,$(MTD_SITE),$(MTD_SOURCE))
-
-$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
-	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
-	rm -rf $(MTD_HOST_DIR)
-	mv $(TOOL_BUILD_DIR)/$(MTD_NAME) $(MTD_HOST_DIR)
-	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
-		package/mtd/mtd-utils mtd-utils-$(MTD_VERSION)-all\*.patch
-	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
-		package/mtd/mtd-utils mtd-utils-$(MTD_VERSION)-host\*.patch
-	touch $@
-
-
-$(MKFS_JFFS2): $(MTD_HOST_DIR)/.unpacked
-	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
-		$(MAKE) LINUXDIR=$(LINUX_DIR) \
-		BUILDDIR=$(MTD_HOST_DIR) \
-		-C $(MTD_HOST_DIR) mkfs.jffs2
-
-$(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
-	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
-		$(MAKE) LINUXDIR=$(LINUX_DIR) \
-		BUILDDIR=$(MTD_HOST_DIR) \
-		-C $(MTD_HOST_DIR) sumtool
-
-mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
-
-mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
-
-mtd-host-clean:
-	-$(MAKE) -C $(MTD_HOST_DIR) clean
-
-mtd-host-dirclean:
-	rm -rf $(MTD_HOST_DIR)
-
-#############################################################
-#
-# build mtd for use on the target system
-#
-#############################################################
-$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
-	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-	mv $(BUILD_DIR)/$(MTD_NAME) $(MTD_DIR)
-	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/mtd-utils mtd-utils-$(MTD_VERSION)-all\*.patch
-	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/mtd-utils mtd-utils-$(MTD_VERSION)-target\*.patch
-	touch $@
-
-MTD_TARGETS_n :=
-MTD_TARGETS_y :=
-
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASE) += flash_erase
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASEALL) += flash_eraseall
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_INFO) += flash_info
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_LOCK) += flash_lock
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_UNLOCK) += flash_unlock
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASHCP) += flashcp
-MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2) += mkfs.jffs2
-MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS) += mkfs.jffs
-MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP) += jffs2dump
-#MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS3DUMP) += jffs3dump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_SUMTOOL) += sumtool
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_CHECK) += ftl_check
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT) += ftl_format
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTLDUMP) += nftldump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTL_FORMAT) += nftl_format
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP) += nanddump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE) += nandwrite
-MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG) += mtd_debug
-MTD_TARGETS_$(BR2_PACKAGE_MTD_DOCFDISK) += docfdisk
-MTD_TARGETS_$(BR2_PACKAGE_MTD_DOC_LOADBIOS) += doc_loadbios
-
-MTD_BUILD_TARGETS := $(addprefix $(MTD_DIR)/, $(MTD_TARGETS_y))
-
-$(MTD_BUILD_TARGETS): $(MTD_DIR)/.unpacked
-	mkdir -p $(TARGET_DIR)/usr/sbin
-	$(MAKE) CFLAGS="-I. -I./include -I$(LINUX_HEADERS_DIR)/include -I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
-		LDFLAGS="$(TARGET_LDFLAGS)" \
-		BUILDDIR=$(MTD_DIR) \
-		CROSS=$(TARGET_CROSS) CC=$(TARGET_CC) LINUXDIR=$(LINUX26_DIR) WITHOUT_XATTR=1 -C $(MTD_DIR)
-
-MTD_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_y))
-
-$(MTD_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/%
-	cp -f $< $@
-	$(STRIPCMD) $@
-
-mtd: zlib $(MTD_TARGETS)
-
-mtd-source: $(DL_DIR)/$(MTD_SOURCE)
-
-mtd-clean:
-	-$(MAKE) -C $(MTD_DIR) clean
-
-mtd-dirclean:
-	rm -rf $(MTD_DIR)
-
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_MTD),y)
-TARGETS+=mtd
-endif
diff --git a/package/mtd/mtd.mk b/package/mtd/mtd.mk
index c7774fd..9d66698 100644
--- a/package/mtd/mtd.mk
+++ b/package/mtd/mtd.mk
@@ -1,10 +1,10 @@
-ifeq ($(BR2_PACKAGE_MTD_UTILS),y)
-include package/mtd/mtd-utils/mtd.mk
+ifeq ($(BR2_PACKAGE_MTD_UTILS_1_1_0),y)
+include package/mtd/1.1.0/mtd.mk
 endif
-ifeq ($(BR2_PACKAGE_MTD_20061007),y)
+ifeq ($(BR2_PACKAGE_MTD_UTILS_20061007),y)
 include package/mtd/20061007/mtd.mk
 endif
-ifeq ($(BR2_PACKAGE_MTD_20050122),y)
+ifeq ($(BR2_PACKAGE_MTD_UTILS_20050122),y)
 include package/mtd/20050122/mtd.mk
 endif
 ifeq ($(BR2_PACKAGE_MTD_UTILS_GIT),y)
-- 
1.6.0.6

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 3/5] mtd-utils: Prepare for upcoming mtd-utils with included mkfs.ubifs
  2009-03-26 20:20 [Buildroot] [PATCH 0/5] mtd-utils Michael Roth
  2009-03-26 20:20 ` [Buildroot] [PATCH 1/5] mtd-utils: Prepare for version dump Michael Roth
@ 2009-03-26 20:20 ` Michael Roth
  2009-03-26 20:20 ` [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source Michael Roth
  2009-03-26 20:20 ` [Buildroot] [PATCH 5/5] target/ubifs: Switched to mkfs.ubifs included in mtd-utils Michael Roth
  3 siblings, 0 replies; 9+ messages in thread
From: Michael Roth @ 2009-03-26 20:20 UTC (permalink / raw)
  To: buildroot

The upcoming mtd-utils have mkfs.ubifs included. So some minor
tweaks to the jffs2 root filesystem build are necessary to
distinguish it from an ubifs root filesytem build.

Signed-off-by: Michael Roth <mroth@nessie.de>
---
 package/mtd/1.1.0/mtd.mk    |    4 ++--
 package/mtd/1.2.0/mtd.mk    |    4 ++--
 package/mtd/20050122/mtd.mk |    4 ++--
 package/mtd/20061007/mtd.mk |    4 ++--
 target/jffs2/jffs2root.mk   |    6 +++---
 5 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/package/mtd/1.1.0/mtd.mk b/package/mtd/1.1.0/mtd.mk
index e89e9ce..76131a8 100644
--- a/package/mtd/1.1.0/mtd.mk
+++ b/package/mtd/1.1.0/mtd.mk
@@ -46,11 +46,11 @@ $(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
 		BUILDDIR=$(MTD_HOST_DIR) \
 		-C $(MTD_HOST_DIR) sumtool
 
-mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
+mtd-host-jffs2: $(MKFS_JFFS2) $(SUMTOOL)
 
 mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
 
-mtd-host-clean:
+mtd-host-jffs2-clean:
 	-$(MAKE) -C $(MTD_HOST_DIR) clean
 
 mtd-host-dirclean:
diff --git a/package/mtd/1.2.0/mtd.mk b/package/mtd/1.2.0/mtd.mk
index 76340e5..979075a 100644
--- a/package/mtd/1.2.0/mtd.mk
+++ b/package/mtd/1.2.0/mtd.mk
@@ -44,11 +44,11 @@ $(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
 		BUILDDIR=$(MTD_HOST_DIR) \
 		-C $(MTD_HOST_DIR) sumtool
 
-mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
+mtd-host-jffs2: $(MKFS_JFFS2) $(SUMTOOL)
 
 mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
 
-mtd-host-clean:
+mtd-host-jffs2-clean:
 	-$(MAKE) -C $(MTD_HOST_DIR) clean
 
 mtd-host-dirclean:
diff --git a/package/mtd/20050122/mtd.mk b/package/mtd/20050122/mtd.mk
index b5a9d5c..a456edd 100644
--- a/package/mtd/20050122/mtd.mk
+++ b/package/mtd/20050122/mtd.mk
@@ -40,11 +40,11 @@ $(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
 	CFLAGS=-I$(LINUX_HEADERS_DIR)/include $(MAKE) CC="$(HOSTCC)" CROSS= \
 		LINUXDIR=$(LINUX_DIR) -C $(MTD_HOST_DIR)/util sumtool
 
-mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
+mtd-host-jffs2: $(MKFS_JFFS2) $(SUMTOOL)
 
 mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
 
-mtd-host-clean:
+mtd-host-jffs2-clean:
 	-$(MAKE) -C $(MTD_HOST_DIR) clean
 
 mtd-host-dirclean:
diff --git a/package/mtd/20061007/mtd.mk b/package/mtd/20061007/mtd.mk
index dfd3485..f299a60 100644
--- a/package/mtd/20061007/mtd.mk
+++ b/package/mtd/20061007/mtd.mk
@@ -38,11 +38,11 @@ $(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
 	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
 		$(MAKE) LINUXDIR=$(LINUX_DIR) -C $(MTD_HOST_DIR) sumtool
 
-mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
+mtd-host-jffs2: $(MKFS_JFFS2) $(SUMTOOL)
 
 mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
 
-mtd-host-clean:
+mtd-host-jffs2-clean:
 	-$(MAKE) -C $(MTD_HOST_DIR) clean
 
 mtd-host-dirclean:
diff --git a/target/jffs2/jffs2root.mk b/target/jffs2/jffs2root.mk
index dc176cd..d80e89e 100644
--- a/target/jffs2/jffs2root.mk
+++ b/target/jffs2/jffs2root.mk
@@ -44,12 +44,12 @@ endif
 
 
 #
-# mtd-host is a dependency which builds a local copy of mkfs.jffs2 if it is needed.
+# mtd-host-jffs2 is a dependency which builds a local copy of mkfs.jffs2 if it is needed.
 # the actual build is done from package/mtd/mtd.mk and it sets the
 # value of MKFS_JFFS2 to either the previously installed copy or the one
 # just built.
 #
-$(JFFS2_TARGET): host-fakeroot makedevs mtd-host
+$(JFFS2_TARGET): host-fakeroot makedevs mtd-host-jffs2
 	- at find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIPCMD) 2>/dev/null || true
 ifneq ($(BR2_HAVE_MANPAGES),y)
 	@rm -rf $(TARGET_DIR)/usr/man
@@ -99,7 +99,7 @@ endif
 
 jffs2root-source: mtd-host-source
 
-jffs2root-clean: mtd-host-clean
+jffs2root-clean: mtd-host-jffs2-clean
 	-rm -f $(JFFS2_TARGET)
 
 jffs2root-dirclean: mtd-host-dirclean
-- 
1.6.0.6

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source
  2009-03-26 20:20 [Buildroot] [PATCH 0/5] mtd-utils Michael Roth
  2009-03-26 20:20 ` [Buildroot] [PATCH 1/5] mtd-utils: Prepare for version dump Michael Roth
  2009-03-26 20:20 ` [Buildroot] [PATCH 3/5] mtd-utils: Prepare for upcoming mtd-utils with included mkfs.ubifs Michael Roth
@ 2009-03-26 20:20 ` Michael Roth
  2009-04-02  0:40   ` Hamish Moffatt
  2009-03-26 20:20 ` [Buildroot] [PATCH 5/5] target/ubifs: Switched to mkfs.ubifs included in mtd-utils Michael Roth
  3 siblings, 1 reply; 9+ messages in thread
From: Michael Roth @ 2009-03-26 20:20 UTC (permalink / raw)
  To: buildroot

GIT version of mtd-utils bumped to 2009-03-26 and support
for the included mkfs.ubifs added.

Signed-off-by: Michael Roth <mroth@nessie.de>
---
 package/mtd/Config.in                              |    9 +
 package/mtd/git/mtd.mk                             |  178 ++++++++++++++++++++
 package/mtd/git/remove-file-offset-bits.patch      |   11 ++
 .../mtd/mtd-utils.git/mtd-utils-all-targets.patch  |   34 ----
 .../mtd/mtd-utils.git/mtd-utils-target-acl.patch   |   48 ------
 package/mtd/mtd-utils.git/mtd.mk                   |  145 ----------------
 package/mtd/mtd.mk                                 |    2 +-
 7 files changed, 199 insertions(+), 228 deletions(-)
 create mode 100644 package/mtd/git/mtd.mk
 create mode 100644 package/mtd/git/remove-file-offset-bits.patch
 delete mode 100644 package/mtd/mtd-utils.git/mtd-utils-all-targets.patch
 delete mode 100644 package/mtd/mtd-utils.git/mtd-utils-target-acl.patch
 delete mode 100644 package/mtd/mtd-utils.git/mtd.mk

diff --git a/package/mtd/Config.in b/package/mtd/Config.in
index 8c78a97..ffc02e4 100644
--- a/package/mtd/Config.in
+++ b/package/mtd/Config.in
@@ -1,6 +1,7 @@
 menuconfig BR2_PACKAGE_MTD
 	bool "mtd/jffs2 utilities"
 	select BR2_PACKAGE_ZLIB
+	select BR2_PACKAGE_LZO
 	help
 	  Build mtd/jffs utilities
 
@@ -131,6 +132,14 @@ config BR2_PACKAGE_MTD_MKFSJFFS2
 	default y
 	depends on BR2_PACKAGE_MTD
 
+config BR2_PACKAGE_MTD_MKFSUBIFS
+	bool "mkfs.ubifs"
+	default n
+	depends on BR2_PACKAGE_MTD_UTILS_GIT && BR2_LARGEFILE && BR2_PACKAGE_E2FSPROGS
+
+comment "mkfs.ubifs requires LARGEFILE support and depends on e2fsprogs"
+        depends on BR2_PACKAGE_MTD_UTILS_GIT && (!BR2_LARGEFILE || !BR2_PACKAGE_E2FSPROGS)
+
 config BR2_PACKAGE_MTD_MTD_DEBUG
 	bool "mtd_debug"
 	default y
diff --git a/package/mtd/git/mtd.mk b/package/mtd/git/mtd.mk
new file mode 100644
index 0000000..fffc84a
--- /dev/null
+++ b/package/mtd/git/mtd.mk
@@ -0,0 +1,178 @@
+#############################################################
+#
+# mtd provides flash, jffs2 and ubifs utilities
+#
+#############################################################
+MTD_VERSION:=0e9ed134f2092cef975f05aea2c1e415137e0c10
+MTD_SOURCE:=mtd-utils-$(MTD_VERSION).tar.gz
+MTD_URL:=http://git.infradead.org/mtd-utils.git?a=snapshot;h=$(MTD_VERSION);sf=tgz
+MTD_HOST_DIR:= $(TOOL_BUILD_DIR)/mtd-utils-$(MTD_VERSION)
+MTD_DIR:=$(BUILD_DIR)/mtd-utils-$(MTD_VERSION)
+MTD_CAT:=$(ZCAT)
+MTD_NAME:=mtd-utils
+
+#############################################################
+#
+# Build mkfs.jffs2, sumtool and mkfs.ubifs for use on the local
+# host system if needed by target/jffs2 and target/ubifs.
+#
+#############################################################
+MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
+SUMTOOL := $(MTD_HOST_DIR)/sumtool
+MKFS_UBIFS := $(MTD_HOST_DIR)/mkfs.ubifs/mkfs.ubifs
+
+$(DL_DIR)/$(MTD_SOURCE):
+	$(WGET) -O $(DL_DIR)/$(MTD_SOURCE) "$(MTD_URL)"
+
+$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
+	rm -rf $(MTD_HOST_DIR)
+	mv $(TOOL_BUILD_DIR)/$(MTD_NAME) $(MTD_HOST_DIR)
+	touch $@
+
+$(MKFS_JFFS2) $(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
+	$(MAKE) CFLAGS= LDFLAGS= \
+		BUILDDIR=$(MTD_HOST_DIR) \
+		CC="$(HOSTCC)" CROSS= WITHOUT_XATTR=1 -C $(MTD_HOST_DIR) \
+		$(MKFS_JFFS2) $(SUMTOOL)
+
+$(MKFS_UBIFS): $(MTD_HOST_DIR)/.unpacked
+	$(MAKE) CFLAGS= LDFLAGS= \
+		BUILDDIR=$(MTD_HOST_DIR)/mkfs.ubifs \
+		CC="$(HOSTCC)" CROSS= WITHOUT_XATTR=1 -C $(MTD_HOST_DIR)/mkfs.ubifs \
+		$(MKFS_UBIFS)
+
+mtd-host-jffs2: $(MKFS_JFFS2) $(SUMTOOL)
+
+mtd-host-jffs2-clean:
+	-$(MAKE) -C $(MTD_HOST_DIR) clean
+
+mtd-host-ubifs: $(MKFS_UBIFS)
+
+mtd-host-ubifs-clean:
+	-$(MAKE) -C $(MTD_HOST_DIR)/mkfs.ubifs clean
+
+mtd-host: mtd-host-jffs2 mtd-host-ubifs
+
+mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
+
+mtd-host-dirclean:
+	rm -rf $(MTD_HOST_DIR)
+
+#############################################################
+#
+# build mtd for use on the target system
+#
+#############################################################
+$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+	rm -rf $(MTD_DIR)
+	mv $(BUILD_DIR)/$(MTD_NAME) $(MTD_DIR)
+ifneq ($(BR2_LARGEFILE),y)
+	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/git remove-file-offset-bits.patch
+endif
+	touch $@
+
+MTD_TARGETS_n :=
+MTD_TARGETS_y :=
+
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASE) += flash_erase
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASEALL) += flash_eraseall
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_INFO) += flash_info
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_LOCK) += flash_lock
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_UNLOCK) += flash_unlock
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASHCP) += flashcp
+MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2) += mkfs.jffs2
+MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP) += jffs2dump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_SUMTOOL) += sumtool
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_CHECK) += ftl_check
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT) += ftl_format
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTLDUMP) += nftldump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTL_FORMAT) += nftl_format
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP) += nanddump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDTEST) += nandtest
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE) += nandwrite
+MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG) += mtd_debug
+MTD_TARGETS_$(BR2_PACKAGE_MTD_DOCFDISK) += docfdisk
+MTD_TARGETS_$(BR2_PACKAGE_MTD_DOC_LOADBIOS) += doc_loadbios
+MTD_TARGETS_$(BR2_PACKAGE_MTD_SERVE_IMAGE) += serve_image
+MTD_TARGETS_$(BR2_PACKAGE_MTD_RECV_IMAGE) += recv_image
+
+MTD_TARGETS_UBI_n :=
+MTD_TARGETS_UBI_y :=
+
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIATTACH) += ubiattach
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBICRC32) += ubicrc32
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIDETACH) += ubidetach
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIFORMAT) += ubiformat
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIMKVOL) += ubimkvol
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINFO) += ubinfo
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINIZE) += ubinize
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRMVOL) += ubirmvol
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIUPDATEVOL) += ubiupdatevol
+
+MTD_TARGETS_MKFSUBIFS_n :=
+MTD_TARGETS_MKFSUBIFS_y :=
+
+MTD_TARGETS_MKFSUBIFS_$(BR2_PACKAGE_MTD_MKFSUBIFS) += mkfs.ubifs
+
+MTD_BUILD_TARGETS := $(addprefix $(MTD_DIR)/, $(MTD_TARGETS_y))
+MTD_BUILD_UBI_TARGETS := $(addprefix $(MTD_DIR)/ubi-utils/, $(MTD_TARGETS_UBI_y))
+MTD_BUILD_MKFSUBIFS_TARGETS := $(addprefix $(MTD_DIR)/mkfs.ubifs/, $(MTD_TARGETS_MKFSUBIFS_y))
+
+$(MTD_BUILD_TARGETS): $(MTD_DIR)/.unpacked
+	$(MAKE) CFLAGS="-I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		BUILDDIR=$(MTD_DIR) \
+		CROSS=$(TARGET_CROSS) WITHOUT_XATTR=1 -C $(MTD_DIR) \
+		$(MTD_BUILD_TARGETS)
+
+$(MTD_BUILD_UBI_TARGETS): $(MTD_DIR)/.unpacked
+	$(MAKE) CFLAGS="-I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		BUILDDIR=$(MTD_DIR)/ubi-utils \
+		CROSS=$(TARGET_CROSS) -C $(MTD_DIR)/ubi-utils \
+		$(MTD_BUILD_UBI_TARGETS)
+
+$(MTD_BUILD_MKFSUBIFS_TARGETS): $(MTD_HOST_DIR)/.unpacked
+	$(MAKE) CFLAGS="-I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		BUILDDIR=$(MTD_DIR)/mkfs.ubifs \
+		CROSS=$(TARGET_CROSS) -C $(MTD_DIR)/mkfs.ubifs \
+		$(MTD_BUILD_MKFSUBIFS_TARGETS)
+
+MTD_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_y))
+MTD_UBI_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_UBI_y))
+MTD_MKFSUBIFS_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_MKFSUBIFS_y))
+
+$(MTD_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/%
+	cp -f $< $@
+	$(STRIPCMD) $@
+
+$(MTD_UBI_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/ubi-utils/%
+	cp -f $< $@
+	$(STRIPCMD) $@
+
+$(MTD_MKFSUBIFS_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/mkfs.ubifs/%
+	cp -f $< $@
+	$(STRIPCMD) $@
+
+mtd: zlib lzo $(MTD_TARGETS) $(MTD_UBI_TARGETS) $(MTD_MKFSUBIFS_TARGETS)
+
+mtd-source: $(DL_DIR)/$(MTD_SOURCE)
+
+mtd-clean:
+	-$(MAKE) -C $(MTD_DIR) clean
+
+mtd-dirclean:
+	rm -rf $(MTD_DIR)
+
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(BR2_PACKAGE_MTD),y)
+TARGETS+=mtd
+endif
diff --git a/package/mtd/git/remove-file-offset-bits.patch b/package/mtd/git/remove-file-offset-bits.patch
new file mode 100644
index 0000000..1905a8a
--- /dev/null
+++ b/package/mtd/git/remove-file-offset-bits.patch
@@ -0,0 +1,11 @@
+diff -ur mtd-utils.git/common.mk mtd-utils.work/common.mk
+--- mtd-utils.git/common.mk	2009-03-25 22:58:54.000000000 +0100
++++ mtd-utils.work/common.mk	2009-03-26 01:22:24.000000000 +0100
+@@ -12,7 +12,6 @@
+ 	$(call cc-option,-Wwrite-strings) \
+ 	$(call cc-option,-Wno-sign-compare)
+ CFLAGS += $(WFLAGS)
+-CPPFLAGS += -D_FILE_OFFSET_BITS=64
+ 
+ DESTDIR ?= /usr/local
+ PREFIX=/usr
diff --git a/package/mtd/mtd-utils.git/mtd-utils-all-targets.patch b/package/mtd/mtd-utils.git/mtd-utils-all-targets.patch
deleted file mode 100644
index e887118..0000000
--- a/package/mtd/mtd-utils.git/mtd-utils-all-targets.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -urN mtd-utils-1.1.0-0rig/Makefile mtd-utils-1.1.0/Makefile
---- mtd-utils-1.1.0-0rig/Makefile	2007-08-03 15:55:51.000000000 +0200
-+++ mtd-utils-1.1.0/Makefile	2007-09-27 08:20:55.000000000 +0200
-@@ -72,6 +72,30 @@
- $(BUILDDIR)/sumtool: $(BUILDDIR)/sumtool.o $(BUILDDIR)/crc32.o
- 	$(CC) $(LDFLAGS) -o $@ $^
- 
-+ftl_format:	$(BUILDDIR)/ftl_format
-+flash_erase:	$(BUILDDIR)/flash_erase
-+flash_eraseall:	$(BUILDDIR)/flash_eraseall
-+nanddump:	$(BUILDDIR)/nanddump
-+doc_loadbios:	$(BUILDDIR)/doc_loadbios
-+mkfs.jffs:	$(BUILDDIR)/mkfs.jffs
-+ftl_check:	$(BUILDDIR)/ftl_check
-+mkfs.jffs2:	$(BUILDDIR)/mkfs.jffs2
-+flash_lock:	$(BUILDDIR)/flash_lock
-+flash_unlock:	$(BUILDDIR)/flash_unlock
-+flash_info:	$(BUILDDIR)/flash_info
-+flash_otp_info:	$(BUILDDIR)/flash_otp_info
-+flash_otp_dump:	$(BUILDDIR)/flash_otp_dump
-+mtd_debug:	$(BUILDDIR)/mtd_debug
-+flashcp:	$(BUILDDIR)/flashcp
-+nandwrite:	$(BUILDDIR)/nandwrite
-+jffs2dump:	$(BUILDDIR)/jffs2dump
-+nftldump:	$(BUILDDIR)/nftldump
-+nftl_format:	$(BUILDDIR)/nftl_format
-+docfdisk:	$(BUILDDIR)/docfdisk
-+rfddump:	$(BUILDDIR)/rfddump
-+rfdformat:	$(BUILDDIR)/rfdformat
-+sumtool:	$(BUILDDIR)/sumtool
-+
- install: ${TARGETS}
- 	mkdir -p ${DESTDIR}/${SBINDIR}
- 	install -m0755 ${TARGETS} ${DESTDIR}/${SBINDIR}/
diff --git a/package/mtd/mtd-utils.git/mtd-utils-target-acl.patch b/package/mtd/mtd-utils.git/mtd-utils-target-acl.patch
deleted file mode 100644
index 953786e..0000000
--- a/package/mtd/mtd-utils.git/mtd-utils-target-acl.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Author:	Ulf Samuelsson
-Date:	2007-01-25
-
-Log:
-Patch adding "sys/acl.h" needed to compile mtd.
-
-Modified:
-	package/mtd/mtd_acl.patch
-
-Changeset
-	package/mtd/mtd_acl.patch
-
-diff -urN mtd_orig-0rig/include/sys/acl.h mtd_orig/include/sys/acl.h
---- mtd_orig-0rig/include/sys/acl.h	1970-01-01 01:00:00.000000000 +0100
-+++ mtd_orig/include/sys/acl.h	2007-01-17 20:11:22.000000000 +0100
-@@ -0,0 +1,32 @@
-+/*
-+  File: linux/posix_acl.h
-+
-+  (C) 2002 Andreas Gruenbacher, <a.gruenbacher@computer.org>
-+*/
-+
-+
-+#ifndef __LINUX_POSIX_ACL_H
-+#define __LINUX_POSIX_ACL_H
-+
-+#define ACL_UNDEFINED_ID	(-1)
-+
-+/* a_type field in acl_user_posix_entry_t */
-+#define ACL_TYPE_ACCESS		(0x8000)
-+#define ACL_TYPE_DEFAULT	(0x4000)
-+
-+/* e_tag entry in struct posix_acl_entry */
-+#define ACL_USER_OBJ		(0x01)
-+#define ACL_USER		(0x02)
-+#define ACL_GROUP_OBJ		(0x04)
-+#define ACL_GROUP		(0x08)
-+#define ACL_MASK		(0x10)
-+#define ACL_OTHER		(0x20)
-+
-+/* permissions in the e_perm field */
-+#define ACL_READ		(0x04)
-+#define ACL_WRITE		(0x02)
-+#define ACL_EXECUTE		(0x01)
-+//#define ACL_ADD		(0x08)
-+//#define ACL_DELETE		(0x10)
-+
-+#endif  /* __LINUX_POSIX_ACL_H */
diff --git a/package/mtd/mtd-utils.git/mtd.mk b/package/mtd/mtd-utils.git/mtd.mk
deleted file mode 100644
index e4ec4b2..0000000
--- a/package/mtd/mtd-utils.git/mtd.mk
+++ /dev/null
@@ -1,145 +0,0 @@
-#############################################################
-#
-# mtd provides jffs2 utilities
-#
-#############################################################
-MTD_VERSION:=fcb52ccc99679460640386c297023f852b108f68
-MTD_SOURCE:=mtd-utils-$(MTD_VERSION).tar.gz
-MTD_URL:=http://git.infradead.org/mtd-utils.git?a=snapshot;h=$(MTD_VERSION);sf=tgz
-MTD_HOST_DIR:= $(TOOL_BUILD_DIR)/mtd-utils-$(MTD_VERSION)
-MTD_DIR:=$(BUILD_DIR)/mtd-utils-$(MTD_VERSION)
-MTD_CAT:=$(ZCAT)
-MTD_NAME:=mtd-utils
-
-#############################################################
-#
-# Build mkfs.jffs2 and sumtool for use on the local host system if
-# needed by target/jffs2root.
-#
-#############################################################
-MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
-SUMTOOL := $(MTD_HOST_DIR)/sumtool
-
-$(DL_DIR)/$(MTD_SOURCE):
-	$(call DOWNLOAD,"$(MTD_URL)")
-
-$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
-	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
-	rm -rf $(MTD_HOST_DIR)
-	mv $(TOOL_BUILD_DIR)/$(MTD_NAME) $(MTD_HOST_DIR)
-	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
-		package/mtd/mtd-utils.git mtd-utils-all\*.patch
-	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
-		package/mtd/mtd-utils.git mtd-utils-host\*.patch
-	touch $@
-
-
-$(MKFS_JFFS2): $(MTD_HOST_DIR)/.unpacked
-	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
-		$(MAKE) \
-		BUILDDIR=$(MTD_HOST_DIR) WITHOUT_XATTR=1 \
-		-C $(MTD_HOST_DIR) mkfs.jffs2
-
-$(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
-	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
-		$(MAKE) \
-		BUILDDIR=$(MTD_HOST_DIR) WITHOUT_XATTR=1 \
-		-C $(MTD_HOST_DIR) sumtool
-
-mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
-
-mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
-
-mtd-host-clean:
-	-$(MAKE) -C $(MTD_HOST_DIR) clean
-
-mtd-host-dirclean:
-	rm -rf $(MTD_HOST_DIR)
-
-#############################################################
-#
-# build mtd for use on the target system
-#
-#############################################################
-$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
-	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-	rm -rf $(MTD_DIR)
-	mv $(BUILD_DIR)/$(MTD_NAME) $(MTD_DIR)
-	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/mtd-utils.git mtd-utils-all\*.patch
-	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/mtd-utils.git mtd-utils-target\*.patch
-	touch $@
-
-MTD_TARGETS_n :=
-MTD_TARGETS_y :=
-
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASE) += flash_erase
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASEALL) += flash_eraseall
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_INFO) += flash_info
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_LOCK) += flash_lock
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_UNLOCK) += flash_unlock
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASHCP) += flashcp
-MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2) += mkfs.jffs2
-MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP) += jffs2dump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_SUMTOOL) += sumtool
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_CHECK) += ftl_check
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT) += ftl_format
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTLDUMP) += nftldump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTL_FORMAT) += nftl_format
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP) += nanddump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDTEST) += nandtest
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE) += nandwrite
-MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG) += mtd_debug
-MTD_TARGETS_$(BR2_PACKAGE_MTD_DOCFDISK) += docfdisk
-MTD_TARGETS_$(BR2_PACKAGE_MTD_DOC_LOADBIOS) += doc_loadbios
-
-MTD_TARGETS_UBI_n :=
-MTD_TARGETS_UBI_y :=
-
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIATTACH) += ubiattach
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBICRC32) += ubicrc32
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIDETACH) += ubidetach
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIMIRROR) += ubimirror
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIMKVOL) += ubimkvol
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINFO) += ubinfo
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRMVOL) += ubirmvol
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIUPDATEVOL) += ubiupdatevol
-
-MTD_BUILD_TARGETS := $(addprefix $(MTD_DIR)/, $(MTD_TARGETS_y)) $(addprefix $(MTD_DIR)/ubi-utils/, $(MTD_TARGETS_UBI_y))
-
-$(MTD_BUILD_TARGETS): $(MTD_DIR)/.unpacked
-	mkdir -p $(TARGET_DIR)/usr/sbin
-	$(MAKE1) OPTFLAGS="-DNEED_BCOPY -Dbcmp=memcmp -I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
-		LDFLAGS="$(TARGET_LDFLAGS)" \
-	       BUILDDIR=$(MTD_DIR) \
-	       CROSS=$(TARGET_CROSS) CC=$(TARGET_CC) WITHOUT_XATTR=1 -C $(MTD_DIR)
-
-MTD_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_y))
-MTD_UBI_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_UBI_y))
-
-$(MTD_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/%
-	cp -f $< $@
-	$(STRIPCMD) $@
-
-$(MTD_UBI_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/ubi-utils/%
-	cp -f $< $@
-	$(STRIPCMD) $@
-
-mtd: zlib lzo $(MTD_TARGETS) $(MTD_UBI_TARGETS)
-
-mtd-source: $(DL_DIR)/$(MTD_SOURCE)
-
-mtd-clean:
-	-$(MAKE) -C $(MTD_DIR) clean
-
-mtd-dirclean:
-	rm -rf $(MTD_DIR)
-
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_MTD),y)
-TARGETS+=mtd
-endif
diff --git a/package/mtd/mtd.mk b/package/mtd/mtd.mk
index 7a2c70e..f7222b3 100644
--- a/package/mtd/mtd.mk
+++ b/package/mtd/mtd.mk
@@ -11,5 +11,5 @@ ifeq ($(BR2_PACKAGE_MTD_UTILS_20050122),y)
 include package/mtd/20050122/mtd.mk
 endif
 ifeq ($(BR2_PACKAGE_MTD_UTILS_GIT),y)
-include package/mtd/mtd-utils.git/mtd.mk
+include package/mtd/git/mtd.mk
 endif
-- 
1.6.0.6

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 5/5] target/ubifs: Switched to mkfs.ubifs included in mtd-utils
  2009-03-26 20:20 [Buildroot] [PATCH 0/5] mtd-utils Michael Roth
                   ` (2 preceding siblings ...)
  2009-03-26 20:20 ` [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source Michael Roth
@ 2009-03-26 20:20 ` Michael Roth
  2009-04-02  0:38   ` Hamish Moffatt
  3 siblings, 1 reply; 9+ messages in thread
From: Michael Roth @ 2009-03-26 20:20 UTC (permalink / raw)
  To: buildroot

The mkfs.ubifs is included in the upcomming mtd-utils. So
the ubifs root filesytem target uses the mtd-utils package
analog to the jffs2 root filesystem target.

Signed-off-by: Michael Roth <mroth@nessie.de>
---
 target/ubifs/Config.in    |    4 +++
 target/ubifs/ubifsroot.mk |   53 ++++++++++++---------------------------------
 2 files changed, 18 insertions(+), 39 deletions(-)

diff --git a/target/ubifs/Config.in b/target/ubifs/Config.in
index 85229f6..7544b50 100644
--- a/target/ubifs/Config.in
+++ b/target/ubifs/Config.in
@@ -1,9 +1,13 @@
 config BR2_TARGET_ROOTFS_UBIFS
 	bool "ubifs root filesystem"
 	select BR2_HOST_FAKEROOT
+	depends on BR2_PACKAGE_MTD_UTILS_GIT
 	help
 	  Build a ubifs root filesystem
 
+comment "ubifs root filesystem depends on latest mtd-utils (from GIT)"
+        depends on !BR2_PACKAGE_MTD_UTILS_GIT
+
 config BR2_TARGET_ROOTFS_UBIFS_LEBSIZE
 	hex "UBI logical erase block size"
 	depends on BR2_TARGET_ROOTFS_UBIFS
diff --git a/target/ubifs/ubifsroot.mk b/target/ubifs/ubifsroot.mk
index f0b519d..632e5ee 100644
--- a/target/ubifs/ubifsroot.mk
+++ b/target/ubifs/ubifsroot.mk
@@ -1,37 +1,5 @@
 #############################################################
 #
-# mkfs.ubifs to build to target ubifs filesystems
-#
-#############################################################
-#MKFS_UBIFS_VERSION=2582f128dad78591bc3adcc87c343c690bb82e61
-#MKFS_UBIFS_URL=http://git.infradead.org/users/dedekind/mkfs.ubifs.git?a=snapshot;h=$(MKFS_UBIFS_VERSION);sf=tgz
-MKFS_UBIFS_VERSION=v0.4
-MKFS_UBIFS_URL=http://git.infradead.org/users/dedekind/mkfs.ubifs.git?a=snapshot;h=refs/tags/mkfs.ubifs-$(MKFS_UBIFS_VERSION);sf=tgz
-MKFS_UBIFS_SOURCE:=mkfs.ubifs-$(MKFS_UBIFS_VERSION).tar.gz
-MKFS_UBIFS_DIR:= $(BUILD_DIR)/mkfs-ubifs-$(MKFS_UBIFS_VERSION)
-MKFS_UBIFS_CAT:=$(ZCAT)
-MKFS_UBIFS_NAME:=mkfs.ubifs
-
-$(DL_DIR)/$(MKFS_UBIFS_SOURCE):
-	$(call DOWNLOAD,"$(MKFS_UBIFS_URL)")
-
-$(MKFS_UBIFS_DIR)/.unpacked: $(DL_DIR)/$(MKFS_UBIFS_SOURCE)
-	$(ZCAT) $(DL_DIR)/$(MKFS_UBIFS_SOURCE) | tar -C $(BUILD_DIR) -xvf -
-	mv $(BUILD_DIR)/$(MKFS_UBIFS_NAME) $(MKFS_UBIFS_DIR)
-	toolchain/patch-kernel.sh $(MKFS_UBIFS_DIR) target/ubifs/ mkfs-ubifs-\*.patch
-	touch $@
-
-$(MKFS_UBIFS_DIR)/mkfs.ubifs: $(MKFS_UBIFS_DIR)/.unpacked
-	$(MAKE) -C $(MKFS_UBIFS_DIR)
-	touch -c $@
-
-mkfs.ubifs-dirclean:
-	rm -rf $(MKFS_UBIFS_DIR)
-
-mkfs.ubifs: $(MKFS_UBIFS_DIR)/mkfs.ubifs
-
-#############################################################
-#
 # Build the ubifs root filesystem image
 #
 #############################################################
@@ -76,7 +44,14 @@ else
 UBIFS_TARGET := $(UBIFS_BASE)
 endif
 
-$(UBIFS_BASE): host-fakeroot makedevs mkfs.ubifs
+
+#
+# mtd-host-ubifs is a dependency which builds a local copy of mkfs.jffs2 if it is needed.
+# the actual build is done from package/mtd/mtd.mk and it sets the
+# value of MKFS_UBIFS to either the previously installed copy or the one
+# just built.
+#
+$(UBIFS_BASE): host-fakeroot makedevs mtd-host-ubifs
 	- at find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIPCMD) 2>/dev/null || true
 ifneq ($(BR2_HAVE_MANPAGES),y)
 	@rm -rf $(TARGET_DIR)/usr/man
@@ -102,7 +77,7 @@ ifneq ($(TARGET_DEVICE_TABLE),)
 		>> $(PROJECT_BUILD_DIR)/_fakeroot.$(notdir $(UBIFS_TARGET))
 endif
 	# Use fakeroot so mkfs.ubifs believes the previous fakery
-	echo "$(MKFS_UBIFS_DIR)/mkfs.ubifs -d $(TARGET_DIR) " \
+	echo "$(MKFS_UBIFS) -d $(TARGET_DIR) " \
 		"$(UBIFS_OPTS) -o $(UBIFS_BASE)" >> $(PROJECT_BUILD_DIR)/_fakeroot.$(notdir $(UBIFS_TARGET))
 	chmod a+x $(PROJECT_BUILD_DIR)/_fakeroot.$(notdir $(UBIFS_TARGET))
 	$(STAGING_DIR)/usr/bin/fakeroot -- $(PROJECT_BUILD_DIR)/_fakeroot.$(notdir $(UBIFS_TARGET))
@@ -122,13 +97,13 @@ ifneq ($(UBIFS_COPYTO),)
 	@cp -f $(UBIFS_TARGET) $(UBIFS_COPYTO)
 endif
 
-ubifsroot-source: $(DL_DIR)/$(GENUBIFS_SOURCE)
+ubifsroot-source: mtd-host-source
 
-ubifsroot-clean:
-	-$(MAKE) -C $(MKFS_UBIFS_DIR) clean
+ubifsroot-clean: mtd-host-ubifs-clean
+	rm -f $(UBIFS_TARGET)
 
-ubifsroot-dirclean:
-	rm -rf $(MKFS_UBIFS_DIR)
+ubifsroot-dirclean: mtd-host-dirclean
+	rm -f $(UBIFS_TARGET)
 
 #############################################################
 #
-- 
1.6.0.6

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source
  2009-03-26 21:34 [Buildroot] [PATCH v2 0/5] mtd-utils Michael Roth
@ 2009-03-26 21:34 ` Michael Roth
  2009-04-08 20:57   ` Peter Korsgaard
  0 siblings, 1 reply; 9+ messages in thread
From: Michael Roth @ 2009-03-26 21:34 UTC (permalink / raw)
  To: buildroot

GIT version of mtd-utils bumped to 2009-03-26 and support
for the included mkfs.ubifs added.

Signed-off-by: Michael Roth <mroth@nessie.de>
---
 package/mtd/Config.in                              |    9 +
 package/mtd/git/mtd.mk                             |  178 ++++++++++++++++++++
 package/mtd/git/remove-file-offset-bits.patch      |   11 ++
 .../mtd/mtd-utils.git/mtd-utils-all-targets.patch  |   34 ----
 .../mtd/mtd-utils.git/mtd-utils-target-acl.patch   |   48 ------
 package/mtd/mtd-utils.git/mtd.mk                   |  145 ----------------
 package/mtd/mtd.mk                                 |    2 +-
 7 files changed, 199 insertions(+), 228 deletions(-)
 create mode 100644 package/mtd/git/mtd.mk
 create mode 100644 package/mtd/git/remove-file-offset-bits.patch
 delete mode 100644 package/mtd/mtd-utils.git/mtd-utils-all-targets.patch
 delete mode 100644 package/mtd/mtd-utils.git/mtd-utils-target-acl.patch
 delete mode 100644 package/mtd/mtd-utils.git/mtd.mk

diff --git a/package/mtd/Config.in b/package/mtd/Config.in
index 6514bb1..fa86f5f 100644
--- a/package/mtd/Config.in
+++ b/package/mtd/Config.in
@@ -43,6 +43,7 @@ config BR2_PACKAGE_MTD_UTILS_1_2_0
 
 config BR2_PACKAGE_MTD_UTILS_GIT
 	bool "mtd-utils (almost) latest GIT"
+	select BR2_PACKAGE_LZO
 	help
 	  Use the latest from GIT or a particular revision.
 	  You should probably say NO except for specific purpose.
@@ -111,6 +112,14 @@ config BR2_PACKAGE_MTD_MKFSJFFS2
 	bool "mkfs.jffs2"
 	default y
 
+config BR2_PACKAGE_MTD_MKFSUBIFS
+	bool "mkfs.ubifs"
+	default n
+	depends on BR2_PACKAGE_MTD_UTILS_GIT && BR2_LARGEFILE && BR2_PACKAGE_E2FSPROGS
+
+comment "mkfs.ubifs requires LARGEFILE support and depends on e2fsprogs"
+        depends on BR2_PACKAGE_MTD_UTILS_GIT && (!BR2_LARGEFILE || !BR2_PACKAGE_E2FSPROGS)
+
 config BR2_PACKAGE_MTD_MTD_DEBUG
 	bool "mtd_debug"
 	default y
diff --git a/package/mtd/git/mtd.mk b/package/mtd/git/mtd.mk
new file mode 100644
index 0000000..fffc84a
--- /dev/null
+++ b/package/mtd/git/mtd.mk
@@ -0,0 +1,178 @@
+#############################################################
+#
+# mtd provides flash, jffs2 and ubifs utilities
+#
+#############################################################
+MTD_VERSION:=0e9ed134f2092cef975f05aea2c1e415137e0c10
+MTD_SOURCE:=mtd-utils-$(MTD_VERSION).tar.gz
+MTD_URL:=http://git.infradead.org/mtd-utils.git?a=snapshot;h=$(MTD_VERSION);sf=tgz
+MTD_HOST_DIR:= $(TOOL_BUILD_DIR)/mtd-utils-$(MTD_VERSION)
+MTD_DIR:=$(BUILD_DIR)/mtd-utils-$(MTD_VERSION)
+MTD_CAT:=$(ZCAT)
+MTD_NAME:=mtd-utils
+
+#############################################################
+#
+# Build mkfs.jffs2, sumtool and mkfs.ubifs for use on the local
+# host system if needed by target/jffs2 and target/ubifs.
+#
+#############################################################
+MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
+SUMTOOL := $(MTD_HOST_DIR)/sumtool
+MKFS_UBIFS := $(MTD_HOST_DIR)/mkfs.ubifs/mkfs.ubifs
+
+$(DL_DIR)/$(MTD_SOURCE):
+	$(WGET) -O $(DL_DIR)/$(MTD_SOURCE) "$(MTD_URL)"
+
+$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
+	rm -rf $(MTD_HOST_DIR)
+	mv $(TOOL_BUILD_DIR)/$(MTD_NAME) $(MTD_HOST_DIR)
+	touch $@
+
+$(MKFS_JFFS2) $(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
+	$(MAKE) CFLAGS= LDFLAGS= \
+		BUILDDIR=$(MTD_HOST_DIR) \
+		CC="$(HOSTCC)" CROSS= WITHOUT_XATTR=1 -C $(MTD_HOST_DIR) \
+		$(MKFS_JFFS2) $(SUMTOOL)
+
+$(MKFS_UBIFS): $(MTD_HOST_DIR)/.unpacked
+	$(MAKE) CFLAGS= LDFLAGS= \
+		BUILDDIR=$(MTD_HOST_DIR)/mkfs.ubifs \
+		CC="$(HOSTCC)" CROSS= WITHOUT_XATTR=1 -C $(MTD_HOST_DIR)/mkfs.ubifs \
+		$(MKFS_UBIFS)
+
+mtd-host-jffs2: $(MKFS_JFFS2) $(SUMTOOL)
+
+mtd-host-jffs2-clean:
+	-$(MAKE) -C $(MTD_HOST_DIR) clean
+
+mtd-host-ubifs: $(MKFS_UBIFS)
+
+mtd-host-ubifs-clean:
+	-$(MAKE) -C $(MTD_HOST_DIR)/mkfs.ubifs clean
+
+mtd-host: mtd-host-jffs2 mtd-host-ubifs
+
+mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
+
+mtd-host-dirclean:
+	rm -rf $(MTD_HOST_DIR)
+
+#############################################################
+#
+# build mtd for use on the target system
+#
+#############################################################
+$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+	rm -rf $(MTD_DIR)
+	mv $(BUILD_DIR)/$(MTD_NAME) $(MTD_DIR)
+ifneq ($(BR2_LARGEFILE),y)
+	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/git remove-file-offset-bits.patch
+endif
+	touch $@
+
+MTD_TARGETS_n :=
+MTD_TARGETS_y :=
+
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASE) += flash_erase
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASEALL) += flash_eraseall
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_INFO) += flash_info
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_LOCK) += flash_lock
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_UNLOCK) += flash_unlock
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASHCP) += flashcp
+MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2) += mkfs.jffs2
+MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP) += jffs2dump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_SUMTOOL) += sumtool
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_CHECK) += ftl_check
+MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT) += ftl_format
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTLDUMP) += nftldump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTL_FORMAT) += nftl_format
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP) += nanddump
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDTEST) += nandtest
+MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE) += nandwrite
+MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG) += mtd_debug
+MTD_TARGETS_$(BR2_PACKAGE_MTD_DOCFDISK) += docfdisk
+MTD_TARGETS_$(BR2_PACKAGE_MTD_DOC_LOADBIOS) += doc_loadbios
+MTD_TARGETS_$(BR2_PACKAGE_MTD_SERVE_IMAGE) += serve_image
+MTD_TARGETS_$(BR2_PACKAGE_MTD_RECV_IMAGE) += recv_image
+
+MTD_TARGETS_UBI_n :=
+MTD_TARGETS_UBI_y :=
+
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIATTACH) += ubiattach
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBICRC32) += ubicrc32
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIDETACH) += ubidetach
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIFORMAT) += ubiformat
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIMKVOL) += ubimkvol
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINFO) += ubinfo
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINIZE) += ubinize
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRMVOL) += ubirmvol
+MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIUPDATEVOL) += ubiupdatevol
+
+MTD_TARGETS_MKFSUBIFS_n :=
+MTD_TARGETS_MKFSUBIFS_y :=
+
+MTD_TARGETS_MKFSUBIFS_$(BR2_PACKAGE_MTD_MKFSUBIFS) += mkfs.ubifs
+
+MTD_BUILD_TARGETS := $(addprefix $(MTD_DIR)/, $(MTD_TARGETS_y))
+MTD_BUILD_UBI_TARGETS := $(addprefix $(MTD_DIR)/ubi-utils/, $(MTD_TARGETS_UBI_y))
+MTD_BUILD_MKFSUBIFS_TARGETS := $(addprefix $(MTD_DIR)/mkfs.ubifs/, $(MTD_TARGETS_MKFSUBIFS_y))
+
+$(MTD_BUILD_TARGETS): $(MTD_DIR)/.unpacked
+	$(MAKE) CFLAGS="-I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		BUILDDIR=$(MTD_DIR) \
+		CROSS=$(TARGET_CROSS) WITHOUT_XATTR=1 -C $(MTD_DIR) \
+		$(MTD_BUILD_TARGETS)
+
+$(MTD_BUILD_UBI_TARGETS): $(MTD_DIR)/.unpacked
+	$(MAKE) CFLAGS="-I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		BUILDDIR=$(MTD_DIR)/ubi-utils \
+		CROSS=$(TARGET_CROSS) -C $(MTD_DIR)/ubi-utils \
+		$(MTD_BUILD_UBI_TARGETS)
+
+$(MTD_BUILD_MKFSUBIFS_TARGETS): $(MTD_HOST_DIR)/.unpacked
+	$(MAKE) CFLAGS="-I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
+		LDFLAGS="$(TARGET_LDFLAGS)" \
+		BUILDDIR=$(MTD_DIR)/mkfs.ubifs \
+		CROSS=$(TARGET_CROSS) -C $(MTD_DIR)/mkfs.ubifs \
+		$(MTD_BUILD_MKFSUBIFS_TARGETS)
+
+MTD_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_y))
+MTD_UBI_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_UBI_y))
+MTD_MKFSUBIFS_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_MKFSUBIFS_y))
+
+$(MTD_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/%
+	cp -f $< $@
+	$(STRIPCMD) $@
+
+$(MTD_UBI_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/ubi-utils/%
+	cp -f $< $@
+	$(STRIPCMD) $@
+
+$(MTD_MKFSUBIFS_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/mkfs.ubifs/%
+	cp -f $< $@
+	$(STRIPCMD) $@
+
+mtd: zlib lzo $(MTD_TARGETS) $(MTD_UBI_TARGETS) $(MTD_MKFSUBIFS_TARGETS)
+
+mtd-source: $(DL_DIR)/$(MTD_SOURCE)
+
+mtd-clean:
+	-$(MAKE) -C $(MTD_DIR) clean
+
+mtd-dirclean:
+	rm -rf $(MTD_DIR)
+
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(BR2_PACKAGE_MTD),y)
+TARGETS+=mtd
+endif
diff --git a/package/mtd/git/remove-file-offset-bits.patch b/package/mtd/git/remove-file-offset-bits.patch
new file mode 100644
index 0000000..1905a8a
--- /dev/null
+++ b/package/mtd/git/remove-file-offset-bits.patch
@@ -0,0 +1,11 @@
+diff -ur mtd-utils.git/common.mk mtd-utils.work/common.mk
+--- mtd-utils.git/common.mk	2009-03-25 22:58:54.000000000 +0100
++++ mtd-utils.work/common.mk	2009-03-26 01:22:24.000000000 +0100
+@@ -12,7 +12,6 @@
+ 	$(call cc-option,-Wwrite-strings) \
+ 	$(call cc-option,-Wno-sign-compare)
+ CFLAGS += $(WFLAGS)
+-CPPFLAGS += -D_FILE_OFFSET_BITS=64
+ 
+ DESTDIR ?= /usr/local
+ PREFIX=/usr
diff --git a/package/mtd/mtd-utils.git/mtd-utils-all-targets.patch b/package/mtd/mtd-utils.git/mtd-utils-all-targets.patch
deleted file mode 100644
index e887118..0000000
--- a/package/mtd/mtd-utils.git/mtd-utils-all-targets.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -urN mtd-utils-1.1.0-0rig/Makefile mtd-utils-1.1.0/Makefile
---- mtd-utils-1.1.0-0rig/Makefile	2007-08-03 15:55:51.000000000 +0200
-+++ mtd-utils-1.1.0/Makefile	2007-09-27 08:20:55.000000000 +0200
-@@ -72,6 +72,30 @@
- $(BUILDDIR)/sumtool: $(BUILDDIR)/sumtool.o $(BUILDDIR)/crc32.o
- 	$(CC) $(LDFLAGS) -o $@ $^
- 
-+ftl_format:	$(BUILDDIR)/ftl_format
-+flash_erase:	$(BUILDDIR)/flash_erase
-+flash_eraseall:	$(BUILDDIR)/flash_eraseall
-+nanddump:	$(BUILDDIR)/nanddump
-+doc_loadbios:	$(BUILDDIR)/doc_loadbios
-+mkfs.jffs:	$(BUILDDIR)/mkfs.jffs
-+ftl_check:	$(BUILDDIR)/ftl_check
-+mkfs.jffs2:	$(BUILDDIR)/mkfs.jffs2
-+flash_lock:	$(BUILDDIR)/flash_lock
-+flash_unlock:	$(BUILDDIR)/flash_unlock
-+flash_info:	$(BUILDDIR)/flash_info
-+flash_otp_info:	$(BUILDDIR)/flash_otp_info
-+flash_otp_dump:	$(BUILDDIR)/flash_otp_dump
-+mtd_debug:	$(BUILDDIR)/mtd_debug
-+flashcp:	$(BUILDDIR)/flashcp
-+nandwrite:	$(BUILDDIR)/nandwrite
-+jffs2dump:	$(BUILDDIR)/jffs2dump
-+nftldump:	$(BUILDDIR)/nftldump
-+nftl_format:	$(BUILDDIR)/nftl_format
-+docfdisk:	$(BUILDDIR)/docfdisk
-+rfddump:	$(BUILDDIR)/rfddump
-+rfdformat:	$(BUILDDIR)/rfdformat
-+sumtool:	$(BUILDDIR)/sumtool
-+
- install: ${TARGETS}
- 	mkdir -p ${DESTDIR}/${SBINDIR}
- 	install -m0755 ${TARGETS} ${DESTDIR}/${SBINDIR}/
diff --git a/package/mtd/mtd-utils.git/mtd-utils-target-acl.patch b/package/mtd/mtd-utils.git/mtd-utils-target-acl.patch
deleted file mode 100644
index 953786e..0000000
--- a/package/mtd/mtd-utils.git/mtd-utils-target-acl.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Author:	Ulf Samuelsson
-Date:	2007-01-25
-
-Log:
-Patch adding "sys/acl.h" needed to compile mtd.
-
-Modified:
-	package/mtd/mtd_acl.patch
-
-Changeset
-	package/mtd/mtd_acl.patch
-
-diff -urN mtd_orig-0rig/include/sys/acl.h mtd_orig/include/sys/acl.h
---- mtd_orig-0rig/include/sys/acl.h	1970-01-01 01:00:00.000000000 +0100
-+++ mtd_orig/include/sys/acl.h	2007-01-17 20:11:22.000000000 +0100
-@@ -0,0 +1,32 @@
-+/*
-+  File: linux/posix_acl.h
-+
-+  (C) 2002 Andreas Gruenbacher, <a.gruenbacher@computer.org>
-+*/
-+
-+
-+#ifndef __LINUX_POSIX_ACL_H
-+#define __LINUX_POSIX_ACL_H
-+
-+#define ACL_UNDEFINED_ID	(-1)
-+
-+/* a_type field in acl_user_posix_entry_t */
-+#define ACL_TYPE_ACCESS		(0x8000)
-+#define ACL_TYPE_DEFAULT	(0x4000)
-+
-+/* e_tag entry in struct posix_acl_entry */
-+#define ACL_USER_OBJ		(0x01)
-+#define ACL_USER		(0x02)
-+#define ACL_GROUP_OBJ		(0x04)
-+#define ACL_GROUP		(0x08)
-+#define ACL_MASK		(0x10)
-+#define ACL_OTHER		(0x20)
-+
-+/* permissions in the e_perm field */
-+#define ACL_READ		(0x04)
-+#define ACL_WRITE		(0x02)
-+#define ACL_EXECUTE		(0x01)
-+//#define ACL_ADD		(0x08)
-+//#define ACL_DELETE		(0x10)
-+
-+#endif  /* __LINUX_POSIX_ACL_H */
diff --git a/package/mtd/mtd-utils.git/mtd.mk b/package/mtd/mtd-utils.git/mtd.mk
deleted file mode 100644
index ca25ee5..0000000
--- a/package/mtd/mtd-utils.git/mtd.mk
+++ /dev/null
@@ -1,145 +0,0 @@
-#############################################################
-#
-# mtd provides jffs2 utilities
-#
-#############################################################
-MTD_VERSION:=fcb52ccc99679460640386c297023f852b108f68
-MTD_SOURCE:=mtd-utils-$(MTD_VERSION).tar.gz
-MTD_URL:=http://git.infradead.org/mtd-utils.git?a=snapshot;h=$(MTD_VERSION);sf=tgz
-MTD_HOST_DIR:= $(TOOL_BUILD_DIR)/mtd-utils-$(MTD_VERSION)
-MTD_DIR:=$(BUILD_DIR)/mtd-utils-$(MTD_VERSION)
-MTD_CAT:=$(ZCAT)
-MTD_NAME:=mtd-utils
-
-#############################################################
-#
-# Build mkfs.jffs2 and sumtool for use on the local host system if
-# needed by target/jffs2root.
-#
-#############################################################
-MKFS_JFFS2 := $(MTD_HOST_DIR)/mkfs.jffs2
-SUMTOOL := $(MTD_HOST_DIR)/sumtool
-
-$(DL_DIR)/$(MTD_SOURCE):
-	$(WGET) -O $(DL_DIR)/$(MTD_SOURCE) "$(MTD_URL)"
-
-$(MTD_HOST_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
-	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
-	rm -rf $(MTD_HOST_DIR)
-	mv $(TOOL_BUILD_DIR)/$(MTD_NAME) $(MTD_HOST_DIR)
-	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
-		package/mtd/mtd-utils.git mtd-utils-all\*.patch
-	toolchain/patch-kernel.sh $(MTD_HOST_DIR) \
-		package/mtd/mtd-utils.git mtd-utils-host\*.patch
-	touch $@
-
-
-$(MKFS_JFFS2): $(MTD_HOST_DIR)/.unpacked
-	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
-		$(MAKE) \
-		BUILDDIR=$(MTD_HOST_DIR) WITHOUT_XATTR=1 \
-		-C $(MTD_HOST_DIR) mkfs.jffs2
-
-$(SUMTOOL): $(MTD_HOST_DIR)/.unpacked
-	CC="$(HOSTCC)" CROSS= CFLAGS=-I$(LINUX_HEADERS_DIR)/include \
-		$(MAKE) \
-		BUILDDIR=$(MTD_HOST_DIR) WITHOUT_XATTR=1 \
-		-C $(MTD_HOST_DIR) sumtool
-
-mtd-host: $(MKFS_JFFS2) $(SUMTOOL)
-
-mtd-host-source: $(DL_DIR)/$(MTD_SOURCE)
-
-mtd-host-clean:
-	-$(MAKE) -C $(MTD_HOST_DIR) clean
-
-mtd-host-dirclean:
-	rm -rf $(MTD_HOST_DIR)
-
-#############################################################
-#
-# build mtd for use on the target system
-#
-#############################################################
-$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
-	$(MTD_CAT) $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-	rm -rf $(MTD_DIR)
-	mv $(BUILD_DIR)/$(MTD_NAME) $(MTD_DIR)
-	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/mtd-utils.git mtd-utils-all\*.patch
-	toolchain/patch-kernel.sh $(MTD_DIR) package/mtd/mtd-utils.git mtd-utils-target\*.patch
-	touch $@
-
-MTD_TARGETS_n :=
-MTD_TARGETS_y :=
-
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASE) += flash_erase
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_ERASEALL) += flash_eraseall
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_INFO) += flash_info
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_LOCK) += flash_lock
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASH_UNLOCK) += flash_unlock
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FLASHCP) += flashcp
-MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSJFFS2) += mkfs.jffs2
-MTD_TARGETS_$(BR2_PACKAGE_MTD_JFFS2DUMP) += jffs2dump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_SUMTOOL) += sumtool
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_CHECK) += ftl_check
-MTD_TARGETS_$(BR2_PACKAGE_MTD_FTL_FORMAT) += ftl_format
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTLDUMP) += nftldump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NFTL_FORMAT) += nftl_format
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDDUMP) += nanddump
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDTEST) += nandtest
-MTD_TARGETS_$(BR2_PACKAGE_MTD_NANDWRITE) += nandwrite
-MTD_TARGETS_$(BR2_PACKAGE_MTD_MTD_DEBUG) += mtd_debug
-MTD_TARGETS_$(BR2_PACKAGE_MTD_DOCFDISK) += docfdisk
-MTD_TARGETS_$(BR2_PACKAGE_MTD_DOC_LOADBIOS) += doc_loadbios
-
-MTD_TARGETS_UBI_n :=
-MTD_TARGETS_UBI_y :=
-
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIATTACH) += ubiattach
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBICRC32) += ubicrc32
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIDETACH) += ubidetach
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIMIRROR) += ubimirror
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIMKVOL) += ubimkvol
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBINFO) += ubinfo
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIRMVOL) += ubirmvol
-MTD_TARGETS_UBI_$(BR2_PACKAGE_MTD_UBIUPDATEVOL) += ubiupdatevol
-
-MTD_BUILD_TARGETS := $(addprefix $(MTD_DIR)/, $(MTD_TARGETS_y)) $(addprefix $(MTD_DIR)/ubi-utils/, $(MTD_TARGETS_UBI_y))
-
-$(MTD_BUILD_TARGETS): $(MTD_DIR)/.unpacked
-	mkdir -p $(TARGET_DIR)/usr/sbin
-	$(MAKE1) OPTFLAGS="-DNEED_BCOPY -Dbcmp=memcmp -I$(STAGING_DIR)/usr/include $(TARGET_CFLAGS)" \
-		LDFLAGS="$(TARGET_LDFLAGS)" \
-	       BUILDDIR=$(MTD_DIR) \
-	       CROSS=$(TARGET_CROSS) CC=$(TARGET_CC) WITHOUT_XATTR=1 -C $(MTD_DIR)
-
-MTD_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_y))
-MTD_UBI_TARGETS := $(addprefix $(TARGET_DIR)/usr/sbin/, $(MTD_TARGETS_UBI_y))
-
-$(MTD_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/%
-	cp -f $< $@
-	$(STRIPCMD) $@
-
-$(MTD_UBI_TARGETS): $(TARGET_DIR)/usr/sbin/% : $(MTD_DIR)/ubi-utils/%
-	cp -f $< $@
-	$(STRIPCMD) $@
-
-mtd: zlib lzo $(MTD_TARGETS) $(MTD_UBI_TARGETS)
-
-mtd-source: $(DL_DIR)/$(MTD_SOURCE)
-
-mtd-clean:
-	-$(MAKE) -C $(MTD_DIR) clean
-
-mtd-dirclean:
-	rm -rf $(MTD_DIR)
-
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_MTD),y)
-TARGETS+=mtd
-endif
diff --git a/package/mtd/mtd.mk b/package/mtd/mtd.mk
index 7a2c70e..f7222b3 100644
--- a/package/mtd/mtd.mk
+++ b/package/mtd/mtd.mk
@@ -11,5 +11,5 @@ ifeq ($(BR2_PACKAGE_MTD_UTILS_20050122),y)
 include package/mtd/20050122/mtd.mk
 endif
 ifeq ($(BR2_PACKAGE_MTD_UTILS_GIT),y)
-include package/mtd/mtd-utils.git/mtd.mk
+include package/mtd/git/mtd.mk
 endif
-- 
1.6.0.6

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 5/5] target/ubifs: Switched to mkfs.ubifs included in mtd-utils
  2009-03-26 20:20 ` [Buildroot] [PATCH 5/5] target/ubifs: Switched to mkfs.ubifs included in mtd-utils Michael Roth
@ 2009-04-02  0:38   ` Hamish Moffatt
  0 siblings, 0 replies; 9+ messages in thread
From: Hamish Moffatt @ 2009-04-02  0:38 UTC (permalink / raw)
  To: buildroot

On Thu, Mar 26, 2009 at 09:20:07PM +0100, Michael Roth wrote:
> The mkfs.ubifs is included in the upcomming mtd-utils. So
> the ubifs root filesytem target uses the mtd-utils package
> analog to the jffs2 root filesystem target.

Thanks, I just did something similar in my own tree.

> diff --git a/target/ubifs/Config.in b/target/ubifs/Config.in
> index 85229f6..7544b50 100644
> --- a/target/ubifs/Config.in
> +++ b/target/ubifs/Config.in
> @@ -1,9 +1,13 @@
>  config BR2_TARGET_ROOTFS_UBIFS
>  	bool "ubifs root filesystem"
>  	select BR2_HOST_FAKEROOT
> +	depends on BR2_PACKAGE_MTD_UTILS_GIT

This is needed due to the ugly multiple MTD versions stuff, but it 
has the unfortunate side-effect of adding target binaries too - 
all the default MTD utilities.

One solution would be to duplicate the mtd-utils.git stuff within a
separate host-only mkfs.ubifs target. Either inside target/ubifsroot, or
in toolchain or whatever. That could be switched over to mtd-utils 1.x.0
when it's released.



Hamish
-- 
Hamish Moffatt VK3SB <hamish@debian.org> <hamish@cloud.net.au>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source
  2009-03-26 20:20 ` [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source Michael Roth
@ 2009-04-02  0:40   ` Hamish Moffatt
  0 siblings, 0 replies; 9+ messages in thread
From: Hamish Moffatt @ 2009-04-02  0:40 UTC (permalink / raw)
  To: buildroot

On Thu, Mar 26, 2009 at 09:20:06PM +0100, Michael Roth wrote:
> GIT version of mtd-utils bumped to 2009-03-26 and support
> for the included mkfs.ubifs added.
> 
[...]
> +config BR2_PACKAGE_MTD_MKFSUBIFS
> +	bool "mkfs.ubifs"

It's pretty unlikely that you would want mkfs.ubifs on your target
system but I guess it's correct to include it. Actually I may need it
for my current project anyway :-|

> +	default n

That's superflous.

> +	depends on BR2_PACKAGE_MTD_UTILS_GIT && BR2_LARGEFILE && BR2_PACKAGE_E2FSPROGS

Depending on BR2_PACKAGE_E2FSPROGS also means a bunch of other binaries
get included by default. I think libuuid needs to be split out into a
separate package built from the same source tarball.



Hamish
-- 
Hamish Moffatt VK3SB <hamish@debian.org> <hamish@cloud.net.au>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source
  2009-03-26 21:34 ` [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source Michael Roth
@ 2009-04-08 20:57   ` Peter Korsgaard
  0 siblings, 0 replies; 9+ messages in thread
From: Peter Korsgaard @ 2009-04-08 20:57 UTC (permalink / raw)
  To: buildroot

>>>>> "Michael" == Michael Roth <mroth@nessie.de> writes:

 Michael> GIT version of mtd-utils bumped to 2009-03-26 and support
 Michael> for the included mkfs.ubifs added.

Do you have any idea how far away the next mtd-utils release is? I
gather we can get rid of this git version support and all the old
versions once that gets released?

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2009-04-08 20:57 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-26 20:20 [Buildroot] [PATCH 0/5] mtd-utils Michael Roth
2009-03-26 20:20 ` [Buildroot] [PATCH 1/5] mtd-utils: Prepare for version dump Michael Roth
2009-03-26 20:20 ` [Buildroot] [PATCH 3/5] mtd-utils: Prepare for upcoming mtd-utils with included mkfs.ubifs Michael Roth
2009-03-26 20:20 ` [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source Michael Roth
2009-04-02  0:40   ` Hamish Moffatt
2009-03-26 20:20 ` [Buildroot] [PATCH 5/5] target/ubifs: Switched to mkfs.ubifs included in mtd-utils Michael Roth
2009-04-02  0:38   ` Hamish Moffatt
  -- strict thread matches above, loose matches on Subject: below --
2009-03-26 21:34 [Buildroot] [PATCH v2 0/5] mtd-utils Michael Roth
2009-03-26 21:34 ` [Buildroot] [PATCH 4/5] mtd-utils: Version bump of the GIT source Michael Roth
2009-04-08 20:57   ` Peter Korsgaard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox