Mesa (19.2): meson: Fix linkage of libgallium_nine with libgalliumvl
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Dec 4 22:09:37 UTC 2019
Module: Mesa
Branch: 19.2
Commit: bda6890f58c4eed295c766a55e4149c2c9550b1b
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=bda6890f58c4eed295c766a55e4149c2c9550b1b
Author: Yevhenii Kolesnikov <yevhenii.kolesnikov at globallogic.com>
Date: Thu Nov 7 17:22:26 2019 +0200
meson: Fix linkage of libgallium_nine with libgalliumvl
Do not link libgallium_nine with libgalliumvl_stub if it's already
linked with libgalliumvl. Linking with stub leads to "duplicate
symbol" errors.
Fixes: 6b4c7047d57178d3362a710ad503057c6a582ca3
("meson: build gallium nine state_tracker")
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2040
Signed-off-by: Yevhenii Kolesnikov <yevhenii.kolesnikov at globallogic.com>
Reviewed-by: Dylan Baker <dylan at pnwbakers.com>
(cherry picked from commit 9af22ccddcd1a983df5e0c6732a4e8f5ebf4d9cf)
Conflicts resolved by Dylan Baker
---
src/gallium/targets/d3dadapter9/meson.build | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
diff --git a/src/gallium/targets/d3dadapter9/meson.build b/src/gallium/targets/d3dadapter9/meson.build
index 2ce9ecd6fc1..d036e3c9349 100644
--- a/src/gallium/targets/d3dadapter9/meson.build
+++ b/src/gallium/targets/d3dadapter9/meson.build
@@ -28,12 +28,24 @@ nine_version = ['1', '0', '0']
gallium_nine_c_args = []
gallium_nine_ld_args = []
gallium_nine_link_depends = []
+gallium_nine_link_with = [
+ libgallium, libnine_st,
+ libpipe_loader_static, libws_null, libwsw, libswdri,
+ libswkmsdri,
+]
if with_ld_version_script
gallium_nine_ld_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'd3dadapter9.sym')]
gallium_nine_link_depends += files('d3dadapter9.sym')
endif
+if (with_gallium_va or with_gallium_vdpau or with_gallium_omx != 'disabled' or
+ with_gallium_xvmc or with_dri)
+ gallium_nine_link_with += libgalliumvl
+else
+ gallium_nine_link_with += libgalliumvl_stub
+endif
+
libgallium_nine = shared_library(
'd3dadapter9',
files('description.c', 'getproc.c', 'drm.c'),
@@ -47,11 +59,7 @@ libgallium_nine = shared_library(
cpp_args : [cpp_vis_args],
link_args : [ld_args_gc_sections, gallium_nine_ld_args],
link_depends : gallium_nine_link_depends,
- link_with : [
- libgalliumvl_stub, libgallium, libnine_st,
- libpipe_loader_static, libws_null, libwsw, libswdri,
- libswkmsdri, libnir,
- ],
+ link_with : gallium_nine_link_with,
dependencies : [
dep_selinux, dep_libdrm, dep_llvm, dep_thread, idep_xmlconfig, idep_mesautil,
driver_swrast, driver_r300, driver_r600, driver_radeonsi, driver_nouveau,
More information about the mesa-commit
mailing list