aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/blackbox/testdata-baremetal/static-library-dependencies
diff options
context:
space:
mode:
authorDenis Shienkov <denis.shienkov@gmail.com>2020-06-22 19:06:38 +0300
committerDenis Shienkov <denis.shienkov@gmail.com>2020-06-25 13:32:41 +0000
commit4de23ccb87bc93afefded644edd4285ee1d7a6dd (patch)
treeb2f024872ae0192d24e8a61e12f2351188cb50a9 /tests/auto/blackbox/testdata-baremetal/static-library-dependencies
parentd5c901505667dce23621add4280277f288cd168f (diff)
baremetal: Add auto-test for 'static library' dependenties
This commit adds a blackbox auto-test which provides a project with a multiple static library products 'a-e' and an one application product. An application depends on the 'e' library, but this library also depends on other libraries 'a-d'. Tested for MCS51 architecture with IAR, KEIL, and SDCC toolchains. Change-Id: Ib79f4f7bed4ac0bf6f06d39705bb19bd4284f22d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Diffstat (limited to 'tests/auto/blackbox/testdata-baremetal/static-library-dependencies')
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a1.c4
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a2.c4
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/app.c6
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/b.c6
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/c.c6
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/d.c7
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/e.c7
-rw-r--r--tests/auto/blackbox/testdata-baremetal/static-library-dependencies/static-library-dependencies.qbs37
8 files changed, 77 insertions, 0 deletions
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a1.c b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a1.c
new file mode 100644
index 000000000..b593e95d8
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a1.c
@@ -0,0 +1,4 @@
+int a1(void)
+{
+ return 0;
+}
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a2.c b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a2.c
new file mode 100644
index 000000000..35ab7feb3
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/a2.c
@@ -0,0 +1,4 @@
+int a2(void)
+{
+ return 0;
+}
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/app.c b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/app.c
new file mode 100644
index 000000000..9814bfd9c
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/app.c
@@ -0,0 +1,6 @@
+extern int e(void);
+
+int main(void)
+{
+ return e();
+}
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/b.c b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/b.c
new file mode 100644
index 000000000..92df418d1
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/b.c
@@ -0,0 +1,6 @@
+extern int a1(void);
+
+int b(void)
+{
+ return a1();
+}
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/c.c b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/c.c
new file mode 100644
index 000000000..0c0e350f2
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/c.c
@@ -0,0 +1,6 @@
+extern int a2(void);
+
+int c(void)
+{
+ return a2();
+}
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/d.c b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/d.c
new file mode 100644
index 000000000..a3fc084f5
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/d.c
@@ -0,0 +1,7 @@
+extern int b(void);
+extern int c(void);
+
+int d(void)
+{
+ return b() + c();
+}
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/e.c b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/e.c
new file mode 100644
index 000000000..9381e845c
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/e.c
@@ -0,0 +1,7 @@
+extern int d(void);
+
+int e(void)
+{
+ return d();
+}
+
diff --git a/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/static-library-dependencies.qbs b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/static-library-dependencies.qbs
new file mode 100644
index 000000000..9a257ddfd
--- /dev/null
+++ b/tests/auto/blackbox/testdata-baremetal/static-library-dependencies/static-library-dependencies.qbs
@@ -0,0 +1,37 @@
+Project {
+ StaticLibrary {
+ name: "lib-a"
+ Depends { name: "cpp" }
+ files: ["a1.c", "a2.c"]
+ }
+ StaticLibrary {
+ name: "lib-b"
+ Depends { name: "cpp" }
+ Depends { name: "lib-a" }
+ files: ["b.c"]
+ }
+ StaticLibrary {
+ name: "lib-c"
+ Depends { name: "cpp" }
+ Depends { name: "lib-a" }
+ files: ["c.c"]
+ }
+ StaticLibrary {
+ name: "lib-d"
+ Depends { name: "cpp" }
+ Depends { name: "lib-b" }
+ Depends { name: "lib-c" }
+ files: ["d.c"]
+ }
+ StaticLibrary {
+ name: "lib-e"
+ Depends { name: "cpp" }
+ Depends { name: "lib-d" }
+ files: ["e.c"]
+ }
+ CppApplication {
+ name: "app"
+ Depends { name: "lib-e" }
+ files: ["app.c"]
+ }
+}