Github messages for voidlinux
 help / color / mirror / Atom feed
* [ISSUE] [RFC] Package multiple versions of llvm tool-chain
@ 2024-01-15 17:30 Calandracas606
  2024-01-16 23:23 ` classabbyamp
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Calandracas606 @ 2024-01-15 17:30 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1689 bytes --]

New issue by Calandracas606 on void-packages repository

https://github.com/void-linux/void-packages/issues/48222

Description:
<!--
  if you are creating a bug report or package request, please fill out one of the forms here:
  https://github.com/void-linux/void-packages/issues/new/choose

  Don't request an update of a package, We have a script for that:
  https://repo-default.voidlinux.org/void-updates/void-updates.txt
  However, a quality pull request may help.
-->

Major llvm releases introduce breaking changes, and it can take a while for software that depends on llvm to adapt.

Debian packages versioned llvm packages, as does llvm's own deb repository to allow multiple versions of the tool-chain to be installed simultaneously

Void already provides multiple versions of libllvm (12 and 15), I propose doing something similar but with more components of the tool-chain, such as clang and libclang.

For example, this would allow Void to build mesa with llvm17, but zig with llvm15 (zig does not support llvm17 yet)

This would also allow void to package new llvm versions, before setting one as the "default" versions. Similar to how void has "linux" and "linux-mainline" packages, void could add llvm17, but keep the llvm meta-package depending on llvm15. This would also require creating new meta-packages for other components of the tool-chain such as clang, and having the meta-package "clang" depend on a new package, "clang15".

llvm's cmake has support for building and installing in this way. /usr/bin/clang is already a symlink to /usr/bin/clang-15

If this seems reasonable, I propose adding these changes to my WIP llvm17 package, #46935 


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC] Package multiple versions of llvm tool-chain
  2024-01-15 17:30 [ISSUE] [RFC] Package multiple versions of llvm tool-chain Calandracas606
@ 2024-01-16 23:23 ` classabbyamp
  2024-01-17 15:35 ` jonpikum
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: classabbyamp @ 2024-01-16 23:23 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 165 bytes --]

New comment by classabbyamp on void-packages repository

https://github.com/void-linux/void-packages/issues/48222#issuecomment-1894678384

Comment:
seems reasonable

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC] Package multiple versions of llvm tool-chain
  2024-01-15 17:30 [ISSUE] [RFC] Package multiple versions of llvm tool-chain Calandracas606
  2024-01-16 23:23 ` classabbyamp
@ 2024-01-17 15:35 ` jonpikum
  2024-01-17 17:18 ` Calandracas606
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: jonpikum @ 2024-01-17 15:35 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 309 bytes --]

New comment by jonpikum on void-packages repository

https://github.com/void-linux/void-packages/issues/48222#issuecomment-1896062950

Comment:
Would this open the door to LLVM forks - e.g. [ROCm](https://github.com/ROCm/llvm-project)?
Not sure how muddy that might get.
Or would the goal be mainline only?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC] Package multiple versions of llvm tool-chain
  2024-01-15 17:30 [ISSUE] [RFC] Package multiple versions of llvm tool-chain Calandracas606
  2024-01-16 23:23 ` classabbyamp
  2024-01-17 15:35 ` jonpikum
@ 2024-01-17 17:18 ` Calandracas606
  2024-01-17 17:24 ` Calandracas606
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: Calandracas606 @ 2024-01-17 17:18 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 462 bytes --]

New comment by Calandracas606 on void-packages repository

https://github.com/void-linux/void-packages/issues/48222#issuecomment-1896255302

Comment:
> Would this open the door to LLVM forks - e.g. [ROCm](https://github.com/ROCm/llvm-project)? Not sure how muddy that might get. Or would the goal be mainline only?

ROCm is already possible, I have a working template (glibc only) but it is quite messy. I'm not sure it's a good fit for a void package though.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC] Package multiple versions of llvm tool-chain
  2024-01-15 17:30 [ISSUE] [RFC] Package multiple versions of llvm tool-chain Calandracas606
                   ` (2 preceding siblings ...)
  2024-01-17 17:18 ` Calandracas606
