Put libext2fs into its own package.
[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 # $Id$
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=e2fsprogs
12 PKG_VERSION:=1.40.11
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/e2fsprogs
17 PKG_MD5SUM:=004cea70d724fdc7f1a952dffe4c9db8
18
19 include $(INCLUDE_DIR)/package.mk
20
21 define Package/e2fsprogs/Default
22 URL:=http://e2fsprogs.sourceforge.net/
23 endef
24
25 define Package/e2fsprogs
26 $(call Package/e2fsprogs/Default)
27 SECTION:=utils
28 CATEGORY:=Utilities
29 TITLE:=Ext2/3 filesystem utilities
30 DEPENDS:=+libblkid +libuuid +libext2fs
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/ext3 filesystem library
80 endef
81
82 define Package/libext2fs/description
83 libext2fs is a library which can access ext2 and ext3 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 CONFIGURE_ARGS += \
105 --enable-shared \
106 --enable-static \
107 --disable-rpath \
108 --enable-elf-shlibs \
109 --enable-dynamic-e2fsck \
110 --disable-tls
111
112 define Build/Prepare
113 $(call Build/Prepare/Default)
114 $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
115 endef
116
117 define Build/Compile
118 $(MAKE) -C $(PKG_BUILD_DIR)/util \
119 BUILDCC="$(HOSTCC)" \
120 CFLAGS="" \
121 CPPFLAGS="" \
122 LDFLAGS="" \
123 subst
124 $(MAKE) -C $(PKG_BUILD_DIR) \
125 BUILDCC="$(HOSTCC)" \
126 DESTDIR="$(PKG_INSTALL_DIR)" \
127 all install
128 endef
129
130 define Build/InstallDev
131 $(MAKE) -C $(PKG_BUILD_DIR) \
132 BUILDCC="$(HOSTCC)" \
133 DESTDIR="$(1)" \
134 install-libs
135 $(MAKE) -C $(PKG_BUILD_DIR)/lib/ext2fs \
136 BUILDCC="$(HOSTCC)" \
137 DESTDIR="$(1)" \
138 install
139 endef
140
141 define Package/e2fsprogs/install
142 $(INSTALL_DIR) $(1)/usr/sbin
143 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
144 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
145 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext2
146 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext3
147 $(INSTALL_DIR) $(1)/usr/lib
148 $(CP) $(foreach lib,com_err e2p,$(PKG_INSTALL_DIR)/usr/lib/lib$(lib).so.*) $(1)/usr/lib/
149 endef
150
151 define Package/libuuid/install
152 $(INSTALL_DIR) $(1)/usr/lib
153 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libuuid.so.* $(1)/usr/lib/
154 endef
155
156 define Package/uuidgen/install
157 $(INSTALL_DIR) $(1)/usr/bin
158 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/uuidgen $(1)/usr/bin/
159 endef
160
161 define Package/libblkid/install
162 $(INSTALL_DIR) $(1)/usr/lib
163 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libblkid.so.* $(1)/usr/lib/
164 endef
165
166 define Package/libext2fs/install
167 $(INSTALL_DIR) $(1)/usr/lib
168 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so* $(1)/usr/lib/
169 endef
170
171 define Package/tune2fs/install
172 $(INSTALL_DIR) $(1)/usr/sbin
173 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
174 endef
175
176 define Package/resize2fs/install
177 $(INSTALL_DIR) $(1)/usr/sbin
178 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
179 endef
180
181 define Package/badblocks/install
182 $(INSTALL_DIR) $(1)/usr/sbin
183 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
184 endef
185
186 $(eval $(call BuildPackage,e2fsprogs))
187 $(eval $(call BuildPackage,libuuid))
188 $(eval $(call BuildPackage,uuidgen))
189 $(eval $(call BuildPackage,libblkid))
190 $(eval $(call BuildPackage,libext2fs))
191 $(eval $(call BuildPackage,tune2fs))
192 $(eval $(call BuildPackage,resize2fs))
193 $(eval $(call BuildPackage,badblocks))