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