Skip to content

Add meson build system#32

Open
tintou wants to merge 2 commits into
linux-nfc:masterfrom
tintou:tintou/meson
Open

Add meson build system#32
tintou wants to merge 2 commits into
linux-nfc:masterfrom
tintou:tintou/meson

Conversation

@tintou

@tintou tintou commented May 6, 2026

Copy link
Copy Markdown
Contributor

Add the Meson build system alongside autotools allowing to keep the current build system working until the port is validated by distributors.

The Meson build system has a syntax easier to understand than autotools, build faster
and allow to use ninja instead of make.

It also makes things safer for cross-compilation and dependencies handling.

Keep the autotools CI working as we need both to be proven to work.

@tintou tintou force-pushed the tintou/meson branch 6 times, most recently from 4fec381 to 3d8599e Compare May 6, 2026 15:51
@krzk

krzk commented May 6, 2026

Copy link
Copy Markdown
Collaborator

This is interesting, I will need a bit of time to review, so don't worry if you do not hear from me - it still will be in todo list.

What I see now is:

  1. Your commits need proper description explaining why you are doing, why you have chosen that approach (like keeping automake stuff).
  2. How does this interact with existing autoconf/automake? Can we replace completely existing build tools?

@tintou

tintou commented May 6, 2026

Copy link
Copy Markdown
Contributor Author

I've updated the commit to explain the choice of Meson.

I'm keeping the current autotools build system alive until all distributors have confirmed that there is no regression with the Meson port. Most project that switched to Meson did so during at least one release to allow the distros to fallback to the autotools build system in case something is missing.

@krzk

krzk commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

OK, thanks for the explanation. I might not have time to review this in next 2-3 weeks, though. Sorry for that, but I want to let you know that it still is relevant thus I hope I will get to that a bit later.

@tintou

tintou commented Jun 5, 2026

Copy link
Copy Markdown
Contributor Author

Thank you, no worries, we will soon be arriving in summer with less availability anyway :)

@a-andre a-andre left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tintou Thanks for working on meson build system support. I left a few comments.

Comment thread .github/workflows/ci-meson.yml
Comment thread test/meson.build Outdated
Comment thread tools/meson.build Outdated
Comment thread meson.build Outdated
Comment thread meson.build Outdated
Comment thread meson.build Outdated
Comment thread meson.build Outdated
Comment thread meson.build
@krzk

krzk commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

Few more comments:

  1. Please update also docs documenting how to install using meson (README). Old method (INSTALL) can be kept, maybe renamed to INSTALL.autotools?
  2. You might be depending on specific meson version (1.1+?), so this also needs to be part of README. I see CI scripts try pip package in case of older version, is this really a case for some Debians?

@tintou tintou force-pushed the tintou/meson branch 3 times, most recently from e822bc9 to 0cedb34 Compare July 3, 2026 08:46
@tintou

tintou commented Jul 3, 2026

Copy link
Copy Markdown
Contributor Author

Few more comments:

1. Please update also docs documenting how to install using meson (README). Old method (INSTALL) can be kept, maybe renamed to INSTALL.autotools?

2. You might be depending on specific meson version (1.1+?), so this also needs to be part of README. I see CI scripts try pip package in case of older version, is this really a case for some Debians?
  1. I've updated the README and renamed INSTALL to INSTALL.autotools
  2. Debian Bookworm ships meson 1.0.1 (but 1.7 is in bookworm-backports) and Ubuntu Jammy ships meson 0.61.2. This has been considered as a non-issue by many projects given the ease to install a more recent version with pip if required.

tintou added 2 commits July 3, 2026 10:57
Add the Meson build system alongside autotools allowing to keep the current build
system working until the port is validated by distributors.

The Meson build system has a syntax easier to understand than autotools, build faster
and allow to use ninja instead of make.

It also makes things safer for cross-compilation and dependencies handling.
Keep the autotools CI working as we need both to be proven to work.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants