Test Plan:
- Check that the new shared libraries are packaged in all platform installers.
- check that plugins are loaded properly on all platforms.
Reviewers: #swift_pilot_client, msutcliffe
Reviewed By: #swift_pilot_client, msutcliffe
Maniphest Tasks: T471
Differential Revision: https://dev.swift-project.org/D79
The config is loaded from json files by qmake, and we define the qmake
function `swiftConfig` for checking whether a feature is enabled.
This function can be directly used in `buildconfig_gen.cpp.in`,
so the trick with C++ comment tokens in variables is not needed.
This aligns the behavior and concept with the 32 bit FSX version. SimConnect
is loaded at runtime, depending on the version being selected.
It also adds a featuren to change the P3D SimConnect version at runtime by
unloading the previous and loading a new one.
ref T349
Previously the FSX/P3D driver tried to link a very specific SimConnect version
from the Windows Assembly cache. This caused issues with machines
which did not have this specific version of SimConnect in the assembly
cache since drivers refused to load without much information. Having a different
version of SimConnect in the assembly cache or even in the bin folder did
not help.
To fix this problem, SimConnect is now loaded and resolved manually at
runtime. This allows to try loading different versions from the assembly
cache or prefer to load the shipped one.
For this, the manifests are linked into the binary's resource section and
activated manually before loading. This has the positive effect, that
loading errors can be handled by code instead of raising a cryptic error and
aborting.
* blackconfig in .pro
* verify function to detect dangling states
* clear remote data when disconnected from network
* there was one problem that the data where not correctly cleaned up and hence new aircraft where not added again after a disconnect/reconnect from network
* it is not yet clear why data happens (dangling data), that is what the debugVerify function is for
Summary:
This fixes issue reported by Klaus in Slack:
> when I change something in the plugin driver, I always have to rebuild the plugins before I can debug again.
Also refactored `libraries.pri` to remove duplication.
Reviewers: #swift_pilot_client, rwinklmeier
Reviewed By: #swift_pilot_client, rwinklmeier
Subscribers: kbasan, jenkins
Tags: #swift_pilot_client
Differential Revision: https://dev.swift-project.org/D31
Summary:
This commit enables P3D-v4 for 64 bit including all dependent libraries.
Those binaries are not yet installed, since they are considered
experimental.
Reviewers: #swift_pilot_client, msutcliffe
Reviewed By: #swift_pilot_client, msutcliffe
Differential Revision: https://dev.swift-project.org/D30
* Motivation: slots no longer required, and in the driver the (small) slot overhead might matter
* renamed some members to better reflect future use
* timer intervals as constexpr
* fixed some typos and comments
Summary:
So far we were linking against the prebuilt FSUIPC user library,
compiled with VS2010 many years ago. The source of this user library is
part of the FSUIPC SDK, so we can benefit from modern compilers and
include it into our source tree.
This version contains some very small wide char fixes compared to the
official FSUIPC SDK source.
It also includes the new 64 bit version.
Reviewers: #swift_pilot_client, msutcliffe
Reviewed By: #swift_pilot_client, msutcliffe
Differential Revision: https://dev.swift-project.org/D29
Summary:
QtConcurrent isn't used any longer in swift code, so we can remove it
from the list of enabled modules. Disabling it causes the QtConcurrent
header path to be removed from the include paths and we no longer
unnecessarily link against it.
Reviewers: msutcliffe
Reviewed By: msutcliffe
Subscribers: jenkins
Differential Revision: https://dev.swift-project.org/D25
* set log flag in hints, so no lock for each aircraft is needed
* as a result log functions have a bool log parameter now
* highlight situation and parts changed