Files
ppsspp/Qt/PPSSPP.pro
T
Peter Tissen b40278fff6 Set Qt to build debug menus on non Linux platforms and fix some debugger crashes
This makes Common.pro and Native.pro use their own distinct object directories
to prevent the two fbo.cpp and sha1.c files repectively to clash into the same
*.obj file.

The registerlist had polled register values of -1 in some cases when resizing
the window. Making sure it doesn't poll values smaller than 0 fixes it.

The memoryview crashed if it was switched into symbol mode outside of the
symbol definition range. Also, under Windows the monospace font wasn't
used because there's not literal font called "monospace" so a font family
hint had to be used.

The UpdateDisassembly() function jumped to the current PC, which sounds
reasonable at first but the issue is that this function gets called when a
breakpoint get set, so if you set a breakpoint somewhere completely
different then you suddenly lose that position for no good reason.

Enable the desktop QT interface for all non ARM QT platforms

make sure the QtMain.cpp in the native submodule is also updated
2013-11-05 13:17:27 +01:00

155 lines
4.3 KiB
Prolog
Executable File

TARGET = PPSSPPQt
VERSION = 0.9.5
# Main Qt modules
QT += core gui opengl
include(Settings.pri)
# Extra Qt modules
linux: CONFIG += link_pkgconfig
win32|greaterThan(QT_MAJOR_VERSION,4) {
QT += multimedia
} else {
linux:packagesExist(QtMultimedia) {
QT += multimedia
} else {
CONFIG += mobility
MOBILITY += multimedia
}
}
greaterThan(QT_MAJOR_VERSION,4): QT += widgets
mobile_platform: MOBILITY += sensors
symbian: MOBILITY += systeminfo feedback
# PPSSPP Libs
symbian: XT=".lib"
else: LIBS += -L$$CONFIG_DIR
LIBS += -lCore$${XT} -lCommon$${XT} -lNative$${XT}
# FFMPEG Path
win32: FFMPEG_DIR = ../ffmpeg/Windows/$${QMAKE_TARGET.arch}/lib/
linux: FFMPEG_DIR = ../ffmpeg/linux/$${QMAKE_TARGET.arch}/lib/
qnx: FFMPEG_DIR = ../ffmpeg/blackberry/armv7/lib/
symbian:FFMPEG_DIR = -l
# External (platform-dependant) libs
win32|symbian: LIBS += $${FFMPEG_DIR}avformat.lib $${FFMPEG_DIR}avcodec.lib $${FFMPEG_DIR}avutil.lib $${FFMPEG_DIR}swresample.lib $${FFMPEG_DIR}swscale.lib
else: LIBS += $${FFMPEG_DIR}libavformat.a $${FFMPEG_DIR}libavcodec.a $${FFMPEG_DIR}libavutil.a $${FFMPEG_DIR}libswresample.a $${FFMPEG_DIR}libswscale.a
win32 {
#Use a fixed base-address under windows
QMAKE_LFLAGS += /FIXED /BASE:"0x00400000"
QMAKE_LFLAGS += /DYNAMICBASE:NO
LIBS += -lwinmm -lws2_32 -lShell32 -lAdvapi32
contains(QMAKE_TARGET.arch, x86_64): LIBS += $$files(../dx9sdk/Lib/x64/*.lib)
else: LIBS += $$files(../dx9sdk/Lib/x86/*.lib)
}
linux {
LIBS += -ldl
PRE_TARGETDEPS += ./libCommon.a ./libCore.a ./libNative.a
packagesExist(sdl) {
DEFINES += QT_HAS_SDL
PKGCONFIG += sdl
}
}
qnx: LIBS += -lscreen
symbian: LIBS += -llibglib -lRemConCoreApi -lRemConInterfaceBase
# Avoids problems with some compilers
unix:!symbian: LIBS += -lz
# Main
SOURCES += ../native/base/QtMain.cpp
HEADERS += ../native/base/QtMain.h
symbian {
SOURCES += ../native/base/SymbianMediaKeys.cpp
HEADERS += ../native/base/SymbianMediaKeys.h
}
# UI
SOURCES += ../UI/*Screen.cpp \
../UI/*Screens.cpp \
../UI/GamepadEmu.cpp \
../UI/GameInfoCache.cpp \
../UI/OnScreenDisplay.cpp \
../UI/UIShader.cpp \
../android/jni/TestRunner.cpp
HEADERS += ../UI/*.h
INCLUDEPATH += .. ../Common ../native
# Use forms UI for desktop platforms
!mobile_platform {
SOURCES += *.cpp
HEADERS += *.h
FORMS += *.ui
RESOURCES += resources.qrc
INCLUDEPATH += ../Qt
# Translations
TRANSLATIONS = $$files(languages/ppsspp_*.ts)
lang.name = lrelease ${QMAKE_FILE_IN}
lang.input = TRANSLATIONS
lang.output = ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.qm
lang.commands = $$[QT_INSTALL_BINS]/lrelease ${QMAKE_FILE_IN}
lang.CONFIG = no_link
QMAKE_EXTRA_COMPILERS += lang
PRE_TARGETDEPS += compiler_lang_make_all
} else {
# Desktop handles the Init separately
SOURCES += ../UI/NativeApp.cpp
}
symbian {
RESOURCES += assets_lowmem.qrc
SOURCES += ../UI/ui_atlas_lowmem.cpp
} else {
RESOURCES += assets.qrc
SOURCES += ../UI/ui_atlas.cpp
}
# Packaging
symbian {
TARGET.UID3 = 0xE0095B1D
DEPLOYMENT.display_name = PPSSPP
vendor_deploy.pkg_prerules = "%{\"Qtness\"}" ":\"Qtness\""
ICON = ../assets/icon.svg
# Folders:
assets.sources = ../flash0 ../assets/langregion.ini
assets.path = E:/PPSSPP
shaders.sources = ../assets/shaders
shaders.path = E:/PPSSPP/PSP
lang.sources = $$files(../lang/*.ini)
# Unsupported languages on Symbian. Slashes differ depending on host.
contains(QMAKE_HOST.os, "Windows"): lang.sources -= ..\\lang/ja_JP.ini ..\\lang/ko_KR.ini ..\\lang/zh_CN.ini ..\\lang/zh_TW.ini
else: lang.sources -= ../lang/ja_JP.ini ../lang/ko_KR.ini ../lang/zh_CN.ini ../lang/zh_TW.ini
lang.path = E:/PPSSPP/lang
DEPLOYMENT += vendor_deploy assets shaders lang
# 268 MB maximum
TARGET.EPOCHEAPSIZE = 0x40000 0x10000000
TARGET.EPOCSTACKSIZE = 0x10000
}
contains(MEEGO_EDITION,harmattan) {
target.path = /opt/PPSSPP/bin
assets.files = ../flash0 ../assets/langregion.ini
assets.path = /opt/PPSSPP
shaders.files = ../assets/shaders
shaders.path = /opt/PPSSPP/PSP
lang.files = $$files(../lang/*.ini)
lang.path = /opt/PPSSPP/lang
desktopfile.files = PPSSPP.desktop
desktopfile.path = /usr/share/applications
icon.files = ../assets/icon-114.png
icon.path = /usr/share/icons/hicolor/114x114/apps
INSTALLS += target assets shaders lang desktopfile icon
# Booster
QMAKE_CXXFLAGS += -fPIC -fvisibility=hidden -fvisibility-inlines-hidden
QMAKE_LFLAGS += -pie -rdynamic
CONFIG += qt-boostable
}