[Mesa-dev] [PATCH v3 02/25] configure.ac: Add helper function for targets/components

Tobias Droste tdroste at gmx.de
Tue Oct 11 23:02:29 UTC 2016


Add functions to add and check targets/components.
Not used in this patch.

The error message in llvm_add_component is disabled until it doesn't break the build anymore.
This is the same functionality as before where the components were added without a check.

Signed-off-by: Tobias Droste <tdroste at gmx.de>
---
 configure.ac | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/configure.ac b/configure.ac
index bdd46bc..69421ff 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2196,7 +2196,42 @@ llvm_check_version_for() {
     fi
 }
 
+llvm_add_default_components() {
+    driver_name=$1
 
+    # Required default components
+    llvm_add_component "engine" $driver_name
+    llvm_add_component "bitwriter" $driver_name
+    llvm_add_component "mcjit" $driver_name
+    llvm_add_component "mcdisassembler" $driver_name
+
+    # Optional default components
+    if $LLVM_CONFIG --components | grep -iqw inteljitevents ; then
+        LLVM_COMPONENTS="${LLVM_COMPONENTS} inteljitevents"
+    fi
+}
+
+llvm_add_component() {
+    new_llvm_component=$1
+    driver_name=$2
+
+    if $LLVM_CONFIG --components | grep -iqw $new_llvm_component ; then
+        LLVM_COMPONENTS="${LLVM_COMPONENTS} ${new_llvm_component}"
+    #else
+    #    AC_MSG_ERROR([LLVM component '$new_llvm_component' not enabled in your LLVM build. Required by $driver_name.])
+    fi
+}
+
+llvm_add_target() {
+    new_llvm_target=$1
+    driver_name=$2
+
+    if $LLVM_CONFIG --targets-built | grep -iqw $new_llvm_target ; then
+        llvm_add_component $new_llvm_target $driver_name
+    else
+        AC_MSG_ERROR([LLVM target '$new_llvm_target' not enabled in your LLVM build. Required by $driver_name.])
+    fi
+}
 
 if test -z "$with_gallium_drivers"; then
     enable_gallium_llvm=no
-- 
2.10.0



More information about the mesa-dev mailing list