aboutsummaryrefslogtreecommitdiffstats
path: root/package/libs/zlib
diff options
context:
space:
mode:
Diffstat (limited to 'package/libs/zlib')
-rw-r--r--package/libs/zlib/Config.in11
-rw-r--r--package/libs/zlib/Makefile10
2 files changed, 21 insertions, 0 deletions
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