RebasingLLVM

From FedoraProject

Revision as of 18:23, 8 April 2014 by Ajax (Talk | contribs)

Jump to: navigation, search

Running collection of notes about how to do LLVM rebases in Fedora, and in particular, how to verify them. This page currently covers F20's 3.3->3.4 rebase; presumably future updates will need more detail as more things grow LLVM dependencies.

Contents

Strategy

First, get test results from the existing version of llvm. (XXX links to previous rebase results would be useful...)

Next, get it all building. Once you've got the new version of llvm building, mockchain it, then mockchain the rest of the affected packages into the same root.

Once you've done that you can rpm -Fvh from the mockchain repo to update your running system to the new version of llvm, and then re-do the tests against the new llvm version to see what broke.

Testing

llvm itself

Run the testsuite. It runs out of %check, you probably need to enable it on some of the non-PC arches though.

dragonegg

make check from the built source, in theory, but that doesn't actually work at the moment; llvm-config --src-root points into space, and the bits it would point to aren't packaged anyway. Hmm.

eclipse-cdt

gambas3

No testsuite. But the IDE is self-hosting.

gedit-code-assistance

ghc

Edit ghc.spec to do %define cabal_configure_options --ghc-option=-fllvm to force the llvm code generator (XXX: is this enough?). Testsuite is run by doing make test or make fulltest from the top-level source directory; the former ought to pass completely, but on non-arm it probably does have failures since the llvm generator is not the default elsewhere.

kate-plugin-cpphelper

mesa

Somewhat tricky to test, if you're not used to doing piglit runs, but piglit against Xvfb will exercise llvmpipe. The r600 and radeonsi drivers also use llvm (XXX more detail on which cards here, please) and I think that's true of the corresponding vdpau drivers too (XXX how to test vdpau).

OpenGTL

make check, which is already done for you in %check, so the mockchain build logs already have this.

pocl

make check from the built source. Works, but there seem to be a lot of skipped tests (TCE, samples, ViennaCL, Rodinia, Parboil, AMD app SDK, VexCL, piglit). Needs more investigation.

pure

make check, which is already done for you in %check, so the mockchain build logs already have this.

python-llvmpy

make check, which is already done for you in %check, so the mockchain build logs already have this.

syntastic

xorg-x11-drv-vmware