aboutsummaryrefslogtreecommitdiffstats
path: root/meson/test cases/vala/24 export dynamic shared module/app.vala
diff options
context:
space:
mode:
Diffstat (limited to 'meson/test cases/vala/24 export dynamic shared module/app.vala')
-rw-r--r--meson/test cases/vala/24 export dynamic shared module/app.vala21
1 files changed, 21 insertions, 0 deletions
diff --git a/meson/test cases/vala/24 export dynamic shared module/app.vala b/meson/test cases/vala/24 export dynamic shared module/app.vala
new file mode 100644
index 000000000..e016ecd8b
--- /dev/null
+++ b/meson/test cases/vala/24 export dynamic shared module/app.vala
@@ -0,0 +1,21 @@
+const string MODULE_LIB = "libapp_module.so";
+
+delegate int ModuleFunc ();
+
+public int app_func () {
+ return 41;
+}
+
+int main () {
+ Module module;
+ void *func;
+ unowned ModuleFunc mfunc;
+
+ module = Module.open (MODULE_LIB, ModuleFlags.BIND_LAZY);
+ module.symbol ("module_func", out func);
+ mfunc = (ModuleFunc) func;
+
+ print ("%d\n", mfunc ());
+
+ return 0;
+}