You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
2.3 KiB

  1. #
  2. # This is free software, licensed under the GNU General Public License v2.
  3. # See /LICENSE for more information.
  4. #
  5. include $(TOPDIR)/rules.mk
  6. PKG_NAME:=btrfs-progs
  7. PKG_VERSION:=4.20.2
  8. PKG_RELEASE:=3
  9. PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.xz
  10. PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/kdave/btrfs-progs
  11. PKG_HASH:=890f8b7e162f2bbfaa5c7b23e8b6f791fd3f325239a0510871fa4b45e4a80e7c
  12. PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-v$(PKG_VERSION)
  13. PKG_MAINTAINER:=Karel Kočí <karel.koci@nic.cz>
  14. PKG_LICENSE:=GPL-2.0
  15. PKG_LICENSE_FILES:=COPYING
  16. PKG_INSTALL:=1
  17. PKG_BUILD_PARALLEL:=1
  18. PKG_BUILD_DEPENDS:=acl
  19. include $(INCLUDE_DIR)/package.mk
  20. define Package/btrfs-progs
  21. SECTION:=utils
  22. CATEGORY:=Utilities
  23. SUBMENU:=Filesystem
  24. DEPENDS:=+libattr +libuuid +zlib +libblkid +liblzo +libpthread +BTRFS_PROGS_ZSTD:libzstd
  25. TITLE:=Btrfs filesystems utilities
  26. URL:=https://btrfs.wiki.kernel.org/
  27. endef
  28. define Package/btrfs-progs/description
  29. Btrfs is a new copy on write filesystem for Linux aimed at implementing
  30. advanced features while focusing on fault tolerance, repair and easy
  31. administration. Initially developed by Oracle, Btrfs is licensed under the
  32. GPL and open for contribution from anyone.
  33. endef
  34. define Package/btrfs-progs/config
  35. source "$(SOURCE)/Config.in"
  36. endef
  37. progs = btrfs btrfs-find-root btrfs-image btrfs-map-logical \
  38. btrfs-select-super btrfstune mkfs.btrfs
  39. TARGET_CFLAGS += -ffunction-sections -fdata-sections
  40. TARGET_LDFLAGS += -Wl,--gc-sections -Wl,--as-needed
  41. EXTRA_CFLAGS=$(TARGET_CPPFLAGS)
  42. CONFIGURE_ARGS += \
  43. --disable-backtrace \
  44. --disable-convert \
  45. --disable-documentation \
  46. --disable-python
  47. ifneq ($(CONFIG_BTRFS_PROGS_ZSTD),y)
  48. CONFIGURE_ARGS += --disable-zstd
  49. endif
  50. define Build/InstallDev
  51. $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib
  52. $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
  53. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbtrfs* $(1)/usr/lib/
  54. endef
  55. define Package/btrfs-progs/install
  56. $(INSTALL_DIR) $(1)/usr/lib
  57. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbtrfs.so* $(1)/usr/lib
  58. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libbtrfsutil.so* $(1)/usr/lib
  59. $(INSTALL_DIR) $(1)/usr/bin
  60. $(INSTALL_BIN) $(addprefix $(PKG_INSTALL_DIR)/usr/bin/, $(progs)) $(1)/usr/bin/
  61. $(LN) btrfs $(1)/usr/bin/btrfsck
  62. $(INSTALL_DIR) $(1)/etc/init.d
  63. $(INSTALL_BIN) ./files/btrfs-scan.init $(1)/etc/init.d/btrfs-scan
  64. endef
  65. $(eval $(call BuildPackage,btrfs-progs))