[Mesa-dev] [PATCH v3 1/9] meson: use va-api version reported by pkg-config
Emil Velikov
emil.l.velikov at gmail.com
Thu Feb 8 23:22:32 UTC 2018
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
More information about the mesa-dev
mailing list