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)
- 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')
+ endif
+ if cc.get_id() != 'msvc'
common_cflags += ['-fvisibility=hidden']
endif
endif
G_IMPLEMENT_INTERFACE (GDK_TYPE_PAINTABLE,
gtk_gst_media_file_paintable_init))
-G_MODULE_EXPORT
void
g_io_module_load (GIOModule *module)
{
10);
}
-G_MODULE_EXPORT
G_GNUC_NORETURN
void
g_io_module_unload (GIOModule *module)
g_assert_not_reached ();
}
-G_MODULE_EXPORT
char **
g_io_module_query (void)
{
media_subdir = 'gtk-4.0/@0@/media'.format(gtk_binary_version)
media_install_dir = join_paths(get_option('libdir'), media_subdir)
-extra_c_args = ['-DGTK_COMPILATION']
+extra_c_args = [
+ '-DGTK_COMPILATION',
+ '-D_GLIB_EXTERN=@0@'.format(visibility_define),
+]
+
extra_c_args += common_cflags
if media_backends.contains('ffmpeg')
G_DEFINE_DYNAMIC_TYPE (GtkPrintBackendCloudprint, gtk_print_backend_cloudprint, GTK_TYPE_PRINT_BACKEND)
-G_MODULE_EXPORT
void
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)
{
G_DEFINE_DYNAMIC_TYPE(GtkPrintBackendCups, gtk_print_backend_cups, GTK_TYPE_PRINT_BACKEND)
-G_MODULE_EXPORT
void
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)
{
G_DEFINE_DYNAMIC_TYPE(GtkPrintBackendFile, gtk_print_backend_file, GTK_TYPE_PRINT_BACKEND)
-G_MODULE_EXPORT
void
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)
{
G_DEFINE_DYNAMIC_TYPE (GtkPrintBackendLpr, gtk_print_backend_lpr, GTK_TYPE_PRINT_BACKEND)
-G_MODULE_EXPORT
void
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)
{
'-DGTK_COMPILATION',
'-DGTK_DISABLE_DEPRECATION_WARNINGS',
'-DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED',
+ '-D_GLIB_EXTERN=@0@'.format(visibility_define),
] + common_cflags
if print_backends.contains('cups')