diff --git a/src/modules/Gz/configure.in b/src/modules/Gz/configure.in
index 7911dcf5256b467e410f87256688db37d5335685..61a083751cec6f90d878894b2f392716782f0af6 100644
--- a/src/modules/Gz/configure.in
+++ b/src/modules/Gz/configure.in
@@ -1,4 +1,4 @@
-# $Id: configure.in,v 1.18 2000/07/06 09:01:50 grubba Exp $
+# $Id: configure.in,v 1.19 2000/10/02 16:22:20 jonasw Exp $
 AC_INIT(zlibmod.c)
 AC_CONFIG_HEADER(zlib_machine.h)
 AC_ARG_WITH(zlib,     [  --with(out)-zlib       Support gzip compression],[],[with_zlib=yes])
@@ -11,7 +11,9 @@ define([AC_CHECK_GZ],
   AC_MSG_CHECKING(working lib$1)
   AC_CACHE_VAL(pike_cv_working_$1,[
     OLDLIBS="${LIBS-}"
-    LIBS="${LIBS-} -l$1"
+    if test "$pike_cv_sys_os" != "Darwin"; then
+      LIBS="${LIBS-} -l$1"
+    fi
     AC_TRY_RUN([
 `cat $srcdir/gz_test.c`
     ],pike_cv_working_$1=yes,pike_cv_working_$1=no,
@@ -26,7 +28,9 @@ define([AC_CHECK_GZ],
   if test "x$pike_cv_working_$1" = xyes; then
     AC_MSG_RESULT(yes)
     AC_DEFINE(HAVE_LIBZ)
-    LIBS="${LIBS-} -l$1"
+    if test "$pike_cv_sys_os" != "Darwin"; then
+      LIBS="${LIBS-} -l$1"
+    fi
     done=yes
   else
     AC_MSG_RESULT(no)
@@ -38,6 +42,10 @@ define([AC_CHECK_GZ],
   fi
 ])
 
+if test "$pike_cv_sys_os" = "Darwin"; then
+  CPPFLAGS="-I/System/Library/Frameworks/Zip.framework/Headers $CPPFLAGS"
+  LDFLAGS="-framework Zip"
+fi
 
 if test x$with_zlib = xyes ; then
   AC_CHECK_HEADERS(zlib.h)
@@ -62,7 +70,7 @@ int foo = (int)(Z_NO_COMPRESSION | Z_VERSION_ERROR);
 	AC_HAVE_FUNCS(__T_9__nothrow)
       fi
 
-      AC_CHECK_GZ(z,[AC_CHECK_GZ(gz, [ ac_cv_lib_z_main=no ] ) ])
+      AC_CHECK_GZ(z,[AC_CHECK_GZ(gz,[AC_CHECK_GZ(Zip, [ ac_cv_lib_z_main=no ] ) ]) ])
     fi
   fi
 fi