package/libs/zlib: Add host build
[openwrt/staging/lynxis.git] / package / libs / zlib / Makefile
index 902381bdeaa7b79c439c3e9cddc898ce4076006d..94977b05896a14d401777f75a8d78d9fd5dbb5c5 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=zlib
 PKG_VERSION:=1.2.11
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@SF/libpng http://www.zlib.net
@@ -17,8 +17,13 @@ PKG_HASH:=4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066
 
 PKG_LICENSE:=Zlib
 PKG_LICENSE_FILES:=README
+PKG_CPE_ID:=cpe:/a:gnu:zlib
 
+PKG_CONFIG_DEPENDS:= CONFIG_ZLIB_OPTIMIZE_SPEED
+
+include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
 
 define Package/zlib
   SECTION:=libs
@@ -45,28 +50,20 @@ define Package/zlib-dev/description
  This package includes the development support files.
 endef
 
-define Build/Configure
-       (cd $(PKG_BUILD_DIR); \
-               $(TARGET_CONFIGURE_OPTS) \
-               LDSHARED="$(TARGET_CC) -shared -Wl,-soname,libz.so.1" \
-               CFLAGS="$(TARGET_CFLAGS) $(FPIC)" \
-               ./configure \
-                       --prefix=/usr \
-                       --shared \
-                       --uname=Linux \
-       );
+define Package/zlib/config
+       source "$(SOURCE)/Config.in"
 endef
 
-define Build/Compile
-       +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
-               $(TARGET_CONFIGURE_OPTS) \
-               CFLAGS="$(TARGET_CFLAGS)" \
-               libz.a libz.so.$(PKG_VERSION)
-       mkdir -p $(PKG_INSTALL_DIR)
-       $(MAKE) -C $(PKG_BUILD_DIR) \
-               DESTDIR="$(PKG_INSTALL_DIR)" \
-               install
-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
+endif
 
 define Build/InstallDev
        mkdir -p $(1)/usr/include
@@ -76,7 +73,7 @@ define Build/InstallDev
        $(CP)   $(PKG_INSTALL_DIR)/usr/lib/libz.{a,so*} \
                $(1)/usr/lib/
        mkdir -p $(1)/usr/lib/pkgconfig
-       $(CP)   $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/zlib.pc \
+       $(CP)   $(PKG_INSTALL_DIR)/usr/share/pkgconfig/zlib.pc \
                $(1)/usr/lib/pkgconfig/
 endef
 
@@ -96,9 +93,10 @@ define Package/zlib-dev/install
        $(INSTALL_DIR) $(1)/usr/lib
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libz.a $(1)/usr/lib/
        $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
-       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/zlib.pc \
+       $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/pkgconfig/zlib.pc \
          $(1)/usr/lib/pkgconfig/
 endef
 
+$(eval $(call HostBuild))
 $(eval $(call BuildPackage,zlib))
 $(eval $(call BuildPackage,zlib-dev))