Commit graph

574 commits

Author SHA1 Message Date
Tulio Magno Quites Machado Filho
43a62dabf0 Fix rhbz #2248872
Ensure the versioned llvm-config alternative gets removed during major
upgrades of the non-compat package.

Also add code that removes the versioned llvm-config alternatives of
the previous 3 LLVM versions. These versions didn't remove their own
versioned llvm-config alternative, leading to broken output, e.g.
llvm-config-16 points to llvm-config-64 from LLVM 17.
2023-11-30 13:43:29 -03:00
Tulio Magno Quites Machado Filho
dae42895a5 Update to LLVM 17.0.6 2023-11-28 16:01:06 -03:00
Tulio Magno Quites Machado Filho
ceb6b17869 Revert "[packit] 17.0.5 upstream release"
This reverts commit fe235bbf25.
It was pushed by mistake.
2023-11-24 14:14:14 -03:00
Tulio Magno Quites Machado Filho
fe235bbf25 [packit] 17.0.5 upstream release
Upstream tag: llvmorg-17.0.5
Upstream commit: 98bfdac5
2023-11-24 14:10:14 -03:00
Nikita Popov
4be4b92cb1 Remove 32-bit arm handling 2023-11-24 09:12:29 +00:00
Nikita Popov
ec966be7c4 Remove redundant _lto_cflags define
ThinLTO is the default nowadays.
2023-11-24 09:12:29 +00:00
Tulio Magno Quites Machado Filho
5e17ea6380 Update to LLVM 17.0.5 2023-11-14 15:49:46 -03:00
Tulio Magno Quites Machado Filho
4689129188 Update to LLVM 17.0.4 2023-10-31 18:00:16 -03:00
Yaakov Selkowitz
1b6d3f3740 Fix ld.so.conf.d path
This location is hard-coded by glibc and is not prefix-variable.  This
fixes flatpak app RPM builds of clang15 and packages dependent thereon
(e.g. openshadinglanguage).  Flatpaks using these packages will still
need to define LD_LIBRARY_PATH.
2023-10-19 09:13:26 -03:00
Tulio Magno Quites Machado Filho
5197c0ae27 Update to LLVM 17.0.3 2023-10-17 14:42:39 -03:00
Tulio Magno Quites Machado Filho
83e53f80ee Update to LLVM 17.0.2 2023-10-03 18:15:50 -03:00
Tulio Magno Quites Machado Filho
1e5009d192 Update to LLVM 17.0.1 2023-09-22 15:40:38 -03:00
Nikita Popov
d71a6d614a Unset LLVM_VERSION_SUFFIX for compat builds as well
This is needed if the compat build is produced for an rc version,
which I'm currently trying to do to fix snapshot builds.

I don't see a reason why this bit should be omitted for snapshot
builds.
2023-09-14 15:04:17 +02:00
Nikita Popov
2b59cd5563 Re-enable ppc64 gold test
https://bugzilla.redhat.com/show_bug.cgi?id=2234396 has been fixed.
2023-09-14 07:50:09 +02:00
Tulio Magno Quites Machado Filho
d007916e9b Update to LLVM 17.0.0 RC4 2023-09-09 09:08:09 -03:00
Tulio Magno Quites Machado Filho
de70be4496 Update to LLVM 17.0.0 RC3 2023-08-24 07:26:59 -03:00
Tulio Magno Quites Machado Filho
bf19c70bc0 Temporarily disable a failing test on ppc64le
ld.gold is crashing with an internal error.
Disable this test temporarily while the issue is being investigated and
fixed.
2023-08-24 06:42:02 -03:00
Tulio Magno Quites Machado Filho
b7b35dbbdc Update to LLVM 17.0.0 RC2 2023-08-23 07:30:44 -03:00
Tulio Magno Quites Machado Filho
c7a62f31ea Disable LTO on i686
We're reaching a memory limit while linking libLLVM.so .
2023-08-17 15:18:16 -03:00
Tulio Magno Quites Machado Filho
15eacb3329 Apply rhel-specific patch on snapshot builds
Despite not testing on snapshot builds on RHEL, it's a good practice to
have the code ready for that.
2023-08-16 13:55:23 -03:00
Tulio Magno Quites Machado Filho
cb1bdb3739 Re-add patch removed by mistake
Fixes: d5b39fd081 ("Update to LLVM 17.0.0 RC1")
2023-08-14 18:40:54 -03:00
Tulio Magno Quites Machado Filho
2ec945401e Enable LLVM_UNREACHABLE_OPTIMIZE temporarily
This has been causing issues when building clang.  Enable it temporarily
until the root cause is found and fixed.
2023-08-09 11:54:46 -03:00
Tulio Magno Quites Machado Filho
d5b39fd081 Update to LLVM 17.0.0 RC1
This is also a squashed merge commit from upstream-snapshot (commit ID
340b9e8ea3) into rawhide whose most important commits from
upstream-snapshot are:

