# -Wstrict-prototypes -Wmissing-prototypes
SFLAGS=-O
-LDFLAGS=
-TEST_LDFLAGS=-L. libz.a
+LDFLAGS=-L.
+TEST_LIBS=libz.a
LDSHARED=$(CC)
+LDSHAREDFLAGS=-shared
STATICLIB=libz.a
SHAREDLIB=libz.so
$(CC) $(CFLAGS) $(INCLUDES) -c -o $@ $(SRCDIR)/test/infcover.c
infcover$(EXE): infcover.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ infcover.o $(STATICLIB)
+ $(CC) $(LDFLAGS) -o $@ infcover.o $(STATICLIB)
ifneq ($(STRIP),)
$(STRIP) $@
endif
$(CC) $(CFLAGS) $(INCLUDES) -c -o $@ $(SRCDIR)/test/minigzip.c
example64.o: $(SRCDIR)/test/example.c $(SRCDIR)/zlib.h zconf.h
- $(CC) $(CFLAGS) $(INCLUDES) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)/test/example.c
+ $(CC) $(CFLAGS) -D_FILE_OFFSET_BITS=64 $(INCLUDES) -c -o $@ $(SRCDIR)/test/example.c
minigzip64.o: $(SRCDIR)/test/minigzip.c $(SRCDIR)/zlib.h zconf.h
- $(CC) $(CFLAGS) $(INCLUDES) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)/test/minigzip.c
+ $(CC) $(CFLAGS) -D_FILE_OFFSET_BITS=64 $(INCLUDES) -c -o $@ $(SRCDIR)/test/minigzip.c
zlibrc.o: win32/zlib1.rc
$(RC) $(RCFLAGS) -o $@ win32/zlib1.rc
.SUFFIXES: .lo
%.o: $(SRCDIR)/%.c
- $(CC) $(INCLUDES) $(CFLAGS) -c -o $@ $<
+ $(CC) $(CFLAGS) $(INCLUDES) -c -o $@ $<
%.lo: $(SRCDIR)/%.c
- $(CC) $(INCLUDES) $(SFLAGS) -DPIC -c -o $@ $<
+ $(CC) $(SFLAGS) -DPIC $(INCLUDES) -c -o $@ $<
$(SHAREDTARGET): $(PIC_OBJS) $(DEFFILE) $(RCOBJS)
ifneq ($(SHAREDTARGET),)
- $(LDSHARED) $(SFLAGS) -o $@ $(DEFFILE) $(PIC_OBJS) $(RCOBJS) $(LDSHAREDLIBC) $(LDFLAGS)
+ $(LDSHARED) $(LDSHAREDFLAGS) $(LDFLAGS) -o $@ $(DEFFILE) $(PIC_OBJS) $(RCOBJS) $(LDSHAREDLIBC)
ifneq ($(STRIP),)
$(STRIP) $@
endif
endif
example$(EXE): example.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS)
+ $(CC) $(LDFLAGS) -o $@ example.o $(TEST_LIBS)
ifneq ($(STRIP),)
$(STRIP) $@
endif
minigzip$(EXE): minigzip.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS)
+ $(CC) $(LDFLAGS) -o $@ minigzip.o $(TEST_LIBS)
ifneq ($(STRIP),)
$(STRIP) $@
endif
examplesh$(EXE): example.o $(SHAREDTARGET)
- $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDTARGET)
+ $(CC) $(LDFLAGS) -o $@ example.o $(SHAREDTARGET)
ifneq ($(STRIP),)
$(STRIP) $@
endif
minigzipsh$(EXE): minigzip.o $(SHAREDTARGET)
- $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDTARGET)
+ $(CC) $(LDFLAGS) -o $@ minigzip.o $(SHAREDTARGET)
ifneq ($(STRIP),)
$(STRIP) $@
endif
example64$(EXE): example64.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS)
+ $(CC) $(LDFLAGS) -o $@ example64.o $(TEST_LIBS)
ifneq ($(STRIP),)
$(STRIP) $@
endif
minigzip64$(EXE): minigzip64.o $(STATICLIB)
- $(CC) $(CFLAGS) -o $@ minigzip64.o $(TEST_LDFLAGS)
+ $(CC) $(LDFLAGS) -o $@ minigzip64.o $(TEST_LIBS)
ifneq ($(STRIP),)
$(STRIP) $@
endif
# set defaults before processing command line options
LDCONFIG=${LDCONFIG-"ldconfig"}
+LDFLAGS=${LDFLAGS-"-L."}
LDSHAREDLIBC="${LDSHAREDLIBC--lc}"
DEFFILE=
RC=
ARCH=$GCC_ARCH
fi ;;
esac
- CFLAGS="${CFLAGS--O3} ${ARCHS} -Wall"
+ CFLAGS="${CFLAGS--O3}"
+ if test -n "${ARCHS}"; then
+ CFLAGS="${CFLAGS} ${ARCHS}"
+ LDFLAGS="${LDFLAGS} ${ARCHS}"
+ fi
+ CFLAGS="${CFLAGS} -Wall"
SFLAGS="${CFLAGS--O3} -fPIC"
- LDFLAGS="${LDFLAGS} ${ARCHS}"
if test $build64 -eq 1; then
CFLAGS="${CFLAGS} -m64"
SFLAGS="${SFLAGS} -m64"
fi
case "$uname" in
Linux* | linux* | GNU | GNU/* | solaris*)
- LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}/zlib.map"} ;;
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}/zlib.map" ;;
*BSD | *bsd* | DragonFly)
- LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}/zlib.map"}
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}/zlib.map"
LDCONFIG="ldconfig -m" ;;
CYGWIN* | Cygwin* | cygwin*)
ARFLAGS="rcs"
- CFLAGS="${CFLAGS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
SFLAGS="${CFLAGS}"
shared_ext='.dll'
sharedlibdir='${bindir}'
SHAREDLIBV=''
SHAREDTARGET=$SHAREDLIB
IMPORTLIB='libz.dll.a'
- LDSHARED=${LDSHARED-"$cc -shared -Wl,--out-implib,${IMPORTLIB},--version-script,${SRCDIR}/zlib.map"}
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared -Wl,--out-implib,${IMPORTLIB},--version-script,${SRCDIR}/zlib.map"
LDSHAREDLIBC=""
DEFFILE='win32/zlib.def'
RC='windres'
SHAREDLIBV=''
SHAREDTARGET=$SHAREDLIB
IMPORTLIB='libz.dll.a'
- LDSHARED=${LDSHARED-"$cc -shared -Wl,--out-implib,${IMPORTLIB}"}
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared -Wl,--out-implib,${IMPORTLIB}"
LDSHAREDLIBC=""
DEFFILE='win32/zlib.def'
RC='windres'
EXE='.exe' ;;
MINGW* | mingw*)
ARFLAGS="rcs"
- CFLAGS="${CFLAGS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_POSIX_C_SOURCE=200809L -D_GNU_SOURCE=1"
+ CFLAGS="${CFLAGS} -D_POSIX_C_SOURCE=200809L -D_GNU_SOURCE=1"
SFLAGS="${CFLAGS}"
shared_ext='.dll'
sharedlibdir='${bindir}'
SHAREDLIBV=''
SHAREDTARGET=$SHAREDLIB
IMPORTLIB='libz.dll.a'
- LDSHARED=${LDSHARED-"$cc -shared -Wl,--out-implib=${IMPORTLIB} -Wl,--version-script=${SRCDIR}/zlib.map"}
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared -Wl,--out-implib=${IMPORTLIB} -Wl,--version-script=${SRCDIR}/zlib.map"
LDSHAREDLIBC=""
DEFFILE='win32/zlib.def'
RC='windres'
EXE='.exe' ;;
QNX*) # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4
# (alain.bonnefoy@icbt.com)
- LDSHARED=${LDSHARED-"$cc -shared -Wl,-hlibz.so.1"} ;;
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared -Wl,-hlibz.so.1" ;;
HP-UX*)
- LDSHARED=${LDSHARED-"$cc -shared $SFLAGS"}
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared"
case `(uname -m || echo unknown) 2>/dev/null` in
ia64)
shared_ext='.so'
SHAREDLIBV=libz.$VER$shared_ext
SHAREDLIBM=libz.$VER1$shared_ext
SHAREDTARGET=$SHAREDLIBV
- LDSHARED=${LDSHARED-"$cc -dynamiclib -install_name $libdir/$SHAREDLIBM -compatibility_version $VER1 -current_version $VER3"}
+ LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-dynamiclib -install_name $libdir/$SHAREDLIBM -compatibility_version $VER1 -current_version $VER3"
if libtool -V 2>&1 | grep Apple > /dev/null; then
AR="libtool"
else
AR="/usr/bin/libtool"
fi
ARFLAGS="-o" ;;
- *) LDSHARED=${LDSHARED-"$cc -shared"} ;;
+ *) LDSHARED=${LDSHARED-"$cc"}
+ LDSHAREDFLAGS="-shared" ;;
esac
else
# find system name and corresponding cc options
case "$uname" in
HP-UX*) SFLAGS=${CFLAGS-"-O +z"}
CFLAGS=${CFLAGS-"-O"}
-# LDSHARED=${LDSHARED-"ld -b +vnocompatwarnings"}
- LDSHARED=${LDSHARED-"ld -b"}
+ LDSHARED=${LDSHARED-"ld"}
+ LDSHAREDFLAGS="-b"
case `(uname -m || echo unknown) 2>/dev/null` in
ia64)
shared_ext='.so'
AIX*) # Courtesy of dbakker@arrayasolutions.com
SFLAGS=${CFLAGS-"-O -qmaxmem=8192"}
CFLAGS=${CFLAGS-"-O -qmaxmem=8192"}
- LDSHARED=${LDSHARED-"xlc -G"} ;;
+ LDSHARED=${LDSHARED-"xlc"}
+ LDSHAREDFLAGS="-G" ;;
# send working options for other systems to zlib@gzip.org
*) SFLAGS=${CFLAGS-"-O"}
CFLAGS=${CFLAGS-"-O"}
- LDSHARED=${LDSHARED-"cc -shared"} ;;
+ LDSHARED=${LDSHARED-"cc"}
+ LDSHAREDFLAGS="-shared" ;;
esac
fi
echo Checking for shared library support... | tee -a configure.log
# we must test in two steps (cc then ld), required at least on SunOS 4.x
if try $CC -w -c $SFLAGS $test.c &&
- try $LDSHARED $SFLAGS -o $test$shared_ext $test.o; then
+ try $LDSHARED $LDSHAREDFLAGS $LDFLAGS -o $test$shared_ext $test.o; then
echo Building shared library $SHAREDTARGET with $CC. | tee -a configure.log
elif test -z "$old_cc" -a -z "$old_cflags"; then
echo No shared library support. | tee -a configure.log
fi
if test $shared -eq 0; then
LDSHARED="$CC"
+ LDSHAREDFLAGS=""
ALL="static"
SHAREDLIB=""
SHAREDLIBV=""
echo LDCONFIG = $LDCONFIG >> configure.log
echo LDFLAGS = $LDFLAGS >> configure.log
echo LDSHARED = $LDSHARED >> configure.log
+echo LDSHAREDFLAGS = $LDSHAREDFLAGS >> configure.log
echo LDSHAREDLIBC = $LDSHAREDLIBC >> configure.log
echo DEFFILE = $DEFFILE >> configure.log
echo RC = $RC >> configure.log
/^SFLAGS *=/s#=.*#=$SFLAGS#
/^LDFLAGS *=/s#=.*#=$LDFLAGS#
/^LDSHARED *=/s#=.*#=$LDSHARED#
+/^LDSHAREDFLAGS *=/s#=.*#=$LDSHAREDFLAGS#
/^STATICLIB *=/s#=.*#=$STATICLIB#
/^SHAREDLIB *=/s#=.*#=$SHAREDLIB#
/^SHAREDLIBV *=/s#=.*#=$SHAREDLIBV#
/^CC *=/s#=.*#=$CC#
/^CFLAGS *=/s#=.*#=$CFLAGS#
/^LDSHARED *=/s#=.*#=$LDSHARED#
+/^LDSHAREDFLAGS *=/s#=.*#=$LDSHAREDFLAGS#
/^STATICLIB *=/s#=.*#=$STATICLIB#
/^SHAREDLIB *=/s#=.*#=$SHAREDLIB#
/^SHAREDLIBV *=/s#=.*#=$SHAREDLIBV#