mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 06:56:14 +01:00
giomodules: g_io_module_* must always be exported
Those symbols are not used by GIO itself but by external modules.
This commit is contained in:
parent
e5565f6635
commit
90fcbc7dfc
@ -103,7 +103,11 @@ GIO_AVAILABLE_IN_ALL
|
|||||||
GTypeClass* g_io_extension_ref_class (GIOExtension *extension);
|
GTypeClass* g_io_extension_ref_class (GIOExtension *extension);
|
||||||
|
|
||||||
|
|
||||||
/* API for the modules to implement */
|
/* API for the modules to implement.
|
||||||
|
* Note that those functions are not implemented by libgio, they are declared
|
||||||
|
* here to be implemented in modules, that's why it uses G_MODULE_EXPORT
|
||||||
|
* instead of GIO_AVAILABLE_IN_ALL.
|
||||||
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* g_io_module_load: (skip)
|
* g_io_module_load: (skip)
|
||||||
@ -123,7 +127,7 @@ GTypeClass* g_io_extension_ref_class (GIOExtension
|
|||||||
* statically. The old symbol names continue to be supported, but cannot be used
|
* statically. The old symbol names continue to be supported, but cannot be used
|
||||||
* for static builds.
|
* for static builds.
|
||||||
**/
|
**/
|
||||||
GIO_AVAILABLE_IN_ALL
|
G_MODULE_EXPORT
|
||||||
void g_io_module_load (GIOModule *module);
|
void g_io_module_load (GIOModule *module);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -143,7 +147,7 @@ void g_io_module_load (GIOModule *module);
|
|||||||
* statically. The old symbol names continue to be supported, but cannot be used
|
* statically. The old symbol names continue to be supported, but cannot be used
|
||||||
* for static builds.
|
* for static builds.
|
||||||
**/
|
**/
|
||||||
GIO_AVAILABLE_IN_ALL
|
G_MODULE_EXPORT
|
||||||
void g_io_module_unload (GIOModule *module);
|
void g_io_module_unload (GIOModule *module);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -187,7 +191,7 @@ void g_io_module_unload (GIOModule *module);
|
|||||||
*
|
*
|
||||||
* Since: 2.24
|
* Since: 2.24
|
||||||
**/
|
**/
|
||||||
GIO_AVAILABLE_IN_ALL
|
G_MODULE_EXPORT
|
||||||
char **g_io_module_query (void);
|
char **g_io_module_query (void);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
/* This is the same check that's done in configure to create config.h */
|
/* This is the same check that's done in configure to create config.h */
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
#ifdef GLIB_STATIC_COMPILATION
|
#ifdef GLIB_TEST_STATIC_COMPILATION
|
||||||
#define GLIB_TEST_EXPORT_SYMBOL extern
|
#define GLIB_TEST_EXPORT_SYMBOL extern
|
||||||
#else
|
#else
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
|
@ -20,8 +20,6 @@
|
|||||||
* if advised of the possibility of such damage.
|
* if advised of the possibility of such damage.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "config.h" /* for _GLIB_EXTERN */
|
|
||||||
|
|
||||||
#include <gio/gio.h>
|
#include <gio/gio.h>
|
||||||
|
|
||||||
#include "symbol-visibility.h"
|
#include "symbol-visibility.h"
|
||||||
|
@ -20,8 +20,6 @@
|
|||||||
* if advised of the possibility of such damage.
|
* if advised of the possibility of such damage.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "config.h" /* for _GLIB_EXTERN */
|
|
||||||
|
|
||||||
#include <gio/gio.h>
|
#include <gio/gio.h>
|
||||||
|
|
||||||
#include "symbol-visibility.h"
|
#include "symbol-visibility.h"
|
||||||
|
@ -6,8 +6,6 @@
|
|||||||
* g_io_module*() symbols, is defined to be _GLIB_EXTERN,
|
* g_io_module*() symbols, is defined to be _GLIB_EXTERN,
|
||||||
* which must be overridden to export the symbols.
|
* which must be overridden to export the symbols.
|
||||||
*/
|
*/
|
||||||
#include "modules/symbol-visibility.h"
|
|
||||||
#define _GLIB_EXTERN GLIB_TEST_EXPORT_SYMBOL
|
|
||||||
|
|
||||||
#include <gio/gio.h>
|
#include <gio/gio.h>
|
||||||
|
|
||||||
|
@ -178,6 +178,11 @@
|
|||||||
* non-default
|
* non-default
|
||||||
* [visibility flag](https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#index-fvisibility-1260)
|
* [visibility flag](https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-Options.html#index-fvisibility-1260)
|
||||||
* such as `hidden`.
|
* such as `hidden`.
|
||||||
|
*
|
||||||
|
* This macro must only be used when compiling a shared module. Modules that
|
||||||
|
* support both shared and static linking should define their own macro that
|
||||||
|
* expands to %G_MODULE_EXPORT when compiling the shared module, but is empty
|
||||||
|
* when compiling the static module on Windows.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -35,14 +35,16 @@ G_BEGIN_DECLS
|
|||||||
/* exporting and importing functions, this is special cased
|
/* exporting and importing functions, this is special cased
|
||||||
* to feature Windows dll stubs.
|
* to feature Windows dll stubs.
|
||||||
*/
|
*/
|
||||||
#define G_MODULE_IMPORT extern
|
#if defined(_WIN32) || defined(__CYGWIN__)
|
||||||
#ifdef G_PLATFORM_WIN32
|
|
||||||
# define G_MODULE_EXPORT __declspec(dllexport)
|
# define G_MODULE_EXPORT __declspec(dllexport)
|
||||||
|
# define G_MODULE_IMPORT __declspec(dllimport) extern
|
||||||
#elif __GNUC__ >= 4
|
#elif __GNUC__ >= 4
|
||||||
# define G_MODULE_EXPORT __attribute__((visibility("default")))
|
# define G_MODULE_EXPORT __attribute__((visibility("default")))
|
||||||
#else /* !G_PLATFORM_WIN32 && __GNUC__ < 4 */
|
# define G_MODULE_IMPORT extern
|
||||||
|
#else /* !defined(_WIN32) && !defined(__CYGWIN__) && __GNUC__ < 4 */
|
||||||
# define G_MODULE_EXPORT
|
# define G_MODULE_EXPORT
|
||||||
#endif /* !G_PLATFORM_WIN32 */
|
# define G_MODULE_IMPORT extern
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* GModuleFlags:
|
* GModuleFlags:
|
||||||
|
Loading…
Reference in New Issue
Block a user