Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DRAFT] Replace Conan with vcpkg #356

Draft
wants to merge 8 commits into
base: develop
Choose a base branch
from
Draft

[DRAFT] Replace Conan with vcpkg #356

wants to merge 8 commits into from

Conversation

Twisol
Copy link
Collaborator

@Twisol Twisol commented Nov 10, 2024

  • Tickets addressed: N/A
  • Review: By commit
  • Merge strategy: Merge (no squash)

Description

This PR replaces the Conan-based build and dependency orchestration with a simpler vcpkg solution. This has the following intended benefits:

  • Better interaction with GitHub Actions build caches;
  • Shorter, fewer, and more memorable command-line invocations;
  • Replacement of a layer "on top of" CMake (conan) with a layer "integrated into" CMake (vcpkg), reducing the number of distinct cognitive contexts that need to be juggled; and
  • Removal of our dependence on an outdated version of Conan.

(There's also a deprecation warning removal in the first commit, which can be easily pulled out into a separate PR if desired.)

Verification

Documentation

  • TODO: Update (and disseminate) build instructions using CMake (and its presets files) rather than Conan.

Future work

  • The CMakeLists.txt files could still be refactored and simplified pretty drastically
  • Investigate failure to cache the gtk2.0 package. One possible remedy is just not using GTK -- I threw together a Dockerfile that builds Basilisk unchanged with a collection of smaller packages instead of all of gtk2.0.
  • Consider pre-building a Docker image with all of the system-level and Python-level dependencies, and have the CI use that image so that our CI time is just Basilisk build and test.

@Twisol Twisol requested a review from patkenneally November 10, 2024 02:59
@Twisol Twisol force-pushed the feature/vcpkg branch 5 times, most recently from bfbdd1b to 141d0ea Compare November 14, 2024 22:38
@Twisol Twisol force-pushed the feature/vcpkg branch 2 times, most recently from 92ff138 to 8ca9b3e Compare December 7, 2024 21:22
@Twisol Twisol force-pushed the feature/vcpkg branch 2 times, most recently from a196197 to 15cc5d9 Compare December 8, 2024 00:32
@Twisol
Copy link
Collaborator Author

Twisol commented Dec 8, 2024

Build cache :) from here:

Restored 59 package(s) from GitHub Actions Cache in 25 s. Use --debug to see more details.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant