Re: [Mesa-dev] [PATCH 12/13] meson: build gallium va state tracker
Quoting Aaron Watry (2017-11-03 19:51:49) > On an unrelated note, I also had to remove the LLVM minimum version > check temporarily, otherwise I get llvm version parsing errors from > 6.0.0svn at the following line: > > dep_llvm = dependency( > 'llvm', version : '>= 3.9.0', required : with_amd_vk, modules : > llvm_modules, > ) > > Error: > Meson encountered an error in file meson.build, line 844, column 0: > Invalid version to compare against: '6.0.0svn'; only numeric digits > separated by "." are allowed: invalid literal for int() with base 10: > '0svn' > > Right after that dependency check, we try to strip the 'svn' from the > llvm version, but at that point, we've already errored out. > > > --Aaron > We have a hack in mesa for this (but like all hacks it only sorta works), but meson 0.43.1 will have a fix to handle the svn string in the version internally. Dylan signature.asc Description: signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 12/13] meson: build gallium va state tracker
On Wed, 2017-11-01 at 15:49 -0700, Dylan Baker wrote: > --- > meson.build | 35 +- > meson_options.txt | 13 ++ > src/gallium/meson.build | 7 ++- > src/gallium/state_trackers/va/meson.build | 39 > src/gallium/targets/va/meson.build| 78 > +++ > 5 files changed, 170 insertions(+), 2 deletions(-) > create mode 100644 src/gallium/state_trackers/va/meson.build > create mode 100644 src/gallium/targets/va/meson.build > > diff --git a/meson.build b/meson.build > index 32b9d96e5be..582ee1d45f1 100644 > --- a/meson.build > +++ b/meson.build > @@ -417,6 +417,38 @@ if with_gallium_omx >endif > endif > > +dep_va = [] > +_va = get_option('gallium-va') > +if _va == 'auto' > + if not ['linux', 'bsd'].contains(host_machine.system()) > +with_gallium_va = false > + elif not with_platform_x11 > +with_gallium_va = false > + elif not (with_gallium_r600 or with_gallium_radeonsi or > with_gallium_nouveau) > +with_gallium_va = false > + else > +dep_va = dependency('libva', version : '>= 0.38.0', required : > false) > +with_gallium_va = dep_va.found() > + endif > +elif _va == 'true' > + if not ['linux', 'bsd'].contains(host_machine.system()) > +error('VA state tracker can only be built on unix-like OSes.') > + elif not (with_platform_x11 or with_platform_drm) > +error('VA state tracker requires X11 or drm or wayland platform > support.') > +with_gallium_va = false > + elif not (with_gallium_r600 or with_gallium_radeonsi or > with_gallium_nouveau) > +error('VA state tracker requires at least one of the following > gallium drivers: r600, radeonsi, nouveau.') > + endif > + dep_va = dependency('libva', version : '>= 0.38.0') Same issue here as with the vdpau state tracker. Adding the following fixes the meson configure step and gets me to the point I can invoke ninja: with_gallium_va = dep_va.found() On an unrelated note, I also had to remove the LLVM minimum version check temporarily, otherwise I get llvm version parsing errors from 6.0.0svn at the following line: dep_llvm = dependency( 'llvm', version : '>= 3.9.0', required : with_amd_vk, modules : llvm_modules, ) Error: Meson encountered an error in file meson.build, line 844, column 0: Invalid version to compare against: '6.0.0svn'; only numeric digits separated by "." are allowed: invalid literal for int() with base 10: '0svn' Right after that dependency check, we try to strip the 'svn' from the llvm version, but at that point, we've already errored out. --Aaron > +else > + with_gallium_va = false > +endif > + > +va_drivers_path = get_option('va-libs-path') > +if va_drivers_path == '' > + va_drivers_path = join_paths(get_option('libdir'), 'dri') > +endif > + > gl_pkgconfig_c_flags = [] > if with_platform_x11 >if with_any_vk or (with_glx == 'dri' and with_dri_platform == > 'drm') > @@ -924,7 +956,8 @@ if with_platform_x11 > dep_xxf86vm = dependency('xxf86vm', required : false) >endif >if (with_any_vk or (with_glx == 'dri' and with_dri_platform == > 'drm') or > - (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx)) > + (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx > or > + with_gallium_xa)) > dep_xcb = dependency('xcb') > dep_x11_xcb = dependency('x11-xcb') > dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8') > diff --git a/meson_options.txt b/meson_options.txt > index f0cb73a89eb..497242cf532 100644 > --- a/meson_options.txt > +++ b/meson_options.txt > @@ -88,6 +88,19 @@ option( >value : '', >description : 'path to put omx libraries. defaults to omx-bellagio > pkg-config pluginsdir.' > ) > +option( > + 'gallium-va', > + type : 'combo', > + value : 'auto', > + choices : ['auto', 'true', 'false'], > + description : 'enable gallium va state tracker.', > +) > +option( > + 'va-libs-path', > + type : 'string', > + value : '', > + description : 'path to put va libraries. defaults to $libdir/dri.' > +) > option( >'vulkan-drivers', >type : 'string', > diff --git a/src/gallium/meson.build b/src/gallium/meson.build > index 49e3d72114b..1dc646bf28f 100644 > --- a/src/gallium/meson.build > +++ b/src/gallium/meson.build > @@ -104,6 +104,9 @@ endif > if with_gallium_omx >subdir('state_trackers/omx_bellagio') > endif > +if with_gallium_va > + subdir('state_trackers/va') > +endif > # TODO: SWR > # TODO: virgl > # TODO: winsys/sw/xlib > @@ -123,8 +126,10 @@ endif > if with_gallium_omx >subdir('targets/omx-bellagio') > endif > +if with_gallium_va > + subdir('targets/va') > +endif > # TODO: xlib-glx > -# TODO: VA > # TODO: xa > # TODO: nine > # TODO: tests > diff --git a/src/gallium/state_trackers/va/meson.build > b/src/gallium/state_trackers/va/meson.build > new file mode 100644 > index 000..7770bc48066 > --- /dev/null > +++
Re: [Mesa-dev] [PATCH 12/13] meson: build gallium va state tracker
On 2 November 2017 at 18:11, Dylan Bakerwrote: > Quoting Emil Velikov (2017-11-02 05:59:40) >> On 1 November 2017 at 22:49, Dylan Baker wrote: >> > --- >> > meson.build | 35 +- >> > meson_options.txt | 13 ++ >> > src/gallium/meson.build | 7 ++- >> > src/gallium/state_trackers/va/meson.build | 39 >> > src/gallium/targets/va/meson.build| 78 >> > +++ >> > 5 files changed, 170 insertions(+), 2 deletions(-) >> > create mode 100644 src/gallium/state_trackers/va/meson.build >> > create mode 100644 src/gallium/targets/va/meson.build >> > >> > diff --git a/meson.build b/meson.build >> > index 32b9d96e5be..582ee1d45f1 100644 >> > --- a/meson.build >> > +++ b/meson.build >> > @@ -417,6 +417,38 @@ if with_gallium_omx >> >endif >> > endif >> > >> > +dep_va = [] >> > +_va = get_option('gallium-va') >> > +if _va == 'auto' >> > + if not ['linux', 'bsd'].contains(host_machine.system()) >> > +with_gallium_va = false >> > + elif not with_platform_x11 >> > +with_gallium_va = false >> > + elif not (with_gallium_r600 or with_gallium_radeonsi or >> > with_gallium_nouveau) >> > +with_gallium_va = false >> > + else >> > +dep_va = dependency('libva', version : '>= 0.38.0', required : false) >> > +with_gallium_va = dep_va.found() >> > + endif >> > +elif _va == 'true' >> > + if not ['linux', 'bsd'].contains(host_machine.system()) >> > +error('VA state tracker can only be built on unix-like OSes.') >> > + elif not (with_platform_x11 or with_platform_drm) >> > +error('VA state tracker requires X11 or drm or wayland platform >> > support.') >> > +with_gallium_va = false >> > + elif not (with_gallium_r600 or with_gallium_radeonsi or >> > with_gallium_nouveau) >> > +error('VA state tracker requires at least one of the following >> > gallium drivers: r600, radeonsi, nouveau.') >> > + endif >> > + dep_va = dependency('libva', version : '>= 0.38.0') >> > +else >> > + with_gallium_va = false >> > +endif >> > + >> > +va_drivers_path = get_option('va-libs-path') >> > +if va_drivers_path == '' >> > + va_drivers_path = join_paths(get_option('libdir'), 'dri') >> > +endif >> > + >> > gl_pkgconfig_c_flags = [] >> > if with_platform_x11 >> >if with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') >> > @@ -924,7 +956,8 @@ if with_platform_x11 >> > dep_xxf86vm = dependency('xxf86vm', required : false) >> >endif >> >if (with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') or >> > - (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx)) >> > + (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx or >> > + with_gallium_xa)) >> > dep_xcb = dependency('xcb') >> > dep_x11_xcb = dependency('x11-xcb') >> > dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8') >> > diff --git a/meson_options.txt b/meson_options.txt >> > index f0cb73a89eb..497242cf532 100644 >> > --- a/meson_options.txt >> > +++ b/meson_options.txt >> > @@ -88,6 +88,19 @@ option( >> >value : '', >> >description : 'path to put omx libraries. defaults to omx-bellagio >> > pkg-config pluginsdir.' >> > ) >> > +option( >> > + 'gallium-va', >> > + type : 'combo', >> > + value : 'auto', >> > + choices : ['auto', 'true', 'false'], >> > + description : 'enable gallium va state tracker.', >> > +) >> > +option( >> > + 'va-libs-path', >> > + type : 'string', >> > + value : '', >> > + description : 'path to put va libraries. defaults to $libdir/dri.' >> > +) >> > option( >> >'vulkan-drivers', >> >type : 'string', >> > diff --git a/src/gallium/meson.build b/src/gallium/meson.build >> > index 49e3d72114b..1dc646bf28f 100644 >> > --- a/src/gallium/meson.build >> > +++ b/src/gallium/meson.build >> > @@ -104,6 +104,9 @@ endif >> > if with_gallium_omx >> >subdir('state_trackers/omx_bellagio') >> > endif >> > +if with_gallium_va >> > + subdir('state_trackers/va') >> > +endif >> > # TODO: SWR >> > # TODO: virgl >> > # TODO: winsys/sw/xlib >> > @@ -123,8 +126,10 @@ endif >> > if with_gallium_omx >> >subdir('targets/omx-bellagio') >> > endif >> > +if with_gallium_va >> > + subdir('targets/va') >> > +endif >> > # TODO: xlib-glx >> > -# TODO: VA >> > # TODO: xa >> > # TODO: nine >> > # TODO: tests >> > diff --git a/src/gallium/state_trackers/va/meson.build >> > b/src/gallium/state_trackers/va/meson.build >> > new file mode 100644 >> > index 000..7770bc48066 >> > --- /dev/null >> > +++ b/src/gallium/state_trackers/va/meson.build >> > @@ -0,0 +1,39 @@ >> > +# Copyright © 2017 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 >> > +# in the Software without
Re: [Mesa-dev] [PATCH 12/13] meson: build gallium va state tracker
Quoting Emil Velikov (2017-11-02 05:59:40) > On 1 November 2017 at 22:49, Dylan Bakerwrote: > > --- > > meson.build | 35 +- > > meson_options.txt | 13 ++ > > src/gallium/meson.build | 7 ++- > > src/gallium/state_trackers/va/meson.build | 39 > > src/gallium/targets/va/meson.build| 78 > > +++ > > 5 files changed, 170 insertions(+), 2 deletions(-) > > create mode 100644 src/gallium/state_trackers/va/meson.build > > create mode 100644 src/gallium/targets/va/meson.build > > > > diff --git a/meson.build b/meson.build > > index 32b9d96e5be..582ee1d45f1 100644 > > --- a/meson.build > > +++ b/meson.build > > @@ -417,6 +417,38 @@ if with_gallium_omx > >endif > > endif > > > > +dep_va = [] > > +_va = get_option('gallium-va') > > +if _va == 'auto' > > + if not ['linux', 'bsd'].contains(host_machine.system()) > > +with_gallium_va = false > > + elif not with_platform_x11 > > +with_gallium_va = false > > + elif not (with_gallium_r600 or with_gallium_radeonsi or > > with_gallium_nouveau) > > +with_gallium_va = false > > + else > > +dep_va = dependency('libva', version : '>= 0.38.0', required : false) > > +with_gallium_va = dep_va.found() > > + endif > > +elif _va == 'true' > > + if not ['linux', 'bsd'].contains(host_machine.system()) > > +error('VA state tracker can only be built on unix-like OSes.') > > + elif not (with_platform_x11 or with_platform_drm) > > +error('VA state tracker requires X11 or drm or wayland platform > > support.') > > +with_gallium_va = false > > + elif not (with_gallium_r600 or with_gallium_radeonsi or > > with_gallium_nouveau) > > +error('VA state tracker requires at least one of the following gallium > > drivers: r600, radeonsi, nouveau.') > > + endif > > + dep_va = dependency('libva', version : '>= 0.38.0') > > +else > > + with_gallium_va = false > > +endif > > + > > +va_drivers_path = get_option('va-libs-path') > > +if va_drivers_path == '' > > + va_drivers_path = join_paths(get_option('libdir'), 'dri') > > +endif > > + > > gl_pkgconfig_c_flags = [] > > if with_platform_x11 > >if with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') > > @@ -924,7 +956,8 @@ if with_platform_x11 > > dep_xxf86vm = dependency('xxf86vm', required : false) > >endif > >if (with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') or > > - (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx)) > > + (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx or > > + with_gallium_xa)) > > dep_xcb = dependency('xcb') > > dep_x11_xcb = dependency('x11-xcb') > > dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8') > > diff --git a/meson_options.txt b/meson_options.txt > > index f0cb73a89eb..497242cf532 100644 > > --- a/meson_options.txt > > +++ b/meson_options.txt > > @@ -88,6 +88,19 @@ option( > >value : '', > >description : 'path to put omx libraries. defaults to omx-bellagio > > pkg-config pluginsdir.' > > ) > > +option( > > + 'gallium-va', > > + type : 'combo', > > + value : 'auto', > > + choices : ['auto', 'true', 'false'], > > + description : 'enable gallium va state tracker.', > > +) > > +option( > > + 'va-libs-path', > > + type : 'string', > > + value : '', > > + description : 'path to put va libraries. defaults to $libdir/dri.' > > +) > > option( > >'vulkan-drivers', > >type : 'string', > > diff --git a/src/gallium/meson.build b/src/gallium/meson.build > > index 49e3d72114b..1dc646bf28f 100644 > > --- a/src/gallium/meson.build > > +++ b/src/gallium/meson.build > > @@ -104,6 +104,9 @@ endif > > if with_gallium_omx > >subdir('state_trackers/omx_bellagio') > > endif > > +if with_gallium_va > > + subdir('state_trackers/va') > > +endif > > # TODO: SWR > > # TODO: virgl > > # TODO: winsys/sw/xlib > > @@ -123,8 +126,10 @@ endif > > if with_gallium_omx > >subdir('targets/omx-bellagio') > > endif > > +if with_gallium_va > > + subdir('targets/va') > > +endif > > # TODO: xlib-glx > > -# TODO: VA > > # TODO: xa > > # TODO: nine > > # TODO: tests > > diff --git a/src/gallium/state_trackers/va/meson.build > > b/src/gallium/state_trackers/va/meson.build > > new file mode 100644 > > index 000..7770bc48066 > > --- /dev/null > > +++ b/src/gallium/state_trackers/va/meson.build > > @@ -0,0 +1,39 @@ > > +# Copyright © 2017 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 > > +# in the Software without restriction, including without limitation the > > rights > > +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell > > +# copies of the Software, and to permit persons to whom the Software is >
Re: [Mesa-dev] [PATCH 12/13] meson: build gallium va state tracker
On 1 November 2017 at 22:49, Dylan Bakerwrote: > --- > meson.build | 35 +- > meson_options.txt | 13 ++ > src/gallium/meson.build | 7 ++- > src/gallium/state_trackers/va/meson.build | 39 > src/gallium/targets/va/meson.build| 78 > +++ > 5 files changed, 170 insertions(+), 2 deletions(-) > create mode 100644 src/gallium/state_trackers/va/meson.build > create mode 100644 src/gallium/targets/va/meson.build > > diff --git a/meson.build b/meson.build > index 32b9d96e5be..582ee1d45f1 100644 > --- a/meson.build > +++ b/meson.build > @@ -417,6 +417,38 @@ if with_gallium_omx >endif > endif > > +dep_va = [] > +_va = get_option('gallium-va') > +if _va == 'auto' > + if not ['linux', 'bsd'].contains(host_machine.system()) > +with_gallium_va = false > + elif not with_platform_x11 > +with_gallium_va = false > + elif not (with_gallium_r600 or with_gallium_radeonsi or > with_gallium_nouveau) > +with_gallium_va = false > + else > +dep_va = dependency('libva', version : '>= 0.38.0', required : false) > +with_gallium_va = dep_va.found() > + endif > +elif _va == 'true' > + if not ['linux', 'bsd'].contains(host_machine.system()) > +error('VA state tracker can only be built on unix-like OSes.') > + elif not (with_platform_x11 or with_platform_drm) > +error('VA state tracker requires X11 or drm or wayland platform > support.') > +with_gallium_va = false > + elif not (with_gallium_r600 or with_gallium_radeonsi or > with_gallium_nouveau) > +error('VA state tracker requires at least one of the following gallium > drivers: r600, radeonsi, nouveau.') > + endif > + dep_va = dependency('libva', version : '>= 0.38.0') > +else > + with_gallium_va = false > +endif > + > +va_drivers_path = get_option('va-libs-path') > +if va_drivers_path == '' > + va_drivers_path = join_paths(get_option('libdir'), 'dri') > +endif > + > gl_pkgconfig_c_flags = [] > if with_platform_x11 >if with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') > @@ -924,7 +956,8 @@ if with_platform_x11 > dep_xxf86vm = dependency('xxf86vm', required : false) >endif >if (with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') or > - (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx)) > + (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx or > + with_gallium_xa)) > dep_xcb = dependency('xcb') > dep_x11_xcb = dependency('x11-xcb') > dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8') > diff --git a/meson_options.txt b/meson_options.txt > index f0cb73a89eb..497242cf532 100644 > --- a/meson_options.txt > +++ b/meson_options.txt > @@ -88,6 +88,19 @@ option( >value : '', >description : 'path to put omx libraries. defaults to omx-bellagio > pkg-config pluginsdir.' > ) > +option( > + 'gallium-va', > + type : 'combo', > + value : 'auto', > + choices : ['auto', 'true', 'false'], > + description : 'enable gallium va state tracker.', > +) > +option( > + 'va-libs-path', > + type : 'string', > + value : '', > + description : 'path to put va libraries. defaults to $libdir/dri.' > +) > option( >'vulkan-drivers', >type : 'string', > diff --git a/src/gallium/meson.build b/src/gallium/meson.build > index 49e3d72114b..1dc646bf28f 100644 > --- a/src/gallium/meson.build > +++ b/src/gallium/meson.build > @@ -104,6 +104,9 @@ endif > if with_gallium_omx >subdir('state_trackers/omx_bellagio') > endif > +if with_gallium_va > + subdir('state_trackers/va') > +endif > # TODO: SWR > # TODO: virgl > # TODO: winsys/sw/xlib > @@ -123,8 +126,10 @@ endif > if with_gallium_omx >subdir('targets/omx-bellagio') > endif > +if with_gallium_va > + subdir('targets/va') > +endif > # TODO: xlib-glx > -# TODO: VA > # TODO: xa > # TODO: nine > # TODO: tests > diff --git a/src/gallium/state_trackers/va/meson.build > b/src/gallium/state_trackers/va/meson.build > new file mode 100644 > index 000..7770bc48066 > --- /dev/null > +++ b/src/gallium/state_trackers/va/meson.build > @@ -0,0 +1,39 @@ > +# Copyright © 2017 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 > +# in the Software without restriction, including without limitation the > rights > +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell > +# copies of the Software, and to permit persons to whom the Software is > +# furnished to do so, subject to the following conditions: > + > +# The above copyright notice and this permission notice shall be included in > +# all copies or substantial portions of the Software. > + > +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > +# IMPLIED, INCLUDING BUT NOT
[Mesa-dev] [PATCH 12/13] meson: build gallium va state tracker
--- meson.build | 35 +- meson_options.txt | 13 ++ src/gallium/meson.build | 7 ++- src/gallium/state_trackers/va/meson.build | 39 src/gallium/targets/va/meson.build| 78 +++ 5 files changed, 170 insertions(+), 2 deletions(-) create mode 100644 src/gallium/state_trackers/va/meson.build create mode 100644 src/gallium/targets/va/meson.build diff --git a/meson.build b/meson.build index 32b9d96e5be..582ee1d45f1 100644 --- a/meson.build +++ b/meson.build @@ -417,6 +417,38 @@ if with_gallium_omx endif endif +dep_va = [] +_va = get_option('gallium-va') +if _va == 'auto' + if not ['linux', 'bsd'].contains(host_machine.system()) +with_gallium_va = false + elif not with_platform_x11 +with_gallium_va = false + elif not (with_gallium_r600 or with_gallium_radeonsi or with_gallium_nouveau) +with_gallium_va = false + else +dep_va = dependency('libva', version : '>= 0.38.0', required : false) +with_gallium_va = dep_va.found() + endif +elif _va == 'true' + if not ['linux', 'bsd'].contains(host_machine.system()) +error('VA state tracker can only be built on unix-like OSes.') + elif not (with_platform_x11 or with_platform_drm) +error('VA state tracker requires X11 or drm or wayland platform support.') +with_gallium_va = false + elif not (with_gallium_r600 or with_gallium_radeonsi or with_gallium_nouveau) +error('VA state tracker requires at least one of the following gallium drivers: r600, radeonsi, nouveau.') + endif + dep_va = dependency('libva', version : '>= 0.38.0') +else + with_gallium_va = false +endif + +va_drivers_path = get_option('va-libs-path') +if va_drivers_path == '' + va_drivers_path = join_paths(get_option('libdir'), 'dri') +endif + gl_pkgconfig_c_flags = [] if with_platform_x11 if with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') @@ -924,7 +956,8 @@ if with_platform_x11 dep_xxf86vm = dependency('xxf86vm', required : false) endif if (with_any_vk or (with_glx == 'dri' and with_dri_platform == 'drm') or - (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx)) + (with_gallium_vdpau or with_gallium_xvmc or with_gallium_omx or + with_gallium_xa)) dep_xcb = dependency('xcb') dep_x11_xcb = dependency('x11-xcb') dep_xcb_dri2 = dependency('xcb-dri2', version : '>= 1.8') diff --git a/meson_options.txt b/meson_options.txt index f0cb73a89eb..497242cf532 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -88,6 +88,19 @@ option( value : '', description : 'path to put omx libraries. defaults to omx-bellagio pkg-config pluginsdir.' ) +option( + 'gallium-va', + type : 'combo', + value : 'auto', + choices : ['auto', 'true', 'false'], + description : 'enable gallium va state tracker.', +) +option( + 'va-libs-path', + type : 'string', + value : '', + description : 'path to put va libraries. defaults to $libdir/dri.' +) option( 'vulkan-drivers', type : 'string', diff --git a/src/gallium/meson.build b/src/gallium/meson.build index 49e3d72114b..1dc646bf28f 100644 --- a/src/gallium/meson.build +++ b/src/gallium/meson.build @@ -104,6 +104,9 @@ endif if with_gallium_omx subdir('state_trackers/omx_bellagio') endif +if with_gallium_va + subdir('state_trackers/va') +endif # TODO: SWR # TODO: virgl # TODO: winsys/sw/xlib @@ -123,8 +126,10 @@ endif if with_gallium_omx subdir('targets/omx-bellagio') endif +if with_gallium_va + subdir('targets/va') +endif # TODO: xlib-glx -# TODO: VA # TODO: xa # TODO: nine # TODO: tests diff --git a/src/gallium/state_trackers/va/meson.build b/src/gallium/state_trackers/va/meson.build new file mode 100644 index 000..7770bc48066 --- /dev/null +++ b/src/gallium/state_trackers/va/meson.build @@ -0,0 +1,39 @@ +# Copyright © 2017 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 +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: + +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. + +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN