[opensuse-factory] Multiple LLVM versions
Currently, openSUSE:Factory provides both the current GCC version (6) and the previous one (5). This makes sense, since it may take some time for packages to support the latest GCC version. This is also an issue with LLVM/Clang, but unlike with GCC openSUSE:Factory only provides the latest LLVM/Clang version. Previous versions are not available, which makes it hard to support some software that is a little more conservative about switching to the latest version. Would it be possible to do something similar with LLVM/Clang as is done with GCC, and provide both the latest version and the immediate previous version? I understand not wanting to go back and supporting 3.7 after it has already been dropped, but perhaps starting with 3.8 the infrastructure could be added and when 3.9 comes out 3.8 could be left in the repos. Longer-term, this could hopefully avoid some issues where packages currently have to bundle a LLVM version into their package. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Em Qui, 2016-08-11 às 11:11 -0400, Todd Rme escreveu:
Currently, openSUSE:Factory provides both the current GCC version (6) and the previous one (5). This makes sense, since it may take some time for packages to support the latest GCC version.
This is also an issue with LLVM/Clang, but unlike with GCC openSUSE:Factory only provides the latest LLVM/Clang version. Previous versions are not available, which makes it hard to support some software that is a little more conservative about switching to the latest version.
Would it be possible to do something similar with LLVM/Clang as is done with GCC, and provide both the latest version and the immediate previous version? I understand not wanting to go back and supporting 3.7 after it has already been dropped, but perhaps starting with 3.8 the infrastructure could be added and when 3.9 comes out 3.8 could be left in the repos.
Longer-term, this could hopefully avoid some issues where packages currently have to bundle a LLVM version into their package.
Hi Todd, I have already tried to do that in the past [1]. I could build the package and it was working fine, but when I submitted it to the science repo, then many problems occurred because some packages were choosing llvm3_3 instead of llvm. If you want to try fix those problems, you can still see my package here [2]. ---------- [1] https://lists.opensuse.org/opensuse-factory/2015-07/msg00405.html [2] https://build.opensuse.org/package/show/home:Ronis_BR/llvm-3_3 Best regards, Ronan Arraes -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Thu, Aug 11, 2016 at 1:28 PM, Ronan Arraes Jardim Chagas <ronisbr@gmail.com> wrote:
Em Qui, 2016-08-11 às 11:11 -0400, Todd Rme escreveu:
Currently, openSUSE:Factory provides both the current GCC version (6) and the previous one (5). This makes sense, since it may take some time for packages to support the latest GCC version.
This is also an issue with LLVM/Clang, but unlike with GCC openSUSE:Factory only provides the latest LLVM/Clang version. Previous versions are not available, which makes it hard to support some software that is a little more conservative about switching to the latest version.
Would it be possible to do something similar with LLVM/Clang as is done with GCC, and provide both the latest version and the immediate previous version? I understand not wanting to go back and supporting 3.7 after it has already been dropped, but perhaps starting with 3.8 the infrastructure could be added and when 3.9 comes out 3.8 could be left in the repos.
Longer-term, this could hopefully avoid some issues where packages currently have to bundle a LLVM version into their package.
Hi Todd,
I have already tried to do that in the past [1]. I could build the package and it was working fine, but when I submitted it to the science repo, then many problems occurred because some packages were choosing llvm3_3 instead of llvm. If you want to try fix those problems, you can still see my package here [2].
---------- [1] https://lists.opensuse.org/opensuse-factory/2015-07/msg00405.html [2] https://build.opensuse.org/package/show/home:Ronis_BR/llvm-3_3
Best regards, Ronan Arraes
GCC handles that by having "gcc{N}" packages (where "{N}" is a number), which are the versioned gcc packages that contain the actual gcc software, and "gcc" packages (without the number), which are just empty packages that depend on the default "gcc{N}" package. Packages that don't care about which version of gcc they are using can just depend on the "gcc" package, while those that only work with a specific version can depend on the appropriate "gcc{N}" package. This also allows new gcc versions to be made available and tested without switching everything over to it at once. So for LLVM, you could have "llvm37" and "llvm38" packages, which can be co-installed, and an empty "llvm" package which depends on "llvm38". I would be happy to implement this if it is an acceptable approach, but I don't want to do all the work of implementing it only for the llvm or factory maintainers to say they don't want to do things this way. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
participants (2)
-
Ronan Arraes Jardim Chagas
-
Todd Rme