From 0dd439141da0fc1a7938ee06f7be3924c73ba716 Mon Sep 17 00:00:00 2001 From: Daniel Engberg Date: Tue, 5 Sep 2017 19:31:10 +0200 Subject: [PATCH] package/libs/zlib: Add option for O3 optimization Add option to use O3 optimization as not all devices have space constraints. This option is default using GCC in upstream but isn't in the CMake makefile for some reason. Source: https://github.com/madler/zlib/blob/master/configure#L170 Signed-off-by: Daniel Engberg --- package/libs/zlib/Config.in | 11 +++++++++++ package/libs/zlib/Makefile | 10 ++++++++++ 2 files changed, 21 insertions(+) create mode 100644 package/libs/zlib/Config.in diff --git a/package/libs/zlib/Config.in b/package/libs/zlib/Config.in new file mode 100644 index 0000000000..64b835e77a --- /dev/null +++ b/package/libs/zlib/Config.in @@ -0,0 +1,11 @@ +menu "Configuration" + depends on PACKAGE_zlib + +config ZLIB_OPTIMIZE_SPEED + bool "Optimize for speed" + help + This enables additional optimization and + increases performance considerably at + the expense of binary size. + +endmenu diff --git a/package/libs/zlib/Makefile b/package/libs/zlib/Makefile index 3602e629cf..2650faa139 100644 --- a/package/libs/zlib/Makefile +++ b/package/libs/zlib/Makefile @@ -19,6 +19,8 @@ PKG_LICENSE:=Zlib PKG_LICENSE_FILES:=README PKG_CPE_ID:=cpe:/a:gnu:zlib +PKG_CONFIG_DEPENDS:= CONFIG_ZLIB_OPTIMIZE_SPEED + include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/cmake.mk @@ -47,8 +49,16 @@ define Package/zlib-dev/description This package includes the development support files. endef +define Package/zlib/config + source "$(SOURCE)/Config.in" +endef + TARGET_CFLAGS += $(FPIC) +ifeq ($(CONFIG_ZLIB_OPTIMIZE_SPEED),y) + TARGET_CFLAGS := $(filter-out -O%,$(TARGET_CFLAGS)) -O3 +endif + ifneq ($(findstring neon,$(CONFIG_TARGET_OPTIMIZATION)),) CMAKE_OPTIONS += \ -DARMv8=ON