#include "wx/list.h"
#include "wx/arrstr.h"
-#ifndef __WXPALMOS5__
#ifdef __WXWINCE__
#include "wx/msw/wince/time.h"
#include "wx/msw/private.h"
#include <time.h>
#endif
-#ifdef __WXWINCE__
-// Nothing
-#elif !defined(__MWERKS__)
+#ifndef __WXWINCE__
#include <sys/types.h>
#include <sys/stat.h>
-#else
- #ifdef __MACH__
- #include <sys/types.h>
- #include <utime.h>
- #include <sys/stat.h>
- #include <unistd.h>
- #else
- #include <stat.h>
- #include <unistd.h>
- #include <unix.h>
- #endif
#endif
-#endif // !__WXPALMOS5__
#ifdef __OS2__
// need to check for __OS2__ first since currently both
#endif
#if defined(__WINDOWS__) && !defined(__WXMICROWIN__)
-#if !defined( __GNUWIN32__ ) && !defined( __MWERKS__ ) && !defined(__WXWINCE__) && !defined(__CYGWIN__)
+#if !defined( __GNUWIN32__ ) && !defined(__WXWINCE__) && !defined(__CYGWIN__)
#include <direct.h>
#include <dos.h>
#include <io.h>
#include <dir.h>
#endif
-#ifndef __WXPALMOS5__
#ifndef __WXWINCE__
#include <fcntl.h> // O_RDONLY &c
#endif
-#endif // !__WXPALMOS5__
+
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
#endif
#endif
-#if (defined(__VISUALC__) && !defined(__WXWINCE__)) || ( defined(__MWERKS__) && defined( __INTEL__) )
+#if defined(__VISUALC__) && !defined(__WXWINCE__)
typedef _off_t off_t;
#elif defined(__SYMANTEC__)
typedef long off_t;
-#elif defined(__MWERKS__) && !defined(__INTEL__) && !defined(__MACH__)
- typedef long off_t;
-#elif defined(__WXPALMOS5__)
- typedef long off_t;
#endif
enum wxSeekMode
// Implemented in filefnwce.cpp
#if defined( __WXWINCE__)
typedef __int64 wxFileOffset;
- #define wxFileOffsetFmtSpec _("I64")
+ #define wxFileOffsetFmtSpec wxT("I64")
WXDLLIMPEXP_BASE int wxCRT_Open(const wxChar *filename, int oflag, int WXUNUSED(pmode));
WXDLLIMPEXP_BASE int wxCRT_Access(const wxChar *name, int WXUNUSED(how));
WXDLLIMPEXP_BASE int wxClose(int fd);
#define wxCRT_RmDir _wrmdir
#define wxCRT_Stat _wstat
#define wxStructStat struct _stat
-#elif (defined(__WXMSW__) || defined(__OS2__)) && !defined(__WXPALMOS__) && \
+#elif (defined(__WINDOWS__) || defined(__OS2__)) && \
( \
defined(__VISUALC__) || \
defined(__MINGW64__) || \
(defined(__MINGW32__) && !defined(__WINE__) && \
wxCHECK_W32API_VERSION(0, 5)) || \
- defined(__MWERKS__) || \
defined(__DMC__) || \
defined(__WATCOMC__) || \
defined(__BORLANDC__) \
#define wxFtell ftello64
#endif
- // other Windows compilers (DMC, Watcom, Metrowerks and Borland) don't have
- // huge file support (or at least not all functions needed for it by wx)
- // currently
+ // other Windows compilers (DMC, Watcom, and Borland) don't have huge file
+ // support (or at least not all functions needed for it by wx) currently
// types
// complications
#define wxClose wxPOSIX_IDENT(close)
- #if defined(__MWERKS__)
- #if __MSL__ >= 0x6000
- #define wxRead(fd, buf, nCount) _read(fd, (void *)buf, nCount)
- #define wxWrite(fd, buf, nCount) _write(fd, (void *)buf, nCount)
- #else
- #define wxRead(fd, buf, nCount)\
- _read(fd, (const char *)buf, nCount)
- #define wxWrite(fd, buf, nCount)\
- _write(fd, (const char *)buf, nCount)
- #endif
- #else // __MWERKS__
- #define wxRead wxPOSIX_IDENT(read)
- #define wxWrite wxPOSIX_IDENT(write)
- #endif
+ #define wxRead wxPOSIX_IDENT(read)
+ #define wxWrite wxPOSIX_IDENT(write)
#ifdef wxHAS_HUGE_FILES
#ifndef __MINGW64__
#define wxCRT_MkDirA wxPOSIX_IDENT(mkdir)
#define wxCRT_RmDirA wxPOSIX_IDENT(rmdir)
#ifdef wxHAS_HUGE_FILES
- #define wxCRT_StatA wxPOSIX_IDENT(stati64)
+ // MinGW-64 provides underscore-less versions of all file functions
+ // except for this one.
+ #ifdef __MINGW64__
+ #define wxCRT_StatA _stati64
+ #else
+ #define wxCRT_StatA wxPOSIX_IDENT(stati64)
+ #endif
#else
// Unfortunately Watcom is not consistent
#if defined(__OS2__) && defined(__WATCOMC__)
// private defines, undefine so that nobody gets tempted to use
#undef wxHAS_HUGE_FILES
#undef wxHAS_HUGE_STDIO_FILES
-#elif defined (__WXPALMOS__)
- typedef off_t wxFileOffset;
-#ifdef _LARGE_FILES
- #define wxFileOffsetFmtSpec wxLongLongFmtSpec
- wxCOMPILE_TIME_ASSERT( sizeof(off_t) == sizeof(wxLongLong_t), BadFileSizeType );
- // wxFile is present and supports large files
- #ifdef wxUSE_FILE
- #define wxHAS_LARGE_FILES
- #endif
- // wxFFile is present and supports large files
- #if SIZEOF_LONG == 8 || defined HAVE_FSEEKO
- #define wxHAS_LARGE_FFILES
- #endif
-#else
- #define wxFileOffsetFmtSpec wxT("")
-#endif
- #define wxClose close
- #define wxRead ::read
- #define wxWrite ::write
- #define wxLseek lseek
- #define wxSeek lseek
- #define wxFsync fsync
- #define wxEof eof
-
- #define wxCRT_MkDir mkdir
- #define wxCRT_RmDir rmdir
-
- #define wxTell(fd) lseek(fd, 0, SEEK_CUR)
-
- #define wxStructStat struct stat
-
- #define wxCRT_Open open
- #define wxCRT_Stat svfs_stat
- #define wxCRT_Lstat lstat
- #define wxCRT_Access access
-
- #define wxHAS_NATIVE_LSTAT
#else // Unix or Windows using unknown compiler, assume POSIX supported
typedef off_t wxFileOffset;
#ifdef HAVE_LARGEFILE_SUPPORT
{ return wxCRT_Lstat(path.fn_str(), buf); }
inline int wxRmDir(const wxString& path)
{ return wxCRT_RmDir(path.fn_str()); }
-#if defined(__WINDOWS__) || (defined(__OS2__) && defined(__WATCOMC__))
+#if (defined(__WINDOWS__) && !defined(__CYGWIN__)) \
+ || (defined(__OS2__) && defined(__WATCOMC__))
inline int wxMkDir(const wxString& path, mode_t WXUNUSED(mode) = 0)
{ return wxCRT_MkDir(path.fn_str()); }
#else
// CYGWIN also uses UNIX settings
#define wxFILE_SEP_PATH wxFILE_SEP_PATH_UNIX
#define wxPATH_SEP wxPATH_SEP_UNIX
-#elif defined(__WXPALMOS__)
- #define wxFILE_SEP_PATH wxFILE_SEP_PATH_UNIX
- #define wxPATH_SEP wxPATH_SEP_UNIX
#elif defined(__MAC__)
#define wxFILE_SEP_PATH wxFILE_SEP_PATH_MAC
#define wxPATH_SEP wxPATH_SEP_MAC