[Mesa-dev] [PATCH] targets/*-r600: Add workaround for fixing multiple defined symbols
Andreas Boll
andreas.boll.dev at gmail.com
Fri Jan 11 05:13:05 PST 2013
Until we have jobermayr's shared libs patches,
don't link libgallium.la twice.
Fixes
http://lists.freedesktop.org/archives/mesa-dev/2013-January/032515.html
Cc: Andy Furniss <andyqos at ukfsn.org>
---
targets/*-radeonsi: need the same workaround
src/gallium/targets/dri-r600/Makefile.am | 6 +++++-
src/gallium/targets/vdpau-r600/Makefile.am | 6 +++++-
src/gallium/targets/xvmc-r600/Makefile.am | 6 +++++-
3 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/src/gallium/targets/dri-r600/Makefile.am b/src/gallium/targets/dri-r600/Makefile.am
index a3dbcde..e59e8f4 100644
--- a/src/gallium/targets/dri-r600/Makefile.am
+++ b/src/gallium/targets/dri-r600/Makefile.am
@@ -48,7 +48,6 @@ r600_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined
r600_dri_la_LIBADD = \
$(top_builddir)/src/mesa/libmesagallium.la \
- $(top_builddir)/src/gallium/auxiliary/libgallium.la \
$(top_builddir)/src/gallium/drivers/r600/libr600.la \
$(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \
$(top_builddir)/src/gallium/winsys/radeon/drm/libradeonwinsys.la \
@@ -59,6 +58,11 @@ r600_dri_la_LIBADD = \
$(LIBDRM_LIBS) \
$(RADEON_LIBS)
+if !NEED_RADEON_GALLIUM
+r600_dri_la_LIBADD += \
+ $(top_builddir)/src/gallium/auxiliary/libgallium.la
+endif
+
if HAVE_MESA_LLVM
r600_dri_la_LINK = $(CXXLINK) $(r600_dri_la_LDFLAGS)
# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
diff --git a/src/gallium/targets/vdpau-r600/Makefile.am b/src/gallium/targets/vdpau-r600/Makefile.am
index f6b82de..d1923da 100644
--- a/src/gallium/targets/vdpau-r600/Makefile.am
+++ b/src/gallium/targets/vdpau-r600/Makefile.am
@@ -44,7 +44,6 @@ libvdpau_r600_la_LDFLAGS = \
-no-undefined
libvdpau_r600_la_LIBADD = \
- $(top_builddir)/src/gallium/auxiliary/libgallium.la \
$(top_builddir)/src/gallium/drivers/r600/libr600.la \
$(top_builddir)/src/gallium/state_trackers/vdpau/libvdpautracker.la \
$(top_builddir)/src/gallium/winsys/radeon/drm/libradeonwinsys.la \
@@ -54,6 +53,11 @@ libvdpau_r600_la_LIBADD = \
$(LIBDRM_LIBS) \
$(RADEON_LIBS)
+if !NEED_RADEON_GALLIUM
+libvdpau_r600_la_LIBADD += \
+ $(top_builddir)/src/gallium/auxiliary/libgallium.la
+endif
+
if HAVE_MESA_LLVM
libvdpau_r600_la_LINK = $(CXXLINK) $(libvdpau_r600_la_LDFLAGS)
# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
diff --git a/src/gallium/targets/xvmc-r600/Makefile.am b/src/gallium/targets/xvmc-r600/Makefile.am
index b337c7e..6bdc7f8 100644
--- a/src/gallium/targets/xvmc-r600/Makefile.am
+++ b/src/gallium/targets/xvmc-r600/Makefile.am
@@ -44,7 +44,6 @@ libXvMCr600_la_LDFLAGS = \
-no-undefined
libXvMCr600_la_LIBADD = \
- $(top_builddir)/src/gallium/auxiliary/libgallium.la \
$(top_builddir)/src/gallium/drivers/r600/libr600.la \
$(top_builddir)/src/gallium/state_trackers/xvmc/libxvmctracker.la \
$(top_builddir)/src/gallium/winsys/radeon/drm/libradeonwinsys.la \
@@ -54,6 +53,11 @@ libXvMCr600_la_LIBADD = \
$(LIBDRM_LIBS) \
$(RADEON_LIBS)
+if !NEED_RADEON_GALLIUM
+libXvMCr600_la_LIBADD += \
+ $(top_builddir)/src/gallium/auxiliary/libgallium.la
+endif
+
if HAVE_MESA_LLVM
libXvMCr600_la_LINK = $(CXXLINK) $(libXvMCr600_la_LDFLAGS)
# Mention a dummy pure C++ file to trigger generation of the $(LINK) variable
--
1.7.10.4
More information about the mesa-dev
mailing list