[Mesa-dev] [PATCH v3 1/9] meson: use va-api version reported by pkg-config

Dylan Baker dylan at pnwbakers.com
Thu Feb 8 23:36:37 UTC 2018


Quoting Emil Velikov (2018-02-08 15:22:32)
> On 8 February 2018 at 23:16, Dylan Baker <dylan at pnwbakers.com> wrote:
> > Quoting Emil Velikov (2018-02-08 14:56:27)
> >> On 2 February 2018 at 19:30, Dylan Baker <dylan at pnwbakers.com> wrote:
> >> > Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker")
> >> > Signed-off-by: Dylan Baker <dylan.c.baker at intel.com>
> >> > ---
> >> >  meson.build                               | 2 +-
> >> >  src/gallium/state_trackers/va/meson.build | 6 +++---
> >> >  2 files changed, 4 insertions(+), 4 deletions(-)
> >> >
> >> > diff --git a/meson.build b/meson.build
> >> > index 323f706..4c6283c 100644
> >> > --- a/meson.build
> >> > +++ b/meson.build
> >> > @@ -533,7 +533,7 @@ with_gallium_va = _va == 'true'
> >> >  dep_va = []
> >> >  if with_gallium_va
> >> >    dep_va = dependency('libva', version : '>= 0.38.0')
> >> > -  dep_va = declare_dependency(
> >> > +  dep_va_headers = declare_dependency(
> >> >      compile_args : run_command(prog_pkgconfig, ['libva', '--cflags']).stdout().split()
> >> >    )
> >> >  endif
> >> > diff --git a/src/gallium/state_trackers/va/meson.build b/src/gallium/state_trackers/va/meson.build
> >> > index 56e68e9..35da5ab 100644
> >> > --- a/src/gallium/state_trackers/va/meson.build
> >> > +++ b/src/gallium/state_trackers/va/meson.build
> >> > @@ -1,4 +1,4 @@
> >> > -# Copyright © 2017 Intel Corporation
> >> > +# Copyright © 2017-2018 Intel Corporation
> >> >
> >> >  # Permission is hereby granted, free of charge, to any person obtaining a copy
> >> >  # of this software and associated documentation files (the "Software"), to deal
> >> > @@ -18,7 +18,7 @@
> >> >  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
> >> >  # SOFTWARE.
> >> >
> >> > -libva_version = ['2', '3', '0']
> >> > +libva_version = dep_va.version().split('.')
> >> >
> >> >  libva_st = static_library(
> >> >    'va_st',
> >> > @@ -35,5 +35,5 @@ libva_st = static_library(
> >> >      ),
> >> >    ],
> >> >    include_directories : [inc_common],
> >> > -  dependencies : [dep_va, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3],
> >> > +  dependencies : [dep_va_headers, dep_x11_xcb, dep_xcb, dep_xcb_dri2, dep_xcb_dri3],
> >> You're doing three distinct things here. Please split those up:
> >>  - using the correction version
> >>  - removing the overlinking (against libva)
> >>  - correcting the (link) depedency list
> >
> > No, the only thing in your list changing is that we're using the correct
> > version. Previously dep_va was shadowed to by a headers only dependency, with
> > this patch a new variable is created for the headers only dependency and no
> > shadowing is done.
> >
> Right - slightly misread that one. Still seem like two distinct things, right?
> 
> >> To save yourself some pain fold the common x11_xcb/etc dependencies
> >> into a common block at the top level.
> >> In there you can attribute (perhaps at a later stage) the x11-less
> >> build. Just like we've been doing in autotools for a while.
> >
> > The plan is to do that once we move to meson 0.45, which has a dependency cache,
> > and will make checking for a dependency more than once basically free.
> >
> Surely one can do that just once (regardless of 0.45) in say top level
> meson.build?
> It works with old lovely autotools and meson seems perfectly capable
> of doing this.
> 
> -Emil

Are you suggesting doing something like?

group_of_deps = [dep_foo, dep_bar]

Dylan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: signature
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180208/6cbee8ff/attachment.sig>


More information about the mesa-dev mailing list