[Mesa-dev] [PATCH 3/4] meson: build libEGL

Eric Engestrom eric.engestrom at imgtec.com
Fri Oct 20 10:15:32 UTC 2017


On Thursday, 2017-10-19 16:27:02 +0000, Eric Engestrom wrote:
> On Thursday, 2017-10-19 14:34:28 +0000, Daniel Stone wrote:
> > Hi Dylan,
> > 
> > On 19 October 2017 at 01:55, Dylan Baker <dylan at pnwbakers.com> wrote:
> > > This is based heavily on Daniel Stone's work for the same, rebased on
> > > master and with a number of TODO's fixed.
> > >
> > > This does not implement glvnd (which is coming in a later patch)
> > >
> > > Meson builds egl slightly differently than autotools, namely it doesn't
> > > build an intermediate shared library. It doesn't do this because meson
> > > doesn't have problems with the name of the library being dynamically
> > > generated, so the glvnd and non-glvnd code can follow the same path.
> > 
> > Thanks a million for picking this up, and fixing all the egregious
> > bugs / gaps / variable name inconsistency! Is this available in a
> > fully-baked git branch somewhere?
> 
> cf. cover letter:
> https://github.com/dcbaker/mesa submit/meson-egl
> 
> I'm having trouble testing it though, didn't have enough time to debug
> tonight but eglInit() is failing

New day, fresh brain cells. I needed to `ninja install`, using the libs
directly from the build dir didn't work.

Series is:
Tested-by: Eric Engestrom <eric.engestrom at imgtec.com>

> 
> > 
> > > +linux_dmabuf_unstable_v1_protocol_c = custom_target(
> > > +  'linux-dmabuf-unstable-v1-protocol.c',
> > > +  input : wayland_dmabuf_xml,
> > > +  output : 'linux-dmabuf-unstable-v1-protocol.c',
> > > +  command : [prog_wl_scanner, 'code', '@INPUT@', '@OUTPUT@'],
> > > +)
> > > +
> > > +linux_dmabuf_unstable_v1_client_protocol_h = custom_target(
> > > +  'linux-dmabuf-unstable-v1-client-protocol.h',
> > > +  input : wayland_dmabuf_xml,
> > > +  output : 'linux-dmabuf-unstable-v1-client-protocol.h',
> > > +  command : [prog_wl_scanner, 'client-header', '@INPUT@', '@OUTPUT@'],
> > > +)
> > 
> > Could you please move these into src/egl/wayland/wayland-drm? They're
> > not actually wl_drm of course, but I have patches out to use
> > linux-dmabuf inside Vulkan as well, so having wl_drm and
> > zwp_linux_dmabuf in the same place where it's just built once seems
> > like an idea. Then it'd be trivial to hoist that out of src/egl/
> > later.
> > 
> > > +libwayland_egl = shared_library(
> > > +  'wayland-egl',
> > > +  'wayland-egl.c',
> > > +  c_args : [c_vis_args],
> > > +  link_args : ld_args_gc_sections,
> > > +  version : '1.0.0',
> > > +  install : true,
> > >  )
> > 
> > As a drive-by musing, is there a reason c_vis_args isn't part of the
> > global arguments? I realised after the fact that I'd left it out of
> > quite a few places in my branch.
> > 
> > Other than that, it looks good to me, so:
> > Reviewed-by: Daniel Stone <daniels at collabora.com>
> > 
> > Cheers,
> > Daniel


More information about the mesa-dev mailing list