Author: jow
Date: 2015-04-20 15:57:43 +0200 (Mon, 20 Apr 2015)
New Revision: 45517

Added:
   trunk/tools/make-ext4fs/
   trunk/tools/make-ext4fs/Makefile
Modified:
   trunk/include/image.mk
   trunk/target/linux/x86/image/gen_image_generic.sh
   trunk/tools/Makefile
Log:
all: replace genext2fs with make_ext4fs

Signed-off-by: Jo-Philipp Wich <[email protected]>

Modified: trunk/include/image.mk
===================================================================
--- trunk/include/image.mk      2015-04-20 13:36:25 UTC (rev 45516)
+++ trunk/include/image.mk      2015-04-20 13:57:43 UTC (rev 45517)
@@ -231,15 +231,15 @@
        $(TAR) -czpf $(BIN_DIR)/$(IMG_PREFIX)$(if 
$(PROFILE),-$(PROFILE))-rootfs.tar.gz --numeric-owner --owner=0 --group=0 -C 
$(TARGET_DIR)/ .
 endef
 
-E2SIZE=$(shell echo 
$$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024*1024/$(CONFIG_TARGET_EXT4_BLOCKSIZE))))
+E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024*1024)))
 
 define Image/mkfs/ext4
-# generate an ext2 fs
-       $(STAGING_DIR_HOST)/bin/genext2fs -U -B $(CONFIG_TARGET_EXT4_BLOCKSIZE) 
-b $(E2SIZE) -N $(CONFIG_TARGET_EXT4_MAXINODE) -d $(TARGET_DIR)/ 
$(KDIR)/root.ext4 -m $(CONFIG_TARGET_EXT4_RESERVED_PCT) $(MKFS_DEVTABLE_OPT)
-# convert it to ext4
-       $(STAGING_DIR_HOST)/bin/tune2fs $(if $(CONFIG_TARGET_EXT4_JOURNAL),-j) 
-O extents,uninit_bg,dir_index $(KDIR)/root.ext4
-# fix it up
-       $(STAGING_DIR_HOST)/bin/e2fsck -fy $(KDIR)/root.ext4
+       $(STAGING_DIR_HOST)/bin/make_ext4fs \
+               -l $(E2SIZE) -b $(CONFIG_TARGET_EXT4_BLOCKSIZE) \
+               -i $(CONFIG_TARGET_EXT4_MAXINODE) \
+               -m $(CONFIG_TARGET_EXT4_RESERVED_PCT) \
+               $(if $(CONFIG_TARGET_EXT4_JOURNAL),,-J) \
+               $(KDIR)/root.ext4 $(TARGET_DIR)/
 endef
 
 define Image/mkfs/prepare/default

Modified: trunk/target/linux/x86/image/gen_image_generic.sh
===================================================================
--- trunk/target/linux/x86/image/gen_image_generic.sh   2015-04-20 13:36:25 UTC 
(rev 45516)
+++ trunk/target/linux/x86/image/gen_image_generic.sh   2015-04-20 13:57:43 UTC 
(rev 45517)
@@ -23,17 +23,15 @@
 set `ptgen -o "$OUTPUT" -h $head -s $sect -p ${KERNELSIZE}m -p ${ROOTFSSIZE}m 
${ALIGN:+-l $ALIGN} ${SIGNATURE:+-S 0x$SIGNATURE}`
 
 KERNELOFFSET="$(($1 / 512))"
-KERNELSIZE="$(($2 / 512))"
+KERNELSIZE="$2"
 ROOTFSOFFSET="$(($3 / 512))"
 ROOTFSSIZE="$(($4 / 512))"
 
-BLOCKS="$((($KERNELSIZE / 2) - 1))"
-
 [ -n "$PADDING" ] && dd if=/dev/zero of="$OUTPUT" bs=512 seek="$ROOTFSOFFSET" 
conv=notrunc count="$ROOTFSSIZE"
 dd if="$ROOTFSIMAGE" of="$OUTPUT" bs=512 seek="$ROOTFSOFFSET" conv=notrunc
 
 [ -n "$NOGRUB" ] && exit 0
 
-genext2fs -d "$KERNELDIR" -b "$BLOCKS" "$OUTPUT.kernel"
+make_ext4fs -J -l "$KERNELSIZE" "$OUTPUT.kernel" "$KERNELDIR"
 dd if="$OUTPUT.kernel" of="$OUTPUT" bs=512 seek="$KERNELOFFSET" conv=notrunc
 rm -f "$OUTPUT.kernel"

Modified: trunk/tools/Makefile
===================================================================
--- trunk/tools/Makefile        2015-04-20 13:36:25 UTC (rev 45516)
+++ trunk/tools/Makefile        2015-04-20 13:57:43 UTC (rev 45517)
@@ -25,7 +25,7 @@
 
 tools-$(BUILD_TOOLCHAIN) += gmp mpfr mpc libelf
 tools-y += m4 libtool autoconf automake flex bison pkg-config sed mklibs
-tools-y += sstrip genext2fs e2fsprogs mtd-utils mkimage
+tools-y += sstrip make-ext4fs e2fsprogs mtd-utils mkimage
 tools-y += firmware-utils patch-image patch quilt yaffs2 flock padjffs2
 tools-y += mm-macros missing-macros xz cmake scons bc findutils gengetopt 
patchelf
 tools-$(CONFIG_TARGET_orion_generic) += wrt350nv2-builder upslug2

Added: trunk/tools/make-ext4fs/Makefile
===================================================================
--- trunk/tools/make-ext4fs/Makefile                            (rev 0)
+++ trunk/tools/make-ext4fs/Makefile    2015-04-20 13:57:43 UTC (rev 45517)
@@ -0,0 +1,36 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=make-ext4fs
+PKG_VERSION:=2015-04-08
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://git.openwrt.org/project/make_ext4fs.git
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_VERSION:=2f713da924fa20cf89c25f2d122b54b959b09f87
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
+PKG_MIRROR_MD5SUM:=c88f4f7c76e3142fc5ef12a723d9ef9b
+PKG_CAT:=zcat
+
+HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION)
+
+include $(INCLUDE_DIR)/host-build.mk
+
+define Host/Compile
+       $(MAKE) -C $(HOST_BUILD_DIR) make_ext4fs
+endef
+
+define Host/Install
+       $(INSTALL_BIN) $(HOST_BUILD_DIR)/make_ext4fs $(STAGING_DIR_HOST)/bin/
+endef
+
+define Host/Clean
+       rm -f $(STAGING_DIR_HOST)/bin/make_ext4fs
+endef
+
+$(eval $(call HostBuild))
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to