PKG_NAME:=ntfs-3g
PKG_RELEASE:=1
-PKG_VERSION:=2011.1.15
+# 2011.4.12 integrates ntfsprogs and changed srcfile name
+PKG_VERSION:=2011.4.12
+# disable next line and do _not_ select ntfsprogs_ntfs-3g to build an older version
+PKG_SOURCE:=$(PKG_NAME)_ntfsprogs-$(PKG_VERSION).tgz
## 2010.3.6 needs a recent uclibc 0.9.30.2 or greater
## this has been fixed in 2010.5.16, keeping this in case this happens again
# PKG_VERSION:=2010.1.16
#endif
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
+PATCH_DIR:=./patches-$(PKG_VERSION)
+
+PKG_SOURCE?=$(PKG_NAME)-$(PKG_VERSION).tgz
PKG_SOURCE_URL:=http://www.tuxera.com/opensource/
PKG_MD5SUM_2010.1.16:=e104c914e8d7d29ee83e63d46afbba25
PKG_MD5SUM_2010.8.8:=6c109746c2708f679725a2ea441c61c6
PKG_MD5SUM_2010.10.2:=91405690f25822142cdcb43d03e62d3f
PKG_MD5SUM_2011.1.15:=15a5cf5752012269fa168c24191f00e2
+PKG_MD5SUM_2011.4.12:=9c4ce318373b15332239a77a9d2a39fe
PKG_MD5SUM:=$(PKG_MD5SUM_$(PKG_VERSION))
PKG_FIXUP:=libtool
endef
+# TODO: write a proper description
+# new in 2001.4.12
+define Package/ntfsprogs_ntfs-3g
+ $(call Package/ntfs-3g/common)
+ TITLE:=ntfsprogs (ntfs-3g)
+ DEPENDS+= +ntfs-3g +libgcrypt
+endef
+
CONFIGURE_ARGS += \
--enable-shared \
--enable-static
TARGET_CPPFLAGS:=-I../include/fuse-lite $(TARGET_CPPFLAGS)
endif
+# enable disable ntfsprogs
+ifneq ($(CONFIG_PACKAGE_ntfsprogs_ntfs-3g)$(SDK)$(DEVELOPER),)
+ CONFIGURE_ARGS += --enable-ntfsprogs
+else
+ CONFIGURE_ARGS += --disable-ntfsprogs
+endif
+
# redefine prepare to extract to our build dir
+# apply patches
define Build/Prepare
rm -rf $(PKG_BUILD_DIR)/
mkdir -p $(PKG_BUILD_DIR)/
$(TAR) -xzf $(DL_DIR)/$(PKG_SOURCE) -C $(PKG_BUILD_DIR) --strip 1
+ $(Build/Patch)
endef
define Build/InstallDev
define Package/ntfs-3g/postinst
#!/bin/sh
+FILE="$${IPKG_INSTROOT}/etc/filesystems"
+ID="ntfs-3g"
+
+if ! [ -f '/etc/filesystems' ]; then
+ echo "Create '$$FILE'."
+ touch "$$FILE"
+fi
-if [ -z "$$(grep ^\\ntfs-3g: $${IPKG_INSTROOT}/etc/filesystems)" ]; then
- echo "ntfs-3g" >> $${IPKG_INSTROOT}/etc/filesystems
+if ! grep -q -e '^ntfs-3g$$' "$$FILE"; then
+ echo "Add '$$ID' to known filesystems."
+ echo "$$ID" >> "$$FILE"
fi
endef
define Package/ntfs-3g-low/postinst
#!/bin/sh
+FILE="$${IPKG_INSTROOT}/etc/filesystems"
+ID="lowntfs-3g"
+
+if ! [ -f '/etc/filesystems' ]; then
+ echo "Create '$$FILE'."
+ touch "$$FILE"
+fi
-if [ -z "$$(grep ^\\lowntfs-3g: $${IPKG_INSTROOT}/etc/filesystems)" ]; then
- echo "lowntfs-3g" >> $${IPKG_INSTROOT}/etc/filesystems
+if ! grep -q -e '^ntfs-3g$$' "$$FILE"; then
+ echo "Add '$$ID' to known filesystems."
+ echo "$$ID" >> "$$FILE"
fi
endef
$(FIND) $(PKG_INSTALL_DIR)/usr/bin/ -type f ! -name ntfs-3g.probe ! -name ntfs-3g -exec $(INSTALL_BIN) {} $(1)/usr/bin/ \;
endef
+define Package/ntfsprogs_ntfs-3g/install
+ $(INSTALL_DIR) $(1)/sbin
+ $(CP) $(PKG_INSTALL_DIR)/sbin/mkfs.ntfs $(1)/sbin/
+ $(INSTALL_DIR) $(1)/usr/bin
+ $(FIND) $(PKG_INSTALL_DIR)/usr/bin/ -type f ! -regex '.*[^/]*ntfs-3g[^/]*' -exec $(INSTALL_BIN) {} $(1)/usr/bin/ \;
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/* $(1)/usr/sbin/
+endef
+
$(eval $(call BuildPackage,ntfs-3g))
$(eval $(call BuildPackage,ntfs-3g-low))
$(eval $(call BuildPackage,ntfs-3g-utils))
-
+$(eval $(call BuildPackage,ntfsprogs_ntfs-3g))