Qt: use an 'ALLFLAGS' variable to keep flags that need to be for C and C++. Fixes .

This commit is contained in:
Sacha 2014-07-07 03:52:22 +10:00
parent a534ac3170
commit 95774f732c

@ -14,37 +14,33 @@ P = $$_PRO_FILE_PWD_/..
INCLUDEPATH += $$P/ext/zlib $$P/Common
symbian {
exists($$P/.git): GIT_VERSION = $$system(git describe --always)
isEmpty(GIT_VERSION): GIT_VERSION = $$VERSION
exists($$P/.git): GIT_VERSION = $$system(git describe --always)
isEmpty(GIT_VERSION): GIT_VERSION = $$VERSION
} else {
# QMake seems to change how it handles quotes with every version. This works for most systems:
exists($$P/.git): GIT_VERSION = '\\"$$system(git describe --always)\\"'
isEmpty(GIT_VERSION): GIT_VERSION = '\\"$$VERSION\\"'
# QMake seems to change how it handles quotes with every version. This works for most systems:
exists($$P/.git): GIT_VERSION = '\\"$$system(git describe --always)\\"'
isEmpty(GIT_VERSION): GIT_VERSION = '\\"$$VERSION\\"'
}
DEFINES += PPSSPP_GIT_VERSION=\"$$GIT_VERSION\"
win32-msvc* {
QMAKE_CXXFLAGS_RELEASE += /O2 /arch:SSE2 /fp:fast
DEFINES += _MBCS GLEW_STATIC _CRT_SECURE_NO_WARNINGS "_VARIADIC_MAX=10"
contains(DEFINES,UNICODE): DEFINES+=_UNICODE
PRECOMPILED_HEADER = $$P/Windows/stdafx.h
PRECOMPILED_SOURCE = $$P/Windows/stdafx.cpp
INCLUDEPATH += .. $$P/ffmpeg/Windows/$${QMAKE_TARGET.arch}/include
contains(DEFINES, UNICODE): DEFINES += _UNICODE
QMAKE_ALLFLAGS_RELEASE += /O2 /fp:fast
} else {
DEFINES += __STDC_CONSTANT_MACROS
QMAKE_CXXFLAGS += -Wno-unused-function -Wno-unused-variable -Wno-multichar -Wno-uninitialized -Wno-ignored-qualifiers -Wno-missing-field-initializers -Wno-unused-parameter
QMAKE_CXXFLAGS += -ffast-math -fno-strict-aliasing
QMAKE_CXXFLAGS += -Wno-unused-function -Wno-unused-variable -Wno-unused-parameter -Wno-multichar -Wno-uninitialized -Wno-ignored-qualifiers -Wno-missing-field-initializers
greaterThan(QT_MAJOR_VERSION,4): CONFIG+=c++11
else: QMAKE_CXXFLAGS += -std=c++11
QMAKE_CFLAGS_RELEASE ~= s/-O.*/
QMAKE_CXXFLAGS_RELEASE ~= s/-O.*/
QMAKE_CFLAGS_RELEASE += -O3
QMAKE_CXXFLAGS_RELEASE += -O3
QMAKE_ALLFLAGS_RELEASE += -O3 -ffast-math
}
# Arch specific
xarch = $$find(QT_ARCH, "86") $$find(QMAKE_TARGET.arch, "86")
macx|!count(xarch, 0) {
!win32-msvc*: QMAKE_CXXFLAGS += -msse2
contains(QT_ARCH, ".*86.*")|contains(QMAKE_TARGET.arch, ".*86.*") {
!win32-msvc*: QMAKE_ALLFLAGS += -msse2
else: QMAKE_ALLFLAGS += /arch:SSE2
} else { # Assume ARM
DEFINES += ARM
CONFIG += arm
@ -53,10 +49,8 @@ arm:!symbian {
CONFIG += armv7
QMAKE_CFLAGS_RELEASE ~= s/-mfpu.*/
QMAKE_CFLAGS_DEBUG ~= s/-mfpu.*/
QMAKE_CFLAGS_RELEASE += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -ffast-math
QMAKE_CFLAGS_DEBUG += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -ffast-math
QMAKE_CXXFLAGS_RELEASE += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -ffast-math
QMAKE_CXXFLAGS_DEBUG += -march=armv7-a -mtune=cortex-a8 -mfpu=neon -ftree-vectorize -ffast-math
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
}
contains(QT_CONFIG, opengles.) {
@ -72,6 +66,11 @@ contains(QT_CONFIG, opengles.) {
contains(MEEGO_EDITION,harmattan): DEFINES += "_SYS_UCONTEXT_H=1"
maemo: DEFINES += MAEMO
win32 {
PRECOMPILED_HEADER = $$P/Windows/stdafx.h
PRECOMPILED_SOURCE = $$P/Windows/stdafx.cpp
INCLUDEPATH += $$P $$P/ffmpeg/Windows/$${QMAKE_TARGET.arch}/include
}
macx {
QMAKE_MAC_SDK=macosx10.9
INCLUDEPATH += $$P/ffmpeg/macosx/x86_64/include
@ -113,3 +112,11 @@ symbian {
maemo {
DEFINES += __GL_EXPORTS
}
# Handle flags for both C and C++
QMAKE_CFLAGS += $$QMAKE_ALLFLAGS
QMAKE_CXXFLAGS += $$QMAKE_ALLFLAGS
QMAKE_CFLAGS_DEBUG += $$QMAKE_ALLFLAGS_DEBUG
QMAKE_CXXFLAGS_DEBUG += $$QMAKE_ALLFLAGS_DEBUG
QMAKE_CFLAGS_RELEASE += $$QMAKE_ALLFLAGS_RELEASE
QMAKE_CXXFLAGS_RELEASE += $$QMAKE_ALLFLAGS_RELEASE