[Mesa-dev] [PATCH 4/7] Travis: add binutils 2.26 for a few more LLVM 3.9 builds

Emil Velikov emil.l.velikov at gmail.com
Thu Oct 5 10:19:06 UTC 2017


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

Otherwise we error out at link stage as follows:

/usr/lib/llvm-3.9/lib/libLLVMAMDGPUCodeGen.a(R600OptimizeVectorRegisters.cpp.o):
unrecognized relocation (0x2a) in section
`.text._ZNK12_GLOBAL__N_119R600VectorRegMerger16getAnalysisUsageERN4llvm13AnalysisUsageE'
/usr/bin/ld: final link failed: Bad value

Cc: mesa-stable at lists.freedesktop.org
Cc: Jan Vesely <jan.vesely at rutgers.edu
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
Suspecting that there are due to LLVM/Clang itself being built with the
newer version. Something like that seems to be mentioned below.
AKA packaging bug or we're using the wrong package ;-)

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=808205

AFAICT it has nothing to do with linking against libclang.so

Jan any reason you opted to address only one of the LLVM 3.9 builds?
Should we bother with the rest, set it globally, other?
---
 .travis.yml | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/.travis.yml b/.travis.yml
index 1cf5ea433ff..305c588ec0d 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -62,6 +62,8 @@ matrix:
         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
         - OVERRIDE_CC="gcc-4.8"
         - OVERRIDE_CXX="g++-4.8"
+        # New binutils linker is required for llvm-3.9
+        - OVERRIDE_PATH=/usr/lib/binutils-2.26/bin
         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
         - DRI_DRIVERS=""
         - GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
@@ -73,6 +75,7 @@ matrix:
           sources:
             - llvm-toolchain-trusty-3.9
           packages:
+            - binutils-2.26
             # LLVM packaging is broken and misses these dependencies
             - libedit-dev
             # From sources above
@@ -91,6 +94,8 @@ matrix:
         - MAKE_CHECK_COMMAND="true"
         - LLVM_VERSION=3.9
         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
+        # New binutils linker is required for llvm-3.9
+        - OVERRIDE_PATH=/usr/lib/binutils-2.26/bin
         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl"
         - DRI_DRIVERS=""
         - GALLIUM_ST="--enable-dri --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
@@ -102,6 +107,7 @@ matrix:
           sources:
             - llvm-toolchain-trusty-3.9
           packages:
+            - binutils-2.26
             # LLVM packaging is broken and misses these dependencies
             - libedit-dev
             # From sources above
@@ -267,6 +273,8 @@ matrix:
         - MAKE_CHECK_COMMAND="make -C src/gtest check && make -C src/intel check"
         - LLVM_VERSION=3.9
         - LLVM_CONFIG="llvm-config-${LLVM_VERSION}"
+        # New binutils linker is required for llvm-3.9
+        - OVERRIDE_PATH=/usr/lib/binutils-2.26/bin
         - DRI_LOADERS="--disable-glx --disable-gbm --disable-egl --with-platforms=x11,wayland"
         - DRI_DRIVERS=""
         - GALLIUM_ST="--enable-dri --enable-dri3 --disable-opencl --disable-xa --disable-nine --disable-xvmc --disable-vdpau --disable-va --disable-omx-bellagio --disable-gallium-osmesa"
@@ -278,6 +286,7 @@ matrix:
           sources:
             - llvm-toolchain-trusty-3.9
           packages:
+            - binutils-2.26
             # LLVM packaging is broken and misses these dependencies
             - libedit-dev
             # From sources above
-- 
2.14.1



More information about the mesa-dev mailing list