Skip to content
  • Allison Karlitskaya's avatar
    Add a new _GLIB_EXTERN macro for "extern" · b91c4768
    Allison Karlitskaya authored
    This macro simply evaluates the "extern" unless it has been explicitly
    defined to something else.
    
    All of the version macros (including the unversioned deprecation markers
    and GLIB_AVAILABLE_IN_ALL) now include _GLIB_EXTERN as part of their
    definition.
    
    G_INLINE has also been modified to use _GLIB_EXTERN where appropriate.
    
    This macro should never be used outside of the gmacros.h/gversonmacros.h
    headers.
    
    The effect of this patch is that "extern" has now been added to all
    functions declared in installed headers.  Strictly speaking, this is
    something we should have had all along...
    
    GLIB_VAR and GOBJECT_VAR have also been modified to use _GLIB_EXTERN on
    non-Windows, instead of "extern" which they were using before.  The
    eventual goal is to use the normal version/deprecation macros on
    exported variables and drop GLIB_VAR but we need to see how this will
    work on Windows before we go ahead with that.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=688681
    b91c4768