[source] f2fs-tools: import from packages, clean up, and update to latest

LEDE Commits lede-commits at lists.infradead.org
Thu Sep 8 06:28:54 PDT 2016


nbd pushed a commit to source.git, branch master:
https://git.lede-project.org/dbbd5eef58fb5617b45802f98b5a73981fc4f4f2

commit dbbd5eef58fb5617b45802f98b5a73981fc4f4f2
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Tue Sep 6 13:12:17 2016 +0200

    f2fs-tools: import from packages, clean up, and update to latest
    
    Signed-off-by: Felix Fietkau <nbd at nbd.name>
---
 package/utils/f2fs-tools/Makefile                  | 90 ++++++++++++++++++++++
 package/utils/f2fs-tools/patches/001-compile.patch | 19 +++++
 .../patches/010-include-byteswap-h.patch           | 10 +++
 .../utils/f2fs-tools/patches/020-no_selinux.patch  | 55 +++++++++++++
 4 files changed, 174 insertions(+)

diff --git a/package/utils/f2fs-tools/Makefile b/package/utils/f2fs-tools/Makefile
new file mode 100644
index 0000000..8414052
--- /dev/null
+++ b/package/utils/f2fs-tools/Makefile
@@ -0,0 +1,90 @@
+#
+# Copyright (C) 2014 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:=f2fs-tools
+PKG_VERSION:=1.7.0
+PKG_RELEASE:=1
+
+PKG_LICENSE:=GPLv2
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git/snapshot/
+PKG_MD5SUM:=9db22274264f0c88dbee012f257917b1
+
+PKG_FIXUP:=autoreconf
+PKG_BUILD_PARALLEL:=1
+PKG_INSTALL:=1
+
+PKG_MAINTAINER:=Felix Fietkau <nbd at nbd.name>
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/f2fs-tools/Default
+  SECTION:=utils
+  CATEGORY:=Utilities
+  SUBMENU:=Filesystem
+  DEPENDS:=+libf2fs
+  URL:=http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git
+endef
+
+define Package/mkf2fs
+  $(Package/f2fs-tools/Default)
+  TITLE:=Utility for creating a Flash-Friendly File System (F2FS)
+endef
+
+define Package/f2fsck
+  $(Package/f2fs-tools/Default)
+  TITLE:=Utility for checking/repairing a Flash-Friendly File System (F2FS)
+endef
+
+define Package/f2fs-tools
+  $(Package/f2fs-tools/Default)
+  TITLE:=Tools for Flash-Friendly File System (F2FS)
+  DEPENDS += +mkf2fs +f2fsck
+endef
+
+define Package/libf2fs
+  SECTION:=libs
+  CATEGORY:=Libraries
+  TITLE:=Library for Flash-Friendly File System (F2FS) tools
+  DEPENDS:=+libuuid
+endef
+
+define Package/libf2fs/install
+	$(INSTALL_DIR) $(1)/usr/lib
+	$(CP) \
+		$(PKG_INSTALL_DIR)/usr/lib/libf2fs.so* $(1)/usr/lib/
+endef
+
+define Package/mkf2fs/install
+	$(INSTALL_DIR) $(1)/usr/sbin
+	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mkfs.f2fs $(1)/usr/sbin
+endef
+
+define Package/f2fsck/install
+	$(INSTALL_DIR) $(1)/usr/sbin
+
+	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/fsck.f2fs $(1)/usr/sbin
+	ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/defrag.f2fs
+	ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/dump.f2fs
+	ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/sload.f2fs
+	ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/resize.f2fs
+endef
+
+define Package/f2fs-tools/install
+	$(INSTALL_DIR) $(1)/usr/sbin
+	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/f2fstat $(1)/usr/sbin
+	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/fibmap.f2fs $(1)/usr/sbin
+	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/parse.f2fs $(1)/usr/sbin
+endef
+
+$(eval $(call BuildPackage,libf2fs))
+$(eval $(call BuildPackage,mkf2fs))
+$(eval $(call BuildPackage,f2fsck))
+$(eval $(call BuildPackage,f2fs-tools))
diff --git a/package/utils/f2fs-tools/patches/001-compile.patch b/package/utils/f2fs-tools/patches/001-compile.patch
new file mode 100644
index 0000000..2ff6ee8
--- /dev/null
+++ b/package/utils/f2fs-tools/patches/001-compile.patch
@@ -0,0 +1,19 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -20,14 +20,9 @@ AC_DEFINE([F2FS_MINOR_VERSION], m4_bpats
+ 				[\([0-9]*\).\([0-9]*\)\(\w\|\W\)*], [\2]),
+ 				[Minor version for f2fs-tools])
+ 
+-AC_CHECK_FILE(.git,
+-	AC_DEFINE([F2FS_TOOLS_DATE],
+-		"m4_bpatsubst(f2fs_tools_gitdate,
+-		[\([0-9-]*\)\(\w\|\W\)*], [\1])",
+-		[f2fs-tools date based on Git commits]),
+-	AC_DEFINE([F2FS_TOOLS_DATE],
++AC_DEFINE([F2FS_TOOLS_DATE],
+ 		"f2fs_tools_date",
+-		[f2fs-tools date based on Source releases]))
++		[f2fs-tools date based on Source releases])
+ 
+ AC_CONFIG_SRCDIR([config.h.in])
+ AC_CONFIG_HEADER([config.h])
diff --git a/package/utils/f2fs-tools/patches/010-include-byteswap-h.patch b/package/utils/f2fs-tools/patches/010-include-byteswap-h.patch
new file mode 100644
index 0000000..ff7e4e7
--- /dev/null
+++ b/package/utils/f2fs-tools/patches/010-include-byteswap-h.patch
@@ -0,0 +1,10 @@
+--- a/include/f2fs_fs.h
++++ b/include/f2fs_fs.h
+@@ -15,6 +15,7 @@
+ #include <inttypes.h>
+ #include <linux/types.h>
+ #include <sys/types.h>
++#include <byteswap.h>
+ 
+ #ifdef HAVE_CONFIG_H
+ #include <config.h>
diff --git a/package/utils/f2fs-tools/patches/020-no_selinux.patch b/package/utils/f2fs-tools/patches/020-no_selinux.patch
new file mode 100644
index 0000000..dcb3bd2
--- /dev/null
+++ b/package/utils/f2fs-tools/patches/020-no_selinux.patch
@@ -0,0 +1,55 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -49,7 +49,7 @@ AC_PATH_PROG([LDCONFIG], [ldconfig],
+ 
+ # Checks for libraries.
+ PKG_CHECK_MODULES([libuuid], [uuid])
+-PKG_CHECK_MODULES([libselinux], [libselinux])
++# PKG_CHECK_MODULES([libselinux], [libselinux])
+ 
+ # Checks for header files.
+ AC_CHECK_HEADERS([linux/fs.h fcntl.h mntent.h stdlib.h string.h \
+--- a/fsck/sload.c
++++ b/fsck/sload.c
+@@ -16,10 +16,11 @@
+ #include <libgen.h>
+ #include <dirent.h>
+ #include <mntent.h>
++
++#ifdef WITH_ANDROID
+ #include <selinux/selinux.h>
+ #include <selinux/label.h>
+ 
+-#ifdef WITH_ANDROID
+ #include <selinux/label.h>
+ #include <private/android_filesystem_config.h>
+ 
+@@ -110,10 +111,12 @@ static int build_directory(struct f2fs_s
+ 		handle_selabel(dentries + i, S_ISDIR(stat.st_mode),
+ 							target_out_dir);
+ 
++#ifdef WITH_ANDROID
+ 		if (sehnd && selabel_lookup(sehnd, &dentries[i].secon,
+ 					dentries[i].path, stat.st_mode) < 0)
+ 			ERR_MSG("Cannot lookup security context for %s\n",
+ 						dentries[i].path);
++#endif
+ 
+ 		dentries[i].pino = dir_ino;
+ 
+@@ -218,6 +221,7 @@ int f2fs_sload(struct f2fs_sb_info *sbi,
+ 		return ret;
+ 	}
+ 
++#ifdef WITH_ANDROID
+ 	if (sehnd) {
+ 		char *secontext = NULL;
+ 
+@@ -233,6 +237,7 @@ int f2fs_sload(struct f2fs_sb_info *sbi,
+ 		}
+ 		free(secontext);
+ 	}
++#endif
+ 
+ 	/* update curseg info; can update sit->types */
+ 	move_curseg_info(sbi, SM_I(sbi)->main_blkaddr);



More information about the lede-commits mailing list