changeset 2865:5ebec6b3a79c

Build shared library for zlib by converting static library.
author John W. Eaton <jwe@octave.org>
date Fri, 16 Nov 2012 14:43:56 -0500
parents 071f6f3b11fa
children 028eabbb0f76
files src/zlib.mk
diffstat 1 files changed, 9 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/zlib.mk	Fri Nov 16 12:54:33 2012 -0500
+++ b/src/zlib.mk	Fri Nov 16 14:43:56 2012 -0500
@@ -9,9 +9,6 @@
 $(PKG)_URL      := http://zlib.net/$($(PKG)_FILE)
 $(PKG)_URL_2    := http://$(SOURCEFORGE_MIRROR)/project/libpng/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE)
 $(PKG)_DEPS     := gcc
-ifneq ($(BUILD_SHARED),yes)
-$(PKG)_STATIC_FLAG := -static
-endif
 
 define $(PKG)_UPDATE
     $(WGET) -q -O- 'http://zlib.net/' | \
@@ -22,6 +19,14 @@
 define $(PKG)_BUILD
     cd '$(1)' && CHOST='$(TARGET)' ./configure \
         --prefix='$(PREFIX)/$(TARGET)' \
-        $($(PKG)_STATIC_FLAG)
+        --static
+
     $(MAKE) -C '$(1)' -j '$(JOBS)' install
+
+    if [ "$(BUILD_SHARED)" = yes ]; then \
+      $(MAKE_SHARED_FROM_STATIC) --ar '$(TARGET)-ar' --ld '$(TARGET)-gcc' '$(1)/libz.a'; \
+      $(INSTALL) -d '$(PREFIX)/$(TARGET)/bin/'; \
+      $(INSTALL) -m644 '$(1)/libz.dll.a' '$(PREFIX)/$(TARGET)/lib/libz.dll.a'; \
+      $(INSTALL) -m644 '$(1)/libz.dll' '$(PREFIX)/$(TARGET)/bin/libz.dll'; \
+    fi
 endef