replace a few unnecessary $(shell) calls
[openwrt/mini2440.git] / package / e2fsprogs / Makefile
blobb8bf345a917d9eb40270b63e72a311223d61ffb4
2 # Copyright (C) 2006-2008 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 # $Id$
9 include $(TOPDIR)/rules.mk
11 PKG_NAME:=e2fsprogs
12 PKG_VERSION:=1.40.11
13 PKG_RELEASE:=3
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/e2fsprogs
17 PKG_MD5SUM:=004cea70d724fdc7f1a952dffe4c9db8
19 include $(INCLUDE_DIR)/package.mk
21 define Package/e2fsprogs/Default
22 URL:=http://e2fsprogs.sourceforge.net/
23 endef
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
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
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
46 define Package/libuuid/description
47 Library for generating DCE compatible Universally Unique Identifiers.
48 endef
50 define Package/uuidgen
51 $(call Package/e2fsprogs)
52 DEPENDS:=libuuid
53 TITLE:=Command line utility to create a new UUID value
54 endef
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
63 define Package/libblkid
64 $(call Package/e2fsprogs/Default)
65 SECTION:=libs
66 CATEGORY:=Libraries
67 TITLE:=block device id library
68 endef
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
75 define Package/libext2fs
76 $(call Package/e2fsprogs/Default)
77 SECTION:=libs
78 CATEGORY:=Libraries
79 TITLE:=ext2/ext3 filesystem library
80 endef
82 define Package/libext2fs/description
83 libext2fs is a library which can access ext2 and ext3 filesystems.
84 endef
86 define Package/tune2fs
87 $(call Package/e2fsprogs)
88 TITLE:=Ext2 Filesystem tune utility
89 DEPENDS:=e2fsprogs
90 endef
92 define Package/resize2fs
93 $(call Package/e2fsprogs)
94 TITLE:=Ext2 Filesystem resize utility
95 DEPENDS:=e2fsprogs
96 endef
98 define Package/badblocks
99 $(call Package/e2fsprogs)
100 TITLE:=Ext2 Filesystem badblocks utility
101 DEPENDS:=e2fsprogs
102 endef
104 CONFIGURE_ARGS += \
105 --enable-shared \
106 --enable-static \
107 --disable-rpath \
108 --enable-elf-shlibs \
109 --enable-dynamic-e2fsck \
110 --disable-tls
112 define Build/Prepare
113 $(call Build/Prepare/Default)
114 $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
115 endef
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
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
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 $(INSTALL_DIR) $(1)/etc/init.d
150 $(INSTALL_BIN) ./files/e2fsck.init $(1)/etc/init.d/e2fsck
152 endef
154 define Package/libuuid/install
155 $(INSTALL_DIR) $(1)/usr/lib
156 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libuuid.so.* $(1)/usr/lib/
157 endef
159 define Package/uuidgen/install
160 $(INSTALL_DIR) $(1)/usr/bin
161 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/uuidgen $(1)/usr/bin/
162 endef
164 define Package/libblkid/install
165 $(INSTALL_DIR) $(1)/usr/lib
166 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libblkid.so.* $(1)/usr/lib/
167 endef
169 define Package/libext2fs/install
170 $(INSTALL_DIR) $(1)/usr/lib
171 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so* $(1)/usr/lib/
172 endef
174 define Package/tune2fs/install
175 $(INSTALL_DIR) $(1)/usr/sbin
176 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
177 endef
179 define Package/resize2fs/install
180 $(INSTALL_DIR) $(1)/usr/sbin
181 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
182 endef
184 define Package/badblocks/install
185 $(INSTALL_DIR) $(1)/usr/sbin
186 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
187 endef
189 $(eval $(call BuildPackage,e2fsprogs))
190 $(eval $(call BuildPackage,libuuid))
191 $(eval $(call BuildPackage,uuidgen))
192 $(eval $(call BuildPackage,libblkid))
193 $(eval $(call BuildPackage,libext2fs))
194 $(eval $(call BuildPackage,tune2fs))
195 $(eval $(call BuildPackage,resize2fs))
196 $(eval $(call BuildPackage,badblocks))