]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/unzip.h
Fix Cygwin and MinGW compilation
[wxWidgets.git] / src / common / unzip.h
index 76692cb703cf3e77f31dc66746afb36c5d83be61..78dee0ee4df3be71335c5581d85e2067a7cc3116 100644 (file)
@@ -1,4 +1,11 @@
-/* unzip.h -- IO for uncompress .zip files using zlib 
+/*
+
+This file was altered for needs of wxWindows.
+$Id$
+
+*/
+
+/* unzip.h -- IO for uncompress .zip files using zlib
    Version 0.15 beta, Mar 19th, 1998,
 
    Copyright (C) 1998 Gilles Vollant
@@ -33,7 +40,7 @@
 
 
 */
-/* for more info about .ZIP format, see 
+/* for more info about .ZIP format, see
       ftp://ftp.cdrom.com/pub/infozip/doc/appnote-970311-iz.zip
    PkWare has also a specification at :
       ftp://ftp.pkware.com/probdesc.zip */
@@ -46,13 +53,22 @@ extern "C" {
 #endif
 
 #ifndef _ZLIB_H
-#include "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
 
 #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
 /* like the STRICT of WIN32, we define a pointer that cannot be converted
     from (void*) without cast */
-typedef struct TagunzFile__ { int unused; } unzFile__; 
+typedef struct TagunzFile__ { int unused; } unzFile__;
 typedef unzFile__ *unzFile;
 #else
 typedef voidp unzFile;
@@ -69,7 +85,7 @@ typedef voidp unzFile;
 #define UNZ_CRCERROR                    (-105)
 
 /* tm_unz contain date/time info */
-typedef struct tm_unz_s 
+typedef struct tm_unz_s
 {
        uInt tm_sec;            /* seconds after the minute - [0,59] */
        uInt tm_min;            /* minutes after the hour - [0,59] */
@@ -98,8 +114,8 @@ typedef struct unz_file_info_s
     uLong compression_method;   /* compression method              2 bytes */
     uLong dosDate;              /* last mod file date in Dos fmt   4 bytes */
     uLong crc;                  /* crc-32                          4 bytes */
-    uLong compressed_size;      /* compressed size                 4 bytes */ 
-    uLong uncompressed_size;    /* uncompressed size               4 bytes */ 
+    uLong compressed_size;      /* compressed size                 4 bytes */
+    uLong uncompressed_size;    /* uncompressed size               4 bytes */
     uLong size_filename;        /* filename length                 2 bytes */
     uLong size_file_extra;      /* extra field length              2 bytes */
     uLong size_file_comment;    /* file comment length             2 bytes */
@@ -176,7 +192,7 @@ extern int ZEXPORT unzGoToNextFile OF((unzFile file));
   return UNZ_END_OF_LIST_OF_FILE if the actual file was the latest.
 */
 
-extern int ZEXPORT unzLocateFile OF((unzFile file, 
+extern int ZEXPORT unzLocateFile OF((unzFile file,
                                     const char *szFileName,
                                     int iCaseSensitivity));
 /*
@@ -228,7 +244,7 @@ extern int ZEXPORT unzCloseCurrentFile OF((unzFile file));
 */
 
                                                                                                
-extern int ZEXPORT unzReadCurrentFile OF((unzFile file, 
+extern int ZEXPORT unzReadCurrentFile OF((unzFile file,
                                          voidp buf,
                                          unsigned len));
 /*
@@ -249,7 +265,7 @@ extern z_off_t ZEXPORT unztell OF((unzFile file));
 
 extern int ZEXPORT unzeof OF((unzFile file));
 /*
-  return 1 if the end of file was reached, 0 elsewhere 
+  return 1 if the end of file was reached, 0 elsewhere
 */
 
 extern int ZEXPORT unzGetLocalExtrafield OF((unzFile file,
@@ -264,10 +280,20 @@ extern int ZEXPORT unzGetLocalExtrafield OF((unzFile file,
 
   if buf!=NULL, len is the size of the buffer, the extra header is copied in
        buf.
-  the return value is the number of bytes copied in buf, or (if <0) 
+  the return value is the number of bytes copied in buf, or (if <0)
        the error code
 */
 
+#if defined(__VISAGECPP__) || defined(__BORLANDC__)
+/*Visualage complains of no prototypes*/
+int unzlocal_getByte(FILE* , int*);
+int strcmpcasenosensitive_internal (const char*, const char*);
+int unzlocal_getShort (FILE*, uLong*);
+int unzlocal_getLong (FILE*, uLong*);
+uLong unzlocal_SearchCentralDir(FILE*);
+void unzlocal_DosDateToTmuDate (uLong, tm_unz*);
+#endif
+
 #ifdef __cplusplus
 }
 #endif