summaryrefslogtreecommitdiffstats
path: root/openwrt/target/jffs2
diff options
context:
space:
mode:
authormbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-01-16 11:43:02 +0000
committermbm <mbm@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-01-16 11:43:02 +0000
commit3d80c3754b3421428b47f89ce26f07adf10e7501 (patch)
tree986493f1905c17f3a385831d60709492c4c5ed7a /openwrt/target/jffs2
parentf93f63a886f8fb0adcbc15fa0630e6ab9e7adc02 (diff)
Initial revision
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@197 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'openwrt/target/jffs2')
-rw-r--r--openwrt/target/jffs2/Config.in6
-rw-r--r--openwrt/target/jffs2/Makefile.in3
-rw-r--r--openwrt/target/jffs2/jffs2root.mk50
3 files changed, 59 insertions, 0 deletions
diff --git a/openwrt/target/jffs2/Config.in b/openwrt/target/jffs2/Config.in
new file mode 100644
index 000000000..0d79dd1ff
--- /dev/null
+++ b/openwrt/target/jffs2/Config.in
@@ -0,0 +1,6 @@
+config BR2_TARGET_ROOTFS_JFFS2
+ bool "jffs2 root filesystem for the target device"
+ default n
+ help
+ Build a jffs2 root filesystem
+
diff --git a/openwrt/target/jffs2/Makefile.in b/openwrt/target/jffs2/Makefile.in
new file mode 100644
index 000000000..31452eba8
--- /dev/null
+++ b/openwrt/target/jffs2/Makefile.in
@@ -0,0 +1,3 @@
+ifeq ($(strip $(BR2_TARGET_ROOTFS_JFFS2)),y)
+TARGETS+=jffs2root
+endif
diff --git a/openwrt/target/jffs2/jffs2root.mk b/openwrt/target/jffs2/jffs2root.mk
new file mode 100644
index 000000000..5dd79032f
--- /dev/null
+++ b/openwrt/target/jffs2/jffs2root.mk
@@ -0,0 +1,50 @@
+#############################################################
+#
+# mtd provides us with mkfs.jffs2, to target JFFS2 filesystems
+#
+#############################################################
+
+MTD_DIR:=$(BUILD_DIR)/mtd-20011217
+MTD_SOURCE=mtd_20011217.orig.tar.gz
+MTD_SITE=http://ftp.debian.org/debian/pool/main/m/mtd
+MKFS_JFFS2=$(shell which mkfs.jffs2 2>/dev/null || echo $(MTD_DIR)/util/mkfs.jffs2)
+
+$(DL_DIR)/$(MTD_SOURCE):
+ $(WGET) -P $(DL_DIR) $(MTD_SITE)/$(MTD_SOURCE)
+
+$(MTD_DIR)/.unpacked: $(DL_DIR)/$(MTD_SOURCE)
+ zcat $(DL_DIR)/$(MTD_SOURCE) | tar -C $(BUILD_DIR) -xvf -
+ touch $(MTD_DIR)/.unpacked
+
+$(MTD_DIR)/util/mkfs.jffs2: $(MTD_DIR)/.unpacked
+# CFLAGS=-I$(LINUX_HEADERS_DIR)/include $(MAKE) LINUXDIR=$(LINUX_DIR) -C $(MTD_DIR)/util
+ $(MAKE) LINUXDIR=$(LINUX_DIR) -C $(MTD_DIR)/util
+
+mtd: $(MKFS_JFFS2)
+
+
+#############################################################
+#
+# Build the jffs2 root filesystem image
+#
+#############################################################
+
+jffs2root: mtd
+ #-@find $(TARGET_DIR)/lib -type f -name \*.so\* | xargs $(STRIP) --strip-unneeded 2>/dev/null || true;
+ -@find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIP) 2>/dev/null || true;
+ @rm -rf $(TARGET_DIR)/usr/man
+ @rm -rf $(TARGET_DIR)/usr/info
+ $(MKFS_JFFS2) --pad --little-endian --squash -e 0x20000 \
+ -D target/default/device_table.txt -d $(TARGET_DIR) \
+ -o $(IMAGE).jffs2
+
+jffs2root-source: $(DL_DIR)/$(MTD_SOURCE)
+
+jffs2root-clean:
+ -$(MAKE) -C $(MTD_DIR) clean
+
+jffs2root-dirclean:
+ rm -rf $(MTD_DIR)
+
+
+