From e7c1646661100ee46821cfbb55fc264fed85a8b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= Date: Wed, 25 May 2022 11:29:40 +0200 Subject: README: update for meson build-sys --- README | 50 ++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 42 insertions(+), 8 deletions(-) (limited to 'README') diff --git a/README b/README index fe16284b..183ee49a 100644 --- a/README +++ b/README @@ -80,28 +80,62 @@ Development snapshots make no ABI stability guarantees for new ABI introduced since the last stable release. Development snapshots are likely to have more bugs than stable releases, obviously. -Configuration +Configuration === -dbus could be build by using autotools or cmake. +This branch of dbus can be built by using Autotools, CMake or Meson. +The Meson build system is currently considered experimental, but is +likely to become the recommended build system in future. -When using autotools the configure step is initiated by running ./configure +Older versions of dbus required Autotools or CMake, with Autotools +recommended for Unix systems and CMake recommended for Windows systems. + +When using Autotools, the configure step is initiated by running ./configure with or without additional configuration flags. dbus requires GNU Make (on BSD systems, this is typically called gmake) or a "make" implementation with compatible extensions. -When using cmake the configure step is initiated by running the cmake -program with or without additional configuration flags. +When using CMake, the configure step is initiated by running the cmake +program with or without additional configuration flags. + +Meson only supports out-of-tree builds, and must be passed a directory to put +built and generated sources into. We'll call that directory "build" here. It's +recommended to create a separate build directory for each configuration you +might want to use. + +Basic configuration is done with: + +``` sh +meson build/ +``` + +This will create the build directory. If any dependencies are missing, you can +install them, or try to remove the dependency with a Meson configuration option +(see below). Configuration flags === -When using autotools, run "./configure --help" to see the possible +When using Autotools, run "./configure --help" to see the possible configuration options and environment variables. -When using cmake, inspect README.cmake to see the possible +When using CMake, inspect README.cmake to see the possible configuration options and environment variables. - + +When using Meson, to review the options which Meson chose, run: + +``` sh +meson configure build/ +``` + +With additional arguments meson configure can be used to change options for a +previously configured build directory. All options passed to this command are in +the form `-D "option"="value"`. For example: + +``` sh +meson configure build/ -Dprefix=/tmp/install +``` + API/ABI Policy === -- cgit v1.2.1