]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/unzip.h
VC 7.1 warning fix
[wxWidgets.git] / src / common / unzip.h
index cb37bef3254c09fd70a5831e64f51d5707ce57e0..acb137bc66e90c4e364534c47da80e3441950de9 100644 (file)
@@ -52,8 +52,37 @@ $Id$
 extern "C" {
 #endif
 
+/* include zlib.h if not done yet */
 #ifndef _ZLIB_H
-#include "zlib.h"
+    /*
+       normally, the compiler options should contain -I../zlib, but it is
+       apparently not the case for all MSW makefiles and so, unless we use
+       configure (which defines __WX_SETUP_H__) or it is explicitly overridden
+       by the user (who can define wxUSE_ZLIB_H_IN_PATH), we hardcode the path
+       here
+     */
+#   if defined(__WXMSW__) && !defined(__WX_SETUP_H__) && !defined(wxUSE_ZLIB_H_IN_PATH)
+#       include "../zlib/zlib.h"
+#   else
+#       include "zlib.h"
+#   endif
+#endif /* _ZLIB_H */
+
+/*
+   Some system zlib.h headers are modified to not define the OF() macro but use
+   the (standard) __P() instead (example: NetBSD 1.6), work around this if
+   needed assuming that we deal with an ANSI C compiler (which is a natural
+   assumption in 21st century!)
+ */
+#ifndef OF
+#   define OF(args) args
+#endif
+
+/*
+   And on some systems ZEXPORT is not defined neither -- work around this too
+ */
+#ifndef ZEXPORT
+#   define ZEXPORT
 #endif
 
 #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
@@ -275,7 +304,7 @@ extern int ZEXPORT unzGetLocalExtrafield OF((unzFile file,
        the error code
 */
 
-#if defined(__VISAGECPP__)
+#if defined(__VISAGECPP__) || defined(__BORLANDC__)
 /*Visualage complains of no prototypes*/
 int unzlocal_getByte(FILE* , int*);
 int strcmpcasenosensitive_internal (const char*, const char*);