]> git.ipfire.org Git - thirdparty/zlib-ng.git/commitdiff
Integrate win32/Makefile.gcc into Makefile.in 28/head
authorMika Lindqvist <postmaster@raasu.org>
Tue, 12 May 2015 10:02:33 +0000 (13:02 +0300)
committerMika Lindqvist <postmaster@raasu.org>
Wed, 13 May 2015 14:53:06 +0000 (17:53 +0300)
Makefile.in
configure
gzguts.h
win32/Makefile.gcc [deleted file]
win32/Makefile.msc
win32/zlib.def
win32/zlibcompat.def [new file with mode: 0644]

index 8c92fdadb715c6db04a48138f3076570d630f562..de2775466be5e8c8c82ee5f148303e3c1920314c 100644 (file)
@@ -30,16 +30,17 @@ SHAREDLIB=libz.so
 SHAREDLIBV=libz.so.1.2.8
 SHAREDLIBM=libz.so.1
 IMPORTLIB=
-ifneq ($(IMPORTLIB),)
-       SHAREDTARGET=$(SHAREDLIB)
-else
-       SHAREDTARGET=$(SHAREDLIBV)
-endif
+SHAREDTARGET=libz.so.1.2.8
 
-LIBS=$(STATICLIB) $(SHAREDLIBV)
+LIBS=$(STATICLIB) $(SHAREDTARGET)
 
 AR=ar
 ARFLAGS=rc
+DEFFILE=
+RC=
+RCFLAGS=
+RCOBJS=
+STRIP=
 RANLIB=ranlib
 LDCONFIG=ldconfig
 LDSHAREDLIBC=-lc
@@ -135,8 +136,11 @@ test64: all64
 infcover.o: $(SRCDIR)/test/infcover.c $(SRCDIR)/zlib.h zconf.h
        $(CC) $(CFLAGS) $(INCLUDES) -c -o $@ $(SRCDIR)/test/infcover.c
 
-infcover: infcover.o libz.a
-       $(CC) $(CFLAGS) -o $@ infcover.o libz.a $(BSDLIBS)
+infcover: infcover.o $(STATICLIB)
+       $(CC) $(CFLAGS) -o $@ infcover.o $(STATICLIB) $(BSDLIBS)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
 
 cover: infcover
        rm -f *.gcda
@@ -159,101 +163,117 @@ example64.o: $(SRCDIR)/test/example.c $(SRCDIR)/zlib.h zconf.h
 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
 
+zlibrc.o: win32/zlib1.rc
+       $(RC) $(RCFLAGS) -o $@ win32/zlib1.rc
+
 .SUFFIXES: .lo
 
 %.o: $(SRCDIR)/%.c
        $(CC) $(INCLUDES) $(CFLAGS) -c -o $@ $<
 
 %.lo: $(SRCDIR)/%.c
-       -@mkdir objs 2>/dev/null || test -d objs
-       $(CC) $(INCLUDES) $(SFLAGS) -DPIC -c -o objs/$*.o $<
-       -@mv objs/$*.o $@
+       $(CC) $(INCLUDES) $(SFLAGS) -DPIC -c -o $@ $<
 
-placebo $(SHAREDTARGET): $(PIC_OBJS) $(STATICLIB)
-       $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC) $(LDFLAGS)
-ifeq ($(IMPORTLIB),)
+$(SHAREDTARGET): $(PIC_OBJS) $(DEFFILE) $(RCOBJS)
+ifneq ($(SHAREDTARGET),)
+       $(LDSHARED) $(SFLAGS) -o $@ $(DEFFILE) $(PIC_OBJS) $(RCOBJS) $(LDSHAREDLIBC) $(LDFLAGS)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
+ifneq ($(SHAREDLIB),$(SHAREDTARGET))
        rm -f $(SHAREDLIB) $(SHAREDLIBM)
        ln -s $@ $(SHAREDLIB)
        ln -s $@ $(SHAREDLIBM)
 endif
-       -@rmdir objs
+endif
 
 example$(EXE): example.o $(STATICLIB)
        $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
 
 minigzip$(EXE): minigzip.o $(STATICLIB)
        $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
 
 examplesh$(EXE): example.o $(SHAREDTARGET)
        $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDTARGET)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
 
 minigzipsh$(EXE): minigzip.o $(SHAREDTARGET)
        $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDTARGET)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
 
 example64$(EXE): example64.o $(STATICLIB)
        $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
 
 minigzip64$(EXE): minigzip64.o $(STATICLIB)
        $(CC) $(CFLAGS) -o $@ minigzip64.o $(TEST_LDFLAGS)
+ifneq ($(STRIP),)
+       $(STRIP) $@
+endif
 
