Merge pull request #6620 from jon-turney/test-output-check
Add a mechanism for validating meson output in testspull/7134/head
commit
85708facae
120 changed files with 940 additions and 48 deletions
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "ERROR: First statement must be a call to project" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/10 out of bounds/meson.build:4:0: ERROR: Index 0 out of bounds of array of size 0." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,8 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"match": "re", |
||||
"line": "test cases/failing/11 object arithmetic/meson\\.build:3:0: ERROR: Invalid use of addition: .*" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,8 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"match": "re", |
||||
"line": "test cases/failing/12 string arithmetic/meson\\.build:3:0: ERROR: Invalid use of addition: .*" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/13 array arithmetic/meson.build:3:0: ERROR: Multiplication works only with integers." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/14 invalid option name/meson_options.txt:1:0: ERROR: Option names can only contain letters, numbers or dashes." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/15 kwarg before arg/meson.build:3:0: ERROR: All keyword arguments must be after positional arguments." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/16 extract from subproject/meson.build:6:0: ERROR: Tried to extract objects from a subproject target." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/17 same target/meson.build:4:0: ERROR: Tried to create target \"foo\", but a target of that name already exists." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/18 wrong plusassign/meson.build:3:0: ERROR: Plusassignment target must be an id." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "ERROR: Multiple producers for Ninja target \"clash\". Please rename your targets." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/2 missing file/meson.build:3:0: ERROR: File missing.c does not exist." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,8 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"match": "re", |
||||
"line": "test cases/failing/20 version/meson\\.build:1:0: ERROR: Meson version is .* but project requires >100\\.0\\.0" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/21 subver/meson.build:3:0: ERROR: Subproject foo version is 1.0.0 but >1.0.0 required." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/22 assert/meson.build:3:0: ERROR: Assert failed: I am fail." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/23 rel testdir/meson.build:4:0: ERROR: Workdir keyword argument must be an absolute path." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/24 int conversion/meson.build:3:13: ERROR: String 'notanumber' cannot be converted to int" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/25 badlang/meson.build:3:0: ERROR: Tried to use unknown language \"nonexisting\"." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/26 output subdir/meson.build:3:0: ERROR: Output file name must not contain a subdirectory." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/27 noprog use/meson.build:5:0: ERROR: Tried to use not-found external program in \"command\"" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/28 no crossprop/meson.build:3:0: ERROR: Unknown cross property: nonexisting." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/29 nested ternary/meson.build:3:12: ERROR: Nested ternary operators are not allowed." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,9 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"comment": "'missing/meson.build' gets transformed with os.path.sep separators", |
||||
"match": "re", |
||||
"line": "test cases/failing/3 missing subdir/meson\\.build:3:0: ERROR: Non\\-existent build file 'missing[\\\\/]meson\\.build'" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/30 invalid man extension/meson.build:2:0: ERROR: Man file must have a file extension of a number between 1 and 8" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/31 no man extension/meson.build:2:0: ERROR: Man file must have a file extension of a number between 1 and 8" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/32 exe static shared/meson.build:9:0: ERROR: Can't link non-PIC static library 'stat' into shared library 'shr2'. Use the 'pic' option to static_library to build with PIC." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/33 non-root subproject/some/meson.build:1:0: ERROR: Subproject directory not found and someproj.wrap file not found" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,8 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"match": "re", |
||||
"line": "test cases/failing/34 dependency not\\-required then required/meson\\.build:4:0: ERROR: Dependency \"foo\\-bar\\-xyz\\-12\\.3\" not found, tried .*" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/35 project argument after target/meson.build:7:0: ERROR: Tried to use 'add_project_arguments' after a build target has been declared." |
||||
} |
||||
] |
||||
} |
@ -1,3 +1,7 @@ |
||||
project('impossible-dep-test', 'c', version : '1.0') |
||||
|
||||
if not dependency('zlib', required: false).found() |
||||
error('MESON_SKIP_TEST test requires zlib') |
||||
endif |
||||
|
||||
dependency('zlib', version : ['>=1.0', '<1.0']) |
||||
|
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/37 has function external dependency/meson.build:8:3: ERROR: Dependencies must be external dependencies" |
||||
} |
||||
] |
||||
} |
@ -1,3 +1,10 @@ |
||||
{ |
||||
"do_not_set_opts": ["libdir"] |
||||
"do_not_set_opts": [ |
||||
"libdir" |
||||
], |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/38 libdir must be inside prefix/meson.build:1:0: ERROR: The value of the 'libdir' option is '/opt/lib' which must be a subdir of the prefix '/usr'." |
||||
} |
||||
] |
||||
} |
||||
|
@ -1,3 +1,11 @@ |
||||
{ |
||||
"do_not_set_opts": ["prefix"] |
||||
"do_not_set_opts": [ |
||||
"prefix" |
||||
], |
||||
"stdout": [ |
||||
{ |
||||
"comment": "literal 'some/path/notabs' appears in output, irrespective of os.path.sep, as that's the prefix", |
||||
"line": "test cases/failing/39 prefix absolute/meson.build:1:0: ERROR: prefix value 'some/path/notabs' must be an absolute path" |
||||
} |
||||
] |
||||
} |
||||
|
@ -0,0 +1,9 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"match": "re", |
||||
"comment": "'subdir/meson.build' gets transformed with os.path.sep separators", |
||||
"line": "test cases/failing/4 missing meson\\.build/meson\\.build:3:0: ERROR: Non\\-existent build file 'subdir[\\\\/]meson\\.build'" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/40 kwarg assign/meson.build:3:0: ERROR: Tried to assign values inside an argument list." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/41 custom target plainname many inputs/meson.build:5:0: ERROR: Output cannot contain @PLAINNAME@ or @BASENAME@ when there is more than one input (we can't know which to use)" |
||||
} |
||||
] |
||||
} |
@ -1,10 +1,33 @@ |
||||
{ |
||||
"installed": [ |
||||
{"type": "file", "file": "usr/include/diff.h"}, |
||||
{"type": "file", "file": "usr/include/first.h"}, |
||||
{"type": "file", "file": "usr/bin/diff.sh"}, |
||||
{"type": "file", "file": "usr/bin/second.sh"}, |
||||
{"type": "file", "file": "opt/same.h"}, |
||||
{"type": "file", "file": "opt/same.sh"} |
||||
{ |
||||
"type": "file", |
||||
"file": "usr/include/diff.h" |
||||
}, |
||||
{ |
||||
"type": "file", |
||||
"file": "usr/include/first.h" |
||||
}, |
||||
{ |
||||
"type": "file", |
||||
"file": "usr/bin/diff.sh" |
||||
}, |
||||
{ |
||||
"type": "file", |
||||
"file": "usr/bin/second.sh" |
||||
}, |
||||
{ |
||||
"type": "file", |
||||
"file": "opt/same.h" |
||||
}, |
||||
{ |
||||
"type": "file", |
||||
"file": "opt/same.sh" |
||||
} |
||||
], |
||||
"stdout": [ |
||||
{ |
||||
"line": "ERROR: Target 'too-few-install-dirs' has 3 outputs: ['toofew.h', 'toofew.c', 'toofew.sh'], but only 2 \"install_dir\"s were found." |
||||
} |
||||
] |
||||
} |
||||
|
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/43 project name colon/meson.build:1:0: ERROR: Project name 'name with :' must not contain ':'" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/44 abs subdir/meson.build:5:0: ERROR: Subdir argument must be a relative path." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/45 abspath to srcdir/meson.build:3:0: ERROR: Tried to form an absolute path to a source dir. You should not do that but use relative paths instead." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/46 pkgconfig variables reserved/meson.build:8:5: ERROR: Variable \"prefix\" is reserved" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/47 pkgconfig variables zero length/meson.build:8:5: ERROR: Invalid variable \"=value\". Variables must be in 'name=value' format" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/48 pkgconfig variables zero length value/meson.build:8:5: ERROR: Invalid variable \"key=\". Variables must be in 'name=value' format" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/49 pkgconfig variables not key value/meson.build:8:5: ERROR: Invalid variable \"this_should_be_key_value\". Variables must be in 'name=value' format" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/5 misplaced option/meson.build:3:0: ERROR: Tried to call option() in build description file. All options must be in the option file." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/50 executable comparison/meson.build:6:0: ERROR: exe1 can only be compared for equality." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/51 inconsistent comparison/meson.build:5:0: ERROR: Values of different types (list, str) cannot be compared using <." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/52 slashname/meson.build:11:0: ERROR: Problem encountered: Re-enable me once slash in name is finally prohibited." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/53 reserved meson prefix/meson.build:3:0: ERROR: The \"meson-\" prefix is reserved and cannot be used for top-level subdir()." |
||||
} |
||||
] |
||||
} |
@ -1,3 +1,7 @@ |
||||
project('test', 'rust') |
||||
project('test') |
||||
|
||||
if not add_languages('rust', required: false) |
||||
error('MESON_SKIP_TEST test requires rust compiler') |
||||
endif |
||||
|
||||
shared_library('test', 'foo.rs', rust_crate_type : 'staticlib') |
||||
|
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/54 wrong shared crate type/meson.build:7:0: ERROR: Crate type \"staticlib\" invalid for dynamic libraries; must be \"dylib\" or \"cdylib\"" |
||||
} |
||||
] |
||||
} |
@ -1,3 +1,7 @@ |
||||
project('test', 'rust') |
||||
project('test') |
||||
|
||||
if not add_languages('rust', required: false) |
||||
error('MESON_SKIP_TEST test requires rust compiler') |
||||
endif |
||||
|
||||
static_library('test', 'foo.rs', rust_crate_type : 'cdylib') |
||||
|
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/55 wrong static crate type/meson.build:7:0: ERROR: Crate type \"cdylib\" invalid for static libraries; must be \"rlib\" or \"staticlib\"" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/56 or on new line/meson.build:4:8: ERROR: Invalid or clause." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/57 kwarg in module/meson.build:3:0: ERROR: Function does not take keyword arguments." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/58 link with executable/meson.build:4:0: ERROR: Link target 'prog' is not linkable." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/59 assign custom target index/meson.build:24:0: ERROR: Assignment target must be an id." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/6 missing incdir/meson.build:3:0: ERROR: Include dir nosuchdir does not exist." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/60 getoption prefix/meson.build:5:0: ERROR: Having a colon in option name is forbidden, projects are not allowed to directly access options of other subprojects." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/61 bad option argument/meson_options.txt:1:0: ERROR: Invalid kwargs for option \"name\": \"vaule\"" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/62 subproj filegrab/subprojects/a/meson.build:3:0: ERROR: Sandbox violation: Tried to grab file prog.c from a different subproject." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/63 grab subproj/meson.build:7:0: ERROR: Sandbox violation: Tried to grab file sub.c from a different subproject." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/64 grab sibling/subprojects/a/meson.build:3:0: ERROR: Sandbox violation: Tried to grab file sneaky.c from a different subproject." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/65 string as link target/meson.build:2:0: ERROR: '' is not a target." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/66 dependency not-found and required/meson.build:2:0: ERROR: Dependency is both required and not-found" |
||||
} |
||||
] |
||||
} |
@ -1,5 +1,9 @@ |
||||
project('boosttest', 'cpp', |
||||
default_options : ['cpp_std=c++11']) |
||||
|
||||
if not dependency('boost', required: false).found() |
||||
error('MESON_SKIP_TEST test requires boost') |
||||
endif |
||||
|
||||
# abc doesn't exist |
||||
linkdep = dependency('boost', modules : ['thread', 'system', 'test', 'abc']) |
||||
|
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/68 wrong boost module/meson.build:9:0: ERROR: Dependency \"boost\" not found" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/69 install_data rename bad size/meson.build:3:0: ERROR: Size of rename argument is different from number of sources" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/7 go to subproject/meson.build:3:0: ERROR: Must not go into subprojects dir with subdir(), use subproject() instead." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/70 skip only subdir/meson.build:8:0: ERROR: File main.cpp does not exist." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/71 dual override/meson.build:5:6: ERROR: Tried to override executable \"override\" which has already been overridden." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/72 override used/meson.build:5:6: ERROR: Tried to override finding of executable \"something.py\" which has already been found." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,8 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"match": "re", |
||||
"line": "test cases/failing/73 run_command unclean exit/meson\\.build:4:0: ERROR: Command \".*[\\\\/]test cases[\\\\/]failing[\\\\/]73 run_command unclean exit[\\\\/]\\.[\\\\/]returncode\\.py 1\" failed with status 1\\." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,8 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"comment": "this error message is not very informative", |
||||
"line": "test cases/failing/74 int literal leading zero/meson.build:5:13: ERROR: Expecting eof got number." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/75 configuration immutable/meson.build:12:16: ERROR: Can not set values on configuration object that has been used." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/76 link with shared module on osx/meson.build:8:0: ERROR: target links against shared modules." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,8 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"match": "re", |
||||
"line": "test cases/failing/77 non ascii in ascii encoded configure file/meson\\.build:5:0: ERROR: Could not write output file .*[\\\\/]config9\\.h: 'ascii' codec can't encode character '\\\\u0434' in position 17: ordinal not in range\\(128\\)" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/78 subproj dependency not-found and required/meson.build:2:0: ERROR: Subproject directory not found and missing.wrap file not found" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/79 unfound run/meson.build:4:0: ERROR: Tried to use non-existing executable 'nonexisting_prog'" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/8 recursive/subprojects/b/meson.build:3:0: ERROR: Recursive include of subprojects: a => b => a." |
||||
} |
||||
] |
||||
} |
@ -1,4 +1,8 @@ |
||||
project('framework dependency with version', 'c') |
||||
|
||||
if host_machine.system() != 'darwin' |
||||
error('MESON_SKIP_TEST test only applicable on darwin') |
||||
endif |
||||
|
||||
# do individual frameworks have a meaningful version to test? And multiple frameworks might be listed... |
||||
# otherwise we're not on OSX and this will definitely fail |
||||
dep = dependency('appleframeworks', modules: 'foundation', version: '>0') |
||||
|
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/80 framework dependency with version/meson.build:8:0: ERROR: Unknown version of dependency 'appleframeworks', but need ['>0']." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/81 override exe config/meson.build:6:0: ERROR: Program 'bar' was overridden with the compiled executable 'foo' and therefore cannot be used during configuration" |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/82 gl dependency with version/meson.build:9:0: ERROR: Unknown version of dependency 'gl', but need ['>0']." |
||||
} |
||||
] |
||||
} |
@ -0,0 +1,7 @@ |
||||
{ |
||||
"stdout": [ |
||||
{ |
||||
"line": "test cases/failing/83 threads dependency with version/meson.build:3:0: ERROR: Unknown version of dependency 'threads', but need ['>0']." |
||||
} |
||||
] |
||||
} |
@ -1,3 +1,8 @@ |
||||
project('gtest dependency with version', ['c', 'cpp']) |
||||
|
||||
if not dependency('gtest', method: 'system', required: false).found() |
||||
error('MESON_SKIP_TEST test requires gtest') |
||||
endif |
||||
|
||||
# discovering gtest version is not yet implemented |
||||
dep = dependency('gtest', method: 'system', version: '>0') |
||||
|
@ -1,3 +1,11 @@ |
||||
project('dub', 'd') |
||||
project('dub') |
||||
|
||||
if not add_languages('d', required: false) |
||||
error('MESON_SKIP_TEST test requires D compiler') |
||||
endif |
||||
|
||||
if not find_program('dub', required: false).found() |
||||
error('MESON_SKIP_TEST test requires dub') |
||||
endif |
||||
|
||||
dependency('dubtestproject', method: 'dub') # Not library (none) |
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue