Skip to content

cmake: require Boost >= 1.90 (Boost.PFR get_name)#167

Merged
jcelerier merged 1 commit into
celtera:mainfrom
edumeneses:bump-boost-min-1.90
Jul 9, 2026
Merged

cmake: require Boost >= 1.90 (Boost.PFR get_name)#167
jcelerier merged 1 commit into
celtera:mainfrom
edumeneses:bump-boost-min-1.90

Conversation

@edumeneses

Copy link
Copy Markdown

Problem

The Godot back-end (binding/godot/node.hpp:70) calls boost::pfr::get_name<...>(). That API was added to Boost.PFR in 1.88 and is missing from earlier Boost. With the current find_package(Boost 1.87 …), building the Godot binding fails:

binding/godot/node.hpp:70:24: error:
  'get_name' is not a member of 'boost::pfr'

(GCC's did you mean 'avnd::get_name'? hint is a red herring — unrelated function.)

Fix

Bump the minimum required Boost in cmake/avendish.cmake from 1.87 to 1.90, per @jcelerier's request, so the Boost.PFR name-reflection API is guaranteed present.

Verification

Reproduced downstream in sat-mtl/sherpa-plugins on Ubuntu 24.04. Building against Boost 1.87/1.83 fails as above; forcing Boost 1.91 makes the previously-failing sherpa_tts_NODE_godot target compile and link cleanly (build/godot/sherpa_tts.so). The non-Godot targets were unaffected.

🤖 Generated with Claude Code

The Godot binding (binding/godot/node.hpp) uses boost::pfr::get_name,
which was introduced in Boost.PFR in 1.88 and is absent from earlier
releases. Building against Boost 1.87 fails to compile the Godot back-end:

    binding/godot/node.hpp:70: error:
      'get_name' is not a member of 'boost::pfr'

Raising the minimum to 1.90 (per maintainer request) guarantees the
required Boost.PFR name-reflection API is present. Verified: with Boost
1.91 the previously-failing sherpa_tts_NODE_godot target compiles and
links cleanly.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015Y1wf9JxscbkrSjJXH8oyd
@jcelerier
jcelerier merged commit 22134e9 into celtera:main Jul 9, 2026
9 checks passed
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.

2 participants