-install-libs: $(LIBS)
-       -@if [ ! -d $(DESTDIR)$(exec_prefix)  ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi
-       -@if [ ! -d $(DESTDIR)$(libdir)       ]; then mkdir -p $(DESTDIR)$(libdir); fi
-       -@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi
-       -@if [ ! -d $(DESTDIR)$(man3dir)      ]; then mkdir -p $(DESTDIR)$(man3dir); fi
-       -@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi
-       cp $(STATICLIB) $(DESTDIR)$(libdir)
-       chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB)
-       -@($(RANLIB) $(DESTDIR)$(libdir)/$(STATICLIB) || true) >/dev/null 2>&1
+install-shared: $(SHAREDTARGET)
 ifneq ($(SHAREDTARGET),)
-ifneq ($(IMPORTLIB),)
-       cp $(IMPORTLIB) $(DESTDIR)$(sharedlibdir)
-       echo "cp $(IMPORTLIB) $(DESTDIR)$(sharedlibdir)"
-       chmod 644 $(DESTDIR)$(sharedlibdir)/$(IMPORTLIB)
-       -@if [ ! -d $(DESTDIR)$(bindir) ]; then mkdir -p $(DESTDIR)$(bindir); fi
-       cp $(SHAREDTARGET) $(DESTDIR)$(bindir)
-       echo "cp $(SHAREDTARGET) $(DESTDIR)$(bindir)"
-       chmod 755 $(DESTDIR)$(bindir)/$(SHAREDTARGET)
-       echo "chmod 755 $(DESTDIR)$(bindir)/$(SHAREDTARGET)"
-else
+       -@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi
        cp $(SHAREDTARGET) $(DESTDIR)$(sharedlibdir)
-       echo "cp $(SHAREDTARGET) $(DESTDIR)$(sharedlibdir)"
        chmod 644 $(DESTDIR)$(sharedlibdir)/$(SHAREDTARGET)
-       echo "chmod 644 $(DESTDIR)$(sharedlibdir)/$(SHAREDTARGET)"
+ifneq ($(SHAREDLIB),$(SHAREDTARGET))
        rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM)
        ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB)
        ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM)
        ($(LDCONFIG) || true)  >/dev/null 2>&1
+# ldconfig is for Linux
 endif
+ifneq ($(IMPORTLIB),)
+       cp $(IMPORTLIB) $(DESTDIR)$(sharedlibdir)
+       chmod 644 $(DESTDIR)$(sharedlibdir)/$(IMPORTLIB)
 endif
+endif
+
+install-static: $(STATICLIB)
+       -@if [ ! -d $(DESTDIR)$(libdir)       ]; then mkdir -p $(DESTDIR)$(libdir); fi
+       cp $(STATICLIB) $(DESTDIR)$(libdir)
+       chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB)
+       -@($(RANLIB) $(DESTDIR)$(libdir)/$(STATICLIB) || true) >/dev/null 2>&1
+# The ranlib in install-static is needed on NeXTSTEP which checks file times
+
+install-libs: install-shared install-static
+       -@if [ ! -d $(DESTDIR)$(man3dir)      ]; then mkdir -p $(DESTDIR)$(man3dir); fi
+       -@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi
        cp $(SRCDIR)/zlib.3 $(DESTDIR)$(man3dir)
        chmod 644 $(DESTDIR)$(man3dir)/zlib.3
        cp zlib.pc $(DESTDIR)$(pkgconfigdir)
        chmod 644 $(DESTDIR)$(pkgconfigdir)/zlib.pc
-# The ranlib in install is needed on NeXTSTEP which checks file times
-# ldconfig is for Linux
 
 install: install-libs
        -@if [ ! -d $(DESTDIR)$(includedir)   ]; then mkdir -p $(DESTDIR)$(includedir); fi
        cp $(SRCDIR)/zlib.h zconf.h $(DESTDIR)$(includedir)
        chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h
 
-uninstall:
-       cd $(DESTDIR)$(includedir) && rm -f zlib.h zconf.h
-       cd $(DESTDIR)$(libdir) && rm -f $(STATICLIB); \
-       if test -n "$(SHAREDLIBV)" -a -f $(SHAREDLIBV); then \
-         rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM); \
-       fi
+uninstall-static:
+       cd $(DESTDIR)$(libdir) && rm -f $(STATICLIB)
+
+uninstall-shared:
+ifneq ($(SHAREDLIB),)
+       cd $(DESTDIR)$(sharedlibdir) && rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM)
+endif
 ifneq ($(IMPORTLIB),)
-       cd $(DESTDIR)$(sharedlibdir); \
-       if test -n "$(SHAREDLIB)" -a -f $(IMPORTLIB); then \
-         rm -f $(IMPORTLIB); \
-       fi
-       cd $(DESTDIR)$(bindir); \
-       if test -n "$(SHAREDLIB)" -a -f $(SHAREDLIB); then \
-         rm -f $(SHAREDLIB); \
-       fi
+       cd $(DESTDIR)$(sharedlibdir) && rm -f $(IMPORTLIB)
 endif
