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