The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Tag:
Branch:
Tree:
72cd2a395a
0.35.1
0.41
0.42
0.42-msi
0.44
0.45
0.46
0.47
0.48
0.49
0.50
0.51
0.52
0.53
0.54
0.55
0.56
0.57
0.58
0.59
0.60
0.61
0.62
0.63
0.64
0.tryme
1.0
1.1
1.2
1.3
1.4
1.5
1.tryme
biggen
builddirupgrade
corporations
crossenvvar
darwin_arch
deprecationdeadline
dirc2
docbuild
dolphin
dotinclude
es/0.61-plus-cython
fedora
gentarget
gh-pages
killpy3
lang-enum
master
mingwdisable
ninjalink
opthelper
optionlookup
optionrefactor
optionrefactor2
optiontree
overrides
pr8895-old
remove-parse_cmd_line_options
revert-10757-llvm-config
rustcmix
tingping/test-gir-program
tingping/test-profile
tingping/xdg-module
trigger-ciimage-builder
uniquefilenames
useargsintests
versionfile
vsmodtest
wip/default-directories
wip/ignatenko/gtester
wip/tingping/xdg-auto-post-install
wip/xclaesse/pr-10714
wip/xclaesse/pr-12097
xclaesse/pr11561-orig
0.1.0
0.10.0
0.11.0
0.12.0
0.13.0
0.14.0
0.15.0
0.16.0
0.17.0
0.18.0
0.19.0
0.2.0
0.20.0
0.21.0
0.22.0
0.23.0
0.24.0
0.25.0
0.26.0
0.27.0
0.28.0
0.29.0
0.30.0
0.31.0
0.32.0
0.33.0
0.34.0
0.35.0
0.35.1
0.36.0
0.37.0
0.37.1
0.38.0
0.38.1
0.39.0
0.39.1
0.4.0
0.4.1
0.40.0
0.40.1
0.41.0
0.41.1
0.41.2
0.42.0
0.42.1
0.43.0
0.44.0
0.44.1
0.45.0
0.45.1
0.46.0
0.46.1
0.47.0
0.47.1
0.47.2
0.48.0
0.48.1
0.48.2
0.49.0
0.49.1
0.49.2
0.5.0
0.50.0
0.50.1
0.51.0
0.51.1
0.51.2
0.52.0
0.52.1
0.53.0
0.53.1
0.53.2
0.54.0
0.54.0.rc1
0.54.1
0.54.2
0.54.3
0.55.0
0.55.0.rc1
0.55.0.rc2
0.55.1
0.55.2
0.55.3
0.56.0
0.56.0.rc1
0.56.0.rc2
0.56.1
0.56.2
0.57.0
0.57.0.rc1
0.57.1
0.57.2
0.58.0
0.58.0.rc1
0.58.1
0.58.2
0.59.0
0.59.0.rc1
0.59.0.rc2
0.59.1
0.59.2
0.59.3
0.59.4
0.6.0
0.60.0
0.60.0.rc1
0.60.0rc2
0.60.1
0.60.2
0.60.3
0.61.0
0.61.0rc1
0.61.1
0.61.2
0.61.3
0.61.4
0.61.5
0.62.0
0.62.0rc1
0.62.0rc2
0.62.1
0.62.2
0.63.0
0.63.0.rc2
0.63.0rc1
0.63.1
0.63.2
0.63.3
0.64.0
0.64.0rc1
0.64.0rc2
0.64.1
0.7.0
0.8.0
0.9.0
1.0.0
1.0.0rc1
1.0.0rc2
1.0.1
1.0.2
1.1.0
1.1.0rc1
1.1.0rc2
1.1.1
1.2.0
1.2.0rc1
1.2.0rc2
1.2.0rc3
1.2.1
1.2.2
1.2.3
1.3.0
1.3.0rc1
1.3.0rc2
1.3.0rc3
1.3.1
1.3.2
1.4.0
1.4.0rc1
1.4.0rc2
1.4.1
1.4.2
1.5.0
1.5.0rc1
1.5.0rc2
1.5.0rc3
1.5.1
1.5.2
1.6.0
1.6.0rc1
1.6.0rc2
${ noResults }
meson/test cases/failing/130 invalid ast
Eli Schwartz
878c1604e6
If the meson.build file is sufficiently "broken", even attempting to lex and parse it will totally fail, and we error out without getting the opportunity to evalaute the project() function. This can fairly easily happen if we add new grammar to the syntax, which old versions of meson cannot understand. Setting a minimum meson_version doesn't help, because people with a too-old version of meson get parser errors instead of advice about upgrading meson. Examples of this include adding dict support to meson. There are two general approaches to solving this issue, one of which projects are empowered to do: - refactor the project to place too-new syntax in a subdir() loaded build file, so the root file can be interpreted - teach meson to catch errors in building the initial AST, and just load enough of the AST to check for meson_version advice This implements the latter, allowing to future-proof the build grammar. |
2 years ago | |
---|---|---|
.. | ||
meson.build | handle meson_version even when the build file fails to parse | 2 years ago |
test.json | handle meson_version even when the build file fails to parse | 2 years ago |