aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2018-02-20 08:06:51 +0100
committerGuido Günther <agx@sigxcpu.org>2018-02-23 09:51:23 +0100
commit6ba1128a72c3779affd82719a19be643a33490a0 (patch)
tree32f879fd46790aca517444fe1b2f168a48eca020
parentb13f9fcfdee3028e8966a45295c12c818f9bc4f9 (diff)
Add symbols file
to only export symbols matching wlr_* from the wlroots library
-rw-r--r--meson.build3
-rw-r--r--wlroots.syms49
2 files changed, 52 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index 2fc78d33..d5ae7863 100644
--- a/meson.build
+++ b/meson.build
@@ -140,6 +140,8 @@ wlr_deps += [
math,
]
+symbols_file = 'wlroots.syms'
+symbols_flag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), symbols_file)
lib_wlr = library(
meson.project_name(),
version: '.'.join(so_version),
@@ -147,6 +149,7 @@ lib_wlr = library(
dependencies: wlr_deps,
include_directories: wlr_inc,
install: true,
+ link_args : symbols_flag,
)
wlroots = declare_dependency(
diff --git a/wlroots.syms b/wlroots.syms
new file mode 100644
index 00000000..93d6fe51
--- /dev/null
+++ b/wlroots.syms
@@ -0,0 +1,49 @@
+WLROOTS_0_0_0 {
+ global:
+ wlr_*;
+ _wlr_log;
+ local:
+ wlr_data_device_keyboard_drag_interface;
+ wlr_data_device_pointer_drag_interface;
+ wlr_data_device_touch_drag_interface;
+ wlr_drm_backend_get_session;
+ wlr_drm_check_features;
+ wlr_drm_connector_cleanup;
+ wlr_drm_connector_start_renderer;
+ wlr_drm_event;
+ wlr_drm_get_connector_props;
+ wlr_drm_get_crtc_props;
+ wlr_drm_get_plane_props;
+ wlr_drm_get_prop;
+ wlr_drm_get_prop_blob;
+ wlr_drm_plane_surfaces_init;
+ wlr_drm_renderer_finish;
+ wlr_drm_renderer_init;
+ wlr_drm_resources_free;
+ wlr_drm_resources_init;
+ wlr_drm_restore_outputs;
+ wlr_drm_scan_connectors;
+ wlr_drm_surface_finish;
+ wlr_drm_surface_get_front;
+ wlr_drm_surface_init;
+ wlr_drm_surface_make_current;
+ wlr_drm_surface_mgpu_copy;
+ wlr_drm_surface_post;
+ wlr_drm_surface_swap_buffers;
+ wlr_egl_get_buffer_age;
+ wlr_libinput_event;
+ wlr_libinput_keyboard_create;
+ wlr_libinput_pointer_create;
+ wlr_libinput_tablet_pad_create;
+ wlr_libinput_tablet_tool_create;
+ wlr_libinput_touch_create;
+ wlr_log_stderr;
+ wlr_signal_emit_safe;
+ wlr_subsurface_destroy;
+ wlr_wl_output_for_surface;
+ wlr_wl_output_layout_get_box;
+ wlr_wl_output_move_cursor;
+ wlr_wl_output_update_cursor;
+ wlr_wl_registry_poll;
+ *;
+};