Skip to content

domoticz: fix build and add test.sh#29288

Open
commodo wants to merge 3 commits intoopenwrt:masterfrom
commodo:fix-domoticz-boost-asio
Open

domoticz: fix build and add test.sh#29288
commodo wants to merge 3 commits intoopenwrt:masterfrom
commodo:fix-domoticz-boost-asio

Conversation

@commodo
Copy link
Copy Markdown
Contributor

@commodo commodo commented May 2, 2026

📦 Package Details

Maintainer: @dwmw2

Description:

boost::asio::post() without an explicit executor fails to compile with Boost >= 1.82 due to changes in the executor model: bare lambdas no longer have an implicit system executor that satisfies the blocking.never requirement.

Pass io_context_ explicitly as the first argument so the handler is dispatched on the correct io_context thread, which is the original intent of the call (making stop() safe to call from any thread).

Add test.sh
domoticz is a daemon requiring a database and network port; it does not implement a --version flag. Verify the binary is present and executable.

Disable LTO to fix link failure on i386 with musl fortify Suggested via #29239 Also tested.


🧪 Run Testing Details

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

✅ Formalities

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

If your PR contains a patch:

  • It can be applied using git am
  • It has been refreshed to avoid offsets, fuzzes, etc., using
    make package/<your-package>/refresh V=s
  • It is structured in a way that it is potentially upstreamable
    (e.g., subject line, commit description, etc.)
    We must try to upstream patches to reduce maintenance burden.

@commodo commodo force-pushed the fix-domoticz-boost-asio branch from b819959 to 06134bc Compare May 2, 2026 10:11
@GeorgeSapkin
Copy link
Copy Markdown
Member

Generic tests are now forced for all packages, irrespective of test.sh presence. If this one can't pass the generic tests, then they need to be adjusted to accommodate this scenario. Let's see what the CI says first.

@commodo
Copy link
Copy Markdown
Contributor Author

commodo commented May 2, 2026

Generic tests are now forced for all packages, irrespective of test.sh presence. If this one can't pass the generic tests, then they need to be adjusted to accommodate this scenario. Let's see what the CI says first.

Two failures stand-out.
One in boost, where libquadmath is not present on all archs.
And another on openzwave where openzwave: No executables in the package provided version 1.6.1965

commodo added 3 commits May 2, 2026 22:05
boost::asio::post() without an explicit executor fails to compile with
Boost >= 1.82 due to changes in the executor model: bare lambdas no
longer have an implicit system executor that satisfies the
blocking.never requirement.

Pass io_context_ explicitly as the first argument so the handler is
dispatched on the correct io_context thread, which is the original
intent of the call (making stop() safe to call from any thread).

Add test.sh
domoticz is a daemon requiring a database and network port; it does not
implement a --version flag. Verify the binary is present and executable.

Disable LTO to fix link failure on i386 with musl fortify
Suggested via openwrt#29239
Also tested.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
MinOZW does not implement any --version flag, so skip the generic
version check. Just verify the binary is present and executable.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
libquadmath is only packaged for x86 and powerpc targets in OpenWrt.
Declaring it as an unconditional runtime dependency of boost-charconv
causes apk installation failure on all other architectures (e.g.
i386, arm, mips) with "libquadmath (no such package)".

Guard the dependency with an ARCH filter so it is only pulled in on
platforms where the package actually exists.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>

boost: add x86 to libquadmath arch conditional in boost-charconv

libquadmath is available on x86 (i386) in addition to x86_64 and
powerpc variants. Include it in the filter so boost-charconv gets
the correct dependency on 32-bit x86 targets.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
@commodo commodo force-pushed the fix-domoticz-boost-asio branch from 06134bc to 1b2883c Compare May 2, 2026 19:10
@GeorgeSapkin
Copy link
Copy Markdown
Member

Also for some reason file is gone half way. And GH is crapping out as usual, so I can't pull the logs to see what's up.

@GeorgeSapkin
Copy link
Copy Markdown
Member

GeorgeSapkin commented May 2, 2026

liblzma is purging file:

 (1/4) Purging file (5.45-r1)
  Executing file-5.45-r1.pre-deinstall

I guess apk del --rdepends is a no-go.

@GeorgeSapkin GeorgeSapkin force-pushed the fix-domoticz-boost-asio branch from 1b2883c to 3f1d898 Compare May 2, 2026 20:14
@GeorgeSapkin

This comment was marked as resolved.

@GeorgeSapkin GeorgeSapkin force-pushed the fix-domoticz-boost-asio branch from 3f1d898 to 1b2883c Compare May 2, 2026 20:20
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