Bug 343935 - Consider adding support for Meson build system
Summary: Consider adding support for Meson build system
Status: RESOLVED FIXED
Alias: None
Product: kdevelop
Classification: Applications
Component: Build tools: Meson (show other bugs)
Version: unspecified
Platform: unspecified All
: NOR wishlist
Target Milestone: ---
Assignee: kdevelop-bugs-null
URL:
Keywords: junior-jobs
Depends on:
Blocks:
 
Reported: 2015-02-08 12:19 UTC by Jussi Pakkanen
Modified: 2019-01-11 18:06 UTC (History)
10 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.4.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jussi Pakkanen 2015-02-08 12:19:40 UTC
Meson is a build system designed to be both very powerful and easy to use. It has native support for things such as Qt, unit tests, precompiled headers etc. It is also designed to be as easy to embed in IDEs as possible. As an example it provides full introspection to all things an IDE might be interested in in simple JSON files.

The project home page is here: https://github.com/jpakkane/meson

A video presentation from LCA2015 can be found here: https://www.youtube.com/watch?v=KPi0AuVpxLI

There has been some talk in adding Meson support to Gnome Builder here: https://bugzilla.gnome.org/show_bug.cgi?id=743280

Thanks,


Reproducible: Always
Comment 1 RJVB 2017-08-04 17:27:32 UTC
I second this.

Use case of potential interest: libinput now uses meson.
Comment 2 Luca Weiss 2017-10-07 13:18:35 UTC
I would also be interested in meson intergration.
Comment 3 Kevin Funk 2017-11-04 17:21:03 UTC
Note: There's ongoing work in the kdevelop.git meson branch.

Please see this discussion:
  https://mail.kde.org/pipermail/kdevelop-devel/2017-October/059372.html

Happy to receive further contributions!
Comment 4 Francis Herne 2019-01-11 16:58:12 UTC
The Meson plugin has now been greatly improved thanks to Daniel Mensinger, and merged into KDevelop master:

https://commits.kde.org/kdevelop/b53ea9aa452ef57595ab488405f21e8bdd989f8f

===
This patch implements the basic functionality of the meson plugin.
Introspection (targets, include dirs, etc.) is not implemented yet.

The current features are:
  - (re)configuring a meson project
  - building with ninja
  - GUI for configuring a build directory (currently only install prefix and build type)
  - managing multiple build directories
  - GUI for adding a new build directory
===

Obviously there's still room for improvement. Please file any specific wishlist items or bugs under the new "Build tools: Meson" component.
Comment 5 Luca Weiss 2019-01-11 17:05:45 UTC
That's great to hear, thanks Daniel!
Comment 6 Daniel Mensinger 2019-01-11 18:06:12 UTC
No Problem. Also, the plugin is not finished yet and I am actively working on it. I am currently implementing the meson build options integration.