History log of /openbmc/sdbusplus/meson.build (Results 1 – 25 of 34)
Revision Date Author Comments
# da8574d5 03-Mar-2025 Ed Tanous <ed@tanous.net>

Make code compile on clang

We use c++26 featuresin stdexec (something in unpack fold expressions)
that clang warns about because this is only enabled for c++23.

Ignore the warning for now. Can be

Make code compile on clang

We use c++26 featuresin stdexec (something in unpack fold expressions)
that clang warns about because this is only enabled for c++23.

Ignore the warning for now. Can be removed when we're on c++26

Change-Id: I10b7c216c63d97b865741025873d32666e6a7440
Signed-off-by: Ed Tanous <ed@tanous.net>

show more ...


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

meson: reformat with meson formatter

Apply the `meson format` results.

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


# 892a23a9 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: I56a4d75a17ba7afe2104d271a1a4337b8d370475
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# 74eea519 03-Jan-2025 Patrick Williams <patrick@stwcx.xyz>

sdbus++-gen-meson: leverage `install_dir` for custom targets

Meson has had a `install_dir` directive on `custom_target` which
allows specifying per-output where the file should be installed.
Leverag

sdbus++-gen-meson: leverage `install_dir` for custom targets

Meson has had a `install_dir` directive on `custom_target` which
allows specifying per-output where the file should be installed.
Leveraging this greatly simplifies the meson in consumers (such as
phosphor-dbus-interfaces) and makes the install less error-prone.

The previous method for installing was to use a `install_subdir`
call with large exclude lists (so that markdown did not end up in
the include tree). The result of this was that many empty directories
were created in the include, markdown, and registry install paths.

Using this method reduces by 25% the meson content in
phosphor-dbus-interfaces.

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

show more ...


# 2a12ae12 23-Oct-2024 Jagpal Singh Gill <paligill@gmail.com>

add async fd sender receiver for coroutines

Add async sender receiver for file descriptor based events. The user of
the async file descriptor needs to initialize a fdio instance and then
call next()

add async fd sender receiver for coroutines

Add async sender receiver for file descriptor based events. The user of
the async file descriptor needs to initialize a fdio instance and then
call next() to get each new event for the fd.

Tested:
```
> meson test -C builddir test_async_fdio
ninja: Entering directory `/host/repos/sdbusplus/builddir'
ninja: no work to do.
1/1 test_async_fdio OK 6.01s

Ok: 1
Expected Fail: 0
Fail: 0
Unexpected Pass: 0
Skipped: 0
Timeout: 0

