[packages/llvm] - updated to 5.0.0 - updated pld,x32-gcc-toolchain patches

baggins baggins at pld-linux.org
Fri Mar 30 16:08:17 CEST 2018


commit 265e167cebaa54fe9f0e481362a54bc0c1a16b17
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Thu Dec 7 16:30:10 2017 +0100

    - updated to 5.0.0
    - updated pld,x32-gcc-toolchain patches

 llvm-pld.patch          | 82 ++++++++++++++++++++++++-------------------------
 llvm.spec               | 41 +++++++++++++++----------
 x32-gcc-toolchain.patch |  4 +--
 3 files changed, 67 insertions(+), 60 deletions(-)
---
diff --git a/llvm.spec b/llvm.spec
index 3d1936e..37c782b 100644
--- a/llvm.spec
+++ b/llvm.spec
@@ -1,4 +1,5 @@
 # TODO:
+# - wait for rust ready for LLVM 5.0
 # - move and package:
 #	%{_datadir}/clang/bash-autocomplete.sh
 #	%{_datadir}/clang/clang-format-sublime.py - sublime plugin
@@ -7,6 +8,7 @@
 #	%{_datadir}/clang/clang-rename.el
 #	%{_datadir}/clang/clang-format.py - clang tools vim integration
 #	%{_datadir}/clang/clang-rename.py
+#	%{_datadir}/opt-viewer
 # - no content in doc package (it used to contain parts of clang apidocs and some examples)
 # - system isl in polly?
 #
@@ -28,25 +30,25 @@
 Summary:	The Low Level Virtual Machine (An Optimizing Compiler Infrastructure)
 Summary(pl.UTF-8):	Niskopoziomowa maszyna wirtualna (infrastruktura kompilatora optymalizującego)
 Name:		llvm
-Version:	4.0.1
+Version:	5.0.0
 Release:	1
 License:	University of Illinois/NCSA Open Source License
 Group:		Development/Languages
 #Source0Download: http://releases.llvm.org/download.html
 Source0:	http://releases.llvm.org/%{version}/%{name}-%{version}.src.tar.xz
-# Source0-md5:	a818e70321b91e2bb2d47e60edd5408f
+# Source0-md5:	5ce9c5ad55243347ea0fdb4c16754be0
 Source1:	http://releases.llvm.org/%{version}/cfe-%{version}.src.tar.xz
-# Source1-md5:	a6c7b3e953f8b93e252af5917df7db97
+# Source1-md5:	699c448c6d6d0edb693c87beb1cc8c6e
 Source2:	http://releases.llvm.org/%{version}/compiler-rt-%{version}.src.tar.xz
-# Source2-md5:	0227ac853ce422125f8bb08f6ad5c995
+# Source2-md5:	da735894133589cbc6052c8ef06b1230
 Source3:	http://releases.llvm.org/%{version}/lldb-%{version}.src.tar.xz
-# Source3-md5:	908bdd777d3b527a914ba360477b8ab3
+# Source3-md5:	8de19973d044ca2cfe325d4625a5cfef
 Source4:	http://releases.llvm.org/%{version}/polly-%{version}.src.tar.xz
-# Source4-md5:	0d4a3fa2eb446a378bbf01b220851b1f
+# Source4-md5:	dcbd08450e895a42f3986e2fe6524c92
 Source5:	http://releases.llvm.org/%{version}/clang-tools-extra-%{version}.src.tar.xz
-# Source5-md5:	cfd46027a0ab7eed483dfcc803e86bd9
+# Source5-md5:	0cda05d1a61becb393eb63746963d7f5
 Source6:	http://releases.llvm.org/%{version}/lld-%{version}.src.tar.xz
-# Source6-md5:	39cd3512cddcfd7d37ef12066c961660
+# Source6-md5:	a39cbecced3263feab9139b47118e062
 Patch1:		%{name}-pld.patch
 Patch3:		x32-gcc-toolchain.patch
 Patch4:		cmake-buildtype.patch
@@ -131,7 +133,7 @@ Requires:	%{name}-libs = %{version}-%{release}
 ExcludeArch:	ppc64
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define		abi	4.0
+%define		abi	5.0
 %define		_sysconfdir	/etc/%{name}
 
 %define		specflags_ppc	-fno-var-tracking-assignments