+
+uninstall: uninstall-static uninstall-shared
+       cd $(DESTDIR)$(includedir) && rm -f zlib.h zconf.h
        cd $(DESTDIR)$(man3dir) && rm -f zlib.3
        cd $(DESTDIR)$(pkgconfigdir) && rm -f zlib.pc
 
@@ -269,8 +289,8 @@ clean:
           example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \
           example64$(EXE) minigzip64$(EXE) \
           infcover \
-          $(STATICLIB) $(IMPORTLIB) $(SHAREDTARGET) $(SHAREDLIB) $(SHAREDLIBV) $(SHAREDLIBM) \
-          libz.* foo.gz so_locations \
+          $(STATICLIB) $(IMPORTLIB) $(SHAREDLIB) $(SHAREDLIBV) $(SHAREDLIBM) \
+          foo.gz so_locations \
           _match.s maketree
        rm -rf objs
        rm -f *.gcda *.gcno *.gcov
index 93210bcdbb7f9c4dc911a797177db0ae6e450ac3..e641745383670df616ec58fcf46ce3b644128851 100755 (executable)
--- a/configure
+++ b/configure
@@ -84,6 +84,11 @@ fi
 # set defaults before processing command line options
 LDCONFIG=${LDCONFIG-"ldconfig"}
 LDSHAREDLIBC="${LDSHAREDLIBC--lc}"
+DEFFILE=
+RC=
+RCFLAGS=
+RCOBJS=
+STRIP=
 ARCHS=
 prefix=${prefix-/usr/local}
 exec_prefix=${exec_prefix-'${prefix}'}
@@ -105,6 +110,8 @@ old_cc="$CC"
 old_cflags="$CFLAGS"
 OBJC='$(OBJZ)'
 PIC_OBJC='$(PIC_OBJZ)'
+INSTALLTARGETS="install-shared install-static"
+UNINSTALLTARGETS="uninstall-shared uninstall-static"
 
 # leave this script, optionally in a bad way
 leave()
@@ -205,38 +212,67 @@ if test "$gcc" -eq 1 && ($cc -c $test.c) >> configure.log 2>&1; then
   if test -z "$uname"; then
     uname=`(uname -s || echo unknown) 2>/dev/null`
   fi
