aboutsummaryrefslogtreecommitdiffstats
path: root/meson/test cases/unit/97 link full name
diff options
context:
space:
mode:
authorAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
committerAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
commitaf1a266670d040d2f4083ff309d732d648afba2a (patch)
tree2fc46203448ddcc6f81546d379abfaeb323575e9 /meson/test cases/unit/97 link full name
parente02cda008591317b1625707ff8e115a4841aa889 (diff)
Add submodule dependency filesHEADmaster
Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec
Diffstat (limited to 'meson/test cases/unit/97 link full name')
-rw-r--r--meson/test cases/unit/97 link full name/.gitignore5
-rw-r--r--meson/test cases/unit/97 link full name/libtestprovider/meson.build20
-rw-r--r--meson/test cases/unit/97 link full name/libtestprovider/provider.c12
-rw-r--r--meson/test cases/unit/97 link full name/proguser/meson.build11
-rw-r--r--meson/test cases/unit/97 link full name/proguser/receiver.c19
5 files changed, 67 insertions, 0 deletions
diff --git a/meson/test cases/unit/97 link full name/.gitignore b/meson/test cases/unit/97 link full name/.gitignore
new file mode 100644
index 000000000..812960172
--- /dev/null
+++ b/meson/test cases/unit/97 link full name/.gitignore
@@ -0,0 +1,5 @@
+*.a
+*.o
+a.out
+libtestprovider.a
+build
diff --git a/meson/test cases/unit/97 link full name/libtestprovider/meson.build b/meson/test cases/unit/97 link full name/libtestprovider/meson.build
new file mode 100644
index 000000000..5855c8180
--- /dev/null
+++ b/meson/test cases/unit/97 link full name/libtestprovider/meson.build
@@ -0,0 +1,20 @@
+project('libtestprovider','c')
+
+libtestprovider=static_library('testprovider',
+ files('./provider.c'),
+ install:true,
+ c_args:['-Wall','-Werror'],
+)
+
+pkg = import('pkgconfig')
+
+
+pkg.generate(
+ name:'testprovider',
+ filebase:'libtestprovider',
+ description: 'fortest',
+ requires: [],
+ libraries_private: ['-Wl,--whole-archive'] +
+ ['-L${libdir}','-l:libtestprovider.a']+
+ ['-Wl,--no-whole-archive']
+)
diff --git a/meson/test cases/unit/97 link full name/libtestprovider/provider.c b/meson/test cases/unit/97 link full name/libtestprovider/provider.c
new file mode 100644
index 000000000..5e79966f7
--- /dev/null
+++ b/meson/test cases/unit/97 link full name/libtestprovider/provider.c
@@ -0,0 +1,12 @@
+#include <stdio.h>
+static int g_checked = 0;
+
+static void __attribute__((constructor(101), used)) init_checked(void) {
+ g_checked=100;
+ fprintf(stdout, "inited\n");
+}
+
+
+int get_checked(void) {
+ return g_checked;
+}
diff --git a/meson/test cases/unit/97 link full name/proguser/meson.build b/meson/test cases/unit/97 link full name/proguser/meson.build
new file mode 100644
index 000000000..5be5bc998
--- /dev/null
+++ b/meson/test cases/unit/97 link full name/proguser/meson.build
@@ -0,0 +1,11 @@
+project('testprovider','c')
+
+deplib = dependency('libtestprovider', static:true)
+
+dprovidertest = executable('dprovidertest',
+ files('./receiver.c'),
+ dependencies:[deplib],
+ c_args:['-Wall','-Werror'],
+)
+
+test('testprovider',dprovidertest)
diff --git a/meson/test cases/unit/97 link full name/proguser/receiver.c b/meson/test cases/unit/97 link full name/proguser/receiver.c
new file mode 100644
index 000000000..594601cc8
--- /dev/null
+++ b/meson/test cases/unit/97 link full name/proguser/receiver.c
@@ -0,0 +1,19 @@
+#include <stdio.h>
+int __attribute__((weak)) get_checked(void) {
+ return -1;
+}
+
+
+#define CHECK_VALUE (100)
+#define TEST_SUCCESS (0)
+#define TEST_FAILTURE (-1)
+
+int main(void) {
+ if (get_checked() == CHECK_VALUE) {
+ fprintf(stdout,"good\n");
+ return TEST_SUCCESS;
+ }
+ fprintf(stdout,"bad\n");
+ return TEST_FAILTURE;
+}
+