build: enable meson build

Add meson build support.  Autotools support will be removed in
the future once the consuming meta-phosphor recipes are updated.

This should be feature complete relative to the previous autotools
support.

Additionally, support is added for using sdbusplus as a subproject
in the event that users do not have sdbusplus installed.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ic2c0129bda11cf10aaa557c2fd6403e2ed2cd8dd
5 files changed
tree: bdbc726d58bf943f5a21f6064c40a5ab9991c9a6
  1. com/
  2. org/
  3. subprojects/
  4. xyz/
  5. .gitignore
  6. bootstrap.sh
  7. configure.ac
  8. generate_makefile.sh
  9. generate_yaml_makefile.sh
  10. LICENSE
  11. MAINTAINERS
  12. Makefile.am
  13. Makefile.interfaces.in
  14. Makefile.yaml.in
  15. meson.build
  16. meson_options.txt
  17. phosphor-dbus-interfaces.pc.in
  18. README.md
README.md

phosphor-dbus-interfaces

YAML descriptors of standard D-Bus interfaces. The format is described by the sdbusplus binding generation tool sdbus++.

Building

This project can be built with meson. The typical meson workflow is: meson builddir && ninja -C builddir.

Due to the limited code generation methods available in meson today, changes to YAML files are not tracked by meson and do not automatically cause a new recompile. Subsequent runs when making YAML changes will require running ninja reconfigure in order to regenerate the code files from the YAML.

Configuration

Only the xyz/openbmc_project interfaces are built by default. Other interfaces can be enabled by meson options:

  • com/ibm - -Ddata_com_ibm=true
  • org/open_power - -Ddata_org_open_power=true

References