openwrt/package/utils/f2fs-tools/Makefile

157 lines
4.2 KiB
Makefile
Raw Normal View History

#
# 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
f2fs-tools: update to 1.15.0 Add patches: - 100-configure.ac-fix-AC_ARG_WITH.patch Remove upstreamed patches: - 200-resize_f2fs-fix_wrong_ovp_calculation.patch Changelog: 64f2596 f2fs-tools: upgrade version 1.15.0 d9d5b11 f2fs-tools: build silently 299c0b5 fsck.f2fs: fix broken file_map output 3af62be f2fs-tools: show segment/section layout correctly 4d9c009 f2fs-tools: use android config only if there's no config.h 0b9b89f dump.f2fs: compress: fix dstlen of LZ4_compress_fast_extState() eee3969 mkfs.f2fs: check uuid library e5fe1a2 f2fs-tools: use fsync() in Android ea9921f f2fs-tools: support zoned device in Android a8fefc2 android_config.h: add missing liblz4 0c54cf7 libf2fs_io: add unused mactor to avoid build failure 6eebd13 ci: Enable -Wall, -Wextra and -Werror c491657 Fix PowerPC format string warnings 70e4139 Suppress a compiler warning about integer truncation 7a1206a Annotate switch/case fallthrough b964b79 Change #ifdef _WIN32 checks into #ifdef HAVE_.* 28de4d1 tools/f2fs_io: Fix the type of 'ret' fdff1ab fsck/segment.c: Remove dead code ede3bde fsck/main.c: Suppress a compiler warning 93c6483 tools/f2fscrypt.c: Fix build without uuid/uuid.h header file 559e60e fsck: Remove a superfluous include directive 98f7f56 mkfs/f2fs_format.c: Suppress a compiler warning ef011a4 configure.ac: Detect selinux/android.h 2e59ab8 configure.ac: Detect the sparse/sparse.h header 1790203 Fix the MinGW build ecd27dc Use %zu to format size_t 24663b6 Include <stddef.h> instead of defining offsetof() cdefef0 Move the be32_to_cpu() definition 1612bf9 Remove unnecessary __attribute__((packed)) annotations 7a5109f f2fs_fs.h: Use standard fixed width integer types e61203c Suppress a compiler warning 9425b47 Verify structure sizes at compile time 006bb13 Change one array member into a flexible array member cb4c5d6 ci: Build f2fstools upon push and pull requests f3033fb Change the ANDROID_WINDOWS_HOST macro into _WIN32 87d7a95 Switch from the u_int to the uint types c483354 configure.ac: Enable cross-compilation 3e97d07 configure.ac: Sort header file names alphabetically 91ba5e5 configure.ac: Enable the automake -Wall option ae65a15 configure.ac: Remove two prototype tests d24fd5c configure.ac: Stop using obsolete macros 6afcf64 libf2fs: don't allow mkfs / fsck on non power-of-2 zoned devices c7757ec man: update mkfs.f2fs to give the default android option 46e1b83 f2fs-tools: use proper 64bit types for PPC 97ce230 mkfs.f2fs: fix wrong indentation and clean up 0d3d26d mkfs.f2fs: set project quota by default for -g android for v4.14+ 1de1db8 f2fs-tools: add atomic write related options to f2fs_io write command 85cd72a mkfs.f2fs: set required quota types only 028af9f fsck.f2fs: Add progression feedback 972d710 fsck.f2fs: do not assert if i_size is missing i_blocks in symlink f63551b f2fs-tools: separate other bugs in fsck_verify ade81b9 f2fs-tools: remove false failure alarm when fixing quota 99bc497 f2fs-tools: fall back to the original version check when clock_gettime is not supported 1603a3d mkfs.f2fs: wipe other FS magics given -f 63d5004 fsck.f2fS: is_valid_summary(): check whether offset is out of bounds 3fd996c Avoid redefined ALIGN_UP 1edc138 fsck.f2fs: Update the usage about option of preen mode 49159df f2fs-tools: change fiemap print out format 8bcb58e f2fs_io: add rename w/ fsync option 9429e86 fsck.f2fs: add basic compress related check/fix 529967e f2fs-tools: make fiemap command in accordance with uapi 1228009 f2fs-tools: rebuild the quota inode if it is corrupted 9ee091e f2fs-tools: add periodic check in kernel version check 1bc7658 dump.f2fs: minor clean ups 69952e3 f2fs-tools: fix wrong value of reserve_new_block parameter in page_symlink 76d2a91 f2fs-tools: add extent cache for each file 8d464ee f2fs-tools: fix wrong file offset acd2518 fsck|dump.f2fs: add -M to get file map 027488e mkfs.f2fs: remove android features for RO e01ad31 f2fs-tools: fix metadata region overlap with zoned block device zones f3b93bf sload.f2fs: Reword "IMMUTABLE" in strings/comments 820b5e3 sload.f2fs: use F2FS_COMPRESS_RELEASED instead of IMMUTABLE bit 1d2683f f2fs-tools: support small RO partition a9594c6 fsck.f2fs: add "-l" to show the layout information 38e3115 f2fs_io: add to show immutable bit 6afd3e9 tools: Introduce f2fslabel 3218ff9 f2fs-tools: correct get kernel version logic 19d49b5 dump.f2fs: fix memory leak caused by dump_node_blk() 15d4d7b fsck.f2fs: fix memory leak caused by fsck_chk_orphan_node() 1900c22 mkfs.f2fs: fix memory leak in not enough segments error path 5cc365c resize.f2fs: fix memory leak caused by migrate_nat() 870915f f2fs_io: split definition check for crypto ioctl 91f9db2 fsck.f2fs: update kernel version in superblock on forced check 1531853 f2fs_io: Add get file name encryption mode 3bfcca8 f2fs-tool: increase debug level from 0 to 1 in migrate_block 5263ae2 resize.f2fs: fix to check free space before shrink 159752d resize.f2fs: fix wrong sit/nat bitmap during rebuild_checkpoint() 98e6463 resize.f2fs: add force option to rewrite broken calculation f056fbe resize.f2fs: fix wrong ovp calculation 80dba0f Add -P option to preserve file owner f0fda11 libf2fs: fix memory leak caused by get_rootdev() 5144f2f mkfs.f2fs: add VM disk files to hot data types 73c0871 libzoned: use blk_zone_v2 and blk_zone_report_v2 by default 9cb5150 f2fs-tools: fix wrong blk_zone_rep_v2 definition 15474db mkfs.f2fs: allocate zones together to avoid random access 316e128 mkfs.f2fs: adjust zone alignment when using multi-partitions cc57f2c fsck.f2fs: fix alignment on multi-partition support ff7172e f2fs-tools: Miscellaneous cleanup to README. 2b26417 mkfs.f2fs.8: Better document the -g argument. e05afe5 mkfs.f2fs.8: fix formatting for -l parameter in man page 747b74c f2fs-tools: Make sload.f2fs reproduce hard links b585244 f2fs-tools:sload.f2fs compression support 7b63f7b f2fs_io: add compress/decompress commands 457392a f2fs-tools: Added #ifdef WITH_func d322d47 f2fs-tools: fix a few spelling errors in f2fs-tools fcd5cd0 f2fs-tools: skipped to end on error syntax error 31d30f0 mkfs.f2fs: show a message when compression is enabled 1d4c7e7 f2fs_io: add get/set compression option 4bd7008 Fix ASSERT() macro with '%' in the expression ca0ed8a f2fs-toos: fsck.f2fs Fix bad return value c954e7c fsck.f2fs: do xnid sanity check only during fsck 1bfc173 f2fs_io: add erase option e59bb17 mkfs.f2fs.8: document the verity feature 8fd836f fsck: clear unexpected casefold flags 1a7415a mkfs.f2fs: add -h and --help 717d70d f2fs_io: change fibmap to fiemap Signed-off-by: Nick Hainke <vincent@systemli.org>
2022-06-27 14:04:10 +00:00
PKG_VERSION:=1.15.0
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git/snapshot/
f2fs-tools: update to 1.15.0 Add patches: - 100-configure.ac-fix-AC_ARG_WITH.patch Remove upstreamed patches: - 200-resize_f2fs-fix_wrong_ovp_calculation.patch Changelog: 64f2596 f2fs-tools: upgrade version 1.15.0 d9d5b11 f2fs-tools: build silently 299c0b5 fsck.f2fs: fix broken file_map output 3af62be f2fs-tools: show segment/section layout correctly 4d9c009 f2fs-tools: use android config only if there's no config.h 0b9b89f dump.f2fs: compress: fix dstlen of LZ4_compress_fast_extState() eee3969 mkfs.f2fs: check uuid library e5fe1a2 f2fs-tools: use fsync() in Android ea9921f f2fs-tools: support zoned device in Android a8fefc2 android_config.h: add missing liblz4 0c54cf7 libf2fs_io: add unused mactor to avoid build failure 6eebd13 ci: Enable -Wall, -Wextra and -Werror c491657 Fix PowerPC format string warnings 70e4139 Suppress a compiler warning about integer truncation 7a1206a Annotate switch/case fallthrough b964b79 Change #ifdef _WIN32 checks into #ifdef HAVE_.* 28de4d1 tools/f2fs_io: Fix the type of 'ret' fdff1ab fsck/segment.c: Remove dead code ede3bde fsck/main.c: Suppress a compiler warning 93c6483 tools/f2fscrypt.c: Fix build without uuid/uuid.h header file 559e60e fsck: Remove a superfluous include directive 98f7f56 mkfs/f2fs_format.c: Suppress a compiler warning ef011a4 configure.ac: Detect selinux/android.h 2e59ab8 configure.ac: Detect the sparse/sparse.h header 1790203 Fix the MinGW build ecd27dc Use %zu to format size_t 24663b6 Include <stddef.h> instead of defining offsetof() cdefef0 Move the be32_to_cpu() definition 1612bf9 Remove unnecessary __attribute__((packed)) annotations 7a5109f f2fs_fs.h: Use standard fixed width integer types e61203c Suppress a compiler warning 9425b47 Verify structure sizes at compile time 006bb13 Change one array member into a flexible array member cb4c5d6 ci: Build f2fstools upon push and pull requests f3033fb Change the ANDROID_WINDOWS_HOST macro into _WIN32 87d7a95 Switch from the u_int to the uint types c483354 configure.ac: Enable cross-compilation 3e97d07 configure.ac: Sort header file names alphabetically 91ba5e5 configure.ac: Enable the automake -Wall option ae65a15 configure.ac: Remove two prototype tests d24fd5c configure.ac: Stop using obsolete macros 6afcf64 libf2fs: don't allow mkfs / fsck on non power-of-2 zoned devices c7757ec man: update mkfs.f2fs to give the default android option 46e1b83 f2fs-tools: use proper 64bit types for PPC 97ce230 mkfs.f2fs: fix wrong indentation and clean up 0d3d26d mkfs.f2fs: set project quota by default for -g android for v4.14+ 1de1db8 f2fs-tools: add atomic write related options to f2fs_io write command 85cd72a mkfs.f2fs: set required quota types only 028af9f fsck.f2fs: Add progression feedback 972d710 fsck.f2fs: do not assert if i_size is missing i_blocks in symlink f63551b f2fs-tools: separate other bugs in fsck_verify ade81b9 f2fs-tools: remove false failure alarm when fixing quota 99bc497 f2fs-tools: fall back to the original version check when clock_gettime is not supported 1603a3d mkfs.f2fs: wipe other FS magics given -f 63d5004 fsck.f2fS: is_valid_summary(): check whether offset is out of bounds 3fd996c Avoid redefined ALIGN_UP 1edc138 fsck.f2fs: Update the usage about option of preen mode 49159df f2fs-tools: change fiemap print out format 8bcb58e f2fs_io: add rename w/ fsync option 9429e86 fsck.f2fs: add basic compress related check/fix 529967e f2fs-tools: make fiemap command in accordance with uapi 1228009 f2fs-tools: rebuild the quota inode if it is corrupted 9ee091e f2fs-tools: add periodic check in kernel version check 1bc7658 dump.f2fs: minor clean ups 69952e3 f2fs-tools: fix wrong value of reserve_new_block parameter in page_symlink 76d2a91 f2fs-tools: add extent cache for each file 8d464ee f2fs-tools: fix wrong file offset acd2518 fsck|dump.f2fs: add -M to get file map 027488e mkfs.f2fs: remove android features for RO e01ad31 f2fs-tools: fix metadata region overlap with zoned block device zones f3b93bf sload.f2fs: Reword "IMMUTABLE" in strings/comments 820b5e3 sload.f2fs: use F2FS_COMPRESS_RELEASED instead of IMMUTABLE bit 1d2683f f2fs-tools: support small RO partition a9594c6 fsck.f2fs: add "-l" to show the layout information 38e3115 f2fs_io: add to show immutable bit 6afd3e9 tools: Introduce f2fslabel 3218ff9 f2fs-tools: correct get kernel version logic 19d49b5 dump.f2fs: fix memory leak caused by dump_node_blk() 15d4d7b fsck.f2fs: fix memory leak caused by fsck_chk_orphan_node() 1900c22 mkfs.f2fs: fix memory leak in not enough segments error path 5cc365c resize.f2fs: fix memory leak caused by migrate_nat() 870915f f2fs_io: split definition check for crypto ioctl 91f9db2 fsck.f2fs: update kernel version in superblock on forced check 1531853 f2fs_io: Add get file name encryption mode 3bfcca8 f2fs-tool: increase debug level from 0 to 1 in migrate_block 5263ae2 resize.f2fs: fix to check free space before shrink 159752d resize.f2fs: fix wrong sit/nat bitmap during rebuild_checkpoint() 98e6463 resize.f2fs: add force option to rewrite broken calculation f056fbe resize.f2fs: fix wrong ovp calculation 80dba0f Add -P option to preserve file owner f0fda11 libf2fs: fix memory leak caused by get_rootdev() 5144f2f mkfs.f2fs: add VM disk files to hot data types 73c0871 libzoned: use blk_zone_v2 and blk_zone_report_v2 by default 9cb5150 f2fs-tools: fix wrong blk_zone_rep_v2 definition 15474db mkfs.f2fs: allocate zones together to avoid random access 316e128 mkfs.f2fs: adjust zone alignment when using multi-partitions cc57f2c fsck.f2fs: fix alignment on multi-partition support ff7172e f2fs-tools: Miscellaneous cleanup to README. 2b26417 mkfs.f2fs.8: Better document the -g argument. e05afe5 mkfs.f2fs.8: fix formatting for -l parameter in man page 747b74c f2fs-tools: Make sload.f2fs reproduce hard links b585244 f2fs-tools:sload.f2fs compression support 7b63f7b f2fs_io: add compress/decompress commands 457392a f2fs-tools: Added #ifdef WITH_func d322d47 f2fs-tools: fix a few spelling errors in f2fs-tools fcd5cd0 f2fs-tools: skipped to end on error syntax error 31d30f0 mkfs.f2fs: show a message when compression is enabled 1d4c7e7 f2fs_io: add get/set compression option 4bd7008 Fix ASSERT() macro with '%' in the expression ca0ed8a f2fs-toos: fsck.f2fs Fix bad return value c954e7c fsck.f2fs: do xnid sanity check only during fsck 1bfc173 f2fs_io: add erase option e59bb17 mkfs.f2fs.8: document the verity feature 8fd836f fsck: clear unexpected casefold flags 1a7415a mkfs.f2fs: add -h and --help 717d70d f2fs_io: change fibmap to fiemap Signed-off-by: Nick Hainke <vincent@systemli.org>
2022-06-27 14:04:10 +00:00
PKG_HASH:=147d471040b44900283ce2c935f1d35d13d7f40008e7cb8fab2b69f54da01a4f
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
PKG_LICENSE:=GPL-2.0-only
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:f2fs-tools_project:f2fs-tools
PKG_FIXUP:=autoreconf
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
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
VARIANT:=default
endef
define Package/f2fs-tools/SELinux
SECTION:=utils
CATEGORY:=Utilities
SUBMENU:=Filesystem
DEPENDS:=+libf2fs-selinux +libselinux
URL:=http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git
VARIANT:=selinux
endef
define Package/mkf2fs
$(Package/f2fs-tools/Default)
TITLE:=Utility for creating a Flash-Friendly File System (F2FS)
CONFLICTS:=mkf2fs-selinux
endef
define Package/mkf2fs-selinux
$(Package/f2fs-tools/SELinux)
TITLE:=Utility for creating a Flash-Friendly File System (F2FS) with SELinux support
endef
define Package/f2fsck
$(Package/f2fs-tools/Default)
TITLE:=Utility for checking/repairing a Flash-Friendly File System (F2FS)
CONFLICTS:=f2fsck-selinux
endef
define Package/f2fsck-selinux
$(Package/f2fs-tools/SELinux)
TITLE:=Utility for checking/repairing a Flash-Friendly File System (F2FS) with SELinux support
endef
define Package/f2fs-tools
$(Package/f2fs-tools/Default)
TITLE:=Tools for Flash-Friendly File System (F2FS)
DEPENDS += +mkf2fs +f2fsck
CONFLICTS:=f2fs-tools-selinux
endef
define Package/f2fs-tools-selinux
$(Package/f2fs-tools/SELinux)
TITLE:=Tools for Flash-Friendly File System (F2FS) with SELinux support
DEPENDS += +mkf2fs-selinux +f2fsck-selinux
endef
define Package/libf2fs
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Library for Flash-Friendly File System (F2FS) tools
DEPENDS:=+libuuid
ABI_VERSION:=6
CONFLICTS:=libf2fs-selinux
VARIANT:=default
endef
define Package/libf2fs-selinux
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Library for Flash-Friendly File System (F2FS) tools with SELinux support
DEPENDS:=+libuuid +libselinux
ABI_VERSION:=6
VARIANT:=selinux
endef
CONFIGURE_ARGS += \
--disable-static \
--without-blkid \
--without-lzo2 \
--without-lz4
ifneq ($(BUILD_VARIANT),selinux)
CONFIGURE_ARGS += --without-selinux
endif
CONFIGURE_VARS += \
ac_cv_file__git=no
define Package/libf2fs/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) \
$(PKG_INSTALL_DIR)/usr/lib/libf2fs.so.* $(1)/usr/lib/
endef
Package/libf2fs-selinux/install = $(Package/libf2fs/install)
define Package/mkf2fs/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mkfs.f2fs $(1)/usr/sbin
endef
Package/mkf2fs-selinux/install = $(Package/mkf2fs/install)
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
Package/f2fsck-selinux/install = $(Package/f2fsck/install)
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
Package/f2fs-tools-selinux/install = $(Package/f2fs-tools/install)
$(eval $(call BuildPackage,libf2fs))
$(eval $(call BuildPackage,libf2fs-selinux))
$(eval $(call BuildPackage,mkf2fs))
$(eval $(call BuildPackage,mkf2fs-selinux))
$(eval $(call BuildPackage,f2fsck))
$(eval $(call BuildPackage,f2fsck-selinux))
$(eval $(call BuildPackage,f2fs-tools))
$(eval $(call BuildPackage,f2fs-tools-selinux))