On Wed, Sep 10, 2014 at 01:32:25AM +0200, Jan Engelhardt wrote: > Symbol versions provide a means by which ELF utilities can determine > whether a program is incompatible with a too-old library version so > that package management tools can autodetect version-based > dependencies and suggest upgrade paths.
This sounds like a good idea. I have not pushed it yet though because I'd want to avoid adding the symbols that will be deprecated in the coming release (libinput_device_get_keys and libinput_device_calibrate). Jonas > > Signed-off-by: Jan Engelhardt <jeng...@inai.de> > --- > src/Makefile.am | 3 +- > src/libinput.map | 87 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 89 insertions(+), 1 deletion(-) > create mode 100644 src/libinput.map > > diff --git a/src/Makefile.am b/src/Makefile.am > index 44e73d3..629ce49 100644 > --- a/src/Makefile.am > +++ b/src/Makefile.am > @@ -34,7 +34,8 @@ libinput_la_CFLAGS = -I$(top_srcdir)/include \ > $(LIBEVDEV_CFLAGS) \ > $(GCC_CFLAGS) > > -libinput_la_LDFLAGS = -version-info $(LIBINPUT_LT_VERSION) -shared > +libinput_la_LDFLAGS = -version-info $(LIBINPUT_LT_VERSION) -shared \ > + -Wl,--version-script=$(srcdir)/libinput.map > > pkgconfigdir = $(libdir)/pkgconfig > pkgconfig_DATA = libinput.pc > diff --git a/src/libinput.map b/src/libinput.map > new file mode 100644 > index 0000000..414dbd2 > --- /dev/null > +++ b/src/libinput.map > @@ -0,0 +1,87 @@ > +V_0.5.0 { > +global: > + libinput_event_destroy; > + libinput_event_get_type; > + libinput_event_get_context; > + libinput_event_get_device; > + libinput_event_get_pointer_event; > + libinput_event_get_keyboard_event; > + libinput_event_get_touch_event; > + libinput_event_get_device_notify_event; > + libinput_event_device_notify_get_base_event; > + libinput_event_keyboard_get_time; > + libinput_event_keyboard_get_key; > + libinput_event_keyboard_get_key_state; > + libinput_event_keyboard_get_base_event; > + libinput_event_keyboard_get_seat_key_count; > + libinput_event_pointer_get_time; > + libinput_event_pointer_get_dx; > + libinput_event_pointer_get_dy; > + libinput_event_pointer_get_absolute_x; > + libinput_event_pointer_get_absolute_y; > + libinput_event_pointer_get_absolute_x_transformed; > + libinput_event_pointer_get_absolute_y_transformed; > + libinput_event_pointer_get_button; > + libinput_event_pointer_get_button_state; > + libinput_event_pointer_get_seat_button_count; > + libinput_event_pointer_get_axis; > + libinput_event_pointer_get_axis_value; > + libinput_event_pointer_get_base_event; > + libinput_event_touch_get_time; > + libinput_event_touch_get_slot; > + libinput_event_touch_get_seat_slot; > + libinput_event_touch_get_x; > + libinput_event_touch_get_y; > + libinput_event_touch_get_x_transformed; > + libinput_event_touch_get_y_transformed; > + libinput_event_touch_get_base_event; > + libinput_udev_create_context; > + libinput_udev_assign_seat; > + libinput_path_create_context; > + libinput_path_add_device; > + libinput_path_remove_device; > + libinput_get_fd; > + libinput_dispatch; > + libinput_get_event; > + libinput_next_event_type; > + libinput_get_user_data; > + libinput_resume; > + libinput_suspend; > + libinput_ref; > + libinput_unref; > + libinput_log_set_priority; > + libinput_log_get_priority; > + libinput_log_set_handler; > + libinput_seat_ref; > + libinput_seat_unref; > + libinput_seat_set_user_data; > + libinput_seat_get_user_data; > + libinput_seat_get_physical_name; > + libinput_seat_get_logical_name; > + libinput_device_ref; > + libinput_device_unref; > + libinput_device_set_user_data; > + libinput_device_get_user_data; > + libinput_device_get_sysname; > + libinput_device_get_name; > + libinput_device_get_id_product; > + libinput_device_get_id_vendor; > + libinput_device_get_output_name; > + libinput_device_get_seat; > + libinput_device_led_update; > + libinput_device_get_keys; > + libinput_device_calibrate; > + libinput_device_has_capability; > + libinput_device_get_size; > + libinput_config_status_to_str; > + libinput_device_config_tap_get_finger_count; > + libinput_device_config_tap_set_enabled; > + libinput_device_config_tap_get_enabled; > + libinput_device_config_tap_get_default_enabled; > + libinput_device_config_calibration_has_matrix; > + libinput_device_config_calibration_set_matrix; > + libinput_device_config_calibration_get_matrix; > + libinput_device_config_calibration_get_default_matrix; > +local: > + *; > +}; > -- > 2.0.0 > _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel