Nikita Popov
110c51ea41
Patch back in Python 3.6 support on RHEL 8
2024-07-19 13:18:14 +00:00
Nikita Popov
a0cb14e0da
Fix py_byte_compile invocation
2024-07-18 13:32:25 +00:00
Nikita Popov
a3e4502e5e
Set LLVM_RAM_PER_COMPILE_JOB on RHEL 8
...
RHEL 8 uses gcc instead of clang as the host compiler, which
uses more memory.
2024-07-18 13:32:25 +00:00
Nikita Popov
fc1c88bf3d
Use Python3_EXECUTABLE instead of PYTHON_EXECUTABLE
...
Also drop the unnecessary python version variables.
If there are multiple python versions installed, the wrong one may be
picked. PYTHON_EXECUTABLE tries to avoid that problem, but the correct
way to spell this nowadays is Python3_EXECUTABLE.
2024-07-18 13:32:25 +00:00
Nikita Popov
c956fce064
Undefine __cmake_in_source_build on RHEL 8
...
So we get the same behavior as in newer versions.
2024-07-18 13:32:25 +00:00
Nikita Popov
1dd985a086
Disable marshalparser on RHEL 8
2024-07-18 13:32:25 +00:00
Nikita Popov
e4775c8385
Run check-clang-tools
...
These were lost during the big-merge migration, because they
have their own check target.
I locally confirmed that the XFAIL for i686 is still needed.
2024-07-18 10:48:26 +00:00
Nikita Popov
7b4c34d259
Filter out omp_collapse tests on ppc64le, s390x and i686
...
These tests also fail on i686: https://download.copr.fedorainfracloud.org/results/@fedora-llvm-team/llvm-snapshots-big-merge-20240717/fedora-39-i386/07740274-llvm/builder-live.log.gz
And yesterday they failed on ppc64le: https://download.copr.fedorainfracloud.org/results/@fedora-llvm-team/llvm-snapshots-big-merge-20240717/fedora-39-ppc64le/07740275-llvm/builder-live.log.gz
While the day before they succeeded on ppc64le.
As such, ignore them instead of marking them as xfail.
2024-07-18 08:55:42 +00:00
Konrad Kleine
d2c0d36f9e
Remove conditions that tried to support LLVM 18 in big-merge
2024-07-18 08:53:43 +00:00
Konrad Kleine
ba8389be78
Remove not needed condition in version.spec.inc
2024-07-18 08:53:43 +00:00
Nikita Popov
d271547ac2
Don't use wildcard for lld binaries
...
Otherwise we'll also ship lldb. Instead explicitly list lld and
lld-link.
2024-07-17 14:24:59 +02:00
Nikita Popov
0d402a179a
Don't xfail omp_collapse tests on ppc64le
...
The tests pass: https://download.copr.fedorainfracloud.org/results/@fedora-llvm-team/llvm-snapshots-big-merge-20240716/fedora-rawhide-ppc64le/07737001-llvm/builder-live.log.gz
The tests do fail on s390x. Note that the thread_state_{1,2}.c tests
are already part of the ppc64le exclusive xfail list above, so
we can make this one specific to s390x.
2024-07-16 12:04:40 +02:00
Nikita Popov
4be1491f26
Actually disable lldb tests
...
Make sure to use %% for macros inside comments.
2024-07-16 09:52:51 +02:00
Nikita Popov
d3496ff556
Fix copr check
...
Per https://docs.pagure.org/copr.copr/user_documentation.html#rpm-macros
the `%copr_username` macro includes `@` at the start.
2024-07-15 09:13:31 +02:00
Konrad Kleine
626da9456a
Prepare non-snapshot builds
...
Remove version.spec.inc from git
================================
We no longer track `version.spec.inc` in git. This is useful for
development. If we build a snapshot, the file is required but if we
build a `release` build (see below), then we don't include it.
Make improvements
=================
We distinguish between `snapshot-` and `release-` builds now in the
`Makefile`. These old targets are mapped to their new counterparts and a
deprecation warning is shown:
* `setup` -> `snapshot-setup`
* `local-rpm` -> `snapshot-rpm`
* `local-srpm` -> `snapshot-srpm`
* `local-prep` -> `snapshot-prep`
* `local-clean` -> `snapshot-clean`
We also have these new Make targets that run the build process with a
release tarball instead:
* `release-setup`
* `release-rpm`
* `release-srpm`
* `release-prep`
* `release-clean`
The targets `local-list-check` and `local-tmt-vm` have been commented
out because I think they were not needed. I just kept them for future
reference of research done in those areas.
All builds described by the `Makefile` are still local and no `mock` is
involved. I find this the easiest to debug.
Toggle default bcond state for snapshot_build
=============================================
We want to be able to build non-snapshot releases with this repo. That's
why be default the build condition `snapshot_build` is off. So
only when you explicitly enable `--with=snapshot_build` or define
`--define "_with_snapshot_build 1"` you'll be able to build a snapshot.
If however the build happens in Copr with a namespace that begins with
`fedora-llvm-team/llvm-snapshots-`, then the build condition is ON by
default and there's no need to enable it explicitly with `--with=snapshot_build`.
Things related to release update
================================
* Add llvm-project tarball and signature to sources
* Fix: error: source 1001 defined multiple times
* Fix: error: source 1006 defined multiple times
* Fix missing newline
* Conditionally apply 0001-Always-build-shared-libs-for-LLD.patch
* Only enable offload runtime in snapshot mode
Misc.
=====
* Add missing prep dependency
2024-07-11 18:47:43 +00:00
Konrad Kleine
6c6af36acb
lldb: Fail to configure if certain requirements are not met for testing
2024-07-11 11:37:05 +00:00
Konrad Kleine
d6b3a2dab8
lldb: disable tests for lldb
2024-07-11 11:36:42 +00:00
Konrad Kleine
323ee2723e
lldb: fix ModuleNotFoundError: No module named 'pexpect'
...
We've seen a lot of tests that were missing the pexpect python module
and that resulted in a state of
[`UNRESOLVED`](https://llvm.org/docs/CommandGuide/lit.html ).
2024-07-10 12:52:49 +00:00
Konrad Kleine
b79ab4f3cc
Remove timestamp prefix in log lines
...
With the llvm-build-stats we have what we wanted.
2024-07-09 19:04:48 +00:00
Konrad Kleine
5ce95c133e
lld: move ldconfig_scriptlets into llvm.spec
2024-07-09 18:55:12 +00:00
Konrad Kleine
b167b820db
lldb: add BuildRequires: procps-ng
...
This is to mitigate `/bin/sh: line 1: ps: command not found` in the
build logs.
2024-07-09 18:55:12 +00:00
Konrad Kleine
c00f9f2e11
Reorganize %check section
2024-07-09 18:55:12 +00:00
Nikita Popov
78289e831d
Remove compact_unwind_encoding.h patch
...
This is no longer necessary now that we're building from the monorepo.
2024-07-09 17:37:28 +02:00
Nikita Popov
1c8a88c870
Fix python3-clang
...
Drop confusing `cd ..` so we stay in the root of the LLVM sources
and the install command succeeds.
2024-07-08 14:15:52 +02:00
Nikita Popov
4a3b0b3b90
Only ship libclang* in clang-libs
...
Previously we were also shipping libLLVM* and libLLD*.
2024-07-08 11:19:40 +02:00
Tulio Magno Quites Machado Filho
9070ddbbbb
Add subpackage llvm-toolset
...
Related: RHEL-45729
2024-07-03 09:28:39 -03:00
Konrad Kleine
26fc541eba
Merge #234 DRAFT: Add lldb to big-merge
2024-07-03 11:06:19 +00:00
Nikita Popov
3f1eb51952
Only put libLLVM*.a into llvm-static
...
Currently we also accidentally ship libomptarget.devicertl.a.
2024-07-03 11:30:09 +02:00
Konrad Kleine
802e5ea8aa
Add another flaky lldb test to exclude list
...
This test seems flaky:
lldb-api :: functionalities/fork/concurrent_vfork/TestConcurrentVFork.py
2024-07-03 07:48:20 +00:00
Konrad Kleine
ff2779276f
Makefile fixes
...
We can prefetch the sources using spectool as usual.
2024-07-03 07:47:36 +00:00
Konrad Kleine
393325cce1
Include liblldb*.so in %files
...
See
https://src.fedoraproject.org/rpms/llvm/pull-request/234#comment-206914
2024-07-02 21:29:41 +00:00
Konrad Kleine
86fec774e2
Move all BuildRequires: tags to llvm.spec
...
See
https://src.fedoraproject.org/rpms/llvm/pull-request/234#comment-206917
2024-07-02 21:29:41 +00:00
Konrad Kleine
459476a447
Remove %ldconfig_scriptlets and remove liblldb*.a files
2024-07-02 21:29:41 +00:00
Konrad Kleine
edb4034ecd
Don't clean after building the RPM
2024-07-02 21:29:41 +00:00
Konrad Kleine
5b13ad894f
Filter out flaky, unresolved and broken lldb test
2024-07-02 16:45:48 +02:00
Konrad Kleine
9cf03a4db7
Avoid building lldb docs
...
This should fix this error:
```
Jul 01 12:48:27 FAILED: tools/lldb/docs/CMakeFiles/docs-lldb-html
/home/fedora/src/llvm-rpms/llvm-big-merge/BUILD/llvm-project-e19ac0dcfd7357161210f157ed0559836e88155f/llvm/redhat-linux-build/tools/lldb/docs/CMakeFiles/docs-lldb-html
Jul 01 12:48:27 cd
/home/fedora/src/llvm-rpms/llvm-big-merge/BUILD/llvm-project-e19ac0dcfd7357161210f157ed0559836e88155f/llvm/redhat-linux-build/tools/lldb/docs
&& /usr/bin/cmake -E env
LLDB_SWIG_MODULE=/home/fedora/src/llvm-rpms/llvm-big-merge/BUILD/llvm-project-e19ac0dcfd7357161210f157ed0559836e88155f/llvm/redhat-linux-build/tools/lldb/docs
/usr/bin/sphinx-build-3 -b html -d
/home/fedora/src/llvm-rpms/llvm-big-merge/BUILD/llvm-project-e19ac0dcfd7357161210f157ed0559836e88155f/llvm/redhat-linux-build/tools/lldb/docs/_doctrees-lldb-html
-q -t builder-html -D version=19 -D release=mainline
/home/fedora/src/llvm-rpms/llvm-big-merge/BUILD/llvm-project-e19ac0dcfd7357161210f157ed0559836e88155f/lldb/docs
/home/fedora/src/llvm-rpms/llvm-big-merge/BUILD/llvm-project-e19ac0dcfd7357161210f157ed0559836e88155f/llvm/redhat-linux-build/tools/lldb/docs/html
Jul 01 12:48:27
Jul 01 12:48:27 Extension error:
Jul 01 12:48:27 Could not import extension sphinx_automodapi.automodapi
(exception: No module named 'sphinx_automodapi')
Jul 01 12:48:27 install sphinx_automodapi with /usr/bin/python3 -m pip
install sphinx_automodapi
Jul 01 12:48:27 install sphinx furo theme with /usr/bin/python3 -m pip
install furo
```
the two python modules are not in fedroa unfortunately.
2024-07-02 16:45:48 +02:00
Konrad Kleine
f7fcef719f
Add lldb to big-merge
...
See https://github.com/fedora-llvm-team/llvm-snapshots/issues/573
2024-07-02 16:45:48 +02:00
Konrad Kleine
65f59d5e89
Add lldb.spec from which we integrate
2024-07-02 16:45:48 +02:00
Konrad Kleine
0b4a620d6d
Fix lit filtering
...
I forgot to add the 'g' modifier to sed. Before only the first occurence
of a '.' was replaced in a path and not every dot.
2024-07-02 16:41:53 +02:00
Konrad Kleine
d8e9deb6da
Remove HTML asset files from /usr/share/clang-doc
...
In https://github.com/fedora-llvm-team/llvm-snapshots/issues/564#issuecomment-2191023635
we noticed that `clang-doc-default-stylesheet.css` and `index.js` are no
longer installed to `/usr/share/clang` but `/usr/share/clang-doc`
instead. This addresses the [change in upstream](https://github.com/llvm/llvm-project/pull/96555 ).
2024-06-26 09:43:38 +02:00
Tom Stellard
f6b64e7c77
Add directory ownership for libomp cmake dir
2024-06-25 10:37:36 +00:00
Konrad Kleine
a34b2a7947
Format all files with 'pre-commit run -a'
2024-06-25 12:22:22 +02:00
Konrad Kleine
93536f47fa
Add pre-commit
2024-06-25 12:14:21 +02:00
Tom Stellard
8e21cf96b0
Build libclang-cpp.so separately to avoid OOM errors
...
We were running out of memory linking this on the ppc64le COPR builders.
2024-06-10 12:56:45 +00:00
Nikita Popov
91bcaea8e2
Rebase LLD patch
2024-06-05 08:47:13 +02:00
Nikita Popov
c5be72cd34
Ship .ninja_log in llvm-build-stats package
...
This should make it easier to analyze which parts of the build
are slow. The new package is only available in snapshot builds,
we don't want to ship it in production.
2024-05-31 16:41:44 +02:00
Nikita Popov
c1ee2896c0
Remove 32-bit arm related conditionals
...
32-bit ARM hasn't been supported for quite a while, remove the
related conditions. This has already happened for the non-big-merge
branches.
2024-05-30 10:23:13 +02:00
Nikita Popov
13cd3ecc2e
Add new reduce-chunk-list binary
...
Added in https://github.com/llvm/llvm-project/pull/89470 .
2024-05-29 11:24:03 +02:00
Nikita Popov
3e8f8bf09f
Exclude hwasan_symbolize on i686
2024-05-28 16:01:28 +02:00
Nikita Popov
4f3c9f6743
Add i686 -> i386 compiler-rt symlink
...
This ports the change from https://src.fedoraproject.org/rpms/compiler-rt/pull-request/67
to big-merge, which is a bit more complicated here due to the
explicit file lists.
By default compiler_rt_triple is the same as llvm_triple. For x86
it is i386-redhat-linux-gnu instead, with a symlink to the
llvm_triple i686-redhat-linux-gnu.
And then the file list also needs to ship that symlink.
2024-05-28 15:57:25 +02:00