summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChun-wei Fan <fanchunwei@src.gnome.org>2014-07-07 18:04:14 +0800
committerChun-wei Fan <fanchunwei@src.gnome.org>2014-08-15 10:00:38 +0800
commitd281b07c4aba18d30c4365ef3cba2df85ac4ab6f (patch)
tree7a1d0d578ed76b98824c5374a03e717b12691098
parenteab36c0001e22c0ee66246ae9a0b8018b2325c96 (diff)
downloadgobject-introspection-d281b07c4aba18d30c4365ef3cba2df85ac4ab6f.tar.gz
build: Export Symbols Using Compiler Directives
Use compiler directives for exporting symbols for the build of libgirepository and also for the test libraries, like what is now done in GLib and GTK+ so that maintaining a separate .symbols (and .def files) would not be needed, in which the correct compiler directive is determined during configure time. Drop all the .def files and the .symbols file as we would not be using them anymore. https://bugzilla.gnome.org/show_bug.cgi?id=732669
-rw-r--r--Makefile-girepository.am15
-rw-r--r--Makefile-msvcproj.am1
-rw-r--r--build/win32/Makefile.am11
-rw-r--r--build/win32/Regress.def272
-rw-r--r--build/win32/annotation.def48
-rw-r--r--build/win32/everything.def106
-rw-r--r--build/win32/foo.def48
-rw-r--r--build/win32/gettype.def6
-rw-r--r--build/win32/gimarshallingtests.def588
-rw-r--r--build/win32/gtkfrob.def2
-rw-r--r--build/win32/sletter.def4
-rw-r--r--build/win32/testinherit.def6
-rw-r--r--build/win32/utility.def4
-rw-r--r--configure.ac33
-rw-r--r--girepository/girepository.symbols197
-rw-r--r--tests/Makefile.am2
-rw-r--r--tests/offsets/Makefile.am2
17 files changed, 46 insertions, 1299 deletions
diff --git a/Makefile-girepository.am b/Makefile-girepository.am
index 19db3e0a..8a857d67 100644
--- a/Makefile-girepository.am
+++ b/Makefile-girepository.am
@@ -44,7 +44,11 @@ libgirepository_internals_la_SOURCES = \
girepository/girwriter.c \
girepository/girwriter.h
-libgirepository_internals_la_CFLAGS = $(GIREPO_CFLAGS) -I$(top_srcdir)/girepository
+libgirepository_internals_la_CFLAGS = \
+ $(GIREPO_CFLAGS) \
+ $(GI_HIDDEN_VISIBILITY_CFLAGS) \
+ -I$(top_srcdir)/girepository
+
libgirepository_internals_la_LIBADD = libgirepository-gthash.la $(GIREPO_LIBS)
libgirepository_1_0_la_SOURCES = \
@@ -73,12 +77,15 @@ libgirepository_1_0_la_SOURCES = \
girepository/giunioninfo.c \
girepository/givfuncinfo.c
-libgirepository_1_0_la_CPPFLAGS = $(GIREPO_CFLAGS) -I$(top_srcdir)/girepository -DG_IREPOSITORY_COMPILATION
+libgirepository_1_0_la_CPPFLAGS = \
+ $(GIREPO_CFLAGS) \
+ $(GI_HIDDEN_VISIBILITY_CFLAGS) \
+ -I$(top_srcdir)/girepository \
+ -DG_IREPOSITORY_COMPILATION
libgirepository_1_0_la_LIBADD = libgirepository-gthash.la $(GIREPO_LIBS)
libgirepository_1_0_la_LDFLAGS = \
$(EXTRA_LINK_FLAGS) \
- -no-undefined -version-number 1:0:0 \
- -export-symbols $(srcdir)/girepository/girepository.symbols
+ -no-undefined -version-number 1:0:0
gdumpdir = $(datadir)/gobject-introspection-1.0/
gdump_DATA = girepository/gdump.c
diff --git a/Makefile-msvcproj.am b/Makefile-msvcproj.am
index 6e5b7962..cdfbd486 100644
--- a/Makefile-msvcproj.am
+++ b/Makefile-msvcproj.am
@@ -199,7 +199,6 @@ GENERATED_MSVC_FILES = \
config.h.win32
EXTRA_DIST += \
- ./girepository/girepository.symbols \
$(GENERATED_MSVC_FILES)
CLEANFILES += $(GENERATED_MSVC_FILES)
diff --git a/build/win32/Makefile.am b/build/win32/Makefile.am
index cfebe0ca..31f582f1 100644
--- a/build/win32/Makefile.am
+++ b/build/win32/Makefile.am
@@ -4,14 +4,3 @@ SUBDIRS = \
vs11 \
vs12
-EXTRA_DIST = \
- annotation.def \
- everything.def \
- foo.def \
- gettype.def \
- gimarshallingtests.def \
- gtkfrob.def \
- Regress.def \
- sletter.def \
- testinherit.def \
- utility.def
diff --git a/build/win32/Regress.def b/build/win32/Regress.def
deleted file mode 100644
index 693f053f..00000000
--- a/build/win32/Regress.def
+++ /dev/null
@@ -1,272 +0,0 @@
-EXPORTS
-regress_set_abort_on_error
-regress_test_boolean
-regress_test_boolean_true
-regress_test_boolean_false
-regress_test_int8
-regress_test_uint8
-regress_test_int16
-regress_test_uint16
-regress_test_int32
-regress_test_uint32
-regress_test_int64
-regress_test_uint64
-regress_test_short
-regress_test_ushort
-regress_test_int
-regress_test_uint
-regress_test_long
-regress_test_ulong
-regress_test_ssize
-regress_test_size
-regress_test_float
-regress_test_double
-regress_test_unichar
-regress_test_timet
-regress_test_gtype
-regress_test_utf8_const_return
-regress_test_utf8_nonconst_return
-regress_test_utf8_const_in
-regress_test_utf8_out
-regress_test_utf8_inout
-regress_test_filename_return
-regress_test_utf8_null_in
-regress_test_utf8_null_out
-
-regress_test_int_out_utf8
-
-
-regress_test_multi_double_args
-regress_test_utf8_out_out
-regress_test_utf8_out_nonconst_return
-
-
-regress_test_strv_in
-regress_test_array_int_in
-regress_test_array_int_out
-regress_test_array_int_inout
-regress_test_array_gint8_in
-regress_test_array_gint16_in
-regress_test_array_gint32_in
-regress_test_array_gint64_in
-regress_test_array_gtype_in
-regress_test_strv_out_container
-regress_test_strv_out
-regress_test_strv_out_c
-regress_test_strv_outarg
-regress_test_array_fixed_size_int_in
-regress_test_array_fixed_size_int_out
-regress_test_array_fixed_size_int_return
-
-
-regress_test_array_int_full_out
-regress_test_array_int_none_out
-regress_test_array_int_null_in
-regress_test_array_int_null_out
-
-
-regress_test_glist_nothing_return
-regress_test_glist_nothing_return2
-regress_test_glist_container_return
-regress_test_glist_everything_return
-regress_test_glist_nothing_in
-regress_test_glist_nothing_in2
-regress_test_glist_null_in
-regress_test_glist_null_out
-
-
-regress_test_gslist_nothing_return
-regress_test_gslist_nothing_return2
-regress_test_gslist_container_return
-regress_test_gslist_everything_return
-regress_test_gslist_nothing_in
-regress_test_gslist_nothing_in2
-regress_test_gslist_null_in
-regress_test_gslist_null_out
-
-
-regress_test_ghash_null_return
-regress_test_ghash_nothing_return
-regress_test_ghash_nothing_return2
-regress_test_ghash_gvalue_return
-regress_test_ghash_gvalue_in
-regress_test_ghash_container_return
-regress_test_ghash_everything_return
-regress_test_ghash_null_in
-regress_test_ghash_null_out
-regress_test_ghash_nothing_in
-regress_test_ghash_nothing_in2
-regress_test_ghash_nested_everything_return
-regress_test_ghash_nested_everything_return2
-
-
-regress_test_garray_container_return
-regress_test_garray_full_return
-
-
-
-
-regress_test_closure
-regress_test_closure_one_arg
-regress_test_closure_variant
-
-
-regress_test_int_value_arg
-regress_test_value_return
-
-
-regress_test_cairo_context_full_return
-regress_test_cairo_context_none_in
-
-regress_test_cairo_surface_none_return
-regress_test_cairo_surface_full_return
-regress_test_cairo_surface_none_in
-regress_test_cairo_surface_full_out
-
-regress_test_gvariant_i
-regress_test_gvariant_s
-regress_test_gvariant_asv
-regress_test_gvariant_v
-regress_test_gvariant_as
-regress_test_enum_get_type
-regress_test_enum_unsigned_get_type
-regress_test_flags_get_type
-
-
-regress_test_enum_param
-regress_test_unsigned_enum_param
-
-regress_global_get_flags_out
-regress_test_struct_a_clone
-regress_test_struct_a_parse
-
-regress_test_struct_b_clone
-
-
-regress_test_simple_boxed_a_get_gtype
-regress_test_simple_boxed_a_copy
-regress_test_simple_boxed_a_equals
-regress_test_simple_boxed_a_const_return
-
-regress_test_simple_boxed_b_get_type
-regress_test_simple_boxed_b_copy
-
-regress_test_boxed_get_type
-regress_test_boxed_new
-regress_test_boxed_new_alternative_constructor1
-regress_test_boxed_new_alternative_constructor2
-regress_test_boxed_new_alternative_constructor3
-
-regress_test_boxed_copy
-
-
-regress_test_boxed_b_get_type
-regress_test_boxed_b_new
-regress_test_boxed_b_copy
-
-regress_test_boxed_c_get_type
-regress_test_boxed_c_new
-
-regress_test_boxed_d_get_type
-regress_test_boxed_d_new
-regress_test_boxed_d_copy
-regress_test_boxed_d_free
-regress_test_boxed_d_get_magic
-
-regress_test_obj_get_type
-regress_test_obj_new
-regress_constructor
-regress_test_obj_new_from_file
-regress_test_obj_set_bare
-regress_test_obj_emit_sig_with_obj
-regress_test_obj_emit_sig_with_foreign_struct
-regress_test_obj_emit_sig_with_int64
-regress_test_obj_emit_sig_with_uint64
-regress_test_obj_instance_method
-regress_test_obj_static_method
-regress_forced_method
-
-regress_test_array_fixed_out_objects
-regress_test_obj_torture_signature_0
-regress_test_obj_torture_signature_1
-regress_test_obj_skip_return_val
-regress_test_obj_skip_return_val_no_out
-regress_test_obj_skip_param
-regress_test_obj_skip_out_param
-regress_test_obj_skip_inout_param
-regress_test_obj_do_matrix
-regress_func_obj_null_in
-regress_test_obj_null_out
-regress_test_sub_obj_get_type
-regress_test_sub_obj_new
-regress_test_sub_obj_unset_bare
-regress_test_sub_obj_instance_method
-regress_test_skip_unannotated_callback
-
-regress_test_fundamental_object_get_type
-regress_test_fundamental_object_ref
-regress_test_fundamental_object_unref
-regress_test_value_set_fundamental_object
-regress_test_value_get_fundamental_object
-regress_test_fundamental_sub_object_get_type
-
-regress_test_fundamental_sub_object_new
-
-
-regress_test_simple_callback
-regress_test_callback
-regress_test_multi_callback
-regress_test_array_callback
-regress_test_callback_user_data
-regress_test_callback_destroy_notify
-regress_test_callback_destroy_notify_no_user_data
-regress_test_callback_thaw_notifications
-
-regress_test_callback_async
-regress_test_callback_thaw_async
-
-regress_test_async_ready_callback
-
-regress_test_obj_instance_method_callback
-regress_test_obj_static_method_callback
-regress_test_obj_new_callback
-regress_test_hash_table_callback
-regress_test_gerror_callback
-regress_test_null_gerror_callback
-regress_test_owned_gerror_callback
-regress_test_interface_get_type
-
-regress_test_wi_802_1x_get_type
-regress_test_wi_802_1x_new
-regress_test_wi_802_1x_get_testbool
-regress_test_wi_802_1x_set_testbool
-regress_test_wi_802_1x_static_method
-
-regress_test_floating_get_type
-regress_test_floating_new
-
-regress_test_torture_signature_0
-regress_test_torture_signature_1
-regress_test_torture_signature_2
-regress_test_date_in_gvalue
-regress_test_strv_in_gvalue
-
-regress_test_multiline_doc_comments
-regress_test_nested_parameter
-
-regress_introspectable_via_alias
-regress_not_introspectable_via_alias
-regress_aliased_caller_alloc
-
-regress_atest_error_quark
-regress_test_def_error_quark
-regress_test_unconventional_error_quark
-regress_test_abc_error_quark
-regress_test_error_quark
-regress_test_boxed_c_get_type
-regress_test_unconventional_error_get_type
-regress_test_abc_error_get_type
-regress_test_error_get_type
-
-
-regress_test_versioning
diff --git a/build/win32/annotation.def b/build/win32/annotation.def
deleted file mode 100644
index 27452281..00000000
--- a/build/win32/annotation.def
+++ /dev/null
@@ -1,48 +0,0 @@
-EXPORTS
-regress_annotation_object_get_type
-regress_annotation_object_method
-regress_annotation_object_out
-regress_annotation_object_create_object
-regress_annotation_object_allow_none
-regress_annotation_object_notrans
-regress_annotation_object_inout
-regress_annotation_object_inout2
-regress_annotation_object_inout3
-regress_annotation_object_in
-regress_annotation_object_calleeowns
-regress_annotation_object_calleesowns
-regress_annotation_object_get_strings
-regress_annotation_object_get_hash
-regress_annotation_object_with_voidp
-regress_annotation_object_get_objects
-regress_annotation_object_use_buffer
-regress_annotation_object_compute_sum
-regress_annotation_object_compute_sum_n
-regress_annotation_object_compute_sum_nz
-regress_annotation_object_parse_args
-regress_annotation_object_string_out
-regress_annotation_object_foreach
-regress_annotation_object_set_data
-regress_annotation_object_set_data2
-regress_annotation_object_set_data3
-regress_annotation_object_do_not_use
-regress_annotation_object_watch
-regress_annotation_object_watch_full
-regress_annotation_object_hidden_self
-regress_annotation_init
-regress_annotation_return_array
-regress_annotation_versioned
-regress_annotation_string_zero_terminated
-regress_annotation_string_zero_terminated_out
-regress_annotation_string_array_length
-regress_annotation_object_extra_annos
-regress_annotation_custom_destroy
-regress_annotation_get_source_file
-regress_annotation_set_source_file
-regress_annotation_attribute_func
-regress_annotation_invalid_regress_annotation
-regress_annotation_ptr_array
-regress_annotation_test_parsing_bug630862
-regress_annotation_space_after_comment_bug631690
-regress_annotation_return_filename
-regress_annotation_transfer_floating
diff --git a/build/win32/everything.def b/build/win32/everything.def
deleted file mode 100644
index e15f2fdc..00000000
--- a/build/win32/everything.def
+++ /dev/null
@@ -1,106 +0,0 @@
-EXPORTS
-everything_nullfunc
-everything_const_return_gboolean
-everything_const_return_gint8
-everything_const_return_guint8
-everything_const_return_gint16
-everything_const_return_guint16
-everything_const_return_gint32
-everything_const_return_guint32
-everything_const_return_gint64
-everything_const_return_guint64
-everything_const_return_gchar
-everything_const_return_gshort
-everything_const_return_gushort
-everything_const_return_gint
-everything_const_return_guint
-everything_const_return_glong
-everything_const_return_gulong
-everything_const_return_gsize
-everything_const_return_gssize
-everything_const_return_gintptr
-everything_const_return_guintptr
-everything_const_return_gfloat
-everything_const_return_gdouble
-everything_const_return_gunichar
-everything_const_return_GType
-everything_const_return_utf8
-everything_const_return_filename
-everything_oneparam_gboolean
-everything_oneparam_gint8
-everything_oneparam_guint8
-everything_oneparam_gint16
-everything_oneparam_guint16
-everything_oneparam_gint32
-everything_oneparam_guint32
-everything_oneparam_gint64
-everything_oneparam_guint64
-everything_oneparam_gchar
-everything_oneparam_gshort
-everything_oneparam_gushort
-everything_oneparam_gint
-everything_oneparam_guint
-everything_oneparam_glong
-everything_oneparam_gulong
-everything_oneparam_gsize
-everything_oneparam_gssize
-everything_oneparam_gintptr
-everything_oneparam_guintptr
-everything_oneparam_gfloat
-everything_oneparam_gdouble
-everything_oneparam_gunichar
-everything_oneparam_GType
-everything_oneparam_utf8
-everything_oneparam_filename
-everything_one_outparam_gboolean
-everything_one_outparam_gint8
-everything_one_outparam_guint8
-everything_one_outparam_gint16
-everything_one_outparam_guint16
-everything_one_outparam_gint32
-everything_one_outparam_guint32
-everything_one_outparam_gint64
-everything_one_outparam_guint64
-everything_one_outparam_gchar
-everything_one_outparam_gshort
-everything_one_outparam_gushort
-everything_one_outparam_gint
-everything_one_outparam_guint
-everything_one_outparam_glong
-everything_one_outparam_gulong
-everything_one_outparam_gsize
-everything_one_outparam_gssize
-everything_one_outparam_gintptr
-everything_one_outparam_guintptr
-everything_one_outparam_gfloat
-everything_one_outparam_gdouble
-everything_one_outparam_gunichar
-everything_one_outparam_GType
-everything_one_outparam_utf8
-everything_one_outparam_filename
-everything_passthrough_one_gboolean
-everything_passthrough_one_gint8
-everything_passthrough_one_guint8
-everything_passthrough_one_gint16
-everything_passthrough_one_guint16
-everything_passthrough_one_gint32
-everything_passthrough_one_guint32
-everything_passthrough_one_gint64
-everything_passthrough_one_guint64
-everything_passthrough_one_gchar
-everything_passthrough_one_gshort
-everything_passthrough_one_gushort
-everything_passthrough_one_gint
-everything_passthrough_one_guint
-everything_passthrough_one_glong
-everything_passthrough_one_gulong
-everything_passthrough_one_gsize
-everything_passthrough_one_gssize
-everything_passthrough_one_gintptr
-everything_passthrough_one_guintptr
-everything_passthrough_one_gfloat
-everything_passthrough_one_gdouble
-everything_passthrough_one_gunichar
-everything_passthrough_one_GType
-everything_passthrough_one_utf8
-everything_passthrough_one_filename
diff --git a/build/win32/foo.def b/build/win32/foo.def
deleted file mode 100644
index cba3e2a2..00000000
--- a/build/win32/foo.def
+++ /dev/null
@@ -1,48 +0,0 @@
-EXPORTS
-regress_foo_interface_do_regress_foo
-regress_foo_interface_static_method
-regress_foo_sub_interface_get_type
-regress_foo_sub_interface_do_bar
-regress_foo_sub_interface_do_baz
-regress_foo_init
-regress_foo_object_get_type
-regress_foo_object_new
-regress_foo_object_external_type
-regress_foo_object_new_as_super
-regress_foo_object_take_all
-regress_foo_object_new_cookie
-regress_foo_object_is_it_time_yet
-regress_foo_object_get_name
-regress_foo_object_dup_name
-regress_foo_object_read
-regress_foo_object_skipped_method
-regress_foo_subobject_get_type
-regress_foo_object_get_default
-regress_foo_buffer_get_type
-regress_foo_buffer_some_method
-regress_foo_other_object_get_type
-regress_foo_not_a_constructor_new
-regress_foo_enum_type_get_type
-regress_foo_flags_type_get_type
-regress_foo_boxed_get_type
-regress_foo_boxed_new
-regress_foo_boxed_method
-regress_foo_dbus_data_get_type
-regress_foo_rectangle_add
-regress_foo_rectangle_new
-regress_foo_brect_get_type
-regress_foo_bunion_get_type
-regress_foo_test_string_array
-regress_foo_test_string_array_with_g
-regress_foo_test_array
-regress_foo_test_varargs_callback
-regress_foo_test_varargs_callback2
-regress_foo_test_varargs_callback3
-regress_foo_error_get_type
-regress_foo_error_quark
-regress_foo_some_variant
-regress_foo_skip_me
-regress_foo_foreign_struct_new
-regress_foo_foreign_struct_copy
-regress_foo_object_append_new_stack_layer
-regress_foo_interface_get_type
diff --git a/build/win32/gettype.def b/build/win32/gettype.def
deleted file mode 100644
index 401cb333..00000000
--- a/build/win32/gettype.def
+++ /dev/null
@@ -1,6 +0,0 @@
-EXPORTS
-gettype_object_get_type
-gettype_object_new
-gettype_object_nonmeta1_get_type
-gettype_object_nonmeta2_get_type
-gettype_object_nonmeta_get_gtype
diff --git a/build/win32/gimarshallingtests.def b/build/win32/gimarshallingtests.def
deleted file mode 100644
index 3c91c796..00000000
--- a/build/win32/gimarshallingtests.def
+++ /dev/null
@@ -1,588 +0,0 @@
-EXPORTS
-gi_marshalling_tests_boolean_return_true
-gi_marshalling_tests_boolean_return_false
-gi_marshalling_tests_boolean_in_true
-gi_marshalling_tests_boolean_in_false
-gi_marshalling_tests_boolean_out_true
-gi_marshalling_tests_boolean_out_false
-gi_marshalling_tests_boolean_inout_true_false
-gi_marshalling_tests_boolean_inout_false_true
-
-gi_marshalling_tests_int8_return_max
-gi_marshalling_tests_int8_return_min
-gi_marshalling_tests_int8_in_max
-gi_marshalling_tests_int8_in_min
-gi_marshalling_tests_int8_out_max
-gi_marshalling_tests_int8_out_min
-gi_marshalling_tests_int8_inout_max_min
-gi_marshalling_tests_int8_inout_min_max
-gi_marshalling_tests_uint8_return
-gi_marshalling_tests_uint8_in
-gi_marshalling_tests_uint8_out
-gi_marshalling_tests_uint8_inout
-gi_marshalling_tests_int16_return_max
-gi_marshalling_tests_int16_return_min
-gi_marshalling_tests_int16_in_max
-gi_marshalling_tests_int16_in_min
-gi_marshalling_tests_int16_out_max
-gi_marshalling_tests_int16_out_min
-gi_marshalling_tests_int16_inout_max_min
-gi_marshalling_tests_int16_inout_min_max
-gi_marshalling_tests_uint16_return
-gi_marshalling_tests_uint16_in
-gi_marshalling_tests_uint16_out
-gi_marshalling_tests_uint16_inout
-gi_marshalling_tests_int32_return_max
-gi_marshalling_tests_int32_return_min
-
-gi_marshalling_tests_int32_in_max
-gi_marshalling_tests_int32_in_min
-
-gi_marshalling_tests_int32_out_max
-gi_marshalling_tests_int32_out_min
-
-gi_marshalling_tests_int32_inout_max_min
-gi_marshalling_tests_int32_inout_min_max
-
-
-gi_marshalling_tests_uint32_return
-
-gi_marshalling_tests_uint32_in
-
-gi_marshalling_tests_uint32_out
-gi_marshalling_tests_uint32_inout
-
-
-gi_marshalling_tests_int64_return_max
-gi_marshalling_tests_int64_return_min
-
-gi_marshalling_tests_int64_in_max
-gi_marshalling_tests_int64_in_min
-
-gi_marshalling_tests_int64_out_max
-gi_marshalling_tests_int64_out_min
-
-gi_marshalling_tests_int64_inout_max_min
-gi_marshalling_tests_int64_inout_min_max
-
-
-gi_marshalling_tests_uint64_return
-
-gi_marshalling_tests_uint64_in
-
-gi_marshalling_tests_uint64_out
-gi_marshalling_tests_uint64_inout
-
-
-gi_marshalling_tests_short_return_max
-gi_marshalling_tests_short_return_min
-
-gi_marshalling_tests_short_in_max
-gi_marshalling_tests_short_in_min
-
-gi_marshalling_tests_short_out_max
-gi_marshalling_tests_short_out_min
-
-gi_marshalling_tests_short_inout_max_min
-gi_marshalling_tests_short_inout_min_max
-
-
-gi_marshalling_tests_ushort_return
-
-gi_marshalling_tests_ushort_in
-
-gi_marshalling_tests_ushort_out
-gi_marshalling_tests_ushort_inout
-
-
-gi_marshalling_tests_int_return_max
-gi_marshalling_tests_int_return_min
-
-gi_marshalling_tests_int_in_max
-gi_marshalling_tests_int_in_min
-
-gi_marshalling_tests_int_out_max
-gi_marshalling_tests_int_out_min
-
-gi_marshalling_tests_int_inout_max_min
-gi_marshalling_tests_int_inout_min_max
-
-
-gi_marshalling_tests_uint_return
-
-gi_marshalling_tests_uint_in
-
-gi_marshalling_tests_uint_out
-gi_marshalling_tests_uint_inout
-
-
-gi_marshalling_tests_long_return_max
-gi_marshalling_tests_long_return_min
-
-gi_marshalling_tests_long_in_max
-gi_marshalling_tests_long_in_min
-
-gi_marshalling_tests_long_out_max
-gi_marshalling_tests_long_out_min
-
-gi_marshalling_tests_long_inout_max_min
-gi_marshalling_tests_long_inout_min_max
-
-
-gi_marshalling_tests_ulong_return
-
-gi_marshalling_tests_ulong_in
-
-gi_marshalling_tests_ulong_out
-gi_marshalling_tests_ulong_inout
-
-
-gi_marshalling_tests_ssize_return_max
-gi_marshalling_tests_ssize_return_min
-
-gi_marshalling_tests_ssize_in_max
-gi_marshalling_tests_ssize_in_min
-
-gi_marshalling_tests_ssize_out_max
-gi_marshalling_tests_ssize_out_min
-
-gi_marshalling_tests_ssize_inout_max_min
-gi_marshalling_tests_ssize_inout_min_max
-
-
-gi_marshalling_tests_size_return
-
-gi_marshalling_tests_size_in
-
-gi_marshalling_tests_size_out
-gi_marshalling_tests_size_inout
-gi_marshalling_tests_float_return
-
-gi_marshalling_tests_float_in
-
-gi_marshalling_tests_float_out
-
-gi_marshalling_tests_float_inout
-
-
-gi_marshalling_tests_double_return
-
-gi_marshalling_tests_double_in
-
-gi_marshalling_tests_double_out
-
-gi_marshalling_tests_double_inout
-
-gi_marshalling_tests_time_t_return
-
-gi_marshalling_tests_time_t_in
-
-gi_marshalling_tests_time_t_out
-
-gi_marshalling_tests_time_t_inout
-
-gi_marshalling_tests_gtype_return
-
-gi_marshalling_tests_gtype_string_return
-
-gi_marshalling_tests_gtype_in
-
-gi_marshalling_tests_gtype_string_in
-
-gi_marshalling_tests_gtype_out
-
-gi_marshalling_tests_gtype_string_out
-
-gi_marshalling_tests_gtype_inout
-
-gi_marshalling_tests_utf8_none_return
-gi_marshalling_tests_utf8_full_return
-
-gi_marshalling_tests_utf8_none_in
-gi_marshalling_tests_utf8_none_out
-gi_marshalling_tests_utf8_full_out
-
-gi_marshalling_tests_utf8_dangling_out
-
-gi_marshalling_tests_utf8_none_inout
-gi_marshalling_tests_utf8_full_inout
-gi_marshalling_tests_utf8_as_uint8array_in
-
-gi_marshalling_tests_filename_list_return
-
-
-gi_marshalling_tests_enum_returnv
-
-gi_marshalling_tests_enum_in
-
-gi_marshalling_tests_enum_out
-
-gi_marshalling_tests_enum_inout
-
-
-gi_marshalling_tests_genum_get_type
-gi_marshalling_tests_genum_returnv
-
-gi_marshalling_tests_genum_in
-
-gi_marshalling_tests_genum_out
-
-gi_marshalling_tests_genum_inout
-
-gi_marshalling_tests_flags_get_type
-
-gi_marshalling_tests_flags_returnv
-
-gi_marshalling_tests_flags_in
-gi_marshalling_tests_flags_in_zero
-
-gi_marshalling_tests_flags_out
-
-gi_marshalling_tests_flags_inout
-
-gi_marshalling_tests_no_type_flags_returnv
-
-gi_marshalling_tests_no_type_flags_in
-gi_marshalling_tests_no_type_flags_in_zero
-
-gi_marshalling_tests_no_type_flags_out
-
-gi_marshalling_tests_no_type_flags_inout
-
-gi_marshalling_tests_init_function
-
-gi_marshalling_tests_array_fixed_int_return
-gi_marshalling_tests_array_fixed_short_return
-
-gi_marshalling_tests_array_fixed_int_in
-gi_marshalling_tests_array_fixed_short_in
-
-gi_marshalling_tests_array_fixed_out
-
-gi_marshalling_tests_array_fixed_out_struct
-
-gi_marshalling_tests_array_fixed_inout
-
-gi_marshalling_tests_array_in_nonzero_nonlen
-
-gi_marshalling_tests_array_return
-gi_marshalling_tests_array_return_etc
-
-gi_marshalling_tests_array_in
-gi_marshalling_tests_array_in_len_before
-gi_marshalling_tests_array_in_len_zero_terminated
-gi_marshalling_tests_array_string_in
-gi_marshalling_tests_array_uint8_in
-gi_marshalling_tests_array_struct_in
-gi_marshalling_tests_array_struct_take_in
-gi_marshalling_tests_array_struct_value_in
-gi_marshalling_tests_array_simple_struct_in
-gi_marshalling_tests_multi_array_key_value_in
-gi_marshalling_tests_array_enum_in
-gi_marshalling_tests_array_in_guint64_len
-gi_marshalling_tests_array_in_guint8_len
-
-gi_marshalling_tests_array_out
-gi_marshalling_tests_array_out_etc
-
-gi_marshalling_tests_array_inout
-gi_marshalling_tests_array_inout_etc
-
-
-gi_marshalling_tests_array_zero_terminated_return
-gi_marshalling_tests_array_zero_terminated_return_null
-gi_marshalling_tests_array_zero_terminated_return_struct
-
-gi_marshalling_tests_array_zero_terminated_in
-
-gi_marshalling_tests_array_zero_terminated_out
-
-gi_marshalling_tests_array_zero_terminated_inout
-
-gi_marshalling_tests_array_gvariant_none_in
-
-gi_marshalling_tests_array_gvariant_container_in
-
-gi_marshalling_tests_array_gvariant_full_in
-
-
-gi_marshalling_tests_garray_int_none_return
-gi_marshalling_tests_garray_uint64_none_return
-gi_marshalling_tests_garray_utf8_none_return
-gi_marshalling_tests_garray_utf8_container_return
-gi_marshalling_tests_garray_utf8_full_return
-
-gi_marshalling_tests_garray_int_none_in
-gi_marshalling_tests_garray_uint64_none_in
-gi_marshalling_tests_garray_utf8_none_in
-
-gi_marshalling_tests_garray_utf8_none_out
-gi_marshalling_tests_garray_utf8_container_out
-gi_marshalling_tests_garray_utf8_full_out
-gi_marshalling_tests_garray_utf8_full_out_caller_allocated
-
-gi_marshalling_tests_garray_utf8_none_inout
-gi_marshalling_tests_garray_utf8_container_inout
-gi_marshalling_tests_garray_utf8_full_inout
-
-
-gi_marshalling_tests_gptrarray_utf8_none_return
-gi_marshalling_tests_gptrarray_utf8_container_return
-gi_marshalling_tests_gptrarray_utf8_full_return
-
-gi_marshalling_tests_gptrarray_utf8_none_in
-
-gi_marshalling_tests_gptrarray_utf8_none_out
-gi_marshalling_tests_gptrarray_utf8_container_out
-gi_marshalling_tests_gptrarray_utf8_full_out
-
-gi_marshalling_tests_gptrarray_utf8_none_inout
-gi_marshalling_tests_gptrarray_utf8_container_inout
-gi_marshalling_tests_gptrarray_utf8_full_inout
-
-
-gi_marshalling_tests_bytearray_full_return
-gi_marshalling_tests_bytearray_none_in
-
-
-gi_marshalling_tests_gstrv_return
-gi_marshalling_tests_gstrv_in
-gi_marshalling_tests_gstrv_out
-gi_marshalling_tests_gstrv_inout
-
-
-
-gi_marshalling_tests_glist_int_none_return
-gi_marshalling_tests_glist_uint32_none_return
-gi_marshalling_tests_glist_utf8_none_return
-gi_marshalling_tests_glist_utf8_container_return
-gi_marshalling_tests_glist_utf8_full_return
-
-gi_marshalling_tests_glist_int_none_in
-gi_marshalling_tests_glist_uint32_none_in
-gi_marshalling_tests_glist_utf8_none_in
-
-gi_marshalling_tests_glist_utf8_none_out
-gi_marshalling_tests_glist_utf8_container_out
-gi_marshalling_tests_glist_utf8_full_out
-
-gi_marshalling_tests_glist_utf8_none_inout
-gi_marshalling_tests_glist_utf8_container_inout
-gi_marshalling_tests_glist_utf8_full_inout
-
-
-
-gi_marshalling_tests_gslist_int_none_return
-gi_marshalling_tests_gslist_utf8_none_return
-gi_marshalling_tests_gslist_utf8_container_return
-gi_marshalling_tests_gslist_utf8_full_return
-
-gi_marshalling_tests_gslist_int_none_in
-gi_marshalling_tests_gslist_utf8_none_in
-
-gi_marshalling_tests_gslist_utf8_none_out
-gi_marshalling_tests_gslist_utf8_container_out
-gi_marshalling_tests_gslist_utf8_full_out
-
-gi_marshalling_tests_gslist_utf8_none_inout
-gi_marshalling_tests_gslist_utf8_container_inout
-gi_marshalling_tests_gslist_utf8_full_inout
-
-
-
-gi_marshalling_tests_ghashtable_int_none_return
-gi_marshalling_tests_ghashtable_utf8_none_return
-gi_marshalling_tests_ghashtable_utf8_container_return
-gi_marshalling_tests_ghashtable_utf8_full_return
-
-gi_marshalling_tests_ghashtable_int_none_in
-gi_marshalling_tests_ghashtable_utf8_none_in
-
-gi_marshalling_tests_ghashtable_utf8_none_out
-gi_marshalling_tests_ghashtable_utf8_container_out
-gi_marshalling_tests_ghashtable_utf8_full_out
-
-gi_marshalling_tests_ghashtable_utf8_none_inout
-gi_marshalling_tests_ghashtable_utf8_container_inout
-gi_marshalling_tests_ghashtable_utf8_full_inout
-
-gi_marshalling_tests_gvalue_return
-
-gi_marshalling_tests_gvalue_in
-gi_marshalling_tests_gvalue_in_with_type
-gi_marshalling_tests_gvalue_int64_in
-gi_marshalling_tests_gvalue_int64_out
-
-gi_marshalling_tests_gvalue_in_enum
-
-gi_marshalling_tests_gvalue_out
-gi_marshalling_tests_gvalue_out_caller_allocates
-
-gi_marshalling_tests_gvalue_inout
-
-gi_marshalling_tests_gvalue_flat_array
-
-gi_marshalling_tests_return_gvalue_flat_array
-
-gi_marshalling_tests_gvalue_flat_array_round_trip
-gi_marshalling_tests_gclosure_in
-gi_marshalling_tests_gclosure_return
-
-
-gi_marshalling_tests_callback_return_value_only
-
-
-gi_marshalling_tests_callback_one_out_parameter
-
-
-gi_marshalling_tests_callback_multiple_out_parameters
-
-
-gi_marshalling_tests_callback_return_value_and_one_out_parameter
-
-gi_marshalling_tests_callback_return_value_and_multiple_out_parameters
-gi_marshalling_tests_pointer_in_return
-
-
-gi_marshalling_tests_simple_struct_returnv
-
-gi_marshalling_tests_simple_struct_inv
-
-gi_marshalling_tests_simple_struct_method
-
-gi_marshalling_tests_pointer_struct_get_type
-
-gi_marshalling_tests_pointer_struct_returnv
-
-gi_marshalling_tests_pointer_struct_inv
-
-gi_marshalling_tests_boxed_struct_get_type
-
-gi_marshalling_tests_boxed_struct_new
-
-gi_marshalling_tests_boxed_struct_returnv
-
-gi_marshalling_tests_boxed_struct_inv
-
-gi_marshalling_tests_boxed_struct_out
-
-gi_marshalling_tests_boxed_struct_inout
-gi_marshalling_tests_union_get_type
-
-gi_marshalling_tests_union_returnv
-
-gi_marshalling_tests_union_inv
-
-
-gi_marshalling_tests_union_method
-gi_marshalling_tests_object_get_type
-gi_marshalling_tests_object_static_method
-gi_marshalling_tests_object_method
-gi_marshalling_tests_object_overridden_method
-gi_marshalling_tests_object_new
-
-gi_marshalling_tests_object_get_ref_info_for_vfunc_return_object_transfer_none
-gi_marshalling_tests_object_get_ref_info_for_vfunc_return_object_transfer_full
-gi_marshalling_tests_object_get_ref_info_for_vfunc_out_object_transfer_none
-gi_marshalling_tests_object_get_ref_info_for_vfunc_out_object_transfer_full
-gi_marshalling_tests_object_get_ref_info_for_vfunc_in_object_transfer_none
-gi_marshalling_tests_object_get_ref_info_for_vfunc_in_object_transfer_full
-
-gi_marshalling_tests_object_method_array_in
-gi_marshalling_tests_object_method_array_out
-gi_marshalling_tests_object_method_array_inout
-gi_marshalling_tests_object_method_array_return
-
-gi_marshalling_tests_object_method_int8_in
-gi_marshalling_tests_object_method_int8_out
-gi_marshalling_tests_object_method_int8_arg_and_out_caller
-gi_marshalling_tests_object_method_int8_arg_and_out_callee
-gi_marshalling_tests_object_method_str_arg_out_ret
-gi_marshalling_tests_object_method_with_default_implementation
-;gi_marshalling_tests_object_method_variant_array_in ;unimplemented
-
-gi_marshalling_tests_object_vfunc_return_value_only
-gi_marshalling_tests_object_vfunc_one_out_parameter
-gi_marshalling_tests_object_vfunc_multiple_out_parameters
-gi_marshalling_tests_object_vfunc_caller_allocated_out_parameter
-gi_marshalling_tests_object_vfunc_array_out_parameter
-gi_marshalling_tests_object_vfunc_return_value_and_one_out_parameter
-gi_marshalling_tests_object_vfunc_return_value_and_multiple_out_parameters
-gi_marshalling_tests_object_vfunc_meth_with_error
-
-gi_marshalling_tests_object_none_return
-gi_marshalling_tests_object_full_return
-
-gi_marshalling_tests_object_none_in
-
-
-gi_marshalling_tests_object_none_out
-gi_marshalling_tests_object_full_out
-
-gi_marshalling_tests_object_none_inout
-gi_marshalling_tests_object_full_inout
-
-gi_marshalling_tests_object_int8_in
-gi_marshalling_tests_object_int8_out
-
-gi_marshalling_tests_object_vfunc_with_callback
-gi_marshalling_tests_object_call_vfunc_with_callback
-
-
-
-
-gi_marshalling_tests_sub_object_get_type
-
-gi_marshalling_tests_sub_object_sub_method
-gi_marshalling_tests_sub_object_overwritten_method
-gi_marshalling_tests_sub_sub_object_get_type
-gi_marshalling_tests_interface_get_type
-
-gi_marshalling_tests_interface_test_int8_in
-
-gi_marshalling_tests_test_interface_test_int8_in
-
-gi_marshalling_tests_interface2_get_type
-
-
-gi_marshalling_tests_int_out_out
-gi_marshalling_tests_int_three_in_three_out
-gi_marshalling_tests_int_return_out
-
-
-gi_marshalling_tests_gerror
-gi_marshalling_tests_gerror_array_in
-gi_marshalling_tests_gerror_out
-gi_marshalling_tests_gerror_out_transfer_none
-gi_marshalling_tests_gerror_return
-
-gi_marshalling_tests_overrides_struct_get_type
-
-gi_marshalling_tests_overrides_struct_new
-
-gi_marshalling_tests_overrides_struct_method
-
-gi_marshalling_tests_overrides_struct_returnv
-gi_marshalling_tests_overrides_object_get_type
-
-gi_marshalling_tests_overrides_object_new
-
-gi_marshalling_tests_overrides_object_method
-
-gi_marshalling_tests_overrides_object_returnv
-gi_marshalling_tests_properties_object_get_type
-gi_marshalling_tests_properties_object_new
-gi_marshalling_tests_interface3_get_type
-gi_marshalling_tests_interface3_test_variant_array_in
-
-gi_marshalling_tests_param_spec_return
-gi_marshalling_tests_param_spec_out
-gi_marshalling_tests_param_spec_in_bool
-
-gi_marshalling_tests_gbytes_full_return
-gi_marshalling_tests_gbytes_none_in
-
-gi_marshalling_tests_int_two_in_utf8_two_in_with_allow_none
-gi_marshalling_tests_int_one_in_utf8_two_in_one_allows_none
-gi_marshalling_tests_array_in_utf8_two_in
-gi_marshalling_tests_array_in_utf8_two_in_out_of_order
diff --git a/build/win32/gtkfrob.def b/build/win32/gtkfrob.def
deleted file mode 100644
index 79dce040..00000000
--- a/build/win32/gtkfrob.def
+++ /dev/null
@@ -1,2 +0,0 @@
-EXPORTS
-gtk_frob_language_manager_get_default
diff --git a/build/win32/sletter.def b/build/win32/sletter.def
deleted file mode 100644
index a4a547e8..00000000
--- a/build/win32/sletter.def
+++ /dev/null
@@ -1,4 +0,0 @@
-EXPORTS
-s_hello
-s_spawn_error_quark
-s_dbus_error_quark
diff --git a/build/win32/testinherit.def b/build/win32/testinherit.def
deleted file mode 100644
index 8881dab7..00000000
--- a/build/win32/testinherit.def
+++ /dev/null
@@ -1,6 +0,0 @@
-EXPORTS
-regress_test_inherit_drawable_get_type
-regress_test_inherit_drawable_do_foo
-regress_test_inherit_drawable_get_origin
-regress_test_inherit_drawable_get_size
-regress_test_inherit_drawable_do_foo_maybe_throw
diff --git a/build/win32/utility.def b/build/win32/utility.def
deleted file mode 100644
index e0614fe6..00000000
--- a/build/win32/utility.def
+++ /dev/null
@@ -1,4 +0,0 @@
-EXPORTS
-utility_object_get_type
-utility_object_watch_dir
-utility_dir_foreach
diff --git a/configure.ac b/configure.ac
index b863220a..5add902e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -292,6 +292,39 @@ AC_SUBST(GLIBSRC)
AC_MSG_RESULT([$GLIBSRC])
dnl
+dnl Check for -fvisibility=hidden to determine if we can do GNU-style
+dnl visibility attributes for symbol export control
+dnl
+GI_HIDDEN_VISIBILITY_CFLAGS=""
+case "$host" in
+ *-*-mingw*)
+ dnl on mingw32 we do -fvisibility=hidden and __declspec(dllexport)
+ AC_DEFINE([_GI_EXTERN], [__attribute__((visibility("default"))) __declspec(dllexport) extern],
+ [defines how to decorate public symbols while building])
+ CFLAGS="${CFLAGS} -fvisibility=hidden"
+ ;;
+ *)
+ dnl on other compilers, check if we can do -fvisibility=hidden
+ SAVED_CFLAGS="${CFLAGS}"
+ CFLAGS="-fvisibility=hidden"
+ AC_MSG_CHECKING([for -fvisibility=hidden compiler flag])
+ AC_TRY_COMPILE([], [int main (void) { return 0; }],
+ AC_MSG_RESULT(yes)
+ enable_fvisibility_hidden=yes,
+ AC_MSG_RESULT(no)
+ enable_fvisibility_hidden=no)
+ CFLAGS="${SAVED_CFLAGS}"
+
+ AS_IF([test "${enable_fvisibility_hidden}" = "yes"], [
+ AC_DEFINE([_GI_EXTERN], [__attribute__((visibility("default"))) extern],
+ [defines how to decorate public symbols while building])
+ GI_HIDDEN_VISIBILITY_CFLAGS="-fvisibility=hidden"
+ ])
+ ;;
+esac
+AC_SUBST(GI_HIDDEN_VISIBILITY_CFLAGS)
+
+dnl
dnl Check for -Bsymbolic-functions linker flag used to avoid
dnl intra-library PLT jumps, if available.
dnl
diff --git a/girepository/girepository.symbols b/girepository/girepository.symbols
deleted file mode 100644
index 48fb0d90..00000000
--- a/girepository/girepository.symbols
+++ /dev/null
@@ -1,197 +0,0 @@
-g_arg_info_get_closure
-g_arg_info_get_destroy
-g_arg_info_get_direction
-g_arg_info_get_ownership_transfer
-g_arg_info_get_scope
-g_arg_info_get_type
-g_arg_info_is_caller_allocates
-g_arg_info_is_optional
-g_arg_info_is_return_value
-g_arg_info_is_skip
-g_arg_info_load_type
-g_arg_info_may_be_null
-g_base_info_equal
-g_base_info_get_attribute
-g_base_info_get_container
-g_base_info_get_name
-g_base_info_get_namespace
-g_base_info_get_type
-g_base_info_get_typelib
-g_base_info_gtype_get_type
-g_base_info_is_deprecated
-g_base_info_iterate_attributes
-g_base_info_ref
-g_base_info_unref
-g_info_new
-g_callable_info_can_throw_gerror
-g_callable_info_get_arg
-g_callable_info_get_caller_owns
-g_callable_info_get_instance_ownership_transfer
-g_callable_info_get_n_args
-g_callable_info_get_return_attribute
-g_callable_info_get_return_type
-g_callable_info_invoke
-g_callable_info_iterate_return_attributes
-g_callable_info_is_method
-g_callable_info_load_arg
-g_callable_info_load_return_type
-g_callable_info_may_return_null
-g_callable_info_skip_return
-g_constant_info_free_value
-g_constant_info_get_type
-g_constant_info_get_value
-g_enum_info_get_error_domain
-g_enum_info_get_method
-g_enum_info_get_n_methods
-g_enum_info_get_n_values
-g_enum_info_get_storage_type
-g_enum_info_get_value
-g_value_info_get_value
-g_field_info_get_field
-g_field_info_get_flags
-g_field_info_get_offset
-g_field_info_get_size
-g_field_info_get_type
-g_field_info_set_field
-g_function_info_get_flags
-g_function_info_get_property
-g_function_info_get_symbol
-g_function_info_get_vfunc
-g_function_info_invoke
-g_invoke_error_quark
-g_interface_info_find_method
-g_interface_info_find_signal
-g_interface_info_find_vfunc
-g_interface_info_get_constant
-g_interface_info_get_iface_struct
-g_interface_info_get_method
-g_interface_info_get_n_constants
-g_interface_info_get_n_methods
-g_interface_info_get_n_prerequisites
-g_interface_info_get_n_properties
-g_interface_info_get_prerequisite
-g_interface_info_get_n_signals
-g_interface_info_get_n_vfuncs
-g_interface_info_get_property
-g_interface_info_get_signal
-g_interface_info_get_vfunc
-g_object_info_find_method
-g_object_info_find_method_using_interfaces
-g_object_info_find_signal
-g_object_info_find_vfunc
-g_object_info_find_vfunc_using_interfaces
-g_object_info_get_abstract
-g_object_info_get_class_struct
-g_object_info_get_constant
-g_object_info_get_field
-g_object_info_get_fundamental
-g_object_info_get_get_value_function
-g_object_info_get_get_value_function_pointer
-g_object_info_get_interface
-g_object_info_get_method
-g_object_info_get_n_constants
-g_object_info_get_n_fields
-g_object_info_get_n_interfaces
-g_object_info_get_n_methods
-g_object_info_get_n_properties
-g_object_info_get_n_signals
-g_object_info_get_n_vfuncs
-g_object_info_get_parent
-g_object_info_get_property
-g_object_info_get_ref_function
-g_object_info_get_ref_function_pointer
-g_object_info_get_set_value_function
-g_object_info_get_set_value_function_pointer
-g_object_info_get_signal
-g_object_info_get_type_init
-g_object_info_get_type_name
-g_object_info_get_unref_function
-g_object_info_get_unref_function_pointer
-g_object_info_get_vfunc
-g_property_info_get_flags
-g_property_info_get_ownership_transfer
-g_property_info_get_type
-g_registered_type_info_get_g_type
-g_registered_type_info_get_type_init
-g_registered_type_info_get_type_name
-gi_cclosure_marshal_generic
-g_irepository_dump
-g_irepository_enumerate_versions
-g_irepository_error_quark
-g_irepository_find_by_error_domain
-g_irepository_find_by_gtype
-g_irepository_find_by_name
-g_irepository_get_c_prefix
-g_irepository_get_default
-g_irepository_get_dependencies
-g_irepository_get_info
-g_irepository_get_loaded_namespaces
-g_irepository_get_n_infos
-g_irepository_get_option_group
-g_irepository_get_search_path
-g_irepository_get_shared_library
-g_irepository_get_type
-g_irepository_get_typelib_path
-g_irepository_get_version
-g_irepository_is_registered
-g_irepository_load_typelib
-g_irepository_prepend_library_path
-g_irepository_prepend_search_path
-g_irepository_require
-g_irepository_require_private
-gi_type_info_extract_ffi_return_value
-gi_type_tag_get_ffi_type
-g_callable_info_free_closure
-g_callable_info_prepare_closure
-g_function_info_prep_invoker
-g_function_invoker_destroy
-g_function_invoker_new_for_address
-g_type_info_get_ffi_type
-g_signal_info_get_class_closure
-g_signal_info_get_flags
-g_signal_info_true_stops_emit
-g_struct_info_find_method
-g_struct_info_get_alignment
-g_struct_info_get_field
-g_struct_info_get_method
-g_struct_info_get_n_fields
-g_struct_info_get_n_methods
-g_struct_info_get_size
-g_struct_info_is_foreign
-g_struct_info_is_gtype_struct
-g_type_info_is_pointer
-g_type_info_is_zero_terminated
-g_type_info_get_array_fixed_size
-g_type_info_get_array_length
-g_type_info_get_array_type
-g_type_info_get_interface
-g_type_info_get_param_type
-g_type_info_get_tag
-g_type_tag_to_string
-g_info_type_to_string
-g_typelib_check_sanity
-g_typelib_error_quark
-g_typelib_free
-g_typelib_get_namespace
-g_typelib_new_from_const_memory
-g_typelib_new_from_mapped_file
-g_typelib_new_from_memory
-g_typelib_symbol
-g_typelib_validate
-g_union_info_find_method
-g_union_info_get_alignment
-g_union_info_get_discriminator
-g_union_info_get_discriminator_offset
-g_union_info_get_discriminator_type
-g_union_info_get_field
-g_union_info_get_method
-g_union_info_get_n_fields
-g_union_info_get_n_methods
-g_union_info_get_size
-g_union_info_is_discriminated
-g_vfunc_info_get_address
-g_vfunc_info_get_invoker
-g_vfunc_info_get_flags
-g_vfunc_info_get_offset
-g_vfunc_info_get_signal
-g_vfunc_info_invoke
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 8bcf74ee..adeba760 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -6,7 +6,7 @@ EXTRA_DIST=
BUILT_SOURCES=
CLEANFILES=
-AM_CFLAGS = $(GOBJECT_CFLAGS)
+AM_CFLAGS = $(GOBJECT_CFLAGS) $(GI_HIDDEN_VISIBILITY_CFLAGS)
LIBADD = $(GOBJECT_LIBS)
testsdir = $(datadir)/gobject-introspection-1.0/tests
diff --git a/tests/offsets/Makefile.am b/tests/offsets/Makefile.am
index a3ec78b1..9608ad06 100644
--- a/tests/offsets/Makefile.am
+++ b/tests/offsets/Makefile.am
@@ -16,7 +16,7 @@ EXTRA_LTLIBRARIES += liboffsets.la
liboffsets_la_SOURCES = \
offsets.h \
offsets.c
-liboffsets_la_CPPFLAGS = $(GIREPO_CFLAGS)
+liboffsets_la_CPPFLAGS = $(GIREPO_CFLAGS) $(GI_HIDDEN_VISIBILITY_CFLAGS)
# dummy rpath to get built dynamically (huh?)
liboffsets_la_LDFLAGS = -avoid-version -rpath $(libdir)