On 26/10/14 19:36, Jan Vesely wrote: > On Fri, 2014-10-24 at 23:54 +0000, Emil Velikov wrote: >> On 24/10/14 17:03, Jan Vesely wrote: >>> -Wl,--exclude-libs prevents automatic export of symbols >>> >>> >>> CC: Kai Wasserbach <k...@dev.carbon-project.org> >>> CC: Emil Velikov <emil.l.veli...@gmail.com> >>> Signed-off-by: Jan Vesely <jan.ves...@rutgers.edu> >>> --- >>> >>> Kai, >>> can you try this patch with your setup, and check whether LLVM symbols are >>> exported from mesa library? (and it's still working) >>> >>> Emil, >>> would it help to have --exclude-libs ALL enabled globally? >>> >> Haven't really looked up on the documentation about it, yet there should >> be no (unneeded) exported symbols thanks to the version scripts. >> As such I'm not entirely sure what this patch (attempts to) resolve :( > > you are right. I don't know why I thought it was still a problem. > In that case the attached patch should fix compiling with llvm static > libs (#70410) > For future patches please add the full link in the commit message Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70410
Afaics the bug mentioned has a slightly different patch, which brings the question - do we need to append to the existing LLVM_LIBS, or can we overwrite them ? Either way it would be nice if we can get a tested-by or two :) Thanks Emil > jan > >> >> -Emil >> >>> jan >>> >>> configure.ac | 10 +++++++++- >>> 1 file changed, 9 insertions(+), 1 deletion(-) >>> >>> diff --git a/configure.ac b/configure.ac >>> index 3c76deb..b4b4b13 100644 >>> --- a/configure.ac >>> +++ b/configure.ac >>> @@ -1981,7 +1981,15 @@ if test "x$MESA_LLVM" != x0; then >>> dnl already added all of these objects to LLVM_LIBS. >>> fi >>> else >>> - AC_MSG_WARN([Building mesa with staticly linked LLVM may cause >>> compilation issues]) >>> + AC_MSG_WARN([Building mesa with statically linked LLVM may cause >>> compilation issues]) >>> + dnl Don't export symbols automatically >>> + dnl TODO: Do we want to list llvm libs explicitly here? >>> + LLVM_LDFLAGS+=" -Wl,exclude-libs ALL" >>> + dnl We need to link to llvm system libs when using static libs >>> + dnl However, only llvm 3.5+ provides --system-libs >>> + if test $LLVM_VERSION_MAJOR -eq 3 -a $LLVM_VERSION_MINOR -ge 5; then >>> + LLVM_LIBS+=" `$LLVM_CONFIG --system-libs`" >>> + fi >>> fi >>> fi >>> >>> >> > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev