Index: configure
===================================================================
--- configure	(revision 16736)
+++ configure	(working copy)
@@ -19152,8 +19152,8 @@
 fi
 
 
-{ echo "$as_me:$LINENO: checking GCC 4.1 atomic builtins are available" >&5
-echo $ECHO_N "checking GCC 4.1 atomic builtins are available... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking whether GCC 4.1 atomic builtins are available" >&5
+echo $ECHO_N "checking whether GCC 4.1 atomic builtins are available... $ECHO_C" >&6; }
 
 rm -f atomicbuiltins.c
 echo 'int main(int argc, char* argv) { int i; __sync_add_and_fetch(&i, 1); __sync_sub_and_fetch(&i, 1); return 0; } ' > atomicbuiltins.c
@@ -19683,6 +19683,7 @@
 
 if test "$LIBZ_SETTING" = "external" ; then
   LIBS="-lz $LIBS"
+  EXTRA_INCLUDES="-I$with_libz -I$with_libz/include $EXTRA_INCLUDES"
 elif test "$with_libz" = "no" ; then
   LIBZ_SETTING=no
   { echo "$as_me:$LINENO: result: not using libz at all." >&5
Index: port/GNUmakefile
===================================================================
--- port/GNUmakefile	(revision 16736)
+++ port/GNUmakefile	(working copy)
@@ -8,8 +8,14 @@
 include GDALmake.opt
 endif
 
-CPPFLAGS	:= $(CPPFLAGS)	$(CURL_INC) -I../frmts/zlib
+ifeq ($(LIBZ_SETTING),internal)
+XTRA_OPT =	-I../frmts/zlib
+else
+XTRA_OPT =
+endif
 
+CPPFLAGS	:= $(CPPFLAGS)	$(CURL_INC) $(XTRA_OPT)
+
 OBJ =	cpl_conv.o cpl_error.o cpl_string.o cplgetsymbol.o \
 	cpl_strtod.o cpl_path.o cpl_csv.o cpl_findfile.o cpl_minixml.o \
 	cpl_multiproc.o cpl_list.o cpl_getexecpath.o cplstring.o \
Index: configure.in
===================================================================
--- configure.in	(revision 16736)
+++ configure.in	(working copy)
@@ -347,6 +347,7 @@
 
 if test "$LIBZ_SETTING" = "external" ; then
   LIBS="-lz $LIBS"
+  EXTRA_INCLUDES="-I$with_libz -I$with_libz/include $EXTRA_INCLUDES"
 elif test "$with_libz" = "no" ; then
   LIBZ_SETTING=no
   AC_MSG_RESULT([not using libz at all.])
Index: frmts/png/GNUmakefile
===================================================================
--- frmts/png/GNUmakefile	(revision 16736)
+++ frmts/png/GNUmakefile	(working copy)
@@ -31,7 +31,9 @@
 OBJ	=	pngdataset.o
 endif
 
-XTRA_OPT	:=	$(XTRA_OPT) -I../zlib
+ifeq ($(LIBZ_SETTING),internal)
+  XTRA_OPT :=	$(XTRA_OPT) -I../zlib
+endif
 
 CPPFLAGS	:=	$(XTRA_OPT) $(GDAL_INCLUDE) $(CPPFLAGS)
 
Index: frmts/jpeg/GNUmakefile
===================================================================
--- frmts/jpeg/GNUmakefile	(revision 16736)
+++ frmts/jpeg/GNUmakefile	(working copy)
@@ -19,8 +19,12 @@
 XTRA_OPT	=	
 endif
 
-CPPFLAGS	:=	$(XTRA_OPT) $(GDAL_INCLUDE) $(CPPFLAGS) -I../zlib
+ifeq ($(LIBZ_SETTING),internal)
+  XTRA_OPT :=	$(XTRA_OPT) -I../zlib
+endif
 
+CPPFLAGS	:=	$(XTRA_OPT) $(GDAL_INCLUDE) $(CPPFLAGS)
+
 default:	$(OBJ:.o=.$(OBJ_EXT))
 
 clean:
Index: frmts/gtiff/libtiff/GNUmakefile
===================================================================
--- frmts/gtiff/libtiff/GNUmakefile	(revision 16736)
+++ frmts/gtiff/libtiff/GNUmakefile	(working copy)
@@ -43,8 +43,14 @@
 
 ALL_C_FLAGS =	$(CFLAGS) $(CPPFLAGS)
 
+ifeq ($(LIBZ_SETTING),internal)
+XTRA_OPT =	-I../../zlib
+else
+XTRA_OPT =
+endif
+
 ifneq ($(LIBZ_SETTING),no)
-ALL_C_FLAGS 	:=	$(ALL_C_FLAGS) -DPIXARLOG_SUPPORT -DZIP_SUPPORT -I../../zlib
+ALL_C_FLAGS 	:=	$(ALL_C_FLAGS) -DPIXARLOG_SUPPORT -DZIP_SUPPORT $(XTRA_OPT)
 endif
 
 ifneq ($(JPEG_SETTING),no)

