X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fsvn-archive%2Farchive.git;a=blobdiff_plain;f=utils%2Fntfs-3g%2FMakefile;h=403fb9b54a6a086c469bebaaa547be132a753cbe;hp=50a67603f20d64ca9e134bcb04a5bee777a0b416;hb=03f2b0fc2aad3be7968ba536664f1ba60cf9192c;hpb=6d892c2a3f1cd389aed7054ebfc052da37031ec5 diff --git a/utils/ntfs-3g/Makefile b/utils/ntfs-3g/Makefile index 50a67603f2..403fb9b54a 100644 --- a/utils/ntfs-3g/Makefile +++ b/utils/ntfs-3g/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2007-2008 OpenWrt.org +# Copyright (C) 2007-2010 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,102 +8,157 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ntfs-3g -PKG_VERSION:=2009.4.4 PKG_RELEASE:=1 +PKG_VERSION:=2010.8.8 + +## 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_UCLIBC_VERSION:=$(call qstrip,$(CONFIG_UCLIBC_VERSION)) +#ifneq (,$(or $(findstring !0.9.29,!$(PKG_UCLIBC_VERSION)),$(findstring !0.9.30.1!,!$(PKG_UCLIBC_VERSION)!) )) +# PKG_VERSION:=2010.1.16 +#endif + PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz -PKG_SOURCE_URL:=http://www.ntfs-3g.org/ -PKG_MD5SUM:=e0b5c170f088a8d82968f0a6b34d31da +PKG_SOURCE_URL:=http://www.tuxera.com/opensource/ + +PKG_MD5SUM_2010.1.16:=e104c914e8d7d29ee83e63d46afbba25 +PKG_MD5SUM_2010.3.6:=12ce21aa044c6068a4df6e8cbd3c5cfa +PKG_MD5SUM_2010.5.16:=aeff7659a4943c9223d79116f051a863 +PKG_MD5SUM_2010.5.22:=caa08c73220a7106c76f697b7a7915ec +PKG_MD5SUM_2010.8.8:=6c109746c2708f679725a2ea441c61c6 +PKG_MD5SUM:=$(PKG_MD5SUM_$(PKG_VERSION)) + +PKG_FIXUP:=libtool +PKG_INSTALL:=1 + +# release contains fuseext/int hint +PKG_RELEASE:=$(PKG_RELEASE)$(if $(CONFIG_PACKAGE_NTFS-3G_USE_LIBFUSE),-fuseext,-fuseint) + +# define build dir, respect fuseext/int +PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE) include $(INCLUDE_DIR)/package.mk define Package/ntfs-3g/common SECTION:=utils CATEGORY:=Utilities - URL:=http://www.ntfs-3g.org + URL:=http://www.tuxera.com SUBMENU:=Filesystem - TITLE:=Stable Read/Write NTFS Driver (build options) + TITLE:=Stable Read/Write NTFS Driver + MAINTAINER:=Bud +endef + +define Package/ntfs-3g + $(call Package/ntfs-3g/common) + DEPENDS+= +kmod-fuse +PACKAGE_NTFS-3G_USE_LIBFUSE:libfuse +libpthread endef define Package/ntfs-3g/description - ntfs-3g is an NTFS driver, which can create, remove, rename, - move files, directories, hard links, and streams; it can read - and write files, including streams and sparse files; it can - handle special files like symbolic links, devices, and FIFOs; - moreover it can also read transparently compressed files. + Ntfs-3g is a NTFS driver, which can create, remove, rename, + move files, directories, hard links, and streams. It can read + and write files, including streams and sparse files. It can + handle special files like symbolic links, devices, and FIFOs. + Moreover it can also read transparently compressed files. + + Contains: + - ntfs-3g + - ntfs-3g.probe + endef -define Package/ntfs-3g +define Package/ntfs-3g/config +config PACKAGE_NTFS-3G_USE_LIBFUSE + bool "use external FUSE library, selects package libfuse" + depends on PACKAGE_ntfs-3g + ---help--- + Ntfs-3g by default uses a minimalized lite version of FUSE. + If libfuse is part of your filesystem anyway (because of sshfs, owfs + etc.) it makes sense to activate this option and save some kilobytes + of space. + +endef + +define Package/ntfs-3g-utils $(call Package/ntfs-3g/common) - DEPENDS+= +LINUX_2_4:kmod-fuse24 +libpthread +LINUX_2_6:kmod-fuse - MENU:=1 + TITLE:=ntfs-3g utilities (ntfs-3g.secaudit, ntfs-3g.usermap) + DEPENDS+= +ntfs-3g +endef + +define Package/ntfs-3g-utils/description + Additional ntfs-3g utilities. Not included by default for size + considerations. All binaries except ntfs-3g, ntfs-3g.probe. + + Currently: + - ntfs-3g.secaudit + - ntfs-3g.usermap + endef -define Package/externalFUSE +define Package/mount.ntfs-3g $(call Package/ntfs-3g/common) - TITLE:=use external FUSE library (package libfuse) - DEFAULT:=n - DEPENDS+=ntfs-3g +libfuse + TITLE:=ntfs-3g mount helper + DEPENDS+= +ntfs-3g endef -define Package/externalFUSE/description - Ntfs-3g by default uses a lite version of FUSE for the ease - of use and some special features. If you'd rather like to use - the systemwide standard FUSE library activate this option [M|*]. +define Package/mount.ntfs-3g/description + ntfs-3g mount helper. You must enable busybox mount helper too. endef CONFIGURE_ARGS += \ --enable-shared \ - --enable-static \ - -# insert config with external libfuse -ifdef CONFIG_PACKAGE_externalFUSE - CONFIGURE_ARGS += --with-fuse=external \ - CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \ - LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" - PKG_RELEASE:=$(PKG_RELEASE)-fuseext + --enable-static + +# configure/make according selection +ifdef CONFIG_PACKAGE_NTFS-3G_USE_LIBFUSE + CONFIGURE_ARGS += --with-fuse=external + TARGET_CPPFLAGS:=-I$(STAGING_DIR)/usr/include/fuse $(TARGET_CPPFLAGS) else - CONFIGURE_ARGS += --with-fuse=internal - PKG_RELEASE:=$(PKG_RELEASE)-fuseint + CONFIGURE_ARGS += --with-fuse=internal + TARGET_CPPFLAGS:=-I../include/fuse-lite $(TARGET_CPPFLAGS) endif -CONFIGURE_VARS+= \ - CFLAGS="$(TARGET_CFLAGS)" \ - $(TARGET_CONFIGURE_OPTS) CPPFLAGS='' LDFLAGS='' - - -define Build/Configure - (cd $(PKG_BUILD_DIR) ; \ - $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS)" \ - ./configure \ - $(CONFIGURE_ARGS) \ - ) -endef - -define Build/Compile - $(MAKE) -C $(PKG_BUILD_DIR) \ - ARCH="$(LINUX_KARCH)" \ - CROSS_COMPILE="$(TARGET_CROSS)" \ - DESTDIR="$(PKG_INSTALL_DIR)" \ - all install +# redefine prepare to extract to our build dir +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 endef define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include $(CP) $(PKG_INSTALL_DIR)/usr/include/ntfs-3g $(1)/usr/include/ $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libntfs-3g.{a,so*} $(1)/usr/lib/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libntfs-3g.{la,a,so*} $(1)/usr/lib/ endef define Package/ntfs-3g/install $(INSTALL_DIR) $(1)/usr/bin - $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ntfs-3g $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ntfs-3g{,.probe} $(1)/usr/bin/ $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libntfs-3g.so.* $(1)/usr/lib/ endef -# order matters!!! else a probably missing fuse lib might not be build beforehand -$(eval $(call BuildPackage,externalFUSE)) +define Package/mount.ntfs-3g/install + $(INSTALL_DIR) $(1)/sbin + $(CP) $(PKG_INSTALL_DIR)/sbin/mount.ntfs-3g $(1)/sbin/ +endef + +define Package/mount.ntfs-3g/postinst +#!/bin/sh + +if [ -z "$$(grep ^\\ntfs-3g: $${IPKG_INSTROOT}/etc/filesystems)" ]; then + echo "ntfs-3g" >> $${IPKG_INSTROOT}/etc/filesystems +fi + +endef + +define Package/ntfs-3g-utils/install + $(INSTALL_DIR) $(1)/usr/bin + $(FIND) $(PKG_INSTALL_DIR)/usr/bin/ -type f ! -name ntfs-3g.probe ! -name ntfs-3g -exec $(INSTALL_BIN) {} $(1)/usr/bin/ \; +endef + $(eval $(call BuildPackage,ntfs-3g)) +$(eval $(call BuildPackage,ntfs-3g-utils)) +$(eval $(call BuildPackage,mount.ntfs-3g))