[Mesa-dev] [PATCH v3 6/9] meson: fix va target linkage

Dylan Baker dylan at pnwbakers.com
Fri Feb 2 19:30:42 UTC 2018


The state tracker needs to be linked with whole-archive (like
autotools). As a result there are symbols from libswdri and libswkmsdri
that are needed, so link those as well.

Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker")
Signed-off-by: Dylan Baker <dylan.c.baker at intel.com>
---
 src/gallium/targets/va/meson.build | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/src/gallium/targets/va/meson.build b/src/gallium/targets/va/meson.build
index 1e453c9..d3999d7 100644
--- a/src/gallium/targets/va/meson.build
+++ b/src/gallium/targets/va/meson.build
@@ -24,6 +24,7 @@
 
 va_link_args = []
 va_link_depends = []
+va_link_with = []
 va_drivers = []
 
 if with_ld_version_script
@@ -31,6 +32,13 @@ if with_ld_version_script
   va_link_depends += files('va.sym')
 endif
 
+if with_dri
+  va_link_with += libswdri
+endif
+if with_gallium_drisw_kms
+  va_link_with += libswkmsdri
+endif
+
 libva_gallium = shared_library(
   'gallium_drv_video',
   'target.c',
@@ -40,9 +48,10 @@ libva_gallium = shared_library(
   include_directories : [
     inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers,
   ],
+  link_whole : [libva_st],
   link_with : [
-    libva_st, libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
-    libpipe_loader_static, libws_null, libwsw,
+    libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
+    libpipe_loader_static, libws_null, libwsw, va_link_with,
   ],
   dependencies : [
     dep_libdrm, dep_thread, driver_r600, driver_radeonsi, driver_nouveau,
-- 
git-series 0.9.1


More information about the mesa-dev mailing list