Meson (Build-System)

plattformunabhängiges Buildmanagement-System

Meson ist ein Build-System, d. h. ein Software-Paket, das Programmquellcode und Abhängigkeiten wie Bilder und Icons zu einem ausführbaren Programm kompiliert und linkt. Meson steht unter der Apache-2.0-Lizenz.[5] Es ist plattformunabhängig und unterstützt Betriebssysteme wie Linux, macOS und Microsoft Windows. Meson kann Programme aus Quelltext in verschiedenen Programmiersprachen erstellen. Es eignet sich unter anderem zum Erstellen lauffähiger Programme aus Code in C, C++, D, Fortran, Java und Rust. Meson eignet sich zum Cross-Kompilieren. So kann zum Beispiel auf einem Computer mit Windows als Betriebssystem eine ausführbare Datei für das Betriebssystem Linux erstellt werden. Nach Angaben der Entwickler ist das Buildsystem auf Geschwindigkeit optimiert. Damit lauffähige Programme entstehen können, muss Meson konfiguriert werden. Meson verwendet dafür eine Beschreibungssprache, welche auf Python aufgebaut ist. Der Compiler muss wissen, was er zu tun hat, also welche Quellcodedateien er in welche Programme umwandeln muss.

Meson

Meson beim Kompilieren eines Programmes
Basisdaten

Entwickler Jussi Pakkanen
Erscheinungsjahr 2013
Aktuelle Version 1.6.0[1]
(20. Oktober 2024)
Betriebssystem plattformunabhängig
Programmier­sprache Python[2]
Kategorie Buildsystem
Lizenz Apache-Lizenz, Version 2.0[3][4]
mesonbuild.com

Meson wurde ab Dezember 2012 vom finnischen Programmierer Jussi Pakkanen entwickelt. Pakkanen war frustriert über die bestehenden Systeme, welche lauffähige Programme entwickeln konnten. Es sollte einfach zu benutzen sein, auf allen gängigen Betriebssystemen funktionieren und eine Testumgebung integrieren. Nach zwei Monaten veröffentlichte er die erste Version.[6] Ursprünglich unterstützte Meson nur die Programmiersprachen C, C++, Java, und Vala.

Voraussetzungen

Bearbeiten

Voraussetzung sind Python (Version 3.6 oder höher) und das Buildsystem Ninja. Bei mesonbuild.com gibt es einen Schnelleinstieg[7] und weitere Dokumentationen.

Verwendung

Bearbeiten

systemd unterstützt Meson seit Version 234, ab 235 wird dieses ausschließlich genutzt.[8] Das Gnome-Projekt hat sich zum Ziel gesetzt, seine Komponenten vollständig auf Meson zu migrieren.[9] Der X.Org-Server[10] setzt ab Version 21.1 vollständig auf Meson. Ebenso unterstützt Mesa 3D[11] Meson zumindest teilweise. Auf der Meson-Projektseite werden weitere Anwender der Software genannt.[12]

Bei Eclipse/CDT[13] gibt es Projektunterstützung für Meson. KDevelop unterstützt Meson seit KDevelop Version 5.4.[14]

Einzelnachweise

Bearbeiten
  1. Release 1.6.0. 20. Oktober 2024 (abgerufen am 22. Oktober 2024).
  2. Meson build system on Open Hub: Languages Page. (englisch, abgerufen am 30. Januar 2022).
  3. GitHub: COPYING. (englisch, abgerufen am 30. Januar 2022).
  4. The Meson Build system: Legal information. (englisch, abgerufen am 30. Januar 2022).
  5. mesonbuild.com Legal information. Abgerufen am 8. Juni 2021.
  6. Tim Schürmann: A Better Builder, admin-magazine.com
  7. https://mesonbuild.com/Quick-guide.html
  8. Ulrich Bantle: Systemd 235 nutzt Meson als Build-System. In: www.linux-magazin.de. Computec Media GmbH, 9. Oktober 2017, abgerufen am 8. Juni 2021.
  9. GNOME Goal: Port modules to use Meson build system, abgerufen am 11. Juni 2021.
  10. X.Org Server Bids Farewell To Autotools, abgerufen am 29. Oktober 2021.
  11. Mesa Developers Move Closer To Dropping Autotools Build System In Favor Of Meson, abgerufen am 11. Juni 2021.
  12. List of projects using Meson, abgerufen am 11. Juni 2021.
  13. Jonah Graham: CDT/Meson/User Guide. In: wiki.eclipse.org. 28. Januar 2020, abgerufen am 8. Juni 2021 (englisch).
  14. https://www.kdevelop.org/news/kdevelop-540-released