-  # LFS
-  CFLAGS="${CFLAGS} -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200809L"
   case "$uname" in
   Linux* | linux* | GNU | GNU/* | solaris*)
         LDSHARED=${LDSHARED-"$cc -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"}
         LDCONFIG="ldconfig -m" ;;
-  CYGWIN* | Cygwin* | cygwin* | OS/2*)
+  CYGWIN* | Cygwin* | cygwin*)
+        ARFLAGS="rcs"
+        CFLAGS="${CFLAGS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
         SFLAGS="${CFLAGS}"
         shared_ext='.dll'
+        sharedlibdir='${bindir}'
         SHAREDLIB=cygz$shared_ext
+        SHAREDLIBM=''
+        SHAREDLIBV=''
+        SHAREDTARGET=$SHAREDLIB
         IMPORTLIB='libz.dll.a'
-        LDSHARED=${LDSHARED-"$cc -shared -Wl,--enable-auto-image-base -Wl,--out-implib=${IMPORTLIB}"}
-        LDSHAREDLIBC=''
+        LDSHARED=${LDSHARED-"$cc -shared -Wl,--out-implib,${IMPORTLIB},--version-script,${SRCDIR}/zlib.map"}
+        LDSHAREDLIBC=""
+        DEFFILE='win32/zlib.def'
+        RC='windres'
+        RCFLAGS='--define GCC_WINDRES'
+        RCOBJS='zlibrc.o'
+        STRIP='strip'
         EXE='.exe' ;;
   MSYS* | msys*)
+        ARFLAGS="rcs"
         SFLAGS="${CFLAGS}"
         shared_ext='.dll'
+        sharedlibdir='${bindir}'
         SHAREDLIB=msys-z$shared_ext
+        SHAREDLIBM=''
+        SHAREDLIBV=''
+        SHAREDTARGET=$SHAREDLIB
         IMPORTLIB='libz.dll.a'
-        LDSHARED=${LDSHARED-"$cc -shared -Wl,--enable-auto-image-base -Wl,--out-implib=${IMPORTLIB}"}
-        LDSHAREDLIBC=''
+        LDSHARED=${LDSHARED-"$cc -shared -Wl,--out-implib,${IMPORTLIB}"}
+        LDSHAREDLIBC=""
+        DEFFILE='win32/zlib.def'
+        RC='windres'
+        RCFLAGS='--define GCC_WINDRES'
+        RCOBJS='zlibrc.o'
+        STRIP='strip'
         EXE='.exe' ;;
   MINGW* | mingw*)
-        CFLAGS="${CFLAGS} -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE=1"
+        ARFLAGS="rcs"
+        CFLAGS="${CFLAGS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_POSIX_C_SOURCE=200809L -D_GNU_SOURCE=1"
         SFLAGS="${CFLAGS}"
         shared_ext='.dll'
+        sharedlibdir='${bindir}'
         SHAREDLIB=libz-$VER1$shared_ext
+        SHAREDLIBM=''
+        SHAREDLIBV=''
+        SHAREDTARGET=$SHAREDLIB
         IMPORTLIB='libz.dll.a'
-        LDSHARED=${LDSHARED-"$cc -shared -Wl,--enable-auto-image-base -Wl,--out-implib=${IMPORTLIB}"}
-        LDSHAREDLIBC=''
+        LDSHARED=${LDSHARED-"$cc -shared -Wl,--out-implib,${IMPORTLIB},--version-script,${SRCDIR}/zlib.map"}
+        LDSHAREDLIBC=""
+        DEFFILE='win32/zlib.def'
+        RC='windres'
+        RCFLAGS='--define GCC_WINDRES'
+        RCOBJS='zlibrc.o'
+        STRIP='strip'
         EXE='.exe' ;;
   QNX*)  # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4
          # (alain.bonnefoy@icbt.com)
@@ -256,6 +292,7 @@ if test "$gcc" -eq 1 && ($cc -c $test.c) >> configure.log 2>&1; then
              SHAREDLIB=libz$shared_ext
              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"}
              if libtool -V 2>&1 | grep Apple > /dev/null; then
                  AR="libtool"
@@ -301,6 +338,7 @@ fi
 SHAREDLIB=${SHAREDLIB-"libz$shared_ext"}
 SHAREDLIBV=${SHAREDLIBV-"libz$shared_ext.$VER"}
 SHAREDLIBM=${SHAREDLIBM-"libz$shared_ext.$VER1"}
+SHAREDTARGET=${SHAREDTARGET-"libz$shared_ext.$VER"}
 
 echo >> configure.log
 
@@ -364,7 +402,7 @@ if test $shared -eq 1; then
   # 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
-    echo Building shared library $SHAREDLIBV with $CC. | tee -a configure.log
+    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
     shared=0;
@@ -380,6 +418,9 @@ if test $shared -eq 0; then
   SHAREDLIB=""
   SHAREDLIBV=""
   SHAREDLIBM=""
+  SHAREDTARGET=""
+  INSTALLTARGETS=install-static
+  UNINSTALLTARGETS=uninstall-static
   echo Building static library $STATICLIB version $VER with $CC. | tee -a configure.log
 else
   ALL="static shared"
@@ -477,6 +518,10 @@ if test $compat -eq 1; then
   SFLAGS="${SFLAGS} -DZLIB_COMPAT -DWITH_GZFILEOP"
   OBJC="${OBJC} \$(OBJG)"
   PIC_OBJC="${PIC_OBJC} \$(PIC_OBJG)"
+  case "$uname" in
+  CYGWIN* | Cygwin* | cygwin* | MSYS* | msys* | MINGW* | mingw*)
+    DEFFILE="win32/zlibcompat.def" ;;
+  esac
 fi
 
 # if code coverage testing was requested, use older gcc if defined, e.g. "gcc-4.2" on Mac OS X
@@ -727,6 +772,11 @@ echo LDCONFIG = $LDCONFIG >> configure.log
 echo LDFLAGS = $LDFLAGS >> configure.log
 echo LDSHARED = $LDSHARED >> configure.log
 echo LDSHAREDLIBC = $LDSHAREDLIBC >> configure.log
+echo DEFFILE = $DEFFILE >> configure.log
+echo RC = $RC >> configure.log
+echo RCFLAGS = $RCFLAGS >> configure.log
+echo RCOBJS = $RCOBJS >> configure.log
+echo STRIP = $STRIP >> configure.log
 echo BSDLIBS = $BSDLIBS >> configure.log
 echo OBJC = $OBJC >> configure.log
 echo PIC_OBJC = $PIC_OBJC >> configure.log
@@ -735,7 +785,10 @@ echo SFLAGS = $SFLAGS >> configure.log
 echo SHAREDLIB = $SHAREDLIB >> configure.log
 echo SHAREDLIBM = $SHAREDLIBM >> configure.log
 echo SHAREDLIBV = $SHAREDLIBV >> configure.log
+echo SHAREDTARGET = $SHAREDTARGET >> configure.log
 echo IMPORTLIB = $IMPORTLIB >> configure.log
+echo INSTALLTARGETS = $INSTALLTARGETS >> configure.log
+echo UNINSTALLTARGETS = $UNINSTALLTARGETS >> configure.log
 echo SRCDIR = $SRCDIR >> configure.log
 echo BUILDDIR = $BUILDDIR >> configure.log
 echo STATICLIB = $STATICLIB >> configure.log
@@ -743,6 +796,7 @@ echo TEST = $TEST >> configure.log
 echo VER = $VER >> configure.log
 echo exec_prefix = $exec_prefix >> configure.log
 echo includedir = $includedir >> configure.log
+echo bindir = $bindir >> configure.log
 echo libdir = $libdir >> configure.log
 echo mandir = $mandir >> configure.log
 echo prefix = $prefix >> configure.log
@@ -767,20 +821,26 @@ sed < $SRCDIR/Makefile.in "
 /^SHAREDLIB *=/s#=.*#=$SHAREDLIB#
 /^SHAREDLIBV *=/s#=.*#=$SHAREDLIBV#
 /^SHAREDLIBM *=/s#=.*#=$SHAREDLIBM#
+/^SHAREDTARGET *=/s#=.*#=$SHAREDTARGET#
 /^IMPORTLIB *=/s#=.*#=$IMPORTLIB#
 /^AR *=/s#=.*#=$AR#
 /^ARFLAGS *=/s#=.*#=$ARFLAGS#
 /^RANLIB *=/s#=.*#=$RANLIB#
 /^LDCONFIG *=/s#=.*#=$LDCONFIG#
 /^LDSHAREDLIBC *=/s#=.*#=$LDSHAREDLIBC#
+/^DEFFILE *=/s#=.*#=$DEFFILE#
+/^RC *=/s#=.*#=$RC#
+/^RCFLAGS *=/s#=.*#=$RCFLAGS#
+/^RCOBJS *=/s#=.*#=$RCOBJS#
+/^STRIP *=/s#=.*#=$STRIP#
 /^EXE *=/s#=.*#=$EXE#
-/^prefix *=/s#=.*#=$prefix#
-/^exec_prefix *=/s#=.*#=$exec_prefix#
-/^bindir *=/s#=.*#=$bindir#
-/^libdir *=/s#=.*#=$libdir#
-/^sharedlibdir *=/s#=.*#=$sharedlibdir#
-/^includedir *=/s#=.*#=$includedir#
-/^mandir *=/s#=.*#=$mandir#
+/^prefix *=/s#=.*#= $prefix#
+/^exec_prefix *=/s#=.*#= $exec_prefix#
+/^bindir *=/s#=.*#= $bindir#
+/^libdir *=/s#=.*#= $libdir#
+/^sharedlibdir *=/s#=.*#= $sharedlibdir#
+/^includedir *=/s#=.*#= $includedir#
+/^mandir *=/s#=.*#= $mandir#
 /^SRCDIR *=/s#=.*#=$SRCDIR#
 /^BSDLIBS *=/s#=.*#=$BSDLIBS#
 /^INCLUDES *=/s#=.*#=$INCLUDES#
@@ -788,6 +848,8 @@ sed < $SRCDIR/Makefile.in "
 /^PIC_OBJC *=/s#=.*#= $PIC_OBJC#
 /^all: */s#:.*#: $ALL#
 /^test: */s#:.*#: $TEST#
