mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-22 14:55:36 +08:00
73
install.pri
73
install.pri
@@ -23,8 +23,19 @@ win32 {
|
||||
qt5_target.path = $${PREFIX}/bin
|
||||
QT5_LIBRARY_DIR = $$[QT_INSTALL_BINS]
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
else:macx {
|
||||
# OSX workaround using rsync. Otherwise all headers are also copied.
|
||||
qt5_target.path = $${PREFIX}/lib/QtCore.framework
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtCore.framework/ $${PREFIX}/lib/QtCore.framework/ &&
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtGui.framework/ $${PREFIX}/lib/QtGui.framework/ &&
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtNetwork.framework/ $${PREFIX}/lib/QtNetwork.framework/ &&
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtDBus.framework/ $${PREFIX}/lib/QtDBus.framework/ &&
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtXml.framework/ $${PREFIX}/lib/QtXml.framework/ &&
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtMultimedia.framework/ $${PREFIX}/lib/QtMultimedia.framework/ &&
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtSvg.framework/ $${PREFIX}/lib/QtSvg.framework/ &&
|
||||
qt5_target.extra += rsync -avz --exclude \'Headers*\' --exclude \'*debug*\' $$[QT_INSTALL_LIBS]/QtWidgets.framework/ $${PREFIX}/lib/QtWidgets.framework/
|
||||
}
|
||||
else:unix: {
|
||||
QT5_LIBRARIES *= libQt5Core.so.5
|
||||
QT5_LIBRARIES *= libQt5DBus.so.5
|
||||
QT5_LIBRARIES *= libQt5Gui.so.5
|
||||
@@ -56,13 +67,9 @@ INSTALLS += qt5_target
|
||||
|
||||
############### Install Qt5 platform plugins ##############
|
||||
|
||||
win32 {
|
||||
QT5_PLATFORM_PLUGINS *= qwindows$${DLL_DEBUG_SUFFIX}.dll
|
||||
}
|
||||
|
||||
unix:!macx {
|
||||
QT5_PLATFORM_PLUGINS *= libqxcb.so
|
||||
}
|
||||
win32: QT5_PLATFORM_PLUGINS *= qwindows$${DLL_DEBUG_SUFFIX}.dll
|
||||
else:macx: QT5_PLATFORM_PLUGINS *= libqcocoa.dylib
|
||||
else:unix:QT5_PLATFORM_PLUGINS *= libqxcb.so
|
||||
|
||||
qt5_plugin_target.path = $${PREFIX}/bin/platforms
|
||||
|
||||
@@ -74,14 +81,16 @@ for (PLUGIN, QT5_PLATFORM_PLUGINS) {
|
||||
|
||||
INSTALLS += qt5_plugin_target
|
||||
|
||||
|
||||
############### Install DBus ##############
|
||||
|
||||
win32-g++ {
|
||||
DBUS_BINARY_SOURCE_DIR = $$[QT_INSTALL_BINS]
|
||||
DBUS_BINARIES *= libdbus-1-3.dll
|
||||
DBUS_BINARIES *= dbus-daemon.exe
|
||||
dbus_target.path = $${PREFIX}/bin
|
||||
dbus_binary_target.path = $${PREFIX}/bin
|
||||
|
||||
DBUS_LIBARY_SOURCE_DIR = $$[QT_INSTALL_BINS]
|
||||
DBUS_LIBRARIES *= libdbus-1-3.dll
|
||||
dbus_library_target.path = $${PREFIX}/bin
|
||||
|
||||
DBUS_CONFIG_SOURCE_DIR = $$[QT_INSTALL_BINS]/..
|
||||
DBUS_CONFIG_FILES *= share/dbus-1/*
|
||||
@@ -90,20 +99,44 @@ win32-g++ {
|
||||
|
||||
win32-msvc2015 {
|
||||
DBUS_BINARY_SOURCE_DIR = $$[QT_INSTALL_BINS]
|
||||
DBUS_BINARIES *= expat.dll
|
||||
DBUS_BINARIES *= dbus-1-3.dll
|
||||
DBUS_BINARIES *= dbus-daemon.exe
|
||||
dbus_target.path = $${PREFIX}/bin
|
||||
dbus_binary_target.path = $${PREFIX}/bin
|
||||
|
||||
DBUS_LIBARY_SOURCE_DIR = $$[QT_INSTALL_BINS]
|
||||
DBUS_LIBRARIES *= expat.dll
|
||||
DBUS_LIBRARIES *= dbus-1-3.dll
|
||||
dbus_library_target.path = $${PREFIX}/bin
|
||||
|
||||
DBUS_CONFIG_SOURCE_DIR = $$[QT_INSTALL_BINS]/..
|
||||
DBUS_CONFIG_FILES *= share/dbus-1/*
|
||||
dbus_config_target.path = $${PREFIX}/share/dbus-1
|
||||
}
|
||||
|
||||
macx {
|
||||
DBUS_BINARY_SOURCE_DIR = /usr/local/bin
|
||||
DBUS_BINARIES *= dbus-daemon
|
||||
dbus_binary_target.path = $${PREFIX}/bin
|
||||
|
||||
DBUS_LIBARY_SOURCE_DIR = /usr/local/lib
|
||||
DBUS_LIBRARIES *= libdbus-1.3.dylib
|
||||
dbus_library_target.path = $${PREFIX}/lib
|
||||
|
||||
DBUS_CONFIG_SOURCE_DIR = /usr/local/share/dbus-1
|
||||
DBUS_CONFIG_FILES *= session.conf
|
||||
DBUS_CONFIG_FILES *= system.conf
|
||||
dbus_config_target.path = $${PREFIX}/share/dbus-1
|
||||
}
|
||||
|
||||
for (BINARY, DBUS_BINARIES) {
|
||||
BINARY_PATH = $${DBUS_BINARY_SOURCE_DIR}/$${BINARY}
|
||||
!exists($$BINARY_PATH): error("Cannot find $${BINARY_PATH}")
|
||||
dbus_target.files *= $${BINARY_PATH}
|
||||
dbus_binary_target.files *= $${BINARY_PATH}
|
||||
}
|
||||
|
||||
for (LIBRARY, DBUS_LIBRARIES) {
|
||||
LIBRARY_PATH = $${DBUS_LIBARY_SOURCE_DIR}/$${LIBRARY}
|
||||
!exists($$LIBRARY_PATH): error("Cannot find $${LIBRARY_PATH}")
|
||||
dbus_library_target.files *= $${LIBRARY_PATH}
|
||||
}
|
||||
|
||||
for (DBUS_CONFIG_FILE, DBUS_CONFIG_FILES) {
|
||||
@@ -112,7 +145,7 @@ for (DBUS_CONFIG_FILE, DBUS_CONFIG_FILES) {
|
||||
dbus_config_target.files *= $${DBUS_CONFIG_FILE_PATH}
|
||||
}
|
||||
|
||||
win32: INSTALLS += dbus_target dbus_config_target
|
||||
win32|macx: INSTALLS += dbus_binary_target dbus_library_target dbus_config_target
|
||||
|
||||
############### Install VC runtime ##############
|
||||
|
||||
@@ -183,11 +216,13 @@ bitrock_builder_bin = $$(BITROCK_BUILDER)
|
||||
|
||||
create_updater.depends = copy_installer_project
|
||||
win32: create_updater.commands = $${bitrock_customize_bin} build $${bitrock_autoupdateproject} windows
|
||||
unix:!macx: create_updater.commands = $${bitrock_customize_bin} build $${bitrock_autoupdateproject} linux-x64
|
||||
else:macx: create_updater.commands = $${bitrock_customize_bin} build $${bitrock_autoupdateproject} osx
|
||||
else:unix: create_updater.commands = $${bitrock_customize_bin} build $${bitrock_autoupdateproject} linux-x64
|
||||
QMAKE_EXTRA_TARGETS += create_updater
|
||||
|
||||
create_installer.depends = create_updater
|
||||
win32: create_installer.commands = $${bitrock_builder_bin} build $${bitrock_project} windows --setvars project.outputDirectory=$$shell_path($${PREFIX}/..)
|
||||
unix:!macx: create_installer.commands = $${bitrock_builder_bin} build $${bitrock_project} linux-x64 --setvars project.outputDirectory=$$shell_path($${PREFIX}/..)
|
||||
else:macx: create_installer.commands = $${bitrock_builder_bin} build $${bitrock_project} osx --setvars project.outputDirectory=$$shell_path($${PREFIX}/..)
|
||||
else:unix: create_installer.commands = $${bitrock_builder_bin} build $${bitrock_project} linux-x64 --setvars project.outputDirectory=$$shell_path($${PREFIX}/..)
|
||||
QMAKE_EXTRA_TARGETS += create_installer
|
||||
}
|
||||
|
||||
@@ -5,11 +5,24 @@
|
||||
equals (TEMPLATE, lib) {
|
||||
# Uncomment line below to supress the default RPATH
|
||||
# QMAKE_LFLAGS_RPATH =
|
||||
QMAKE_LFLAGS *= '-Wl,-rpath,\'\$$ORIGIN\''
|
||||
|
||||
macx: QMAKE_LFLAGS_SONAME = -Wl,-install_name,@rpath/
|
||||
else:unix: QMAKE_LFLAGS *= '-Wl,-rpath,\'\$$ORIGIN\''
|
||||
}
|
||||
|
||||
equals (TEMPLATE, app) {
|
||||
QMAKE_LFLAGS *= '-Wl,-rpath,\'\$$ORIGIN/../lib\''
|
||||
# Uncomment line below to supress the default RPATH
|
||||
# QMAKE_LFLAGS_RPATH =
|
||||
|
||||
# Add rpath to externals to run tests without installing.
|
||||
# DYLD_LIBRARY_PATH isn't working anymore since OS X 10.11.
|
||||
unix: QMAKE_LFLAGS *= '-Wl,-rpath,\'$$EXTERNALSDIR\''
|
||||
|
||||
macx {
|
||||
contains(CONFIG, app_bundle): QMAKE_LFLAGS *= -Wl,-rpath,@executable_path/../../../../lib/
|
||||
else: QMAKE_LFLAGS *= -Wl,-rpath,@executable_path/../lib/
|
||||
}
|
||||
else:unix: QMAKE_LFLAGS *= '-Wl,-rpath,\'\$$ORIGIN/../lib\''
|
||||
}
|
||||
|
||||
################################
|
||||
|
||||
@@ -3,7 +3,7 @@ LIBS *= -L$$DestRoot/lib
|
||||
unix:!macx {
|
||||
# Set the rpath-link to find dependent shared libraries when linking
|
||||
# Note: This does not add any rpath into the binaries.
|
||||
LIBS += -Wl,-rpath-link,$$DestRoot/lib
|
||||
LIBS += -Wl,-rpath-link,$$DestRoot/lib -Wl,-rpath-link,$$[QT_INSTALL_LIBS]
|
||||
}
|
||||
|
||||
blackgui {
|
||||
|
||||
@@ -8,7 +8,6 @@ TEMPLATE = app
|
||||
CONFIG += console
|
||||
CONFIG -= app_bundle
|
||||
CONFIG += blackmisc blackcore
|
||||
CONFIG -= app_bundle
|
||||
|
||||
DEPENDPATH += . $$SourceRoot/src/blackmisc $$SourceRoot/src/blackcore
|
||||
INCLUDEPATH += . $$SourceRoot/src
|
||||
|
||||
@@ -6,7 +6,6 @@ TARGET = sampleblackmiscsim
|
||||
TEMPLATE = app
|
||||
|
||||
CONFIG += console
|
||||
CONFIG -= app_bundle
|
||||
CONFIG += blackmisc blacksim blackcore
|
||||
CONFIG -= app_bundle
|
||||
|
||||
|
||||
@@ -8,7 +8,6 @@ TEMPLATE = app
|
||||
CONFIG += console
|
||||
CONFIG -= app_bundle
|
||||
CONFIG += blackmisc blackcore
|
||||
CONFIG -= app_bundle
|
||||
|
||||
DEPENDPATH += . $$SourceRoot/src
|
||||
INCLUDEPATH += . $$SourceRoot/src
|
||||
|
||||
@@ -7,9 +7,7 @@ greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
||||
TARGET = samplehotkey
|
||||
TEMPLATE = app
|
||||
|
||||
CONFIG -= app_bundle
|
||||
CONFIG += blackmisc blackinput blackcore blackgui
|
||||
CONFIG -= app_bundle
|
||||
|
||||
DEPENDPATH += . $$SourceRoot/src
|
||||
INCLUDEPATH += . $$SourceRoot/src
|
||||
|
||||
@@ -6,7 +6,6 @@ TARGET = sampleweatherdata
|
||||
TEMPLATE = app
|
||||
|
||||
CONFIG += console
|
||||
CONFIG -= app_bundle
|
||||
CONFIG += blackmisc blackcore
|
||||
CONFIG -= app_bundle
|
||||
|
||||
|
||||
@@ -436,6 +436,14 @@ namespace BlackCore
|
||||
}
|
||||
}
|
||||
|
||||
QString CApplication::applicationDirPath()
|
||||
{
|
||||
QString appDirectoryString(qApp->applicationDirPath());
|
||||
if (appDirectoryString.endsWith("Contents/MacOS")) { appDirectoryString += "/../../.."; }
|
||||
QDir appDirectory(appDirectoryString);
|
||||
return appDirectory.absolutePath();
|
||||
}
|
||||
|
||||
bool CApplication::useContexts(const CCoreFacadeConfig &coreConfig)
|
||||
{
|
||||
Q_ASSERT_X(this->m_parsed, Q_FUNC_INFO, "Call this function after parsing");
|
||||
|
||||
@@ -158,6 +158,10 @@ namespace BlackCore
|
||||
//! Clear the caches
|
||||
static QStringList clearCaches();
|
||||
|
||||
//! Returns the directory of the application. In contrast to QCoreApplication::applicationDirPath()
|
||||
//! it takes Mac OS X app bundles into account and returns the directory of the bundle.
|
||||
static QString applicationDirPath();
|
||||
|
||||
// ----------------------- parsing ----------------------------------------
|
||||
|
||||
//! \name parsing of command line options
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
*/
|
||||
|
||||
#include "blackcore/pluginmanager.h"
|
||||
#include "blackcore/application.h"
|
||||
#include "blackmisc/logmessage.h"
|
||||
#include "blackmisc/statusmessage.h"
|
||||
|
||||
@@ -54,7 +55,7 @@ namespace BlackCore
|
||||
|
||||
QString IPluginManager::pluginDirectory() const
|
||||
{
|
||||
return qApp->applicationDirPath() % QStringLiteral("/plugins");
|
||||
return sApp->applicationDirPath() % QStringLiteral("/plugins");
|
||||
}
|
||||
|
||||
bool IPluginManager::isValid(const QJsonObject &metadata) const
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
* contained in the LICENSE file.
|
||||
*/
|
||||
|
||||
#include "blackcore/application.h"
|
||||
#include "blackcore/pluginmanagersimulator.h"
|
||||
#include "blackcore/simulator.h"
|
||||
|
||||
@@ -134,7 +135,7 @@ namespace BlackCore
|
||||
|
||||
QString CPluginManagerSimulator::pluginDirectory() const
|
||||
{
|
||||
return qApp->applicationDirPath() % QStringLiteral("/plugins/simulator");
|
||||
return sApp->applicationDirPath() % QStringLiteral("/plugins/simulator");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
* contained in the LICENSE file.
|
||||
*/
|
||||
|
||||
#include "blackcore/application.h"
|
||||
#include "blackcore/pluginmanagerweatherdata.h"
|
||||
#include "blackcore/weatherdata.h"
|
||||
|
||||
@@ -66,7 +67,7 @@ namespace BlackCore
|
||||
|
||||
QString CPluginManagerWeatherData::pluginDirectory() const
|
||||
{
|
||||
return qApp->applicationDirPath() % QStringLiteral("/plugins/weatherdata");
|
||||
return sApp->applicationDirPath() % QStringLiteral("/plugins/weatherdata");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -68,6 +68,15 @@ namespace BlackMisc
|
||||
#endif
|
||||
}
|
||||
|
||||
bool CBuildConfig::isRunningOnMacOSXPlatform()
|
||||
{
|
||||
#ifdef Q_OS_OSX
|
||||
return true;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
bool CBuildConfig::isDebugBuild()
|
||||
{
|
||||
#ifdef QT_DEBUG
|
||||
@@ -119,10 +128,27 @@ namespace BlackMisc
|
||||
return s;
|
||||
}
|
||||
|
||||
bool isAppBundle()
|
||||
{
|
||||
QDir bundleDir(CBuildConfig::getApplicationDir());
|
||||
bundleDir.cd("../..");
|
||||
static const bool isBundled = QFileInfo(bundleDir.absolutePath()).isBundle();
|
||||
return isBundled;
|
||||
}
|
||||
|
||||
QString getSwiftResourceDirImpl()
|
||||
{
|
||||
QDir dir(CBuildConfig::getApplicationDir());
|
||||
if (dir.cdUp() && dir.cd("data"))
|
||||
bool success = true;
|
||||
|
||||
static const bool appBundle = isAppBundle();
|
||||
if (CBuildConfig::isRunningOnMacOSXPlatform() && appBundle)
|
||||
{
|
||||
success = dir.cd("../../../../data");
|
||||
}
|
||||
else { success = dir.cd("../data"); }
|
||||
|
||||
if (success)
|
||||
{
|
||||
Q_ASSERT_X(dir.exists(), Q_FUNC_INFO, "missing dir");
|
||||
return dir.absolutePath();
|
||||
|
||||
@@ -74,6 +74,9 @@ namespace BlackMisc
|
||||
//! Running on Windows NT platform?
|
||||
static bool isRunningOnWindowsNtPlatform();
|
||||
|
||||
//! Running on Mac OS X platform?
|
||||
static bool isRunningOnMacOSXPlatform();
|
||||
|
||||
//! Application directory where current application is located
|
||||
//! \todo Move to to CApplication
|
||||
static const QString &getApplicationDir();
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
*/
|
||||
|
||||
#include "simulatorxplaneconfigwindow.h"
|
||||
#include "blackcore/application.h"
|
||||
#include "blackmisc/dbusserver.h"
|
||||
#include "blackmisc/fileutils.h"
|
||||
#include "blackmisc/simulation/xplane/xplaneutil.h"
|
||||
@@ -32,7 +33,7 @@ namespace
|
||||
{
|
||||
QString xBusOriginDir()
|
||||
{
|
||||
return QCoreApplication::applicationDirPath() % QStringLiteral("/../xbus");
|
||||
return sApp->applicationDirPath() % QStringLiteral("/../xbus");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
load(common_pre)
|
||||
|
||||
QT += core dbus widgets
|
||||
QT += core dbus network widgets
|
||||
|
||||
TARGET = simulatorxplaneconfig
|
||||
TEMPLATE = lib
|
||||
|
||||
@@ -11,7 +11,6 @@ SOURCES += *.cpp
|
||||
HEADERS += *.h
|
||||
FORMS += *.ui
|
||||
CONFIG += blackmisc blacksound blackinput blackcore blackgui
|
||||
CONFIG -= app_bundle
|
||||
|
||||
DEPENDPATH += . $$SourceRoot/src/blackmisc \
|
||||
$$SourceRoot/src/blacksound \
|
||||
|
||||
@@ -11,8 +11,6 @@ SOURCES += *.cpp
|
||||
HEADERS += *.h
|
||||
FORMS += *.ui
|
||||
CONFIG += blackmisc blacksound blackinput blackcore blackgui
|
||||
CONFIG -= app_bundle
|
||||
|
||||
|
||||
DEPENDPATH += . $$SourceRoot/src/blackmisc \
|
||||
$$SourceRoot/src/blacksound \
|
||||
|
||||
@@ -11,13 +11,6 @@ SOURCES += *.cpp
|
||||
HEADERS += *.h
|
||||
FORMS += *.ui
|
||||
CONFIG += blackmisc blacksound blackinput blackcore blackgui
|
||||
CONFIG -= app_bundle
|
||||
|
||||
macx {
|
||||
deployment.files = ../blackgui/qss
|
||||
deployment.path = Contents/MacOS
|
||||
QMAKE_BUNDLE_DATA += deployment
|
||||
}
|
||||
|
||||
DEPENDPATH += . $$SourceRoot/src/blackmisc \
|
||||
$$SourceRoot/src/blacksound \
|
||||
|
||||
@@ -11,13 +11,6 @@ SOURCES += *.cpp
|
||||
HEADERS += *.h
|
||||
FORMS += *.ui
|
||||
CONFIG += blackmisc blacksound blackinput blackcore blackgui
|
||||
CONFIG -= app_bundle
|
||||
|
||||
macx {
|
||||
deployment.files = ../blackgui/qss
|
||||
deployment.path = Contents/MacOS
|
||||
QMAKE_BUNDLE_DATA += deployment
|
||||
}
|
||||
|
||||
DEPENDPATH += . $$SourceRoot/src/blackmisc \
|
||||
$$SourceRoot/src/blacksound \
|
||||
|
||||
Reference in New Issue
Block a user