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.
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.
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
The big swift.pro is refactored by the correct usage of SUBDIRS
template. The following additional changes are made:
- Removed '_' from all targets and folder names
- Aligned parent folder and target name
refs #461