[Mesa-dev] [PATCH] configure.ac: fix the --disable-llvm-shared-libs build

Jonathan Gray jsg at jsg.id.au
Sun Feb 28 03:47:03 UTC 2016


When building with --disable-llvm-shared-libs use llvm-config --libfiles
instead of of --libs so the full path to the .a files is used instead of
-lname.

Otherwise at install time gallium_dri.a is installed of gallium_dri.so
and the hardlinking of gallium_dri.so to other names fails.

Cc: "11.2 11.1" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Jonathan Gray <jsg at jsg.id.au>
---
 configure.ac | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index 6f970d7..3e2923f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2304,13 +2304,14 @@ if test "x$MESA_LLVM" != x0; then
     if ! $LLVM_CONFIG --libs ${LLVM_COMPONENTS} >/dev/null; then
        AC_MSG_ERROR([Calling ${LLVM_CONFIG} failed])
     fi
-    LLVM_LIBS="`$LLVM_CONFIG --libs ${LLVM_COMPONENTS}`"
 
     dnl llvm-config may not give the right answer when llvm is a built as a
     dnl single shared library, so we must work the library name out for
     dnl ourselves.
     dnl (See https://llvm.org/bugs/show_bug.cgi?id=6823)
     if test "x$enable_llvm_shared_libs" = xyes; then
+        LLVM_LIBS="`$LLVM_CONFIG --libs ${LLVM_COMPONENTS}`"
+
         dnl We can't use $LLVM_VERSION because it has 'svn' stripped out,
         LLVM_SO_NAME=LLVM-`$LLVM_CONFIG --version`
         AS_IF([test -f "$LLVM_LIBDIR/lib$LLVM_SO_NAME.$IMP_LIB_EXT"], [llvm_have_one_so=yes])
@@ -2337,6 +2338,8 @@ if test "x$MESA_LLVM" != x0; then
            dnl already added all of these objects to LLVM_LIBS.
         fi
     else
+        LLVM_LIBS="`$LLVM_CONFIG --libfiles ${LLVM_COMPONENTS}`"
+
         AC_MSG_WARN([Building mesa with statically linked LLVM may cause compilation issues])
         dnl We need to link to llvm system libs when using static libs
         dnl However, only llvm 3.5+ provides --system-libs
-- 
2.7.0



More information about the mesa-dev mailing list