aboutsummaryrefslogtreecommitdiffstats
path: root/meson/test cases/cmake/2 advanced/subprojects/cmMod/lib
diff options
context:
space:
mode:
Diffstat (limited to 'meson/test cases/cmake/2 advanced/subprojects/cmMod/lib')
-rw-r--r--meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp26
-rw-r--r--meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.hpp13
2 files changed, 39 insertions, 0 deletions
diff --git a/meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp b/meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp
new file mode 100644
index 000000000..eb414382d
--- /dev/null
+++ b/meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.cpp
@@ -0,0 +1,26 @@
+#include "cmMod.hpp"
+#include <zlib.h>
+#include "config.h"
+
+#if CONFIG_OPT != 42
+#error "Invalid value of CONFIG_OPT"
+#endif
+
+#ifdef USE_FRAMEWORK
+#include <CoreFoundation/CoreFoundation.h>
+#endif
+
+using namespace std;
+
+cmModClass::cmModClass(string foo) {
+ str = foo + " World " + zlibVersion();
+
+#ifdef USE_FRAMEWORK
+ CFStringRef ref = CFStringCreateWithCString(NULL, str.c_str(), kCFStringEncodingUTF8);
+ CFRelease(ref);
+#endif
+}
+
+string cmModClass::getStr() const {
+ return str;
+}
diff --git a/meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.hpp b/meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.hpp
new file mode 100644
index 000000000..52f576bf3
--- /dev/null
+++ b/meson/test cases/cmake/2 advanced/subprojects/cmMod/lib/cmMod.hpp
@@ -0,0 +1,13 @@
+#pragma once
+
+#include <string>
+#include "cmmodlib_export.h"
+
+class CMMODLIB_EXPORT cmModClass {
+ private:
+ std::string str;
+ public:
+ cmModClass(std::string foo);
+
+ std::string getStr() const;
+};