Story: Silence the configure warnings on the site and macOS builds

Table of Contents

This page documents a story in Sprint 28. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

1. Goal

The site configure and the macOS configure report no warning that the repository causes.

2. Status

Field Value
State DONE
Parent sprint Sprint 28
Now Nothing.
Waiting on Nothing.
Next None.
Last touched 2026-10-15

3. Acceptance

  • A fresh cmake –preset linux-doc-only reports no unused-cli warning.
  • Info.plist renders the project version instead of an empty string.
  • Every compiling preset still receives the compiler and vcpkg cache variables.

4. Tasks

Task State Start End Description
Scaffold story: Silence the configure warnings on the site and macOS builds DONE 2026-10-15 2026-10-15 Story scaffolding rides this task: documents, sprint wiring, and the scaffold PR. Close it before merging that PR.
Split the doc-only preset off the compiler variables and fix the plist version DONE 2026-10-15 2026-10-15 Initial task for: Silence the configure warnings on the site and macOS builds

5. Decisions

  • A doc-only configure must not inherit the compiler variables. CMake reports a variable as unused when nothing reads it. With ORES_VCPKG_ENABLED=OFF the toolchain file is never loaded (CMakeLists.txt:29) and the C++ build configuration is skipped entirely (CMakeLists.txt:308), so the four vcpkg and find-path entries have no reader, and with no compile rules the generator has no use for CMAKE_EXPORT_COMPILE_COMMANDS. The five move to a hidden compiler-configuration mixin that the eighteen compiling presets inherit.
  • The doc-only preset also drops the make mixin. CMAKE_COLOR_DIAGNOSTICS is read only when diagnostics are emitted, so a configure that compiles nothing reports it as unused too. The preset names its generator directly instead, so the make mixin keeps its colour settings for the presets that compile.
  • The plist variable names were simply wrong. Info.plist.in read PROJECT_MAJOR_VERSION, PROJECT_MINOR_VERSION and PROJECT_PATCH_VERSION. CMake sets PROJECT_VERSION_MAJOR and its siblings from project(OreStudio VERSION 0.0.28 ...). Nothing set the names the template used, so both version fields in the macOS bundle plist rendered as ...

6. Out of scope

  • The vcpkg port warnings: boost-system's build-path length warning on Windows and libarchive's unused CMAKE_REQUIRE_FIND_PACKAGE_MbedTLS on macOS. Both are emitted by ports inside the pinned vcpkg submodule.

Emacs 29.3 (Org mode 9.6.15)