[dia/wip/jtojnar/darwin-modules] build: Use proper plug-in extension on Darwin



commit 1ff0b547b4c908fbe42656cb2eff360fd636e6a5
Author: Jan Tojnar <jtojnar gmail com>
Date:   Tue Apr 7 13:06:08 2020 +0200

    build: Use proper plug-in extension on Darwin
    
    GLib expects .so on MacOS, whereas Meson uses dylib.

 meson.build                 | 9 +++++++++
 objects/meson.build         | 3 ++-
 plug-ins/layout/meson.build | 3 ++-
 plug-ins/meson.build        | 3 ++-
 plug-ins/python/meson.build | 3 ++-
 plug-ins/wmf/meson.build    | 3 ++-
 plug-ins/xslt/meson.build   | 3 ++-
 7 files changed, 21 insertions(+), 6 deletions(-)
---
diff --git a/meson.build b/meson.build
index 83e07e99..3bf55e75 100644
--- a/meson.build
+++ b/meson.build
@@ -103,6 +103,15 @@ add_project_arguments(
 )
 
 
+# Follow the file extensions used by GLib for modules
+# https://developer.gnome.org/glib/stable/glib-Dynamic-Loading-of-Modules.html#G-MODULE-SUFFIX:CAPS
+if host_machine.system() == 'windows'
+  g_module_suffix = 'dll'
+else
+  g_module_suffix = 'so'
+endif
+
+
 subdir('po')
 subdir('lib')
 subdir('objects')
diff --git a/objects/meson.build b/objects/meson.build
index 120d3107..05e83880 100644
--- a/objects/meson.build
+++ b/objects/meson.build
@@ -24,6 +24,7 @@ foreach o : dia_object_desc
         dependencies: [libc_dep, libgtk_dep, libxml_dep, libm_dep, libdia_dep] + o.get('extra_deps', []),
         include_directories: [configuration_inc],
         install: true,
-        install_dir: dialibdir
+        install_dir: dialibdir,
+        name_suffix: g_module_suffix,
     )
 endforeach
diff --git a/plug-ins/layout/meson.build b/plug-ins/layout/meson.build
index da5dd2df..ae85bdf5 100644
--- a/plug-ins/layout/meson.build
+++ b/plug-ins/layout/meson.build
@@ -20,5 +20,6 @@ shared_module(
     include_directories: [configuration_inc, diaapp_inc],
     link_with: [diaapp], # Naughty
     install: true,
-    install_dir: dialibdir
+    install_dir: dialibdir,
+    name_suffix: g_module_suffix,
 )
diff --git a/plug-ins/meson.build b/plug-ins/meson.build
index 554625d4..f51fb60c 100644
--- a/plug-ins/meson.build
+++ b/plug-ins/meson.build
@@ -41,6 +41,7 @@ foreach p : install_plugins_desc
         dependencies: [libc_dep, libgtk_dep, libm_dep, libxml_dep, libdia_dep] + p.get('extra_deps', []),
         include_directories: [configuration_inc],
         install: p.get('install', true),
-        install_dir: dialibdir
+        install_dir: dialibdir,
+        name_suffix: g_module_suffix,
     )
 endforeach
diff --git a/plug-ins/python/meson.build b/plug-ins/python/meson.build
index 35d2b6c5..92488a61 100644
--- a/plug-ins/python/meson.build
+++ b/plug-ins/python/meson.build
@@ -54,7 +54,8 @@ if py_dep.found()
         include_directories: [configuration_inc, diaapp_inc],
         link_with: [diaapp], # Naughty
         install: true,
-        install_dir: dialibdir
+        install_dir: dialibdir,
+        name_suffix: g_module_suffix,
     )
 
     install_data(python_scripts, install_dir: pkgdatadir / 'python')
diff --git a/plug-ins/wmf/meson.build b/plug-ins/wmf/meson.build
index 7dfbea7c..b92fd6e2 100644
--- a/plug-ins/wmf/meson.build
+++ b/plug-ins/wmf/meson.build
@@ -18,5 +18,6 @@ library(
     dependencies: [libc_dep, libgtk_dep, libm_dep, libxml_dep, libdia_dep] + deps,
     include_directories: [configuration_inc],
     install: libemf_dep.found(),
-    install_dir: dialibdir
+    install_dir: dialibdir,
+    name_suffix: g_module_suffix,
 )
diff --git a/plug-ins/xslt/meson.build b/plug-ins/xslt/meson.build
index bab4ecff..08e57a29 100644
--- a/plug-ins/xslt/meson.build
+++ b/plug-ins/xslt/meson.build
@@ -25,6 +25,7 @@ if libxslt_dep.found()
         dependencies: [libc_dep, libgtk_dep, libm_dep, libxml_dep, libdia_dep, libxslt_dep],
         include_directories: [configuration_inc],
         install: true,
-        install_dir: dialibdir
+        install_dir: dialibdir,
+        name_suffix: g_module_suffix,
     )
 endif


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]