Apply upstream patch to properly link LLVMgold against LTO

This commit is contained in:
Michel Alexandre Salim 2012-02-25 09:41:59 +01:00
parent 0e3ec48b46
commit db8da8feee
2 changed files with 21 additions and 5 deletions

View file

@ -0,0 +1,10 @@
--- llvm-3.0.src/tools/gold/Makefile.link_llvmgold_to_lto 2011-05-31 22:00:45.000000000 +0200
+++ llvm-3.0.src/tools/gold/Makefile 2012-02-25 09:40:01.889923932 +0100
@@ -26,6 +26,6 @@
# Because off_t is used in the public API, the largefile parts are required for
# ABI compatibility.
CXXFLAGS+=-I$(BINUTILS_INCDIR) -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
-CXXFLAGS+=$(SharedLibDir)/$(SharedPrefix)LTO$(SHLIBEXT)
+CXXFLAGS+=-L$(SharedLibDir)/$(SharedPrefix) -lLTO
include $(LEVEL)/Makefile.common

View file

@ -31,7 +31,7 @@ ExcludeArch: s390 s390x ppc ppc64
Name: llvm Name: llvm
Version: 3.0 Version: 3.0
Release: 7%{?dist} Release: 8%{?dist}
Summary: The Low Level Virtual Machine Summary: The Low Level Virtual Machine
Group: Development/Languages Group: Development/Languages
@ -43,14 +43,17 @@ Source1: %{downloadurl}/clang-%{version}%{?prerel:%{prerel}.src}.tar.gz
Source2: llvm-Config-config.h Source2: llvm-Config-config.h
Source3: llvm-Config-llvm-config.h Source3: llvm-Config-llvm-config.h
# Data files should be installed with timestamps preserved # Data files should be installed with timestamps preserved
Patch0: llvm-2.6-timestamp.patch Patch0: llvm-2.6-timestamp.patch
# clang link failure if system GCC version is unknown # clang link failure if system GCC version is unknown
# http://llvm.org/bugs/show_bug.cgi?id=8897 # http://llvm.org/bugs/show_bug.cgi?id=8897
Patch1: clang-2.9-add_gcc_vers.patch Patch1: clang-2.9-add_gcc_vers.patch
# Operator.h incompatibility with GCC 4.6 in C++0x mode # LLVMgold should link against LTO as a normal library
# http://llvm.org/bugs/show_bug.cgi?id=9869 # http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-November/045433.html
#Patch2: llvm-2.9-PR9869_operator_destructor.patch # patch is applied upstream, but has to be rewritten due to post-3.0
# Makefile clean-ups
Patch2: llvm-3.0-link_llvmgold_to_lto.patch
BuildRequires: bison BuildRequires: bison
BuildRequires: chrpath BuildRequires: chrpath
@ -244,7 +247,7 @@ mv clang-%{version}%{?prerel}.src tools/clang
# llvm patches # llvm patches
%patch0 -p1 -b .timestamp %patch0 -p1 -b .timestamp
#patch2 -p1 -b .pr9869_operator_destructor %patch2 -p1 -b .link_llvmgold_to_lto
# clang patches # clang patches
#pushd tools/clang #pushd tools/clang
@ -520,6 +523,9 @@ exit 0
%endif %endif
%changelog %changelog
* Sat Feb 25 2012 Michel Salim <salimma@fedoraproject.org> - 3.0-8
- Apply upstream patch to properly link LLVMgold against LTO
* Fri Feb 24 2012 Michel Salim <salimma@fedoraproject.org> - 3.0-7 * Fri Feb 24 2012 Michel Salim <salimma@fedoraproject.org> - 3.0-7
- Build LLVMgold plugin on supported architectures - Build LLVMgold plugin on supported architectures