Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 687212 - sci-physics/root: depends on LLVM 5
Summary: sci-physics/root: depends on LLVM 5
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Guilherme Amadio
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-06-02 15:06 UTC by Michał Górny
Modified: 2019-10-22 07:48 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-06-02 15:06:22 UTC
Since LLVM 7 is stable now, and 8 is going to become stable soonish, I'd like to clean 5 up.  However, root seems not to support any newer version.  Could this be solved by version bump or some patches maybe?
Comment 1 Guilherme Amadio gentoo-dev 2019-06-03 08:42:47 UTC
Unfortunately, no. 

This is being tracked upstream here: https://sft.its.cern.ch/jira/browse/ROOT-8605
Comment 2 Guilherme Amadio gentoo-dev 2019-06-03 09:03:05 UTC
Sorry, updated the bug too soon.

In short, even if ROOT can now use external vanilla LLVM, it needs a special version of Clang that is API incompatible with vanilla Clang, and has ~80 patches not really easy to upstream. Since that bundled Clang is 5.0.x, it needs LLVM 5 too.

The upcoming release of ROOT, 6.18, will still depend on this same version of LLVM/Clang. Only the next release will probably have an LLVM update and move to LLVM 8 or 9. The next release is expected to be around November 2019.

If maintaining LLVM 5 is too much of a burden, I can keep it while ROOT needs it, or can go back to using the bundled LLVM. I understand this is not a very good solution, but until this is resolved upstream we will need LLVM 5 one way or another.
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-06-03 10:02:15 UTC
I'm confused. The bug suggests that vanilla 5 doesn't work either.
Comment 4 Guilherme Amadio gentoo-dev 2019-06-03 10:16:12 UTC
Vanilla LLVM works, but Clang still needs ~80 patches to make the interpreter work (and it still cannot be unbundled for that reason). ROOT 6.14 and below use bundled LLVM and Clang (unbundled was not supported or did not really work). ROOT 6.16 and live ebuild use unbundled vanilla LLVM, but bundled Clang. ROOT 6.18 will still need one of these solutions. In a future release, LLVM/Clang will be updated in ROOT, but Clang will still need most of the current patches. I don't see what we could do better in Gentoo. The patched clang may break other packages, so I'm not sure unbundling (either via a root-clang package or with a USE=root in sys-devel/clang) would make things better.
Comment 5 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-06-03 10:22:27 UTC
Oh, sorry, I've gotten to your second comment now.
Comment 6 Larry the Git Cow gentoo-dev 2019-09-09 06:12:58 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=175836287f5f0b91f09445dcdcd2f0b340cc7699

commit 175836287f5f0b91f09445dcdcd2f0b340cc7699
Author:     Guilherme Amadio <amadio@gentoo.org>
AuthorDate: 2019-09-06 11:56:33 +0000
Commit:     Guilherme Amadio <amadio@gentoo.org>
CommitDate: 2019-09-09 06:10:27 +0000

    sci-physics/root: switch back to builtin LLVM
    
    Using external LLVM never really worked and can cause crashes
    if ROOT is used with anything else that dynamically links against
    LLVM, such as media-libs/mesa[llvm]. The bundled version of clang
    is also API incompatible with vanilla clang and doesn't work as a
    compiler with the applied patches that are required to make the
    cling C/C++ interpreter work.
    
    More information can be found in the links below:
    
    Bug: https://bugs.gentoo.org/564302
    Bug: https://bugs.gentoo.org/687212
    Bug: https://sft.its.cern.ch/jira/browse/ROOT-9965
    Bug: https://sft.its.cern.ch/jira/browse/ROOT-10287
    Bug: https://cern.service-now.com/service-portal/view-incident.do?n=INC1242141 (requires authentication)
    Bug: https://bugs.freedesktop.org/show_bug.cgi?id=93103
    Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1441957 (restricted)
    Package-Manager: Portage-2.3.71, Repoman-2.3.17
    Signed-off-by: Guilherme Amadio <amadio@gentoo.org>

 .../root/{root-6.16.00-r3.ebuild => root-6.16.00-r4.ebuild}       | 8 ++------
 .../root/{root-6.18.00-r2.ebuild => root-6.18.00-r3.ebuild}       | 8 ++------
 sci-physics/root/root-9999.ebuild                                 | 8 ++------
 3 files changed, 6 insertions(+), 18 deletions(-)
Comment 7 Guilherme Amadio gentoo-dev 2019-10-22 07:48:08 UTC
This bug is now obsolete, as sys-devel/llvm:5 is no longer in the tree after reverting sci-physics/root back to using the bundled LLVM (tracked in bug 564302).