public inbox for [email protected]
 help / color / mirror / Atom feed
* [PATCH liburing] add additional meson build system support
@ 2022-07-27 15:27 Florian Fischer
  2022-07-27 15:27 ` [PATCH liburing 1/9] add Meson build system Florian Fischer
                   ` (9 more replies)
  0 siblings, 10 replies; 13+ messages in thread
From: Florian Fischer @ 2022-07-27 15:27 UTC (permalink / raw)
  To: io-uring; +Cc: Florian Schmaus, Florian Fischer

This patch series add an additional build system to liburing based
on the initial meson code proposed by Peter Eszlari <[email protected]>.
Since the initial proposal [1] in Februar 2021 I took up the meson code and
improved, maintained and made it available in the meson wrapdb [2].

Meson is a modern, fast and simple build system. Adoption started mainly in the
desktop space (Gnome, X11, Mesa) to replace autotools, but since then,
some low level projects (systemd, qemu) have switched to it too.

Using meson as build system has multiple advantages over the current custom
configure plus Makefile implementation:

* Out-of-source builds
* Seamlessly consumable by other projects using meson
* Meson generates the compile_commands.json database used i.e., by clangd
* Packagers can use a standardized and well known build system

 .github/workflows/build.yml      |  45 ++++++++-
 .gitignore                       |   2 +
 examples/meson.build             |  19 ++++
 man/meson.build                  | 116 ++++++++++++++++++++++
 meson.build                      | 119 ++++++++++++++++++++++
 meson_options.txt                |  14 +++
 src/include/liburing/compat.h.in |   7 ++
 src/include/liburing/meson.build |  51 ++++++++++
 src/include/meson.build          |   3 +
 src/meson.build                  |  28 ++++++
 test/meson.build                 | 219 +++++++++++++++++++++++++++++++++++++++++
 11 files changed, 619 insertions(+), 4 deletions(-)

The patch set requires at least meson version 0.53 satisfied by most distributions.

It has a working github bot integration equivalent to the current build system.

Myself and multiple other github users (Yury Zhuravlev @stalkberg, Tim-Philipp
Müller @tp-m) [3] proposed to maintain the meson code once included.
For support regarding the meson code I am available via email or the mailing list.

[1]: https://github.com/axboe/liburing/pull/297
[2]: https://github.com/mesonbuild/wrapdb/commit/b800267fa9b1e05b03faf968c6ce6a882b6a2494
[3]: https://github.com/axboe/liburing/pull/622

Link: https://github.com/axboe/liburing/pull/622
Signed-off-by: Florian Fischer <[email protected]>
---

This patch series cleanly applies to the current liburing master (1842b2a)
and includes all tests, examples and manpages available up to 1842b2a.



^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2022-07-29  7:53 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-27 15:27 [PATCH liburing] add additional meson build system support Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 1/9] add Meson build system Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 2/9] meson: update meson build files for liburing 2.3 Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 3/9] meson: update available tests to " Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 4/9] meson: update installed manpages " Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 5/9] meson: add default test setup running each test once Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 6/9] meson: support building without libc Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 7/9] meson: add 'raw' test suite Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 8/9] github bot: add jobs for meson Florian Fischer
2022-07-27 15:27 ` [PATCH liburing 9/9] meson: update available examples to liburing 2.3 Florian Fischer
2022-07-27 19:21 ` [PATCH liburing] add additional meson build system support Bart Van Assche
2022-07-27 20:53   ` Florian Fischer
2022-07-29  7:47     ` Florian Schmaus

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox