// Author: Julian Smart
// Modified by:
// Created: 29/01/98
-// RCS-ID: $Id$
// Copyright: (c) 1998 Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#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
#ifdef __OS2__
#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>
// constants
// ----------------------------------------------------------------------------
-#if defined(__VISUALC__) || defined(__DIGITALMARS__)
+#if defined(__VISUALC__) || defined(__INTELC__) || defined(__DIGITALMARS__)
typedef int mode_t;
#endif
#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;
#endif
enum wxSeekMode
#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 wxCRT_Chmod(const wxChar *name, int WXUNUSED(how));
WXDLLIMPEXP_BASE int wxClose(int fd);
WXDLLIMPEXP_BASE int wxFsync(int WXUNUSED(fd));
WXDLLIMPEXP_BASE int wxRead(int fd, void *buf, unsigned int count);
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__
// first the ANSI versions
#define wxCRT_OpenA wxPOSIX_IDENT(open)
#define wxCRT_AccessA wxPOSIX_IDENT(access)
+ #define wxCRT_ChmodA wxPOSIX_IDENT(chmod)
#define wxCRT_MkDirA wxPOSIX_IDENT(mkdir)
#define wxCRT_RmDirA wxPOSIX_IDENT(rmdir)
#ifdef wxHAS_HUGE_FILES
#endif
#define wxCRT_AccessW _waccess
+ #define wxCRT_ChmodW _wchmod
#define wxCRT_MkDirW _wmkdir
#define wxCRT_RmDirW _wrmdir
#ifdef wxHAS_HUGE_FILES
int flags, int mode);
WXDLLIMPEXP_BASE int wxMSLU__waccess(const wxChar *name,
int mode);
+ WXDLLIMPEXP_BASE int wxMSLU__wchmod(const wxChar *name,
+ int mode);
WXDLLIMPEXP_BASE int wxMSLU__wmkdir(const wxChar *name);
WXDLLIMPEXP_BASE int wxMSLU__wrmdir(const wxChar *name);
#define wxCRT_Open wxMSLU__wopen
#define wxCRT_Access wxMSLU__waccess
+ #define wxCRT_Chmod wxMSLU__wchmod
#define wxCRT_MkDir wxMSLU__wmkdir
#define wxCRT_RmDir wxMSLU__wrmdir
#define wxCRT_Stat wxMSLU__wstat
#else // !wxUSE_UNICODE_MSLU
#define wxCRT_Open wxCRT_OpenW
#define wxCRT_Access wxCRT_AccessW
+ #define wxCRT_Chmod wxCRT_ChmodW
#define wxCRT_MkDir wxCRT_MkDirW
#define wxCRT_RmDir wxCRT_RmDirW
#define wxCRT_Stat wxCRT_StatW
#else // !wxUSE_UNICODE
#define wxCRT_Open wxCRT_OpenA
#define wxCRT_Access wxCRT_AccessA
+ #define wxCRT_Chmod wxCRT_ChmodA
#define wxCRT_MkDir wxCRT_MkDirA
#define wxCRT_RmDir wxCRT_RmDirA
#define wxCRT_Stat wxCRT_StatA
#define wxCRT_Stat stat
#define wxCRT_Lstat lstat
#define wxCRT_Access access
+ #define wxCRT_Chmod chmod
#define wxHAS_NATIVE_LSTAT
#endif // platforms
inline int wxAccess(const wxString& path, mode_t mode)
{ return wxCRT_Access(path.fn_str(), mode); }
+inline int wxChmod(const wxString& path, mode_t mode)
+ { return wxCRT_Chmod(path.fn_str(), mode); }
inline int wxOpen(const wxString& path, int flags, mode_t mode)
{ return wxCRT_Open(path.fn_str(), flags, mode); }