123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332 |
- #
- # Copyright (C) 2006-2014 OpenWrt.org
- # Copyright 2010 Vertical Communications
- # This is free software, licensed under the GNU General Public License v2.
- # See /LICENSE for more information.
- #
- include $(TOPDIR)/rules.mk
- PKG_NAME:=e2fsprogs
- PKG_VERSION:=1.47.0
- PKG_RELEASE:=2
- PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
- PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/tytso/e2fsprogs/v$(PKG_VERSION)/
- PKG_HASH:=144af53f2bbd921cef6f8bea88bb9faddca865da3fbc657cc9b4d2001097d5db
- PKG_LICENSE:=GPL-2.0
- PKG_LICENSE_FILES:=NOTICE
- PKG_CPE_ID:=cpe:/a:e2fsprogs_project:e2fsprogs
- PKG_BUILD_DEPENDS:=util-linux e2fsprogs/host
- PKG_INSTALL:=1
- PKG_BUILD_PARALLEL:=1
- PKG_BUILD_FLAGS:=gc-sections lto
- include $(INCLUDE_DIR)/package.mk
- include $(INCLUDE_DIR)/host-build.mk
- define Package/e2fsprogs
- SECTION:=utils
- CATEGORY:=Utilities
- SUBMENU:=Filesystem
- TITLE:=Ext2/3/4 filesystem utilities
- URL:=http://e2fsprogs.sourceforge.net/
- DEPENDS:=+libuuid +libext2fs
- endef
- define Package/e2fsprogs/description
- This package contains essential ext2 filesystem utilities which consists of
- e2fsck, mke2fs and most of the other core ext2 filesystem utilities.
- endef
- define Package/libext2fs
- SECTION:=libs
- CATEGORY:=Libraries
- TITLE:=ext2/3/4 filesystem library
- URL:=http://e2fsprogs.sourceforge.net/
- DEPENDS:=+libuuid +libblkid +libss +libcomerr
- ABI_VERSION:=2
- endef
- define Package/libext2fs/description
- libext2fs is a library which can access ext2, ext3 and ext4 filesystems.
- endef
- define Package/libss
- SECTION:=libs
- CATEGORY:=Libraries
- TITLE:=command-line interface parsing library
- URL:=http://e2fsprogs.sourceforge.net/
- DEPENDS:=+libcomerr
- ABI_VERSION:=2
- endef
- define Package/libss/description
- This pacakge contains libss, a command-line interface parsing library
- bundled with e2fsprogs.
- endef
- define Package/libcomerr
- SECTION:=libs
- CATEGORY:=Libraries
- TITLE:=common error description library
- URL:=http://e2fsprogs.sourceforge.net/
- DEPENDS:=+libuuid
- ABI_VERSION:=0
- endef
- define Package/libcomerr/description
- This package contains libcom_err, the common error description library
- bundled with e2fsprogs.
- endef
- define Package/tune2fs
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem tune utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/resize2fs
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem resize utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/badblocks
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem badblocks utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/dumpe2fs
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem information dumping utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/e2freefrag
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem free space fragmentation information utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/e4crypt
- $(call Package/e2fsprogs)
- TITLE:=Ext4 Filesystem encryption utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/filefrag
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem file fragmentation report utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/debugfs
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem debugger
- DEPENDS:= +e2fsprogs
- endef
- define Package/chattr
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem chattr utility
- DEPENDS:= +e2fsprogs
- endef
- define Package/lsattr
- $(call Package/e2fsprogs)
- TITLE:=Ext2 Filesystem lsattr utility
- DEPENDS:= +e2fsprogs
- endef
- TARGET_CFLAGS += $(FPIC)
- CONFIGURE_ARGS += \
- --disable-testio-debug \
- --enable-elf-shlibs \
- --disable-libuuid \
- --disable-libblkid \
- --disable-uuidd \
- --disable-tls \
- --disable-nls \
- --disable-rpath \
- --disable-fuse2fs
- ifneq ($(CONFIG_USE_MUSL),)
- CONFIGURE_VARS += ac_cv_func_lseek64=yes
- endif
- define Build/Prepare
- $(call Build/Prepare/Default)
- $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(PKG_BUILD_DIR)/config/
- endef
- define Build/Compile
- +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/util \
- BUILDCC="$(HOSTCC)" \
- CFLAGS="" \
- CPPFLAGS="" \
- LDFLAGS="" \
- V=$(if $(findstring c,$(LIBRECMC_VERBOSE)),1,) \
- subst
- +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
- BUILDCC="$(HOSTCC)" \
- DESTDIR="$(PKG_INSTALL_DIR)" \
- ELF_OTHER_LIBS="$(TARGET_LDFLAGS) -luuid" \
- SYSLIBS="$(TARGET_LDFLAGS) -ldl -L$(PKG_BUILD_DIR)/lib/ -l:libcom_err.so.0.0" \
- V=$(if $(findstring c,$(LIBRECMC_VERBOSE)),1,) \
- all
- endef
- define Build/InstallDev
- $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
- $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/ext2fs.pc $(1)/usr/lib/pkgconfig
- $(CP) $(PKG_BUILD_DIR)/lib/et/com_err.pc $(1)/usr/lib/pkgconfig
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_BUILD_DIR)/lib/libext2fs.{so,a}* $(1)/usr/lib
- $(CP) $(PKG_BUILD_DIR)/lib/libcom_err.{so,a}* $(1)/usr/lib
- $(CP) $(PKG_BUILD_DIR)/lib/libss.{so,a}* $(1)/usr/lib
- $(INSTALL_DIR) $(1)/usr/include/ext2fs
- $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/*.h $(1)/usr/include/ext2fs
- $(INSTALL_DIR) $(1)/usr/include/et
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/et/*.h $(1)/usr/include/et
- # Apparently there is some confusion
- echo "#include <et/com_err.h>" > $(1)/usr/include/com_err.h
- $(INSTALL_DIR) $(1)/usr/include/ss
- $(CP) \
- $(PKG_BUILD_DIR)/lib/ss/ss.h \
- $(PKG_BUILD_DIR)/lib/ss/ss_err.h \
- $(1)/usr/include/ss/
- endef
- define Host/Compile
- $(MAKE) $(PKG_JOBS) -C $(HOST_BUILD_DIR)/lib/ss mk_cmds
- $(MAKE) $(PKG_JOBS) -C $(HOST_BUILD_DIR)/lib/et compile_et
- endef
- define Host/Install
- $(INSTALL_DIR) $(1)/share/et
- $(CP) $(HOST_BUILD_DIR)/lib/et/et_[ch].awk $(1)/share/et/
- $(INSTALL_DIR) $(1)/share/ss
- $(CP) $(HOST_BUILD_DIR)/lib/ss/ct_c.{sed,awk} $(1)/share/ss/
- $(INSTALL_DIR) $(1)/bin
- $(CP) \
- $(HOST_BUILD_DIR)/lib/et/compile_et \
- $(HOST_BUILD_DIR)/lib/ss/mk_cmds \
- $(1)/bin/
- endef
- define Package/e2fsprogs/conffiles
- /etc/e2fsck.conf
- endef
- define Package/e2fsprogs/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2fsck $(1)/usr/sbin/
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mke2fs $(1)/usr/sbin/
- $(LN) mke2fs $(1)/usr/sbin/mkfs.ext2
- $(LN) mke2fs $(1)/usr/sbin/mkfs.ext3
- $(LN) mke2fs $(1)/usr/sbin/mkfs.ext4
- $(LN) e2fsck $(1)/usr/sbin/fsck.ext2
- $(LN) e2fsck $(1)/usr/sbin/fsck.ext3
- $(LN) e2fsck $(1)/usr/sbin/fsck.ext4
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
- $(INSTALL_DIR) $(1)/etc/init.d
- $(INSTALL_DIR) $(1)/lib/functions/fsck
- $(INSTALL_DATA) ./files/e2fsck.sh $(1)/lib/functions/fsck/
- $(INSTALL_DATA) ./files/e2fsck.conf $(1)/etc/e2fsck.conf
- endef
- define Package/libcomerr/install
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libcom_err.so.* $(1)/usr/lib/
- endef
- define Package/libss/install
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libss.so.* $(1)/usr/lib/
- endef
- define Package/libext2fs/install
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/libext2fs.so.* $(1)/usr/lib/
- endef
- define Package/libext2fs/install_lib
- $(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_BUILD_DIR)/lib/ext2fs/libext2fs.a $(1)/usr/lib/libext2fs_pic.a
- endef
- define Package/tune2fs/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/tune2fs $(1)/usr/sbin/
- endef
- define Package/resize2fs/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/resize2fs $(1)/usr/sbin/
- endef
- define Package/badblocks/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/badblocks $(1)/usr/sbin/
- endef
- define Package/dumpe2fs/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/dumpe2fs $(1)/usr/sbin/
- endef
- define Package/e2freefrag/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e2freefrag $(1)/usr/sbin/
- endef
- define Package/e4crypt/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/e4crypt $(1)/usr/sbin/
- endef
- define Package/filefrag/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/filefrag $(1)/usr/sbin/
- endef
- define Package/debugfs/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_DIR) $(1)/usr/lib
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/debugfs $(1)/usr/sbin/
- endef
- define Package/chattr/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/chattr $(1)/usr/bin/
- endef
- define Package/lsattr/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/lsattr $(1)/usr/bin/
- endef
- $(eval $(call BuildPackage,libcomerr))
- $(eval $(call BuildPackage,libss))
- $(eval $(call BuildPackage,libext2fs))
- $(eval $(call BuildPackage,e2fsprogs))
- $(eval $(call BuildPackage,tune2fs))
- $(eval $(call BuildPackage,resize2fs))
- $(eval $(call BuildPackage,badblocks))
- $(eval $(call BuildPackage,dumpe2fs))
- $(eval $(call BuildPackage,e2freefrag))
- $(eval $(call BuildPackage,e4crypt))
- $(eval $(call BuildPackage,filefrag))
- $(eval $(call BuildPackage,debugfs))
- $(eval $(call BuildPackage,chattr))
- $(eval $(call BuildPackage,lsattr))
- $(eval $(call HostBuild))
|