+/^install-libs: */s#:.*#: $INSTALLTARGETS#
+/^uninstall-libs: */s#:.*#: $UNINSTALLTARGETS#
 /^ARCHDIR *=/s#=.*#=$ARCHDIR#
 /^ARCH_STATIC_OBJS *=/s#=.*#=$ARCH_STATIC_OBJS#
 /^ARCH_SHARED_OBJS *=/s#=.*#=$ARCH_SHARED_OBJS#
@@ -797,7 +859,7 @@ sed < $SRCDIR/Makefile.in "
 mkdir -p $ARCHDIR
 
 ARCHINCLUDES="-I$SRCDIR/$ARCHDIR -I$SRCDIR"
-if [ "$SRCDIR" != "$BUILDDIR" ]; then ARCHINCLUDES="${ARCHINCLUDES} -I$BUILDDIR"; fi
+if [ "$SRCDIR" != "$BUILDDIR" ]; then ARCHINCLUDES="-I$BUILDDIR ${ARCHINCLUDES}"; fi
 
 sed < $SRCDIR/$ARCHDIR/Makefile.in "
 /^CC *=/s#=.*#=$CC#
index dbec9d9376d408d5a38d68b97fe8a5ed6d29ea00..2450775d443ff23594b715c3c0db8281bd509778 100644 (file)
--- a/gzguts.h
+++ b/gzguts.h
@@ -75,7 +75,7 @@
 #endif
 
 /* provide prototypes for these when building zlib without LFS */
