Tested with static libcxx and libcxxabi against custom embedded target and Linux x64.
Tested with shared libcxx and libcxxabi against Linux x64.
Really hoping that I didn't accidentally break Mac.
These changes make linking against static libraries more explicit. Instead
of using -lc++ and -lc++abi in the tests, an absolute path to the library is
provided instead.
The choices of shared vs. static, and the choices of library paths for both
libcxx and libcxxabi needed to be exchanged for this to work. In other words,
libcxx tests need to know the library path of libcxxabi, and whether libcxxabi
is a static or shared library.
Some Mac specific logic for testing against libc++abi had to be moved from
libcxxabi's config.py, as it was overriding choices made in libcxx's config.py.
That logic is now in libcxx's target_info.py.
Testing a static libcxx on Linux will now automatically link in librt most of
the time. Previously, lots of pthread tests would fail because of an
unresolved clock_gettime.
In this fallback case do we want to explicitly ask for static linkage using -Wl,-Bstatic -lc++ -Wl,-Bdynamic? I think that will cause the linker to diagnose that your not actually getting a static library.