diff options
Diffstat (limited to '')
4 files changed, 37 insertions, 0 deletions
diff --git a/test cases/native/9 override with exe/main2.input b/test cases/native/9 override with exe/main2.input new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test cases/native/9 override with exe/main2.input diff --git a/test cases/native/9 override with exe/meson.build b/test cases/native/9 override with exe/meson.build new file mode 100644 index 0000000..5275532 --- /dev/null +++ b/test cases/native/9 override with exe/meson.build @@ -0,0 +1,21 @@ +project('myexe', 'c', version: '0.1') +sub = subproject('sub') + +prog = find_program('foobar', version : '>= 2.0', required : false) +assert(not prog.found()) + +prog = find_program('foobar', version : '>= 1.0') +custom1 = custom_target('custom1', + build_by_default : true, + input : [], + output : 'main1.c', + command : [prog, '@OUTPUT@']) +gen = generator(prog, + output : '@BASENAME@.c', + arguments : ['@OUTPUT@']) +custom2 = gen.process('main2.input') + +message(prog.full_path()) + +executable('e1', custom1) +executable('e2', custom2) diff --git a/test cases/native/9 override with exe/subprojects/sub/foobar.c b/test cases/native/9 override with exe/subprojects/sub/foobar.c new file mode 100644 index 0000000..c21d450 --- /dev/null +++ b/test cases/native/9 override with exe/subprojects/sub/foobar.c @@ -0,0 +1,13 @@ +#include <assert.h> +#include <stdio.h> + +int main(int argc, char* argv[]) { + assert(argc == 2); + FILE *f = fopen(argv[1], "w"); + const char msg[] = "int main(void) {return 0;}\n"; + size_t w = fwrite(msg, 1, sizeof(msg) - 1, f); + assert(w == sizeof(msg) - 1); + int r = fclose(f); + assert(r == 0); + return 0; +} diff --git a/test cases/native/9 override with exe/subprojects/sub/meson.build b/test cases/native/9 override with exe/subprojects/sub/meson.build new file mode 100644 index 0000000..f0343b2 --- /dev/null +++ b/test cases/native/9 override with exe/subprojects/sub/meson.build @@ -0,0 +1,3 @@ +project('sub', 'c', version : '1.0') +foobar = executable('foobar', 'foobar.c', native : true) +meson.override_find_program('foobar', foobar) |