-#if !defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0
+#if (!defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0) && defined(WITH_GZFILEOP)
     ZEXTERN gzFile ZEXPORT gzopen64 (const char *, const char *);
     ZEXTERN z_off64_t ZEXPORT gzseek64 (gzFile, z_off64_t, int);
     ZEXTERN z_off64_t ZEXPORT gztell64 (gzFile);
diff --git a/win32/Makefile.gcc b/win32/Makefile.gcc
deleted file mode 100644 (file)
index 86dbf25..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-# Makefile for zlib, derived from Makefile.dj2.
-# Modified for mingw32 by C. Spieler, 6/16/98.
-# Updated for zlib 1.2.x by Christian Spieler and Cosmin Truta, Mar-2003.
-# Updated for zlib-ng by Mika Lindqvist
-# Last updated: May 2015.
-# Tested under Cygwin and MinGW.
-
-# Copyright (C) 1995-2003 Jean-loup Gailly.
-# For conditions of distribution and use, see copyright notice in zlib.h
-
-# To compile, or to compile and test, type from the top level zlib directory:
-#
-#   make -fwin32/Makefile.gcc;  make test testdll -fwin32/Makefile.gcc
-#
-# To install libz.a, zconf.h and zlib.h in the system directories, type:
-#
-#   make install -fwin32/Makefile.gcc
-#
-# BINARY_PATH, INCLUDE_PATH and LIBRARY_PATH must be set.
-#
-# To install the shared lib, append SHARED_MODE=1 to the make command :
-#
-#   make install -fwin32/Makefile.gcc SHARED_MODE=1
-
-# Note:
-# If the platform is *not* MinGW (e.g. it is Cygwin or UWIN),
-# the DLL name should be changed from "zlib1.dll".
-
-STATICLIB = libz.a
-SHAREDLIB = zlib1.dll
-IMPLIB    = libz.dll.a
-
-#
-# Set to 1 if shared object needs to be installed
-#
-SHARED_MODE=0
-
-#LOC = -DDEBUG -g
-
-PREFIX =
-CC = $(PREFIX)gcc
-CFLAGS = $(LOC) -O3 -Wall
-
-LD = $(CC)
-LDFLAGS = $(LOC)
-
-AR = $(PREFIX)ar
-ARFLAGS = rcs
-
-RC = $(PREFIX)windres
-RCFLAGS = --define GCC_WINDRES
-
-STRIP = $(PREFIX)strip
-
-CP = cp -fp
-# If GNU install is available, replace $(CP) with install.
-INSTALL = $(CP)
-RM = rm -f
-
-prefix ?= /usr/local
-exec_prefix = $(prefix)
-
-OBJS = adler32.o compress.o crc32.o deflate.o gzclose.o gzlib.o gzread.o \
-       gzwrite.o infback.o inffast.o inflate.o inftrees.o match.o trees.o uncompr.o zutil.o
-
-all: $(STATICLIB) $(SHAREDLIB) $(IMPLIB) example.exe minigzip.exe example_d.exe minigzip_d.exe
-
-test: example.exe minigzip.exe
-       ./example
-       echo hello world | ./minigzip | ./minigzip -d
-
-testdll: example_d.exe minigzip_d.exe
-       ./example_d
-       echo hello world | ./minigzip_d | ./minigzip_d -d
-
-.c.o:
-       $(CC) $(CFLAGS) -c -o $@ $<
-
-$(STATICLIB): $(OBJS)
-       $(AR) $(ARFLAGS) $@ $(OBJS)
-
-$(IMPLIB): $(SHAREDLIB)
-
-$(SHAREDLIB): win32/zlib.def $(OBJS) zlibrc.o
-       $(CC) -shared -Wl,--out-implib,$(IMPLIB) $(LDFLAGS) \
-       -o $@ win32/zlib.def $(OBJS) zlibrc.o
-       $(STRIP) $@
-
-example.exe: example.o $(STATICLIB)
-       $(LD) $(LDFLAGS) -o $@ example.o $(STATICLIB)
-       $(STRIP) $@
-
-minigzip.exe: minigzip.o $(STATICLIB)
-       $(LD) $(LDFLAGS) -o $@ minigzip.o $(STATICLIB)
-       $(STRIP) $@
-
-example_d.exe: example.o $(IMPLIB)
-       $(LD) $(LDFLAGS) -o $@ example.o $(IMPLIB)
-       $(STRIP) $@
-
-minigzip_d.exe: minigzip.o $(IMPLIB)
-       $(LD) $(LDFLAGS) -o $@ minigzip.o $(IMPLIB)
-       $(STRIP) $@
-
-example.o: test/example.c zlib.h zconf.h
-       $(CC) $(CFLAGS) -I. -c -o $@ test/example.c
-
-minigzip.o: test/minigzip.c zlib.h zconf.h
-       $(CC) $(CFLAGS) -I. -c -o $@ test/minigzip.c
-
-zlibrc.o: win32/zlib1.rc
-       $(RC) $(RCFLAGS) -o $@ win32/zlib1.rc
-
-.PHONY: install uninstall clean
-
-install: zlib.h zconf.h $(STATICLIB) $(IMPLIB)
-       @if test -z "$(DESTDIR)$(INCLUDE_PATH)" -o -z "$(DESTDIR)$(LIBRARY_PATH)" -o -z "$(DESTDIR)$(BINARY_PATH)"; then \
-               echo INCLUDE_PATH, LIBRARY_PATH, and BINARY_PATH must be specified; \
-               exit 1; \
-       fi
-       -@mkdir -p '$(DESTDIR)$(INCLUDE_PATH)'
-       -@mkdir -p '$(DESTDIR)$(LIBRARY_PATH)' '$(DESTDIR)$(LIBRARY_PATH)'/pkgconfig
-       -if [ "$(SHARED_MODE)" = "1" ]; then \
-               mkdir -p '$(DESTDIR)$(BINARY_PATH)'; \
-               $(INSTALL) $(SHAREDLIB) '$(DESTDIR)$(BINARY_PATH)'; \
-               $(INSTALL) $(IMPLIB) '$(DESTDIR)$(LIBRARY_PATH)'; \
-       fi
-       -$(INSTALL) zlib.h '$(DESTDIR)$(INCLUDE_PATH)'
-       -$(INSTALL) zconf.h '$(DESTDIR)$(INCLUDE_PATH)'
-       -$(INSTALL) $(STATICLIB) '$(DESTDIR)$(LIBRARY_PATH)'
-       sed \
-               -e 's|@prefix@|${prefix}|g' \
-               -e 's|@exec_prefix@|${exec_prefix}|g' \
-               -e 's|@libdir@|$(LIBRARY_PATH)|g' \
-               -e 's|@sharedlibdir@|$(LIBRARY_PATH)|g' \
-               -e 's|@includedir@|$(INCLUDE_PATH)|g' \
-               -e 's|@VERSION@|'`sed -n -e '/VERSION "/s/.*"\(.*\)".*/\1/p' zlib.h`'|g' \
-               zlib.pc.in > '$(DESTDIR)$(LIBRARY_PATH)'/pkgconfig/zlib.pc
-
-uninstall:
-       -if [ "$(SHARED_MODE)" = "1" ]; then \
-               $(RM) '$(DESTDIR)$(BINARY_PATH)'/$(SHAREDLIB); \
-               $(RM) '$(DESTDIR)$(LIBRARY_PATH)'/$(IMPLIB); \
-       fi
-       -$(RM) '$(DESTDIR)$(INCLUDE_PATH)'/zlib.h
-       -$(RM) '$(DESTDIR)$(INCLUDE_PATH)'/zconf.h
-       -$(RM) '$(DESTDIR)$(LIBRARY_PATH)'/$(STATICLIB)
-
-clean:
-       -$(RM) $(STATICLIB)
-       -$(RM) $(SHAREDLIB)
-       -$(RM) $(IMPLIB)
-       -$(RM) *.o
-       -$(RM) *.exe
-       -$(RM) foo.gz
-
-distclean: clean
-       @printf 'all:\n\t-@echo "Please use ./configure first.  Thank you."\n' > Makefile
-       @printf '\ndistclean:\n\tmake -f Makefile.in distclean\n' >> Makefile
-       @touch -r Makefile.in Makefile
-
-adler32.o: zlib.h zconf.h
-compress.o: zlib.h zconf.h
-crc32.o: crc32.h zlib.h zconf.h
-deflate.o: deflate.h zutil.h zlib.h zconf.h
-gzclose.o: zlib.h zconf.h gzguts.h
-gzlib.o: zlib.h zconf.h gzguts.h
-gzread.o: zlib.h zconf.h gzguts.h
-gzwrite.o: zlib.h zconf.h gzguts.h
-inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
-inflate.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
-infback.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h
-inftrees.o: zutil.h zlib.h zconf.h inftrees.h
-trees.o: deflate.h zutil.h zlib.h zconf.h trees.h
-uncompr.o: zlib.h zconf.h
-zutil.o: zutil.h zlib.h zconf.h
index 84db69b5c9e2e43f1dd925dba60a3c2c2c08d30d..a1100024cd5d56ca2cd3713e102cc90dcb542423 100644 (file)
@@ -27,10 +27,16 @@ WFLAGS  = -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
 LDFLAGS = -nologo -debug -incremental:no -opt:ref -manifest
 ARFLAGS = -nologo
 RCFLAGS = /dWIN32 /r
