diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2011-11-08 12:31:36 -0600 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2011-11-08 12:31:36 -0600 |
commit | d796c9dd933ab96ec83b9a634feedd5d32e1ba3f (patch) | |
tree | 6e3dcca4f77e20ec8966c666aac7c35bd4704053 /mkspecs/linux-kcc/qplatformdefs.h | |
download | tqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.tar.gz tqt3-d796c9dd933ab96ec83b9a634feedd5d32e1ba3f.zip |
Test conversion to TQt3 from Qt3 8c6fc1f8e35fd264dd01c582ca5e7549b32ab731
Diffstat (limited to 'mkspecs/linux-kcc/qplatformdefs.h')
-rw-r--r-- | mkspecs/linux-kcc/qplatformdefs.h | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/mkspecs/linux-kcc/qplatformdefs.h b/mkspecs/linux-kcc/qplatformdefs.h new file mode 100644 index 000000000..a8f336584 --- /dev/null +++ b/mkspecs/linux-kcc/qplatformdefs.h @@ -0,0 +1,109 @@ +#ifndef TQPLATFORMDEFS_H +#define TQPLATFORMDEFS_H + +// Get TQt defines/settings + +#include "qglobal.h" + +// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs + +// DNS system header files are a mess! +// <resolv.h> includes <arpa/nameser.h>. <arpa/nameser.h> is using +// 'u_char' and includes <sys/types.h>. Now the problem is that +// <sys/types.h> defines 'u_char' only if __USE_BSD is defined. +// __USE_BSD is defined in <features.h> if _BSD_SOURCE is defined. +#ifndef _BSD_SOURCE +# define _BSD_SOURCE +#endif + +// 1) need to reset default environment if _BSD_SOURCE is defined +// 2) need to specify POSIX thread interfaces explicitly in glibc 2.0 +// 3) it seems older glibc need this to include the X/Open stuff +#ifndef _GNU_SOURCE +# define _GNU_SOURCE +#endif + +#include <unistd.h> + + +// We are hot - unistd.h should have turned on the specific APIs we requested + + +#ifdef QT_THREAD_SUPPORT +#include <pthread.h> +#endif + +#include <dirent.h> +#include <fcntl.h> +#include <grp.h> +#include <pwd.h> +#include <signal.h> +#include <dlfcn.h> +// KAI C++ has at the moment problems with unloading the TQt plugins. +// So don't unload them as a workaround for now. +#define QT_NO_LIBRARY_UNLOAD + +#include <sys/types.h> +#include <sys/ioctl.h> +#include <sys/ipc.h> +#include <sys/time.h> +#include <sys/shm.h> +#include <sys/socket.h> +#include <sys/stat.h> +#include <sys/wait.h> + +// DNS header files are not fully covered by X/Open specifications. +// In particular nothing is said about res_* :/ +// Header files <netinet/in.h> and <arpa/nameser.h> are not included +// by <resolv.h> on older versions of the GNU C library. Note that +// <arpa/nameser.h> must be included before <resolv.h>. +#include <netinet/in.h> +#include <arpa/nameser.h> +#include <resolv.h> + + +#if !defined(QT_NO_COMPAT) +#define QT_STATBUF struct stat +#define QT_STATBUF4TSTAT struct stat +#define QT_STAT ::stat +#define QT_FSTAT ::fstat +#define QT_STAT_REG S_IFREG +#define QT_STAT_DIR S_IFDIR +#define QT_STAT_MASK S_IFMT +#define QT_STAT_LNK S_IFLNK +#define QT_FILENO fileno +#define QT_OPEN ::open +#define QT_CLOSE ::close +#define QT_LSEEK ::lseek +#define QT_READ ::read +#define QT_WRITE ::write +#define QT_ACCESS ::access +#define QT_GETCWD ::getcwd +#define QT_CHDIR ::chdir +#define QT_MKDIR ::mkdir +#define QT_RMDIR ::rmdir +#define QT_OPEN_RDONLY O_RDONLY +#define QT_OPEN_WRONLY O_WRONLY +#define QT_OPEN_RDWR O_RDWR +#define QT_OPEN_CREAT O_CREAT +#define QT_OPEN_TRUNC O_TRUNC +#define QT_OPEN_APPEND O_APPEND +#endif + +#define QT_SIGNAL_RETTYPE void +#define QT_SIGNAL_ARGS int +#define QT_SIGNAL_IGNORE SIG_IGN + +#if defined(__GLIBC__) && (__GLIBC__ >= 2) +#define QT_SOCKLEN_T socklen_t +#else +#define QT_SOCKLEN_T int +#endif + +#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500) +#define QT_SNPRINTF ::snprintf +#define QT_VSNPRINTF ::vsnprintf +#endif + + +#endif // TQPLATFORMDEFS_H |