diff options
Diffstat (limited to 'test cases/common/48 file grabber')
-rw-r--r-- | test cases/common/48 file grabber/a.c | 1 | ||||
-rw-r--r-- | test cases/common/48 file grabber/b.c | 1 | ||||
-rw-r--r-- | test cases/common/48 file grabber/c.c | 1 | ||||
-rw-r--r-- | test cases/common/48 file grabber/grabber.bat | 5 | ||||
-rwxr-xr-x | test cases/common/48 file grabber/grabber.sh | 5 | ||||
-rw-r--r-- | test cases/common/48 file grabber/grabber2.bat | 5 | ||||
-rw-r--r-- | test cases/common/48 file grabber/meson.build | 35 | ||||
-rw-r--r-- | test cases/common/48 file grabber/prog.c | 7 | ||||
-rw-r--r-- | test cases/common/48 file grabber/subdir/meson.build | 5 | ||||
-rw-r--r-- | test cases/common/48 file grabber/subdir/suba.c | 1 | ||||
-rw-r--r-- | test cases/common/48 file grabber/subdir/subb.c | 1 | ||||
-rw-r--r-- | test cases/common/48 file grabber/subdir/subc.c | 1 | ||||
-rw-r--r-- | test cases/common/48 file grabber/subdir/subprog.c | 7 |
13 files changed, 75 insertions, 0 deletions
diff --git a/test cases/common/48 file grabber/a.c b/test cases/common/48 file grabber/a.c new file mode 100644 index 0000000..8f63c2d --- /dev/null +++ b/test cases/common/48 file grabber/a.c @@ -0,0 +1 @@ +int funca(void) { return 0; } diff --git a/test cases/common/48 file grabber/b.c b/test cases/common/48 file grabber/b.c new file mode 100644 index 0000000..f38baca --- /dev/null +++ b/test cases/common/48 file grabber/b.c @@ -0,0 +1 @@ +int funcb(void) { return 0; } diff --git a/test cases/common/48 file grabber/c.c b/test cases/common/48 file grabber/c.c new file mode 100644 index 0000000..2e8abbf --- /dev/null +++ b/test cases/common/48 file grabber/c.c @@ -0,0 +1 @@ +int funcc(void) { return 0; } diff --git a/test cases/common/48 file grabber/grabber.bat b/test cases/common/48 file grabber/grabber.bat new file mode 100644 index 0000000..8660314 --- /dev/null +++ b/test cases/common/48 file grabber/grabber.bat @@ -0,0 +1,5 @@ +@ECHO OFF +echo a.c +echo b.c +echo c.c +echo prog.c diff --git a/test cases/common/48 file grabber/grabber.sh b/test cases/common/48 file grabber/grabber.sh new file mode 100755 index 0000000..5e8f4b9 --- /dev/null +++ b/test cases/common/48 file grabber/grabber.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +for i in *.c; do + echo $i +done diff --git a/test cases/common/48 file grabber/grabber2.bat b/test cases/common/48 file grabber/grabber2.bat new file mode 100644 index 0000000..d1a3f98 --- /dev/null +++ b/test cases/common/48 file grabber/grabber2.bat @@ -0,0 +1,5 @@ +@ECHO OFF +echo suba.c +echo subb.c +echo subc.c +echo subprog.c diff --git a/test cases/common/48 file grabber/meson.build b/test cases/common/48 file grabber/meson.build new file mode 100644 index 0000000..a042b23 --- /dev/null +++ b/test cases/common/48 file grabber/meson.build @@ -0,0 +1,35 @@ +project('grabber', 'c') + +# What this script does is NOT reliable. Simply adding a file in this directory +# will NOT make it automatically appear in the build. You have to manually +# re-invoke Meson (not just Ninja) for that to happen. The simplest way +# is to touch meson-private/coredata.dat. + +# This is not the recommended way to do things, but if the tradeoffs are +# acceptable to you, then we're certainly not going to stop you. Just don't +# file bugs when it fails. :) + +if build_machine.system() == 'windows' + c = run_command('grabber.bat', check: false) + grabber = find_program('grabber2.bat') +else + c = run_command('grabber.sh', check: false) + grabber = find_program('grabber.sh') +endif + + +# First test running command explicitly. +if c.returncode() != 0 + error('Executing script failed.') +endif + +newline = ''' +''' + +sources = c.stdout().strip().split(newline) + +e = executable('prog', sources) +test('grabtest', e) + +# Then test using program with find_program +subdir('subdir') diff --git a/test cases/common/48 file grabber/prog.c b/test cases/common/48 file grabber/prog.c new file mode 100644 index 0000000..ff55723 --- /dev/null +++ b/test cases/common/48 file grabber/prog.c @@ -0,0 +1,7 @@ +int funca(void); +int funcb(void); +int funcc(void); + +int main(void) { + return funca() + funcb() + funcc(); +} diff --git a/test cases/common/48 file grabber/subdir/meson.build b/test cases/common/48 file grabber/subdir/meson.build new file mode 100644 index 0000000..9990e30 --- /dev/null +++ b/test cases/common/48 file grabber/subdir/meson.build @@ -0,0 +1,5 @@ +sc = run_command(grabber, check: true) +subsources = sc.stdout().strip().split(newline) + +se = executable('subprog', subsources) +test('subgrabtest', se) diff --git a/test cases/common/48 file grabber/subdir/suba.c b/test cases/common/48 file grabber/subdir/suba.c new file mode 100644 index 0000000..8f63c2d --- /dev/null +++ b/test cases/common/48 file grabber/subdir/suba.c @@ -0,0 +1 @@ +int funca(void) { return 0; } diff --git a/test cases/common/48 file grabber/subdir/subb.c b/test cases/common/48 file grabber/subdir/subb.c new file mode 100644 index 0000000..f38baca --- /dev/null +++ b/test cases/common/48 file grabber/subdir/subb.c @@ -0,0 +1 @@ +int funcb(void) { return 0; } diff --git a/test cases/common/48 file grabber/subdir/subc.c b/test cases/common/48 file grabber/subdir/subc.c new file mode 100644 index 0000000..2e8abbf --- /dev/null +++ b/test cases/common/48 file grabber/subdir/subc.c @@ -0,0 +1 @@ +int funcc(void) { return 0; } diff --git a/test cases/common/48 file grabber/subdir/subprog.c b/test cases/common/48 file grabber/subdir/subprog.c new file mode 100644 index 0000000..ff55723 --- /dev/null +++ b/test cases/common/48 file grabber/subdir/subprog.c @@ -0,0 +1,7 @@ +int funca(void); +int funcb(void); +int funcc(void); + +int main(void) { + return funca() + funcb() + funcc(); +} |