diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..868728d --- /dev/null +++ b/README.md @@ -0,0 +1,99 @@ +<p align="center"> +<img src="https://mesonbuild.com/assets/images/meson_logo.png"> +</p> +MesonĀ® is a project to create the best possible next-generation +build system. + +#### Status + +[![PyPI](https://img.shields.io/pypi/v/meson.svg)](https://pypi.python.org/pypi/meson) +[![Build Status](https://dev.azure.com/jussi0947/jussi/_apis/build/status/mesonbuild.meson)](https://dev.azure.com/jussi0947/jussi/_build/latest?definitionId=1) +[![Codecov](https://codecov.io/gh/mesonbuild/meson/coverage.svg?branch=master)](https://codecov.io/gh/mesonbuild/meson/branch/master) + +#### Dependencies + + - [Python](https://python.org) (version 3.7 or newer) + - [Ninja](https://ninja-build.org) (version 1.8.2 or newer) + +#### Installing from source + +Meson is available on [PyPi](https://pypi.python.org/pypi/meson), so +it can be installed with `pip3 install meson`. The exact command to +type to install with `pip` can vary between systems, be sure to use +the Python 3 version of `pip`. + +If you wish you can install it locally with the standard Python command: + +```console +python3 -m pip install meson +``` + +For builds using Ninja, Ninja can be downloaded directly from Ninja +[GitHub release page](https://github.com/ninja-build/ninja/releases) +or via [PyPi](https://pypi.python.org/pypi/ninja) + +```console +python3 -m pip install ninja +``` + +More on Installing Meson build can be found at the +[getting meson page](https://mesonbuild.com/Getting-meson.html). + +#### Creating a standalone script + +Meson can be run as a [Python zip +app](https://docs.python.org/3/library/zipapp.html). To generate the +executable run the following command: + + ./packaging/create_zipapp.py --outfile meson.pyz --interpreter '/usr/bin/env python3' <source checkout> + +#### Running + +Meson requires that you have a source directory and a build directory +and that these two are different. In your source root must exist a +file called `meson.build`. To generate the build system run this +command: + +`meson setup <source directory> <build directory>` + +Depending on how you obtained Meson the command might also be called +`meson.py` instead of plain `meson`. In the rest of this document we +are going to use the latter form. + +You can omit either of the two directories, and Meson will substitute +the current directory and autodetect what you mean. This allows you to +do things like this: + +```console +cd <source root> +meson setup builddir +``` + +To compile, cd into your build directory and type `ninja`. To run unit +tests, type `ninja test`. + +More on running Meson build system commands can be found at the +[running meson page](https://mesonbuild.com/Running-Meson.html) +or by typing `meson --help`. + +#### Contributing + +We love code contributions. See the [contribution +page](https://mesonbuild.com/Contributing.html) on the website for +details. + + +#### IRC + +The channel to use is `#mesonbuild` either via Matrix ([web +interface][matrix_web]) or [OFTC IRC][oftc_irc]. + +[matrix_web]: https://app.element.io/#/room/#mesonbuild:matrix.org +[oftc_irc]: https://www.oftc.net/ + +#### Further info + +More information about the Meson build system can be found at the +[project's home page](https://mesonbuild.com). + +Meson is a registered trademark of ***Jussi Pakkanen***. |