package/libs/zlib: Add host build
[openwrt/openwrt.git] / package / libs / zlib / Makefile
1 #
2 # Copyright (C) 2006-2013 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=zlib
11 PKG_VERSION:=1.2.11
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
15 PKG_SOURCE_URL:=@SF/libpng http://www.zlib.net
16 PKG_HASH:=4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066
17
18 PKG_LICENSE:=Zlib
19 PKG_LICENSE_FILES:=README
20 PKG_CPE_ID:=cpe:/a:gnu:zlib
21
22 PKG_CONFIG_DEPENDS:= CONFIG_ZLIB_OPTIMIZE_SPEED
23
24 include $(INCLUDE_DIR)/host-build.mk
25 include $(INCLUDE_DIR)/package.mk
26 include $(INCLUDE_DIR)/cmake.mk
27
28 define Package/zlib
29 SECTION:=libs
30 CATEGORY:=Libraries
31 TITLE:=Library implementing the deflate compression method
32 URL:=http://www.zlib.net/
33 endef
34
35 define Package/zlib-dev
36 SECTION:=devel
37 CATEGORY:=Development
38 SUBMENU:=Libraries
39 DEPENDS:=zlib
40 TITLE:=Development files for the zlib library
41 endef
42
43 define Package/zlib/description
44 zlib is a lossless data-compression library.
45 This package includes the shared library.
46 endef
47
48 define Package/zlib-dev/description
49 zlib is a lossless data-compression library.
50 This package includes the development support files.
51 endef
52
53 define Package/zlib/config
54 source "$(SOURCE)/Config.in"
55 endef
56
57 TARGET_CFLAGS += $(FPIC)
58
59 ifeq ($(CONFIG_ZLIB_OPTIMIZE_SPEED),y)
60 TARGET_CFLAGS := $(filter-out -O%,$(TARGET_CFLAGS)) -O3
61 endif
62
63 ifneq ($(findstring neon,$(CONFIG_TARGET_OPTIMIZATION)),)
64 CMAKE_OPTIONS += \
65 -DARMv8=ON
66 endif
67
68 define Build/InstallDev
69 mkdir -p $(1)/usr/include
70 $(CP) $(PKG_INSTALL_DIR)/usr/include/z{conf,lib}.h \
71 $(1)/usr/include/
72 mkdir -p $(1)/usr/lib
73 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libz.{a,so*} \
74 $(1)/usr/lib/
75 mkdir -p $(1)/usr/lib/pkgconfig
76 $(CP) $(PKG_INSTALL_DIR)/usr/share/pkgconfig/zlib.pc \
77 $(1)/usr/lib/pkgconfig/
78 endef
79
80 # libz.so is needed for openssl (zlib-dynamic)
81 define Package/zlib/install
82 $(INSTALL_DIR) $(1)/usr/lib
83 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libz.so $(1)/usr/lib/
84 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libz.so.* $(1)/usr/lib/
85 endef
86
87 define Package/zlib-dev/install
88 $(INSTALL_DIR) $(1)/usr/include
89 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/zconf.h \
90 $(1)/usr/include/
91 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/zlib.h \
92 $(1)/usr/include/
93 $(INSTALL_DIR) $(1)/usr/lib
94 $(CP) $(PKG_INSTALL_DIR)/usr/lib/libz.a $(1)/usr/lib/
95 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
96 $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/pkgconfig/zlib.pc \
97 $(1)/usr/lib/pkgconfig/
98 endef
99
100 $(eval $(call HostBuild))
101 $(eval $(call BuildPackage,zlib))
102 $(eval $(call BuildPackage,zlib-dev))