8f1f3716ad4d928aad8610052fc6042ff0493857
[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) -ffunction-sections -fdata-sections
85
86
87 CONFIGURE_ARGS += \
88 --disable-testio-debug \
89 --enable-elf-shlibs \
90 --disable-libuuid \
91 --enable-libblkid \
92 --disable-uuidd \
93 --disable-tls \
94 --disable-nls \
95 --disable-rpath
96
97 define Build/Prepare
98 $(call Build/Prepare/Default)
99 $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
100 endef
101
102 define Build/Compile
103 $(MAKE) -C $(PKG_BUILD_DIR)/util \
104 BUILDCC="$(HOSTCC)" \
105 CFLAGS="" \
106 CPPFLAGS="" \
107 LDFLAGS="" \
108 subst
109 $(MAKE) -C $(PKG_BUILD_DIR) \
110 LDFLAGS=-Wl,--gc-sections \
111 BUILDCC="$(HOSTCC)" \
112 DESTDIR="$(PKG_INSTALL_DIR)" \
113 LIBBLKID="$(PKG_BUILD_DIR)/lib/libblkid.a -luuid" \
114 all
115 endef
116
117 define Build/InstallDev
118 $(MAKE) -C $(PKG_BUILD_DIR) \
119 BUILDCC="$(HOSTCC)" \
120 DESTDIR="$(1)" \
121 install-libs
122 $(MAKE) -C $(PKG_BUILD_DIR)/lib/ext2fs \
123 BUILDCC="$(HOSTCC)" \
124 DESTDIR="$(1)" \
125 install
126 endef
127
128 define Package/e2fsprogs/install
129 $(INSTALL_DIR) $(1)/usr/sbin
130 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
131 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
132 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext2
133 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext3
134 ln -sf mke2fs $(1)/usr/sbin/mkfs.ext4
135 $(INSTALL_DIR) $(1)/usr/lib
136 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
137 $(INSTALL_DIR) $(1)/etc/init.d
138 $(INSTALL_DIR) $(1)/lib/functions/fsck
139 $(INSTALL_DATA) ./files/e2fsck.sh $(1)/lib/functions/fsck/
140 $(INSTALL_DATA) ./files/e2fsck.conf $(1)/etc/e2fsck.conf
141 endef
142
143 define Package/libcom_err/install
144 $(INSTALL_DIR) $(1)/usr/lib
145 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* $(1)/usr/lib/
146 endef
147
148 define Package/libext2fs/install
149 $(INSTALL_DIR) $(1)/usr/lib
150 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* $(1)/usr/lib/
151 endef
152
153 define Package/tune2fs/install
154 $(INSTALL_DIR) $(1)/usr/sbin
155 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
156 endef
157
158 define Package/resize2fs/install
159 $(INSTALL_DIR) $(1)/usr/sbin
160 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
161 endef
162
163 define Package/badblocks/install
164 $(INSTALL_DIR) $(1)/usr/sbin
165 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
166 endef
167
168 $(eval $(call BuildPackage,e2fsprogs))
169 $(eval $(call BuildPackage,libext2fs))
170 $(eval $(call BuildPackage,libcom_err))
171 $(eval $(call BuildPackage,tune2fs))
172 $(eval $(call BuildPackage,resize2fs))
173 $(eval $(call BuildPackage,badblocks))