#endif
#endif
+ #if wxHAS_HUGE_FILES
+ // wxFile is present and supports large files. Currently wxFFile
+ // doesn't have large file support with any Windows compiler (even
+ // Win64 ones).
+ #if wxUSE_FILE
+ #define WXFILE_LARGEFILE 1
+ #endif
+ #endif
+
// It's a private define, undefine it so nobody gets tempted to use it
#undef wxHAS_HUGE_FILES
#else // Unix platforms using configure
#define wxFileOffsetFmtSpec wxLongLongFmtSpec
wxCOMPILE_TIME_ASSERT( sizeof(off_t) == sizeof(wxLongLong_t),
BadFileSizeType );
+ // wxFile is present and supports large files
+ #ifdef wxUSE_FILE
+ #define WXFILE_LARGEFILE
+ #endif
+ // wxFFile is present and supports large files
+ #if SIZEOF_LONG == 8 || defined HAVE_FSEEKO
+ #define WXFFILE_LARGEFILE
+ #endif
#else
#define wxFileOffsetFmtSpec _T("")
#endif
typedef unsigned long mode_t;
#endif
WXDLLIMPEXP_BASE int wxStat( const wxChar *file_name, wxStructStat *buf );
+ WXDLLIMPEXP_BASE int wxLstat( const wxChar *file_name, wxStructStat *buf );
WXDLLIMPEXP_BASE int wxAccess( const wxChar *pathname, int mode );
WXDLLIMPEXP_BASE int wxOpen( const wxChar *pathname, int flags, mode_t mode );
#else
#define wxOpen open
#define wxStat stat
+ #define wxLstat lstat
#define wxAccess access
#endif
+
+ #define wxHAVE_NATIVE_LSTAT
#endif // platforms
+#ifdef O_BINARY
+ #define wxO_BINARY O_BINARY
+#else
+ #define wxO_BINARY 0
+#endif
+
+// if the platform doesn't have symlinks, define wxLstat to be the same as
+// wxStat to avoid #ifdefs in the code using it
+#ifndef wxHAVE_NATIVE_LSTAT
+ #define wxLstat wxStat
+#endif
+
#if defined(__VISAGECPP__) && __IBMCPP__ >= 400
//
// VisualAge C++ V4.0 cannot have any external linkage const decs
}
#endif //WXWIN_COMPATIBILITY_2_6
+// permissions; these functions work both on files and directories:
+WXDLLIMPEXP_BASE bool wxIsWritable(const wxString &path);
+WXDLLIMPEXP_BASE bool wxIsReadable(const wxString &path);
+WXDLLIMPEXP_BASE bool wxIsExecutable(const wxString &path);
+
// ----------------------------------------------------------------------------
// separators in file names
// ----------------------------------------------------------------------------