@ 2024-01-17 17:24 ` Calandracas606
  2024-04-17  1:45 ` github-actions
  2024-05-01  1:47 ` [ISSUE] [CLOSED] " github-actions
  5 siblings, 0 replies; 7+ messages in thread
From: Calandracas606 @ 2024-01-17 17:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 574 bytes --]

New comment by Calandracas606 on void-packages repository

https://github.com/void-linux/void-packages/issues/48222#issuecomment-1896255302

Comment:
> Would this open the door to LLVM forks - e.g. [ROCm](https://github.com/ROCm/llvm-project)? Not sure how muddy that might get. Or would the goal be mainline only?

ROCm is already possible, it has no dependancies on system llvm, and can be installed to a directory such as /usr/lib/rocm

I have a working template (x86_64 glibc only) but it is quite messy. I don't think it's a good fit for a void package though.



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [RFC] Package multiple versions of llvm tool-chain
  2024-01-15 17:30 [ISSUE] [RFC] Package multiple versions of llvm tool-chain Calandracas606
                   ` (3 preceding siblings ...)
  2024-01-17 17:24 ` Calandracas606
@ 2024-04-17  1:45 ` github-actions
  2024-05-01  1:47 ` [ISSUE] [CLOSED] " github-actions
  5 siblings, 0 replies; 7+ messages in thread
From: github-actions @ 2024-04-17  1:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 293 bytes --]

New comment by github-actions[bot] on void-packages repository

https://github.com/void-linux/void-packages/issues/48222#issuecomment-2060190161

Comment:
Issues become stale 90 days after last activity and are closed 14 days after that.  If this issue is still relevant bump it or assign it.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [ISSUE] [CLOSED] [RFC] Package multiple versions of llvm tool-chain
  2024-01-15 17:30 [ISSUE] [RFC] Package multiple versions of llvm tool-chain Calandracas606
                   ` (4 preceding siblings ...)
  2024-04-17  1:45 ` github-actions
@ 2024-05-01  1:47 ` github-actions
  5 siblings, 0 replies; 7+ messages in thread
From: github-actions @ 2024-05-01  1:47 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1692 bytes --]

Closed issue by Calandracas606 on void-packages repository

https://github.com/void-linux/void-packages/issues/48222

Description:
<!--
  if you are creating a bug report or package request, please fill out one of the forms here:
  https://github.com/void-linux/void-packages/issues/new/choose

  Don't request an update of a package, We have a script for that:
  https://repo-default.voidlinux.org/void-updates/void-updates.txt
  However, a quality pull request may help.
-->

Major llvm releases introduce breaking changes, and it can take a while for software that depends on llvm to adapt.

Debian packages versioned llvm packages, as does llvm's own deb repository to allow multiple versions of the tool-chain to be installed simultaneously

Void already provides multiple versions of libllvm (12 and 15), I propose doing something similar but with more components of the tool-chain, such as clang and libclang.

For example, this would allow Void to build mesa with llvm17, but zig with llvm15 (zig does not support llvm17 yet)

This would also allow void to package new llvm versions, before setting one as the "default" versions. Similar to how void has "linux" and "linux-mainline" packages, void could add llvm17, but keep the llvm meta-package depending on llvm15. This would also require creating new meta-packages for other components of the tool-chain such as clang, and having the meta-package "clang" depend on a new package, "clang15".

llvm's cmake has support for building and installing in this way. /usr/bin/clang is already a symlink to /usr/bin/clang-15

If this seems reasonable, I propose adding these changes to my WIP llvm17 package, #46935 


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2024-05-01  1:47 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-15 17:30 [ISSUE] [RFC] Package multiple versions of llvm tool-chain Calandracas606
2024-01-16 23:23 ` classabbyamp
2024-01-17 15:35 ` jonpikum
2024-01-17 17:18 ` Calandracas606
2024-01-17 17:24 ` Calandracas606
2024-04-17  1:45 ` github-actions
2024-05-01  1:47 ` [ISSUE] [CLOSED] " github-actions

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).