[package] blkid only depends on libuuid and libblkid (#4932)
[openwrt/svn-archive/archive.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:=4
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:=libuuid libblkid
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))