c759a330c25b8d06fbfeb9198ee1f60182c2a9e4
[openwrt/svn-archive/archive.git] / utils / ntfs-3g / Makefile
1 #
2 # Copyright (C) 2007-2010 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=ntfs-3g
11 PKG_RELEASE:=4
12
13 PKG_VERSION:=2010.5.22
14
15 ## 2010.3.6 needs a recent uclibc 0.9.30.2 or greater
16 ## this has been fixed in 2010.5.16, keeping this in case this happens again
17 #PKG_UCLIBC_VERSION:=$(call qstrip,$(CONFIG_UCLIBC_VERSION))
18 #ifneq (,$(or $(findstring !0.9.29,!$(PKG_UCLIBC_VERSION)),$(findstring !0.9.30.1!,!$(PKG_UCLIBC_VERSION)!) ))
19 # PKG_VERSION:=2010.1.16
20 #endif
21
22 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
23 PKG_SOURCE_URL:=http://www.tuxera.com/opensource/
24
25 PKG_MD5SUM_2010.1.16:=e104c914e8d7d29ee83e63d46afbba25
26 PKG_MD5SUM_2010.3.6:=12ce21aa044c6068a4df6e8cbd3c5cfa
27 PKG_MD5SUM_2010.5.16:=aeff7659a4943c9223d79116f051a863
28 PKG_MD5SUM_2010.5.22:=caa08c73220a7106c76f697b7a7915ec
29 PKG_MD5SUM:=$(PKG_MD5SUM_$(PKG_VERSION))
30
31 PKG_FIXUP:=libtool
32 PKG_INSTALL:=1
33
34 # release contains fuseext/int hint
35 PKG_RELEASE:=$(PKG_RELEASE)$(if $(CONFIG_PACKAGE_NTFS-3G_USE_LIBFUSE),-fuseext,-fuseint)
36
37 # define build dir, respect fuseext/int
38 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)
39
40 include $(INCLUDE_DIR)/package.mk
41
42 define Package/ntfs-3g/common
43 SECTION:=utils
44 CATEGORY:=Utilities
45 URL:=http://www.tuxera.com
46 SUBMENU:=Filesystem
47 TITLE:=Stable Read/Write NTFS Driver
48 MAINTAINER:=Bud <wrt_buddhay@gmx.net>
49 endef
50
51 define Package/ntfs-3g
52 $(call Package/ntfs-3g/common)
53 DEPENDS:= +kmod-fuse +PACKAGE_NTFS-3G_USE_LIBFUSE:libfuse
54 DEPENDS+= +libpthread
55 endef
56
57 define Package/ntfs-3g/description
58 Ntfs-3g is a NTFS driver, which can create, remove, rename,
59 move files, directories, hard links, and streams. It can read
60 and write files, including streams and sparse files. It can
61 handle special files like symbolic links, devices, and FIFOs.
62 Moreover it can also read transparently compressed files.
63
64 Contains:
65 - ntfs-3g
66 - ntfs-3g.probe
67
68 endef
69
70 define Package/ntfs-3g/config
71 config PACKAGE_NTFS-3G_USE_LIBFUSE
72 bool "use external FUSE library, selects package libfuse"
73 default n
74 depends on PACKAGE_ntfs-3g
75 ---help---
76 Ntfs-3g by default uses a minimalized lite version of FUSE.
77 If libfuse is part of your filesystem anyway (because of sshfs, owfs
78 etc.) it makes sense to activate this option and save some kilobytes
79 of space.
80
81 endef
82
83 define Package/ntfs-3g-utils
84 $(call Package/ntfs-3g/common)
85 TITLE:=ntfs-3g utilities (ntfs-3g.secaudit, ntfs-3g.usermap)
86 DEFAULT:=n
87 DEPENDS+= +ntfs-3g
88 endef
89
90 define Package/ntfs-3g-utils/description
91 Additional ntfs-3g utilities. Not included by default for size
92 considerations. All binaries except ntfs-3g, ntfs-3g.probe.
93
94 Currently:
95 - ntfs-3g.secaudit
96 - ntfs-3g.usermap
97
98 endef
99
100 CONFIGURE_ARGS += \
101 --enable-shared \
102 --enable-static
103
104 # configure/make according selection
105 ifdef CONFIG_PACKAGE_NTFS-3G_USE_LIBFUSE
106 CONFIGURE_ARGS += --with-fuse=external
107 TARGET_CPPFLAGS:=-I$(STAGING_DIR)/usr/include/fuse $(TARGET_CPPFLAGS)
108 else
109 CONFIGURE_ARGS += --with-fuse=internal
110 TARGET_CPPFLAGS:=-I../include/fuse-lite $(TARGET_CPPFLAGS)
111 endif
112
113 # redefine prepare to extract to our build dir
114 define Build/Prepare
115 rm -rf $(PKG_BUILD_DIR)/
116 mkdir -p $(PKG_BUILD_DIR)/
117 $(TAR) -xzf $(DL_DIR)/$(PKG_SOURCE) -C $(PKG_BUILD_DIR) --strip 1
118 endef
119
120 define Build/InstallDev
121 $(INSTALL_DIR) $(1)/usr/include
122 $(CP) $(PKG_INSTALL_DIR)/usr/include/ntfs-3g $(1)/usr/include/
123 $(INSTALL_DIR) $(1)/usr/lib
124 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libntfs-3g.{la,a,so*} $(1)/usr/lib/
125 endef
126
127 define Package/ntfs-3g/install
128 $(INSTALL_DIR) $(1)/usr/bin
129 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ntfs-3g{,.probe} $(1)/usr/bin/
130 $(INSTALL_DIR) $(1)/usr/lib
131 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libntfs-3g.so.* $(1)/usr/lib/
132 endef
133
134 define Package/ntfs-3g-utils/install
135 $(INSTALL_DIR) $(1)/usr/bin
136 $(FIND) $(PKG_INSTALL_DIR)/usr/bin/ -type f ! -name ntfs-3g.probe ! -name ntfs-3g -exec $(INSTALL_BIN) {} $(1)/usr/bin/ \;
137 endef
138
139 $(eval $(call BuildPackage,ntfs-3g))
140 $(eval $(call BuildPackage,ntfs-3g-utils))
141