@@ -661,10 +663,12 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/llvm-bcanalyzer
 %attr(755,root,root) %{_bindir}/llvm-cat
 %attr(755,root,root) %{_bindir}/llvm-cov
+%attr(755,root,root) %{_bindir}/llvm-cvtres
 %attr(755,root,root) %{_bindir}/llvm-cxxdump
 %attr(755,root,root) %{_bindir}/llvm-cxxfilt
 %attr(755,root,root) %{_bindir}/llvm-diff
 %attr(755,root,root) %{_bindir}/llvm-dis
+%attr(755,root,root) %{_bindir}/llvm-dlltool
 %attr(755,root,root) %{_bindir}/llvm-dsymutil
 %attr(755,root,root) %{_bindir}/llvm-dwarfdump
 %attr(755,root,root) %{_bindir}/llvm-dwp
@@ -676,12 +680,14 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/llvm-mc
 %attr(755,root,root) %{_bindir}/llvm-mcmarkup
 %attr(755,root,root) %{_bindir}/llvm-modextract
+%attr(755,root,root) %{_bindir}/llvm-mt
 %attr(755,root,root) %{_bindir}/llvm-nm
 %attr(755,root,root) %{_bindir}/llvm-objdump
 %attr(755,root,root) %{_bindir}/llvm-opt-report
-%attr(755,root,root) %{_bindir}/llvm-pdbdump
+%attr(755,root,root) %{_bindir}/llvm-pdbutil
 %attr(755,root,root) %{_bindir}/llvm-profdata
 %attr(755,root,root) %{_bindir}/llvm-ranlib
+%attr(755,root,root) %{_bindir}/llvm-readelf
 %attr(755,root,root) %{_bindir}/llvm-readobj
 %attr(755,root,root) %{_bindir}/llvm-rtdyld
 %attr(755,root,root) %{_bindir}/llvm-size
@@ -728,7 +734,7 @@ rm -rf $RPM_BUILD_ROOT
 # non-soname symlink
 %attr(755,root,root) %{_libdir}/libLLVM-%{version}.so
 %attr(755,root,root) %{_libdir}/libLTO.so.%{version}
-%attr(755,root,root) %ghost %{_libdir}/libLTO.so.4
+%attr(755,root,root) %ghost %{_libdir}/libLTO.so.5
 
 %files devel
 %defattr(644,root,root,755)
@@ -765,6 +771,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/libPollyISL.a
 %{_libdir}/libPollyPPCG.a
 %{_includedir}/polly
+%{_libdir}/cmake/polly
 %endif
 
 %files -n clang
@@ -814,7 +821,7 @@ rm -rf $RPM_BUILD_ROOT
 %files -n clang-libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libclang.so.%{abi}
-%attr(755,root,root) %ghost %{_libdir}/libclang.so.4
+%attr(755,root,root) %ghost %{_libdir}/libclang.so.5
 
 %if %{with rt} && %{with multilib}
 %ifarch %{x8664} x32
@@ -869,6 +876,7 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_bindir}/clang-rename
 %attr(755,root,root) %{_bindir}/clang-reorder-fields
 %attr(755,root,root) %{_bindir}/clang-tidy
+%attr(755,root,root) %{_bindir}/clangd
 %attr(755,root,root) %{_bindir}/find-all-symbols
 %attr(755,root,root) %{_bindir}/modularize
 %attr(755,root,root) %{_bindir}/pp-trace
@@ -893,14 +901,13 @@ rm -rf $RPM_BUILD_ROOT
 %files -n lldb
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/lldb
-%attr(755,root,root) %{_bindir}/lldb-%{version}
 %attr(755,root,root) %{_bindir}/lldb-argdumper
 %attr(755,root,root) %{_bindir}/lldb-mi
-%attr(755,root,root) %{_bindir}/lldb-mi-%{version}
 %attr(755,root,root) %{_bindir}/lldb-server
-%attr(755,root,root) %{_bindir}/lldb-server-%{version}
+# FIXME: why bindir???
+%attr(755,root,root) %{_bindir}/liblldb-intel-mpxtable.so
 %attr(755,root,root) %{_libdir}/liblldb.so.%{version}
