usbutils: add from /packages, clean up, add myself as maintainer
[openwrt.git] / package / 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:=+libblkid +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         --disable-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                 all
111 endef
112
113 define Build/InstallDev
114         $(MAKE) -C $(PKG_BUILD_DIR) \
115                 BUILDCC="$(HOSTCC)" \
116                 DESTDIR="$(1)" \
117                 install-libs
118         $(MAKE) -C $(PKG_BUILD_DIR)/lib/ext2fs \
119                 BUILDCC="$(HOSTCC)" \
120                 DESTDIR="$(1)" \
121                 install
122 endef
123
124 define Package/e2fsprogs/install
125         $(INSTALL_DIR) $(1)/usr/sbin
126         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
127         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
128         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext2
129         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext3
130         ln -sf mke2fs $(1)/usr/sbin/mkfs.ext4
131         $(INSTALL_DIR) $(1)/usr/lib
132         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
133         $(INSTALL_DIR) $(1)/etc/init.d
134         $(INSTALL_DIR) $(1)/lib/functions/fsck
135         $(INSTALL_DATA) ./files/e2fsck.sh $(1)/lib/functions/fsck/
136         $(INSTALL_DATA) ./files/e2fsck.conf $(1)/etc/e2fsck.conf
137 endef
138
139 define Package/libcom_err/install
140         $(INSTALL_DIR) $(1)/usr/lib
141         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* $(1)/usr/lib/
142 endef
143
144 define Package/libext2fs/install
145         $(INSTALL_DIR) $(1)/usr/lib
146         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* $(1)/usr/lib/
147 endef
148
149 define Package/tune2fs/install
150         $(INSTALL_DIR) $(1)/usr/sbin
151         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
152 endef
153
154 define Package/resize2fs/install
155         $(INSTALL_DIR) $(1)/usr/sbin
156         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
157 endef
158
159 define Package/badblocks/install
160         $(INSTALL_DIR) $(1)/usr/sbin
161         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
162 endef
163
164 $(eval $(call BuildPackage,e2fsprogs))
165 $(eval $(call BuildPackage,libext2fs))
166 $(eval $(call BuildPackage,libcom_err))
167 $(eval $(call BuildPackage,tune2fs))
168 $(eval $(call BuildPackage,resize2fs))
169 $(eval $(call BuildPackage,badblocks))