]>
Commit | Line | Data |
---|---|---|
8373b18b JK |
1 | Description: Statically link to libllvm |
2 | ||
3 | When multiple ICDs are installed, libopencl1 needs to dlopen() them all | |
4 | to find out which one works on the available hardware. If they are | |
5 | dynamically linked, this leads to them sharing a libllvm, which has | |
6 | enough global state that this is likely to error out. (This is a known | |
7 | LLVM bug, https://bugs.llvm.org/show_bug.cgi?id=22952 , but currently | |
8 | has no real fix.) | |
9 | ||
10 | Author: Rebecca N. Palmer <rebecca_palmer@zoho.com> | |
11 | Bug: https://bugs.llvm.org/show_bug.cgi?id=30587 | |
12 | Bug-Debian: https://bugs.debian.org/852746 | |
13 | ||
14 | --- beignet-1.3.0.orig/CMake/FindLLVM.cmake | |
15 | +++ beignet-1.3.0/CMake/FindLLVM.cmake | |
16 | @@ -87,11 +87,19 @@ execute_process( | |
17 | OUTPUT_STRIP_TRAILING_WHITESPACE | |
18 | ) | |
19 | ||
20 | +if (LLVM_VERSION_NODOT VERSION_GREATER 38) | |
21 | +execute_process( | |
22 | + COMMAND ${LLVM_CONFIG_EXECUTABLE} --libs --link-static | |
23 | + OUTPUT_VARIABLE LLVM_MODULE_LIBS | |
24 | + OUTPUT_STRIP_TRAILING_WHITESPACE | |
25 | +) | |
26 | +else (LLVM_VERSION_NODOT VERSION_GREATER 38) | |
27 | execute_process( | |
28 | COMMAND ${LLVM_CONFIG_EXECUTABLE} --libs | |
29 | OUTPUT_VARIABLE LLVM_MODULE_LIBS | |
30 | OUTPUT_STRIP_TRAILING_WHITESPACE | |
31 | ) | |
32 | +endif (LLVM_VERSION_NODOT VERSION_GREATER 38) | |
33 | ||
34 | if (LLVM_VERSION_NODOT VERSION_GREATER 34) | |
35 | execute_process( | |
36 | ||
37 |