[glib: 2/4] Move tests/module-test.c to gmodules/tests/




commit c71d0c53b5e5f10501e03a16e1db347e46cad09a
Author: Emmanuel Fleury <emmanuel fleury gmail com>
Date:   Mon May 16 19:03:29 2022 +0200

    Move tests/module-test.c to gmodules/tests/
    
    Helps issue #1434

 {tests => gmodule/tests}/libmoduletestplugin_a.c |  6 +---
 {tests => gmodule/tests}/libmoduletestplugin_b.c |  5 +---
 gmodule/tests/meson.build                        | 33 +++++++++++++++++++++
 {tests => gmodule/tests}/module-test.c           |  2 +-
 tests/meson.build                                | 37 +-----------------------
 5 files changed, 37 insertions(+), 46 deletions(-)
---
diff --git a/tests/libmoduletestplugin_a.c b/gmodule/tests/libmoduletestplugin_a.c
similarity index 94%
rename from tests/libmoduletestplugin_a.c
rename to gmodule/tests/libmoduletestplugin_a.c
index 56bd52904c..cb65f1ce17 100644
--- a/tests/libmoduletestplugin_a.c
+++ b/gmodule/tests/libmoduletestplugin_a.c
@@ -19,14 +19,10 @@
  * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
  * file for a list of people on the GLib Team.  See the ChangeLog
  * files for a list of changes.  These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
  */
 
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
 #include       <gmodule.h>
-#include       <stdlib.h>
 
 G_MODULE_EXPORT void gplugin_a_func (void);
 G_MODULE_EXPORT void gplugin_clash_func (void);
diff --git a/tests/libmoduletestplugin_b.c b/gmodule/tests/libmoduletestplugin_b.c
similarity index 95%
rename from tests/libmoduletestplugin_b.c
rename to gmodule/tests/libmoduletestplugin_b.c
index e147dd24ec..aee241bcf3 100644
--- a/tests/libmoduletestplugin_b.c
+++ b/gmodule/tests/libmoduletestplugin_b.c
@@ -19,12 +19,9 @@
  * Modified by the GLib Team and others 1997-2000.  See the AUTHORS
  * file for a list of people on the GLib Team.  See the ChangeLog
  * files for a list of changes.  These files are distributed with
- * GLib at ftp://ftp.gtk.org/pub/gtk/. 
+ * GLib at ftp://ftp.gtk.org/pub/gtk/.
  */
 
-#undef G_DISABLE_ASSERT
-#undef G_LOG_DOMAIN
-
 #include        <gmodule.h>
 
 G_MODULE_EXPORT gchar* gplugin_b_state;
diff --git a/gmodule/tests/meson.build b/gmodule/tests/meson.build
index 9b475a88e1..1650fe5e06 100644
--- a/gmodule/tests/meson.build
+++ b/gmodule/tests/meson.build
@@ -2,8 +2,40 @@ gmodule_tests = {
   'cxx' : {
     'source' : ['cxx.cpp'],
   },
+  'module-test-library' : {
+    'export_dynamic' : true,
+    'source': 'module-test.c',
+    'c_args': ['-DMODULE_TYPE="library"'],
+  },
+  'module-test-plugin' : {
+    'export_dynamic' : true,
+    'source': 'module-test.c',
+    'c_args': ['-DMODULE_TYPE="plugin"'],
+  },
 }
 
+module_suffix = []
+# Keep the autotools convention for shared module suffix because GModule
+# depends on it: https://gitlab.gnome.org/GNOME/glib/issues/520
+if ['darwin', 'ios'].contains(host_machine.system())
+  module_suffix = 'so'
+endif
+
+foreach module : ['moduletestplugin_a', 'moduletestplugin_b']
+  shared_module(module + '_plugin', 'lib@0@.c'.format(module),
+    dependencies : [libglib_dep, libgmodule_dep],
+    install_dir : installed_tests_execdir,
+    install : installed_tests_enabled,
+    name_suffix : module_suffix
+  )
+  shared_library(module + '_library', 'lib@0@.c'.format(module),
+    dependencies : [libglib_dep, libgmodule_dep],
+    install_dir : installed_tests_execdir,
+    install : installed_tests_enabled,
+    name_suffix : module_suffix
+  )
+endforeach
+
 test_env = environment()
 test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
 test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
@@ -35,6 +67,7 @@ foreach test_name, extra_args : gmodule_tests
     c_args : test_cargs + extra_args.get('c_args', []),
     link_args : extra_args.get('link_args', []),
     dependencies : test_deps + extra_args.get('dependencies', []),
+    export_dynamic : extra_args.get('export_dynamic', false),
     install_dir: installed_tests_execdir,
     install: install,
   )
diff --git a/tests/module-test.c b/gmodule/tests/module-test.c
similarity index 99%
rename from tests/module-test.c
rename to gmodule/tests/module-test.c
index ab863e9fe8..e6cd69ac18 100644
--- a/tests/module-test.c
+++ b/gmodule/tests/module-test.c
@@ -30,7 +30,7 @@
 # define MODULE_FILENAME_PREFIX "lib"
 #endif
 
-gchar* global_state;
+gchar *global_state = NULL;
 
 G_MODULE_EXPORT void g_clash_func (void);
 
diff --git a/tests/meson.build b/tests/meson.build
index 777ba428c7..2b9ce5b1f8 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -15,20 +15,7 @@ test_cargs = ['-DG_LOG_DOMAIN="GLib"', '-UG_DISABLE_ASSERT']
 subdir('gobject')
 subdir('refcount')
 
-tests = {
-  'module-test-library' : {
-    'dependencies' : [libgmodule_dep],
-    'export_dynamic' : true,
-    'source': 'module-test.c',
-    'c_args': ['-DMODULE_TYPE="library"'],
-  },
-  'module-test-plugin' : {
-    'dependencies' : [libgmodule_dep],
-    'export_dynamic' : true,
-    'source': 'module-test.c',
-    'c_args': ['-DMODULE_TYPE="plugin"'],
-  },
-}
+tests = {}
 
 test_extra_programs = {
   'slice-test' : {
@@ -37,28 +24,6 @@ test_extra_programs = {
   'assert-msg-test' : {},
 }
 
-module_suffix = []
-# Keep the autotools convention for shared module suffix because GModule
-# depends on it: https://gitlab.gnome.org/GNOME/glib/issues/520
-if ['darwin', 'ios'].contains(host_machine.system())
-  module_suffix = 'so'
-endif
-
-foreach module : ['moduletestplugin_a', 'moduletestplugin_b']
-  shared_module(module + '_plugin', 'lib@0@.c'.format(module),
-    dependencies : [libglib_dep, libgmodule_dep],
-    install_dir : installed_tests_execdir,
-    install : installed_tests_enabled,
-    name_suffix : module_suffix
-  )
-  shared_library(module + '_library', 'lib@0@.c'.format(module),
-    dependencies : [libglib_dep, libgmodule_dep],
-    install_dir : installed_tests_execdir,
-    install : installed_tests_enabled,
-    name_suffix : module_suffix
-  )
-endforeach
-
 common_c_args = test_cargs + ['-DGLIB_DISABLE_DEPRECATION_WARNINGS']
 common_deps = [libm, thread_dep, libglib_dep]
 


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