Skip to content

feat(build)!: select what gets built with conan options - #91

Open
EnriqueParodi wants to merge 1 commit into
mainfrom
feat/conan-build-selection
Open

feat(build)!: select what gets built with conan options#91
EnriqueParodi wants to merge 1 commit into
mainfrom
feat/conan-build-selection

Conversation

@EnriqueParodi

Copy link
Copy Markdown
Collaborator

Conan decides what the build contains and therefore what it fetches: mode picks
the components, and the with_* flags cover examples, tests, clang-tidy, coverage,
sanitizers and the documentation. A basic build resolves 19 dependencies where a
full one resolves 29, so a build without the explorer no longer downloads imgui,
SDL and opengl to leave them unused. Components keep a cmake guard, which is how a
developer skips one for a while.

Breaking: SEN_DISABLE_EXTRA_COMPONENTS and the ENABLE_* environment variables
are gone; use the matching conan options.

Conan decides what the build contains, and therefore which dependencies it
fetches: mode picks the components, and the with_* flags cover examples, tests,
clang-tidy, coverage, sanitizers and the documentation. A basic build resolves
19 dependencies where a full one resolves 29, so a build without the explorer
no longer downloads imgui, SDL and opengl to leave them unused.

Components carry a guard that reads SEN_BUILD_<NAME>, which is what a developer
overrides at the cmake step to skip one for a while. Enabling a component that
the mode left out is not possible that way, because conan never fetched what it
needs.

BREAKING CHANGE: SEN_DISABLE_EXTRA_COMPONENTS is gone; use -o sen/*:mode=basic.
The ENABLE_CT, ENABLE_COVERAGE, ENABLE_EXAMPLES, ENABLE_TESTS, ENABLE_ASAN and
ENABLE_TSAN environment variables are no longer read; use the matching options.
@EnriqueParodi
EnriqueParodi force-pushed the feat/conan-build-selection branch from 8539957 to 86accf0 Compare August 20, 2026 11:26
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