diff --git a/0001-CMake-Split-static-library-exports-into-their-own-ex.patch b/0001-CMake-Split-static-library-exports-into-their-own-ex.patch index 123fb1a..903821e 100644 --- a/0001-CMake-Split-static-library-exports-into-their-own-ex.patch +++ b/0001-CMake-Split-static-library-exports-into-their-own-ex.patch @@ -1,4 +1,4 @@ -From 80d3393d3e324dd8bef7de1b9c6db3010585f3e8 Mon Sep 17 00:00:00 2001 +From f9e66a883e1fb748e6ac826fde188efaae249361 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sat, 29 Apr 2017 02:03:23 +0000 Subject: [PATCH] CMake: Split static library exports into their own export @@ -31,10 +31,10 @@ Differential Revision: https://reviews.llvm.org/D32668 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake -index 1c92265..e1ad9b9 100644 +index fd5627e..78f106f 100644 --- a/cmake/modules/AddLLVM.cmake +++ b/cmake/modules/AddLLVM.cmake -@@ -603,7 +603,11 @@ macro(add_llvm_library name) +@@ -635,7 +635,11 @@ macro(add_llvm_library name) if(${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR NOT LLVM_DISTRIBUTION_COMPONENTS) @@ -48,7 +48,7 @@ index 1c92265..e1ad9b9 100644 endif() diff --git a/cmake/modules/CMakeLists.txt b/cmake/modules/CMakeLists.txt -index ac4b0b7..f77c905 100644 +index 6074e83..e9fcb11 100644 --- a/cmake/modules/CMakeLists.txt +++ b/cmake/modules/CMakeLists.txt @@ -91,6 +91,7 @@ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}") @@ -69,10 +69,10 @@ index ac4b0b7..f77c905 100644 install(FILES diff --git a/cmake/modules/LLVMConfig.cmake.in b/cmake/modules/LLVMConfig.cmake.in -index 7a8eb36..1fa0028 100644 +index 0772016..f471625 100644 --- a/cmake/modules/LLVMConfig.cmake.in +++ b/cmake/modules/LLVMConfig.cmake.in -@@ -77,6 +77,8 @@ if(NOT TARGET LLVMSupport) +@@ -78,6 +78,8 @@ if(NOT TARGET LLVMSupport) set(LLVM_EXPORTED_TARGETS "@LLVM_CONFIG_EXPORTS@") include("@LLVM_CONFIG_EXPORTS_FILE@") @llvm_config_include_buildtree_only_exports@ @@ -80,7 +80,7 @@ index 7a8eb36..1fa0028 100644 + include("@LLVM_CONFIG_STATIC_EXPORTS_FILE@" OPTIONAL) endif() - set_property(GLOBAL PROPERTY LLVM_TARGETS_CONFIGURED On) + # By creating intrinsics_gen here, subprojects that depend on LLVM's -- 1.8.3.1 diff --git a/0001-Revert-Add-a-linker-script-to-version-LLVM-symbols.patch b/0001-Revert-Add-a-linker-script-to-version-LLVM-symbols.patch index af11182..e91de08 100644 --- a/0001-Revert-Add-a-linker-script-to-version-LLVM-symbols.patch +++ b/0001-Revert-Add-a-linker-script-to-version-LLVM-symbols.patch @@ -1,6 +1,6 @@ -From 2912190aec4a215849a6dea0463f6599425fb7c7 Mon Sep 17 00:00:00 2001 +From a5f7c93301bb1177e1cbd9332c56f47b68059fb8 Mon Sep 17 00:00:00 2001 From: Tom Stellard -Date: Mon, 14 Aug 2017 17:46:14 -0700 +Date: Fri, 19 Jan 2018 12:10:53 -0800 Subject: [PATCH] Revert "Add a linker script to version LLVM symbols" This reverts commit cd789d8cfe12aa374e66eafc748f4fc06e149ca7. @@ -9,13 +9,13 @@ Conflicts: tools/llvm-shlib/CMakeLists.txt --- cmake/modules/AddLLVM.cmake | 3 +-- - tools/llvm-shlib/CMakeLists.txt | 8 ++------ + tools/llvm-shlib/CMakeLists.txt | 5 +---- tools/llvm-shlib/simple_version_script.map.in | 1 - - 3 files changed, 3 insertions(+), 9 deletions(-) + 3 files changed, 2 insertions(+), 7 deletions(-) delete mode 100644 tools/llvm-shlib/simple_version_script.map.in diff --git a/cmake/modules/AddLLVM.cmake b/cmake/modules/AddLLVM.cmake -index e1ad9b9..e5ee4ee 100644 +index 78f106f..5faa9a7 100644 --- a/cmake/modules/AddLLVM.cmake +++ b/cmake/modules/AddLLVM.cmake @@ -81,9 +81,8 @@ function(add_llvm_symbol_exports target_name export_file) @@ -30,25 +30,26 @@ index e1ad9b9..e5ee4ee 100644 COMMAND sed -e "s/$/;/" -e "s/^/ /" < ${export_file} >> ${native_export_file} COMMAND echo " local: *;" >> ${native_export_file} diff --git a/tools/llvm-shlib/CMakeLists.txt b/tools/llvm-shlib/CMakeLists.txt -index 907345a..01a37b5 100644 +index b2109c8..b1ea65c 100644 --- a/tools/llvm-shlib/CMakeLists.txt +++ b/tools/llvm-shlib/CMakeLists.txt -@@ -37,13 +37,9 @@ endif() - add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES}) - - list(REMOVE_DUPLICATES LIB_NAMES) --if(("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") OR (MINGW) OR (HAIKU) OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD") OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "DragonFly")) # FIXME: It should be "GNU ld for elf" +@@ -41,15 +41,12 @@ if(("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") OR (MINGW) OR (HAIKU) + OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD") + OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "DragonFly") + OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "SunOS")) # FIXME: It should be "GNU ld for elf" - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/simple_version_script.map.in - ${LLVM_LIBRARY_DIR}/tools/llvm-shlib/simple_version_script.map) -- -+if(("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") OR (MINGW) OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD") OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "DragonFly")) # FIXME: It should be "GNU ld for elf" + # GNU ld doesn't resolve symbols in the version script. -- set(LIB_NAMES -Wl,--version-script,${LLVM_LIBRARY_DIR}/tools/llvm-shlib/simple_version_script.map -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive) -+ set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive) + set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive) + if (NOT LLVM_LINKER_IS_SOLARISLD) + # Solaris ld does not accept global: *; so there is no way to version *all* global symbols +- set(LIB_NAMES -Wl,--version-script,${LLVM_LIBRARY_DIR}/tools/llvm-shlib/simple_version_script.map ${LIB_NAMES}) ++ set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive) + endif() elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin") set(LIB_NAMES -Wl,-all_load ${LIB_NAMES}) - endif() diff --git a/tools/llvm-shlib/simple_version_script.map.in b/tools/llvm-shlib/simple_version_script.map.in deleted file mode 100644 index e9515fe..0000000 diff --git a/llvm.spec b/llvm.spec index f3d8a3a..a259ce1 100644 --- a/llvm.spec +++ b/llvm.spec @@ -6,18 +6,19 @@ %endif %global llvm_bindir %{_libdir}/%{name} -%global maj_ver 5 +%global maj_ver 6 %global min_ver 0 -%global patch_ver 1 +%global patch_ver 0 +%global rc_ver 1 Name: llvm Version: %{maj_ver}.%{min_ver}.%{patch_ver} -Release: 1%{?dist} +Release: 0.1.rc1%{?dist} Summary: The Low Level Virtual Machine License: NCSA URL: http://llvm.org -Source0: http://llvm.org/releases/%{version}/%{name}-%{version}.src.tar.xz +Source0: http://llvm.org/releases/%{version}/%{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src.tar.xz # recognize s390 as SystemZ when configuring build Patch0: llvm-3.7.1-cmake-s390.patch @@ -25,7 +26,6 @@ Patch3: 0001-CMake-Split-static-library-exports-into-their-own-ex.patch # FIXME: Symbol versioning breaks some unittests when statically linking # libstdc++, so we disable it for now. Patch4: 0001-Revert-Add-a-linker-script-to-version-LLVM-symbols.patch -Patch5: 0001-PowerPC-Don-t-use-xscvdpspn-on-the-P7.patch BuildRequires: cmake BuildRequires: zlib-devel @@ -85,7 +85,7 @@ Summary: LLVM static libraries Static libraries for the LLVM compiler infrastructure. %prep -%autosetup -n %{name}-%{version}.src -p1 +%autosetup -n %{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src -p1 %ifarch armv7hl @@ -216,6 +216,9 @@ fi %{_libdir}/cmake/llvm/LLVMStaticExports.cmake %changelog +* Fri Jan 19 2018 Tom Stellard - 6.0.0-0.1.rc1 +- 6.0.1 rc1 + * Tue Dec 19 2017 Tom Stellard - 5.0.1-1 - 5.0.1 Release