GNOME Bugzilla – Bug 682709
abicheck.sh fails with --enable-wayland-backend
Last modified: 2013-05-13 03:20:25 UTC
Trying to add --enable-wayland-backend (and --enable-x11-backend) to ubuntu quantal packaging. abicheck.sh threw an error due to the additional exported symbols. I'm told it shouldn't do that. Build output: make[5]: Entering directory `/home/darxus/gtk/gtk+3.0-3.5.12/debian/build/shared/gdk' --- expected-abi 2012-08-25 20:36:54.733026241 -0400 +++ actual-abi 2012-08-25 20:36:54.737026241 -0400 @@ -41,6 +41,7 @@ gdk_cursor_ref gdk_cursor_type_get_type gdk_cursor_unref +gdk_device_core_get_type gdk_device_free_history gdk_device_get_associated_device gdk_device_get_axis @@ -64,6 +65,7 @@ gdk_device_grab_info_libgtk_only gdk_device_list_axes gdk_device_list_slave_devices +gdk_device_manager_core_get_type gdk_device_manager_get_client_pointer gdk_device_manager_get_display gdk_device_manager_get_type @@ -347,6 +349,15 @@ gdk_visual_get_type gdk_visual_get_visual_type gdk_visual_type_get_type +gdk_wayland_app_launch_context_get_type +gdk_wayland_device_clear_selection_content_libgtk_only +gdk_wayland_device_get_selection_type_atoms_libgtk_only +gdk_wayland_device_offer_selection_content_libgtk_only +gdk_wayland_device_request_selection_content_libgtk_only +gdk_wayland_display_broadcast_startup_message +gdk_wayland_display_manager_get_type +gdk_wayland_drag_context_get_type +gdk_wayland_window_set_modal_hint gdk_window_add_filter gdk_window_at_pointer gdk_window_attributes_type_get_type FAIL: abicheck.sh Relevant conversation from IRC: 08:53PM < Darxus> How do I update the api? I added --enable-wayland-backend, and the build is complaining that I'm exporting more symbols. I see it's ./gdk/abicheck.sh that's complaining, and I see the input files are ${srcdir:-.}/gdk.symbols and .libs/libgdk-3.so... 08:53PM < desrt> Darxus: that actually sounds like bug material 08:54PM < Darxus> desrt: What? 08:54PM < desrt> Darxus: please file a bug about what you just said 08:55PM < Darxus> desrt: What about it? The only problem I see is lack of clarity of how to update the list of valid exported symbols. 08:56PM < desrt> Darxus: enabling the wayland backend should not cause 'make check' to fail 08:56PM < desrt> that's a bug 08:56PM < Darxus> Even though it causes more symbols to be exported? 08:58PM < desrt> yes 08:59PM < desrt> either the bug is that more symbols are exported (and they should not be) or that we should be listing them conditionally in the symbols file 08:59PM < desrt> for example, our X11-specific symbols are inside of #ifdef GDK_WINDOWING_X11 in the .symbols
I did get past this error by manually adding those additional symbols, in the order displayed, to gdk/gdk.symbols.
the abicheck script in GTK+ assumes that only the X11 backend will be built when running 'make check'. for Clutter, I had to modify the abicheck.sh script to allow for conditionally built backends - see commit: http://git.gnome.org/browse/clutter/commit/clutter/abicheck.sh?id=f27e575ad43b98f393895f419898dcced6489b37 and the related bug 670680.
Please add the symbols for broadway too.
I'm not sure I want to go about adding these ABI entries yet since the Wayland backend is still experimental. When we are happy with the exposed ABI then, yes, we will update the symbol file and close this bug.
Created attachment 233942 [details] [review] [PATCH] Gdk: Fix abickeck for non x11 builds gdk/abicheck.sh | 3 ++- gdk/gdk.symbols | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-)
(In reply to comment #4) > I'm not sure I want to go about adding these ABI entries yet since the Wayland > backend is still experimental. > > When we are happy with the exposed ABI then, yes, we will update the symbol > file and close this bug. I agree we should wait until the exposed ABI is more stable.
abicheck has been removed