OSDN Git Service

[CMake] Fix pthread handling for out-of-tree builds
authorEric Fiselier <eric@efcs.ca>
Fri, 10 Feb 2017 01:59:20 +0000 (01:59 +0000)
committerEric Fiselier <eric@efcs.ca>
Fri, 10 Feb 2017 01:59:20 +0000 (01:59 +0000)
commita61fc423f3c043314efd4c0cdb1367de2077ac36
treea0bd6ecc487213d20f38fd9027884551d5a65309
parent671eb85b7219a1a3e6f1e1c646886e9351f5ea58
[CMake] Fix pthread handling for out-of-tree builds

LLVM defines `PTHREAD_LIB` which is used by AddLLVM.cmake and various projects
to correctly link the threading library when needed. Unfortunately
`PTHREAD_LIB` is defined by LLVM's `config-ix.cmake` file which isn't installed
and therefore can't be used when configuring out-of-tree builds. This causes
such builds to fail since `pthread` isn't being correctly linked.

This patch attempts to fix that problem by renaming and exporting
`LLVM_PTHREAD_LIB` as part of`LLVMConfig.cmake`. I renamed `PTHREAD_LIB`
because It seemed likely to cause collisions with downstream users of
`LLVMConfig.cmake`.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@294690 91177308-0d34-0410-b5e6-96231b3b80d8
cmake/config-ix.cmake
cmake/modules/AddLLVM.cmake
cmake/modules/LLVMConfig.cmake.in
examples/ParallelJIT/CMakeLists.txt
lib/CodeGen/CMakeLists.txt
lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
lib/Fuzzer/CMakeLists.txt
lib/Support/CMakeLists.txt
unittests/ExecutionEngine/Orc/CMakeLists.txt
unittests/Support/CMakeLists.txt
utils/unittest/CMakeLists.txt