Blame qtools/qfiledefs_p.h

Packit 1c1d7e
/****************************************************************************
Packit 1c1d7e
** 
Packit 1c1d7e
**
Packit 1c1d7e
** Common macros and system include files for QFile, QFileInfo and QDir.
Packit 1c1d7e
**
Packit 1c1d7e
** Created : 930812
Packit 1c1d7e
**
Packit 1c1d7e
** Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.
Packit 1c1d7e
**
Packit 1c1d7e
** This file is part of the tools module of the Qt GUI Toolkit.
Packit 1c1d7e
**
Packit 1c1d7e
** This file may be distributed under the terms of the Q Public License
Packit 1c1d7e
** as defined by Trolltech AS of Norway and appearing in the file
Packit 1c1d7e
** LICENSE.QPL included in the packaging of this file.
Packit 1c1d7e
**
Packit 1c1d7e
** This file may be distributed and/or modified under the terms of the
Packit 1c1d7e
** GNU General Public License version 2 as published by the Free Software
Packit 1c1d7e
** Foundation and appearing in the file LICENSE.GPL included in the
Packit 1c1d7e
** packaging of this file.
Packit 1c1d7e
**
Packit 1c1d7e
** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition
Packit 1c1d7e
** licenses may use this file in accordance with the Qt Commercial License
Packit 1c1d7e
** Agreement provided with the Software.
Packit 1c1d7e
**
Packit 1c1d7e
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
Packit 1c1d7e
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
Packit 1c1d7e
**
Packit 1c1d7e
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
Packit 1c1d7e
**   information about Qt Commercial License Agreements.
Packit 1c1d7e
** See http://www.trolltech.com/qpl/ for QPL licensing information.
Packit 1c1d7e
** See http://www.trolltech.com/gpl/ for GPL licensing information.
Packit 1c1d7e
**
Packit 1c1d7e
** Contact info@trolltech.com if any conditions of this licensing are
Packit 1c1d7e
** not clear to you.
Packit 1c1d7e
**
Packit 1c1d7e
**********************************************************************/
Packit 1c1d7e
Packit 1c1d7e
#ifndef QFILEDEFS_P_H
Packit 1c1d7e
#define QFILEDEFS_P_H
Packit 1c1d7e
Packit 1c1d7e
Packit 1c1d7e
//
Packit 1c1d7e
//  W A R N I N G
Packit 1c1d7e
//  -------------
Packit 1c1d7e
//
Packit 1c1d7e
// This file is not part of the Qt API.  It exists for the convenience
Packit 1c1d7e
// of qfile.cpp, qfileinfo.cpp and qdir.cpp.
Packit 1c1d7e
// This header file may change from version to version without notice,
Packit 1c1d7e
// or even be removed.
Packit 1c1d7e
//
Packit 1c1d7e
//
Packit 1c1d7e
#if defined(_CC_MWERKS_)
Packit 1c1d7e
# include <stdlib.h>
Packit 1c1d7e
# include <stat.h>
Packit 1c1d7e
#elif !defined(_OS_MAC_) 
Packit 1c1d7e
# include <sys/types.h>
Packit 1c1d7e
# include <sys/stat.h>
Packit 1c1d7e
#elif defined(_OS_MAC_)
Packit 1c1d7e
# include <sys/types.h>
Packit 1c1d7e
# include <sys/stat.h>
Packit 1c1d7e
# define _OS_UNIX_
Packit 1c1d7e
#endif
Packit 1c1d7e
#include <fcntl.h>
Packit 1c1d7e
#include <errno.h>
Packit 1c1d7e
#if defined(_OS_UNIX_)
Packit 1c1d7e
# include <dirent.h>
Packit 1c1d7e
# include <unistd.h>
Packit 1c1d7e
#endif
Packit 1c1d7e
#if defined(_OS_MSDOS_) || defined(_OS_WIN32_) || defined(_OS_OS2_)
Packit 1c1d7e
# define _OS_FATFS_
Packit 1c1d7e
# if defined(__CYGWIN32__)
Packit 1c1d7e
#  include <dirent.h>
Packit 1c1d7e
#  include <unistd.h>
Packit 1c1d7e
#  if !defined(_OS_UNIX_)
Packit 1c1d7e
#   define _OS_UNIX_
Packit 1c1d7e
#  endif
Packit 1c1d7e
# else
Packit 1c1d7e
#  include <io.h>
Packit 1c1d7e
#  if !defined(_CC_MWERKS_)
Packit 1c1d7e
#   include <dos.h>
Packit 1c1d7e
#  endif
Packit 1c1d7e
#  include <direct.h>
Packit 1c1d7e
# endif
Packit 1c1d7e
#endif
Packit 1c1d7e
#include <limits.h>
Packit 1c1d7e
Packit 1c1d7e
Packit 1c1d7e
#if !defined(PATH_MAX)
Packit 1c1d7e
#if defined( MAXPATHLEN )
Packit 1c1d7e
#define PATH_MAX MAXPATHLEN
Packit 1c1d7e
#else
Packit 1c1d7e
#define PATH_MAX 1024
Packit 1c1d7e
#endif
Packit 1c1d7e
#endif
Packit 1c1d7e
Packit 1c1d7e
Packit 1c1d7e
#undef STATBUF
Packit 1c1d7e
#undef STAT
Packit 1c1d7e
#undef STAT_REG
Packit 1c1d7e
#undef STAT_DIR
Packit 1c1d7e
#undef STAT_LNK
Packit 1c1d7e
#undef STAT_MASK
Packit 1c1d7e
#undef FILENO
Packit 1c1d7e
#undef OPEN
Packit 1c1d7e
#undef CLOSE
Packit 1c1d7e
#undef LSEEK
Packit 1c1d7e
#undef READ
Packit 1c1d7e
#undef WRITE
Packit 1c1d7e
#undef ACCESS
Packit 1c1d7e
#undef GETCWD
Packit 1c1d7e
#undef CHDIR
Packit 1c1d7e
#undef MKDIR
Packit 1c1d7e
#undef RMDIR
Packit 1c1d7e
#undef OPEN_RDONLY
Packit 1c1d7e
#undef OPEN_WRONLY
Packit 1c1d7e
#undef OPEN_CREAT
Packit 1c1d7e
#undef OPEN_TRUNC
Packit 1c1d7e
#undef OPEN_APPEND
Packit 1c1d7e
#undef OPEN_TEXT
Packit 1c1d7e
#undef OPEN_BINARY
Packit 1c1d7e
Packit 1c1d7e
Packit 1c1d7e
#if defined(_CC_MSVC_) || defined(_CC_SYM_)
Packit 1c1d7e
Packit 1c1d7e
# define STATBUF	struct _stat		// non-ANSI defs
Packit 1c1d7e
# define STATBUF4TSTAT	struct _stat		// non-ANSI defs
Packit 1c1d7e
# define STAT		::_stat
Packit 1c1d7e
# define FSTAT		::_fstat
Packit 1c1d7e
# define STAT_REG	_S_IFREG
Packit 1c1d7e
# define STAT_DIR	_S_IFDIR
Packit 1c1d7e
# define STAT_MASK	_S_IFMT
Packit 1c1d7e
# if defined(_S_IFLNK)
Packit 1c1d7e
#  define STAT_LNK	_S_IFLNK
Packit 1c1d7e
# endif
Packit 1c1d7e
# define FILENO		_fileno
Packit 1c1d7e
# define OPEN		::_open
Packit 1c1d7e
# define CLOSE		::_close
Packit 1c1d7e
# define LSEEK		::_lseek
Packit 1c1d7e
# define READ		::_read
Packit 1c1d7e
# define WRITE		::_write
Packit 1c1d7e
# define ACCESS		::_access
Packit 1c1d7e
# define GETCWD		::_getcwd
Packit 1c1d7e
# define CHDIR		::_chdir
Packit 1c1d7e
# define MKDIR		::_mkdir
Packit 1c1d7e
# define RMDIR		::_rmdir
Packit 1c1d7e
# define OPEN_RDONLY	_O_RDONLY
Packit 1c1d7e
# define OPEN_WRONLY	_O_WRONLY
Packit 1c1d7e
# define OPEN_RDWR	_O_RDWR
Packit 1c1d7e
# define OPEN_CREAT	_O_CREAT
Packit 1c1d7e
# define OPEN_TRUNC	_O_TRUNC
Packit 1c1d7e
# define OPEN_APPEND	_O_APPEND
Packit 1c1d7e
# if defined(O_TEXT)
Packit 1c1d7e
#  define OPEN_TEXT	_O_TEXT
Packit 1c1d7e
#  define OPEN_BINARY	_O_BINARY
Packit 1c1d7e
# endif
Packit 1c1d7e
Packit 1c1d7e
#elif defined(_CC_BOR_) && __BORLANDC__ >= 0x550
Packit 1c1d7e
Packit 1c1d7e
# define STATBUF	struct stat		// non-ANSI defs
Packit 1c1d7e
# define STATBUF4TSTAT	struct _stat		// non-ANSI defs
Packit 1c1d7e
# define STAT		::stat
Packit 1c1d7e
# define FSTAT		::fstat
Packit 1c1d7e
# define STAT_REG	_S_IFREG
Packit 1c1d7e
# define STAT_DIR	_S_IFDIR
Packit 1c1d7e
# define STAT_MASK	_S_IFMT
Packit 1c1d7e
# if defined(_S_IFLNK)
Packit 1c1d7e
#  define STAT_LNK	_S_IFLNK
Packit 1c1d7e
# endif
Packit 1c1d7e
# define FILENO		_fileno
Packit 1c1d7e
# define OPEN		::open
Packit 1c1d7e
# define CLOSE		::_close
Packit 1c1d7e
# define LSEEK		::_lseek
Packit 1c1d7e
# define READ		::_read
Packit 1c1d7e
# define WRITE		::_write
Packit 1c1d7e
# define ACCESS		::_access
Packit 1c1d7e
# define GETCWD		::_getcwd
Packit 1c1d7e
# define CHDIR		::chdir
Packit 1c1d7e
# define MKDIR		::_mkdir
Packit 1c1d7e
# define RMDIR		::_rmdir
Packit 1c1d7e
# define OPEN_RDONLY	_O_RDONLY
Packit 1c1d7e
# define OPEN_WRONLY	_O_WRONLY
Packit 1c1d7e
# define OPEN_RDWR	_O_RDWR
Packit 1c1d7e
# define OPEN_CREAT	_O_CREAT
Packit 1c1d7e
# define OPEN_TRUNC	_O_TRUNC
Packit 1c1d7e
# define OPEN_APPEND	_O_APPEND
Packit 1c1d7e
# if defined(O_TEXT)
Packit 1c1d7e
#  define OPEN_TEXT	_O_TEXT
Packit 1c1d7e
#  define OPEN_BINARY	_O_BINARY
Packit 1c1d7e
# endif
Packit 1c1d7e
Packit 1c1d7e
#else						// all other systems
Packit 1c1d7e
Packit 1c1d7e
#ifdef __MINGW32__
Packit 1c1d7e
# define STATBUF       struct _stat
Packit 1c1d7e
# define STATBUF4TSTAT struct _stat
Packit 1c1d7e
# define STAT          _stat
Packit 1c1d7e
# define FSTAT         _fstat
Packit 1c1d7e
#else
Packit 1c1d7e
# define STATBUF	struct stat
Packit 1c1d7e
# define STATBUF4TSTAT	struct stat
Packit 1c1d7e
# define STAT		::stat
Packit 1c1d7e
# define FSTAT		::fstat
Packit 1c1d7e
#endif
Packit 1c1d7e
# define STAT_REG	S_IFREG
Packit 1c1d7e
# define STAT_DIR	S_IFDIR
Packit 1c1d7e
# define STAT_MASK	S_IFMT
Packit 1c1d7e
# if defined(S_IFLNK)
Packit 1c1d7e
#  define STAT_LNK	S_IFLNK
Packit 1c1d7e
# endif
Packit 1c1d7e
# define FILENO		fileno
Packit 1c1d7e
# define OPEN		::open
Packit 1c1d7e
# define CLOSE		::close
Packit 1c1d7e
# define LSEEK		::lseek
Packit 1c1d7e
# define READ		::read
Packit 1c1d7e
# define WRITE		::write
Packit 1c1d7e
# define ACCESS		::access
Packit 1c1d7e
# if defined(_OS_OS2EMX_)
Packit 1c1d7e
#  define GETCWD	::_getcwd2
Packit 1c1d7e
#  define CHDIR		::_chdir2
Packit 1c1d7e
# else
Packit 1c1d7e
#  define GETCWD	::getcwd
Packit 1c1d7e
#  define CHDIR		::chdir
Packit 1c1d7e
# endif
Packit 1c1d7e
# define MKDIR		::mkdir
Packit 1c1d7e
# define RMDIR		::rmdir
Packit 1c1d7e
# define OPEN_RDONLY	O_RDONLY
Packit 1c1d7e
# define OPEN_WRONLY	O_WRONLY
Packit 1c1d7e
# define OPEN_RDWR	O_RDWR
Packit 1c1d7e
# define OPEN_CREAT	O_CREAT
Packit 1c1d7e
# define OPEN_TRUNC	O_TRUNC
Packit 1c1d7e
# define OPEN_APPEND	O_APPEND
Packit 1c1d7e
# if defined(O_TEXT)
Packit 1c1d7e
#  define OPEN_TEXT	O_TEXT
Packit 1c1d7e
#  define OPEN_BINARY	O_BINARY
Packit 1c1d7e
# endif
Packit 1c1d7e
#endif
Packit 1c1d7e
Packit 1c1d7e
#if defined(_CC_MWERKS_)
Packit 1c1d7e
#undef mkdir
Packit 1c1d7e
#undef MKDIR
Packit 1c1d7e
#define MKDIR _mkdir
Packit 1c1d7e
#undef rmdir
Packit 1c1d7e
#undef RMDIR
Packit 1c1d7e
#define RMDIR _rmdir
Packit 1c1d7e
#endif
Packit 1c1d7e
Packit 1c1d7e
Packit 1c1d7e
#if defined(_OS_FATFS_)
Packit 1c1d7e
# define F_OK	0
Packit 1c1d7e
# define X_OK	1
Packit 1c1d7e
# define W_OK	2
Packit 1c1d7e
# define R_OK	4
Packit 1c1d7e
#endif
Packit 1c1d7e
Packit 1c1d7e
#if defined(_OS_MAC_) && !defined(_OS_UNIX_)
Packit 1c1d7e
# define F_OK	0
Packit 1c1d7e
# define X_OK	1
Packit 1c1d7e
# define W_OK	2
Packit 1c1d7e
# define R_OK	4
Packit 1c1d7e
#endif
Packit 1c1d7e
Packit 1c1d7e
struct QFileInfoCache
Packit 1c1d7e
{
Packit 1c1d7e
    STATBUF st;
Packit 1c1d7e
    bool isSymLink;
Packit 1c1d7e
};
Packit 1c1d7e
Packit 1c1d7e
#endif