Fix llvm-config to adapt to the install environment.
This patch does a couple of things:
- Adds a new argument --shared-mode which accepts a list of components and prints whether or not the provided components need to be linked statically or shared.
- Fixes --libnames when CMake BUILD_SHARED_LIBS is used.
- Fixes --libnames, --libs, and --libfiles for dylib when static components aren't installed.
- Fixes --libnames, --libs, --libfiles, and --components to use LLVM_DYLIB_COMPONENTS as the component manifest for dylib linking.
- Uses the host platform's usual convention for filename extensions and such, instead of always defaulting to Unix-izms.
Because I don't own a Mac, I am not able to test the Mac platform dependent stuff locally. If someone would be willing to run a build for me on their machine (unless there's a better option), I'd appreciate it.
Reviewers: jfb, brad.king, whitequark, beanz
Subscribers: beanz, jauhien, llvm-commits
Differential Revision: http://reviews.llvm.org/D13198