The package rpms/llvm13.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/llvm13.git/commit/?id=b994a3d946b....
Change:
+%ifarch %{arm}
Thanks.
Full change:
============
commit b7f99d9382ae67aae923c6fefc41147c1d2b5f0b
Author: Tom Stellard <tstellar(a)redhat.com>
Date: Wed Mar 30 04:33:17 2022 +0000
Add 13.0.1 sources
diff --git a/.gitignore b/.gitignore
index 68b6dd2..98bed22 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,4 @@
/llvm-13.0.0rc1.src.tar.xz
/llvm-13.0.0rc1.src.tar.xz.sig
+/llvm-13.0.1.src.tar.xz
+/llvm-13.0.1.src.tar.xz.sig
diff --git a/sources b/sources
index 8c90ee1..59bc758 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (llvm-13.0.0rc1.src.tar.xz) =
307d8162f905b92e33f27c7a75f78d1020a63c24a13d4befa4dd7b6ed90607919183919df9a626f705935dfccce3d36c2b99b9575bfc6f23f8df115374fa6823
-SHA512 (llvm-13.0.0rc1.src.tar.xz.sig) =
6b49f7b96a5ee0634d328cfaa6d47820cf89ee3363553670b46c7d3c071c3f624ee10f663315f31c03965a43177baccaaa0e88a75b4cfadeb3783b1d83c850b3
+SHA512 (llvm-13.0.1.src.tar.xz) =
05fbe8708ac3d0dfef3a9135ee88185a95ed492095429a97d33b8aadb0187e59ad42d1a7184f02b5c84fdd31f3d7227c65bd292ed0aa039b29522e59cf90a965
+SHA512 (llvm-13.0.1.src.tar.xz.sig) =
0db0076fee269faa477ff7ff42c3ef5bd24cb3816219bbc093080fd4f7516e5414dc0f686325761ff57255d91307cd3f4dbba9066ea7cd69fb819a856f05bde8
commit b994a3d946bedfcfa4984418d2a6a6135945a1b1
Author: Timm Bäder <tbaeder(a)redhat.com>
Date: Mon Feb 28 08:21:49 2022 +0100
Update to 13.0.1
diff --git a/0001-Disable-CrashRecoveryTest.DumpStackCleanup-test-on-a.patch
b/0001-Disable-CrashRecoveryTest.DumpStackCleanup-test-on-a.patch
new file mode 100644
index 0000000..1ddfb0c
--- /dev/null
+++ b/0001-Disable-CrashRecoveryTest.DumpStackCleanup-test-on-a.patch
@@ -0,0 +1,35 @@
+From 3df079ae29426b4bee3ca11681a41958d72b983a Mon Sep 17 00:00:00 2001
+From: Nikita Popov <npopov(a)redhat.com>
+Date: Mon, 31 Jan 2022 10:33:27 +0100
+Subject: [PATCH] Disable CrashRecoveryTest.DumpStackCleanup test on aarch64
+
+Produces a non-reproducible failure on aarch64:
+https://bugzilla.redhat.com/show_bug.cgi?id=2048440
+---
+ llvm/unittests/Support/CrashRecoveryTest.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/llvm/unittests/Support/CrashRecoveryTest.cpp
b/llvm/unittests/Support/CrashRecoveryTest.cpp
+index e95513eb2841..afb1d3a1f6a2 100644
+--- a/llvm/unittests/Support/CrashRecoveryTest.cpp
++++ b/llvm/unittests/Support/CrashRecoveryTest.cpp
+@@ -76,6 +76,7 @@ TEST(CrashRecoveryTest, Cleanup) {
+ llvm::CrashRecoveryContext::Disable();
+ }
+
++#ifndef __aarch64__
+ TEST(CrashRecoveryTest, DumpStackCleanup) {
+ SmallString<128> Filename;
+ std::error_code EC = sys::fs::createTemporaryFile("crash", "test",
Filename);
+@@ -101,6 +102,7 @@ TEST(CrashRecoveryTest, DumpStackCleanup) {
+ EXPECT_EQ(GlobalInt, 1);
+ llvm::CrashRecoveryContext::Disable();
+ }
++#endif
+
+ TEST(CrashRecoveryTest, LimitedStackTrace) {
+ std::string Res;
+--
+2.34.1
+
+
diff --git a/0001-XFAIL-missing-abstract-variable.ll-test-on-ppc64le.patch
b/0001-XFAIL-missing-abstract-variable.ll-test-on-ppc64le.patch
new file mode 100644
index 0000000..1866a66
--- /dev/null
+++ b/0001-XFAIL-missing-abstract-variable.ll-test-on-ppc64le.patch
@@ -0,0 +1,33 @@
+From 9320ffeda3915c8f7be744c983a3470a89107bd7 Mon Sep 17 00:00:00 2001
+From: Tom Stellard <tstellar(a)redhat.com>
+Date: Tue, 14 Sep 2021 20:21:20 -0700
+Subject: [PATCH] XFAIL missing-abstract-variable.ll test on ppc64le
+
+It's seems the strategy with this test is to XFAIL it on all
+architectures that it fails on. I wonder if we should be passing
+it a specific triple? Also, from what I can tell, this tests only
+runs when llvm is configured with LLVM_DEFAULT_TARGET_TRIPLE set
+to a non-empty value, which is why it may not fail in every build
+configuration.
+
+Differential Revision:
https://reviews.llvm.org/D109806
+---
+ llvm/test/DebugInfo/Generic/missing-abstract-variable.ll | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/llvm/test/DebugInfo/Generic/missing-abstract-variable.ll
b/llvm/test/DebugInfo/Generic/missing-abstract-variable.ll
+index bd0de60268b6..cc5d56b0c512 100644
+--- a/llvm/test/DebugInfo/Generic/missing-abstract-variable.ll
++++ b/llvm/test/DebugInfo/Generic/missing-abstract-variable.ll
+@@ -4,7 +4,7 @@
+ ; powerpc64 (and on x86_64 at at least -O2). Presumably this is a SelectionDAG
+ ; issue.
+ ; FIXME: arm64 is an alias for aarch64 on macs, apparently?
+-; XFAIL: powerpc64, aarch64, arm64, hexagon
++; XFAIL: powerpc64, aarch64, arm64, hexagon, ppc64le
+
+ ; Build from the following source with clang -O2.
+
+--
+2.31.1
+
diff --git a/llvm13.spec b/llvm13.spec
index 5e6ba0b..70468b8 100644
--- a/llvm13.spec
+++ b/llvm13.spec
@@ -1,3 +1,8 @@
+# We are building with clang for faster/lower memory LTO builds.
+# See
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_compiler_macros
+%global toolchain clang
+%global _lto_cflags %{nil}
+
# Components enabled if supported by target architecture:
%define gold_arches %{ix86} x86_64 %{arm} aarch64 %{power64} s390x
%ifarch %{gold_arches}
@@ -7,14 +12,17 @@
%endif
%bcond_without compat_build
+%bcond_without check
%global llvm_libdir %{_libdir}/%{name}
%global build_llvm_libdir %{buildroot}%{llvm_libdir}
-%global rc_ver 1
+#global rc_ver 1
%global maj_ver 13
%global min_ver 0
-%global patch_ver 0
-%global abi_revision 0
+%global patch_ver 1
+%if !%{maj_ver} && 0%{?rc_ver}
+%global abi_revision 2
+%endif
%global llvm_srcdir llvm-%{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:rc%{rc_ver}}.src
%if %{with compat_build}
@@ -51,9 +59,17 @@
%global _dwz_low_mem_die_limit_s390x 1
%global _dwz_max_die_limit_s390x 1000000
+%ifarch %{arm}
+# koji overrides the _gnu variable to be gnu, which is not correct for clang, so
+# we need to hard-code the correct triple here.
+%global llvm_triple armv7l-redhat-linux-gnueabihf
+%else
+%global llvm_triple %{_host}
+%endif
+
Name: %{pkg_name}
Version: %{maj_ver}.%{min_ver}.%{patch_ver}%{?rc_ver:~rc%{rc_ver}}
-Release: 2%{?dist}
+Release: 1%{?dist}
Summary: The Low Level Virtual Machine
License: NCSA
@@ -67,12 +83,15 @@ Source3: run-lit-tests
Source4: lit.fedora.cfg.py
%endif
+%if 0%{?abi_revision}
Patch0: 0001-cmake-Allow-shared-libraries-to-customize-the-soname.patch
-# This has been backported to release/13.x and should be in 13.0.0-rc2
-Patch1: 0001-test-Fix-tools-gold-X86-comdat-nodeduplicate.ll-on-n.patch
+%endif
+Patch1: 0001-XFAIL-missing-abstract-variable.ll-test-on-ppc64le.patch
+Patch2: 0001-Disable-CrashRecoveryTest.DumpStackCleanup-test-on-a.patch
BuildRequires: gcc
BuildRequires: gcc-c++
+BuildRequires: clang
BuildRequires: cmake
BuildRequires: ninja-build
BuildRequires: zlib-devel
@@ -91,7 +110,7 @@ BuildRequires: valgrind-devel
%endif
# LLVM's LineEditor library will use libedit if it is available.
BuildRequires: libedit-devel
-# We need python3-devel for pathfix.py.
+# We need python3-devel for %%py3_shebang_fix
BuildRequires: python3-devel
BuildRequires: python3-setuptools
@@ -184,22 +203,13 @@ LLVM's modified googletest sources.
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}'
--data='%{SOURCE0}'
%autosetup -n %{llvm_srcdir} -p2
-pathfix.py -i %{__python3} -pn \
+%py3_shebang_fix \
test/BugPoint/compile-custom.ll.py \
tools/opt-viewer/*.py \
utils/update_cc_test_checks.py
%build
-# Disable LTO on s390x, this causes some test failures:
-# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.Authenticated
-# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.PATCHPOINT
-# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.STACKMAP
-# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.TLSDESC_CALLSEQ
-# On X86_64, LTO builds of TableGen crash. This can be reproduced by:
-# %%cmake_build --target include/llvm/IR/IntrinsicsAArch64.h
-# Because of these failures, lto is disabled for now.
-%global _lto_cflags %{nil}
%ifarch s390 s390x %{arm} %ix86
# Decrease debuginfo verbosity to reduce memory consumption during final library linking
@@ -207,7 +217,7 @@ pathfix.py -i %{__python3} -pn \
%endif
# force off shared libs as cmake macros turns it on.
-%cmake -G Ninja \
+%cmake -G Ninja \
-DBUILD_SHARED_LIBS:BOOL=OFF \
-DLLVM_PARALLEL_LINK_JOBS=1 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
@@ -242,7 +252,7 @@ pathfix.py -i %{__python3} -pn \
\
-DLLVM_INCLUDE_TESTS:BOOL=ON \
-DLLVM_BUILD_TESTS:BOOL=ON \
- -DLLVM_LIT_EXTRA_ARGS=-v \
+ -DLLVM_LIT_EXTRA_ARGS=-v \
\
-DLLVM_INCLUDE_EXAMPLES:BOOL=ON \
-DLLVM_BUILD_EXAMPLES:BOOL=OFF \
@@ -261,17 +271,21 @@ pathfix.py -i %{__python3} -pn \
-DLLVM_ENABLE_SPHINX:BOOL=ON \
-DLLVM_ENABLE_DOXYGEN:BOOL=OFF \
\
+%if %{without compat_build}
-DLLVM_VERSION_SUFFIX='' \
+%endif
-DLLVM_BUILD_LLVM_DYLIB:BOOL=ON \
-DLLVM_LINK_LLVM_DYLIB:BOOL=ON \
-DLLVM_BUILD_EXTERNAL_COMPILER_RT:BOOL=ON \
-DLLVM_INSTALL_TOOLCHAIN_ONLY:BOOL=OFF \
- -DLLVM_ABI_REVISION=%{abi_revision} \
+ %{?abi_revision:-DLLVM_ABI_REVISION=%{abi_revision}} \
\
+ -DLLVM_DEFAULT_TARGET_TRIPLE=%{llvm_triple} \
-DSPHINX_WARNINGS_AS_ERRORS=OFF \
-DCMAKE_INSTALL_PREFIX=%{install_prefix} \
-DLLVM_INSTALL_SPHINX_HTML_DIR=%{_pkgdocdir}/html \
- -DSPHINX_EXECUTABLE=%{_bindir}/sphinx-build-3
+ -DSPHINX_EXECUTABLE=%{_bindir}/sphinx-build-3 \
+ -DLLVM_INCLUDE_BENCHMARKS=OFF
# Build libLLVM.so first. This ensures that when libLLVM.so is linking, there
# are no other compile jobs running. This will help reduce OOM errors on the
@@ -328,7 +342,7 @@ cp -R utils/UpdateTestChecks %{install_srcdir}/utils/
%if %{with gold}
# Add symlink to lto plugin in the binutils plugin directory.
%{__mkdir_p} %{buildroot}%{_libdir}/bfd-plugins/
-ln -s %{_libdir}/LLVMgold.so %{buildroot}%{_libdir}/bfd-plugins/
+ln -s -t %{buildroot}%{_libdir}/bfd-plugins/ ../LLVMgold.so
%endif
%else
@@ -406,8 +420,10 @@ rm test/tools/llvm-readobj/ELF/dependent-libraries.test
# non reproducible errors
rm test/tools/dsymutil/X86/swift-interface.test
+%if %{with check}
# FIXME: use %%cmake_build instead of %%__ninja
LD_LIBRARY_PATH=%{buildroot}/%{pkg_libdir} %{__ninja} check-all -C %{_vpath_builddir}
+%endif
%endif
@@ -459,6 +475,7 @@ fi
%{_libdir}/bfd-plugins/LLVMgold.so
%endif
%{_libdir}/libLLVM-%{maj_ver}.%{min_ver}*.so
+%{_libdir}/libLLVM-%{maj_ver}.so%{?abi_revision:.%{abi_revision}}
%{_libdir}/libLTO.so*
%else
%config(noreplace) %{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
@@ -467,7 +484,6 @@ fi
%endif
%{pkg_libdir}/libLLVM-%{maj_ver}.%{min_ver}*.so
%{pkg_libdir}/libLTO.so*
-%{pkg_libdir}/libLLVM-%{maj_ver}.so.%{abi_revision}
%exclude %{pkg_libdir}/libLTO.so
%endif
%{pkg_libdir}/libRemarks.so*
@@ -528,9 +544,60 @@ fi
%endif
%changelog
-* Thu Jan 20 2022 Fedora Release Engineering <releng(a)fedoraproject.org> -
13.0.0~rc1-2
+* Wed Feb 02 2022 Nikita Popov <npopov(a)redhat.com> - 13.0.1-1
+- Update to LLVM 13.0.1 final
+
+* Tue Jan 25 2022 Nikita Popov <npopov(a)redhat.com> - 13.0.1~rc3-1
+- Update to LLVM 13.0.1rc3
+
+* Thu Jan 20 2022 Fedora Release Engineering <releng(a)fedoraproject.org> -
13.0.1~rc2-2
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
+* Thu Jan 13 2022 Nikita Popov <npopov(a)redhat.com> - 13.0.1~rc2-1
+- Update to LLVM 13.0.1rc2
+
+* Mon Jan 10 2022 Nikita Popov <npopov(a)redhat.com> - 13.0.1~rc1-1
+- Upstream 13.0.1 rc1 release
+
+* Sat Jan 08 2022 Miro Hrončok <mhroncok(a)redhat.com> - 13.0.0-8
+- Rebuilt for
https://fedoraproject.org/wiki/Changes/LIBFFI34
+
+* Thu Nov 11 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0-7
+- Enable lto on s390x and arm
+
+* Mon Oct 25 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0-6
+- Build with Thin LTO
+
+* Mon Oct 18 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0-5
+- Build with clang
+
+* Fri Oct 08 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0-4
+- Fix default triple on arm
+
+* Wed Oct 06 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0-3
+- Set default triple
+
+* Mon Oct 04 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0-2
+- Drop abi_revision from soname
+
+* Thu Sep 30 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0-1
+- 13.0.0 Release
+
+* Thu Sep 30 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0~rc4-2
+- Restore config.guess for host triple detection
+
+* Fri Sep 24 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0~rc4-1
+- 13.0.0-rc4 Release
+
+* Fri Sep 17 2021 Tom Stellard <tstellar(a)redhta.com> - 13.0.0~rc3-1
+- 13.0.0-rc3 Release
+
+* Mon Sep 13 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0~rc1-3
+- Pass LLVM_DEFAULT_TARGET_TRIPLE to cmake
+
+* Mon Sep 13 2021 Konrad Kleine <kkleine(a)redhat.com> - 13.0.0~rc1-2
+- Add --without=check option
+
* Wed Aug 04 2021 Tom Stellard <tstellar(a)redhat.com> - 13.0.0~rc1-1
- 13.0.0-rc1 Release