137 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Diff
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			137 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Diff
		
	
	
		
			Executable File
		
	
	
| From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 | |
| From: Chuck <fanck0605@qq.com>
 | |
| Date: Mon, 13 Jul 2020 13:09:02 +0800
 | |
| Subject: [PATCH] tools: add ucl and upx compresss
 | |
| 
 | |
| Signed-off-by: Chuck <fanck0605@qq.com>
 | |
| ---
 | |
|  tools/Makefile     |  3 ++-
 | |
|  tools/ucl/Makefile | 51 ++++++++++++++++++++++++++++++++++++++++++++++
 | |
|  tools/upx/Makefile | 35 +++++++++++++++++++++++++++++++
 | |
|  3 files changed, 88 insertions(+), 1 deletion(-)
 | |
|  create mode 100644 tools/ucl/Makefile
 | |
|  create mode 100644 tools/upx/Makefile
 | |
| 
 | |
| diff --git a/tools/Makefile b/tools/Makefile
 | |
| index a2665dbc9a..6dd93f3cfe 100644
 | |
| --- a/tools/Makefile
 | |
| +++ b/tools/Makefile
 | |
| @@ -25,7 +25,7 @@ tools-y += autoconf autoconf-archive automake bc bison cmake dosfstools
 | |
|  tools-y += e2fsprogs fakeroot findutils firmware-utils flex gengetopt
 | |
|  tools-y += libressl libtool lzma m4 make-ext4fs missing-macros mkimage
 | |
|  tools-y += mklibs mm-macros mtd-utils mtools padjffs2 patch-image
 | |
| -tools-y += patchelf pkgconf quilt squashfskit4 sstrip zip zlib zstd
 | |
| +tools-y += patchelf pkgconf quilt squashfskit4 sstrip ucl upx zip zlib zstd
 | |
|  tools-$(BUILD_B43_TOOLS) += b43-tools
 | |
|  tools-$(BUILD_ISL) += isl
 | |
|  tools-$(BUILD_TOOLCHAIN) += expat gmp libelf mpc mpfr
 | |
| @@ -71,6 +71,7 @@ $(curdir)/quilt/compile := $(curdir)/autoconf/compile $(curdir)/findutils/compil
 | |
|  $(curdir)/sdcc/compile := $(curdir)/bison/compile
 | |
|  $(curdir)/squashfs/compile := $(curdir)/lzma-old/compile
 | |
|  $(curdir)/squashfskit4/compile := $(curdir)/xz/compile $(curdir)/zlib/compile
 | |
| +$(curdir)/upx/compile := $(curdir)/ucl/compile
 | |
|  $(curdir)/zlib/compile := $(curdir)/cmake/compile
 | |
|  $(curdir)/zstd/compile := $(curdir)/cmake/compile
 | |
|  
 | |
| diff --git a/tools/ucl/Makefile b/tools/ucl/Makefile
 | |
| new file mode 100644
 | |
| index 0000000000..9fb9aec117
 | |
| --- /dev/null
 | |
| +++ b/tools/ucl/Makefile
 | |
| @@ -0,0 +1,51 @@
 | |
| +#
 | |
| +# Copyright (C) 2019 OpenWrt.org
 | |
| +#
 | |
| +# This is free software, licensed under the GNU General Public License v2.
 | |
| +# See /LICENSE for more information.
 | |
| +#
 | |
| +include $(TOPDIR)/rules.mk
 | |
| +
 | |
| +PKG_NAME:=ucl
 | |
| +PKG_VERSION:=1.03
 | |
| +
 | |
| +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 | |
| +PKG_SOURCE_URL:=http://www.oberhumer.com/opensource/ucl/download/$(PKG_SOURCE)
 | |
| +PKG_HASH:=b865299ffd45d73412293369c9754b07637680e5c826915f097577cd27350348
 | |
| +
 | |
| +HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION)
 | |
| +
 | |
| +include $(INCLUDE_DIR)/host-build.mk
 | |
| +
 | |
| +HOSTCC :=gcc
 | |
| +HOST_CFLAGS +=-std=gnu89
 | |
| +
 | |
| +define Host/Prepare
 | |
| +	$(Host/Prepare/Default)
 | |
| +	mkdir -p $(STAGING_DIR_HOST)/include/ucl
 | |
| +endef
 | |
| +
 | |
| +define Host/Configure
 | |
| +	(cd $(HOST_BUILD_DIR); \
 | |
| +	CC="$(HOSTCC)" \
 | |
| +	CFLAGS="$(HOST_CFLAGS)" \
 | |
| +	./configure --prefix=$(STAGING_DIR_HOST) \
 | |
| +	);
 | |
| +	$(call Host/Configure/Default)
 | |
| +endef
 | |
| +
 | |
| +define Host/Compile
 | |
| +	$(MAKE) -C $(HOST_BUILD_DIR)
 | |
| +endef
 | |
| +
 | |
| +define Host/Install
 | |
| +	$(MAKE) -C $(HOST_BUILD_DIR) install
 | |
| +endef
 | |
| +
 | |
| +define Host/Clean
 | |
| +	$(MAKE) -C $(HOST_BUILD_DIR) uninstall
 | |
| +	rm -rf $(HOST_BUILD_DIR)
 | |
| +	rm -rf $(STAGING_DIR_HOST)/include/ucl
 | |
| +endef
 | |
| +
 | |
| +$(eval $(call HostBuild))
 | |
| diff --git a/tools/upx/Makefile b/tools/upx/Makefile
 | |
| new file mode 100644
 | |
| index 0000000000..fbf1dfbd2e
 | |
| --- /dev/null
 | |
| +++ b/tools/upx/Makefile
 | |
| @@ -0,0 +1,35 @@
 | |
| +#
 | |
| +# Copyright (C) 2011-2020 OpenWrt.org
 | |
| +#
 | |
| +# This is free software, licensed under the GNU General Public License v2.
 | |
| +# See /LICENSE for more information.
 | |
| +#
 | |
| +include $(TOPDIR)/rules.mk
 | |
| +
 | |
| +PKG_NAME:=upx
 | |
| +PKG_VERSION:=3.95
 | |
| +
 | |
| +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-src.tar.xz
 | |
| +PKG_SOURCE_URL:=https://github.com/upx/upx/releases/download/v$(PKG_VERSION)
 | |
| +PKG_HASH:=3b0f55468d285c760fcf5ea865a070b27696393002712054c69ff40d8f7f5592
 | |
| +
 | |
| +HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION)-src
 | |
| +
 | |
| +include $(INCLUDE_DIR)/host-build.mk
 | |
| +
 | |
| +define Host/Compile
 | |
| +	UPX_UCLDIR=$(STAGING_DIR_HOST) \
 | |
| +	$(MAKE) -C $(HOST_BUILD_DIR)/src \
 | |
| +		CXXFLAGS_WERROR="" LDFLAGS="$(HOST_LDFLAGS)" \
 | |
| +		CXX="$(HOSTCXX)"
 | |
| +endef
 | |
| +
 | |
| +define Host/Install
 | |
| +	$(CP) $(HOST_BUILD_DIR)/src/upx.out $(STAGING_DIR_HOST)/bin/upx
 | |
| +endef
 | |
| +
 | |
| +define Host/Clean
 | |
| +	rm -f $(STAGING_DIR_HOST)/bin/upx
 | |
| +endef
 | |
| +
 | |
| +$(eval $(call HostBuild))
 | |
| -- 
 | |
| 2.25.1
 | |
| 
 |