Skip to content

fix(cmake): change find_dependency from QUIET to REQUIRED for mandatory deps#463

Merged
kcenon merged 1 commit into
mainfrom
fix/cmake-config-find-dependency-required
Mar 17, 2026
Merged

fix(cmake): change find_dependency from QUIET to REQUIRED for mandatory deps#463
kcenon merged 1 commit into
mainfrom
fix/cmake-config-find-dependency-required

Conversation

@kcenon

@kcenon kcenon commented Mar 17, 2026

Copy link
Copy Markdown
Owner

What

Summary

Changes find_dependency(common_system CONFIG QUIET) to REQUIRED in the installed config template, and similarly for container_system within its USE_CONTAINER_SYSTEM guard. This aligns the installed config's dependency requirements with the build-time FATAL_ERROR enforcement.

Change Type

  • Bugfix

Why

Related Issues

Motivation

common_system is mandatory at build time (FATAL_ERROR if missing), but the installed config template used QUIET, silently proceeding when the dependency was absent. Consumers would then get cryptic linker errors instead of a clear configure-time "common_system not found" message.

Where

Files Changed

File Change
cmake/database_system-config.cmake.in QUIETREQUIRED for common_system and container_system

How

Implementation

  • Line 36: find_dependency(common_system CONFIG QUIET)find_dependency(common_system CONFIG REQUIRED)
  • Line 39: find_dependency(container_system CONFIG QUIET)find_dependency(container_system CONFIG REQUIRED) (within USE_CONTAINER_SYSTEM guard)
  • Comment updated: "Ecosystem dependencies (optional)" → "Ecosystem dependencies"

Test Plan

  • find_package(database_system CONFIG) should fail immediately with a clear error when common_system is not installed
  • No regression when all dependencies are correctly installed

…ry deps

common_system is a hard requirement (CMakeLists.txt enforces FATAL_ERROR
if not found), but the installed config template used QUIET, silently
proceeding when the dependency was missing. This caused consumers to get
cryptic linker errors instead of a clear configure-time failure.

Also change container_system to REQUIRED within its USE_CONTAINER_SYSTEM
guard, since the guard already implies the dependency is expected.

Closes #462
@kcenon kcenon merged commit c06d953 into main Mar 17, 2026
28 checks passed
@kcenon kcenon deleted the fix/cmake-config-find-dependency-required branch March 17, 2026 07:19
kcenon added a commit that referenced this pull request Apr 13, 2026
…ry deps (#463)

common_system is a hard requirement (CMakeLists.txt enforces FATAL_ERROR
if not found), but the installed config template used QUIET, silently
proceeding when the dependency was missing. This caused consumers to get
cryptic linker errors instead of a clear configure-time failure.

Also change container_system to REQUIRED within its USE_CONTAINER_SYSTEM
guard, since the guard already implies the dependency is expected.

Closes #462
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(cmake): Change common_system find_dependency from QUIET to REQUIRED in config template

1 participant