ppsspp/Qt/PPSSPP.pro

120 lines
3.2 KiB
Prolog
Raw Normal View History

TARGET = PPSSPPQt
# Main Qt modules
QT += core gui opengl
2014-07-08 19:22:56 +00:00
# PPSSPP Modules
symbian: LIBS += -lCore.lib -lGPU.lib -lCommon.lib -lNative.lib
else: LIBS += -lCore -lGPU -lCommon -lNative
include(Settings.pri)
lessThan(QT_MAJOR_VERSION, 5) {
macx: error(PPSSPP requires Qt5 for OS X but $$[QT_VERSION] was detected.)
else:lessThan(QT_MINOR_VERSION, 7): error(PPSSPP requires Qt 4.7 or newer but Qt $$[QT_VERSION] was detected.)
2013-11-24 03:23:23 +00:00
}
# Extra Qt modules
greaterThan(QT_MAJOR_VERSION,4) {
QT += widgets
mobile_platform: QT += sensors
} else:!maemo5:mobile_platform {
CONFIG += mobility
MOBILITY += sensors
symbian: MOBILITY += systeminfo feedback
}
# External (platform-dependant) libs
macx|equals(PLATFORM_NAME, "linux") {
PRE_TARGETDEPS += $$CONFIG_DIR/libCommon.a $$CONFIG_DIR/libCore.a $$CONFIG_DIR/libGPU.a $$CONFIG_DIR/libNative.a
2014-06-03 07:30:37 +00:00
CONFIG += link_pkgconfig
packagesExist(sdl) {
DEFINES += QT_HAS_SDL
2013-11-24 03:23:23 +00:00
SOURCES += $$P/SDL/SDLJoystick.cpp
HEADERS += $$P/SDL/SDLJoystick.h
PKGCONFIG += sdl
macx {
LIBS += -F/Library/Frameworks -framework SDL
INCLUDEPATH += /Library/Frameworks/SDL.framework/Versions/A/Headers
}
}
}
2014-06-03 07:30:37 +00:00
unix:contains(QT_CONFIG, system-zlib) {
LIBS += -lz
}
# Qt Multimedia (if SDL is not found)
!contains(DEFINES, QT_HAS_SDL) {
lessThan(QT_MAJOR_VERSION,5):!exists($$[QT_INSTALL_HEADERS]/QtMultimedia) {
# Fallback to mobility audio
CONFIG += mobility
MOBILITY += multimedia
}
else: QT += multimedia
}
# Main
SOURCES += $$P/native/base/QtMain.cpp
HEADERS += $$P/native/base/QtMain.h
symbian {
SOURCES += $$P/native/base/SymbianMediaKeys.cpp
HEADERS += $$P/native/base/SymbianMediaKeys.h
}
# UI
SOURCES += $$P/UI/*Screen.cpp \
$$P/UI/*Screens.cpp \
$$P/UI/BackgroundAudio.cpp \
2013-12-05 12:53:54 +00:00
$$P/UI/Store.cpp \
$$P/UI/GamepadEmu.cpp \
$$P/UI/GameInfoCache.cpp \
2014-03-01 15:09:16 +00:00
$$P/UI/NativeApp.cpp \
$$P/UI/OnScreenDisplay.cpp \
2013-12-16 02:45:18 +00:00
$$P/UI/TiltEventProcessor.cpp \
$$P/UI/UIShader.cpp \
$$P/UI/ui_atlas_lowmem.cpp \
$$P/android/jni/TestRunner.cpp
arm:android: SOURCES += $$P/android/jni/ArmEmitterTest.cpp
HEADERS += $$P/UI/*.h
2014-07-16 14:49:48 +00:00
INCLUDEPATH += $$P $$P/Common $$P/native $$P/native/ext $$P/native/ext/glew
mobile_platform: RESOURCES += $$P/Qt/assets.qrc
else {
2014-06-18 04:31:38 +00:00
# TODO: Rewrite Debugger with same backend as Windows version
# Do not use .ui forms. Use Qt5 + C++11 features to minimise code
2014-06-18 04:31:38 +00:00
SOURCES += $$P/Qt/*.cpp $$P/Qt/Debugger/*.cpp
HEADERS += $$P/Qt/*.h $$P/Qt/Debugger/*.h
FORMS += $$P/Qt/Debugger/*.ui
RESOURCES += $$P/Qt/desktop_assets.qrc
2014-06-18 04:31:38 +00:00
INCLUDEPATH += $$P/Qt $$P/Qt/Debugger
# Creating translations should be done by Qt, really
LREL_TOOL = lrelease
# Grab all possible directories (win32/unix)
win32: PATHS = $$split($$(PATH), ;)
else: PATHS = $$split($$(PATH), :)
greaterThan(QT_MAJOR_VERSION, 4) {
for(bin, PATHS): exists($${bin}/$${LREL_TOOL}-qt5): LREL_TOOL=$${bin}/$${LREL_TOOL}-qt5
} else {
for(bin, PATHS): exists($${bin}/$${LREL_TOOL}-qt4): LREL_TOOL=$${bin}/$${LREL_TOOL}-qt4
}
# Translations
TRANSLATIONS = $$files($$P/Qt/languages/ppsspp_*.ts)
lang.name = $$LREL_TOOL ${QMAKE_FILE_IN}
lang.input = TRANSLATIONS
lang.output = ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.qm
lang.commands = $$LREL_TOOL ${QMAKE_FILE_IN}
lang.CONFIG = no_link
QMAKE_EXTRA_COMPILERS += lang
PRE_TARGETDEPS += compiler_lang_make_all
}