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.
8 include $(TOPDIR
)/rules.mk
12 PKG_HASH
:=5d899f7d30f481cc0c6a049ebe26ebe145f1b524182ea1ecde4086162d4e4bb6
15 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.xz
16 PKG_SOURCE_URL
:=@KERNEL
/linux
/kernel
/people
/tytso
/e2fsprogs
/v
$(PKG_VERSION
)/
18 PKG_CPE_ID
:=cpe
:/a
:e2fsprogs_project
:e2fsprogs
20 PKG_BUILD_DEPENDS
:=util-linux e2fsprogs
/host
25 include $(INCLUDE_DIR
)/package.mk
26 include $(INCLUDE_DIR
)/host-build.mk
28 define Package
/e2fsprogs
32 TITLE
:=Ext2
/3/4 filesystem utilities
33 URL
:=http
://e2fsprogs.sourceforge.net
/
34 DEPENDS
:=+libuuid
+libext2fs
37 define Package
/e2fsprogs
/description
38 This package contains essential ext2 filesystem utilities which consists of
39 e2fsck
, mke2fs and most of the other core ext2 filesystem utilities.
42 define Package
/libext2fs
45 TITLE
:=ext2
/3/4 filesystem library
46 URL
:=http
://e2fsprogs.sourceforge.net
/
47 DEPENDS
:=+libuuid
+libblkid
+libss
+libcomerr
50 define Package
/libext2fs
/description
51 libext2fs is a library which can access ext2
, ext3 and ext4 filesystems.
57 TITLE
:=command-line interface parsing library
58 URL
:=http
://e2fsprogs.sourceforge.net
/
62 define Package
/libss
/description
63 This pacakge contains libss
, a command-line interface parsing library
64 bundled with e2fsprogs.
67 define Package
/libcomerr
70 TITLE
:=common error description library
71 URL
:=http
://e2fsprogs.sourceforge.net
/
75 define Package
/libcomerr
/description
76 This package contains libcom_err
, the common error description library
77 bundled with e2fsprogs.
80 define Package
/tune2fs
81 $(call Package
/e2fsprogs
)
82 TITLE
:=Ext2 Filesystem tune utility
86 define Package
/resize2fs
87 $(call Package
/e2fsprogs
)
88 TITLE
:=Ext2 Filesystem resize utility
92 define Package
/badblocks
93 $(call Package
/e2fsprogs
)
94 TITLE
:=Ext2 Filesystem badblocks utility
98 define Package
/dumpe2fs
99 $(call Package
/e2fsprogs
)
100 TITLE
:=Ext2 Filesystem information dumping utility
104 define Package
/e2freefrag
105 $(call Package
/e2fsprogs
)
106 TITLE
:=Ext2 Filesystem free space fragmentation information utility
110 define Package
/filefrag
111 $(call Package
/e2fsprogs
)
112 TITLE
:=Ext2 Filesystem file fragmentation report utility
116 define Package
/debugfs
117 $(call Package
/e2fsprogs
)
118 TITLE
:=Ext2 Filesystem debugger
122 define Package
/chattr
123 $(call Package
/e2fsprogs
)
124 TITLE
:=Ext2 Filesystem chattr utility
128 define Package
/lsattr
129 $(call Package
/e2fsprogs
)
130 TITLE
:=Ext2 Filesystem lsattr utility
134 TARGET_CFLAGS
+= $(FPIC
) -ffunction-sections
-fdata-sections
-flto
136 TARGET_LDFLAGS
+= $(if
$(CONFIG_USE_GLIBC
),-lrt
)
137 TARGET_LDFLAGS
+= -flto
140 --disable-testio-debug \
141 --enable-elf-shlibs \
151 $(call Build
/Prepare
/Default
)
152 $(CP
) $(SCRIPT_DIR
)/config.
{guess
,sub
} $(PKG_BUILD_DIR
)/config
/
156 +$(MAKE
) $(PKG_JOBS
) -C
$(PKG_BUILD_DIR
)/util \
157 BUILDCC
="$(HOSTCC)" \
161 V
=$(if
$(findstring c
,$(OPENWRT_VERBOSE
)),1,) \
163 +$(MAKE
) $(PKG_JOBS
) -C
$(PKG_BUILD_DIR
) \
164 LDFLAGS
=-Wl
,--gc-sections \
165 BUILDCC
="$(HOSTCC)" \
166 DESTDIR
="$(PKG_INSTALL_DIR)" \
167 ELF_OTHER_LIBS
="$(TARGET_LDFLAGS) -luuid" \
168 SYSLIBS
="$(TARGET_LDFLAGS) -ldl -L$(PKG_BUILD_DIR)/lib/ -l:libcom_err.so.0.0" \
169 V
=$(if
$(findstring c
,$(OPENWRT_VERBOSE
)),1,) \
173 define Build
/InstallDev
174 $(INSTALL_DIR
) $(1)/usr
/lib
/pkgconfig
175 $(CP
) $(PKG_BUILD_DIR
)/lib
/ext2fs
/ext2fs.
pc $(1)/usr
/lib
/pkgconfig
176 $(CP
) $(PKG_BUILD_DIR
)/lib
/et
/com_err.
pc $(1)/usr
/lib
/pkgconfig
178 $(INSTALL_DIR
) $(1)/usr
/lib
179 $(CP
) $(PKG_BUILD_DIR
)/lib
/libext2fs.
{so
,a
}* $(1)/usr
/lib
180 $(CP
) $(PKG_BUILD_DIR
)/lib
/libcom_err.
{so
,a
}* $(1)/usr
/lib
181 $(CP
) $(PKG_BUILD_DIR
)/lib
/libss.
{so
,a
}* $(1)/usr
/lib
183 $(INSTALL_DIR
) $(1)/usr
/include/ext2fs
184 $(CP
) $(PKG_BUILD_DIR
)/lib
/ext2fs
/*.h
$(1)/usr
/include/ext2fs
185 $(INSTALL_DIR
) $(1)/usr
/include/et
186 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/lib
/et
/*.h
$(1)/usr
/include/et
187 # Apparently there is some confusion
188 echo
"#include <et/com_err.h>" > $(1)/usr
/include/com_err.h
189 $(INSTALL_DIR
) $(1)/usr
/include/ss
191 $(PKG_BUILD_DIR
)/lib
/ss
/ss.h \
192 $(PKG_BUILD_DIR
)/lib
/ss
/ss_err.h \
197 $(MAKE
) $(PKG_JOBS
) -C
$(HOST_BUILD_DIR
)/lib
/ss mk_cmds
198 $(MAKE
) $(PKG_JOBS
) -C
$(HOST_BUILD_DIR
)/lib
/et compile_et
202 $(INSTALL_DIR
) $(1)/share
/et
203 $(CP
) $(HOST_BUILD_DIR
)/lib
/et
/et_
[ch
].awk
$(1)/share
/et
/
204 $(INSTALL_DIR
) $(1)/share
/ss
205 $(CP
) $(HOST_BUILD_DIR
)/lib
/ss
/ct_c.
{sed
,awk
} $(1)/share
/ss
/
206 $(INSTALL_DIR
) $(1)/bin
208 $(HOST_BUILD_DIR
)/lib
/et
/compile_et \
209 $(HOST_BUILD_DIR
)/lib
/ss
/mk_cmds \
213 define Package
/e2fsprogs
/conffiles
217 define Package
/e2fsprogs
/install
218 $(INSTALL_DIR
) $(1)/usr
/sbin
219 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/e2fsck
$(1)/usr
/sbin
/
220 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/mke2fs
$(1)/usr
/sbin
/
221 $(LN
) mke2fs
$(1)/usr
/sbin
/mkfs.ext2
222 $(LN
) mke2fs
$(1)/usr
/sbin
/mkfs.ext3
223 $(LN
) mke2fs
$(1)/usr
/sbin
/mkfs.ext4
224 $(LN
) e2fsck
$(1)/usr
/sbin
/fsck.ext2
225 $(LN
) e2fsck
$(1)/usr
/sbin
/fsck.ext3
226 $(LN
) e2fsck
$(1)/usr
/sbin
/fsck.ext4
227 $(INSTALL_DIR
) $(1)/usr
/lib
228 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libe2p.so.
* $(1)/usr
/lib
/
229 $(INSTALL_DIR
) $(1)/etc
/init.d
230 $(INSTALL_DIR
) $(1)/lib
/functions
/fsck
231 $(INSTALL_DATA
) .
/files
/e2fsck.sh
$(1)/lib
/functions
/fsck
/
232 $(INSTALL_DATA
) .
/files
/e2fsck.conf
$(1)/etc
/e2fsck.conf
235 define Package
/libcomerr
/install
236 $(INSTALL_DIR
) $(1)/usr
/lib
237 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libcom_err.so
* $(1)/usr
/lib
/
240 define Package
/libss
/install
241 $(INSTALL_DIR
) $(1)/usr
/lib
242 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libss.so
* $(1)/usr
/lib
/
245 define Package
/libext2fs
/install
246 $(INSTALL_DIR
) $(1)/usr
/lib
247 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libext2fs.so.
* $(1)/usr
/lib
/
250 define Package
/libext2fs
/install_lib
251 $(INSTALL_DIR
) $(1)/usr
/lib
252 $(CP
) $(PKG_BUILD_DIR
)/lib
/ext2fs
/libext2fs.a
$(1)/usr
/lib
/libext2fs_pic.a
255 define Package
/tune2fs
/install
256 $(INSTALL_DIR
) $(1)/usr
/sbin
257 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/tune2fs
$(1)/usr
/sbin
/
258 $(LN
) tune2fs
$(1)/usr
/sbin
/findfs
261 define Package
/resize2fs
/install
262 $(INSTALL_DIR
) $(1)/usr
/sbin
263 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/resize2fs
$(1)/usr
/sbin
/
266 define Package
/badblocks
/install
267 $(INSTALL_DIR
) $(1)/usr
/sbin
268 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/badblocks
$(1)/usr
/sbin
/
271 define Package
/dumpe2fs
/install
272 $(INSTALL_DIR
) $(1)/usr
/sbin
273 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/dumpe2fs
$(1)/usr
/sbin
/
276 define Package
/e2freefrag
/install
277 $(INSTALL_DIR
) $(1)/usr
/sbin
278 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/e2freefrag
$(1)/usr
/sbin
/
281 define Package
/filefrag
/install
282 $(INSTALL_DIR
) $(1)/usr
/sbin
283 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/filefrag
$(1)/usr
/sbin
/
286 define Package
/debugfs
/install
287 $(INSTALL_DIR
) $(1)/usr
/sbin
288 $(INSTALL_DIR
) $(1)/usr
/lib
289 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/debugfs
$(1)/usr
/sbin
/
292 define Package
/chattr
/install
293 $(INSTALL_DIR
) $(1)/usr
/bin
294 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/chattr
$(1)/usr
/bin
/
297 define Package
/lsattr
/install
298 $(INSTALL_DIR
) $(1)/usr
/bin
299 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/lsattr
$(1)/usr
/bin
/
302 $(eval
$(call BuildPackage
,e2fsprogs
))
303 $(eval
$(call BuildPackage
,libcomerr
))
304 $(eval
$(call BuildPackage
,libss
))
305 $(eval
$(call BuildPackage
,libext2fs
))
306 $(eval
$(call BuildPackage
,tune2fs
))
307 $(eval
$(call BuildPackage
,resize2fs
))
308 $(eval
$(call BuildPackage
,badblocks
))
309 $(eval
$(call BuildPackage
,dumpe2fs
))
310 $(eval
$(call BuildPackage
,e2freefrag
))
311 $(eval
$(call BuildPackage
,filefrag
))
312 $(eval
$(call BuildPackage
,debugfs
))
313 $(eval
$(call BuildPackage
,chattr
))
314 $(eval
$(call BuildPackage
,lsattr
))
315 $(eval
$(call HostBuild
))