Link against clang/llvm as late as possible

This allows the static libraries to be linked into an dynamic llvm compiler pass library without causing runtime link errors due to doubly defined symbols.

Unfortunately, I can currently *only* test on Mac OS X, where this works. Hence, this needs to be tested on Linux before being committed.

I dropped the target_link_libraries that were not depending on any other libraries; maybe those should have been kept. I happily update the patch if this is required.