Skip to content
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

bump(libllvm): 16.0.6 to 17.0.2 #17751

Merged
merged 1 commit into from
Oct 6, 2023
Merged

Conversation

finagolfin
Copy link
Member

Once this passes CI, download these candidate packages from the CI and test them out for yourself in preparation for the upcoming LLVM 17 release.

@finagolfin
Copy link
Member Author

finagolfin commented Sep 4, 2023

Downloaded and ran the AArch build from the CI with the following commands, no problem:

unzip ~/storage/downloads/debs-aarch64-82d065063eda3363d5f2ac7c193d9cac0d08606c.zip
tar xf debs-aarch64-82d065063eda3363d5f2ac7c193d9cac0d08606c.tar
apt remove libllvm
dpkg -i debs/*.deb
apt install swift
ln -sf ../clang/17 $PREFIX/lib/swift/clang
git clone https://github.com/apple/swift-crypto.git
cd swift-crypto
swift test

Let me know if you have any issues with any of these LLVM 17 builds, I will keep updating these RC tags until the release.

@landfillbaby landfillbaby changed the title bump(libllvm): 16.0.6 to 17.0.0 RC3 bump(libllvm): 16.0.6 to 17.0.0 RC4 Sep 6, 2023
@finagolfin
Copy link
Member Author

RC4 builds now up on CI.

@landfillbaby landfillbaby changed the title bump(libllvm): 16.0.6 to 17.0.0 RC4 bump(libllvm): 16.0.6 to 17.0.1 Sep 19, 2023
@finagolfin
Copy link
Member Author

finagolfin commented Sep 19, 2023

I still need to update the libraries in the llvm-config.in script, so don't merge.

@finagolfin finagolfin closed this Sep 19, 2023
@finagolfin
Copy link
Member Author

Damn mobile keyboard.

@finagolfin finagolfin reopened this Sep 19, 2023
@finagolfin
Copy link
Member Author

@xJonathanLEI or @truboxl, merging this will break the rust package, any one going to get that updated next? I will be updating the Swift package in the next couple days.

@xJonathanLEI
Copy link
Contributor

IIUC the rust package is maintained by @xtkoba?

@finagolfin
Copy link
Member Author

He has left the Termux org and does not contribute any more: his last commit was two and a half months ago.

@xJonathanLEI
Copy link
Contributor

Ah that's said to know. I only ever made two small patches to the rust package but I can take a stab at it.

@xJonathanLEI
Copy link
Contributor

Have been wondering how come we're still on 1.70.0 lol.

@finagolfin
Copy link
Member Author

Great, if you are building locally, I suggest applying this pull, downloading these deb files from the CI and putting them in .termux-build/_cache-aarch64/, then updating the rust package.

@xJonathanLEI
Copy link
Contributor

Sorry if this is obvious. Can I just checkout to this PR, build libllvm, then test the rust package by ./build-package.sh -I rust?

@finagolfin
Copy link
Member Author

Sure, that works too, just trying to save you time and disk space by downloading the CI-built packages. 😃

@truboxl
Copy link
Contributor

truboxl commented Sep 19, 2023

Rust need 1.73.0 to work with LLVM 17
rust-lang/rust#114048

Can make an exception to use latest git for Rust I think since I don't see it releasing until October...
https://releases.rs/docs/1.73.0/

@finagolfin
Copy link
Member Author

Can that upstream pull simply be applied to the latest rust release instead?

@truboxl
Copy link
Contributor

truboxl commented Sep 22, 2023

Sure. I can bump Rust to 1.72.1 first to unblock #17868 then work on Rust 1.72.1 + LLVM 17 patch...

@finagolfin
Copy link
Member Author

Alright, this pull is ready, just giving everyone time to work on bumping dependent packages like rust and swift, which I'm working on updating to 5.9, before merging.

@finagolfin
Copy link
Member Author

17.0.2 is out, Swift 5.9 is ready to go. Once rust 1.73.0 is released this week and @truboxl says it is ready to go, I will merge this, then we can get those dependent package updates in.

@finagolfin finagolfin changed the title bump(libllvm): 16.0.6 to 17.0.1 bump(libllvm): 16.0.6 to 17.0.2 Oct 3, 2023
@finagolfin finagolfin force-pushed the llvm-17 branch 2 times, most recently from 6276c1c to abf23bc Compare October 4, 2023 15:58
@finagolfin
Copy link
Member Author

Huh, libllvm builds were not completing in Docker anymore, but just did once I shifted the build to the github VM instead. Going to go ahead and merge that pull, while this will wait until rust 1.73 is ready.

@finagolfin
Copy link
Member Author

We need to look into bumping all other llvm-dependent packages, like zig or iwyu. @twaik, any interest in helping out with those?

@twaik
Copy link
Member

twaik commented Oct 15, 2023

My current priority is to catch al low hanging fruits 😄 and bump all the packages that is easy to bump. I can fix patch in the case if source of package was modified insignificantly, but I am not sure I am skilled enough to patch such a complicated thing as llvm.

@finagolfin
Copy link
Member Author

I am not sure I am skilled enough to patch such a complicated thing as llvm.

LLVM is done: the issue now is finding all packages that depend on it and bumping those to rebuild against 17.0.2, if possible. The two major ones, rust and swift, are done, now need to try all the smaller ones that depend on LLVM.

@twaik
Copy link
Member

twaik commented Oct 15, 2023

Reverse dependencies are:

  binutils-is-llvm
  ccls
  clang
  crystal
  flang
  ghc
  libcompiler-rt
  libllvm-static
  libpolly
  lld
  lldb
  llvm
  llvm-mingw-w64
  llvm-tools
  llvmgold
  mlir
  qt-creator
  rust
  wasmedge

Should I rebuild all of them?

@finagolfin
Copy link
Member Author

Many of those are already done; we need to open pulls for the few remaining like ccls and update them if possible.

@twaik
Copy link
Member

twaik commented Oct 16, 2023

Done. There is some problem with wasmedge, for some reason arm build failed. I am not revbumping it.

@twaik
Copy link
Member

twaik commented Oct 16, 2023

@finagolfin
Copy link
Member Author

finagolfin commented Oct 16, 2023

Anything that doesn't work, we'll have to talk to those who maintained it before. We just need to try building each one and check if upstream has a new version that works with LLVM 17, that's it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants