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_MD5SUM:=b6e296f210d642361b7394437ff0f318
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/e2fsprogs
18 PKG_BUILD_DEPENDS:=util-linux
21 include $(INCLUDE_DIR)/package.mk
23 define Package/e2fsprogs/Default
24 URL:=http://e2fsprogs.sourceforge.net/
28 define Package/e2fsprogs
29 $(call Package/e2fsprogs/Default)
32 TITLE:=Ext2/3/4 filesystem utilities
33 DEPENDS:=+libuuid +libext2fs
36 define Package/e2fsprogs/description
37 This package contains essential ext2 filesystem utilities which consists of
38 e2fsck, mke2fs and most of the other core ext2 filesystem utilities.
41 define Package/libext2fs
42 $(call Package/e2fsprogs/Default)
45 TITLE:=ext2/3/4 filesystem library
48 define Package/libext2fs/description
49 libext2fs is a library which can access ext2, ext3 and ext4 filesystems.
52 define Package/tune2fs
53 $(call Package/e2fsprogs)
54 TITLE:=Ext2 Filesystem tune utility
58 define Package/resize2fs
59 $(call Package/e2fsprogs)
60 TITLE:=Ext2 Filesystem resize utility
64 define Package/badblocks
65 $(call Package/e2fsprogs)
66 TITLE:=Ext2 Filesystem badblocks utility
70 define Package/dumpe2fs
71 $(call Package/e2fsprogs)
72 TITLE:=Ext2 Filesystem information dumping utility
76 define Package/e2freefrag
77 $(call Package/e2fsprogs)
78 TITLE:=Ext2 Filesystem free space fragmentation information utility
82 define Package/filefrag
83 $(call Package/e2fsprogs)
84 TITLE:=Ext2 Filesystem file fragmentation report utility
88 define Package/debugfs
89 $(call Package/e2fsprogs)
90 TITLE:=Ext2 Filesystem debugger
94 TARGET_CFLAGS += $(FPIC) -ffunction-sections -fdata-sections
97 ac_cv_lib_pthread_sem_init=no
100 --disable-testio-debug \
101 --enable-elf-shlibs \
110 $(call Build/Prepare/Default)
111 $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
115 $(MAKE) -C $(PKG_BUILD_DIR)/util \
116 BUILDCC="$(HOSTCC)" \
121 $(MAKE) -C $(PKG_BUILD_DIR) \
122 LDFLAGS=-Wl,--gc-sections \
123 BUILDCC="$(HOSTCC)" \
124 DESTDIR="$(PKG_INSTALL_DIR)" \
125 LIBBLKID="$(PKG_BUILD_DIR)/lib/libblkid.a -luuid" \
129 define Build/InstallDev
130 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
131 $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/ext2fs.pc $(1)/usr/lib/pkgconfig
132 $(CP) $(PKG_BUILD_DIR)/lib/et/com_err.pc $(1)/usr/lib/pkgconfig
134 $(INSTALL_DIR) $(1)/usr/lib
135 $(CP) $(PKG_BUILD_DIR)/lib/libext2fs.{so,a}* $(1)/usr/lib
136 $(CP) $(PKG_BUILD_DIR)/lib/libcom_err.{so,a}* $(1)/usr/lib
138 $(INSTALL_DIR) $(1)/usr/include/ext2fs
139 $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/*.h $(1)/usr/include/ext2fs
140 $(INSTALL_DIR) $(1)/usr/include/et
141 $(CP) $(PKG_BUILD_DIR)/lib/et/*.h $(1)/usr/include/et
144 define Package/e2fsprogs/install
145 $(INSTALL_DIR) $(1)/usr/sbin
146 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
147 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
148 $(LN) mke2fs $(1)/usr/sbin/mkfs.ext2
149 $(LN) mke2fs $(1)/usr/sbin/mkfs.ext3
150 $(LN) mke2fs $(1)/usr/sbin/mkfs.ext4
151 $(LN) e2fsck $(1)/usr/sbin/fsck.ext2
152 $(LN) e2fsck $(1)/usr/sbin/fsck.ext3
153 $(LN) e2fsck $(1)/usr/sbin/fsck.ext4
154 $(INSTALL_DIR) $(1)/usr/lib
155 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
156 $(INSTALL_DIR) $(1)/etc/init.d
157 $(INSTALL_DIR) $(1)/lib/functions/fsck
158 $(INSTALL_DATA) ./files/e2fsck.sh $(1)/lib/functions/fsck/
159 $(INSTALL_DATA) ./files/e2fsck.conf $(1)/etc/e2fsck.conf
162 define Package/libcom_err/install
165 define Package/libext2fs/install
166 $(INSTALL_DIR) $(1)/usr/lib
168 $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* \
169 $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* \
173 define Package/libext2fs/install_lib
174 $(INSTALL_DIR) $(1)/usr/lib
175 $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/libext2fs.a $(1)/usr/lib/libext2fs_pic.a
178 define Package/tune2fs/install
179 $(INSTALL_DIR) $(1)/usr/sbin
180 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
181 $(LN) tune2fs $(1)/usr/sbin/findfs
184 define Package/resize2fs/install
185 $(INSTALL_DIR) $(1)/usr/sbin
186 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
189 define Package/badblocks/install
190 $(INSTALL_DIR) $(1)/usr/sbin
191 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
194 define Package/dumpe2fs/install
195 $(INSTALL_DIR) $(1)/usr/sbin
196 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dumpe2fs $(1)/usr/sbin/
199 define Package/e2freefrag/install
200 $(INSTALL_DIR) $(1)/usr/sbin
201 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2freefrag $(1)/usr/sbin/
204 define Package/filefrag/install
205 $(INSTALL_DIR) $(1)/usr/sbin
206 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/filefrag $(1)/usr/sbin/
209 define Package/debugfs/install
210 $(INSTALL_DIR) $(1)/usr/sbin
211 $(INSTALL_DIR) $(1)/usr/lib
212 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/debugfs $(1)/usr/sbin/
213 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libss.so.* $(1)/usr/lib/
216 $(eval $(call BuildPackage,e2fsprogs))
217 $(eval $(call BuildPackage,libext2fs))
218 $(eval $(call BuildPackage,tune2fs))
219 $(eval $(call BuildPackage,resize2fs))
220 $(eval $(call BuildPackage,badblocks))
221 $(eval $(call BuildPackage,dumpe2fs))
222 $(eval $(call BuildPackage,e2freefrag))
223 $(eval $(call BuildPackage,filefrag))
224 $(eval $(call BuildPackage,debugfs))