diff --git a/.gitignore b/.gitignore index 9862579..82d969f 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,6 @@ /cfe-6.0.1.src.tar.xz /clang-tools-extra-6.0.1.src.tar.xz /test-suite-6.0.1.src.tar.xz +/cfe-7.0.0rc1.src.tar.xz +/test-suite-7.0.0rc1.src.tar.xz +/clang-tools-extra-7.0.0rc1.src.tar.xz diff --git a/0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch b/0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch index 1b9d0e0..b9d0aee 100644 --- a/0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch +++ b/0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch @@ -1,4 +1,4 @@ -From 69d981a5d41d481556bd38f8d668d7f1177ac2b4 Mon Sep 17 00:00:00 2001 +From d84a971ba917569829b51fff6057e5fd0d85e402 Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Thu, 18 Jan 2018 02:57:51 +0000 Subject: [PATCH] Driver: Prefer vendor supplied gcc toolchain @@ -19,28 +19,27 @@ Subscribers: srhines, cfe-commits Differential Revision: https://reviews.llvm.org/D42608 --- - lib/Driver/ToolChains/Gnu.cpp | 45 ++++++++++++++++++++++--------------------- - 1 file changed, 23 insertions(+), 22 deletions(-) + lib/Driver/ToolChains/Gnu.cpp | 47 ++++++++++++++++++++++--------------------- + 1 file changed, 24 insertions(+), 23 deletions(-) diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp -index 7845781..9cec316 100644 +index 3755673..5a49a6e 100644 --- a/lib/Driver/ToolChains/Gnu.cpp +++ b/lib/Driver/ToolChains/Gnu.cpp -@@ -1709,8 +1709,8 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const { +@@ -1811,18 +1811,19 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes( // lifetime or initialization issues. static const char *const AArch64LibDirs[] = {"/lib64", "/lib"}; static const char *const AArch64Triples[] = { -- "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-linux-android", -- "aarch64-redhat-linux", "aarch64-suse-linux"}; +- "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-redhat-linux", +- "aarch64-suse-linux"}; + "aarch64-redhat-linux", "aarch64-suse-linux", -+ "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-linux-android"}; ++ "aarch64-none-linux-gnu", "aarch64-linux-gnu"}; static const char *const AArch64beLibDirs[] = {"/lib"}; static const char *const AArch64beTriples[] = {"aarch64_be-none-linux-gnu", "aarch64_be-linux-gnu"}; -@@ -1718,10 +1718,11 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const { + static const char *const ARMLibDirs[] = {"/lib"}; - static const char *const ARMTriples[] = {"arm-linux-gnueabi", - "arm-linux-androideabi"}; + static const char *const ARMTriples[] = {"arm-linux-gnueabi"}; - static const char *const ARMHFTriples[] = {"arm-linux-gnueabihf", - "armv7hl-redhat-linux-gnueabi", + static const char *const ARMHFTriples[] = {"armv7hl-redhat-linux-gnueabi", @@ -50,9 +49,9 @@ index 7845781..9cec316 100644 + "arm-linux-gnueabihf", + }; static const char *const ARMebLibDirs[] = {"/lib"}; - static const char *const ARMebTriples[] = {"armeb-linux-gnueabi", - "armeb-linux-androideabi"}; -@@ -1730,19 +1731,19 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const { + static const char *const ARMebTriples[] = {"armeb-linux-gnueabi"}; + static const char *const ARMebHFTriples[] = { +@@ -1830,19 +1831,19 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes( static const char *const X86_64LibDirs[] = {"/lib64", "/lib"}; static const char *const X86_64Triples[] = { @@ -60,28 +59,29 @@ index 7845781..9cec316 100644 - "x86_64-pc-linux-gnu", "x86_64-redhat-linux6E", - "x86_64-redhat-linux", "x86_64-suse-linux", - "x86_64-manbo-linux-gnu", "x86_64-linux-gnu", -- "x86_64-slackware-linux", "x86_64-linux-android", +- "x86_64-slackware-linux", "x86_64-unknown-linux", +- "x86_64-amazon-linux"}; + "x86_64-redhat-linux6E", "x86_64-redhat-linux", + "x86_64-suse-linux", "x86_64-slackware-linux", -+ "x86_64-manbo-linux-gnu", "x86_64-linux-gnu", -+ "x86_64-unknown-linux-gnu", "x86_64-pc-linux-gnu", -+ "x86_64-linux-gnu", "x86_64-linux-android", - "x86_64-unknown-linux"}; ++ "x86_64-manbo-linux-gnu", "x86_64-amazon-linux", ++ "x86_64-linux-gnu", "x86_64-unknown-linux-gnu", ++ "x86_64-pc-linux-gnu", "x86_64-linux-gnu", ++ "x86_64-unknown-linux"}; static const char *const X32LibDirs[] = {"/libx32"}; static const char *const X86LibDirs[] = {"/lib32", "/lib"}; static const char *const X86Triples[] = { - "i686-linux-gnu", "i686-pc-linux-gnu", "i486-linux-gnu", - "i386-linux-gnu", "i386-redhat-linux6E", "i686-redhat-linux", - "i586-redhat-linux", "i386-redhat-linux", "i586-suse-linux", -- "i486-slackware-linux", "i686-montavista-linux", "i686-linux-android", -+ "i386-redhat-linux6E", "i686-redhat-linux", "i586-redhat-linuxll", +- "i486-slackware-linux", "i686-montavista-linux", "i586-linux-gnu"}; ++ "i386-redhat-linux6E", "i686-redhat-linux", "i586-redhat-linux", + "i386-redhat-linux", "i586-suse-linux", "i486-slackware-linux", + "i686-montavista-linux", "i686-linux-gnu", "i686-pc-linux-gnu", -+ "i486-linux-gnu", "i386-linux-gnu", "i686-linux-android", - "i586-linux-gnu"}; ++ "i486-linux-gnu", "i386-linux-gnu", "i586-linux-gnu"}; static const char *const MIPSLibDirs[] = {"/lib"}; -@@ -1772,16 +1773,16 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const { + static const char *const MIPSTriples[] = {"mips-linux-gnu", "mips-mti-linux", +@@ -1864,16 +1865,16 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes( static const char *const PPCLibDirs[] = {"/lib32", "/lib"}; static const char *const PPCTriples[] = { @@ -102,9 +102,9 @@ index 7845781..9cec316 100644 + "powerpc64le-suse-linux", "ppc64le-redhat-linux", + "powerpc64le-linux-gnu", "powerpc64le-unknown-linux-gnu"}; - static const char *const SPARCv8LibDirs[] = {"/lib32", "/lib"}; - static const char *const SPARCv8Triples[] = {"sparc-linux-gnu", -@@ -1792,8 +1793,8 @@ bool Generic_GCC::GCCInstallationDetector::getBiarchSibling(Multilib &M) const { + static const char *const RISCV32LibDirs[] = {"/lib", "/lib32"}; + static const char *const RISCVTriples[] = {"riscv32-unknown-linux-gnu", +@@ -1889,8 +1890,8 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes( static const char *const SystemZLibDirs[] = {"/lib64", "/lib"}; static const char *const SystemZTriples[] = { @@ -113,8 +113,8 @@ index 7845781..9cec316 100644 + "s390x-ibm-linux-gnu", "s390x-suse-linux", "s390x-redhat-linux", + "s390x-linux-gnu", "s390x-unknown-linux-gnu"}; - // Solaris. - static const char *const SolarisSPARCLibDirs[] = {"/gcc"}; + + using std::begin; -- 1.8.3.1 diff --git a/0001-Merging-r338627.patch b/0001-Merging-r338627.patch new file mode 100644 index 0000000..1b87dee --- /dev/null +++ b/0001-Merging-r338627.patch @@ -0,0 +1,38 @@ +From ad0f01329b13171b2e066dafe306df3237ff1151 Mon Sep 17 00:00:00 2001 +From: Hans Wennborg +Date: Tue, 7 Aug 2018 06:57:36 +0000 +Subject: [PATCH] Merging r338627: + ------------------------------------------------------------------------ + r338627 | mgorny | 2018-08-01 22:38:22 +0200 (Wed, 01 Aug 2018) | 7 lines + +[test] Fix %hmaptool path for standalone builds + +Fix %hmaptool path to refer to clang_tools_dir instead of +llvm_tools_dir, in order to fix standalone builds. The tool is built +as part of clang, so it won't be found in installed LLVM tools. + +Differential Revision: https://reviews.llvm.org/D50156 +------------------------------------------------------------------------ + + +git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_70@339102 91177308-0d34-0410-b5e6-96231b3b80d8 +--- + test/lit.cfg.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/lit.cfg.py b/test/lit.cfg.py +index ad30988..c962b41 100644 +--- a/test/lit.cfg.py ++++ b/test/lit.cfg.py +@@ -71,7 +71,7 @@ llvm_config.add_tool_substitutions(tools, tool_dirs) + + config.substitutions.append( + ('%hmaptool', "'%s' %s" % (config.python_executable, +- os.path.join(config.llvm_tools_dir, 'hmaptool')))) ++ os.path.join(config.clang_tools_dir, 'hmaptool')))) + + # Plugins (loadable modules) + # TODO: This should be supplied by Makefile or autoconf. +-- +1.8.3.1 + diff --git a/clang.spec b/clang.spec index 0d4638e..eb1093a 100644 --- a/clang.spec +++ b/clang.spec @@ -1,8 +1,9 @@ %global compat_build 0 -%global maj_ver 6 +%global maj_ver 7 %global min_ver 0 -%global patch_ver 1 +%global patch_ver 0 +%global rc_ver 1 %global clang_tools_binaries \ %{_bindir}/clangd \ @@ -18,15 +19,17 @@ %global clang_binaries \ %{_bindir}/clang \ %{_bindir}/clang++ \ - %{_bindir}/clang-%{maj_ver}.%{min_ver} \ - %{_bindir}/clang++-%{maj_ver}.%{min_ver} \ + %{_bindir}/clang-%{maj_ver} \ + %{_bindir}/clang++-%{maj_ver} \ %{_bindir}/clang-check \ %{_bindir}/clang-cl \ %{_bindir}/clang-cpp \ %{_bindir}/clang-format \ %{_bindir}/clang-func-mapping \ %{_bindir}/clang-import-test \ - %{_bindir}/clang-offload-bundler + %{_bindir}/clang-offload-bundler \ + %{_bindir}/diagtool \ + %{_bindir}/hmaptool %if 0%{?compat_build} %global pkg_name clang%{maj_ver}.%{min_ver} @@ -56,12 +59,12 @@ Name: %pkg_name Version: %{maj_ver}.%{min_ver}.%{patch_ver} -Release: 3%{?dist} +Release: 0.1.rc%{rc_ver}%{?dist} Summary: A C language family front-end for LLVM License: NCSA URL: http://llvm.org -Source0: http://llvm.org/releases/%{version}/%{clang_srcdir}.tar.xz +Source0: http://%{?rc_ver:pre}releases.llvm.org/%{version}/%{?rc_ver:rc%{rc_ver}}/%{clang_srcdir}.tar.xz %if !0%{?compat_build} Source1: http://llvm.org/releases/%{version}/%{clang_tools_srcdir}.tar.xz Source2: http://llvm.org/releases/%{version}/%{test_suite_srcdir}.tar.xz @@ -72,6 +75,8 @@ Source100: clang-config.h Patch0: 0001-lit.cfg-Add-hack-so-lit-can-find-not-and-FileCheck.patch Patch1: 0001-GCC-compatibility-Ignore-fstack-clash-protection.patch Patch2: 0001-Driver-Prefer-vendor-supplied-gcc-toolchain.patch +# This was merged into the release_70 branch after 7.0.0-rc1 +Patch3: 0001-Merging-r338627.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -109,6 +114,7 @@ BuildRequires: tcl BuildRequires: python2-virtualenv BuildRequires: libstdc++-static BuildRequires: python3-sphinx +BuildRequires: libatomic Requires: %{name}-libs%{?_isa} = %{version}-%{release} @@ -207,6 +213,7 @@ Requires: python2 %patch0 -p1 -b .lit-search-path %patch1 -p1 -b .fstack-clash-protection %patch2 -p1 -b .vendor-gcc +%patch3 -p1 -b .hmap-path-fix mv ../%{clang_tools_srcdir} tools/extra %endif @@ -310,7 +317,7 @@ rm -Rvf %{buildroot}%{_pkgdocdir} rm -vf %{buildroot}%{_datadir}/clang/bash-autocomplete.sh # Add clang++-{version} sylink -ln -s %{_bindir}/clang++ %{buildroot}%{_bindir}/clang++-%{maj_ver}.%{min_ver} +ln -s %{_bindir}/clang++ %{buildroot}%{_bindir}/clang++-%{maj_ver} %endif @@ -343,6 +350,7 @@ make %{?_smp_mflags} check || : %{clang_binaries} %{_bindir}/c-index-test %{_mandir}/man1/clang.1.gz +%{_mandir}/man1/diagtool.1.gz %{_emacs_sitestartdir}/clang-format.el %{_datadir}/clang/clang-format.py* %{_datadir}/clang/clang-format-diff.py* @@ -401,6 +409,9 @@ make %{?_smp_mflags} check || : %endif %changelog +* Mon Aug 13 2018 Tom Stellard - 7.0.0-0.1.rc1 +- 7.0.0-rc1 Release + * Mon Jul 23 2018 Tom Stellard - 6.0.1-3 - Sync spec file with the clang6.0 package diff --git a/sources b/sources index 4af33bc..d6bcc69 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (cfe-6.0.1.src.tar.xz) = f64ba9290059f6e36fee41c8f32bf483609d31c291fcd2f77d41fecfdf3c8233a5e23b93a1c73fed03683823bd6e72757ed993dd32527de3d5f2b7a64bb031b9 -SHA512 (clang-tools-extra-6.0.1.src.tar.xz) = cf29d117b6dabcb7a8e5f6dab5016ce5a5c8f475679001a43fd5c935f2c368f37cdef50aae2080a1e4524f647f6d83458d4a5dec5b45d03fb374f463caf7c3f5 -SHA512 (test-suite-6.0.1.src.tar.xz) = 32a4d00be14eff8209688427f2883a23a3a64403eb2daa0aa8aa940fcb05b4e546000d44896a0b9dd9225b5590cf61bc549c212db7ff1be29c274d08e2969fac +SHA512 (cfe-7.0.0rc1.src.tar.xz) = 97d8775c36c0883861d6b0732451c3d431d30dbe39d405b2755d87a4d8d217fafea7becd31765dca8d5b7ae0dc33785ada10c6f60331a70d5294b22f00242cd0 +SHA512 (test-suite-7.0.0rc1.src.tar.xz) = fbfeefdd27ff9e8e323214a77fd34bc661f7869b62188d8fe86308396ca2dedb757dd3b8f00d4c3978f727ba35b64797832dcfadff9882a7418b2aa74616aca8 +SHA512 (clang-tools-extra-7.0.0rc1.src.tar.xz) = a7d467b714731f54ed08019b698f7e301060ca84f0fcb23494c374a0d3b6e9d4d3f3bfd62ed83888574a29aff3fb5a718b5af85f59abd49a2683dbb543c7e033