Makefile 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. #
  2. # Copyright (C) 2014 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=f2fs-tools
  9. PKG_VERSION:=1.13.0
  10. PKG_RELEASE:=1
  11. PKG_LICENSE:=GPL-2.0
  12. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  13. PKG_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git/snapshot/
  14. PKG_HASH:=b39d3ae9224267aab0070b5f17d91d0c5143f6d960166a27f6b11c8c87072c7d
  15. PKG_FIXUP:=autoreconf
  16. PKG_BUILD_PARALLEL:=1
  17. PKG_INSTALL:=1
  18. PKG_MAINTAINER:=Felix Fietkau <[email protected]>
  19. include $(INCLUDE_DIR)/package.mk
  20. define Package/f2fs-tools/Default
  21. SECTION:=utils
  22. CATEGORY:=Utilities
  23. SUBMENU:=Filesystem
  24. DEPENDS:=+libf2fs
  25. URL:=http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git
  26. VARIANT:=default
  27. endef
  28. define Package/f2fs-tools/SELinux
  29. SECTION:=utils
  30. CATEGORY:=Utilities
  31. SUBMENU:=Filesystem
  32. DEPENDS:=+libf2fs-selinux +libselinux
  33. URL:=http://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git
  34. VARIANT:=selinux
  35. endef
  36. define Package/mkf2fs
  37. $(Package/f2fs-tools/Default)
  38. TITLE:=Utility for creating a Flash-Friendly File System (F2FS)
  39. CONFLICTS:=mkf2fs-selinux
  40. endef
  41. define Package/mkf2fs-selinux
  42. $(Package/f2fs-tools/SELinux)
  43. TITLE:=Utility for creating a Flash-Friendly File System (F2FS) with SELinux support
  44. endef
  45. define Package/f2fsck
  46. $(Package/f2fs-tools/Default)
  47. TITLE:=Utility for checking/repairing a Flash-Friendly File System (F2FS)
  48. CONFLICTS:=f2fsck-selinux
  49. endef
  50. define Package/f2fsck-selinux
  51. $(Package/f2fs-tools/SELinux)
  52. TITLE:=Utility for checking/repairing a Flash-Friendly File System (F2FS) with SELinux support
  53. endef
  54. define Package/f2fs-tools
  55. $(Package/f2fs-tools/Default)
  56. TITLE:=Tools for Flash-Friendly File System (F2FS)
  57. DEPENDS += +mkf2fs +f2fsck
  58. CONFLICTS:=f2fs-tools-selinux
  59. endef
  60. define Package/f2fs-tools-selinux
  61. $(Package/f2fs-tools/SELinux)
  62. TITLE:=Tools for Flash-Friendly File System (F2FS) with SELinux support
  63. DEPENDS += +mkf2fs-selinux +f2fsck-selinux
  64. endef
  65. define Package/libf2fs
  66. SECTION:=libs
  67. CATEGORY:=Libraries
  68. TITLE:=Library for Flash-Friendly File System (F2FS) tools
  69. DEPENDS:=+libuuid
  70. ABI_VERSION:=6
  71. CONFLICTS:=libf2fs-selinux
  72. endef
  73. define Package/libf2fs-selinux
  74. SECTION:=libs
  75. CATEGORY:=Libraries
  76. TITLE:=Library for Flash-Friendly File System (F2FS) tools with SELinux support
  77. DEPENDS:=+libuuid +libselinux
  78. ABI_VERSION:=6
  79. endef
  80. CONFIGURE_ARGS += \
  81. --disable-static \
  82. --without-blkid
  83. ifneq ($(BUILD_VARIANT),selinux)
  84. CONFIGURE_ARGS += --without-selinux
  85. endif
  86. CONFIGURE_VARS += \
  87. ac_cv_file__git=no
  88. define Package/libf2fs/install
  89. $(INSTALL_DIR) $(1)/usr/lib
  90. $(CP) \
  91. $(PKG_INSTALL_DIR)/usr/lib/libf2fs.so.* $(1)/usr/lib/
  92. endef
  93. Package/libf2fs-selinux/install = $(Package/libf2fs/install)
  94. define Package/mkf2fs/install
  95. $(INSTALL_DIR) $(1)/usr/sbin
  96. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mkfs.f2fs $(1)/usr/sbin
  97. endef
  98. Package/mkf2fs-selinux/install = $(Package/mkf2fs/install)
  99. define Package/f2fsck/install
  100. $(INSTALL_DIR) $(1)/usr/sbin
  101. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/fsck.f2fs $(1)/usr/sbin
  102. ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/defrag.f2fs
  103. ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/dump.f2fs
  104. ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/sload.f2fs
  105. ln -s /usr/sbin/fsck.f2fs $(1)/usr/sbin/resize.f2fs
  106. endef
  107. Package/f2fsck-selinux/install = $(Package/f2fsck/install)
  108. define Package/f2fs-tools/install
  109. $(INSTALL_DIR) $(1)/usr/sbin
  110. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/f2fstat $(1)/usr/sbin
  111. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/fibmap.f2fs $(1)/usr/sbin
  112. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/parse.f2fs $(1)/usr/sbin
  113. endef
  114. Package/f2fs-tools-selinux/install = $(Package/f2fs-tools/install)
  115. $(eval $(call BuildPackage,libf2fs))
  116. $(eval $(call BuildPackage,libf2fs-selinux))
  117. $(eval $(call BuildPackage,mkf2fs))
  118. $(eval $(call BuildPackage,mkf2fs-selinux))
  119. $(eval $(call BuildPackage,f2fsck))
  120. $(eval $(call BuildPackage,f2fsck-selinux))
  121. $(eval $(call BuildPackage,f2fs-tools))
  122. $(eval $(call BuildPackage,f2fs-tools-selinux))