summaryrefslogtreecommitdiff
path: root/gobject
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2004-09-16 18:33:02 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2004-09-16 18:33:02 +0000
commit88e7569e65f74ae1140a31093396e872b4866cd7 (patch)
tree050b5ea5cf4a866ac78a84a88d48304d8b34cbb0 /gobject
parentb241f9e215c49aba5d5d29d3e5251ba6204c14b6 (diff)
Add ABI control using the same technique that is used in GTK+.
2004-09-16 Matthias Clasen <mclasen@redhat.com> Add ABI control using the same technique that is used in GTK+. * gobject.symbols: Master list of symbols. * gobject.def: Removed. It is now generated from gobject.symbols. * Makefile.am (gobject.def): Generate from gobject.symbols. (TESTS): Add abicheck.sh (EXTRA_DIST): Add abicheck.sh (export_symbols): Don't export _-prefixed symbols. * gtype.h: * gtype.c: Move the declarations of the various _init() functions to the header, and mark them as G_GNUC_INTERNAL.
Diffstat (limited to 'gobject')
-rw-r--r--gobject/ChangeLog17
-rw-r--r--gobject/Makefile.am17
-rwxr-xr-xgobject/abicheck.sh5
-rw-r--r--gobject/gobject.def322
-rw-r--r--gobject/gobject.symbols321
-rw-r--r--gobject/gtype.c12
-rw-r--r--gobject/gtype.h12
7 files changed, 369 insertions, 337 deletions
diff --git a/gobject/ChangeLog b/gobject/ChangeLog
index 8da50561e..357b9e2fc 100644
--- a/gobject/ChangeLog
+++ b/gobject/ChangeLog
@@ -1,3 +1,20 @@
+2004-09-16 Matthias Clasen <mclasen@redhat.com>
+
+ Add ABI control using the same technique that is used in GTK+.
+
+ * gobject.symbols: Master list of symbols.
+
+ * gobject.def: Removed. It is now generated from gobject.symbols.
+
+ * Makefile.am (gobject.def): Generate from gobject.symbols.
+ (TESTS): Add abicheck.sh
+ (EXTRA_DIST): Add abicheck.sh
+ (export_symbols): Don't export _-prefixed symbols.
+
+ * gtype.h:
+ * gtype.c: Move the declarations of the various _init() functions
+ to the header, and mark them as G_GNUC_INTERNAL.
+
2004-08-25 Matthias Clasen <mclasen@redhat.com>
* === Released 2.5.2 ===
diff --git a/gobject/Makefile.am b/gobject/Makefile.am
index dfb49dc72..da2abf359 100644
--- a/gobject/Makefile.am
+++ b/gobject/Makefile.am
@@ -13,6 +13,13 @@ INCLUDES = \
-DGOBJECT_COMPILATION \
-DG_DISABLE_CONST_RETURNS
+gobject.def: gobject.symbols
+ (echo -e EXPORTS; cpp -P -DINCLUDE_VARIABLES -DINCLUDE_INTERNAL_SYMBOLS -DG_OS_WIN32 $(srcdir)/gobject.symbols | sed -e '/^$$/d' -e 's/^/\t/' | sort) > gobject.def
+
+if OS_UNIX
+TESTS = abicheck.sh
+endif
+
libglib = $(top_builddir)/glib/libglib-2.0.la
# libraries to compile and install
@@ -47,6 +54,8 @@ uninstall-libtool-import-lib:
else
install-libtool-import-lib:
uninstall-libtool-import-lib:
+
+export_symbols = $(LIBTOOL_EXPORT_OPTIONS)
endif
# libtool stuff: set version and export symbols for resolving
@@ -103,14 +112,15 @@ gobject_c_sources = \
gvaluetypes.c
# these sources (also mentioned above) are generated.
-BUILT_SOURCES = gmarshal.h gmarshal.c
+BUILT_SOURCES = gmarshal.h gmarshal.c
# non-header sources (headers should be specified in the above variables)
# that don't serve as direct make target sources, i.e. they don't have
# their own .lo rules and don't get publically installed
gobject_extra_sources = \
gmarshal.list \
- gmarshal.strings
+ gmarshal.strings \
+ gobject.symbols
#
@@ -197,7 +207,8 @@ EXTRA_DIST += \
gobject.rc.in \
glib-genmarshal.1 \
glib-mkenums.in \
- glib-mkenums.1
+ glib-mkenums.1 \
+ abicheck.sh
BUILT_EXTRA_DIST = \
makefile.msc \
diff --git a/gobject/abicheck.sh b/gobject/abicheck.sh
new file mode 100755
index 000000000..9d497329a
--- /dev/null
+++ b/gobject/abicheck.sh
@@ -0,0 +1,5 @@
+#! /bin/sh
+
+cpp -P -DG_OS_UNIX -DINCLUDE_INTERNAL_SYMBOLS ${srcdir:-.}/gobject.symbols | sed -e '/^$/d' | sort > expected-abi
+nm -D .libs/libgobject-2.0.so | grep " T " | cut -c12- | sort > actual-abi
+diff -u expected-abi actual-abi && rm expected-abi actual-abi
diff --git a/gobject/gobject.def b/gobject/gobject.def
deleted file mode 100644
index 93fa3ed73..000000000
--- a/gobject/gobject.def
+++ /dev/null
@@ -1,322 +0,0 @@
-EXPORTS
- g_boxed_copy
- g_boxed_free
- g_boxed_type_register_static
- g_cclosure_marshal_BOOLEAN__FLAGS
- g_cclosure_marshal_STRING__OBJECT_POINTER
- g_cclosure_marshal_VOID__BOOLEAN
- g_cclosure_marshal_VOID__BOXED
- g_cclosure_marshal_VOID__CHAR
- g_cclosure_marshal_VOID__DOUBLE
- g_cclosure_marshal_VOID__ENUM
- g_cclosure_marshal_VOID__FLAGS
- g_cclosure_marshal_VOID__FLOAT
- g_cclosure_marshal_VOID__INT
- g_cclosure_marshal_VOID__LONG
- g_cclosure_marshal_VOID__OBJECT
- g_cclosure_marshal_VOID__PARAM
- g_cclosure_marshal_VOID__POINTER
- g_cclosure_marshal_VOID__STRING
- g_cclosure_marshal_VOID__UCHAR
- g_cclosure_marshal_VOID__UINT
- g_cclosure_marshal_VOID__UINT_POINTER
- g_cclosure_marshal_VOID__ULONG
- g_cclosure_marshal_VOID__VOID
- g_cclosure_new
- g_cclosure_new_object
- g_cclosure_new_object_swap
- g_cclosure_new_swap
- g_closure_add_finalize_notifier
- g_closure_add_invalidate_notifier
- g_closure_add_marshal_guards
- g_closure_get_type
- g_closure_invalidate
- g_closure_invoke
- g_closure_new_object
- g_closure_new_simple
- g_closure_ref
- g_closure_remove_finalize_notifier
- g_closure_remove_invalidate_notifier
- g_closure_set_marshal
- g_closure_set_meta_marshal
- g_closure_sink
- g_closure_unref
- g_enum_complete_type_info
- g_enum_get_value
- g_enum_get_value_by_name
- g_enum_get_value_by_nick
- g_enum_register_static
- g_flags_complete_type_info
- g_flags_get_first_value
- g_flags_get_value_by_name
- g_flags_get_value_by_nick
- g_flags_register_static
- g_gstring_get_type
- g_io_channel_get_type
- g_io_condition_get_type
- g_object_add_weak_pointer
- g_object_class_find_property
- g_object_class_install_property
- g_object_class_list_properties
- g_object_class_override_property
- g_object_connect
- g_object_disconnect
- g_object_freeze_notify
- g_object_get
- g_object_get_data
- g_object_get_property
- g_object_get_qdata
- g_object_get_valist
- g_object_interface_find_property
- g_object_interface_install_property
- g_object_interface_list_properties
- g_object_new
- g_object_new_valist
- g_object_newv
- g_object_notify
- g_object_ref
- g_object_remove_weak_pointer
- g_object_run_dispose
- g_object_set
- g_object_set_data
- g_object_set_data_full
- g_object_set_property
- g_object_set_qdata
- g_object_set_qdata_full
- g_object_set_valist
- g_object_steal_data
- g_object_steal_qdata
- g_object_thaw_notify
- g_object_unref
- g_object_watch_closure
- g_object_weak_ref
- g_object_weak_unref
- g_param_spec_boolean
- g_param_spec_boxed
- g_param_spec_char
- g_param_spec_double
- g_param_spec_enum
- g_param_spec_flags
- g_param_spec_float
- g_param_spec_get_blurb
- g_param_spec_get_name
- g_param_spec_get_nick
- g_param_spec_get_qdata
- g_param_spec_get_redirect_target
- g_param_spec_int
- g_param_spec_int64
- g_param_spec_internal
- g_param_spec_long
- g_param_spec_object
- g_param_spec_override
- g_param_spec_param
- g_param_spec_pointer
- g_param_spec_pool_insert
- g_param_spec_pool_list
- g_param_spec_pool_list_owned
- g_param_spec_pool_lookup
- g_param_spec_pool_new
- g_param_spec_pool_remove
- g_param_spec_ref
- g_param_spec_set_qdata
- g_param_spec_set_qdata_full
- g_param_spec_sink
- g_param_spec_steal_qdata
- g_param_spec_string
- g_param_spec_types
- g_param_spec_uchar
- g_param_spec_uint
- g_param_spec_uint64
- g_param_spec_ulong
- g_param_spec_unichar
- g_param_spec_unref
- g_param_spec_value_array
- g_param_type_register_static
- g_param_value_convert
- g_param_value_defaults
- g_param_value_set_default
- g_param_value_validate
- g_param_values_cmp
- g_pointer_type_register_static
- g_signal_accumulator_true_handled
- g_signal_add_emission_hook
- g_signal_chain_from_overridden
- g_signal_connect_closure
- g_signal_connect_closure_by_id
- g_signal_connect_data
- g_signal_connect_object
- g_signal_emit
- g_signal_emit_by_name
- g_signal_emit_valist
- g_signal_emitv
- g_signal_get_invocation_hint
- g_signal_handler_block
- g_signal_handler_disconnect
- g_signal_handler_find
- g_signal_handler_is_connected
- g_signal_handler_unblock
- g_signal_handlers_block_matched
- g_signal_handlers_destroy
- g_signal_handlers_disconnect_matched
- g_signal_handlers_unblock_matched
- g_signal_has_handler_pending
- g_signal_list_ids
- g_signal_lookup
- g_signal_name
- g_signal_new
- g_signal_new_valist
- g_signal_newv
- g_signal_override_class_closure
- g_signal_parse_name
- g_signal_query
- g_signal_remove_emission_hook
- g_signal_stop_emission
- g_signal_stop_emission_by_name
- g_signal_type_cclosure_new
- g_slist_remove_all PRIVATE
- g_source_set_closure
- g_strdup_value_contents
- g_strv_get_type
- g_type_add_class_cache_func
- g_type_add_interface_check
- g_type_add_interface_dynamic
- g_type_add_interface_static
- g_type_check_class_cast
- g_type_check_class_is_a
- g_type_check_instance
- g_type_check_instance_cast
- g_type_check_instance_is_a
- g_type_check_is_value_type
- g_type_check_value
- g_type_check_value_holds
- g_type_children
- g_type_class_add_private
- g_type_class_peek
- g_type_class_peek_parent
- g_type_class_peek_static
- g_type_class_ref
- g_type_class_unref
- g_type_class_unref_uncached
- g_type_create_instance
- g_type_default_interface_peek
- g_type_default_interface_ref
- g_type_default_interface_unref
- g_type_depth
- g_type_free_instance
- g_type_from_name
- g_type_fundamental
- g_type_fundamental_next
- g_type_get_plugin
- g_type_get_qdata
- g_type_init
- g_type_init_with_debug_flags
- g_type_instance_get_private
- g_type_interface_add_prerequisite
- g_type_interface_get_plugin
- g_type_interface_peek
- g_type_interface_peek_parent
- g_type_interface_prerequisites
- g_type_interfaces
- g_type_is_a
- g_type_module_add_interface
- g_type_module_get_type
- g_type_module_register_type
- g_type_module_set_name
- g_type_module_unuse
- g_type_module_use
- g_type_name
- g_type_name_from_class
- g_type_name_from_instance
- g_type_next_base
- g_type_parent
- g_type_plugin_complete_interface_info
- g_type_plugin_complete_type_info
- g_type_plugin_get_type
- g_type_plugin_unuse
- g_type_plugin_use
- g_type_qname
- g_type_query
- g_type_register_dynamic
- g_type_register_fundamental
- g_type_register_static
- g_type_remove_class_cache_func
- g_type_remove_interface_check
- g_type_set_qdata
- g_type_test_flags
- g_type_value_table_peek
- g_unichar_validate PRIVATE
- g_value_array_append
- g_value_array_copy
- g_value_array_free
- g_value_array_get_nth
- g_value_array_get_type
- g_value_array_insert
- g_value_array_new
- g_value_array_prepend
- g_value_array_remove
- g_value_array_sort
- g_value_array_sort_with_data
- g_value_copy
- g_value_dup_boxed
- g_value_dup_object
- g_value_dup_param
- g_value_dup_string
- g_value_fits_pointer
- g_value_get_boolean
- g_value_get_boxed
- g_value_get_char
- g_value_get_double
- g_value_get_enum
- g_value_get_flags
- g_value_get_float
- g_value_get_int
- g_value_get_int64
- g_value_get_long
- g_value_get_object
- g_value_get_param
- g_value_get_pointer
- g_value_get_string
- g_value_get_type
- g_value_get_uchar
- g_value_get_uint
- g_value_get_uint64
- g_value_get_ulong
- g_value_init
- g_value_peek_pointer
- g_value_register_transform_func
- g_value_reset
- g_value_set_boolean
- g_value_set_boxed
- g_value_set_boxed_take_ownership
- g_value_set_char
- g_value_set_double
- g_value_set_enum
- g_value_set_flags
- g_value_set_float
- g_value_set_instance
- g_value_set_int
- g_value_set_int64
- g_value_set_long
- g_value_set_object
- g_value_set_object_take_ownership
- g_value_set_param
- g_value_set_param_take_ownership
- g_value_set_pointer
- g_value_set_static_boxed
- g_value_set_static_string
- g_value_set_string
- g_value_set_string_take_ownership
- g_value_set_uchar
- g_value_set_uint
- g_value_set_uint64
- g_value_set_ulong
- g_value_take_boxed
- g_value_take_object
- g_value_take_param
- g_value_take_string
- g_value_transform
- g_value_type_compatible
- g_value_type_transformable
- g_value_types_init
- g_value_unset
-
diff --git a/gobject/gobject.symbols b/gobject/gobject.symbols
new file mode 100644
index 000000000..9a97c2c6f
--- /dev/null
+++ b/gobject/gobject.symbols
@@ -0,0 +1,321 @@
+g_boxed_copy
+g_boxed_free
+g_boxed_type_register_static
+g_cclosure_marshal_BOOLEAN__FLAGS
+g_cclosure_marshal_STRING__OBJECT_POINTER
+g_cclosure_marshal_VOID__BOOLEAN
+g_cclosure_marshal_VOID__BOXED
+g_cclosure_marshal_VOID__CHAR
+g_cclosure_marshal_VOID__DOUBLE
+g_cclosure_marshal_VOID__ENUM
+g_cclosure_marshal_VOID__FLAGS
+g_cclosure_marshal_VOID__FLOAT
+g_cclosure_marshal_VOID__INT
+g_cclosure_marshal_VOID__LONG
+g_cclosure_marshal_VOID__OBJECT
+g_cclosure_marshal_VOID__PARAM
+g_cclosure_marshal_VOID__POINTER
+g_cclosure_marshal_VOID__STRING
+g_cclosure_marshal_VOID__UCHAR
+g_cclosure_marshal_VOID__UINT
+g_cclosure_marshal_VOID__UINT_POINTER
+g_cclosure_marshal_VOID__ULONG
+g_cclosure_marshal_VOID__VOID
+g_cclosure_new
+g_cclosure_new_object
+g_cclosure_new_object_swap
+g_cclosure_new_swap
+g_closure_add_finalize_notifier
+g_closure_add_invalidate_notifier
+g_closure_add_marshal_guards
+g_closure_get_type
+g_closure_invalidate
+g_closure_invoke
+g_closure_new_object
+g_closure_new_simple
+g_closure_ref
+g_closure_remove_finalize_notifier
+g_closure_remove_invalidate_notifier
+g_closure_set_marshal
+g_closure_set_meta_marshal
+g_closure_sink
+g_closure_unref
+g_enum_complete_type_info
+g_enum_get_value
+g_enum_get_value_by_name
+g_enum_get_value_by_nick
+g_enum_register_static
+g_flags_complete_type_info
+g_flags_get_first_value
+g_flags_get_value_by_name
+g_flags_get_value_by_nick
+g_flags_register_static
+g_gstring_get_type
+g_io_channel_get_type
+g_io_condition_get_type
+g_object_add_weak_pointer
+g_object_class_find_property
+g_object_class_install_property
+g_object_class_list_properties
+g_object_class_override_property
+g_object_connect
+g_object_disconnect
+g_object_freeze_notify
+g_object_get
+g_object_get_data
+g_object_get_property
+g_object_get_qdata
+g_object_get_valist
+g_object_interface_find_property
+g_object_interface_install_property
+g_object_interface_list_properties
+g_object_new
+g_object_newv
+g_object_new_valist
+g_object_notify
+g_object_ref
+g_object_remove_weak_pointer
+g_object_run_dispose
+g_object_set
+g_object_set_data
+g_object_set_data_full
+g_object_set_property
+g_object_set_qdata
+g_object_set_qdata_full
+g_object_set_valist
+g_object_steal_data
+g_object_steal_qdata
+g_object_thaw_notify
+g_object_unref
+g_object_watch_closure
+g_object_weak_ref
+g_object_weak_unref
+g_param_spec_boolean
+g_param_spec_boxed
+g_param_spec_char
+g_param_spec_double
+g_param_spec_enum
+g_param_spec_flags
+g_param_spec_float
+g_param_spec_get_blurb
+g_param_spec_get_name
+g_param_spec_get_nick
+g_param_spec_get_qdata
+g_param_spec_get_redirect_target
+g_param_spec_int
+g_param_spec_int64
+g_param_spec_internal
+g_param_spec_long
+g_param_spec_object
+g_param_spec_override
+g_param_spec_param
+g_param_spec_pointer
+g_param_spec_pool_insert
+g_param_spec_pool_list
+g_param_spec_pool_list_owned
+g_param_spec_pool_lookup
+g_param_spec_pool_new
+g_param_spec_pool_remove
+g_param_spec_ref
+g_param_spec_set_qdata
+g_param_spec_set_qdata_full
+g_param_spec_sink
+g_param_spec_steal_qdata
+g_param_spec_string
+g_param_spec_uchar
+g_param_spec_uint
+g_param_spec_uint64
+g_param_spec_ulong
+g_param_spec_unichar
+g_param_spec_unref
+g_param_spec_value_array
+g_param_type_register_static
+g_param_value_convert
+g_param_value_defaults
+g_param_values_cmp
+g_param_value_set_default
+g_param_value_validate
+g_pointer_type_register_static
+g_signal_accumulator_true_handled
+g_signal_add_emission_hook
+g_signal_chain_from_overridden
+g_signal_connect_closure
+g_signal_connect_closure_by_id
+g_signal_connect_data
+g_signal_connect_object
+g_signal_emit
+g_signal_emit_by_name
+g_signal_emitv
+g_signal_emit_valist
+g_signal_get_invocation_hint
+g_signal_handler_block
+g_signal_handler_disconnect
+g_signal_handler_find
+g_signal_handler_is_connected
+g_signal_handlers_block_matched
+g_signal_handlers_destroy
+g_signal_handlers_disconnect_matched
+g_signal_handlers_unblock_matched
+g_signal_handler_unblock
+g_signal_has_handler_pending
+g_signal_list_ids
+g_signal_lookup
+g_signal_name
+g_signal_new
+g_signal_newv
+g_signal_new_valist
+g_signal_override_class_closure
+g_signal_parse_name
+g_signal_query
+g_signal_remove_emission_hook
+g_signal_stop_emission
+g_signal_stop_emission_by_name
+g_signal_type_cclosure_new
+g_source_set_closure
+g_strdup_value_contents
+g_strv_get_type
+g_type_add_class_cache_func
+g_type_add_interface_check
+g_type_add_interface_dynamic
+g_type_add_interface_static
+g_type_check_class_cast
+g_type_check_class_is_a
+g_type_check_instance
+g_type_check_instance_cast
+g_type_check_instance_is_a
+g_type_check_is_value_type
+g_type_check_value
+g_type_check_value_holds
+g_type_children
+g_type_class_add_private
+g_type_class_peek
+g_type_class_peek_parent
+g_type_class_peek_static
+g_type_class_ref
+g_type_class_unref
+g_type_class_unref_uncached
+g_type_create_instance
+g_type_default_interface_peek
+g_type_default_interface_ref
+g_type_default_interface_unref
+g_type_depth
+g_type_free_instance
+g_type_from_name
+g_type_fundamental
+g_type_fundamental_next
+g_type_get_plugin
+g_type_get_qdata
+g_type_init
+g_type_init_with_debug_flags
+g_type_instance_get_private
+g_type_interface_add_prerequisite
+g_type_interface_get_plugin
+g_type_interface_peek
+g_type_interface_peek_parent
+g_type_interface_prerequisites
+g_type_interfaces
+g_type_is_a
+g_type_module_add_interface
+g_type_module_get_type
+g_type_module_register_enum
+g_type_module_register_flags
+g_type_module_register_type
+g_type_module_set_name
+g_type_module_unuse
+g_type_module_use
+g_type_name
+g_type_name_from_class
+g_type_name_from_instance
+g_type_next_base
+g_type_parent
+g_type_plugin_complete_interface_info
+g_type_plugin_complete_type_info
+g_type_plugin_get_type
+g_type_plugin_unuse
+g_type_plugin_use
+g_type_qname
+g_type_query
+g_type_register_dynamic
+g_type_register_fundamental
+g_type_register_static
+g_type_remove_class_cache_func
+g_type_remove_interface_check
+g_type_set_qdata
+g_type_test_flags
+g_type_value_table_peek
+g_value_array_append
+g_value_array_copy
+g_value_array_free
+g_value_array_get_nth
+g_value_array_get_type
+g_value_array_insert
+g_value_array_new
+g_value_array_prepend
+g_value_array_remove
+g_value_array_sort
+g_value_array_sort_with_data
+g_value_copy
+g_value_dup_boxed
+g_value_dup_object
+g_value_dup_param
+g_value_dup_string
+g_value_fits_pointer
+g_value_get_boolean
+g_value_get_boxed
+g_value_get_char
+g_value_get_double
+g_value_get_enum
+g_value_get_flags
+g_value_get_float
+g_value_get_int
+g_value_get_int64
+g_value_get_long
+g_value_get_object
+g_value_get_param
+g_value_get_pointer
+g_value_get_string
+g_value_get_type
+g_value_get_uchar
+g_value_get_uint
+g_value_get_uint64
+g_value_get_ulong
+g_value_init
+g_value_peek_pointer
+g_value_register_transform_func
+g_value_reset
+g_value_set_boolean
+g_value_set_boxed
+g_value_set_boxed_take_ownership
+g_value_set_char
+g_value_set_double
+g_value_set_enum
+g_value_set_flags
+g_value_set_float
+g_value_set_instance
+g_value_set_int
+g_value_set_int64
+g_value_set_long
+g_value_set_object
+g_value_set_object_take_ownership
+g_value_set_param
+g_value_set_param_take_ownership
+g_value_set_pointer
+g_value_set_static_boxed
+g_value_set_static_string
+g_value_set_string
+g_value_set_string_take_ownership
+g_value_set_uchar
+g_value_set_uint
+g_value_set_uint64
+g_value_set_ulong
+g_value_take_boxed
+g_value_take_object
+g_value_take_param
+g_value_take_string
+g_value_transform
+g_value_type_compatible
+g_value_type_transformable
+g_value_unset
+#ifdef INCLUDE_VARIABLES
+g_param_spec_types
+#endif
diff --git a/gobject/gtype.c b/gobject/gtype.c
index 3808ed1fd..9c50a51e3 100644
--- a/gobject/gtype.c
+++ b/gobject/gtype.c
@@ -3374,18 +3374,6 @@ g_type_name_from_class (GTypeClass *g_class)
}
-/* --- foreign prototypes --- */
-extern void g_value_c_init (void); /* sync with gvalue.c */
-extern void g_value_types_init (void); /* sync with gvaluetypes.c */
-extern void g_enum_types_init (void); /* sync with genums.c */
-extern void g_param_type_init (void); /* sync with gparam.c */
-extern void g_boxed_type_init (void); /* sync with gboxed.c */
-extern void g_object_type_init (void); /* sync with gobject.c */
-extern void g_param_spec_types_init (void); /* sync with gparamspecs.c */
-extern void g_value_transforms_init (void); /* sync with gvaluetransform.c */
-extern void g_signal_init (void); /* sync with gsignal.c */
-
-
/* --- initialization --- */
void
g_type_init_with_debug_flags (GTypeDebugFlags debug_flags)
diff --git a/gobject/gtype.h b/gobject/gtype.h
index 6e3b9d605..7fac048aa 100644
--- a/gobject/gtype.h
+++ b/gobject/gtype.h
@@ -427,6 +427,18 @@ G_CONST_RETURN gchar* g_type_name_from_instance (GTypeInstance *instance);
G_CONST_RETURN gchar* g_type_name_from_class (GTypeClass *g_class);
+/* --- internal functions --- */
+void g_value_c_init (void) G_GNUC_INTERNAL; /* sync with gvalue.c */
+void g_value_types_init (void) G_GNUC_INTERNAL; /* sync with gvaluetypes.c */
+void g_enum_types_init (void) G_GNUC_INTERNAL; /* sync with genums.c */
+void g_param_type_init (void) G_GNUC_INTERNAL; /* sync with gparam.c */
+void g_boxed_type_init (void) G_GNUC_INTERNAL; /* sync with gboxed.c */
+void g_object_type_init (void) G_GNUC_INTERNAL; /* sync with gobject.c */
+void g_param_spec_types_init (void) G_GNUC_INTERNAL; /* sync with gparamspecs.c */
+void g_value_transforms_init (void) G_GNUC_INTERNAL; /* sync with gvaluetransform.c */
+void g_signal_init (void) G_GNUC_INTERNAL; /* sync with gsignal.c */
+
+
/* --- implementation bits --- */
#ifndef G_DISABLE_CAST_CHECKS
# define _G_TYPE_CIC(ip, gt, ct) \