e2fsprogs: use the private version of blkid statically, it is significantly smaller...
[openwrt/svn-archive/archive.git] / package / utils / e2fsprogs / Makefile
1 #
2 # Copyright (C) 2006-2012 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.42.4
12 PKG_MD5SUM:=b6e296f210d642361b7394437ff0f318
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/e2fsprogs
17
18 PKG_BUILD_DEPENDS:=util-linux
19 PKG_INSTALL:=1
20
21 include $(INCLUDE_DIR)/package.mk
22
23 define Package/e2fsprogs/Default
24 URL:=http://e2fsprogs.sourceforge.net/
25 SUBMENU:=Filesystem
26 endef
27
28 define Package/e2fsprogs
29 $(call Package/e2fsprogs/Default)
30 SECTION:=utils
31 CATEGORY:=Utilities
32 TITLE:=Ext2/3/4 filesystem utilities
33 DEPENDS:=+libuuid +libext2fs
34 endef
35
36 define Package/e2fsprogs/description
37 This package contains essential ext2 filesystem utilities which consists of
38 e2fsck, mke2fs, tune2fs, and most of the other core ext2
39 filesystem utilities.
40 endef
41
42 define Package/libext2fs
43 $(call Package/e2fsprogs/Default)
44 DEPENDS:=+libcom_err
45 SECTION:=libs
46 CATEGORY:=Libraries
47 TITLE:=ext2/3/4 filesystem library
48 endef
49
50 define Package/libext2fs/description
51 libext2fs is a library which can access ext2, ext3 and ext4 filesystems.
52 endef
53
54 define Package/libcom_err
55 $(call Package/e2fsprogs/Default)
56 DEPENDS:=+libpthread
57 SECTION:=libs
58 CATEGORY:=Libraries
59 TITLE:=Common error description library
60 endef
61
62 define Package/libcom_err/description
63 libcom_err is a library providing common error descriptions
64 endef
65
66 define Package/tune2fs
67 $(call Package/e2fsprogs)
68 TITLE:=Ext2 Filesystem tune utility
69 DEPENDS:= +e2fsprogs
70 endef
71
72 define Package/resize2fs
73 $(call Package/e2fsprogs)
74 TITLE:=Ext2 Filesystem resize utility
75 DEPENDS:= +e2fsprogs
76 endef
77
78 define Package/badblocks
79 $(call Package/e2fsprogs)
80 TITLE:=Ext2 Filesystem badblocks utility
81 DEPENDS:= +e2fsprogs
82 endef
83
84 TARGET_CFLAGS += $(FPIC)
85
86 CONFIGURE_ARGS += \
87 --enable-elf-shlibs \
88 --disable-libuuid \
89 --enable-libblkid \
90 --disable-uuidd \
91 --disable-tls \
92 --disable-nls \
93 --disable-rpath
94
95 define Build/Prepare
96 $(call Build/Prepare/Default)
97 $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
98 endef
99
100 define Build/Compile
101 $(MAKE) -C $(PKG_BUILD_DIR)/util \
102 BUILDCC="$(HOSTCC)" \
103 CFLAGS="" \
104 CPPFLAGS="" \
105 LDFLAGS="" \
106 subst
107 $(MAKE) -C $(PKG_BUILD_DIR) \
108 BUILDCC="$(HOSTCC)" \
109 DESTDIR="$(PKG_INSTALL_DIR)" \
110 LIBBLKID="$(PKG_BUILD_DIR)/lib/libblkid.a -luuid" \
111 all
112 endef
113
114 define Build/InstallDev
115 $(MAKE) -C $(PKG_BUILD_DIR) \
116 BUILDCC="$(HOSTCC)" \
117 DESTDIR="$(1)" \
118 install-libs
119 $(MAKE) -C $(PKG_BUILD_DIR)/lib/ext2fs \
120 BUILDCC="$(HOSTCC)" \
121 DESTDIR="$(1)" \
122 install
123 endef
124
125 define Package/e2fsprogs/install
126 $(INSTALL_DIR) $(1)/usr/sbin
127 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
128 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
129 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext2
130 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext3
131 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext4
132 $(INSTALL_DIR) $(1)/usr/lib
133 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
134 $(INSTALL_DIR) $(1)/etc/init.d
135 $(INSTALL_DIR) $(1)/lib/functions/fsck
136 $(INSTALL_DATA) ./files/e2fsck.sh $(1)/lib/functions/fsck/
137 $(INSTALL_DATA) ./files/e2fsck.conf $(1)/etc/e2fsck.conf
138 endef
139
140 define Package/libcom_err/install
141 $(INSTALL_DIR) $(1)/usr/lib
142 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* $(1)/usr/lib/
143 endef
144
145 define Package/libext2fs/install
146 $(INSTALL_DIR) $(1)/usr/lib
147 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* $(1)/usr/lib/
148 endef
149
150 define Package/tune2fs/install
151 $(INSTALL_DIR) $(1)/usr/sbin
152 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
153 endef
154
155 define Package/resize2fs/install
156 $(INSTALL_DIR) $(1)/usr/sbin
157 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
158 endef
159
160 define Package/badblocks/install
161 $(INSTALL_DIR) $(1)/usr/sbin
162 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
163 endef
164
165 $(eval $(call BuildPackage,e2fsprogs))
166 $(eval $(call BuildPackage,libext2fs))
167 $(eval $(call BuildPackage,libcom_err))
168 $(eval $(call BuildPackage,tune2fs))
169 $(eval $(call BuildPackage,resize2fs))
170 $(eval $(call BuildPackage,badblocks))