From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Chuck Date: Mon, 13 Jul 2020 13:09:02 +0800 Subject: [PATCH] tools: add ucl and upx compresss Signed-off-by: Chuck --- 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