+DEFFILE = zlib.def
+WITH_GZFILEOP =
 
-OBJS = adler32.obj compress.obj crc32.obj deflate.obj gzclose.obj gzlib.obj gzread.obj \
-       gzwrite.obj infback.obj inflate.obj inftrees.obj inffast.obj match.obj trees.obj uncompr.obj zutil.obj
-
+OBJS = adler32.obj compress.obj crc32.obj deflate.obj \
+       infback.obj inflate.obj inftrees.obj inffast.obj match.obj trees.obj uncompr.obj zutil.obj
+!if "$(WITH_GZFILEOP)" != ""
+WFLAGS = $(WFLAGS) -DWITH_GZFILEOP
+OBJS = $(OBJS) gzclose.obj gzlib.obj gzread.obj gzwrite.obj
+DEFFILE = zlibcompat.def
+!endif
 
 # targets
 all: $(STATICLIB) $(SHAREDLIB) $(IMPLIB) \
@@ -42,7 +48,7 @@ $(STATICLIB): $(OBJS)
 $(IMPLIB): $(SHAREDLIB)
 
 $(SHAREDLIB): $(TOP)/win32/zlib.def $(OBJS) zlib1.res
-       $(LD) $(LDFLAGS) -def:$(TOP)/win32/zlib.def -dll -implib:$(IMPLIB) \
+       $(LD) $(LDFLAGS) -def:$(TOP)/win32/$(DEFFILE) -dll -implib:$(IMPLIB) \
          -out:$@ -base:0x5A4C0000 $(OBJS) zlib1.res
        if exist $@.manifest \
          mt -nologo -manifest $@.manifest -outputresource:$@;2
