[Mesa-dev] [Mesa-stable] [PATCH 1/5] wayland-egl: allow shipping the library or not

Emil Velikov emil.l.velikov at gmail.com
Tue Jun 5 15:24:59 UTC 2018


On 5 June 2018 at 16:07, Eric Engestrom <eric.engestrom at intel.com> wrote:
> On Tuesday, 2018-06-05 15:14:30 +0100, Emil Velikov wrote:
>> From: Emil Velikov <emil.velikov at collabora.com>
>>
>> Recently the wayland-egl library and pkg-config file were moved to the
>> Wayland repository. With that a strange conflict came to be - which one
>> should be used and when.
>>
>> The long term goal is to remove the Mesa copies, but with this patch we
>> allow builders to explicitly select if they want it.
>>
>> Note: since the header (wayland-egl-backend.h) is now used by C++
>> people, s/private/driver_private/ was applied.
>>
>> Cc: Eric Engestrom <eric.engestrom at intel.com>
>> CC: 18.0 18.1 <mesa-stable at freedesktop.org>
>> Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
>> ---
>>  configure.ac                            | 17 +++++++++++++++++
>>  meson.build                             | 12 ++++++++++++
>>  meson_options.txt                       |  6 ++++++
>>  src/Makefile.am                         |  2 ++
>>  src/egl/Makefile.am                     |  1 +
>>  src/egl/drivers/dri2/platform_wayland.c | 12 ++++++++++++
>>  src/egl/meson.build                     |  2 +-
>>  src/meson.build                         |  2 +-
>>  8 files changed, 52 insertions(+), 2 deletions(-)
>>
>> diff --git a/configure.ac b/configure.ac
>> index 02dca4547c8..5ea52242bd1 100644
>> --- a/configure.ac
>> +++ b/configure.ac
>> @@ -89,6 +89,7 @@ LIBOMXIL_BELLAGIO_REQUIRED=0.0
>>  LIBOMXIL_TIZONIA_REQUIRED=0.10.0
>>  LIBVA_REQUIRED=0.39.0
>>  VDPAU_REQUIRED=1.1
>> +# TODO: Bump to 1.15 -> the first version that ships wayland-egl-backend
>>  WAYLAND_REQUIRED=1.11
>>  WAYLAND_PROTOCOLS_REQUIRED=1.8
>>  XCB_REQUIRED=1.9.3
>> @@ -1766,6 +1767,18 @@ if test "x$enable_glx_read_only_text" = xyes; then
>>      DEFINES="$DEFINES -DGLX_X86_READONLY_TEXT"
>>  fi
>>
>> +dnl
>> +dnl TEMPORARY: mostly for stable releases
>> +dnl
>> +dnl It will allow easier management as the wayland-egl library was
>> +dnl moved to the Wayland project
>> +dnl
>> +AC_ARG_ENABLE(bundled-wayland-egl,
>> +   [AS_HELP_STRING([--disable-bundled-wayland-egl],
>> +                [disable shipping of the wayland-egl library and pkg-config file @<:@default=enabled@:>@])],
>> +   [enable_wayland_egl=$enableval], [enable_wayland_egl=yes])
>> +AM_CONDITIONAL(BUILD_WAYLAND_EGL, test "x$enable_wayland_egl" = xyes)
>
> I'm not sure I see the benefit of your variant of adding all the
> complexity of a new option and immediately making it an error to use it.
> Could you explain your logic?
>
In all fairness, it should have been introduced when wayland-egl was
proposed for Wayland inclusion.
Back then I was under the naive assumption that, distribution maintainers will:
 - read mesa-maintainers@ or the wayland release notes
 - will know how to address the multiple copies of libwayland-egl.so

Since then a distribution (wish shall remain unnamed), kind of
foobar'd both of the above.

All the complexity is ~40loc, with ~30 of which #idef guards. The
annoyance might be far greater though.

If you think it's too much, sure - I'll more or less squash 1+2.

Thanks
Emil


More information about the mesa-dev mailing list