Skip to content

Add LLVM 20 package, stream LLVM 18 and 19 as mono sources. #52810

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 43 commits into
base: main
Choose a base branch
from

Conversation

javacruft
Copy link
Member

@javacruft javacruft commented May 8, 2025

Rename llvm package to llvm-19 and twiddle provides and package names to support version stream approach.

Add llvm-20 package based on llvm-19.

Add llvm-18 package based on llvm-19 and drop other packages that build the same binaries separately.

Drop provides for libunwind and lld packages for older LLVM versions; nice idea but its not worked out well.

Withdraw older llvm packages to remove these provides from the Wolfi archive.

@octo-sts octo-sts bot added the bincapz/pass bincapz/pass Bincapz (aka. malcontent) scan didn't detect any CRITICALs on the scanned packages. label May 8, 2025
@javacruft javacruft self-assigned this May 8, 2025
javacruft added 5 commits May 12, 2025 09:11
Drop provides on LLVM subpackages for older versions; this approach
has not been successful; withdrawm older llvm package versions to keep
the archive tidy.

Use generated major version where possible to ease introduction of
new LLVM releases.
@javacruft javacruft added the staging-build If this label is set on a PR, it will be built by elastic-build in staging label May 15, 2025
javacruft added 2 commits May 15, 2025 16:03
Drop individual LLVM 18 based packages and update LLVM 18 to align
to 19 and 20 package versions.
@javacruft
Copy link
Member Author

javacruft commented May 20, 2025

Versionless clang test rebuild in wolfi:

✅ bpftool
✅ bzip3
✅ chromium
✅ deno
✅ falco-no-driver
✅ gn
✅ libbpf
✅ libmamba
✅ linkerd2
✅ linkerd2-proxy
✅ llvm-libcxx-15
✅ llvm-libcxx-16
✅ llvm-libcxx-17
✅ llvm-libunwind-15
✅ llvm-libunwind-16
✅ llvm-libunwind-17
✅ neon
✅ oath-toolkit
✅ opencv
✅ pax-utils
✅ postgis-17
✅ rpm-sequoia
✅ rust-bindgen
✅ svt-av1
✅ xcover
✅ ztunnel-1.26

Failed due to mismatched clang version with postgresql-dev:

❌ pgaudit-17
❌ pg-failover-slots-16
❌ pgvector-16
❌ pgvector-17

Fixed under #53842 in preparation for merging this PR

@javacruft javacruft added staging-build If this label is set on a PR, it will be built by elastic-build in staging and removed staging-build If this label is set on a PR, it will be built by elastic-build in staging labels May 21, 2025
@javacruft javacruft changed the title Add LLVM 20 package Add LLVM 20 package, stream LLVM 18 and 19 as mono sources. May 29, 2025
@javacruft javacruft marked this pull request as ready for review May 29, 2025 07:49
@javacruft javacruft requested a review from a team as a code owner May 29, 2025 07:49
@javacruft javacruft requested a review from EyeCantCU May 29, 2025 07:50
Copy link
Member

@EyeCantCU EyeCantCU left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Amazing work! Thank you for bringing up LLVM 20! I just have a few comments

javacruft added 2 commits May 30, 2025 16:35
Drop unversioned streamed provides; this allows co-installability
between LLVM versions, with just the most recent providing versionless
provides packages.
@javacruft javacruft requested a review from EyeCantCU May 31, 2025 13:00
@javacruft
Copy link
Member Author

@EyeCantCU I believe I've address all of your feedback - thanks for the review!

@EyeCantCU EyeCantCU enabled auto-merge (squash) May 31, 2025 14:01
@EyeCantCU
Copy link
Member

Just needs one final +1 from OS :)

@javacruft
Copy link
Member Author

javacruft commented May 31, 2025 via email

@javacruft javacruft requested a review from sil2100 May 31, 2025 14:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ai/skip-comment Stop AI from commenting on PR bincapz/pass bincapz/pass Bincapz (aka. malcontent) scan didn't detect any CRITICALs on the scanned packages. staging-build If this label is set on a PR, it will be built by elastic-build in staging
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants