Skip to main content

ccmake for Meson projects

Project description

mmeson

REUSE status CI status

TUI to configure Meson projects similar to ccmake for CMake projects

Installation

Via pip

pip install mmeson

Running

python3 -m mmeson path/to/builddir

It is not need to run it in the project's source folder, however you need to setup the project beforehand.

Changed items will start with a star, press enter to edit a filed and enter to exit editing (except fields of type boolean or combo). Press c to configure and exit and q to exit without configuring.

Note: you can always set options via meson configure path/to/builddir -Doption=value in addition to mmeson. This does not reconfigure the project though, this needs to be done via meson setup --reconfigure path/to/builddir. When exiting mmeson with c, it combines both of these steps, while exiting with g does not reconfigure the project. Note that this will happen automatically though when you run meson compile.

Dependencies

Contributing

Contributions are welcome, the code is well documented, especially the TUI part. You can find documentation of the internal function and classes here.

ToDo-List

  • Custom Widget for array editing (instead of writing string only edit array entries)
  • Search function for build option
  • Path completion via TAB when editing strings / arrays
  • Unit tests and coverage report
  • More elaborate error handling (e.g. array with choices)
  • Fix workaround for colored output

License

Notable mentions

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mmeson-0.2.0.tar.gz (23.2 kB view hashes)

Uploaded Source

Built Distribution

mmeson-0.2.0-py3-none-any.whl (23.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page