From a5d63fb1ea26df90a94c86c71ce9ca4f7e22869b Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Fri, 19 Jul 2019 21:08:19 -0700 Subject: [PATCH] zstd: Update to 1.4.1 Decompression speedup of 7% on average. Remove upstreamed uClibc-ng patch. Fixed optimization option to show properly under menuconfig. Added LTO for smaller size. Signed-off-by: Rosen Penev --- utils/zstd/Makefile | 22 ++++++++++++---------- utils/zstd/patches/010-uClibc-ng.patch | 11 ----------- 2 files changed, 12 insertions(+), 21 deletions(-) delete mode 100644 utils/zstd/patches/010-uClibc-ng.patch diff --git a/utils/zstd/Makefile b/utils/zstd/Makefile index 2f3048e24..2cb0bda29 100644 --- a/utils/zstd/Makefile +++ b/utils/zstd/Makefile @@ -1,12 +1,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=zstd -PKG_VERSION:=1.4.0 -PKG_RELEASE:=4 +PKG_VERSION:=1.4.1 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/facebook/zstd/tar.gz/v$(PKG_VERSION)? -PKG_HASH:=63be339137d2b683c6d19a9e34f4fb684790e864fee13c7dd40e197a64c705c1 +PKG_HASH:=f91ea3397e6cc65d398e1bc0713cf2f0b0de2fb85ea9dabb1eb3e8f1b22f8d6f PKG_MAINTAINER:=Amol Bhave PKG_LICENSE:=GPL-2.0-or-later @@ -21,13 +21,6 @@ include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk include $(INCLUDE_DIR)/cmake.mk -ifeq ($(CONFIG_ZSTD_OPTIMIZE_O3),y) - TARGET_CFLAGS := $(filter-out -O%,$(TARGET_CFLAGS)) - TARGET_CFLAGS += -O3 - TARGET_CXXFLAGS := $(filter-out -O%,$(TARGET_CXXFLAGS)) - TARGET_CXXFLAGS += -O3 -endif - define Package/zstd/Default SUBMENU:=Compression URL:=https://github.com/facebook/zstd @@ -38,6 +31,7 @@ $(call Package/zstd/Default) SECTION:=libs CATEGORY:=Libraries TITLE:=zstd library. + MENU:=1 endef define Package/libzstd/description @@ -48,6 +42,7 @@ endef define Package/libzstd/config config ZSTD_OPTIMIZE_O3 bool "Use all optimizations (-O3)" + depends on PACKAGE_libzstd default y help This enables additional optmizations using the -O3 compilation flag. @@ -66,6 +61,13 @@ define Package/zstd/description This package provides the zstd binaries. endef +ifeq ($(CONFIG_ZSTD_OPTIMIZE_O3),y) +TARGET_CFLAGS:= $(filter-out -O%,$(TARGET_CFLAGS)) -O3 +endif + +TARGET_CFLAGS += -flto +TARGET_LDFLAGS += -Wl,--as-needed + define Package/libzstd/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libzstd.so* $(1)/usr/lib/ diff --git a/utils/zstd/patches/010-uClibc-ng.patch b/utils/zstd/patches/010-uClibc-ng.patch deleted file mode 100644 index 552286bec..000000000 --- a/utils/zstd/patches/010-uClibc-ng.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/programs/fileio.c -+++ b/programs/fileio.c -@@ -175,7 +175,7 @@ static void clearHandler(void) - - #if !defined(BACKTRACE_ENABLE) - /* automatic detector : backtrace enabled by default on linux+glibc and osx */ --# if (defined(__linux__) && defined(__GLIBC__)) \ -+# if (defined(__linux__) && (defined(__GLIBC__) && !defined(__UCLIBC__))) \ - || (defined(__APPLE__) && defined(__MACH__)) - # define BACKTRACE_ENABLE 1 - # else