aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.appveyor.yml13
-rw-r--r--__main__.py4
-rw-r--r--data/syntax-highlighting/vim/syntax/meson.vim3
-rw-r--r--docs/markdown/IDE-integration.md6
-rw-r--r--docs/markdown/Reference-manual.md2
-rw-r--r--docs/markdown/Reference-tables.md2
-rw-r--r--mesonbuild/backend/backends.py8
-rw-r--r--mesonbuild/backend/vs2010backend.py2
-rw-r--r--mesonbuild/compilers/c.py21
-rw-r--r--mesonbuild/compilers/compilers.py3
-rw-r--r--mesonbuild/dependencies/base.py63
-rw-r--r--mesonbuild/environment.py22
-rw-r--r--mesonbuild/interpreter.py18
-rw-r--r--mesonbuild/mesonlib.py29
-rw-r--r--mesonbuild/minstall.py14
-rw-r--r--mesonbuild/modules/python.py55
-rw-r--r--mesonbuild/scripts/gtkdochelper.py23
-rw-r--r--mesonbuild/wrap/wrap.py8
-rwxr-xr-xrun_meson_command_tests.py9
-rwxr-xr-xrun_project_tests.py6
-rwxr-xr-xrun_unittests.py330
-rw-r--r--test cases/common/125 shared module/installed_files.txt1
-rw-r--r--test cases/common/125 shared module/meson.build7
-rw-r--r--test cases/common/125 shared module/nosyms.c4
-rw-r--r--test cases/common/157 dotinclude/dotproc.c (renamed from test cases/common/158 dotinclude/dotproc.c)0
-rw-r--r--test cases/common/157 dotinclude/meson.build (renamed from test cases/common/158 dotinclude/meson.build)0
-rw-r--r--test cases/common/157 dotinclude/stdio.h (renamed from test cases/common/158 dotinclude/stdio.h)0
-rw-r--r--test cases/common/158 reserved targets/all/meson.build (renamed from test cases/common/159 reserved targets/all/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/benchmark/meson.build (renamed from test cases/common/159 reserved targets/benchmark/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/clean-ctlist/meson.build (renamed from test cases/common/159 reserved targets/clean-ctlist/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/clean-gcda/meson.build (renamed from test cases/common/159 reserved targets/clean-gcda/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/clean-gcno/meson.build (renamed from test cases/common/159 reserved targets/clean-gcno/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/clean/meson.build (renamed from test cases/common/159 reserved targets/clean/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/coverage-html/meson.build (renamed from test cases/common/159 reserved targets/coverage-html/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/coverage-text/meson.build (renamed from test cases/common/159 reserved targets/coverage-text/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/coverage-xml/meson.build (renamed from test cases/common/159 reserved targets/coverage-xml/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/coverage/meson.build (renamed from test cases/common/159 reserved targets/coverage/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/dist/meson.build (renamed from test cases/common/159 reserved targets/dist/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/distcheck/meson.build (renamed from test cases/common/159 reserved targets/distcheck/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/install/meson.build (renamed from test cases/common/159 reserved targets/install/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/meson.build (renamed from test cases/common/159 reserved targets/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/phony/meson.build (renamed from test cases/common/159 reserved targets/phony/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/reconfigure/meson.build (renamed from test cases/common/159 reserved targets/reconfigure/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/runtarget/meson.build (renamed from test cases/common/159 reserved targets/runtarget/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/scan-build/meson.build (renamed from test cases/common/159 reserved targets/scan-build/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/test.c (renamed from test cases/common/159 reserved targets/test.c)0
-rw-r--r--test cases/common/158 reserved targets/test/meson.build (renamed from test cases/common/159 reserved targets/test/meson.build)0
-rw-r--r--test cases/common/158 reserved targets/uninstall/meson.build (renamed from test cases/common/159 reserved targets/uninstall/meson.build)0
-rw-r--r--test cases/common/159 duplicate source names/dir1/file.c (renamed from test cases/common/160 duplicate source names/dir1/file.c)0
-rw-r--r--test cases/common/159 duplicate source names/dir1/meson.build (renamed from test cases/common/160 duplicate source names/dir1/meson.build)0
-rw-r--r--test cases/common/159 duplicate source names/dir2/dir1/file.c (renamed from test cases/common/160 duplicate source names/dir2/dir1/file.c)0
-rw-r--r--test cases/common/159 duplicate source names/dir2/file.c (renamed from test cases/common/160 duplicate source names/dir2/file.c)0
-rw-r--r--test cases/common/159 duplicate source names/dir2/meson.build (renamed from test cases/common/160 duplicate source names/dir2/meson.build)0
-rw-r--r--test cases/common/159 duplicate source names/dir3/dir1/file.c (renamed from test cases/common/160 duplicate source names/dir3/dir1/file.c)0
-rw-r--r--test cases/common/159 duplicate source names/dir3/file.c (renamed from test cases/common/160 duplicate source names/dir3/file.c)0
-rw-r--r--test cases/common/159 duplicate source names/dir3/meson.build (renamed from test cases/common/160 duplicate source names/dir3/meson.build)0
-rw-r--r--test cases/common/159 duplicate source names/meson.build (renamed from test cases/common/160 duplicate source names/meson.build)0
-rw-r--r--test cases/common/160 index customtarget/check_args.py (renamed from test cases/common/161 index customtarget/check_args.py)0
-rw-r--r--test cases/common/160 index customtarget/gen_sources.py (renamed from test cases/common/161 index customtarget/gen_sources.py)0
-rw-r--r--test cases/common/160 index customtarget/lib.c (renamed from test cases/common/161 index customtarget/lib.c)0
-rw-r--r--test cases/common/160 index customtarget/meson.build (renamed from test cases/common/161 index customtarget/meson.build)0
-rw-r--r--test cases/common/160 index customtarget/subdir/foo.c (renamed from test cases/common/161 index customtarget/subdir/foo.c)0
-rw-r--r--test cases/common/160 index customtarget/subdir/meson.build (renamed from test cases/common/161 index customtarget/subdir/meson.build)0
-rw-r--r--test cases/common/161 wrap file should not failed/meson.build (renamed from test cases/common/162 wrap file should not failed/meson.build)0
-rw-r--r--test cases/common/161 wrap file should not failed/src/meson.build (renamed from test cases/common/162 wrap file should not failed/src/meson.build)0
-rw-r--r--test cases/common/161 wrap file should not failed/src/subprojects/foo/prog2.c (renamed from test cases/common/162 wrap file should not failed/src/subprojects/foo/prog2.c)0
-rw-r--r--test cases/common/161 wrap file should not failed/src/subprojects/prog.c (renamed from test cases/common/162 wrap file should not failed/src/subprojects/prog.c)0
-rw-r--r--test cases/common/161 wrap file should not failed/subprojects/packagecache/zlib-1.2.8-8-wrap.zip (renamed from test cases/common/162 wrap file should not failed/subprojects/packagecache/zlib-1.2.8-8-wrap.zip)0
-rw-r--r--test cases/common/161 wrap file should not failed/subprojects/packagecache/zlib-1.2.8.tar.gz (renamed from test cases/common/162 wrap file should not failed/subprojects/packagecache/zlib-1.2.8.tar.gz)0
-rw-r--r--test cases/common/161 wrap file should not failed/subprojects/zlib-1.2.8/foo.c (renamed from test cases/common/162 wrap file should not failed/subprojects/zlib-1.2.8/foo.c)0
-rw-r--r--test cases/common/161 wrap file should not failed/subprojects/zlib-1.2.8/meson.build (renamed from test cases/common/162 wrap file should not failed/subprojects/zlib-1.2.8/meson.build)0
-rw-r--r--test cases/common/161 wrap file should not failed/subprojects/zlib.wrap (renamed from test cases/common/162 wrap file should not failed/subprojects/zlib.wrap)0
-rw-r--r--test cases/common/162 includedir subproj/meson.build (renamed from test cases/common/163 includedir subproj/meson.build)0
-rw-r--r--test cases/common/162 includedir subproj/prog.c (renamed from test cases/common/163 includedir subproj/prog.c)0
-rw-r--r--test cases/common/162 includedir subproj/subprojects/inctest/include/incfile.h (renamed from test cases/common/163 includedir subproj/subprojects/inctest/include/incfile.h)0
-rw-r--r--test cases/common/162 includedir subproj/subprojects/inctest/meson.build (renamed from test cases/common/163 includedir subproj/subprojects/inctest/meson.build)0
-rw-r--r--test cases/common/163 subproject dir name collision/a.c (renamed from test cases/common/164 subproject dir name collision/a.c)0
-rw-r--r--test cases/common/163 subproject dir name collision/custom_subproject_dir/B/b.c (renamed from test cases/common/164 subproject dir name collision/custom_subproject_dir/B/b.c)0
-rw-r--r--test cases/common/163 subproject dir name collision/custom_subproject_dir/B/meson.build (renamed from test cases/common/164 subproject dir name collision/custom_subproject_dir/B/meson.build)0
-rw-r--r--test cases/common/163 subproject dir name collision/custom_subproject_dir/C/c.c (renamed from test cases/common/164 subproject dir name collision/custom_subproject_dir/C/c.c)0
-rw-r--r--test cases/common/163 subproject dir name collision/custom_subproject_dir/C/meson.build (renamed from test cases/common/164 subproject dir name collision/custom_subproject_dir/C/meson.build)0
-rw-r--r--test cases/common/163 subproject dir name collision/meson.build (renamed from test cases/common/164 subproject dir name collision/meson.build)0
-rw-r--r--test cases/common/163 subproject dir name collision/other_subdir/custom_subproject_dir/other.c (renamed from test cases/common/164 subproject dir name collision/other_subdir/custom_subproject_dir/other.c)0
-rw-r--r--test cases/common/163 subproject dir name collision/other_subdir/meson.build (renamed from test cases/common/164 subproject dir name collision/other_subdir/meson.build)0
-rw-r--r--test cases/common/164 config tool variable/meson.build (renamed from test cases/common/165 config tool variable/meson.build)0
-rw-r--r--test cases/common/165 custom target subdir depend files/copyfile.py (renamed from test cases/common/166 custom target subdir depend files/copyfile.py)0
-rw-r--r--test cases/common/165 custom target subdir depend files/meson.build (renamed from test cases/common/166 custom target subdir depend files/meson.build)0
-rw-r--r--test cases/common/165 custom target subdir depend files/subdir/dep.dat (renamed from test cases/common/166 custom target subdir depend files/subdir/dep.dat)0
-rw-r--r--test cases/common/165 custom target subdir depend files/subdir/foo.c.in (renamed from test cases/common/166 custom target subdir depend files/subdir/foo.c.in)0
-rw-r--r--test cases/common/165 custom target subdir depend files/subdir/meson.build (renamed from test cases/common/166 custom target subdir depend files/subdir/meson.build)0
-rw-r--r--test cases/common/166 external program shebang parsing/input.txt (renamed from test cases/common/167 external program shebang parsing/input.txt)0
-rw-r--r--test cases/common/166 external program shebang parsing/main.c (renamed from test cases/common/167 external program shebang parsing/main.c)0
-rw-r--r--test cases/common/166 external program shebang parsing/meson.build (renamed from test cases/common/167 external program shebang parsing/meson.build)0
-rw-r--r--test cases/common/166 external program shebang parsing/script.int.in (renamed from test cases/common/167 external program shebang parsing/script.int.in)0
-rw-r--r--test cases/common/167 disabler/meson.build (renamed from test cases/common/168 disabler/meson.build)0
-rw-r--r--test cases/common/168 array option/meson.build (renamed from test cases/common/169 array option/meson.build)0
-rw-r--r--test cases/common/168 array option/meson_options.txt (renamed from test cases/common/169 array option/meson_options.txt)0
-rw-r--r--test cases/common/169 custom target template substitution/checkcopy.py (renamed from test cases/common/170 custom target template substitution/checkcopy.py)0
-rw-r--r--test cases/common/169 custom target template substitution/foo.c.in (renamed from test cases/common/170 custom target template substitution/foo.c.in)0
-rw-r--r--test cases/common/169 custom target template substitution/meson.build (renamed from test cases/common/170 custom target template substitution/meson.build)0
-rw-r--r--test cases/common/170 not-found dependency/meson.build (renamed from test cases/common/171 not-found dependency/meson.build)0
-rw-r--r--test cases/common/170 not-found dependency/sub/meson.build (renamed from test cases/common/171 not-found dependency/sub/meson.build)0
-rw-r--r--test cases/common/170 not-found dependency/subprojects/trivial/meson.build (renamed from test cases/common/171 not-found dependency/subprojects/trivial/meson.build)0
-rw-r--r--test cases/common/170 not-found dependency/subprojects/trivial/trivial.c (renamed from test cases/common/171 not-found dependency/subprojects/trivial/trivial.c)0
-rw-r--r--test cases/common/170 not-found dependency/testlib.c (renamed from test cases/common/171 not-found dependency/testlib.c)0
-rw-r--r--test cases/common/171 subdir if_found/meson.build (renamed from test cases/common/172 subdir if_found/meson.build)0
-rw-r--r--test cases/common/171 subdir if_found/subdir/meson.build (renamed from test cases/common/172 subdir if_found/subdir/meson.build)0
-rw-r--r--test cases/common/172 default options prefix dependent defaults/meson.build (renamed from test cases/common/173 default options prefix dependent defaults/meson.build)0
-rw-r--r--test cases/common/173 dependency factory/meson.build (renamed from test cases/common/174 dependency factory/meson.build)0
-rw-r--r--test cases/common/174 get project license/bar.c (renamed from test cases/common/175 get project license/bar.c)0
-rw-r--r--test cases/common/174 get project license/meson.build (renamed from test cases/common/175 get project license/meson.build)0
-rw-r--r--test cases/common/175 yield/meson.build (renamed from test cases/common/176 yield/meson.build)0
-rw-r--r--test cases/common/175 yield/meson_options.txt (renamed from test cases/common/176 yield/meson_options.txt)0
-rw-r--r--test cases/common/175 yield/subprojects/sub/meson.build (renamed from test cases/common/176 yield/subprojects/sub/meson.build)0
-rw-r--r--test cases/common/175 yield/subprojects/sub/meson_options.txt (renamed from test cases/common/176 yield/subprojects/sub/meson_options.txt)0
-rw-r--r--test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/a.c (renamed from test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/a.c)0
-rw-r--r--test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/meson.build (renamed from test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/meson.build)0
-rw-r--r--test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/var/subprojects/wrap_files_might_be_here (renamed from test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/var/subprojects/wrap_files_might_be_here)0
-rw-r--r--test cases/common/176 subproject nested subproject dirs/contrib/subprojects/beta/b.c (renamed from test cases/common/177 subproject nested subproject dirs/contrib/subprojects/beta/b.c)0
-rw-r--r--test cases/common/176 subproject nested subproject dirs/contrib/subprojects/beta/meson.build (renamed from test cases/common/177 subproject nested subproject dirs/contrib/subprojects/beta/meson.build)1
-rw-r--r--test cases/common/176 subproject nested subproject dirs/meson.build11
-rw-r--r--test cases/common/176 subproject nested subproject dirs/prog.c (renamed from test cases/common/177 subproject nested subproject dirs/prog.c)0
-rw-r--r--test cases/common/177 preserve gendir/base.inp (renamed from test cases/common/178 preserve gendir/base.inp)0
-rw-r--r--test cases/common/177 preserve gendir/com/mesonbuild/subbie.inp (renamed from test cases/common/178 preserve gendir/com/mesonbuild/subbie.inp)0
-rwxr-xr-xtest cases/common/177 preserve gendir/genprog.py (renamed from test cases/common/178 preserve gendir/genprog.py)0
-rw-r--r--test cases/common/177 preserve gendir/meson.build (renamed from test cases/common/178 preserve gendir/meson.build)0
-rw-r--r--test cases/common/177 preserve gendir/testprog.c (renamed from test cases/common/178 preserve gendir/testprog.c)0
-rw-r--r--test cases/common/177 subproject nested subproject dirs/meson.build7
-rw-r--r--test cases/common/178 source in dep/bar.cpp (renamed from test cases/common/179 source in dep/bar.cpp)0
-rw-r--r--test cases/common/178 source in dep/foo.c (renamed from test cases/common/179 source in dep/foo.c)0
-rw-r--r--test cases/common/178 source in dep/generated/funname (renamed from test cases/common/179 source in dep/generated/funname)0
-rwxr-xr-xtest cases/common/178 source in dep/generated/genheader.py (renamed from test cases/common/179 source in dep/generated/genheader.py)0
-rw-r--r--test cases/common/178 source in dep/generated/main.c (renamed from test cases/common/179 source in dep/generated/main.c)0
-rw-r--r--test cases/common/178 source in dep/generated/meson.build (renamed from test cases/common/179 source in dep/generated/meson.build)0
-rw-r--r--test cases/common/178 source in dep/meson.build (renamed from test cases/common/179 source in dep/meson.build)0
-rw-r--r--test cases/common/179 generator link whole/export.h (renamed from test cases/common/180 generator link whole/export.h)0
-rwxr-xr-xtest cases/common/179 generator link whole/generator.py (renamed from test cases/common/180 generator link whole/generator.py)0
-rw-r--r--test cases/common/179 generator link whole/main.c (renamed from test cases/common/180 generator link whole/main.c)0
-rw-r--r--test cases/common/179 generator link whole/meson.build (renamed from test cases/common/180 generator link whole/meson.build)0
-rw-r--r--test cases/common/179 generator link whole/meson_test_function.tmpl (renamed from test cases/common/180 generator link whole/meson_test_function.tmpl)0
-rw-r--r--test cases/common/179 generator link whole/pull_meson_test_function.c (renamed from test cases/common/180 generator link whole/pull_meson_test_function.c)0
-rw-r--r--test cases/common/180 initial c_args/meson.build (renamed from test cases/common/181 initial c_args/meson.build)0
-rw-r--r--test cases/common/180 initial c_args/test_args.txt (renamed from test cases/common/181 initial c_args/test_args.txt)0
-rw-r--r--test cases/common/181 identical target name in subproject flat layout/foo.c (renamed from test cases/common/182 identical target name in subproject flat layout/foo.c)0
-rw-r--r--test cases/common/181 identical target name in subproject flat layout/main.c (renamed from test cases/common/182 identical target name in subproject flat layout/main.c)0
-rw-r--r--test cases/common/181 identical target name in subproject flat layout/meson.build (renamed from test cases/common/182 identical target name in subproject flat layout/meson.build)0
-rw-r--r--test cases/common/181 identical target name in subproject flat layout/subprojects/subproj/foo.c (renamed from test cases/common/182 identical target name in subproject flat layout/subprojects/subproj/foo.c)0
-rw-r--r--test cases/common/181 identical target name in subproject flat layout/subprojects/subproj/meson.build (renamed from test cases/common/182 identical target name in subproject flat layout/subprojects/subproj/meson.build)0
-rw-r--r--test cases/common/182 as-needed/config.h (renamed from test cases/common/184 as-needed/config.h)0
-rw-r--r--test cases/common/182 as-needed/libA.cpp (renamed from test cases/common/184 as-needed/libA.cpp)0
-rw-r--r--test cases/common/182 as-needed/libA.h (renamed from test cases/common/184 as-needed/libA.h)0
-rw-r--r--test cases/common/182 as-needed/libB.cpp (renamed from test cases/common/184 as-needed/libB.cpp)0
-rw-r--r--test cases/common/182 as-needed/main.cpp (renamed from test cases/common/184 as-needed/main.cpp)0
-rw-r--r--test cases/common/182 as-needed/meson.build (renamed from test cases/common/184 as-needed/meson.build)0
-rw-r--r--test cases/common/183 ndebug if-release enabled/main.c (renamed from test cases/common/185 ndebug if-release enabled/main.c)0
-rw-r--r--test cases/common/183 ndebug if-release enabled/meson.build (renamed from test cases/common/185 ndebug if-release enabled/meson.build)0
-rw-r--r--test cases/common/184 ndebug if-release disabled/main.c (renamed from test cases/common/186 ndebug if-release disabled/main.c)0
-rw-r--r--test cases/common/184 ndebug if-release disabled/meson.build (renamed from test cases/common/186 ndebug if-release disabled/meson.build)0
-rw-r--r--test cases/common/185 subproject version/meson.build (renamed from test cases/common/187 subproject version/meson.build)0
-rw-r--r--test cases/common/185 subproject version/subprojects/a/meson.build (renamed from test cases/common/187 subproject version/subprojects/a/meson.build)0
-rw-r--r--test cases/common/186 subdir_done/meson.build (renamed from test cases/common/188 subdir_done/meson.build)0
-rw-r--r--test cases/common/187 bothlibraries/libfile.c (renamed from test cases/common/189 bothlibraries/libfile.c)0
-rw-r--r--test cases/common/187 bothlibraries/main.c (renamed from test cases/common/189 bothlibraries/main.c)0
-rw-r--r--test cases/common/187 bothlibraries/meson.build (renamed from test cases/common/189 bothlibraries/meson.build)0
-rw-r--r--test cases/common/187 bothlibraries/mylib.h (renamed from test cases/common/189 bothlibraries/mylib.h)0
-rw-r--r--test cases/common/188 escape and unicode/file.c.in (renamed from test cases/common/190 escape and unicode/file.c.in)0
-rw-r--r--test cases/common/188 escape and unicode/file.py (renamed from test cases/common/190 escape and unicode/file.py)0
-rw-r--r--test cases/common/188 escape and unicode/find.py (renamed from test cases/common/190 escape and unicode/find.py)0
-rw-r--r--test cases/common/188 escape and unicode/fun.c (renamed from test cases/common/190 escape and unicode/fun.c)0
-rw-r--r--test cases/common/188 escape and unicode/main.c (renamed from test cases/common/190 escape and unicode/main.c)0
-rw-r--r--test cases/common/188 escape and unicode/meson.build (renamed from test cases/common/190 escape and unicode/meson.build)0
-rw-r--r--test cases/common/189 has link arg/meson.build (renamed from test cases/common/191 has link arg/meson.build)0
-rw-r--r--test cases/common/190 same target name flat layout/foo.c (renamed from test cases/common/192 same target name flat layout/foo.c)0
-rw-r--r--test cases/common/190 same target name flat layout/main.c (renamed from test cases/common/192 same target name flat layout/main.c)0
-rw-r--r--test cases/common/190 same target name flat layout/meson.build (renamed from test cases/common/192 same target name flat layout/meson.build)0
-rw-r--r--test cases/common/190 same target name flat layout/subdir/foo.c (renamed from test cases/common/192 same target name flat layout/subdir/foo.c)0
-rw-r--r--test cases/common/190 same target name flat layout/subdir/meson.build (renamed from test cases/common/192 same target name flat layout/subdir/meson.build)0
-rw-r--r--test cases/common/191 find override/meson.build (renamed from test cases/common/193 find override/meson.build)0
-rw-r--r--test cases/common/191 find override/otherdir/main.c (renamed from test cases/common/193 find override/otherdir/main.c)0
-rw-r--r--test cases/common/191 find override/otherdir/main2.c (renamed from test cases/common/193 find override/otherdir/main2.c)0
-rw-r--r--test cases/common/191 find override/otherdir/meson.build (renamed from test cases/common/193 find override/otherdir/meson.build)0
-rw-r--r--test cases/common/191 find override/otherdir/source.desc (renamed from test cases/common/193 find override/otherdir/source.desc)0
-rw-r--r--test cases/common/191 find override/otherdir/source2.desc (renamed from test cases/common/193 find override/otherdir/source2.desc)0
-rwxr-xr-xtest cases/common/191 find override/subdir/converter.py (renamed from test cases/common/193 find override/subdir/converter.py)0
-rwxr-xr-xtest cases/common/191 find override/subdir/gencodegen.py.in (renamed from test cases/common/193 find override/subdir/gencodegen.py.in)0
-rw-r--r--test cases/common/191 find override/subdir/meson.build (renamed from test cases/common/193 find override/subdir/meson.build)0
-rw-r--r--test cases/common/192 partial dependency/declare_dependency/headers/foo.c (renamed from test cases/common/194 partial dependency/declare_dependency/headers/foo.c)0
-rw-r--r--test cases/common/192 partial dependency/declare_dependency/headers/foo.h (renamed from test cases/common/194 partial dependency/declare_dependency/headers/foo.h)0
-rw-r--r--test cases/common/192 partial dependency/declare_dependency/main.c (renamed from test cases/common/194 partial dependency/declare_dependency/main.c)0
-rw-r--r--test cases/common/192 partial dependency/declare_dependency/meson.build (renamed from test cases/common/194 partial dependency/declare_dependency/meson.build)0
-rw-r--r--test cases/common/192 partial dependency/declare_dependency/other.c (renamed from test cases/common/194 partial dependency/declare_dependency/other.c)0
-rw-r--r--test cases/common/192 partial dependency/meson.build (renamed from test cases/common/194 partial dependency/meson.build)0
-rw-r--r--test cases/common/193 openmp/main.c (renamed from test cases/common/195 openmp/main.c)0
-rw-r--r--test cases/common/193 openmp/main.cpp (renamed from test cases/common/195 openmp/main.cpp)0
-rw-r--r--test cases/common/193 openmp/main.f90 (renamed from test cases/common/195 openmp/main.f90)0
-rw-r--r--test cases/common/193 openmp/meson.build (renamed from test cases/common/195 openmp/meson.build)0
-rw-r--r--test cases/common/194 same target name/file.c (renamed from test cases/common/196 same target name/file.c)0
-rw-r--r--test cases/common/194 same target name/meson.build (renamed from test cases/common/196 same target name/meson.build)0
-rw-r--r--test cases/common/194 same target name/sub/file2.c (renamed from test cases/common/196 same target name/sub/file2.c)0
-rw-r--r--test cases/common/194 same target name/sub/meson.build (renamed from test cases/common/196 same target name/sub/meson.build)0
-rwxr-xr-xtest cases/common/195 test depends/gen.py (renamed from test cases/common/197 test depends/gen.py)0
-rw-r--r--test cases/common/195 test depends/main.c (renamed from test cases/common/197 test depends/main.c)0
-rw-r--r--test cases/common/195 test depends/meson.build (renamed from test cases/common/197 test depends/meson.build)0
-rwxr-xr-xtest cases/common/195 test depends/test.py (renamed from test cases/common/197 test depends/test.py)0
-rw-r--r--test cases/common/196 args flattening/meson.build (renamed from test cases/common/198 args flattening/meson.build)0
-rw-r--r--test cases/common/197 dict/meson.build (renamed from test cases/common/199 dict/meson.build)0
-rw-r--r--test cases/common/197 dict/prog.c (renamed from test cases/common/199 dict/prog.c)0
-rw-r--r--test cases/common/198 check header/meson.build (renamed from test cases/common/200 check header/meson.build)0
-rw-r--r--test cases/common/198 check header/ouagadougou.h (renamed from test cases/common/200 check header/ouagadougou.h)0
-rw-r--r--test cases/common/199 install_mode/config.h.in (renamed from test cases/common/201 install_mode/config.h.in)0
-rw-r--r--test cases/common/199 install_mode/data_source.txt (renamed from test cases/common/201 install_mode/data_source.txt)0
-rw-r--r--test cases/common/199 install_mode/foo.1 (renamed from test cases/common/201 install_mode/foo.1)0
-rw-r--r--test cases/common/199 install_mode/installed_files.txt (renamed from test cases/common/201 install_mode/installed_files.txt)0
-rw-r--r--test cases/common/199 install_mode/meson.build (renamed from test cases/common/201 install_mode/meson.build)0
-rw-r--r--test cases/common/199 install_mode/rootdir.h (renamed from test cases/common/201 install_mode/rootdir.h)0
-rw-r--r--test cases/common/199 install_mode/runscript.sh (renamed from test cases/common/201 install_mode/runscript.sh)0
-rw-r--r--test cases/common/199 install_mode/stat.c (renamed from test cases/common/201 install_mode/stat.c)0
-rw-r--r--test cases/common/199 install_mode/sub1/second.dat (renamed from test cases/common/201 install_mode/sub1/second.dat)0
-rw-r--r--test cases/common/199 install_mode/trivial.c (renamed from test cases/common/201 install_mode/trivial.c)0
-rw-r--r--test cases/common/200 subproject array version/meson.build (renamed from test cases/common/202 subproject array version/meson.build)0
-rw-r--r--test cases/common/200 subproject array version/subprojects/foo/meson.build (renamed from test cases/common/202 subproject array version/subprojects/foo/meson.build)0
-rw-r--r--test cases/common/201 feature option/meson.build (renamed from test cases/common/203 feature option/meson.build)0
-rw-r--r--test cases/common/201 feature option/meson_options.txt (renamed from test cases/common/203 feature option/meson_options.txt)0
-rw-r--r--test cases/common/202 feature option disabled/meson.build (renamed from test cases/common/204 feature option disabled/meson.build)0
-rw-r--r--test cases/common/202 feature option disabled/meson_options.txt (renamed from test cases/common/204 feature option disabled/meson_options.txt)0
-rw-r--r--test cases/common/203 static threads/lib1.c (renamed from test cases/common/205 static threads/lib1.c)0
-rw-r--r--test cases/common/203 static threads/lib2.c (renamed from test cases/common/205 static threads/lib2.c)0
-rw-r--r--test cases/common/203 static threads/meson.build (renamed from test cases/common/205 static threads/meson.build)0
-rw-r--r--test cases/common/203 static threads/prog.c (renamed from test cases/common/205 static threads/prog.c)0
-rw-r--r--test cases/common/205 generator in subdir/com/mesonbuild/genprog.py46
-rw-r--r--test cases/common/205 generator in subdir/com/mesonbuild/meson.build10
-rw-r--r--test cases/common/205 generator in subdir/com/mesonbuild/subbie.inp1
-rw-r--r--test cases/common/205 generator in subdir/com/mesonbuild/testprog.c5
-rw-r--r--test cases/common/205 generator in subdir/meson.build3
-rw-r--r--test cases/failing/24 int conversion/meson.build (renamed from test cases/failing/25 int conversion/meson.build)0
-rw-r--r--test cases/failing/25 badlang/meson.build (renamed from test cases/failing/26 badlang/meson.build)0
-rw-r--r--test cases/failing/26 output subdir/foo.in (renamed from test cases/failing/27 output subdir/foo.in)0
-rw-r--r--test cases/failing/26 output subdir/meson.build (renamed from test cases/failing/27 output subdir/meson.build)0
-rw-r--r--test cases/failing/26 output subdir/subdir/dummy.txt (renamed from test cases/failing/27 output subdir/subdir/dummy.txt)0
-rw-r--r--test cases/failing/27 noprog use/meson.build (renamed from test cases/failing/28 noprog use/meson.build)0
-rw-r--r--test cases/failing/28 no crossprop/meson.build (renamed from test cases/failing/29 no crossprop/meson.build)0
-rw-r--r--test cases/failing/29 nested ternary/meson.build (renamed from test cases/failing/30 nested ternary/meson.build)0
-rw-r--r--test cases/failing/30 invalid man extension/meson.build (renamed from test cases/failing/31 invalid man extension/meson.build)0
-rw-r--r--test cases/failing/31 no man extension/meson.build (renamed from test cases/failing/32 no man extension/meson.build)0
-rw-r--r--test cases/failing/32 exe static shared/meson.build (renamed from test cases/failing/33 exe static shared/meson.build)0
-rw-r--r--test cases/failing/32 exe static shared/prog.c (renamed from test cases/failing/33 exe static shared/prog.c)0
-rw-r--r--test cases/failing/32 exe static shared/shlib2.c (renamed from test cases/failing/33 exe static shared/shlib2.c)0
-rw-r--r--test cases/failing/32 exe static shared/stat.c (renamed from test cases/failing/33 exe static shared/stat.c)0
-rw-r--r--test cases/failing/33 non-root subproject/meson.build (renamed from test cases/failing/34 non-root subproject/meson.build)0
-rw-r--r--test cases/failing/33 non-root subproject/some/meson.build (renamed from test cases/failing/34 non-root subproject/some/meson.build)0
-rw-r--r--test cases/failing/34 dependency not-required then required/meson.build (renamed from test cases/failing/35 dependency not-required then required/meson.build)0
-rw-r--r--test cases/failing/35 project argument after target/exe.c (renamed from test cases/failing/36 project argument after target/exe.c)0
-rw-r--r--test cases/failing/35 project argument after target/meson.build (renamed from test cases/failing/36 project argument after target/meson.build)0
-rw-r--r--test cases/failing/36 pkgconfig dependency impossible conditions/meson.build (renamed from test cases/failing/37 pkgconfig dependency impossible conditions/meson.build)0
-rw-r--r--test cases/failing/37 has function external dependency/meson.build (renamed from test cases/failing/38 has function external dependency/meson.build)0
-rw-r--r--test cases/failing/37 has function external dependency/mylib.c (renamed from test cases/failing/38 has function external dependency/mylib.c)0
-rw-r--r--test cases/failing/38 libdir must be inside prefix/meson.build (renamed from test cases/failing/39 libdir must be inside prefix/meson.build)0
-rw-r--r--test cases/failing/39 prefix absolute/meson.build (renamed from test cases/failing/40 prefix absolute/meson.build)0
-rw-r--r--test cases/failing/40 kwarg assign/dummy.c (renamed from test cases/failing/41 kwarg assign/dummy.c)0
-rw-r--r--test cases/failing/40 kwarg assign/meson.build (renamed from test cases/failing/41 kwarg assign/meson.build)0
-rw-r--r--test cases/failing/40 kwarg assign/prog.c (renamed from test cases/failing/41 kwarg assign/prog.c)0
-rw-r--r--test cases/failing/41 custom target plainname many inputs/1.txt (renamed from test cases/failing/42 custom target plainname many inputs/1.txt)0
-rw-r--r--test cases/failing/41 custom target plainname many inputs/2.txt (renamed from test cases/failing/42 custom target plainname many inputs/2.txt)0
-rw-r--r--test cases/failing/41 custom target plainname many inputs/catfiles.py (renamed from test cases/failing/42 custom target plainname many inputs/catfiles.py)0
-rw-r--r--test cases/failing/41 custom target plainname many inputs/meson.build (renamed from test cases/failing/42 custom target plainname many inputs/meson.build)0
-rwxr-xr-xtest cases/failing/42 custom target outputs not matching install_dirs/generator.py (renamed from test cases/failing/43 custom target outputs not matching install_dirs/generator.py)0
-rw-r--r--test cases/failing/42 custom target outputs not matching install_dirs/installed_files.txt (renamed from test cases/failing/43 custom target outputs not matching install_dirs/installed_files.txt)0
-rw-r--r--test cases/failing/42 custom target outputs not matching install_dirs/meson.build (renamed from test cases/failing/43 custom target outputs not matching install_dirs/meson.build)0
-rw-r--r--test cases/failing/43 project name colon/meson.build (renamed from test cases/failing/44 project name colon/meson.build)0
-rw-r--r--test cases/failing/44 abs subdir/bob/meson.build (renamed from test cases/failing/45 abs subdir/bob/meson.build)0
-rw-r--r--test cases/failing/44 abs subdir/meson.build (renamed from test cases/failing/45 abs subdir/meson.build)0
-rw-r--r--test cases/failing/45 abspath to srcdir/meson.build (renamed from test cases/failing/46 abspath to srcdir/meson.build)0
-rw-r--r--test cases/failing/46 pkgconfig variables reserved/meson.build (renamed from test cases/failing/47 pkgconfig variables reserved/meson.build)0
-rw-r--r--test cases/failing/46 pkgconfig variables reserved/simple.c (renamed from test cases/failing/47 pkgconfig variables reserved/simple.c)0
-rw-r--r--test cases/failing/46 pkgconfig variables reserved/simple.h (renamed from test cases/failing/47 pkgconfig variables reserved/simple.h)0
-rw-r--r--test cases/failing/47 pkgconfig variables zero length/meson.build (renamed from test cases/failing/48 pkgconfig variables zero length/meson.build)0
-rw-r--r--test cases/failing/47 pkgconfig variables zero length/simple.c (renamed from test cases/failing/48 pkgconfig variables zero length/simple.c)0
-rw-r--r--test cases/failing/47 pkgconfig variables zero length/simple.h (renamed from test cases/failing/48 pkgconfig variables zero length/simple.h)0
-rw-r--r--test cases/failing/48 pkgconfig variables zero length value/meson.build (renamed from test cases/failing/49 pkgconfig variables zero length value/meson.build)0
-rw-r--r--test cases/failing/48 pkgconfig variables zero length value/simple.c (renamed from test cases/failing/49 pkgconfig variables zero length value/simple.c)0
-rw-r--r--test cases/failing/48 pkgconfig variables zero length value/simple.h (renamed from test cases/failing/49 pkgconfig variables zero length value/simple.h)0
-rw-r--r--test cases/failing/49 pkgconfig variables not key value/meson.build (renamed from test cases/failing/50 pkgconfig variables not key value/meson.build)0
-rw-r--r--test cases/failing/49 pkgconfig variables not key value/simple.c (renamed from test cases/failing/50 pkgconfig variables not key value/simple.c)0
-rw-r--r--test cases/failing/49 pkgconfig variables not key value/simple.h (renamed from test cases/failing/50 pkgconfig variables not key value/simple.h)0
-rw-r--r--test cases/failing/50 executable comparison/meson.build (renamed from test cases/failing/51 executable comparison/meson.build)0
-rw-r--r--test cases/failing/50 executable comparison/prog.c (renamed from test cases/failing/51 executable comparison/prog.c)0
-rw-r--r--test cases/failing/51 inconsistent comparison/meson.build (renamed from test cases/failing/52 inconsistent comparison/meson.build)0
-rw-r--r--test cases/failing/52 slashname/meson.build (renamed from test cases/failing/53 slashname/meson.build)0
-rw-r--r--test cases/failing/52 slashname/sub/meson.build (renamed from test cases/failing/53 slashname/sub/meson.build)0
-rw-r--r--test cases/failing/52 slashname/sub/prog.c (renamed from test cases/failing/53 slashname/sub/prog.c)0
-rw-r--r--test cases/failing/53 reserved meson prefix/meson-foo/meson.build (renamed from test cases/failing/54 reserved meson prefix/meson-foo/meson.build)0
-rw-r--r--test cases/failing/53 reserved meson prefix/meson.build (renamed from test cases/failing/54 reserved meson prefix/meson.build)0
-rw-r--r--test cases/failing/54 wrong shared crate type/foo.rs (renamed from test cases/failing/55 wrong shared crate type/foo.rs)0
-rw-r--r--test cases/failing/54 wrong shared crate type/meson.build (renamed from test cases/failing/55 wrong shared crate type/meson.build)0
-rw-r--r--test cases/failing/55 wrong static crate type/foo.rs (renamed from test cases/failing/56 wrong static crate type/foo.rs)0
-rw-r--r--test cases/failing/55 wrong static crate type/meson.build (renamed from test cases/failing/56 wrong static crate type/meson.build)0
-rw-r--r--test cases/failing/56 or on new line/meson.build (renamed from test cases/failing/57 or on new line/meson.build)0
-rw-r--r--test cases/failing/56 or on new line/meson_options.txt (renamed from test cases/failing/57 or on new line/meson_options.txt)0
-rw-r--r--test cases/failing/57 kwarg in module/meson.build (renamed from test cases/failing/58 kwarg in module/meson.build)0
-rw-r--r--test cases/failing/58 link with executable/meson.build (renamed from test cases/failing/59 link with executable/meson.build)0
-rw-r--r--test cases/failing/58 link with executable/module.c (renamed from test cases/failing/59 link with executable/module.c)0
-rw-r--r--test cases/failing/58 link with executable/prog.c (renamed from test cases/failing/59 link with executable/prog.c)0
-rw-r--r--test cases/failing/59 assign custom target index/meson.build (renamed from test cases/failing/60 assign custom target index/meson.build)0
-rw-r--r--test cases/failing/60 getoption prefix/meson.build (renamed from test cases/failing/61 getoption prefix/meson.build)0
-rw-r--r--test cases/failing/60 getoption prefix/subprojects/abc/meson.build (renamed from test cases/failing/61 getoption prefix/subprojects/abc/meson.build)0
-rw-r--r--test cases/failing/60 getoption prefix/subprojects/abc/meson_options.txt (renamed from test cases/failing/61 getoption prefix/subprojects/abc/meson_options.txt)0
-rw-r--r--test cases/failing/61 bad option argument/meson.build (renamed from test cases/failing/62 bad option argument/meson.build)0
-rw-r--r--test cases/failing/61 bad option argument/meson_options.txt (renamed from test cases/failing/62 bad option argument/meson_options.txt)0
-rw-r--r--test cases/failing/62 subproj filegrab/meson.build (renamed from test cases/failing/63 subproj filegrab/meson.build)0
-rw-r--r--test cases/failing/62 subproj filegrab/prog.c (renamed from test cases/failing/63 subproj filegrab/prog.c)0
-rw-r--r--test cases/failing/62 subproj filegrab/subprojects/a/meson.build (renamed from test cases/failing/63 subproj filegrab/subprojects/a/meson.build)0
-rw-r--r--test cases/failing/63 grab subproj/meson.build (renamed from test cases/failing/64 grab subproj/meson.build)0
-rw-r--r--test cases/failing/63 grab subproj/subprojects/foo/meson.build (renamed from test cases/failing/64 grab subproj/subprojects/foo/meson.build)0
-rw-r--r--test cases/failing/63 grab subproj/subprojects/foo/sub.c (renamed from test cases/failing/64 grab subproj/subprojects/foo/sub.c)0
-rw-r--r--test cases/failing/64 grab sibling/meson.build (renamed from test cases/failing/65 grab sibling/meson.build)0
-rw-r--r--test cases/failing/64 grab sibling/subprojects/a/meson.build (renamed from test cases/failing/65 grab sibling/subprojects/a/meson.build)0
-rw-r--r--test cases/failing/64 grab sibling/subprojects/b/meson.build (renamed from test cases/failing/65 grab sibling/subprojects/b/meson.build)0
-rw-r--r--test cases/failing/64 grab sibling/subprojects/b/sneaky.c (renamed from test cases/failing/65 grab sibling/subprojects/b/sneaky.c)0
-rw-r--r--test cases/failing/65 string as link target/meson.build (renamed from test cases/failing/66 string as link target/meson.build)0
-rw-r--r--test cases/failing/65 string as link target/prog.c (renamed from test cases/failing/66 string as link target/prog.c)0
-rw-r--r--test cases/failing/66 dependency not-found and required/meson.build (renamed from test cases/failing/67 dependency not-found and required/meson.build)0
-rw-r--r--test cases/failing/67 subproj different versions/main.c (renamed from test cases/failing/68 subproj different versions/main.c)0
-rw-r--r--test cases/failing/67 subproj different versions/meson.build (renamed from test cases/failing/68 subproj different versions/meson.build)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/a/a.c (renamed from test cases/failing/68 subproj different versions/subprojects/a/a.c)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/a/a.h (renamed from test cases/failing/68 subproj different versions/subprojects/a/a.h)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/a/meson.build (renamed from test cases/failing/68 subproj different versions/subprojects/a/meson.build)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/b/b.c (renamed from test cases/failing/68 subproj different versions/subprojects/b/b.c)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/b/b.h (renamed from test cases/failing/68 subproj different versions/subprojects/b/b.h)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/b/meson.build (renamed from test cases/failing/68 subproj different versions/subprojects/b/meson.build)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/c/c.h (renamed from test cases/failing/68 subproj different versions/subprojects/c/c.h)0
-rw-r--r--test cases/failing/67 subproj different versions/subprojects/c/meson.build (renamed from test cases/failing/68 subproj different versions/subprojects/c/meson.build)0
-rw-r--r--test cases/failing/68 wrong boost module/meson.build (renamed from test cases/failing/69 wrong boost module/meson.build)0
-rw-r--r--test cases/failing/69 install_data rename bad size/file1.txt (renamed from test cases/failing/70 install_data rename bad size/file1.txt)0
-rw-r--r--test cases/failing/69 install_data rename bad size/file2.txt (renamed from test cases/failing/70 install_data rename bad size/file2.txt)0
-rw-r--r--test cases/failing/69 install_data rename bad size/meson.build (renamed from test cases/failing/70 install_data rename bad size/meson.build)0
-rw-r--r--test cases/failing/70 skip only subdir/meson.build (renamed from test cases/failing/71 skip only subdir/meson.build)0
-rw-r--r--test cases/failing/70 skip only subdir/subdir/meson.build (renamed from test cases/failing/71 skip only subdir/subdir/meson.build)0
-rw-r--r--test cases/failing/71 invalid escape char/meson.build (renamed from test cases/failing/72 invalid escape char/meson.build)0
-rw-r--r--test cases/failing/72 dual override/meson.build (renamed from test cases/failing/73 dual override/meson.build)0
-rw-r--r--test cases/failing/72 dual override/overrides.py (renamed from test cases/failing/73 dual override/overrides.py)0
-rw-r--r--test cases/failing/73 override used/meson.build (renamed from test cases/failing/74 override used/meson.build)0
-rwxr-xr-xtest cases/failing/73 override used/other.py (renamed from test cases/failing/74 override used/other.py)0
-rwxr-xr-xtest cases/failing/73 override used/something.py (renamed from test cases/failing/74 override used/something.py)0
-rw-r--r--test cases/failing/74 run_command unclean exit/meson.build (renamed from test cases/failing/75 run_command unclean exit/meson.build)0
-rwxr-xr-xtest cases/failing/74 run_command unclean exit/returncode.py (renamed from test cases/failing/75 run_command unclean exit/returncode.py)0
-rw-r--r--test cases/failing/75 int literal leading zero/meson.build (renamed from test cases/failing/76 int literal leading zero/meson.build)0
-rw-r--r--test cases/failing/76 configuration immutable/input (renamed from test cases/failing/77 configuration immutable/input)0
-rw-r--r--test cases/failing/76 configuration immutable/meson.build (renamed from test cases/failing/77 configuration immutable/meson.build)0
-rw-r--r--test cases/failing/77 link with shared module on osx/meson.build (renamed from test cases/failing/78 link with shared module on osx/meson.build)0
-rw-r--r--test cases/failing/77 link with shared module on osx/module.c (renamed from test cases/failing/78 link with shared module on osx/module.c)0
-rw-r--r--test cases/failing/77 link with shared module on osx/prog.c (renamed from test cases/failing/78 link with shared module on osx/prog.c)0
-rw-r--r--test cases/failing/78 non ascii in ascii encoded configure file/config9.h.in (renamed from test cases/failing/79 non ascii in ascii encoded configure file/config9.h.in)0
-rw-r--r--test cases/failing/78 non ascii in ascii encoded configure file/meson.build (renamed from test cases/failing/79 non ascii in ascii encoded configure file/meson.build)0
-rw-r--r--test cases/failing/79 subproj dependency not-found and required/meson.build (renamed from test cases/failing/80 subproj dependency not-found and required/meson.build)0
-rw-r--r--test cases/failing/80 unfound run/meson.build (renamed from test cases/failing/81 unfound run/meson.build)0
-rw-r--r--test cases/objc/4 c++ project objc subproject/master.cpp (renamed from test cases/objc/6 c++ project objc subproject/master.cpp)0
-rw-r--r--test cases/objc/4 c++ project objc subproject/meson.build (renamed from test cases/objc/6 c++ project objc subproject/meson.build)0
-rw-r--r--test cases/objc/4 c++ project objc subproject/subprojects/foo/foo.m (renamed from test cases/objc/6 c++ project objc subproject/subprojects/foo/foo.m)0
-rw-r--r--test cases/objc/4 c++ project objc subproject/subprojects/foo/meson.build (renamed from test cases/objc/6 c++ project objc subproject/subprojects/foo/meson.build)0
-rw-r--r--test cases/unit/10 build_rpath/meson.build (renamed from test cases/unit/11 build_rpath/meson.build)0
-rw-r--r--test cases/unit/10 build_rpath/prog.c (renamed from test cases/unit/11 build_rpath/prog.c)0
-rw-r--r--test cases/unit/10 build_rpath/prog.cc (renamed from test cases/unit/11 build_rpath/prog.cc)0
-rw-r--r--test cases/unit/10 build_rpath/sub/meson.build (renamed from test cases/unit/11 build_rpath/sub/meson.build)0
-rw-r--r--test cases/unit/10 build_rpath/sub/stuff.c (renamed from test cases/unit/11 build_rpath/sub/stuff.c)0
-rw-r--r--test cases/unit/11 cross prog/meson.build (renamed from test cases/unit/12 cross prog/meson.build)0
-rwxr-xr-xtest cases/unit/11 cross prog/some_cross_tool.py (renamed from test cases/unit/12 cross prog/some_cross_tool.py)0
-rwxr-xr-xtest cases/unit/11 cross prog/sometool.py (renamed from test cases/unit/12 cross prog/sometool.py)0
-rw-r--r--test cases/unit/12 promote/meson.build (renamed from test cases/unit/13 promote/meson.build)0
-rw-r--r--test cases/unit/12 promote/subprojects/s1/meson.build (renamed from test cases/unit/13 promote/subprojects/s1/meson.build)0
-rw-r--r--test cases/unit/12 promote/subprojects/s1/s1.c (renamed from test cases/unit/13 promote/subprojects/s1/s1.c)0
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/s3/meson.build (renamed from test cases/unit/13 promote/subprojects/s1/subprojects/s3/meson.build)0
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/s3/s3.c (renamed from test cases/unit/13 promote/subprojects/s1/subprojects/s3/s3.c)0
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/scommon/meson.build (renamed from test cases/unit/13 promote/subprojects/s1/subprojects/scommon/meson.build)0
-rw-r--r--test cases/unit/12 promote/subprojects/s1/subprojects/scommon/scommon_broken.c (renamed from test cases/unit/13 promote/subprojects/s1/subprojects/scommon/scommon_broken.c)0
-rw-r--r--test cases/unit/12 promote/subprojects/s2/meson.build (renamed from test cases/unit/13 promote/subprojects/s2/meson.build)0
-rw-r--r--test cases/unit/12 promote/subprojects/s2/s2.c (renamed from test cases/unit/13 promote/subprojects/s2/s2.c)0
-rw-r--r--test cases/unit/12 promote/subprojects/s2/subprojects/athing.wrap (renamed from test cases/unit/13 promote/subprojects/s2/subprojects/athing.wrap)0
-rw-r--r--test cases/unit/12 promote/subprojects/s2/subprojects/scommon/meson.build (renamed from test cases/unit/13 promote/subprojects/s2/subprojects/scommon/meson.build)0
-rw-r--r--test cases/unit/12 promote/subprojects/s2/subprojects/scommon/scommon_ok.c (renamed from test cases/unit/13 promote/subprojects/s2/subprojects/scommon/scommon_ok.c)0
-rw-r--r--test cases/unit/14 testsetup selection/main.c (renamed from test cases/unit/13 testsetup selection/main.c)0
-rw-r--r--test cases/unit/14 testsetup selection/meson.build (renamed from test cases/unit/13 testsetup selection/meson.build)0
-rw-r--r--test cases/unit/14 testsetup selection/subprojects/bar/bar.c (renamed from test cases/unit/13 testsetup selection/subprojects/bar/bar.c)0
-rw-r--r--test cases/unit/14 testsetup selection/subprojects/bar/meson.build (renamed from test cases/unit/13 testsetup selection/subprojects/bar/meson.build)0
-rw-r--r--test cases/unit/14 testsetup selection/subprojects/foo/foo.c (renamed from test cases/unit/13 testsetup selection/subprojects/foo/foo.c)0
-rw-r--r--test cases/unit/14 testsetup selection/subprojects/foo/meson.build (renamed from test cases/unit/13 testsetup selection/subprojects/foo/meson.build)0
-rw-r--r--test cases/unit/15 prebuilt object/main.c (renamed from test cases/unit/14 prebuilt object/main.c)0
-rw-r--r--test cases/unit/15 prebuilt object/meson.build (renamed from test cases/unit/14 prebuilt object/meson.build)0
-rw-r--r--test cases/unit/15 prebuilt object/source.c (renamed from test cases/unit/14 prebuilt object/source.c)0
-rw-r--r--test cases/unit/16 prebuilt static/libdir/best.c (renamed from test cases/unit/15 prebuilt static/libdir/best.c)0
-rw-r--r--test cases/unit/16 prebuilt static/libdir/best.h (renamed from test cases/unit/15 prebuilt static/libdir/best.h)0
-rw-r--r--test cases/unit/16 prebuilt static/libdir/meson.build (renamed from test cases/unit/15 prebuilt static/libdir/meson.build)0
-rw-r--r--test cases/unit/16 prebuilt static/main.c (renamed from test cases/unit/15 prebuilt static/main.c)0
-rw-r--r--test cases/unit/16 prebuilt static/meson.build (renamed from test cases/unit/15 prebuilt static/meson.build)0
-rw-r--r--test cases/unit/17 prebuilt shared/alexandria.c (renamed from test cases/unit/16 prebuilt shared/alexandria.c)0
-rw-r--r--test cases/unit/17 prebuilt shared/alexandria.h (renamed from test cases/unit/16 prebuilt shared/alexandria.h)0
-rw-r--r--test cases/unit/17 prebuilt shared/another_visitor.c (renamed from test cases/unit/16 prebuilt shared/another_visitor.c)0
-rw-r--r--test cases/unit/17 prebuilt shared/meson.build (renamed from test cases/unit/16 prebuilt shared/meson.build)0
-rw-r--r--test cases/unit/17 prebuilt shared/patron.c (renamed from test cases/unit/16 prebuilt shared/patron.c)0
-rw-r--r--test cases/unit/18 pkgconfig static/foo.c (renamed from test cases/unit/17 pkgconfig static/foo.c)0
-rw-r--r--test cases/unit/18 pkgconfig static/foo.pc.in (renamed from test cases/unit/17 pkgconfig static/foo.pc.in)0
-rw-r--r--test cases/unit/18 pkgconfig static/include/foo.h (renamed from test cases/unit/17 pkgconfig static/include/foo.h)0
-rw-r--r--test cases/unit/18 pkgconfig static/main.c (renamed from test cases/unit/17 pkgconfig static/main.c)0
-rw-r--r--test cases/unit/18 pkgconfig static/meson.build (renamed from test cases/unit/17 pkgconfig static/meson.build)0
-rw-r--r--test cases/unit/19 array option/meson.build (renamed from test cases/unit/18 array option/meson.build)0
-rw-r--r--test cases/unit/19 array option/meson_options.txt (renamed from test cases/unit/18 array option/meson_options.txt)0
-rw-r--r--test cases/unit/22 warning location/a.c (renamed from test cases/unit/21 warning location/a.c)0
-rw-r--r--test cases/unit/22 warning location/b.c (renamed from test cases/unit/21 warning location/b.c)0
-rw-r--r--test cases/unit/22 warning location/conf.in (renamed from test cases/unit/21 warning location/conf.in)0
-rw-r--r--test cases/unit/22 warning location/main.c (renamed from test cases/unit/21 warning location/main.c)0
-rw-r--r--test cases/unit/22 warning location/meson.build (renamed from test cases/unit/21 warning location/meson.build)0
-rw-r--r--test cases/unit/22 warning location/sub/c.c (renamed from test cases/unit/21 warning location/sub/c.c)0
-rw-r--r--test cases/unit/22 warning location/sub/d.c (renamed from test cases/unit/21 warning location/sub/d.c)0
-rw-r--r--test cases/unit/22 warning location/sub/meson.build (renamed from test cases/unit/21 warning location/sub/meson.build)0
-rw-r--r--test cases/unit/22 warning location/sub/sub.c (renamed from test cases/unit/21 warning location/sub/sub.c)0
-rw-r--r--test cases/unit/23 unfound pkgconfig/meson.build (renamed from test cases/unit/22 unfound pkgconfig/meson.build)0
-rw-r--r--test cases/unit/23 unfound pkgconfig/some.c (renamed from test cases/unit/22 unfound pkgconfig/some.c)0
-rw-r--r--test cases/unit/24 compiler run_command/meson.build (renamed from test cases/unit/23 compiler run_command/meson.build)0
-rw-r--r--test cases/unit/25 non-permitted kwargs/meson.build (renamed from test cases/unit/23 non-permitted kwargs/meson.build)0
-rw-r--r--test cases/unit/26 install umask/datafile.cat (renamed from test cases/unit/24 install umask/datafile.cat)0
-rw-r--r--test cases/unit/26 install umask/meson.build (renamed from test cases/unit/24 install umask/meson.build)0
-rw-r--r--test cases/unit/26 install umask/myinstall.py (renamed from test cases/unit/24 install umask/myinstall.py)0
-rw-r--r--test cases/unit/26 install umask/prog.1 (renamed from test cases/unit/24 install umask/prog.1)0
-rw-r--r--test cases/unit/26 install umask/prog.c (renamed from test cases/unit/24 install umask/prog.c)0
-rw-r--r--test cases/unit/26 install umask/sample.h (renamed from test cases/unit/24 install umask/sample.h)0
-rw-r--r--test cases/unit/26 install umask/subdir/datafile.dog (renamed from test cases/unit/24 install umask/subdir/datafile.dog)0
-rwxr-xr-xtest cases/unit/26 install umask/subdir/sayhello (renamed from test cases/unit/24 install umask/subdir/sayhello)0
-rw-r--r--test cases/unit/27 pkgconfig usage/dependee/meson.build (renamed from test cases/unit/24 pkgconfig usage/dependee/meson.build)0
-rw-r--r--test cases/unit/27 pkgconfig usage/dependee/pkguser.c (renamed from test cases/unit/24 pkgconfig usage/dependee/pkguser.c)0
-rw-r--r--test cases/unit/27 pkgconfig usage/dependency/meson.build (renamed from test cases/unit/24 pkgconfig usage/dependency/meson.build)0
-rw-r--r--test cases/unit/27 pkgconfig usage/dependency/pkgdep.c (renamed from test cases/unit/24 pkgconfig usage/dependency/pkgdep.c)0
-rw-r--r--test cases/unit/27 pkgconfig usage/dependency/pkgdep.h (renamed from test cases/unit/24 pkgconfig usage/dependency/pkgdep.h)0
-rw-r--r--test cases/unit/27 pkgconfig usage/dependency/privatelib.c (renamed from test cases/unit/24 pkgconfig usage/dependency/privatelib.c)0
-rw-r--r--test cases/unit/28 ndebug if-release/main.c (renamed from test cases/unit/25 ndebug if-release/main.c)0
-rw-r--r--test cases/unit/28 ndebug if-release/meson.build (renamed from test cases/unit/25 ndebug if-release/meson.build)0
-rw-r--r--test cases/unit/29 guessed linker dependencies/exe/app.c (renamed from test cases/unit/26 guessed linker dependencies/exe/app.c)0
-rw-r--r--test cases/unit/29 guessed linker dependencies/exe/meson.build (renamed from test cases/unit/26 guessed linker dependencies/exe/meson.build)0
-rw-r--r--test cases/unit/29 guessed linker dependencies/lib/lib.c (renamed from test cases/unit/26 guessed linker dependencies/lib/lib.c)0
-rw-r--r--test cases/unit/29 guessed linker dependencies/lib/meson.build (renamed from test cases/unit/26 guessed linker dependencies/lib/meson.build)0
-rw-r--r--test cases/unit/29 guessed linker dependencies/lib/meson_options.txt (renamed from test cases/unit/26 guessed linker dependencies/lib/meson_options.txt)0
-rw-r--r--test cases/unit/30 shared_mod linking/libfile.c (renamed from test cases/unit/26 shared_mod linking/libfile.c)0
-rw-r--r--test cases/unit/30 shared_mod linking/main.c (renamed from test cases/unit/26 shared_mod linking/main.c)0
-rw-r--r--test cases/unit/30 shared_mod linking/meson.build (renamed from test cases/unit/26 shared_mod linking/meson.build)0
-rw-r--r--test cases/unit/31 forcefallback/meson.build (renamed from test cases/unit/27 forcefallback/meson.build)0
-rw-r--r--test cases/unit/31 forcefallback/subprojects/notzlib/meson.build (renamed from test cases/unit/27 forcefallback/subprojects/notzlib/meson.build)0
-rw-r--r--test cases/unit/31 forcefallback/subprojects/notzlib/notzlib.c (renamed from test cases/unit/27 forcefallback/subprojects/notzlib/notzlib.c)0
-rw-r--r--test cases/unit/31 forcefallback/subprojects/notzlib/notzlib.h (renamed from test cases/unit/27 forcefallback/subprojects/notzlib/notzlib.h)0
-rw-r--r--test cases/unit/31 forcefallback/test_not_zlib.c (renamed from test cases/unit/27 forcefallback/test_not_zlib.c)0
-rw-r--r--test cases/unit/32 pkgconfig use libraries/app/app.c (renamed from test cases/unit/28 pkgconfig use libraries/app/app.c)0
-rw-r--r--test cases/unit/32 pkgconfig use libraries/app/meson.build (renamed from test cases/unit/28 pkgconfig use libraries/app/meson.build)0
-rw-r--r--test cases/unit/32 pkgconfig use libraries/lib/liba.c (renamed from test cases/unit/28 pkgconfig use libraries/lib/liba.c)0
-rw-r--r--test cases/unit/32 pkgconfig use libraries/lib/libb.c (renamed from test cases/unit/28 pkgconfig use libraries/lib/libb.c)0
-rw-r--r--test cases/unit/32 pkgconfig use libraries/lib/meson.build (renamed from test cases/unit/28 pkgconfig use libraries/lib/meson.build)0
-rw-r--r--test cases/unit/33 cross file overrides always args/meson.build (renamed from test cases/unit/29 cross file overrides always args/meson.build)0
-rw-r--r--test cases/unit/33 cross file overrides always args/test.c (renamed from test cases/unit/29 cross file overrides always args/test.c)0
-rw-r--r--test cases/unit/33 cross file overrides always args/ubuntu-armhf-overrides.txt (renamed from test cases/unit/29 cross file overrides always args/ubuntu-armhf-overrides.txt)0
-rw-r--r--test cases/unit/34 command line/meson.build (renamed from test cases/unit/30 command line/meson.build)0
-rw-r--r--test cases/unit/34 command line/meson_options.txt (renamed from test cases/unit/30 command line/meson_options.txt)0
-rw-r--r--test cases/unit/34 command line/subprojects/subp/meson.build (renamed from test cases/unit/30 command line/subprojects/subp/meson.build)0
-rw-r--r--test cases/unit/34 command line/subprojects/subp/meson_options.txt (renamed from test cases/unit/30 command line/subprojects/subp/meson_options.txt)0
-rw-r--r--test cases/unit/35 mixed command line args/meson.build (renamed from test cases/unit/30 mixed command line args/meson.build)0
-rw-r--r--test cases/unit/35 mixed command line args/meson_options.txt (renamed from test cases/unit/30 mixed command line args/meson_options.txt)0
-rw-r--r--test cases/unit/36 pkgconfig format/meson.build (renamed from test cases/unit/31 pkgconfig format/meson.build)0
-rw-r--r--test cases/unit/36 pkgconfig format/somelib.c (renamed from test cases/unit/31 pkgconfig format/somelib.c)0
-rw-r--r--test cases/unit/36 pkgconfig format/someret.c (renamed from test cases/unit/31 pkgconfig format/someret.c)0
-rwxr-xr-xtest cases/unit/37 python extmodule/blaster.py (renamed from test cases/unit/32 python extmodule/blaster.py)0
-rw-r--r--test cases/unit/37 python extmodule/ext/meson.build (renamed from test cases/unit/32 python extmodule/ext/meson.build)0
-rw-r--r--test cases/unit/37 python extmodule/ext/tachyon_module.c (renamed from test cases/unit/32 python extmodule/ext/tachyon_module.c)0
-rw-r--r--test cases/unit/37 python extmodule/meson.build (renamed from test cases/unit/32 python extmodule/meson.build)0
-rw-r--r--test cases/unit/37 python extmodule/meson_options.txt (renamed from test cases/unit/32 python extmodule/meson_options.txt)0
-rw-r--r--test cases/unit/38 external, internal library rpath/built library/bar.c (renamed from test cases/unit/33 external, internal library rpath/built library/bar.c)0
-rw-r--r--test cases/unit/38 external, internal library rpath/built library/meson.build (renamed from test cases/unit/33 external, internal library rpath/built library/meson.build)0
-rw-r--r--test cases/unit/38 external, internal library rpath/built library/meson_options.txt (renamed from test cases/unit/33 external, internal library rpath/built library/meson_options.txt)0
-rw-r--r--test cases/unit/38 external, internal library rpath/built library/prog.c (renamed from test cases/unit/33 external, internal library rpath/built library/prog.c)0
-rw-r--r--test cases/unit/38 external, internal library rpath/external library/faa.c (renamed from test cases/unit/33 external, internal library rpath/external library/faa.c)0
-rw-r--r--test cases/unit/38 external, internal library rpath/external library/foo.c (renamed from test cases/unit/33 external, internal library rpath/external library/foo.c)0
-rw-r--r--test cases/unit/38 external, internal library rpath/external library/meson.build (renamed from test cases/unit/33 external, internal library rpath/external library/meson.build)0
-rw-r--r--test cases/unit/39 featurenew subprojects/meson.build (renamed from test cases/unit/34 featurenew subprojects/meson.build)0
-rw-r--r--test cases/unit/39 featurenew subprojects/subprojects/bar/meson.build (renamed from test cases/unit/34 featurenew subprojects/subprojects/bar/meson.build)0
-rw-r--r--test cases/unit/39 featurenew subprojects/subprojects/foo/meson.build (renamed from test cases/unit/34 featurenew subprojects/subprojects/foo/meson.build)0
-rw-r--r--test cases/unit/40 rpath order/meson.build (renamed from test cases/unit/35 rpath order/meson.build)0
-rw-r--r--test cases/unit/40 rpath order/myexe.c (renamed from test cases/unit/35 rpath order/myexe.c)0
-rw-r--r--test cases/unit/40 rpath order/subprojects/sub1/lib.c (renamed from test cases/unit/35 rpath order/subprojects/sub1/lib.c)0
-rw-r--r--test cases/unit/40 rpath order/subprojects/sub1/meson.build (renamed from test cases/unit/35 rpath order/subprojects/sub1/meson.build)0
-rw-r--r--test cases/unit/40 rpath order/subprojects/sub2/lib.c (renamed from test cases/unit/35 rpath order/subprojects/sub2/lib.c)0
-rw-r--r--test cases/unit/40 rpath order/subprojects/sub2/meson.build (renamed from test cases/unit/35 rpath order/subprojects/sub2/meson.build)0
-rw-r--r--test cases/unit/41 dep order/lib1.c (renamed from test cases/unit/36 dep order/lib1.c)0
-rw-r--r--test cases/unit/41 dep order/lib2.c (renamed from test cases/unit/36 dep order/lib2.c)0
-rw-r--r--test cases/unit/41 dep order/meson.build (renamed from test cases/unit/36 dep order/meson.build)0
-rw-r--r--test cases/unit/41 dep order/myexe.c (renamed from test cases/unit/36 dep order/myexe.c)0
-rw-r--r--test cases/unit/8 -L -l order/first.pc (renamed from test cases/unit/9 -L -l order/first.pc)0
-rw-r--r--test cases/unit/8 -L -l order/meson.build (renamed from test cases/unit/9 -L -l order/meson.build)0
-rw-r--r--test cases/unit/8 -L -l order/prog.c (renamed from test cases/unit/9 -L -l order/prog.c)0
-rw-r--r--test cases/unit/8 -L -l order/second.pc (renamed from test cases/unit/9 -L -l order/second.pc)0
-rw-r--r--test cases/unit/9 d dedup/meson.build (renamed from test cases/unit/10 d dedup/meson.build)0
-rw-r--r--test cases/unit/9 d dedup/prog.c (renamed from test cases/unit/10 d dedup/prog.c)0
-rw-r--r--test cases/windows/10 vs module defs generated custom target/meson.build (renamed from test cases/windows/11 vs module defs generated custom target/meson.build)0
-rw-r--r--test cases/windows/10 vs module defs generated custom target/prog.c (renamed from test cases/windows/10 vs module defs generated/prog.c)0
-rwxr-xr-xtest cases/windows/10 vs module defs generated custom target/subdir/make_def.py (renamed from test cases/windows/11 vs module defs generated custom target/subdir/make_def.py)0
-rw-r--r--test cases/windows/10 vs module defs generated custom target/subdir/meson.build (renamed from test cases/windows/11 vs module defs generated custom target/subdir/meson.build)0
-rw-r--r--test cases/windows/10 vs module defs generated custom target/subdir/somedll.c (renamed from test cases/windows/10 vs module defs generated/subdir/somedll.c)0
-rw-r--r--test cases/windows/11 exe implib/installed_files.txt (renamed from test cases/windows/12 exe implib/installed_files.txt)0
-rw-r--r--test cases/windows/11 exe implib/meson.build (renamed from test cases/windows/12 exe implib/meson.build)0
-rw-r--r--test cases/windows/11 exe implib/prog.c (renamed from test cases/windows/12 exe implib/prog.c)0
-rw-r--r--test cases/windows/12 resources with custom targets/meson.build (renamed from test cases/windows/13 resources with custom targets/meson.build)0
-rw-r--r--test cases/windows/12 resources with custom targets/prog.c (renamed from test cases/windows/13 resources with custom targets/prog.c)0
-rwxr-xr-xtest cases/windows/12 resources with custom targets/res/gen-res.py (renamed from test cases/windows/13 resources with custom targets/res/gen-res.py)0
-rw-r--r--test cases/windows/12 resources with custom targets/res/meson.build (renamed from test cases/windows/13 resources with custom targets/res/meson.build)0
-rw-r--r--test cases/windows/12 resources with custom targets/res/myres.rc.in (renamed from test cases/windows/13 resources with custom targets/res/myres.rc.in)0
-rw-r--r--test cases/windows/12 resources with custom targets/res/myres_static.rc (renamed from test cases/windows/13 resources with custom targets/res/myres_static.rc)0
-rw-r--r--test cases/windows/12 resources with custom targets/res/resource.h (renamed from test cases/windows/13 resources with custom targets/res/resource.h)0
-rw-r--r--test cases/windows/12 resources with custom targets/res/sample.ico (renamed from test cases/windows/13 resources with custom targets/res/sample.ico)bin9662 -> 9662 bytes
-rw-r--r--test cases/windows/13 test argument extra paths/exe/main.c (renamed from test cases/windows/14 test argument extra paths/exe/main.c)0
-rw-r--r--test cases/windows/13 test argument extra paths/exe/meson.build (renamed from test cases/windows/14 test argument extra paths/exe/meson.build)0
-rw-r--r--test cases/windows/13 test argument extra paths/lib/foo.c (renamed from test cases/windows/14 test argument extra paths/lib/foo.c)0
-rw-r--r--test cases/windows/13 test argument extra paths/lib/foo.h (renamed from test cases/windows/14 test argument extra paths/lib/foo.h)0
-rw-r--r--test cases/windows/13 test argument extra paths/lib/meson.build (renamed from test cases/windows/14 test argument extra paths/lib/meson.build)0
-rw-r--r--test cases/windows/13 test argument extra paths/meson.build (renamed from test cases/windows/14 test argument extra paths/meson.build)0
-rw-r--r--test cases/windows/13 test argument extra paths/test/meson.build (renamed from test cases/windows/14 test argument extra paths/test/meson.build)0
-rw-r--r--test cases/windows/13 test argument extra paths/test/test_run_exe.py (renamed from test cases/windows/14 test argument extra paths/test/test_run_exe.py)0
-rwxr-xr-xtest cases/windows/14 resources with custom target depend_files/ico/gen-ico.py (renamed from test cases/windows/15 resources with custom target depend_files/ico/gen-ico.py)0
-rw-r--r--test cases/windows/14 resources with custom target depend_files/ico/meson.build (renamed from test cases/windows/15 resources with custom target depend_files/ico/meson.build)0
-rw-r--r--test cases/windows/14 resources with custom target depend_files/ico/sample.ico.in (renamed from test cases/windows/15 resources with custom target depend_files/ico/sample.ico.in)bin9662 -> 9662 bytes
-rw-r--r--test cases/windows/14 resources with custom target depend_files/meson.build (renamed from test cases/windows/15 resources with custom target depend_files/meson.build)0
-rw-r--r--test cases/windows/14 resources with custom target depend_files/prog.c (renamed from test cases/windows/15 resources with custom target depend_files/prog.c)0
-rw-r--r--test cases/windows/14 resources with custom target depend_files/res/meson.build (renamed from test cases/windows/15 resources with custom target depend_files/res/meson.build)0
-rw-r--r--test cases/windows/14 resources with custom target depend_files/res/myres.rc (renamed from test cases/windows/15 resources with custom target depend_files/res/myres.rc)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/a/meson.build (renamed from test cases/windows/16 resource scripts with duplicate filenames/a/meson.build)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/a/rsrc.rc (renamed from test cases/windows/16 resource scripts with duplicate filenames/a/rsrc.rc)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/b/meson.build (renamed from test cases/windows/16 resource scripts with duplicate filenames/b/meson.build)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/b/rsrc.rc (renamed from test cases/windows/16 resource scripts with duplicate filenames/b/rsrc.rc)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/c/meson.build (renamed from test cases/windows/16 resource scripts with duplicate filenames/c/meson.build)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/c/rsrc.rc (renamed from test cases/windows/16 resource scripts with duplicate filenames/c/rsrc.rc)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/meson.build (renamed from test cases/windows/16 resource scripts with duplicate filenames/meson.build)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/rsrc.rc (renamed from test cases/windows/16 resource scripts with duplicate filenames/rsrc.rc)0
-rw-r--r--test cases/windows/15 resource scripts with duplicate filenames/verify.c (renamed from test cases/windows/16 resource scripts with duplicate filenames/verify.c)0
-rw-r--r--test cases/windows/7 dll versioning/copyfile.py (renamed from test cases/windows/8 dll versioning/copyfile.py)0
-rw-r--r--test cases/windows/7 dll versioning/exe.orig.c (renamed from test cases/windows/8 dll versioning/exe.orig.c)0
-rw-r--r--test cases/windows/7 dll versioning/installed_files.txt (renamed from test cases/windows/8 dll versioning/installed_files.txt)0
-rw-r--r--test cases/windows/7 dll versioning/lib.c (renamed from test cases/windows/8 dll versioning/lib.c)0
-rw-r--r--test cases/windows/7 dll versioning/meson.build (renamed from test cases/windows/8 dll versioning/meson.build)0
-rw-r--r--test cases/windows/8 find program/meson.build (renamed from test cases/windows/9 find program/meson.build)0
-rw-r--r--test cases/windows/8 find program/test-script (renamed from test cases/windows/9 find program/test-script)0
-rw-r--r--test cases/windows/8 find program/test-script-ext.py (renamed from test cases/windows/9 find program/test-script-ext.py)0
-rw-r--r--test cases/windows/9 vs module defs generated/meson.build (renamed from test cases/windows/10 vs module defs generated/meson.build)0
-rw-r--r--test cases/windows/9 vs module defs generated/prog.c (renamed from test cases/windows/11 vs module defs generated custom target/prog.c)0
-rw-r--r--test cases/windows/9 vs module defs generated/subdir/meson.build (renamed from test cases/windows/10 vs module defs generated/subdir/meson.build)0
-rw-r--r--test cases/windows/9 vs module defs generated/subdir/somedll.c (renamed from test cases/windows/11 vs module defs generated custom target/subdir/somedll.c)0
-rw-r--r--test cases/windows/9 vs module defs generated/subdir/somedll.def.in (renamed from test cases/windows/10 vs module defs generated/subdir/somedll.def.in)0
-rwxr-xr-xtools/dircondenser.py82
549 files changed, 575 insertions, 244 deletions
diff --git a/.appveyor.yml b/.appveyor.yml
index 20d365f..c8e601e 100644
--- a/.appveyor.yml
+++ b/.appveyor.yml
@@ -17,14 +17,6 @@ environment:
backend: ninja
- arch: x86
- compiler: msvc2010
- backend: ninja
-
- - arch: x86
- compiler: msvc2010
- backend: vs2010
-
- - arch: x86
compiler: msvc2015
backend: ninja
BOOST_ROOT: C:\Libraries\Boost_1_60_0
@@ -57,7 +49,7 @@ branches:
init:
- ps: |
- If($Env:compiler -like 'msvc2010') {
+ If($Env:compiler -like 'msvc2015') {
Set-WinSystemLocale de-DE
Start-Sleep -s 5
Restart-Computer
@@ -85,7 +77,7 @@ install:
- cmd: set "ORIG_PATH=%PATH%"
# Use a Ninja with QuLogic's patch: https://github.com/ninja-build/ninja/issues/1219
- cmd: set "MESON_FIXED_NINJA=1"
- - ps: DownloadFile -Source 'http://nirbheek.in/files/binaries/ninja/win32/ninja.exe' -Destination 'C:\projects\meson\ninja.exe'
+ - ps: DownloadFile -Source 'https://github.com/mesonbuild/cidata/raw/master/ninja.exe' -Destination 'C:\projects\meson\ninja.exe'
# Use the x86 python only when building for x86 for the cpython tests.
# For all other archs (including, say, arm), use the x64 python.
- cmd: if %arch%==x86 (set MESON_PYTHON_PATH=C:\python35) else (set MESON_PYTHON_PATH=C:\python35-x64)
@@ -98,7 +90,6 @@ install:
- cmd: if %compiler%==msvc2017 ( if %arch%==x86 ( set "PATH=%PATH%;%BOOST_ROOT%\lib32-msvc-14.1" ) else ( set "PATH=%PATH%;%BOOST_ROOT%\lib64-msvc-14.1" ) )
# Set paths and config for each build type.
- - cmd: if %compiler%==msvc2010 ( call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" %arch% )
- cmd: if %compiler%==msvc2015 ( call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %arch% )
- cmd: if %compiler%==msvc2017 ( call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" -arch=%arch% )
- cmd: if %compiler%==cygwin ( set PYTHON=python3 ) else ( set PYTHON=python )
diff --git a/__main__.py b/__main__.py
index c412e37..27cd4c0 100644
--- a/__main__.py
+++ b/__main__.py
@@ -14,7 +14,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-import meson
+from mesonbuild import mesonmain
import sys
-sys.exit(meson.main())
+sys.exit(mesonmain.main())
diff --git a/data/syntax-highlighting/vim/syntax/meson.vim b/data/syntax-highlighting/vim/syntax/meson.vim
index c83302c..85acf43 100644
--- a/data/syntax-highlighting/vim/syntax/meson.vim
+++ b/data/syntax-highlighting/vim/syntax/meson.vim
@@ -69,6 +69,7 @@ syn keyword mesonBuiltin
\ add_project_arguments
\ add_project_link_arguments
\ add_test_setup
+ \ assert
\ benchmark
\ both_libraries
\ build_machine
@@ -102,6 +103,7 @@ syn keyword mesonBuiltin
\ library
\ meson
\ message
+ \ option
\ project
\ run_command
\ run_target
@@ -110,6 +112,7 @@ syn keyword mesonBuiltin
\ shared_module
\ static_library
\ subdir
+ \ subdir_done
\ subproject
\ target_machine
\ test
diff --git a/docs/markdown/IDE-integration.md b/docs/markdown/IDE-integration.md
index f608c5c..2ce4b78 100644
--- a/docs/markdown/IDE-integration.md
+++ b/docs/markdown/IDE-integration.md
@@ -43,3 +43,9 @@ When these tests fail, the user probably wants to run the failing test in a debu
meson introspect --tests
This provides you with all the information needed to run the test: what command to execute, command line arguments and environment variable settings.
+
+# Existing integrations
+
+- [Gnome Builder](https://wiki.gnome.org/Apps/Builder)
+- [Eclipse CDT](https://www.eclipse.org/cdt/) (experimental)
+- [Meson Cmake Wrapper](https://github.com/prozum/meson-cmake-wrapper) (for cmake IDEs) \ No newline at end of file
diff --git a/docs/markdown/Reference-manual.md b/docs/markdown/Reference-manual.md
index 9f49831..12018fc 100644
--- a/docs/markdown/Reference-manual.md
+++ b/docs/markdown/Reference-manual.md
@@ -1644,7 +1644,7 @@ the following methods:
`args` keyword, you can specify external dependencies to use with
`dependencies` keyword argument.
-- `check_header` returns true if the specified header is *usable* with
+- `check_header` *(added 0.47.0)* returns true if the specified header is *usable* with
the specified prefix, dependencies, and arguments.
You can specify external dependencies to use with `dependencies`
keyword argument and extra code to put above the header test with
diff --git a/docs/markdown/Reference-tables.md b/docs/markdown/Reference-tables.md
index 91a8e3c..9aa8609 100644
--- a/docs/markdown/Reference-tables.md
+++ b/docs/markdown/Reference-tables.md
@@ -55,7 +55,9 @@ set in the cross file.
| parisc | HP PA-RISC processor |
| riscv32 | 32 bit RISC-V Open ISA|
| riscv64 | 64 bit RISC-V Open ISA|
+| sparc | 32 bit SPARC |
| sparc64 | SPARC v9 processor |
+| s390x | IBM zSystem s390x |
Any cpu family not listed in the above list is not guaranteed to
remain stable in future releases.
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
index 2105d42..7306848 100644
--- a/mesonbuild/backend/backends.py
+++ b/mesonbuild/backend/backends.py
@@ -55,7 +55,7 @@ class InstallData:
self.mesonintrospect = mesonintrospect
class TargetInstallData:
- def __init__(self, fname, outdir, aliases, strip, install_name_mappings, install_rpath, install_mode):
+ def __init__(self, fname, outdir, aliases, strip, install_name_mappings, install_rpath, install_mode, optional=False):
self.fname = fname
self.outdir = outdir
self.aliases = aliases
@@ -63,6 +63,7 @@ class TargetInstallData:
self.install_name_mappings = install_name_mappings
self.install_rpath = install_rpath
self.install_mode = install_mode
+ self.optional = optional
class ExecutableSerialisation:
def __init__(self, name, fname, cmd_args, env, is_cross, exe_wrapper,
@@ -1047,9 +1048,10 @@ class Backend:
implib_install_dir = outdirs[0]
else:
implib_install_dir = self.environment.get_import_lib_dir()
- # Install the import library.
+ # Install the import library; may not exist for shared modules
i = TargetInstallData(self.get_target_filename_for_linking(t),
- implib_install_dir, {}, False, {}, '', install_mode)
+ implib_install_dir, {}, False, {}, '', install_mode,
+ optional=isinstance(t, build.SharedModule))
d.targets.append(i)
# Install secondary outputs. Only used for Vala right now.
if num_outdirs > 1:
diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py
index c36022f..acbb12d 100644
--- a/mesonbuild/backend/vs2010backend.py
+++ b/mesonbuild/backend/vs2010backend.py
@@ -105,7 +105,7 @@ class Vs2010Backend(backends.Backend):
exe = generator.get_exe()
infilelist = genlist.get_inputs()
outfilelist = genlist.get_outputs()
- source_dir = os.path.join(self.build_to_src, genlist.subdir)
+ source_dir = os.path.join(down, self.build_to_src, genlist.subdir)
exe_arr = self.exe_object_to_cmd_array(exe)
idgroup = ET.SubElement(parent_node, 'ItemGroup')
for i in range(len(infilelist)):
diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py
index ca50c52..2dfe794 100644
--- a/mesonbuild/compilers/c.py
+++ b/mesonbuild/compilers/c.py
@@ -16,6 +16,7 @@ import re
import glob
import os.path
import subprocess
+from pathlib import Path
from .. import mlog
from .. import coredata
@@ -46,11 +47,14 @@ from .compilers import (
RunResult,
)
+gnu_compiler_internal_libs = ('m', 'c', 'pthread', 'dl', 'rt')
+
class CCompiler(Compiler):
library_dirs_cache = {}
program_dirs_cache = {}
find_library_cache = {}
+ internal_libs = gnu_compiler_internal_libs
def __init__(self, exelist, version, is_cross, exe_wrapper=None, **kwargs):
# If a child ObjC or CPP class has already set it, don't set it ourselves
@@ -885,13 +889,13 @@ class CCompiler(Compiler):
@classmethod
def _get_trials_from_pattern(cls, pattern, directory, libname):
- f = os.path.join(directory, pattern.format(libname))
+ f = Path(directory) / pattern.format(libname)
# Globbing for OpenBSD
if '*' in pattern:
# NOTE: globbing matches directories and broken symlinks
# so we have to do an isfile test on it later
- return cls._sort_shlibs_openbsd(glob.glob(f))
- return [f]
+ return cls._sort_shlibs_openbsd(glob.glob(str(f)))
+ return [f.as_posix()]
@staticmethod
def _get_file_from_list(files):
@@ -904,10 +908,13 @@ class CCompiler(Compiler):
# First try if we can just add the library as -l.
# Gcc + co seem to prefer builtin lib dirs to -L dirs.
# Only try to find std libs if no extra dirs specified.
- if not extra_dirs:
+ if not extra_dirs or libname in self.internal_libs:
args = ['-l' + libname]
if self.links(code, env, extra_args=args):
return args
+ # Don't do a manual search for internal libs
+ if libname in self.internal_libs:
+ return None
# Not found or we want to use a specific libtype? Try to find the
# library file itself.
patterns = self.get_library_naming(env, libtype)
@@ -1187,7 +1194,8 @@ class IntelCCompiler(IntelCompiler, CCompiler):
class VisualStudioCCompiler(CCompiler):
std_warn_args = ['/W3']
std_opt_args = ['/O2']
- ignore_libs = ('m', 'c', 'pthread')
+ ignore_libs = gnu_compiler_internal_libs
+ internal_libs = ()
def __init__(self, exelist, version, is_cross, exe_wrap, is_64):
CCompiler.__init__(self, exelist, version, is_cross, exe_wrap)
@@ -1274,6 +1282,9 @@ class VisualStudioCCompiler(CCompiler):
def get_pic_args(self):
return [] # PIC is handled by the loader on Windows
+ def gen_export_dynamic_link_args(self, env):
+ return [] # Not applicable with MSVC
+
def get_std_shared_lib_link_args(self):
return ['/DLL']
diff --git a/mesonbuild/compilers/compilers.py b/mesonbuild/compilers/compilers.py
index 25835a3..cb3ed23 100644
--- a/mesonbuild/compilers/compilers.py
+++ b/mesonbuild/compilers/compilers.py
@@ -661,6 +661,9 @@ class Compiler:
# Libraries to ignore in find_library() since they are provided by the
# compiler or the C library. Currently only used for MSVC.
ignore_libs = ()
+ # Libraries that are internal compiler implementations, and must not be
+ # manually searched.
+ internal_libs = ()
# Cache for the result of compiler checks which can be cached
compiler_check_cache = {}
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 6021ddd..c4f9630 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -575,26 +575,7 @@ class PkgConfigDependency(ExternalDependency):
(self.name, out))
self.compile_args = self._convert_mingw_paths(shlex.split(out))
- def _set_libs(self):
- env = None
- libcmd = [self.name, '--libs']
- if self.static:
- libcmd.append('--static')
- # Force pkg-config to output -L fields even if they are system
- # paths so we can do manual searching with cc.find_library() later.
- env = os.environ.copy()
- env['PKG_CONFIG_ALLOW_SYSTEM_LIBS'] = '1'
- ret, out = self._call_pkgbin(libcmd, env=env)
- if ret != 0:
- raise DependencyException('Could not generate libs for %s:\n\n%s' %
- (self.name, out))
- # Also get the 'raw' output without -Lfoo system paths for usage when
- # a library can't be found, and also in gnome.generate_gir
- # + gnome.gtkdoc which need -L -l arguments.
- ret, out_raw = self._call_pkgbin(libcmd)
- if ret != 0:
- raise DependencyException('Could not generate libs for %s:\n\n%s' %
- (self.name, out_raw))
+ def _search_libs(self, out, out_raw):
link_args = []
raw_link_args = []
# Library paths should be safe to de-dup
@@ -625,18 +606,22 @@ class PkgConfigDependency(ExternalDependency):
continue
if self.clib_compiler:
args = self.clib_compiler.find_library(lib[2:], self.env,
- list(libpaths), libtype)
+ list(reversed(libpaths)), libtype)
# If the project only uses a non-clib language such as D, Rust,
# C#, Python, etc, all we can do is limp along by adding the
# arguments as-is and then adding the libpaths at the end.
else:
args = None
- if args:
+ if args is not None:
libs_found.add(lib)
# Replace -l arg with full path to library if available
- # else, library is provided by the compiler and can't be resolved
- if not args[0].startswith('-l'):
- lib = args[0]
+ # else, library is either to be ignored, or is provided by
+ # the compiler, can't be resolved, and should be used as-is
+ if args:
+ if not args[0].startswith('-l'):
+ lib = args[0]
+ else:
+ continue
else:
# Library wasn't found, maybe we're looking in the wrong
# places or the library will be provided with LDFLAGS or
@@ -670,14 +655,34 @@ class PkgConfigDependency(ExternalDependency):
if lib.startswith('-L') and not lib.startswith(('-L-l', '-L-L')):
raw_libpaths.add(lib[2:])
raw_link_args.append(lib)
- # Set everything
- self.link_args = link_args
- self.raw_link_args = raw_link_args
# Add all -Lbar args if we have -lfoo args in link_args
if libs_notfound:
# Order of -L flags doesn't matter with ld, but it might with other
# linkers such as MSVC, so prepend them.
- self.link_args = ['-L' + lp for lp in raw_libpaths] + self.link_args
+ link_args = ['-L' + lp for lp in raw_libpaths] + link_args
+ return link_args, raw_link_args
+
+ def _set_libs(self):
+ env = None
+ libcmd = [self.name, '--libs']
+ if self.static:
+ libcmd.append('--static')
+ # Force pkg-config to output -L fields even if they are system
+ # paths so we can do manual searching with cc.find_library() later.
+ env = os.environ.copy()
+ env['PKG_CONFIG_ALLOW_SYSTEM_LIBS'] = '1'
+ ret, out = self._call_pkgbin(libcmd, env=env)
+ if ret != 0:
+ raise DependencyException('Could not generate libs for %s:\n\n%s' %
+ (self.name, out))
+ # Also get the 'raw' output without -Lfoo system paths for adding -L
+ # args with -lfoo when a library can't be found, and also in
+ # gnome.generate_gir + gnome.gtkdoc which need -L -l arguments.
+ ret, out_raw = self._call_pkgbin(libcmd)
+ if ret != 0:
+ raise DependencyException('Could not generate libs for %s:\n\n%s' %
+ (self.name, out_raw))
+ self.link_args, self.raw_link_args = self._search_libs(out, out_raw)
def get_pkgconfig_variable(self, variable_name, kwargs):
options = ['--variable=' + variable_name, self.name]
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index a20ef94..6688c62 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -86,6 +86,8 @@ known_cpu_families = (
'ppc64',
'riscv32',
'riscv64',
+ 's390x',
+ 'sparc',
'sparc64',
'x86',
'x86_64'
@@ -344,13 +346,11 @@ class Environment:
# static libraries, and executables.
# Versioning is added to these names in the backends as-needed.
cross = self.is_cross_build()
- if (not cross and mesonlib.is_windows()) \
- or (cross and self.cross_info.has_host() and self.cross_info.config['host_machine']['system'] == 'windows'):
+ if mesonlib.for_windows(cross, self):
self.exe_suffix = 'exe'
self.object_suffix = 'obj'
self.win_libdir_layout = True
- elif (not cross and mesonlib.is_cygwin()) \
- or (cross and self.cross_info.has_host() and self.cross_info.config['host_machine']['system'] == 'cygwin'):
+ elif mesonlib.for_cygwin(cross, self):
self.exe_suffix = 'exe'
self.object_suffix = 'o'
self.win_libdir_layout = True
@@ -984,12 +984,10 @@ class CrossBuildInfo:
def __init__(self, filename):
self.config = {'properties': {}}
self.parse_datafile(filename)
- if 'target_machine' in self.config:
- return
- if 'host_machine' not in self.config:
+ if 'host_machine' not in self.config and 'target_machine' not in self.config:
raise mesonlib.MesonException('Cross info file must have either host or a target machine.')
- if 'binaries' not in self.config:
- raise mesonlib.MesonException('Cross file is missing "binaries".')
+ if 'host_machine' in self.config and 'binaries' not in self.config:
+ raise mesonlib.MesonException('Cross file with "host_machine" is missing "binaries".')
def ok_type(self, i):
return isinstance(i, (str, int, bool))
@@ -1038,6 +1036,12 @@ class CrossBuildInfo:
def get_stdlib(self, language):
return self.config['properties'][language + '_stdlib']
+ def get_host_system(self):
+ "Name of host system like 'linux', or None"
+ if self.has_host():
+ return self.config['host_machine']['system']
+ return None
+
def get_properties(self):
return self.config['properties']
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py
index 95fc408..fd0385d 100644
--- a/mesonbuild/interpreter.py
+++ b/mesonbuild/interpreter.py
@@ -405,7 +405,7 @@ class DependencyHolder(InterpreterObject, ObjectHolder):
def name_method(self, args, kwargs):
return self.held_object.get_name()
- @permittedKwargs({'define_variable'})
+ @permittedKwargs({'define_variable', 'default'})
def pkgconfig_method(self, args, kwargs):
args = listify(args)
if len(args) != 1:
@@ -1847,7 +1847,7 @@ permitted_kwargs = {'add_global_arguments': {'language'},
class Interpreter(InterpreterBase):
def __init__(self, build, backend=None, subproject='', subdir='', subproject_dir='subprojects',
- modules = None, default_project_options=None):
+ modules = None, default_project_options=None, mock=False):
super().__init__(build.environment.get_source_dir(), subdir)
self.an_unpicklable_object = mesonlib.an_unpicklable_object
self.build = build
@@ -1864,8 +1864,9 @@ class Interpreter(InterpreterBase):
self.subproject_directory_name = subdir.split(os.path.sep)[-1]
self.subproject_dir = subproject_dir
self.option_file = os.path.join(self.source_root, self.subdir, 'meson_options.txt')
- self.load_root_meson_file()
- self.sanity_check_ast()
+ if not mock:
+ self.load_root_meson_file()
+ self.sanity_check_ast()
self.builtin.update({'meson': MesonMain(build, self)})
self.generators = []
self.visited_subdirs = {}
@@ -1883,7 +1884,8 @@ class Interpreter(InterpreterBase):
self.build_func_dict()
# build_def_files needs to be defined before parse_project is called
self.build_def_files = [os.path.join(self.subdir, environment.build_filename)]
- self.parse_project()
+ if not mock:
+ self.parse_project()
self.builtin['build_machine'] = BuildMachine(self.coredata.compilers)
if not self.build.environment.is_cross_build():
self.builtin['host_machine'] = self.builtin['build_machine']
@@ -2814,6 +2816,12 @@ external dependencies (including libraries) must go to "dependencies".''')
if not dep:
return False
found = dep.version_method([], {})
+ # Don't do a version check if the dependency is not found and not required
+ if found == 'none' and not required:
+ subproj_path = os.path.join(self.subproject_dir, dirname)
+ mlog.log('Dependency', mlog.bold(name), 'from subproject',
+ mlog.bold(subproj_path), 'found:', mlog.red('NO'), '(cached)')
+ return dep
if self.check_subproject_version(wanted, found):
subproj_path = os.path.join(self.subproject_dir, dirname)
mlog.log('Dependency', mlog.bold(name), 'from subproject',
diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py
index af21a9c..1b9cb42 100644
--- a/mesonbuild/mesonlib.py
+++ b/mesonbuild/mesonlib.py
@@ -247,7 +247,7 @@ def get_compiler_for_source(compilers, src):
for comp in compilers:
if comp.can_compile(src):
return comp
- raise RuntimeError('No specified compiler can handle file {!s}'.format(src))
+ raise MesonException('No specified compiler can handle file {!s}'.format(src))
def classify_unity_sources(compilers, sources):
compsrclist = {}
@@ -299,9 +299,7 @@ def for_windows(is_cross, env):
"""
if not is_cross:
return is_windows()
- elif env.cross_info.has_host():
- return env.cross_info.config['host_machine']['system'] == 'windows'
- return False
+ return env.cross_info.get_host_system() == 'windows'
def for_cygwin(is_cross, env):
"""
@@ -311,9 +309,7 @@ def for_cygwin(is_cross, env):
"""
if not is_cross:
return is_cygwin()
- elif env.cross_info.has_host():
- return env.cross_info.config['host_machine']['system'] == 'cygwin'
- return False
+ return env.cross_info.get_host_system() == 'cygwin'
def for_linux(is_cross, env):
"""
@@ -323,9 +319,7 @@ def for_linux(is_cross, env):
"""
if not is_cross:
return is_linux()
- elif env.cross_info.has_host():
- return env.cross_info.config['host_machine']['system'] == 'linux'
- return False
+ return env.cross_info.get_host_system() == 'linux'
def for_darwin(is_cross, env):
"""
@@ -335,9 +329,7 @@ def for_darwin(is_cross, env):
"""
if not is_cross:
return is_osx()
- elif env.cross_info.has_host():
- return env.cross_info.config['host_machine']['system'] in ('darwin', 'ios')
- return False
+ return env.cross_info.get_host_system() in ('darwin', 'ios')
def for_android(is_cross, env):
"""
@@ -347,9 +339,7 @@ def for_android(is_cross, env):
"""
if not is_cross:
return is_android()
- elif env.cross_info.has_host():
- return env.cross_info.config['host_machine']['system'] == 'android'
- return False
+ return env.cross_info.get_host_system() == 'android'
def for_haiku(is_cross, env):
"""
@@ -359,9 +349,7 @@ def for_haiku(is_cross, env):
"""
if not is_cross:
return is_haiku()
- elif env.cross_info.has_host():
- return env.cross_info.config['host_machine']['system'] == 'haiku'
- return False
+ return env.cross_info.get_host_system() == 'haiku'
def for_openbsd(is_cross, env):
"""
@@ -1100,6 +1088,9 @@ class OrderedSet(collections.MutableSet):
'", "'.join(repr(e) for e in self.__container.keys()))
return 'OrderedSet()'
+ def __reversed__(self):
+ return reversed(self.__container)
+
def add(self, value):
self.__container[value] = None
diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
index 4615b6d..2c007eb 100644
--- a/mesonbuild/minstall.py
+++ b/mesonbuild/minstall.py
@@ -20,7 +20,12 @@ from .scripts import depfixer
from .scripts import destdir_join
from .mesonlib import is_windows, Popen_safe
from .mtest import rebuild_all
-from __main__ import __file__ as main_file
+try:
+ from __main__ import __file__ as main_file
+except ImportError:
+ # Happens when running as meson.exe which is native Windows.
+ # This is only used for pkexec which is not, so this is fine.
+ main_file = None
selinux_updates = []
@@ -384,6 +389,13 @@ class Installer:
def install_targets(self, d):
for t in d.targets:
+ if not os.path.exists(t.fname):
+ # For example, import libraries of shared modules are optional
+ if t.optional:
+ print('File {!r} not found, skipping'.format(t.fname))
+ continue
+ else:
+ raise RuntimeError('File {!r} could not be found'.format(t.fname))
fname = check_for_stampfile(t.fname)
outdir = get_destdir_path(d, t.outdir)
outname = os.path.join(outdir, os.path.basename(fname))
diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py
index 1195d8a..d9ec562 100644
--- a/mesonbuild/modules/python.py
+++ b/mesonbuild/modules/python.py
@@ -17,6 +17,7 @@ import json
from pathlib import Path
from .. import mesonlib
+from ..mesonlib import MesonException
from . import ExtensionModule
from mesonbuild.modules import ModuleReturnValue
from ..interpreterbase import (
@@ -64,29 +65,48 @@ class PythonDependency(ExternalDependency):
else:
self.major_version = 2
+ # We first try to find the necessary python variables using pkgconfig
if DependencyMethods.PKGCONFIG in self.methods and not python_holder.is_pypy:
pkg_version = self.variables.get('LDVERSION') or self.version
pkg_libdir = self.variables.get('LIBPC')
- old_pkg_libdir = os.environ.get('PKG_CONFIG_LIBDIR')
- old_pkg_path = os.environ.get('PKG_CONFIG_PATH')
- os.environ.pop('PKG_CONFIG_PATH', None)
+ # If python-X.Y.pc exists in LIBPC, we will try to use it
+ if pkg_libdir is not None and Path(os.path.join(pkg_libdir, 'python-{}.pc'.format(pkg_version))).is_file():
+ old_pkg_libdir = os.environ.get('PKG_CONFIG_LIBDIR')
+ old_pkg_path = os.environ.get('PKG_CONFIG_PATH')
- if pkg_libdir:
- os.environ['PKG_CONFIG_LIBDIR'] = pkg_libdir
+ os.environ.pop('PKG_CONFIG_PATH', None)
- try:
- self.pkgdep = PkgConfigDependency('python-{}'.format(pkg_version), environment, kwargs)
- except Exception:
- pass
+ if pkg_libdir:
+ os.environ['PKG_CONFIG_LIBDIR'] = pkg_libdir
- if old_pkg_path is not None:
- os.environ['PKG_CONFIG_PATH'] = old_pkg_path
+ try:
+ self.pkgdep = PkgConfigDependency('python-{}'.format(pkg_version), environment, kwargs)
+ mlog.debug('Found "python-{}" via pkgconfig lookup in LIBPC ({})'.format(pkg_version, pkg_libdir))
+ py_lookup_method = 'pkgconfig'
+ except MesonException as e:
+ mlog.debug('"python-{}" could not be found in LIBPC ({})'.format(pkg_version, pkg_libdir))
+ mlog.debug(e)
- if old_pkg_libdir is not None:
- os.environ['PKG_CONFIG_LIBDIR'] = old_pkg_libdir
+ if old_pkg_path is not None:
+ os.environ['PKG_CONFIG_PATH'] = old_pkg_path
+
+ if old_pkg_libdir is not None:
+ os.environ['PKG_CONFIG_LIBDIR'] = old_pkg_libdir
+ else:
+ os.environ.pop('PKG_CONFIG_LIBDIR', None)
else:
- os.environ.pop('PKG_CONFIG_LIBDIR', None)
+ mlog.debug('"python-{}" could not be found in LIBPC ({}), this is likely due to a relocated python installation'.format(pkg_version, pkg_libdir))
+
+ # If lookup via LIBPC failed, try to use fallback PKG_CONFIG_LIBDIR/PKG_CONFIG_PATH mechanisms
+ if self.pkgdep is None or not self.pkgdep.found():
+ try:
+ self.pkgdep = PkgConfigDependency('python-{}'.format(pkg_version), environment, kwargs)
+ mlog.debug('Found "python-{}" via fallback pkgconfig lookup in PKG_CONFIG_LIBDIR/PKG_CONFIG_PATH'.format(pkg_version))
+ py_lookup_method = 'pkgconfig-fallback'
+ except MesonException as e:
+ mlog.debug('"python-{}" could not be found via fallback pkgconfig lookup in PKG_CONFIG_LIBDIR/PKG_CONFIG_PATH'.format(pkg_version))
+ mlog.debug(e)
if self.pkgdep and self.pkgdep.found():
self.compile_args = self.pkgdep.get_compile_args()
@@ -96,14 +116,19 @@ class PythonDependency(ExternalDependency):
else:
self.pkgdep = None
+ # Finally, try to find python via SYSCONFIG as a final measure
if DependencyMethods.SYSCONFIG in self.methods:
if mesonlib.is_windows():
self._find_libpy_windows(environment)
else:
self._find_libpy(python_holder, environment)
+ if self.is_found:
+ mlog.debug('Found "python-{}" via SYSCONFIG module'.format(self.version))
+ py_lookup_method = 'sysconfig'
+
if self.is_found:
- mlog.log('Dependency', mlog.bold(self.name), 'found:', mlog.green('YES'))
+ mlog.log('Dependency', mlog.bold(self.name), 'found:', mlog.green('YES ({})'.format(py_lookup_method)))
else:
mlog.log('Dependency', mlog.bold(self.name), 'found:', mlog.red('NO'))
diff --git a/mesonbuild/scripts/gtkdochelper.py b/mesonbuild/scripts/gtkdochelper.py
index 371d95d..bf3d9f6 100644
--- a/mesonbuild/scripts/gtkdochelper.py
+++ b/mesonbuild/scripts/gtkdochelper.py
@@ -17,7 +17,7 @@ import subprocess
import shlex
import shutil
import argparse
-from ..mesonlib import MesonException, Popen_safe
+from ..mesonlib import MesonException, Popen_safe, is_windows
from . import destdir_join
parser = argparse.ArgumentParser()
@@ -47,10 +47,20 @@ parser.add_argument('--mode', dest='mode', default='')
parser.add_argument('--installdir', dest='install_dir')
parser.add_argument('--run', dest='run', default='')
-def gtkdoc_run_check(cmd, cwd, library_path=None):
+def gtkdoc_run_check(cmd, cwd, library_paths=None):
+ if library_paths is None:
+ library_paths = []
+
env = dict(os.environ)
- if library_path:
- env['LD_LIBRARY_PATH'] = library_path
+ if is_windows():
+ if 'PATH' in env:
+ library_paths.extend(env['PATH'].split(os.pathsep))
+ env['PATH'] = os.pathsep.join(library_paths)
+ else:
+ if 'LD_LIBRARY_PATH' in env:
+ library_paths.extend(env['LD_LIBRARY_PATH'].split(os.pathsep))
+ env['LD_LIBRARY_PATH'] = os.pathsep.join(library_paths)
+
# Put stderr into stdout since we want to print it out anyway.
# This preserves the order of messages.
p, out = Popen_safe(cmd, cwd=cwd, env=env, stderr=subprocess.STDOUT)[0:2]
@@ -137,11 +147,8 @@ def build_gtkdoc(source_root, build_root, doc_subdir, src_subdirs,
for ldflag in shlex.split(ldflags):
if ldflag.startswith('-Wl,-rpath,'):
library_paths.append(ldflag[11:])
- if 'LD_LIBRARY_PATH' in os.environ:
- library_paths.append(os.environ['LD_LIBRARY_PATH'])
- library_path = ':'.join(library_paths)
- gtkdoc_run_check(scanobjs_cmd, build_root, library_path)
+ gtkdoc_run_check(scanobjs_cmd, build_root, library_paths)
# Make docbook files
if mode == 'auto':
diff --git a/mesonbuild/wrap/wrap.py b/mesonbuild/wrap/wrap.py
index 54a928e..a3f8ab1 100644
--- a/mesonbuild/wrap/wrap.py
+++ b/mesonbuild/wrap/wrap.py
@@ -203,15 +203,17 @@ class Resolver:
subprocess.call(['git', 'pull'], cwd=checkoutdir)
else:
if subprocess.call(['git', 'checkout', revno], cwd=checkoutdir) != 0:
- subprocess.check_call(['git', 'fetch'], cwd=checkoutdir)
+ subprocess.check_call(['git', 'fetch', p.get('url'), revno], cwd=checkoutdir)
subprocess.check_call(['git', 'checkout', revno],
cwd=checkoutdir)
else:
subprocess.check_call(['git', 'clone', p.get('url'),
p.get('directory')], cwd=self.subdir_root)
if revno.lower() != 'head':
- subprocess.check_call(['git', 'checkout', revno],
- cwd=checkoutdir)
+ if subprocess.call(['git', 'checkout', revno], cwd=checkoutdir) != 0:
+ subprocess.check_call(['git', 'fetch', p.get('url'), revno], cwd=checkoutdir)
+ subprocess.check_call(['git', 'checkout', revno],
+ cwd=checkoutdir)
push_url = p.values.get('push-url')
if push_url:
subprocess.check_call(['git', 'remote', 'set-url',
diff --git a/run_meson_command_tests.py b/run_meson_command_tests.py
index 6efd911..cd220de 100755
--- a/run_meson_command_tests.py
+++ b/run_meson_command_tests.py
@@ -18,6 +18,7 @@ import os
import tempfile
import unittest
import subprocess
+import zipapp
from pathlib import Path
from mesonbuild.mesonlib import windows_proof_rmtree, python_command, is_windows
@@ -182,5 +183,13 @@ class CommandTests(unittest.TestCase):
def test_meson_exe_windows(self):
raise unittest.SkipTest('NOT IMPLEMENTED')
+ def test_meson_zipapp(self):
+ if is_windows():
+ raise unittest.SkipTest('NOT IMPLEMENTED')
+ source = Path(__file__).resolve().parent.as_posix()
+ target = self.tmpdir / 'meson.pyz'
+ zipapp.create_archive(source=source, target=target, interpreter=python_command[0], main=None)
+ self._run([target.as_posix(), '--help'])
+
if __name__ == '__main__':
unittest.main(buffer=True)
diff --git a/run_project_tests.py b/run_project_tests.py
index 36ee986..1385a78 100755
--- a/run_project_tests.py
+++ b/run_project_tests.py
@@ -294,16 +294,16 @@ def run_test(skipped, testdir, extra_args, compiler, backend, flags, commands, s
mlog.shutdown() # Close the log file because otherwise Windows wets itself.
def pass_prefix_to_test(dirname):
- if '40 prefix' in dirname:
+ if '39 prefix absolute' in dirname:
return False
return True
def pass_libdir_to_test(dirname):
if '8 install' in dirname:
return False
- if '39 libdir' in dirname:
+ if '38 libdir must be inside prefix' in dirname:
return False
- if '201 install_mode' in dirname:
+ if '199 install_mode' in dirname:
return False
return True
diff --git a/run_unittests.py b/run_unittests.py
index dee1086..6e50172 100755
--- a/run_unittests.py
+++ b/run_unittests.py
@@ -23,6 +23,7 @@ import os
import shutil
import unittest
import platform
+from itertools import chain
from unittest import mock
from configparser import ConfigParser
from glob import glob
@@ -34,7 +35,7 @@ import mesonbuild.environment
import mesonbuild.mesonlib
import mesonbuild.coredata
import mesonbuild.modules.gnome
-from mesonbuild.interpreter import ObjectHolder
+from mesonbuild.interpreter import Interpreter, ObjectHolder
from mesonbuild.mesonlib import (
is_windows, is_osx, is_cygwin, is_dragonflybsd, is_openbsd,
windows_proof_rmtree, python_command, version_compare,
@@ -50,6 +51,14 @@ from run_tests import get_builddir_target_args, get_backend_commands, Backend
from run_tests import ensure_backend_detects_changes, run_configure_inprocess
from run_tests import run_mtest_inprocess
+# Fake classes for mocking
+class FakeBuild:
+ def __init__(self, env):
+ self.environment = env
+
+class FakeCompilerOptions:
+ def __init__(self):
+ self.value = []
def get_dynamic_section_entry(fname, entry):
if is_cygwin() or is_osx():
@@ -71,10 +80,14 @@ def get_dynamic_section_entry(fname, entry):
def get_soname(fname):
return get_dynamic_section_entry(fname, 'soname')
-
def get_rpath(fname):
return get_dynamic_section_entry(fname, r'(?:rpath|runpath)')
+def is_tarball():
+ if not os.path.isdir('docs'):
+ return True
+ return False
+
def is_ci():
if 'TRAVIS' in os.environ or 'APPVEYOR' in os.environ:
return True
@@ -479,23 +492,6 @@ class InternalTests(unittest.TestCase):
kwargs = {'sources': [1, 2, 3], 'pch_sources': [4, 5, 6]}
self.assertEqual([[1, 2, 3], [4, 5, 6]], extract(kwargs, 'sources', 'pch_sources'))
- @unittest.skipIf(not os.path.isdir('docs'), 'Doc dir not found, presumably because this is a tarball release.')
- def test_snippets(self):
- hashcounter = re.compile('^ *(#)+')
- snippet_dir = Path('docs/markdown/snippets')
- self.assertTrue(snippet_dir.is_dir())
- for f in snippet_dir.glob('*'):
- self.assertTrue(f.is_file())
- if f.suffix == '.md':
- with f.open() as snippet:
- for line in snippet:
- m = re.match(hashcounter, line)
- if m:
- self.assertEqual(len(m.group(0)), 2, 'All headings in snippets must have two hash symbols: ' + f.name)
- else:
- if f.name != 'add_release_note_snippets_here':
- self.assertTrue(False, 'A file without .md suffix in snippets dir: ' + f.name)
-
def test_pkgconfig_module(self):
class Mock:
@@ -602,6 +598,150 @@ class InternalTests(unittest.TestCase):
'mesonbuild.compilers.c.for_windows', true):
self._test_all_naming(cc, env, patterns, 'windows-msvc')
+ def test_pkgconfig_parse_libs(self):
+ '''
+ Unit test for parsing of pkg-config output to search for libraries
+
+ https://github.com/mesonbuild/meson/issues/3951
+ '''
+ with tempfile.TemporaryDirectory() as tmpdir:
+ pkgbin = ExternalProgram('pkg-config', command=['pkg-config'], silent=True)
+ env = Environment('', '', get_fake_options(''))
+ compiler = env.detect_c_compiler(False)
+ env.coredata.compilers = {'c': compiler}
+ env.coredata.compiler_options['c_link_args'] = FakeCompilerOptions()
+ p1 = Path(tmpdir) / '1'
+ p2 = Path(tmpdir) / '2'
+ p1.mkdir()
+ p2.mkdir()
+ # libfoo.a is in one prefix
+ (p1 / 'libfoo.a').open('w').close()
+ # libbar.a is in both prefixes
+ (p1 / 'libbar.a').open('w').close()
+ (p2 / 'libbar.a').open('w').close()
+ # Ensure that we never statically link to these
+ (p1 / 'libpthread.a').open('w').close()
+ (p1 / 'libm.a').open('w').close()
+ (p1 / 'libc.a').open('w').close()
+ (p1 / 'libdl.a').open('w').close()
+ (p1 / 'librt.a').open('w').close()
+
+ def fake_call_pkgbin(self, args, env=None):
+ if '--libs' not in args:
+ return 0, ''
+ if args[0] == 'foo':
+ return 0, '-L{} -lfoo -L{} -lbar'.format(p1.as_posix(), p2.as_posix())
+ if args[0] == 'bar':
+ return 0, '-L{} -lbar'.format(p2.as_posix())
+ if args[0] == 'internal':
+ return 0, '-L{} -lpthread -lm -lc -lrt -ldl'.format(p1.as_posix())
+
+ old_call = PkgConfigDependency._call_pkgbin
+ old_check = PkgConfigDependency.check_pkgconfig
+ PkgConfigDependency._call_pkgbin = fake_call_pkgbin
+ PkgConfigDependency.check_pkgconfig = lambda x: pkgbin
+ # Test begins
+ kwargs = {'required': True, 'silent': True}
+ foo_dep = PkgConfigDependency('foo', env, kwargs)
+ self.assertEqual(foo_dep.get_link_args(),
+ [(p1 / 'libfoo.a').as_posix(), (p2 / 'libbar.a').as_posix()])
+ bar_dep = PkgConfigDependency('bar', env, kwargs)
+ self.assertEqual(bar_dep.get_link_args(), [(p2 / 'libbar.a').as_posix()])
+ internal_dep = PkgConfigDependency('internal', env, kwargs)
+ if compiler.get_id() == 'msvc':
+ self.assertEqual(internal_dep.get_link_args(), [])
+ else:
+ link_args = internal_dep.get_link_args()
+ for link_arg in link_args:
+ for lib in ('pthread', 'm', 'c', 'dl', 'rt'):
+ self.assertNotIn('lib{}.a'.format(lib), link_arg, msg=link_args)
+ # Test ends
+ PkgConfigDependency._call_pkgbin = old_call
+ PkgConfigDependency.check_pkgconfig = old_check
+
+
+@unittest.skipIf(is_tarball(), 'Skipping because this is a tarball release')
+class DataTests(unittest.TestCase):
+
+ def test_snippets(self):
+ hashcounter = re.compile('^ *(#)+')
+ snippet_dir = Path('docs/markdown/snippets')
+ self.assertTrue(snippet_dir.is_dir())
+ for f in snippet_dir.glob('*'):
+ self.assertTrue(f.is_file())
+ if f.suffix == '.md':
+ with f.open() as snippet:
+ for line in snippet:
+ m = re.match(hashcounter, line)
+ if m:
+ self.assertEqual(len(m.group(0)), 2, 'All headings in snippets must have two hash symbols: ' + f.name)
+ else:
+ if f.name != 'add_release_note_snippets_here':
+ self.assertTrue(False, 'A file without .md suffix in snippets dir: ' + f.name)
+
+ def test_compiler_options_documented(self):
+ '''
+ Test that C and C++ compiler options and base options are documented in
+ Builtin-Options.md. Only tests the default compiler for the current
+ platform on the CI.
+ '''
+ md = None
+ with open('docs/markdown/Builtin-options.md') as f:
+ md = f.read()
+ self.assertIsNotNone(md)
+ env = Environment('', '', get_fake_options(''))
+ # FIXME: Support other compilers
+ cc = env.detect_c_compiler(False)
+ cpp = env.detect_cpp_compiler(False)
+ for comp in (cc, cpp):
+ for opt in comp.get_options().keys():
+ self.assertIn(opt, md)
+ for opt in comp.base_options:
+ self.assertIn(opt, md)
+ self.assertNotIn('b_unknown', md)
+
+ def test_cpu_families_documented(self):
+ with open("docs/markdown/Reference-tables.md") as f:
+ md = f.read()
+ self.assertIsNotNone(md)
+
+ sections = list(re.finditer(r"^## (.+)$", md, re.MULTILINE))
+ for s1, s2 in zip(sections[::2], sections[1::2]):
+ if s1.group(1) == "CPU families":
+ # Extract the content for this section
+ content = md[s1.end():s2.start()]
+ # Find the list entries
+ arches = [m.group(1) for m in re.finditer(r"^\| (\w+) +\|", content, re.MULTILINE)]
+ # Drop the header
+ arches = set(arches[1:])
+ self.assertEqual(arches, set(mesonbuild.environment.known_cpu_families))
+
+ def test_markdown_files_in_sitemap(self):
+ '''
+ Test that each markdown files in docs/markdown is referenced in sitemap.txt
+ '''
+ with open("docs/sitemap.txt") as f:
+ md = f.read()
+ self.assertIsNotNone(md)
+ toc = list(m.group(1) for m in re.finditer(r"^\s*(\w.*)$", md, re.MULTILINE))
+ markdownfiles = [f.name for f in Path("docs/markdown").iterdir() if f.is_file() and f.suffix == '.md']
+ exceptions = ['_Sidebar.md']
+ for f in markdownfiles:
+ if f not in exceptions:
+ self.assertIn(f, toc)
+
+ def test_syntax_highlighting_files(self):
+ '''
+ Ensure that syntax highlighting files were updated for new functions in
+ the global namespace in build files.
+ '''
+ env = Environment('', '', get_fake_options(''))
+ interp = Interpreter(FakeBuild(env), mock=True)
+ with open('data/syntax-highlighting/vim/syntax/meson.vim') as f:
+ res = re.search(r'syn keyword mesonBuiltin(\s+\\\s\w+)+', f.read(), re.MULTILINE)
+ defined = set([a.strip() for a in res.group().split('\\')][1:])
+ self.assertEqual(defined, set(chain(interp.funcs.keys(), interp.builtin.keys())))
+
class BasePlatformTests(unittest.TestCase):
def setUp(self):
@@ -987,7 +1127,7 @@ class AllPlatformTests(BasePlatformTests):
dependent defaults for other options, and that those defaults can
be overridden in default_options or by the command line.
'''
- testdir = os.path.join(self.common_test_dir, '173 default options prefix dependent defaults')
+ testdir = os.path.join(self.common_test_dir, '172 default options prefix dependent defaults')
expected = {
'':
{'prefix': '/usr',
@@ -1112,7 +1252,7 @@ class AllPlatformTests(BasePlatformTests):
self.assertPathDoesNotExist(exename)
def test_forcefallback(self):
- testdir = os.path.join(self.unit_test_dir, '27 forcefallback')
+ testdir = os.path.join(self.unit_test_dir, '31 forcefallback')
self.init(testdir, ['--wrap-mode=forcefallback'])
self.build()
self.run_tests()
@@ -1148,7 +1288,7 @@ class AllPlatformTests(BasePlatformTests):
self._run(self.mtest_command + ['--setup=timeout'])
def test_testsetup_selection(self):
- testdir = os.path.join(self.unit_test_dir, '13 testsetup selection')
+ testdir = os.path.join(self.unit_test_dir, '14 testsetup selection')
self.init(testdir)
self.build()
@@ -1652,7 +1792,7 @@ int main(int argc, char **argv) {
self.assertTrue(rpath is None)
def test_dash_d_dedup(self):
- testdir = os.path.join(self.unit_test_dir, '10 d dedup')
+ testdir = os.path.join(self.unit_test_dir, '9 d dedup')
self.init(testdir)
cmd = self.get_compdb()[0]['command']
self.assertTrue('-D FOO -D BAR' in cmd or
@@ -1662,10 +1802,10 @@ int main(int argc, char **argv) {
def test_all_forbidden_targets_tested(self):
'''
- Test that all forbidden targets are tested in the '159 reserved targets'
+ Test that all forbidden targets are tested in the '158 reserved targets'
test. Needs to be a unit test because it accesses Meson internals.
'''
- testdir = os.path.join(self.common_test_dir, '159 reserved targets')
+ testdir = os.path.join(self.common_test_dir, '158 reserved targets')
targets = mesonbuild.coredata.forbidden_target_names
# We don't actually define a target with this name
targets.pop('build.ninja')
@@ -1703,7 +1843,7 @@ int main(int argc, char **argv) {
def test_prebuilt_object(self):
(compiler, _, object_suffix, _) = self.detect_prebuild_env()
- tdir = os.path.join(self.unit_test_dir, '14 prebuilt object')
+ tdir = os.path.join(self.unit_test_dir, '15 prebuilt object')
source = os.path.join(tdir, 'source.c')
objectfile = os.path.join(tdir, 'prebuilt.' + object_suffix)
self.pbcompile(compiler, source, objectfile)
@@ -1734,7 +1874,7 @@ int main(int argc, char **argv) {
def test_prebuilt_static_lib(self):
(cc, stlinker, object_suffix, _) = self.detect_prebuild_env()
- tdir = os.path.join(self.unit_test_dir, '15 prebuilt static')
+ tdir = os.path.join(self.unit_test_dir, '16 prebuilt static')
source = os.path.join(tdir, 'libdir/best.c')
objectfile = os.path.join(tdir, 'libdir/best.' + object_suffix)
stlibfile = os.path.join(tdir, 'libdir/libbest.a')
@@ -1766,7 +1906,7 @@ int main(int argc, char **argv) {
def test_prebuilt_shared_lib(self):
(cc, _, object_suffix, shared_suffix) = self.detect_prebuild_env()
- tdir = os.path.join(self.unit_test_dir, '16 prebuilt shared')
+ tdir = os.path.join(self.unit_test_dir, '17 prebuilt shared')
source = os.path.join(tdir, 'alexandria.c')
objectfile = os.path.join(tdir, 'alexandria.' + object_suffix)
impfile = os.path.join(tdir, 'alexandria.lib')
@@ -1803,7 +1943,7 @@ int main(int argc, char **argv) {
https://github.com/mesonbuild/meson/issues/2785
'''
(cc, stlinker, objext, shext) = self.detect_prebuild_env()
- testdir = os.path.join(self.unit_test_dir, '17 pkgconfig static')
+ testdir = os.path.join(self.unit_test_dir, '18 pkgconfig static')
source = os.path.join(testdir, 'foo.c')
objectfile = os.path.join(testdir, 'foo.' + objext)
stlibfile = os.path.join(testdir, 'libfoo.a')
@@ -1868,7 +2008,7 @@ int main(int argc, char **argv) {
'type': 'array',
'value': ['foo', 'bar'],
}
- tdir = os.path.join(self.unit_test_dir, '18 array option')
+ tdir = os.path.join(self.unit_test_dir, '19 array option')
self.init(tdir)
original = get_opt()
self.assertDictEqual(original, expected)
@@ -1892,7 +2032,7 @@ int main(int argc, char **argv) {
'type': 'array',
'value': ['foo', 'bar'],
}
- tdir = os.path.join(self.unit_test_dir, '18 array option')
+ tdir = os.path.join(self.unit_test_dir, '19 array option')
self.init(tdir)
original = get_opt()
self.assertDictEqual(original, expected)
@@ -1916,7 +2056,7 @@ int main(int argc, char **argv) {
'type': 'array',
'value': [],
}
- tdir = os.path.join(self.unit_test_dir, '18 array option')
+ tdir = os.path.join(self.unit_test_dir, '19 array option')
self.init(tdir, extra_args='-Dlist=')
original = get_opt()
self.assertDictEqual(original, expected)
@@ -1941,7 +2081,7 @@ int main(int argc, char **argv) {
self.opt_has('free_array_opt', ['a,b', 'c,d'])
def test_subproject_promotion(self):
- testdir = os.path.join(self.unit_test_dir, '13 promote')
+ testdir = os.path.join(self.unit_test_dir, '12 promote')
workdir = os.path.join(self.builddir, 'work')
shutil.copytree(testdir, workdir)
spdir = os.path.join(workdir, 'subprojects')
@@ -1965,7 +2105,7 @@ int main(int argc, char **argv) {
self.build()
def test_warning_location(self):
- tdir = os.path.join(self.unit_test_dir, '21 warning location')
+ tdir = os.path.join(self.unit_test_dir, '22 warning location')
out = self.init(tdir)
for expected in [
r'meson.build:4: WARNING: Keyword argument "link_with" defined multiple times.',
@@ -1979,7 +2119,7 @@ int main(int argc, char **argv) {
self.assertRegex(out, re.escape(expected))
def test_permitted_method_kwargs(self):
- tdir = os.path.join(self.unit_test_dir, '23 non-permitted kwargs')
+ tdir = os.path.join(self.unit_test_dir, '25 non-permitted kwargs')
out = self.init(tdir)
for expected in [
r'WARNING: Passed invalid keyword argument "prefixxx".',
@@ -2063,7 +2203,7 @@ int main(int argc, char **argv) {
The test checks that the compiler object can be passed to
run_command().
'''
- testdir = os.path.join(self.unit_test_dir, '23 compiler run_command')
+ testdir = os.path.join(self.unit_test_dir, '24 compiler run_command')
self.init(testdir)
def test_identical_target_name_in_subproject_flat_layout(self):
@@ -2071,7 +2211,7 @@ int main(int argc, char **argv) {
Test that identical targets in different subprojects do not collide
if layout is flat.
'''
- testdir = os.path.join(self.common_test_dir, '182 identical target name in subproject flat layout')
+ testdir = os.path.join(self.common_test_dir, '181 identical target name in subproject flat layout')
self.init(testdir, extra_args=['--layout=flat'])
self.build()
@@ -2080,7 +2220,7 @@ int main(int argc, char **argv) {
Test that identical targets in different subdirs do not collide
if layout is flat.
'''
- testdir = os.path.join(self.common_test_dir, '192 same target name flat layout')
+ testdir = os.path.join(self.common_test_dir, '190 same target name flat layout')
self.init(testdir, extra_args=['--layout=flat'])
self.build()
@@ -2103,21 +2243,21 @@ int main(int argc, char **argv) {
https://github.com/mesonbuild/meson/issues/2865
(That an error is raised on OSX is exercised by test failing/78)
"""
- tdir = os.path.join(self.unit_test_dir, '26 shared_mod linking')
+ tdir = os.path.join(self.unit_test_dir, '30 shared_mod linking')
out = self.init(tdir)
msg = ('''WARNING: target links against shared modules. This is not
recommended as it is not supported on some platforms''')
self.assertIn(msg, out)
def test_ndebug_if_release_disabled(self):
- testdir = os.path.join(self.unit_test_dir, '25 ndebug if-release')
+ testdir = os.path.join(self.unit_test_dir, '28 ndebug if-release')
self.init(testdir, extra_args=['--buildtype=release', '-Db_ndebug=if-release'])
self.build()
exe = os.path.join(self.builddir, 'main')
self.assertEqual(b'NDEBUG=1', subprocess.check_output(exe).strip())
def test_ndebug_if_release_enabled(self):
- testdir = os.path.join(self.unit_test_dir, '25 ndebug if-release')
+ testdir = os.path.join(self.unit_test_dir, '28 ndebug if-release')
self.init(testdir, extra_args=['--buildtype=debugoptimized', '-Db_ndebug=if-release'])
self.build()
exe = os.path.join(self.builddir, 'main')
@@ -2129,7 +2269,7 @@ recommended as it is not supported on some platforms''')
linker command line.
'''
# build library
- testdirbase = os.path.join(self.unit_test_dir, '26 guessed linker dependencies')
+ testdirbase = os.path.join(self.unit_test_dir, '29 guessed linker dependencies')
testdirlib = os.path.join(testdirbase, 'lib')
extra_args = None
env = Environment(testdirlib, self.builddir, get_fake_options(self.prefix))
@@ -2172,14 +2312,14 @@ recommended as it is not supported on some platforms''')
self.assertRebuiltTarget('app')
def test_conflicting_d_dash_option(self):
- testdir = os.path.join(self.unit_test_dir, '30 mixed command line args')
+ testdir = os.path.join(self.unit_test_dir, '35 mixed command line args')
with self.assertRaises(subprocess.CalledProcessError) as e:
self.init(testdir, extra_args=['-Dbindir=foo', '--bindir=bar'])
# Just to ensure that we caught the correct error
self.assertIn('passed as both', e.stderr)
def _test_same_option_twice(self, arg, args):
- testdir = os.path.join(self.unit_test_dir, '30 mixed command line args')
+ testdir = os.path.join(self.unit_test_dir, '35 mixed command line args')
self.init(testdir, extra_args=args)
opts = self.introspect('--buildoptions')
for item in opts:
@@ -2198,7 +2338,7 @@ recommended as it is not supported on some platforms''')
self._test_same_option_twice('one', ['-Done=foo', '-Done=bar'])
def _test_same_option_twice_configure(self, arg, args):
- testdir = os.path.join(self.unit_test_dir, '30 mixed command line args')
+ testdir = os.path.join(self.unit_test_dir, '35 mixed command line args')
self.init(testdir)
self.setconf(args)
opts = self.introspect('--buildoptions')
@@ -2221,7 +2361,7 @@ recommended as it is not supported on some platforms''')
'one', ['-Done=foo', '-Done=bar'])
def test_command_line(self):
- testdir = os.path.join(self.unit_test_dir, '30 command line')
+ testdir = os.path.join(self.unit_test_dir, '34 command line')
# Verify default values when passing no args
self.init(testdir)
@@ -2341,62 +2481,8 @@ recommended as it is not supported on some platforms''')
# they used to fail this test with Meson 0.46 an earlier versions.
pass
- @unittest.skipIf(not os.path.isdir('docs'), 'Doc dir not found, presumably because this is a tarball release.')
- def test_compiler_options_documented(self):
- '''
- Test that C and C++ compiler options and base options are documented in
- Builtin-Options.md. Only tests the default compiler for the current
- platform on the CI.
- '''
- md = None
- with open('docs/markdown/Builtin-options.md') as f:
- md = f.read()
- self.assertIsNotNone(md)
- env = Environment('.', self.builddir, get_fake_options(self.prefix))
- # FIXME: Support other compilers
- cc = env.detect_c_compiler(False)
- cpp = env.detect_cpp_compiler(False)
- for comp in (cc, cpp):
- for opt in comp.get_options().keys():
- self.assertIn(opt, md)
- for opt in comp.base_options:
- self.assertIn(opt, md)
- self.assertNotIn('b_unknown', md)
-
- @unittest.skipIf(not os.path.isdir('docs'), 'Doc dir not found, presumably because this is a tarball release.')
- def test_cpu_families_documented(self):
- with open("docs/markdown/Reference-tables.md") as f:
- md = f.read()
- self.assertIsNotNone(md)
-
- sections = list(re.finditer(r"^## (.+)$", md, re.MULTILINE))
- for s1, s2 in zip(sections[::2], sections[1::2]):
- if s1.group(1) == "CPU families":
- # Extract the content for this section
- content = md[s1.end():s2.start()]
- # Find the list entries
- arches = [m.group(1) for m in re.finditer(r"^\| (\w+) +\|", content, re.MULTILINE)]
- # Drop the header
- arches = set(arches[1:])
- self.assertEqual(arches, set(mesonbuild.environment.known_cpu_families))
-
- @unittest.skipIf(not os.path.isdir('docs'), 'Doc dir not found, presumably because this is a tarball release.')
- def test_markdown_files_in_sitemap(self):
- '''
- Test that each markdown files in docs/markdown is referenced in sitemap.txt
- '''
- with open("docs/sitemap.txt") as f:
- md = f.read()
- self.assertIsNotNone(md)
- toc = list(m.group(1) for m in re.finditer(r"^\s*(\w.*)$", md, re.MULTILINE))
- markdownfiles = [f.name for f in Path("docs/markdown").iterdir() if f.is_file() and f.suffix == '.md']
- exceptions = ['_Sidebar.md']
- for f in markdownfiles:
- if f not in exceptions:
- self.assertIn(f, toc)
-
def test_feature_check_usage_subprojects(self):
- testdir = os.path.join(self.unit_test_dir, '34 featurenew subprojects')
+ testdir = os.path.join(self.unit_test_dir, '39 featurenew subprojects')
out = self.init(testdir)
# Parent project warns correctly
self.assertRegex(out, "WARNING: Project targetting '>=0.45'.*'0.47.0': dict")
@@ -2691,7 +2777,7 @@ class WindowsTests(BasePlatformTests):
correctly. Cannot be an ordinary test because it involves manipulating
PATH to point to a directory with Python scripts.
'''
- testdir = os.path.join(self.platform_test_dir, '9 find program')
+ testdir = os.path.join(self.platform_test_dir, '8 find program')
# Find `cmd` and `cmd.exe`
prog1 = ExternalProgram('cmd')
self.assertTrue(prog1.found(), msg='cmd not found')
@@ -2732,7 +2818,7 @@ class WindowsTests(BasePlatformTests):
if cc.id != 'msvc':
raise unittest.SkipTest('Not using MSVC')
# To force people to update this test, and also test
- self.assertEqual(set(cc.ignore_libs), {'c', 'm', 'pthread'})
+ self.assertEqual(set(cc.ignore_libs), {'c', 'm', 'pthread', 'dl', 'rt'})
for l in cc.ignore_libs:
self.assertEqual(cc.find_library(l, env, []), [])
@@ -2759,7 +2845,7 @@ class WindowsTests(BasePlatformTests):
self.wipe()
if depfile_works:
- testdir = os.path.join(self.platform_test_dir, '13 resources with custom targets')
+ testdir = os.path.join(self.platform_test_dir, '12 resources with custom targets')
self.init(testdir)
self.build()
# Immediately rebuilding should not do anything
@@ -2884,7 +2970,7 @@ class LinuxlikeTests(BasePlatformTests):
self.assertEqual(sorted(out), sorted(['libexposed', 'libfoo >= 1.0', 'libhello']))
def test_pkg_unfound(self):
- testdir = os.path.join(self.unit_test_dir, '22 unfound pkgconfig')
+ testdir = os.path.join(self.unit_test_dir, '23 unfound pkgconfig')
self.init(testdir)
with open(os.path.join(self.privatedir, 'somename.pc')) as f:
pcfile = f.read()
@@ -3158,7 +3244,7 @@ class LinuxlikeTests(BasePlatformTests):
'''
Test that files are installed with correct permissions using install_mode.
'''
- testdir = os.path.join(self.common_test_dir, '201 install_mode')
+ testdir = os.path.join(self.common_test_dir, '199 install_mode')
self.init(testdir)
self.build()
self.install()
@@ -3198,11 +3284,11 @@ class LinuxlikeTests(BasePlatformTests):
'''
# Copy source tree to a temporary directory and change permissions
# there to simulate a checkout with umask 002.
- orig_testdir = os.path.join(self.unit_test_dir, '24 install umask')
+ orig_testdir = os.path.join(self.unit_test_dir, '26 install umask')
# Create a new testdir under tmpdir.
tmpdir = os.path.realpath(tempfile.mkdtemp())
self.addCleanup(windows_proof_rmtree, tmpdir)
- testdir = os.path.join(tmpdir, '24 install umask')
+ testdir = os.path.join(tmpdir, '26 install umask')
# Copy the tree using shutil.copyfile, which will use the current umask
# instead of preserving permissions of the old tree.
save_umask = os.umask(0o002)
@@ -3310,7 +3396,7 @@ class LinuxlikeTests(BasePlatformTests):
self.assertTrue('prog' in v or 'foo' in v)
def test_order_of_l_arguments(self):
- testdir = os.path.join(self.unit_test_dir, '9 -L -l order')
+ testdir = os.path.join(self.unit_test_dir, '8 -L -l order')
os.environ['PKG_CONFIG_PATH'] = testdir
self.init(testdir)
# NOTE: .pc file has -Lfoo -lfoo -Lbar -lbar but pkg-config reorders
@@ -3370,7 +3456,7 @@ class LinuxlikeTests(BasePlatformTests):
def test_build_rpath(self):
if is_cygwin():
raise unittest.SkipTest('Windows PE/COFF binaries do not use RPATH')
- testdir = os.path.join(self.unit_test_dir, '11 build_rpath')
+ testdir = os.path.join(self.unit_test_dir, '10 build_rpath')
self.init(testdir)
self.build()
# C program RPATH
@@ -3413,7 +3499,7 @@ class LinuxlikeTests(BasePlatformTests):
self.run_target('coverage-html')
def test_cross_find_program(self):
- testdir = os.path.join(self.unit_test_dir, '12 cross prog')
+ testdir = os.path.join(self.unit_test_dir, '11 cross prog')
crossfile = tempfile.NamedTemporaryFile(mode='w')
print(os.path.join(testdir, 'some_cross_tool.py'))
crossfile.write('''[binaries]
@@ -3476,8 +3562,8 @@ endian = 'little'
@skipIfNoPkgconfig
def test_pkgconfig_usage(self):
- testdir1 = os.path.join(self.unit_test_dir, '24 pkgconfig usage/dependency')
- testdir2 = os.path.join(self.unit_test_dir, '24 pkgconfig usage/dependee')
+ testdir1 = os.path.join(self.unit_test_dir, '27 pkgconfig usage/dependency')
+ testdir2 = os.path.join(self.unit_test_dir, '27 pkgconfig usage/dependee')
if subprocess.call(['pkg-config', '--cflags', 'glib-2.0'],
stdout=subprocess.DEVNULL,
stderr=subprocess.DEVNULL) != 0:
@@ -3516,7 +3602,7 @@ endian = 'little'
'''
with tempfile.TemporaryDirectory() as tempdirname:
# build library
- testdirbase = os.path.join(self.unit_test_dir, '28 pkgconfig use libraries')
+ testdirbase = os.path.join(self.unit_test_dir, '32 pkgconfig use libraries')
testdirlib = os.path.join(testdirbase, 'lib')
self.init(testdirlib, extra_args=['--prefix=' + tempdirname,
'--libdir=lib',
@@ -3533,7 +3619,7 @@ endian = 'little'
@skipIfNoPkgconfig
def test_pkgconfig_formatting(self):
- testdir = os.path.join(self.unit_test_dir, '31 pkgconfig format')
+ testdir = os.path.join(self.unit_test_dir, '36 pkgconfig format')
self.init(testdir)
myenv = os.environ.copy()
myenv['PKG_CONFIG_PATH'] = self.privatedir
@@ -3595,7 +3681,7 @@ endian = 'little'
'''
Test that the dependencies are always listed in a deterministic order.
'''
- testdir = os.path.join(self.unit_test_dir, '36 dep order')
+ testdir = os.path.join(self.unit_test_dir, '41 dep order')
self.init(testdir)
with open(os.path.join(self.builddir, 'build.ninja')) as bfile:
for line in bfile:
@@ -3610,7 +3696,7 @@ endian = 'little'
'''
if is_cygwin():
raise unittest.SkipTest('rpath are not used on Cygwin')
- testdir = os.path.join(self.unit_test_dir, '35 rpath order')
+ testdir = os.path.join(self.unit_test_dir, '40 rpath order')
self.init(testdir)
if is_osx():
rpathre = re.compile('-rpath,.*/subprojects/sub1.*-rpath,.*/subprojects/sub2')
@@ -3637,7 +3723,7 @@ endian = 'little'
raise unittest.SkipTest('workflow currently only works on macOS')
oldprefix = self.prefix
# Install external library so we can find it
- testdir = os.path.join(self.unit_test_dir, '33 external, internal library rpath', 'external library')
+ testdir = os.path.join(self.unit_test_dir, '38 external, internal library rpath', 'external library')
# install into installdir without using DESTDIR
installdir = self.installdir
self.prefix = installdir
@@ -3649,7 +3735,7 @@ endian = 'little'
self.new_builddir()
os.environ['LIBRARY_PATH'] = os.path.join(installdir, self.libdir)
os.environ['PKG_CONFIG_PATH'] = os.path.join(installdir, self.libdir, 'pkgconfig')
- testdir = os.path.join(self.unit_test_dir, '33 external, internal library rpath', 'built library')
+ testdir = os.path.join(self.unit_test_dir, '38 external, internal library rpath', 'built library')
# install into installdir without using DESTDIR
self.prefix = self.installdir
self.init(testdir)
@@ -3707,7 +3793,7 @@ class LinuxCrossArmTests(BasePlatformTests):
https://github.com/mesonbuild/meson/issues/3049
https://github.com/mesonbuild/meson/issues/3089
'''
- testdir = os.path.join(self.unit_test_dir, '29 cross file overrides always args')
+ testdir = os.path.join(self.unit_test_dir, '33 cross file overrides always args')
self.meson_cross_file = os.path.join(testdir, 'ubuntu-armhf-overrides.txt')
self.init(testdir)
compdb = self.get_compdb()
@@ -3762,7 +3848,7 @@ class PythonTests(BasePlatformTests):
if self.backend is not Backend.ninja:
raise unittest.SkipTest('Skipping python tests with {} backend'.format(self.backend.name))
- testdir = os.path.join(self.src_root, 'test cases', 'unit', '32 python extmodule')
+ testdir = os.path.join(self.src_root, 'test cases', 'unit', '37 python extmodule')
# No python version specified, this will use meson's python
self.init(testdir)
@@ -3894,7 +3980,7 @@ def should_run_cross_mingw_tests():
if __name__ == '__main__':
unset_envs()
- cases = ['InternalTests', 'AllPlatformTests', 'FailureTests', 'PythonTests']
+ cases = ['InternalTests', 'DataTests', 'AllPlatformTests', 'FailureTests', 'PythonTests']
if not is_windows():
cases += ['LinuxlikeTests']
if should_run_cross_arm_tests():
diff --git a/test cases/common/125 shared module/installed_files.txt b/test cases/common/125 shared module/installed_files.txt
new file mode 100644
index 0000000..a351490
--- /dev/null
+++ b/test cases/common/125 shared module/installed_files.txt
@@ -0,0 +1 @@
+usr/lib/libnosyms.so
diff --git a/test cases/common/125 shared module/meson.build b/test cases/common/125 shared module/meson.build
index 08a284d..9f9ad63 100644
--- a/test cases/common/125 shared module/meson.build
+++ b/test cases/common/125 shared module/meson.build
@@ -11,3 +11,10 @@ m = shared_module('mymodule', 'module.c')
e = executable('prog', 'prog.c',
link_with : l, export_dynamic : true, dependencies : dl)
test('import test', e, args : m)
+
+# Shared module that does not export any symbols
+shared_module('nosyms', 'nosyms.c', install : true,
+ # Because we don't have cross-platform library support in
+ # installed_files.txt
+ name_suffix : 'so',
+ name_prefix : 'lib')
diff --git a/test cases/common/125 shared module/nosyms.c b/test cases/common/125 shared module/nosyms.c
new file mode 100644
index 0000000..3432b1c
--- /dev/null
+++ b/test cases/common/125 shared module/nosyms.c
@@ -0,0 +1,4 @@
+static int
+func_not_exported (void) {
+ return 99;
+}
diff --git a/test cases/common/158 dotinclude/dotproc.c b/test cases/common/157 dotinclude/dotproc.c
index 5e65f7b..5e65f7b 100644
--- a/test cases/common/158 dotinclude/dotproc.c
+++ b/test cases/common/157 dotinclude/dotproc.c
diff --git a/test cases/common/158 dotinclude/meson.build b/test cases/common/157 dotinclude/meson.build
index e0c2cd7..e0c2cd7 100644
--- a/test cases/common/158 dotinclude/meson.build
+++ b/test cases/common/157 dotinclude/meson.build
diff --git a/test cases/common/158 dotinclude/stdio.h b/test cases/common/157 dotinclude/stdio.h
index b6bd09f..b6bd09f 100644
--- a/test cases/common/158 dotinclude/stdio.h
+++ b/test cases/common/157 dotinclude/stdio.h
diff --git a/test cases/common/159 reserved targets/all/meson.build b/test cases/common/158 reserved targets/all/meson.build
index adee882..adee882 100644
--- a/test cases/common/159 reserved targets/all/meson.build
+++ b/test cases/common/158 reserved targets/all/meson.build
diff --git a/test cases/common/159 reserved targets/benchmark/meson.build b/test cases/common/158 reserved targets/benchmark/meson.build
index 242cc23..242cc23 100644
--- a/test cases/common/159 reserved targets/benchmark/meson.build
+++ b/test cases/common/158 reserved targets/benchmark/meson.build
diff --git a/test cases/common/159 reserved targets/clean-ctlist/meson.build b/test cases/common/158 reserved targets/clean-ctlist/meson.build
index 75eb207..75eb207 100644
--- a/test cases/common/159 reserved targets/clean-ctlist/meson.build
+++ b/test cases/common/158 reserved targets/clean-ctlist/meson.build
diff --git a/test cases/common/159 reserved targets/clean-gcda/meson.build b/test cases/common/158 reserved targets/clean-gcda/meson.build
index 488a527..488a527 100644
--- a/test cases/common/159 reserved targets/clean-gcda/meson.build
+++ b/test cases/common/158 reserved targets/clean-gcda/meson.build
diff --git a/test cases/common/159 reserved targets/clean-gcno/meson.build b/test cases/common/158 reserved targets/clean-gcno/meson.build
index eec789a..eec789a 100644
--- a/test cases/common/159 reserved targets/clean-gcno/meson.build
+++ b/test cases/common/158 reserved targets/clean-gcno/meson.build
diff --git a/test cases/common/159 reserved targets/clean/meson.build b/test cases/common/158 reserved targets/clean/meson.build
index 4e27b6c..4e27b6c 100644
--- a/test cases/common/159 reserved targets/clean/meson.build
+++ b/test cases/common/158 reserved targets/clean/meson.build
diff --git a/test cases/common/159 reserved targets/coverage-html/meson.build b/test cases/common/158 reserved targets/coverage-html/meson.build
index 10a4cc8..10a4cc8 100644
--- a/test cases/common/159 reserved targets/coverage-html/meson.build
+++ b/test cases/common/158 reserved targets/coverage-html/meson.build
diff --git a/test cases/common/159 reserved targets/coverage-text/meson.build b/test cases/common/158 reserved targets/coverage-text/meson.build
index 21dcae5..21dcae5 100644
--- a/test cases/common/159 reserved targets/coverage-text/meson.build
+++ b/test cases/common/158 reserved targets/coverage-text/meson.build
diff --git a/test cases/common/159 reserved targets/coverage-xml/meson.build b/test cases/common/158 reserved targets/coverage-xml/meson.build
index 44d7bfb..44d7bfb 100644
--- a/test cases/common/159 reserved targets/coverage-xml/meson.build
+++ b/test cases/common/158 reserved targets/coverage-xml/meson.build
diff --git a/test cases/common/159 reserved targets/coverage/meson.build b/test cases/common/158 reserved targets/coverage/meson.build
index b401055..b401055 100644
--- a/test cases/common/159 reserved targets/coverage/meson.build
+++ b/test cases/common/158 reserved targets/coverage/meson.build
diff --git a/test cases/common/159 reserved targets/dist/meson.build b/test cases/common/158 reserved targets/dist/meson.build
index 951bbb4..951bbb4 100644
--- a/test cases/common/159 reserved targets/dist/meson.build
+++ b/test cases/common/158 reserved targets/dist/meson.build
diff --git a/test cases/common/159 reserved targets/distcheck/meson.build b/test cases/common/158 reserved targets/distcheck/meson.build
index 12b9328..12b9328 100644
--- a/test cases/common/159 reserved targets/distcheck/meson.build
+++ b/test cases/common/158 reserved targets/distcheck/meson.build
diff --git a/test cases/common/159 reserved targets/install/meson.build b/test cases/common/158 reserved targets/install/meson.build
index 4839901..4839901 100644
--- a/test cases/common/159 reserved targets/install/meson.build
+++ b/test cases/common/158 reserved targets/install/meson.build
diff --git a/test cases/common/159 reserved targets/meson.build b/test cases/common/158 reserved targets/meson.build
index 24fd937..24fd937 100644
--- a/test cases/common/159 reserved targets/meson.build
+++ b/test cases/common/158 reserved targets/meson.build
diff --git a/test cases/common/159 reserved targets/phony/meson.build b/test cases/common/158 reserved targets/phony/meson.build
index 6710fc1..6710fc1 100644
--- a/test cases/common/159 reserved targets/phony/meson.build
+++ b/test cases/common/158 reserved targets/phony/meson.build
diff --git a/test cases/common/159 reserved targets/reconfigure/meson.build b/test cases/common/158 reserved targets/reconfigure/meson.build
index c3ea3da..c3ea3da 100644
--- a/test cases/common/159 reserved targets/reconfigure/meson.build
+++ b/test cases/common/158 reserved targets/reconfigure/meson.build
diff --git a/test cases/common/159 reserved targets/runtarget/meson.build b/test cases/common/158 reserved targets/runtarget/meson.build
index 52c371b..52c371b 100644
--- a/test cases/common/159 reserved targets/runtarget/meson.build
+++ b/test cases/common/158 reserved targets/runtarget/meson.build
diff --git a/test cases/common/159 reserved targets/scan-build/meson.build b/test cases/common/158 reserved targets/scan-build/meson.build
index 1002053..1002053 100644
--- a/test cases/common/159 reserved targets/scan-build/meson.build
+++ b/test cases/common/158 reserved targets/scan-build/meson.build
diff --git a/test cases/common/159 reserved targets/test.c b/test cases/common/158 reserved targets/test.c
index 0fb4389..0fb4389 100644
--- a/test cases/common/159 reserved targets/test.c
+++ b/test cases/common/158 reserved targets/test.c
diff --git a/test cases/common/159 reserved targets/test/meson.build b/test cases/common/158 reserved targets/test/meson.build
index 4ab123c..4ab123c 100644
--- a/test cases/common/159 reserved targets/test/meson.build
+++ b/test cases/common/158 reserved targets/test/meson.build
diff --git a/test cases/common/159 reserved targets/uninstall/meson.build b/test cases/common/158 reserved targets/uninstall/meson.build
index 21c6ca6..21c6ca6 100644
--- a/test cases/common/159 reserved targets/uninstall/meson.build
+++ b/test cases/common/158 reserved targets/uninstall/meson.build
diff --git a/test cases/common/160 duplicate source names/dir1/file.c b/test cases/common/159 duplicate source names/dir1/file.c
index 094e187..094e187 100644
--- a/test cases/common/160 duplicate source names/dir1/file.c
+++ b/test cases/common/159 duplicate source names/dir1/file.c
diff --git a/test cases/common/160 duplicate source names/dir1/meson.build b/test cases/common/159 duplicate source names/dir1/meson.build
index 00bc85d..00bc85d 100644
--- a/test cases/common/160 duplicate source names/dir1/meson.build
+++ b/test cases/common/159 duplicate source names/dir1/meson.build
diff --git a/test cases/common/160 duplicate source names/dir2/dir1/file.c b/test cases/common/159 duplicate source names/dir2/dir1/file.c
index 5aac8e5..5aac8e5 100644
--- a/test cases/common/160 duplicate source names/dir2/dir1/file.c
+++ b/test cases/common/159 duplicate source names/dir2/dir1/file.c
diff --git a/test cases/common/160 duplicate source names/dir2/file.c b/test cases/common/159 duplicate source names/dir2/file.c
index 6cf8d66..6cf8d66 100644
--- a/test cases/common/160 duplicate source names/dir2/file.c
+++ b/test cases/common/159 duplicate source names/dir2/file.c
diff --git a/test cases/common/160 duplicate source names/dir2/meson.build b/test cases/common/159 duplicate source names/dir2/meson.build
index f116a02..f116a02 100644
--- a/test cases/common/160 duplicate source names/dir2/meson.build
+++ b/test cases/common/159 duplicate source names/dir2/meson.build
diff --git a/test cases/common/160 duplicate source names/dir3/dir1/file.c b/test cases/common/159 duplicate source names/dir3/dir1/file.c
index 04667c2..04667c2 100644
--- a/test cases/common/160 duplicate source names/dir3/dir1/file.c
+++ b/test cases/common/159 duplicate source names/dir3/dir1/file.c
diff --git a/test cases/common/160 duplicate source names/dir3/file.c b/test cases/common/159 duplicate source names/dir3/file.c
index d16d0a8..d16d0a8 100644
--- a/test cases/common/160 duplicate source names/dir3/file.c
+++ b/test cases/common/159 duplicate source names/dir3/file.c
diff --git a/test cases/common/160 duplicate source names/dir3/meson.build b/test cases/common/159 duplicate source names/dir3/meson.build
index 70ddbf2..70ddbf2 100644
--- a/test cases/common/160 duplicate source names/dir3/meson.build
+++ b/test cases/common/159 duplicate source names/dir3/meson.build
diff --git a/test cases/common/160 duplicate source names/meson.build b/test cases/common/159 duplicate source names/meson.build
index cac5194..cac5194 100644
--- a/test cases/common/160 duplicate source names/meson.build
+++ b/test cases/common/159 duplicate source names/meson.build
diff --git a/test cases/common/161 index customtarget/check_args.py b/test cases/common/160 index customtarget/check_args.py
index 8663a6f..8663a6f 100644
--- a/test cases/common/161 index customtarget/check_args.py
+++ b/test cases/common/160 index customtarget/check_args.py
diff --git a/test cases/common/161 index customtarget/gen_sources.py b/test cases/common/160 index customtarget/gen_sources.py
index 0bdb529..0bdb529 100644
--- a/test cases/common/161 index customtarget/gen_sources.py
+++ b/test cases/common/160 index customtarget/gen_sources.py
diff --git a/test cases/common/161 index customtarget/lib.c b/test cases/common/160 index customtarget/lib.c
index 17117d5..17117d5 100644
--- a/test cases/common/161 index customtarget/lib.c
+++ b/test cases/common/160 index customtarget/lib.c
diff --git a/test cases/common/161 index customtarget/meson.build b/test cases/common/160 index customtarget/meson.build
index 27d28b5..27d28b5 100644
--- a/test cases/common/161 index customtarget/meson.build
+++ b/test cases/common/160 index customtarget/meson.build
diff --git a/test cases/common/161 index customtarget/subdir/foo.c b/test cases/common/160 index customtarget/subdir/foo.c
index c620a11..c620a11 100644
--- a/test cases/common/161 index customtarget/subdir/foo.c
+++ b/test cases/common/160 index customtarget/subdir/foo.c
diff --git a/test cases/common/161 index customtarget/subdir/meson.build b/test cases/common/160 index customtarget/subdir/meson.build
index 47bcd32..47bcd32 100644
--- a/test cases/common/161 index customtarget/subdir/meson.build
+++ b/test cases/common/160 index customtarget/subdir/meson.build
diff --git a/test cases/common/162 wrap file should not failed/meson.build b/test cases/common/161 wrap file should not failed/meson.build
index 9cf4e9a..9cf4e9a 100644
--- a/test cases/common/162 wrap file should not failed/meson.build
+++ b/test cases/common/161 wrap file should not failed/meson.build
diff --git a/test cases/common/162 wrap file should not failed/src/meson.build b/test cases/common/161 wrap file should not failed/src/meson.build
index 69f666d..69f666d 100644
--- a/test cases/common/162 wrap file should not failed/src/meson.build
+++ b/test cases/common/161 wrap file should not failed/src/meson.build
diff --git a/test cases/common/162 wrap file should not failed/src/subprojects/foo/prog2.c b/test cases/common/161 wrap file should not failed/src/subprojects/foo/prog2.c
index 56f61a8..56f61a8 100644
--- a/test cases/common/162 wrap file should not failed/src/subprojects/foo/prog2.c
+++ b/test cases/common/161 wrap file should not failed/src/subprojects/foo/prog2.c
diff --git a/test cases/common/162 wrap file should not failed/src/subprojects/prog.c b/test cases/common/161 wrap file should not failed/src/subprojects/prog.c
index 56f61a8..56f61a8 100644
--- a/test cases/common/162 wrap file should not failed/src/subprojects/prog.c
+++ b/test cases/common/161 wrap file should not failed/src/subprojects/prog.c
diff --git a/test cases/common/162 wrap file should not failed/subprojects/packagecache/zlib-1.2.8-8-wrap.zip b/test cases/common/161 wrap file should not failed/subprojects/packagecache/zlib-1.2.8-8-wrap.zip
index 421376d..421376d 100644
--- a/test cases/common/162 wrap file should not failed/subprojects/packagecache/zlib-1.2.8-8-wrap.zip
+++ b/test cases/common/161 wrap file should not failed/subprojects/packagecache/zlib-1.2.8-8-wrap.zip
diff --git a/test cases/common/162 wrap file should not failed/subprojects/packagecache/zlib-1.2.8.tar.gz b/test cases/common/161 wrap file should not failed/subprojects/packagecache/zlib-1.2.8.tar.gz
index 421376d..421376d 100644
--- a/test cases/common/162 wrap file should not failed/subprojects/packagecache/zlib-1.2.8.tar.gz
+++ b/test cases/common/161 wrap file should not failed/subprojects/packagecache/zlib-1.2.8.tar.gz
diff --git a/test cases/common/162 wrap file should not failed/subprojects/zlib-1.2.8/foo.c b/test cases/common/161 wrap file should not failed/subprojects/zlib-1.2.8/foo.c
index 019f2ba..019f2ba 100644
--- a/test cases/common/162 wrap file should not failed/subprojects/zlib-1.2.8/foo.c
+++ b/test cases/common/161 wrap file should not failed/subprojects/zlib-1.2.8/foo.c
diff --git a/test cases/common/162 wrap file should not failed/subprojects/zlib-1.2.8/meson.build b/test cases/common/161 wrap file should not failed/subprojects/zlib-1.2.8/meson.build
index 8d8008e..8d8008e 100644
--- a/test cases/common/162 wrap file should not failed/subprojects/zlib-1.2.8/meson.build
+++ b/test cases/common/161 wrap file should not failed/subprojects/zlib-1.2.8/meson.build
diff --git a/test cases/common/162 wrap file should not failed/subprojects/zlib.wrap b/test cases/common/161 wrap file should not failed/subprojects/zlib.wrap
index 6d5896f..6d5896f 100644
--- a/test cases/common/162 wrap file should not failed/subprojects/zlib.wrap
+++ b/test cases/common/161 wrap file should not failed/subprojects/zlib.wrap
diff --git a/test cases/common/163 includedir subproj/meson.build b/test cases/common/162 includedir subproj/meson.build
index b3de5af..b3de5af 100644
--- a/test cases/common/163 includedir subproj/meson.build
+++ b/test cases/common/162 includedir subproj/meson.build
diff --git a/test cases/common/163 includedir subproj/prog.c b/test cases/common/162 includedir subproj/prog.c
index 772681e..772681e 100644
--- a/test cases/common/163 includedir subproj/prog.c
+++ b/test cases/common/162 includedir subproj/prog.c
diff --git a/test cases/common/163 includedir subproj/subprojects/inctest/include/incfile.h b/test cases/common/162 includedir subproj/subprojects/inctest/include/incfile.h
index ec740da..ec740da 100644
--- a/test cases/common/163 includedir subproj/subprojects/inctest/include/incfile.h
+++ b/test cases/common/162 includedir subproj/subprojects/inctest/include/incfile.h
diff --git a/test cases/common/163 includedir subproj/subprojects/inctest/meson.build b/test cases/common/162 includedir subproj/subprojects/inctest/meson.build
index 74aabcb..74aabcb 100644
--- a/test cases/common/163 includedir subproj/subprojects/inctest/meson.build
+++ b/test cases/common/162 includedir subproj/subprojects/inctest/meson.build
diff --git a/test cases/common/164 subproject dir name collision/a.c b/test cases/common/163 subproject dir name collision/a.c
index 6ed96fa..6ed96fa 100644
--- a/test cases/common/164 subproject dir name collision/a.c
+++ b/test cases/common/163 subproject dir name collision/a.c
diff --git a/test cases/common/164 subproject dir name collision/custom_subproject_dir/B/b.c b/test cases/common/163 subproject dir name collision/custom_subproject_dir/B/b.c
index 4c94ee9..4c94ee9 100644
--- a/test cases/common/164 subproject dir name collision/custom_subproject_dir/B/b.c
+++ b/test cases/common/163 subproject dir name collision/custom_subproject_dir/B/b.c
diff --git a/test cases/common/164 subproject dir name collision/custom_subproject_dir/B/meson.build b/test cases/common/163 subproject dir name collision/custom_subproject_dir/B/meson.build
index 280c60c..280c60c 100644
--- a/test cases/common/164 subproject dir name collision/custom_subproject_dir/B/meson.build
+++ b/test cases/common/163 subproject dir name collision/custom_subproject_dir/B/meson.build
diff --git a/test cases/common/164 subproject dir name collision/custom_subproject_dir/C/c.c b/test cases/common/163 subproject dir name collision/custom_subproject_dir/C/c.c
index eebfb9f..eebfb9f 100644
--- a/test cases/common/164 subproject dir name collision/custom_subproject_dir/C/c.c
+++ b/test cases/common/163 subproject dir name collision/custom_subproject_dir/C/c.c
diff --git a/test cases/common/164 subproject dir name collision/custom_subproject_dir/C/meson.build b/test cases/common/163 subproject dir name collision/custom_subproject_dir/C/meson.build
index abf0b1e..abf0b1e 100644
--- a/test cases/common/164 subproject dir name collision/custom_subproject_dir/C/meson.build
+++ b/test cases/common/163 subproject dir name collision/custom_subproject_dir/C/meson.build
diff --git a/test cases/common/164 subproject dir name collision/meson.build b/test cases/common/163 subproject dir name collision/meson.build
index 5531217..5531217 100644
--- a/test cases/common/164 subproject dir name collision/meson.build
+++ b/test cases/common/163 subproject dir name collision/meson.build
diff --git a/test cases/common/164 subproject dir name collision/other_subdir/custom_subproject_dir/other.c b/test cases/common/163 subproject dir name collision/other_subdir/custom_subproject_dir/other.c
index 0c27f84..0c27f84 100644
--- a/test cases/common/164 subproject dir name collision/other_subdir/custom_subproject_dir/other.c
+++ b/test cases/common/163 subproject dir name collision/other_subdir/custom_subproject_dir/other.c
diff --git a/test cases/common/164 subproject dir name collision/other_subdir/meson.build b/test cases/common/163 subproject dir name collision/other_subdir/meson.build
index 90cb67a..90cb67a 100644
--- a/test cases/common/164 subproject dir name collision/other_subdir/meson.build
+++ b/test cases/common/163 subproject dir name collision/other_subdir/meson.build
diff --git a/test cases/common/165 config tool variable/meson.build b/test cases/common/164 config tool variable/meson.build
index 0643042..0643042 100644
--- a/test cases/common/165 config tool variable/meson.build
+++ b/test cases/common/164 config tool variable/meson.build
diff --git a/test cases/common/166 custom target subdir depend files/copyfile.py b/test cases/common/165 custom target subdir depend files/copyfile.py
index ff42ac3..ff42ac3 100644
--- a/test cases/common/166 custom target subdir depend files/copyfile.py
+++ b/test cases/common/165 custom target subdir depend files/copyfile.py
diff --git a/test cases/common/166 custom target subdir depend files/meson.build b/test cases/common/165 custom target subdir depend files/meson.build
index 44f5c71..44f5c71 100644
--- a/test cases/common/166 custom target subdir depend files/meson.build
+++ b/test cases/common/165 custom target subdir depend files/meson.build
diff --git a/test cases/common/166 custom target subdir depend files/subdir/dep.dat b/test cases/common/165 custom target subdir depend files/subdir/dep.dat
index 5daee49..5daee49 100644
--- a/test cases/common/166 custom target subdir depend files/subdir/dep.dat
+++ b/test cases/common/165 custom target subdir depend files/subdir/dep.dat
diff --git a/test cases/common/166 custom target subdir depend files/subdir/foo.c.in b/test cases/common/165 custom target subdir depend files/subdir/foo.c.in
index d53846f..d53846f 100644
--- a/test cases/common/166 custom target subdir depend files/subdir/foo.c.in
+++ b/test cases/common/165 custom target subdir depend files/subdir/foo.c.in
diff --git a/test cases/common/166 custom target subdir depend files/subdir/meson.build b/test cases/common/165 custom target subdir depend files/subdir/meson.build
index f9d31c4..f9d31c4 100644
--- a/test cases/common/166 custom target subdir depend files/subdir/meson.build
+++ b/test cases/common/165 custom target subdir depend files/subdir/meson.build
diff --git a/test cases/common/167 external program shebang parsing/input.txt b/test cases/common/166 external program shebang parsing/input.txt
index 40e30d4..40e30d4 100644
--- a/test cases/common/167 external program shebang parsing/input.txt
+++ b/test cases/common/166 external program shebang parsing/input.txt
diff --git a/test cases/common/167 external program shebang parsing/main.c b/test cases/common/166 external program shebang parsing/main.c
index a90206b..a90206b 100644
--- a/test cases/common/167 external program shebang parsing/main.c
+++ b/test cases/common/166 external program shebang parsing/main.c
diff --git a/test cases/common/167 external program shebang parsing/meson.build b/test cases/common/166 external program shebang parsing/meson.build
index c1cc5af..c1cc5af 100644
--- a/test cases/common/167 external program shebang parsing/meson.build
+++ b/test cases/common/166 external program shebang parsing/meson.build
diff --git a/test cases/common/167 external program shebang parsing/script.int.in b/test cases/common/166 external program shebang parsing/script.int.in
index 77ff909..77ff909 100644
--- a/test cases/common/167 external program shebang parsing/script.int.in
+++ b/test cases/common/166 external program shebang parsing/script.int.in
diff --git a/test cases/common/168 disabler/meson.build b/test cases/common/167 disabler/meson.build
index 1956cd3..1956cd3 100644
--- a/test cases/common/168 disabler/meson.build
+++ b/test cases/common/167 disabler/meson.build
diff --git a/test cases/common/169 array option/meson.build b/test cases/common/168 array option/meson.build
index 034b9a5..034b9a5 100644
--- a/test cases/common/169 array option/meson.build
+++ b/test cases/common/168 array option/meson.build
diff --git a/test cases/common/169 array option/meson_options.txt b/test cases/common/168 array option/meson_options.txt
index 7ed0ac1..7ed0ac1 100644
--- a/test cases/common/169 array option/meson_options.txt
+++ b/test cases/common/168 array option/meson_options.txt
diff --git a/test cases/common/170 custom target template substitution/checkcopy.py b/test cases/common/169 custom target template substitution/checkcopy.py
index ab9f436..ab9f436 100644
--- a/test cases/common/170 custom target template substitution/checkcopy.py
+++ b/test cases/common/169 custom target template substitution/checkcopy.py
diff --git a/test cases/common/170 custom target template substitution/foo.c.in b/test cases/common/169 custom target template substitution/foo.c.in
index d53846f..d53846f 100644
--- a/test cases/common/170 custom target template substitution/foo.c.in
+++ b/test cases/common/169 custom target template substitution/foo.c.in
diff --git a/test cases/common/170 custom target template substitution/meson.build b/test cases/common/169 custom target template substitution/meson.build
index 737408e..737408e 100644
--- a/test cases/common/170 custom target template substitution/meson.build
+++ b/test cases/common/169 custom target template substitution/meson.build
diff --git a/test cases/common/171 not-found dependency/meson.build b/test cases/common/170 not-found dependency/meson.build
index 02072b6..02072b6 100644
--- a/test cases/common/171 not-found dependency/meson.build
+++ b/test cases/common/170 not-found dependency/meson.build
diff --git a/test cases/common/171 not-found dependency/sub/meson.build b/test cases/common/170 not-found dependency/sub/meson.build
index 2a33cae..2a33cae 100644
--- a/test cases/common/171 not-found dependency/sub/meson.build
+++ b/test cases/common/170 not-found dependency/sub/meson.build
diff --git a/test cases/common/171 not-found dependency/subprojects/trivial/meson.build b/test cases/common/170 not-found dependency/subprojects/trivial/meson.build
index 8769c70..8769c70 100644
--- a/test cases/common/171 not-found dependency/subprojects/trivial/meson.build
+++ b/test cases/common/170 not-found dependency/subprojects/trivial/meson.build
diff --git a/test cases/common/171 not-found dependency/subprojects/trivial/trivial.c b/test cases/common/170 not-found dependency/subprojects/trivial/trivial.c
index 35b21e0..35b21e0 100644
--- a/test cases/common/171 not-found dependency/subprojects/trivial/trivial.c
+++ b/test cases/common/170 not-found dependency/subprojects/trivial/trivial.c
diff --git a/test cases/common/171 not-found dependency/testlib.c b/test cases/common/170 not-found dependency/testlib.c
index e69de29..e69de29 100644
--- a/test cases/common/171 not-found dependency/testlib.c
+++ b/test cases/common/170 not-found dependency/testlib.c
diff --git a/test cases/common/172 subdir if_found/meson.build b/test cases/common/171 subdir if_found/meson.build
index 2c640cf..2c640cf 100644
--- a/test cases/common/172 subdir if_found/meson.build
+++ b/test cases/common/171 subdir if_found/meson.build
diff --git a/test cases/common/172 subdir if_found/subdir/meson.build b/test cases/common/171 subdir if_found/subdir/meson.build
index 1030e25..1030e25 100644
--- a/test cases/common/172 subdir if_found/subdir/meson.build
+++ b/test cases/common/171 subdir if_found/subdir/meson.build
diff --git a/test cases/common/173 default options prefix dependent defaults/meson.build b/test cases/common/172 default options prefix dependent defaults/meson.build
index 9ca4ec5..9ca4ec5 100644
--- a/test cases/common/173 default options prefix dependent defaults/meson.build
+++ b/test cases/common/172 default options prefix dependent defaults/meson.build
diff --git a/test cases/common/174 dependency factory/meson.build b/test cases/common/173 dependency factory/meson.build
index 1b8ed17..1b8ed17 100644
--- a/test cases/common/174 dependency factory/meson.build
+++ b/test cases/common/173 dependency factory/meson.build
diff --git a/test cases/common/175 get project license/bar.c b/test cases/common/174 get project license/bar.c
index 864869b..864869b 100644
--- a/test cases/common/175 get project license/bar.c
+++ b/test cases/common/174 get project license/bar.c
diff --git a/test cases/common/175 get project license/meson.build b/test cases/common/174 get project license/meson.build
index 37303e3..37303e3 100644
--- a/test cases/common/175 get project license/meson.build
+++ b/test cases/common/174 get project license/meson.build
diff --git a/test cases/common/176 yield/meson.build b/test cases/common/175 yield/meson.build
index ba3e426..ba3e426 100644
--- a/test cases/common/176 yield/meson.build
+++ b/test cases/common/175 yield/meson.build
diff --git a/test cases/common/176 yield/meson_options.txt b/test cases/common/175 yield/meson_options.txt
index 36bad4b..36bad4b 100644
--- a/test cases/common/176 yield/meson_options.txt
+++ b/test cases/common/175 yield/meson_options.txt
diff --git a/test cases/common/176 yield/subprojects/sub/meson.build b/test cases/common/175 yield/subprojects/sub/meson.build
index 3a506e0..3a506e0 100644
--- a/test cases/common/176 yield/subprojects/sub/meson.build
+++ b/test cases/common/175 yield/subprojects/sub/meson.build
diff --git a/test cases/common/176 yield/subprojects/sub/meson_options.txt b/test cases/common/175 yield/subprojects/sub/meson_options.txt
index a96c307..a96c307 100644
--- a/test cases/common/176 yield/subprojects/sub/meson_options.txt
+++ b/test cases/common/175 yield/subprojects/sub/meson_options.txt
diff --git a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/a.c b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/a.c
index 7ac3e5e..7ac3e5e 100644
--- a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/a.c
+++ b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/a.c
diff --git a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/meson.build b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/meson.build
index 12f6564..12f6564 100644
--- a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/meson.build
+++ b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/meson.build
diff --git a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/var/subprojects/wrap_files_might_be_here b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/var/subprojects/wrap_files_might_be_here
index 8d1c8b6..8d1c8b6 100644
--- a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/alpha/var/subprojects/wrap_files_might_be_here
+++ b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/alpha/var/subprojects/wrap_files_might_be_here
diff --git a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/beta/b.c b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/beta/b.c
index a95651b..a95651b 100644
--- a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/beta/b.c
+++ b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/beta/b.c
diff --git a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/beta/meson.build b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/beta/meson.build
index ea4cc9b..1720d3e 100644
--- a/test cases/common/177 subproject nested subproject dirs/contrib/subprojects/beta/meson.build
+++ b/test cases/common/176 subproject nested subproject dirs/contrib/subprojects/beta/meson.build
@@ -1,3 +1,4 @@
project('beta project', 'c')
lb = shared_library('b', 'b.c')
+notfound = dependency('', required : false)
diff --git a/test cases/common/176 subproject nested subproject dirs/meson.build b/test cases/common/176 subproject nested subproject dirs/meson.build
new file mode 100644
index 0000000..875eed3
--- /dev/null
+++ b/test cases/common/176 subproject nested subproject dirs/meson.build
@@ -0,0 +1,11 @@
+project('gamma project', 'c', subproject_dir: 'contrib/subprojects')
+
+a = subproject('alpha')
+lib = a.get_variable('l')
+
+# Ensure that the dependency version is not checked for a not-found dependency
+notfound = dependency('', version : '>=1.0', required : false,
+ fallback : ['beta', 'notfound'])
+
+exe = executable('prog', 'prog.c', link_with : lib)
+test('basic', exe)
diff --git a/test cases/common/177 subproject nested subproject dirs/prog.c b/test cases/common/176 subproject nested subproject dirs/prog.c
index 394f139..394f139 100644
--- a/test cases/common/177 subproject nested subproject dirs/prog.c
+++ b/test cases/common/176 subproject nested subproject dirs/prog.c
diff --git a/test cases/common/178 preserve gendir/base.inp b/test cases/common/177 preserve gendir/base.inp
index df967b9..df967b9 100644
--- a/test cases/common/178 preserve gendir/base.inp
+++ b/test cases/common/177 preserve gendir/base.inp
diff --git a/test cases/common/178 preserve gendir/com/mesonbuild/subbie.inp b/test cases/common/177 preserve gendir/com/mesonbuild/subbie.inp
index df0f4e9..df0f4e9 100644
--- a/test cases/common/178 preserve gendir/com/mesonbuild/subbie.inp
+++ b/test cases/common/177 preserve gendir/com/mesonbuild/subbie.inp
diff --git a/test cases/common/178 preserve gendir/genprog.py b/test cases/common/177 preserve gendir/genprog.py
index 1e10998..1e10998 100755
--- a/test cases/common/178 preserve gendir/genprog.py
+++ b/test cases/common/177 preserve gendir/genprog.py
diff --git a/test cases/common/178 preserve gendir/meson.build b/test cases/common/177 preserve gendir/meson.build
index ce219f0..ce219f0 100644
--- a/test cases/common/178 preserve gendir/meson.build
+++ b/test cases/common/177 preserve gendir/meson.build
diff --git a/test cases/common/178 preserve gendir/testprog.c b/test cases/common/177 preserve gendir/testprog.c
index 46b4602..46b4602 100644
--- a/test cases/common/178 preserve gendir/testprog.c
+++ b/test cases/common/177 preserve gendir/testprog.c
diff --git a/test cases/common/177 subproject nested subproject dirs/meson.build b/test cases/common/177 subproject nested subproject dirs/meson.build
deleted file mode 100644
index a4d0a97..0000000
--- a/test cases/common/177 subproject nested subproject dirs/meson.build
+++ /dev/null
@@ -1,7 +0,0 @@
-project('gamma project', 'c', subproject_dir: 'contrib/subprojects')
-
-a = subproject('alpha')
-lib = a.get_variable('l')
-
-exe = executable('prog', 'prog.c', link_with : lib)
-test('basic', exe)
diff --git a/test cases/common/179 source in dep/bar.cpp b/test cases/common/178 source in dep/bar.cpp
index bda8cb6..bda8cb6 100644
--- a/test cases/common/179 source in dep/bar.cpp
+++ b/test cases/common/178 source in dep/bar.cpp
diff --git a/test cases/common/179 source in dep/foo.c b/test cases/common/178 source in dep/foo.c
index 1ecfa8c..1ecfa8c 100644
--- a/test cases/common/179 source in dep/foo.c
+++ b/test cases/common/178 source in dep/foo.c
diff --git a/test cases/common/179 source in dep/generated/funname b/test cases/common/178 source in dep/generated/funname
index 79f3c86..79f3c86 100644
--- a/test cases/common/179 source in dep/generated/funname
+++ b/test cases/common/178 source in dep/generated/funname
diff --git a/test cases/common/179 source in dep/generated/genheader.py b/test cases/common/178 source in dep/generated/genheader.py
index eafc075..eafc075 100755
--- a/test cases/common/179 source in dep/generated/genheader.py
+++ b/test cases/common/178 source in dep/generated/genheader.py
diff --git a/test cases/common/179 source in dep/generated/main.c b/test cases/common/178 source in dep/generated/main.c
index 07e7c93..07e7c93 100644
--- a/test cases/common/179 source in dep/generated/main.c
+++ b/test cases/common/178 source in dep/generated/main.c
diff --git a/test cases/common/179 source in dep/generated/meson.build b/test cases/common/178 source in dep/generated/meson.build
index 2862709..2862709 100644
--- a/test cases/common/179 source in dep/generated/meson.build
+++ b/test cases/common/178 source in dep/generated/meson.build
diff --git a/test cases/common/179 source in dep/meson.build b/test cases/common/178 source in dep/meson.build
index 7111ba1..7111ba1 100644
--- a/test cases/common/179 source in dep/meson.build
+++ b/test cases/common/178 source in dep/meson.build
diff --git a/test cases/common/180 generator link whole/export.h b/test cases/common/179 generator link whole/export.h
index f4f6f45..f4f6f45 100644
--- a/test cases/common/180 generator link whole/export.h
+++ b/test cases/common/179 generator link whole/export.h
diff --git a/test cases/common/180 generator link whole/generator.py b/test cases/common/179 generator link whole/generator.py
index 0076b74..0076b74 100755
--- a/test cases/common/180 generator link whole/generator.py
+++ b/test cases/common/179 generator link whole/generator.py
diff --git a/test cases/common/180 generator link whole/main.c b/test cases/common/179 generator link whole/main.c
index acf8717..acf8717 100644
--- a/test cases/common/180 generator link whole/main.c
+++ b/test cases/common/179 generator link whole/main.c
diff --git a/test cases/common/180 generator link whole/meson.build b/test cases/common/179 generator link whole/meson.build
index 30ae9c6..30ae9c6 100644
--- a/test cases/common/180 generator link whole/meson.build
+++ b/test cases/common/179 generator link whole/meson.build
diff --git a/test cases/common/180 generator link whole/meson_test_function.tmpl b/test cases/common/179 generator link whole/meson_test_function.tmpl
index e69de29..e69de29 100644
--- a/test cases/common/180 generator link whole/meson_test_function.tmpl
+++ b/test cases/common/179 generator link whole/meson_test_function.tmpl
diff --git a/test cases/common/180 generator link whole/pull_meson_test_function.c b/test cases/common/179 generator link whole/pull_meson_test_function.c
index c54dda6..c54dda6 100644
--- a/test cases/common/180 generator link whole/pull_meson_test_function.c
+++ b/test cases/common/179 generator link whole/pull_meson_test_function.c
diff --git a/test cases/common/181 initial c_args/meson.build b/test cases/common/180 initial c_args/meson.build
index 169d2bd..169d2bd 100644
--- a/test cases/common/181 initial c_args/meson.build
+++ b/test cases/common/180 initial c_args/meson.build
diff --git a/test cases/common/181 initial c_args/test_args.txt b/test cases/common/180 initial c_args/test_args.txt
index 9a6da06..9a6da06 100644
--- a/test cases/common/181 initial c_args/test_args.txt
+++ b/test cases/common/180 initial c_args/test_args.txt
diff --git a/test cases/common/182 identical target name in subproject flat layout/foo.c b/test cases/common/181 identical target name in subproject flat layout/foo.c
index ed42789..ed42789 100644
--- a/test cases/common/182 identical target name in subproject flat layout/foo.c
+++ b/test cases/common/181 identical target name in subproject flat layout/foo.c
diff --git a/test cases/common/182 identical target name in subproject flat layout/main.c b/test cases/common/181 identical target name in subproject flat layout/main.c
index 6f02aeb..6f02aeb 100644
--- a/test cases/common/182 identical target name in subproject flat layout/main.c
+++ b/test cases/common/181 identical target name in subproject flat layout/main.c
diff --git a/test cases/common/182 identical target name in subproject flat layout/meson.build b/test cases/common/181 identical target name in subproject flat layout/meson.build
index d859fda..d859fda 100644
--- a/test cases/common/182 identical target name in subproject flat layout/meson.build
+++ b/test cases/common/181 identical target name in subproject flat layout/meson.build
diff --git a/test cases/common/182 identical target name in subproject flat layout/subprojects/subproj/foo.c b/test cases/common/181 identical target name in subproject flat layout/subprojects/subproj/foo.c
index f334292..f334292 100644
--- a/test cases/common/182 identical target name in subproject flat layout/subprojects/subproj/foo.c
+++ b/test cases/common/181 identical target name in subproject flat layout/subprojects/subproj/foo.c
diff --git a/test cases/common/182 identical target name in subproject flat layout/subprojects/subproj/meson.build b/test cases/common/181 identical target name in subproject flat layout/subprojects/subproj/meson.build
index c927194..c927194 100644
--- a/test cases/common/182 identical target name in subproject flat layout/subprojects/subproj/meson.build
+++ b/test cases/common/181 identical target name in subproject flat layout/subprojects/subproj/meson.build
diff --git a/test cases/common/184 as-needed/config.h b/test cases/common/182 as-needed/config.h
index b8fb60f..b8fb60f 100644
--- a/test cases/common/184 as-needed/config.h
+++ b/test cases/common/182 as-needed/config.h
diff --git a/test cases/common/184 as-needed/libA.cpp b/test cases/common/182 as-needed/libA.cpp
index 5f45bc0..5f45bc0 100644
--- a/test cases/common/184 as-needed/libA.cpp
+++ b/test cases/common/182 as-needed/libA.cpp
diff --git a/test cases/common/184 as-needed/libA.h b/test cases/common/182 as-needed/libA.h
index 8e76d22..8e76d22 100644
--- a/test cases/common/184 as-needed/libA.h
+++ b/test cases/common/182 as-needed/libA.h
diff --git a/test cases/common/184 as-needed/libB.cpp b/test cases/common/182 as-needed/libB.cpp
index a872394..a872394 100644
--- a/test cases/common/184 as-needed/libB.cpp
+++ b/test cases/common/182 as-needed/libB.cpp
diff --git a/test cases/common/184 as-needed/main.cpp b/test cases/common/182 as-needed/main.cpp
index 191d15c..191d15c 100644
--- a/test cases/common/184 as-needed/main.cpp
+++ b/test cases/common/182 as-needed/main.cpp
diff --git a/test cases/common/184 as-needed/meson.build b/test cases/common/182 as-needed/meson.build
index 3b54aaa..3b54aaa 100644
--- a/test cases/common/184 as-needed/meson.build
+++ b/test cases/common/182 as-needed/meson.build
diff --git a/test cases/common/185 ndebug if-release enabled/main.c b/test cases/common/183 ndebug if-release enabled/main.c
index 984ebca..984ebca 100644
--- a/test cases/common/185 ndebug if-release enabled/main.c
+++ b/test cases/common/183 ndebug if-release enabled/main.c
diff --git a/test cases/common/185 ndebug if-release enabled/meson.build b/test cases/common/183 ndebug if-release enabled/meson.build
index be26375..be26375 100644
--- a/test cases/common/185 ndebug if-release enabled/meson.build
+++ b/test cases/common/183 ndebug if-release enabled/meson.build
diff --git a/test cases/common/186 ndebug if-release disabled/main.c b/test cases/common/184 ndebug if-release disabled/main.c
index cb3ec3f..cb3ec3f 100644
--- a/test cases/common/186 ndebug if-release disabled/main.c
+++ b/test cases/common/184 ndebug if-release disabled/main.c
diff --git a/test cases/common/186 ndebug if-release disabled/meson.build b/test cases/common/184 ndebug if-release disabled/meson.build
index a9a79ea..a9a79ea 100644
--- a/test cases/common/186 ndebug if-release disabled/meson.build
+++ b/test cases/common/184 ndebug if-release disabled/meson.build
diff --git a/test cases/common/187 subproject version/meson.build b/test cases/common/185 subproject version/meson.build
index bd8fc03..bd8fc03 100644
--- a/test cases/common/187 subproject version/meson.build
+++ b/test cases/common/185 subproject version/meson.build
diff --git a/test cases/common/187 subproject version/subprojects/a/meson.build b/test cases/common/185 subproject version/subprojects/a/meson.build
index dae3130..dae3130 100644
--- a/test cases/common/187 subproject version/subprojects/a/meson.build
+++ b/test cases/common/185 subproject version/subprojects/a/meson.build
diff --git a/test cases/common/188 subdir_done/meson.build b/test cases/common/186 subdir_done/meson.build
index 457e613..457e613 100644
--- a/test cases/common/188 subdir_done/meson.build
+++ b/test cases/common/186 subdir_done/meson.build
diff --git a/test cases/common/189 bothlibraries/libfile.c b/test cases/common/187 bothlibraries/libfile.c
index 085ef3b..085ef3b 100644
--- a/test cases/common/189 bothlibraries/libfile.c
+++ b/test cases/common/187 bothlibraries/libfile.c
diff --git a/test cases/common/189 bothlibraries/main.c b/test cases/common/187 bothlibraries/main.c
index 03a8e02..03a8e02 100644
--- a/test cases/common/189 bothlibraries/main.c
+++ b/test cases/common/187 bothlibraries/main.c
diff --git a/test cases/common/189 bothlibraries/meson.build b/test cases/common/187 bothlibraries/meson.build
index 3a13d62..3a13d62 100644
--- a/test cases/common/189 bothlibraries/meson.build
+++ b/test cases/common/187 bothlibraries/meson.build
diff --git a/test cases/common/189 bothlibraries/mylib.h b/test cases/common/187 bothlibraries/mylib.h
index 1038a01..1038a01 100644
--- a/test cases/common/189 bothlibraries/mylib.h
+++ b/test cases/common/187 bothlibraries/mylib.h
diff --git a/test cases/common/190 escape and unicode/file.c.in b/test cases/common/188 escape and unicode/file.c.in
index 413ed42..413ed42 100644
--- a/test cases/common/190 escape and unicode/file.c.in
+++ b/test cases/common/188 escape and unicode/file.c.in
diff --git a/test cases/common/190 escape and unicode/file.py b/test cases/common/188 escape and unicode/file.py
index af67a09..af67a09 100644
--- a/test cases/common/190 escape and unicode/file.py
+++ b/test cases/common/188 escape and unicode/file.py
diff --git a/test cases/common/190 escape and unicode/find.py b/test cases/common/188 escape and unicode/find.py
index 34a3eb8..34a3eb8 100644
--- a/test cases/common/190 escape and unicode/find.py
+++ b/test cases/common/188 escape and unicode/find.py
diff --git a/test cases/common/190 escape and unicode/fun.c b/test cases/common/188 escape and unicode/fun.c
index 8eeb8ea..8eeb8ea 100644
--- a/test cases/common/190 escape and unicode/fun.c
+++ b/test cases/common/188 escape and unicode/fun.c
diff --git a/test cases/common/190 escape and unicode/main.c b/test cases/common/188 escape and unicode/main.c
index 0bcde16..0bcde16 100644
--- a/test cases/common/190 escape and unicode/main.c
+++ b/test cases/common/188 escape and unicode/main.c
diff --git a/test cases/common/190 escape and unicode/meson.build b/test cases/common/188 escape and unicode/meson.build
index 65377b6..65377b6 100644
--- a/test cases/common/190 escape and unicode/meson.build
+++ b/test cases/common/188 escape and unicode/meson.build
diff --git a/test cases/common/191 has link arg/meson.build b/test cases/common/189 has link arg/meson.build
index e166101..e166101 100644
--- a/test cases/common/191 has link arg/meson.build
+++ b/test cases/common/189 has link arg/meson.build
diff --git a/test cases/common/192 same target name flat layout/foo.c b/test cases/common/190 same target name flat layout/foo.c
index ed42789..ed42789 100644
--- a/test cases/common/192 same target name flat layout/foo.c
+++ b/test cases/common/190 same target name flat layout/foo.c
diff --git a/test cases/common/192 same target name flat layout/main.c b/test cases/common/190 same target name flat layout/main.c
index 6f02aeb..6f02aeb 100644
--- a/test cases/common/192 same target name flat layout/main.c
+++ b/test cases/common/190 same target name flat layout/main.c
diff --git a/test cases/common/192 same target name flat layout/meson.build b/test cases/common/190 same target name flat layout/meson.build
index a3c95fa..a3c95fa 100644
--- a/test cases/common/192 same target name flat layout/meson.build
+++ b/test cases/common/190 same target name flat layout/meson.build
diff --git a/test cases/common/192 same target name flat layout/subdir/foo.c b/test cases/common/190 same target name flat layout/subdir/foo.c
index f334292..f334292 100644
--- a/test cases/common/192 same target name flat layout/subdir/foo.c
+++ b/test cases/common/190 same target name flat layout/subdir/foo.c
diff --git a/test cases/common/192 same target name flat layout/subdir/meson.build b/test cases/common/190 same target name flat layout/subdir/meson.build
index 223a5ef..223a5ef 100644
--- a/test cases/common/192 same target name flat layout/subdir/meson.build
+++ b/test cases/common/190 same target name flat layout/subdir/meson.build
diff --git a/test cases/common/193 find override/meson.build b/test cases/common/191 find override/meson.build
index 3b8af80..3b8af80 100644
--- a/test cases/common/193 find override/meson.build
+++ b/test cases/common/191 find override/meson.build
diff --git a/test cases/common/193 find override/otherdir/main.c b/test cases/common/191 find override/otherdir/main.c
index 2cef67c..2cef67c 100644
--- a/test cases/common/193 find override/otherdir/main.c
+++ b/test cases/common/191 find override/otherdir/main.c
diff --git a/test cases/common/193 find override/otherdir/main2.c b/test cases/common/191 find override/otherdir/main2.c
index 6d71688..6d71688 100644
--- a/test cases/common/193 find override/otherdir/main2.c
+++ b/test cases/common/191 find override/otherdir/main2.c
diff --git a/test cases/common/193 find override/otherdir/meson.build b/test cases/common/191 find override/otherdir/meson.build
index dc41f5b..dc41f5b 100644
--- a/test cases/common/193 find override/otherdir/meson.build
+++ b/test cases/common/191 find override/otherdir/meson.build
diff --git a/test cases/common/193 find override/otherdir/source.desc b/test cases/common/191 find override/otherdir/source.desc
index 8b19c9c..8b19c9c 100644
--- a/test cases/common/193 find override/otherdir/source.desc
+++ b/test cases/common/191 find override/otherdir/source.desc
diff --git a/test cases/common/193 find override/otherdir/source2.desc b/test cases/common/191 find override/otherdir/source2.desc
index 965f868..965f868 100644
--- a/test cases/common/193 find override/otherdir/source2.desc
+++ b/test cases/common/191 find override/otherdir/source2.desc
diff --git a/test cases/common/193 find override/subdir/converter.py b/test cases/common/191 find override/subdir/converter.py
index ee2ff85..ee2ff85 100755
--- a/test cases/common/193 find override/subdir/converter.py
+++ b/test cases/common/191 find override/subdir/converter.py
diff --git a/test cases/common/193 find override/subdir/gencodegen.py.in b/test cases/common/191 find override/subdir/gencodegen.py.in
index 57d9c40..57d9c40 100755
--- a/test cases/common/193 find override/subdir/gencodegen.py.in
+++ b/test cases/common/191 find override/subdir/gencodegen.py.in
diff --git a/test cases/common/193 find override/subdir/meson.build b/test cases/common/191 find override/subdir/meson.build
index e5de34d..e5de34d 100644
--- a/test cases/common/193 find override/subdir/meson.build
+++ b/test cases/common/191 find override/subdir/meson.build
diff --git a/test cases/common/194 partial dependency/declare_dependency/headers/foo.c b/test cases/common/192 partial dependency/declare_dependency/headers/foo.c
index 215112c..215112c 100644
--- a/test cases/common/194 partial dependency/declare_dependency/headers/foo.c
+++ b/test cases/common/192 partial dependency/declare_dependency/headers/foo.c
diff --git a/test cases/common/194 partial dependency/declare_dependency/headers/foo.h b/test cases/common/192 partial dependency/declare_dependency/headers/foo.h
index 28c81c9..28c81c9 100644
--- a/test cases/common/194 partial dependency/declare_dependency/headers/foo.h
+++ b/test cases/common/192 partial dependency/declare_dependency/headers/foo.h
diff --git a/test cases/common/194 partial dependency/declare_dependency/main.c b/test cases/common/192 partial dependency/declare_dependency/main.c
index e9ed032..e9ed032 100644
--- a/test cases/common/194 partial dependency/declare_dependency/main.c
+++ b/test cases/common/192 partial dependency/declare_dependency/main.c
diff --git a/test cases/common/194 partial dependency/declare_dependency/meson.build b/test cases/common/192 partial dependency/declare_dependency/meson.build
index 86e2608..86e2608 100644
--- a/test cases/common/194 partial dependency/declare_dependency/meson.build
+++ b/test cases/common/192 partial dependency/declare_dependency/meson.build
diff --git a/test cases/common/194 partial dependency/declare_dependency/other.c b/test cases/common/192 partial dependency/declare_dependency/other.c
index b1e199e..b1e199e 100644
--- a/test cases/common/194 partial dependency/declare_dependency/other.c
+++ b/test cases/common/192 partial dependency/declare_dependency/other.c
diff --git a/test cases/common/194 partial dependency/meson.build b/test cases/common/192 partial dependency/meson.build
index e908487..e908487 100644
--- a/test cases/common/194 partial dependency/meson.build
+++ b/test cases/common/192 partial dependency/meson.build
diff --git a/test cases/common/195 openmp/main.c b/test cases/common/193 openmp/main.c
index cc81f48..cc81f48 100644
--- a/test cases/common/195 openmp/main.c
+++ b/test cases/common/193 openmp/main.c
diff --git a/test cases/common/195 openmp/main.cpp b/test cases/common/193 openmp/main.cpp
index b12be3f..b12be3f 100644
--- a/test cases/common/195 openmp/main.cpp
+++ b/test cases/common/193 openmp/main.cpp
diff --git a/test cases/common/195 openmp/main.f90 b/test cases/common/193 openmp/main.f90
index c062d86..c062d86 100644
--- a/test cases/common/195 openmp/main.f90
+++ b/test cases/common/193 openmp/main.f90
diff --git a/test cases/common/195 openmp/meson.build b/test cases/common/193 openmp/meson.build
index a05ca59..a05ca59 100644
--- a/test cases/common/195 openmp/meson.build
+++ b/test cases/common/193 openmp/meson.build
diff --git a/test cases/common/196 same target name/file.c b/test cases/common/194 same target name/file.c
index 6f1c172..6f1c172 100644
--- a/test cases/common/196 same target name/file.c
+++ b/test cases/common/194 same target name/file.c
diff --git a/test cases/common/196 same target name/meson.build b/test cases/common/194 same target name/meson.build
index 4e585d5..4e585d5 100644
--- a/test cases/common/196 same target name/meson.build
+++ b/test cases/common/194 same target name/meson.build
diff --git a/test cases/common/196 same target name/sub/file2.c b/test cases/common/194 same target name/sub/file2.c
index a5e453d..a5e453d 100644
--- a/test cases/common/196 same target name/sub/file2.c
+++ b/test cases/common/194 same target name/sub/file2.c
diff --git a/test cases/common/196 same target name/sub/meson.build b/test cases/common/194 same target name/sub/meson.build
index 610a4a3..610a4a3 100644
--- a/test cases/common/196 same target name/sub/meson.build
+++ b/test cases/common/194 same target name/sub/meson.build
diff --git a/test cases/common/197 test depends/gen.py b/test cases/common/195 test depends/gen.py
index ee4ed98..ee4ed98 100755
--- a/test cases/common/197 test depends/gen.py
+++ b/test cases/common/195 test depends/gen.py
diff --git a/test cases/common/197 test depends/main.c b/test cases/common/195 test depends/main.c
index 78f2de1..78f2de1 100644
--- a/test cases/common/197 test depends/main.c
+++ b/test cases/common/195 test depends/main.c
diff --git a/test cases/common/197 test depends/meson.build b/test cases/common/195 test depends/meson.build
index 888c451..888c451 100644
--- a/test cases/common/197 test depends/meson.build
+++ b/test cases/common/195 test depends/meson.build
diff --git a/test cases/common/197 test depends/test.py b/test cases/common/195 test depends/test.py
index 5b9f65c..5b9f65c 100755
--- a/test cases/common/197 test depends/test.py
+++ b/test cases/common/195 test depends/test.py
diff --git a/test cases/common/198 args flattening/meson.build b/test cases/common/196 args flattening/meson.build
index 6da2e8f..6da2e8f 100644
--- a/test cases/common/198 args flattening/meson.build
+++ b/test cases/common/196 args flattening/meson.build
diff --git a/test cases/common/199 dict/meson.build b/test cases/common/197 dict/meson.build
index e1ee2e3..e1ee2e3 100644
--- a/test cases/common/199 dict/meson.build
+++ b/test cases/common/197 dict/meson.build
diff --git a/test cases/common/199 dict/prog.c b/test cases/common/197 dict/prog.c
index bf0999d..bf0999d 100644
--- a/test cases/common/199 dict/prog.c
+++ b/test cases/common/197 dict/prog.c
diff --git a/test cases/common/200 check header/meson.build b/test cases/common/198 check header/meson.build
index 7b343d7..7b343d7 100644
--- a/test cases/common/200 check header/meson.build
+++ b/test cases/common/198 check header/meson.build
diff --git a/test cases/common/200 check header/ouagadougou.h b/test cases/common/198 check header/ouagadougou.h
index 2f76c49..2f76c49 100644
--- a/test cases/common/200 check header/ouagadougou.h
+++ b/test cases/common/198 check header/ouagadougou.h
diff --git a/test cases/common/201 install_mode/config.h.in b/test cases/common/199 install_mode/config.h.in
index 14a1558..14a1558 100644
--- a/test cases/common/201 install_mode/config.h.in
+++ b/test cases/common/199 install_mode/config.h.in
diff --git a/test cases/common/201 install_mode/data_source.txt b/test cases/common/199 install_mode/data_source.txt
index 0c23cc0..0c23cc0 100644
--- a/test cases/common/201 install_mode/data_source.txt
+++ b/test cases/common/199 install_mode/data_source.txt
diff --git a/test cases/common/201 install_mode/foo.1 b/test cases/common/199 install_mode/foo.1
index 647c097..647c097 100644
--- a/test cases/common/201 install_mode/foo.1
+++ b/test cases/common/199 install_mode/foo.1
diff --git a/test cases/common/201 install_mode/installed_files.txt b/test cases/common/199 install_mode/installed_files.txt
index 00fb231..00fb231 100644
--- a/test cases/common/201 install_mode/installed_files.txt
+++ b/test cases/common/199 install_mode/installed_files.txt
diff --git a/test cases/common/201 install_mode/meson.build b/test cases/common/199 install_mode/meson.build
index d06371f..d06371f 100644
--- a/test cases/common/201 install_mode/meson.build
+++ b/test cases/common/199 install_mode/meson.build
diff --git a/test cases/common/201 install_mode/rootdir.h b/test cases/common/199 install_mode/rootdir.h
index 72fb132..72fb132 100644
--- a/test cases/common/201 install_mode/rootdir.h
+++ b/test cases/common/199 install_mode/rootdir.h
diff --git a/test cases/common/201 install_mode/runscript.sh b/test cases/common/199 install_mode/runscript.sh
index 8bc5ca6..8bc5ca6 100644
--- a/test cases/common/201 install_mode/runscript.sh
+++ b/test cases/common/199 install_mode/runscript.sh
diff --git a/test cases/common/201 install_mode/stat.c b/test cases/common/199 install_mode/stat.c
index fa76a65..fa76a65 100644
--- a/test cases/common/201 install_mode/stat.c
+++ b/test cases/common/199 install_mode/stat.c
diff --git a/test cases/common/201 install_mode/sub1/second.dat b/test cases/common/199 install_mode/sub1/second.dat
index 48857a8..48857a8 100644
--- a/test cases/common/201 install_mode/sub1/second.dat
+++ b/test cases/common/199 install_mode/sub1/second.dat
diff --git a/test cases/common/201 install_mode/trivial.c b/test cases/common/199 install_mode/trivial.c
index 24ac454..24ac454 100644
--- a/test cases/common/201 install_mode/trivial.c
+++ b/test cases/common/199 install_mode/trivial.c
diff --git a/test cases/common/202 subproject array version/meson.build b/test cases/common/200 subproject array version/meson.build
index 0870bc4..0870bc4 100644
--- a/test cases/common/202 subproject array version/meson.build
+++ b/test cases/common/200 subproject array version/meson.build
diff --git a/test cases/common/202 subproject array version/subprojects/foo/meson.build b/test cases/common/200 subproject array version/subprojects/foo/meson.build
index f4ff535..f4ff535 100644
--- a/test cases/common/202 subproject array version/subprojects/foo/meson.build
+++ b/test cases/common/200 subproject array version/subprojects/foo/meson.build
diff --git a/test cases/common/203 feature option/meson.build b/test cases/common/201 feature option/meson.build
index ef3fa22..ef3fa22 100644
--- a/test cases/common/203 feature option/meson.build
+++ b/test cases/common/201 feature option/meson.build
diff --git a/test cases/common/203 feature option/meson_options.txt b/test cases/common/201 feature option/meson_options.txt
index 063a35f..063a35f 100644
--- a/test cases/common/203 feature option/meson_options.txt
+++ b/test cases/common/201 feature option/meson_options.txt
diff --git a/test cases/common/204 feature option disabled/meson.build b/test cases/common/202 feature option disabled/meson.build
index 1a83187..1a83187 100644
--- a/test cases/common/204 feature option disabled/meson.build
+++ b/test cases/common/202 feature option disabled/meson.build
diff --git a/test cases/common/204 feature option disabled/meson_options.txt b/test cases/common/202 feature option disabled/meson_options.txt
index 063a35f..063a35f 100644
--- a/test cases/common/204 feature option disabled/meson_options.txt
+++ b/test cases/common/202 feature option disabled/meson_options.txt
diff --git a/test cases/common/205 static threads/lib1.c b/test cases/common/203 static threads/lib1.c
index 1aa786c..1aa786c 100644
--- a/test cases/common/205 static threads/lib1.c
+++ b/test cases/common/203 static threads/lib1.c
diff --git a/test cases/common/205 static threads/lib2.c b/test cases/common/203 static threads/lib2.c
index e988814..e988814 100644
--- a/test cases/common/205 static threads/lib2.c
+++ b/test cases/common/203 static threads/lib2.c
diff --git a/test cases/common/205 static threads/meson.build b/test cases/common/203 static threads/meson.build
index 4279200..4279200 100644
--- a/test cases/common/205 static threads/meson.build
+++ b/test cases/common/203 static threads/meson.build
diff --git a/test cases/common/205 static threads/prog.c b/test cases/common/203 static threads/prog.c
index 14a7c76..14a7c76 100644
--- a/test cases/common/205 static threads/prog.c
+++ b/test cases/common/203 static threads/prog.c
diff --git a/test cases/common/205 generator in subdir/com/mesonbuild/genprog.py b/test cases/common/205 generator in subdir/com/mesonbuild/genprog.py
new file mode 100644
index 0000000..1e10998
--- /dev/null
+++ b/test cases/common/205 generator in subdir/com/mesonbuild/genprog.py
@@ -0,0 +1,46 @@
+#!/usr/bin/env python3
+
+import os, sys, argparse
+
+h_templ = '''#pragma once
+
+int %s();
+'''
+
+c_templ = '''#include"%s.h"
+
+int %s() {
+ return 0;
+}
+'''
+
+parser = argparse.ArgumentParser()
+parser.add_argument('--searchdir', required=True)
+parser.add_argument('--outdir', required=True)
+parser.add_argument('ifiles', nargs='+')
+
+options = parser.parse_args()
+
+searchdir = options.searchdir
+outdir = options.outdir
+ifiles = options.ifiles
+
+rel_ofiles = []
+
+for ifile in ifiles:
+ if not ifile.startswith(options.searchdir):
+ sys.exit('Input file %s does not start with search dir %s.' % (ifile, searchdir))
+ rel_ofile = ifile[len(searchdir):]
+ if rel_ofile[0] == '/' or rel_ofile[0] == '\\':
+ rel_ofile = rel_ofile[1:]
+ rel_ofiles.append(os.path.splitext(rel_ofile)[0])
+
+ofile_bases = [os.path.join(outdir, i) for i in rel_ofiles]
+
+for i, ifile_name in enumerate(ifiles):
+ proto_name = open(ifile_name).readline().strip()
+ h_out = ofile_bases[i] + '.h'
+ c_out = ofile_bases[i] + '.c'
+ os.makedirs(os.path.split(ofile_bases[i])[0], exist_ok=True)
+ open(h_out, 'w').write(h_templ % (proto_name))
+ open(c_out, 'w').write(c_templ % (proto_name, proto_name))
diff --git a/test cases/common/205 generator in subdir/com/mesonbuild/meson.build b/test cases/common/205 generator in subdir/com/mesonbuild/meson.build
new file mode 100644
index 0000000..4808743
--- /dev/null
+++ b/test cases/common/205 generator in subdir/com/mesonbuild/meson.build
@@ -0,0 +1,10 @@
+gprog = find_program('genprog.py')
+
+gen = generator(gprog, \
+ output : ['@BASENAME@.c', '@BASENAME@.h'],
+ arguments : ['--searchdir=@CURRENT_SOURCE_DIR@', '--outdir=@BUILD_DIR@', '@INPUT@'])
+
+generated = gen.process('subbie.inp')
+
+e = executable('testprog', 'testprog.c', generated)
+test('testprog', e)
diff --git a/test cases/common/205 generator in subdir/com/mesonbuild/subbie.inp b/test cases/common/205 generator in subdir/com/mesonbuild/subbie.inp
new file mode 100644
index 0000000..df0f4e9
--- /dev/null
+++ b/test cases/common/205 generator in subdir/com/mesonbuild/subbie.inp
@@ -0,0 +1 @@
+subbie
diff --git a/test cases/common/205 generator in subdir/com/mesonbuild/testprog.c b/test cases/common/205 generator in subdir/com/mesonbuild/testprog.c
new file mode 100644
index 0000000..58867ad
--- /dev/null
+++ b/test cases/common/205 generator in subdir/com/mesonbuild/testprog.c
@@ -0,0 +1,5 @@
+#include"subbie.h"
+
+int main(int argc, char **argv) {
+ return subbie();
+}
diff --git a/test cases/common/205 generator in subdir/meson.build b/test cases/common/205 generator in subdir/meson.build
new file mode 100644
index 0000000..9b8eb7c
--- /dev/null
+++ b/test cases/common/205 generator in subdir/meson.build
@@ -0,0 +1,3 @@
+project('generator in subdir', 'c')
+
+subdir('com/mesonbuild')
diff --git a/test cases/failing/25 int conversion/meson.build b/test cases/failing/24 int conversion/meson.build
index 51f6c7e..51f6c7e 100644
--- a/test cases/failing/25 int conversion/meson.build
+++ b/test cases/failing/24 int conversion/meson.build
diff --git a/test cases/failing/26 badlang/meson.build b/test cases/failing/25 badlang/meson.build
index f6bf0cc..f6bf0cc 100644
--- a/test cases/failing/26 badlang/meson.build
+++ b/test cases/failing/25 badlang/meson.build
diff --git a/test cases/failing/27 output subdir/foo.in b/test cases/failing/26 output subdir/foo.in
index 3d1bf19..3d1bf19 100644
--- a/test cases/failing/27 output subdir/foo.in
+++ b/test cases/failing/26 output subdir/foo.in
diff --git a/test cases/failing/27 output subdir/meson.build b/test cases/failing/26 output subdir/meson.build
index 4eb422c..4eb422c 100644
--- a/test cases/failing/27 output subdir/meson.build
+++ b/test cases/failing/26 output subdir/meson.build
diff --git a/test cases/failing/27 output subdir/subdir/dummy.txt b/test cases/failing/26 output subdir/subdir/dummy.txt
index f10acf3..f10acf3 100644
--- a/test cases/failing/27 output subdir/subdir/dummy.txt
+++ b/test cases/failing/26 output subdir/subdir/dummy.txt
diff --git a/test cases/failing/28 noprog use/meson.build b/test cases/failing/27 noprog use/meson.build
index e4de42f..e4de42f 100644
--- a/test cases/failing/28 noprog use/meson.build
+++ b/test cases/failing/27 noprog use/meson.build
diff --git a/test cases/failing/29 no crossprop/meson.build b/test cases/failing/28 no crossprop/meson.build
index bd3a743..bd3a743 100644
--- a/test cases/failing/29 no crossprop/meson.build
+++ b/test cases/failing/28 no crossprop/meson.build
diff --git a/test cases/failing/30 nested ternary/meson.build b/test cases/failing/29 nested ternary/meson.build
index f9c2e5f..f9c2e5f 100644
--- a/test cases/failing/30 nested ternary/meson.build
+++ b/test cases/failing/29 nested ternary/meson.build
diff --git a/test cases/failing/31 invalid man extension/meson.build b/test cases/failing/30 invalid man extension/meson.build
index 45eddca..45eddca 100644
--- a/test cases/failing/31 invalid man extension/meson.build
+++ b/test cases/failing/30 invalid man extension/meson.build
diff --git a/test cases/failing/32 no man extension/meson.build b/test cases/failing/31 no man extension/meson.build
index bf83571..bf83571 100644
--- a/test cases/failing/32 no man extension/meson.build
+++ b/test cases/failing/31 no man extension/meson.build
diff --git a/test cases/failing/33 exe static shared/meson.build b/test cases/failing/32 exe static shared/meson.build
index b102764..b102764 100644
--- a/test cases/failing/33 exe static shared/meson.build
+++ b/test cases/failing/32 exe static shared/meson.build
diff --git a/test cases/failing/33 exe static shared/prog.c b/test cases/failing/32 exe static shared/prog.c
index 26603b6..26603b6 100644
--- a/test cases/failing/33 exe static shared/prog.c
+++ b/test cases/failing/32 exe static shared/prog.c
diff --git a/test cases/failing/33 exe static shared/shlib2.c b/test cases/failing/32 exe static shared/shlib2.c
index 5b68843..5b68843 100644
--- a/test cases/failing/33 exe static shared/shlib2.c
+++ b/test cases/failing/32 exe static shared/shlib2.c
diff --git a/test cases/failing/33 exe static shared/stat.c b/test cases/failing/32 exe static shared/stat.c
index 56ec66c..56ec66c 100644
--- a/test cases/failing/33 exe static shared/stat.c
+++ b/test cases/failing/32 exe static shared/stat.c
diff --git a/test cases/failing/34 non-root subproject/meson.build b/test cases/failing/33 non-root subproject/meson.build
index c84dce7..c84dce7 100644
--- a/test cases/failing/34 non-root subproject/meson.build
+++ b/test cases/failing/33 non-root subproject/meson.build
diff --git a/test cases/failing/34 non-root subproject/some/meson.build b/test cases/failing/33 non-root subproject/some/meson.build
index d82f451..d82f451 100644
--- a/test cases/failing/34 non-root subproject/some/meson.build
+++ b/test cases/failing/33 non-root subproject/some/meson.build
diff --git a/test cases/failing/35 dependency not-required then required/meson.build b/test cases/failing/34 dependency not-required then required/meson.build
index 1796699..1796699 100644
--- a/test cases/failing/35 dependency not-required then required/meson.build
+++ b/test cases/failing/34 dependency not-required then required/meson.build
diff --git a/test cases/failing/36 project argument after target/exe.c b/test cases/failing/35 project argument after target/exe.c
index 11b7fad..11b7fad 100644
--- a/test cases/failing/36 project argument after target/exe.c
+++ b/test cases/failing/35 project argument after target/exe.c
diff --git a/test cases/failing/36 project argument after target/meson.build b/test cases/failing/35 project argument after target/meson.build
index 5402c67..5402c67 100644
--- a/test cases/failing/36 project argument after target/meson.build
+++ b/test cases/failing/35 project argument after target/meson.build
diff --git a/test cases/failing/37 pkgconfig dependency impossible conditions/meson.build b/test cases/failing/36 pkgconfig dependency impossible conditions/meson.build
index 54d434c..54d434c 100644
--- a/test cases/failing/37 pkgconfig dependency impossible conditions/meson.build
+++ b/test cases/failing/36 pkgconfig dependency impossible conditions/meson.build
diff --git a/test cases/failing/38 has function external dependency/meson.build b/test cases/failing/37 has function external dependency/meson.build
index 45a3bc2..45a3bc2 100644
--- a/test cases/failing/38 has function external dependency/meson.build
+++ b/test cases/failing/37 has function external dependency/meson.build
diff --git a/test cases/failing/38 has function external dependency/mylib.c b/test cases/failing/37 has function external dependency/mylib.c
index d9fbd34..d9fbd34 100644
--- a/test cases/failing/38 has function external dependency/mylib.c
+++ b/test cases/failing/37 has function external dependency/mylib.c
diff --git a/test cases/failing/39 libdir must be inside prefix/meson.build b/test cases/failing/38 libdir must be inside prefix/meson.build
index 66272ea..66272ea 100644
--- a/test cases/failing/39 libdir must be inside prefix/meson.build
+++ b/test cases/failing/38 libdir must be inside prefix/meson.build
diff --git a/test cases/failing/40 prefix absolute/meson.build b/test cases/failing/39 prefix absolute/meson.build
index e2863e7..e2863e7 100644
--- a/test cases/failing/40 prefix absolute/meson.build
+++ b/test cases/failing/39 prefix absolute/meson.build
diff --git a/test cases/failing/41 kwarg assign/dummy.c b/test cases/failing/40 kwarg assign/dummy.c
index 16fcdd9..16fcdd9 100644
--- a/test cases/failing/41 kwarg assign/dummy.c
+++ b/test cases/failing/40 kwarg assign/dummy.c
diff --git a/test cases/failing/41 kwarg assign/meson.build b/test cases/failing/40 kwarg assign/meson.build
index c86786f..c86786f 100644
--- a/test cases/failing/41 kwarg assign/meson.build
+++ b/test cases/failing/40 kwarg assign/meson.build
diff --git a/test cases/failing/41 kwarg assign/prog.c b/test cases/failing/40 kwarg assign/prog.c
index 11b7fad..11b7fad 100644
--- a/test cases/failing/41 kwarg assign/prog.c
+++ b/test cases/failing/40 kwarg assign/prog.c
diff --git a/test cases/failing/42 custom target plainname many inputs/1.txt b/test cases/failing/41 custom target plainname many inputs/1.txt
index d00491f..d00491f 100644
--- a/test cases/failing/42 custom target plainname many inputs/1.txt
+++ b/test cases/failing/41 custom target plainname many inputs/1.txt
diff --git a/test cases/failing/42 custom target plainname many inputs/2.txt b/test cases/failing/41 custom target plainname many inputs/2.txt
index 0cfbf08..0cfbf08 100644
--- a/test cases/failing/42 custom target plainname many inputs/2.txt
+++ b/test cases/failing/41 custom target plainname many inputs/2.txt
diff --git a/test cases/failing/42 custom target plainname many inputs/catfiles.py b/test cases/failing/41 custom target plainname many inputs/catfiles.py
index 1c53e24..1c53e24 100644
--- a/test cases/failing/42 custom target plainname many inputs/catfiles.py
+++ b/test cases/failing/41 custom target plainname many inputs/catfiles.py
diff --git a/test cases/failing/42 custom target plainname many inputs/meson.build b/test cases/failing/41 custom target plainname many inputs/meson.build
index 1bcfc06..1bcfc06 100644
--- a/test cases/failing/42 custom target plainname many inputs/meson.build
+++ b/test cases/failing/41 custom target plainname many inputs/meson.build
diff --git a/test cases/failing/43 custom target outputs not matching install_dirs/generator.py b/test cases/failing/42 custom target outputs not matching install_dirs/generator.py
index 4ac6179..4ac6179 100755
--- a/test cases/failing/43 custom target outputs not matching install_dirs/generator.py
+++ b/test cases/failing/42 custom target outputs not matching install_dirs/generator.py
diff --git a/test cases/failing/43 custom target outputs not matching install_dirs/installed_files.txt b/test cases/failing/42 custom target outputs not matching install_dirs/installed_files.txt
index 21e1249..21e1249 100644
--- a/test cases/failing/43 custom target outputs not matching install_dirs/installed_files.txt
+++ b/test cases/failing/42 custom target outputs not matching install_dirs/installed_files.txt
diff --git a/test cases/failing/43 custom target outputs not matching install_dirs/meson.build b/test cases/failing/42 custom target outputs not matching install_dirs/meson.build
index 45bd7b3..45bd7b3 100644
--- a/test cases/failing/43 custom target outputs not matching install_dirs/meson.build
+++ b/test cases/failing/42 custom target outputs not matching install_dirs/meson.build
diff --git a/test cases/failing/44 project name colon/meson.build b/test cases/failing/43 project name colon/meson.build
index 53e947e..53e947e 100644
--- a/test cases/failing/44 project name colon/meson.build
+++ b/test cases/failing/43 project name colon/meson.build
diff --git a/test cases/failing/45 abs subdir/bob/meson.build b/test cases/failing/44 abs subdir/bob/meson.build
index 7bbf4b2..7bbf4b2 100644
--- a/test cases/failing/45 abs subdir/bob/meson.build
+++ b/test cases/failing/44 abs subdir/bob/meson.build
diff --git a/test cases/failing/45 abs subdir/meson.build b/test cases/failing/44 abs subdir/meson.build
index 8c23224..8c23224 100644
--- a/test cases/failing/45 abs subdir/meson.build
+++ b/test cases/failing/44 abs subdir/meson.build
diff --git a/test cases/failing/46 abspath to srcdir/meson.build b/test cases/failing/45 abspath to srcdir/meson.build
index 964a19b..964a19b 100644
--- a/test cases/failing/46 abspath to srcdir/meson.build
+++ b/test cases/failing/45 abspath to srcdir/meson.build
diff --git a/test cases/failing/47 pkgconfig variables reserved/meson.build b/test cases/failing/46 pkgconfig variables reserved/meson.build
index 82ae995..82ae995 100644
--- a/test cases/failing/47 pkgconfig variables reserved/meson.build
+++ b/test cases/failing/46 pkgconfig variables reserved/meson.build
diff --git a/test cases/failing/47 pkgconfig variables reserved/simple.c b/test cases/failing/46 pkgconfig variables reserved/simple.c
index e8a6d83..e8a6d83 100644
--- a/test cases/failing/47 pkgconfig variables reserved/simple.c
+++ b/test cases/failing/46 pkgconfig variables reserved/simple.c
diff --git a/test cases/failing/47 pkgconfig variables reserved/simple.h b/test cases/failing/46 pkgconfig variables reserved/simple.h
index bb52e6d..bb52e6d 100644
--- a/test cases/failing/47 pkgconfig variables reserved/simple.h
+++ b/test cases/failing/46 pkgconfig variables reserved/simple.h
diff --git a/test cases/failing/48 pkgconfig variables zero length/meson.build b/test cases/failing/47 pkgconfig variables zero length/meson.build
index 65d3344..65d3344 100644
--- a/test cases/failing/48 pkgconfig variables zero length/meson.build
+++ b/test cases/failing/47 pkgconfig variables zero length/meson.build
diff --git a/test cases/failing/48 pkgconfig variables zero length/simple.c b/test cases/failing/47 pkgconfig variables zero length/simple.c
index e8a6d83..e8a6d83 100644
--- a/test cases/failing/48 pkgconfig variables zero length/simple.c
+++ b/test cases/failing/47 pkgconfig variables zero length/simple.c
diff --git a/test cases/failing/48 pkgconfig variables zero length/simple.h b/test cases/failing/47 pkgconfig variables zero length/simple.h
index bb52e6d..bb52e6d 100644
--- a/test cases/failing/48 pkgconfig variables zero length/simple.h
+++ b/test cases/failing/47 pkgconfig variables zero length/simple.h
diff --git a/test cases/failing/49 pkgconfig variables zero length value/meson.build b/test cases/failing/48 pkgconfig variables zero length value/meson.build
index 33977b2..33977b2 100644
--- a/test cases/failing/49 pkgconfig variables zero length value/meson.build
+++ b/test cases/failing/48 pkgconfig variables zero length value/meson.build
diff --git a/test cases/failing/49 pkgconfig variables zero length value/simple.c b/test cases/failing/48 pkgconfig variables zero length value/simple.c
index e8a6d83..e8a6d83 100644
--- a/test cases/failing/49 pkgconfig variables zero length value/simple.c
+++ b/test cases/failing/48 pkgconfig variables zero length value/simple.c
diff --git a/test cases/failing/49 pkgconfig variables zero length value/simple.h b/test cases/failing/48 pkgconfig variables zero length value/simple.h
index bb52e6d..bb52e6d 100644
--- a/test cases/failing/49 pkgconfig variables zero length value/simple.h
+++ b/test cases/failing/48 pkgconfig variables zero length value/simple.h
diff --git a/test cases/failing/50 pkgconfig variables not key value/meson.build b/test cases/failing/49 pkgconfig variables not key value/meson.build
index 02fa737..02fa737 100644
--- a/test cases/failing/50 pkgconfig variables not key value/meson.build
+++ b/test cases/failing/49 pkgconfig variables not key value/meson.build
diff --git a/test cases/failing/50 pkgconfig variables not key value/simple.c b/test cases/failing/49 pkgconfig variables not key value/simple.c
index e8a6d83..e8a6d83 100644
--- a/test cases/failing/50 pkgconfig variables not key value/simple.c
+++ b/test cases/failing/49 pkgconfig variables not key value/simple.c
diff --git a/test cases/failing/50 pkgconfig variables not key value/simple.h b/test cases/failing/49 pkgconfig variables not key value/simple.h
index bb52e6d..bb52e6d 100644
--- a/test cases/failing/50 pkgconfig variables not key value/simple.h
+++ b/test cases/failing/49 pkgconfig variables not key value/simple.h
diff --git a/test cases/failing/51 executable comparison/meson.build b/test cases/failing/50 executable comparison/meson.build
index 041bcf3..041bcf3 100644
--- a/test cases/failing/51 executable comparison/meson.build
+++ b/test cases/failing/50 executable comparison/meson.build
diff --git a/test cases/failing/51 executable comparison/prog.c b/test cases/failing/50 executable comparison/prog.c
index 0314ff1..0314ff1 100644
--- a/test cases/failing/51 executable comparison/prog.c
+++ b/test cases/failing/50 executable comparison/prog.c
diff --git a/test cases/failing/52 inconsistent comparison/meson.build b/test cases/failing/51 inconsistent comparison/meson.build
index 7694c2c..7694c2c 100644
--- a/test cases/failing/52 inconsistent comparison/meson.build
+++ b/test cases/failing/51 inconsistent comparison/meson.build
diff --git a/test cases/failing/53 slashname/meson.build b/test cases/failing/52 slashname/meson.build
index bba5301..bba5301 100644
--- a/test cases/failing/53 slashname/meson.build
+++ b/test cases/failing/52 slashname/meson.build
diff --git a/test cases/failing/53 slashname/sub/meson.build b/test cases/failing/52 slashname/sub/meson.build
index e104890..e104890 100644
--- a/test cases/failing/53 slashname/sub/meson.build
+++ b/test cases/failing/52 slashname/sub/meson.build
diff --git a/test cases/failing/53 slashname/sub/prog.c b/test cases/failing/52 slashname/sub/prog.c
index 722de0a..722de0a 100644
--- a/test cases/failing/53 slashname/sub/prog.c
+++ b/test cases/failing/52 slashname/sub/prog.c
diff --git a/test cases/failing/54 reserved meson prefix/meson-foo/meson.build b/test cases/failing/53 reserved meson prefix/meson-foo/meson.build
index e69de29..e69de29 100644
--- a/test cases/failing/54 reserved meson prefix/meson-foo/meson.build
+++ b/test cases/failing/53 reserved meson prefix/meson-foo/meson.build
diff --git a/test cases/failing/54 reserved meson prefix/meson.build b/test cases/failing/53 reserved meson prefix/meson.build
index 1339035..1339035 100644
--- a/test cases/failing/54 reserved meson prefix/meson.build
+++ b/test cases/failing/53 reserved meson prefix/meson.build
diff --git a/test cases/failing/55 wrong shared crate type/foo.rs b/test cases/failing/54 wrong shared crate type/foo.rs
index e69de29..e69de29 100644
--- a/test cases/failing/55 wrong shared crate type/foo.rs
+++ b/test cases/failing/54 wrong shared crate type/foo.rs
diff --git a/test cases/failing/55 wrong shared crate type/meson.build b/test cases/failing/54 wrong shared crate type/meson.build
index 69ac3da..69ac3da 100644
--- a/test cases/failing/55 wrong shared crate type/meson.build
+++ b/test cases/failing/54 wrong shared crate type/meson.build
diff --git a/test cases/failing/56 wrong static crate type/foo.rs b/test cases/failing/55 wrong static crate type/foo.rs
index e69de29..e69de29 100644
--- a/test cases/failing/56 wrong static crate type/foo.rs
+++ b/test cases/failing/55 wrong static crate type/foo.rs
diff --git a/test cases/failing/56 wrong static crate type/meson.build b/test cases/failing/55 wrong static crate type/meson.build
index c094613..c094613 100644
--- a/test cases/failing/56 wrong static crate type/meson.build
+++ b/test cases/failing/55 wrong static crate type/meson.build
diff --git a/test cases/failing/57 or on new line/meson.build b/test cases/failing/56 or on new line/meson.build
index 12f2705..12f2705 100644
--- a/test cases/failing/57 or on new line/meson.build
+++ b/test cases/failing/56 or on new line/meson.build
diff --git a/test cases/failing/57 or on new line/meson_options.txt b/test cases/failing/56 or on new line/meson_options.txt
index 3302cf4..3302cf4 100644
--- a/test cases/failing/57 or on new line/meson_options.txt
+++ b/test cases/failing/56 or on new line/meson_options.txt
diff --git a/test cases/failing/58 kwarg in module/meson.build b/test cases/failing/57 kwarg in module/meson.build
index b105db1..b105db1 100644
--- a/test cases/failing/58 kwarg in module/meson.build
+++ b/test cases/failing/57 kwarg in module/meson.build
diff --git a/test cases/failing/59 link with executable/meson.build b/test cases/failing/58 link with executable/meson.build
index 186b3e5..186b3e5 100644
--- a/test cases/failing/59 link with executable/meson.build
+++ b/test cases/failing/58 link with executable/meson.build
diff --git a/test cases/failing/59 link with executable/module.c b/test cases/failing/58 link with executable/module.c
index dc0124a..dc0124a 100644
--- a/test cases/failing/59 link with executable/module.c
+++ b/test cases/failing/58 link with executable/module.c
diff --git a/test cases/failing/59 link with executable/prog.c b/test cases/failing/58 link with executable/prog.c
index f3836d7..f3836d7 100644
--- a/test cases/failing/59 link with executable/prog.c
+++ b/test cases/failing/58 link with executable/prog.c
diff --git a/test cases/failing/60 assign custom target index/meson.build b/test cases/failing/59 assign custom target index/meson.build
index 7f2a820..7f2a820 100644
--- a/test cases/failing/60 assign custom target index/meson.build
+++ b/test cases/failing/59 assign custom target index/meson.build
diff --git a/test cases/failing/61 getoption prefix/meson.build b/test cases/failing/60 getoption prefix/meson.build
index 8f85cff..8f85cff 100644
--- a/test cases/failing/61 getoption prefix/meson.build
+++ b/test cases/failing/60 getoption prefix/meson.build
diff --git a/test cases/failing/61 getoption prefix/subprojects/abc/meson.build b/test cases/failing/60 getoption prefix/subprojects/abc/meson.build
index aa9c3df..aa9c3df 100644
--- a/test cases/failing/61 getoption prefix/subprojects/abc/meson.build
+++ b/test cases/failing/60 getoption prefix/subprojects/abc/meson.build
diff --git a/test cases/failing/61 getoption prefix/subprojects/abc/meson_options.txt b/test cases/failing/60 getoption prefix/subprojects/abc/meson_options.txt
index 89e624e..89e624e 100644
--- a/test cases/failing/61 getoption prefix/subprojects/abc/meson_options.txt
+++ b/test cases/failing/60 getoption prefix/subprojects/abc/meson_options.txt
diff --git a/test cases/failing/62 bad option argument/meson.build b/test cases/failing/61 bad option argument/meson.build
index 5219cfb..5219cfb 100644
--- a/test cases/failing/62 bad option argument/meson.build
+++ b/test cases/failing/61 bad option argument/meson.build
diff --git a/test cases/failing/62 bad option argument/meson_options.txt b/test cases/failing/61 bad option argument/meson_options.txt
index de1fff6..de1fff6 100644
--- a/test cases/failing/62 bad option argument/meson_options.txt
+++ b/test cases/failing/61 bad option argument/meson_options.txt
diff --git a/test cases/failing/63 subproj filegrab/meson.build b/test cases/failing/62 subproj filegrab/meson.build
index f38d6c7..f38d6c7 100644
--- a/test cases/failing/63 subproj filegrab/meson.build
+++ b/test cases/failing/62 subproj filegrab/meson.build
diff --git a/test cases/failing/63 subproj filegrab/prog.c b/test cases/failing/62 subproj filegrab/prog.c
index 0314ff1..0314ff1 100644
--- a/test cases/failing/63 subproj filegrab/prog.c
+++ b/test cases/failing/62 subproj filegrab/prog.c
diff --git a/test cases/failing/63 subproj filegrab/subprojects/a/meson.build b/test cases/failing/62 subproj filegrab/subprojects/a/meson.build
index 80b9888..80b9888 100644
--- a/test cases/failing/63 subproj filegrab/subprojects/a/meson.build
+++ b/test cases/failing/62 subproj filegrab/subprojects/a/meson.build
diff --git a/test cases/failing/64 grab subproj/meson.build b/test cases/failing/63 grab subproj/meson.build
index 30fc690..30fc690 100644
--- a/test cases/failing/64 grab subproj/meson.build
+++ b/test cases/failing/63 grab subproj/meson.build
diff --git a/test cases/failing/64 grab subproj/subprojects/foo/meson.build b/test cases/failing/63 grab subproj/subprojects/foo/meson.build
index b346f6d..b346f6d 100644
--- a/test cases/failing/64 grab subproj/subprojects/foo/meson.build
+++ b/test cases/failing/63 grab subproj/subprojects/foo/meson.build
diff --git a/test cases/failing/64 grab subproj/subprojects/foo/sub.c b/test cases/failing/63 grab subproj/subprojects/foo/sub.c
index a94b1f5..a94b1f5 100644
--- a/test cases/failing/64 grab subproj/subprojects/foo/sub.c
+++ b/test cases/failing/63 grab subproj/subprojects/foo/sub.c
diff --git a/test cases/failing/65 grab sibling/meson.build b/test cases/failing/64 grab sibling/meson.build
index 60b926a..60b926a 100644
--- a/test cases/failing/65 grab sibling/meson.build
+++ b/test cases/failing/64 grab sibling/meson.build
diff --git a/test cases/failing/65 grab sibling/subprojects/a/meson.build b/test cases/failing/64 grab sibling/subprojects/a/meson.build
index 6dd9f61..6dd9f61 100644
--- a/test cases/failing/65 grab sibling/subprojects/a/meson.build
+++ b/test cases/failing/64 grab sibling/subprojects/a/meson.build
diff --git a/test cases/failing/65 grab sibling/subprojects/b/meson.build b/test cases/failing/64 grab sibling/subprojects/b/meson.build
index 7c70fe5..7c70fe5 100644
--- a/test cases/failing/65 grab sibling/subprojects/b/meson.build
+++ b/test cases/failing/64 grab sibling/subprojects/b/meson.build
diff --git a/test cases/failing/65 grab sibling/subprojects/b/sneaky.c b/test cases/failing/64 grab sibling/subprojects/b/sneaky.c
index 46718c6..46718c6 100644
--- a/test cases/failing/65 grab sibling/subprojects/b/sneaky.c
+++ b/test cases/failing/64 grab sibling/subprojects/b/sneaky.c
diff --git a/test cases/failing/66 string as link target/meson.build b/test cases/failing/65 string as link target/meson.build
index cb83fff..cb83fff 100644
--- a/test cases/failing/66 string as link target/meson.build
+++ b/test cases/failing/65 string as link target/meson.build
diff --git a/test cases/failing/66 string as link target/prog.c b/test cases/failing/65 string as link target/prog.c
index 0314ff1..0314ff1 100644
--- a/test cases/failing/66 string as link target/prog.c
+++ b/test cases/failing/65 string as link target/prog.c
diff --git a/test cases/failing/67 dependency not-found and required/meson.build b/test cases/failing/66 dependency not-found and required/meson.build
index 1ce5747..1ce5747 100644
--- a/test cases/failing/67 dependency not-found and required/meson.build
+++ b/test cases/failing/66 dependency not-found and required/meson.build
diff --git a/test cases/failing/68 subproj different versions/main.c b/test cases/failing/67 subproj different versions/main.c
index 8793c62..8793c62 100644
--- a/test cases/failing/68 subproj different versions/main.c
+++ b/test cases/failing/67 subproj different versions/main.c
diff --git a/test cases/failing/68 subproj different versions/meson.build b/test cases/failing/67 subproj different versions/meson.build
index e964e42..e964e42 100644
--- a/test cases/failing/68 subproj different versions/meson.build
+++ b/test cases/failing/67 subproj different versions/meson.build
diff --git a/test cases/failing/68 subproj different versions/subprojects/a/a.c b/test cases/failing/67 subproj different versions/subprojects/a/a.c
index cd41a65..cd41a65 100644
--- a/test cases/failing/68 subproj different versions/subprojects/a/a.c
+++ b/test cases/failing/67 subproj different versions/subprojects/a/a.c
diff --git a/test cases/failing/68 subproj different versions/subprojects/a/a.h b/test cases/failing/67 subproj different versions/subprojects/a/a.h
index 8f1d49e..8f1d49e 100644
--- a/test cases/failing/68 subproj different versions/subprojects/a/a.h
+++ b/test cases/failing/67 subproj different versions/subprojects/a/a.h
diff --git a/test cases/failing/68 subproj different versions/subprojects/a/meson.build b/test cases/failing/67 subproj different versions/subprojects/a/meson.build
index e84182a..e84182a 100644
--- a/test cases/failing/68 subproj different versions/subprojects/a/meson.build
+++ b/test cases/failing/67 subproj different versions/subprojects/a/meson.build
diff --git a/test cases/failing/68 subproj different versions/subprojects/b/b.c b/test cases/failing/67 subproj different versions/subprojects/b/b.c
index f85f8c3..f85f8c3 100644
--- a/test cases/failing/68 subproj different versions/subprojects/b/b.c
+++ b/test cases/failing/67 subproj different versions/subprojects/b/b.c
diff --git a/test cases/failing/68 subproj different versions/subprojects/b/b.h b/test cases/failing/67 subproj different versions/subprojects/b/b.h
index eced786..eced786 100644
--- a/test cases/failing/68 subproj different versions/subprojects/b/b.h
+++ b/test cases/failing/67 subproj different versions/subprojects/b/b.h
diff --git a/test cases/failing/68 subproj different versions/subprojects/b/meson.build b/test cases/failing/67 subproj different versions/subprojects/b/meson.build
index 0398340..0398340 100644
--- a/test cases/failing/68 subproj different versions/subprojects/b/meson.build
+++ b/test cases/failing/67 subproj different versions/subprojects/b/meson.build
diff --git a/test cases/failing/68 subproj different versions/subprojects/c/c.h b/test cases/failing/67 subproj different versions/subprojects/c/c.h
index 2b15f60..2b15f60 100644
--- a/test cases/failing/68 subproj different versions/subprojects/c/c.h
+++ b/test cases/failing/67 subproj different versions/subprojects/c/c.h
diff --git a/test cases/failing/68 subproj different versions/subprojects/c/meson.build b/test cases/failing/67 subproj different versions/subprojects/c/meson.build
index 7184933..7184933 100644
--- a/test cases/failing/68 subproj different versions/subprojects/c/meson.build
+++ b/test cases/failing/67 subproj different versions/subprojects/c/meson.build
diff --git a/test cases/failing/69 wrong boost module/meson.build b/test cases/failing/68 wrong boost module/meson.build
index 7fb3a40..7fb3a40 100644
--- a/test cases/failing/69 wrong boost module/meson.build
+++ b/test cases/failing/68 wrong boost module/meson.build
diff --git a/test cases/failing/70 install_data rename bad size/file1.txt b/test cases/failing/69 install_data rename bad size/file1.txt
index e69de29..e69de29 100644
--- a/test cases/failing/70 install_data rename bad size/file1.txt
+++ b/test cases/failing/69 install_data rename bad size/file1.txt
diff --git a/test cases/failing/70 install_data rename bad size/file2.txt b/test cases/failing/69 install_data rename bad size/file2.txt
index e69de29..e69de29 100644
--- a/test cases/failing/70 install_data rename bad size/file2.txt
+++ b/test cases/failing/69 install_data rename bad size/file2.txt
diff --git a/test cases/failing/70 install_data rename bad size/meson.build b/test cases/failing/69 install_data rename bad size/meson.build
index c7cde08..c7cde08 100644
--- a/test cases/failing/70 install_data rename bad size/meson.build
+++ b/test cases/failing/69 install_data rename bad size/meson.build
diff --git a/test cases/failing/71 skip only subdir/meson.build b/test cases/failing/70 skip only subdir/meson.build
index 4832bd4..4832bd4 100644
--- a/test cases/failing/71 skip only subdir/meson.build
+++ b/test cases/failing/70 skip only subdir/meson.build
diff --git a/test cases/failing/71 skip only subdir/subdir/meson.build b/test cases/failing/70 skip only subdir/subdir/meson.build
index 1ba447b..1ba447b 100644
--- a/test cases/failing/71 skip only subdir/subdir/meson.build
+++ b/test cases/failing/70 skip only subdir/subdir/meson.build
diff --git a/test cases/failing/72 invalid escape char/meson.build b/test cases/failing/71 invalid escape char/meson.build
index b4e9196..b4e9196 100644
--- a/test cases/failing/72 invalid escape char/meson.build
+++ b/test cases/failing/71 invalid escape char/meson.build
diff --git a/test cases/failing/73 dual override/meson.build b/test cases/failing/72 dual override/meson.build
index e5f86ba..e5f86ba 100644
--- a/test cases/failing/73 dual override/meson.build
+++ b/test cases/failing/72 dual override/meson.build
diff --git a/test cases/failing/73 dual override/overrides.py b/test cases/failing/72 dual override/overrides.py
index 49e9b7a..49e9b7a 100644
--- a/test cases/failing/73 dual override/overrides.py
+++ b/test cases/failing/72 dual override/overrides.py
diff --git a/test cases/failing/74 override used/meson.build b/test cases/failing/73 override used/meson.build
index 61885bb..61885bb 100644
--- a/test cases/failing/74 override used/meson.build
+++ b/test cases/failing/73 override used/meson.build
diff --git a/test cases/failing/74 override used/other.py b/test cases/failing/73 override used/other.py
index f62ba96..f62ba96 100755
--- a/test cases/failing/74 override used/other.py
+++ b/test cases/failing/73 override used/other.py
diff --git a/test cases/failing/74 override used/something.py b/test cases/failing/73 override used/something.py
index 64c9454..64c9454 100755
--- a/test cases/failing/74 override used/something.py
+++ b/test cases/failing/73 override used/something.py
diff --git a/test cases/failing/75 run_command unclean exit/meson.build b/test cases/failing/74 run_command unclean exit/meson.build
index 4bc02ae..4bc02ae 100644
--- a/test cases/failing/75 run_command unclean exit/meson.build
+++ b/test cases/failing/74 run_command unclean exit/meson.build
diff --git a/test cases/failing/75 run_command unclean exit/returncode.py b/test cases/failing/74 run_command unclean exit/returncode.py
index 84dbc5d..84dbc5d 100755
--- a/test cases/failing/75 run_command unclean exit/returncode.py
+++ b/test cases/failing/74 run_command unclean exit/returncode.py
diff --git a/test cases/failing/76 int literal leading zero/meson.build b/test cases/failing/75 int literal leading zero/meson.build
index 7ad64ae..7ad64ae 100644
--- a/test cases/failing/76 int literal leading zero/meson.build
+++ b/test cases/failing/75 int literal leading zero/meson.build
diff --git a/test cases/failing/77 configuration immutable/input b/test cases/failing/76 configuration immutable/input
index e69de29..e69de29 100644
--- a/test cases/failing/77 configuration immutable/input
+++ b/test cases/failing/76 configuration immutable/input
diff --git a/test cases/failing/77 configuration immutable/meson.build b/test cases/failing/76 configuration immutable/meson.build
index b6cac41..b6cac41 100644
--- a/test cases/failing/77 configuration immutable/meson.build
+++ b/test cases/failing/76 configuration immutable/meson.build
diff --git a/test cases/failing/78 link with shared module on osx/meson.build b/test cases/failing/77 link with shared module on osx/meson.build
index 2c714f9..2c714f9 100644
--- a/test cases/failing/78 link with shared module on osx/meson.build
+++ b/test cases/failing/77 link with shared module on osx/meson.build
diff --git a/test cases/failing/78 link with shared module on osx/module.c b/test cases/failing/77 link with shared module on osx/module.c
index 81b0d5a..81b0d5a 100644
--- a/test cases/failing/78 link with shared module on osx/module.c
+++ b/test cases/failing/77 link with shared module on osx/module.c
diff --git a/test cases/failing/78 link with shared module on osx/prog.c b/test cases/failing/77 link with shared module on osx/prog.c
index 8164d8d..8164d8d 100644
--- a/test cases/failing/78 link with shared module on osx/prog.c
+++ b/test cases/failing/77 link with shared module on osx/prog.c
diff --git a/test cases/failing/79 non ascii in ascii encoded configure file/config9.h.in b/test cases/failing/78 non ascii in ascii encoded configure file/config9.h.in
index 323bec6..323bec6 100644
--- a/test cases/failing/79 non ascii in ascii encoded configure file/config9.h.in
+++ b/test cases/failing/78 non ascii in ascii encoded configure file/config9.h.in
diff --git a/test cases/failing/79 non ascii in ascii encoded configure file/meson.build b/test cases/failing/78 non ascii in ascii encoded configure file/meson.build
index 846daaf..846daaf 100644
--- a/test cases/failing/79 non ascii in ascii encoded configure file/meson.build
+++ b/test cases/failing/78 non ascii in ascii encoded configure file/meson.build
diff --git a/test cases/failing/80 subproj dependency not-found and required/meson.build b/test cases/failing/79 subproj dependency not-found and required/meson.build
index c5a2961..c5a2961 100644
--- a/test cases/failing/80 subproj dependency not-found and required/meson.build
+++ b/test cases/failing/79 subproj dependency not-found and required/meson.build
diff --git a/test cases/failing/81 unfound run/meson.build b/test cases/failing/80 unfound run/meson.build
index 3f37e9a..3f37e9a 100644
--- a/test cases/failing/81 unfound run/meson.build
+++ b/test cases/failing/80 unfound run/meson.build
diff --git a/test cases/objc/6 c++ project objc subproject/master.cpp b/test cases/objc/4 c++ project objc subproject/master.cpp
index 2f351d1..2f351d1 100644
--- a/test cases/objc/6 c++ project objc subproject/master.cpp
+++ b/test cases/objc/4 c++ project objc subproject/master.cpp
diff --git a/test cases/objc/6 c++ project objc subproject/meson.build b/test cases/objc/4 c++ project objc subproject/meson.build
index 8a77ded..8a77ded 100644
--- a/test cases/objc/6 c++ project objc subproject/meson.build
+++ b/test cases/objc/4 c++ project objc subproject/meson.build
diff --git a/test cases/objc/6 c++ project objc subproject/subprojects/foo/foo.m b/test cases/objc/4 c++ project objc subproject/subprojects/foo/foo.m
index e193b86..e193b86 100644
--- a/test cases/objc/6 c++ project objc subproject/subprojects/foo/foo.m
+++ b/test cases/objc/4 c++ project objc subproject/subprojects/foo/foo.m
diff --git a/test cases/objc/6 c++ project objc subproject/subprojects/foo/meson.build b/test cases/objc/4 c++ project objc subproject/subprojects/foo/meson.build
index 2dbf8ab..2dbf8ab 100644
--- a/test cases/objc/6 c++ project objc subproject/subprojects/foo/meson.build
+++ b/test cases/objc/4 c++ project objc subproject/subprojects/foo/meson.build
diff --git a/test cases/unit/11 build_rpath/meson.build b/test cases/unit/10 build_rpath/meson.build
index c0bc3bd..c0bc3bd 100644
--- a/test cases/unit/11 build_rpath/meson.build
+++ b/test cases/unit/10 build_rpath/meson.build
diff --git a/test cases/unit/11 build_rpath/prog.c b/test cases/unit/10 build_rpath/prog.c
index 45b2fa3..45b2fa3 100644
--- a/test cases/unit/11 build_rpath/prog.c
+++ b/test cases/unit/10 build_rpath/prog.c
diff --git a/test cases/unit/11 build_rpath/prog.cc b/test cases/unit/10 build_rpath/prog.cc
index c7c2123..c7c2123 100644
--- a/test cases/unit/11 build_rpath/prog.cc
+++ b/test cases/unit/10 build_rpath/prog.cc
diff --git a/test cases/unit/11 build_rpath/sub/meson.build b/test cases/unit/10 build_rpath/sub/meson.build
index 6879ec6..6879ec6 100644
--- a/test cases/unit/11 build_rpath/sub/meson.build
+++ b/test cases/unit/10 build_rpath/sub/meson.build
diff --git a/test cases/unit/11 build_rpath/sub/stuff.c b/test cases/unit/10 build_rpath/sub/stuff.c
index d56d8b0..d56d8b0 100644
--- a/test cases/unit/11 build_rpath/sub/stuff.c
+++ b/test cases/unit/10 build_rpath/sub/stuff.c
diff --git a/test cases/unit/12 cross prog/meson.build b/test cases/unit/11 cross prog/meson.build
index a7adeb2..a7adeb2 100644
--- a/test cases/unit/12 cross prog/meson.build
+++ b/test cases/unit/11 cross prog/meson.build
diff --git a/test cases/unit/12 cross prog/some_cross_tool.py b/test cases/unit/11 cross prog/some_cross_tool.py
index 1edd10f..1edd10f 100755
--- a/test cases/unit/12 cross prog/some_cross_tool.py
+++ b/test cases/unit/11 cross prog/some_cross_tool.py
diff --git a/test cases/unit/12 cross prog/sometool.py b/test cases/unit/11 cross prog/sometool.py
index 4c0e3b1..4c0e3b1 100755
--- a/test cases/unit/12 cross prog/sometool.py
+++ b/test cases/unit/11 cross prog/sometool.py
diff --git a/test cases/unit/13 promote/meson.build b/test cases/unit/12 promote/meson.build
index 066cf36..066cf36 100644
--- a/test cases/unit/13 promote/meson.build
+++ b/test cases/unit/12 promote/meson.build
diff --git a/test cases/unit/13 promote/subprojects/s1/meson.build b/test cases/unit/12 promote/subprojects/s1/meson.build
index 88c467b..88c467b 100644
--- a/test cases/unit/13 promote/subprojects/s1/meson.build
+++ b/test cases/unit/12 promote/subprojects/s1/meson.build
diff --git a/test cases/unit/13 promote/subprojects/s1/s1.c b/test cases/unit/12 promote/subprojects/s1/s1.c
index 7d1d775..7d1d775 100644
--- a/test cases/unit/13 promote/subprojects/s1/s1.c
+++ b/test cases/unit/12 promote/subprojects/s1/s1.c
diff --git a/test cases/unit/13 promote/subprojects/s1/subprojects/s3/meson.build b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/meson.build
index 894fe26..894fe26 100644
--- a/test cases/unit/13 promote/subprojects/s1/subprojects/s3/meson.build
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/meson.build
diff --git a/test cases/unit/13 promote/subprojects/s1/subprojects/s3/s3.c b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/s3.c
index 0166603..0166603 100644
--- a/test cases/unit/13 promote/subprojects/s1/subprojects/s3/s3.c
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/s3/s3.c
diff --git a/test cases/unit/13 promote/subprojects/s1/subprojects/scommon/meson.build b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/meson.build
index 231f275..231f275 100644
--- a/test cases/unit/13 promote/subprojects/s1/subprojects/scommon/meson.build
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/meson.build
diff --git a/test cases/unit/13 promote/subprojects/s1/subprojects/scommon/scommon_broken.c b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/scommon_broken.c
index 3665a9c..3665a9c 100644
--- a/test cases/unit/13 promote/subprojects/s1/subprojects/scommon/scommon_broken.c
+++ b/test cases/unit/12 promote/subprojects/s1/subprojects/scommon/scommon_broken.c
diff --git a/test cases/unit/13 promote/subprojects/s2/meson.build b/test cases/unit/12 promote/subprojects/s2/meson.build
index 32bcf8f..32bcf8f 100644
--- a/test cases/unit/13 promote/subprojects/s2/meson.build
+++ b/test cases/unit/12 promote/subprojects/s2/meson.build
diff --git a/test cases/unit/13 promote/subprojects/s2/s2.c b/test cases/unit/12 promote/subprojects/s2/s2.c
index 2a6d1e6..2a6d1e6 100644
--- a/test cases/unit/13 promote/subprojects/s2/s2.c
+++ b/test cases/unit/12 promote/subprojects/s2/s2.c
diff --git a/test cases/unit/13 promote/subprojects/s2/subprojects/athing.wrap b/test cases/unit/12 promote/subprojects/s2/subprojects/athing.wrap
index 09ba4e8..09ba4e8 100644
--- a/test cases/unit/13 promote/subprojects/s2/subprojects/athing.wrap
+++ b/test cases/unit/12 promote/subprojects/s2/subprojects/athing.wrap
diff --git a/test cases/unit/13 promote/subprojects/s2/subprojects/scommon/meson.build b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/meson.build
index e0d8c7d..e0d8c7d 100644
--- a/test cases/unit/13 promote/subprojects/s2/subprojects/scommon/meson.build
+++ b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/meson.build
diff --git a/test cases/unit/13 promote/subprojects/s2/subprojects/scommon/scommon_ok.c b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/scommon_ok.c
index 652f4eb..652f4eb 100644
--- a/test cases/unit/13 promote/subprojects/s2/subprojects/scommon/scommon_ok.c
+++ b/test cases/unit/12 promote/subprojects/s2/subprojects/scommon/scommon_ok.c
diff --git a/test cases/unit/13 testsetup selection/main.c b/test cases/unit/14 testsetup selection/main.c
index cb3f748..cb3f748 100644
--- a/test cases/unit/13 testsetup selection/main.c
+++ b/test cases/unit/14 testsetup selection/main.c
diff --git a/test cases/unit/13 testsetup selection/meson.build b/test cases/unit/14 testsetup selection/meson.build
index ae996c5..ae996c5 100644
--- a/test cases/unit/13 testsetup selection/meson.build
+++ b/test cases/unit/14 testsetup selection/meson.build
diff --git a/test cases/unit/13 testsetup selection/subprojects/bar/bar.c b/test cases/unit/14 testsetup selection/subprojects/bar/bar.c
index cb3f748..cb3f748 100644
--- a/test cases/unit/13 testsetup selection/subprojects/bar/bar.c
+++ b/test cases/unit/14 testsetup selection/subprojects/bar/bar.c
diff --git a/test cases/unit/13 testsetup selection/subprojects/bar/meson.build b/test cases/unit/14 testsetup selection/subprojects/bar/meson.build
index 1155a88..1155a88 100644
--- a/test cases/unit/13 testsetup selection/subprojects/bar/meson.build
+++ b/test cases/unit/14 testsetup selection/subprojects/bar/meson.build
diff --git a/test cases/unit/13 testsetup selection/subprojects/foo/foo.c b/test cases/unit/14 testsetup selection/subprojects/foo/foo.c
index cb3f748..cb3f748 100644
--- a/test cases/unit/13 testsetup selection/subprojects/foo/foo.c
+++ b/test cases/unit/14 testsetup selection/subprojects/foo/foo.c
diff --git a/test cases/unit/13 testsetup selection/subprojects/foo/meson.build b/test cases/unit/14 testsetup selection/subprojects/foo/meson.build
index 2eef840..2eef840 100644
--- a/test cases/unit/13 testsetup selection/subprojects/foo/meson.build
+++ b/test cases/unit/14 testsetup selection/subprojects/foo/meson.build
diff --git a/test cases/unit/14 prebuilt object/main.c b/test cases/unit/15 prebuilt object/main.c
index 480bda5..480bda5 100644
--- a/test cases/unit/14 prebuilt object/main.c
+++ b/test cases/unit/15 prebuilt object/main.c
diff --git a/test cases/unit/14 prebuilt object/meson.build b/test cases/unit/15 prebuilt object/meson.build
index 92f966b..92f966b 100644
--- a/test cases/unit/14 prebuilt object/meson.build
+++ b/test cases/unit/15 prebuilt object/meson.build
diff --git a/test cases/unit/14 prebuilt object/source.c b/test cases/unit/15 prebuilt object/source.c
index f39b4f3..f39b4f3 100644
--- a/test cases/unit/14 prebuilt object/source.c
+++ b/test cases/unit/15 prebuilt object/source.c
diff --git a/test cases/unit/15 prebuilt static/libdir/best.c b/test cases/unit/16 prebuilt static/libdir/best.c
index ab774e1..ab774e1 100644
--- a/test cases/unit/15 prebuilt static/libdir/best.c
+++ b/test cases/unit/16 prebuilt static/libdir/best.c
diff --git a/test cases/unit/15 prebuilt static/libdir/best.h b/test cases/unit/16 prebuilt static/libdir/best.h
index 063017f..063017f 100644
--- a/test cases/unit/15 prebuilt static/libdir/best.h
+++ b/test cases/unit/16 prebuilt static/libdir/best.h
diff --git a/test cases/unit/15 prebuilt static/libdir/meson.build b/test cases/unit/16 prebuilt static/libdir/meson.build
index 8d74ccf..8d74ccf 100644
--- a/test cases/unit/15 prebuilt static/libdir/meson.build
+++ b/test cases/unit/16 prebuilt static/libdir/meson.build
diff --git a/test cases/unit/15 prebuilt static/main.c b/test cases/unit/16 prebuilt static/main.c
index d172625..d172625 100644
--- a/test cases/unit/15 prebuilt static/main.c
+++ b/test cases/unit/16 prebuilt static/main.c
diff --git a/test cases/unit/15 prebuilt static/meson.build b/test cases/unit/16 prebuilt static/meson.build
index 9ea1d0d..9ea1d0d 100644
--- a/test cases/unit/15 prebuilt static/meson.build
+++ b/test cases/unit/16 prebuilt static/meson.build
diff --git a/test cases/unit/16 prebuilt shared/alexandria.c b/test cases/unit/17 prebuilt shared/alexandria.c
index 2d6b848..2d6b848 100644
--- a/test cases/unit/16 prebuilt shared/alexandria.c
+++ b/test cases/unit/17 prebuilt shared/alexandria.c
diff --git a/test cases/unit/16 prebuilt shared/alexandria.h b/test cases/unit/17 prebuilt shared/alexandria.h
index 6e507c5..6e507c5 100644
--- a/test cases/unit/16 prebuilt shared/alexandria.h
+++ b/test cases/unit/17 prebuilt shared/alexandria.h
diff --git a/test cases/unit/16 prebuilt shared/another_visitor.c b/test cases/unit/17 prebuilt shared/another_visitor.c
index 18e5f15..18e5f15 100644
--- a/test cases/unit/16 prebuilt shared/another_visitor.c
+++ b/test cases/unit/17 prebuilt shared/another_visitor.c
diff --git a/test cases/unit/16 prebuilt shared/meson.build b/test cases/unit/17 prebuilt shared/meson.build
index 41c11c6..41c11c6 100644
--- a/test cases/unit/16 prebuilt shared/meson.build
+++ b/test cases/unit/17 prebuilt shared/meson.build
diff --git a/test cases/unit/16 prebuilt shared/patron.c b/test cases/unit/17 prebuilt shared/patron.c
index 82d9678..82d9678 100644
--- a/test cases/unit/16 prebuilt shared/patron.c
+++ b/test cases/unit/17 prebuilt shared/patron.c
diff --git a/test cases/unit/17 pkgconfig static/foo.c b/test cases/unit/18 pkgconfig static/foo.c
index bf7fbdd..bf7fbdd 100644
--- a/test cases/unit/17 pkgconfig static/foo.c
+++ b/test cases/unit/18 pkgconfig static/foo.c
diff --git a/test cases/unit/17 pkgconfig static/foo.pc.in b/test cases/unit/18 pkgconfig static/foo.pc.in
index b26c0b0..b26c0b0 100644
--- a/test cases/unit/17 pkgconfig static/foo.pc.in
+++ b/test cases/unit/18 pkgconfig static/foo.pc.in
diff --git a/test cases/unit/17 pkgconfig static/include/foo.h b/test cases/unit/18 pkgconfig static/include/foo.h
index 88ef554..88ef554 100644
--- a/test cases/unit/17 pkgconfig static/include/foo.h
+++ b/test cases/unit/18 pkgconfig static/include/foo.h
diff --git a/test cases/unit/17 pkgconfig static/main.c b/test cases/unit/18 pkgconfig static/main.c
index cc4649f..cc4649f 100644
--- a/test cases/unit/17 pkgconfig static/main.c
+++ b/test cases/unit/18 pkgconfig static/main.c
diff --git a/test cases/unit/17 pkgconfig static/meson.build b/test cases/unit/18 pkgconfig static/meson.build
index d1b0fd5..d1b0fd5 100644
--- a/test cases/unit/17 pkgconfig static/meson.build
+++ b/test cases/unit/18 pkgconfig static/meson.build
diff --git a/test cases/unit/18 array option/meson.build b/test cases/unit/19 array option/meson.build
index 2b44181..2b44181 100644
--- a/test cases/unit/18 array option/meson.build
+++ b/test cases/unit/19 array option/meson.build
diff --git a/test cases/unit/18 array option/meson_options.txt b/test cases/unit/19 array option/meson_options.txt
index 0ccdcc4..0ccdcc4 100644
--- a/test cases/unit/18 array option/meson_options.txt
+++ b/test cases/unit/19 array option/meson_options.txt
diff --git a/test cases/unit/21 warning location/a.c b/test cases/unit/22 warning location/a.c
index e69de29..e69de29 100644
--- a/test cases/unit/21 warning location/a.c
+++ b/test cases/unit/22 warning location/a.c
diff --git a/test cases/unit/21 warning location/b.c b/test cases/unit/22 warning location/b.c
index e69de29..e69de29 100644
--- a/test cases/unit/21 warning location/b.c
+++ b/test cases/unit/22 warning location/b.c
diff --git a/test cases/unit/21 warning location/conf.in b/test cases/unit/22 warning location/conf.in
index a2903ed..a2903ed 100644
--- a/test cases/unit/21 warning location/conf.in
+++ b/test cases/unit/22 warning location/conf.in
diff --git a/test cases/unit/21 warning location/main.c b/test cases/unit/22 warning location/main.c
index e69de29..e69de29 100644
--- a/test cases/unit/21 warning location/main.c
+++ b/test cases/unit/22 warning location/main.c
diff --git a/test cases/unit/21 warning location/meson.build b/test cases/unit/22 warning location/meson.build
index 52a93d1..52a93d1 100644
--- a/test cases/unit/21 warning location/meson.build
+++ b/test cases/unit/22 warning location/meson.build
diff --git a/test cases/unit/21 warning location/sub/c.c b/test cases/unit/22 warning location/sub/c.c
index e69de29..e69de29 100644
--- a/test cases/unit/21 warning location/sub/c.c
+++ b/test cases/unit/22 warning location/sub/c.c
diff --git a/test cases/unit/21 warning location/sub/d.c b/test cases/unit/22 warning location/sub/d.c
index e69de29..e69de29 100644
--- a/test cases/unit/21 warning location/sub/d.c
+++ b/test cases/unit/22 warning location/sub/d.c
diff --git a/test cases/unit/21 warning location/sub/meson.build b/test cases/unit/22 warning location/sub/meson.build
index 27f6778..27f6778 100644
--- a/test cases/unit/21 warning location/sub/meson.build
+++ b/test cases/unit/22 warning location/sub/meson.build
diff --git a/test cases/unit/21 warning location/sub/sub.c b/test cases/unit/22 warning location/sub/sub.c
index e69de29..e69de29 100644
--- a/test cases/unit/21 warning location/sub/sub.c
+++ b/test cases/unit/22 warning location/sub/sub.c
diff --git a/test cases/unit/22 unfound pkgconfig/meson.build b/test cases/unit/23 unfound pkgconfig/meson.build
index 1285c0a..1285c0a 100644
--- a/test cases/unit/22 unfound pkgconfig/meson.build
+++ b/test cases/unit/23 unfound pkgconfig/meson.build
diff --git a/test cases/unit/22 unfound pkgconfig/some.c b/test cases/unit/23 unfound pkgconfig/some.c
index fb765fb..fb765fb 100644
--- a/test cases/unit/22 unfound pkgconfig/some.c
+++ b/test cases/unit/23 unfound pkgconfig/some.c
diff --git a/test cases/unit/23 compiler run_command/meson.build b/test cases/unit/24 compiler run_command/meson.build
index 6d9e0b9..6d9e0b9 100644
--- a/test cases/unit/23 compiler run_command/meson.build
+++ b/test cases/unit/24 compiler run_command/meson.build
diff --git a/test cases/unit/23 non-permitted kwargs/meson.build b/test cases/unit/25 non-permitted kwargs/meson.build
index 9f7dc1f..9f7dc1f 100644
--- a/test cases/unit/23 non-permitted kwargs/meson.build
+++ b/test cases/unit/25 non-permitted kwargs/meson.build
diff --git a/test cases/unit/24 install umask/datafile.cat b/test cases/unit/26 install umask/datafile.cat
index 53d81fc..53d81fc 100644
--- a/test cases/unit/24 install umask/datafile.cat
+++ b/test cases/unit/26 install umask/datafile.cat
diff --git a/test cases/unit/24 install umask/meson.build b/test cases/unit/26 install umask/meson.build
index 225f71c..225f71c 100644
--- a/test cases/unit/24 install umask/meson.build
+++ b/test cases/unit/26 install umask/meson.build
diff --git a/test cases/unit/24 install umask/myinstall.py b/test cases/unit/26 install umask/myinstall.py
index db6a51c..db6a51c 100644
--- a/test cases/unit/24 install umask/myinstall.py
+++ b/test cases/unit/26 install umask/myinstall.py
diff --git a/test cases/unit/24 install umask/prog.1 b/test cases/unit/26 install umask/prog.1
index 08ef7da..08ef7da 100644
--- a/test cases/unit/24 install umask/prog.1
+++ b/test cases/unit/26 install umask/prog.1
diff --git a/test cases/unit/24 install umask/prog.c b/test cases/unit/26 install umask/prog.c
index 0f0061d..0f0061d 100644
--- a/test cases/unit/24 install umask/prog.c
+++ b/test cases/unit/26 install umask/prog.c
diff --git a/test cases/unit/24 install umask/sample.h b/test cases/unit/26 install umask/sample.h
index dc030da..dc030da 100644
--- a/test cases/unit/24 install umask/sample.h
+++ b/test cases/unit/26 install umask/sample.h
diff --git a/test cases/unit/24 install umask/subdir/datafile.dog b/test cases/unit/26 install umask/subdir/datafile.dog
index 7a5bcb7..7a5bcb7 100644
--- a/test cases/unit/24 install umask/subdir/datafile.dog
+++ b/test cases/unit/26 install umask/subdir/datafile.dog
diff --git a/test cases/unit/24 install umask/subdir/sayhello b/test cases/unit/26 install umask/subdir/sayhello
index 1e1c90a..1e1c90a 100755
--- a/test cases/unit/24 install umask/subdir/sayhello
+++ b/test cases/unit/26 install umask/subdir/sayhello
diff --git a/test cases/unit/24 pkgconfig usage/dependee/meson.build b/test cases/unit/27 pkgconfig usage/dependee/meson.build
index beb446c..beb446c 100644
--- a/test cases/unit/24 pkgconfig usage/dependee/meson.build
+++ b/test cases/unit/27 pkgconfig usage/dependee/meson.build
diff --git a/test cases/unit/24 pkgconfig usage/dependee/pkguser.c b/test cases/unit/27 pkgconfig usage/dependee/pkguser.c
index 2bff316..2bff316 100644
--- a/test cases/unit/24 pkgconfig usage/dependee/pkguser.c
+++ b/test cases/unit/27 pkgconfig usage/dependee/pkguser.c
diff --git a/test cases/unit/24 pkgconfig usage/dependency/meson.build b/test cases/unit/27 pkgconfig usage/dependency/meson.build
index 89fae8e..89fae8e 100644
--- a/test cases/unit/24 pkgconfig usage/dependency/meson.build
+++ b/test cases/unit/27 pkgconfig usage/dependency/meson.build
diff --git a/test cases/unit/24 pkgconfig usage/dependency/pkgdep.c b/test cases/unit/27 pkgconfig usage/dependency/pkgdep.c
index bd5c3f4..bd5c3f4 100644
--- a/test cases/unit/24 pkgconfig usage/dependency/pkgdep.c
+++ b/test cases/unit/27 pkgconfig usage/dependency/pkgdep.c
diff --git a/test cases/unit/24 pkgconfig usage/dependency/pkgdep.h b/test cases/unit/27 pkgconfig usage/dependency/pkgdep.h
index 16d622e..16d622e 100644
--- a/test cases/unit/24 pkgconfig usage/dependency/pkgdep.h
+++ b/test cases/unit/27 pkgconfig usage/dependency/pkgdep.h
diff --git a/test cases/unit/24 pkgconfig usage/dependency/privatelib.c b/test cases/unit/27 pkgconfig usage/dependency/privatelib.c
index 71d2179..71d2179 100644
--- a/test cases/unit/24 pkgconfig usage/dependency/privatelib.c
+++ b/test cases/unit/27 pkgconfig usage/dependency/privatelib.c
diff --git a/test cases/unit/25 ndebug if-release/main.c b/test cases/unit/28 ndebug if-release/main.c
index 70b3d04..70b3d04 100644
--- a/test cases/unit/25 ndebug if-release/main.c
+++ b/test cases/unit/28 ndebug if-release/main.c
diff --git a/test cases/unit/25 ndebug if-release/meson.build b/test cases/unit/28 ndebug if-release/meson.build
index 4af2406..4af2406 100644
--- a/test cases/unit/25 ndebug if-release/meson.build
+++ b/test cases/unit/28 ndebug if-release/meson.build
diff --git a/test cases/unit/26 guessed linker dependencies/exe/app.c b/test cases/unit/29 guessed linker dependencies/exe/app.c
index 1031a42..1031a42 100644
--- a/test cases/unit/26 guessed linker dependencies/exe/app.c
+++ b/test cases/unit/29 guessed linker dependencies/exe/app.c
diff --git a/test cases/unit/26 guessed linker dependencies/exe/meson.build b/test cases/unit/29 guessed linker dependencies/exe/meson.build
index 8bb1bd7..8bb1bd7 100644
--- a/test cases/unit/26 guessed linker dependencies/exe/meson.build
+++ b/test cases/unit/29 guessed linker dependencies/exe/meson.build
diff --git a/test cases/unit/26 guessed linker dependencies/lib/lib.c b/test cases/unit/29 guessed linker dependencies/lib/lib.c
index 1a8f94d..1a8f94d 100644
--- a/test cases/unit/26 guessed linker dependencies/lib/lib.c
+++ b/test cases/unit/29 guessed linker dependencies/lib/lib.c
diff --git a/test cases/unit/26 guessed linker dependencies/lib/meson.build b/test cases/unit/29 guessed linker dependencies/lib/meson.build
index 36df112..36df112 100644
--- a/test cases/unit/26 guessed linker dependencies/lib/meson.build
+++ b/test cases/unit/29 guessed linker dependencies/lib/meson.build
diff --git a/test cases/unit/26 guessed linker dependencies/lib/meson_options.txt b/test cases/unit/29 guessed linker dependencies/lib/meson_options.txt
index 2123e45..2123e45 100644
--- a/test cases/unit/26 guessed linker dependencies/lib/meson_options.txt
+++ b/test cases/unit/29 guessed linker dependencies/lib/meson_options.txt
diff --git a/test cases/unit/26 shared_mod linking/libfile.c b/test cases/unit/30 shared_mod linking/libfile.c
index 44f7667..44f7667 100644
--- a/test cases/unit/26 shared_mod linking/libfile.c
+++ b/test cases/unit/30 shared_mod linking/libfile.c
diff --git a/test cases/unit/26 shared_mod linking/main.c b/test cases/unit/30 shared_mod linking/main.c
index 12f9c98..12f9c98 100644
--- a/test cases/unit/26 shared_mod linking/main.c
+++ b/test cases/unit/30 shared_mod linking/main.c
diff --git a/test cases/unit/26 shared_mod linking/meson.build b/test cases/unit/30 shared_mod linking/meson.build
index 994a5d3..994a5d3 100644
--- a/test cases/unit/26 shared_mod linking/meson.build
+++ b/test cases/unit/30 shared_mod linking/meson.build
diff --git a/test cases/unit/27 forcefallback/meson.build b/test cases/unit/31 forcefallback/meson.build
index 8d84a60..8d84a60 100644
--- a/test cases/unit/27 forcefallback/meson.build
+++ b/test cases/unit/31 forcefallback/meson.build
diff --git a/test cases/unit/27 forcefallback/subprojects/notzlib/meson.build b/test cases/unit/31 forcefallback/subprojects/notzlib/meson.build
index 254a136..254a136 100644
--- a/test cases/unit/27 forcefallback/subprojects/notzlib/meson.build
+++ b/test cases/unit/31 forcefallback/subprojects/notzlib/meson.build
diff --git a/test cases/unit/27 forcefallback/subprojects/notzlib/notzlib.c b/test cases/unit/31 forcefallback/subprojects/notzlib/notzlib.c
index c3b6bf9..c3b6bf9 100644
--- a/test cases/unit/27 forcefallback/subprojects/notzlib/notzlib.c
+++ b/test cases/unit/31 forcefallback/subprojects/notzlib/notzlib.c
diff --git a/test cases/unit/27 forcefallback/subprojects/notzlib/notzlib.h b/test cases/unit/31 forcefallback/subprojects/notzlib/notzlib.h
index 695921d..695921d 100644
--- a/test cases/unit/27 forcefallback/subprojects/notzlib/notzlib.h
+++ b/test cases/unit/31 forcefallback/subprojects/notzlib/notzlib.h
diff --git a/test cases/unit/27 forcefallback/test_not_zlib.c b/test cases/unit/31 forcefallback/test_not_zlib.c
index 36256af..36256af 100644
--- a/test cases/unit/27 forcefallback/test_not_zlib.c
+++ b/test cases/unit/31 forcefallback/test_not_zlib.c
diff --git a/test cases/unit/28 pkgconfig use libraries/app/app.c b/test cases/unit/32 pkgconfig use libraries/app/app.c
index b271a9e..b271a9e 100644
--- a/test cases/unit/28 pkgconfig use libraries/app/app.c
+++ b/test cases/unit/32 pkgconfig use libraries/app/app.c
diff --git a/test cases/unit/28 pkgconfig use libraries/app/meson.build b/test cases/unit/32 pkgconfig use libraries/app/meson.build
index 3d85a32..3d85a32 100644
--- a/test cases/unit/28 pkgconfig use libraries/app/meson.build
+++ b/test cases/unit/32 pkgconfig use libraries/app/meson.build
diff --git a/test cases/unit/28 pkgconfig use libraries/lib/liba.c b/test cases/unit/32 pkgconfig use libraries/lib/liba.c
index e98906b..e98906b 100644
--- a/test cases/unit/28 pkgconfig use libraries/lib/liba.c
+++ b/test cases/unit/32 pkgconfig use libraries/lib/liba.c
diff --git a/test cases/unit/28 pkgconfig use libraries/lib/libb.c b/test cases/unit/32 pkgconfig use libraries/lib/libb.c
index 3160e5f..3160e5f 100644
--- a/test cases/unit/28 pkgconfig use libraries/lib/libb.c
+++ b/test cases/unit/32 pkgconfig use libraries/lib/libb.c
diff --git a/test cases/unit/28 pkgconfig use libraries/lib/meson.build b/test cases/unit/32 pkgconfig use libraries/lib/meson.build
index 748adf4..748adf4 100644
--- a/test cases/unit/28 pkgconfig use libraries/lib/meson.build
+++ b/test cases/unit/32 pkgconfig use libraries/lib/meson.build
diff --git a/test cases/unit/29 cross file overrides always args/meson.build b/test cases/unit/33 cross file overrides always args/meson.build
index ef6556e..ef6556e 100644
--- a/test cases/unit/29 cross file overrides always args/meson.build
+++ b/test cases/unit/33 cross file overrides always args/meson.build
diff --git a/test cases/unit/29 cross file overrides always args/test.c b/test cases/unit/33 cross file overrides always args/test.c
index 315f92e..315f92e 100644
--- a/test cases/unit/29 cross file overrides always args/test.c
+++ b/test cases/unit/33 cross file overrides always args/test.c
diff --git a/test cases/unit/29 cross file overrides always args/ubuntu-armhf-overrides.txt b/test cases/unit/33 cross file overrides always args/ubuntu-armhf-overrides.txt
index a00a7d1..a00a7d1 100644
--- a/test cases/unit/29 cross file overrides always args/ubuntu-armhf-overrides.txt
+++ b/test cases/unit/33 cross file overrides always args/ubuntu-armhf-overrides.txt
diff --git a/test cases/unit/30 command line/meson.build b/test cases/unit/34 command line/meson.build
index 6207ca5..6207ca5 100644
--- a/test cases/unit/30 command line/meson.build
+++ b/test cases/unit/34 command line/meson.build
diff --git a/test cases/unit/30 command line/meson_options.txt b/test cases/unit/34 command line/meson_options.txt
index 7acc112..7acc112 100644
--- a/test cases/unit/30 command line/meson_options.txt
+++ b/test cases/unit/34 command line/meson_options.txt
diff --git a/test cases/unit/30 command line/subprojects/subp/meson.build b/test cases/unit/34 command line/subprojects/subp/meson.build
index cf79fa4..cf79fa4 100644
--- a/test cases/unit/30 command line/subprojects/subp/meson.build
+++ b/test cases/unit/34 command line/subprojects/subp/meson.build
diff --git a/test cases/unit/30 command line/subprojects/subp/meson_options.txt b/test cases/unit/34 command line/subprojects/subp/meson_options.txt
index 8c50615..8c50615 100644
--- a/test cases/unit/30 command line/subprojects/subp/meson_options.txt
+++ b/test cases/unit/34 command line/subprojects/subp/meson_options.txt
diff --git a/test cases/unit/30 mixed command line args/meson.build b/test cases/unit/35 mixed command line args/meson.build
index af5cdc7..af5cdc7 100644
--- a/test cases/unit/30 mixed command line args/meson.build
+++ b/test cases/unit/35 mixed command line args/meson.build
diff --git a/test cases/unit/30 mixed command line args/meson_options.txt b/test cases/unit/35 mixed command line args/meson_options.txt
index 5a4bc22..5a4bc22 100644
--- a/test cases/unit/30 mixed command line args/meson_options.txt
+++ b/test cases/unit/35 mixed command line args/meson_options.txt
diff --git a/test cases/unit/31 pkgconfig format/meson.build b/test cases/unit/36 pkgconfig format/meson.build
index ea00f5d..ea00f5d 100644
--- a/test cases/unit/31 pkgconfig format/meson.build
+++ b/test cases/unit/36 pkgconfig format/meson.build
diff --git a/test cases/unit/31 pkgconfig format/somelib.c b/test cases/unit/36 pkgconfig format/somelib.c
index 0558024..0558024 100644
--- a/test cases/unit/31 pkgconfig format/somelib.c
+++ b/test cases/unit/36 pkgconfig format/somelib.c
diff --git a/test cases/unit/31 pkgconfig format/someret.c b/test cases/unit/36 pkgconfig format/someret.c
index 69f4299..69f4299 100644
--- a/test cases/unit/31 pkgconfig format/someret.c
+++ b/test cases/unit/36 pkgconfig format/someret.c
diff --git a/test cases/unit/32 python extmodule/blaster.py b/test cases/unit/37 python extmodule/blaster.py
index 163b6d4..163b6d4 100755
--- a/test cases/unit/32 python extmodule/blaster.py
+++ b/test cases/unit/37 python extmodule/blaster.py
diff --git a/test cases/unit/32 python extmodule/ext/meson.build b/test cases/unit/37 python extmodule/ext/meson.build
index b13bb32..b13bb32 100644
--- a/test cases/unit/32 python extmodule/ext/meson.build
+++ b/test cases/unit/37 python extmodule/ext/meson.build
diff --git a/test cases/unit/32 python extmodule/ext/tachyon_module.c b/test cases/unit/37 python extmodule/ext/tachyon_module.c
index 68eda53..68eda53 100644
--- a/test cases/unit/32 python extmodule/ext/tachyon_module.c
+++ b/test cases/unit/37 python extmodule/ext/tachyon_module.c
diff --git a/test cases/unit/32 python extmodule/meson.build b/test cases/unit/37 python extmodule/meson.build
index 4798654..4798654 100644
--- a/test cases/unit/32 python extmodule/meson.build
+++ b/test cases/unit/37 python extmodule/meson.build
diff --git a/test cases/unit/32 python extmodule/meson_options.txt b/test cases/unit/37 python extmodule/meson_options.txt
index b8f645d..b8f645d 100644
--- a/test cases/unit/32 python extmodule/meson_options.txt
+++ b/test cases/unit/37 python extmodule/meson_options.txt
diff --git a/test cases/unit/33 external, internal library rpath/built library/bar.c b/test cases/unit/38 external, internal library rpath/built library/bar.c
index 4f5662e..4f5662e 100644
--- a/test cases/unit/33 external, internal library rpath/built library/bar.c
+++ b/test cases/unit/38 external, internal library rpath/built library/bar.c
diff --git a/test cases/unit/33 external, internal library rpath/built library/meson.build b/test cases/unit/38 external, internal library rpath/built library/meson.build
index 2b422f4..2b422f4 100644
--- a/test cases/unit/33 external, internal library rpath/built library/meson.build
+++ b/test cases/unit/38 external, internal library rpath/built library/meson.build
diff --git a/test cases/unit/33 external, internal library rpath/built library/meson_options.txt b/test cases/unit/38 external, internal library rpath/built library/meson_options.txt
index aa1d2ec..aa1d2ec 100644
--- a/test cases/unit/33 external, internal library rpath/built library/meson_options.txt
+++ b/test cases/unit/38 external, internal library rpath/built library/meson_options.txt
diff --git a/test cases/unit/33 external, internal library rpath/built library/prog.c b/test cases/unit/38 external, internal library rpath/built library/prog.c
index e3d4cf6..e3d4cf6 100644
--- a/test cases/unit/33 external, internal library rpath/built library/prog.c
+++ b/test cases/unit/38 external, internal library rpath/built library/prog.c
diff --git a/test cases/unit/33 external, internal library rpath/external library/faa.c b/test cases/unit/38 external, internal library rpath/external library/faa.c
index 4733575..4733575 100644
--- a/test cases/unit/33 external, internal library rpath/external library/faa.c
+++ b/test cases/unit/38 external, internal library rpath/external library/faa.c
diff --git a/test cases/unit/33 external, internal library rpath/external library/foo.c b/test cases/unit/38 external, internal library rpath/external library/foo.c
index a34e4a8..a34e4a8 100644
--- a/test cases/unit/33 external, internal library rpath/external library/foo.c
+++ b/test cases/unit/38 external, internal library rpath/external library/foo.c
diff --git a/test cases/unit/33 external, internal library rpath/external library/meson.build b/test cases/unit/38 external, internal library rpath/external library/meson.build
index 6dcc97e..6dcc97e 100644
--- a/test cases/unit/33 external, internal library rpath/external library/meson.build
+++ b/test cases/unit/38 external, internal library rpath/external library/meson.build
diff --git a/test cases/unit/34 featurenew subprojects/meson.build b/test cases/unit/39 featurenew subprojects/meson.build
index 27898cd..27898cd 100644
--- a/test cases/unit/34 featurenew subprojects/meson.build
+++ b/test cases/unit/39 featurenew subprojects/meson.build
diff --git a/test cases/unit/34 featurenew subprojects/subprojects/bar/meson.build b/test cases/unit/39 featurenew subprojects/subprojects/bar/meson.build
index 712a125..712a125 100644
--- a/test cases/unit/34 featurenew subprojects/subprojects/bar/meson.build
+++ b/test cases/unit/39 featurenew subprojects/subprojects/bar/meson.build
diff --git a/test cases/unit/34 featurenew subprojects/subprojects/foo/meson.build b/test cases/unit/39 featurenew subprojects/subprojects/foo/meson.build
index 0ef4472..0ef4472 100644
--- a/test cases/unit/34 featurenew subprojects/subprojects/foo/meson.build
+++ b/test cases/unit/39 featurenew subprojects/subprojects/foo/meson.build
diff --git a/test cases/unit/35 rpath order/meson.build b/test cases/unit/40 rpath order/meson.build
index a722894..a722894 100644
--- a/test cases/unit/35 rpath order/meson.build
+++ b/test cases/unit/40 rpath order/meson.build
diff --git a/test cases/unit/35 rpath order/myexe.c b/test cases/unit/40 rpath order/myexe.c
index 03b2213..03b2213 100644
--- a/test cases/unit/35 rpath order/myexe.c
+++ b/test cases/unit/40 rpath order/myexe.c
diff --git a/test cases/unit/35 rpath order/subprojects/sub1/lib.c b/test cases/unit/40 rpath order/subprojects/sub1/lib.c
index e69de29..e69de29 100644
--- a/test cases/unit/35 rpath order/subprojects/sub1/lib.c
+++ b/test cases/unit/40 rpath order/subprojects/sub1/lib.c
diff --git a/test cases/unit/35 rpath order/subprojects/sub1/meson.build b/test cases/unit/40 rpath order/subprojects/sub1/meson.build
index 4dd5d08..4dd5d08 100644
--- a/test cases/unit/35 rpath order/subprojects/sub1/meson.build
+++ b/test cases/unit/40 rpath order/subprojects/sub1/meson.build
diff --git a/test cases/unit/35 rpath order/subprojects/sub2/lib.c b/test cases/unit/40 rpath order/subprojects/sub2/lib.c
index e69de29..e69de29 100644
--- a/test cases/unit/35 rpath order/subprojects/sub2/lib.c
+++ b/test cases/unit/40 rpath order/subprojects/sub2/lib.c
diff --git a/test cases/unit/35 rpath order/subprojects/sub2/meson.build b/test cases/unit/40 rpath order/subprojects/sub2/meson.build
index bc3510d..bc3510d 100644
--- a/test cases/unit/35 rpath order/subprojects/sub2/meson.build
+++ b/test cases/unit/40 rpath order/subprojects/sub2/meson.build
diff --git a/test cases/unit/36 dep order/lib1.c b/test cases/unit/41 dep order/lib1.c
index e69de29..e69de29 100644
--- a/test cases/unit/36 dep order/lib1.c
+++ b/test cases/unit/41 dep order/lib1.c
diff --git a/test cases/unit/36 dep order/lib2.c b/test cases/unit/41 dep order/lib2.c
index e69de29..e69de29 100644
--- a/test cases/unit/36 dep order/lib2.c
+++ b/test cases/unit/41 dep order/lib2.c
diff --git a/test cases/unit/36 dep order/meson.build b/test cases/unit/41 dep order/meson.build
index 17cf9df..17cf9df 100644
--- a/test cases/unit/36 dep order/meson.build
+++ b/test cases/unit/41 dep order/meson.build
diff --git a/test cases/unit/36 dep order/myexe.c b/test cases/unit/41 dep order/myexe.c
index 8f4c045..8f4c045 100644
--- a/test cases/unit/36 dep order/myexe.c
+++ b/test cases/unit/41 dep order/myexe.c
diff --git a/test cases/unit/9 -L -l order/first.pc b/test cases/unit/8 -L -l order/first.pc
index 3b811b2..3b811b2 100644
--- a/test cases/unit/9 -L -l order/first.pc
+++ b/test cases/unit/8 -L -l order/first.pc
diff --git a/test cases/unit/9 -L -l order/meson.build b/test cases/unit/8 -L -l order/meson.build
index cfcf033..cfcf033 100644
--- a/test cases/unit/9 -L -l order/meson.build
+++ b/test cases/unit/8 -L -l order/meson.build
diff --git a/test cases/unit/9 -L -l order/prog.c b/test cases/unit/8 -L -l order/prog.c
index 3a16ac3..3a16ac3 100644
--- a/test cases/unit/9 -L -l order/prog.c
+++ b/test cases/unit/8 -L -l order/prog.c
diff --git a/test cases/unit/9 -L -l order/second.pc b/test cases/unit/8 -L -l order/second.pc
index 196824b..196824b 100644
--- a/test cases/unit/9 -L -l order/second.pc
+++ b/test cases/unit/8 -L -l order/second.pc
diff --git a/test cases/unit/10 d dedup/meson.build b/test cases/unit/9 d dedup/meson.build
index 08f3a6c..08f3a6c 100644
--- a/test cases/unit/10 d dedup/meson.build
+++ b/test cases/unit/9 d dedup/meson.build
diff --git a/test cases/unit/10 d dedup/prog.c b/test cases/unit/9 d dedup/prog.c
index 505f122..505f122 100644
--- a/test cases/unit/10 d dedup/prog.c
+++ b/test cases/unit/9 d dedup/prog.c
diff --git a/test cases/windows/11 vs module defs generated custom target/meson.build b/test cases/windows/10 vs module defs generated custom target/meson.build
index fe594c8..fe594c8 100644
--- a/test cases/windows/11 vs module defs generated custom target/meson.build
+++ b/test cases/windows/10 vs module defs generated custom target/meson.build
diff --git a/test cases/windows/10 vs module defs generated/prog.c b/test cases/windows/10 vs module defs generated custom target/prog.c
index f35f4a0..f35f4a0 100644
--- a/test cases/windows/10 vs module defs generated/prog.c
+++ b/test cases/windows/10 vs module defs generated custom target/prog.c
diff --git a/test cases/windows/11 vs module defs generated custom target/subdir/make_def.py b/test cases/windows/10 vs module defs generated custom target/subdir/make_def.py
index 50acfb5..50acfb5 100755
--- a/test cases/windows/11 vs module defs generated custom target/subdir/make_def.py
+++ b/test cases/windows/10 vs module defs generated custom target/subdir/make_def.py
diff --git a/test cases/windows/11 vs module defs generated custom target/subdir/meson.build b/test cases/windows/10 vs module defs generated custom target/subdir/meson.build
index c4ae33a..c4ae33a 100644
--- a/test cases/windows/11 vs module defs generated custom target/subdir/meson.build
+++ b/test cases/windows/10 vs module defs generated custom target/subdir/meson.build
diff --git a/test cases/windows/10 vs module defs generated/subdir/somedll.c b/test cases/windows/10 vs module defs generated custom target/subdir/somedll.c
index b23d8fe..b23d8fe 100644
--- a/test cases/windows/10 vs module defs generated/subdir/somedll.c
+++ b/test cases/windows/10 vs module defs generated custom target/subdir/somedll.c
diff --git a/test cases/windows/12 exe implib/installed_files.txt b/test cases/windows/11 exe implib/installed_files.txt
index bd2abe9..bd2abe9 100644
--- a/test cases/windows/12 exe implib/installed_files.txt
+++ b/test cases/windows/11 exe implib/installed_files.txt
diff --git a/test cases/windows/12 exe implib/meson.build b/test cases/windows/11 exe implib/meson.build
index 0a38ec1..0a38ec1 100644
--- a/test cases/windows/12 exe implib/meson.build
+++ b/test cases/windows/11 exe implib/meson.build
diff --git a/test cases/windows/12 exe implib/prog.c b/test cases/windows/11 exe implib/prog.c
index 6d5a9f5..6d5a9f5 100644
--- a/test cases/windows/12 exe implib/prog.c
+++ b/test cases/windows/11 exe implib/prog.c
diff --git a/test cases/windows/13 resources with custom targets/meson.build b/test cases/windows/12 resources with custom targets/meson.build
index b1e2b09..b1e2b09 100644
--- a/test cases/windows/13 resources with custom targets/meson.build
+++ b/test cases/windows/12 resources with custom targets/meson.build
diff --git a/test cases/windows/13 resources with custom targets/prog.c b/test cases/windows/12 resources with custom targets/prog.c
index 2bef6a2..2bef6a2 100644
--- a/test cases/windows/13 resources with custom targets/prog.c
+++ b/test cases/windows/12 resources with custom targets/prog.c
diff --git a/test cases/windows/13 resources with custom targets/res/gen-res.py b/test cases/windows/12 resources with custom targets/res/gen-res.py
index 2feb02f..2feb02f 100755
--- a/test cases/windows/13 resources with custom targets/res/gen-res.py
+++ b/test cases/windows/12 resources with custom targets/res/gen-res.py
diff --git a/test cases/windows/13 resources with custom targets/res/meson.build b/test cases/windows/12 resources with custom targets/res/meson.build
index 9797637..9797637 100644
--- a/test cases/windows/13 resources with custom targets/res/meson.build
+++ b/test cases/windows/12 resources with custom targets/res/meson.build
diff --git a/test cases/windows/13 resources with custom targets/res/myres.rc.in b/test cases/windows/12 resources with custom targets/res/myres.rc.in
index 0cff642..0cff642 100644
--- a/test cases/windows/13 resources with custom targets/res/myres.rc.in
+++ b/test cases/windows/12 resources with custom targets/res/myres.rc.in
diff --git a/test cases/windows/13 resources with custom targets/res/myres_static.rc b/test cases/windows/12 resources with custom targets/res/myres_static.rc
index 12838ae..12838ae 100644
--- a/test cases/windows/13 resources with custom targets/res/myres_static.rc
+++ b/test cases/windows/12 resources with custom targets/res/myres_static.rc
diff --git a/test cases/windows/13 resources with custom targets/res/resource.h b/test cases/windows/12 resources with custom targets/res/resource.h
index e69de29..e69de29 100644
--- a/test cases/windows/13 resources with custom targets/res/resource.h
+++ b/test cases/windows/12 resources with custom targets/res/resource.h
diff --git a/test cases/windows/13 resources with custom targets/res/sample.ico b/test cases/windows/12 resources with custom targets/res/sample.ico
index 24bd3d9..24bd3d9 100644
--- a/test cases/windows/13 resources with custom targets/res/sample.ico
+++ b/test cases/windows/12 resources with custom targets/res/sample.ico
Binary files differ
diff --git a/test cases/windows/14 test argument extra paths/exe/main.c b/test cases/windows/13 test argument extra paths/exe/main.c
index 0ac9e38..0ac9e38 100644
--- a/test cases/windows/14 test argument extra paths/exe/main.c
+++ b/test cases/windows/13 test argument extra paths/exe/main.c
diff --git a/test cases/windows/14 test argument extra paths/exe/meson.build b/test cases/windows/13 test argument extra paths/exe/meson.build
index 138500a..138500a 100644
--- a/test cases/windows/14 test argument extra paths/exe/meson.build
+++ b/test cases/windows/13 test argument extra paths/exe/meson.build
diff --git a/test cases/windows/14 test argument extra paths/lib/foo.c b/test cases/windows/13 test argument extra paths/lib/foo.c
index 86b1a03..86b1a03 100644
--- a/test cases/windows/14 test argument extra paths/lib/foo.c
+++ b/test cases/windows/13 test argument extra paths/lib/foo.c
diff --git a/test cases/windows/14 test argument extra paths/lib/foo.h b/test cases/windows/13 test argument extra paths/lib/foo.h
index 5078c58..5078c58 100644
--- a/test cases/windows/14 test argument extra paths/lib/foo.h
+++ b/test cases/windows/13 test argument extra paths/lib/foo.h
diff --git a/test cases/windows/14 test argument extra paths/lib/meson.build b/test cases/windows/13 test argument extra paths/lib/meson.build
index aa0bf14..aa0bf14 100644
--- a/test cases/windows/14 test argument extra paths/lib/meson.build
+++ b/test cases/windows/13 test argument extra paths/lib/meson.build
diff --git a/test cases/windows/14 test argument extra paths/meson.build b/test cases/windows/13 test argument extra paths/meson.build
index f105946..f105946 100644
--- a/test cases/windows/14 test argument extra paths/meson.build
+++ b/test cases/windows/13 test argument extra paths/meson.build
diff --git a/test cases/windows/14 test argument extra paths/test/meson.build b/test cases/windows/13 test argument extra paths/test/meson.build
index 2e608be..2e608be 100644
--- a/test cases/windows/14 test argument extra paths/test/meson.build
+++ b/test cases/windows/13 test argument extra paths/test/meson.build
diff --git a/test cases/windows/14 test argument extra paths/test/test_run_exe.py b/test cases/windows/13 test argument extra paths/test/test_run_exe.py
index 77c7ddc..77c7ddc 100644
--- a/test cases/windows/14 test argument extra paths/test/test_run_exe.py
+++ b/test cases/windows/13 test argument extra paths/test/test_run_exe.py
diff --git a/test cases/windows/15 resources with custom target depend_files/ico/gen-ico.py b/test cases/windows/14 resources with custom target depend_files/ico/gen-ico.py
index c49e0dd..c49e0dd 100755
--- a/test cases/windows/15 resources with custom target depend_files/ico/gen-ico.py
+++ b/test cases/windows/14 resources with custom target depend_files/ico/gen-ico.py
diff --git a/test cases/windows/15 resources with custom target depend_files/ico/meson.build b/test cases/windows/14 resources with custom target depend_files/ico/meson.build
index 3fae9e8..3fae9e8 100644
--- a/test cases/windows/15 resources with custom target depend_files/ico/meson.build
+++ b/test cases/windows/14 resources with custom target depend_files/ico/meson.build
diff --git a/test cases/windows/15 resources with custom target depend_files/ico/sample.ico.in b/test cases/windows/14 resources with custom target depend_files/ico/sample.ico.in
index 24bd3d9..24bd3d9 100644
--- a/test cases/windows/15 resources with custom target depend_files/ico/sample.ico.in
+++ b/test cases/windows/14 resources with custom target depend_files/ico/sample.ico.in
Binary files differ
diff --git a/test cases/windows/15 resources with custom target depend_files/meson.build b/test cases/windows/14 resources with custom target depend_files/meson.build
index 85ba06f..85ba06f 100644
--- a/test cases/windows/15 resources with custom target depend_files/meson.build
+++ b/test cases/windows/14 resources with custom target depend_files/meson.build
diff --git a/test cases/windows/15 resources with custom target depend_files/prog.c b/test cases/windows/14 resources with custom target depend_files/prog.c
index 2bef6a2..2bef6a2 100644
--- a/test cases/windows/15 resources with custom target depend_files/prog.c
+++ b/test cases/windows/14 resources with custom target depend_files/prog.c
diff --git a/test cases/windows/15 resources with custom target depend_files/res/meson.build b/test cases/windows/14 resources with custom target depend_files/res/meson.build
index 3d43b3f..3d43b3f 100644
--- a/test cases/windows/15 resources with custom target depend_files/res/meson.build
+++ b/test cases/windows/14 resources with custom target depend_files/res/meson.build
diff --git a/test cases/windows/15 resources with custom target depend_files/res/myres.rc b/test cases/windows/14 resources with custom target depend_files/res/myres.rc
index 12838ae..12838ae 100644
--- a/test cases/windows/15 resources with custom target depend_files/res/myres.rc
+++ b/test cases/windows/14 resources with custom target depend_files/res/myres.rc
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/a/meson.build b/test cases/windows/15 resource scripts with duplicate filenames/a/meson.build
index 73f18c8..73f18c8 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/a/meson.build
+++ b/test cases/windows/15 resource scripts with duplicate filenames/a/meson.build
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/a/rsrc.rc b/test cases/windows/15 resource scripts with duplicate filenames/a/rsrc.rc
index 1997b8e..1997b8e 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/a/rsrc.rc
+++ b/test cases/windows/15 resource scripts with duplicate filenames/a/rsrc.rc
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/b/meson.build b/test cases/windows/15 resource scripts with duplicate filenames/b/meson.build
index d0b0aab..d0b0aab 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/b/meson.build
+++ b/test cases/windows/15 resource scripts with duplicate filenames/b/meson.build
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/b/rsrc.rc b/test cases/windows/15 resource scripts with duplicate filenames/b/rsrc.rc
index a8e3b27..a8e3b27 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/b/rsrc.rc
+++ b/test cases/windows/15 resource scripts with duplicate filenames/b/rsrc.rc
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/c/meson.build b/test cases/windows/15 resource scripts with duplicate filenames/c/meson.build
index a7b7e30..a7b7e30 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/c/meson.build
+++ b/test cases/windows/15 resource scripts with duplicate filenames/c/meson.build
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/c/rsrc.rc b/test cases/windows/15 resource scripts with duplicate filenames/c/rsrc.rc
index 1fa2c1c..1fa2c1c 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/c/rsrc.rc
+++ b/test cases/windows/15 resource scripts with duplicate filenames/c/rsrc.rc
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/meson.build b/test cases/windows/15 resource scripts with duplicate filenames/meson.build
index 4073a8e..4073a8e 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/meson.build
+++ b/test cases/windows/15 resource scripts with duplicate filenames/meson.build
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/rsrc.rc b/test cases/windows/15 resource scripts with duplicate filenames/rsrc.rc
index 8f6aa1f..8f6aa1f 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/rsrc.rc
+++ b/test cases/windows/15 resource scripts with duplicate filenames/rsrc.rc
diff --git a/test cases/windows/16 resource scripts with duplicate filenames/verify.c b/test cases/windows/15 resource scripts with duplicate filenames/verify.c
index 4d2ccf0..4d2ccf0 100644
--- a/test cases/windows/16 resource scripts with duplicate filenames/verify.c
+++ b/test cases/windows/15 resource scripts with duplicate filenames/verify.c
diff --git a/test cases/windows/8 dll versioning/copyfile.py b/test cases/windows/7 dll versioning/copyfile.py
index ff42ac3..ff42ac3 100644
--- a/test cases/windows/8 dll versioning/copyfile.py
+++ b/test cases/windows/7 dll versioning/copyfile.py
diff --git a/test cases/windows/8 dll versioning/exe.orig.c b/test cases/windows/7 dll versioning/exe.orig.c
index 86c4adc..86c4adc 100644
--- a/test cases/windows/8 dll versioning/exe.orig.c
+++ b/test cases/windows/7 dll versioning/exe.orig.c
diff --git a/test cases/windows/8 dll versioning/installed_files.txt b/test cases/windows/7 dll versioning/installed_files.txt
index 20482bf..20482bf 100644
--- a/test cases/windows/8 dll versioning/installed_files.txt
+++ b/test cases/windows/7 dll versioning/installed_files.txt
diff --git a/test cases/windows/8 dll versioning/lib.c b/test cases/windows/7 dll versioning/lib.c
index cf7dfdd..cf7dfdd 100644
--- a/test cases/windows/8 dll versioning/lib.c
+++ b/test cases/windows/7 dll versioning/lib.c
diff --git a/test cases/windows/8 dll versioning/meson.build b/test cases/windows/7 dll versioning/meson.build
index 80acf88..80acf88 100644
--- a/test cases/windows/8 dll versioning/meson.build
+++ b/test cases/windows/7 dll versioning/meson.build
diff --git a/test cases/windows/9 find program/meson.build b/test cases/windows/8 find program/meson.build
index 565fb62..565fb62 100644
--- a/test cases/windows/9 find program/meson.build
+++ b/test cases/windows/8 find program/meson.build
diff --git a/test cases/windows/9 find program/test-script b/test cases/windows/8 find program/test-script
index d105a81..d105a81 100644
--- a/test cases/windows/9 find program/test-script
+++ b/test cases/windows/8 find program/test-script
diff --git a/test cases/windows/9 find program/test-script-ext.py b/test cases/windows/8 find program/test-script-ext.py
index ae9adfb..ae9adfb 100644
--- a/test cases/windows/9 find program/test-script-ext.py
+++ b/test cases/windows/8 find program/test-script-ext.py
diff --git a/test cases/windows/10 vs module defs generated/meson.build b/test cases/windows/9 vs module defs generated/meson.build
index 7728ca7..7728ca7 100644
--- a/test cases/windows/10 vs module defs generated/meson.build
+++ b/test cases/windows/9 vs module defs generated/meson.build
diff --git a/test cases/windows/11 vs module defs generated custom target/prog.c b/test cases/windows/9 vs module defs generated/prog.c
index f35f4a0..f35f4a0 100644
--- a/test cases/windows/11 vs module defs generated custom target/prog.c
+++ b/test cases/windows/9 vs module defs generated/prog.c
diff --git a/test cases/windows/10 vs module defs generated/subdir/meson.build b/test cases/windows/9 vs module defs generated/subdir/meson.build
index 5d390a0..5d390a0 100644
--- a/test cases/windows/10 vs module defs generated/subdir/meson.build
+++ b/test cases/windows/9 vs module defs generated/subdir/meson.build
diff --git a/test cases/windows/11 vs module defs generated custom target/subdir/somedll.c b/test cases/windows/9 vs module defs generated/subdir/somedll.c
index b23d8fe..b23d8fe 100644
--- a/test cases/windows/11 vs module defs generated custom target/subdir/somedll.c
+++ b/test cases/windows/9 vs module defs generated/subdir/somedll.c
diff --git a/test cases/windows/10 vs module defs generated/subdir/somedll.def.in b/test cases/windows/9 vs module defs generated/subdir/somedll.def.in
index c29207c..c29207c 100644
--- a/test cases/windows/10 vs module defs generated/subdir/somedll.def.in
+++ b/test cases/windows/9 vs module defs generated/subdir/somedll.def.in
diff --git a/tools/dircondenser.py b/tools/dircondenser.py
new file mode 100755
index 0000000..c87b967
--- /dev/null
+++ b/tools/dircondenser.py
@@ -0,0 +1,82 @@
+#!/usr/bin/env python3
+
+
+# Copyright 2018 The Meson development team
+
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+
+# http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+'''Renames test case directories using Git from this:
+
+1 something
+3 other
+3 foo
+3 bar
+
+to this:
+
+1 something
+2 other
+3 foo
+4 bar
+
+This directory must be run from source root as it touches run_unittests.py.
+'''
+
+import os, sys, subprocess
+
+from glob import glob
+
+def get_entries():
+ entries = []
+ for e in glob('*'):
+ if not os.path.isdir(e):
+ sys.exit('Current directory must not contain any files.')
+ (number, rest) = e.split(' ', 1)
+ try:
+ number = int(number)
+ except ValueError:
+ sys.exit('Dir name %d does not start with a number.' % e)
+ entries.append((number, rest))
+ entries.sort()
+ return entries
+
+def replace_source(sourcefile, replacements):
+ with open(sourcefile, 'r') as f:
+ contents = f.read()
+ for old_name, new_name in replacements:
+ contents = contents.replace(old_name, new_name)
+ with open(sourcefile, 'w') as f:
+ f.write(contents)
+
+def condense(dirname):
+ curdir = os.getcwd()
+ os.chdir(dirname)
+ entries = get_entries()
+ replacements = []
+ for _i, e in enumerate(entries):
+ i = _i + 1
+ if e[0] != i:
+ old_name = str(e[0]) + ' ' + e[1]
+ new_name = str(i) + ' ' + e[1]
+ #print('git mv "%s" "%s"' % (old_name, new_name))
+ subprocess.check_call(['git', 'mv', old_name, new_name])
+ replacements.append((old_name, new_name))
+ os.chdir(curdir)
+ replace_source('run_unittests.py', replacements)
+ replace_source('run_project_tests.py', replacements)
+
+if __name__ == '__main__':
+ if len(sys.argv) != 1:
+ sys.exit('This script takes no arguments.')
+ for d in glob('test cases/*'):
+ condense(d)