Skip to content

Third Party Dependency Management

Lars Toenning edited this page Apr 7, 2026 · 1 revision

We use Conan 2 to manage most third-party dependencies.

The following dependencies are not managed via Conan:

  • SimConnect
  • X-Plane SDK

For local (developer) builds

Install Conan2 and download all artifacts from Conan Center or built them by yourself as described in the build instructions.

Warning

Our default CMake presets assume, that the conan CMake files will will be placed in a build_conan subfolder. Either follow the build instructions carefully or adjust the path to your likings.

For GitHub Action builds

In CI, dependencies are not built on the fly. Instead, prebuilt artifacts are downloaded from our Artifactory instance.

  • Artifacts are stored in our internal Artifactory
  • They are built via GitHub Actions in the swift-project/deps repository
  • Recipes are based on Conan Center but are manually mirrored and pinned in our Artifactory

Adding or Updating Dependencies

To add a new dependency (or update an existing one), you must first upload the corresponding recipe to our Artifactory.

  1. Ensure the following remotes are configured:
  • Conan Center
  • swift_artifactory (our internal conan-local remote)
  1. Download the recipe from Conan Center:
conan download --only-recipe meson/1.2.2 -r conancenter
  1. Upload the recipe to our Artifactory:
conan upload meson/1.2.2 -r swift_artifactory --only-recipe
  1. Use the recipe in the swift-project/deps repository to build and publish the binary artifact.

Clone this wiki locally