You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
experimental/tqtinterface/qt4/mkspecs/win32-borland/qplatformdefs.h

155 lines
3.4 KiB

#ifndef TQPLATFORMDEFS_H
#define TQPLATFORMDEFS_H
#ifdef UNICODE
#ifndef _UNICODE
#define _UNICODE
#endif
#endif
// Get TQt defines/settings
#include "tqglobal.h"
#define TQ_FS_FAT
#define _POSIX_
#include <limits.h>
#undef _POSIX_
#include <tchar.h>
#include <io.h>
#include <direct.h>
#include <stdio.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/stat.h>
#include <dos.h>
#include <stdlib.h>
#include <windows.h>
#if __BORLANDC__ >= 0x550
// Borland Builder 6
#ifdef TQT_LARGEFILE_SUPPORT
# define TQT_STATBUF struct stati64 // non-ANSI defs
# define TQT_STATBUF4TSTAT struct stati64 // non-ANSI defs
# define TQT_STAT ::_stati64
# define TQT_FSTAT ::fstati64
# define TQT_LSEEK ::_lseeki64
# define TQT_TSTAT ::_tstati64
#else
# define TQT_STATBUF struct stat // non-ANSI defs
# define TQT_STATBUF4TSTAT struct _stat // non-ANSI defs
# define TQT_STAT ::stat
# define TQT_FSTAT ::fstat
# define TQT_LSEEK ::_lseek
# define TQT_TSTAT ::_tstat
#endif
#define TQT_STAT_REG _S_IFREG
#define TQT_STAT_DIR _S_IFDIR
#define TQT_STAT_MASK _S_IFMT
#if defined(_S_IFLNK)
# define TQT_STAT_LNK _S_IFLNK
#endif
#define TQT_FILENO _fileno
#define TQT_OPEN ::open
#define TQT_CLOSE ::_close
#define TQT_READ ::_read
#define TQT_WRITE ::_write
#define TQT_ACCESS ::_access
#define TQT_GETCWD ::_getcwd
#define TQT_CHDIR ::chdir
#define TQT_MKDIR ::_mkdir
#define TQT_RMDIR ::_rmdir
#define TQT_OPEN_RDONLY _O_RDONLY
#define TQT_OPEN_WRONLY _O_WRONLY
#define TQT_OPEN_RDWR _O_RDWR
#define TQT_OPEN_CREAT _O_CREAT
#define TQT_OPEN_TRUNC _O_TRUNC
#define TQT_OPEN_APPEND _O_APPEND
#if defined(O_TEXT)
# define TQT_OPEN_TEXT _O_TEXT
# define TQT_OPEN_BINARY _O_BINARY
#endif
#else
// Borland Builder 5
#ifdef TQT_LARGEFILE_SUPPORT
# define TQT_STATBUF struct stati64 // non-ANSI defs
# define TQT_STATBUF4TSTAT struct stati64 // non-ANSI defs
# define TQT_STAT ::stati64
# define TQT_FSTAT ::fstati64
# define TQT_LSEEK ::lseeki64
# define TQT_TSTAT ::tstati64
#else
# define TQT_STATBUF struct stat // non-ANSI defs
# define TQT_STATBUF4TSTAT struct stat // non-ANSI defs
# define TQT_STAT ::stat
# define TQT_FSTAT ::fstat
# define TQT_LSEEK ::lseek
# define TQT_TSTAT ::tstat
#endif
#define TQT_STAT_REG S_IFREG
#define TQT_STAT_DIR S_IFDIR
#define TQT_STAT_MASK S_IFMT
#if defined(S_IFLNK)
# define TQT_STAT_LNK S_IFLNK
#endif
#define TQT_FILENO fileno
#define TQT_OPEN ::open
#define TQT_CLOSE ::close
#define TQT_READ ::read
#define TQT_WRITE ::write
#define TQT_ACCESS ::access
#if defined(TQ_OS_OS2EMX)
// This is documented in the un*x to OS/2-EMX Porting FAQ:
// http://homepages.tu-darmstadt.de/~st002279/os2/porting.html
# define TQT_GETCWD ::_getcwd2
# define TQT_CHDIR ::_chdir2
#else
# define TQT_GETCWD ::getcwd
# define TQT_CHDIR ::chdir
#endif
#define TQT_MKDIR ::mkdir
#define TQT_RMDIR ::rmdir
#define TQT_OPEN_RDONLY O_RDONLY
#define TQT_OPEN_WRONLY O_WRONLY
#define TQT_OPEN_RDWR O_RDWR
#define TQT_OPEN_CREAT O_CREAT
#define TQT_OPEN_TRUNC O_TRUNC
#define TQT_OPEN_APPEND O_APPEND
#if defined(O_TEXT)
# define TQT_OPEN_TEXT O_TEXT
# define TQT_OPEN_BINARY O_BINARY
#endif
#endif // __BORLANDC__ >= 0x550
// Borland Builder 5 and 6
#define TQT_SIGNAL_ARGS int
#define TQT_VSNPRINTF ::_vsnprintf
#define TQT_SNPRINTF ::_snprintf
# define F_OK 0
# define X_OK 1
# define W_OK 2
# define R_OK 4
#endif // TQPLATFORMDEFS_H