index face655183a63bd30e4c226272bc0273119f1611..1d0c8947a5b0b46a3e53ad205278bb6d4913a694 100644 (file)
@@ -33,36 +33,7 @@ EXPORTS
     compress2
     compressBound
     uncompress
-    gzopen
-    gzdopen
-    gzbuffer
-    gzsetparams
-    gzread
-    gzwrite
-    gzprintf
-    gzvprintf
-    gzputs
-    gzgets
-    gzputc
-    gzgetc
-    gzungetc
-    gzflush
-    gzseek
-    gzrewind
-    gztell
-    gzoffset
-    gzeof
-    gzdirect
-    gzclose
-    gzclose_r
-    gzclose_w
-    gzerror
-    gzclearerr
 ; large file functions
-    gzopen64
-    gzseek64
-    gztell64
-    gzoffset64
     adler32_combine64
     crc32_combine64
 ; checksum functions
@@ -76,11 +47,9 @@ EXPORTS
     inflateInit_
     inflateInit2_
     inflateBackInit_
-    gzgetc_
     zError
     inflateSyncPoint
     get_crc_table
     inflateUndermine
     inflateResetKeep
     deflateResetKeep
-    gzopen_w
diff --git a/win32/zlibcompat.def b/win32/zlibcompat.def
new file mode 100644 (file)
index 0000000..face655
--- /dev/null
@@ -0,0 +1,86 @@
+; zlib data compression library
+EXPORTS
+; basic functions
+    zlibVersion
+    deflate
+    deflateEnd
+    inflate
+    inflateEnd
+; advanced functions
+    deflateSetDictionary
+    deflateCopy
+    deflateReset
+    deflateParams
+    deflateTune
+    deflateBound
+    deflatePending
+    deflatePrime
+    deflateSetHeader
+    inflateSetDictionary
+    inflateGetDictionary
+    inflateSync
+    inflateCopy
+    inflateReset
+    inflateReset2
+    inflatePrime
+    inflateMark
+    inflateGetHeader
+    inflateBack
+    inflateBackEnd
+    zlibCompileFlags
+; utility functions
+    compress
+    compress2
+    compressBound
+    uncompress
+    gzopen
+    gzdopen
+    gzbuffer
+    gzsetparams
+    gzread
+    gzwrite
+    gzprintf
+    gzvprintf
+    gzputs
+    gzgets
+    gzputc
+    gzgetc
+    gzungetc
+    gzflush
+    gzseek
+    gzrewind
+    gztell
+    gzoffset
+    gzeof
+    gzdirect
+    gzclose
+    gzclose_r
+    gzclose_w
+    gzerror
+    gzclearerr
+; large file functions
+    gzopen64
+    gzseek64
+    gztell64
+    gzoffset64
+    adler32_combine64
+    crc32_combine64
+; checksum functions
+    adler32
+    crc32
+    adler32_combine
+    crc32_combine
+; various hacks, don't look :)
+    deflateInit_
+    deflateInit2_
+    inflateInit_
+    inflateInit2_
+    inflateBackInit_
+    gzgetc_
+    zError
+    inflateSyncPoint
+    get_crc_table
+    inflateUndermine
+    inflateResetKeep
+    deflateResetKeep
+    gzopen_w