Fix symbol visibility macros on Windows

There is currently no `dllimport` attribute on any of our function,
which prevents MSVC to optimize function calls.

To fix that issue, we need to redeclare all our visibility macros for
each of our libraries, because when compiling e.g. GIO code, we need
dllimport in GLIB headers and dllexport in GIO headers. That means they
cannot use the same GLIB_AVAILABLE_* macro.

Since that's a lot of boilerplate to copy/paste after each version bump,
this MR generate all those macros using a python script.

Also simplify the meson side by using `gnu_symbol_visibility : 'hidden'`
keyword argument instead of passing the cflag manually.

This leaves only API index to add manually into glib-docs.xml when
bumping GLib version. That file cannot be generated because Meson does
not allow passing a buit file to gnome.gtkdoc()'s main_xml kwarg
unfortunately.
This commit is contained in:
Xavier Claessens
2022-10-03 10:36:04 -04:00
parent d40459c280
commit dcfc9f689e
30 changed files with 409 additions and 1655 deletions

View File

@@ -3,7 +3,7 @@ gdbus_object_manager_example_doc = gnome.gtkdoc('gdbus-object-manager-example',
namespace : 'example',
dependencies : [libgdbus_example_objectmanager_dep],
src_dir : 'gio/tests/gdbus-object-manager-example',
scan_args : gtkdoc_common_scan_args + [
scan_args : [
'--rebuild-types',
],
install : false,

View File

@@ -98,6 +98,7 @@ if get_option('gtk_doc')
'gwin32volumemonitor.h',
'thumbnail-verify.h',
'xdp-dbus.h',
'gio-visibility.h',
]
sections_files = files('gio-sections-common.txt')
@@ -187,7 +188,8 @@ if get_option('gtk_doc')
mode : 'none',
dependencies : [libgio_dep, libgobject_dep, libglib_dep],
src_dir : 'gio',
scan_args : gtkdoc_common_scan_args + [
scan_args : [
'--ignore-decorators=' + ignore_decorators.replace('GLIB', 'GIO'),
'--rebuild-types',
'--ignore-headers=' + ' '.join(ignore_headers),
],

View File

@@ -116,355 +116,22 @@ GLIB_MICRO_VERSION
GLIB_CHECK_VERSION
<SUBSECTION>
GLIB_VERSION_2_26
GLIB_VERSION_2_28
GLIB_VERSION_2_30
GLIB_VERSION_2_32
GLIB_VERSION_2_34
GLIB_VERSION_2_36
GLIB_VERSION_2_38
GLIB_VERSION_2_40
GLIB_VERSION_2_42
GLIB_VERSION_2_44
GLIB_VERSION_2_46
GLIB_VERSION_2_48
GLIB_VERSION_2_50
GLIB_VERSION_2_52
GLIB_VERSION_2_54
GLIB_VERSION_2_56
GLIB_VERSION_2_58
GLIB_VERSION_2_60
GLIB_VERSION_2_62
GLIB_VERSION_2_64
GLIB_VERSION_2_66
GLIB_VERSION_2_68
GLIB_VERSION_2_70
GLIB_VERSION_2_72
GLIB_VERSION_2_74
GLIB_VERSION_CUR_STABLE
GLIB_VERSION_PREV_STABLE
GLIB_VERSION_MIN_REQUIRED
GLIB_VERSION_MAX_ALLOWED
GLIB_DISABLE_DEPRECATION_WARNINGS
@GLIB_VERSIONS@
<SUBSECTION Private>
G_ENCODE_VERSION
GLIB_AVAILABLE_ENUMERATOR_IN_2_26
GLIB_AVAILABLE_ENUMERATOR_IN_2_28
GLIB_AVAILABLE_ENUMERATOR_IN_2_30
GLIB_AVAILABLE_ENUMERATOR_IN_2_32
GLIB_AVAILABLE_ENUMERATOR_IN_2_34
GLIB_AVAILABLE_ENUMERATOR_IN_2_36
GLIB_AVAILABLE_ENUMERATOR_IN_2_38
GLIB_AVAILABLE_ENUMERATOR_IN_2_40
GLIB_AVAILABLE_ENUMERATOR_IN_2_42
GLIB_AVAILABLE_ENUMERATOR_IN_2_44
GLIB_AVAILABLE_ENUMERATOR_IN_2_46
GLIB_AVAILABLE_ENUMERATOR_IN_2_48
GLIB_AVAILABLE_ENUMERATOR_IN_2_50
GLIB_AVAILABLE_ENUMERATOR_IN_2_52
GLIB_AVAILABLE_ENUMERATOR_IN_2_54
GLIB_AVAILABLE_ENUMERATOR_IN_2_56
GLIB_AVAILABLE_ENUMERATOR_IN_2_58
GLIB_AVAILABLE_ENUMERATOR_IN_2_60
GLIB_AVAILABLE_ENUMERATOR_IN_2_62
GLIB_AVAILABLE_ENUMERATOR_IN_2_64
GLIB_AVAILABLE_ENUMERATOR_IN_2_66
GLIB_AVAILABLE_ENUMERATOR_IN_2_68
GLIB_AVAILABLE_ENUMERATOR_IN_2_70
GLIB_AVAILABLE_ENUMERATOR_IN_2_72
GLIB_AVAILABLE_ENUMERATOR_IN_2_74
GLIB_AVAILABLE_IN_ALL
GLIB_AVAILABLE_IN_2_26
GLIB_AVAILABLE_IN_2_28
GLIB_AVAILABLE_IN_2_30
GLIB_AVAILABLE_IN_2_32
GLIB_AVAILABLE_IN_2_34
GLIB_AVAILABLE_IN_2_36
GLIB_AVAILABLE_IN_2_38
GLIB_AVAILABLE_IN_2_40
GLIB_AVAILABLE_IN_2_42
GLIB_AVAILABLE_IN_2_44
GLIB_AVAILABLE_IN_2_46
GLIB_AVAILABLE_IN_2_48
GLIB_AVAILABLE_IN_2_50
GLIB_AVAILABLE_IN_2_52
GLIB_AVAILABLE_IN_2_54
GLIB_AVAILABLE_IN_2_56
GLIB_AVAILABLE_IN_2_58
GLIB_AVAILABLE_IN_2_60
GLIB_AVAILABLE_IN_2_62
GLIB_AVAILABLE_IN_2_64
GLIB_AVAILABLE_IN_2_66
GLIB_AVAILABLE_IN_2_68
GLIB_AVAILABLE_IN_2_70
GLIB_AVAILABLE_IN_2_72
GLIB_AVAILABLE_IN_2_74
GLIB_AVAILABLE_MACRO_IN_2_26
GLIB_AVAILABLE_MACRO_IN_2_28
GLIB_AVAILABLE_MACRO_IN_2_30
GLIB_AVAILABLE_MACRO_IN_2_32
GLIB_AVAILABLE_MACRO_IN_2_34
GLIB_AVAILABLE_MACRO_IN_2_36
GLIB_AVAILABLE_MACRO_IN_2_38
GLIB_AVAILABLE_MACRO_IN_2_40
GLIB_AVAILABLE_MACRO_IN_2_42
GLIB_AVAILABLE_MACRO_IN_2_44
GLIB_AVAILABLE_MACRO_IN_2_46
GLIB_AVAILABLE_MACRO_IN_2_48
GLIB_AVAILABLE_MACRO_IN_2_50
GLIB_AVAILABLE_MACRO_IN_2_52
GLIB_AVAILABLE_MACRO_IN_2_54
GLIB_AVAILABLE_MACRO_IN_2_56
GLIB_AVAILABLE_MACRO_IN_2_58
GLIB_AVAILABLE_MACRO_IN_2_60
GLIB_AVAILABLE_MACRO_IN_2_62
GLIB_AVAILABLE_MACRO_IN_2_64
GLIB_AVAILABLE_MACRO_IN_2_66
GLIB_AVAILABLE_MACRO_IN_2_68
GLIB_AVAILABLE_MACRO_IN_2_70
GLIB_AVAILABLE_MACRO_IN_2_72
GLIB_AVAILABLE_MACRO_IN_2_74
GLIB_AVAILABLE_STATIC_INLINE_IN_2_44
GLIB_AVAILABLE_STATIC_INLINE_IN_2_60
GLIB_AVAILABLE_STATIC_INLINE_IN_2_62
GLIB_AVAILABLE_STATIC_INLINE_IN_2_64
GLIB_AVAILABLE_STATIC_INLINE_IN_2_66
GLIB_AVAILABLE_STATIC_INLINE_IN_2_68
GLIB_AVAILABLE_STATIC_INLINE_IN_2_70
GLIB_AVAILABLE_STATIC_INLINE_IN_2_72
GLIB_AVAILABLE_STATIC_INLINE_IN_2_74
GLIB_AVAILABLE_TYPE_IN_2_26
GLIB_AVAILABLE_TYPE_IN_2_28
GLIB_AVAILABLE_TYPE_IN_2_30
GLIB_AVAILABLE_TYPE_IN_2_32
GLIB_AVAILABLE_TYPE_IN_2_34
GLIB_AVAILABLE_TYPE_IN_2_36
GLIB_AVAILABLE_TYPE_IN_2_38
GLIB_AVAILABLE_TYPE_IN_2_40
GLIB_AVAILABLE_TYPE_IN_2_42
GLIB_AVAILABLE_TYPE_IN_2_44
GLIB_AVAILABLE_TYPE_IN_2_46
GLIB_AVAILABLE_TYPE_IN_2_48
GLIB_AVAILABLE_TYPE_IN_2_50
GLIB_AVAILABLE_TYPE_IN_2_52
GLIB_AVAILABLE_TYPE_IN_2_54
GLIB_AVAILABLE_TYPE_IN_2_56
GLIB_AVAILABLE_TYPE_IN_2_58
GLIB_AVAILABLE_TYPE_IN_2_60
GLIB_AVAILABLE_TYPE_IN_2_62
GLIB_AVAILABLE_TYPE_IN_2_64
GLIB_AVAILABLE_TYPE_IN_2_66
GLIB_AVAILABLE_TYPE_IN_2_68
GLIB_AVAILABLE_TYPE_IN_2_70
GLIB_AVAILABLE_TYPE_IN_2_72
GLIB_AVAILABLE_TYPE_IN_2_74
GLIB_DEPRECATED_ENUMERATOR
GLIB_DEPRECATED_ENUMERATOR_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_26
GLIB_DEPRECATED_ENUMERATOR_IN_2_26_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_28
GLIB_DEPRECATED_ENUMERATOR_IN_2_28_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_30
GLIB_DEPRECATED_ENUMERATOR_IN_2_30_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_32
GLIB_DEPRECATED_ENUMERATOR_IN_2_32_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_34
GLIB_DEPRECATED_ENUMERATOR_IN_2_34_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_36
GLIB_DEPRECATED_ENUMERATOR_IN_2_36_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_38
GLIB_DEPRECATED_ENUMERATOR_IN_2_38_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_40
GLIB_DEPRECATED_ENUMERATOR_IN_2_40_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_42
GLIB_DEPRECATED_ENUMERATOR_IN_2_42_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_44
GLIB_DEPRECATED_ENUMERATOR_IN_2_44_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_46
GLIB_DEPRECATED_ENUMERATOR_IN_2_46_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_48
GLIB_DEPRECATED_ENUMERATOR_IN_2_48_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_50
GLIB_DEPRECATED_ENUMERATOR_IN_2_50_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_52
GLIB_DEPRECATED_ENUMERATOR_IN_2_52_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_54
GLIB_DEPRECATED_ENUMERATOR_IN_2_54_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_56
GLIB_DEPRECATED_ENUMERATOR_IN_2_56_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_58
GLIB_DEPRECATED_ENUMERATOR_IN_2_58_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_60
GLIB_DEPRECATED_ENUMERATOR_IN_2_60_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_62
GLIB_DEPRECATED_ENUMERATOR_IN_2_62_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_64
GLIB_DEPRECATED_ENUMERATOR_IN_2_64_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_66
GLIB_DEPRECATED_ENUMERATOR_IN_2_66_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_68
GLIB_DEPRECATED_ENUMERATOR_IN_2_68_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_70
GLIB_DEPRECATED_ENUMERATOR_IN_2_70_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_72
GLIB_DEPRECATED_ENUMERATOR_IN_2_72_FOR
GLIB_DEPRECATED_ENUMERATOR_IN_2_74
GLIB_DEPRECATED_ENUMERATOR_IN_2_74_FOR
GLIB_DEPRECATED_IN_2_26
GLIB_DEPRECATED_IN_2_26_FOR
GLIB_DEPRECATED_IN_2_28
GLIB_DEPRECATED_IN_2_28_FOR
GLIB_DEPRECATED_IN_2_30
GLIB_DEPRECATED_IN_2_30_FOR
GLIB_DEPRECATED_IN_2_32
GLIB_DEPRECATED_IN_2_32_FOR
GLIB_DEPRECATED_IN_2_34
GLIB_DEPRECATED_IN_2_34_FOR
GLIB_DEPRECATED_IN_2_36
GLIB_DEPRECATED_IN_2_36_FOR
GLIB_DEPRECATED_IN_2_38
GLIB_DEPRECATED_IN_2_38_FOR
GLIB_DEPRECATED_IN_2_40
GLIB_DEPRECATED_IN_2_40_FOR
GLIB_DEPRECATED_IN_2_42
GLIB_DEPRECATED_IN_2_42_FOR
GLIB_DEPRECATED_IN_2_44
GLIB_DEPRECATED_IN_2_44_FOR
GLIB_DEPRECATED_IN_2_46
GLIB_DEPRECATED_IN_2_46_FOR
GLIB_DEPRECATED_IN_2_48
GLIB_DEPRECATED_IN_2_48_FOR
GLIB_DEPRECATED_IN_2_50
GLIB_DEPRECATED_IN_2_50_FOR
GLIB_DEPRECATED_IN_2_52
GLIB_DEPRECATED_IN_2_52_FOR
GLIB_DEPRECATED_IN_2_54
GLIB_DEPRECATED_IN_2_54_FOR
GLIB_DEPRECATED_IN_2_56
GLIB_DEPRECATED_IN_2_56_FOR
GLIB_DEPRECATED_IN_2_58
GLIB_DEPRECATED_IN_2_58_FOR
GLIB_DEPRECATED_IN_2_60
GLIB_DEPRECATED_IN_2_60_FOR
GLIB_DEPRECATED_IN_2_62
GLIB_DEPRECATED_IN_2_62_FOR
GLIB_DEPRECATED_IN_2_64
GLIB_DEPRECATED_IN_2_64_FOR
GLIB_DEPRECATED_IN_2_66
GLIB_DEPRECATED_IN_2_66_FOR
GLIB_DEPRECATED_IN_2_68
GLIB_DEPRECATED_IN_2_68_FOR
GLIB_DEPRECATED_IN_2_70
GLIB_DEPRECATED_IN_2_70_FOR
GLIB_DEPRECATED_IN_2_72
GLIB_DEPRECATED_IN_2_72_FOR
GLIB_DEPRECATED_IN_2_74
GLIB_DEPRECATED_IN_2_74_FOR
GLIB_DEPRECATED_MACRO
GLIB_DEPRECATED_MACRO_FOR
GLIB_DEPRECATED_MACRO_IN_2_26
GLIB_DEPRECATED_MACRO_IN_2_26_FOR
GLIB_DEPRECATED_MACRO_IN_2_28
GLIB_DEPRECATED_MACRO_IN_2_28_FOR
GLIB_DEPRECATED_MACRO_IN_2_30
GLIB_DEPRECATED_MACRO_IN_2_30_FOR
GLIB_DEPRECATED_MACRO_IN_2_32
GLIB_DEPRECATED_MACRO_IN_2_32_FOR
GLIB_DEPRECATED_MACRO_IN_2_34
GLIB_DEPRECATED_MACRO_IN_2_34_FOR
GLIB_DEPRECATED_MACRO_IN_2_36
GLIB_DEPRECATED_MACRO_IN_2_36_FOR
GLIB_DEPRECATED_MACRO_IN_2_38
GLIB_DEPRECATED_MACRO_IN_2_38_FOR
GLIB_DEPRECATED_MACRO_IN_2_40
GLIB_DEPRECATED_MACRO_IN_2_40_FOR
GLIB_DEPRECATED_MACRO_IN_2_42
GLIB_DEPRECATED_MACRO_IN_2_42_FOR
GLIB_DEPRECATED_MACRO_IN_2_44
GLIB_DEPRECATED_MACRO_IN_2_44_FOR
GLIB_DEPRECATED_MACRO_IN_2_46
GLIB_DEPRECATED_MACRO_IN_2_46_FOR
GLIB_DEPRECATED_MACRO_IN_2_48
GLIB_DEPRECATED_MACRO_IN_2_48_FOR
GLIB_DEPRECATED_MACRO_IN_2_50
GLIB_DEPRECATED_MACRO_IN_2_50_FOR
GLIB_DEPRECATED_MACRO_IN_2_52
GLIB_DEPRECATED_MACRO_IN_2_52_FOR
GLIB_DEPRECATED_MACRO_IN_2_54
GLIB_DEPRECATED_MACRO_IN_2_54_FOR
GLIB_DEPRECATED_MACRO_IN_2_56
GLIB_DEPRECATED_MACRO_IN_2_56_FOR
GLIB_DEPRECATED_MACRO_IN_2_58
GLIB_DEPRECATED_MACRO_IN_2_58_FOR
GLIB_DEPRECATED_MACRO_IN_2_60
GLIB_DEPRECATED_MACRO_IN_2_60_FOR
GLIB_DEPRECATED_MACRO_IN_2_62
GLIB_DEPRECATED_MACRO_IN_2_62_FOR
GLIB_DEPRECATED_MACRO_IN_2_64
GLIB_DEPRECATED_MACRO_IN_2_64_FOR
GLIB_DEPRECATED_MACRO_IN_2_66
GLIB_DEPRECATED_MACRO_IN_2_66_FOR
GLIB_DEPRECATED_MACRO_IN_2_68
GLIB_DEPRECATED_MACRO_IN_2_68_FOR
GLIB_DEPRECATED_MACRO_IN_2_70
GLIB_DEPRECATED_MACRO_IN_2_70_FOR
GLIB_DEPRECATED_MACRO_IN_2_72
GLIB_DEPRECATED_MACRO_IN_2_72_FOR
GLIB_DEPRECATED_MACRO_IN_2_74
GLIB_DEPRECATED_MACRO_IN_2_74_FOR
GLIB_DEPRECATED_TYPE
GLIB_DEPRECATED_TYPE_FOR
GLIB_DEPRECATED_TYPE_IN_2_26
GLIB_DEPRECATED_TYPE_IN_2_26_FOR
GLIB_DEPRECATED_TYPE_IN_2_28
GLIB_DEPRECATED_TYPE_IN_2_28_FOR
GLIB_DEPRECATED_TYPE_IN_2_30
GLIB_DEPRECATED_TYPE_IN_2_30_FOR
GLIB_DEPRECATED_TYPE_IN_2_32
GLIB_DEPRECATED_TYPE_IN_2_32_FOR
GLIB_DEPRECATED_TYPE_IN_2_34
GLIB_DEPRECATED_TYPE_IN_2_34_FOR
GLIB_DEPRECATED_TYPE_IN_2_36
GLIB_DEPRECATED_TYPE_IN_2_36_FOR
GLIB_DEPRECATED_TYPE_IN_2_38
GLIB_DEPRECATED_TYPE_IN_2_38_FOR
GLIB_DEPRECATED_TYPE_IN_2_40
GLIB_DEPRECATED_TYPE_IN_2_40_FOR
GLIB_DEPRECATED_TYPE_IN_2_42
GLIB_DEPRECATED_TYPE_IN_2_42_FOR
GLIB_DEPRECATED_TYPE_IN_2_44
GLIB_DEPRECATED_TYPE_IN_2_44_FOR
GLIB_DEPRECATED_TYPE_IN_2_46
GLIB_DEPRECATED_TYPE_IN_2_46_FOR
GLIB_DEPRECATED_TYPE_IN_2_48
GLIB_DEPRECATED_TYPE_IN_2_48_FOR
GLIB_DEPRECATED_TYPE_IN_2_50
GLIB_DEPRECATED_TYPE_IN_2_50_FOR
GLIB_DEPRECATED_TYPE_IN_2_52
GLIB_DEPRECATED_TYPE_IN_2_52_FOR
GLIB_DEPRECATED_TYPE_IN_2_54
GLIB_DEPRECATED_TYPE_IN_2_54_FOR
GLIB_DEPRECATED_TYPE_IN_2_56
GLIB_DEPRECATED_TYPE_IN_2_56_FOR
GLIB_DEPRECATED_TYPE_IN_2_58
GLIB_DEPRECATED_TYPE_IN_2_58_FOR
GLIB_DEPRECATED_TYPE_IN_2_60
GLIB_DEPRECATED_TYPE_IN_2_60_FOR
GLIB_DEPRECATED_TYPE_IN_2_62
GLIB_DEPRECATED_TYPE_IN_2_62_FOR
GLIB_DEPRECATED_TYPE_IN_2_64
GLIB_DEPRECATED_TYPE_IN_2_64_FOR
GLIB_DEPRECATED_TYPE_IN_2_66
GLIB_DEPRECATED_TYPE_IN_2_66_FOR
GLIB_DEPRECATED_TYPE_IN_2_68
GLIB_DEPRECATED_TYPE_IN_2_68_FOR
GLIB_DEPRECATED_TYPE_IN_2_70
GLIB_DEPRECATED_TYPE_IN_2_70_FOR
GLIB_DEPRECATED_TYPE_IN_2_72
GLIB_DEPRECATED_TYPE_IN_2_72_FOR
GLIB_DEPRECATED_TYPE_IN_2_74
GLIB_DEPRECATED_TYPE_IN_2_74_FOR
GLIB_VERSION_CUR_STABLE
GLIB_VERSION_PREV_STABLE
</SECTION>

View File

@@ -38,6 +38,8 @@ if get_option('gtk_doc')
'gutilsprivate.h',
'gvalgrind.h',
'dirent.h',
'glib-visibility.h',
'gmodule-visibility.h',
]
docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
@@ -49,13 +51,20 @@ if get_option('gtk_doc')
configuration: version_conf
)
configure_file(
input: 'glib-sections.txt.in',
output: 'glib-sections.txt',
command: [gen_visibility_macros, meson.project_version(), 'doc-sections', '@INPUT@', '@OUTPUT@'],
)
gnome.gtkdoc('glib',
main_xml : 'glib-docs.xml',
namespace : 'g',
mode : 'none',
src_dir : [ 'glib', 'gmodule' ],
dependencies : libglib_dep,
scan_args : gtkdoc_common_scan_args + [
scan_args : [
'--ignore-decorators=' + ignore_decorators + '|' + ignore_decorators.replace('GLIB', 'GMODULE'),
'--ignore-headers=' + ' '.join(ignore_headers),
],
content_files : [

View File

@@ -185,9 +185,6 @@ G_TYPE_RESERVED_GLIB_LAST
G_TYPE_RESERVED_BSE_FIRST
G_TYPE_RESERVED_BSE_LAST
G_TYPE_RESERVED_USER_FIRST
<SUBSECTION Private>
GOBJECT_VAR
</SECTION>
<SECTION>

View File

@@ -8,6 +8,7 @@ if get_option('gtk_doc')
'gobject_trace.h',
'gtype-private.h',
'glib-enumtypes.h',
'gobject-visibility.h',
]
docpath = join_paths(glib_datadir, 'gtk-doc', 'html')
@@ -28,7 +29,8 @@ if get_option('gtk_doc')
dependencies : [libgobject_dep, libglib_dep],
include_directories : [gtkdocincl],
src_dir : 'gobject',
scan_args : gtkdoc_common_scan_args + [
scan_args : [
'--ignore-decorators=' + '|'.join(ignore_decorators.replace('GLIB', 'GOBJECT')),
'--rebuild-types',
'--ignore-headers=' + ' '.join(ignore_headers),
],

View File

@@ -37,9 +37,7 @@ foreach i : range(first_version, last_version + 2, 2)
]
endforeach
gtkdoc_common_scan_args = [
'--ignore-decorators=' + '|'.join(ignore_decorators),
]
ignore_decorators = '|'.join(ignore_decorators)
if get_option('gtk_doc')
# Check we have the minimum gtk-doc version required. Older versions won't