Konrad Kleine (50):
      Prepare for snapshot build
      Fix RPM build errors: File not found: /builddir/build/BUILDROOT/llvm-14.0.0~pre20211103.g1febf42f03f664-1.fc34.x86_64/usr/lib64/libLLVM-14.so
      Added back patch file
      Rebased with new patches from rawhide that weren't yet in the streamline branch
      Fix RPM build errors: File not found: /builddir/build/BUILDROOT/llvm-14.0.0~pre20211103.g1febf42f03f664-1.fc34.x86_64/usr/lib64/libLLVM-14.so
      Disable LTO for anything older than Fedora 34
      Use llvm_snapshot_version_suffix
      Remove patch for https://reviews.llvm.org/D108332 which is already upstream
      Only package cmake-devel when building a snapshot package and when NOT building in compat mode
      Fix RPM build
      Fix Macro expanded in comment on line 586: %{_libdir}/libLLVM-%{maj_ver}
      Fix rpm build warning/error: absolute symlink
      Default to DWARF4
      Merge remote-tracking branch 'upstream/rawhide' into upstream-snapshot
      Rebased patched on pagure/streamline
      Merge remote-tracking branch 'upstream/rawhide' into upstream-snapshot
      Added 0004-PATCH-clang-Revert-cmake-Don-t-install-plugins-used-.patch
      Revert "Added 0004-PATCH-clang-Revert-cmake-Don-t-install-plugins-used-.patch"
      Workaround linker error: memory exhausted
      Merge remote-tracking branch 'upstream/rawhide' into upstream-snapshot
      Added pgo_instrumented_build cmake args
      Fix /usr/bin/ld: cannot find /usr/lib64/clang/13.0.0/lib/linux/libclang_rt.profile-x86_64.a: No such file or directory
      Move bcond in cmake down in case we want to override stuff
      Make llvm use the llvm-snapshot-builder as well
      Use %{llvm_snapshot_extra_source_tags} macro
      Merge remote-tracking branch 'upstream/rawhide' into upstream-snapshot
      Merge remote-tracking branch 'upstream/rawhide' into upstream-snapshot
      Patch renewal from rebased llvm-project pagure/streamline branch
      Try to lock llvm* and clang* packages so that we don't install LLVM from a previous copr build
      Revert "Try to lock llvm* and clang* packages so that we don't install LLVM from a previous copr build"
      Rebase onto pagure/main
      Merge remote-tracking branch 'upstream/rawhide' into upstream-snapshot
      use llvm+cmake tarballs instead of big llvm-project and close unclosed %if
      Fixup: clang->cmake
      Move globals down for them to be expanded correctly
      Fix merge issue with patch
      Test without some patches
      Compiles and installs again
      Adapt to standalone third-party dir
      bring back files to llvm-googletest package
      fixing path to unittest
      Manually add https://reviews.llvm.org/D137890
      Add missing patch files
      Apply patchfiles independently for llvm and third-party dir
      List third-party gmock/gtest files in install
      Merge remote-tracking branch 'origin/rawhide' into upstream-snapshot
      Re-enable patches for gtest
      Disable LTO to speed up builds
      Added libLLVMTestingAnnotations.a to googletest subpackage
      Merge remote-tracking branch 'origin/rawhide' into upstream-snapshot

Nikita Popov (1):
      Sync with rawhide

Tom Stellard (13):
      Add patch to fix some lit test failures
      Revert "Add patch to fix some lit test failures"
      Add a patch from main branch to fix some lit tests
      Revert "Add a patch from main branch to fix some lit tests"
      Remove patch applied upstream
      Remove another upstreamed patch
      Add llvm-googletest dependency to llvm-devel
      Add JITLink patch to fix clang failures on aarch64 with libgcc-13
      Revert "Add JITLink patch to fix clang failures on aarch64 with libgcc-13"
      Fix a test failure on s390x
      Revert "Fix a test failure on s390x"
      copr: Install llvm-snapshot-builder from the local COPR project
      Sync with rawhide

