TSP Solver and Generator
src/os.h
Go to the documentation of this file.
00001 
00031 #ifndef OS_H
00032 #define OS_H
00033 
00034 // Some target arch detection.
00040 #if defined(__amd64__) || defined(_M_X64)
00041 #   define ARCH " (AMD 64-bit)"
00042 #elif defined(__ia64__) || defined(_M_IA64)
00043 #   define ARCH " (Intel 64-bit)"
00044 #elif defined(__i386__) || defined(_M_IX86) || defined(_X86_)
00045 #   define ARCH " (Intel x86)"
00046 #elif defined(__powerpc__) || defined(_M_PPC)
00047 #   define ARCH " (PowerPC)"
00048 #elif defined(__arm__) || defined(_M_ARM)
00049 #   define ARCH " (ARM)"
00050 #elif defined(__mips__) || defined(_M_MRX000)
00051 #   define ARCH " (MIPS)"
00052 #else
00053 #   define ARCH ""
00054 #endif // ARCH
00055 
00056 // Target OS detection. Done by Qt, so should work for any compiler.
00067 #ifdef Q_OS_AIX
00068 #   define OS "AIX"
00069 #   define OSID quint8(1)
00070 #elif defined(Q_OS_BSDI)
00071 #   define OS "BSD/OS"
00072 #   define OSID quint8(2)
00073 #elif defined(Q_OS_CYGWIN)
00074 #   define OS "Cygwin"
00075 #   define OSID quint8(3)
00076 #elif defined(Q_OS_DARWIN)
00077 #   define OS "Mac OS (Darwin)"
00078 #   define OSID quint8(4)
00079 #elif defined(Q_OS_DGUX)
00080 #   define OS "DG/UX"
00081 #   define OSID quint8(5)
00082 #elif defined(Q_OS_DYNIX)
00083 #   define OS "DYNIX/ptx"
00084 #   define OSID quint8(6)
00085 #elif defined(Q_OS_FREEBSD)
00086 #   define OS "FreeBSD"
00087 #   define OSID quint8(7)
00088 #elif defined(Q_OS_HPUX)
00089 #   define OS "HP-UX"
00090 #   define OSID quint8(8)
00091 #elif defined(Q_OS_HURD)
00092 #   define OS "GNU Hurd"
00093 #   define OSID quint8(9)
00094 #elif defined(Q_OS_IRIX)
00095 #   define OS "SGI Irix"
00096 #   define OSID quint8(10)
00097 #elif defined(Q_OS_LINUX)
00098 #   define OS "Linux"
00099 #   define OSID quint8(11)
00100 #elif defined(Q_OS_LYNX)
00101 #   define OS "LynxOS"
00102 #   define OSID quint8(12)
00103 #elif defined(Q_OS_NETBSD)
00104 #   define OS "NetBSD"
00105 #   define OSID quint8(13)
00106 #elif defined(Q_OS_OPENBSD)
00107 #   define OS "OpenBSD"
00108 #   define OSID quint8(14)
00109 #elif defined(Q_OS_OS2EMX)
00110 #   define OS "OS/2"
00111 #   define OSID quint8(15)
00112 #elif defined(Q_OS_OSF)
00113 #   define OS "HP Tru64 UNIX"
00114 #   define OSID quint8(16)
00115 #elif defined(Q_OS_QNX)
00116 #   define OS "QNX Neutrino"
00117 #   define OSID quint8(17)
00118 #elif defined(Q_OS_RELIANT)
00119 #   define OS "Reliant UNIX"
00120 #   define OSID quint8(18)
00121 #elif defined(Q_OS_SCO)
00122 #   define OS "SCO OpenServer 5"
00123 #   define OSID quint8(19)
00124 #elif defined(Q_OS_SOLARIS)
00125 #   define OS "Sun Solaris"
00126 #   define OSID quint8(20)
00127 #elif defined(Q_OS_SYMBIAN)
00128 #   define OS "Symbian"
00129 #   define OSID quint8(21)
00130 #elif defined(Q_OS_ULTRIX)
00131 #   define OS "DEC Ultrix"
00132 #   define OSID quint8(22)
00133 #elif defined(Q_OS_UNIXWARE)
00134 #   define OS "UnixWare 7/Open UNIX 8"
00135 #   define OSID quint8(23)
00136 #elif defined(Q_OS_WIN32)
00137 #   define OS "Windows"
00138 #   define OSID quint8(24)
00139 #elif defined(Q_OS_WINCE_WM)
00140 #   define OS "Windows Mobile"
00141 #   define OSID quint8(25)
00142 #elif defined(Q_OS_WINCE)
00143 #   define OS "Windows CE"
00144 #   define OSID quint8(26)
00145 #elif defined(Q_OS_BSD4)
00146 #   define OS "BSD 4.4"
00147 #   define OSID quint8(253)
00148 #elif defined(Q_OS_UNIX)
00149 #   define OS "UNIX BSD/SYSV"
00150 #   define OSID quint8(254)
00151 #else
00152 #   define OS "Unknown"
00153 #   define OSID quint8(255)
00154 #endif // OS
00155 
00157 #define PLATFROM OS ARCH
00158 
00163 #ifdef Q_CC_INTEL
00164 #   define COMPILER "Intel C++"
00165 #elif defined(Q_CC_MSVC)
00166 #   define COMPILER "Microsoft Visual C/C++"
00167 #elif defined(Q_CC_MINGW)
00168 #   define COMPILER "MinGW GCC"
00169 #elif defined(Q_CC_GNU)
00170 #   define COMPILER "GNU C++"
00171 #elif defined(Q_CC_GCCE)
00172 #   define COMPILER "GCCE (Symbian GCCE builds)"
00173 #elif defined(Q_CC_RVCT)
00174 #   define COMPILER "ARM Realview Compiler Suite"
00175 #elif defined(Q_CC_NOKIAX86)
00176 #   define COMPILER "Nokia x86 (Symbian WINSCW builds)"
00177 #else
00178 #   define COMPILER "Unknown"
00179 #endif
00180 
00181 #endif // OS_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Defines