On 8 February 2018 at 23:36, Dylan Baker <dy...@pnwbakers.com> wrote: > Quoting Emil Velikov (2018-02-08 15:22:32) >> On 8 February 2018 at 23:16, Dylan Baker <dy...@pnwbakers.com> wrote: >> > Quoting Emil Velikov (2018-02-08 14:56:27) >> >> On 2 February 2018 at 19:30, Dylan Baker <dy...@pnwbakers.com> wrote: >> >> > Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker") >> >> > Signed-off-by: Dylan Baker <dylan.c.ba...@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] > Whichever works really - be that a list (array?) like you mentioned, a dependency() thingy or other. Even in the worst case (of calling pkg-config once more per target) those will be handled in parallel so it won't be noticeable.
-Emil _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev