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

Jan Vesely jan.vesely at rutgers.edu
Thu Oct 5 16:28:00 UTC 2017


On Thu, 2017-10-05 at 11:19 +0100, Emil Velikov wrote:
> 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

it does, in a way that linking to dynamic library does not hit this
issue.

> 
> 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?

the other builds did not need it. I only hit it when linking to static
clang libraries (for whatever reason it decided to use static
libraries). I assume you started hitting this when you switched 
enable_llvm_shared_libs off by default?

Jan

> ---
>  .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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20171005/aa86b8e3/attachment.sig>


More information about the mesa-dev mailing list