[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52453] trunk/blender: Fix 33149: LLVM caused startup crash on linux systems using Mesa llvmpipe.

Sergey Sharybin sergey.vfx at gmail.com
Thu Nov 22 07:46:34 CET 2012


Thanks, Brecht!

Have been trying to make this working tonight, but something didn't work..


On Thu, Nov 22, 2012 at 3:28 AM, Brecht Van Lommel <
brechtvanlommel at pandora.be> wrote:

> Revision: 52453
>
> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52453
> Author:   blendix
> Date:     2012-11-21 22:28:15 +0000 (Wed, 21 Nov 2012)
> Log Message:
> -----------
> Fix 33149: LLVM caused startup crash on linux systems using Mesa llvmpipe.
> Now we hide the LLVM symbols with an ld version script to avoid conflicts.
>
> Modified Paths:
> --------------
>     trunk/blender/CMakeLists.txt
>     trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py
>
> trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py
>     trunk/blender/build_files/buildbot/config/user-config-glibc27-i686.py
>     trunk/blender/build_files/buildbot/config/user-config-glibc27-x86_64.py
>     trunk/blender/build_files/scons/config/linux-config.py
>
> Added Paths:
> -----------
>     trunk/blender/source/creator/blender.map
>
> Modified: trunk/blender/CMakeLists.txt
> ===================================================================
> --- trunk/blender/CMakeLists.txt        2012-11-21 21:42:07 UTC (rev 52452)
> +++ trunk/blender/CMakeLists.txt        2012-11-21 22:28:15 UTC (rev 52453)
> @@ -759,6 +759,9 @@
>                 else()
>                         message(FATAL_ERROR "LLVM not found.")
>                 endif()
> +
> +               # Fix for conflict with Mesa llvmpipe
> +               set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS}
> -Wl,--version-script=${CMAKE_SOURCE_DIR}/source/creator/blender.map")
>         endif()
>
>         if(WITH_CYCLES_OSL)
> @@ -821,7 +824,7 @@
>                 endif()
>         endif()
>
> -       set(PLATFORM_LINKFLAGS "-pthread")
> +       set(PLATFORM_LINKFLAGS "${PLATFORM_LINKFLAGS} -pthread")
>
>         # lfs on glibc, all compilers should use
>         add_definitions(-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
> -D_LARGEFILE64_SOURCE)
>
> Modified:
> trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py
> ===================================================================
> --- trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py
>      2012-11-21 21:42:07 UTC (rev 52452)
> +++ trunk/blender/build_files/buildbot/config/user-config-glibc211-i686.py
>      2012-11-21 22:28:15 UTC (rev 52453)
> @@ -162,4 +162,4 @@
>  BF_DEBUG = False
>  REL_CCFLAGS = ['-O2', '-msse', '-msse2']  # C & C++
>  PLATFORM_LINKFLAGS = ['-lrt']
> -BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive']
> +BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive', '-Wl,--version-script=source/creator/blender.map']
>
> Modified:
> trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py
> ===================================================================
> ---
> trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py
>  2012-11-21 21:42:07 UTC (rev 52452)
> +++
> trunk/blender/build_files/buildbot/config/user-config-glibc211-x86_64.py
>  2012-11-21 22:28:15 UTC (rev 52453)
> @@ -161,4 +161,4 @@
>  BF_DEBUG = False
>  REL_CCFLAGS = ['-O2', '-msse', '-msse2']  # C & C++
>  PLATFORM_LINKFLAGS = ['-lrt']
> -BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive']
> +BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive', '-Wl,--version-script=source/creator/blender.map']
>
> Modified:
> trunk/blender/build_files/buildbot/config/user-config-glibc27-i686.py
> ===================================================================
> --- trunk/blender/build_files/buildbot/config/user-config-glibc27-i686.py
>       2012-11-21 21:42:07 UTC (rev 52452)
> +++ trunk/blender/build_files/buildbot/config/user-config-glibc27-i686.py
>       2012-11-21 22:28:15 UTC (rev 52453)
> @@ -147,4 +147,4 @@
>  BF_DEBUG = False
>  REL_CCFLAGS = ['-O2']  # C & C++
>  PLATFORM_LINKFLAGS = ['-L/home/sources/staticlibs/lib32']
> -BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive']
> +BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive', '-Wl,--version-script=source/creator/blender.map']
>
> Modified:
> trunk/blender/build_files/buildbot/config/user-config-glibc27-x86_64.py
> ===================================================================
> ---
> trunk/blender/build_files/buildbot/config/user-config-glibc27-x86_64.py
> 2012-11-21 21:42:07 UTC (rev 52452)
> +++
> trunk/blender/build_files/buildbot/config/user-config-glibc27-x86_64.py
> 2012-11-21 22:28:15 UTC (rev 52453)
> @@ -146,4 +146,4 @@
>  BF_DEBUG = False
>  REL_CCFLAGS = ['-O2', '-msse', '-msse2']  # C & C++
>  PLATFORM_LINKFLAGS = ['-L/home/sources/staticlibs/lib64']
> -BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive']
> +BF_PROGRAM_LINKFLAGS = ['-Wl,--whole-archive', '-loslexec',
> '-Wl,--no-whole-archive', '-Wl,--version-script=source/creator/blender.map']
>
> Modified: trunk/blender/build_files/scons/config/linux-config.py
> ===================================================================
> --- trunk/blender/build_files/scons/config/linux-config.py      2012-11-21
> 21:42:07 UTC (rev 52452)
> +++ trunk/blender/build_files/scons/config/linux-config.py      2012-11-21
> 22:28:15 UTC (rev 52453)
> @@ -298,3 +298,7 @@
>  #Link against pthread
>  PLATFORM_LINKFLAGS = ['-pthread']
>
> +#Fix for LLVM conflict with Mesa llvmpipe
> +if WITH_BF_LLVM:
> +    PLATFORM_LINKFLAGS +=
> ['-Wl,--version-script=source/creator/blender.map']
> +
>
> Added: trunk/blender/source/creator/blender.map
> ===================================================================
> --- trunk/blender/source/creator/blender.map
>  (rev 0)
> +++ trunk/blender/source/creator/blender.map    2012-11-21 22:28:15 UTC
> (rev 52453)
> @@ -0,0 +1,11 @@
> +
> +/* on Linux we exclude LLVM symbols, they conflict with Mesa llvmpipe */
> +
> +blender {
> +global:
> +       *;
> +local:
> +       *llvm*;
> +       *LLVM*;
> +};
> +
>
> _______________________________________________
> Bf-blender-cvs mailing list
> Bf-blender-cvs at blender.org
> http://lists.blender.org/mailman/listinfo/bf-blender-cvs
>



-- 
With best regards, Sergey Sharybin


More information about the Bf-committers mailing list