sergesanspaille (1):
      Rebase downstream patches
2023-08-09 11:54:07 -03:00
Nikita Popov
5e22fb4ab6 Don't drop LDFLAGS for shared libraries
From the corresponding c9s fix:
b758d604f4
2023-08-08 16:51:16 +02:00
Tulio Magno Quites Machado Filho
d180d56a78 Remove pkg_bindir and pkg_libdir
Replace them witn install_bindir and install_libdir respectively.
2023-08-03 19:30:40 +00:00
Tulio Magno Quites Machado Filho
b5d6c1ccf0 Simplify a few %files entries
This is also deduplicating a small list of %files entries by replacing
the variable used to build their path.
2023-08-03 19:30:40 +00:00
Nikita Popov
2abc096557 Use build_cflags when setting ASMFLAGS
While the current implementation works on Fedora, on c9s/rhel
the CFLAGS haven't been set at this point yet, so we are missing
the -fcfprotection flag in ASMFLAGS. Using build_cflags avoids
this ordering problem.

Additionally, add -Wl,-z,cet-report=error to the libLLVM.so linker
flags, so we can detect such issues earlier in the future.
2023-08-03 19:29:38 +00:00
Tulio Magno Quites Machado Filho
dd44fc12ea Fix rhbz #2224885 2023-07-31 17:19:01 -03:00
Fedora Release Engineering
f9f0fb07de Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-20 12:55:16 +00:00
Tulio Magno Quites Machado Filho
f9133b98bb Bump the release version 2023-07-10 18:38:50 -03:00
Nikita Popov
bdb4929ebd Use LLVM_UNITTEST_LINK_FLAGS to reduce link times for unit tests
We currently spend a lot of time performing LTO on unit tests,
which is largely wasted effort. We can't disable LTO entirely,
because we don't have fat objects, but at least we can disable
post-link optimization.

