The LLVM${c}Info mask is listed twice in LLVM-Config.cmake. This results in the libraries such as LLVMARMInfo, LLVMAArch4Info, etc appearing twice in extract_symbols.py command line while building clangShared. Extract_symbols.py does not work well in such a case and completely ignores the symbols from the duplicated libraries. Thus, the LLVM(...)Info symbols do not get exported from clangShared and linking clang against it fails with unresolved dependencies.
Seems to be a mere copy-paste mistake.