ramips: rt3883: update package list in the default profile
[openwrt.git] / package / e2fsprogs / Makefile
1 #
2 # Copyright (C) 2006-2010 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.41.12
12 PKG_MD5SUM:=1b24a21fc0c2381ef420961cbfec733f
13 PKG_RELEASE:=2
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/e2fsprogs
17
18 PKG_INSTALL:=1
19
20 include $(INCLUDE_DIR)/package.mk
21
22 define Package/e2fsprogs/Default
23   URL:=http://e2fsprogs.sourceforge.net/
24   SUBMENU:=Filesystem
25 endef
26
27 define Package/e2fsprogs
28 $(call Package/e2fsprogs/Default)
29   SECTION:=utils
30   CATEGORY:=Utilities
31   TITLE:=Ext2/3/4 filesystem utilities
32   DEPENDS:=+libblkid +libuuid +libext2fs +libpthread +libcom_err
33 endef
34
35 define Package/e2fsprogs/description
36  This package contains essential ext2 filesystem utilities which consists of 
37  e2fsck, mke2fs, debugfs, dumpe2fs, tune2fs, and most of the other core ext2 
38  filesystem utilities.
39 endef
40
41 define Package/libuuid
42 $(call Package/e2fsprogs/Default)
43   SECTION:=libs
44   CATEGORY:=Libraries
45   TITLE:=DCE compatible Universally Unique Identifier library
46 endef
47
48 define Package/libuuid/description
49  Library for generating DCE compatible Universally Unique Identifiers.
50 endef
51
52 define Package/uuidgen
53 $(call Package/e2fsprogs)
54   DEPENDS:=+libuuid
55   TITLE:=Command line utility to create a new UUID value
56 endef
57
58 define Package/uuidgen/description
59  uuidgen program creates a new universally unique identifier (UUID) 
60  using the libuuid library. The new UUID can reasonably be considered 
61  unique among all UUIDs created on the local system, and among UUIDs 
62  created on other systems in the past and in the future.
63 endef
64
65 define Package/libblkid
66 $(call Package/e2fsprogs/Default)
67   SECTION:=libs
68   CATEGORY:=Libraries
69   TITLE:=Block device id library
70 endef
71
72 define Package/libblkid/description
73  The blkid library which allows system programs like fsck and mount to 
74  quickly and easily find block devices by filesystem UUID and LABEL.
75 endef
76
77 define Package/libext2fs
78 $(call Package/e2fsprogs/Default)
79   SECTION:=libs
80   CATEGORY:=Libraries
81   TITLE:=ext2/3/4 filesystem library
82 endef
83
84 define Package/libext2fs/description
85 libext2fs is a library which can access ext2, ext3 and ext4 filesystems.
86 endef
87
88 define Package/libcom_err
89 $(call Package/e2fsprogs/Default)
90   SECTION:=libs
91   CATEGORY:=Libraries
92   TITLE:=Common error description library
93 endef
94
95 define Package/libcom_err/description
96 libcom_err is a library providing common error descriptions
97 endef
98
99 define Package/tune2fs
100 $(call Package/e2fsprogs)
101   TITLE:=Ext2 Filesystem tune utility
102   DEPENDS:= +e2fsprogs
103 endef
104
105 define Package/resize2fs
106 $(call Package/e2fsprogs)
107   TITLE:=Ext2 Filesystem resize utility
108   DEPENDS:= +e2fsprogs
109 endef
110
111 define Package/badblocks
112 $(call Package/e2fsprogs)
113   TITLE:=Ext2 Filesystem badblocks utility
114   DEPENDS:= +e2fsprogs
115 endef
116
117 define Package/blkid
118 $(call Package/e2fsprogs)
119   TITLE:=Command-line utility to locate/print block device attributes
120   DEPENDS:=+libuuid +libblkid +libext2fs +libcom_err +libpthread
121 endef
122
123 TARGET_CFLAGS += $(FPIC)
124
125 CONFIGURE_ARGS += \
126         --enable-shared \
127         --enable-static \
128         --disable-rpath \
129         --enable-elf-shlibs \
130         --enable-dynamic-e2fsck \
131         --disable-tls
132
133 define Build/Prepare
134         $(call Build/Prepare/Default)
135         $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
136 endef
137
138 define Build/Compile
139         $(MAKE) -C $(PKG_BUILD_DIR)/util \
140                 BUILDCC="$(HOSTCC)" \
141                 CFLAGS="" \
142                 CPPFLAGS="" \
143                 LDFLAGS="" \
144                 subst
145         $(MAKE) -C $(PKG_BUILD_DIR) \
146                 BUILDCC="$(HOSTCC)" \
147                 DESTDIR="$(PKG_INSTALL_DIR)" \
148                 all
149 endef
150
151 define Build/InstallDev
152         $(MAKE) -C $(PKG_BUILD_DIR) \
153                 BUILDCC="$(HOSTCC)" \
154                 DESTDIR="$(1)" \
155                 install-libs
156         $(MAKE) -C $(PKG_BUILD_DIR)/lib/ext2fs \
157                 BUILDCC="$(HOSTCC)" \
158                 DESTDIR="$(1)" \
159                 install
160 endef
161
162 define Package/e2fsprogs/install
163         $(INSTALL_DIR) $(1)/usr/sbin
164         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
165         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
166         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext2
167         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext3
168         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext4
169         $(INSTALL_DIR) $(1)/usr/lib
170         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
171         $(INSTALL_DIR) $(1)/etc/init.d
172         $(INSTALL_DIR) $(1)/lib/functions/fsck
173         $(INSTALL_DATA) ./files/e2fsck.sh $(1)/lib/functions/fsck/
174         $(INSTALL_DATA) ./files/e2fsck.conf $(1)/etc/e2fsck.conf
175 endef
176
177 define Package/libcom_err/install
178         $(INSTALL_DIR) $(1)/usr/lib
179         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* $(1)/usr/lib/
180 endef
181
182 define Package/libuuid/install
183         $(INSTALL_DIR) $(1)/usr/lib
184         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libuuid.so.* $(1)/usr/lib/
185 endef
186
187 define Package/uuidgen/install
188         $(INSTALL_DIR) $(1)/usr/bin
189         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/uuidgen $(1)/usr/bin/
190 endef
191
192 define Package/libblkid/install
193         $(INSTALL_DIR) $(1)/usr/lib
194         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libblkid.so.* $(1)/usr/lib/
195 endef
196
197 define Package/libext2fs/install
198         $(INSTALL_DIR) $(1)/usr/lib
199         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* $(1)/usr/lib/
200 endef
201
202 define Package/tune2fs/install
203         $(INSTALL_DIR) $(1)/usr/sbin
204         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
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/blkid/install
218         $(INSTALL_DIR) $(1)/usr/sbin
219         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/blkid $(1)/usr/sbin/
220 endef
221
222 $(eval $(call BuildPackage,e2fsprogs))
223 $(eval $(call BuildPackage,libuuid))
224 $(eval $(call BuildPackage,uuidgen))
225 $(eval $(call BuildPackage,libblkid))
226 $(eval $(call BuildPackage,libext2fs))
227 $(eval $(call BuildPackage,libcom_err))
228 $(eval $(call BuildPackage,tune2fs))
229 $(eval $(call BuildPackage,resize2fs))
230 $(eval $(call BuildPackage,badblocks))
231 $(eval $(call BuildPackage,blkid))