When LLVM is configured to build shared libraries, CMake builds each component as it's own shared object, while autoconfig/make builds them statically and then links them all together to create a single shared object. This change adds compile time config flags to llvm-config so it can know whether LLVM's components are separated or not and act accordingly.
This fixes llvm-config instead of fixing the makefiles to behave like CMake because, AIUI, LLVM's autoconfig/make build system is on the way out anyway.
This change only affects llvm-config from builds that use autoconfig/make.