[waffle] Update on "Don't explicitly link to libraries - use libdl instead"

Emil Velikov emil.l.velikov at gmail.com
Thu Feb 12 05:56:06 PST 2015


Hello all,

In case you've been wondering what happened with that here it goes:

Currently the following libraries could be nuked

  NEEDED               libwayland-client.so.0
  NEEDED               libwayland-egl.so.1
  NEEDED               libX11-xcb.so.1
  NEEDED               libX11.so.6
  NEEDED               libxcb.so.1
  NEEDED               libudev.so.1

>From the above we're using the following problematic APIs:

X11/xcb
* XGetXCBConnection

libwayland-client
* wl_registry_add_listener
* wl_shell_surface_add_listener
* Others ?

On the X11/xcb side we can fix this by transitioning to a xcb only
implementation, but that means (a) breaking the API/ABI and (b)
updating all the users (with XLookupString being the messiest).

Why problematic - the functions are defined as "static inline" within
the respective headers, which means that they are expanded during
compilation. My biggest concern is that (imho) there is no guarantee
by either library that the current implementation will stay the same,
thus we cannot manually inline them in waffle.

Should be bite the bullet and do it anyway ? Does anyone know a lovely
trick to resolve this ?

Thanks
Emil


More information about the waffle mailing list