ppsspp/Qt/Platform/ArchDetection.pri
2014-11-19 08:51:15 +10:00

51 lines
1.3 KiB
Plaintext

PLATFORM_ARCH="generic"
# Override some bad defaults
symbian: QMAKE_TARGET.arch=armv6
contains(QT_ARCH, ".*86.*")|contains(QMAKE_TARGET.arch, ".*86.*") {
!win32-msvc*: QMAKE_ALLFLAGS += -msse2
else: QMAKE_ALLFLAGS += /arch:SSE2
CONFIG += i86
contains(QT_ARCH, x86_64)|contains(QMAKE_TARGET.arch, x86_64) {
PLATFORM_ARCH = x86_64
DEFINES += _M_X64 _ARCH_64
}
else {
PLATFORM_ARCH = x86
DEFINES += _M_IX86 _ARCH_32
}
} else:contains(QT_ARCH, ".*arm.*")|contains(QMAKE_TARGET.arch, ".*arm.*") {
DEFINES += ARM _ARCH_32
CONFIG += arm
# Will need to see how QT_ARCH and QMAKE_TARGET.arch are populated for various ARM platforms.
symbian: PLATFORM_ARCH="armv6"
else {
PLATFORM_ARCH="armv7"
CONFIG += armv7
QMAKE_CFLAGS_RELEASE ~= s/-mfpu.*/
QMAKE_CFLAGS_DEBUG ~= s/-mfpu.*/
QMAKE_ALLFLAGS_DEBUG += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize
QMAKE_ALLFLAGS_RELEASE += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize
}
# TODO: aarch32/64?
} else:contains(QT_ARCH, ".*mips.*") {
DEFINES += MIPS
CONFIG += mips
PLATFORM_ARCH="mips32"
DEFINES += _ARCH_32
} else {
# Generic
warning("You are using an untested arch: $${QT_ARCH}. Only x86 and ARM CPUs are supported")
DEFINES += GENERIC_ARCH
CONFIG += generic
PLATFORM_ARCH=$${QT_ARCH}
DEFINES += _ARCH_32
}
# Odd one out
ios: PLATFORM_ARCH="universal"