For my local build, this reduces time in %build by about 30%.
2023-07-07 07:20:18 +00:00
Tulio Magno Quites Machado Filho
cd99de7d35 Improve clang assembler error messages on s390x (rhbz#2216906)
Backport a patch from LLVM 17 that improves error messages from the
Clang assembler on s390x.

Also, disable LLVM_UNREACHABLE_OPTIMIZE in order to improve error
messages when llvm_unreachable() is called. There are many cases where
llvm_unreachable() is used as a error reporting function instead of the
recommended replacement for assert().

Fixes rhbz#2216906.
2023-07-03 15:09:05 -03:00
Tulio Magno Quites Machado Filho
61b03e8d59 Update to LLVM 16.0.6 2023-06-15 07:41:00 -03:00
Nikita Popov
236eac9d27 Split off llvm-cmake-utils package 2023-06-15 08:58:02 +02:00
Tulio Magno Quites Machado Filho
ba5f101283 Update to LLVM 16.0.5 2023-06-05 14:26:35 -03:00
Yaakov Selkowitz
bcf7ece4a8 Avoid recommonmark dependency in RHEL builds
python-recommonmark and its dependencies are unwanted in RHEL.
2023-05-22 11:57:51 -04:00
Tulio Magno Quites Machado Filho
85d29458f2 Update to LLVM 16.0.4 2023-05-18 21:54:20 -03:00
Tulio Magno Quites Machado Filho
f98e61f997 Update to LLVM 16.0.3 2023-05-09 17:54:23 -03:00
Tulio Magno Quites Machado Filho
193ba1355d Update to LLVM 16.0.2 2023-04-25 17:19:37 -03:00
Nikita Popov
96037cf8ba Remove unused sources 2023-04-14 17:22:13 +02:00
Tulio Magno Quites Machado Filho
072d2198fb Update to LLVM 16.0.1 2023-04-12 17:39:44 +00:00
Jan200101
f51436a734
Stop installing gtest on compat builds 2023-04-12 14:13:53 +02:00
Tulio Magno Quites Machado Filho
a4982d84f3 Stop distributing /usr/share/llvm/src/utils 2023-03-24 09:07:18 -03:00
Tulio Magno Quites Machado Filho
a13a3551eb Distribute libllvm_gtest.a and libllvm_gtest_main.a with llvm-googletest 2023-03-24 09:04:53 -03:00
Tulio Magno Quites Machado Filho
0cd1abca26 Update to LLVM 16.0.0 2023-03-20 17:04:41 -03:00
Tulio Magno Quites Machado Filho
2f72d026a3 Fix the ppc64le triple 2023-03-16 22:07:43 -03:00
Tulio Magno Quites Machado Filho
cc36c0869b Update to LLVM 16.0.0 RC4 2023-03-15 08:41:45 -03:00
Tulio Magno Quites Machado Filho
55d7730bb8 Fix llvm-exegesis failures on s390x 2023-03-15 08:41:45 -03:00
Tulio Magno Quites Machado Filho
3c4fee7794 Update to LLVM 16.0.0 RC3 2023-03-15 08:41:35 -03:00
Tulio Magno Quites Machado Filho
a2100f44b7 Update to LLVM 16.0.0 RC1 2023-02-10 11:58:04 -03:00
Tulio Magno Quites Machado Filho
034719a43e Add the third-party source code 2023-02-01 18:49:54 -03:00
Konrad Kleine
3aef850832 Added libLLVMTestingAnnotations.a to googletest subpackage
See 3432f4bf86
2023-02-01 18:49:54 -03:00
Konrad Kleine
c2901f71cb List third-party gmock/gtest files in install 2023-02-01 18:48:11 -03:00
Konrad Kleine
87fcbdde75 Manually add https://reviews.llvm.org/D137890 2023-02-01 18:48:11 -03:00
Konrad Kleine
9812a7f1ae bring back files to llvm-googletest package 2023-02-01 18:48:11 -03:00
Konrad Kleine
c31ffc7ed1 Adapt to standalone third-party dir 2023-02-01 18:48:11 -03:00
Tulio Magno Quites Machado Filho
b173c6109a Adopt SPDX identifiers in license
Also make it clear that Apache 2.0 with LLVM exceptions was adopted in
2019.
2023-01-19 16:45:58 -03:00
Fedora Release Engineering
c92743ab8a Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 18:09:55 +00:00
Nikita Popov
a20957b5eb Update to LLVM 15.0.7 2023-01-12 10:31:52 +01:00
Tom Stellard
f543860321 Omit frame pointers when building 2023-01-09 20:33:24 +00:00
Nikita Popov
1862c052da Remove workaround for rbhz#2048440
It looks like this test passes now.
2022-12-19 16:35:33 +01:00
Timm Bäder
1d9fedd416 Enable LTO builds on s390x again
The PCRE limit problem has been fixed in redhat-rpm-config in
25ea080503
2022-12-05 17:07:40 +01:00
Nikita Popov
2fa672b23f Update to LLVM 15.0.6 2022-12-05 08:56:31 +01:00
Jan200101
920a8b1b56 Install cmake modules for compat builds 2022-11-15 09:40:45 +00:00
Nikita Popov
8e1f53d786 Copy CFLAGS to ASMFLAGs to enable CET in asm files 2022-11-11 10:23:47 +01:00
Nikita Popov
3c595192e2 Update to LLVM 15.0.4 2022-11-03 12:56:08 +01:00
Nikita Popov
0c4aa4a13c Remove abi_revision handling
We now longer ship rcs outside of copr, so this is no needed anymore.
2022-09-29 10:47:28 +00:00
Nikita Popov
6c4af9abec Drop GetHostTriple export again
This doesn't work by itself due to the config.guess dependency,
and I'm not longer sure this is the right approach. The runtimes
build should really be getting this from the exported
LLVM_HOST_TRIPLE variable.
2022-09-29 10:20:54 +02:00
Nikita Popov
aec99db3ed Export GetHostTriple.cmake 2022-09-27 12:57:56 +02:00
Nikita Popov
5f0a6388b3 Fix compat build symlinks
Backport from llvm14 package.
2022-09-13 18:04:18 +02:00
Nikita Popov
81e2995efc Update to LLVM 15.0.0 2022-09-06 10:01:30 +02:00
Fedora Release Engineering
07f677a874 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-21 19:44:43 +00:00
Miro Hrončok
dc7156ce5a Don't add -P to Python shebangs
Opt-out from https://fedoraproject.org/wiki/Changes/PythonSafePath

The executable Python scripts in /usr/share/opt-viewer/ import each other.
2022-07-19 12:49:30 +02:00
Timm Bäder
2e920ed4cb Release bump for new redhat-rpm-config 2022-06-17 08:38:20 +02:00
Timm Bäder
af1b169c7b 14.0.5 release 2022-06-13 16:13:21 +02:00
Tom Stellard
4e05585009 14.0.3 Release 2022-05-19 15:21:52 +00:00
Timm Bäder
0600540ab9 Remove llvm-cmake-devel package 2022-04-29 08:09:30 +02:00
Timm Bäder
33f597aab6 Remove some unused variables 2022-04-27 12:04:55 +02:00
Timm Bäder
314c08660d Update to 14.0.0 2022-03-29 07:32:31 +00:00
sergesanspaille
1b6a55b39a More verbose test output 2022-02-17 08:07:56 +01:00
Nikita Popov
35d886f8dc Update to LLVM 13.0.1 final 2022-02-02 16:35:08 +01:00
Nikita Popov
0ff4ac26b1 Switch to an unconditionally applied patch
It looks like conditionally applying a patch on a single arch is
a bit tricky, so instead use an unconditional patch with an
ifndef __aarch64__ block.
2022-01-31 11:57:41 +01:00
Nikita Popov
ddad73a88a Revert "Set _package_note_linker on arm"
This reverts commit 6cee6aebe6.

This issue has now been addressed more generically on the
package-notes side by:
d26d18e6f4
2022-01-31 11:09:53 +01:00
Nikita Popov
410f5f1e9e Disable CrashRecoveryTest.DumpStackCleanup test on aarch64
It produces a non-reproducible failure on aarch64:
https://bugzilla.redhat.com/show_bug.cgi?id=2048440
2022-01-31 11:00:54 +01:00
Konrad Kleine
5d9e2b66ed Fix rpm build warning/error: absolute symlink
I noticed that warnings and errors show up in the `RPM build errors:`
output. When I produced an error I did see this warning about absolute
symlink showing up:

```
absolute symlink: /usr/lib64/bfd-plugins/LLVMgold.so -> /usr/lib64/LLVMgold.so
```

The upstream RPM fix to log warnings and errors separately is here:

https://github.com/rpm-software-management/rpm/pull/1590

Thanks to @sergesanspaille for the help.
2022-01-28 21:04:29 +00:00
Nikita Popov
6cee6aebe6 Set _package_note_linker on arm
On ARM, the default linker is lld when using the clange toolchain,
so specify that as the _package_note_linker. This will use the
-T rather than -dT option for the package note script.

Ideally this would be handled in a more central location.
2022-01-25 16:35:13 +01:00
Nikita Popov
3c9de0ccf8 Update to LLVM 13.0.1rc3 2022-01-25 14:56:25 +01:00
Fedora Release Engineering
445e24e13d - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 17:57:39 +00:00
Nikita Popov
097fdf9c79 Remove no longer necessary patch
This patch has been integrated in the rc2 release.
2022-01-13 04:16:17 -05:00
Nikita Popov
cfd5d23c9d Update to LLVM 13.0.1rc2 2022-01-13 04:08:32 -05:00
Nikita Popov
ab84d46730 Backport 46c947af7 reproducibility fix 2022-01-11 04:07:54 -05:00
Nikita Popov
49fba6acf2 Disable LTO build on s390x
Fails with pcre limit error otherwise
2022-01-10 15:41:41 -05:00
Nikita Popov
236248c006 Upstream 13.0.1 rc1 release 2022-01-10 08:23:04 -05:00
Miro Hrončok
3ba9f5e445 Rebuilt for https://fedoraproject.org/wiki/Changes/LIBFFI34 2022-01-08 20:32:26 +01:00
Tom Stellard
1bdf054407 Enable lto on s390x and arm 2021-11-19 11:22:09 +00:00
Konrad Kleine
92512bd38e Added link to docs about 'toolchain' macro 2021-11-09 14:56:37 +01:00
Timm Bäder
3ac3f3b803 Add a few rpmlint exceptions 2021-11-03 14:12:06 +00:00
Tom Stellard
dd5bd14efc Build with Thin LTO
Full LTO is too memory intensive for most architectures, so use Thin LTO
instead.
2021-10-26 03:57:15 +00:00
Tom Stellard
6b3a1ab316 Build with clang 2021-10-21 23:32:02 +00:00
Tom Stellard
e1056b533a Fix default triple on arm
clang and gcc disagree about what gnueabi means, so we need to make
sure to specify gnueabihf as the environment.
2021-10-08 03:25:22 +00:00