[Mesa-dev] [PATCH] swr: use the correct variable for no undefined symbols

Emil Velikov emil.l.velikov at gmail.com
Fri Jul 21 12:53:07 UTC 2017


From: Emil Velikov <emil.velikov at collabora.com>

The variable name was missing a leading LD_, which resulted in the
backend binaries having unresolved symbols.

Thanks to Laurent for the list.

The fix is applicable for stable as well, although the actual pthread
linking may not be. That plus additional [missing] links will be
resolved in that branch.

Cc: mesa-stable at lists.freedesktop.org
Cc: Bruce Cherniak <bruce.cherniak at intel.com>
Cc: Tim Rowley <timothy.o.rowley at intel.com>
Cc: Laurent Carlier <lordheavym at gmail.com>
Reported-by: Laurent Carlier <lordheavym at gmail.com>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
Laurent, the output of `ldd -r $binary` should be free of undefined
symbols. Can you give it a quick test?

Tim, Bruce - the new backends might need the PTHREAD* bits.
The SCons build has the -Wl,no-undef... parts but one might want to
double-check the binaries it produced.

Thanks
---
 src/gallium/drivers/swr/Makefile.am | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/swr/Makefile.am b/src/gallium/drivers/swr/Makefile.am
index 74612280fe7..3bffa9595d5 100644
--- a/src/gallium/drivers/swr/Makefile.am
+++ b/src/gallium/drivers/swr/Makefile.am
@@ -222,11 +222,12 @@ COMMON_LDFLAGS = \
 	-module \
 	-no-undefined \
 	$(GC_SECTIONS) \
-	$(NO_UNDEFINED)
+	$(LD_NO_UNDEFINED)
 
 lib_LTLIBRARIES = libswrAVX.la libswrAVX2.la
 
 libswrAVX_la_CXXFLAGS = \
+	$(PTHREAD_CFLAGS) \
 	$(SWR_AVX_CXXFLAGS) \
 	-DKNOB_ARCH=KNOB_ARCH_AVX \
 	$(COMMON_CXXFLAGS)
@@ -234,10 +235,14 @@ libswrAVX_la_CXXFLAGS = \
 libswrAVX_la_SOURCES = \
 	$(COMMON_SOURCES)
 
+libswrAVX_la_LIBADD = \
+	$(PTHREAD_LIBS)
+
 libswrAVX_la_LDFLAGS = \
 	$(COMMON_LDFLAGS)
 
 libswrAVX2_la_CXXFLAGS = \
+	$(PTHREAD_CFLAGS) \
 	$(SWR_AVX2_CXXFLAGS) \
 	-DKNOB_ARCH=KNOB_ARCH_AVX2 \
 	$(COMMON_CXXFLAGS)
@@ -245,6 +250,9 @@ libswrAVX2_la_CXXFLAGS = \
 libswrAVX2_la_SOURCES = \
 	$(COMMON_SOURCES)
 
+libswrAVX2_la_LIBADD = \
+	$(PTHREAD_LIBS)
+
 libswrAVX2_la_LDFLAGS = \
 	$(COMMON_LDFLAGS)
 
-- 
2.13.0



More information about the mesa-dev mailing list