Some patches for llvm-toolchain-3.3 and -3.2

Jon Severinsson jon at severinsson.net
Sat Aug 31 07:30:52 UTC 2013


Hi

I have recently been messing around with the llvm packaging, mostly in
order to build recent mesa versions on wheezy and jessie, but I have
also played a bit with clang. As I did I found some inconcistencies
with regards to the gcc version used by llvm. Curently the state of
the llvm-toolchain packaging in svn is as follows:

llvm-toolchain-3.2:
* Clang is told to use c++ headers in /usr/include/c++/4.7
* The clang binary package depends on the libstdc++ 4.8 dev package
* The llvm build log includes `gcc -v` output of the build-time default
  gcc version (4.6, 4.7 or 4.8 depending on distro version and arch)
* The llvm build is done using gcc-4.7 and g++-4.7

llvm-toolchain-3.3:
* Clang is told to use c++ headers in /usr/include/c++/4.7
* The clang binary package depends on the libstdc++ 4.6, 4.7 or 4.8 dev
  package (or none at all), depending on the built-time distro version
  (using an incomplete list in debian/rules)
* The llvm build is done using the build-time default gcc version (4.6,
  4.7 or 4.8 depending on distro version and arch)

Trying to get a "clean" backport I added some code to debian/rules in
order to detect the build-time default gcc version and consistently use
that, while making it simple to override this and consistenly use a
specific gcc version instead.

The resulting packages will build correctly without any changes on at
least wheezy (gcc 4.7.2-5 and binutils 2.22-8), jessie (gcc 4.7.3-4 and
binutils 2.22-8) and sid (gcc 4.8.1-9 and binutils 2.23.52.20130828-1),
without resorting to a list of distro versions in debian/rules.

While I have backported the patches from 3.3 to 3.2, I haven't forward-
ported them to 3.4 yet, but I can do that if there is interest.

My testing so far is quite limited, but clang++ appears to work, and
mesa uses libllvm without any problem.

If you want to test for yourself, my binaries are available at
"deb http://apt.severinsson.net/debian {wheezy,jessie,sid} llvm"
(maintained mostly in order to distribute the builds to my various 
debian boxes, I give no guarantees except "works for me".)

Best Regards
Jon Severinsson



More information about the Pkg-llvm-team mailing list