4.0.1 Release
This commit is contained in:
parent
383dd27625
commit
d95c34e467
1
.gitignore
vendored
1
.gitignore
vendored
@ -31,3 +31,4 @@
|
||||
/llvm-3.9.0.src.tar.xz
|
||||
/llvm-3.9.1.src.tar.xz
|
||||
/llvm-4.0.0.src.tar.xz
|
||||
/llvm-4.0.1.src.tar.xz
|
||||
|
@ -1,38 +0,0 @@
|
||||
From a46be0c0b5cb17d0e2eeb19a180c583df63ee766 Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Mon, 6 Mar 2017 15:51:00 +0000
|
||||
Subject: [PATCH] CMake: Don't install llvm-tblgen twice
|
||||
|
||||
Summary:
|
||||
The add_tablegen macros defines its own install target, and it was also calling
|
||||
add_llvm_utility which adds another install target.
|
||||
|
||||
Configuring with -DLLVM_TOOLS_INSTALL_DIR set to something other than
|
||||
'bin' along with -DLLVM_INSTALL_UTILS=ON was causing llvm-tablgen
|
||||
to be installed to two separate directories.
|
||||
|
||||
Reviewers: beanz, hans
|
||||
|
||||
Subscribers: llvm-commits, mgorny
|
||||
|
||||
Differential Revision: https://reviews.llvm.org/D30656
|
||||
---
|
||||
cmake/modules/TableGen.cmake | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/cmake/modules/TableGen.cmake b/cmake/modules/TableGen.cmake
|
||||
index 0c00bf5..da0858e 100644
|
||||
--- a/cmake/modules/TableGen.cmake
|
||||
+++ b/cmake/modules/TableGen.cmake
|
||||
@@ -99,7 +99,7 @@ macro(add_tablegen target project)
|
||||
set(LLVM_ENABLE_OBJLIB ON)
|
||||
endif()
|
||||
|
||||
- add_llvm_utility(${target} ${ARGN})
|
||||
+ add_llvm_executable(${target} DISABLE_LLVM_LINK_LLVM_DYLIB ${ARGN})
|
||||
set(LLVM_LINK_COMPONENTS ${${target}_OLD_LLVM_LINK_COMPONENTS})
|
||||
|
||||
set(${project}_TABLEGEN "${target}" CACHE
|
||||
--
|
||||
2.9.3
|
||||
|
@ -1,193 +0,0 @@
|
||||
From a61fc423f3c043314efd4c0cdb1367de2077ac36 Mon Sep 17 00:00:00 2001
|
||||
From: Eric Fiselier <eric@efcs.ca>
|
||||
Date: Fri, 10 Feb 2017 01:59:20 +0000
|
||||
Subject: [PATCH] [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 | 2 +-
|
||||
cmake/modules/AddLLVM.cmake | 6 +++---
|
||||
cmake/modules/LLVMConfig.cmake.in | 4 ++++
|
||||
examples/ParallelJIT/CMakeLists.txt | 2 +-
|
||||
lib/CodeGen/CMakeLists.txt | 2 +-
|
||||
lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt | 2 +-
|
||||
lib/Fuzzer/CMakeLists.txt | 4 ++--
|
||||
lib/Support/CMakeLists.txt | 2 +-
|
||||
unittests/ExecutionEngine/Orc/CMakeLists.txt | 2 +-
|
||||
unittests/Support/CMakeLists.txt | 2 +-
|
||||
utils/unittest/CMakeLists.txt | 4 ++--
|
||||
11 files changed, 18 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/cmake/config-ix.cmake b/cmake/config-ix.cmake
|
||||
index 50bcc50..6bd2b53 100755
|
||||
--- a/cmake/config-ix.cmake
|
||||
+++ b/cmake/config-ix.cmake
|
||||
@@ -115,7 +115,7 @@ if(HAVE_LIBPTHREAD)
|
||||
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
|
||||
set(THREADS_HAVE_PTHREAD_ARG Off)
|
||||
find_package(Threads REQUIRED)
|
||||
- set(PTHREAD_LIB ${CMAKE_THREAD_LIBS_INIT})
|
||||
+ set(LLVM_PTHREAD_LIB ${CMAKE_THREAD_LIBS_INIT})
|
||||
endif()
|
||||
|
||||
# Don't look for these libraries on Windows. Also don't look for them if we're
|
||||
diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake
|
||||
index b3c7746..cb4171c 100644
|
||||
--- a/cmake/modules/AddLLVM.cmake
|
||||
+++ b/cmake/modules/AddLLVM.cmake
|
||||
@@ -718,11 +718,11 @@ macro(add_llvm_executable name)
|
||||
if(NOT ARG_IGNORE_EXTERNALIZE_DEBUGINFO)
|
||||
llvm_externalize_debuginfo(${name})
|
||||
endif()
|
||||
- if (PTHREAD_LIB)
|
||||
+ if (LLVM_PTHREAD_LIB)
|
||||
# libpthreads overrides some standard library symbols, so main
|
||||
# executable must be linked with it in order to provide consistent
|
||||
# API for all shared libaries loaded by this executable.
|
||||
- target_link_libraries(${name} ${PTHREAD_LIB})
|
||||
+ target_link_libraries(${name} ${LLVM_PTHREAD_LIB})
|
||||
endif()
|
||||
endmacro(add_llvm_executable name)
|
||||
|
||||
@@ -1027,7 +1027,7 @@ function(add_unittest test_suite test_name)
|
||||
# libpthreads overrides some standard library symbols, so main
|
||||
# executable must be linked with it in order to provide consistent
|
||||
# API for all shared libaries loaded by this executable.
|
||||
- target_link_libraries(${test_name} gtest_main gtest ${PTHREAD_LIB})
|
||||
+ target_link_libraries(${test_name} gtest_main gtest ${LLVM_PTHREAD_LIB})
|
||||
|
||||
add_dependencies(${test_suite} ${test_name})
|
||||
get_target_property(test_suite_folder ${test_suite} FOLDER)
|
||||
diff --git a/cmake/modules/LLVMConfig.cmake.in b/cmake/modules/LLVMConfig.cmake.in
|
||||
index 2aea2dc..7a8eb36 100644
|
||||
--- a/cmake/modules/LLVMConfig.cmake.in
|
||||
+++ b/cmake/modules/LLVMConfig.cmake.in
|
||||
@@ -45,6 +45,10 @@ set(LLVM_ENABLE_PIC @LLVM_ENABLE_PIC@)
|
||||
|
||||
set(LLVM_BUILD_32_BITS @LLVM_BUILD_32_BITS@)
|
||||
|
||||
+if (NOT "@LLVM_PTHREAD_LIB@" STREQUAL "")
|
||||
+ set(LLVM_PTHREAD_LIB "@LLVM_PTHREAD_LIB@")
|
||||
+endif()
|
||||
+
|
||||
set(LLVM_ENABLE_PLUGINS @LLVM_ENABLE_PLUGINS@)
|
||||
set(LLVM_EXPORT_SYMBOLS_FOR_PLUGINS @LLVM_EXPORT_SYMBOLS_FOR_PLUGINS@)
|
||||
set(LLVM_PLUGIN_EXT @LLVM_PLUGIN_EXT@)
|
||||
diff --git a/examples/ParallelJIT/CMakeLists.txt b/examples/ParallelJIT/CMakeLists.txt
|
||||
index e85b470..deeee07 100644
|
||||
--- a/examples/ParallelJIT/CMakeLists.txt
|
||||
+++ b/examples/ParallelJIT/CMakeLists.txt
|
||||
@@ -11,4 +11,4 @@ add_llvm_example(ParallelJIT
|
||||
ParallelJIT.cpp
|
||||
)
|
||||
|
||||
-target_link_libraries(ParallelJIT ${PTHREAD_LIB})
|
||||
+target_link_libraries(ParallelJIT ${LLVM_PTHREAD_LIB})
|
||||
diff --git a/lib/CodeGen/CMakeLists.txt b/lib/CodeGen/CMakeLists.txt
|
||||
index a1e5fd4..a9a3d85 100644
|
||||
--- a/lib/CodeGen/CMakeLists.txt
|
||||
+++ b/lib/CodeGen/CMakeLists.txt
|
||||
@@ -150,7 +150,7 @@ add_llvm_library(LLVMCodeGen
|
||||
${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen
|
||||
${LLVM_MAIN_INCLUDE_DIR}/llvm/CodeGen/PBQP
|
||||
|
||||
- LINK_LIBS ${PTHREAD_LIB}
|
||||
+ LINK_LIBS ${LLVM_PTHREAD_LIB}
|
||||
|
||||
DEPENDS
|
||||
intrinsics_gen
|
||||
diff --git a/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt b/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
|
||||
index 3b8c4b9..e6c33b2 100644
|
||||
--- a/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
|
||||
+++ b/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
|
||||
@@ -4,7 +4,7 @@ if( HAVE_LIBDL )
|
||||
set(LLVM_INTEL_JIT_LIBS ${CMAKE_DL_LIBS})
|
||||
endif()
|
||||
|
||||
-set(LLVM_INTEL_JIT_LIBS ${PTHREAD_LIB} ${LLVM_INTEL_JIT_LIBS})
|
||||
+set(LLVM_INTEL_JIT_LIBS ${LLVM_PTHREAD_LIB} ${LLVM_INTEL_JIT_LIBS})
|
||||
|
||||
|
||||
add_llvm_library(LLVMIntelJITEvents
|
||||
diff --git a/lib/Fuzzer/CMakeLists.txt b/lib/Fuzzer/CMakeLists.txt
|
||||
index 5ba126e..f490b36 100644
|
||||
--- a/lib/Fuzzer/CMakeLists.txt
|
||||
+++ b/lib/Fuzzer/CMakeLists.txt
|
||||
@@ -34,12 +34,12 @@ if( LLVM_USE_SANITIZE_COVERAGE )
|
||||
add_library(LLVMFuzzerNoMain STATIC
|
||||
$<TARGET_OBJECTS:LLVMFuzzerNoMainObjects>
|
||||
)
|
||||
- target_link_libraries(LLVMFuzzerNoMain ${PTHREAD_LIB})
|
||||
+ target_link_libraries(LLVMFuzzerNoMain ${LLVM_PTHREAD_LIB})
|
||||
add_library(LLVMFuzzer STATIC
|
||||
FuzzerMain.cpp
|
||||
$<TARGET_OBJECTS:LLVMFuzzerNoMainObjects>
|
||||
)
|
||||
- target_link_libraries(LLVMFuzzer ${PTHREAD_LIB})
|
||||
+ target_link_libraries(LLVMFuzzer ${LLVM_PTHREAD_LIB})
|
||||
|
||||
if( LLVM_INCLUDE_TESTS )
|
||||
add_subdirectory(test)
|
||||
diff --git a/lib/Support/CMakeLists.txt b/lib/Support/CMakeLists.txt
|
||||
index 3301364..f7cfa76 100644
|
||||
--- a/lib/Support/CMakeLists.txt
|
||||
+++ b/lib/Support/CMakeLists.txt
|
||||
@@ -17,7 +17,7 @@ elseif( CMAKE_HOST_UNIX )
|
||||
if( LLVM_ENABLE_THREADS AND HAVE_LIBATOMIC )
|
||||
set(system_libs ${system_libs} atomic)
|
||||
endif()
|
||||
- set(system_libs ${system_libs} ${PTHREAD_LIB})
|
||||
+ set(system_libs ${system_libs} ${LLVM_PTHREAD_LIB})
|
||||
if ( LLVM_ENABLE_ZLIB AND HAVE_LIBZ )
|
||||
set(system_libs ${system_libs} z)
|
||||
endif()
|
||||
diff --git a/unittests/ExecutionEngine/Orc/CMakeLists.txt b/unittests/ExecutionEngine/Orc/CMakeLists.txt
|
||||
index 68f6d0c..80c344e 100644
|
||||
--- a/unittests/ExecutionEngine/Orc/CMakeLists.txt
|
||||
+++ b/unittests/ExecutionEngine/Orc/CMakeLists.txt
|
||||
@@ -21,4 +21,4 @@ add_llvm_unittest(OrcJITTests
|
||||
RPCUtilsTest.cpp
|
||||
)
|
||||
|
||||
-target_link_libraries(OrcJITTests ${PTHREAD_LIB})
|
||||
+target_link_libraries(OrcJITTests ${LLVM_PTHREAD_LIB})
|
||||
diff --git a/unittests/Support/CMakeLists.txt b/unittests/Support/CMakeLists.txt
|
||||
index 4c9bb5e..ea26079 100644
|
||||
--- a/unittests/Support/CMakeLists.txt
|
||||
+++ b/unittests/Support/CMakeLists.txt
|
||||
@@ -64,4 +64,4 @@ add_llvm_unittest(SupportTests
|
||||
)
|
||||
|
||||
# ManagedStatic.cpp uses <pthread>.
|
||||
-target_link_libraries(SupportTests ${PTHREAD_LIB})
|
||||
+target_link_libraries(SupportTests ${LLVM_PTHREAD_LIB})
|
||||
diff --git a/utils/unittest/CMakeLists.txt b/utils/unittest/CMakeLists.txt
|
||||
index a50733a..b42ac83 100644
|
||||
--- a/utils/unittest/CMakeLists.txt
|
||||
+++ b/utils/unittest/CMakeLists.txt
|
||||
@@ -40,8 +40,8 @@ if (NOT LLVM_ENABLE_THREADS)
|
||||
add_definitions( -DGTEST_HAS_PTHREAD=0 )
|
||||
endif()
|
||||
|
||||
-find_library(PTHREAD_LIBRARY_PATH pthread)
|
||||
-if (PTHREAD_LIBRARY_PATH)
|
||||
+find_library(LLVM_PTHREAD_LIBRARY_PATH pthread)
|
||||
+if (LLVM_PTHREAD_LIBRARY_PATH)
|
||||
list(APPEND LIBS pthread)
|
||||
endif()
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -8,8 +8,8 @@
|
||||
%global llvm_bindir %{_libdir}/%{name}
|
||||
|
||||
Name: llvm
|
||||
Version: 4.0.0
|
||||
Release: 6%{?dist}
|
||||
Version: 4.0.1
|
||||
Release: 1%{?dist}
|
||||
Summary: The Low Level Virtual Machine
|
||||
|
||||
License: NCSA
|
||||
@ -18,13 +18,11 @@ Source0: http://llvm.org/releases/%{version}/%{name}-%{version}.src.tar.xz
|
||||
|
||||
# recognize s390 as SystemZ when configuring build
|
||||
Patch0: llvm-3.7.1-cmake-s390.patch
|
||||
Patch1: 0001-CMake-Fix-pthread-handling-for-out-of-tree-builds.patch
|
||||
Patch2: rust-lang-llvm-pr67.patch
|
||||
Patch3: 0001-CMake-Split-static-library-exports-into-their-own-ex.patch
|
||||
Patch4: 0001-Revert-Revert-CMake-Move-sphinx-detection-into-AddSp.patch
|
||||
Patch5: 0001-CMake-Fix-docs-llvm-man-target-when-clang-llvm-is-in.patch
|
||||
Patch6: 0001-CMake-Add-LLVM_UTILS_INSTALL_DIR-option.patch
|
||||
Patch7: 0001-CMake-Don-t-install-llvm-tblgen-twice.patch
|
||||
|
||||
BuildRequires: cmake
|
||||
BuildRequires: zlib-devel
|
||||
@ -206,6 +204,9 @@ fi
|
||||
%{_libdir}/cmake/llvm/LLVMStaticExports.cmake
|
||||
|
||||
%changelog
|
||||
* Wed Jun 21 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
|
||||
- 4.0.1 Release
|
||||
|
||||
* Thu Jun 15 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-6
|
||||
- Install llvm utils
|
||||
|
||||
|
1
sources
1
sources
@ -1 +1,2 @@
|
||||
SHA512 (llvm-4.0.0.src.tar.xz) = cf681f0626ef6d568d951cdc3e143471a1d7715a0ba11e52aa273cf5d8d421e1357ef2645cc85879eaefcd577e99e74d07b01566825b3d0461171ef2cbfc7704
|
||||
SHA512 (llvm-4.0.1.src.tar.xz) = 16adc39b34ddb628f81b171119a8e2a0e9138b25011e803ef0b688e2fbea116fc4953d3a1b61b90a98a75e33619f81566b7cb06a9a2ea4d04ac5e0eb303a2d1d
|
||||
|
Loading…
Reference in New Issue
Block a user