diff options
author | Angelos Mouzakitis <a.mouzakitis@virtualopensystems.com> | 2023-10-10 14:33:42 +0000 |
---|---|---|
committer | Angelos Mouzakitis <a.mouzakitis@virtualopensystems.com> | 2023-10-10 14:33:42 +0000 |
commit | af1a266670d040d2f4083ff309d732d648afba2a (patch) | |
tree | 2fc46203448ddcc6f81546d379abfaeb323575e9 /meson/test cases/common/181 same target name flat layout | |
parent | e02cda008591317b1625707ff8e115a4841aa889 (diff) |
Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec
Diffstat (limited to 'meson/test cases/common/181 same target name flat layout')
5 files changed, 34 insertions, 0 deletions
diff --git a/meson/test cases/common/181 same target name flat layout/foo.c b/meson/test cases/common/181 same target name flat layout/foo.c new file mode 100644 index 000000000..ed427899a --- /dev/null +++ b/meson/test cases/common/181 same target name flat layout/foo.c @@ -0,0 +1 @@ +int meson_test_main_foo(void) { return 10; } diff --git a/meson/test cases/common/181 same target name flat layout/main.c b/meson/test cases/common/181 same target name flat layout/main.c new file mode 100644 index 000000000..6f02aeb82 --- /dev/null +++ b/meson/test cases/common/181 same target name flat layout/main.c @@ -0,0 +1,16 @@ +#include <stdio.h> + +int meson_test_main_foo(void); +int meson_test_subproj_foo(void); + +int main(void) { + if (meson_test_main_foo() != 10) { + printf("Failed meson_test_main_foo\n"); + return 1; + } + if (meson_test_subproj_foo() != 20) { + printf("Failed meson_test_subproj_foo\n"); + return 1; + } + return 0; +} diff --git a/meson/test cases/common/181 same target name flat layout/meson.build b/meson/test cases/common/181 same target name flat layout/meson.build new file mode 100644 index 000000000..cfad2c2a5 --- /dev/null +++ b/meson/test cases/common/181 same target name flat layout/meson.build @@ -0,0 +1,15 @@ +project('subdir targets', 'c') + +if meson.backend() == 'xcode' + error('MESON_SKIP_TEST: many targets with the same name not supported in Xcode. Patches welcome.') +endif + +# Idea behind this test is to create targets with identical name +# but different output files. We can do this by choosing different +# name_prefix of libraries. Target id does not depend on name_prefix. + +main_foo = static_library('foo', 'foo.c', name_prefix : 'main') +subdir('subdir') # defines subdir_foo + +exe = executable('prog', 'main.c', link_with : [main_foo, subdir_foo]) +test('main test', exe) diff --git a/meson/test cases/common/181 same target name flat layout/subdir/foo.c b/meson/test cases/common/181 same target name flat layout/subdir/foo.c new file mode 100644 index 000000000..f33429229 --- /dev/null +++ b/meson/test cases/common/181 same target name flat layout/subdir/foo.c @@ -0,0 +1 @@ +int meson_test_subproj_foo(void) { return 20; } diff --git a/meson/test cases/common/181 same target name flat layout/subdir/meson.build b/meson/test cases/common/181 same target name flat layout/subdir/meson.build new file mode 100644 index 000000000..223a5ef90 --- /dev/null +++ b/meson/test cases/common/181 same target name flat layout/subdir/meson.build @@ -0,0 +1 @@ +subdir_foo = static_library('foo', 'foo.c', name_prefix : 'subdir') |