-%attr(755,root,root) %ghost %{_libdir}/liblldb.so.4
+%attr(755,root,root) %ghost %{_libdir}/liblldb.so.5
 %dir %{py_sitedir}/lldb
 %attr(755,root,root) %{py_sitedir}/lldb/lldb-argdumper
 %{py_sitedir}/lldb/formatters
@@ -921,8 +928,8 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with ocaml}
 %files ocaml
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/ocaml/stublibs/dllllvm*.so
 %dir %{_libdir}/ocaml/llvm
-%attr(755,root,root) %{_libdir}/ocaml/llvm/dllllvm*.so
 %{_libdir}/ocaml/llvm/llvm*.cma
 %{_libdir}/ocaml/llvm/llvm*.cmi
 %{_libdir}/ocaml/META.llvm*
diff --git a/llvm-pld.patch b/llvm-pld.patch
index 01087c9..39122e8 100644
--- a/llvm-pld.patch
+++ b/llvm-pld.patch
@@ -1,6 +1,6 @@
---- llvm-4.0.1.src/tools/clang/lib/Driver/ToolChains.cpp.orig	2017-05-31 12:01:14.000000000 +0200
-+++ llvm-4.0.1.src/tools/clang/lib/Driver/ToolChains.cpp	2017-12-10 08:33:21.873800345 +0100
-@@ -1549,6 +1549,7 @@
+--- llvm-5.0.0.src.orig/tools/clang/lib/Driver/ToolChains/Gnu.cpp	2016-08-18 19:56:48.000000000 +0200
++++ llvm-5.0.0.src/tools/clang/lib/Driver/ToolChains/Gnu.cpp	2016-11-03 12:18:35.000000000 +0100
+@@ -1498,6 +1498,7 @@
  
    static const char *const X86_64LibDirs[] = {"/lib64", "/lib"};
    static const char *const X86_64Triples[] = {
@@ -42,35 +42,8 @@
        "s390x-linux-gnu", "s390x-unknown-linux-gnu", "s390x-ibm-linux-gnu",
        "s390x-suse-linux", "s390x-redhat-linux"};
  
-@@ -4112,7 +4115,7 @@
- 
-   Distro Distro(D.getVFS());
- 
--  if (Distro.IsOpenSUSE() || Distro.IsUbuntu()) {
-+  if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsPLD()) {
-     ExtraOpts.push_back("-z");
-     ExtraOpts.push_back("relro");
-   }
-@@ -4132,7 +4135,7 @@
-   // ABI requires a mapping between the GOT and the symbol table.
-   // Android loader does not support .gnu.hash.
-   if (!IsMips && !IsAndroid) {
--    if (Distro.IsRedhat() || Distro.IsOpenSUSE() ||
-+    if (Distro.IsRedhat() || Distro.IsOpenSUSE() || Distro.IsPLD() ||
-         (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick))
-       ExtraOpts.push_back("--hash-style=gnu");
- 
-@@ -4141,7 +4144,7 @@
-       ExtraOpts.push_back("--hash-style=both");
-   }
- 
--  if (Distro.IsRedhat() && Distro != Distro::RHEL5 && Distro != Distro::RHEL6)
-+  if ((Distro.IsRedhat() && Distro != Distro::RHEL5 && Distro != Distro::RHEL6) || Distro.IsPLD())
-     ExtraOpts.push_back("--no-add-needed");
- 
- #ifdef ENABLE_LINKER_BUILD_ID
---- llvm-4.0.1.src/tools/clang/include/clang/Driver/Distro.h.orig	2016-11-28 22:11:14.000000000 +0100
-+++ llvm-4.0.1.src/tools/clang/include/clang/Driver/Distro.h	2017-12-10 08:31:15.017135111 +0100
+--- llvm-5.0.0.src/tools/clang/include/clang/Driver/Distro.h.orig	2017-05-04 14:46:38.000000000 +0200
++++ llvm-5.0.0.src/tools/clang/include/clang/Driver/Distro.h	2017-12-01 22:44:57.785429043 +0100
 @@ -27,6 +27,7 @@
      // in this enum, because some tests are done by integer comparison against
      // the first and last known member in the family, e.g. IsRedHat().
@@ -79,22 +52,20 @@
      DebianLenny,
      DebianSqueeze,
      DebianWheezy,
-@@ -112,7 +113,11 @@
-   bool IsUbuntu() const {
-     return DistroVal >= UbuntuHardy && DistroVal <= UbuntuZesty;
+@@ -114,6 +115,10 @@
+     return DistroVal >= UbuntuHardy && DistroVal <= UbuntuArtful;
    }
-- 
-+
-+  bool IsPLD() const {
+ 
++  bool IsPLD() {
 +    return DistroVal == PLDLinux;
 +  }
 +
    /// @}
  };
  
---- llvm-4.0.1.src/tools/clang/lib/Driver/Distro.cpp.orig	2016-11-28 22:11:18.000000000 +0100
-+++ llvm-4.0.1.src/tools/clang/lib/Driver/Distro.cpp	2017-12-10 08:32:15.883801082 +0100
-@@ -128,6 +128,9 @@
+--- llvm-5.0.0.src/tools/clang/lib/Driver/Distro.cpp.orig	2017-05-04 14:46:38.000000000 +0200
++++ llvm-5.0.0.src/tools/clang/lib/Driver/Distro.cpp	2017-12-01 22:47:15.155427475 +0100
+@@ -129,6 +129,9 @@
    if (VFS.exists("/etc/arch-release"))
      return Distro::ArchLinux;
  
@@ -104,3 +75,32 @@
    return Distro::UnknownDistro;
  }
  
