When cross-compiling, in order to make the output of the native and
cross-compiled llvm-config match, one needs to re-pass all cmake flags
relevant to BuildVariables.inc via CROSS_TOOLCHAIN_FLAGS_NATIVE. If
LLVM_LINK_LLVM_DYLIB=ON is among those, building a full libLLVM shared
object is required for the native llvm-config, otherwise --shared-mode
will be incorrect and --link-shared broken.
To avoid this, we can make llvm-config link statically against the
needed components for simplicity's sake in both the native and cross
case.
I might move the bulk of the commit message to just being a comment here? Otherwise one needs to git blame to find the rationale.