mirror of
				https://github.com/immortalwrt/immortalwrt.git
				synced 2025-10-30 07:49:55 +08:00 
			
		
		
		
	 cdf891052d
			
		
	
	cdf891052d
	
	
	
		
			
			Add pending patch that disable libmagic support as this cause reproducibility issue due to timing of presence of libmagic library at times e2fsprogs gets compiled. The new patch adds control on libmagic inclusion and we add the --without-libmagic to the configure args by default. Reported-by: Paul Spooren <mail@aparcar.org> Link: https://github.com/openwrt/openwrt/pull/20499 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
		
			
				
	
	
		
			341 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			341 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| #
 | |
| # 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.2
 | |
| PKG_RELEASE:=1
 | |
| 
 | |
| PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 | |
| PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/tytso/e2fsprogs/v$(PKG_VERSION)/
 | |
| PKG_HASH:=08242e64ca0e8194d9c1caad49762b19209a06318199b63ce74ae4ef2d74e63c
 | |
| 
 | |
| PKG_LICENSE:=GPL-2.0
 | |
| PKG_LICENSE_FILES:=NOTICE
 | |
| PKG_CPE_ID:=cpe:/a:e2fsprogs_project:e2fsprogs
 | |
| 
 | |
| PKG_BUILD_DEPENDS:=util-linux
 | |
| 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 +libe2p
 | |
| 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/libe2p
 | |
|   SECTION:=libs
 | |
|   CATEGORY:=Libraries
 | |
|   TITLE:=ext2fs userspace programs utility library
 | |
|   URL:=http://e2fsprogs.sourceforge.net/
 | |
|   DEPENDS:=+libuuid
 | |
|   ABI_VERSION:=2
 | |
| endef
 | |
| 
 | |
| define Package/libe2p/description
 | |
|  This package contains libe2p, ext2fs userspace programs utility library
 | |
|  bundled with e2fsprogs.
 | |
| 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	\
 | |
| 	--without-libmagic
 | |
| 
 | |
| 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,$(OPENWRT_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,$(OPENWRT_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
 | |
| 	$(CP) $(PKG_BUILD_DIR)/lib/e2p/e2p.pc $(1)/usr/lib/pkgconfig
 | |
| 	$(CP) $(PKG_BUILD_DIR)/lib/ss/ss.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
 | |
| 	$(CP) $(PKG_BUILD_DIR)/lib/libe2p.{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/
 | |
| 	$(INSTALL_DIR) $(1)/usr/include/e2p
 | |
| 	$(CP) $(PKG_BUILD_DIR)/lib/e2p/e2p.h $(1)/usr/include/e2p
 | |
| 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
 | |
| 	$(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/libe2p/install
 | |
| 	$(INSTALL_DIR) $(1)/usr/lib
 | |
| 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libe2p.so.* $(1)/usr/lib/
 | |
| 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,libe2p))
 | |
| $(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))
 |