Build fixes found during first local compilation (qmake6 + g++ -Werror): 1. Logging category: nymea-plugininfocompiler generates 'dcV2C' (uppercase C) from the JSON vendor name "V2C". All three source files used 'dcV2c' (lowercase c) — corrected to 'dcV2C' in integrationpluginv2c.cpp, trydanmodbustcpmaster.cpp, v2ctcpdiscovery.cpp. 2. modbus.pri: hardcoded include(/usr/include/nymea-modbus/modbus-tool.pri) fails when libnymea-modbus-dev is not system-installed. Changed to a conditional: checks $$[QT_INSTALL_PREFIX] first, then NYMEA_MODBUS_PATH override, with a graceful fallback (warning + manual C++17 CONFIG flag). The v2c plugin has MODBUS_CONNECTIONS empty so the tool loop is a no-op either way; the fallback is safe. 3. debian/: add powersync-plugin-v2c package entry (control, .install, changelog entry 1.15.0+etm4). Build verified: libnymea_integrationpluginv2c.so links against libnymea.so.1, libnymea-modbus.so.1, Qt6Network/SerialBus/Core, 0 compiler warnings (with -Werror -Wall -Wextra -std=c++17). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
23 lines
952 B
Plaintext
23 lines
952 B
Plaintext
QT += network serialport serialbus
|
|
|
|
# libnymea-modbus depuis le paquet systeme (libnymea-modbus-dev) ou via NYMEA_MODBUS_PATH.
|
|
CONFIG += link_pkgconfig
|
|
PKGCONFIG += nymea-modbus
|
|
|
|
OTHER_FILES += $${MODBUS_CONNECTIONS}
|
|
|
|
# Locate modbus-tool.pri: system install first, then NYMEA_MODBUS_PATH override
|
|
# (for builds against a local libnymea-modbus source tree).
|
|
# When MODBUS_CONNECTIONS is empty (e.g. v2c plugin), the tool's for-loop is a
|
|
# no-op; we still need the file for the C++ standard CONFIG lines below.
|
|
MODBUS_TOOL_PRI = $$[QT_INSTALL_PREFIX]/include/nymea-modbus/modbus-tool.pri
|
|
!isEmpty(NYMEA_MODBUS_PATH): MODBUS_TOOL_PRI = $$NYMEA_MODBUS_PATH/modbus-tool.pri
|
|
|
|
exists($$MODBUS_TOOL_PRI) {
|
|
include($$MODBUS_TOOL_PRI)
|
|
} else {
|
|
warning("modbus-tool.pri not found at $$MODBUS_TOOL_PRI — MODBUS_CONNECTIONS code-gen disabled")
|
|
greaterThan(QT_MAJOR_VERSION, 5): CONFIG *= c++17
|
|
lessThan(QT_MAJOR_VERSION, 6): CONFIG *= c++11
|
|
}
|