[CMake] Introduce OPENMP_LLVM_TOOLS_DIR
authorJonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
Fri, 5 Feb 2016 07:00:13 +0000 (07:00 +0000)
committerJonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>
Fri, 5 Feb 2016 07:00:13 +0000 (07:00 +0000)
This will be used in a later patch to find additional LLVM tools for tests and
enables reusability for libomptarget that is currently under review.

Differential Revision: http://reviews.llvm.org/D16713

llvm-svn: 259876

openmp/CMakeLists.txt
openmp/runtime/Build_With_CMake.txt
openmp/runtime/test/CMakeLists.txt

index 7011187..3d60633 100644 (file)
@@ -1,2 +1,5 @@
 cmake_minimum_required(VERSION 2.8 FATAL_ERROR)
+
+set(OPENMP_LLVM_TOOLS_DIR "" CACHE PATH "Path to LLVM tools for testing")
+
 add_subdirectory(runtime)
index 3258624..cebf794 100644 (file)
@@ -176,6 +176,14 @@ Specifies install location of Hwloc. The configuration system will look for
 hwloc.h in ${LIBOMP_HWLOC_INSTALL_DIR}/include and the library in 
 ${LIBOMP_HWLOC_INSTALL_DIR}/lib.
 
+-DLIBOMP_LLVM_LIT_EXECUTABLE=/path/to/llvm-lit
+Default: search in PATH
+Specifiy full path to llvm-lit executable for running tests.
+
+-DOPENMP_LLVM_TOOLS_DIR=/path/to/built/llvm/tools
+Default: search for tools in path
+Additional path to search for LLVM tools needed by tests.
+
 ================================
 How to append flags to the build
 ================================
index 1bccfc1..d7692ec 100644 (file)
@@ -34,10 +34,13 @@ if(${LIBOMP_STANDALONE_BUILD})
     "OpenMP compiler flag to use for testing OpenMP library")
   set(LIBOMP_LLVM_LIT_EXECUTABLE "" CACHE STRING
     "Path to llvm-lit")
-  find_program(LIT_EXECUTABLE NAMES llvm-lit ${LIBOMP_LLVM_LIT_EXECUTABLE})
+  find_program(LIT_EXECUTABLE
+    NAMES llvm-lit
+    HINTS ${LIBOMP_LLVM_LIT_EXECUTABLE}
+    PATHS ${OPENMP_LLVM_TOOLS_DIR})
   if(NOT LIT_EXECUTABLE)
     libomp_say("Cannot find llvm-lit.")
-    libomp_say("Please put llvm-lit in your PATH or set LIBOMP_LLVM_LIT_EXECUTABLE to its full path")
+    libomp_say("Please put llvm-lit in your PATH, set LIBOMP_LLVM_LIT_EXECUTABLE to its full path or point OPENMP_LLVM_TOOLS_DIR to its directory")
     libomp_warning_say("The check-libomp target will not be available!")
     return()
   endif()