diff options
author | Mathieu Duponchelle <mathieu@centricular.com> | 2018-05-23 23:45:24 +0200 |
---|---|---|
committer | Nirbheek Chauhan <nirbheek.chauhan@gmail.com> | 2018-06-02 11:42:48 +0000 |
commit | bd2cc39f26e0db7542690e45b2541493efda725a (patch) | |
tree | a4dc791e19e92bd91aff22821c0c6f13aca2258f | |
parent | 35ab34d6cdc47952849c076885a8148781562733 (diff) | |
download | meson-bd2cc39f26e0db7542690e45b2541493efda725a.zip meson-bd2cc39f26e0db7542690e45b2541493efda725a.tar.gz meson-bd2cc39f26e0db7542690e45b2541493efda725a.tar.bz2 |
test extra paths: add test case
8 files changed, 51 insertions, 0 deletions
diff --git a/test cases/common/200 test argument extra paths/exe/main.c b/test cases/common/200 test argument extra paths/exe/main.c new file mode 100644 index 0000000..0ac9e38 --- /dev/null +++ b/test cases/common/200 test argument extra paths/exe/main.c @@ -0,0 +1,5 @@ +#include <foo.h> + +int main(int ac, char **av) { + return foo_process(); +} diff --git a/test cases/common/200 test argument extra paths/exe/meson.build b/test cases/common/200 test argument extra paths/exe/meson.build new file mode 100644 index 0000000..138500a --- /dev/null +++ b/test cases/common/200 test argument extra paths/exe/meson.build @@ -0,0 +1,3 @@ +barexe = executable('bar', 'main.c', + include_directories: incfoo, + link_with: libfoo) diff --git a/test cases/common/200 test argument extra paths/lib/foo.c b/test cases/common/200 test argument extra paths/lib/foo.c new file mode 100644 index 0000000..86b1a03 --- /dev/null +++ b/test cases/common/200 test argument extra paths/lib/foo.c @@ -0,0 +1,6 @@ +#include "foo.h" + +int +foo_process(void) { + return 42; +} diff --git a/test cases/common/200 test argument extra paths/lib/foo.h b/test cases/common/200 test argument extra paths/lib/foo.h new file mode 100644 index 0000000..5078c58 --- /dev/null +++ b/test cases/common/200 test argument extra paths/lib/foo.h @@ -0,0 +1,14 @@ +#pragma once + +#if defined _WIN32 || defined __CYGWIN__ + #define DLL_PUBLIC __declspec(dllexport) +#else + #if defined __GNUC__ + #define DLL_PUBLIC __attribute__ ((visibility("default"))) + #else + #pragma message ("Compiler does not support symbol visibility.") + #define DLL_PUBLIC + #endif +#endif + +DLL_PUBLIC int foo_process(void); diff --git a/test cases/common/200 test argument extra paths/lib/meson.build b/test cases/common/200 test argument extra paths/lib/meson.build new file mode 100644 index 0000000..aa0bf14 --- /dev/null +++ b/test cases/common/200 test argument extra paths/lib/meson.build @@ -0,0 +1,3 @@ +incfoo = include_directories('.') + +libfoo = library('foo', 'foo.c') diff --git a/test cases/common/200 test argument extra paths/meson.build b/test cases/common/200 test argument extra paths/meson.build new file mode 100644 index 0000000..f105946 --- /dev/null +++ b/test cases/common/200 test argument extra paths/meson.build @@ -0,0 +1,5 @@ +project('test argument extra paths', 'c') + +subdir('lib') +subdir('exe') +subdir('test') diff --git a/test cases/common/200 test argument extra paths/test/meson.build b/test cases/common/200 test argument extra paths/test/meson.build new file mode 100644 index 0000000..2e608be --- /dev/null +++ b/test cases/common/200 test argument extra paths/test/meson.build @@ -0,0 +1,3 @@ +python3 = import('python').find_installation('') + +test('run_exe', python3, args: [files('test_run_exe.py')[0], barexe]) diff --git a/test cases/common/200 test argument extra paths/test/test_run_exe.py b/test cases/common/200 test argument extra paths/test/test_run_exe.py new file mode 100644 index 0000000..77c7ddc --- /dev/null +++ b/test cases/common/200 test argument extra paths/test/test_run_exe.py @@ -0,0 +1,12 @@ +import subprocess +import argparse +import sys + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('prog') + args = parser.parse_args() + + res = subprocess.run(args.prog) + + sys.exit(res.returncode - 42) |