These tests assume availability of external symbols provided by the
C++ library, but those won't be available in case when the C++ library
is statically linked because lli itself doesn't need these.
This uses llvm-readobj -needed-libs to check if C++ library is linked as
shared library and exposes that information as a feature to lit.
Based on our IRC conversation I ran off and read CMake's sources. Looks like CMAKE_OBJDUMP is unset on Windows, and only set elsewhere if objdump is found by CMake.
Might be worth adding an early out at the beginning of this function to mark the check as failed if CMAKE_OBJDUMP is unset. In that case you should also probably log that the check failed to the CMake status, and log why in the error log.