[Mesa-dev] [PATCH 16/17] configure.ac: supersede --enable-gallium-llvm over --enable-llvm

Emil Velikov emil.l.velikov at gmail.com
Tue Feb 7 22:44:58 UTC 2017


From: Emil Velikov <emil.velikov at collabora.com>

Currently we have extra (somewhat questionable) modularity, such that
one could build some parts with LLVM while others w/o.

That is extremely fragile, error prone and requires quite noticable
amount of code throughout.

Thus lets deprecate the gallium toggle in faviour of the generic one.
The former will throw a warning when set, and it will be overwritten by
the latter. This will allow gradual transition w/o breaking people's
scripts.

Cc: Dave Airlie <airlied at redhat.com>
CC: Tobias Droste <tdroste at gmx.de>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
 Makefile.am         |  2 +-
 configure.ac        | 43 +++++++++++++++++++++++++++----------------
 docs/releasing.html |  2 +-
 3 files changed, 29 insertions(+), 18 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 84c3e1d08f..147a5e7ce8 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -27,7 +27,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = \
 	--enable-egl \
 	--enable-gallium-tests \
 	--enable-gallium-osmesa \
-	--enable-gallium-llvm \
+	--enable-llvm \
 	--enable-gbm \
 	--enable-gles1 \
 	--enable-gles2 \
diff --git a/configure.ac b/configure.ac
index d0437a71aa..fb316806ff 100644
--- a/configure.ac
+++ b/configure.ac
@@ -952,8 +952,8 @@ llvm_set_environment_variables() {
 }
 
 require_llvm() {
-    if test "x$enable_gallium_llvm" != "xyes"; then
-        AC_MSG_ERROR([--enable-gallium-llvm is required when building $1])
+    if test "x$enable_llvm" != "xyes"; then
+        AC_MSG_ERROR([--enable-llvm is required when building $1])
     fi
 }
 
@@ -1713,21 +1713,32 @@ fi
 
 dnl
 dnl Gallium LLVM
-dnl
-dnl With follow-up commits we'll rework --enable-gallium-llvm to --enable-llvm
-dnl Since that is too invasive to stable, do the more conservative thing for now
-dnl and consider it as a global LLVM toggle.
+dnl Deprecated: kept for backwards compatibility
 dnl
 AC_ARG_ENABLE([gallium-llvm],
     [AS_HELP_STRING([--enable-gallium-llvm],
-        [build gallium LLVM support @<:@default=enabled on x86/x86_64@:>@])],
+        [DEPRECATED: use --enable-llvm instead])],
     [enable_gallium_llvm="$enableval"],
     [enable_gallium_llvm=auto])
 
-if test "x$enable_gallium_llvm" = xauto -a "x$FOUND_LLVM" = xyes; then
+if test "x$enable_gallium_llvm" != xauto; then
+   AC_MSG_WARN([The --enable-gallium-llvm option has been deprecated. Use --enable-llvm instead.])
+   enable_llvm=$enable_gallium_llvm
+fi
+
+dnl
+dnl LLVM
+dnl
+AC_ARG_ENABLE([llvm],
+    [AS_HELP_STRING([--enable-llvm],
+        [build with LLVM support @<:@default=enabled on x86/x86_64@:>@])],
+    [enable_llvm="$enableval"],
+    [enable_llvm=auto])
+
+if test "x$enable_llvm" = xauto -a "x$FOUND_LLVM" = xyes; then
     case "$host_cpu" in
-    i*86|x86_64|amd64) enable_gallium_llvm=yes;;
-    *) enable_gallium_llvm=no;;
+    i*86|x86_64|amd64) enable_llvm=yes;;
+    *) enable_llvm=no;;
     esac
 fi
 
@@ -2311,7 +2322,7 @@ if test -n "$with_gallium_drivers"; then
             ;;
         xswrast)
             HAVE_GALLIUM_SOFTPIPE=yes
-            if test "x$enable_gallium_llvm" = xyes; then
+            if test "x$enable_llvm" = xyes; then
                 HAVE_GALLIUM_LLVMPIPE=yes
             fi
             ;;
@@ -2357,7 +2368,7 @@ if test -n "$with_gallium_drivers"; then
     done
 fi
 
-if test "x$enable_gallium_llvm" = "xyes"; then
+if test "x$enable_llvm" = "xyes"; then
     llvm_require_version $LLVM_REQUIRED_GALLIUM "gallium"
     llvm_add_default_components "gallium"
 fi
@@ -2371,7 +2382,7 @@ fi
 dnl
 dnl Set defines and buildtime variables only when using LLVM.
 dnl
-if test "x$enable_gallium_llvm" = xyes; then
+if test "x$enable_llvm" = xyes; then
     DEFINES="${DEFINES} -DHAVE_LLVM=0x0$LLVM_VERSION_INT -DMESA_LLVM_VERSION_PATCH=$LLVM_VERSION_PATCH"
 
     LLVM_LDFLAGS=`$LLVM_CONFIG --ldflags`
@@ -2484,7 +2495,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$enable_gallium_llvm" = xyes)
+AM_CONDITIONAL(HAVE_GALLIUM_LLVM, test "x$enable_llvm" = xyes)
 AM_CONDITIONAL(USE_VC4_SIMULATOR, test x$USE_VC4_SIMULATOR = xyes)
 
 AM_CONDITIONAL(HAVE_LIBDRM, test "x$have_libdrm" = xyes)
@@ -2764,7 +2775,7 @@ else
 fi
 
 echo ""
-if test "x$enable_gallium_llvm" = xyes; then
+if test "x$enable_llvm" = xyes; then
     echo "        llvm:            yes"
     echo "        llvm-config:     $LLVM_CONFIG"
     echo "        llvm-version:    $LLVM_VERSION"
@@ -2811,7 +2822,7 @@ echo "        CFLAGS:          $cflags"
 echo "        CXXFLAGS:        $cxxflags"
 echo "        Macros:          $defines"
 echo ""
-if test "x$enable_gallium_llvm" = xyes; then
+if test "x$enable_llvm" = xyes; then
     echo "        LLVM_CFLAGS:     $LLVM_CFLAGS"
     echo "        LLVM_CXXFLAGS:   $LLVM_CXXFLAGS"
     echo "        LLVM_CPPFLAGS:   $LLVM_CPPFLAGS"
diff --git a/docs/releasing.html b/docs/releasing.html
index 020f3dec70..09ef4ac89c 100644
--- a/docs/releasing.html
+++ b/docs/releasing.html
@@ -354,7 +354,7 @@ Here is one solution that I've been using.
 		--with-gallium-drivers=swrast \
 		--with-vulkan-drivers=intel \
 		--enable-llvm-shared-libs \
-		--enable-gallium-llvm \
+		--enable-llvm \
 		--enable-glx-tls \
 		--enable-gbm \
 		--enable-egl \
-- 
2.11.0



More information about the mesa-dev mailing list