commit:     abbca1be052d1edd4b3dc90845a4d39773b2a851
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Sep  2 20:52:25 2016 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Fri Sep  2 21:40:03 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abbca1be

sys-libs/compiler-rt: Add missing (not committed) patch

 ...-cmake-Support-overriding-llvm-config-que.patch | 46 ++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git 
a/sys-libs/compiler-rt/files/9999/0001-compiler-rt-cmake-Support-overriding-llvm-config-que.patch
 
b/sys-libs/compiler-rt/files/9999/0001-compiler-rt-cmake-Support-overriding-llvm-config-que.patch
new file mode 100644
index 00000000..5ee5f81
--- /dev/null
+++ 
b/sys-libs/compiler-rt/files/9999/0001-compiler-rt-cmake-Support-overriding-llvm-config-que.patch
@@ -0,0 +1,46 @@
+From 5c956f1867c268111ec05b443ab8fbe0e3b9d500 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgo...@gentoo.org>
+Date: Mon, 29 Aug 2016 23:18:25 +0200
+Subject: [PATCH] [compiler-rt cmake] Support overriding llvm-config query
+ results
+
+Support overriding LLVM_* variables obtained from llvm-config when doing
+stand-alone builds. The override of LLVM_MAIN_SRC_DIR is necessary to
+provide LLVM sources when the initial directory used to build LLVM does
+no longer exist when compiler-rt is built stand-alone. This is
+especially the case when building the projects separately in temporary
+directories with unpredictable names.
+
+The code is based on existing CMakeLists.txt from clang. Alike clang, it
+extends the override to all queried variables.
+---
+ cmake/Modules/CompilerRTUtils.cmake | 13 +++++++++----
+ 1 file changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/cmake/Modules/CompilerRTUtils.cmake 
b/cmake/Modules/CompilerRTUtils.cmake
+index b2f27c0..5523c0a 100644
+--- a/cmake/Modules/CompilerRTUtils.cmake
++++ b/cmake/Modules/CompilerRTUtils.cmake
+@@ -197,10 +197,15 @@ macro(load_llvm_config)
+     message(FATAL_ERROR "llvm-config failed with status ${HAD_ERROR}")
+   endif()
+   string(REGEX REPLACE "[ \t]*[\r\n]+[ \t]*" ";" CONFIG_OUTPUT 
${CONFIG_OUTPUT})
+-  list(GET CONFIG_OUTPUT 0 LLVM_BINARY_DIR)
+-  list(GET CONFIG_OUTPUT 1 LLVM_TOOLS_BINARY_DIR)
+-  list(GET CONFIG_OUTPUT 2 LLVM_LIBRARY_DIR)
+-  list(GET CONFIG_OUTPUT 3 LLVM_MAIN_SRC_DIR)
++  list(GET CONFIG_OUTPUT 0 LLVM_OBJ_ROOT)
++  list(GET CONFIG_OUTPUT 1 TOOLS_BINARY_DIR)
++  list(GET CONFIG_OUTPUT 2 LIBRARY_DIR)
++  list(GET CONFIG_OUTPUT 3 MAIN_SRC_DIR)
++
++  set(LLVM_BINARY_DIR ${LLVM_OBJ_ROOT} CACHE PATH "Path to LLVM build tree")
++  set(LLVM_TOOLS_BINARY_DIR ${TOOLS_BINARY_DIR} CACHE PATH "Path to llvm/bin")
++  set(LLVM_LIBRARY_DIR ${LIBRARY_DIR} CACHE PATH "Path to llvm/lib")
++  set(LLVM_MAIN_SRC_DIR ${MAIN_SRC_DIR} CACHE PATH "Path to LLVM source tree")
+ 
+   # Make use of LLVM CMake modules.
+   file(TO_CMAKE_PATH ${LLVM_BINARY_DIR} LLVM_BINARY_DIR_CMAKE_STYLE)
+-- 
+2.9.3
+

Reply via email to