configure: Add --with-llvm-shared-libs
authorTom Stellard <tstellar@gmail.com>
Wed, 28 Mar 2012 02:24:39 +0000 (22:24 -0400)
committerTom Stellard <thomas.stellard@amd.com>
Fri, 30 Mar 2012 13:13:04 +0000 (09:13 -0400)
This option allows targets to link against the LLVM shared library
instead of the static libs.  With LLVM 2.9, his saves ~11 MB for each of
the r300 target libraries.

configure.ac

index 1c437e7baafefa7ada6ea6a262346c4cae360e3d..135bacf7f46cc8111e061e91785889527112d5eb 100644 (file)
@@ -1779,6 +1779,13 @@ AC_ARG_ENABLE([gallium-llvm],
         [build gallium LLVM support @<:@default=enabled on x86/x86_64@:>@])],
     [enable_gallium_llvm="$enableval"],
     [enable_gallium_llvm=auto])
+
+AC_ARG_WITH([llvm-shared-libs],
+    [AS_HELP_STRING([--with-llvm-shared-libs],
+        [link with LLVM shared libraries @<:@default=disabled@:>@])],
+    [with_llvm_shared_libs=yes],
+    [with_llvm_shared_libs=no])
+
 if test "x$with_gallium_drivers" = x; then
     enable_gallium_llvm=no
 fi
@@ -1793,8 +1800,12 @@ if test "x$enable_gallium_llvm" = xyes; then
     if test "x$LLVM_CONFIG" != xno; then
        LLVM_VERSION=`$LLVM_CONFIG --version | sed 's/svn.*//g'`
        LLVM_CFLAGS=`$LLVM_CONFIG --cppflags|sed -e 's/-DNDEBUG\>//g' -e 's/-pedantic//g'`
-       LLVM_LIBS="`$LLVM_CONFIG --libs engine bitwriter`"
-
+       if test "x$with_llvm_shared_libs" = xyes; then
+           dnl We can't use $LLVM_VERSION because it has 'svn' stripped out,
+           LLVM_LIBS="-lLLVM-`$LLVM_CONFIG --version`"
+       else
+           LLVM_LIBS="`$LLVM_CONFIG --libs engine bitwriter`"
+       fi
        LLVM_LDFLAGS=`$LLVM_CONFIG --ldflags`
        DEFINES="$DEFINES -D__STDC_CONSTANT_MACROS"
        MESA_LLVM=1