f93cf4accab9e65866fddd16c3a6453e9a89e236
[openwrt.git] / package / e2fsprogs / Makefile
1
2 # Copyright (C) 2006 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.39
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/e2fsprogs
17 PKG_MD5SUM:=06f7806782e357797fad1d34b7ced0c6
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
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/libblkid
51 $(call Package/e2fsprogs/Default)
52   SECTION:=libs
53   CATEGORY:=Libraries
54   TITLE:=block device id library
55 endef
56
57 define Package/libblkid/description
58  The blkid library which allows system programs like fsck and mount to 
59  quickly and easily find block devices by filesystem UUID and LABEL.
60 endef
61
62 define Package/tune2fs
63 $(call Package/e2fsprogs)
64   TITLE:=Ext2 Filesystem tune utility
65   DEPENDS:=e2fsprogs
66 endef
67
68 define Package/resize2fs
69 $(call Package/e2fsprogs)
70   TITLE:=Ext2 Filesystem resize utility
71   DEPENDS:=e2fsprogs
72 endef
73
74 CONFIGURE_ARGS += \
75         --enable-shared \
76         --enable-static \
77         --disable-rpath \
78         --enable-elf-shlibs \
79         --enable-dynamic-e2fsck
80
81 define Build/Prepare
82         $(call Build/Prepare/Default)
83         $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
84 endef
85
86 define Build/Compile
87         $(MAKE) -C $(PKG_BUILD_DIR)/util \
88                 BUILDCC="$(HOSTCC)" \
89                 CFLAGS="" \
90                 CPPFLAGS="" \
91                 LDFLAGS="" \
92                 subst
93         $(MAKE) -C $(PKG_BUILD_DIR) \
94                 BUILDCC="$(HOSTCC)" \
95                 DESTDIR="$(PKG_INSTALL_DIR)" \
96                 all install
97 endef
98
99 define Build/InstallDev
100         $(MAKE) -C $(PKG_BUILD_DIR) \
101                 BUILDCC="$(HOSTCC)" \
102                 DESTDIR="$(1)" \
103                 install-libs
104 endef
105
106 define Package/e2fsprogs/install
107         $(INSTALL_DIR) $(1)/usr/sbin
108         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
109         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
110         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext2
111         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext3
112         $(INSTALL_DIR) $(1)/usr/lib
113         $(CP) $(foreach lib,com_err e2p ext2fs,$(PKG_INSTALL_DIR)/usr/lib/lib$(lib).so.*) $(1)/usr/lib/
114 endef
115
116 define Package/libuuid/install
117         $(INSTALL_DIR) $(1)/usr/lib
118         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libuuid.so.* $(1)/usr/lib/
119 endef
120
121 define Package/libblkid/install
122         $(INSTALL_DIR) $(1)/usr/lib
123         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libblkid.so.* $(1)/usr/lib/
124 endef
125
126 define Package/tune2fs/install
127         $(INSTALL_DIR) $(1)/usr/sbin
128         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
129 endef
130
131 define Package/resize2fs/install
132         $(INSTALL_DIR) $(1)/usr/sbin
133         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
134 endef
135
136 $(eval $(call BuildPackage,e2fsprogs))
137 $(eval $(call BuildPackage,libuuid))
138 $(eval $(call BuildPackage,libblkid))
139 $(eval $(call BuildPackage,tune2fs))
140 $(eval $(call BuildPackage,resize2fs))