aboutsummaryrefslogtreecommitdiff
path: root/test cases/cmake/2 advanced
diff options
context:
space:
mode:
authorDaniel Mensinger <daniel@mensinger-ka.de>2019-02-23 11:50:46 +0100
committerDaniel Mensinger <daniel@mensinger-ka.de>2019-06-06 18:27:02 +0200
commitbf81aac465bbfe9545393c18328804776defa0e0 (patch)
treebcb9257dc679f8ff013b143154031e8d0ec4e9d8 /test cases/cmake/2 advanced
parent2b44b4be9f0e3896ca7f7a24c92a841939332596 (diff)
downloadmeson-bf81aac465bbfe9545393c18328804776defa0e0.zip
meson-bf81aac465bbfe9545393c18328804776defa0e0.tar.gz
meson-bf81aac465bbfe9545393c18328804776defa0e0.tar.bz2
cmake: Added project tests
Diffstat (limited to 'test cases/cmake/2 advanced')
-rw-r--r--test cases/cmake/2 advanced/installed_files.txt2
-rw-r--r--test cases/cmake/2 advanced/meson.build15
-rw-r--r--test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp3
-rw-r--r--test cases/cmake/2 advanced/subprojects/cmMod/main.cpp3
4 files changed, 19 insertions, 4 deletions
diff --git a/test cases/cmake/2 advanced/installed_files.txt b/test cases/cmake/2 advanced/installed_files.txt
new file mode 100644
index 0000000..40235a5
--- /dev/null
+++ b/test cases/cmake/2 advanced/installed_files.txt
@@ -0,0 +1,2 @@
+usr/lib/libcmModLib.so
+usr/bin/testEXE \ No newline at end of file
diff --git a/test cases/cmake/2 advanced/meson.build b/test cases/cmake/2 advanced/meson.build
index eb5dab1..b3acc97 100644
--- a/test cases/cmake/2 advanced/meson.build
+++ b/test cases/cmake/2 advanced/meson.build
@@ -1,6 +1,17 @@
project('cmakeSubTest_advanced', ['cpp'])
-subproject('cmMod')
+# Test the "normal" subproject call
+sub_pro = subproject('cmMod')
+sub_dep = sub_pro.get_variable('cmModLib_dep')
-exe1 = executable('main', ['main.cpp'])
+# Test the dependency shortcut
+shortcut_dep = dependency('ttabadbneiobevn', fallback: ['cmMod', 'cmModLib_dep'])
+
+# Build some files
+exe1 = executable('main1', ['main.cpp'], dependencies: [sub_dep])
+exe2 = executable('main2', ['main.cpp'], dependencies: [shortcut_dep])
test('test1', exe1)
+test('test2', exe2)
+
+# Test if we can also extract executables
+test('test3', sub_pro.get_variable('testEXE'))
diff --git a/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp b/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp
index d3141d5..cb20844 100644
--- a/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp
+++ b/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp
@@ -1,9 +1,10 @@
#include "cmMod.hpp"
+#include <zlib.h>
using namespace std;
cmModClass::cmModClass(string foo) {
- str = foo + " World";
+ str = foo + " World " + zlibVersion();
}
string cmModClass::getStr() const {
diff --git a/test cases/cmake/2 advanced/subprojects/cmMod/main.cpp b/test cases/cmake/2 advanced/subprojects/cmMod/main.cpp
index cd21042..a1b1637 100644
--- a/test cases/cmake/2 advanced/subprojects/cmMod/main.cpp
+++ b/test cases/cmake/2 advanced/subprojects/cmMod/main.cpp
@@ -1,10 +1,11 @@
#include <iostream>
+#include <zlib.h>
#include "lib/cmMod.hpp"
using namespace std;
int main() {
cmModClass obj("Hello (LIB TEST)");
- cout << obj.getStr() << endl;
+ cout << obj.getStr() << " ZLIB: " << zlibVersion() << endl;
return 0;
}