Heads up: F21 LLVM rebase

Kevin Kofler kevin.kofler at chello.at
Sat Dec 13 00:51:40 UTC 2014

Michael DePaulo wrote:
> I too come from an Ubuntu/Debian background. Like other major pieces
> of software, Ubuntu and Debian both make multiple 2.x or 3.x versions
> of LLVM available for each release of  their OS. They do the
> following:
> 1. The major version is specified in the package name. For example,
> "llvm-3.4" and "llvm-3.5" are the names of separate packages. The
> actual package versions are like "3.4.2-13" & "3.5-6" respectively
> 2. The package "llvm" is a small package that depends on the
> recommended major version for developers. For example, in Jessie, 3.5
> is the recommended major version, and Jessie "llvm" contains symlinks
> such as:
> /usr/bin/llvm-extract -> /usr/bin/llvm-extract-3.5
> Would Fedora permit someone like myself to contribute an LLVM
> packaging scheme like that?

That would NOT be a good idea, for a simple reason: The version of LLVM Mesa 
(i.e., libGL) links ends up linked into MANY executables. If you link some 
other library against some other version of LLVM, and then an application 
ends up directly or indirectly linking both that library and libGL, it ends 
up indirectly linking the 2 incompatible versions of LLVM and crashing. We 
have already had this happen, and other distributions too, see e.g.:
and still, months later (when it was already long fixed in Fedora by using a 
common shared LLVM, but apparently not on some other distributions):

(Now, to be fair, it turns out that OpenGTL has since been removed from 
Fedora because Krita no longer uses it, but the exact same problem can 
happen with any of the other consumers of LLVM.)

There can be only one version of LLVM in the whole distribution at a time.

This topic has already come up several times on this mailing list (basically 
each time such a rebase was done), please read the archives, e.g., this 
and my reply to a proposal essentially identical to yours:

        Kevin Kofler

More information about the devel mailing list