Skip to content

Create fsxcommon separately for each simulator using the right SimConnect version #400

@ltoenning

Description

@ltoenning

Right now, fsxcommon is build using the P3D SimConnect header. This does not enable to use newer feature, e.g. from MSFS2020 or MSFS24.
Further, possibly, the SimConnection version of P3D >4 and MSFS20/24 drifted apart, so the P3D version cannot really be taken as a common ground.

As we would like to utilize these new features, we cannot use a common version and need to build fsxcommon for every simulator. This also gives us greater control over which plugin can access which functionality.

  • Create separate externals_simconnect targets for P3D and MSFS (cmake/simconnect/CMakeLists.txt)
  • Adjust the externals_simconnect targets to directly link against the corresponding SimConnect.dll (or even using the static lib version) (cmake/simconnect/CMakeLists.txt)
  • Build fsxcommon twice, once for P3D and for MSFS, linking to the corresponding externals_simconnect (src/plugins/simulator/fsxcommon/CMakeLists.txt)
  • Remove the dynamic loading of SimConnect and its symbols (src/plugins/simulator/fsxcommon/simconnectsymbols.cpp)

Metadata

Metadata

Labels

MSFSenhancementNew feature or requestsimplifyReduce application complexity

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions