1*4882a593SmuzhiyunFrom 3bc3328f89915cde33c26cec91a57b79109420f0 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Khem Raj <raj.khem@gmail.com> 3*4882a593SmuzhiyunDate: Thu, 19 May 2016 23:11:45 -0700 4*4882a593SmuzhiyunSubject: [PATCH] compiler-rt: Simplify cross-compilation. Don't use 5*4882a593Smuzhiyun native-compiled llvm-config. 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun Note: AddLLVM.cmake does not expose the LLVM source directory. 8*4882a593Smuzhiyun So if you want to run the test suite, you need to either: 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun 1) set LLVM_MAIN_SRC_DIR explicitly (to find lit.py) 11*4882a593Smuzhiyun 2) change AddLLVM.cmake to point to an installed 'lit'. 12*4882a593Smuzhiyun 3) add_subdirectory(compiler-rt/test) from clang instead of compiler-rt. 13*4882a593Smuzhiyun 14*4882a593Smuzhiyunhttps://us.codeaurora.org/patches/quic/llvm/50683/compiler-rt-cross-compilation.patch 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunSigned-off-by: Greg Fitzgerald <gregf@codeaurora.org> 17*4882a593SmuzhiyunSigned-off-by: Khem Raj <raj.khem@gmail.com> 18*4882a593Smuzhiyun--- 19*4882a593Smuzhiyun compiler-rt/CMakeLists.txt | 11 ++++++++++- 20*4882a593Smuzhiyun 1 file changed, 10 insertions(+), 1 deletion(-) 21*4882a593Smuzhiyun 22*4882a593Smuzhiyundiff --git a/compiler-rt/CMakeLists.txt b/compiler-rt/CMakeLists.txt 23*4882a593Smuzhiyunindex 3a41aa43e406..3bbfbca1f645 100644 24*4882a593Smuzhiyun--- a/compiler-rt/CMakeLists.txt 25*4882a593Smuzhiyun+++ b/compiler-rt/CMakeLists.txt 26*4882a593Smuzhiyun@@ -67,7 +67,16 @@ set(COMPILER_RT_BAREMETAL_BUILD OFF CACHE BOOL 27*4882a593Smuzhiyun "Build for a bare-metal target.") 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun if (COMPILER_RT_STANDALONE_BUILD) 30*4882a593Smuzhiyun- load_llvm_config() 31*4882a593Smuzhiyun+ find_package(LLVM REQUIRED) 32*4882a593Smuzhiyun+ list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_DIR}") 33*4882a593Smuzhiyun+ 34*4882a593Smuzhiyun+ # Variables that AddLLVM.cmake depends on (included by AddCompilerRT) 35*4882a593Smuzhiyun+ set(LLVM_TOOLS_BINARY_DIR "${LLVM_INSTALL_PREFIX}/bin") 36*4882a593Smuzhiyun+ set(LLVM_LIBRARY_DIR "${LLVM_INSTALL_PREFIX}/lib") 37*4882a593Smuzhiyun+ 38*4882a593Smuzhiyun+ set(LLVM_LIBRARY_OUTPUT_INTDIR 39*4882a593Smuzhiyun+ ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX}) 40*4882a593Smuzhiyun+ 41*4882a593Smuzhiyun if (TARGET intrinsics_gen) 42*4882a593Smuzhiyun # Loading the llvm config causes this target to be imported so place it 43*4882a593Smuzhiyun # under the appropriate folder in an IDE. 44