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