Start landing support for ARM EHABI unwinding.

The new code will be behind a LIBCXXABI_ARM_EHABI define (so that platforms
that don't want it can continue using e.g. SJLJ). This commit mostly just
adds the LIBCXXABI_ARM_EHABI define.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211739 91177308-0d34-0410-b5e6-96231b3b80d8
Land support for ARM EHABI unwinding for libunwind.

This was written by:
Albert Wong <ajwong@chromium.org>
Antoine Labour <piman@chromium.org>
Dana Jansen <danakj@chromium.org
Jonathan Roelofs <jonathan@codesourcery.com>
Nico Weber <thakis@chromium.org>


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211743 91177308-0d34-0410-b5e6-96231b3b80d8
Update libc++abi to use the ARM EHABI unwinder from its libunwind.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211745 91177308-0d34-0410-b5e6-96231b3b80d8
Minor libc++abi changes to make things build better with gcc.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211748 91177308-0d34-0410-b5e6-96231b3b80d8
Fix building for iOS

git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211751 91177308-0d34-0410-b5e6-96231b3b80d8
Add missing header for _LIBUNWIND_LOG().


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211775 91177308-0d34-0410-b5e6-96231b3b80d8
Fix linux build.

* Replace strlcpy with snprintf since strlcpy is not available
  in glibc.

* Replace __LINUX__ with __linux__.



git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211784 91177308-0d34-0410-b5e6-96231b3b80d8
Silence unused variable and parameter warnings.


git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@211790 91177308-0d34-0410-b5e6-96231b3b80d8
Add a cmake build system.

For those of us that don't like rebuilding the whole damn thing every
time.

Will add support for tests with lit in a later patch.