Skip to content

kea: fix BOOST_STATIC_ASSERT use in src/lib/dns/rdataclass.cc#29577

Merged
commodo merged 2 commits into
openwrt:masterfrom
commodo:kea-boost-static-assert-rdataclass
May 30, 2026
Merged

kea: fix BOOST_STATIC_ASSERT use in src/lib/dns/rdataclass.cc#29577
commodo merged 2 commits into
openwrt:masterfrom
commodo:kea-boost-static-assert-rdataclass

Conversation

@commodo
Copy link
Copy Markdown
Contributor

@commodo commodo commented May 29, 2026

📦 Package Details

Maintainer: @pprindeville

Description:

Snapshot builds for i386_pentium-mmx (and presumably every other target now that Boost 1.91 has been bumped in the feed) fail with::

src/lib/dns/rdataclass.cc:1401:5: error: 'BOOST_STATIC_ASSERT'
was not declared in this scope; did you mean
'BOOST_HAS_STATIC_ASSERT'?
1401 | BOOST_STATIC_ASSERT(sizeof(numdata_) ==

BOOST_STATIC_ASSERT lives in <boost/static_assert.hpp>. In earlier Boost releases it was reachable through any number of transitive includes pulled in by Kea's other DNS headers; in 1.91 those transitive paths have been pruned, so call sites must include the declaring header explicitly. 050-boost-static-assert.patch already does this for src/lib/log/logger_level_impl.cc; src/lib/dns/rdataclass.cc uses the same macro at SOA::getMinimum() to size-check numdata_ and was missed.

Extend the existing patch with the matching include in rdataclass.cc. Same fix shape as the earlier hunk; no behavioural change.

Build log:
https://downloads.openwrt.org/snapshots/faillogs/i386_pentium-mmx/packages/kea/


🧪 Run Testing Details

  • OpenWrt Version:
  • OpenWrt Target/Subtarget:
  • OpenWrt Device:

✅ Formalities

  • I have reviewed the CONTRIBUTING.md file for detailed contributing guidelines.

commodo added 2 commits May 29, 2026 18:34
Snapshot builds for i386_pentium-mmx (and presumably every other
target now that Boost 1.91 has been bumped in the feed) fail with::

  src/lib/dns/rdataclass.cc:1401:5: error: 'BOOST_STATIC_ASSERT'
      was not declared in this scope; did you mean
      'BOOST_HAS_STATIC_ASSERT'?
  1401 |     BOOST_STATIC_ASSERT(sizeof(numdata_) ==

``BOOST_STATIC_ASSERT`` lives in ``<boost/static_assert.hpp>``. In
earlier Boost releases it was reachable through any number of
transitive includes pulled in by Kea's other DNS headers; in 1.91
those transitive paths have been pruned, so call sites must include
the declaring header explicitly. ``050-boost-static-assert.patch``
already does this for ``src/lib/log/logger_level_impl.cc``;
``src/lib/dns/rdataclass.cc`` uses the same macro at SOA::getMinimum()
to size-check ``numdata_`` and was missed.

Extend the existing patch with the matching include in rdataclass.cc.
Same fix shape as the earlier hunk; no behavioural change.

Build log:
https://downloads.openwrt.org/snapshots/faillogs/i386_pentium-mmx/packages/kea/

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
Commit 1ea43c3 ("kea: fix kea-libs dependencies") replaced the
direct +log4cplus dependency on kea-libs with the virtual name
+log4cplus-any. With only one log4cplus implementation in the feed,
nothing actually PROVIDES log4cplus-any other than the auto-generated
"package name + -any" alias on log4cplus itself.

apk treats `-any`-suffixed names as ambiguous virtuals that the
admin must resolve explicitly, even when only one provider exists,
and refuses to install:

  ERROR: unable to select packages:
    log4cplus-any (virtual):
      note: please select one of the 'provided by'
            packages explicitly
      provided by: log4cplus
      required by: kea-libs-3.0.2-r7[log4cplus-any]

That bubbles up to every kea subpackage runtime test in CI
(kea-admin, kea-ctrl, every kea-dhcp* and kea-hook-*) and fails
the multi-arch test build with exit code 3.

Switch back to +log4cplus directly; the +libstdcpp addition from
that earlier commit stays — it was the genuinely useful part of
the change. Bump PKG_RELEASE for the redo.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
@commodo commodo force-pushed the kea-boost-static-assert-rdataclass branch from d76dbc8 to c6d5817 Compare May 29, 2026 15:35
Copy link
Copy Markdown
Member

@pprindeville pprindeville left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@commodo commodo mentioned this pull request May 30, 2026
1 task
@commodo
Copy link
Copy Markdown
Contributor Author

commodo commented May 30, 2026

wow.... this got really complicated

kea-shell is a python script...

so, let's not linger too much on this;
otherwise i get split personality disorder with too many split + blocked PRs
will merge this as-is: it fixes the boost issue, then merge 3.0.3 (3.2.0 can be followed-up)
in the meantime, i fix kea-shell

@commodo commodo merged commit 785e7ee into openwrt:master May 30, 2026
7 of 12 checks passed
@commodo commodo deleted the kea-boost-static-assert-rdataclass branch May 30, 2026 06:55
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