History log of /openbmc/phosphor-logging/meson.build (Results 1 – 25 of 29)
Revision Date Author Comments
# eaa501f3 23-Jan-2025 Amithash Prasad <amithash@meta.com>

Add helper log-resolve CLI

Add ability to resolve log entries from
command line.

Tested:
Create a log using log-create and then resolve it using
both the --id and --path mechanisms
```
root@bmc:~#

Add helper log-resolve CLI

Add ability to resolve log entries from
command line.

Tested:
Create a log using log-create and then resolve it using
both the --id and --path mechanisms
```
root@bmc:~# log-create xyz.openbmc_project.Sensor.Threshold.SensorFailure -j '{"SENSOR_NAME": "Hello1"}'
<3> OPENBMC_MESSAGE_ID={"xyz.openbmc_project.Sensor.Threshold.SensorFailure":{"SENSOR_NAME":"Hello1", <snip>
/xyz/openbmc_project/logging/entry/11
root@bmc:~# log-resolve --id 11
<3> LOGPATH: /xyz/openbmc_project/logging/entry/11 Resolved
root@bmc:~# busctl introspect xyz.openbmc_project.Logging /xyz/openbmc_project/logging/entry/11 | grep Resolved
.Resolved property b true emits-change writable

root@bmc:~# log-create xyz.openbmc_project.Sensor.Threshold.SensorFailure -j '{"SENSOR_NAME": "Hello2"}'
<3> OPENBMC_MESSAGE_ID={"xyz.openbmc_project.Sensor.Threshold.SensorFailure":{"SENSOR_NAME":"Hello2" <snip>
/xyz/openbmc_project/logging/entry/12

root@bmc:~# log-resolve --path /xyz/openbmc_project/logging/entry/12
<3> LOGPATH: /xyz/openbmc_project/logging/entry/12 Resolved

root@bmc:~# busctl introspect xyz.openbmc_project.Logging /xyz/openbmc_project/logging/entry/12 | grep Resolved
.Resolved property b true emits-change writable
```

Change-Id: Ieac6c43f2497ea97b43b2a885e929e248f669e4c
Signed-off-by: Amithash Prasad <amithash@meta.com>

show more ...


# 5383d760 01-Feb-2025 Patrick Williams <patrick@stwcx.xyz>

meson: reformat with meson formatter

Apply the `meson format` results.

Change-Id: I874e2c57075988db53dad8e365c0bf1ac204f81b
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>


# 1f2bb81d 30-Jan-2025 Patrick Williams <patrick@stwcx.xyz>

build: use allowed over enabled or not-disabled

Meson feature options are typically in a tri-state of enabled, disabled,
or auto. The enabled and disabled functions on an option (from
`get_option`)

build: use allowed over enabled or not-disabled

Meson feature options are typically in a tri-state of enabled, disabled,
or auto. The enabled and disabled functions on an option (from
`get_option`) no longer return true for auto features. Instead, the
expectation is to use `allowed()` which is true for both enabled and
auto.

Switch all uses of `enabled` to `allowed`.
Switch all uses of `not disabled` to `allowed`.

Change-Id: Icc698b95d762197d496ec9f228a12d7fe48beef0
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# ad0d7522 10-Jan-2025 Patrick Williams <patrick@stwcx.xyz>

sdbusplus: update meson to v10 format

There was significant refactoring in sdbusplus generated meson files
in order to support generating Redfish Message Registries. Those
aren't interesting to thi

sdbusplus: update meson to v10 format

There was significant refactoring in sdbusplus generated meson files
in order to support generating Redfish Message Registries. Those
aren't interesting to this repository (and are disabled) but there
are minor top-level meson changes necessary in order to the latest
version of those.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I79dde5151bb5971813506252b7e0cebaacb105c2

show more ...


# dc35e307 05-Nov-2024 Patrick Williams <patrick@stwcx.xyz>

log-create: add CLI utility to create events

Add utility to allow creation of events from the command line and
shell scripts. The utility ensures that the correct data arguments
are passed, or else

log-create: add CLI utility to create events

Add utility to allow creation of events from the command line and
shell scripts. The utility ensures that the correct data arguments
are passed, or else fails the creation.

Tested:

```
$ ./builddir/log-create xyz.openbmc_project.Sensor.Threshold.SensorFailure --json '{ "SENSOR_NAME": "Example-Sensor" }'
<3> OPENBMC_MESSAGE_ID={"xyz.openbmc_project.Sensor.Threshold.SensorFailure":{"SENSOR_NAME":"Example-Sensor","_SOURCE":{"COLUMN":45,"FILE":"../log_create_main.cpp","FUNCTION":"int generate_event(const std::string&, const nlohmann::json_abi_v3_11_2::json&)","LINE":34,"PID":264326}}}
/xyz/openbmc_project/logging/entry/1

$ busctl --user introspect xyz.openbmc_project.Logging /xyz/openbmc_project/logging/entry/1 -l | cat
xyz.openbmc_project.Logging.Entry interface - - -
.AdditionalData property as 5 "SENSOR_NAME=\"Example-Sensor\"" "_CODE_FILE=../log_create_main.cpp" "_CODE_FUNC=int generate_event(const std::string&, const nlohmann::json_abi_v3_11_2::json&)" "_CODE_LINE=34" "_PID=264326" emits-change writable
.Id property u 1 emits-change writable
.Message property s "xyz.openbmc_project.Sensor.Threshold.SensorFailure" emits-change writable
.Severity property s "xyz.openbmc_project.Logging.Entry.Level.Critical" emits-change writable

$ ./builddir/log-create xyz.openbmc_project.Sensor.Threshold.SensorFailure
terminate called after throwing an instance of 'nlohmann::json_abi_v3_11_2::detail::out_of_range'
what(): [json.exception.out_of_range.403] key 'SENSOR_NAME' not found

$ ./builddir/log-create xyz.openbmc_project.Invalid.Event.Name
Unknown event: xyz.openbmc_project.Invalid.Event.Name
```

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I357b453f8fecc9d224aa412ad7f3cc6b8c2a4ad8

show more ...


# fa2d962b 30-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

log-manager: enable non-standard path for local tests

Enable the log-manager to be launched with a path other than
`/var/phosphor-logging` to allow it to be ran on a development system
for test purp

log-manager: enable non-standard path for local tests

Enable the log-manager to be launched with a path other than
`/var/phosphor-logging` to allow it to be ran on a development system
for test purposes. This required some refactoring throughout as to
how paths were handled.

Tested:

After running tests, `/tmp/phosphor-logging` is populated with
entries. Launching `./builddir/phosphor-log-manager
/tmp/phosphor-logging`, the log-manager will have the entries on
dbus:

```
$ busctl --user tree xyz.openbmc_project.Logging
└─ /xyz
└─ /xyz/openbmc_project
└─ /xyz/openbmc_project/logging
├─ /xyz/openbmc_project/logging/entry
│ ├─ /xyz/openbmc_project/logging/entry/100
│ ├─ /xyz/openbmc_project/logging/entry/101
│ ├─ /xyz/openbmc_project/logging/entry/102
│ ├─ /xyz/openbmc_project/logging/entry/103
```

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I84968edeed0dcf73aaf8bb653060b6d3400b9b7b

show more ...


# 7576224a 03-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

meson: switch code dependency to libsystemd

For a while now systemd has packaged a separate `libsystemd`. For
meson dependency, `systemd` should be used when looking for systemd
service file paths

meson: switch code dependency to libsystemd

For a while now systemd has packaged a separate `libsystemd`. For
meson dependency, `systemd` should be used when looking for systemd
service file paths and `libsystemd` should be used for `sd_*` functions.

Update the dependency accordingly.

Change-Id: I2de6ab74c3384339a9f393d3149eabaccf1a5ba4
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# f02b78c6 02-Apr-2024 Konstantin Aladyshev <aladyshev22@gmail.com>

meson: Fix local cereal build

Currently local build is failing with a message:
"""
cereal| Exception: Failed to configure the CMake subproject: Could NOT
find Boost (missing: Boost_INCLUDE_DIR seria

meson: Fix local cereal build

Currently local build is failing with a message:
"""
cereal| Exception: Failed to configure the CMake subproject: Could NOT
find Boost (missing: Boost_INCLUDE_DIR serialization)
Subproject subprojects/cereal is buildable: NO (disabling)
"""
Since cereal requires boost only for the sandbox build and this
functionality is not needed, add option to skip building performance
sandbox comparison to solve the issue.

Tested:
"meson setup build && cd build && meson compile" now finishes
successfully.

Change-Id: Iddc61f432f33ebfce17d9875e685d4c24f64729f
Signed-off-by: Konstantin Aladyshev <aladyshev22@gmail.com>

show more ...


# 19257fd2 12-Jul-2023 Patrick Williams <patrick@stwcx.xyz>

build: upgrade to C++23

Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of
the standard has been implemented. Upgrade the build to leverage it.

Change-Id: I91d92825b38ece8aaf519

build: upgrade to C++23

Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of
the standard has been implemented. Upgrade the build to leverage it.

Change-Id: I91d92825b38ece8aaf519f62072ce0f1d5aa6b1c
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# ff5f42fa 12-Apr-2023 Patrick Williams <patrick@stwcx.xyz>

meson: remove deprecated get_pkgconfig_variable

Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In
meson 0.58 the `get_variable` was enhanced to no longer require the
`pkgconfig

meson: remove deprecated get_pkgconfig_variable

Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In
meson 0.58 the `get_variable` was enhanced to no longer require the
`pkgconfig` keyword argument. Ensure meson 0.58 is required and update
the usage of all `get_pkgconfig_variable` and `get_variable` to be the
modern variant.

Change-Id: I4bf91f3c9a61c6f0c4f14f591ed00a309b7612e6
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 1d038d58 12-Sep-2022 Patrick Williams <patrick@stwcx.xyz>

gen: update due to sdbusplus-gen-meson change

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I7dfb64d1567c829fe5a3ac71bf5c9aff6773abc7


# 62bc968d 21-Mar-2022 Patrick Williams <patrick@stwcx.xyz>

meson: simplify dependencies

Leverage wrapfile `[provide]` directives to simplify the dependency
searching in the meson.build. phosphor-dbus-interfaces now defaults to
enabling all of the project o

meson: simplify dependencies

Leverage wrapfile `[provide]` directives to simplify the dependency
searching in the meson.build. phosphor-dbus-interfaces now defaults to
enabling all of the project options, so there is no need to manually
specify this either.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I550667da15ce8347acfede53a60516a0428bad2b

show more ...


# 3e55d4db 26-Aug-2021 Patrick Williams <patrick@stwcx.xyz>

build: update cereal dep for subprojects

Starting with meson 0.56, it seems preferable to use
'cmake.dependency' rather than 'cmake.get_variable' and with
meson 0.59, the 'get_variable' approach doe

build: update cereal dep for subprojects

Starting with meson 0.56, it seems preferable to use
'cmake.dependency' rather than 'cmake.get_variable' and with
meson 0.59, the 'get_variable' approach doesn't even work.
Update as appropriate.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I408e53082be6f8a3978acaa69072343796c36d8b

show more ...


# 8fd187e4 26-Jul-2021 William A. Kennington III <wak@google.com>

build: Target c++ arguments specifically where they are needed

This fixes the build with phal enabled, since it tries to add global
project cpp_args after targets have already been declared.

Change

build: Target c++ arguments specifically where they are needed

This fixes the build with phal enabled, since it tries to add global
project cpp_args after targets have already been declared.

Change-Id: I907fbd40a82725da4e751b82c66c71c602dd2018
Signed-off-by: William A. Kennington III <wak@google.com>

show more ...


# e0538848 11-Jun-2021 William A. Kennington III <wak@google.com>

build: Refactor to separate out library

This makes it more clear what code is intended for use by the
phosphor-logging shared library. This is especially nice since it
isolates the `phosphor_logging

build: Refactor to separate out library

This makes it more clear what code is intended for use by the
phosphor-logging shared library. This is especially nice since it
isolates the `phosphor_logging_dep` to only provide the exported headers
instead of everything in the project.

Additionally, this adds an option to build only the library components
of the project when the services aren't needed.

Change-Id: Ied0858fc70e8054df4c056d91f35a6f0b3acfcb1
Signed-off-by: William A. Kennington III <wak@google.com>

show more ...


# 47c77342 07-Jul-2021 Tim Lee <timlee660101@gmail.com>

build: meson fix python command parameter

Symptom:
Callout related test items got failed when running test test_association.robot

Root cause:
According content get from /xyz/openbmc_project/logging

build: meson fix python command parameter

Symptom:
Callout related test items got failed when running test test_association.robot

Root cause:
According content get from /xyz/openbmc_project/logging/entry/1.
We found that "Associations" data content doesn't include "callout" property.
And "AdditionalData" data content doesn't add "CALLOUT_DEVICE_PATH_TEST"
association correctly. Then cause test_association.robot got failed.

https://10.103.152.249/xyz/openbmc_project/logging/entry/1
"data": {
"AdditionalData": [
"_PID=1858",
],
"Associations": [],

Before using meson build for phosphor-logging, we didn't meet this issue.
We found g_errMetaMap didn't include below mapping in build\elog-lookup.cpp
{"example.xyz.openbmc_project.Example.Device.Callout",
{"CALLOUT_ERRNO_TEST","CALLOUT_DEVICE_PATH_TEST"}},

Also found meta didn't include below mapping in build\elog-process-metadata.cpp
{"CALLOUT_DEVICE_PATH_TEST", metadata::associations::build
<example::xyz::openbmc_project::Example::Device::
Callout::CALLOUT_DEVICE_PATH_TEST>},

The problem is cause by meson.build python wrong parameter
Then cause python cannot find example yaml file location
to generate correct mapping in elog-lookup.cpp and elog-process-metadata.cpp

Solution:
Fix python command parameter '-u' with 'tools/' instead of '../tools/'
in meson.build about generating elog-lookup.cpp and elog-process-metadata.cpp
command: [
python_prog, '@input0@',
'-t', '',
'-m', '@input1@',
'-y', yamldir,
'-u', meson.current_source_dir() / 'tools/',
'-o', '@OUTPUT0@',
],

Tested:
Verified content of https://10.103.152.249/xyz/openbmc_project/logging/entry/1
with correct "Associations" and "AdditionalData" as below:
"AdditionalData": [
"_PID=1070",
"CALLOUT_DEVICE_PATH_TEST=/sys/devices/platform/ahb/ahb:apb/f0082000.i2c/..",
"CALLOUT_ERRNO_TEST=0",
"DEV_ADDR=0x0DEADEAD"
],
"Associations": [
"callout",
"fault",
"/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0"
]

And run robot test PASS at below related test items
robot -t Create Test Error Callout And Verify
robot -t Create Test Error Callout And Verify AdditionalData
robot -t Create Test Error Callout And Verify Associations
robot -t Create Test Error Callout And Delete

Signed-off-by: Tim Lee <timlee660101@gmail.com>
Change-Id: If8e8a133ae8becac32c260b66e5d2d21887a2886

show more ...


# aa5d03b8 15-Jun-2021 Benjamin Fair <benjaminfair@google.com>

Allow configuring the rsyslog server conf path

This file will be renamed from server.conf to 90-server.conf to allow
custom rsyslog conf files to run before it.

Signed-off-by: Benjamin Fair <benjam

Allow configuring the rsyslog server conf path

This file will be renamed from server.conf to 90-server.conf to allow
custom rsyslog conf files to run before it.

Signed-off-by: Benjamin Fair <benjaminfair@google.com>
Change-Id: Ic2f25dc18ac5f5f4e44d58bf5f23f6d053334559

show more ...


# e8bdeeaa 03-Jun-2021 Jayanth Othayoth <ojayanth@in.ibm.com>

PEL: enable base infrastructure for SBE FFDC base PEL create

This commits provides the base infrastructure for SBE FFDC based
on createPELWithFFDCFiles`D-Bus method on the
org.open_power.Logging.PEL

PEL: enable base infrastructure for SBE FFDC base PEL create

This commits provides the base infrastructure for SBE FFDC based
on createPELWithFFDCFiles`D-Bus method on the
org.open_power.Logging.PEL.

More details related to usage of this interface is documented
as part of extensions/openpower-pels/README.md.

In the PEL create interface if the type is custom and subtype
is 0xCB, PEL class function invokes SBE FFDC function to process
SBE FFDC to extract Hardware procedure added user data section and
callouts. SBE FFDC class appends the callout json and create
user data file based FFDC information and continue the normal
PEL create function.

SCOPE of this commit:
- Add base infrastructure and control build only for "phal" supported
systems. "phal" feature is mandatory requirement for processing
SBE FFDC.
- Add SBE FFDC raw information in PEL user data section

To enable this feature use the below meson build options
meson build -Dopenpower-pel-extension=enabled -Dphal=enabled

Tested:

"Error Details": {
"Message":"chipop timeout reported during SBE communication",
"SRC6": [
"0x2",
"[0:15] chip position, [16:23] command class,
[24:31] command type"
]
},

"User Data 2": {
"Section Version": "1",
"Sub-section type": "203",
"Created by": "0x3500",
"Data": [
"FF DC 00 12 00 00 A1 01 00 8E CE 72 00 00 FF FE | ...........r....",
"00 00 00 04 00 00 00 00 00 00 00 04 00 00 00 00 | ................",
"00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 02 | ................",
"00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 04 | ................",
"00 00 00 00 00 00 00 00 | ........"
]
}

Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
Change-Id: I2200b3ba9c0977be13e71f25e87f0b16cb50ec5b

show more ...


# 23517520 03-Jun-2021 Matt Spinler <spinler@us.ibm.com>

elog-gen: Install elog-gen.py

As was done with autotools, install elog-gen.py and its mako template
into a subdirectory in 'datadir' so that other repositories can use it.

The openpower-debug-colle

elog-gen: Install elog-gen.py

As was done with autotools, install elog-gen.py and its mako template
into a subdirectory in 'datadir' so that other repositories can use it.

The openpower-debug-collector repository is an example of this usage and
is currently broken without this.

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I3ca6719e26abfe289d17e2f71875ad6d12b17e04

show more ...


# 515653b4 17-May-2021 William A. Kennington III <wak@google.com>

build: Don't build tests by default in submodules

Change-Id: I072c2dae0dc94d66c29296ef2cf8e6943451abcc
Signed-off-by: William A. Kennington III <wak@google.com>


# 0b08776a 17-May-2021 William A. Kennington III <wak@google.com>

build: Fix cereal dependency

We should be using the CMake build provided by the project instead of
trying to work around the subproject system manually.

Change-Id: I074a8ec8b00a9884b092d11fbb6d09b1

build: Fix cereal dependency

We should be using the CMake build provided by the project instead of
trying to work around the subproject system manually.

Change-Id: I074a8ec8b00a9884b092d11fbb6d09b1e76d2dee
Signed-off-by: William A. Kennington III <wak@google.com>

show more ...


# 271408b5 30-Mar-2021 Anton D. Kachalov <gmouse@google.com>

Install systemd unit & busconfig ACLs from the package.

This change required as a part of privilege separation work:
https://github.com/openbmc/openbmc/issues/3383

This change has dependant chang

Install systemd unit & busconfig ACLs from the package.

This change required as a part of privilege separation work:
https://github.com/openbmc/openbmc/issues/3383

This change has dependant change:
https://gerrit.openbmc-project.xyz/c/openbmc/openbmc/+/41834

Change-Id: Ib4744ac69428af1a9625c3e99004a4cfd857ba4b
Signed-off-by: Anton D. Kachalov <gmouse@google.com>

show more ...


# 60356ad4 30-Apr-2021 Patrick Williams <patrick@stwcx.xyz>

build: adjust meson dependency for cereal

Cereal does not provide a package-config file for Meson to
use to find it, so we have to look for it at a system level
by checking for the header rather tha

build: adjust meson dependency for cereal

Cereal does not provide a package-config file for Meson to
use to find it, so we have to look for it at a system level
by checking for the header rather than as a normal dependency
look-up.

Tested by compiling package under bitbake.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I28b7f689e352761c5c736fcfac489de193149fc0

show more ...


# d9f0d646 21-Apr-2021 Patrick Williams <patrick@stwcx.xyz>

build: meson support for openpower-pel extensions

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I4b45f71a3de4966fe3649480d4333806f201f405


# b2b27085 16-Apr-2021 Patrick Williams <patrick@stwcx.xyz>

build: meson support for rsyslog-config

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I5292ce1d09596f0d2e84c5d58490a9afe2b954db


12