meson: Build gallium auxiliary

v2: - guard gallivm files with "with_llvm" instead of "dep_llvm.found()"

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net> (v1)
diff --git a/meson.build b/meson.build
index 0ffa280..240c868 100644
--- a/meson.build
+++ b/meson.build
@@ -140,11 +140,13 @@
 # TODO: there are more platforms required for non-vulkan drivers
 with_platform_wayland = false
 with_platform_x11 = false
+with_platform_drm = false
 _platforms = get_option('platforms')
 if _platforms != ''
   _split = _platforms.split(',')
   with_platform_x11 = _split.contains('x11')
   with_platform_wayland = _split.contains('wayland')
+  with_platform_drm = _split.contains('drm')
 endif
 
 with_gbm = get_option('gbm')
@@ -558,7 +560,10 @@
 
 # TODO: llvm-prefix and llvm-shared-libs
 
-# TODO: unwind (llvm [radeon, gallivm] and gallium)
+dep_unwind = dependency('libunwind', required : false)
+if dep_unwind.found()
+  pre_args += '-DHAVE_LIBUNWIND'
+endif
 
 # TODO: flags for opengl, gles, dri
 
@@ -568,9 +573,6 @@
 
 # TODO: osmesa provider
 
-# TODO: flags for xa, egl, gbm, nin, xvmc, vdpau, omx, va, opencl,
-#       gallium-tests,
-
 # TODO: symbol mangling
 
 # TODO: egl configuration
@@ -652,8 +654,6 @@
 
 # TODO: egl
 
-# TODO: xa
-
 # TODO: vallium G3DVL
 
 # TODO: nine
@@ -662,7 +662,29 @@
 
 # TODO: egl sans x11
 
-# TODO: xvmc
+with_gallium_xvmc = false
+with_gallium_vdpau = false
+with_gallium_omx = false  # this is bellagio
+with_gallium_va = false
+with_gallium_media = false
+dep_va = []
+_drivers = get_option('gallium-media')
+if _drivers != ''
+  _split = _drivers.split(',')
+  with_gallium_xvmc = _split.contains('xvmc')
+  with_gallium_vdpau = _split.contains('vdpau')
+  with_gallium_omx = _split.contains('omx')
+  with_gallium_va = _split.contains('va')
+  with_gallium_media = (with_gallium_xvmc or with_gallium_vdpau or
+                        with_gallium_omx or with_gallium_va)
+  if with_gallium_media
+    dep_va = [
+      dependency('x11-xcb'),
+      dependency('xcb'),
+      dependency('xcb-dri2', version : '>= 1.8'), # FIXME: dedup version
+    ]
+  endif
+endif
 
 # TODO: gallium tests