| commit | 49152e76b4c1eb28cef59de5591535387941eee0 | [log] [tgz] |
|---|---|---|
| author | Harvey Wu <Harvey.Wu@quantatw.com> | Tue Jun 06 16:42:58 2023 +0800 |
| committer | Vernon Mauery <vernon.mauery@linux.intel.com> | Thu Jun 15 17:53:21 2023 +0000 |
| tree | 9b6e80e7606915829975f7e15bcc24a20ef7d74e | |
| parent | a48bf7766f7e2f9cbe1c74f3ee681f7a2ea66969 [diff] |
dbus-sdr: fix undefined symbols error
- When enable hybrid-sensors option, it will include sensordatahandler
in sensorcommands.cpp. So need to add some src and dependency in
meson.build.
Test:
Before:
```
ipmitool sdr elist
Err in cmd get sensor sdr info
Unable to open SDR for reading
journalctl -o json-pretty MESSAGE="ERROR opening IPMI provider"
{
"SYSLOG_IDENTIFIER" : "ipmid",
"_MACHINE_ID" : "0e6c70e7379c41fc9388fd64e1433923",
"_BOOT_ID" : "2cfdedb0cafd43758e2469ea1bc81a19",
"_PID" : "1306",
"ERROR" : "/usr/lib/ipmid-providers/libdynamiccmds.so.0.1: undefined symbol: _ZN4ipmi6sensor7sensorsE",
"MESSAGE" : "ERROR opening IPMI provider",
"_SYSTEMD_UNIT" : "phosphor-ipmi-host.service",
"_SYSTEMD_INVOCATION_ID" : "fd19f671e20147aea359bef0fc59c2c6",
"_SYSTEMD_SLICE" : "system.slice",
"_CAP_EFFECTIVE" : "1ffffffffff",
"_GID" : "0",
"_SOURCE_REALTIME_TIMESTAMP" : "1678071749865544",
"__REALTIME_TIMESTAMP" : "1678071749865607",
"_EXE" : "/usr/bin/ipmid",
"CODE_LINE" : "77",
"_COMM" : "ipmid",
"_TRANSPORT" : "journal",
"__MONOTONIC_TIMESTAMP" : "45349903",
"PRIORITY" : "3",
"CODE_FUNC" : "helper_log",
"PROVIDER" : "/usr/lib/ipmid-providers/libdynamiccmds.so.0.1",
"_HOSTNAME" : "gsz",
"CODE_FILE" : "/usr/include/phosphor-logging/log.hpp",
"__CURSOR" : "s=d8544f6ea872488fa319e44a1e5da636;i=39d;b=2cfdedb0cafd43758e2469ea1bc81a19;m=2b3fc0f;t=5f632868ef087;x=c4b27446a5eae068",
"_RUNTIME_SCOPE" : "system",
"_UID" : "0",
"TRANSACTION_ID" : "2224375320",
"_CMDLINE" : "ipmid",
"_SYSTEMD_CGROUP" : "/system.slice/phosphor-ipmi-host.service"
}
```
After:
```
ipmitool sdr elist
power | 00h | ok | 23.2 |
reset | 01h | ok | 23.1 |
CATERR | 02h | ok | 65.2 |
...
...
```
Signed-off-by: Harvey Wu <Harvey.Wu@quantatw.com>
Change-Id: I02132cd734e098f1d858628094b911a461821a80
meson builddir ninja -C builddir
meson builddir -Dbuildtype=minsize -Db_lto=true -Dtests=disabled ninja -C builddir
If any of the dependencies are not found on the host system during configuration, meson automatically gets them via its wrap dependencies mentioned in ipmid/subprojects.
meson builddir -Dwrap_mode=nofallback ninja -C builddir
meson builddir -Dbuildtype=debug ninja -C builddir
meson builddir -Db_coverage=true -Dtests=enabled ninja -C builddir test ninja -C builddir coverage