This instructs tools like pip that meson requires python 3.5 or greater,
so if one tries to install on an older version pip will fall back to an
older version of meson.
This won't fix 0.45 since it's already in the wild (unless someone wants
to delete and re-upload the version on pypi). But it should fix future
versions.
Retain the hand rolled version check, but update it to enforce our
actual requirements.
Starting from 8fc4244187, tests
failed on my system (python 3.6 arch) because
shutil.which('meson.py') returns 'meson.py', not './meson.py'.
Refactor that codepath by using os.path.isabs instead of
"m_dir == '.'", also remove the adjacent comment because
it doesn't make much sense.
Since [1], python3 is now an alias for python, so installing it, rather than
upgrading it, will fail.
It seems that homebrew can't do this upgrade without breaking python2, so
uninstall and reinstall python2 (and mercurial which depends on it) to work
around that problem.
[1] https://brew.sh/2018/01/19/homebrew-1.5.0/
Enable 'test cases/frameworks/10 gtk-doc' if gtkdoc version is 1.26 or
later.
Old versions of gtkdoc-scan also output the version to stdout rather than
stderr, so be sure to handle that...
Former test is extremely hard to follow,
target names are inconsistent with directory names,
test case mixes up 2 separate testing scenarios,
names are meaningless. In order to fix this
provides comments what each command is doing and why,
renamed targets into descriptive and longer names,
made names consistent with contents so that it is easier
to follow test logic without looking up source code.
Replace the logic where a test setup with no project specifier defaults to
the main project with one that takes the test setup from the same
(sub)project from where the to-be-executed test has been read from.
Use $project_name:$test_setup namespace scheme for test setups. This
allows one to choose from which (sub)project a test setup is taken from
should there be several sharing the same name. Defaults to the main
project. E.g. "meson test --setup subproj:valgrind".
[GitHub links to your Contributing instructions when people send pull
requests](https://help.github.com/articles/setting-guidelines-for-repository-contributors/).
For this reason it is good for this file to be a bit nicer and more
welcoming.
This file has been changed to Markdown so GitHub renders it nicely and
some encouragement text has been added. The link to the full
contributing instructions has also been reformatted and this makes the
file look nicer when viewing in plain text form too!
Change the code to store D properties as plain data. Only convert them
to compiler flags in the backend. This also means we can fully parse D
arguments without needing to know the compiler being used.