Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
The Meson Build System
Failed to load latest commit information.
cross Fix ARM strip binary path.
data Create simple Emacs major mode.
man Bumped version number for release.
manual tests A few tweaks for msvc.
modules A very simple module implementation to get things going.
test cases Make sure that build and source subdirectories are always in search
tools Convert project name.
.gitattributes Created a git attributes file.
.gitignore A very simple module implementation to get things going.
COPYING Start of project.
authors.txt An implementation of build_always as slightly modified from the origi…
backends.py Harmonised copyright declarations.
build.py I meant to do this originally.
commandrunner.py Harmonised copyright declarations.
compilers.py Add thread_link_flags to static linkers.
contributing.txt Tests are fun.
coredata.py New version number for new development.
create_release.sh A script to create source tarballs.
delwithsuffix.py Harmonised copyright declarations.
dependencies.py Fix gmock when compiling from source on Debian derivatives.
depfixer.py Harmonised copyright declarations.
environment.py Made gtest and gmock work properly on 64 bit Fedora, which uses /usr/…
install_meson.py A very simple module implementation to get things going.
interpreter.py A very simple module implementation to get things going.
meson.py Use argparse in introspector.
meson_install.py Fix destdir for install targets. Closes #32.
meson_test.py And finally use argparse in meson_test. Closes #47.
mesonconf.py Use argparse in mesonconf.py.
mesongui.py Harmonised copyright declarations.
mesonintrospect.py Use argparse in introspector.
mesonlib.py Made gtest and gmock work properly on 64 bit Fedora, which uses /usr/…
mesonmain.ui Display options in a form.
mesonrunner.ui UI file for external program runner.
mesonstart.ui Set up directories with launcher.
mlog.py Harmonised copyright declarations.
mparser.py Removed shebang lines from files that are not executable.
ninjabackend.py Make sure that build and source subdirectories are always in search
optinterpreter.py Verify that option names do not have invalid characters.
readme.txt Created a contribution info file.
run_cross_test.py Use lib as library path in unit tests.
run_tests.py Use argparse instead of optparse in run_tests.
rustrunner.py Harmonised copyright declarations.
symbolextractor.py User optparse in symbolextractor.
vcstagger.py added support for optional custom command and replace_string paramete…
vs2010backend.py Harmonised copyright declarations.
wrap.py Make directories in build tree, too.
xcodebackend.py Harmonised copyright declarations.

readme.txt

Meson® is project to create the best possible next-generation
build system.


Dependencies

Python   http://python.org (version 3.3 or newer)
Ninja    http://martine.github.com/ninja/


Installing from source

You can run Meson directly from a revision control checkout or an
extracted tarball.  Installing it system-wide is simple.

Configure step: None
Compile step:   None
Unit test step: ./run_tests.py
Install step:   [sudo] ./install_meson.py --prefix /your/prefix --destdir /destdir/path

The default value of prefix is /usr/local. The default value of destdir
is empty. 


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 <source directory> <build directory>

You can omit either of the two directories, and Meson will substitute
the current directory and autodetect what you mean. This mean that you
can do things like this:

cd source_root; mkdir build; cd build; meson.py ..
cd source_root; mkdir build; meson.py build

To compile, cd into your build directory and type 'ninja'. To run unit
tests, type 'ninja test'.

Install is the same but it can take an extra argument:

DESTDIR=/destdir/path ninja install

DESTDIR can be omitted. If you are installing to system directories,
you may need to run this command with sudo.


Contributing

We love code contributions. See the contributing.txt file for
details.


Further info

The home page of Meson can be found here:

https://jpakkane.github.io/meson/

Meson is a registered trademark of Jussi Pakkanen
Something went wrong with that request. Please try again.