+--- llvm-5.0.0.src/tools/clang/lib/Driver/ToolChains/Linux.cpp.orig	2017-12-01 22:14:03.462116884 +0100
++++ llvm-5.0.0.src/tools/clang/lib/Driver/ToolChains/Linux.cpp	2017-12-01 22:51:38.678757801 +0100
+@@ -210,7 +210,7 @@
+ 
+   Distro Distro(D.getVFS());
+ 
+-  if (Distro.IsOpenSUSE() || Distro.IsUbuntu()) {
++  if (Distro.IsOpenSUSE() || Distro.IsUbuntu() || Distro.IsPLD()) {
+     ExtraOpts.push_back("-z");
+     ExtraOpts.push_back("relro");
+   }
+@@ -232,7 +232,7 @@
+   // Android loader does not support .gnu.hash.
+   // Hexagon linker/loader does not support .gnu.hash
+   if (!IsMips && !IsAndroid && !IsHexagon) {
+-    if (Distro.IsRedhat() || Distro.IsOpenSUSE() ||
++    if (Distro.IsRedhat() || Distro.IsOpenSUSE() || Distro.IsPLD() ||
+         (Distro.IsUbuntu() && Distro >= Distro::UbuntuMaverick))
+       ExtraOpts.push_back("--hash-style=gnu");
+ 
+@@ -241,7 +241,7 @@
+       ExtraOpts.push_back("--hash-style=both");
+   }
+ 
+-  if (Distro.IsRedhat() && Distro != Distro::RHEL5 && Distro != Distro::RHEL6)
++  if ((Distro.IsRedhat() && Distro != Distro::RHEL5 && Distro != Distro::RHEL6) || Distro.IsPLD())
+     ExtraOpts.push_back("--no-add-needed");
+ 
+ #ifdef ENABLE_LINKER_BUILD_ID
diff --git a/x32-gcc-toolchain.patch b/x32-gcc-toolchain.patch
index fffe393..701d570 100644
--- a/x32-gcc-toolchain.patch
+++ b/x32-gcc-toolchain.patch
@@ -1,5 +1,5 @@
---- llvm-3.6.2.src/tools/clang/lib/Driver/ToolChains.cpp~	2015-07-26 12:48:18.000000000 +0200
-+++ llvm-3.6.2.src/tools/clang/lib/Driver/ToolChains.cpp	2015-07-26 17:44:56.883613971 +0200
+--- llvm-5.0.0.src/tools/clang/lib/Driver/ToolChains/Gnu.cpp~	2015-07-26 12:48:18.000000000 +0200
++++ llvm-5.0.0.src/tools/clang/lib/Driver/ToolChains/Gnu.cpp	2015-07-26 17:44:56.883613971 +0200
 @@ -1312,6 +1312,9 @@
        "x86_64-slackware-linux", "x86_64-linux-android",
        "x86_64-unknown-linux"};
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/llvm.git/commitdiff/8e9fbe9e8a92de3b9084d5e98199b334f5723287



More information about the pld-cvs-commit mailing list