Repository navigation
Conversation
zhjwpku
reviewed
Nov 13, 2026
| ## Build with CMake | ||
|
|
||
| Dependencies managed with CMake FetchContent use the pinned sources by default. | ||
| Set `-DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=OPT_IN` to try installed packages before |
Collaborator
There was a problem hiding this comment.
I'm wondering when user set this to OPT_IN with a unsupported installed package, will it pass the cmake configuration phase? If yes, should we error out earlier by adding versions to FIND_PACKAGE_ARGS?
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An installed Arrow package currently overrides the vendored version without a version check. For example, a default configuration on a host with Arrow 23.0.1 uses it even though the dependency toolchain pins Arrow 25.0.0.
Default
FETCHCONTENT_TRY_FIND_PACKAGE_MODEtoNEVERbefore declaring dependencies so FetchContent uses the pinned sources. Preserve explicit overrides and document-DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=OPT_INin both build guides and the provided-Arrow examples.Validation:
OPT_IN. Tests, REST and spdlog were disabled; existing Avro, nanoarrow and utf8proc source directories were reused.git diff --checkpassed.Validation covered configuration and dependency selection; no C++ build or test suite was run.