e2fsprogs: Update to 1.43.7
[openwrt/staging/chunkeey.git] / package / utils / e2fsprogs / Makefile
1 #
2 # Copyright (C) 2006-2014 OpenWrt.org
3 # Copyright 2010 Vertical Communications
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:=e2fsprogs
11 PKG_VERSION:=1.43.7
12 PKG_HASH:=2a6367289047d68d9ba6a46cf89ab9a1efd0556cde02a51ebaf414ff51edded9
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
16 PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/tytso/e2fsprogs/v$(PKG_VERSION)/
17 PKG_LICENSE:=GPL-2.0
18 PKG_CPE_ID:=cpe:/a:e2fsprogs_project:e2fsprogs
19
20 PKG_BUILD_DEPENDS:=util-linux
21 PKG_INSTALL:=1
22
23 PKG_BUILD_PARALLEL:=1
24
25 include $(INCLUDE_DIR)/package.mk
26
27 define Package/e2fsprogs/Default
28 URL:=http://e2fsprogs.sourceforge.net/
29 SUBMENU:=Filesystem
30 endef
31
32 define Package/e2fsprogs
33 $(call Package/e2fsprogs/Default)
34 SECTION:=utils
35 CATEGORY:=Utilities
36 TITLE:=Ext2/3/4 filesystem utilities
37 DEPENDS:=+libuuid +libext2fs
38 endef
39
40 define Package/e2fsprogs/description
41 This package contains essential ext2 filesystem utilities which consists of
42 e2fsck, mke2fs and most of the other core ext2 filesystem utilities.
43 endef
44
45 define Package/libext2fs
46 $(call Package/e2fsprogs/Default)
47 SECTION:=libs
48 CATEGORY:=Libraries
49 DEPENDS:=+libuuid +libblkid
50 TITLE:=ext2/3/4 filesystem library
51 endef
52
53 define Package/libext2fs/description
54 libext2fs is a library which can access ext2, ext3 and ext4 filesystems.
55 endef
56
57 define Package/tune2fs
58 $(call Package/e2fsprogs)
59 TITLE:=Ext2 Filesystem tune utility
60 DEPENDS:= +e2fsprogs
61 endef
62
63 define Package/resize2fs
64 $(call Package/e2fsprogs)
65 TITLE:=Ext2 Filesystem resize utility
66 DEPENDS:= +e2fsprogs
67 endef
68
69 define Package/badblocks
70 $(call Package/e2fsprogs)
71 TITLE:=Ext2 Filesystem badblocks utility
72 DEPENDS:= +e2fsprogs
73 endef
74
75 define Package/dumpe2fs
76 $(call Package/e2fsprogs)
77 TITLE:=Ext2 Filesystem information dumping utility
78 DEPENDS:= +e2fsprogs
79 endef
80
81 define Package/e2freefrag
82 $(call Package/e2fsprogs)
83 TITLE:=Ext2 Filesystem free space fragmentation information utility
84 DEPENDS:= +e2fsprogs
85 endef
86
87 define Package/filefrag
88 $(call Package/e2fsprogs)
89 TITLE:=Ext2 Filesystem file fragmentation report utility
90 DEPENDS:= +e2fsprogs
91 endef
92
93 define Package/debugfs
94 $(call Package/e2fsprogs)
95 TITLE:=Ext2 Filesystem debugger
96 DEPENDS:= +e2fsprogs
97 endef
98
99 define Package/chattr
100 $(call Package/e2fsprogs)
101 TITLE:=Ext2 Filesystem chattr utility
102 DEPENDS:= +e2fsprogs
103 endef
104
105 define Package/lsattr
106 $(call Package/e2fsprogs)
107 TITLE:=Ext2 Filesystem lsattr utility
108 DEPENDS:= +e2fsprogs
109 endef
110
111 TARGET_CFLAGS += $(FPIC) -ffunction-sections -fdata-sections
112
113 CONFIGURE_ARGS += \
114 --disable-testio-debug \
115 --enable-elf-shlibs \
116 --disable-libuuid \
117 --disable-libblkid \
118 --disable-uuidd \
119 --disable-tls \
120 --disable-nls \
121 --disable-rpath \
122 --disable-threads \
123 --disable-fuse2fs
124
125 define Build/Prepare
126 $(call Build/Prepare/Default)
127 $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
128 endef
129
130 define Build/Compile
131 +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/util \
132 BUILDCC="$(HOSTCC)" \
133 CFLAGS="" \
134 CPPFLAGS="" \
135 LDFLAGS="" \
136 V=$(if $(findstring c,$(OPENWRT_VERBOSE)),1,) \
137 subst
138 +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
139 LDFLAGS=-Wl,--gc-sections \
140 BUILDCC="$(HOSTCC)" \
141 DESTDIR="$(PKG_INSTALL_DIR)" \
142 ELF_OTHER_LIBS="$(TARGET_LDFLAGS) -luuid" \
143 SYSLIBS="$(TARGET_LDFLAGS) -ldl -L$(PKG_BUILD_DIR)/lib/ -l:libcom_err.so.0.0" \
144 V=$(if $(findstring c,$(OPENWRT_VERBOSE)),1,) \
145 all
146 endef
147
148 define Build/InstallDev
149 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
150 $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/ext2fs.pc $(1)/usr/lib/pkgconfig
151 $(CP) $(PKG_BUILD_DIR)/lib/et/com_err.pc $(1)/usr/lib/pkgconfig
152
153 $(INSTALL_DIR) $(1)/usr/lib
154 $(CP) $(PKG_BUILD_DIR)/lib/libext2fs.{so,a}* $(1)/usr/lib
155 $(CP) $(PKG_BUILD_DIR)/lib/libcom_err.{so,a}* $(1)/usr/lib
156
157 $(INSTALL_DIR) $(1)/usr/include/ext2fs
158 $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/*.h $(1)/usr/include/ext2fs
159 $(INSTALL_DIR) $(1)/usr/include/et
160 $(CP) $(PKG_BUILD_DIR)/lib/et/*.h $(1)/usr/include/et
161 endef
162
163 define Package/e2fsprogs/conffiles
164 /etc/e2fsck.conf
165 endef
166
167 define Package/e2fsprogs/install
168 $(INSTALL_DIR) $(1)/usr/sbin
169 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
170 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
171 $(LN) mke2fs $(1)/usr/sbin/mkfs.ext2
172 $(LN) mke2fs $(1)/usr/sbin/mkfs.ext3
173 $(LN) mke2fs $(1)/usr/sbin/mkfs.ext4
174 $(LN) e2fsck $(1)/usr/sbin/fsck.ext2
175 $(LN) e2fsck $(1)/usr/sbin/fsck.ext3
176 $(LN) e2fsck $(1)/usr/sbin/fsck.ext4
177 $(INSTALL_DIR) $(1)/usr/lib
178 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
179 $(INSTALL_DIR) $(1)/etc/init.d
180 $(INSTALL_DIR) $(1)/lib/functions/fsck
181 $(INSTALL_DATA) ./files/e2fsck.sh $(1)/lib/functions/fsck/
182 $(INSTALL_DATA) ./files/e2fsck.conf $(1)/etc/e2fsck.conf
183 endef
184
185 define Package/libcom_err/install
186 endef
187
188 define Package/libext2fs/install
189 $(INSTALL_DIR) $(1)/usr/lib
190 $(CP) \
191 $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* \
192 $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* \
193 $(1)/usr/lib/
194 endef
195
196 define Package/libext2fs/install_lib
197 $(INSTALL_DIR) $(1)/usr/lib
198 $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/libext2fs.a $(1)/usr/lib/libext2fs_pic.a
199 endef
200
201 define Package/tune2fs/install
202 $(INSTALL_DIR) $(1)/usr/sbin
203 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
204 $(LN) tune2fs $(1)/usr/sbin/findfs
205 endef
206
207 define Package/resize2fs/install
208 $(INSTALL_DIR) $(1)/usr/sbin
209 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
210 endef
211
212 define Package/badblocks/install
213 $(INSTALL_DIR) $(1)/usr/sbin
214 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
215 endef
216
217 define Package/dumpe2fs/install
218 $(INSTALL_DIR) $(1)/usr/sbin
219 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dumpe2fs $(1)/usr/sbin/
220 endef
221
222 define Package/e2freefrag/install
223 $(INSTALL_DIR) $(1)/usr/sbin
224 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2freefrag $(1)/usr/sbin/
225 endef
226
227 define Package/filefrag/install
228 $(INSTALL_DIR) $(1)/usr/sbin
229 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/filefrag $(1)/usr/sbin/
230 endef
231
232 define Package/debugfs/install
233 $(INSTALL_DIR) $(1)/usr/sbin
234 $(INSTALL_DIR) $(1)/usr/lib
235 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/debugfs $(1)/usr/sbin/
236 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libss.so.* $(1)/usr/lib/
237 endef
238
239 define Package/chattr/install
240 $(INSTALL_DIR) $(1)/usr/bin
241 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/chattr $(1)/usr/bin/
242 endef
243
244 define Package/lsattr/install
245 $(INSTALL_DIR) $(1)/usr/bin
246 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lsattr $(1)/usr/bin/
247 endef
248
249 $(eval $(call BuildPackage,e2fsprogs))
250 $(eval $(call BuildPackage,libext2fs))
251 $(eval $(call BuildPackage,tune2fs))
252 $(eval $(call BuildPackage,resize2fs))
253 $(eval $(call BuildPackage,badblocks))
254 $(eval $(call BuildPackage,dumpe2fs))
255 $(eval $(call BuildPackage,e2freefrag))
256 $(eval $(call BuildPackage,filefrag))
257 $(eval $(call BuildPackage,debugfs))
258 $(eval $(call BuildPackage,chattr))
259 $(eval $(call BuildPackage,lsattr))