--- /dev/null
+--- zlib1-1.1.3.orig/configure
++++ zlib1-1.1.3/configure
+@@ -69,11 +69,11 @@
+
+ if test "$gcc" -eq 1 && ($cc -c $cflags $test.c) 2>/dev/null; then
+ CC="$cc"
+- SFLAGS=${CFLAGS-"-fPIC -O3"}
++ SFLAGS=${CFLAGS-"-D_REENTRANT -fPIC -O2"}
+ CFLAGS="$cflags"
+ case `(uname -s || echo unknown) 2>/dev/null` in
+- Linux | linux) LDSHARED=${LDSHARED-"gcc -shared -Wl,-soname,libz.so.1"};;
+- *) LDSHARED=${LDSHARED-"gcc -shared"};;
++ Linux | linux) LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1 -lc"};;
++ *) LDSHARED=${LDSHARED-"$cc -shared"};;
+ esac
+ else
+ # find system name and corresponding cc options
+--- zlib1-1.1.3.orig/Makefile
++++ zlib1-1.1.3/Makefile
+@@ -12,20 +12,20 @@
+ # To install in $HOME instead of /usr/local, use:
+ # make install prefix=$HOME
+
+-CC=cc
++CC=gcc
+
+-CFLAGS=-O
++CFLAGS=$(OPTIMIZE) -D_REENTRANT -fPIC -DHAVE_UNISTD_H -DUSE_MMAP
+ #CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7
+ #CFLAGS=-g -DDEBUG
+ #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
+ # -Wstrict-prototypes -Wmissing-prototypes
+
+ LDFLAGS=-L. -lz
+-LDSHARED=$(CC)
+-CPP=$(CC) -E
++LDSHARED=gcc -shared -Wl,-soname,libz.so.1 -lc
++CPP=gcc -E
+
+ VER=1.1.3
+-LIBS=libz.a
++LIBS=libz.so.1.1.3
+ SHAREDLIB=libz.so
+
+ AR=ar rc
+@@ -33,10 +33,10 @@
+ TAR=tar
+ SHELL=/bin/sh
+
+-prefix = /usr/local
+-exec_prefix = ${prefix}
+-libdir = ${exec_prefix}/lib
+-includedir = ${prefix}/include
++prefix =/usr/local
++exec_prefix =${prefix}
++libdir =${exec_prefix}/lib
++includedir =${prefix}/include
+
+ OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \
+ zutil.o inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o
+--- zlib1-1.1.3.orig/contrib/minizip/Makefile
++++ zlib1-1.1.3/contrib/minizip/Makefile
+@@ -1,8 +1,8 @@
+ CC=cc
+-CFLAGS=-O -I../..
++CFLAGS=-O2 -I../..
+
+-UNZ_OBJS = miniunz.o unzip.o ../../libz.a
+-ZIP_OBJS = minizip.o zip.o ../../libz.a
++UNZ_OBJS = miniunz.o unzip.o
++ZIP_OBJS = minizip.o zip.o
+
+ .c.o:
+ $(CC) -c $(CFLAGS) $*.c
+@@ -10,10 +10,10 @@
+ all: miniunz minizip
+
+ miniunz: $(UNZ_OBJS)
+- $(CC) $(CFLAGS) -o $@ $(UNZ_OBJS)
++ $(CC) $(CFLAGS) -o $@ $(UNZ_OBJS) -L ../.. -lz
+
+ minizip: $(ZIP_OBJS)
+- $(CC) $(CFLAGS) -o $@ $(ZIP_OBJS)
++ $(CC) $(CFLAGS) -o $@ $(ZIP_OBJS) -L ../.. -lz
+
+ test: miniunz minizip
+ ./minizip test readme.txt
+--- zlib1-1.1.3.orig/contrib/minizip/zip.c
++++ zlib1-1.1.3/contrib/minizip/zip.c
+@@ -483,7 +483,7 @@
+ zi->ci.stream.opaque = (voidpf)0;
+
+ err = deflateInit2(&zi->ci.stream, level,
+- Z_DEFLATED, -MAX_WBITS, DEF_MEM_LEVEL, 0);
++ Z_DEFLATED, -MAX_WBITS, MAX_MEM_LEVEL, 0);
+
+ if (err==Z_OK)
+ zi->ci.stream_initialised = 1;
+--- zlib1-1.1.3.orig/ztest12023.c
++++ zlib1-1.1.3/ztest12023.c
+@@ -0,0 +1,2 @@
++extern int getchar();
++int hello() {return getchar();}