1 #ifndef CPUARCH_H 2 #define CPUARCH_H 3 4 #include <QtGlobal> 5 6 #if QT_VERSION < QT_VERSION_CHECK(5, 4, 0) 7 8 #if defined(__arm64__) 9 #define CPU_ARCH_STR "arm64" 10 #elif defined(__arm__) || defined(__TARGET_ARCH_ARM) || defined(_M_ARM) 11 #define CPU_ARCH_STR "arm" 12 #elif defined(__x86_64) || defined(__x86_64__) || defined(__amd64) \ 13 || defined(_M_X64) 14 #define CPU_ARCH_STR "x86_64" 15 #elif defined(__i386) || defined(__i386__) || defined(_M_IX86) 16 #define CPU_ARCH_STR "i386" 17 #elif defined(__ia64) || defined(__ia64__) || defined(_M_IA64) 18 #define CPU_ARCH_STR "ia64" 19 #elif defined(_MIPS_ARCH_MIPS64) || defined(__mips64) 20 #define CPU_ARCH_STR "mips64" 21 #elif defined(__mips) || defined(__mips__) || defined(_M_MRX000) 22 #define CPU_ARCH_STR "mips" 23 #elif defined(__ppc64__) || defined(__powerpc64__) || defined(__64BIT__) 24 #define CPU_ARCH_STR "power64" 25 #elif defined(__ppc__) || defined(__ppc) || defined(__powerpc__) \ 26 || defined(_ARCH_COM) || defined(_ARCH_PWR) || defined(_ARCH_PPC) \ 27 || defined(_M_MPPC) || defined(_M_PPC) 28 #define CPU_ARCH_STR "power" 29 #else 30 #define CPU_ARCH_STR "unknown" 31 #endif 32 33 #define CPU_ARCH QString(CPU_ARCH_STR) 34 35 #else // QT_VERSION < 5.4 36 37 #include <QSysInfo> 38 #define CPU_ARCH QSysInfo::buildCpuArchitecture() 39 40 #endif // QT_VERSION < 5.4 41 42 #endif // CPUARCH_H 43