[packages/llvm] - build also lld - added lld-link patch (fixes linking of one of lld tests)
qboosh
qboosh at pld-linux.org
Fri Oct 10 22:37:07 CEST 2014
commit ba1cf74d70221e421e875e095a53aa19f762d473
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Fri Oct 10 22:37:26 2014 +0200
- build also lld
- added lld-link patch (fixes linking of one of lld tests)
llvm-lld-link.patch | 10 +++++++++
llvm.spec | 65 ++++++++++++++++++++++++++++++++++++++++++++++++-----
2 files changed, 69 insertions(+), 6 deletions(-)
---
diff --git a/llvm.spec b/llvm.spec
index d9a7b55..f9e2519 100644
--- a/llvm.spec
+++ b/llvm.spec
@@ -1,4 +1,3 @@
-# TODO: dragonegg, lld, openmp?
#
# Conditional build:
%bcond_without lldb # LLDB debugger
@@ -34,12 +33,15 @@ Source4: http://llvm.org/releases/%{version}/polly-%{version}.src.tar.xz
# Source4-md5: 2ee0167c7ed7c85026cdb18ad6f4ade8
Source5: http://llvm.org/releases/%{version}/clang-tools-extra-%{version}.src.tar.xz
# Source5-md5: 6e2830316638ec0de9534b98361dfbec
+Source6: http://llvm.org/releases/%{version}/lld-%{version}.src.tar.xz
+# Source6-md5: 946404d534a51f1806d1ee955885d927
Patch0: %{name}-config.patch
# Data files should be installed with timestamps preserved
Patch1: %{name}-2.6-timestamp.patch
Patch2: %{name}-pld.patch
Patch3: %{name}-polly-update.patch
Patch4: %{name}-lldb.patch
+Patch5: %{name}-lld-link.patch
URL: http://llvm.org/
BuildRequires: autoconf >= 2.60
BuildRequires: automake >= 1:1.9.6
@@ -297,10 +299,38 @@ Extra tools for Clang.
%description -n clang-tools-extra -l pl.UTF-8
Dodatkowe narzędzia do kompilatora Clang.
+%package -n lld
+Summary: The LLVM linker
+Summary(pl.UTF-8): Konsolidator z projektu LLVM
+Group: Development/Libraries
+URL: http://lld.llvm.org/
+Requires: %{name} = %{version}-%{release}
+
+%description -n lld
+lld is a new set of modular code for creating linker tools.
+
+%description -n lld -l pl.UTF-8
+lld to nowy zbiór modularnego kodu do tworzenia narzędzi
+konsolidujących.
+
+%package -n lld-devel
+Summary: Development files for LLD linker tools
+Summary(pl.UTF-8): Pliki programistyczne narzędzi konsolidujących LLD
+Group: Development/Tools
+URL: http://lld.llvm.org/
+Requires: %{name}-devel = %{version}-%{release}
+
+%description -n lld-devel
+Development files for LLD linker tools.
+
+%description -n lld-devel -l pl.UTF-8
+Pliki programistyczne narzędzi konsolidujących LLD.
+
%package -n lldb
Summary: Next generation high-performance debugger
Summary(pl.UTF-8): Wydajny debugger nowej generacji
Group: Development/Debuggers
+URL: http://lldb.llvm.org/
Requires: %{name} = %{version}-%{release}
%description -n lldb
@@ -316,18 +346,19 @@ w projekcie LLVM, takie jak analizator wyrażeń kompilatora Clang oraz
disasembler LLVM.
%package -n lldb-devel
-Summary: Header files for LLDB
-Summary(pl.UTF-8): Pliki nagłówkowe LLDB
+Summary: Development files for LLDB debugger
+Summary(pl.UTF-8): Pliki programistyczne debuggera LLDB
Group: Development/Libraries
+URL: http://lldb.llvm.org/
Requires: %{name}-devel = %{version}-%{release}
Requires: clang-devel = %{version}-%{release}
Requires: lldb = %{version}-%{release}
%description -n lldb-devel
-Header files for LLDB.
+Development files for LLDB debugger.
%description -n lldb-devel -l pl.UTF-8
-Pliki nagłówkowe LLDB.
+Pliki programistyczne debuggera LLDB.
%package ocaml
Summary: OCaml binding for LLVM
@@ -370,18 +401,20 @@ HTML documentation for LLVM's OCaml binding.
Dokumentacja HTML wiązania OCamla do LLVM-a.
%prep
-%setup -q -n %{name}-%{version}.src -a1 %{?with_rt:-a2} %{?with_lldb:-a3} %{?with_polly:-a4} -a5
+%setup -q -n %{name}-%{version}.src -a1 %{?with_rt:-a2} %{?with_lldb:-a3} %{?with_polly:-a4} -a5 -a6
mv cfe-%{version}.src tools/clang
%{?with_rt:mv compiler-rt-%{version}.src projects/compiler-rt}
%{?with_lldb:mv lldb-%{version}.src tools/lldb}
%{?with_polly:mv polly-%{version}.src tools/polly}
mv clang-tools-extra-%{version}.src tools/clang/tools/extra
+mv lld-%{version}.src tools/lld
%patch0 -p1
%patch1 -p1
%patch2 -p1
%{?with_polly:%patch3 -p1}
%{?with_lldb:%patch4 -p1}
+%patch5 -p1
# configure does not properly specify libdir
%{__sed} -i 's|(PROJ_prefix)/lib|(PROJ_prefix)/%{_lib}|g' Makefile.config.in
@@ -504,6 +537,7 @@ done
%{__rm} -v $RPM_BUILD_ROOT%{_libdir}/*LLVMHello.*
# parts of test suite
%{__rm} $RPM_BUILD_ROOT%{_bindir}/{FileCheck,count,not}
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/linker-script-test
# remove documentation makefiles:
# they require the build directory to work
@@ -682,6 +716,25 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/pp-trace
%{_libdir}/libmodernizeCore.a
+%files -n lld
+%defattr(644,root,root,755)
+%doc tools/lld/{LICENSE.TXT,README.md}
+%attr(755,root,root) %{_bindir}/lld
+
+%files -n lld-devel
+%defattr(644,root,root,755)
+%{_libdir}/liblldCore.a
+%{_libdir}/liblldDriver.a
+%{_libdir}/liblldELF.a
+%{_libdir}/liblldMachO.a
+%{_libdir}/liblldNative.a
+%{_libdir}/liblldPECOFF.a
+%{_libdir}/liblldPasses.a
+%{_libdir}/liblldReaderWriter.a
+%{_libdir}/liblldYAML.a
+%{_libdir}/liblld*ELFTarget.a
+%{_includedir}/lld
+
%if %{with lldb}
%files -n lldb
%defattr(644,root,root,755)
diff --git a/llvm-lld-link.patch b/llvm-lld-link.patch
new file mode 100644
index 0000000..b57bfa6
--- /dev/null
+++ b/llvm-lld-link.patch
@@ -0,0 +1,10 @@
+--- llvm-3.5.0.src/tools/lld/unittests/CoreTests/Makefile.orig 2014-06-04 11:54:07.000000000 +0200
++++ llvm-3.5.0.src/tools/lld/unittests/CoreTests/Makefile 2014-10-09 21:31:24.823754108 +0200
+@@ -9,6 +9,6 @@
+
+ LLD_LEVEL = ../..
+ TESTNAME = CoreTest
+-USEDLIBS = gtest.a LLVMOption.a LLVMSupport.a
++LINK_COMPONENTS = support option
+
+ include $(LLD_LEVEL)/unittests/Makefile
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/llvm.git/commitdiff/ba1cf74d70221e421e875e095a53aa19f762d473
More information about the pld-cvs-commit
mailing list