Full log written to /host/repos/sdbusplus/builddir/meson-logs/testlog.txt
```

Change-Id: I1b4f16963e6096f30484c4a6df471e64ed24448b
Signed-off-by: Jagpal Singh Gill <paligill@gmail.com>

show more ...


# 14c4797c 24-Sep-2024 Patrick Williams <patrick@stwcx.xyz>

sdbus++: events: create json for events

Create JSON for the events containing their metadata and leverage that
as the "message" portion of the `sd_bus_error`. This will allow
unpacking the message

sdbus++: events: create json for events

Create JSON for the events containing their metadata and leverage that
as the "message" portion of the `sd_bus_error`. This will allow
unpacking the message on a client side back to the original exception.

Tested:
```
$ busctl --user call net.poettering.Calculator /net/poettering/calculator net.poettering.Calculator Divide xx 5 0
Call failed: {"net.poettering.Calculator.DivisionByZero":{"FOO":"unused"}}
```

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

show more ...


# 798848de 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.

Signed-off-by: Patrick Williams <

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.

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

show more ...


# fc73b395 07-Sep-2022 Willam A. Kennington III <wak@google.com>

bus/match: Compile all code into library

The match code is not templated or declared inline, so it should be
explicitly compiled into objects.

Change-Id: I56e7f2898c50e0b21b7d72d3347d7b7010d85739
S

bus/match: Compile all code into library

The match code is not templated or declared inline, so it should be
explicitly compiled into objects.

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

show more ...


# 97c31c82 25-May-2023 Patrick Williams <patrick@stwcx.xyz>

async: switch to stdexec async_scope

Use the `async_scope` implementation from stdexec instead of the
custom `scope` class here, which greatly reduces our own code and
also aligns better with the C+

async: switch to stdexec async_scope

Use the `async_scope` implementation from stdexec instead of the
custom `scope` class here, which greatly reduces our own code and
also aligns better with the C++ STL direction. The major changes are
around exception paths:

- Spawned tasks which end with an exception will now std::terminate,
so any task expected to throw should have an `upon_error` chain.

- Spawned tasks which are stopped will be no longer throw an
`UnexpectedStop` exception, so they should be chained with an
`upon_stopped` if this is important.

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

show more ...


# 0139cac7 20-Sep-2022 Patrick Williams <patrick@stwcx.xyz>

async: add scope

In order to be able to create multiple subtasks as a collection
and in order to make sure we keep good track of any tasks that
are created by the context, add a `scope` as a contain

async: add scope

In order to be able to create multiple subtasks as a collection
and in order to make sure we keep good track of any tasks that
are created by the context, add a `scope` as a container of subtasks.
This is partially modelled after the C++ P2519 proposal.

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

show more ...


# d2b00440 16-Sep-2022 Patrick Williams <patrick@stwcx.xyz>

event: add a simple wrapper around sd-event

In order to facilitate stop-conditions on the async::context,
we need to be able to escape the wait on the dbus fd. sd-event
will allow us to do this and

event: add a simple wrapper around sd-event

In order to facilitate stop-conditions on the async::context,
we need to be able to escape the wait on the dbus fd. sd-event
will allow us to do this and also build other co-routine primitives
in the future (such as `co_await async::delay(1s)` backed by sd-event
timers). Define a simple wrapper around sd-event here which can
be leveraged by the async framework.

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

show more ...


# 290fa427 29-Aug-2022 Patrick Williams <patrick@stwcx.xyz>

async: add match

Define a class which will register for a dbus signal match
and generate Senders that await new signals.

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

async: add match

Define a class which will register for a dbus signal match
and generate Senders that await new signals.

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

show more ...


# 74187667 26-Aug-2022 Patrick Williams <patrick@stwcx.xyz>

async: add context support

In order to handle async operations, we need some kind of
'run-loop' around the sd_bus_wait/sd_bus_process process.
Define a 'context' to hold the bus and manage the run-l

async: add context support

In order to handle async operations, we need some kind of
'run-loop' around the sd_bus_wait/sd_bus_process process.
Define a 'context' to hold the bus and manage the run-loop.

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

show more ...


# 22a03e31 16-Jun-2022 Manojkiran Eda <manojkiran.eda@gmail.com>

Make python modules dependency detection explicit

sdbusplus requires python modules like infection, mako & pyyaml
and in the current state, it checks for those dependency while it
tries to compile t

Make python modules dependency detection explicit

sdbusplus requires python modules like infection, mako & pyyaml
and in the current state, it checks for those dependency while it
tries to compile the example and fails at the following step.

example/meson.build:48:0: ERROR: Command "sdbus++-gendir --tool
sdbus++ --output /sdbusplus/build/example net" failed with status 1.

And we need to check the meson logs to figure out that a python
module is missing.

The intent behind this commit is to leverage the python module
support in meson to make the dependency check explicit and clear.

Tested :

Tested this both on ubuntu & fedora
1. Without required packages
Program python3 (inflection, yaml, mako) found: NO
meson.build:17:0: ERROR: python3 is missing modules: inflection, yaml, mako

2. With required packages
Program python3 (inflection, yaml, mako) found: YES (/usr/bin/python3) modules: inflection, yaml, mako

Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
Change-Id: I3a03f7d04bb843641757bcaed599125087d5ca4f

show more ...


# 601d975b 21-Jul-2021 Patrick Williams <patrick@stwcx.xyz>

build: increase warning level

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


# 270f242c 04-Jun-2021 William A. Kennington III <wak@google.com>

build: Propagate boost arguments as needed

This aligns sdbusplus_dep and the packageconfig to pass the needed
dependency information to utilize boost ASIO with the expected compiler
arguments.

Chan

build: Propagate boost arguments as needed

This aligns sdbusplus_dep and the packageconfig to pass the needed
dependency information to utilize boost ASIO with the expected compiler
arguments.

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

show more ...


# 226bc42a 05-May-2021 William A. Kennington III <wak@google.com>

native_types: Migrate large functions to shared lib

This speeds up compilation of changes and should save space in users of
the functions.

Change-Id: Iee9029800c11dcd4e94f165766836bae327ee9b5
Signe

native_types: Migrate large functions to shared lib

This speeds up compilation of changes and should save space in users of
the functions.

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

show more ...


# fe0edaa5 15-Apr-2021 Patrick Williams <patrick@stwcx.xyz>

build: fix meson deprecation warning

Seeing the following issue when building sdbusplus as a subproject:

DEPRECATION: Library sdbusplus was passed to the "libraries"
keyword argument of a p

build: fix meson deprecation warning

Seeing the following issue when building sdbusplus as a subproject:

DEPRECATION: Library sdbusplus was passed to the "libraries"
keyword argument of a previous call to generate() method
instead of first positional argument. Adding sdbusplus to
"Requires" field, but this is a deprecated behaviour that will
change in a future version of Meson. Please report the issue
if this warning cannot be avoided in your case.

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

show more ...


# 2e98861c 14-Apr-2021 Patrick Williams <patrick@stwcx.xyz>

build: switch to C++20

Per [1], we should be building with the latest C++ version. C++20
has been final and approved for over 6 months now, so it is about
time for us to switch.

1. https://github.

build: switch to C++20

Per [1], we should be building with the latest C++ version. C++20
has been final and approved for over 6 months now, so it is about
time for us to switch.

1. https://github.com/openbmc/docs/blob/master/cpp-style-and-conventions.md#code-should-be-written-with-modern-practices

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

show more ...


# 32ffb03d 12-Oct-2020 Patrick Williams <patrick@stwcx.xyz>

server: un-inline various large functions

Save approximiately 70k (ARM32) of size from the generated library of
libphosphor-dbus.so by un-inlining various large functions.

Signed-off-by: Patrick Wi

server: un-inline various large functions

Save approximiately 70k (ARM32) of size from the generated library of
libphosphor-dbus.so by un-inlining various large functions.

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

show more ...


# adf03547 04-Jun-2020 William A. Kennington III <wak@google.com>

build: Allow for vendored googletest

This makes it easier to run the test suite outside of the CI
environment but still attempts to use the system version of googletest
first.

Change-Id: I32193f082

build: Allow for vendored googletest

This makes it easier to run the test suite outside of the CI
environment but still attempts to use the system version of googletest
first.

Change-Id: I32193f08243db2177b8200b0ff7e3e47ef01691f
Signed-off-by: William A. Kennington III <wak@google.com>
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# f05b4ca2 04-Jun-2020 William A. Kennington III <wak@google.com>

build: Don't enable tests or examples in subprojects

This just adds dependency lookup time and extra build targets that are
unused by the main project. They can still be overridden if required.

Cha

build: Don't enable tests or examples in subprojects

This just adds dependency lookup time and extra build targets that are
unused by the main project. They can still be overridden if required.

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

show more ...


# 5e893b9d 04-Jun-2020 William A. Kennington III <wak@google.com>

build: Add options for tweaking what is built

We don't need to always build tests or examples so make it possible for
the user to configure what is built. The default is to automatically
build them

build: Add options for tweaking what is built

We don't need to always build tests or examples so make it possible for
the user to configure what is built. The default is to automatically
build them if possible.

Change-Id: I5cb6b1689c408188f14d1fcbcfb0006c17f1c90d
Signed-off-by: William A. Kennington III <wak@google.com>
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>

show more ...


# fbc98825 18-Jun-2020 Patrick Williams <patrick@stwcx.xyz>

build: remove unneeded thread dependency

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


# 3f90a143 09-Jun-2020 Patrick Williams <patrick@stwcx.xyz>

boost: add context dependency

libboost_coroutine needs libboost_context. This should be resolved
automatically but we seem to not be doing so in some cases, so add
it manually.

Fixes openbmc/sdbus

boost: add context dependency

libboost_coroutine needs libboost_context. This should be resolved
automatically but we seem to not be doing so in some cases, so add
it manually.

Fixes openbmc/sdbusplus#46.

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

show more ...


12