From 84a2b56c53dbd57db3693248490965e71de0de14767c3b64af6b0cb55fe1aee5 Mon Sep 17 00:00:00 2001 From: Aaron Puchert Date: Thu, 19 Dec 2024 19:53:57 +0000 Subject: [PATCH] - Update to version 19.1.6. * This release contains bug-fixes for the LLVM 19.1.0 release. This release is API and ABI compatible with 19.1.0. - Rebase llvm-do-not-install-static-libraries.patch. OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm19?expand=0&rev=15 --- .gitattributes | 23 + .gitignore | 1 + _constraints | 43 + assume-opensuse.patch | 34 + baselibs.conf | 2 + check-no-llvm-exegesis.patch | 10 + clang-19.1.3.src.tar.xz | 3 + clang-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes clang-19.1.4.src.tar.xz | 3 + clang-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes clang-19.1.5.src.tar.xz | 3 + clang-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes clang-19.1.6.src.tar.xz | 3 + clang-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes clang-docs-19.1.3.src.tar.xz | 3 + clang-docs-19.1.4.src.tar.xz | 3 + clang-docs-19.1.5.src.tar.xz | 3 + clang-docs-19.1.6.src.tar.xz | 3 + clang-fix-modules-test-riscv.patch | 14 + clang-fix-openmp-test-non-x86.patch | 35 + clang-fix-openmp-test.patch | 10 + clang-resourcedirs.patch | 13 + clang-shlib-symbol-versioning.patch | 26 + clang-tools-extra-19.1.3.src.tar.xz | 3 + clang-tools-extra-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes clang-tools-extra-19.1.4.src.tar.xz | 3 + clang-tools-extra-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes clang-tools-extra-19.1.5.src.tar.xz | 3 + clang-tools-extra-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes clang-tools-extra-19.1.6.src.tar.xz | 3 + clang-tools-extra-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes cmake-19.1.3.src.tar.xz | 3 + cmake-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes cmake-19.1.4.src.tar.xz | 3 + cmake-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes cmake-19.1.5.src.tar.xz | 3 + cmake-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes cmake-19.1.6.src.tar.xz | 3 + cmake-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes compact_unwind_encoding.h | 477 +++ compiler-rt-19.1.3.src.tar.xz | 3 + compiler-rt-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes compiler-rt-19.1.4.src.tar.xz | 3 + compiler-rt-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes compiler-rt-19.1.5.src.tar.xz | 3 + compiler-rt-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes compiler-rt-19.1.6.src.tar.xz | 3 + compiler-rt-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes default-to-i586.patch | 15 + libcxx-19.1.3.src.tar.xz | 3 + libcxx-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes libcxx-19.1.4.src.tar.xz | 3 + libcxx-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes libcxx-19.1.5.src.tar.xz | 3 + libcxx-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes libcxx-19.1.6.src.tar.xz | 3 + libcxx-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes libcxx-test-library-path.patch | 15 + libcxxabi-19.1.3.src.tar.xz | 3 + libcxxabi-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes libcxxabi-19.1.4.src.tar.xz | 3 + libcxxabi-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes libcxxabi-19.1.5.src.tar.xz | 3 + libcxxabi-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes libcxxabi-19.1.6.src.tar.xz | 3 + libcxxabi-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes link-clang-shared.patch | 58 + link-clang-tools-extra-shared.patch | 62 + lld-19.1.3.src.tar.xz | 3 + lld-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes lld-19.1.4.src.tar.xz | 3 + lld-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes lld-19.1.5.src.tar.xz | 3 + lld-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes lld-19.1.6.src.tar.xz | 3 + lld-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes lldb-19.1.3.src.tar.xz | 3 + lldb-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes lldb-19.1.4.src.tar.xz | 3 + lldb-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes lldb-19.1.5.src.tar.xz | 3 + lldb-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes lldb-19.1.6.src.tar.xz | 3 + lldb-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes lldb-cmake.patch | 13 + llvm-19.1.3.src.tar.xz | 3 + llvm-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes llvm-19.1.4.src.tar.xz | 3 + llvm-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes llvm-19.1.5.src.tar.xz | 3 + llvm-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes llvm-19.1.6.src.tar.xz | 3 + llvm-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes llvm-do-not-install-static-libraries.patch | 140 + llvm-docs-19.1.3.src.tar.xz | 3 + llvm-docs-19.1.4.src.tar.xz | 3 + llvm-docs-19.1.5.src.tar.xz | 3 + llvm-docs-19.1.6.src.tar.xz | 3 + llvm-fix-cov-test-i586.patch | 13 + llvm-fix-find-gcc5-install.patch | 13 + llvm-normally-versioned-libllvm.patch | 66 + llvm-projects-tools-order.patch | 19 + llvm-suse-implicit-gnu.patch | 14 + llvm-workaround-superfluous-branches.patch | 14 + llvm19-rpmlintrc | 22 + llvm19.changes | 3217 +++++++++++++++++ llvm19.keyring | 203 ++ llvm19.spec | 1863 ++++++++++ ...tablegen_component_as_shared_library.patch | 58 + lto-disable-cache.patch | 28 + openmp-19.1.3.src.tar.xz | 3 + openmp-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes openmp-19.1.4.src.tar.xz | 3 + openmp-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes openmp-19.1.5.src.tar.xz | 3 + openmp-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes openmp-19.1.6.src.tar.xz | 3 + openmp-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes opt-viewer-Find-style-css-in-usr-share.patch | 16 + polly-19.1.3.src.tar.xz | 3 + polly-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes polly-19.1.4.src.tar.xz | 3 + polly-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes polly-19.1.5.src.tar.xz | 3 + polly-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes polly-19.1.6.src.tar.xz | 3 + polly-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes runtimes-19.1.3.src.tar.xz | 3 + runtimes-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes runtimes-19.1.4.src.tar.xz | 3 + runtimes-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes runtimes-19.1.5.src.tar.xz | 3 + runtimes-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes runtimes-19.1.6.src.tar.xz | 3 + runtimes-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes tests-use-python3.patch | 30 + third-party-19.1.3.src.tar.xz | 3 + third-party-19.1.3.src.tar.xz.sig | Bin 0 -> 438 bytes third-party-19.1.4.src.tar.xz | 3 + third-party-19.1.4.src.tar.xz.sig | Bin 0 -> 438 bytes third-party-19.1.5.src.tar.xz | 3 + third-party-19.1.5.src.tar.xz.sig | Bin 0 -> 438 bytes third-party-19.1.6.src.tar.xz | 3 + third-party-19.1.6.src.tar.xz.sig | Bin 0 -> 438 bytes 144 files changed, 6747 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _constraints create mode 100644 assume-opensuse.patch create mode 100644 baselibs.conf create mode 100644 check-no-llvm-exegesis.patch create mode 100644 clang-19.1.3.src.tar.xz create mode 100644 clang-19.1.3.src.tar.xz.sig create mode 100644 clang-19.1.4.src.tar.xz create mode 100644 clang-19.1.4.src.tar.xz.sig create mode 100644 clang-19.1.5.src.tar.xz create mode 100644 clang-19.1.5.src.tar.xz.sig create mode 100644 clang-19.1.6.src.tar.xz create mode 100644 clang-19.1.6.src.tar.xz.sig create mode 100644 clang-docs-19.1.3.src.tar.xz create mode 100644 clang-docs-19.1.4.src.tar.xz create mode 100644 clang-docs-19.1.5.src.tar.xz create mode 100644 clang-docs-19.1.6.src.tar.xz create mode 100644 clang-fix-modules-test-riscv.patch create mode 100644 clang-fix-openmp-test-non-x86.patch create mode 100644 clang-fix-openmp-test.patch create mode 100644 clang-resourcedirs.patch create mode 100644 clang-shlib-symbol-versioning.patch create mode 100644 clang-tools-extra-19.1.3.src.tar.xz create mode 100644 clang-tools-extra-19.1.3.src.tar.xz.sig create mode 100644 clang-tools-extra-19.1.4.src.tar.xz create mode 100644 clang-tools-extra-19.1.4.src.tar.xz.sig create mode 100644 clang-tools-extra-19.1.5.src.tar.xz create mode 100644 clang-tools-extra-19.1.5.src.tar.xz.sig create mode 100644 clang-tools-extra-19.1.6.src.tar.xz create mode 100644 clang-tools-extra-19.1.6.src.tar.xz.sig create mode 100644 cmake-19.1.3.src.tar.xz create mode 100644 cmake-19.1.3.src.tar.xz.sig create mode 100644 cmake-19.1.4.src.tar.xz create mode 100644 cmake-19.1.4.src.tar.xz.sig create mode 100644 cmake-19.1.5.src.tar.xz create mode 100644 cmake-19.1.5.src.tar.xz.sig create mode 100644 cmake-19.1.6.src.tar.xz create mode 100644 cmake-19.1.6.src.tar.xz.sig create mode 100644 compact_unwind_encoding.h create mode 100644 compiler-rt-19.1.3.src.tar.xz create mode 100644 compiler-rt-19.1.3.src.tar.xz.sig create mode 100644 compiler-rt-19.1.4.src.tar.xz create mode 100644 compiler-rt-19.1.4.src.tar.xz.sig create mode 100644 compiler-rt-19.1.5.src.tar.xz create mode 100644 compiler-rt-19.1.5.src.tar.xz.sig create mode 100644 compiler-rt-19.1.6.src.tar.xz create mode 100644 compiler-rt-19.1.6.src.tar.xz.sig create mode 100644 default-to-i586.patch create mode 100644 libcxx-19.1.3.src.tar.xz create mode 100644 libcxx-19.1.3.src.tar.xz.sig create mode 100644 libcxx-19.1.4.src.tar.xz create mode 100644 libcxx-19.1.4.src.tar.xz.sig create mode 100644 libcxx-19.1.5.src.tar.xz create mode 100644 libcxx-19.1.5.src.tar.xz.sig create mode 100644 libcxx-19.1.6.src.tar.xz create mode 100644 libcxx-19.1.6.src.tar.xz.sig create mode 100644 libcxx-test-library-path.patch create mode 100644 libcxxabi-19.1.3.src.tar.xz create mode 100644 libcxxabi-19.1.3.src.tar.xz.sig create mode 100644 libcxxabi-19.1.4.src.tar.xz create mode 100644 libcxxabi-19.1.4.src.tar.xz.sig create mode 100644 libcxxabi-19.1.5.src.tar.xz create mode 100644 libcxxabi-19.1.5.src.tar.xz.sig create mode 100644 libcxxabi-19.1.6.src.tar.xz create mode 100644 libcxxabi-19.1.6.src.tar.xz.sig create mode 100644 link-clang-shared.patch create mode 100644 link-clang-tools-extra-shared.patch create mode 100644 lld-19.1.3.src.tar.xz create mode 100644 lld-19.1.3.src.tar.xz.sig create mode 100644 lld-19.1.4.src.tar.xz create mode 100644 lld-19.1.4.src.tar.xz.sig create mode 100644 lld-19.1.5.src.tar.xz create mode 100644 lld-19.1.5.src.tar.xz.sig create mode 100644 lld-19.1.6.src.tar.xz create mode 100644 lld-19.1.6.src.tar.xz.sig create mode 100644 lldb-19.1.3.src.tar.xz create mode 100644 lldb-19.1.3.src.tar.xz.sig create mode 100644 lldb-19.1.4.src.tar.xz create mode 100644 lldb-19.1.4.src.tar.xz.sig create mode 100644 lldb-19.1.5.src.tar.xz create mode 100644 lldb-19.1.5.src.tar.xz.sig create mode 100644 lldb-19.1.6.src.tar.xz create mode 100644 lldb-19.1.6.src.tar.xz.sig create mode 100644 lldb-cmake.patch create mode 100644 llvm-19.1.3.src.tar.xz create mode 100644 llvm-19.1.3.src.tar.xz.sig create mode 100644 llvm-19.1.4.src.tar.xz create mode 100644 llvm-19.1.4.src.tar.xz.sig create mode 100644 llvm-19.1.5.src.tar.xz create mode 100644 llvm-19.1.5.src.tar.xz.sig create mode 100644 llvm-19.1.6.src.tar.xz create mode 100644 llvm-19.1.6.src.tar.xz.sig create mode 100644 llvm-do-not-install-static-libraries.patch create mode 100644 llvm-docs-19.1.3.src.tar.xz create mode 100644 llvm-docs-19.1.4.src.tar.xz create mode 100644 llvm-docs-19.1.5.src.tar.xz create mode 100644 llvm-docs-19.1.6.src.tar.xz create mode 100644 llvm-fix-cov-test-i586.patch create mode 100644 llvm-fix-find-gcc5-install.patch create mode 100644 llvm-normally-versioned-libllvm.patch create mode 100644 llvm-projects-tools-order.patch create mode 100644 llvm-suse-implicit-gnu.patch create mode 100644 llvm-workaround-superfluous-branches.patch create mode 100644 llvm19-rpmlintrc create mode 100644 llvm19.changes create mode 100644 llvm19.keyring create mode 100644 llvm19.spec create mode 100644 llvm_build_tablegen_component_as_shared_library.patch create mode 100644 lto-disable-cache.patch create mode 100644 openmp-19.1.3.src.tar.xz create mode 100644 openmp-19.1.3.src.tar.xz.sig create mode 100644 openmp-19.1.4.src.tar.xz create mode 100644 openmp-19.1.4.src.tar.xz.sig create mode 100644 openmp-19.1.5.src.tar.xz create mode 100644 openmp-19.1.5.src.tar.xz.sig create mode 100644 openmp-19.1.6.src.tar.xz create mode 100644 openmp-19.1.6.src.tar.xz.sig create mode 100644 opt-viewer-Find-style-css-in-usr-share.patch create mode 100644 polly-19.1.3.src.tar.xz create mode 100644 polly-19.1.3.src.tar.xz.sig create mode 100644 polly-19.1.4.src.tar.xz create mode 100644 polly-19.1.4.src.tar.xz.sig create mode 100644 polly-19.1.5.src.tar.xz create mode 100644 polly-19.1.5.src.tar.xz.sig create mode 100644 polly-19.1.6.src.tar.xz create mode 100644 polly-19.1.6.src.tar.xz.sig create mode 100644 runtimes-19.1.3.src.tar.xz create mode 100644 runtimes-19.1.3.src.tar.xz.sig create mode 100644 runtimes-19.1.4.src.tar.xz create mode 100644 runtimes-19.1.4.src.tar.xz.sig create mode 100644 runtimes-19.1.5.src.tar.xz create mode 100644 runtimes-19.1.5.src.tar.xz.sig create mode 100644 runtimes-19.1.6.src.tar.xz create mode 100644 runtimes-19.1.6.src.tar.xz.sig create mode 100644 tests-use-python3.patch create mode 100644 third-party-19.1.3.src.tar.xz create mode 100644 third-party-19.1.3.src.tar.xz.sig create mode 100644 third-party-19.1.4.src.tar.xz create mode 100644 third-party-19.1.4.src.tar.xz.sig create mode 100644 third-party-19.1.5.src.tar.xz create mode 100644 third-party-19.1.5.src.tar.xz.sig create mode 100644 third-party-19.1.6.src.tar.xz create mode 100644 third-party-19.1.6.src.tar.xz.sig diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..323953f --- /dev/null +++ b/_constraints @@ -0,0 +1,43 @@ + + + + + 35 + + + 8192 + + + SLOW_CPU + + + + armv6l + armv7l + i586 + ppc + s390 + + + + 10 + + + 2048 + + + + + + riscv64 + + + + 14000 + + + + diff --git a/assume-opensuse.patch b/assume-opensuse.patch new file mode 100644 index 0000000..b3ee979 --- /dev/null +++ b/assume-opensuse.patch @@ -0,0 +1,34 @@ +Index: clang-12.0.0rc1.src/lib/Driver/Distro.cpp +=================================================================== +--- clang-12.0.0rc1.src.orig/lib/Driver/Distro.cpp ++++ clang-12.0.0rc1.src/lib/Driver/Distro.cpp +@@ -93,6 +93,8 @@ static Distro::DistroType DetectLsbRelease... + } + + static Distro::DistroType DetectDistro(llvm::vfs::FileSystem &VFS) { ++ return Distro::OpenSUSE; ++/* + Distro::DistroType Version = Distro::UnknownDistro; + + // Newer freedesktop.org's compilant systemd-based systems +@@ -200,7 +202,7 @@ static Distro::DistroType DetectDistro(l + if (VFS.exists("/etc/gentoo-release")) + return Distro::Gentoo; + +- return Distro::UnknownDistro; ++ return Distro::UnknownDistro;*/ + } + + static Distro::DistroType GetDistro(llvm::vfs::FileSystem &VFS, +Index: clang-18.1.0rc1.src/unittests/Driver/CMakeLists.txt +=================================================================== +--- clang-18.1.0rc1.src.orig/unittests/Driver/CMakeLists.txt ++++ clang-18.1.0rc1.src/unittests/Driver/CMakeLists.txt +@@ -7,7 +7,6 @@ set(LLVM_LINK_COMPONENTS + ) + + add_clang_unittest(ClangDriverTests +- DistroTest.cpp + DXCModeTest.cpp + GCCVersionTest.cpp + ToolChainTest.cpp diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..77f1bf6 --- /dev/null +++ b/baselibs.conf @@ -0,0 +1,2 @@ +libLLVM19 +libclang-cpp19 diff --git a/check-no-llvm-exegesis.patch b/check-no-llvm-exegesis.patch new file mode 100644 index 0000000..51508b8 --- /dev/null +++ b/check-no-llvm-exegesis.patch @@ -0,0 +1,10 @@ +--- a/llvm/test/CMakeLists.txt ++++ b/llvm/test/CMakeLists.txt +@@ -81,7 +81,6 @@ set(LLVM_TEST_DEPENDS + llvm-dwarfdump + llvm-dwarfutil + llvm-dwp +- llvm-exegesis + llvm-extract + llvm-gsymutil + llvm-isel-fuzzer diff --git a/clang-19.1.3.src.tar.xz b/clang-19.1.3.src.tar.xz new file mode 100644 index 0000000..1ebc817 --- /dev/null +++ b/clang-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a0dd316931f2cac7090d2aa434b5d0c332fe19b801c6c94f109053b52b35cc1 +size 23508744 diff --git a/clang-19.1.3.src.tar.xz.sig b/clang-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..c1c5f8ea42008fb82938cb8fdf74c16e06bb054d8b4de125e88e0aac51fe77c0 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@@@rXzm#GK9g`phUy`?cIK^ZJCK%^G)3}s-O*t z7ZhoMy-vbB`FiN9k$e@R>=0aJZxP#Ic&dg$@_H&%M%pDd!u`)=(Oe@At5ep0fLRNm zX&ZJypqc8Hg4@{FA<^94gfZ`w4NayIRMR4Vn5|t+UIEqL@6(HPbTL85 zFAwP0g%ynWR^3}vLXLD|!8TU!GO)aNPzQwNc_*S!3;=|uGlg73wp;(jQ;jXC@7#(` z{NY)*cDxat+jHXuD?Y8$MuIJ`ED{(gy;Iz6UTc>a(c5n3Sd&BZ>|J-}84aHe0|%C{ g8*dYE6_H)4^D&@^H2dx0(nj`QK6M~AaC%aIo}5P1Hvj+t literal 0 HcmV?d00001 diff --git a/clang-19.1.4.src.tar.xz b/clang-19.1.4.src.tar.xz new file mode 100644 index 0000000..1a02ecf --- /dev/null +++ b/clang-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6d123a4435f1869af709f3288c4c4db48173acaf621088400d91521bc5aa225 +size 23510712 diff --git a/clang-19.1.4.src.tar.xz.sig b/clang-19.1.4.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..cfe5dd14355bb2906917cd071b4fdf10c19fb0d2e543e28f2062e793d8349036 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@YntqH&?TIU;sHOYQRDTrf~z&! gmDKGSSd_;1{fa1)>bwc@X>zA+G0cQgmzNifRVeVD zSkS+|^kO^!GWpIAH+p5E)G3~lG>R4(z$UjBL*c78#-n~0?6Q_vdS>f4g_T4 zgQO_OTwJ2w8a_sb*$3F55eZwHQ>|W6i<~b4OngA+10981PN`RZtc6X?c>AN%YqRG2 z4JGUs^1OD9PsO(GEAxt(lf#Lk@WsXkQ9;i%xC;;E0C=2TglO0@9&g@HzZAiKuKcJV zGJh~o!{|E(-TzfbF<&G}OrMlV#TIPQ#Z*qK2A`xzx2@>DJSj7tV$WD)eA9BA>4wF2 gE5HTwFd<~P+NuLX7liFBJBi%j;CO(frKgYJVM1%qc>n+a literal 0 HcmV?d00001 diff --git a/clang-19.1.6.src.tar.xz b/clang-19.1.6.src.tar.xz new file mode 100644 index 0000000..1e06eda --- /dev/null +++ b/clang-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6358cbb3e14687ca2f3465c61cffc65589b448aaa912ec2c163ef9fc046e8a89 +size 23511508 diff --git a/clang-19.1.6.src.tar.xz.sig b/clang-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..837cba16261f20ced7beb4f406ac25a858f8d5061f3fef5cb0da81484fb36d55 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@<~ZlYO_OSVU@W@g~X8r?Iu$6*2sw`WmR>?E3WZpuXlvSqfwzWyb?l|I7xFFr}* z%jT7KBYJ6ffX~SnKr=QrlXp*#1zOp`k()I4KTpFEqEMxhGQv*L%)lyXeT;TL?~@E4 zlneUr<)bC5`Ru^C8>cRo`5VE zu22F5o`~wIjFF{;jWO9 z#lM6!n4RMx3UKdeI?u_=%e$dwbus-|XCwRC>H1SQ~s(96J=?X9}U{hLAg5X_G(l P(Dir); ++ SmallString<128> P((Dir != "") ? Dir : "/usr/bin/"); + if (CustomResourceDir != "") { + llvm::sys::path::append(P, CustomResourceDir); + } else { diff --git a/clang-shlib-symbol-versioning.patch b/clang-shlib-symbol-versioning.patch new file mode 100644 index 0000000..a3aa55e --- /dev/null +++ b/clang-shlib-symbol-versioning.patch @@ -0,0 +1,26 @@ +diff --git a/clang/tools/clang-shlib/CMakeLists.txt b/clang/tools/clang-shlib/CMakeLists.txt +index 298d3a9d18fe..830f2b138ffa 100644 +--- a/clang/tools/clang-shlib/CMakeLists.txt ++++ b/clang/tools/clang-shlib/CMakeLists.txt +@@ -48,6 +48,14 @@ add_clang_library(clang-cpp + ${_OBJECTS} + LINK_LIBS + ${_DEPS}) ++ ++configure_file(simple_version_script.map.in simple_version_script.map) ++ ++if (NOT LLVM_LINKER_IS_SOLARISLD AND NOT MINGW) ++ # Solaris ld does not accept global: *; so there is no way to version *all* global symbols ++ target_link_options(clang-cpp PRIVATE LINKER:--version-script,${CMAKE_CURRENT_BINARY_DIR}/simple_version_script.map) ++endif() ++ + # Optimize function calls for default visibility definitions to avoid PLT and + # reduce dynamic relocations. + if (NOT APPLE AND NOT MINGW AND NOT LLVM_LINKER_IS_SOLARISLD_ILLUMOS) +diff --git a/clang/tools/clang-shlib/simple_version_script.map.in b/clang/tools/clang-shlib/simple_version_script.map.in +new file mode 100644 +index 000000000000..cb2306d1f596 +--- /dev/null ++++ b/clang/tools/clang-shlib/simple_version_script.map.in +@@ -0,0 +1 @@ ++@LLVM_SHLIB_SYMBOL_VERSION@ { global: *; }; diff --git a/clang-tools-extra-19.1.3.src.tar.xz b/clang-tools-extra-19.1.3.src.tar.xz new file mode 100644 index 0000000..618a09d --- /dev/null +++ b/clang-tools-extra-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6358ee4be9573fb025dad0a6fc9a5270fc2cb644a6504ff2970ca60abad7e345 +size 3417084 diff --git a/clang-tools-extra-19.1.3.src.tar.xz.sig b/clang-tools-extra-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..e24874e63499893349c3829bdccfaa7264908f9f0d5389472df117a0eb5f072e GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@3HRJpHF-R)!l0}UE;1JrBws9f0RzFTFXq?G$;mjX2n}IE9 zw3SFNQ_PVultn$JJz6cGj&FPSjKFFx1A`zAZ4zO$|9i*EJRI@s_a)7utU6cKIuSH{}P%G;Erex@GkbuEj`-yRa<b*SNuA3} gVEF>;?krJ9K*FmgQ7sV*iuXm=KLuJ(!i;uIK%#NWHvj+t literal 0 HcmV?d00001 diff --git a/clang-tools-extra-19.1.4.src.tar.xz b/clang-tools-extra-19.1.4.src.tar.xz new file mode 100644 index 0000000..830eba9 --- /dev/null +++ b/clang-tools-extra-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e09d0becbbe4dc3dec45dbda44649357456e559b46a72004696674c963734fa6 +size 3417036 diff --git a/clang-tools-extra-19.1.4.src.tar.xz.sig b/clang-tools-extra-19.1.4.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..6dd76e2a37b77fbf92d657cc78d4aebb2a45a6893953b5fc802af4843ee38bbf GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@ZYF4x*@d_n;n%fk0EFDXLS{!cMe{ixAXLjd-oVCx zbZg|NVaMvhJfqdrogAOfyJU?-!j#P%6}KX>BZR7-9BhJ8gXinq-hlJ{J( za=Y&2v0ZGz4tno9y84QDznc96AVCS884mxtI;-m`nK#?P?=Wn-XJvI++j@5mfXoyQ#DwQXt0Ttbo` gTlLdMb*^GpYJt=val}cYtY^vVmZqrO8R=^EF2u{!N&o-= literal 0 HcmV?d00001 diff --git a/clang-tools-extra-19.1.5.src.tar.xz b/clang-tools-extra-19.1.5.src.tar.xz new file mode 100644 index 0000000..5a32271 --- /dev/null +++ b/clang-tools-extra-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9288a607dfb6350906e466ee49590e769ffb311a2f989889e9e52bd3e64c9398 +size 3417016 diff --git a/clang-tools-extra-19.1.5.src.tar.xz.sig b/clang-tools-extra-19.1.5.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..22cedd1d68a0e1389b0285c202fa3995d6886873ef73e5bdfd5200a0b9e604db GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@NJ7YrRO$-d2Bl(WX(X;-Gy)MULdwCft$#Tl6I9?Y`4MeMtP8b6JVTXnnK(4C-5r!ib%ZYP86?5lurh?;A6*oW8Bfhv~r}qCx gL@l!J5azevyl$q)-+^yy{1khS#O~u&QV|hJN6U25lK=n! literal 0 HcmV?d00001 diff --git a/cmake-19.1.3.src.tar.xz b/cmake-19.1.3.src.tar.xz new file mode 100644 index 0000000..4d82ca5 --- /dev/null +++ b/cmake-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c55aa6e77fc0e8b759bca2c79ee4fd0ea8c7fab06eeea09310ae1e954a0af5e +size 9300 diff --git a/cmake-19.1.3.src.tar.xz.sig b/cmake-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..5c042a90193babba96f4bcdf4d6580a99d8b5aeaae1b5430bf5d294b0b501aa1 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@>l6`hW;74#GPmMUFu zciZ(CbGZ#E0Pi-GQhWANzb{E9em&l+3au6yY<*ZA$>~z?1lkbP?9M48*@SHDWw|`N zD%+7-D5EDv(4UAmC*FZSbR`B?;euiRexAXXlo$b`*=58?A5O}eCjeEXy{f(?KkX=z z8)xtWmVM<~jpu?AU(bWqp#mORV|IfJ(W_0wVTM0i&za(}Ig+8nCKU@)UMZ-v@V%PD zsis4u_LE&@2hrh!oDcKfS)48VpmO5^>73jY7{@^lJb*=}3*(Ex1YT@uH!GV6PIM gF6pZ2uJFS6t~~Uig;`6jlB2Z4DRKU)5r{t>moOl-thFeVx)A_<-4 z2W`2PevcEz2pl9jJ+vj5g<@tok5<0P*%;WqTNV%n$0m6Izw6b^AsyiQbsLEcgfwK9 zhCHC{^qkmi9_^s^Mw3gP@R*{q*V=ZLsI~5!uM{{4>qlo`k9%h5enNTGl|-AG-MA6v zJVV@&z1MQ}CNp~fvvwI6EeK!o%OKn)DiF}asB`zBCuPX};SF}|$qDKy8 z^BVgaQhleF3&|B1o?R1u%VH6e7ARxTV3F}|x_iG-@L{$%Mi^RYw=2PJA(6S{&MESZ;^(Z*L}+xQ@2Ac~iJu)abK zAoOK2i-zGN+&`Ap44mz@3^G}wouAj&xyjK*R^Y5D9i%dsq|oVPK!NP1y6Ky(ZRmPQ gAWupWzUdME<|cN%a`Q2O9oZ{o4$^=)q%k^=k8E7Z^Z)<= literal 0 HcmV?d00001 diff --git a/cmake-19.1.5.src.tar.xz b/cmake-19.1.5.src.tar.xz new file mode 100644 index 0000000..4d53f51 --- /dev/null +++ b/cmake-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a08ae477571fd5e929c27d3d0d28c6168d58dd00b6354c2de3266ae0d86ad44f +size 9300 diff --git a/cmake-19.1.5.src.tar.xz.sig b/cmake-19.1.5.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..52cb478e8f386f98ecc3c7fdd70496b1b57f13187dcf9426339aca73757a84e1 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@a-XVmPnxsld!SA|WI%Q1ah;M+J+E2?<}l~H35K^)T< zzsSO;oK?UMi~|1?Zp|symxU;()Jlq!`uUN|6z<^4*1((liZb-k5tm>tu~r04XtA~6 zO|;e;Hs~Hy6)TU*5NdhN|JtQq?hk|lpq?oPZ$#%C>r&fY0c>z@H?MV04>j>MWna6` z9NIaCZXco`*smfxIS5WaEr=R0nz4!)xgdNloSEdr^NN?A?N@jsQFTj9f|!dr0OQLVdXQp6}J;RH`UHtpgWyJ&3hGL zNbg{wub!fRO9A3wn@rD!LF+9zCg=*~)<}B(* guZ?9Cb$TM62kT!8I0iUoEFl5|A^O|P|HxeNk zOmRmHoTnm+P=(%U*06NSV-tX-w!{W;Wmi4g=4~gyVp@fEeq*9@HcD(3`jV@^;QzKS zGS8r5J3v?^YIzIw+rU`7_eg0OS%Gb1j`Y^8V(-`eJ%XL`i(ZYxt|0=T)9+|<~z5oCK literal 0 HcmV?d00001 diff --git a/compact_unwind_encoding.h b/compact_unwind_encoding.h new file mode 100644 index 0000000..6041ba2 --- /dev/null +++ b/compact_unwind_encoding.h @@ -0,0 +1,477 @@ +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +// +// Darwin's alternative to DWARF based unwind encodings. +// +//===----------------------------------------------------------------------===// + + +#ifndef __COMPACT_UNWIND_ENCODING__ +#define __COMPACT_UNWIND_ENCODING__ + +#include + +// +// Compilers can emit standard DWARF FDEs in the __TEXT,__eh_frame section +// of object files. Or compilers can emit compact unwind information in +// the __LD,__compact_unwind section. +// +// When the linker creates a final linked image, it will create a +// __TEXT,__unwind_info section. This section is a small and fast way for the +// runtime to access unwind info for any given function. If the compiler +// emitted compact unwind info for the function, that compact unwind info will +// be encoded in the __TEXT,__unwind_info section. If the compiler emitted +// DWARF unwind info, the __TEXT,__unwind_info section will contain the offset +// of the FDE in the __TEXT,__eh_frame section in the final linked image. +// +// Note: Previously, the linker would transform some DWARF unwind infos into +// compact unwind info. But that is fragile and no longer done. + + +// +// The compact unwind encoding is a 32-bit value which encoded in an +// architecture specific way, which registers to restore from where, and how +// to unwind out of the function. +// +typedef uint32_t compact_unwind_encoding_t; + + +// architecture independent bits +enum { + UNWIND_IS_NOT_FUNCTION_START = 0x80000000, + UNWIND_HAS_LSDA = 0x40000000, + UNWIND_PERSONALITY_MASK = 0x30000000, +}; + + + + +// +// x86 +// +// 1-bit: start +// 1-bit: has lsda +// 2-bit: personality index +// +// 4-bits: 0=old, 1=ebp based, 2=stack-imm, 3=stack-ind, 4=DWARF +// ebp based: +// 15-bits (5*3-bits per reg) register permutation +// 8-bits for stack offset +// frameless: +// 8-bits stack size +// 3-bits stack adjust +// 3-bits register count +// 10-bits register permutation +// +enum { + UNWIND_X86_MODE_MASK = 0x0F000000, + UNWIND_X86_MODE_EBP_FRAME = 0x01000000, + UNWIND_X86_MODE_STACK_IMMD = 0x02000000, + UNWIND_X86_MODE_STACK_IND = 0x03000000, + UNWIND_X86_MODE_DWARF = 0x04000000, + + UNWIND_X86_EBP_FRAME_REGISTERS = 0x00007FFF, + UNWIND_X86_EBP_FRAME_OFFSET = 0x00FF0000, + + UNWIND_X86_FRAMELESS_STACK_SIZE = 0x00FF0000, + UNWIND_X86_FRAMELESS_STACK_ADJUST = 0x0000E000, + UNWIND_X86_FRAMELESS_STACK_REG_COUNT = 0x00001C00, + UNWIND_X86_FRAMELESS_STACK_REG_PERMUTATION = 0x000003FF, + + UNWIND_X86_DWARF_SECTION_OFFSET = 0x00FFFFFF, +}; + +enum { + UNWIND_X86_REG_NONE = 0, + UNWIND_X86_REG_EBX = 1, + UNWIND_X86_REG_ECX = 2, + UNWIND_X86_REG_EDX = 3, + UNWIND_X86_REG_EDI = 4, + UNWIND_X86_REG_ESI = 5, + UNWIND_X86_REG_EBP = 6, +}; + +// +// For x86 there are four modes for the compact unwind encoding: +// UNWIND_X86_MODE_EBP_FRAME: +// EBP based frame where EBP is push on stack immediately after return address, +// then ESP is moved to EBP. Thus, to unwind ESP is restored with the current +// EPB value, then EBP is restored by popping off the stack, and the return +// is done by popping the stack once more into the pc. +// All non-volatile registers that need to be restored must have been saved +// in a small range in the stack that starts EBP-4 to EBP-1020. The offset/4 +// is encoded in the UNWIND_X86_EBP_FRAME_OFFSET bits. The registers saved +// are encoded in the UNWIND_X86_EBP_FRAME_REGISTERS bits as five 3-bit entries. +// Each entry contains which register to restore. +// UNWIND_X86_MODE_STACK_IMMD: +// A "frameless" (EBP not used as frame pointer) function with a small +// constant stack size. To return, a constant (encoded in the compact +// unwind encoding) is added to the ESP. Then the return is done by +// popping the stack into the pc. +// All non-volatile registers that need to be restored must have been saved +// on the stack immediately after the return address. The stack_size/4 is +// encoded in the UNWIND_X86_FRAMELESS_STACK_SIZE (max stack size is 1024). +// The number of registers saved is encoded in UNWIND_X86_FRAMELESS_STACK_REG_COUNT. +// UNWIND_X86_FRAMELESS_STACK_REG_PERMUTATION contains which registers were +// saved and their order. +// UNWIND_X86_MODE_STACK_IND: +// A "frameless" (EBP not used as frame pointer) function large constant +// stack size. This case is like the previous, except the stack size is too +// large to encode in the compact unwind encoding. Instead it requires that +// the function contains "subl $nnnnnnnn,ESP" in its prolog. The compact +// encoding contains the offset to the nnnnnnnn value in the function in +// UNWIND_X86_FRAMELESS_STACK_SIZE. +// UNWIND_X86_MODE_DWARF: +// No compact unwind encoding is available. Instead the low 24-bits of the +// compact encoding is the offset of the DWARF FDE in the __eh_frame section. +// This mode is never used in object files. It is only generated by the +// linker in final linked images which have only DWARF unwind info for a +// function. +// +// The permutation encoding is a Lehmer code sequence encoded into a +// single variable-base number so we can encode the ordering of up to +// six registers in a 10-bit space. +// +// The following is the algorithm used to create the permutation encoding used +// with frameless stacks. It is passed the number of registers to be saved and +// an array of the register numbers saved. +// +//uint32_t permute_encode(uint32_t registerCount, const uint32_t registers[6]) +//{ +// uint32_t renumregs[6]; +// for (int i=6-registerCount; i < 6; ++i) { +// int countless = 0; +// for (int j=6-registerCount; j < i; ++j) { +// if ( registers[j] < registers[i] ) +// ++countless; +// } +// renumregs[i] = registers[i] - countless -1; +// } +// uint32_t permutationEncoding = 0; +// switch ( registerCount ) { +// case 6: +// permutationEncoding |= (120*renumregs[0] + 24*renumregs[1] +// + 6*renumregs[2] + 2*renumregs[3] +// + renumregs[4]); +// break; +// case 5: +// permutationEncoding |= (120*renumregs[1] + 24*renumregs[2] +// + 6*renumregs[3] + 2*renumregs[4] +// + renumregs[5]); +// break; +// case 4: +// permutationEncoding |= (60*renumregs[2] + 12*renumregs[3] +// + 3*renumregs[4] + renumregs[5]); +// break; +// case 3: +// permutationEncoding |= (20*renumregs[3] + 4*renumregs[4] +// + renumregs[5]); +// break; +// case 2: +// permutationEncoding |= (5*renumregs[4] + renumregs[5]); +// break; +// case 1: +// permutationEncoding |= (renumregs[5]); +// break; +// } +// return permutationEncoding; +//} +// + + + + +// +// x86_64 +// +// 1-bit: start +// 1-bit: has lsda +// 2-bit: personality index +// +// 4-bits: 0=old, 1=rbp based, 2=stack-imm, 3=stack-ind, 4=DWARF +// rbp based: +// 15-bits (5*3-bits per reg) register permutation +// 8-bits for stack offset +// frameless: +// 8-bits stack size +// 3-bits stack adjust +// 3-bits register count +// 10-bits register permutation +// +enum { + UNWIND_X86_64_MODE_MASK = 0x0F000000, + UNWIND_X86_64_MODE_RBP_FRAME = 0x01000000, + UNWIND_X86_64_MODE_STACK_IMMD = 0x02000000, + UNWIND_X86_64_MODE_STACK_IND = 0x03000000, + UNWIND_X86_64_MODE_DWARF = 0x04000000, + + UNWIND_X86_64_RBP_FRAME_REGISTERS = 0x00007FFF, + UNWIND_X86_64_RBP_FRAME_OFFSET = 0x00FF0000, + + UNWIND_X86_64_FRAMELESS_STACK_SIZE = 0x00FF0000, + UNWIND_X86_64_FRAMELESS_STACK_ADJUST = 0x0000E000, + UNWIND_X86_64_FRAMELESS_STACK_REG_COUNT = 0x00001C00, + UNWIND_X86_64_FRAMELESS_STACK_REG_PERMUTATION = 0x000003FF, + + UNWIND_X86_64_DWARF_SECTION_OFFSET = 0x00FFFFFF, +}; + +enum { + UNWIND_X86_64_REG_NONE = 0, + UNWIND_X86_64_REG_RBX = 1, + UNWIND_X86_64_REG_R12 = 2, + UNWIND_X86_64_REG_R13 = 3, + UNWIND_X86_64_REG_R14 = 4, + UNWIND_X86_64_REG_R15 = 5, + UNWIND_X86_64_REG_RBP = 6, +}; +// +// For x86_64 there are four modes for the compact unwind encoding: +// UNWIND_X86_64_MODE_RBP_FRAME: +// RBP based frame where RBP is push on stack immediately after return address, +// then RSP is moved to RBP. Thus, to unwind RSP is restored with the current +// EPB value, then RBP is restored by popping off the stack, and the return +// is done by popping the stack once more into the pc. +// All non-volatile registers that need to be restored must have been saved +// in a small range in the stack that starts RBP-8 to RBP-2040. The offset/8 +// is encoded in the UNWIND_X86_64_RBP_FRAME_OFFSET bits. The registers saved +// are encoded in the UNWIND_X86_64_RBP_FRAME_REGISTERS bits as five 3-bit entries. +// Each entry contains which register to restore. +// UNWIND_X86_64_MODE_STACK_IMMD: +// A "frameless" (RBP not used as frame pointer) function with a small +// constant stack size. To return, a constant (encoded in the compact +// unwind encoding) is added to the RSP. Then the return is done by +// popping the stack into the pc. +// All non-volatile registers that need to be restored must have been saved +// on the stack immediately after the return address. The stack_size/8 is +// encoded in the UNWIND_X86_64_FRAMELESS_STACK_SIZE (max stack size is 2048). +// The number of registers saved is encoded in UNWIND_X86_64_FRAMELESS_STACK_REG_COUNT. +// UNWIND_X86_64_FRAMELESS_STACK_REG_PERMUTATION contains which registers were +// saved and their order. +// UNWIND_X86_64_MODE_STACK_IND: +// A "frameless" (RBP not used as frame pointer) function large constant +// stack size. This case is like the previous, except the stack size is too +// large to encode in the compact unwind encoding. Instead it requires that +// the function contains "subq $nnnnnnnn,RSP" in its prolog. The compact +// encoding contains the offset to the nnnnnnnn value in the function in +// UNWIND_X86_64_FRAMELESS_STACK_SIZE. +// UNWIND_X86_64_MODE_DWARF: +// No compact unwind encoding is available. Instead the low 24-bits of the +// compact encoding is the offset of the DWARF FDE in the __eh_frame section. +// This mode is never used in object files. It is only generated by the +// linker in final linked images which have only DWARF unwind info for a +// function. +// + + +// ARM64 +// +// 1-bit: start +// 1-bit: has lsda +// 2-bit: personality index +// +// 4-bits: 4=frame-based, 3=DWARF, 2=frameless +// frameless: +// 12-bits of stack size +// frame-based: +// 4-bits D reg pairs saved +// 5-bits X reg pairs saved +// DWARF: +// 24-bits offset of DWARF FDE in __eh_frame section +// +enum { + UNWIND_ARM64_MODE_MASK = 0x0F000000, + UNWIND_ARM64_MODE_FRAMELESS = 0x02000000, + UNWIND_ARM64_MODE_DWARF = 0x03000000, + UNWIND_ARM64_MODE_FRAME = 0x04000000, + + UNWIND_ARM64_FRAME_X19_X20_PAIR = 0x00000001, + UNWIND_ARM64_FRAME_X21_X22_PAIR = 0x00000002, + UNWIND_ARM64_FRAME_X23_X24_PAIR = 0x00000004, + UNWIND_ARM64_FRAME_X25_X26_PAIR = 0x00000008, + UNWIND_ARM64_FRAME_X27_X28_PAIR = 0x00000010, + UNWIND_ARM64_FRAME_D8_D9_PAIR = 0x00000100, + UNWIND_ARM64_FRAME_D10_D11_PAIR = 0x00000200, + UNWIND_ARM64_FRAME_D12_D13_PAIR = 0x00000400, + UNWIND_ARM64_FRAME_D14_D15_PAIR = 0x00000800, + + UNWIND_ARM64_FRAMELESS_STACK_SIZE_MASK = 0x00FFF000, + UNWIND_ARM64_DWARF_SECTION_OFFSET = 0x00FFFFFF, +}; +// For arm64 there are three modes for the compact unwind encoding: +// UNWIND_ARM64_MODE_FRAME: +// This is a standard arm64 prolog where FP/LR are immediately pushed on the +// stack, then SP is copied to FP. If there are any non-volatile registers +// saved, then are copied into the stack frame in pairs in a contiguous +// range right below the saved FP/LR pair. Any subset of the five X pairs +// and four D pairs can be saved, but the memory layout must be in register +// number order. +// UNWIND_ARM64_MODE_FRAMELESS: +// A "frameless" leaf function, where FP/LR are not saved. The return address +// remains in LR throughout the function. If any non-volatile registers +// are saved, they must be pushed onto the stack before any stack space is +// allocated for local variables. The stack sized (including any saved +// non-volatile registers) divided by 16 is encoded in the bits +// UNWIND_ARM64_FRAMELESS_STACK_SIZE_MASK. +// UNWIND_ARM64_MODE_DWARF: +// No compact unwind encoding is available. Instead the low 24-bits of the +// compact encoding is the offset of the DWARF FDE in the __eh_frame section. +// This mode is never used in object files. It is only generated by the +// linker in final linked images which have only DWARF unwind info for a +// function. +// + + + + + +//////////////////////////////////////////////////////////////////////////////// +// +// Relocatable Object Files: __LD,__compact_unwind +// +//////////////////////////////////////////////////////////////////////////////// + +// +// A compiler can generated compact unwind information for a function by adding +// a "row" to the __LD,__compact_unwind section. This section has the +// S_ATTR_DEBUG bit set, so the section will be ignored by older linkers. +// It is removed by the new linker, so never ends up in final executables. +// This section is a table, initially with one row per function (that needs +// unwind info). The table columns and some conceptual entries are: +// +// range-start pointer to start of function/range +// range-length +// compact-unwind-encoding 32-bit encoding +// personality-function or zero if no personality function +// lsda or zero if no LSDA data +// +// The length and encoding fields are 32-bits. The other are all pointer sized. +// +// In x86_64 assembly, these entry would look like: +// +// .section __LD,__compact_unwind,regular,debug +// +// #compact unwind for _foo +// .quad _foo +// .set L1,LfooEnd-_foo +// .long L1 +// .long 0x01010001 +// .quad 0 +// .quad 0 +// +// #compact unwind for _bar +// .quad _bar +// .set L2,LbarEnd-_bar +// .long L2 +// .long 0x01020011 +// .quad __gxx_personality +// .quad except_tab1 +// +// +// Notes: There is no need for any labels in the __compact_unwind section. +// The use of the .set directive is to force the evaluation of the +// range-length at assembly time, instead of generating relocations. +// +// To support future compiler optimizations where which non-volatile registers +// are saved changes within a function (e.g. delay saving non-volatiles until +// necessary), there can by multiple lines in the __compact_unwind table for one +// function, each with a different (non-overlapping) range and each with +// different compact unwind encodings that correspond to the non-volatiles +// saved at that range of the function. +// +// If a particular function is so wacky that there is no compact unwind way +// to encode it, then the compiler can emit traditional DWARF unwind info. +// The runtime will use which ever is available. +// +// Runtime support for compact unwind encodings are only available on 10.6 +// and later. So, the compiler should not generate it when targeting pre-10.6. + + + + +//////////////////////////////////////////////////////////////////////////////// +// +// Final Linked Images: __TEXT,__unwind_info +// +//////////////////////////////////////////////////////////////////////////////// + +// +// The __TEXT,__unwind_info section is laid out for an efficient two level lookup. +// The header of the section contains a coarse index that maps function address +// to the page (4096 byte block) containing the unwind info for that function. +// + +#define UNWIND_SECTION_VERSION 1 +struct unwind_info_section_header +{ + uint32_t version; // UNWIND_SECTION_VERSION + uint32_t commonEncodingsArraySectionOffset; + uint32_t commonEncodingsArrayCount; + uint32_t personalityArraySectionOffset; + uint32_t personalityArrayCount; + uint32_t indexSectionOffset; + uint32_t indexCount; + // compact_unwind_encoding_t[] + // uint32_t personalities[] + // unwind_info_section_header_index_entry[] + // unwind_info_section_header_lsda_index_entry[] +}; + +struct unwind_info_section_header_index_entry +{ + uint32_t functionOffset; + uint32_t secondLevelPagesSectionOffset; // section offset to start of regular or compress page + uint32_t lsdaIndexArraySectionOffset; // section offset to start of lsda_index array for this range +}; + +struct unwind_info_section_header_lsda_index_entry +{ + uint32_t functionOffset; + uint32_t lsdaOffset; +}; + +// +// There are two kinds of second level index pages: regular and compressed. +// A compressed page can hold up to 1021 entries, but it cannot be used +// if too many different encoding types are used. The regular page holds +// 511 entries. +// + +struct unwind_info_regular_second_level_entry +{ + uint32_t functionOffset; + compact_unwind_encoding_t encoding; +}; + +#define UNWIND_SECOND_LEVEL_REGULAR 2 +struct unwind_info_regular_second_level_page_header +{ + uint32_t kind; // UNWIND_SECOND_LEVEL_REGULAR + uint16_t entryPageOffset; + uint16_t entryCount; + // entry array +}; + +#define UNWIND_SECOND_LEVEL_COMPRESSED 3 +struct unwind_info_compressed_second_level_page_header +{ + uint32_t kind; // UNWIND_SECOND_LEVEL_COMPRESSED + uint16_t entryPageOffset; + uint16_t entryCount; + uint16_t encodingsPageOffset; + uint16_t encodingsCount; + // 32-bit entry array + // encodings array +}; + +#define UNWIND_INFO_COMPRESSED_ENTRY_FUNC_OFFSET(entry) (entry & 0x00FFFFFF) +#define UNWIND_INFO_COMPRESSED_ENTRY_ENCODING_INDEX(entry) ((entry >> 24) & 0xFF) + + + +#endif + diff --git a/compiler-rt-19.1.3.src.tar.xz b/compiler-rt-19.1.3.src.tar.xz new file mode 100644 index 0000000..909ba1f --- /dev/null +++ b/compiler-rt-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c57dfa7796c254f85ade3f84f12e3a7dd5dae65c0ade428367fe8c5218f856a +size 2528276 diff --git a/compiler-rt-19.1.3.src.tar.xz.sig b/compiler-rt-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..49faf91bd99ce6b5f98526f37a7f7f1b50303489c8d3fc0faa7fafd6373f79b4 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@W7=9YQ7P?y_x(UF)&Np($jb@CUO##m%w4cWmym(NQBu z$=={w`p0}omfS`nlXG=piOT`9k>D^m{hzE)8#?$8E1IeDr5ztG~XNF^|wW5?wRFQ}qOoBf5hKuCp=fD8~!6yzLr`D%(^}J|SL{-Zqx& z{AZPdjhpMZjv)9uB?m1RL-hiN-D1g z(wf6Pv_J2cvVdhhc^S!SL_?4pN5AH3yh#iaM{TJRdgTA%C`@9b=0fX~eR3je09|_I zI6gem-JH(MYSaD%nx9xA6BVL$G4}W%+ejWxF>bZ%-(qwnH^Mq0&yI+8%Hu;Fhe<3a z1XiLCl%6IhU=5Xz2!%cTAi)v=?f%*-e-rJ%^>6&%Chqrwj zfWVT^L6~z*<&YHr(l{9WGH==vTo$)==C6<`Bq;KG?v{2u_x}#5SN>v0tlMw5E9mUf zBoI^Jja6Ooc=tfBKyaIs?#pVsRFdv%y(jbF%Y`7dz3++fb&_s_*upUpyKYSp6Gt}} zuR(fa2c2|CcrCl&zn`b!SZIGgmDL=d9DK|185(r4h2$XXeu8*zDF&=s=u4#BM892> z8YD&j=7%EKk@p6sH%2bC;q!ef72~FW_F4;A{>F^hdZ8^w(C~s{jB1 literal 0 HcmV?d00001 diff --git a/compiler-rt-19.1.6.src.tar.xz b/compiler-rt-19.1.6.src.tar.xz new file mode 100644 index 0000000..c4fdc17 --- /dev/null +++ b/compiler-rt-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d4f312e1419152282c267e6b6a1fa5914a7a0c753a5e926bee1c8c28e614ae4 +size 2531460 diff --git a/compiler-rt-19.1.6.src.tar.xz.sig b/compiler-rt-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..d36183a558f58073096092be4cb08342ef1dc558902edfa0aca8b786a9082956 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@dwYI6P-=;2^{B?L3`LMVr}WsU;>N+H^g4D=<& zGBYB+lUINu=?+1>3j%u_qg$aW0L@v3mJD+6UJWwo5Sx3V0URRL_$c{yOI(~2oRQJv z?qCVBz6IYhdcBN+XWwz`NT9#2wMWJ-GZx%L%%#Y_PN_SUp0Ce0f%@$B=gJp`Ofz&XTP}5wU%ClV%JWv(c9en#%H7~B-IgZptE%A zjEQ)R_Ao}_*^k8MlcpO8C2EX5R@XFd7Y(PDubor>0{4_5-;*13QnHIxTK3=QWQRM- giwbG>{lL*RwS+T+xZxA(vhu11cGN{e1x95cg&AGb7ytkO literal 0 HcmV?d00001 diff --git a/default-to-i586.patch b/default-to-i586.patch new file mode 100644 index 0000000..0ede168 --- /dev/null +++ b/default-to-i586.patch @@ -0,0 +1,15 @@ +Index: cfe-6.0.0rc1.src/lib/Driver/ToolChains/Arch/X86.cpp +=================================================================== +--- cfe-6.0.0rc1.src.orig/lib/Driver/ToolChains/Arch/X86.cpp ++++ cfe-6.0.0rc1.src/lib/Driver/ToolChains/Arch/X86.cpp +@@ -102,8 +102,8 @@ const char *x86::getX86TargetCPU(const A + case llvm::Triple::FreeBSD: + return "i686"; + default: +- // Fallback to p4. +- return "pentium4"; ++ // Fallback to i586. ++ return "i586"; + } + } + diff --git a/libcxx-19.1.3.src.tar.xz b/libcxx-19.1.3.src.tar.xz new file mode 100644 index 0000000..150516b --- /dev/null +++ b/libcxx-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd5680e5ee4803bbe5c4007e4c546b7263525466049832c630c3fd5fc027468c +size 4745616 diff --git a/libcxx-19.1.3.src.tar.xz.sig b/libcxx-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..e658a683428484b7fa25ad7e90298ca6617630b422e7b55e3be0932dca1af660 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@U6p6qaYPfxu6@{iFCVymFcLnnDxzjARZuqhR(wG?KC6Si>T=4L<@`Z`wNsSF~5PwurO gobqEE)3jY}GO%5Ob`=~XnMLE+;fpC!&(8leCIV`Sz#8zJQy8jl zTbz|UhvHxhaKpq~&AVCQp86BydYH^ca5pDF7~9BS@)ER_@m=L+eUD-Gldnz!+8+Z5 z1pPGo<;I+0tuB2mjK*G=`1-cvJ9-`kx8xrB3Cg93@jJCGgdpUpd9+>@Iyt7$gas4$ z8W^AB87z4&aIc%Us7>@R#N5AqW-00@{Y*$OZTz{TGDC*HzRC`HSUKz4a@i@q54Bmr ziq?%yh+UoKeLl>&Yg_O<4)qWpdbAekh$+>py--m|8<)Th^rP5dz;a@Y8mNv%fQ0iQ zr7d|wdr8@iXD{1m)XwUj7e?uE?Z8-h3n13eA-5jm9imB zRgBp}-#C|$&^X&y1ZX!ufB8tgmj5=rt-k(NyZDFIXrdS?+xPGhHR#{CVW)4ag3P_6{P|0OTO#MVngQSf}x g=8zr|_WtH`MPE$1iuMy$dw+ja*eRhGR)IwO28UqN6#xJL literal 0 HcmV?d00001 diff --git a/libcxx-19.1.6.src.tar.xz b/libcxx-19.1.6.src.tar.xz new file mode 100644 index 0000000..035ed51 --- /dev/null +++ b/libcxx-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa95b7777d1aafde91df6362542cea4b2f8b8575cf2c4c950e382f5962fe2df +size 4746604 diff --git a/libcxx-19.1.6.src.tar.xz.sig b/libcxx-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..6a0c30304d44b0772b1aa8a3cfa4e8b105553013e582eeacff8d84c82b444c44 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@>UB!;S_0akH~)Tn|h`|3%d11%*Cw-_{h zhNOW0n1&&5kbb?G(_0NE+00K*V9m8&QO*U_fbW!i#@MT;O*QPX92Zv;OkD) zhpp|F5jvSO?DU=e#&A@|9y^|oy_bd!8s_`lwU8twyd0ZT92Mxc80`nLw+^B(s`;HG z>P0e0FwLKpP%cVQb*5=6?@Ed4R|YwA@1CL~-*Te&s9Cb;5gdjHbk67E@PrV$3`y)m zOdXpf;##4A#37Y9z<+8Q7TtJ`kXe$@rDS}7HD03O)7&;SS`cGXt016(0b0IpwhVCt z1QKjc0Q9#km!e%Zk#G?&uJGsMiqHQ`pKj`X#-$?|8EHg|^<3XmQI3$Hgjfs#JSY4C g0gAl8Z#^XjmSV{97^{r$>c;0>V>si#+PK>w9)JeUCjbBd literal 0 HcmV?d00001 diff --git a/libcxx-test-library-path.patch b/libcxx-test-library-path.patch new file mode 100644 index 0000000..c735e11 --- /dev/null +++ b/libcxx-test-library-path.patch @@ -0,0 +1,15 @@ +--- a/libcxx/test/configs/llvm-libc++-shared.cfg.in ++++ b/libcxx/test/configs/llvm-libc++-shared.cfg.in +@@ -9,10 +9,10 @@ config.substitutions.append(('%{compile_flags}', + '-nostdinc++ -I %{target-include-dir} -I %{include-dir} -I %{libcxx-dir}/test/support' + )) + config.substitutions.append(('%{link_flags}', +- '-nostdlib++ -L %{lib-dir} -Wl,-rpath,%{lib-dir} -lc++' ++ '-nostdlib++ -L %{lib-dir} -lc++' + )) + config.substitutions.append(('%{exec}', +- '%{executor} --execdir %T -- ' ++ '%{executor} --execdir %T --env LD_LIBRARY_PATH=%{lib} -- ' + )) + + import os, site diff --git a/libcxxabi-19.1.3.src.tar.xz b/libcxxabi-19.1.3.src.tar.xz new file mode 100644 index 0000000..99aa083 --- /dev/null +++ b/libcxxabi-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34a2defb1b220cecf9493c99e40c1c7e586f0615b68e432b6183cdaaae1be4f2 +size 583688 diff --git a/libcxxabi-19.1.3.src.tar.xz.sig b/libcxxabi-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..73258ada929c92ec4583ef3c412fa7529c2676522abb9aa2c7230b87ceaff975 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@DPTCwX3!%&Yk>Z@lS13oM~9E{(ADWGeMT(=_;(_um9n)jp+;-r5ka=E$!@a)@o z6G_ev6ky^8%$nTKo(m{Ynhj7tV!VReDe~e(0bP`3Mxu`X@{nf{dSke;`1-@1L-FVu ztGOfl?XlSNxen0ZpqNCCLoyvsO4ZSBN?9*T08Lmybi4}X{?qSeQKABZjS>HN{aTJEU2~VA~%iWigrj1?u zOo^hCo^t$~bw{WnBEOk@Hl9`N`ob3!j|NUJM=?qhGP!Q%1X#(mXFH%HXyN_3q@r6- z*%Whi0RO1j{#VE!n|iuUTF0;8Ry|+nq$FChbA5uzUd9ID1FV9^*-~vW-{kYRA*RQn zujsWqk6htfitecK$eSRmeRW&;V|d0y>ne{tSVA4kYpR%+N_GDk~(XN z_i?|v`V$a{SXj{Ft-SzLOpkg;%)-;!I~F`%M*Y07Io{{ynQ$5PKx g4>jt_TQ5i*+T44k`a3G%Jn0T^AUlgJ_mc)C6X@&N+5i9m literal 0 HcmV?d00001 diff --git a/libcxxabi-19.1.5.src.tar.xz b/libcxxabi-19.1.5.src.tar.xz new file mode 100644 index 0000000..6ecc703 --- /dev/null +++ b/libcxxabi-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43b09350620f01e068a72eee0ee993d758abc58e00ad9d30fbb7b56d13e8fa8b +size 583616 diff --git a/libcxxabi-19.1.5.src.tar.xz.sig b/libcxxabi-19.1.5.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..750f8a3b603f3d0ef785937ed14e02dea4b100a854f84542b7480a7c1f7d2b7a GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@8EI3xJdD-QvLJ*4% zYtEIbNvoVKd94mdP9q!mY9cSScUo*gH%S5AE1taI1Ca`QqfLOB4Er6r%qMhS-M3F{mQL6=y3bV?Lsm5aD!p_4+R({0c`}He@ z@VY^-55WFWI4}B3YPkQY6HWh!kAtq?kXG}(LIK%qCpWb!J#%N$8*n@qylo2cz}6?m zFdLesOAq+Uj|3kRXtFyHDVXd`ET9M^X+#ruATS%l!@#hJD+#uG_QwV*lb@Vt2H__d(X^ezLr g#7uTltzep2sJ`dBn*NTM0&mJ1Bbzr7Ym|1A;vD_ZK>z>% literal 0 HcmV?d00001 diff --git a/libcxxabi-19.1.6.src.tar.xz b/libcxxabi-19.1.6.src.tar.xz new file mode 100644 index 0000000..1829e32 --- /dev/null +++ b/libcxxabi-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8821056b55d01f6902cac47ea9db87c27f541922eedea830e27b51c85825d7dc +size 583800 diff --git a/libcxxabi-19.1.6.src.tar.xz.sig b/libcxxabi-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..210e5d30bf269563cfb1741b5328e4b3526e6d775abb616ba8f72652c706cc99 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@9WiEV7^q%D&LtB zfDwca_E;@Z4cOuJCQy3T6=S->>Hntp%JnXd6LEj9+AgmZ&45|TCRVM8xmUsA zB>@_IjK8+cP|Mni~Uy?(zkg!=xF#x5#Ep&kSV^PYvTEDHlz#k zFpQuSfGNK);sjYm1XO8DL!{otStt*-dPe)$F=-(v(NlIKf7b`^@+Vi`!7d5k$yAH# zq$en(xgU#QqtP&fA?>D!7x{H_AL4+a9yF*0P|AhX>UvSD7Qu(na9I!SMc}bnFk(68 z$P5mZsra&so5Jd7w zUPaZALLh+){0;#3SpRB#gx=~e#(%P3@{ZkPc z`T84G`Rxw#)7=*NIWjUQ{5Fde<%@7sG}t)^miR~4i(!LK@_f%DGq}Cb=dg4*q9M4+ zA_&kKiTU=!pgP5au7pn{hW{HxEAImx26I-ItE>i)4=uUTgc`c8%1@|;LAOB)bSbKx z^X_E<+hX}w*#4yPXNi!cl-#zlP&SJLVpMX5)$}>Cet&kq)`|#9bgbuyP$#*p&Li@E z4=6OGb$$T-l@D`Bzt{XRtT}@dyH-adXd&oY`T6OiVyi{|7kd)<705Efzb>RC8&ZU)U|l5{tgjzW@LL literal 0 HcmV?d00001 diff --git a/lld-19.1.4.src.tar.xz b/lld-19.1.4.src.tar.xz new file mode 100644 index 0000000..afa1679 --- /dev/null +++ b/lld-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4309e05f6a278ee2ecb5b76dfbbec6db858c13099e7e29342e29400588e8d70 +size 1645548 diff --git a/lld-19.1.4.src.tar.xz.sig b/lld-19.1.4.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..4d5f827b478a497ecdba7b723e1aad353a738e635f869e7f8e9fbc83595a47fd GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@JMJBKwU)&5(|qfSrVWL7erBhU&4I}iDV44Hl~2qX^z22)p-9YyNb`f&0-AQWz32iGCD1utpOwFV*a*7eph{VfzeZ@d zT%}D6k8@0E|3p@&|8ykF z>fkF*z5pT`|0bYxkv{2XrZTFzD%^bC=_)*|WIxRDuU!c+WU|A&)m-aR&|qNVF#856B}Yg`_9X~q@>3WAj@Zdf?iXaE2J literal 0 HcmV?d00001 diff --git a/lld-19.1.5.src.tar.xz b/lld-19.1.5.src.tar.xz new file mode 100644 index 0000000..01bb303 --- /dev/null +++ b/lld-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f71835d49461a15c283aa9030a854abfd7c651a685d711a67158644b043f6f14 +size 1645712 diff --git a/lld-19.1.5.src.tar.xz.sig b/lld-19.1.5.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..842ec2467d99e6224c78d40751593816cc4efa4b23309d1226a9863844b14517 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@ssEV)3mU)B@ zLAr3X`J-J1P`&wRmPnFC1@SOu2K;euKe#3TIOLb1pLtSNLOl)aWY}X+LH#@6&s>X-Y}XXu<9J2gP?=B zn<({{!rxYb@1%I&SO3X?9oD!0Pn|kRj|}C?8i`ejo2qZ#91_5ut zEHbUh*0$opAY= zE4M|gn+v9_5^ZaU;z62R=?zf^aYe4`4(f}RGZu`L-l{CJ%kPCo^9q<&lWB7ukWSUe gESnaxv?H}BC$fMwKk>;RuO3v5^s4ox+37nZ-INd5i2wiq literal 0 HcmV?d00001 diff --git a/lld-19.1.6.src.tar.xz b/lld-19.1.6.src.tar.xz new file mode 100644 index 0000000..aaf2b66 --- /dev/null +++ b/lld-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44fa50556cefbe3796e8256536267ee2f34ced5f3c1492473bccd75449cadbe6 +size 1645724 diff --git a/lld-19.1.6.src.tar.xz.sig b/lld-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..0a99c6305d6fba5212674e590232bc72edf72ba42df0b0ab07afb1407d51cd2a GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@pjwgbTHgU<=wV3&-)DVJHzz846ZF`aob;0^?_% zs++%J4YUO+CpM+7I`h)CgeRK0u`u0nngcAB?#UGOv{uxG+KtB1B=YITU95FVt@g=> zEWt-B)hfql)nP?E_}&L2eY~u2nKakWNZCQAFo+geC00H_*I`f$Uc6_YXRQ?uoG32~ zkT2M!(nhPAkW>P_Tz|CG^1?wLzxARM_m**GGr{M*S2!bu=Mq1p`&B{aFeB7{&hTuj z&=a3t-p*YD54Sx;y;R&Lt1lOVnPQ33g(?oe%Zt&*vnf-TC~zWObrs;K$`5`MQ~KgM ziqa691M5D7wn`_e$VpwuJ3ny4nAYd`GGZuRcAG;%GlDE`xU@>`9T`N>DMsj!J2TIv gmG2DaIy(Ta&>AEaxdD=OeRyl+=~z=_`=?%X{PTFr6aWAK literal 0 HcmV?d00001 diff --git a/lldb-19.1.3.src.tar.xz b/lldb-19.1.3.src.tar.xz new file mode 100644 index 0000000..fe921cf --- /dev/null +++ b/lldb-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4021ef6a77ba22d2c94cad3d2550849b693788a4568ec0a1e063c3907bfaa39 +size 10688736 diff --git a/lldb-19.1.3.src.tar.xz.sig b/lldb-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..6de808c343958ecc50e04c653b027cc9b43e97a9fbbc62a78aef9707ad9f703e GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@E*$i;&gI8M^Hq(LNoUtJBei{OzvwW5p&i3~>mX$N9mce(u znxh6utq8|N$DIw7a~y`O00Og+^~e|_7m;SWL8RTSjUQhp+}3C%P|y{-I3BK9SCwns z#XHuCAD>x#Xue#sttf!~DmZDA{Ey;66!hp#PYbSGs54(4I?H@^02K5kyLJ^sl_y*7 g2YUe=>r-g>QX2^IId5F#VR~Lv#%W@(xtL?#n`>gxasU7T literal 0 HcmV?d00001 diff --git a/lldb-19.1.5.src.tar.xz b/lldb-19.1.5.src.tar.xz new file mode 100644 index 0000000..b6b8f95 --- /dev/null +++ b/lldb-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b49072d9b11d2a7a6ecbbe2cb620d124d1772e80cdd1caaec9eceafb604b9830 +size 10688840 diff --git a/lldb-19.1.5.src.tar.xz.sig b/lldb-19.1.5.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..b46e56d9bace6e3d1aac3a65d5e3e3a652b134987760cb5720ad2bcb75a0ffc4 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@oE~6$QE>nvl+c^4hwA5HDG$D0O*TLlraMvY1kNnR!I`w=Y*oD44i8gG zJ7*rT{3!X3Wt)>6FD3oETg$`DddKr3_9`HBD)^Gy@vH3RyPj)q@=BmGmHtS>CedUw z7J4()-Kc2*2-InPnI&y^g{l9|vs9lrli((TgFZi3;e|<-EJ2Lv(s5{@sPe#cV|ev| z!WmUke}KCVMJb2v-?$A4JLC9J`;y#NMRuC!f>~IBaX{XaT4?MgF>L6C99o=xMY22E z`YTyEw^9gYFPYBkB-`iGInV&jbo_WRK%}gfXiUi|2IOtujfMICPyJL@H_IO8(qL@X zU`HAJ6!05K>NEc+O3AGR5}J{6oR0~&9vV{SP_=ME)9%BD6V)`@-1y|yvf=FaWmlg2 gF8BUx?(Z^fE{;2O>QxpQf@T(DS3(eDyBrnZgg7wSR{#J2 literal 0 HcmV?d00001 diff --git a/lldb-19.1.6.src.tar.xz b/lldb-19.1.6.src.tar.xz new file mode 100644 index 0000000..b502ba1 --- /dev/null +++ b/lldb-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76b6f578cbb9a7fd1eeb25667d140b0e80fb157a7404099258f30f7d2b37b292 +size 10689132 diff --git a/lldb-19.1.6.src.tar.xz.sig b/lldb-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..6e90c3535de2abba77c35426789e226a5e282274faea41de77e378eb4a01b185 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@-N2n{`8KS@WwvySfn4*E?zP6Kf9^?BbJONfJ%>?Zz?! z!dXc?Mm`n`YpIo}2B>2s{G}q)E)5wYk(fcG>(cz1jpHEc`+OEVo3DdKvok~94&`wZ z!RTomrP#zI60uiEf=Gf6|ggr^L_B&=orX8lf?Y7dBS9YiSwZTA(tr#!jX6NvwPD*$g*tJ+$TH8A>2{OoOyk17|W z&+19ik%eR!pPqTbv!);zYZpbMHtGArAW4Vghki7YIP+zEK}&>w%n=^AXvRDg-fML0 z7G5zs)^2^N540L5toA=+1eE5?cK`qY literal 0 HcmV?d00001 diff --git a/lldb-cmake.patch b/lldb-cmake.patch new file mode 100644 index 0000000..2b05df2 --- /dev/null +++ b/lldb-cmake.patch @@ -0,0 +1,13 @@ +Index: lldb-10.0.0rc1.src/source/Host/CMakeLists.txt +=================================================================== +--- lldb-10.0.0rc1.src.orig/source/Host/CMakeLists.txt ++++ lldb-10.0.0rc1.src/source/Host/CMakeLists.txt +@@ -143,6 +143,8 @@ endif() + set(EXTRA_LIBS) + if (CMAKE_SYSTEM_NAME MATCHES "NetBSD") + list(APPEND EXTRA_LIBS kvm) ++elseif (CMAKE_SYSTEM_NAME MATCHES "Linux") ++ list(APPEND EXTRA_LIBS dl pthread) + endif() + if (LLDB_ENABLE_LIBXML2) + list(APPEND EXTRA_LIBS LibXml2::LibXml2) diff --git a/llvm-19.1.3.src.tar.xz b/llvm-19.1.3.src.tar.xz new file mode 100644 index 0000000..5c789b6 --- /dev/null +++ b/llvm-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11e166d0f291a53cfc6b9e58abd1d7954de32ebc37672987612d3b7075d88411 +size 67810976 diff --git a/llvm-19.1.3.src.tar.xz.sig b/llvm-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..9c8cbb61503f70a601ebacd6986a56a0ad59725e9d16e846d8556138c298699a GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@VeiiZ z&QJ`-n+W8ol$(}BTB=)jz`R&QskIFXA}9&%T}xr*!p>rbGb)XRp*xLOTLBCShb&iw zC%S%}EYNJUJg`IAer*gT(<>2{T6%5;*B_noIz77FS9E6=6RCoy>qEpO7$#eb-hKBj z!PX-*W}wfa{ywf@Y!{dWQ)FvCCf^NNmF;7|IMUo{tx=Pnkdm0D%UCT)=UUc0p%|XN zLaLE1;WTcLFk>A(e|HcH8eZF?jXAT&`jo)+zl8#`?t~G#v8j{0Jdkb?KY<;WXz|A^ zy!OoUrpMLBHE%};jp7$h$k>Jmy0Z{-)X%E^bw`bw`~$Ht#UdnTc@J)7JB4K8>0NX9 z+vwoVx}_pYu^-3n6ktX4m%{Y9ZKAoLD3@K->b~%-?lYJjf?|R8@dc6=x=XZ4h2y;^ g%Q7V?Q%(XXpfIR~5D!%E1f!5xNGF+dR9cW!qG5>6(*OVf literal 0 HcmV?d00001 diff --git a/llvm-19.1.4.src.tar.xz b/llvm-19.1.4.src.tar.xz new file mode 100644 index 0000000..7bea117 --- /dev/null +++ b/llvm-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fe1bc197ff13f33af6179f836ce1cf2ae9886b822974a736f3a20c8aed0c1b2 +size 67817796 diff --git a/llvm-19.1.4.src.tar.xz.sig b/llvm-19.1.4.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..a6da9d569fa39ec567f629560c9c7098a83f737bff47d2e530a778de06a32516 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@p+d%YC(C>YK~ZjZNWYLPXfCq)4rHTJ*(cdqH?jdiaS7{CE_> zfewx996iJ955;Q1G}kb-)tu~WI%&AtxT#XArU0ez#Dgd+eu=SWg;{VtIl~u@lFX_! z#vPq7QK0bqHPw+THDJN!GVxFnlCx*w(p)00lLUe0#&S<&A$<3NycJ7_p#idUEes0h zQwd2uU>9(wp>Nm^YtH%HfewCU;B~DoW0e>XCX?;O-ro^wj0Tsx<&#J)G*@nZ{bt6g z@ob!q9B@6Qm952156D^~YcIO1Pl11*(%%RX3y}KGH994!E^(N^yYo()8CBo`#lchn zoI88I=n#EToLaOs1w_iae5|S8xlbV({0=wX_`HI+#X4YtSn(I&&gK;HJPIh?D|0)o zu@#0z*&aL~8#VHt{c4S!KO^Dyn$F$~MTar6sY5(@)y|e_S9)=Q8-6t!V$nf$!dpE| g0@wK>`S4TGfI14==LCM700)w9nm;*C$z%QWDpiforvLx| literal 0 HcmV?d00001 diff --git a/llvm-19.1.5.src.tar.xz b/llvm-19.1.5.src.tar.xz new file mode 100644 index 0000000..fa1b247 --- /dev/null +++ b/llvm-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d71635948e4da1814ce8e15ec45399e4094a5442e86d352c96ded0f2b3171b6 +size 67825988 diff --git a/llvm-19.1.5.src.tar.xz.sig b/llvm-19.1.5.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..dc387ad76648037f2ad377a1b86f1912279a2c34b8d6eb5725fd9eb86995f3cb GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@=W5D3Nd+YOvVOrpJ@5G&8S|Q^p-ZKel z(ZyX4VCM!ZPPv?QFx1S(NoNN}pBN!QcGVH#-I6FqGwOB5tvlyV_umhhn^Kf`S`6C^ zVIel=8ZHR-#=g?f8D{}FBI}h-wv&^N3bcHm|D4L`#gxjp05dmHz6*yd@-z(DAD(k5 z2A1Z3gnYw6&V@fkv&Fr9z|!_8NkX>Vb%B(wNn+Hz(^_v@?nTqa@3NTr`oyfYv__<4 gl$u2mkQExW+^w53H~8Wtwo5DAyQ;E_#${-m)L**Ue*gdg literal 0 HcmV?d00001 diff --git a/llvm-19.1.6.src.tar.xz b/llvm-19.1.6.src.tar.xz new file mode 100644 index 0000000..e8929be --- /dev/null +++ b/llvm-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad1a3b125ff014ded290094088de40efb9193ce81a24278184230b7d401f8a3e +size 67828048 diff --git a/llvm-19.1.6.src.tar.xz.sig b/llvm-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..472a3372eaf4d7128530d59728073b76645af641145f2dcdb499b232e767ddc8 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@o(zf@@8=`+py~bzvw|-nmQZfeO#|e>jRx`j z*FjK|V37GEyGkxNS)~!kKzO9Jcz={S@x+hi7&gq+S5!pbH*LN)|P*` zxsx(!gTrEP6db-$1GPM(>t}FGj;tykkLhI-ncb%BWvbrmbZ23ZqTv@?Vwp#TeY)sB zyU`}kB;72@7A;R&mXRh)U0q3mP$z{hafz|FJhlFYBt8Q)pTU*J%Q%uPicu2s1pE;% zzZexn_XI*r=jf-240G<=Y@KJD#nlCW!Wu2kXGC|Y`m~Eay6IiwD238fJGIvwC0l45 gxX4x1aYW!2+**e*$|K|^eD5yJ-}HZ6L1=p6c(QHJ^8f$< literal 0 HcmV?d00001 diff --git a/llvm-do-not-install-static-libraries.patch b/llvm-do-not-install-static-libraries.patch new file mode 100644 index 0000000..ab13f87 --- /dev/null +++ b/llvm-do-not-install-static-libraries.patch @@ -0,0 +1,140 @@ +This has similar effect as simply deleting the static libraries which we don't +want after installation. By not copying them in the first place we reduce the +disk usage during installation. + +Index: clang-19.1.6.src/cmake/modules/AddClang.cmake +=================================================================== +--- a/clang-19.1.6.src/cmake/modules/AddClang.cmake ++++ b/clang-19.1.6.src/cmake/modules/AddClang.cmake +@@ -106,12 +106,15 @@ macro(add_clang_library name) + + if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ARG_INSTALL_WITH_TOOLCHAIN) + get_target_export_arg(${name} Clang export_to_clangtargets UMBRELLA clang-libraries) +- install(TARGETS ${lib} +- COMPONENT ${lib} +- ${export_to_clangtargets} +- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} +- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} +- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") ++ if (ARG_SHARED OR ARG_MODULE) ++ install(TARGETS ${lib} ++ COMPONENT ${lib} ++ ${export_to_clangtargets} ++ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} ++ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} ++ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") ++ set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS ${lib}) ++ endif() + + if (NOT LLVM_ENABLE_IDE) + add_llvm_install_targets(install-${lib} +@@ -121,7 +124,6 @@ macro(add_clang_library name) + + set_property(GLOBAL APPEND PROPERTY CLANG_LIBS ${lib}) + endif() +- set_property(GLOBAL APPEND PROPERTY CLANG_EXPORTS ${lib}) + else() + # Add empty "phony" target + add_custom_target(${lib}) +Index: cmake/modules/AddLLVM.cmake +=================================================================== +--- a/cmake/modules/AddLLVM.cmake ++++ b/cmake/modules/AddLLVM.cmake +@@ -933,11 +933,14 @@ macro(add_llvm_library name) + endif() + + get_target_export_arg(${name} LLVM export_to_llvmexports ${umbrella}) +- install(TARGETS ${name} +- ${export_to_llvmexports} +- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name} +- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name} +- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT ${name}) ++ if(ARG_SHARED OR ARG_MODULE OR NOT LLVM_BUILD_LLVM_DYLIB) ++ install(TARGETS ${name} ++ ${export_to_llvmexports} ++ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name} ++ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} COMPONENT ${name} ++ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT ${name}) ++ set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name}) ++ endif() + + if (NOT LLVM_ENABLE_IDE) + add_llvm_install_targets(install-${name} +@@ -948,7 +951,6 @@ macro(add_llvm_library name) + COMPONENT ${name}) + endif() + endif() +- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name}) + endif() + + get_subproject_title(subproject_title) +Index: lld-19.1.6.src/cmake/modules/AddLLD.cmake +=================================================================== +--- a/lld-19.1.6.src/cmake/modules/AddLLD.cmake ++++ b/lld-19.1.6.src/cmake/modules/AddLLD.cmake +@@ -17,13 +17,6 @@ macro(add_lld_library name) + + if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) + get_target_export_arg(${name} LLD export_to_lldtargets) +- install(TARGETS ${name} +- COMPONENT ${name} +- ${export_to_lldtargets} +- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} +- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX} +- RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") +- + if (${ARG_SHARED} AND NOT CMAKE_CONFIGURATION_TYPES) + add_llvm_install_targets(install-${name} + DEPENDS ${name} +Index: polly-19.1.6.src/cmake/polly_macros.cmake +=================================================================== +--- a/polly-19.1.6.src/cmake/polly_macros.cmake ++++ b/polly-19.1.6.src/cmake/polly_macros.cmake +@@ -42,15 +42,17 @@ macro(add_polly_library name) + llvm_config(${name} ${LLVM_LINK_COMPONENTS}) + endif( LLVM_LINK_COMPONENTS ) + if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY OR ${name} STREQUAL "LLVMPolly") +- install(TARGETS ${name} +- COMPONENT ${name} +- EXPORT LLVMExports +- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} +- ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}) +- add_llvm_install_targets(install-${name} +- COMPONENT ${name}) ++ if (MODULE OR SHARED_LIBRARY OR NOT LLVM_BUILD_LLVM_DYLIB) ++ install(TARGETS ${name} ++ COMPONENT ${name} ++ EXPORT LLVMExports ++ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX} ++ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX}) ++ add_llvm_install_targets(install-${name} ++ COMPONENT ${name}) ++ set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name}) ++ endif() + endif() +- set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name}) + endmacro(add_polly_library) + + macro(add_polly_loadable_module name) +Index: polly-19.1.6.src/lib/CMakeLists.txt +=================================================================== +--- a/polly-19.1.6.src/lib/CMakeLists.txt ++++ b/polly-19.1.6.src/lib/CMakeLists.txt +@@ -109,7 +109,7 @@ set_target_properties(PollyCore PROPERTI + # It depends on all library it needs, such that with + # LLVM_POLLY_LINK_INTO_TOOLS=ON, its dependencies like PollyISL are linked as + # well. +-target_link_libraries(Polly PUBLIC ++target_link_libraries(Polly PRIVATE + ${ISL_TARGET} + ) + +@@ -130,7 +130,7 @@ else () + # to be already available in the address space the module is loaded into. + # Adding them once more would have the effect that both copies try to register + # the same command line options, to which LLVM reacts with an error. +- target_link_libraries(LLVMPolly PUBLIC ${ISL_TARGET}) ++ target_link_libraries(LLVMPolly PRIVATE ${ISL_TARGET}) + + set_target_properties(LLVMPolly + PROPERTIES diff --git a/llvm-docs-19.1.3.src.tar.xz b/llvm-docs-19.1.3.src.tar.xz new file mode 100644 index 0000000..27f7ca7 --- /dev/null +++ b/llvm-docs-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7750ff33900a4ef43a9337dd9215da5e6491685623106855b646c137a590b964 +size 8389832 diff --git a/llvm-docs-19.1.4.src.tar.xz b/llvm-docs-19.1.4.src.tar.xz new file mode 100644 index 0000000..f8d03dc --- /dev/null +++ b/llvm-docs-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce07ccf629f97a265a701746c9763f54a3f183ba7ee539ebe936057d0f860ad5 +size 8390000 diff --git a/llvm-docs-19.1.5.src.tar.xz b/llvm-docs-19.1.5.src.tar.xz new file mode 100644 index 0000000..7b99f73 --- /dev/null +++ b/llvm-docs-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53dde49651fc72aa8fb4d7092d153f9206e781e8cf2d84d20e1d74bffe607fd8 +size 8389688 diff --git a/llvm-docs-19.1.6.src.tar.xz b/llvm-docs-19.1.6.src.tar.xz new file mode 100644 index 0000000..efe2026 --- /dev/null +++ b/llvm-docs-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:175c4e88d18065142c2636c4d287685e4db3560d196dfce016397b11cc78b4dd +size 8390256 diff --git a/llvm-fix-cov-test-i586.patch b/llvm-fix-cov-test-i586.patch new file mode 100644 index 0000000..55e13d5 --- /dev/null +++ b/llvm-fix-cov-test-i586.patch @@ -0,0 +1,13 @@ +diff --git a/llvm/test/tools/llvm-cov/mcdc-export-json.test b/llvm/test/tools/llvm-cov/mcdc-export-json.test +index c2cebf52db8c..a55d7400c51e 100644 +--- a/llvm/test/tools/llvm-cov/mcdc-export-json.test ++++ b/llvm/test/tools/llvm-cov/mcdc-export-json.test +@@ -5,7 +5,7 @@ + // CHECK: 15,7,15,13,0,5,[true,true] + // CHECK: 15,19,15,25,0,5,[true,false] + // CHECK: 18,7,19,15,0,5,[true,true,false,true] +-// CHECK: "mcdc":{"count":12,"covered":10,"notcovered":2,"percent":83.333333333333343} ++// CHECK: "mcdc":{"count":12,"covered":10,"notcovered":2,"percent":83.3333333333333{{([[:digit:]]{2})}}} + + Instructions for regenerating the test: + diff --git a/llvm-fix-find-gcc5-install.patch b/llvm-fix-find-gcc5-install.patch new file mode 100644 index 0000000..be01de5 --- /dev/null +++ b/llvm-fix-find-gcc5-install.patch @@ -0,0 +1,13 @@ +Index: clang-18.1.0rc1.src/lib/Driver/ToolChains/Gnu.cpp +=================================================================== +--- clang-18.1.0rc1.src.orig/lib/Driver/ToolChains/Gnu.cpp ++++ clang-18.1.0rc1.src/lib/Driver/ToolChains/Gnu.cpp +@@ -2179,7 +2179,7 @@ Generic_GCC::GCCVersion Generic_GCC::GCC + return GoodVersion; + } + +- if (!TryParseNumber(MinorStr, GoodVersion.Minor)) ++ if (!MinorStr.str().empty() && !TryParseNumber(MinorStr, GoodVersion.Minor)) + return BadVersion; + GoodVersion.MinorStr = MinorStr; + diff --git a/llvm-normally-versioned-libllvm.patch b/llvm-normally-versioned-libllvm.patch new file mode 100644 index 0000000..af2452b --- /dev/null +++ b/llvm-normally-versioned-libllvm.patch @@ -0,0 +1,66 @@ +Before llvm4, both major and minor version updates of llvm were regularly +breaking API. Because of that, the libLLVM library was named in following +format: libLLVM-${major}-${minor}.so + + (https://bugs.llvm.org/show_bug.cgi?id=25059) + (https://reviews.llvm.org/D13841) + +The package containing this library was called libLLVM${major}_${minor} which +follows our guidelines. + +Since llvm4, llvm decided to follow semantic versioning and only break API if +the major version was increased. In addition they do not intend to ever have +minor version other than 0. + (http://blog.llvm.org/2016/12/llvms-new-versioning-scheme.html) + +The package was renamed to libLLVM${major}, which no longer follows the naming +guidelines, but since the package contained multiple libraries, it was not +detected. + +Since bnc#1049703 the libLLVM${major} package contains only the +libLLVM-${major}-${minor}.so library and no others. This triggers the +shlib-policy-name-error check in our packaging system. + +Because the reasons for using the libLLVM-${major}-${minor}.so format are no +longer valid, lets revert back to libLLVM.so.${major}.${minor}.${version} +format. That way the package name matches our guidelines. + +With llvm18, the minor version is now always 1 for releases, and upstream +decided to rename the library to libLLVM.so.${major}.${minor}, but keep the +old name as symbolic link for backwards compatibility. That is of course +not relevant for us. + +Index: llvm-8.0.0rc3.src/tools/llvm-config/llvm-config.cpp +=================================================================== +--- llvm-8.0.0rc3.src.orig/tools/llvm-config/llvm-config.cpp ++++ llvm-8.0.0rc3.src/tools/llvm-config/llvm-config.cpp +@@ -380,7 +380,6 @@ int main(int argc, char **argv) { + } else { + // default to the unix values: + SharedExt = "so"; +- SharedVersionedExt = LLVM_DYLIB_VERSION ".so"; + StaticExt = "a"; + StaticDir = SharedDir = ActiveLibDir; + StaticPrefix = SharedPrefix = "lib"; +@@ -393,7 +392,7 @@ int main(int argc, char **argv) { + + bool DyLibExists = false; + const std::string DyLibName = +- (SharedPrefix + "LLVM-" + SharedVersionedExt).str(); ++ (SharedPrefix + "LLVM." + SharedExt).str(); + + // If LLVM_LINK_DYLIB is ON, the single shared library will be returned + // for "--libs", etc, if they exist. This behaviour can be overridden with +Index: llvm-18.1.2.src/tools/llvm-shlib/CMakeLists.txt +=================================================================== +--- llvm-18.1.2.src.orig/tools/llvm-shlib/CMakeLists.txt ++++ llvm-18.1.2.src/tools/llvm-shlib/CMakeLists.txt +@@ -37,8 +37,6 @@ if (WIN32) + add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${INSTALL_WITH_TOOLCHAIN} ${SOURCES}) + else() + add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB OUTPUT_NAME LLVM ${INSTALL_WITH_TOOLCHAIN} ${SOURCES}) +- # Add symlink for backwards compatibility with old library name +- llvm_install_library_symlink(LLVM-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX} $ SHARED FULL_DEST COMPONENT LLVM) + endif() + + list(REMOVE_DUPLICATES LIB_NAMES) diff --git a/llvm-projects-tools-order.patch b/llvm-projects-tools-order.patch new file mode 100644 index 0000000..7198194 --- /dev/null +++ b/llvm-projects-tools-order.patch @@ -0,0 +1,19 @@ +diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt +index 04d4cf2..b698c27 100644 +--- a/llvm/CMakeLists.txt ++++ b/llvm/CMakeLists.txt +@@ -1188,12 +1188,12 @@ foreach( binding ${LLVM_BINDINGS_LIST} ) + endif() + endforeach() + +-add_subdirectory(projects) +- + if( LLVM_INCLUDE_TOOLS ) + add_subdirectory(tools) + endif() + ++add_subdirectory(projects) ++ + if( LLVM_INCLUDE_RUNTIMES ) + add_subdirectory(runtimes) + endif() diff --git a/llvm-suse-implicit-gnu.patch b/llvm-suse-implicit-gnu.patch new file mode 100644 index 0000000..31fee40 --- /dev/null +++ b/llvm-suse-implicit-gnu.patch @@ -0,0 +1,14 @@ +diff --git a/llvm/include/llvm/TargetParser/Triple.h b/llvm/include/llvm/TargetParser/Triple.h +index d2126a0..eaf7599 100644 +--- a/llvm/include/llvm/TargetParser/Triple.h ++++ b/llvm/include/llvm/TargetParser/Triple.h +@@ -614,7 +614,8 @@ public: + Env == Triple::GNUEABI || Env == Triple::GNUEABIT64 || + Env == Triple::GNUEABIHF || Env == Triple::GNUEABIHFT64 || + Env == Triple::GNUF32 || Env == Triple::GNUF64 || +- Env == Triple::GNUSF || Env == Triple::GNUX32; ++ Env == Triple::GNUSF || Env == Triple::GNUX32 || ++ (Env == Triple::UnknownEnvironment && getVendor() == Triple::SUSE); + } + + /// Tests whether the OS is Haiku. diff --git a/llvm-workaround-superfluous-branches.patch b/llvm-workaround-superfluous-branches.patch new file mode 100644 index 0000000..392c1c6 --- /dev/null +++ b/llvm-workaround-superfluous-branches.patch @@ -0,0 +1,14 @@ +diff --git a/llvm/include/llvm/Support/Casting.h b/llvm/include/llvm/Support/Casting.h +index 4ff5865..19623f6 100644 +--- a/llvm/include/llvm/Support/Casting.h ++++ b/llvm/include/llvm/Support/Casting.h +@@ -661,6 +661,9 @@ template + template + [[nodiscard]] inline decltype(auto) dyn_cast(From *Val) { + assert(detail::isPresent(Val) && "dyn_cast on a non-existent value"); ++#if defined(__clang__) && defined(NDEBUG) ++ __builtin_assume(Val); ++#endif + return CastInfo::doCastIfPossible(Val); + } + diff --git a/llvm19-rpmlintrc b/llvm19-rpmlintrc new file mode 100644 index 0000000..f681649 --- /dev/null +++ b/llvm19-rpmlintrc @@ -0,0 +1,22 @@ +# This line is mandatory to access the configuration functions +from Config import * + +addFilter("devel-file-in-non-devel-package .*/clang/.*/include/.*") +addFilter("devel-file-in-non-devel-package .*/clang/.*/lib/.*") +addFilter("devel-file-in-non-devel-package .*/usr/include/.*") + +addFilter("devel-file-in-non-devel-package .*/lib.*/*.a") +addFilter("devel-file-in-non-devel-package .*/lib.*/*.so") + +# We're deliberately conflicting with SLE. (https://code.opensuse.org/leap/features/issue/55) +addFilter("SUSE_Backports_policy-SLE_conflict") + +# Archive seems to be deliberately empty on some architectures. +addFilter("lto-no-text-in-archive .*/lib.*/clang/.*/lib/linux/libclang_rt.asan_static-.*.a") + +# LLVM IR archive for OpenMP offloading, deliberately contains no object code. +addFilter("lto-no-text-in-archive .*/lib.*/libomptarget.devicertl.a") + +# Different versions of LLVM can produce the same SONAME, so we'll have to use +# non-standard names sometimes. (Leap's rpmlint complains, Tumbleweed's doesn't.) +addFilter("shlib-policy-name-error") diff --git a/llvm19.changes b/llvm19.changes new file mode 100644 index 0000000..a12920d --- /dev/null +++ b/llvm19.changes @@ -0,0 +1,3217 @@ +------------------------------------------------------------------- +Thu Dec 19 19:50:08 UTC 2024 - Aaron Puchert + +- Update to version 19.1.6. + * This release contains bug-fixes for the LLVM 19.1.0 release. + This release is API and ABI compatible with 19.1.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Thu Dec 5 22:56:24 UTC 2024 - Aaron Puchert + +- Update to version 19.1.5. + * This release contains bug-fixes for the LLVM 19.1.0 release. + This release is API and ABI compatible with 19.1.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Tue Nov 19 21:17:27 UTC 2024 - Aaron Puchert + +- Update to version 19.1.4. + * This release contains bug-fixes for the LLVM 19.1.0 release. + This release is API and ABI compatible with 19.1.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Sat Nov 16 22:38:02 UTC 2024 - Aaron Puchert + +- Apply clang-shlib-symbol-versioning.patch to add symbol versions + to libclang-cpp.so similar to libLLVM.so. This is required when + multiple versions of the library are loaded into the same + process. (boo#1219405, boo#1221183, boo#1233220) + +------------------------------------------------------------------- +Wed Nov 6 15:24:59 UTC 2024 - Michal Suchanek + +- Enable lldb on s390x and ppc64le (bsc#1232906). + +------------------------------------------------------------------- +Sat Nov 2 17:20:43 UTC 2024 - Aaron Puchert + +- Update to version 19.1.3. + * This release contains bug-fixes for the LLVM 19.1.0 release. + This release is API and ABI compatible with 19.1.0. +- Rebase patches: + * llvm-do-not-install-static-libraries.patch + * llvm-suse-implicit-gnu.patch +- Patch llvm-fix-build-failure-on-ppc64le.patch landed upstream. + +------------------------------------------------------------------- +Mon Oct 28 22:11:18 UTC 2024 - Aaron Puchert + +- Update llvm19.keyring from upstream. + +------------------------------------------------------------------- +Thu Oct 24 21:11:02 UTC 2024 - Aaron Puchert + +- Update to version 19.1.2. + * This release contains bug-fixes for the LLVM 19.1.0 release. + This release is API and ABI compatible with 19.1.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Wed Oct 2 21:13:46 UTC 2024 - Aaron Puchert + +- Update to version 19.1.1. + * This release contains bug-fixes for the LLVM 19.1.0 release. + This release is API and ABI compatible with 19.1.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Sun Sep 22 15:27:22 UTC 2024 - Aaron Puchert + +- Update to version 19.1.0. + * For details, see the release notes: + - https://releases.llvm.org/19.1.0/docs/ReleaseNotes.html + - https://releases.llvm.org/19.1.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/19.1.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/19.1.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/19.1.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tool: reduce-chunk-list to help find bugs using debug + counters. See the Programmer's Manual for usage. + * New Clang tools: clang-installapi for Apple-related package + management, clang-nvlink-wrapper as a wrapper around `nvlink`. +- No longer include OpenMP offload libraries. +- Rebase patches: + * clang-fix-openmp-test.patch + * libcxx-test-library-path.patch + * llvm-do-not-install-static-libraries.patch + * llvm_build_tablegen_component_as_shared_library.patch +- Remove obsolete patches: + * lld-default-sha1.patch because upstream switched to sha1. + * llvm-remove-clang-only-flags.patch because warning flags are no + longer autodetected. + * openmp-dont-run-gpu-arch.patch because we're excluding the + offload project for now. +- Add llvm-fix-build-failure-on-ppc64le.patch to fix ppc64le build. +- Require Python 3.11 on Leap because we need Python >= 3.8 now. + +------------------------------------------------------------------- +Tue Sep 3 13:30:40 UTC 2024 - Martin Liška + +- Enable zstd compression support again. + +------------------------------------------------------------------- +Fri Aug 23 21:41:32 UTC 2024 - Aaron Puchert + +- Split off clang shared runtime libraries into libclang_rtX, so + that they can be used by other packages without requiring the + entire compiler tool chain. This is still not ergonomical: the + libraries don't sit in %{_libdir}, so an RPATH or setting + LD_LIBRARY_PATH is required, and they don't have an SO version, + so zypper won't know which version to is needed. (boo#1225784) + +------------------------------------------------------------------- +Tue Aug 20 21:20:37 UTC 2024 - Aaron Puchert + +- Add minor version to Python shebangs. (boo#1212476) +- Remove shebang and executable bit where not needed. + +------------------------------------------------------------------- +Sun Jun 30 17:44:44 UTC 2024 - Aaron Puchert + +- Update to version 18.1.8. + * Fix a regression from the 18.1.6 release, which could result in + compiler crashes in the PPCMergeStringPool pass when compiling + for PowerPC targets. + * Fixes clang-format regressions (since 18.1.1) on breaking + before a stream insertion operator (<<) when both operands are + string literals. + * Fixes a clang-format regression (since 17.0.6) on formatting + goto labels in macro definitions. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Tue May 21 21:06:41 UTC 2024 - Aaron Puchert + +- Update to version 18.1.6. + * Fixes issues where LLVM is either generating the incorrect thunk + for a function with aligned parameters or didn't correctly pass + through the return value when StructRet was used. + * `-Xclang -target-feature -Xclang +unaligned-scalar-mem` can be + used to enable unaligned scalar memory accesses for CPUs that + do not support unaligned vector accesses. `-mno-strict-align` + will enable unaligned scalar and vector memory accesses. + * Don't replace an aliasee with an alias that has weak linkage. + This avoids incorrect linkage that can lead to using the wrong + symbols during linking time. + * Fixes build failures when compiling AVX512 code using + `-march=native` on machines without AVX512. The problem was + introduced in LLVM 18.1.5. + * Fixes crash in AArch64 backend when having `true` or `false` as + operand for `fcmp` instruction on IR level. + * Fixes compiler crash when user specifies `-mno-evex512` with + AVX512 features but no AVX512VL. + * Fixes a bug that tries to do VBROADCAST_LOAD for `f16` without + AVX2. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Tue May 7 21:48:27 UTC 2024 - Aaron Puchert + +- Update to version 18.1.5. + * This release contains bug-fixes for the LLVM 18.1.0 release. + This release is API and ABI compatible with 18.1.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Thu Apr 18 21:22:11 UTC 2024 - Aaron Puchert + +- Update to version 18.1.4. + * Fixes an issue with Arm64EC code generation where calls to some + intrinsics implemented in compiler-rt used the wrong name + mangling, eventually resulting in unresolved symbol errors + during linking. + * Fixed an incorrect poison-generating flag preservation in + `InstSimplify`. It will fix a miscompilation on RISCV, which + turns the incorrect `or disjoint` into an `add`. + * Save/restore routines for RV32E/RV64E are added to compiler-rt. + * Fix regressions introduced in LLVM 18.1.3 in MIPS atomicrmw + min/max codegen. +- Include module files for libc++ in libc++-devel. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Thu Apr 4 14:31:53 UTC 2024 - Aaron Puchert + +- Update to version 18.1.3. + * Fixes ThreadSanitizer failures for glibc's LoongArch and + certain RISC-V ports when fstat is used. + * `transform.structured.convert_to_loops` now properly deletes + its target op. + * Fix a `llvm.usub.with.overflow.i128` wrong code generation + regression that was introduced with LLVM 18.1.0. + * MemorySanitizer on Linux can now run even when maximum-entropy + address-space layout randomization is configured globally (as + is becoming increasingly common). MemorySanitizer can + automatically re-exec ASLR-off for the process if needed, + instead of aborting. + * Fixed a Clang 18.x regression which increased binary size and + stack usage with `-ftrivial-auto-var-init`. +- Set directories for configuration files: /etc/clang for system- + wide configuration and ~/.config/clang for users. For details see + https://clang.llvm.org/docs/UsersManual.html#configuration-files. +- Use old conflicts/provides for python3-clang on Leap. + +------------------------------------------------------------------- +Sat Mar 23 22:47:43 UTC 2024 - Aaron Puchert + +- Update to version 18.1.2. + * This release contains bug-fixes for the LLVM 18.1.0 release. + This release is API and ABI compatible with 18.1.0. +- Rebase patches: + * llvm-do-not-install-static-libraries.patch + * llvm-normally-versioned-libllvm.patch +- Prefer ld.bfd for now to get THP-compatible section layout. + +------------------------------------------------------------------- +Sat Mar 9 22:37:29 UTC 2024 - Aaron Puchert + +- Update to version 18.1.1. + * For details, see the release notes: + - https://releases.llvm.org/18.1.0/docs/ReleaseNotes.html + - https://releases.llvm.org/18.1.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/18.1.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/18.1.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/18.1.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tool: llvm-readtapi, LLVM TAPI file reader and + transformer. + * Removed LLVM tools: llvm-tapi-diff, llvm-remark-size-diff. + * New LLDB tool: lldb-dap debug adapter. + * Removed LLDB tool: lldb-vscode. +- Rename libomp-devel symbolic name to libomp-devel-provider. + We want to introduce a metapackage named libomp-devel. +- Rebase patches: + * assume-opensuse.patch + * link-clang-tools-extra-shared.patch + * llvm_build_tablegen_component_as_shared_library.patch + * llvm-do-not-install-static-libraries.patch + * llvm-fix-find-gcc5-install.patch + * llvm-normally-versioned-libllvm.patch + * llvm-suse-implicit-gnu.patch +- Add patches to fix tests: + * clang-fix-modules-test-riscv.patch + * clang-fix-openmp-test-non-x86.patch + * clang-fix-openmp-test.patch + * llvm-fix-cov-test-i586.patch +- Restructure version macros in specfile for new versioning scheme. +- Fix packaging of ld.lld as ld alternative. +- Disable LLDB Python bindings on SLE/Leap. They now require Swig 4 + which isn't available there. + +------------------------------------------------------------------- +Wed Mar 6 03:20:24 UTC 2024 - Michael Gorse + +- Explicitly define PYTHON3_EXECUTABLE, since python 3.11 is being + pulled in by cmake in SLE-15-SP6. + +------------------------------------------------------------------- +Mon Mar 4 21:29:51 UTC 2024 - Aaron Puchert + +- Fix PowerPC triples: use powerpc[64[le]] instead of ppc[64[le]]. +- Require 8 GB memory for 64-bit architectures to prevent OOM. +- Use %patch -P N instead of deprecated %patchN. + +------------------------------------------------------------------- +Thu Jan 11 07:38:12 UTC 2024 - Fabian Vogt + +- Use %_target_* for determining the compiler host triple (boo#1218701) + +------------------------------------------------------------------- +Thu Nov 30 22:53:03 UTC 2023 - Aaron Puchert + +- Update to version 17.0.6. + * This release contains bug-fixes for the LLVM 17.0.0 release. + This release is API and ABI compatible with 17.0.0. +- Rebase patches: + * llvm-do-not-install-static-libraries.patch + * llvm-normally-versioned-libllvm.patch +- Use major version only instead of full (patch-level) version for + versioned executables: we don't support parallel installation of + multiple versions of the same LLVM major version. (boo#1217450) + Also drop the clang-X.Y symlink that was introduced for + boo#1012260, because Y is always 0. +- Manage clang-cpp with update-alternatives like other binaries. + +------------------------------------------------------------------- +Sat Nov 18 22:07:04 UTC 2023 - Aaron Puchert + +- Update to version 17.0.5. + * This release contains bug-fixes for the LLVM 17.0.0 release. + This release is API and ABI compatible with 17.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Also test clang-tools-extra (at least most parts) and lld. +- Adapt test in lld-default-sha1.patch. +- Don't disable testing if qemu_user_space_build has been set to 0. + +------------------------------------------------------------------- +Sun Nov 5 20:20:37 UTC 2023 - Aaron Puchert + +- Update to version 17.0.4. + * This release contains bug-fixes for the LLVM 17.0.0 release. + This release is API and ABI compatible with 17.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Include libomptarget.devicertl.a in libomp*-devel, which is + required for (GPU) offloading. + +------------------------------------------------------------------- +Thu Oct 19 21:04:06 UTC 2023 - Aaron Puchert + +- Update to version 17.0.3. + * This release contains bug-fixes for the LLVM 17.0.0 release. + This release is API and ABI compatible with 17.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Disable zstd support for now regardless of whether libzstd-devel + is installed. (boo#1216121) +- Limit number of LTO threads on 32-bit architectures to prevent + out-of-memory during linking. + +------------------------------------------------------------------- +Sat Oct 7 14:19:01 UTC 2023 - Aaron Puchert + +- Update to version 17.0.2. + * This release contains bug-fixes for the LLVM 17.0.0 release. + This release is API and ABI compatible with 17.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Tue Sep 19 21:21:37 UTC 2023 - Aaron Puchert + +- Update to version 17.0.1. + * For details, see the release notes: + - https://releases.llvm.org/17.0.1/docs/ReleaseNotes.html + - https://releases.llvm.org/17.0.1/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/17.0.1/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/17.0.1/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/17.0.1/tools/lld/docs/ReleaseNotes.html +- Rebase patches: + * libcxx-test-library-path.patch + * llvm_build_tablegen_component_as_shared_library.patch + * llvm-do-not-install-static-libraries.patch + * llvm-normally-versioned-libllvm.patch + * llvm-remove-clang-only-flags.patch + * opt-viewer-Find-style-css-in-usr-share.patch +- Simplify check-no-llvm-exegesis.patch by removing test directory. +- Drop patches that have landed upstream: + * openmp-drop-rpath.patch +- Add openmp-dont-run-gpu-arch.patch: the binaries are not + available in our build, and neither are the toolchains they test + for (NV CUDA and AMD HSA). + +------------------------------------------------------------------- +Thu Jun 15 21:53:08 UTC 2023 - Aaron Puchert + +- Update to version 16.0.6. + * This release contains bug-fixes for the LLVM 16.0.0 release. + This release is API and ABI compatible with 16.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Make python3-clang noarch again and fix conflicts/provides to + point to %python3_sitelib instead of %python3_sitearch. + +------------------------------------------------------------------- +Sat Jun 3 21:56:34 UTC 2023 - Aaron Puchert + +- Update to version 16.0.5. + * This release contains bug-fixes for the LLVM 16.0.0 release. + This release is API and ABI compatible with 16.0.0. +- Rebase patches: + * llvm-do-not-install-static-libraries.patch + * llvm-remove-clang-only-flags.patch +- Enable ThinLTO on riscv64. + +------------------------------------------------------------------- +Wed May 17 21:27:46 UTC 2023 - Aaron Puchert + +- Update to version 16.0.4. + * This release contains bug-fixes for the LLVM 16.0.0 release. + This release is API and ABI compatible with 16.0.0. +- Rebase patches: + * llvm-do-not-install-static-libraries.patch + * llvm-remove-clang-only-flags.patch + +------------------------------------------------------------------- +Sun May 7 18:34:15 UTC 2023 - Aaron Puchert + +- Update to version 16.0.3. + * This release contains bug-fixes for the LLVM 16.0.0 release. + This release is API and ABI compatible with 16.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Fri Apr 21 21:07:38 UTC 2023 - Aaron Puchert + +- Update to version 16.0.2. + * This release contains bug-fixes for the LLVM 16.0.0 release. + This release is API and ABI compatible with 16.0.0. +- Rebase check-no-llvm-exegesis.patch. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Tue Apr 18 20:40:44 UTC 2023 - Aaron Puchert + +- Relax requirements for clang-tools to allow installation of older + versions of libclang13 with the -devel package. (boo#1210176) +- Enable ThinLTO for ARM 6/7/8 again. (boo#1178070) + +------------------------------------------------------------------- +Thu Apr 13 04:30:36 UTC 2023 - William Brown + +- bsc#1210383 - Add aarch64 to lldb platforms + +------------------------------------------------------------------- +Thu Apr 6 20:48:07 UTC 2023 - Aaron Puchert + +- Update to version 16.0.1. + * This release contains bug-fixes for the LLVM 16.0.0 release. + This release is API and ABI compatible with 16.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Sat Mar 18 19:25:39 UTC 2023 - Aaron Puchert + +- Update to version 16.0.0. + * For details, see the release notes: + - https://releases.llvm.org/16.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/16.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/16.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/16.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/16.0.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tools: + - llvm-debuginfo-analyzer: Print a logical representation of + low-level debug information. + - llvm-remarkutil: Remark file utilities. + * The test tool split-file is no longer installed. + * New Clang tools: + - amdgpu-arch and nvptx-arch: Tools used to detect locally + available GPUs by the Clang OpenMP driver. + - clang-include-cleaner: Standalone tool to determine which + headers are used, using existing functionality in clangd. + - clang-tblgen: Table Generation for Clang. + * Removed Clang tools: clang-{nvlink,offload}-wrapper. +- Rebase patches: + * assume-opensuse.patch + * check-no-llvm-exegesis.patch + * link-clang-shared.patch + * llvm_build_tablegen_component_as_shared_library.patch + * llvm-do-not-install-static-libraries.patch + * llvm-suse-implicit-gnu.patch + * llvm-workaround-superfluous-branches.patch + * openmp-drop-rpath.patch +- Drop patches that have landed upstream: + * clang-test-xfail-gnuless-triple.patch + * CMake-Look-up-target-subcomponents-in-LLVM_AVAILABLE_LIBS.patch + * libcxxabi-fix-armv7-test.patch + * llvm-armv7-fix-vector-compare-with-zero-lowering.patch + * llvm-link-atomic.patch +- Remove llvm-better-detect-64bit-atomics-support.patch that should + not be required anymore. +- Add PGP signatures and keyring for source verification. + +------------------------------------------------------------------- +Sat Mar 11 14:09:34 UTC 2023 - Aaron Puchert + +- Add llvm-suse-implicit-gnu.patch to recognize -suse-linux + as implicitly GNU. Without this we would get library calls for + fused-multiply-add even if it's available in hardware. +- Add openmp-drop-rpath.patch: backport revert of adding RUNPATH + to openmp executables. (boo#1206837) + +------------------------------------------------------------------- +Thu Mar 9 17:17:40 UTC 2023 - Dirk Müller + +- update constraints to exclude workers with very slow CPU + +------------------------------------------------------------------- +Sat Jan 14 14:06:38 UTC 2023 - Aaron Puchert + +- Update to version 15.0.7. + * This release contains bug-fixes for the LLVM 15.0.0 release. + This release is API and ABI compatible with 15.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Build stage 2 with -fno-plt on x86_64: since building with + -Wl,-z,now the PLT stubs are basically dead code, so eliminating + the indirection reduces the number of branches and improves code + locality for the quite frequent cross-DSO calls. +- Add llvm-workaround-superfluous-branches.patch: hints LLVM to + eliminate branches until gh#llvm/llvm-project#28804 is solved. + +------------------------------------------------------------------- +Sun Dec 4 21:43:38 UTC 2022 - Aaron Puchert + +- Update to version 15.0.6. + * This release contains bug-fixes for the LLVM 15.0.0 release. + This release is API and ABI compatible with 15.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Wed Nov 16 22:06:27 UTC 2022 - Aaron Puchert + +- Update to version 15.0.5. + * This release contains bug-fixes for the LLVM 15.0.0 release. + This release is API and ABI compatible with 15.0.0. +- Remove obsolete lldb-swig-4.1.0-build-fix.patch. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Sun Nov 6 19:13:25 UTC 2022 - Aaron Puchert + +- Update to version 15.0.4. + * This release contains bug-fixes for the LLVM 15.0.0 release. + This release is API and ABI compatible with 15.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Thu Oct 27 20:44:54 UTC 2022 - Aaron Puchert + +- Update to version 15.0.3. + * This release contains bug-fixes for the LLVM 15.0.0 release. + This release is API and ABI compatible with 15.0.0. +- Add llvm-armv7-fix-vector-compare-with-zero-lowering.patch: Fix + lowering of non-canonical vector comparison with zero on armv7, + preventing a crash (boo#1204267, gh#llvm/llvm-project#58514). +- Add lldb-swig-4.1.0-build-fix.patch: Fix build with Swig 4.1.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Tue Oct 4 21:41:05 UTC 2022 - Aaron Puchert + +- Update to version 15.0.2. + * This release contains bug-fixes for the LLVM 15.0.0 release. + This release is API and ABI compatible with 15.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Thu Sep 22 12:19:07 UTC 2022 - Aaron Puchert + +- Update to version 15.0.1. + * This release contains bug-fixes for the LLVM 15.0.0 release. + This release is API and ABI compatible with 15.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Wed Sep 21 21:21:19 UTC 2022 - Aaron Puchert + +- Always drop -gnu from triple for consistency. Patch a test that + was looking for -linux- in clang-test-xfail-gnuless-triple.patch. + +------------------------------------------------------------------- +Mon Sep 12 07:29:54 UTC 2022 - Andreas Schwab + +- Use correct LLVM_HOST_TRIPLE for riscv64 + +------------------------------------------------------------------- +Tue Sep 6 20:23:14 UTC 2022 - Aaron Puchert + +- Update to version 15.0.0. + * For details, see the release notes: + - https://releases.llvm.org/15.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/15.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/15.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/15.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/15.0.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tools: + - llvm-debuginfod: Provides debug info to remote hosts. + - llvm-dwarfutil: Can copy and manipulate debug info. + - llvm-remark-size-diff: Compute diff between remark files. + * New Clang tools: + - clang-offload-packager: Bundle multiple objects into single + fat binaries including offload code. + - clang-pseudo: Approximate heuristic parser for C++. +- Rebase patches: + * check-no-llvm-exegesis.patch + * link-clang-tools-extra-shared.patch + * lld-default-sha1.patch + * llvm-do-not-install-static-libraries.patch + * lto-disable-cache.patch +- Drop patches that have landed upstream: + * clang-repl-private-deps.patch + * llvm-glibc-2-36.patch + * llvm-scev-fix-isImpliedViaMerge.patch +- Drop llvm-lifetime-for-rust.patch: this is now solved via + attributes and LLVM doesn't need a hardcoded list of allocation + functions anymore. +- Add llvm-link-atomic.patch to fix build on ppc. +- Add libcxx-test-library-path.patch to fix libc++ tests failing + without RUNPATH on libc++.so. +- Add libcxxabi-fix-armv7-test.patch to fix tests on armv7l. +- Thanks to Andreas Schwab for most of the rebasing! + +------------------------------------------------------------------- +Sat Sep 3 15:15:10 UTC 2022 - Aaron Puchert + +- Make sure we keep -DNDEBUG. At some point %{optflags} must have + lost it, perhaps because CMake usually adds it on top. So when + overriding CMAKE_{C,CXX}_FLAGS_RELWITHDEBINFO, we make sure to + take over the other flags. We drop LLVM_ENABLE_ASSERTIONS=OFF, + because that's the default anyway and hasn't helped here. +- Add llvm-scev-fix-isImpliedViaMerge.patch: fixes a miscompilation + caused by mixing up values of the current and previous iteration. + (See gh#llvm/llvm-project#56242.) + +------------------------------------------------------------------- +Fri Aug 26 21:18:56 UTC 2022 - Aaron Puchert + +- Add llvm-lifetime-for-rust.patch to have Rust memory management + functions considered as lifetime markers. This should aid dead + store elimination to dynamically allocated memory in Rust code. + +------------------------------------------------------------------- +Tue Aug 23 21:20:47 UTC 2022 - Aaron Puchert + +- Don't declare python3-clang as noarch: Python packages are + installed into %{_libdir}. + +------------------------------------------------------------------- +Sat Aug 13 21:53:05 UTC 2022 - Aaron Puchert + +- Use black RPM macro magic to deduplicate binary lists. This + should have no effect on the generated RPM but shaves ~400 lines + off the specfile and hopefully makes future maintenance easier. + +------------------------------------------------------------------- +Wed Aug 10 20:21:59 UTC 2022 - Aaron Puchert + +- Add WebAssembly support for all architectures. + +------------------------------------------------------------------- +Tue Aug 9 09:15:12 UTC 2022 - Martin Liška + +- Add llvm-glibc-2-36.patch in order to address boo#1202215. + +------------------------------------------------------------------- +Mon Jul 4 21:29:11 UTC 2022 - Aaron Puchert + +- Update to version 14.0.6. + * This release contains bug-fixes for the LLVM 14.0.0 release. + This release is API and ABI compatible with 14.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Thu Jun 16 16:44:07 UTC 2022 - Aaron Puchert + +- Update to version 14.0.5. + * This release contains bug-fixes for the LLVM 14.0.0 release. + This release is API and ABI compatible with 14.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Sat May 28 12:42:06 UTC 2022 - Aaron Puchert + +- Update to version 14.0.4. + * This release contains bug-fixes for the LLVM 14.0.0 release. + This release is API and ABI compatible with 14.0.0. +- Don't use gold for linking anymore: on s390x we use ld.bfd with + LLVMgold.so, on ppc64 we disable ThinLTO for now. +- Using ld.bfd on s390x exposed an issue with the existing + llvm_build_tablegen_component_as_shared_library.patch: linking + llvm-tblgen with libLLVM.so means we also have to link libraries + used for that (like LLVMTableGenGlobalISel) with libLLVM.so. +- Rewrite summary and description for llvm-gold to point out that + it can also be used with ld.bfd, recommend with binutils. +- Prefer RPM macros over shell scripting, so that we can better + inspect the build script with substitutions in place. +- More memory for stage 1 build jobs due to recent OOMs. +- Add %_libclang_sonum RPM macro to llvm-devel, since that might + now diverge from %_llvm_sonum. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Sat Apr 30 12:32:33 UTC 2022 - Aaron Puchert + +- Update to version 14.0.3. + * This release contains bug-fixes for the LLVM 14.0.0 release. + This release is API and ABI compatible with 14.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Use ThinLTO with lld on i586. + +------------------------------------------------------------------- +Sun Apr 24 20:52:29 UTC 2022 - Aaron Puchert + +- Update to version 14.0.1. + * This release contains bug-fixes for the LLVM 14.0.0 release. + This release is API and ABI compatible with 14.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Drop obsolete patches: + * PPCISelLowering-Avoid-emitting-calls-to-__multi3.patch +- Don't override default linker flags. (We were losing -Wl,-z,now.) + +------------------------------------------------------------------- +Sun Apr 3 14:13:45 UTC 2022 - Aaron Puchert + +- Update to version 14.0.0. + * For details, see the release notes: + - https://releases.llvm.org/14.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/14.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/14.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/14.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/14.0.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tools: + - llvm-debuginfod-find: Tool to fetch debuginfod artifacts. + - llvm-tli-checker: LLVM TargetLibraryInfo versus SDK checker. + * New Clang tools: + - clang-linker-wrapper: A wrapper utility over the host linker. + - clang-nvlink-wrapper: A wrapper tool over nvlink program. +- Add clang-repl-private-deps.patch to make link dependencies of + clang-repl private, otherwise CMake can't install. +- Add PPCISelLowering-Avoid-emitting-calls-to-__multi3.patch to + fix build on PowerPC (32-bit). +- Drop llvm-exegesis-link-dylib.patch, instead we don't build + llvm-exegesis anymore and add check-no-llvm-exegesis.patch to + disable the corresponding tests. +- Rebase patches: + * lldb-cmake.patch + * llvm-do-not-install-static-libraries.patch + * llvm-normally-versioned-libllvm.patch +- Drop patches that have landed upstream: + * llvm-update-extract-section-script.patch + +------------------------------------------------------------------- +Sun Apr 3 13:42:27 UTC 2022 - Aaron Puchert + +- Split up Clang libraries: libclang.so is no longer so-versioned + alongside LLVM but will stay at libclang.so.13 for now. So we + put it into a separate package from libclang-cpp.so. Since we + can't have multiple LLVM versions generate the same package, we + prefix it for the non-default LLVM with a mechanism inspired by + the GCC packaging. +- Patch exported clang/ClangTargets-relwithdebinfo.cmake to refer + to libclang only by soname, because the installed library might + be newer than the one originally build with the package. +- Use the same mechanism to for libc++ and package Clang scripts + only for the default version. This means we'll no longer have to + touch the package when a new major version comes out. +- Make sure we properly clean up the clang scripts if we're not + packaging them. +- Let python3-clang use libclang.so.XX, which means we can always + build it and makes it depend on libclang instead of clang-devel. +- Fix some rpmlint issues: we don't need explicit library + dependencies that are detected automatically, and we add proper + library dependencies to the *-devel packages. +- Merge llvm-LTO-devel into llvm-devel. That's where the header + files already are, and they are hard to separate. +- Let llvm-polly-devel depend on llvm-devel. +- Remove libLTO and *-devel packages from baselibs, they don't + seem to be needed. We mostly need libLLVM and maybe libclang-cpp. +- Consistently set host triple as *-suse-linux-gnu*. +- Only suggest documentation packages. + +------------------------------------------------------------------- +Sun Mar 6 21:24:55 UTC 2022 - Dirk Müller + +- Fix armv6hl cpu architecture typo. + +------------------------------------------------------------------- +Sat Feb 19 15:23:13 UTC 2022 - Aaron Puchert + +- Let clang-devel accept a newer version of clang-tools: + we don't keep multiple versions of the latter. + +------------------------------------------------------------------- +Tue Feb 15 12:13:13 UTC 2022 - Aaron Puchert + +- AND instead of OR in License tag after sr#954337. + +------------------------------------------------------------------- +Mon Feb 14 14:31:30 UTC 2022 - Aaron Puchert + +- More conflicts for addition to Leap: clang-tools conflicts with + llvm9 because that doesn't have the move of hmaptool yet, and + llvm13-devel with llvm{5,7} as they used to have FileCheck.1.gz. + +------------------------------------------------------------------- +Tue Feb 8 23:14:36 UTC 2022 - Aaron Puchert + +- Add SUSE_Backports_policy-SLE_conflict to rpmlintrc, we're + deliberately conflicting with SLE here to offer a newer version + than what SUSE wants to support. + (https://code.opensuse.org/leap/features/issue/55) + +------------------------------------------------------------------- +Thu Feb 3 21:56:28 UTC 2022 - Aaron Puchert + +- Update to version 13.0.1. + * This release contains bug-fixes for the LLVM 13.0.0 release. + This release is API and ABI compatible with 13.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Drop obsolete patches: + * llvm-fix-building-with-GCC-12.patch +- Drop RUNPATH from packaged binaries, instead set LD_LIBRARY_PATH + for building and testing to simulate behavior of actual package. + +------------------------------------------------------------------- +Mon Jan 31 21:16:52 UTC 2022 - Andreas Schwab + +- Update constraints for riscv64 + +------------------------------------------------------------------- +Thu Jan 20 00:11:33 UTC 2022 - John Paul Adrian Glaubitz + +- Add support for experimental targets and enable the M68k backend +- Add patch to fix testsuite after enabling the M68k backend + + llvm-update-extract-section-script.patch + +------------------------------------------------------------------- +Sat Dec 18 15:05:40 UTC 2021 - Aaron Puchert + +- BuildRequires: python-rpm-macros to fix Leap 15.3 build. +- More memory for GCC compile jobs. + +------------------------------------------------------------------- +Fri Nov 12 13:30:15 UTC 2021 - Alberto Planas Dominguez + +- Add FileCheck into the devel package, as is required for testing + Rust (boo#1192629) + +------------------------------------------------------------------- +Tue Nov 2 21:18:57 UTC 2021 - Aaron Puchert + +- Let clang recommend gcc and glibc-devel as we need both for + building executables. No hard requirement because Clang can be + used as a frontend only. (boo#1191587) +- Set minimal CMake version required. + +------------------------------------------------------------------- +Tue Nov 2 13:30:06 UTC 2021 - Martin Liška + +- Backport llvm-fix-building-with-GCC-12.patch in order to fix building + with GCC 12. + +------------------------------------------------------------------- +Sat Oct 2 20:13:04 UTC 2021 - Aaron Puchert + +- Update to version 13.0.0. + * For details, see the release notes: + - https://releases.llvm.org/13.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/13.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/13.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/13.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/13.0.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tools: + - llvm-otool: Mach-O object file displaying tool. + - llvm-sim: LLVM IR Similarity Visualizer. + - llvm-tapi-diff: Diff tool for tbd files. + - llvm-windres: Tool to manipulate Windows resources. + * llvm-elfabi was removed. + * New Clang tools: + - clang-repl, an interactive interpreter for C/C++. + - intercept-build, analyze-build: the former intercepts build + commands to build a compilation database, the latter runs + the static analyzer over all translation units. + - scan-build-py: Python reimplementation of scan-build. +- Rebase patches: + * link-clang-shared.patch + * llvm-do-not-install-static-libraries.patch + * llvm-exegesis-link-dylib.patch +- Drop patches that have landed upstream: + * tablegen-test-link-static.patch +- Run tests on more architectures, disable those that seem to hang. + Don't run libcxx tests at all anymore because they take so long. +- Relax constraints so that we can build on more machines. + +------------------------------------------------------------------- +Sat Sep 18 13:54:44 UTC 2021 - Aaron Puchert + +- Set CMAKE_LINKER to workaround CMake wanting to use lld just + because we're using clang as compiler. Fixes build on aarch64. + (https://bugs.llvm.org/show_bug.cgi?id=51115) + +------------------------------------------------------------------- +Sat Jul 10 21:30:44 UTC 2021 - Aaron Puchert + +- Update to version 12.0.1. + * This release contains bug-fixes for the LLVM 12.0.0 release. + This release is API and ABI compatible with 12.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Drop obsolete patches: + * clangd-cmake-non-standard-layout.patch + * compiler-rt-Remove-cyclades-inclusion-in-sanitizer.patch + * lld-no-version-on-undefined-weak-lazy-symbols.patch + +------------------------------------------------------------------- +Fri Jul 2 21:01:53 UTC 2021 - Aaron Puchert + +- Add compiler-rt-Remove-cyclades-inclusion-in-sanitizer.patch: + Fix build with linux-glibc-devel 5.13. + +------------------------------------------------------------------- +Thu May 13 08:20:30 UTC 2021 - Martin Liška + +- Set memory limits for DWZ to 4x. + +------------------------------------------------------------------- +Fri Apr 16 21:59:40 UTC 2021 - Aaron Puchert + +- Update to version 12.0.0. + * For details, see the release notes: + - https://releases.llvm.org/12.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/12.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/12.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/12.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/12.0.0/tools/lld/docs/ReleaseNotes.html +- Rebase patches: + * assume-opensuse.patch + * lldb-cmake.patch + * llvm-better-detect-64bit-atomics-support.patch + * llvm-do-not-install-static-libraries.patch + * llvm_build_tablegen_component_as_shared_library.patch +- Drop patches that have landed upstream: + * Fix-missing-include.patch +- Always use ld.bfd for stage 1, use lld for stage 2 where we use + ThinLTO and where it's supported, gold where lld doesn't work, + and ld.bfd where we don't use ThinLTO. (boo#1181621) +- Add lld-no-version-on-undefined-weak-lazy-symbols.patch to fix a + bug in lld that made libLLVM.so contain a corrupt symbol version. +- Add clangd-cmake-non-standard-layout.patch to fix build in our + non-monorepo layout. + +------------------------------------------------------------------- +Sun Feb 14 22:28:42 UTC 2021 - Aaron Puchert + +- Don't use gold and ThinLTO on ppc64le because of boo#1181621. +- Fix-missing-include.patch: fix build with GCC 11. (boo#1181875) +- CMake-Look-up-target-subcomponents-in-LLVM_AVAILABLE_LIBS.patch: + Fix target component lookup. (boo#1180748) + +------------------------------------------------------------------- +Sat Jan 9 16:19:46 UTC 2021 - Aaron Puchert + +- Update to version 11.0.1. + * This release contains bug-fixes for the LLVM 11.0.0 release. + This release is API and ABI compatible with 11.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Drop obsolete compiler-rt-dont-compile-assembly-files-as-c.patch. +- Make documentation tarballs more reproducible. + +------------------------------------------------------------------- +Wed Jan 6 08:40:26 UTC 2021 - Guillaume GARDET + +- Increase required RAM for aarch64 + +------------------------------------------------------------------- +Fri Jan 1 13:04:35 UTC 2021 - Callum Farmer + +- Move BFD plugins to %{_libdir} + +------------------------------------------------------------------- +Mon Dec 14 14:18:19 UTC 2020 - Andreas Schwab + +- polly-pthread.patch: Remove, std::call_once no longer needs libpthread + +------------------------------------------------------------------- +Mon Nov 23 17:29:28 UTC 2020 - Aaron Puchert + +- Add compiler-rt-dont-compile-assembly-files-as-c.patch to fix + build failure with newer CMake versions. + +------------------------------------------------------------------- +Sat Nov 14 22:09:41 UTC 2020 - Aaron Puchert + +- Let CMake files in {llvm,clang}X-devel refer to the versioned + binaries that come with the package instead of the symlink + managed by update-alternatives. (boo#1178513) + +------------------------------------------------------------------- +Sat Oct 24 15:12:33 UTC 2020 - Aaron Puchert + +- Disable ThinLTO on aarch64 because of hangs. (boo#1178070) +- Enable ThinLTO on ppc64 and ppc64le, the internal error is gone. + +------------------------------------------------------------------- +Mon Oct 19 21:57:00 UTC 2020 - Aaron Puchert + +- Update to version 11.0.0. + * For details, see the release notes: + - https://releases.llvm.org/11.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/11.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/11.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/11.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/11.0.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tools: llvm-gsymutil, llvm-ml. + * clang-import-test was removed. +- Drop obsolete patches: + * clang-ignore-stack-clash-protector.patch + * fix-atomics-test.patch + * restore-llvm10-abi.patch +- Rebase patches: + * clang-resourcedirs.patch + * default-to-i586.patch + * link-clang-shared.patch + * link-clang-tools-extra-shared.patch + * lldb-cmake.patch + * llvm-do-not-install-static-libraries.patch + * lto-disable-cache.patch +- Add llvm-exegesis-link-dylib.patch: link llvm-exegesis with + libLLVM.so, the advanced functionality is not available anyway. +- Remove -fstack-clash-protection on architectures where it isn't + actually supported, because that prevents feature detection. +- Make sure we also build AttributeReference for the documentation. + This requires building via CMake. Also shorten the paths. + +------------------------------------------------------------------- +Thu Jul 30 21:20:08 UTC 2020 - Aaron Puchert + +- Add ld.lld as an alternative for ld. (boo#1174656) + +------------------------------------------------------------------- +Wed Jul 22 21:54:01 UTC 2020 - Aaron Puchert + +- Update to version 10.0.1. + * This release contains bug-fixes for the LLVM 10.0.0 release. + This release is API and ABI compatible with 10.0.0. +- Rebase llvm-do-not-install-static-libraries.patch. +- Replace ValueLattice-Add-new-state-for-undef-constants.patch, + which landed upstream in a modified version, by + restore-llvm10-abi.patch that resets the ABI to our 10.0.0. +- Rewrite lld-default-sha1.patch to be version-independent. +- Set flags consistently, so that we don't lose -DNDEBUG on 32-bit + architectures. Also we don't need the opt flags twice. This leads + to a significant reduction in binary sizes on 32-bit arches. +- Make it easier to package release candidates. +- Enable most tests on 32-bit ARM, but not for libcxx. +- Add fix-atomics-test.patch for architectures where native atomics + are not available. +- Lower build constraints for riscv64 a bit to allow building on + more workers. +- Allow more compile jobs in stage 2. + +------------------------------------------------------------------- +Sun Jul 12 11:49:47 UTC 2020 - Aaron Puchert + +- Factor out computation of the number of jobs into a macro. +- Choose mem_per_compile_job dependent on build stage, let stage 1 + on x86_64 use more memory. +- More generous memory allocation on riscv64. + +------------------------------------------------------------------- +Tue Jun 23 07:18:55 UTC 2020 - Ismail Dönmez + +- Add lld-default-sha1.patch to make lld generate SHA1 build-ids by + default, otherwise our tools cannot process the debuginfo. + +------------------------------------------------------------------- +Tue Mar 24 22:30:06 UTC 2020 - Aaron Puchert + +- Update to version 10.0.0. + * For details, see the release notes: + - https://releases.llvm.org/10.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/10.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/10.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/10.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/10.0.0/tools/lld/docs/ReleaseNotes.html + * New LLVM tools: llvm-ifs, llvm-install-name-tool, llvm-reduce. + * New Clang tools: clang-move, clang-offload-wrapper, pp-trace. + * lldb-mi moved to a separate project and is no longer available. +- Dropped obsolete patches: + * clang-fix-powerpc-triplet.patch + * clang-riscv64-rv64gc.diff + * compiler-rt-move-fdp.patch + * compiler-rt-sanitizer-ipc-perm.patch + * D60657-riscv-pcrel_lo.diff + * gwp-asan-lto.patch + * libcxx-tests-linux-distribution.patch + * link-lldb-shared.patch + * llvm-riscv64-fix-cffi.diff + * openmp-export-fini.patch + * riscv-eh-frame-fixup.patch + * riscv64-suse-linux.patch +- Rebased patches: + * assume-opensuse.patch + * link-clang-tools-extra-shared.patch + * lldb-cmake.patch + * llvm_build_tablegen_component_as_shared_library.patch + * llvm-do-not-install-static-libraries.patch + * llvm-remove-clang-only-flags.patch + * lto-disable-cache.patch + * polly-pthread.patch + * tests-use-python3.patch +- Add tablegen-test-link-static.patch: fix TableGenTests. +- Add ValueLattice-Add-new-state-for-undef-constants.patch: fix + miscompilation on ppc64/s390x that was leading to test crashes. +- Enable ThinLTO on aarch64. +- Disable ThinLTO on ppc64le due to internal error in gold. +- Delete object files and static libraries from build tree in + %install already, because debuginfo extraction happens after + that. If we do it after %check, we run out of disk space. +- Run tests "manually", because we've already removed many targets. +- Don't build unit tests, because some of them are now statically + linked, which is very expensive with LTO. Also unit tests are + probably not very interesting on the distribution level, we don't + expect them to perform different than in upstream. The relevant + upstream change for this is https://reviews.llvm.org/D54439. +- Drop %if for openSUSE 13.2. + +------------------------------------------------------------------- +Mon Mar 23 22:42:09 UTC 2020 - Aaron Puchert + +- Remove conflicts of clang-tools with {clang,llvm}{7,8}: the + relevant binaries have been removed from those packages. This + allows having clang-tools together with older versions of llvm. + For a smooth installation we add OrderWithRequires dependencies. +- Fix typos in (still inactive) !%{with clang_scripts} part. + +------------------------------------------------------------------- +Wed Mar 11 22:58:26 UTC 2020 - Aaron Puchert + +- Require clang-tools for clangX-devel. + +------------------------------------------------------------------- +Sat Mar 7 22:41:55 UTC 2020 - Aaron Puchert + +- Move all clang-related scripts (including those originally in + clangX-checker), hmaptool and clang-doc into a common + unversioned subpackage clang-tools, like python3-clang. + The scripts reference the unversioned executables, so allowing + multiple versions via update-alternatives would be misleading. + The clang-doc executable will come with assets in Clang 10, so + we have to take it out of update-alternatives as well. + This should be the proper solution to boo#1161873. +- Include run-find-all-symbols script in clang-tools. +- Remove metadata for clangX-include-fixer subpackage that never + had any files and thus wasn't released as rpm. There are so many + clang binaries that packaging them separately doesn't scale. +- Fix lldb version string, adapt lldb-cmake.patch (boo#1165517). +- Remove unneccesary libtool dependency. +- Don't let clang depend on libc++, we link it with libstdc++. +- Recommend gold plugin if clang and gold are installed. + +------------------------------------------------------------------- +Fri Feb 7 10:29:11 UTC 2020 - Richard Biener + +- Add vim-plugin-llvm Conflicts to clang subpackage which now + contains files formerly in llvmN-vim-plugins, conflicting with + packages from older llvm releases. + +------------------------------------------------------------------- +Thu Feb 6 10:58:59 UTC 2020 - Richard Biener + +- Add back emacs-llvm Provides and Conflicts to clang subpackage + originally in llvm-emacs-plugins to properly conflict with + llvm-emacs-plugins from older llvm releases. + +------------------------------------------------------------------- +Tue Feb 4 08:41:49 UTC 2020 - Richard Biener + +- Add clang5-devel to clang9-doc conflicts. + +------------------------------------------------------------------- +Mon Feb 3 08:53:12 UTC 2020 - Andreas Schwab + +- Add compiler-rt-sanitizer-ipc-perm.patch: Fix sanitizer-common + build with glibc 2.31. + +------------------------------------------------------------------- +Wed Jan 29 22:33:02 UTC 2020 - Aaron Puchert + +- Move clang-{format,include-fixer,rename}.{el,py} files from + llvm-*-plugins to clang package. (boo#1161873) +- Drop the now empty llvm-emacs-plugins package. + +------------------------------------------------------------------- +Mon Jan 27 08:03:55 UTC 2020 - Richard Biener + +- Add polly and lld build conditionals, remove excessive Requires + to clang from docs. Fix conditional for libc++ use. + [jsc#SLE-7400, jsc#SLE-7614, jsc#SLE-7452, jsc#SLE-8920, jsc#SLE-7390, + jsc#SLE-7587] + +------------------------------------------------------------------- +Wed Jan 15 14:34:50 UTC 2020 - Aaron Puchert + +- Undo spec-cleaner changes that we don't want. + * Reintroduce blank lines in configuration. + * Use packageand syntax that works for older versions of RPM. + * Don't use %{_bindir} on left-hand side of sed replacements. + +------------------------------------------------------------------- +Sat Jan 11 20:14:12 UTC 2020 - Andreas Schwab + +- riscv-eh-frame-fixup.patch: Remove changesets that alter the libLLVM ABI + +------------------------------------------------------------------- +Fri Jan 8 15:30:21 UTC 2020 - Jaime Caamaño Ruiz + +- Add upstream patch to export compiler-rt FuzzedDataProvider header, + required by Envoy 1.12.2: + * compiler-rt-move-fdp.patch + +------------------------------------------------------------------- +Mon Jan 6 19:31:23 UTC 2020 - Andreas Schwab + +- riscv-eh-frame-fixup.patch: Fix handling of .eh_frame on RISC-V +- polly-pthread.patch: Add missing -lpthread + +------------------------------------------------------------------- +Fri Jan 3 15:28:52 UTC 2020 - Andreas Schwab + +- Enable support for riscv64 +- clang-riscv64-rv64gc.diff, riscv64-suse-linux.patch, + llvm-riscv64-fix-cffi.diff, D60657-riscv-pcrel_lo.diff: Backports from + master + +------------------------------------------------------------------- +Fri Dec 20 21:13:19 UTC 2019 - Aaron Puchert + +- Update to version 9.0.1. + * This release contains bug-fixes for the LLVM 9.0.0 release. + This release is API and ABI compatible with 9.0.0. +- Drop patches that have landed upstream: + * dont-install-example-analyzer-plugins.patch + * fix-module-test.patch + * llvm-add-missing-include.patch +- Drop set-revision.patch, don't provide revision number in clang. + The upstream repository has moved from Subversion to git, so the + revision number is just a hash, which limits its usefulness. +- Rebase llvm-do-not-install-static-libraries.patch. + +------------------------------------------------------------------- +Thu Dec 5 23:49:17 UTC 2019 - Aaron Puchert + +- Modify libcxx-tests-linux-distribution.patch to remove dependency + on python-distro again: we don't have expected failures. + +------------------------------------------------------------------- +Thu Dec 5 08:31:30 UTC 2019 - Martin Liška + +- Add llvm-add-missing-include.patch in order to fix + boo#1158367. + +------------------------------------------------------------------- +Tue Dec 3 23:52:49 UTC 2019 - Aaron Puchert + +- Add gwp-asan-lto.patch: Make sure there are no LLVM IR files in + static libraries that we package. +- Add libcxx-tests-linux-distribution.patch (boo#1158293): + Replace platform.linux_distribution by distro.linux_distribution. +- Make documentation packages noarch. + +------------------------------------------------------------------- +Mon Nov 4 02:34:19 UTC 2019 - Aaron Puchert + +- Add openmp-export-fini.patch: Export termination function for + libomp.so, solves boo#1155108. +- Remove flaky test case in libcxx. + +------------------------------------------------------------------- +Wed Oct 30 08:44:49 UTC 2019 - Fabian Vogt + +- Fix typo, BOLL -> BOOL + +------------------------------------------------------------------- +Sat Oct 19 11:12:03 UTC 2019 - Aaron Puchert + +- Let new {llvm,clang}*-doc packages "Conflict" with older devel + packages, which they were split from. +- Let doc packages conflict with older versions of themselves. + +------------------------------------------------------------------- +Mon Oct 14 14:16:20 UTC 2019 - Stefan Brüns + +- (Build)Require only python3-base instead of full python3 package, + the additional modules are not required. Helps shortening the + build dependency chain. +- Remove python3-* requires from lldb9 subpackage, and add it to + the bindings/pretty-printer subpackage (python3-lldb9). +- Add python3-base Requires to python3-clang subpackage + +------------------------------------------------------------------- +Sat Sep 28 13:28:45 UTC 2019 - Aaron Puchert + +- Add dont-install-example-analyzer-plugins.patch: Remove example + analyzer plugins from install targets instead of deleting them. +- Add fix-module-test.patch: fix test instead of deleting it. +- Don't build static libc++ (with ThinLTO that's not useful anyway). +- Don't build libc++experimental. +- Don't package libc++abi.so with libc++-devel, it's already contained + in the (required) libc++abi-devel. +- Be more specific about files in libc++-devel. + +------------------------------------------------------------------- +Sun Sep 22 19:42:25 UTC 2019 - Aaron Puchert + +- Update to version 9.0.0. + * For details, see the release notes: + - https://releases.llvm.org/9.0.0/docs/ReleaseNotes.html + - https://releases.llvm.org/9.0.0/tools/clang/docs/ReleaseNotes.html + - https://releases.llvm.org/9.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + - https://releases.llvm.org/9.0.0/projects/libcxx/docs/ReleaseNotes.html + - https://releases.llvm.org/9.0.0/tools/lld/docs/ReleaseNotes.html +- Change License to "Apache-2.0 WITH LLVM-exception OR NCSA". + (https://llvm.org/foundation/relicensing/) +- Allow building with ThinLTO and enable it on some architectures. +- Disable LTO cache in lto-disable-cache.patch. +- Unset MALLOC_CHECK_ for compilation to mitigate lock contention. +- No debug info for ppc like for the other 32-bit targets. +- Clean up _constraints: same constraints for 32-bit targets. +- Don't use BUILD_SHARED_LIBS for Clang anymore, since the newly + available libclang-cpp.so should expose the full C++ API. +- Link tools with libclang-cpp.so by using CLANG_LINK_CLANG_DYLIB, + similar to LLVM_BUILD_LLVM_DYLIB for libLLVM.so. +- Remove obsolete n_clang_allow_BUILD_SHARED_LIBRARY.patch. +- Add link-clang-shared.patch to link more clang targets with + libclang-cpp.so, especially libclang.so. +- Add link-clang-tools-extra-shared.patch, link-lldb-shared.patch: + link targets in clang-tools-extra and lldb with libclang-cpp.so. +- Simplify llvm-do-not-install-static-libraries.patch, also handle + Clang, for which we now get static libraries. +- Package documentation for llvm and clang separately, recommend + them for the main package: they are not required for development, + but actually useful for working with the non-devel packages. +- Recommend editor plugins not just for llvm-devel. +- Recommend libstdc++ for Clang again. +- Move diagtool from llvm to clang subpackage. +- Properly distinguish between %{_relver} and %{version}. +- Drop aarch64-disable-memorytest.patch and reactivate test. +- Rebase clang-resourcedirs.patch. +- Rebase llvm-normally-versioned-libllvm.patch. +- Rebase llvm-remove-clang-only-flags.patch. +- Rebase llvm_build_tablegen_component_as_shared_library.patch. +- Rebase set-revision.patch. +- Increase disk space for build. + +------------------------------------------------------------------- +Sun Sep 22 11:13:10 UTC 2019 - Lubos Lunak + +- Make lldb recommend python3-lldb (it contains pretty printers). + +------------------------------------------------------------------- +Wed Aug 21 21:53:49 UTC 2019 - Aaron Puchert + +- Use python3 shebangs everywhere (boo#1146533). +- Drop obsolete opt-viewer-Do-not-require-python-2.patch. + +------------------------------------------------------------------- +Fri Aug 16 09:53:24 UTC 2019 - Aaron Puchert + +- Remove unneccesary dependencies: + * groff, bison and flex don't seem to be used. + * jsoncpp is no longer used since r338461. + * Move some BuildRequires to subpackages. + * Don't recommend scan-{build,view} in clang (boo#1145444). + * Devel packages are only required in other devel packages, + when their headers are included in the installed headers. +- Add versions to Provides/Conflicts except for files. +- Remove unused (since r268685) CMake flags LLVM_ENABLE_TIMESTAMPS. +- Fix installation of opt-viewer files when python3-clang is no + longer built. + +------------------------------------------------------------------- +Sat Jul 20 18:45:23 UTC 2019 - Aaron Puchert + +- Update to version 8.0.1. + * This release contains bug-fixes for the LLVM 8.0.0 release. + This release is API and ABI compatible with 8.0.0. +- Don't run LLVM tests on ppc at all because of sporadic hangs. + +------------------------------------------------------------------- +Fri Jun 28 09:55:21 UTC 2019 - Guillaume GARDET + +- Increase RAM for armv6/7 to avoid OOM and be scheduled on fast + worker + +------------------------------------------------------------------- +Thu Jun 27 23:03:49 UTC 2019 - Aaron Puchert + +- Use the documented LLVM_ENABLE_RTTI to enable RTTI instead of + LLVM_REQUIRES_RTTI, which "is an internal flag that individual + targets can use to force RTTI". (boo#1139584) +- Drop obsolete llvm-build-tests-with-rtti.patch. + +------------------------------------------------------------------- +Tue Jun 18 21:26:33 UTC 2019 - Aaron Puchert + +- Exclude riscv64 for now since it fails to build. + +------------------------------------------------------------------- +Sat Jun 15 20:11:03 UTC 2019 - Aaron Puchert + +- Change some groups: + * put libraries in System/Libraries, + * devel packages in Development/Libraries, + * clang in Development/Languages/C and C++, + * the gold plugin in Development/Tools/Building. +- Add some URLs, use https:// when possible. +- Remove unneeded devel dependencies. +- Only suggest a C++ standard library for clang. It's also a + C compiler and needs no C++ library when only used as such. +- Fix Supplements for editor plugins. +- Fix some rpmlint issues: + * Reword summary and description for Polly. + * Fix /usr/bin/env shebangs. + * Remove executable bit where not needed. + * Move bash completion to /usr. + * Remove hard dependency of libclang8 to libstdc++-devel. +- Make rpm macros work properly. +- Remove sources from documentation. +- Run %fdupes on the right directories. +- Enable tests for libcxx. +- Reduce memory requirements for compile jobs depending on arch. + +------------------------------------------------------------------- +Sun May 12 19:11:24 UTC 2019 - Aaron Puchert + +- Avoid relocation overflow on ppc by not building GPU backends. +- Update baselibs.conf. + +------------------------------------------------------------------- +Wed Apr 24 17:20:07 UTC 2019 - Martin Liška + +- Disable LTO (boo#1133254). + +------------------------------------------------------------------- +Sat Mar 23 23:29:21 UTC 2019 - aaronpuchert@alice-dsl.net + +- Fix packaging on ppc: the sanitizers aren't available there, so + the directories /usr/lib/clang/*/{lib,share} are missing. +- Package LLVMgold even when we don't use gold for linking. + It's promised in /usr/lib/cmake/llvm/LLVMExports.cmake. +- Unignore test failures on PowerPC64 architectures. The failures + in ppc are unrelated to AMDGPU, so we remove that remark. +- Fix dependencies: the gold plugin shouldn't depend on llvm-devel. + libc++abi-devel should depend on libc++abi. +- Fix typo. + +------------------------------------------------------------------- +Tue Mar 19 09:16:11 UTC 2019 - Adrian Schröter + +- Enable libc++ on ARM (Needed for tensorflow) + +------------------------------------------------------------------- +Mon Mar 11 12:53:39 UTC 2019 - msrb@suse.com + +- Update to 8.0.0 + * For details, see the release notes: + https://llvm.org/releases/8.0.0/docs/ReleaseNotes.html + https://llvm.org/releases/8.0.0/tools/clang/docs/ReleaseNotes.html + https://llvm.org/releases/8.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + https://llvm.org/releases/8.0.0/tools/lld/docs/ReleaseNotes.html + +- Drop llvm-unittests-Don-t-install-TestPlugin.so.patch, + llvm-drop-llvm-optional-clang-specific-optimization.patch, + llvm-D51108.patch, + llvm-Ensure-that-variant-part-discriminator-is-read-by-Me.patch, + llvm-test-Fix-Assembler-debug-info.ll.patch + * Already included upstream + +- Add 0001-CMake-Add-install-targets-for-utilities-to-LLVM-expo.patch + +------------------------------------------------------------------- +Sun Mar 10 20:24:03 UTC 2019 - aaronpuchert@alice-dsl.net + +- Remove -fno-strict-aliasing, which upstream doesn't use any more + since r245304 in 2015. (http://reviews.llvm.org/D12036) + It's probably also not needed for modern versions of GCC. + It was enabled in r105644 because of some bugs there. +- Add a clang-%{_sonum} symlink, which is referenced by + /usr/lib64/cmake/clang/ClangTargets.cmake (boo#1120098) +- Package clang builtin headers with libclang. The library is + basically unusable without the builtin headers. Currently + consumers of libclang have to require clang as well, although + only the headers are needed. + +------------------------------------------------------------------- +Tue Feb 26 09:44:21 UTC 2019 - msrb@suse.com + +- llvm-Ensure-that-variant-part-discriminator-is-read-by-Me.patch, + llvm-test-Fix-Assembler-debug-info.ll.patch + * Fix crash in rustc (boo#1126907) + +------------------------------------------------------------------- +Sun Feb 17 21:38:04 UTC 2019 - John Paul Adrian Glaubitz + +- Allow use of Gold linker to be conditional +- Disable Gold linker on ppc + + LLVM currently doesn't build with Gold on ppc + +------------------------------------------------------------------- +Tue Jan 15 10:28:38 UTC 2019 - msrb@suse.com + +- Readd clang-7 and clang++-7 symlinks + * Fixes uses of clang-devel (boo#1120098) + +------------------------------------------------------------------- +Mon Jan 14 13:06:55 UTC 2019 - msrb@suse.com + +- Update to llvm 7.0.1 + * This release contains bug-fixes for the LLVM 7.0.0 release. + This release is API and ABI compatible with 7.0.0. + +------------------------------------------------------------------- +Sun Dec 30 19:11:05 UTC 2018 - Dirk Mueller + +- enable gold unconditionally like with llvm6 and older +- reenable openmp support again for aarch64 (like it was already in llvm6) + +------------------------------------------------------------------- +Wed Dec 19 19:45:44 UTC 2018 - Todd R + +- Use %license macro +- Use upstream-recommended %{_rpmconfigdir}/macros.d directory + for the rpm macros. + +------------------------------------------------------------------- +Fri Dec 14 23:08:04 UTC 2018 - John Paul Adrian Glaubitz + +- Remove ppc from Exclude field in spec file +- Allow use of Gold linker to be conditional +- Disable Gold linker on ppc +- Add patch to fix SUSE GNU triplet on ppc + * clang-fix-powerpc-triplet.patch +- Add patch from upstream to fix ABI issue on ppc + * llvm-D51108.patch +- Limit list of enabled targets on ppc + * PowerPC;AMDGPU;BPF;NVPTX +- Ignore testsuite failures on ppc + +------------------------------------------------------------------- +Tue Dec 11 10:26:04 UTC 2018 - msrb@suse.com + +- llvm-drop-llvm-optional-clang-specific-optimization.patch + * Fix ABI incompatibility when libLLVM (built with clang) is + linked to a program build with gcc. (boo#1119092) + +------------------------------------------------------------------- +Tue Oct 23 07:52:09 UTC 2018 - msrb@suse.com + +- opt-viewer-Find-style-css-in-usr-share.patch + * Make sure opt-viewer installed in /usr/bin can find resources + from /usr/share/opt-viewer. (boo#1112730) + +------------------------------------------------------------------- +Fri Oct 19 12:32:11 UTC 2018 - msrb@suse.com + +- llvm-unittests-Don-t-install-TestPlugin.so.patch + * It is only used for testing and is causing failures when + processing LLVMExports.cmake. + +------------------------------------------------------------------- +Tue Aug 28 06:58:07 UTC 2018 - msrb@suse.com + +- Update to llvm 7.0.0 + * For details, see the release notes: + https://llvm.org/releases/7.0.0/docs/ReleaseNotes.html + https://llvm.org/releases/7.0.0/tools/clang/docs/ReleaseNotes.html + https://llvm.org/releases/7.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html + https://llvm.org/releases/7.0.0/tools/lld/docs/ReleaseNotes.html + +- Remove no longer needed patches: + * llvm6-fix-gdb-index-crash.patch + * lldb-fix-build-with-python-3.7.patch + * lldb-add-pthread-dl-libs.patch + * polly-cmake-Trust-pkg-config-in-FindJsoncpp.patch + +- Add tests-use-python3.patch + * Prevents tests from failing because of missing python 2. + +- Add llvm-better-detect-64bit-atomics-support.patch + * Fixes build on i586. + +------------------------------------------------------------------- +Mon Aug 27 11:30:36 UTC 2018 - msrb@suse.com + +- Updated llvm-remove-clang-only-flags.patch + - Exclude also "-Werror=unguarded-availability-new" (bsc#1106000) + +------------------------------------------------------------------- +Wed Jul 25 07:29:54 UTC 2018 - msrb@suse.com + +- Update to llvm 6.0.1 + * This release contains bug-fixes for the LLVM 6.0.0 release. It + is API and ABI compatible with 6.0.0. +- Remove no longer needed llvm6-fix-InstCombine.patch +- Add lldb-fix-build-with-python-3.7.patch + * Fix build with python 3.7 + +------------------------------------------------------------------- +Fri Jun 29 00:21:52 UTC 2018 - l.lunak@centrum.cz + +- llvm6-fix-gdb-index-crash.patch + * From upstream, fix lld --gdb-index crash. + +------------------------------------------------------------------- +Thu Jun 14 10:21:57 UTC 2018 - msrb@suse.com + +- Do not requires gcc6 for older sle versions. + * llvm6 is not built on <= 12 SP3 and this was preventing build + on 12 SP4. + +------------------------------------------------------------------- +Thu May 17 15:26:21 UTC 2018 - msrb@suse.com + +- llvm_build_tablegen_component_as_shared_library.patch + * Build TableGen component as its own shared library because it + is not included in the libLLVM library and is needed for ldc. + (bsc#1086445) + +------------------------------------------------------------------- +Thu May 17 11:18:46 UTC 2018 - tchvatal@suse.com + +- Add patch llvm6-fix-InstCombine.patch to fix InstCombine init + * Will be fixed in 6.0.1 release + +------------------------------------------------------------------- +Wed May 9 10:32:04 UTC 2018 - msrb@suse.com + +- Do not build stage1 with debug info. It was accidentally added + with the use of %optflags. This should fix out of memory errors + on 32bit architectures and speed up build everywhere else. + (bsc#1092697) + +------------------------------------------------------------------- +Wed Apr 11 09:18:29 UTC 2018 - msrb@suse.com + +- llvm-build-tests-with-rtti.patch + * Fixes build failure with gcc 8. (bnc#1087136) + +------------------------------------------------------------------- +Thu Apr 5 09:33:40 UTC 2018 - msrb@suse.com + +- Do not export Polly static libraries which we do not distribute. + * Updated llvm-do-not-install-static-libraries.patch +- Use external jsoncpp instead of the bundled one. + * Added polly-cmake-Trust-pkg-config-in-FindJsoncpp.patch +- llvm6-devel must require llvm6-polly-devel + * Files in llvm6-devel reference Polly. + +------------------------------------------------------------------- +Mon Mar 19 13:53:06 UTC 2018 - msrb@suse.com + +- Update to llvm 6.0.0 + * Added polly + * Notable changes: + - Retpoline Spectre variant 2 mitigation + - GlobalISel by default for AArch64 at -O0 + - improved scheduling on several x86 micro-architectures + - Clang defaults to -std=gnu++14 instead of -std=gnu++98 + - support for some upcoming C++2a features + - improved optimizations, new compiler warnings, many bug + fixes, and more. + +- Use alternatives for clang's bash autocomplete to prevent + conflicts with other versions. + +------------------------------------------------------------------- +Thu Feb 15 11:38:38 UTC 2018 - msrb@suse.com + +- Remove liblldb5 and lldb5-devel from baselibs.conf. They are only + build for x86_64, so no point having them in baselibs.conf. + +------------------------------------------------------------------- +Wed Feb 7 14:21:48 UTC 2018 - msrb@suse.com + +- Use %optflags, except for FORTIFY_SOURCE which is not compatible + with compiler-rt. +- Exclude static libraries differently. + * Drop llvm-split-static-library-exports-into-their-own-export-file.diff + * Drop clang-split-static-library-exports-into-their-own-export-file.diff + * Update llvm-do-not-install-static-libraries.patch to not use + EXCLUDE_FROM_ALL which is not available in cmake 3.5. + - This fixes build on SLE12. +- Do not force gcc6 on OpenSUSE - fixes build. +- Reduce the amount of concurent link jobs by increasing their + memory requirement - to reduce stalls in OBS. + +------------------------------------------------------------------- +Wed Jan 31 08:48:48 UTC 2018 - msrb@suse.com + +- Cleanup %ifarch conditions, remove targets unintentionally added + to s390/s390x. (bnc#1078436) + +------------------------------------------------------------------- +Tue Jan 30 09:24:22 UTC 2018 - msrb@suse.com + +- Limit the amount of parallel link jobs, but no longer limit + compile jobs. This should prevent running out of memory during + linking while not longer slowing down compilation. +- Remove build dependency on procps + +------------------------------------------------------------------- +Mon Jan 29 12:17:55 UTC 2018 - msrb@suse.com + +- Reduce disk size requirement to 30GB in _constraints. We no + longer need that much since we stopped building static libraries. + +------------------------------------------------------------------- +Thu Jan 18 15:23:59 UTC 2018 - msrb@suse.com + +- n_clang_allow_BUILD_SHARED_LIBRARY.patch + * Allow buildling clang with BUILD_SHARED_LIBRARY while the rest + is built with LLVM_LINK_LLVM_DYLIB. (bnc#1065464) +- Remove clang-devel-static. + +------------------------------------------------------------------- +Wed Jan 10 14:56:18 UTC 2018 - msrb@suse.com + +- Place gold plugin to the right directory. (bnc#1073210) + * It must be in /usr/lib/bfd-plugins on all architectures. + * Remove llvm5-gold from baselibs.conf - nothing needs a 32bit + version of it and it would now conflict with the 64bit one. +- Reduce _constraints requirements on 32bit architectures. + * Since we had to disable debuginfo on them, they require much + less. + +------------------------------------------------------------------- +Wed Jan 10 10:24:49 UTC 2018 - normand@linux.vnet.ibm.com + +- ignore make check error for PowerPC as bypass + https://bugs.llvm.org/show_bug.cgi?id=35871 + +------------------------------------------------------------------- +Mon Jan 8 13:12:13 UTC 2018 - dmueller@suse.com + +- disable debuginfo build for ARM as well + +------------------------------------------------------------------- +Fri Jan 5 08:55:59 UTC 2018 - msrb@suse.com + +- Delete intermediate files during build to reduce total disk usage + (bnc#1074625) + +------------------------------------------------------------------- +Thu Jan 4 10:28:07 UTC 2018 - msrb@suse.com + +- Update to llvm 5.0.1 + * This release contains bug-fixes for the LLVM 5.0.0 release. + * This release is API and ABI compatible with 5.0.0. +- llvm-do-not-install-static-libraries.patch + * Updated. + +------------------------------------------------------------------- +Fri Dec 22 08:56:05 UTC 2017 - fcrozat@suse.com + +- Increase minimum memory and disk sizes required for building in + _constraints. + +------------------------------------------------------------------- +Wed Dec 13 16:30:20 UTC 2017 - msrb@suse.com + +- Rename python3-lldb to python3-lldb5 so it can work with llvm + meta package. + +------------------------------------------------------------------- +Mon Dec 11 10:33:00 UTC 2017 - msrb@suse.com + +- Rename python packages to follow naming conventions. +- Remove unnecessary dependencies on python3. +- Make opt-viewer not require python2. + * opt-viewer-Do-not-require-python-2.patch + +------------------------------------------------------------------- +Mon Dec 4 15:41:52 UTC 2017 - msrb@suse.com + +- Switch to python3. +- Fix %check tests when used with python3. + * Define LANG=C.UTF-8 when running the tests. +- Add explicit Provides/Conflicts to llvm5-devel, + clang5-devel-static and lldb5-devel. + * These are required to be validated by obs repo-checker. + +------------------------------------------------------------------- +Fri Dec 1 08:52:55 UTC 2017 - msrb@suse.com + +- Use LLVM_OPTIMIZED_TABLEGEN to speed up build. (bnc#1064786) +- Fix files of lldb4 to work correctly with update-alternatives. +- Remove Conflicts clang(LLDB) from lldb4-devel - it does not + exist. It would be provided automatically, but no such cmake file + is installed. +- llvm-do-not-install-static-libraries.patch + * Do not install static libraries instead of installing them and + deleting after. + * Reduces disk usage during build. (bnc#1064786) +- Do not build unnecessary parts during stage1. + * Speeds up build a bit. (bnc#1064786) + +------------------------------------------------------------------- +Mon Nov 20 08:45:53 UTC 2017 - msrb@suse.com + +- Updated baselibs.conf to reference version 5 packages. +- Deleted rogue llvm5.spec.r29 file. +- Deleted arm_suse_support.diff, llvm-add_a_LLVM_USE_LINKER.patch, + libsanitizer.patch. + - No longer used, applied already in the source. + +------------------------------------------------------------------- +Tue Oct 17 07:31:06 UTC 2017 - msrb@suse.com + +- llvm-normally-versioned-libllvm.patch + * Change libLLVM naming scheme to match our naming guidelines. + * The reasons for the original naming scheme are no longer valid, + more details in the patch. + +------------------------------------------------------------------- +Fri Oct 13 09:09:15 UTC 2017 - msrb@suse.com + +- Disable all thread related tests in libcxx. Many of them use + timeouts to detect failure. They can fail randomly if the machine + is under heavy load (happens often in OBS). + +------------------------------------------------------------------- +Tue Oct 10 12:14:31 UTC 2017 - msrb@suse.com + +- Drop llvm5-devel-static. llvm5-devel contains shared library with + the same content. + +------------------------------------------------------------------- +Mon Oct 9 10:58:51 UTC 2017 - msrb@suse.com + +- Increase disk space requirement in _constraints to 45GB. + Otherwise the build gets stuck in random places. + +- Skip build of lldb5 python on distributions with swig < 3.0.11 + +------------------------------------------------------------------- +Wed Aug 30 12:08:18 UTC 2017 - msrb@suse.com + +- Copy from llvm4. +- Update to llvm 5.0.0. + +------------------------------------------------------------------- +Wed Aug 30 12:08:17 UTC 2017 - msrb@suse.com + +- Use LLVM_BUILD_LLVM_DYLIB instead of BUILD_SHARED_LIBS to build + single libLLVM library. This is the recommended way. The old way + was causing various issues. + * llvm-split-static-library-exports-into-their-own-export-file.diff + * clang-split-static-library-exports-into-their-own-export-file.diff + (bnc#1049703) + +- Add lld, linker for Clang/LLVM + (sr#517692) + +- Include clang++-MAJOR.MINOR symbolic link + (bnc#1012260) + +- Remove unnecessary dependency on flex and bison. + +- Make sure all binaries are managed by update-alternatives + +- Add llvm-add_a_LLVM_USE_LINKER.patch and link using gold to + prevent memory exhaustion on some build machines. + +- Reduce debuginfo on x86 architecture. LLVM libraries are so big that they + exhaust all memory on 32 bit machine if linked with full debuginfo. + +- Speed up build by skipping parts that are not required in stage1. + +- Build lldb in-tree as one of the llvm tools. + +------------------------------------------------------------------- +Tue Aug 29 11:32:24 UTC 2017 - meissner@suse.com + +- clang-ignore-stack-clash-protector.patch: ignore -fstack-clash-protection + for now. + +------------------------------------------------------------------- +Tue Aug 8 08:02:38 UTC 2017 - schwab@suse.de + +- xlocale.patch: don't use obsolete +- libsanitizer.patch: fix use of undocumented types + +------------------------------------------------------------------- +Sun Jul 16 18:16:07 UTC 2017 - dmueller@suse.com + +- build fixes for armv6 (skip testsuite as it requires 64bit, + set the list of targets to include ARM and remove triplet hack) + +------------------------------------------------------------------- +Sat Jul 1 01:52:09 UTC 2017 - jimmy@boombatower.com + +- Include provides and conflics in baselibs.conf for llvm4-devel, + clang4-devel, llvm4-LTO-devel, and llvm4-gold. + +------------------------------------------------------------------- +Mon Jun 26 09:10:01 UTC 2017 - idonmez@suse.com + +- Update to version 4.0.1 + * Minor bugfixes + +------------------------------------------------------------------- +Fri Jun 2 12:42:08 UTC 2017 - idonmez@suse.com + +- Use gcc6 only for SLE boo#1041469 + +------------------------------------------------------------------- +Tue May 9 08:29:31 UTC 2017 - idonmez@suse.com + +- Package libLLVMFuzzer + +------------------------------------------------------------------- +Wed Apr 19 15:08:25 UTC 2017 - dmueller@suse.com + +- readd arm_suse_support.diff which was accidentally removed + in the 4.0.0 update + +------------------------------------------------------------------- +Wed Apr 5 12:09:39 UTC 2017 - afaerber@suse.de + +- Enable AMDGPU and NVPTX targets everywhere except for S/390. + The AMDGPU target is needed for Mesa Clover (sr#485802). + +------------------------------------------------------------------- +Tue Apr 4 09:14:41 UTC 2017 - idonmez@suse.com + +- Use gcc6 on SLE12 + +------------------------------------------------------------------- +Thu Mar 30 11:33:27 UTC 2017 - idonmez@suse.com + +- Package license & credits + +------------------------------------------------------------------- +Mon Mar 27 07:58:36 UTC 2017 - idonmez@suse.com + +- Update to version 4.0.0 + * See + + http://releases.llvm.org/4.0.0/docs/ReleaseNotes.html and + + http://releases.llvm.org/4.0.0/tools/clang/docs/ReleaseNotes.html + + http://releases.llvm.org/4.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html +- Drop the following patches, fixed upstream: + amdgpu_revert_r280589.patch + arm_suse_support.diff + clang-fix-substitutions-abi_tag.patch + clang-incomplete-field-types.patch + glibc-2.24-libcxx.patch + llvm-install-CheckAtomic.patch + revert-cmake-soname.patch + +------------------------------------------------------------------- +Fri Feb 24 13:26:11 UTC 2017 - idonmez@suse.com + +- Enable BPF for all arches bsc#1026191 + +------------------------------------------------------------------- +Wed Jan 25 12:06:36 UTC 2017 - idonmez@suse.com + +- libc++ must depend on libc++abi + +------------------------------------------------------------------- +Wed Jan 25 10:13:44 UTC 2017 - idonmez@suse.com + +- Stop using otherproviders() due to an rpm parser bug, use + self-conflicts instead as suggested by mls. + +------------------------------------------------------------------- +Tue Jan 24 08:38:09 UTC 2017 - idonmez@suse.com + +- Add amdgpu_revert_r280589.patch to fix an amdgpu regression + bsc#1021577 + +------------------------------------------------------------------- +Tue Jan 17 09:37:34 UTC 2017 - jslaby@suse.com + +- Require LLVMgold and libLTO in llvm-devel, otherwise we get in CMake: + The imported target "LLVMgold" references the file + "/usr/lib64/LLVMgold.so" but this file does not exist. + This happens when requiring llvm3_9-devel directly, not llvm-devel. + +------------------------------------------------------------------- +Wed Dec 21 10:47:15 UTC 2016 - idonmez@suse.com + +- Update to version 3.9.1 + * See: + + http://llvm.org/releases/3.9.1/docs/ReleaseNotes.html + + http://llvm.org/releases/3.9.1/tools/clang/docs/ReleaseNotes.html + + http://llvm.org/releases/3.9.1/tools/clang/tools/extra/docs/ReleaseNotes.html + +------------------------------------------------------------------- +Wed Sep 28 22:06:59 UTC 2016 - toddrme2178@gmail.com + +- Update to version 3.9.0 + * Clang now supports the G++ abi_tag attribute. + * Clang will no longer pass --build-id by default to the linker. + * Improved C++1z support in Clang. + * Clang now has support for all OpenCL 2.0 features. + * Added support for all non-offloading features from OpenMP 4.5, + * The static analyzer now checks for incorrect usage of MPI APIs in C and C++. + * LLVM no longer does inter-procedural analysis and optimization + (except inlining) on functions with comdat linkage. + * LLVM now supports the Intel CPUs Skylake Server with AVX512 + (-march=skylake-avx512) and Knights Landing (-march=knl). + * More at: + + http://llvm.org/releases/3.9.0/docs/ReleaseNotes.html + + http://llvm.org/releases/3.9.0/tools/clang/docs/ReleaseNotes.html + + http://llvm.org/releases/3.9.0/tools/clang/tools/extra/docs/ReleaseNotes.html + * Fix the following patches: + + arm_suse_support.diff + + assume-opensuse.patch + + clang-resourcedirs.patch + + default-to-i586.patch + + glibc-2.23-libcxx.patch + + glibc-2.24-libcxx.patch + + lldb-add-pthread-dl-libs.patch + + lldb-cmake.patch + + llvm-fix-find-gcc5-install.patch + + llvm-remove-clang-only-flags.patch + + revert-cmake-soname.patch + + set-revision.patch + * Remove upstream-included patch: + + llvm-nonvoid-return.patch + * Remove patch for removed files: + + glibc-2.23-libcxx.patch +- Backport upstream patches: + * clang-fix-substitutions-abi_tag.patch + * clang-incomplete-field-types.patch + * llvm-install-CheckAtomic.patch +- Add clang%{_sonum}-include-fixer subpackage and associated + libfindAllSymbols%{_sonum} and libfindAllSymbols%{_sonum}-devel + subpackages. +- Add sanstats to llvm binary list. + +------------------------------------------------------------------- +Fri Sep 23 18:01:42 UTC 2016 - toddrme2178@gmail.com + +- Change update-alternatives to use %postun instead of %preun, + which is now what Factory maintainers are requesting. +- Use the minor version to set the update-alternatives priority so + the most recent version of the LLVM, Clang, and LLDB are used by + default. +- Add LLVM rpm macros so downstream packages can have some idea how + LLVM was built. + +------------------------------------------------------------------- +Tue Sep 20 15:47:16 UTC 2016 - toddrme2178@gmail.com + +- Rename libomp to make it possible to have multiple versions available. + +------------------------------------------------------------------- +Fri Sep 9 18:27:26 UTC 2016 - toddrme2178@gmail.com + +- Split the old llvm package into this version-specific package + and a wrapper package. +- Implement update-alternatives to allow parallel installation + of many of the subpackages. +- Rename subpackages that can be parallel-installed to a + version-specific name based on the associated shared library's + current .so number. +- Various fixes to support the above changes. + +------------------------------------------------------------------- +Wed Sep 7 10:05:32 UTC 2016 - tchvatal@suse.com + +- Sort a bit with spec-cleaner +- Remove the latest switch for now, things should be either coinstallable + or not, we don't need to bother around with compilation like this + +------------------------------------------------------------------- +Thu Aug 31 20:36:58 UTC 2016 - toddrme2178@gmail.com + +- Update to llvm 3.8.1 + * See http://llvm.org/releases/3.8.1/docs/ReleaseNotes.html and + http://llvm.org/releases/3.8.1/tools/docs/ReleaseNotes.html +- Use versioned libLLVM (to libLLVM3_8) and libclang (to libclang3_8) +- Change versioning of liblldb3_8 to liblldb-3_8 and use a variable + to control the name instead of hard-coding it. +- Use bcond_with and bcond_without to enable/disable build options + instead of hard-coding them. +- Put buildrequires as requires in -devel packages to avoid linker errors + when building packages against the -devel packages. +- Add ffi support (disabled by default). +- Add oprofile support (disabled by default). +- Add valgrind support (disabled by default). +- Link cmake files to the normal cmake file directory to allow autodetection + of cmake interfaces. +- Remove unused lldb components from main spec file. +- Split llvm python bindings into own subpackage. +- Split emacs plugin into own subpackage +- Move additional vim plugins into vim plugins package +- Split libc++, libLTO, LLVMgold, libomp, clang-chekers into own subpackages +- Make python-clang, llvm-vim-plugins, and llvm-emacs-plugins noarch since + they aren't architecture-specific. +- Make packages besides llvm, llvm-clang, and the shared libraries conflict + with other versions. This will be important when multiple LLVM versions + are supported. +- Various spec file cleanups +- Rebase patches: + * arm_suse_support.diff + * assume-opensuse.patch + * clang-resourcedirs.patch + * default-to-i586.patch + * glibc-2.23-libcxx.patch + * glibc-2.24-libcxx.patch + * lldb-add-pthread-dl-libs.patch + * lldb-cmake.patch + * llvm-fix-find-gcc5-install.patch + * llvm-nonvoid-return.patch + * llvm-remove-clang-only-flags.patch + * revert-cmake-soname.patch + * set-revision.patch + +------------------------------------------------------------------- +Fri Aug 26 10:03:56 UTC 2016 - tchvatal@suse.com + +- Start conversion to use cmake macros with now introduced + compatibility for ninja +- Reduce number of threads if we don't have enough memory +- Add patch for the nonvoid returns: + * llvm-nonvoid-return.patch + +------------------------------------------------------------------- +Thu Jul 28 09:59:01 UTC 2016 - normand@linux.vnet.ibm.com + +- for ppc64le set memory to 4GB in _constraints file + (failure in Factory:PowerPC) + +------------------------------------------------------------------- +Wed Jul 13 12:26:46 UTC 2016 - schwab@suse.de + +- glibc-2.24-libcxx.patch: fix libcxx testsuite for glibc 2.24 + +------------------------------------------------------------------- +Wed May 18 13:22:17 UTC 2016 - ronisbr@gmail.com + +- Build LLDB separated from LLVM. +- Re-enable python bindings for the LLDB API. + +------------------------------------------------------------------- +Wed May 18 11:14:38 UTC 2016 - idonmez@suse.com + +- Disable libcxx/lldb/openmp for SLE fate#319582 + +------------------------------------------------------------------- +Mon Apr 25 07:25:22 UTC 2016 - idonmez@suse.com + +- Update rpmlintrc to whitelist libLTO.so + +------------------------------------------------------------------- +Mon Apr 11 08:45:56 UTC 2016 - idonmez@suse.com + +- Re-enable glibc-2.23 patch for Tumbleweed + +------------------------------------------------------------------- +Sun Apr 10 19:18:41 UTC 2016 - dmueller@suse.com + +- fix arm_suse_support.diff for armv6hl +- adjust compile flags for llvm on armv6hl (fixes Mesa build) + +------------------------------------------------------------------- +Mon Apr 4 17:53:14 UTC 2016 - idonmez@suse.com + +- Update llvm-remove-clang-only-flags.patch to remove + -Wcovered-switch-default flag for gcc compatibility. + +------------------------------------------------------------------- +Wed Mar 16 09:28:51 UTC 2016 - idonmez@suse.com + +- Use gcc for stage1 bootstrap +- Add back libstdc++-devel dependency for clang since libc++ is + only available for x86-64 atm. + +------------------------------------------------------------------- +Thu Mar 10 12:05:39 UTC 2016 - idonmez@suse.com + +- Comment out glibc-2.23-libcxx.patch until glibc 2.23 actually + hits the Factory. + +------------------------------------------------------------------- +Tue Mar 8 18:52:11 UTC 2016 - idonmez@suse.com + +- Update to llvm 3.8.0 + * See http://llvm.org/releases/3.8.0/docs/ReleaseNotes.html and + http://llvm.org/releases/3.8.0/tools/clang/docs/ReleaseNotes.html +- Fold lldb build into llvm and disable python support +- Drop clang-disable-ada-extension.patch, libcxxabi-exceptions.patch + and cmake-host-triple.patch +- Add revert-cmake-soname.patch to fix soname handling + +------------------------------------------------------------------- +Wed Mar 2 09:08:12 UTC 2016 - idonmez@suse.com + +- Add glibc-2.23-libcxx.patch to fix test failures with glibc 2.23 + +------------------------------------------------------------------- +Sat Oct 3 17:00:28 UTC 2015 - mimi.vx@gmail.com + +- Remove FFI support because its fragile + +------------------------------------------------------------------- +Sun Sep 27 12:03:57 UTC 2015 - idonmez@suse.com + +- Enable OpenMP for x86, x86_64, ppc64 and ppc64le + +------------------------------------------------------------------- +Mon Sep 14 13:10:49 UTC 2015 - idonmez@suse.com + +- Enable all targets on x86, x86_64 + +------------------------------------------------------------------- +Wed Sep 2 08:14:39 UTC 2015 - idonmez@suse.com + +- Update to version 3.7.0 + * See http://llvm.org/releases/3.7.0/docs/ReleaseNotes.html +- Merge aarch64-suse-support.patch into arm_suse_support.diff +- Refresh arm_suse_support.diff, llvm-fix-find-gcc5-install.patch +- Remove llvm-fix-parsearmarch.patch, upstream. + +------------------------------------------------------------------- +Tue May 26 11:54:49 CEST 2015 - ro@suse.de + +- fix build on s390x (one typo in ifarch and one change in filelist) + +------------------------------------------------------------------- +Mon May 25 13:59:37 UTC 2015 - idonmez@suse.com + +- Update to version 3.6.1 + * No changelog upstream + +------------------------------------------------------------------- +Fri Apr 24 12:19:33 UTC 2015 - idonmez@suse.com + +- Add llvm-fix-parsearmarch.patch to fix parsing armv{6,7}hl archs. + +------------------------------------------------------------------- +Mon Mar 2 10:12:32 UTC 2015 - idonmez@suse.com + +- Update to version 3.6.0 + * See http://llvm.org/releases/3.6.0/docs/ReleaseNotes.html +- Add python-xml dependency for regression tests +- Removed the following patches, fixed upstream: + * arm-remove-xfails.diff + * libcxx-libdir.patch + * llvm-config-lib64.patch + * llvm-fix-intrusiverefcntptr.patch + +------------------------------------------------------------------- +Fri Feb 20 13:40:11 UTC 2015 - rguenther@suse.com + +- Add llvm-fix-intrusiverefcntptr.patch to fix build of LLVM tools + with GCC 5. +- Add llvm-fix-find-gcc5-install.patch to properly find installed GCC 5. + +------------------------------------------------------------------- +Wed Jan 28 10:08:43 UTC 2015 - idonmez@suse.com + +- Add a gcc dependency for clang, this is heavyweight but we need + libgcc_s which comes with the gcc package (bnc#893359) + +------------------------------------------------------------------- +Fri Dec 12 12:36:22 UTC 2014 - idonmez@suse.com + +- Conditionalize libcxx{abi} build on build_libcxx variable +- Turn libc++.so into an ldscript so it links to libc++abi + automatically. + +------------------------------------------------------------------- +Tue Oct 21 08:39:22 UTC 2014 - dmueller@suse.com + +- fix constraints for armv6l/armv7l (there is no 4GB RAM on 32bit) + +------------------------------------------------------------------- +Mon Sep 29 09:40:52 UTC 2014 - idonmez@suse.com + +- Rename llvm-remove-werror-date-time.patch to + llvm-remove-clang-only-flags.patch and remove more clang only + flags. + +------------------------------------------------------------------- +Fri Sep 26 08:54:08 UTC 2014 - idonmez@suse.com + +- Enable shared libs on PPC64 + +------------------------------------------------------------------- +Thu Sep 25 10:16:50 UTC 2014 - idonmez@suse.com + +- Require llvm-clang not just clang + +------------------------------------------------------------------- +Wed Sep 17 11:01:31 UTC 2014 - idonmez@suse.com + +- Add llvm-remove-werror-date-time.patch to remove -Werror=date-time + for CXXFLAGS, gcc does not support it and it creeps into + llvm-config --cflags + +------------------------------------------------------------------- +Wed Sep 17 10:53:20 UTC 2014 - idonmez@suse.com + +- Remove wrong Requires from the llvm-devel package + +------------------------------------------------------------------- +Wed Sep 17 08:09:17 UTC 2014 - idonmez@suse.com + +- Add default target triple form ARM, fixes bnc#893359 + +------------------------------------------------------------------- +Fri Sep 5 16:09:45 UTC 2014 - idonmez@suse.com + +- Use ninja for building + +------------------------------------------------------------------- +Thu Sep 4 12:26:10 UTC 2014 - idonmez@suse.com + +- Update to llvm 3.5.0 + * Major update, see http://llvm.org/releases/3.5.0/docs/ReleaseNotes.html +- Use upstream pristine tarballs +- Add libc++/libc++abi support clang (only on x86_64) +- Add libcxxabi-exceptions.patch to fix libcxxabi exception handling +- Add libcxx-libdir.patch to fix libdir on 64bit arches +- Remove asan-disable-hugemalloctest.patch and + cmake-patchversion.patch, fixed upstream. + +------------------------------------------------------------------- +Fri Aug 15 14:23:39 UTC 2014 - idonmez@suse.com + +- Fix the sed line for minimal damage. + +------------------------------------------------------------------- +Wed Jul 23 19:45:30 UTC 2014 - idonmez@suse.com + +- Add baselibs.conf to source files + +------------------------------------------------------------------- +Wed Jul 23 17:00:40 UTC 2014 - idonmez@suse.com + +- Add cmake-patchversion.patch to sync config.h.in + with config.h.cmake + +------------------------------------------------------------------- +Tue Jul 22 12:09:53 UTC 2014 - idonmez@suse.com + +- Update to llvm 3.4.2 + * Minor bugfix release +- Drop clang-max_align_t.patch, applied upstream. + +------------------------------------------------------------------- +Sat Jun 21 13:40:52 UTC 2014 - arnaud@versini.eu + +- Add clang-max_align_t.patch to resolve issue with libstdc++ 4.9 + max_align_t missing declaration + +------------------------------------------------------------------- +Tue May 13 10:44:33 UTC 2014 - peter.trommler@ohm-hochschule.de + +- build compiler-rt on ppc64 (don't delete it) + +------------------------------------------------------------------- +Thu Apr 3 11:58:28 UTC 2014 - idonmez@suse.com + +- Fix resource dir for libclang case (clang-resourcedirs.patch) +- Always build tests + +------------------------------------------------------------------- +Sat Feb 22 18:18:57 CET 2014 - ro@suse.de + +- complete ifarchs for s390 + +------------------------------------------------------------------- +Fri Jan 24 13:15:48 UTC 2014 - idonmez@suse.com + +- Remove non-existing doc subpackage + +------------------------------------------------------------------- +Fri Jan 24 09:23:08 UTC 2014 - idonmez@suse.com + +- Add a dependency on ncurses-devel since libLLVM now links to + tinfo. + +------------------------------------------------------------------- +Tue Jan 14 13:57:57 UTC 2014 - idonmez@suse.com + +- Add 32bit libclang bnc#857131 + +------------------------------------------------------------------- +Tue Jan 7 08:47:50 UTC 2014 - idonmez@suse.com + +- Update to final llvm 3.4 release + * See http://llvm.org/releases/3.4/docs/ReleaseNotes.html for + complete changelog. + +------------------------------------------------------------------- +Tue Dec 24 13:47:24 UTC 2013 - idonmez@suse.com + +- Update to final release candidate (r197980) + +------------------------------------------------------------------- +Sat Dec 21 18:20:20 UTC 2013 - idonmez@suse.com + +- Update to r197866 from release_34 branch + +------------------------------------------------------------------- +Tue Dec 17 11:31:23 UTC 2013 - idonmez@suse.com + +- Update to r197490 from release_34 branch + +------------------------------------------------------------------- +Thu Dec 12 10:43:42 UTC 2013 - idonmez@suse.com + +- Update to r197142 from release_34 branch +- Disable assertions again now that PPC64 backend is fixed + +------------------------------------------------------------------- +Tue Dec 10 09:48:59 UTC 2013 - idonmez@suse.com + +- Update to r196899 from release_34 branch +- Remove compiler_rt-r196612.patch, merged upstream + +------------------------------------------------------------------- +Mon Dec 9 11:42:44 UTC 2013 - idonmez@suse.com + +- Add compiler_rt-r196612.patch to fix ubsan failures on i586 + +------------------------------------------------------------------- +Mon Dec 9 08:54:48 UTC 2013 - idonmez@suse.com + +- Update to r196762 from release_34 branch + +------------------------------------------------------------------- +Mon Dec 9 02:23:07 UTC 2013 - dvaleev@suse.com + +- enable ppc64le + +------------------------------------------------------------------- +Thu Dec 5 13:10:13 UTC 2013 - idonmez@suse.com + +- Update to r196503 from release_34 branch to get compiler_rt fixes + +------------------------------------------------------------------- +Thu Dec 5 08:31:52 UTC 2013 - idonmez@suse.com + +- Update to r196487 from release_34 branch to get compiler_rt fixes + +------------------------------------------------------------------- +Wed Dec 4 13:33:55 UTC 2013 - idonmez@suse.com + +- Ship cmake files for llvm (needed for lldb and such) + +------------------------------------------------------------------- +Wed Dec 4 10:07:59 UTC 2013 - idonmez@suse.com + +- Update to r196371 from release_34 branch + +------------------------------------------------------------------- +Wed Dec 4 03:27:29 UTC 2013 - termim@gmail.com + +- install python binding to libclang + +------------------------------------------------------------------- +Mon Dec 1 08:42:08 UTC 2013 - idonmez@suse.com + +- Update to r196358 from llvm 3.4 branch +- Add asan-disable-hugemalloctest.patch to disable + ASAN HugeMallocTest, it requires 4.1+ GB of RAM. +- Refresh patches + * aarch64-suse-support.patch + * arm_suse_support.diff + * assume-opensuse.patch + * default-to-i586.patch +- Drop upstream patches + * llvm-disable-pretty-stack-trace.patch + * r189852.diff + * unreachable-code.patch + * llvm-no-visibility.patch + +------------------------------------------------------------------- +Tue Oct 22 20:57:00 UTC 2013 - dmueller@suse.com + +- add r189852.diff: Remove vtables optimisation that breaks ARM + and PowerPC +- Disable testsuite on ARMv7, takes forever to run + +------------------------------------------------------------------- +Thu Oct 17 10:23:32 UTC 2013 - schwab@suse.de + +- Fix file list for %arm + +------------------------------------------------------------------- +Wed Oct 9 11:16:08 UTC 2013 - dmueller@suse.com + +- use %arm, not arm in arch conditions +- add arm-remove-xfails.diff: remove XFAILs in testsuite + that pass and thereby make check fail + +------------------------------------------------------------------- +Fri Sep 27 15:15:58 UTC 2013 - idonmez@suse.com + +- Set DisablePrettyStackTrace to true since it messes up signal + handling. bnc#839074 and fdo#60929 implemented with + llvm-disable-pretty-stack-trace.patch) + +------------------------------------------------------------------- +Wed Aug 28 20:31:11 UTC 2013 - schwab@suse.de + +- Fix filelist for aarch64 + +------------------------------------------------------------------- +Wed Aug 28 11:07:16 UTC 2013 - schwab@suse.de + +- aarch64-suse-support.patch: Enable AArch64 suse toolchain support + +------------------------------------------------------------------- +Wed Aug 28 11:02:06 UTC 2013 - idonmez@suse.com + +- Add s390x support + +------------------------------------------------------------------- +Wed Aug 28 10:57:32 UTC 2013 - idonmez@suse.com + +- Remove unused chrpath dependency +- Re-enable ARCMT since libclang depends on it + +------------------------------------------------------------------- +Mon Aug 26 07:23:57 UTC 2013 - schwab@suse.de + +- Define host_triple for aarch64 + +------------------------------------------------------------------- +Thu Aug 22 10:59:28 UTC 2013 - idonmez@suse.com + +- Fix ARMv6 build + +------------------------------------------------------------------- +Wed Aug 21 11:04:35 UTC 2013 - idonmez@suse.com + +- Only enable PowerPC on ppc64 + +------------------------------------------------------------------- +Mon Aug 12 16:43:26 UTC 2013 - idonmez@suse.com + +- Disable shared libs on PowerPC +- Disable ARCMT, it only makes sense for iOS/OSX + +------------------------------------------------------------------- +Tue Aug 6 05:51:46 UTC 2013 - idonmez@suse.com + +- Fix build + +------------------------------------------------------------------- +Wed Jul 17 12:54:40 UTC 2013 - idonmez@suse.com + +- Disable building unit-tests, should fix undefined reference + problem on ARM & PowerPC + +------------------------------------------------------------------- +Tue Jul 16 08:35:00 UTC 2013 - coolo@suse.com + +- do not build on slow or low memory workers + +------------------------------------------------------------------- +Thu Jul 4 11:55:43 UTC 2013 - idonmez@suse.com + +- Drop disable_neon_in_armv7.diff, neon seems to be working fine +- Add cmake-host-triple.patch to pass a host triple argument + +------------------------------------------------------------------- +Wed Jul 3 13:13:25 UTC 2013 - idonmez@suse.com + +- Create libLLVM and libclang subpackages. + +------------------------------------------------------------------- +Wed Jun 19 12:58:24 UTC 2013 - llunak@suse.com + +- Fix finding internal headers on x86_64 + +------------------------------------------------------------------- +Wed Jun 19 12:41:30 UTC 2013 - idonmez@suse.com + +- Fix ARM v5/v7 builds + +------------------------------------------------------------------- +Tue Jun 18 13:42:57 UTC 2013 - tobias.johannes.klausmann@mni.thm.de + +- Create a baselibs.conf + Provide *-32 Bit Packages for x86_64 + +------------------------------------------------------------------- +Thu Jun 13 18:33:31 UTC 2013 - tobias.johannes.klausmann@mni.thm.de + +- Initial version of a cmake based buildscript + + Updated arm_suse_support.diff (patch6) to work with llvm 3.3 + + Set version in spec to 3.3 + +------------------------------------------------------------------- +Thu Jun 13 11:42:33 UTC 2013 - idonmez@suse.com + +- Update to final 3.3 release (r183898) + +------------------------------------------------------------------- +Fri May 24 11:21:39 UTC 2013 - idonmez@suse.com + +- Disable debug symbols on PPC64 + +------------------------------------------------------------------- +Tue May 21 09:46:02 UTC 2013 - idonmez@suse.com + +- Update to version 3.3 RC2 + * Small bugfixes + +------------------------------------------------------------------- +Tue May 14 11:23:07 UTC 2013 - idonmez@suse.com + +- Enable ARM64 support + +------------------------------------------------------------------- +Thu May 9 09:05:41 UTC 2013 - idonmez@suse.com + +- Add unreachable-code.patch to fix unreachable code warnings on SLE + +------------------------------------------------------------------- +Wed May 8 08:56:28 UTC 2013 - idonmez@suse.com + +- Update to version 3.3 RC1 + * Added support for AArch64, ARM’s 64-bit architecture. + * LLVM now has a new SLP vectorizer. + * LLVM and clang now support IBM’s z/Architecture. + * The R600 backend was added in this release, it supports + AMD GPUs (HD2XXX - HD7XXX). + * See http://llvm.org/releases/3.3/docs/ReleaseNotes.html for + complete changelog. + +- Drop upstream patches: + * pr13303.patch + * pr14795.patch + * pr14831.patch + * python-ulimit.patch + +------------------------------------------------------------------- +Wed Jan 16 18:38:01 UTC 2013 - llunak@suse.com + +- pr13303.patch: reapply, was temporarily reverted upstream + +------------------------------------------------------------------- +Fri Jan 11 11:56:09 UTC 2013 - idonmez@suse.com + +- Add pre-generated doc files, remove sphinx dependency + +------------------------------------------------------------------- +Tue Jan 8 15:16:56 UTC 2013 - llunak@suse.com + +- pr14795.patch: Fix incorrect line numbers after -frewrite-includes + (PR#14795) +- pr14831.patch: Do not incorrectly warn about pragmas in -frewrite-includes + (PR#14831) + +------------------------------------------------------------------- +Mon Dec 31 09:29:12 UTC 2012 - dmueller@suse.com + +- disable cross-compile mode in stage2 for armv5/v7 + +------------------------------------------------------------------- +Thu Dec 20 14:51:18 UTC 2012 - idonmez@suse.com + +- Update to final 3.2 release + * No code changes since rc3 + +------------------------------------------------------------------- +Sun Dec 16 08:44:03 UTC 2012 - idonmez@suse.com + +- Update to r170281 from release_32 branch + * SROA fixes + +------------------------------------------------------------------- +Fri Dec 14 18:13:40 UTC 2012 - idonmez@suse.com + +- Disable compilation on PPC, only PPC64 is supported. + +------------------------------------------------------------------- +Fri Dec 14 13:18:39 UTC 2012 - idonmez@suse.com + +- Add python-ulimit.patch: Don't set a limit on address space. + This enables us running tests on PowerPC. + +------------------------------------------------------------------- +Wed Dec 12 11:08:16 UTC 2012 - idonmez@suse.com + +- Unbreak PowerPC support + +------------------------------------------------------------------- +Sat Dec 8 15:45:07 UTC 2012 - idonmez@suse.com + +- Update to r169678 from release_32 branch + * This is 3.2rc3 + +------------------------------------------------------------------- +Wed Dec 5 17:27:57 UTC 2012 - idonmez@suse.com + +- Update to r169391 from release_32 branch + * SROA fixes + +------------------------------------------------------------------- +Tue Dec 4 13:15:12 UTC 2012 - guillaume@opensuse.org + +- Fix ARM build + +------------------------------------------------------------------- +Mon Dec 3 13:32:14 UTC 2012 - schuetzm@gmx.net + +- Fix llvm-config --libdir to return /usr/lib64 where appropriate. + The old method of using sed on the executable does no longer + work, because llvm-config is now a binary. + +------------------------------------------------------------------- +Fri Nov 30 07:27:46 UTC 2012 - idonmez@suse.com + +- Update to r168987 from release_32 branch + * Crash fixes + * Miscompilation fixes + +------------------------------------------------------------------- +Tue Nov 20 08:59:09 UTC 2012 - idonmez@suse.com + +- Stop excluding ppc64 architecture + +------------------------------------------------------------------- +Tue Nov 20 08:25:54 UTC 2012 - idonmez@suse.com + +- Update to r168357 from release_32 branch + * Fixes a miscompilation with gcc 4.7 + +------------------------------------------------------------------- +Sun Nov 18 15:28:10 UTC 2012 - idonmez@suse.com + +- Update to r168286 from release_32 branch + * Fixes llvm PR14309 + +------------------------------------------------------------------- +Thu Nov 15 08:21:58 UTC 2012 - idonmez@suse.com + +- Update to r168031 from release_32 branch + * This is 3.2rc1 + +------------------------------------------------------------------- +Mon Nov 12 08:05:08 UTC 2012 - idonmez@suse.com + +- Update to r167720 from release_32 branch + * Thread local variables may have a specified TLS model. + * LLVM now has a loop optimizer. + * SROA has been rewritten to be more powerful. + * A new optimization pass added to merge stack objects + which are used in disjoint areas of the code. + * LLVM now merge consecutive loads and stores. + * New TableGen infrastructure to support bundling for + Very Long Instruction Word (VLIW) architectures. + * Added a new target independent VLIW packetizer. + * A probability based block placement and code layout algorithm + was added to LLVM's code generator. + * The ARM target now includes a full featured macro assembler, + including direct-to-object module support for clang. + * A new IR-level pass, called "TargetTransformInfo" provides + a number of low-level interfaces. + +- Refresh default-to-i586.patch to apply again +- Drop following patches (fixed upstream) + * arm-suse-support.patch + * pr12463.patch + * pr13141.patch + * pr13303.patch + * rewrite-includes.patch + * clang-fix-mips-test.patch (fixed differently in spec file) + +------------------------------------------------------------------- +Sat Oct 27 06:01:06 UTC 2012 - coolo@suse.com + +- add explicit buildrequire groff for man pages + +------------------------------------------------------------------- +Mon Sep 10 10:16:41 UTC 2012 - idonmez@suse.com + +- Fix debuginfo generation + +------------------------------------------------------------------- +Thu Jul 19 14:14:20 UTC 2012 - llunak@suse.com + +- make link time optimization plugin accessible to ar/nm/ranlib +- build the plugin properly + +------------------------------------------------------------------- +Thu Jul 14 17:30:58 UTC 2012 - adrian@suse.de + +- fix arm build + +------------------------------------------------------------------- +Fri Jul 13 21:03:40 UTC 2012 - llunak@suse.com + +- change rewrite-includes patch to use options to match upstream + changed option names + +------------------------------------------------------------------- +Fri Jul 13 10:14:15 UTC 2012 - llunak@suse.com + +- fix debuginfo generation (PR#13303) + +------------------------------------------------------------------- +Mon Jun 18 20:26:51 UTC 2012 - llunak@suse.com + +- Do not reject PCH because of -DFOO duplication (PR#13141) + +------------------------------------------------------------------- +Tue May 15 09:01:26 UTC 2012 - idonmez@suse.com + +- Update to final 3.1 release + +------------------------------------------------------------------- +Thu May 10 11:40:06 UTC 2012 - idonmez@suse.com + +- Depend on python-base so we don't pull whole Mesa + +------------------------------------------------------------------- +Tue May 8 08:21:42 UTC 2012 - llunak@suse.com + +- make -rewrite-includes support -C and -CC + +------------------------------------------------------------------- +Thu May 3 07:32:06 UTC 2012 - llunak@suse.com + +- patch for -rewrite-includes feature + +------------------------------------------------------------------- +Mon Apr 30 12:39:14 UTC 2012 - idonmez@suse.com + +- Update to svn revision 155819 from 3.1 branch + * C++11 fixes + +------------------------------------------------------------------- +Fri Apr 27 10:02:17 UTC 2012 - idonmez@suse.com + +- Update to svn revision 155700 from 3.1 branch + * Crash fixes + * C++11 fixes + +------------------------------------------------------------------- +Thu Apr 26 12:35:35 UTC 2012 - idonmez@suse.com + +- Update to svn revision 155574 from 3.1 branch + * Crash fixes + * Correctly enable compiler-rt + * Remove unneeded runtime python dependencies + +------------------------------------------------------------------- +Thu Apr 26 10:55:02 UTC 2012 - idonmez@suse.com + +- Switch to 2-stage bootstrap because we don't do build-compare + anyway. + +------------------------------------------------------------------- +Wed Apr 25 09:40:32 UTC 2012 - idonmez@suse.com + +- More fixes to llvm-config + +------------------------------------------------------------------- +Tue Apr 24 10:12:32 UTC 2012 - idonmez@suse.com + +- Fix llvm-config --libs output + +------------------------------------------------------------------- +Sun Apr 22 19:24:24 UTC 2012 - idonmez@suse.com + +- Update to svn revision 155320 from 3.1 branch + * AVX fixes + +------------------------------------------------------------------- +Tue Apr 17 07:48:50 UTC 2012 - idonmez@suse.com + +- Update to svn revision 154914 from 3.1 branch + + Major new features: + + * AddressSanitizer, a fast memory error detector. + * MachineInstr Bundles, Support to model instruction + bundling / packing. + * ARM Integrated Assembler, A full featured assembler + and direct-to-object support for ARM. + * Basic Block Placement Probability driven basic block placement. + + LLVM IR and Core Improvements + + * IR support for half float + * IR support for vectors of pointers, including vector GEPs. + * Module flags have been introduced. + * Loads can now have range metadata attached to them to + describe the possible values being loaded. + * Inline cost heuristics have been completely overhauled + and now closely model constant propagation through call sites, + disregard trivially dead code costs, and + can model C++ STL iterator patterns. + + Optimizer Improvements + + * The loop unroll pass now is able to unroll loops with + run-time trip counts. This feature is turned off by default, + and is enabled with the -unroll-runtime flag. + * A new basic-block autovectorization pass is available. + Pass -vectorize to run this pass along with some associated + post-vectorization cleanup passes. + + X86-32 and X86-64 Target Improvements + + * Bug fixes and improved support for AVX1 + * Support for AVX2 (still incomplete at this point) + + ARM Target Improvements + + * The constant island pass now supports basic block and + constant pool entry alignments greater than 4 bytes. + + Clang Changes + + * New: -Wdangling-else, -Wstrncat-size + * Improved: -Wformat, -Wempty-body, -Wliteral-conversion + * Clang 3.1 adds support for anonymous structs and anonymous unions, + added in the latest ISO C standard. Use -std=c11 or -std=gnu11 + to enable support for the new language standard. + The new C11 features are backwards-compatible and are available + as an extension in all language modes. + * All warning and language selection flags which previously accepted + c1x have been updated to accept c11. The old c1x forms have been removed. + * Generalized constant expressions + * Lambda expressions + * Generalized initializers + * Unrestricted unions + * User-defined literals + * Forward-declared enumerations + * Atomics (both libc++'s and libstdc++4.7's are supported) + + +------------------------------------------------------------------- +Tue Mar 20 12:40:27 UTC 2012 - idonmez@suse.com + +- Target i586-linux for 32bit builds + +------------------------------------------------------------------- +Tue Dec 27 21:33:48 UTC 2011 - idonmez@suse.com + +- Add upstream fix for llvm PR11642 + +------------------------------------------------------------------- +Sun Dec 25 15:29:46 UTC 2011 - idonmez@suse.com + +- Don't run gcc for ada files, just fail instead. + +------------------------------------------------------------------- +Thu Dec 22 15:33:24 UTC 2011 - idonmez@suse.com + +- Add clang-glibc2.14.patch to support glibc 2.14 headers +- Install profiling support + +------------------------------------------------------------------- +Mon Dec 5 13:19:22 UTC 2011 - idoenmez@suse.de + +- Switch to 3-stage bootstrap + +------------------------------------------------------------------- +Fri Dec 2 12:22:07 UTC 2011 - idoenmez@suse.de + +- Build first stage compiler with -O0 to workaround gcc 4.5 bug + +------------------------------------------------------------------- +Thu Dec 1 18:04:15 UTC 2011 - idoenmez@suse.de + +- Update to final 3.0 release + * No real change since rc2 + +------------------------------------------------------------------- +Tue Nov 29 13:23:32 UTC 2011 - idoenmez@suse.de + +- Use %{_lib} macro instead of checking for x86_64 + +------------------------------------------------------------------- +Wed Nov 16 14:28:17 UTC 2011 - idonmez@suse.com + +- Enable ARM support again +- Switch to optimized build + +------------------------------------------------------------------- +Thu Nov 10 14:54:50 UTC 2011 - idonmez@suse.com + +- Disable ARM support, VM goes out of memory while compiling it + +------------------------------------------------------------------- +Thu Nov 10 10:33:01 UTC 2011 - idonmez@suse.com + +- Really enable ARM support +- Remove forcing -frtti + +------------------------------------------------------------------- +Mon Nov 7 15:05:52 UTC 2011 - idonmez@suse.com + +- Update to r143961 from llvm-3.0 branch + * No longer hardcoding include paths + +------------------------------------------------------------------- +Mon Nov 7 09:17:40 UTC 2011 - idonmez@suse.com + +- Fix LLVMgold.so path for x86-64 + +------------------------------------------------------------------- +Sun Nov 6 22:03:12 UTC 2011 - idonmez@suse.com + +- Enable ld gold support + +------------------------------------------------------------------- +Tue Nov 1 11:31:57 UTC 2011 - idonmez@suse.com + +- Update r143456 from llvm-3.0 branch + * llvm/clang 3.0rc2 + +------------------------------------------------------------------- +Fri Oct 28 20:54:16 UTC 2011 - idonmez@suse.com + +- Add llvm-pr9614-part{1,2}.patch to fix LLVM PR9614 + +------------------------------------------------------------------- +Fri Oct 28 08:23:03 UTC 2011 - idonmez@suse.com + +- Fixup dependencies so that llvm-clang doesn't depend + on llvm-clang-devel + +------------------------------------------------------------------- +Tue Oct 25 07:13:47 UTC 2011 - idonmez@suse.com + +- Update to r142912 llvm-3.0 branch + * Fixes to python bindings + +------------------------------------------------------------------- +Fri Oct 21 06:57:07 UTC 2011 - idonmez@suse.com + +- Update to r142641 + * llvm/clang 3.0 rc1 + +------------------------------------------------------------------- +Thu Oct 20 17:56:08 UTC 2011 - idonmez@suse.com + +- Enable ARM code generation + +------------------------------------------------------------------- +Wed Oct 19 15:47:10 UTC 2011 - idonmez@suse.com + +- Fix libdir on x86_64 + +------------------------------------------------------------------- +Tue Oct 18 10:42:09 UTC 2011 - idonmez@suse.com + +- Update to r142341 + * First build from 3.0 branch + * -Wc++98-compat warnings for the lexer + * Add flags for the remaining shift related warnings + (-Wshift-count-negative, -Wshift-count-overflow). + * Only warn in -Wliteral-conversion if the conversion + loses information + * Added clang_getCompletionAnnotation and + clang_getCompletionNumAnnotations to retrieve annotations + from completion string. + * Add support for -std=gnu90 and -std=c++03, for compatibility + with modern gcc. +- Switch to tar.bz2 and remove xz dependency + +------------------------------------------------------------------- +Thu Sep 29 08:10:42 UTC 2011 - idonmez@suse.com + +- Update to r140780 + * Code cleanup + * Crash fixes + * Add support for alignment-specifiers in C1X and C++11 + * Introduce a new compiler switch: -fms-compatility + * Emit debug info for c++0x nullptr. + +------------------------------------------------------------------- +Tue Sep 13 07:36:30 UTC 2011 - idonmez@suse.com + +- Update to r139589 + * C++0x fixes + * PCH fixes + +------------------------------------------------------------------- +Thu Sep 1 14:03:14 UTC 2011 - idonmez@suse.com + +- Update to r138939 + * Many crash fixes. + * Performance optimizations. + * Allow C99 hexfloats in C++0x mode. + * Add missing function _mm_ucomige_sd to emmintrin.h. + +------------------------------------------------------------------- +Fri Aug 12 09:22:18 UTC 2011 - idonmez@novell.com + +- Update to r137452 + * Fix problems found by PVS-Studio + * More AVX fixes + * Many C++ fixes +- Add assume-opensuse.patch to remove dependency on openSUSE-release + +------------------------------------------------------------------- +Wed Aug 3 11:18:31 UTC 2011 - idonmez@novell.com + +- Update to r136773 + * Many AVX fixes + * Support for C++0x unicode string and character literals + +------------------------------------------------------------------- +Tue Jul 19 14:03:21 UTC 2011 - vljn@ovi.com + +- Update to r135431 + * API changes to match Mesa requirements + +------------------------------------------------------------------- +Mon Jul 11 08:33:59 UTC 2011 - idonmez@novell.com + +- Update to r134888 + * Type system rewrite + +------------------------------------------------------------------- +Sat Jul 9 09:27:17 UTC 2011 - idonmez@novell.com + +- Update to r134813 + * Mainly gcc compatibility fixes + +------------------------------------------------------------------- +Fri Jul 8 11:31:27 UTC 2011 - idonmez@novell.com + +- Update to r134698 + * Up to 80x speed improvements with -Wuninitialized + +------------------------------------------------------------------- +Thu Jul 7 11:37:40 UTC 2011 - idonmez@novell.com + +- Enable RTTI support +- Disable assertions because they are not thread safe +- Update to r134611 + * Many C++ fixes and speedups + * Updates for AVX instruction support + * gcc 4.6.1 support + +------------------------------------------------------------------- +Sat Jul 2 19:31:38 UTC 2011 - idonmez@novell.com + +- Fix manpage generation (bnc #703591) + +------------------------------------------------------------------- +Sun Jun 5 14:39:53 UTC 2011 - idonmez@novell.com + +- Update to r132667 + +------------------------------------------------------------------- +Sun May 29 16:34:46 UTC 2011 - idonmez@novell.com + +- Update to use cmake buildsystem +- Remove unmaintained ocaml support + +------------------------------------------------------------------- +Thu May 26 11:01:57 UTC 2011 - idonmez@novell.com + +- Drop ocaml support because its unmaintained +- Update to latest svn revision 132050 + + Start of the upcoming 3.0 version + + Support for gcc 4.6 c++ headers + + Better support for C++0x + +------------------------------------------------------------------- +Fri Apr 29 12:07:59 UTC 2011 - idoenmez@novell.com + +- Fix ocaml dependency + +------------------------------------------------------------------- +Thu Apr 7 08:22:48 UTC 2011 - idoenmez@novell.com + +- Update to 2.9 + + Type Based Alias Analysis (TBAA) is now implemented in clang + + LLVM now generates better debug information + + Inline assembly now supports multiple alternative constraints + +------------------------------------------------------------------- +Wed Apr 6 18:50:59 CEST 2011 - stepan@coresystems.de + +- drop revision from Requires: fields +- update to 2.8.99 revision 129008. + +------------------------------------------------------------------- +Mon Mar 7 20:09:51 CET 2011 - jslaby@suse.de + +- spec file cleanup + +------------------------------------------------------------------- +Wed Dec 22 11:41:15 UTC 2010 - dmacvicar@suse.de + +- Do not require specific ffi version but gather the + appropiate one from the distro + +------------------------------------------------------------------- +Fri Dec 10 04:57:21 UTC 2010 - reddwarf@opensuse.org + +- Fix compatibility with C++0x compilers (g++ 4.5) + +------------------------------------------------------------------- +Mon Nov 29 10:31:49 UTC 2010 - ismail@namtrac.org + +- Fix C include paths + +------------------------------------------------------------------- +Fri Nov 26 12:48:54 UTC 2010 - ismail@namtrac.org + +- Fix header path for openSUSE 11.4 +- Enabled PIC for x86 for loadable module support +- Enable package tests for llvm and clang +- Disable package timestamps to silence an rpmlint warning + +------------------------------------------------------------------- +Wed Jun 2 00:00:00 UTC 2010 - anschneider@exsuse.de + +- Fixed the build on x86 plattforms. +- Package the clang c++-analyzer. + +------------------------------------------------------------------- +Sat May 1 00:00:00 UTC 2010 - jslaby@suse.de + +- update to llvm 2.7 + +------------------------------------------------------------------- +Mon Mar 15 00:00:00 UTC 2010 - jslaby@suse.de + +- added vim plugins + +------------------------------------------------------------------- +Sun Mar 14 00:00:00 UTC 2010 - jslaby@suse.de + +- added libffi-devel to llvm-devel requires so that build does not fail +- fixed build of explicit constructors with gcc45 + +------------------------------------------------------------------- +Mon Nov 2 00:00:00 UTC 2009 - jslaby@suse.de + +- Initial 2.6 release + diff --git a/llvm19.keyring b/llvm19.keyring new file mode 100644 index 0000000..bb74e03 --- /dev/null +++ b/llvm19.keyring @@ -0,0 +1,203 @@ +# Tobias Hieta +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQGNBGLtemUBDADClvDIromq0Y4TX+wyRyYCq5WusPQheQuY8dVCXd9KhMpYAv8U +X15E5boH/quGpJ0ZlVkWcf+1WUHIrQWlbzQdIx514CDM7DBgO92CXsnn86kIMDW+ +9S+Hkn8upbizT1fWritlHwzD9osz7ZQRq7ac03PPgw27tqeIizHGuG4VNLyhbbjA +w+0VLFSu3r219eevS+lzBIvR5U9W720jFxWxts4UvaGuD6XW1ErcsTvuhgyCKrrs +gxO5Ma/V7r0+lqRL688ZPr4HxthwsON1YCfpNiMZ6sgxT8rOE0qL/d07ItbnXxz6 +KdcNWIXamTJKJgag6Tl0gYX4KIuUCcivXaRdJtUcFFsveCorkdHkdGNos403XR89 +5u9gq7Ef10Zahsv5GjE2DV5oFCEhXvfIWxvyeJa65iBkJafElb2stgUjkIut2a2u ++XmpKpwpGSFklce1ABLrmazlLjhsYiJVrz5l5ktoT9moE4GaF7Q5LD6JgsxzLE0U +Tzo9/AQPd8qG2REAEQEAAbQeVG9iaWFzIEhpZXRhIDx0b2JpYXNAaGlldGEuc2U+ +iQHUBBMBCAA+FiEE1XS9XR0OmIleO/kARPJIXkXVkEIFAmLtemUCGwMFCRLMAwAF +CwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQRPJIXkXVkEKoNwv+MEMVzdnzJarx +ZJ0OzHrGJJG8/chkuoejTjCLG73li9yWQigy5KmvynB5yW0fk0PAQ90vvp2wr/Hd +mUh0Zda3CwF6sWlO3N6DEDjVA3lZUuofTtvMn/tdGvvOOXYXAP9N+SZfp/7q8dxX +zn5SA1AO87nXq5lrwVzlVzUCdwOeqDlJ+2U9VEqvukP/FdkgaR2bEb8Wm/h+encW +UIQEqPDE+qOyJ9dRaiL0CUI4x+1wXeXB3OA7VybF2LvaZDbMlocdy+vs825iUWfa +n8g3mE2TpV8jkc9UHgGGopzxqNquvkkIB7ZFZm/PSW40W3OeHKhYsZZbHrz9403t +3R4SAzA3ApmMP/P8ue9irsbe24g3rzYMvck1w4C1a4Uy9buT0OCfA+dA16IRAPgV +5SJEIS62cFbUxkw8el3rUK9V+6kwoq4k8Fs8f1U7DEnOKS/v8BJJCNEc1cvimZai +Y5/3r5BeneEmuZFKX4iIIfcn5PmLSDB4aw+gKAIAAus+E2DxBqE+uQGNBGLtemUB +DADBCNyvUdv0OV//6pQ/0YC2bYXL/ElF0rOjFFl4H7O3TRxgIz2C4nQJHUOrXSmo +iL7ldfUjoAMgebcoWDpgE8S2Vjw2Gd+UJBQXj+3J6dPKLBUCjj9CLyb5hwOHITMV +b9UC/E+iwpn4vgTbI6K1O847brkBC+GuDT4g9D3O3sRbja0GjN0n2yZiS8NtRQm1 +MXAVy1IffeXKpGLookAhoUArSN88koMe+4Nx6Qun4/aUcwz0P2QUr5MA5jUzFLy1 +R3M5p1nctX15oLOU33nwCWuyjvqkxAeAfJMlkKDKYX25u1R2RmQ4ju2kAbw0PiiZ +yYft8fGlrwT4/PB3AqfKeSpx8l9Vs15ePvcuJITauo3fhBjJ6Y4WCKlTG1FbDYUl +KvPhyGO8yLhtZJg3+LbA5M/CEHsDmUh7YEQVxM0RTQMTxNBVBF5IG/4y8v/+19DZ +89VdpsQF3ThoPV0yh57YMemTBeIxpF9Swp5N7kUWct4872kBnXOmbp/jhU4MpLj6 +iLEAEQEAAYkBvAQYAQgAJhYhBNV0vV0dDpiJXjv5AETySF5F1ZBCBQJi7XplAhsM +BQkSzAMAAAoJEETySF5F1ZBCdPwL/3Ox6MwrKFzYJNz3NpQFpKFdDrkwhf25D/Qw +vu5e8Lql/q62NIhEKH3jxXXgoFYas2G7r8CSCRehraDqvXygbaiWUIkxSU0xuDTl +lNqHSkCRqIxhi/yxNm1Pk84NVGTLXWW0+CwT9cRwWn5foIPJhoDdZ732zJ7rcY3R +g71SJTe3R6MnGBzIF1LzT7Znwkh7YfcmeTfInareIWXpeNaeKy8KrQmr/0+5AIer +Ax1gu03o8GD5LFDUuGbESgDJU6nVtVyht7C6AlJWqSX6QS3+lPCw5BOCKbxakYNR +/oBNauzyDISdbUwzHM2d+XGCjBsXKRA0Tft2NlG6EC83/PuY2J9MSA2gg3iPHsiN +J5iipbdZNpZ3XL0l8/t/7T60nM7UZDqt3twLMA0eRFRlCnhMjvFE5Zgj5DE7BsJh +w2nCoGWkAcfeuih+jfyEjN24NK+sE/bM+krwVv430ewJwm1bVUqKrbOb9aa6V9gP +9RmlwZlOTFGcWBYl/cfRONn9qi9a6w== +=Lvw+ +-----END PGP PUBLIC KEY BLOCK----- + +# Tom Stellard +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBFrqgT0BEAC7xo0WH+eNrLlU5LrCk59KmImn1abFcmWNd8kYr5XfqmJKyVqo +EY7A/yRjf+Yn1621EDkpKPjbql7q7MlZMpqKVdOWKWgmhvz08IOKJxaIABd/iIRT +FwhIvB68YjtmzcoOJRi1wLnwuG55fJ9E69HyZ33jgAlRaWV3bE/YyszoTlZriUOE +RbzC5WzX004cE9evlrr+YLt5Y6z7tntOdSXPLyGOFAO5LYMsHsEdi2JBYWrjlslG +6iJr5iEt9v442PrJ79YYbu5QWe/6APRWtI3AtKBp7y250oon2lbj+bIVD7U9fOBB +n/Frqx54UN22sJycET63hgYW4pIjIi5zq+FF15aU+ZqBdtNltoX4hEN7wlDpuNc0 +ezVu2Z8hdt8thpjiFUioTQ1t3RmsN6N548VwxmHdoYpAmiZqPIYBYvm85JB7S/3h +RLuoeGxufBhXGCpnG8ghTOGtbbdanuLB/UROFXTdyZbTCBN5S6jvwkPSaHG7H35Z +3fazMriTXwL1RGAbKITSWhDe5dXy/yOInWe8emJx+35vwQYCB2L4S8wRyQyRw6x4 +YoXCscW041DUMBX2CC7SjMCcmAC39UX1c3GbTpS3rkJR9cmXt50nviMnKpIwlIPd +ZYhmxKifwTJ70+c4GVK2o0MG9bTYvpYhLnYxv6iJCfgmT40E+qkDSzSoZwARAQAB +tCJUb20gU3RlbGxhcmQgPHRzdGVsbGFyQHJlZGhhdC5jb20+iQI/BBMBAgApBQJa +6oE9AhsDBQkB4TOABwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQoseUqYZB +nYp8Gg//RmX6Nup/Dv05jTL7dKRBSD08MF400tRtTmRhIuAgGv27qO2hbqzprKVu +vd20vKBB9CNZpXC2oY8k9VhGv2PZNi/X7iuULIYmzjeFMbJ5CjU6XvuUBmNasITH +6K/0KLhGebPs5h/DNtd7lbzDm86dLcjxgl6LXUULaSyYvTAKn6YB6mAv5J3qJs2X +lfTmenNh9p7TPFTfcMHcS70ywjqKXlDiH0q9bRKJnSX7xUFlTHjKkNnAcRjlPaGf +wUUhIPrnpDboqfwfcmScLrHANW9nwFWSFkNAJu1HQUEuF+An/RZUHDxFbLPKKAIp +hwZ0aORTfBVZ80AjehDMYCbmp1DJeTyLjC1/94un6mlxPIKnPPPM8rMxr83xnrvP ++Y1+pJaDUL7ZvKnmt2LrGRa9GvsNiYKpCNCORfiwZTeSxxXb+LgaodnbCHvGBnk7 +nlbLdMY08vNlxSx8LNyG0krFxJw/rq260+73yc+qjENeG68fozTEy/4jSVrF4t3m +8AAUu5r6i/Aomo7Q27TjU928bbCVunpvDpserfDqr3zsA96LO9k8T6THR6zC9i+R +LiN9Vjl+Rr2YuU26DjFYkCNEA2kNflYCWPJi5I0eodTPZrIPBWJ+H0YTRX31bMH9 +X88FnWJuCwaqAMN3rWlX/lXNCouWDdCuPWseZApISAMnVDE2mM+JAlYEEwEIAEAC +GwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgBYhBEdOIjFqv0eFqIxujqLHlKmG +QZ2KBQJmM9JHBQkNKoSKAAoJEKLHlKmGQZ2KxPIQAJQ/81K1HgUdF4ccNypnkgPm +XDrBoqwWzwnUZmlb2pVJS52k9UZW6tSV+3ulF8DwuT1R9qeOaerVClf1a9APyyTh +Findu7UOdfsvYZXnRymLc52wNAC7PXtwR5G5WqHg8mOX2CQaZmgQweQS5rBqHG8d +nca1dZaq6+e3jU/Yoeu+h4pcdJmeur5OUnqrLgQOV7bbETKFR7NEBe1m57c2EN/+ +pAAv1nhynteb7C+opNwgOeAFJurXVVJ9ucD8Ut4sAozSxhcNs7hXW7Pyk4qVykjW +EelBJvlPfR51cThFtpREyZCt7M2gGkToTd8bqsWotbZW6GQRlwI5c4/qy/uRW8ts +QHUUfOT4piV6YZcBLe0M/sGOwqCkwwLWijBTX49az6ykWsz/nV8obDp5c02g/CWm +f68wYcaNNZ4PnS4LAKYPPi5mwnfVh0ZYQkZYN1LSbgi6OCgtvmf/A9Vz/o3h4cCY +Y/C6at7bHErubAM5cfnvcHs8iVSll+FXpjBgelCRAijfva1ZhAh/lKOATw6G/o36 +zhpKLrABqdGfNJ+7r0QHUTyYNvKz8qv+m8i1RPWZ2AcT2y3RFiPPjRKDg5mgMUzr +yN7bVm93BrUDQ9q3/u+9Je6IsPR4INQOnwKXfGM/GCJOsmtGoP71MnJiP8n4s7F7 +Ok3rLPd537JSfw25ZCZKuQINBFrqgT0BEADB2vDHMuexkaUm3rPi6SvyMGcsHWle +feAWm+UjROKIaV77rHwo0/8ncKbtoQx4ZZjDXdI77M2bXB7tPgyEML90bWDMMGN/ +gnpwWSsiDRWpFIV/+hD6B+l9UaEi4UvEstUbIchOkGrZgPZ4Qism4FSVosEK+FE7 +EKCT4PSS+LiBKSxJZB8/g2uX+3pJvVxYurvcVpTmiNlXvUyll4KMpzy5e0KKa/0y +w9h7SAre5399cSM8E7PDQZQDb1EwbyVyO2yDLgs+p3yzPtRJAydaqRPmT1JbSCYf +hcihTrViMA4EDN5GRjH2EElI37+2HMpgLs4rc6Abz1F4FUVFhqWJXCKUcAIrG17w +A7YUlYg38S6Xws2Xj1VfZ/WP7/qIMJZidYTHZbN9WWCaifCPfLlE5VDNsa8y6Mxm +uFMBAB4PpB1gmmP9pPZsOzV9SmeYt8h2P8cVKDW2f56azpBZvZX6NFn8e0+ZDXS4 +8BQz31G2Xdfa3uOEV0J3JxPXcEbfuPzDHb7OMYP+2Ypjox1TozT1e9zr46SQl9OF +MglOBnwLZJ9baA/IqZkqLq5iu5Oqda44EIVNAntQ3gebi3+q3YG1SvNUseIy2+8y +cNWtdDuWv366Af0okCdrKAdap8+KbREer9uXhamtvxc49RCoWwuKoKfBz0RdVvMv +R/Py2xV8A7PaIQARAQABiQI8BBgBCAAmAhsMFiEER04iMWq/R4WojG6OoseUqYZB +nYoFAmYz0qQFCQ0qhOcACgkQoseUqYZBnYpsaw//ZhtudIl/ZlOvYN+C87D5n8Uv +Up+jCBBtqT1Ey/Wt/oUpW9cl8T3scJW6P/fbI6w06J+mFZK/n13FZcW36wzj2NMk +KmqyQCukhDSKdmE/8vs0lxbBzc+WkVDcuQe7wNaCDpXVxtWmnvhhZW3kRzGyPZdc +NKkm1CZqicD5rbsrfF8pli3+2xyyyHRvhq0ukYJyKA9W1QeKFqo/lEk1lPvQNb1v +6xmJtvw4mSJRUdLjE0T1vpeVOFQWCHclfP83h5bTfB3NILmEUYGhwcHtimX++xpF +By/xBWhXMFw8bC8nkNPb/NaUD1xd9UiYKzdtHcj8qBb2x3KFGZWbKo/9WNfGfhdm +QwMbJGwcox+hD7P1Dbk/v22xdIZNenbKiXWH7crdVwEk5YS56cZbaqZ4YstzVyF/ +CdL43IaeAygkCRBZfz/qCEunMp9HmFOEYg09nYSwODFL4du1qW98BWakpPiIPal9 +i0qQIJXg2CB+bEam1MFU9Rz8F3ciCHFKWpk6SR7VHlXIZ8ecclC5q/SIcjVKktZS +OHFQNzmlblGIqMhqJ0JzhW9bT6K+1zsBLCjH37EJ5J/nxGNCAw6k4d/MMYZoxzUc +XQxbQceGv34gdQ5ZryiqzUY4Kf+WpxLYv1d1C8XgNheN83r6UMleNSf5zr1MdhiA +pGgAsOk/q/OlhWqcrlM= +=bEwW +-----END PGP PUBLIC KEY BLOCK----- + +# Hans Wennborg +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBFS+1SABEACnmkESkY7eZq0GhDjbkWpKmURGk9+ycsfAhA44NqUvf4tk1GPM +5SkJ/fYedYZJaDVhIp98fHgucD0O+vjOzghtgwtITusYjiPHPFBd/MN+MQqSEAP+ +LUa/kjHLjgyXxKhFUIDGVaDWL5tKOA7/AQKl1TyJ8lz89NHQoUHFsF/hu10+qhJe +V65d32MXFehIUSvegh8DrPuExrliSiORO4HOhuc6151dWA4YBWVg4rX5kfKrGMMT +pTWnSSZtgoRhkKW2Ey8cmZUqPuUJIfWyeNVu1e4SFtAivLvu/Ymz2WBJcNA1ZlTr +RCOR5SIRgZ453pQnI/Bzna2nnJ/TV1gGJIGRahj/ini0cs2x1CILfS/YJQ3rWGGo +OxwG0BVmPk0cmLVtyTq8gUPwxcPUd6WcBKhot3TDMlrffZACnQwQjlVjk5S1dEEz +atUfpEuNitU9WOM4jr/gjv36ZNCOWm95YwLhsuci/NddBN8HXhyvs+zYTVZEXa2W +l/FqOdQsQqZBcJjjWckGKhESdd7934+cesGD3O8KaeSGxww7slJrS0+6QJ8oBoAB +P/WCn/y2AiY2syEKp3wYIGJyAbsm542zMZ4nc7pYfSu49mcyhQQICmqN5QvOyYUx +OSqwbAOUNtlOyeRLZNIKoXtTqWDEu5aEiDROTw6Rkq+dIcxPNgOLdeQ3HwARAQAB +tCFIYW5zIFdlbm5ib3JnIDxoYW5zQGNocm9taXVtLm9yZz6JAlQEEwEKAD4WIQS2 +yPmCgrlE47DVwlMPwwQuNFrQXQIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAUC +Zw+FTAUJG7axoQAKCRAPwwQuNFrQXS7nD/0evXrB6MaDnILW0P03fQ7Wqp+j6NK/ +RVxRudRaT6qYLb6j75jXQ8a8U6sabXE9gUUaus6aWfHCWSgvZhiT2Qxh5qCl/6g4 +69CNzw/Kcc1m9EmjwSK2H6YCXj6GvP21tX6Qoz/k/4Gon/LshC0oysA/T6fro5xC +blOJ7Bb5eWNs5CpS8cksPKrbVXoAMm3VSg+W9X8/KkUzGwev7NybNKo4zwmmjNsM +KJEWX6DR1zb9enzrCRTNLdgBFeJkpamrPyWoI8VIGgsOn8k8bI7j1XAh3vZ8+ooT +JbbhYJTFz0VgYFGE6+OLSlhFSR3fPVKkZoFKNhFMtEDjNoc/TSA+qJ/U095qEhWc +YPXnPgFAuCRoJAR/Ic5TPEXzcy4K1MnFVEfuE6ycN+77o/JuDhWjk1KRPGMkAnsb +tY2rBShHH+5gVk6bHElishZg0BApuXOM998f+nYNFb12zo9s2H2A+GGPmaN4boat +o7gPjm328VOwKVTTxjSYPrkA8Qtx7jL/ab7cMHsGfjtuO2X/h15l/z3rqFdbv8WA +O+u8S4mu4gUbsNOmSqq5K7j96EK8dENJxvc/uBYxeeRwsuWIriVouhKmkWfi3DEy +d3rPz1SgrsrxJJUJuIdb0puqgsDXuYm399hxyTSTtZHOTchtBngtLmYURNWaQFT7 +xdVJhw666aiRhrkCDQRUvtUgARAA7EHGtB6wKGOsKoqNjk+dKxJil5vh+ui5ysLz +3wAXDYOA39nP5bvC1JNu3P8ZFwK6uPNm83ujasK42TSPT6zWyBlmbYF2V2VpsvL5 +QX+RJbWtvmqF9dwYa5u7jw4x21J+iT2U5zRDUvgc2UYTiVQGRnOYjtiSp+X4HCub +2umLniDi5r08iKIcgCYyhkhxu04bUpoOvoKhdGT/eDZmIZTCGreMUauiIGwoRqnY +UnVuHk0mTYSDylXt8w4XuFRAoFms060g+7yEDlYSCS7dTdViNFIjdIOLpBecMv7E +fFqOJakq0XcmNmHzL8IJMPw/I/fhiN9m4WaR2yR7lx3HofRXZQKIfjnedyAVV1AN +eRjif7QxPOHLbG7QhVWcHFgNg2GL7cyNMcl30LjEyL237ki4S8MA+GB9mMOlBqQQ +/PqFWaCPSaUoiBGKUFEr3+Q7GTL260GkaTeMQkau7+Eo2WgU2ymhi1jrMBMCvwRw +6CgIVATSciS1yDfAX344ISdXbz9rtdnBRnsaX+p84e12vfvjCjyR3xHdXx3Yb2rn +DT+4JX001DR8ZZkM8Ohi3rCc8vqBm/+ckzyhlj67SsLbhbBJxkieJqvILgkcNqwC +GvZLYK2AK8GCyUrp/eAPXoofE9kwGlfvdPM5giEwQ/+9eBUltQPp1iG35T1zg6EQ +MmjCfR0AEQEAAYkCPAQYAQIAJgIbDBYhBLbI+YKCuUTjsNXCUw/DBC40WtBdBQJa +XfpLBQkPBSarAAoJEA/DBC40WtBdPX8P/1ilEM2BomXdhUO1Vmh5DCHsFDpQtlN5 +cU+iBiQXaPdVaDyz1SYCziyD/hr70otJqe1eNf4kWxG/SVB7kav9WXxVDgsoRcF+ +IaZKK+Mhnt6il13dg/bDoblPdIDh3YJB+yDiuck+dciPMo2JI6LfrzJue318vRja +vZqotOY/pjuKywNQ74nVNbVcebfj0k9HQeXhxO42dabgm5fabYIkRzlcGUMCFr2l +RWz4nkLYPRQUWTJ47N4k/DLrHkClYebzifwCOFBKm7WpErEpd3B6Lq2RBZYwe6L5 +OBJj/MKSYP3+hjXkSLlq8nhaAhtMslShkyLvSuI+ZTxOGOnMDtL42TSDusw+r5eX +XCGMpT+7S52WysgmPOSHp+2opSYiRvFhOmOGcS6M2sSvmbZLpnrHfL0TlBqAExF3 +FGF+T4dvIAJw/+n2tc7OXgzb3UOgp4AAfvQYeeIbHI2z2sCgyv+EPldb9avPd1wo +xzaznnkToxkgsTZmKiVxGf5tg4w9m1aVvH3y3y6ox/j2BjgUZAFkDA+CUyvHuaub +sdMiJdqFOFAY4mDqLMkMAPlHBIQaUBwvbxPwoC4zoIsuSGUF9DCIqxQE2eH2vzBX +eUH6lXQaEv7eLTvuBNh9kFHAvOMV2Gb3FQoRpnqs3UFf2XOLHh5I0rmeWfSNSrXr +sfYgf//ax/x3uQINBFylxXABEAC2Qt89UYDndAxNoCIJktuSBWh9BxC1JPPQtmLd +XTsG5vd2h63rBN64ZYTGuW2AQxGV24ngP8rv5F1QzSPY0UgOt25r7pS3+1MZbv+d +sZTtN4LWTXRdIVU+wcqKX1FZCGDSuGs5EpyElnKHxxGh7Wi0KFZMN64t83WPrbzq +aiKrpp9/QHMUtrNqPgUBNKvH8k5g/AGa21+fF1kRsUtmsZbre4IK9bakIjmAfNMA +ZA/YnJy0Ou06HcFWzkfTRLMrQHINUzOzNOhhXuYx3h4qSrvcJnqoGMJ9pZkOfrEJ +VPQexYq3hvL1jwMLdFKDozViUx520/7K8frusf+Df0RlucEVF4QjAV4RAuHBtrzP +LkH/0v6U3u1rX+5VMK8otud43cXcNet/cZ97jRm2rPzviRgYI9EljjD9vGPCIzmo +aJYs+eNJRIJGPqzVV+AELiH9Bc9jCad8XeECBsTCVNx+kEijKclQWr+3y610SXNY +JRKzlPBlMrqJ0U+/vNo59TUgZlwC8KdbiWtxEQ3JYFT7rHVH9cQeAlLXAE0yIfZK ++ss2HpIXgBvJ4nNyNBcFzoqF/iKBcH6yYRILNSGLEKOBnX3/XpAlvnOB1gcTSOQY +frNoXHpA7yzpGh1MeypdCeOqOicZZRF/xX1KR6YDC5YDOFM2paydDNS1ql0Wp0VW +WcIp1wARAQABiQI8BBgBCgAmFiEEtsj5goK5ROOw1cJTD8MELjRa0F0CGwwFAmcP +hXsFCRPPwYcACgkQD8MELjRa0F1rFQ/+KrommlP3EWGNepRcyRuISGOwb7N3b4kW +n+dQ8pUU8wyrRN6MR0nfc3tQYlMC46a/W9+TCTdA69s8L35RJ9be2DoxuwSyGUX8 +nRML13t9PT6x9PpnEtklaxYaDR7XDqEHN/DAhnQYMk+w0CGG/WGemecetmaaG7sr +CazQF3mUV2zayRhNiua60YBjhaAPX7/QxOMv4af0aNIA8kt5QWb1jINXTdSHGynp +Rnp7HzQhNacGka9+DvguESguFPq7Vtm9DzqZMO2ydHli/Z7f4FAANgHdzSlQ1QzO +vU0W95TfR6nw0SsevRja2NM6C4t5sieDcOGSwEq/ccmKsrLO/C+DwUzT3lxNZXHh +CUxVihdOaGJMbwprkqtEhoBaBjerqB/sDS4I3+UHKuEZ7X1/AyrzTEMFByOapf1h +lmR8YPAgBPR4n7LZ6FRCHJwY8hGLs/cfWbQ9In9fOZvJl5+s4las3VJzpS99hp1p +u49pbDu0Wu/NUuZ+7LxjbP7v5QkzLmnoGnUaMGpg5l87gvcJTkyPxT95x+H4iKEW +DbGRu7yIHHgGmE8JfcJx8VfzsqsStM3ZI+7hYXpaU0PwFBQADeis6ZrAJczoGUkz +R8QQx7DLeV4A2W7b/m+FXFH6V1a+EEavACIrUU6StNMpoS1/vfs2W7MUoOYIFlOd +6U4RlBcEgKU= +=43Mw +-----END PGP PUBLIC KEY BLOCK----- + +# Muhammad Omair Javaid (LLVM Release Signing Key) + +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEZw7PSRYJKwYBBAHaRw8BAQdABNbFOdYdCukaIGdkMQpHrSeDIZt/7bUSVwYD +dX7JnHy0Sk11aGFtbWFkIE9tYWlyIEphdmFpZCAoTExWTSBSZWxlYXNlIFNpZ25p +bmcgS2V5KSA8b21haXIuamF2YWlkQGxpbmFyby5vcmc+iJMEExYKADsWIQQPuWgk +YG0V/dVMPQkv/GKdP1Y73AUCZw7PSQIbAwULCQgHAgIiAgYVCgkICwIEFgIDAQIe +BwIXgAAKCRAv/GKdP1Y73LHWAPoDDIf+zv4qbPmdSNN1JwjB6/U+3ZfW0bDhrxhF +1TzU9gEAyeG9bPukFmygisr2FBt+YV0Xe/il5zhYfTyP4pNNqQq4OARnDs9JEgor +BgEEAZdVAQUBAQdA8W6MXoRWNhKJEWM/AgeJwy19kkflnK+yFVEXnWaPXGIDAQgH +iHgEGBYKACAWIQQPuWgkYG0V/dVMPQkv/GKdP1Y73AUCZw7PSQIbDAAKCRAv/GKd +P1Y73KmXAP0R/TCQcZy3E2eqgBhVUY3/0N0amRWDjssxw/O/7P/PcwD/aFQdB9Vt +f9xntjl+EcZ58U5mbwhBTYLmHpCqZUP+ugk= +=s2el +-----END PGP PUBLIC KEY BLOCK----- + diff --git a/llvm19.spec b/llvm19.spec new file mode 100644 index 0000000..a55f8ae --- /dev/null +++ b/llvm19.spec @@ -0,0 +1,1863 @@ +# +# spec file for package llvm19 +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global _sonum 19 +%global _minor %{_sonum}.1 +%global _soname %{_minor}%{?_rc:-rc%_rc} +%global _patch_level 6 +%global _relver %{_minor}.%{_patch_level} +%global _version %_relver%{?_rc:-rc%_rc} +%global _itsme19 1 +# Integer version used by update-alternatives +%global _uaver %{_sonum}1%{_patch_level} +%global _soclang 13 +%global _socxx 1 + +%ifarch x86_64 aarch64 %arm +%bcond_without libcxx +%else +%bcond_with libcxx +%endif + +%ifarch aarch64 ppc64 ppc64le %{ix86} x86_64 +%bcond_without openmp +%else +%bcond_with openmp +%endif + +# Prefer ld.bfd for now because it produces a THP-compatible section layout. +%ifnarch %{arm} +%bcond_with use_lld +%else +%bcond_without use_lld +%endif + +%ifarch aarch64 ppc64le s390x x86_64 +%bcond_without lldb +%if %{suse_version} > 1600 +%bcond_without lldb_python +%else +# LLDB Python bindings require Swig 4, which SLE/Leap don't have. +%bcond_with lldb_python +%endif +%else +%bcond_with lldb +%bcond_with lldb_python +%endif + +%ifarch %{arm} aarch64 %{ix86} ppc64le riscv64 s390x x86_64 +%bcond_without thin_lto +%else +%bcond_with thin_lto +%endif + +%bcond_with ffi +%bcond_with oprofile +%bcond_with valgrind +%bcond_without polly +%bcond_without lld + +%if %{suse_version} > 1600 +%global python_pkg python3 +%global python_bin python3 +%else +%global python_pkg python311 +%global python_bin python3.11 +%endif +%global python_pkg_sitelib %{expand:%%{%{python_pkg}_sitelib}} +%global python_pkg_sitearch %{expand:%%{%{python_pkg}_sitearch}} + +# Figure out the host triple. +%ifarch armv6hl +# See https://build.opensuse.org/request/show/968066. +%define target_cpu armv6kz +%else +# What RPM spells ppc, GCC spells powerpc. +%define target_cpu %{lua:print((string.gsub(rpm.expand("%{_target_cpu}"), "ppc", "powerpc")))} +%endif + +%ifarch %{arm} +%define host_triple %{target_cpu}-%{_target_vendor}-%{_target_os}-gnueabihf +%else +%define host_triple %{target_cpu}-%{_target_vendor}-%{_target_os} +%endif + +# By default, build everything. +%global llvm_targets "all" +%global llvm_experimental_targets "M68k" +%ifarch %arm ppc64 ppc64le +# No cross-compilation, but GPU targets. +%global llvm_targets "host;AMDGPU;BPF;NVPTX;WebAssembly" +%global llvm_experimental_targets "" +%endif +%ifarch ppc s390x +# No graphics cards on System Z; turned off for ppc because of relocation overflows. +%global llvm_targets "host;BPF;WebAssembly" +%global llvm_experimental_targets "" +%endif + +%ifnarch ppc64le +%global openmp_cpu %{target_cpu} +%else +%global openmp_cpu ppc64 +%endif + +%define _plv %{!?product_libs_llvm_ver:%{_sonum}}%{?product_libs_llvm_ver} + +# Expands to -n if we're providing the distribution default for the given package. +%define multisource() %{expand:%%{?_itsme%{expand:%%{!?product_libs_llvm_ver_%{1}:%%{_plv}}%%{?product_libs_llvm_ver_%{1}}}:-n}} + +# set_jobs type memory +# Set max__jobs so that every job of the given type has at least the +# given amount of memory. +%define set_jobs() \ + max_%{1}_jobs="%{?jobs:%{jobs}}" \ + if test -n "$max_%{1}_jobs" -a "$max_%{1}_jobs" -gt 1 ; then \ + max_jobs="$(($avail_mem / %2))" \ + test "$max_%{1}_jobs" -gt "$max_jobs" && max_%{1}_jobs="$max_jobs" && echo "Warning: Reducing number of %{1} jobs to $max_jobs because of memory limits" \ + test "$max_%{1}_jobs" -le 0 && max_%{1}_jobs=1 && echo "Warning: Not %{1}ing in parallel at all because of memory limits" \ + fi + +# Recursion utils. +%global _stop0 1 +%define _lapply_rec(p:f:) %{expand:%{%{-p*} %{-f*}} %%{?!_stop%#:%%{_lapply_rec -p %{-p*} -f %*}}} + +# Usage: +# %%global pattern foo_%%1 +# %%{lapply -p pattern a b c} +# produces foo_a foo_b foo_c. +%define lapply(p:) %{_lapply_rec -p %{-p*} -f %{shrink:%*}} + +%define comment() %{nil} + +# Due to RPMs recursion limit, we have to split the lists into portions of ≤ 20. +%global llvm_ua_anchor llvm-ar +%global llvm_tools \ +%{comment Optimizer, compiler, interpreter, linker} \ + llc \ + lli \ + llvm-jitlink \ + llvm-link \ + llvm-lto \ + llvm-lto2 \ + llvm-rtdyld \ + opt \ +%{comment LLVM IR tools} \ + llvm-as \ + llvm-bcanalyzer \ + llvm-bitcode-strip \ + llvm-cat \ + llvm-diff \ + llvm-dis \ + llvm-extract \ + llvm-modextract \ + llvm-sim \ + llvm-split +%global llvm_elf_dwarf_tools \ +%{comment ELF tools} \ + llvm-cfi-verify \ + llvm-nm \ + llvm-objcopy \ + llvm-objdump \ + llvm-ranlib \ + llvm-readelf \ + llvm-readobj \ + llvm-size \ + llvm-strip \ +%{comment Debug info tools} \ + dsymutil \ + llvm-addr2line \ + llvm-debuginfo-analyzer \ + llvm-debuginfod \ + llvm-debuginfod-find \ + llvm-dwarfdump \ + llvm-dwarfutil \ + llvm-dwp \ + llvm-gsymutil +%global llvm_abi_coff_macho_tools \ +%{comment ABI tools} \ + llvm-cxxdump \ + llvm-cxxfilt \ + llvm-cxxmap \ + llvm-ifs \ +%{comment Windows/COFF} \ + llvm-cvtres \ + llvm-dlltool \ + llvm-lib \ + llvm-ml \ + llvm-mt \ + llvm-pdbutil \ + llvm-rc \ + llvm-undname \ + llvm-windres \ +%{comment Apple/Mach-O} \ + llvm-install-name-tool \ + llvm-libtool-darwin \ + llvm-lipo \ + llvm-otool \ + llvm-readtapi +%global llvm_instr_devel_tools \ +%{comment Instrumentation and introspection} \ + llvm-cov \ + llvm-opt-report \ + llvm-profdata \ + llvm-profgen \ + llvm-symbolizer \ + llvm-xray \ + sancov \ + sanstats \ +%{comment Development utilities} \ + bugpoint \ + llvm-c-test \ + llvm-mc \ + llvm-mca \ + llvm-reduce \ + llvm-remarkutil \ + llvm-stress \ + llvm-strings \ + llvm-tblgen \ + llvm-tli-checker \ + reduce-chunk-list \ + verify-uselistorder + +%global clang_ua_anchor clang +%global clang_binfiles \ + c-index-test \ + clang++ \ + clang-check \ + clang-cl \ + clang-cpp \ + clang-extdef-mapping \ + clang-format \ + clang-installapi \ + clang-linker-wrapper \ + clang-nvlink-wrapper \ + clang-offload-bundler \ + clang-offload-packager \ + clang-refactor \ + clang-rename \ + clang-repl \ + clang-scan-deps \ + clang-tblgen \ + diagtool +%global clang_tools_extra_binfiles \ +%{comment Technically still clang} \ + amdgpu-arch \ + nvptx-arch \ +%{comment Real clang-tools-extra} \ + clang-apply-replacements \ + clang-change-namespace \ + clang-include-cleaner \ + clang-include-fixer \ + clang-move \ + clang-pseudo \ + clang-query \ + clang-reorder-fields \ + clang-tidy \ + clangd \ + find-all-symbols \ + modularize \ + pp-trace +%if %{with lld} +%global lld_ua_anchor lld +%global lld_binfiles \ + ld.lld \ + lld-link \ + ld64.lld \ + wasm-ld +%endif +%if %{with lldb} +%global lldb_ua_anchor lldb +%global lldb_binfiles \ + lldb-argdumper \ + lldb-dap \ + lldb-instr \ + lldb-server +%endif +%global binfiles \ + %{llvm_ua_anchor} %{llvm_tools} %{llvm_elf_dwarf_tools} \ + %{llvm_abi_coff_macho_tools} %{llvm_instr_devel_tools} \ + %{clang_ua_anchor} %{clang_binfiles} %{clang_tools_extra_binfiles} \ + %{?lld_ua_anchor} %{?lld_binfiles} %{?lldb_ua_anchor} %{?lldb_binfiles} + +%global llvm_man \ +%{comment Optimizer, compiler, interpreter, linker} \ + llc \ + lli \ + llvm-link \ + opt \ +%{comment LLVM IR tools} \ + llvm-as \ + llvm-bcanalyzer \ + llvm-dis \ + llvm-extract \ +%{comment Instrumentation and introspection} \ + llvm-cov \ + llvm-opt-report \ + llvm-profdata \ + llvm-profgen \ + llvm-symbolizer +%global llvm_bin_utils_man \ +%{comment ELF tools} \ + llvm-ar \ + llvm-nm \ + llvm-objcopy \ + llvm-objdump \ + llvm-ranlib \ + llvm-readelf \ + llvm-readobj \ + llvm-size \ + llvm-strip \ +%{comment Debug info tools} \ + dsymutil \ + llvm-addr2line \ + llvm-debuginfo-analyzer \ + llvm-dwarfdump \ + llvm-dwarfutil \ +%{comment Windows/COFF} \ + llvm-lib \ + llvm-pdbutil \ +%{comment Apple/Mach-O} \ + llvm-install-name-tool \ + llvm-libtool-darwin \ + llvm-lipo \ + llvm-otool +%global llvm_devel_utils_man \ +%{comment ABI tools} \ + llvm-cxxfilt \ + llvm-cxxmap \ + llvm-ifs \ +%{comment Development utilities} \ + bugpoint \ + llvm-diff \ + llvm-mc \ + llvm-mca \ + llvm-reduce \ + llvm-remarkutil \ + llvm-stress \ + llvm-strings \ + llvm-tblgen \ + llvm-tli-checker + +%global clang_manfiles clang diagtool +%global manfiles %{llvm_man} %{llvm_bin_utils_man} %{llvm_devel_utils_man} %{clang_manfiles} + +%define _dwz_low_mem_die_limit 40000000 +%define _dwz_max_die_limit 200000000 + +Name: llvm19 +Version: %_relver%{?_rc:~rc%_rc} +Release: 0 +Summary: Low Level Virtual Machine +License: Apache-2.0 WITH LLVM-exception AND NCSA +Group: Development/Languages/Other +URL: https://www.llvm.org/ +# NOTE: please see README.packaging in the llvm package for details on how to update this package +Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/llvm-%{_version}.src.tar.xz +Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/cmake-%{_version}.src.tar.xz +Source2: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/clang-%{_version}.src.tar.xz +Source3: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/clang-tools-extra-%{_version}.src.tar.xz +Source4: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/compiler-rt-%{_version}.src.tar.xz +Source5: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/libcxx-%{_version}.src.tar.xz +Source6: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/libcxxabi-%{_version}.src.tar.xz +Source7: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/openmp-%{_version}.src.tar.xz +Source8: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/lld-%{_version}.src.tar.xz +Source9: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/lldb-%{_version}.src.tar.xz +Source10: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/polly-%{_version}.src.tar.xz +Source11: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/runtimes-%{_version}.src.tar.xz +# We shouldn't actually use this, but it's hard to untangle from the build. +Source12: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/third-party-%{_version}.src.tar.xz +Source13: https://github.com/llvm/llvm-project/raw/llvmorg-%{_version}/libunwind/include/mach-o/compact_unwind_encoding.h +Source29: https://releases.llvm.org/release-keys.asc#/%{name}.keyring +Source30: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/llvm-%{_version}.src.tar.xz.sig +Source31: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/cmake-%{_version}.src.tar.xz.sig +Source32: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/clang-%{_version}.src.tar.xz.sig +Source33: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/clang-tools-extra-%{_version}.src.tar.xz.sig +Source34: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/compiler-rt-%{_version}.src.tar.xz.sig +Source35: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/libcxx-%{_version}.src.tar.xz.sig +Source36: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/libcxxabi-%{_version}.src.tar.xz.sig +Source37: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/openmp-%{_version}.src.tar.xz.sig +Source38: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/lld-%{_version}.src.tar.xz.sig +Source39: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/lldb-%{_version}.src.tar.xz.sig +Source40: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/polly-%{_version}.src.tar.xz.sig +Source41: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/runtimes-%{_version}.src.tar.xz.sig +Source42: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{_version}/third-party-%{_version}.src.tar.xz.sig +# Docs are created manually, see below +Source50: llvm-docs-%{_version}.src.tar.xz +Source51: clang-docs-%{_version}.src.tar.xz +Source100: %{name}-rpmlintrc +Source101: baselibs.conf +# PATCH-FIX-OPENSUSE lto-disable-cache.patch -- Disable ThinLTO cache +Patch0: lto-disable-cache.patch +# Include tools before projects so that OpenMP can see Clang. (Proper fix?) +Patch1: llvm-projects-tools-order.patch +# PATCH-FIX-OPENSUSE assume-opensuse.patch idoenmez@suse.de -- Always enable openSUSE/SUSE features +Patch2: assume-opensuse.patch +# PATCH-FIX-OPENSUSE default-to-i586.patch -- Use i586 as default target for 32bit +Patch3: default-to-i586.patch +Patch4: clang-resourcedirs.patch +Patch6: llvm-fix-find-gcc5-install.patch +Patch9: link-clang-shared.patch +Patch10: link-clang-tools-extra-shared.patch +# PATCH-FIX-OPENSUSE lldb-cmake.patch -- Fix ncurses include path. +Patch11: lldb-cmake.patch +Patch13: llvm-normally-versioned-libllvm.patch +Patch14: llvm-do-not-install-static-libraries.patch +# PATCH-FIX-OPENSUSE (or -UPSTREAM?): we disable RPATHs, but the test driver drops LD_LIBRARY_PATH. +Patch15: libcxx-test-library-path.patch +# PATCH-FIX-UPSTREAM (?): Work around gh#llvm/llvm-project#28804 by hinting with __builtin_assume. +Patch16: llvm-workaround-superfluous-branches.patch +# PATCH-FIX-UPSTREAM: Recognize -suse-linux as implicitly GNU. Discussion at https://reviews.llvm.org/D110900. +Patch17: llvm-suse-implicit-gnu.patch +Patch20: llvm_build_tablegen_component_as_shared_library.patch +Patch21: tests-use-python3.patch +Patch24: opt-viewer-Find-style-css-in-usr-share.patch +# PATCH-FIX-OPENSUSE check-no-llvm-exegesis.patch -- Don't let tests depend on llvm-exegesis. +# We don't build this because it's not useful without libpfm and can't link with libLLVM.so. +Patch25: check-no-llvm-exegesis.patch +# PATCH-FIX-UPSTREAM: Require x86 target for test. +Patch27: clang-fix-openmp-test.patch +# PATCH-FIX-UPSTREAM: Fix test with x87 floating-point. +Patch28: llvm-fix-cov-test-i586.patch +# PATCH-FIX-UPSTREAM: Allow larger compressed size for RISC-V. +Patch29: clang-fix-modules-test-riscv.patch +# PATCH-FIX-UPSTREAM: Test using avx512f requires x86 target. +Patch30: clang-fix-openmp-test-non-x86.patch +# PATCH-FIX-UPSTREAM: Use symbol versioning also for libclang-cpp.so. +Patch31: clang-shlib-symbol-versioning.patch +BuildRequires: %{python_pkg}-base >= 3.8 +BuildRequires: binutils-devel >= 2.21.90 +BuildRequires: cmake >= 3.13.4 +BuildRequires: fdupes +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: libstdc++-devel +BuildRequires: ninja +BuildRequires: pkgconfig +BuildRequires: python-rpm-macros +BuildRequires: pkgconfig(libedit) +BuildRequires: pkgconfig(libzstd) +BuildRequires: pkgconfig(zlib) +Requires(post): update-alternatives +Requires(postun): update-alternatives +# llvm does not work on s390 +ExcludeArch: s390 +%if %{with ffi} +BuildRequires: pkgconfig(libffi) +%endif +%if %{with valgrind} +BuildRequires: pkgconfig(valgrind) +%endif +%if %{with oprofile} +BuildRequires: oprofile-devel +%endif +Suggests: %{name}-doc + +%description +LLVM is a compiler infrastructure designed for compile-time, +link-time, runtime, and idle-time optimization of programs from +arbitrary programming languages. + +The compiler infrastructure includes mirror sets of programming +tools as well as libraries with equivalent functionality. + +%package -n libLLVM%{_sonum} +Summary: Libraries for LLVM +Group: System/Libraries + +%description -n libLLVM%{_sonum} +This package contains the shared libraries needed for LLVM. + +%package devel +Summary: Header Files for LLVM +Group: Development/Libraries/C and C++ +Requires: %{name} = %{version} +%if %{with openmp} +# Referenced by LLVMExports.cmake +Requires: libomp%{_sonum}-devel +%endif +Requires: libLLVM%{_sonum} = %{version} +Requires: libLTO%{_sonum} = %{version} +Requires: libstdc++-devel +Requires: libtool +Requires: llvm%{_sonum}-gold +%if %{with polly} +# Referenced by LLVMExports.cmake +Requires: llvm%{_sonum}-polly-devel +%endif +Requires: pkgconfig +Conflicts: llvm-devel-provider < %{version} +%if %{suse_version} <= 1500 +# llvm{5,7} in SLE/Leap 15.x used to have the man page for FileCheck. +Conflicts: llvm5 +Conflicts: llvm7 +%endif +Conflicts: cmake(LLVM) +# libLTO.so used to be a separate package. +Conflicts: libLTO.so < %{version} +Provides: libLTO.so = %{version} +Provides: llvm-devel-provider = %{version} +%if %{with ffi} +Requires: pkgconfig(libffi) +%endif +%if %{with valgrind} +Requires: pkgconfig(valgrind) +%endif +%if %{with oprofile} +Requires: oprofile-devel +%endif + +%description devel +This package contains library and header files needed to develop +new native programs that use the LLVM infrastructure. + +%package doc +Summary: Documentation for LLVM +Group: Documentation/HTML +Requires: %{name} = %{version} +# The docs used to be contained in the devel package. +Conflicts: llvm-devel-provider < 9.0.0 +Conflicts: llvm-doc-provider < %{version} +Provides: llvm-doc-provider = %{version} +BuildArch: noarch + +%description doc +This package contains documentation for the LLVM infrastructure. + +%package -n clang%{_sonum} +Summary: CLANG frontend for LLVM +Group: Development/Languages/C and C++ +URL: https://clang.llvm.org/ +Requires: libclang_rt%{_sonum} +Requires(post): update-alternatives +Requires(postun): update-alternatives +Recommends: clang-tools +Recommends: gcc +Recommends: glibc-devel +Recommends: libstdc++-devel +Suggests: clang%{_sonum}-doc +Suggests: libc++-devel + +%description -n clang%{_sonum} +This package contains the clang (C language) frontend for LLVM. + +%package -n libclang_rt%{_sonum} +Summary: Clang shared runtime libraries +Group: System/Libraries +URL: https://compiler-rt.llvm.org/ + +%description -n libclang_rt%{_sonum} +The runtime libraries needed to run programs compiled with the -shared-libsan +of Clang. Also known as compiler-rt. + +%package -n clang-tools +Summary: Tools for Clang +Group: Development/Languages/C and C++ +URL: https://clang-analyzer.llvm.org/ +# Can be used with older versions of Clang. +Requires: /usr/bin/clang +# Some binaries used to be in the clang package. +Conflicts: clang5 +Conflicts: clang6 +# hmaptool used to be contained in the llvm package. +Conflicts: llvm5 +Conflicts: llvm6 +%if %{suse_version} <= 1500 +# llvm9 in SLE/Leap 15.x is still affected. +Conflicts: llvm9 +%endif +Conflicts: scan-build < %{version} +Conflicts: scan-view < %{version} +Provides: scan-build = %{version} +Provides: scan-view = %{version} +Conflicts: emacs-llvm < %{version} +Provides: emacs-llvm = %{version} +Conflicts: vim-plugin-llvm < %{version} + +%description -n clang-tools +This package contains tools and scripts for using Clang, including: +* bash completions for clang, +* the clang-doc tool, +* plugins for using clang-format, clang-rename, clang-include-fixer + in vim and emacs. +* scripts for using clang-format: git-clang-format and clang-format-diff, +* scripts for using clang-tidy: run-clang-tidy and clang-tidy-diff, +* scripts for using the Clang static analyzer: scan-build and scan-view, +* a script for using find-all-symbols: run-find-all-symbols. + +%package %{multisource libclang%{_soclang}} libclang%{_soclang} +Summary: Clang stable C API for indexing and code completion +Group: System/Libraries +Provides: libclang%{_soclang} = %{version} +Conflicts: libclang%{_soclang} < %{version} + +%description %{multisource libclang%{_soclang}} libclang%{_soclang} +This library exposes a limited C API for indexing and code completion for +code written in languages of the C family. +It is designed to be stable across major versions of LLVM. + +It corresponds to the header files in %{_includedir}/clang-c. + +%package -n libclang-cpp%{_sonum} +Summary: Clang full C++ API +Group: System/Libraries + +%description -n libclang-cpp%{_sonum} +This library exposes the full C++ API to Clang that is used to implement +all Clang tools. It is not stable across major LLVM versions. + +It corresponds to the header files in %{_includedir}/clang. + +%package -n clang%{_sonum}-devel +Summary: CLANG frontend for LLVM (devel package) +Group: Development/Libraries/C and C++ +Requires: %{name}-devel = %{version} +Requires: clang%{_sonum} = %{version} +Requires: clang-tools >= %{version} +Requires: libclang%{_soclang} >= %{version} +Requires: libclang-cpp%{_sonum} = %{version} +Conflicts: cmake(Clang) + +%description -n clang%{_sonum}-devel +This package contains the clang (C language) frontend for LLVM. +(development files) + +%package -n clang%{_sonum}-doc +Summary: Documentation for Clang +Group: Documentation/HTML +Conflicts: clang-doc-provider < %{version} +# The docs used to be contained in the devel package. +Conflicts: clang5-devel +Conflicts: clang6-devel +Conflicts: clang7-devel +Conflicts: clang8-devel +Provides: clang-doc-provider = %{version} +BuildArch: noarch + +%description -n clang%{_sonum}-doc +This package contains documentation for the Clang compiler. + +%package -n libLTO%{_sonum} +Summary: Link-time optimizer for LLVM +Group: System/Libraries + +%description -n libLTO%{_sonum} +This package contains the link-time optimizer for LLVM. + +%package gold +Summary: LLVM LTO plugin for ld.bfd and ld.gold +Group: Development/Tools/Building +Conflicts: llvm-gold-provider < %{version} +Provides: llvm-gold-provider = %{version} +Supplements: packageand(clang%{_sonum}:binutils) +Supplements: packageand(clang%{_sonum}:binutils-gold) + +%description gold +This package contains a plugin for link-time optimization in binutils linkers. + +Despite the name, it can also be used with ld.bfd. It is required for using +Clang with -flto=full or -flto=thin when linking with one of those linkers. + +%package -n libomp%{_sonum}-devel +Summary: MPI plugin for LLVM +Group: Development/Libraries/C and C++ +# Used instead of libomp-devel-provider previously, now a metapackage. +Conflicts: libomp-devel < 18 +Conflicts: libomp-devel-provider < %{version} +Provides: libomp-devel-provider = %{version} + +%description -n libomp%{_sonum}-devel +This package contains the OpenMP MPI plugin for LLVM. + +%package %{multisource libcxx%{_socxx}} libc++%{_socxx} +Summary: C++ standard library implementation +Group: System/Libraries +URL: https://libcxx.llvm.org/ +Requires: libc++abi%{_socxx} = %{version} +Conflicts: libc++%{_socxx} < %{version} +Provides: libc++%{_socxx} = %{version} + +%description %{multisource libcxx%{_socxx}} libc++%{_socxx} +This package contains libc++, a new implementation of the C++ +standard library, targeting C++11. + +%package %{multisource libcxx_devel} libc++-devel +Summary: C++ standard library implementation (devel package) +Group: Development/Libraries/C and C++ +Requires: libc++%{_socxx} >= %{version} +Requires: libc++abi.so >= %{version} +Conflicts: libc++.so < %{version} +Provides: libc++.so = %{version} + +%description %{multisource libcxx_devel} libc++-devel +This package contains libc++, a new implementation of the C++ +standard library, targeting C++11. (development files) + +%package %{multisource libcxxabi%{_socxx}} libc++abi%{_socxx} +Summary: C++ standard library ABI +Group: System/Libraries +URL: https://libcxxabi.llvm.org/ +Conflicts: libc++abi%{_socxx} < %{version} +Provides: libc++abi%{_socxx} = %{version} + +%description %{multisource libcxxabi%{_socxx}} libc++abi%{_socxx} +This package contains the ABI for libc++, a new implementation +of the C++ standard library, targeting C++11. + +%package %{multisource libcxx_devel} libc++abi-devel +Summary: C++ standard library ABI (devel package) +Group: Development/Libraries/C and C++ +Requires: libc++abi%{_socxx} >= %{version} +Conflicts: libc++abi.so < %{version} +Provides: libc++abi.so = %{version} + +%description %{multisource libcxx_devel} libc++abi-devel +This package contains the ABI for libc++, a new implementation +of the C++ standard library, targeting C++11. +(development files) + +%package vim-plugins +Summary: Vim plugins for LLVM +Group: Productivity/Text/Editors +Supplements: packageand(llvm%{_sonum}:vim) +Conflicts: vim-plugin-llvm < %{version} +Provides: vim-plugin-llvm = %{version} +BuildArch: noarch + +%description vim-plugins +This package contains vim plugins for LLVM like syntax highlighting. + +%package -n python3-clang%{_sonum} +Summary: Python bindings for libclang +Group: Development/Libraries/Python +Requires: libclang%{_soclang} >= %{version} +%if %{suse_version} > 1500 +Conflicts: %{python_pkg_sitelib}/clang/ +Provides: %{python_pkg_sitelib}/clang/ +%else +Conflicts: %{python_pkg_sitearch}/clang/ +Provides: %{python_pkg_sitearch}/clang/ +%endif +BuildArch: noarch + +%description -n python3-clang%{_sonum} +This package contains the Python bindings to clang (C language) +frontend for LLVM. + +%package -n lld%{_sonum} +Summary: Linker for Clang/LLVM +Group: Development/Tools/Building +URL: https://lld.llvm.org/ +Requires(post): update-alternatives +Requires(postun): update-alternatives + +%description -n lld%{_sonum} +LLD is a linker from the LLVM project. That is a drop-in replacement for system linkers and runs much faster than them. It also provides features that are useful for toolchain developers. + +%package opt-viewer +Summary: Tools for visualising the LLVM optimization records +Group: Development/Languages/Other +Requires: %{python_pkg}-PyYAML +Requires: %{python_pkg}-Pygments +Conflicts: opt-viewer < %{version} +Provides: opt-viewer = %{version} +BuildArch: noarch + +%description opt-viewer +Set of tools for visualising the LLVM optimization records generated with -fsave-optimization-record. Used for compiler-assisted performance analysis. + +%if %{with lldb} +%package -n lldb%{_sonum} +Summary: Software debugger built using LLVM libraries +Group: Development/Tools/Debuggers +URL: https://lldb.llvm.org/ +BuildRequires: %{python_pkg}-devel +BuildRequires: pkgconfig +BuildRequires: pkgconfig(libedit) +BuildRequires: pkgconfig(libffi) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(ncurses) +BuildRequires: pkgconfig(panel) +BuildRequires: pkgconfig(zlib) +Requires(post): update-alternatives +Requires(postun): update-alternatives +Recommends: python3-lldb%{_sonum} + +%description -n lldb%{_sonum} +LLDB is a next generation, high-performance debugger. It is built as a set +of reusable components which highly leverage existing libraries in the +larger LLVM Project, such as the Clang expression parser and LLVM +disassembler. + +%package -n liblldb%{_sonum} +Summary: LLDB software debugger runtime library +Group: System/Libraries + +%description -n liblldb%{_sonum} +This subpackage contains the main LLDB component. + +%package -n lldb%{_sonum}-devel +Summary: Development files for LLDB +Group: Development/Libraries/C and C++ +Requires: clang%{_sonum}-devel = %{version} +Requires: liblldb%{_sonum} = %{version} +Requires: llvm%{_sonum}-devel = %{version} +Requires: pkgconfig(libedit) +Requires: pkgconfig(libxml-2.0) +Conflicts: lldb-devel-provider < %{version} +Provides: lldb-devel-provider = %{version} + +%description -n lldb%{_sonum}-devel +This package contains the development files for LLDB. + +%if %{with lldb_python} +%package -n python3-lldb%{_sonum} +Summary: Python bindings for liblldb +Group: Development/Libraries/Python +BuildRequires: swig >= 3.0.11 +Requires: liblldb%{_sonum} = %{version} +Conflicts: %{python_pkg_sitearch}/lldb/ +Provides: %{python_pkg_sitearch}/lldb/ + +%description -n python3-lldb%{_sonum} +This package contains the Python bindings for LLDB. It also contains +pretty printers for the C++ standard library. +%endif + +%endif + +%if %{with polly} +%package polly +Summary: LLVM Framework for High-Level Loop and Data-Locality Optimizations +Group: Development/Languages/Other +URL: https://polly.llvm.org/ +Conflicts: llvm-polly-provider < %{version} +Provides: llvm-polly-provider = %{version} + +%description polly +Polly is a high-level loop and data-locality optimizer and optimization +infrastructure for LLVM. It uses an abstract mathematical representation based +on integer polyhedra to analyze and optimize the memory access pattern of a +program. Polly can currently perform classical loop transformations, especially +tiling and loop fusion to improve data-locality. It can also exploit OpenMP +level parallelism and expose SIMDization opportunities. + +%package polly-devel +Summary: Development files for Polly +Group: Development/Libraries/C and C++ +Requires: llvm%{_sonum}-devel = %{version} +Requires: llvm%{_sonum}-polly = %{version} +Conflicts: llvm-polly-devel-provider < %{version} +Provides: llvm-polly-devel-provider = %{version} + +%description polly-devel +This package contains the development files for Polly. +%endif + +%prep +%setup -q -a 1 -a 2 -a 3 -a 4 -a 5 -a 6 -a 7 -a 8 -a 9 -a 10 -a 11 -a 12 -b 50 -b 51 -n llvm-%{_version}.src +%patch -P 0 -p2 +%patch -P 1 -p2 +%patch -P 13 -p1 +%patch -P 14 -p1 +%patch -P 16 -p2 +%patch -P 17 -p2 +%patch -P 20 -p1 +%patch -P 21 -p1 +%patch -P 24 -p1 +%patch -P 25 -p2 +%patch -P 28 -p2 + +pushd clang-%{_version}.src +%patch -P 2 -p1 +%patch -P 3 -p1 +%patch -P 4 -p1 +%patch -P 6 -p1 +%patch -P 9 -p2 +%patch -P 27 -p2 +%patch -P 29 -p2 +%patch -P 30 -p2 +%patch -P 31 -p2 + +# We hardcode openSUSE +rm unittests/Driver/DistroTest.cpp + +# We hardcode i586 +rm test/Driver/x86_features.c +rm test/Driver/nacl-direct.c +popd + +pushd clang-tools-extra-%{_version}.src +%patch -P 10 -p2 +popd + +pushd lld-%{_version}.src +# lld got a compile-time dependency on libunwind that we don't want. (https://reviews.llvm.org/D86805) +mkdir include/mach-o +cp %{SOURCE13} include/mach-o +popd + +%if %{with lldb} +pushd lldb-%{_version}.src +%patch -P 11 -p1 +popd +%endif + +sed -i '/set(LLVM_COMMON_CMAKE_UTILS/ s/CMAKE_CURRENT_SOURCE_DIR/CMAKE_SOURCE_DIR/g' {runtimes,compiler-rt}-%{_version}.src/CMakeLists.txt \ +%if %{with libcxx} + libcxx{,abi}-%{_version}.src/CMakeLists.txt +sed -i '\"runtimes/cmake/Modules" s/CMAKE_CURRENT_SOURCE_DIR/CMAKE_SOURCE_DIR/g' libcxx{,abi}-%{_version}.src/CMakeLists.txt +pushd libcxx-%{_version}.src +%patch -P 15 -p2 +rm test/libcxx/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp +rm test/std/localization/locale.categories/category.time/locale.time.get.byname/get_monthname.pass.cpp +rm test/std/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp + +# These tests often verify timing and can randomly fail if the system is under heavy load. It happens sometimes on our build machines. +rm -rf test/std/thread/ +popd +%endif + +# Move into right place +mv cmake-%{_version}.src ../cmake +mv clang-%{_version}.src tools/clang +mv compiler-rt-%{_version}.src projects/compiler-rt +mv clang-tools-extra-%{_version}.src tools/clang/tools/extra +%if %{with lld} +mv lld-%{_version}.src tools/lld +%endif +%if %{with polly} +mv polly-%{_version}.src tools/polly +%endif + +%if %{with lldb} +mv lldb-%{_version}.src tools/lldb +%endif + +%if %{with openmp} +mv openmp-%{_version}.src projects/openmp +%endif + +%if %{with libcxx} +mv libcxx-%{_version}.src projects/libcxx +mv libcxxabi-%{_version}.src projects/libcxxabi +%endif + +mv runtimes-%{_version}.src ../runtimes +mv third-party-%{_version}.src ../third-party + +%build +%global sourcedir %{_builddir}/%{buildsubdir} + +%define _lto_cflags %{nil} + +# Use optflags, but: +# 1) Remove the -D_FORTIFY_SOURCE=2 because llvm does not build correctly with +# hardening. The problem is in sanitizers from compiler-rt. +# 2) Remove the -g. We don't want it in stage1 and it will be added by cmake in +# the following stage. +%global cleaned_flags %(echo %{optflags} | sed 's/-D_FORTIFY_SOURCE=./-D_FORTIFY_SOURCE=0/;s/\\B-g\\b//g') + +%global flags %{cleaned_flags} +%ifarch armv6hl +%global flags %{cleaned_flags} -mfloat-abi=hard -mcpu=arm1176jzf-s -mfpu=vfpv2 +%endif +%ifarch armv7hl +%global flags %{cleaned_flags} -mfloat-abi=hard -march=armv7-a -mtune=cortex-a17 -mfpu=vfpv3-d16 +%endif + +CFLAGS="%flags" +CXXFLAGS="%flags" + +mem_per_compile_job=1200000 +%ifarch i586 ppc armv6hl armv7hl +# 32-bit arches need less memory than 64-bit arches. +mem_per_compile_job=700000 +%endif + +mem_per_link_job=3000000 +%ifarch riscv64 +# Give RISCV link jobs more memory. +mem_per_link_job=4000000 +%endif + +echo "Available memory:" +cat /proc/meminfo +echo "System limits:" +ulimit -a +avail_mem=$(awk '/MemAvailable/ { print $2 }' /proc/meminfo) +%set_jobs link $mem_per_link_job +%set_jobs compile $mem_per_compile_job + +%define __builder ninja +%define __builddir stage1 +%define build_ldflags -Wl,--no-keep-memory +%cmake \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_SHARED_LIBS:BOOL=OFF \ + -DLLVM_HOST_TRIPLE=%{host_triple} \ + -DLLVM_BUILD_LLVM_DYLIB:BOOL=OFF \ + -DLLVM_LINK_LLVM_DYLIB:BOOL=OFF \ + -DLLVM_PARALLEL_COMPILE_JOBS="$max_compile_jobs" \ + -DLLVM_PARALLEL_LINK_JOBS="$max_link_jobs" \ + -DENABLE_LINKER_BUILD_ID=ON \ + -DLLVM_BINUTILS_INCDIR=%{_includedir} \ + -DPython3_EXECUTABLE=%{_bindir}/%{python_bin} \ + -DLLVM_BUILD_TOOLS:BOOL=OFF \ + -DLLVM_BUILD_UTILS:BOOL=OFF \ + -DLLVM_BUILD_EXAMPLES:BOOL=OFF \ + -DLLVM_BUILD_RUNTIME:BOOL=OFF \ + -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD:BOOL=OFF \ + -DLLVM_INCLUDE_BENCHMARKS:BOOL=OFF \ + -DLLVM_INCLUDE_TESTS:BOOL=OFF \ + -DLLVM_TARGETS_TO_BUILD=Native \ + -DCLANG_ENABLE_ARCMT:BOOL=OFF \ + -DCLANG_ENABLE_STATIC_ANALYZER:BOOL=OFF +ninja -v %{?_smp_mflags} clang llvm-tblgen clang-tblgen \ +%if %{with thin_lto} + llvm-ar llvm-ranlib \ +%if %{with use_lld} + lld +%else + LLVMgold +%endif +%endif + +cd .. + +# Remove files that won't be needed anymore. +# This reduces the total amount of disk space used during build. (bnc#1074625) +find ./stage1 \( -name '*.o' -or -name '*.a' \) -delete + +# 3) Remove -fstack-clash-protection on architectures where it isn't supported. +# Using it just prints a warning, but that warning prevents the configuration +# step, which uses -Werror, from recognizing the availability of other flags. +if ! ./stage1/bin/clang -c -xc -Werror -fstack-clash-protection -o /dev/null /dev/null; +then + flags=$(echo %flags | sed 's/-fstack-clash-protection//'); +fi +# 4) Add -fno-plt: With -Wl,-z,now the PLT is basically dead code, so we can +# now go the direct route for quite frequent cross-DSO calls. This reduces +# branches in a typical execution by ~5 percent, instructions/cycles +# by ~4 percent, and reduces pressure on the instruction cache. We do this +# only on x86_64 where it doesn't increase the code size significantly. +%ifarch x86_64 +flags="$flags -fno-plt" +%endif + +CFLAGS=$flags +CXXFLAGS=$flags + +# Clang uses a bit less memory. +mem_per_compile_job=700000 +%ifarch %{arm} i586 ppc +# 32-bit arches need less memory than 64-bit arches. +mem_per_compile_job=500000 +%endif + +%set_jobs compile $mem_per_compile_job +%if %{with thin_lto} +# A single ThinLTO job is fully parallel already. +max_link_jobs=1 +%endif + +%define __builddir build +%if %{with thin_lto} && %{with use_lld} +%global lld_ldflag --ld-path=%{sourcedir}/stage1/bin/ld.lld +%ifarch %{arm} i586 ppc +%if %{jobs} > 8 +%global lto_limit_threads -Wl,--thinlto-jobs=8 +%endif +%endif +%endif +%define build_ldflags -Wl,--build-id=sha1 %{?lld_ldflag} %{?lto_limit_threads} +# The build occasionally uses tools linking against previously built +# libraries (mostly libLLVM.so), but we don't want to set RUNPATHs. +export LD_LIBRARY_PATH=%{sourcedir}/build/%{_lib} +%cmake \ + -DCMAKE_C_COMPILER="%{sourcedir}/stage1/bin/clang" \ + -DCMAKE_CXX_COMPILER="%{sourcedir}/stage1/bin/clang++" \ + -DBUILD_SHARED_LIBS:BOOL=OFF \ + -DLLVM_HOST_TRIPLE=%{host_triple} \ + -DLLVM_BUILD_LLVM_DYLIB:BOOL=ON \ + -DLLVM_LINK_LLVM_DYLIB:BOOL=ON \ + -DCLANG_LINK_CLANG_DYLIB:BOOL=ON \ + -DLLVM_PARALLEL_COMPILE_JOBS="$max_compile_jobs" \ + -DLLVM_PARALLEL_LINK_JOBS="$max_link_jobs" \ +%if %{with thin_lto} + -DLLVM_ENABLE_LTO=Thin \ + -DCMAKE_AR="%{sourcedir}/stage1/bin/llvm-ar" \ + -DCMAKE_RANLIB="%{sourcedir}/stage1/bin/llvm-ranlib" \ +%endif +%ifarch %arm ppc s390 %{ix86} + -DCMAKE_C_FLAGS_RELWITHDEBINFO="-O2 -g1 -DNDEBUG" \ + -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-O2 -g1 -DNDEBUG" \ +%endif + -DENABLE_LINKER_BUILD_ID=ON \ + -DLLVM_TABLEGEN="%{sourcedir}/stage1/bin/llvm-tblgen" \ + -DCLANG_TABLEGEN="%{sourcedir}/stage1/bin/clang-tblgen" \ + -DLLVM_ENABLE_RTTI:BOOL=ON \ + -DLLVM_ENABLE_PIC=ON \ + -DLLVM_BINUTILS_INCDIR=%{_includedir} \ + -DPython3_EXECUTABLE=%{_bindir}/%{python_bin} \ + -DLLVM_TARGETS_TO_BUILD=%{llvm_targets} \ + -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=%{llvm_experimental_targets} \ + -DLLVM_TOOL_LLVM_EXEGESIS_BUILD:BOOL=OFF \ + -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR:BOOL=OFF \ + -DLLVM_INCLUDE_BENCHMARKS:BOOL=OFF \ + -DCLANG_FORCE_MATCHING_LIBCLANG_SOVERSION:BOOL=OFF \ + -DCLANG_CONFIG_FILE_SYSTEM_DIR="%{_sysconfdir}/clang" \ + -DCLANG_CONFIG_FILE_USER_DIR="~/.config/clang" \ + -DCOMPILER_RT_USE_LIBCXX:BOOL=OFF \ + -DLIBCXX_INCLUDE_BENCHMARKS:BOOL=OFF \ +%if %{with libcxx} + -DLIBCXX_ENABLE_SHARED=YES \ + -DLIBCXX_ENABLE_STATIC=NO \ + -DLIBCXX_INSTALL_MODULES=ON \ + -DLIBCXXABI_ENABLE_SHARED=YES \ + -DLIBCXXABI_ENABLE_STATIC=NO \ + -DLIBCXXABI_USE_LLVM_UNWINDER:BOOL=OFF \ +%endif +%if "%{_lib}" == "lib64" + -DLLVM_LIBDIR_SUFFIX=64 \ +%endif +%if %{with ffi} + -DLLVM_ENABLE_FFI=ON \ +%endif +%if %{with oprofile} + -DLLVM_USE_OPROFILE=ON \ +%endif +%if %{without lldb_python} + -DLLDB_DISABLE_PYTHON=ON \ +%endif + -DLIBOMP_OMPD_GDB_SUPPORT:BOOL=OFF \ + -DCMAKE_SKIP_RPATH:BOOL=ON \ + -DLLVM_POLLY_LINK_INTO_TOOLS=OFF \ + -DPOLLY_BUNDLED_ISL:BOOL=ON + +# ThinLTO uses multiple threads from the linker process for optimizations, which +# causes an extremely high lock contention on allocations due to MALLOC_CHECK_, +# so we deactivate it for compilation. The tests will have it activated again. +%if %{with thin_lto} +MALLOC_CHECK_BACK=$MALLOC_CHECK_ +unset MALLOC_CHECK_ +%endif + +ninja -v %{?_smp_mflags} + +%if %{with thin_lto} +MALLOC_CHECK_=$MALLOC_CHECK_BACK +%endif + +cd .. + +%install +# Installation seems to build some files not contained in "all". +export LD_LIBRARY_PATH=%{sourcedir}/build/%{_lib} +%cmake_install + +# Install FileCheck needed for testing Rust boo#1192629 +install -m 0755 build/bin/FileCheck %{buildroot}%{_bindir}/FileCheck + +# Remove files that won't be needed anymore. +# This reduces the total amount of disk space used during build. (bnc#1074625) +find ./build \( -name '*.o' -or -name '*.a' \) -delete + +# Docs are prebuilt due to sphinx dependency +# +# tar xf cmake-%{_version}.src.tar.xz +# mv cmake-%{_version}.src cmake +# tar xf llvm-%{_version}.src.tar.xz +# pushd llvm-%{_version}.src/tools +# tar xf ../../clang-%{_version}.src.tar.xz +# mv clang-%{_version}.src clang +# cd .. +# ln -s ../../../build/tools/clang/docs/{Attribute,Diagnostics}Reference.rst tools/clang/docs +# mkdir build; cd build +# cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_SPHINX:BOOL=ON -DLLVM_BUILD_DOCS:BOOL=ON \ +# -DSPHINX_WARNINGS_AS_ERRORS:BOOL=OFF -DLLVM_INCLUDE_TESTS:BOOL=OFF -DLLVM_INCLUDE_BENCHMARKS:BOOL=OFF .. +# ninja gen-{Attribute,Diagnostics}Reference.rst +# ninja -j1 docs-{llvm,clang}-{html,man} +# popd +# tar --sort=name --owner=0 --group=0 --mtime="@${SOURCE_DATE_EPOCH}" \ +# --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime \ +# -cJf llvm-docs-%{_version}.src.tar.xz llvm-%{_version}.src/build/docs/{man,html} +# tar --sort=name --owner=0 --group=0 --mtime="@${SOURCE_DATE_EPOCH}" \ +# --pax-option=exthdr.name=%d/PaxHeaders/%f,delete=atime,delete=ctime \ +# -cJf clang-docs-%{_version}.src.tar.xz llvm-%{_version}.src/build/tools/clang/docs/{man,html} + +# Build man/html pages +pushd build/docs +rm -rf %{buildroot}%{_prefix}/docs +mkdir -p %{buildroot}%{_docdir}/llvm +mkdir -p %{buildroot}%{_mandir}/man1 +cp -r man/* %{buildroot}%{_mandir}/man1 +cp -r html/* %{buildroot}%{_docdir}/llvm +rm -r %{buildroot}%{_docdir}/llvm/_sources +popd + +pushd build/tools/clang/docs +mkdir -p %{buildroot}%{_docdir}/llvm-clang +cp -r man/* %{buildroot}%{_mandir}/man1 +cp -r html/* %{buildroot}%{_docdir}/llvm-clang +rm -r %{buildroot}%{_docdir}/llvm-clang/_sources +popd + +# install python bindings +install -d %{buildroot}%{python_pkg_sitelib}/clang +pushd tools/clang/bindings/python +cp clang/*.py %{buildroot}%{python_pkg_sitelib}/clang +# Make the bindings use the current so number, so that we don't need an unversioned libclang.so. +sed -i "s/file = 'libclang\.so'/file = 'libclang.so.%{_soclang}'/" %{buildroot}%{python_pkg_sitelib}/clang/cindex.py +install -d %{buildroot}%{_docdir}/python-clang/examples/cindex +cp -r examples %{buildroot}%{_docdir}/python-clang +install -d %{buildroot}%{_docdir}/python-clang/tests/cindex/INPUTS +cp -r tests %{buildroot}%{_docdir}/python-clang +popd + +# Scripts for clang use unversioned executables, so it doesn't make sense to +# have multiple versions of them. We package them only for the default version. +%if %{_plv} == %{_sonum} +mv %{buildroot}%{_datadir}/clang/clang-format-diff.py %{buildroot}%{_bindir}/clang-format-diff +mv %{buildroot}%{_datadir}/clang/clang-tidy-diff.py %{buildroot}%{_bindir}/clang-tidy-diff +mv %{buildroot}%{_datadir}/clang/run-find-all-symbols.py %{buildroot}%{_bindir}/run-find-all-symbols + +# Fix paths to internal binaries. +sed -i "s|COMPILER_WRAPPER_\([A-Z]*\) = 'intercept-\([^']*\)'|COMPILER_WRAPPER_\1 = '%{_libexecdir}/intercept-\2'|" \ + %{buildroot}%{_prefix}/lib/libscanbuild/intercept.py +%if "%{_libexecdir}" != "%{_prefix}/libexec" +LIBEXEC=%{_libexecdir} +RELATIVE_LIBEXEC=${LIBEXEC#%{_prefix}/} +sed -i "s|\$AbsRealBin/../libexec/\([^-]*\)-analyzer|\$AbsRealBin/../$RELATIVE_LIBEXEC/\1-analyzer|" \ + %{buildroot}%{_bindir}/scan-build +RELATIVE_LIBEXEC_COMMA=${RELATIVE_LIBEXEC//\//\', \'} +sed -i "s|os.path.join(scanbuild_dir, '..', 'libexec', 'analyze-\([^']*\)')|os.path.join(scanbuild_dir, '..', '$RELATIVE_LIBEXEC_COMMA', 'analyze-\1')|" \ + %{buildroot}%{_prefix}/lib/libscanbuild/analyze.py +%endif + +mkdir -p %{buildroot}%{_datadir}/bash-completion/completions +mv %{buildroot}%{_datadir}/clang/bash-autocomplete.sh %{buildroot}%{_datadir}/bash-completion/completions/clang + +# We don't care about applescript or sublime text +rm %{buildroot}%{_datadir}/clang/*.applescript +rm %{buildroot}%{_datadir}/clang/clang-format-sublime.py +%else +rm %{buildroot}%{_bindir}/{analyze,intercept}-build +rm %{buildroot}%{_bindir}/clang-doc +rm %{buildroot}%{_bindir}/git-clang-format +rm %{buildroot}%{_bindir}/hmaptool +rm %{buildroot}%{_bindir}/run-clang-tidy +rm %{buildroot}%{_bindir}/scan-{build,build-py,view} +rm -r %{buildroot}%{_prefix}/lib/lib{ear,scanbuild} +rm %{buildroot}%{_libexecdir}/{c++,ccc}-analyzer +rm %{buildroot}%{_libexecdir}/{analyze,intercept}-{cc,c++} +rm -r %{buildroot}%{_datadir}/{clang,clang-doc,scan-build,scan-view}/ +rm %{buildroot}%{_mandir}/man1/scan-build.1 +%endif + +# Note that bfd-plugins is in /usr/lib/bfd-plugins before binutils 2.33.1 +mkdir -p %{buildroot}%{_libdir}/bfd-plugins +ln -s %{_libdir}/LLVMgold.so %{buildroot}%{_libdir}/bfd-plugins/ + +install -m 755 -d %{buildroot}%{_datadir}/vim/site/ +for i in ftdetect ftplugin indent syntax; do + cp -r utils/vim/$i %{buildroot}%{_datadir}/vim/site/ +done +mv utils/vim/README utils/vim/README.vim + +install -d %{buildroot}%{python_pkg_sitelib} +mv %{buildroot}%{_datadir}/opt-viewer/opt-diff.py %{buildroot}%{_bindir}/opt-diff +mv %{buildroot}%{_datadir}/opt-viewer/opt-stats.py %{buildroot}%{_bindir}/opt-stats +mv %{buildroot}%{_datadir}/opt-viewer/opt-viewer.py %{buildroot}%{_bindir}/opt-viewer +mv %{buildroot}%{_datadir}/opt-viewer/optpmap.py %{buildroot}%{python_pkg_sitelib}/optpmap.py +mv %{buildroot}%{_datadir}/opt-viewer/optrecord.py %{buildroot}%{python_pkg_sitelib}/optrecord.py + +rm %{buildroot}%{_mandir}/man1/{,clang-,lldb-,mlir-}tblgen.1 +rm %{buildroot}%{_mandir}/man1/llvm-{exegesis,locstats}.1 + +%if %{with lldb_python} +# Python: fix binary libraries location. +%global cpython_pkg_soabi %(%{python_bin} -c "import sysconfig; print(sysconfig.get_config_var('SOABI'))") +rm %{buildroot}%{python_pkg_sitearch}/lldb/_lldb.%{cpython_pkg_soabi}.so +liblldb=$(basename $(readlink -e %{buildroot}%{_libdir}/liblldb.so)) +ln -vsf "../../../${liblldb}" %{buildroot}%{python3_sitearch}/lldb/_lldb.%{cpython_pkg_soabi}.so +%endif + +# Stuff we don't want to include +rm %{buildroot}%{_includedir}/mach-o/compact_unwind_encoding.h +rm %{buildroot}%{_mandir}/man1/lit.1 + +# These are only available as static libraries, which we don't ship. +rm -rf %{buildroot}%{_includedir}/{clang-tidy,lld} +rm -rf %{buildroot}%{_libdir}/cmake/lld/ + +%if %{with openmp} +rm %{buildroot}%{_libdir}/libgomp.so +rm %{buildroot}%{_libdir}/libiomp*.so +rm %{buildroot}%{_libdir}/libarcher_static.a +%endif + +# Prepare for update-alternatives usage +mkdir -p %{buildroot}%{_sysconfdir}/alternatives + +# For installing lld as ld alternative. +ln -s %{_sysconfdir}/alternatives/ld %{buildroot}%{_bindir}/ld + +# Fix the clang -> clang-X symlink to work with update-alternatives +mv %{buildroot}%{_bindir}/clang-%{_sonum} %{buildroot}%{_bindir}/clang + +# Rewrite symlinks to point to new location +for p in %{shrink:%binfiles} ; do + if [ -h "%{buildroot}%{_bindir}/$p" ] ; then + ln -f -s %{_bindir}/$(readlink %{buildroot}%{_bindir}/$p)-%{_sonum} %{buildroot}%{_bindir}/$p + fi +done +for p in %{shrink:%binfiles} ; do + mv %{buildroot}%{_bindir}/$p %{buildroot}%{_bindir}/$p-%{_sonum} + ln -s -f %{_sysconfdir}/alternatives/$p %{buildroot}%{_bindir}/$p +done +for p in %{shrink:%manfiles} ; do + mv %{buildroot}%{_mandir}/man1/$p.1 %{buildroot}%{_mandir}/man1/$p-%{_sonum}.1 + ln -s -f %{_sysconfdir}/alternatives/$p.1%{ext_man} %{buildroot}%{_mandir}/man1/$p.1%{ext_man} +done + +# Also rewrite the CMake files referring to the binaries. +sed -i "$( + for p in %{shrink:%binfiles}; do + echo "s|\"\${_IMPORT_PREFIX}/bin/$p\"|\"\${_IMPORT_PREFIX}/bin/$p-%{_sonum}\"|g" + done +)" %{buildroot}%{_libdir}/cmake/{llvm/LLVMExports,clang/ClangTargets}-relwithdebinfo.cmake + +# For libclang, have the CMake export list refer to the library via soname. +# The original library might not be available. (We might have a newer version.) +sed -i "s|\"\${_IMPORT_PREFIX}/%{_lib}/libclang.so.%{_version}\"|\"\${_IMPORT_PREFIX}/%{_lib}/libclang.so.%{_soclang}\"|g" \ + %{buildroot}%{_libdir}/cmake/clang/ClangTargets-relwithdebinfo.cmake + +# rpm macro for version checking +mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d/ +cat > %{buildroot}%{_rpmconfigdir}/macros.d/macros.llvm <6f5 z`%ZJKfraG&osuw(8=HawecaTvNH|-+d7pNqO7wXv1L&Z!cuU$$Yx%)XVb^@^L*+nT`xGFpb8UIcp_mcl2&P?0q@3+OYXlkbIOuf6x}%6V({ zYoFDIo@<4TSy`)?hf(yRd2yKq$rZy_-ZQ$UL=MM;qAy=36Mt62KTv%=A&89yX?x}< zXdkiGsPy-qW{EEdq4!uyw*})lD+)zGqj!~oqJnAZznd2Q)ZvD9JVz7N0uq8ynk}R5 zJh*-SbKH0~W9f@UR9PR)tIZ+jIN;{5gn5*rga)wrI>OISO5S3 literal 0 HcmV?d00001 diff --git a/openmp-19.1.4.src.tar.xz b/openmp-19.1.4.src.tar.xz new file mode 100644 index 0000000..d5d3914 --- /dev/null +++ b/openmp-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88359996537b0fe7191869f7a1ec8b5a0e7e284294c09202965efcce1e571ccb +size 1089816 diff --git a/openmp-19.1.4.src.tar.xz.sig b/openmp-19.1.4.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..3250c4e495601ba1a48a2f033951e8605882e10fd35334e62c9610d4e4c02296 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@?V<bGTA_dy>tbvDcd z>PWeDlYv*enZ^(TTEg1^#=B_}2KTrD(q!G|#vf9ZvZ+4oHMLw$kHuecqd1`LOHXe% zzPU4Na^Mj0A0WF)mwa3ei+`ztXva|+Q*-=t#{jb|bf?n&MaGfVmov??plw?+?LHfo0NUAVM3nUw$ zy>Da>AL{;8MZ&n--nS8Mttumm<*S@0FhBue)uk?g-8DuCTG20?G}fV+Fj0PTj%RyU zz75tbF?6RQ^wdY=dD!^X62lwRK~NROA=6>~(+ru;{}~CWsnplxQuZXDr=I8T(^15K za7y5VC=1{>w?4gBP!^`5vH3`mZA3gE*HYR1>}C{*2y%SGP<`Ib9NtZaKwr1-gbBU| zrR={7_41E9gSWgh!}M0FY+;!~gr9}=}6rRRMwn>4Z>Pap?Y)+ g#&A&~`2wh-)xg=taHO3Q&AVsl^eKsu`Lv3!0W4J6>;M1& literal 0 HcmV?d00001 diff --git a/openmp-19.1.6.src.tar.xz b/openmp-19.1.6.src.tar.xz new file mode 100644 index 0000000..0239d6a --- /dev/null +++ b/openmp-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:549294ef37e2c9ec8317258b539e56f25d479ed811e2db846017e028b69f8da6 +size 1089848 diff --git a/openmp-19.1.6.src.tar.xz.sig b/openmp-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..343390f7e7867b20708295850482be1f8ea4cef158172b101322c9801227c586 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@K9x`&F$_<{!xu)zcI%ewe8WAJFcGKoovQ%?^Vr5y2__R^<|Ka@!>c zd2S!y9LL%0f@xXO-Vw}BVl59Ja7R9CZ zAK|fj#I5XEb>+Cz)ToKXk32v~5@S*>xY7n70n9k`35?f~F)4JQjVjNU#P&qnr{Of> guP>Y2h04t`H=uV*MC9Xa0^BIE8{Bwg|G|64RlA=Bc~nk#|~p`PFGlrLvFwhYv2l!({vOXf1K=*B36)ix$KzAlb) z{q@M`j*G2+UJ}Zz$rl5(gqc0pj^m)rMB{9d!Rb14ArjmzJMGlW!7}=Cz8I%Zexbu> zj4ic}hw2t-k8z?GztCis@Ds(t-UT#BIm~!D`uau+ z-X>d4G-Aksntx`dS5#1A*$PkmVDR_N+LdH_HGu9|{V^E~nHJ~sw(^e7pPyc_c(9B{ zDI_Z3sjESOCke_J-A@ZR8|)iDOU$8wj^ki#RNXd4!-U9V+@}7-(XEpfYQyzl9QaQt zDlf|pfUPhFEV4~$r)!|Wb0&+%H%!;oQUCw| literal 0 HcmV?d00001 diff --git a/polly-19.1.4.src.tar.xz b/polly-19.1.4.src.tar.xz new file mode 100644 index 0000000..b0ee7f4 --- /dev/null +++ b/polly-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d09eda4f511994b0be77c47bcdfd30ed0e463f731368720e5b58c9fcffab2fe8 +size 9162016 diff --git a/polly-19.1.4.src.tar.xz.sig b/polly-19.1.4.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..a3840539ac9516738006f458ba7b1f4476a7c30e792c165b589e55e82c6c5918 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@L%Vy+{xpgn)LvO`ooyO)@{L@7^MUxZx%P*C7pSWJovwgsK zDn7EO&1BTKD0Sq*{d&@*K)+QlltmfdxrJNzBFoDo)6>-NEFa(_`foQVhGJ}yrvJ6Q z+qE+M>LR!RqR^eUiZu+#*YI4Y9nFp0Ll=}^&xJ^M;VX8&&lG;9sSJF*p2Z!;FA^^q zC-ob1_oTM{aQdB_?0iH=Lq#ERfBrwPV&KX@sF|N8w$x_Ybq+=B3^8oeXW^N^o1PL) z7Ilf>KTfx8`_rlF$nmoyl3CP^hu+^f2xoJtWcbV zezwn%Xv|O^(X=AL6{Dkszv>0McymxGwb|a9s^7&!K;xNy&N7vY`ajkcSDH1ZYXWkx g7r8$qwJz|y`2$@dMdKa=3ah`;v1pf_c@eY+)hP?9_z4fM2D(&^gVGY}@&4H?$V{hTg)UI7!SGrTYD-2Xwvl z*VIVPL$HwGu7!3=MO5R&%s$k~+g3p)*xdBdNW9r+9{^zad`^2=9uB&vOuods0y}#U zVMrAYY!wEz(1RcTAXz3Ty1lPx# literal 0 HcmV?d00001 diff --git a/polly-19.1.6.src.tar.xz b/polly-19.1.6.src.tar.xz new file mode 100644 index 0000000..4d7cdf0 --- /dev/null +++ b/polly-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9b5796eaf95fcc3694d292c93585349b5063c7550da038a9ad23ae735eb8543 +size 9163036 diff --git a/polly-19.1.6.src.tar.xz.sig b/polly-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..1abf5273d90c0d82db9ae723084e1391ec9de97ac2e594cd2a4b5e015b6442d4 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@-5Jd7w zUPaZALMm7b{TWpZ%Ar34#ZTY(tkk$8CE9tsgg2N1yMym8E}U)s!iM*%8CgpYuW9VO zpl#0jQ;Ac~*G>NOu))Qkjr)VbnS$AJFL&US7~)#*@rj;s{JCb1N20x45n}2Wm(-f17i+iQ45_YWa zZ^pS#@L~;JZ^^fld=^)oxlUUuI!A*{2u{+m%#<6|tyi!?8-mbtQ15{KUtw^I-f&^8 zu4+tTs`=g!z4GXa7s9;4K-JiNWo6oM4Wo}0c!b1A+`DSoFwQOf6E-P0M^^92Id<*7 zkh+@)hV5;zH@3l9dAq(f0;PhJMm=YFN#po1vG5feGHVGHP^#O`t7Zt_zB^DQ)xs)^kLXVcy%2e0sftv?)Nu5Jd7w zUPaZALd>oV0JshPe^5~YW3CaAY$tq0F09dV(C^=M=muQVL0zJ^b1vW0tcF#sb;(U1-kSMXMy8ds1XnD=P`$kH&djx@%X-+s|m zo4wZ9u~qElrGbcm^{T{8i62TqD{$K!8g$_>Z$TEM!cS*8=JNEoSLG4t{ZzZUyi!4R5XeO;1EnRR)_nx`X&OMRuEk z&fDdpzz7skx|6(oXwW82y4#zQa(pZ{43#Tp>6bveMYEyLn9JFvn^>r9)`cP5K6#94 zt2{DKxwTJu;>7<_Uq}HRSm|HVuTgd82<3R!#oeaS=zrykZCx#sW~R{_5Q4B7RxMWO z3&_e)iv_=dG^-`lgT-W{sGDb4^!z@Xe+VS5uaOfZUS%%{1I@;NP#h5`JFV$xmuyn8 gSf^n$!OGw7LWE{Z@@{z3Ifimb{pWR;(}Pa>csefEq5uE@ literal 0 HcmV?d00001 diff --git a/runtimes-19.1.4.src.tar.xz b/runtimes-19.1.4.src.tar.xz new file mode 100644 index 0000000..7f1673f --- /dev/null +++ b/runtimes-19.1.4.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16778f7cd3b1bb05ac9cf47ba9df20caf663eb076849ebf4a34fd6d8c2ac2352 +size 7224 diff --git a/runtimes-19.1.4.src.tar.xz.sig b/runtimes-19.1.4.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..4fa2ee69e0aac73b57302f6d6d20352f53b0a58cca491614ec12c5d4ffa6a48e GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@5kiN#*rSMM(yyQJ+Y=6TRJ)ohT&-MsT$?(lI2I; zJDtQbOF0ywYwrAmQ%|?IW|p;o{;g;`oW`T?)3}vlf?#9Wh_4S; zq~HkumT)KCUd^A(m(kkvVU?e_=8UV%-Y~h7&rrv%R#z#l7Q6dLclIRxA{0X>K;z4} zd)gss{6orKeZikz$9!~5eR@5vIctX z7vx~>5?RU%TJwoQ;X?X1^*C`xt#SV~xlB(p+=!;^!dT6 zRW!A-Y3Rc{H@pb9abIoE0(vZ(H581@Ly)u8>+3=BD#e#X6vK?1FbeXfLIq|CX$V9W zEOzKB02T4qr@cC54NBqJ(SR9*fX?|ZnW2J&wAspEju=)c8H$qCCrcNJ)vb_hzwBbc zR?8uqf1oVU)unFT@7I)FGj)7}-LzeYNWNl%MsA6#XM1p%067+g?Ul#>$?+7ke>p}$ gP?z{$?d`?6?%muC37b*Upb8i7fR&DCbV5fSC8e+0TL1t6 literal 0 HcmV?d00001 diff --git a/runtimes-19.1.6.src.tar.xz b/runtimes-19.1.6.src.tar.xz new file mode 100644 index 0000000..c1b15df --- /dev/null +++ b/runtimes-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a242d2aeaafbc259901d0f5b962874ed8e6ff0b51993036e08ae5d28be2f6e68 +size 7228 diff --git a/runtimes-19.1.6.src.tar.xz.sig b/runtimes-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..5ff482450a53b8aac51bf6a729bc9b6f88e3e55711ee3adcd93aa5d79a46a842 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@-5Jd7w zUPaZALhoh^{So2xJ1i_cBH1Z7_u(IjE{_vBHiY*8lKC|5?RB<;?Buq05ESs1jF?(j z+w<+yr0x^o%|gjDv|@;HG&ZJ3Kjodr$kuhd!+Ta)ps3svmrZRn<-#Ppn!i_bUxXyn zp#B6tPYdXlgbE<&$|F=A6?nB;%9&)LE0BB#cHd%fSgA?3Iel4`eBvy;^`_}mF_fno=B2Hjk0em$ z_inMr{WfCK0oD;SD%@K75*mlKUtqd#I9^P`8xj8tv2f3+b-2=84dSl3_2Gl}J=vM$ z-NR$4G*E(k1c|X>-S7~VHXByHf9qDwZvip( gy-eLp`AssD;+DU!D>>R}VUMWBy<2CxO-!)p->}iyrT_o{ literal 0 HcmV?d00001 diff --git a/tests-use-python3.patch b/tests-use-python3.patch new file mode 100644 index 0000000..fbfe610 --- /dev/null +++ b/tests-use-python3.patch @@ -0,0 +1,30 @@ +Index: llvm-8.0.0rc3.src/test/BugPoint/compile-custom.ll.py +=================================================================== +--- llvm-8.0.0rc3.src.orig/test/BugPoint/compile-custom.ll.py ++++ llvm-8.0.0rc3.src/test/BugPoint/compile-custom.ll.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/python3 + + from __future__ import print_function + +Index: llvm-8.0.0rc3.src/test/Other/opt-bisect-helper.py +=================================================================== +--- llvm-8.0.0rc3.src.orig/test/Other/opt-bisect-helper.py ++++ llvm-8.0.0rc3.src/test/Other/opt-bisect-helper.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/python3 + + from __future__ import print_function + +Index: llvm-8.0.0rc3.src/test/TableGen/JSON-check.py +=================================================================== +--- llvm-8.0.0rc3.src.orig/test/TableGen/JSON-check.py ++++ llvm-8.0.0rc3.src/test/TableGen/JSON-check.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/python3 + + import sys + import subprocess diff --git a/third-party-19.1.3.src.tar.xz b/third-party-19.1.3.src.tar.xz new file mode 100644 index 0000000..f827de4 --- /dev/null +++ b/third-party-19.1.3.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec13c6c3466dc88e7b29b47347e2b88337d5b83c778d92e3c4c3acd17d3cc534 +size 454740 diff --git a/third-party-19.1.3.src.tar.xz.sig b/third-party-19.1.3.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..26121c27b97d0371febbb6d685abf15d481674ec4c7499d68ddc064b7ec85f76 GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@!~<22hQxzXh^{~>(e}^pL3I2vR#`x zNJapTDbsY`5~*hEmJcpxbJ7~WMR!znZn7mnOo0a}R(7Rv)^r9=3^&4ekWW%oJ zgOQPCP(?O=(WxycFa-dzD){p+vL+y?WY%82en5STJT!u8vpy);B_9RE^neqZt8;1& zAimevHoa{!clY>Rrf}s z7D0)BP`O1nm&Yu&`%{(BS=QV(jL=Q*t_+j~-w9%D4TXK@Jaw-vfC1W~3Q(dYR z=ipO(&ib*~1`1oJqd?!>VjkUhwTr0@vgJ4XcWl!WZH1t#z`^QYbmQA-HN7=8Y!K?f`t>;TQk5b&k@7HVQqbVFQVa!R1Aj_H!l~saw1+e3@GE1W^Y>7 zkqD~s8KDtk+=fME{QzTg&Y9VH-Qr0ssI2 literal 0 HcmV?d00001 diff --git a/third-party-19.1.5.src.tar.xz b/third-party-19.1.5.src.tar.xz new file mode 100644 index 0000000..7a97f57 --- /dev/null +++ b/third-party-19.1.5.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22b352c35b034a4ab3f2b852b6a2602a4da8971abe459080450d9e3462550d1d +size 454624 diff --git a/third-party-19.1.5.src.tar.xz.sig b/third-party-19.1.5.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..50ba6599a1e927fd6554dc861d1c84473c9b0e06128ff53aeb9356bf65b8181b GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@O5Jd7w zUPaZALMTKF|3I^%Ry)xS&RVvr47d!}%zwDPQTeGex*E40odHO=i?=cipOw%Fj=oRN z58UdxRr-jWMGnE=%78fA7E_%2EFc#g1L#SiSJ}B7NM)zDj!dBaHxe6AfQ6X0Nq+Q{ z$F9-Yj~nxW!anH`>)k!p^>WPMfLYe}3Ts7ZS88Vk(f=c*K#AP`V;Z)&l6V;e5|hoB znKkb*^fsQ)g@*`4&_O*waFIeD34tuLOGBr@pR&KS%?tg_0-(alTlVavxGj2#zCFtT#9t%s2&1E%F~g+oM=u8Fi@D;m-53QrJNpgy#~wbq<7|YkLeFvZI|e5914) z_EPe@NB6q#iM@oj<6EHh=LU|rEc0;R1mb!+Y1F|6$dn8FnYfKc1)D`Ys2s4f(CnoE gj01bYVnc)ac)p*mNCaW4jlNLtjXJs9%W;W0h|en6_y7O^ literal 0 HcmV?d00001 diff --git a/third-party-19.1.6.src.tar.xz b/third-party-19.1.6.src.tar.xz new file mode 100644 index 0000000..3262783 --- /dev/null +++ b/third-party-19.1.6.src.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e8048333bab2ba3607910e5d074259f08dccf00615778d03a2a55416718eb45 +size 454808 diff --git a/third-party-19.1.6.src.tar.xz.sig b/third-party-19.1.6.src.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..6bf9dc66c933e40817d17cf470732f132a9e47260921f0f466c2daadb00fde1b GIT binary patch literal 438 zcmV;n0ZIOe0kZ@E0SEvc79j-HbiG|24w#8vJNW=a@UFO^L12k_YK z#AZ#$C9F2llGTI9s4iz1z?-`_BU{WKmbH>fjLGLO6_~jpi%bM6>g;h|b<1+O>ibIZ z%2vi)7z5UM&b9S15VvWYX`VF~j5mD%e^!|RqwMY$4fdu2~kl}QsHzqs&MwEou9KA zn$U?rji$s6glzFJW<=c*q!8DD4{uEPB*7lmo$icGrP25}_CW}lvG7_I^j)|I#_5vM gJNV!-HI?hv%OV$Acjt~6RqNI3taI2RC!%Sg)tg7zKmY&$ literal 0 HcmV?d00001