Revert "modules: Fix build on Visual Studio"
authorMatthias Clasen <mclasen@redhat.com>
Tue, 1 Nov 2022 00:18:12 +0000 (20:18 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 1 Nov 2022 00:20:32 +0000 (20:20 -0400)
This reverts commit acd9c12667a021936b30e0fa8f43d3a8c7133cf7.

This commit breaks the build with GLib main on all platforms,
and defining _GLIB_EXTERN arguably invades the GLib namespace.

A different fix for msvc will have to be found.

meson.build
modules/media/gtkgstmediafile.c
modules/media/meson.build
modules/printbackends/gtkprintbackendcups.c
modules/printbackends/gtkprintbackendfile.c
modules/printbackends/gtkprintbackendlpr.c
modules/printbackends/meson.build

index fc6b3bb493b46c866dd16f66bc924717f2a0a131..93ccaa16b762c189a0201140177d2d6f04339330 100644 (file)
@@ -342,19 +342,15 @@ endif
 common_cflags = cc.get_supported_arguments(test_cflags)
 
 # Symbol visibility
-
-if os_win32
-  visibility_define = '__declspec(dllexport) extern'
-else
-  visibility_define = '__attribute__((visibility("default"))) extern'
-endif
-
 if get_option('default_library') != 'static'
-  cdata.set('_GDK_EXTERN', visibility_define)
   if os_win32
     cdata.set('DLL_EXPORT', true)
-  endif
-  if cc.get_id() != 'msvc'
+    cdata.set('_GDK_EXTERN', '__declspec(dllexport) extern')
+    if cc.get_id() != 'msvc'
+      common_cflags += ['-fvisibility=hidden']
+    endif
+  else
+    cdata.set('_GDK_EXTERN', '__attribute__((visibility("default"))) extern')
     common_cflags += ['-fvisibility=hidden']
   endif
 endif
index 06332149397de0d3fb7ff30e962c0c9bc864a5b8..5487bb0571d20df4fc5c181ad4cdce57d1693592 100644 (file)
@@ -97,6 +97,7 @@ G_DEFINE_TYPE_EXTENDED (GtkGstMediaFile, gtk_gst_media_file, GTK_TYPE_MEDIA_FILE
                         G_IMPLEMENT_INTERFACE (GDK_TYPE_PAINTABLE,
                                                gtk_gst_media_file_paintable_init))
 
+G_MODULE_EXPORT
 void
 g_io_module_load (GIOModule *module)
 {
@@ -108,6 +109,7 @@ g_io_module_load (GIOModule *module)
                                   10);
 }
 
+G_MODULE_EXPORT
 G_GNUC_NORETURN
 void
 g_io_module_unload (GIOModule *module)
@@ -115,6 +117,7 @@ g_io_module_unload (GIOModule *module)
   g_assert_not_reached ();
 }
 
+G_MODULE_EXPORT
 char **
 g_io_module_query (void)
 {
index 94b199649d77e9dc5ee7cba7ebae55af8519d69f..74364e64395d2c167896928779a2f0d03d328bcd 100644 (file)
@@ -2,11 +2,7 @@ media_subdir = 'gtk-4.0/@0@/media'.format(gtk_binary_version)
 media_install_dir = join_paths(get_option('libdir'), media_subdir)
 media_backends = []
 
-extra_c_args = [
-  '-DGTK_COMPILATION',
-  '-D_GLIB_EXTERN=@0@'.format(visibility_define),
-]
-
+extra_c_args = ['-DGTK_COMPILATION']
 extra_c_args += common_cflags
 
 ffmpeg_opt = get_option('media-ffmpeg')
index 41774a0bddbdc98866772caec25b8797c0e3ce73..e0398bb1d4eacc7c55797584a99082ad64a4451b 100644 (file)
@@ -246,6 +246,7 @@ static void                 secrets_service_vanished_cb             (GDBusConnec
 
 G_DEFINE_DYNAMIC_TYPE(GtkPrintBackendCups, gtk_print_backend_cups, GTK_TYPE_PRINT_BACKEND)
 
+G_MODULE_EXPORT
 void
 g_io_module_load (GIOModule *module)
 {
@@ -260,11 +261,13 @@ g_io_module_load (GIOModule *module)
                                   10);
 }
 
+G_MODULE_EXPORT
 void
 g_io_module_unload (GIOModule *module)
 {
 }
 
+G_MODULE_EXPORT
 char **
 g_io_module_query (void)
 {
index 0275492f6548a50f367f885e2be416e98619373d..739313064bbbfdf4e633b30a1e122805992511bb 100644 (file)
@@ -103,6 +103,7 @@ static GtkPageSetup *       file_printer_get_default_page_size     (GtkPrinter
 
 G_DEFINE_DYNAMIC_TYPE(GtkPrintBackendFile, gtk_print_backend_file, GTK_TYPE_PRINT_BACKEND)
 
+G_MODULE_EXPORT
 void
 g_io_module_load (GIOModule *module)
 {
@@ -116,11 +117,13 @@ g_io_module_load (GIOModule *module)
                                   10);
 }
 
+G_MODULE_EXPORT
 void
 g_io_module_unload (GIOModule *module)
 {
 }
 
+G_MODULE_EXPORT
 char **
 g_io_module_query (void)
 {
index b4f711632fa48973c6026436f11c5d0872da1935..e4b81289c67ff7f193f94ba6de93674a6f915812 100644 (file)
@@ -82,6 +82,7 @@ static void                 gtk_print_backend_lpr_print_stream    (GtkPrintBacke
 
 G_DEFINE_DYNAMIC_TYPE (GtkPrintBackendLpr, gtk_print_backend_lpr, GTK_TYPE_PRINT_BACKEND)
 
+G_MODULE_EXPORT
 void
 g_io_module_load (GIOModule *module)
 {
@@ -95,11 +96,13 @@ g_io_module_load (GIOModule *module)
                                   10);
 }
 
+G_MODULE_EXPORT
 void
 g_io_module_unload (GIOModule *module)
 {
 }
 
+G_MODULE_EXPORT
 char **
 g_io_module_query (void)
 {
index 77d97307f277d556fec0a11f1f3ab732629efbe9..6e0188f62c67815e7e613318172de7e8cb82097d 100644 (file)
@@ -8,7 +8,6 @@ printbackends_args = [
   '-DGTK_COMPILATION',
   '-DGTK_DISABLE_DEPRECATION_WARNINGS',
   '-DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED',
-  '-D_GLIB_EXTERN=@0@'.format(visibility_define),
 ] + common_cflags
 
 cups_dep = dependency('cups', version : '>=2.0', required: get_option('print-cups'))