Support for external LLVM

Hi, I’d like to know the status of compiling ROOT 6 using an external installation of LLVM. Last time I tried it was not supported, so I’m wondering if there have been improvements or if there are any development plans about this. Compiling the internal version of LLVM is a noticeable portion of the whole compile time for ROOT, so it would be nice to get rid of it.

I have moved changed in llvm to clang (so to say); Vassil has pushed basically all remaining patches from llvm upstream. Once we upgrade llvm again we’ll upgrade to a stable tag; from there on we can take a vanilla llvm of that specific version (that might still not exist on the machines you’re building ROOT on - but it’s worth a try).

Not so for clang, though. We have a series of patches in clang (becoming less and less, actually), but getting all of those upstreamed will still be some work. And the build time of clang is considerably larger… Also here, Vassil is working on it, but this will take much longer.


Thanks Axel. So if I understand properly the final goal is to use external llvm+clang only if the system version matches exactly that required by Root, right? That would not be very useful on many systems but at least on select ones would allow to save a lot of time when compiling.

Hi Nicola,

Yes, where using a stock llvm is fairly close and using a stock clang is fairly far away.


This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.