configure.ac: Only set LLVM_LIBS if LLVM is used
authorTobias Droste <tdroste@gmx.de>
Thu, 8 Dec 2016 02:03:36 +0000 (03:03 +0100)
committerEmil Velikov <emil.l.velikov@gmail.com>
Wed, 18 Jan 2017 13:23:01 +0000 (13:23 +0000)
This renames llvm_check_version_for to llvm_require_version and let it
set a variable to mark that LLVM will be used.

Use this to make a usefull configure output and to only check if the
libs are found in LLVM if it is actually used.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99010

Signed-off-by: Tobias Droste <tdroste@gmx.de>
configure.ac

index 5e9d165aa213b4b2a5470c33379a650a7e2f954b..d86d6a3199166a52b8f510af39aff9f1c085ac69 100644 (file)
@@ -999,13 +999,17 @@ llvm_set_environment_variables() {
 
         DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT -DMESA_LLVM_VERSION_PATCH=$LLVM_VERSION_PATCH"
         FOUND_LLVM=yes
+        USE_LLVM=no
     else
         FOUND_LLVM=no
+        USE_LLVM=no
         LLVM_VERSION_INT=0
     fi
 }
 
-llvm_check_version_for() {
+llvm_require_version() {
+    USE_LLVM=yes
+
     if test "x$FOUND_LLVM" = xno; then
         AC_MSG_ERROR([LLVM $1 or newer is required for $2])
         return
@@ -1050,7 +1054,7 @@ radeon_llvm_check() {
         amdgpu_llvm_target_name='amdgpu'
     fi
 
-    llvm_check_version_for $*
+    llvm_require_version $*
 
     llvm_add_target $amdgpu_llvm_target_name $2
 
@@ -2180,7 +2184,7 @@ if test "x$enable_opencl" = xyes; then
        AC_MSG_ERROR([Clover requires libelf])
     fi
 
-    llvm_check_version_for $LLVM_REQUIRED_OPENCL "opencl"
+    llvm_require_version $LLVM_REQUIRED_OPENCL "opencl"
 
     llvm_add_default_components "opencl"
     llvm_add_component "all-targets" "opencl"
@@ -2385,7 +2389,7 @@ dnl Gallium helper functions
 dnl
 gallium_require_llvm() {
     if test "x$enable_gallium_llvm" = "xyes"; then
-        llvm_check_version_for $LLVM_REQUIRED_GALLIUM "gallium"
+        llvm_require_version $LLVM_REQUIRED_GALLIUM "gallium"
     else
         AC_MSG_ERROR([--enable-gallium-llvm is required when building $1])
     fi
@@ -2523,7 +2527,7 @@ if test -n "$with_gallium_drivers"; then
             fi
             ;;
         xswr)
-            llvm_check_version_for $LLVM_REQUIRED_SWR "swr"
+            llvm_require_version $LLVM_REQUIRED_SWR "swr"
             gallium_require_llvm "swr"
 
             swr_require_cxx_feature_flags "C++11" "__cplusplus >= 201103L" \
@@ -2566,8 +2570,10 @@ if test -n "$with_gallium_drivers"; then
 fi
 
 if test "x$enable_gallium_llvm" == "xyes"; then
-    llvm_check_version_for $LLVM_REQUIRED_GALLIUM "gallium"
+    llvm_require_version $LLVM_REQUIRED_GALLIUM "gallium"
     llvm_add_default_components "gallium"
+
+    HAVE_GALLIUM_LLVM=yes
 fi
 
 dnl We need to validate some needed dependencies for renderonly drivers.
@@ -2583,7 +2589,7 @@ dnl by calling llvm-config --libs ${DRIVER_LLVM_COMPONENTS}, but
 dnl this was causing the same libraries to be appear multiple times
 dnl in LLVM_LIBS.
 
-if test "x$FOUND_LLVM" != xno; then
+if test "x$USE_LLVM" == xyes; then
 
     if ! $LLVM_CONFIG --libs ${LLVM_COMPONENTS} >/dev/null; then
        AC_MSG_ERROR([Calling ${LLVM_CONFIG} failed])
@@ -2685,8 +2691,7 @@ AM_CONDITIONAL(NEED_RADEON_DRM_WINSYS, test "x$HAVE_GALLIUM_R300" = xyes -o \
 AM_CONDITIONAL(NEED_WINSYS_XLIB, test "x$enable_glx" = xgallium-xlib)
 AM_CONDITIONAL(NEED_RADEON_LLVM, test x$NEED_RADEON_LLVM = xyes)
 AM_CONDITIONAL(HAVE_GALLIUM_COMPUTE, test x$enable_opencl = xyes)
-AM_CONDITIONAL(HAVE_GALLIUM_LLVM, test "x$FOUND_LLVM" = xyes -a \
-                                       "x$enable_gallium_llvm" = xyes)
+AM_CONDITIONAL(HAVE_GALLIUM_LLVM, test "x$HAVE_GALLIUM_LLVM" = xyes)
 AM_CONDITIONAL(USE_VC4_SIMULATOR, test x$USE_VC4_SIMULATOR = xyes)
 if test "x$USE_VC4_SIMULATOR" = xyes -a "x$HAVE_GALLIUM_ILO" = xyes; then
     AC_MSG_ERROR([VC4 simulator on x86 replaces i965 driver build, so ilo must be disabled.])
@@ -2978,11 +2983,21 @@ if test "x$FOUND_LLVM" = xyes; then
 else
     echo "        llvm found:      no"
 fi
+if test "x$USE_LLVM" = xyes; then
+    echo "        llvm used:       yes"
+else
+    echo "        llvm used:       no"
+fi
 
 echo ""
 if test -n "$with_gallium_drivers"; then
     echo "        Gallium drivers: $gallium_drivers"
     echo "        Gallium st:      $gallium_st"
+    if test "x$HAVE_GALLIUM_LLVM" = xyes; then
+        echo "        Gallium llvm:    yes"
+    else
+        echo "        Gallium llvm:    no"
+    fi
 else
     echo "        Gallium:         no"
 fi