libcxx fork for Darling build
Go to file
Adhemerval Zanella 98983c06c5 libcxx: Fix libcxx tests on aarch64 with libunwind
Some tests uses 'long double' to/from conversions and for some targets
they are provided by compiler runtime (either compiler-rt or libgcc).
However when building libcxx with linunwinder current test configuration
at target_info.py do not include the required libraries, as:

  not llvm_unwinder:
    "-lc++" "-lm" "-lgcc_s" "-lgcc" "-lpthread" "-lc" "-lgcc_s" "-lgcc"

  llvm_unwinder
    "-lc++" "-lm" "-lpthread" "-lc" "-lunwind" "-ldl"

This causes some tests build issues with missing symbols on aarch64,
for instance, where 'long double' is a binary float with 128-bits with
mostly of internal operations being provided by software routines.

This patch changes how to define the default linker flags with libunwinder by
adding libgcc regardless.

I checked and aarch64 and x86_64 with libcxx and libunwind (with and without
LIBCXXABI_USE_LLVM_UNWINDER).


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@279552 91177308-0d34-0410-b5e6-96231b3b80d8
2016-08-23 19:25:12 +00:00
benchmarks Update in-tree Google Benchmark to current ToT. 2016-08-09 18:56:48 +00:00
cmake [CMake] Get libcxx building under LLVM/runtimes 2016-08-18 21:31:51 +00:00
docs Allow building both shared and static library 2016-08-08 22:57:25 +00:00
include make the associative containers do the right thing for propogate_on_container_assignment. Fixes bug #29001. Tests are only for <map> right now - more complete tests will come when we revamp our allocator testing structure. 2016-08-17 23:24:02 +00:00
lib Allow building both shared and static library 2016-08-08 22:57:25 +00:00
src [libcxx] Add std::any 2016-08-11 03:13:11 +00:00
test libcxx: Fix libcxx tests on aarch64 with libunwind 2016-08-23 19:25:12 +00:00
utils Update in-tree Google Benchmark to current ToT. 2016-08-09 18:56:48 +00:00
www [libcxx] Add std::any 2016-08-11 03:13:11 +00:00
.arcconfig Upgrade arcconfig to use https 2016-07-18 02:02:49 +00:00
.gitignore Add MSVC specifics to .gitignore. Patch from STL@microsoft.com 2016-08-03 05:51:19 +00:00
CMakeLists.txt [CMake] Get libcxx building under LLVM/runtimes 2016-08-18 21:31:51 +00:00
CREDITS.TXT Add entry to CREDITS.TXT for propagate_const 2016-06-19 19:36:28 +00:00
LICENSE.TXT Update copyright year to 2016. 2016-03-30 22:39:53 +00:00
TODO.TXT Test commit to see if libcxx.llvm.org/docs builds 2015-09-04 22:57:00 +00:00

libc++ Documentation
====================

The libc++ documentation is written using the Sphinx documentation generator. It is
currently tested with Sphinx 1.1.3.

To build the documents into html configure libc++ with the following cmake options:

  * -DLLVM_ENABLE_SPHINX=ON
  * -DLIBCXX_INCLUDE_DOCS=ON

After configuring libc++ with these options the make rule `docs-libcxx-html`
should be available.