darling-libcxx/lib
Eric Fiselier 5e4698c9a6 Create new library 'libc++experimental.a' for packaging TS symbols.
Summary:
Out-of-line symbols for <experimental/...> headers are not ABI or API stable and cannot live in the 'libc++.dylib'. Currently they have nowhere to live. I would like to add a new library target `libc++experimental.a` to fix this. 

Previously I had suggested different libraries for different TS's (`libc++filesystem.a`, 'libc++LFTS.a`, ect). I no longer think this is the right approach.
Instead `c++experimental` will hold *all* TS implementations as a single monolithic library. I see two main benefits to this:

1. Users only have to know about and manually link one library.
2. It makes it easy to implement TS's with one or two out-of-line symbols. (Ex. PMRs)

`c++experimental` provides NO ABI compatibility. Symbols can freely be added/removed/changed without concern for ABI stability.
I will add documentation for this after landing this patch (but before adding anything to it).

`c++experimental` only builds as a static library. By default CMake will build/test this library but will *NOT* install it.

This patch adds the CMake and LIT logic needed to build/test the new library. Once this lands I plan on using it to implement parts of `<experimental/memory_resource>`.



Reviewers: mclow.lists

Subscribers: cfe-commits, theraven, krememek, dexonsmith, bcraig, beanz, danalbert

Differential Revision: http://reviews.llvm.org/D19856

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@268443 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-03 21:30:18 +00:00
..
buildit [libcxx] Remove -Wpadded from buildit script. 2016-01-27 01:55:11 +00:00
CMakeLists.txt Create new library 'libc++experimental.a' for packaging TS symbols. 2016-05-03 21:30:18 +00:00
libc++abi2.exp [libcxx] Reexport std::bad_array_length symbols from libc++abi on OS X. 2015-10-05 19:28:48 +00:00
libc++abi.exp Add typeinfo for char16_t, char32_t and nullptr. 2010-12-03 17:25:24 +00:00
libc++sjlj-abi.exp on Darwin re-export C++0x type infos 2011-05-24 20:26:04 +00:00
libc++unexp.exp Effort to reduce the number of exported symbols 2010-12-17 14:46:43 +00:00
notweak.exp <rdar://problem/8279559> [libstdcxx] use new linker options to make symbols non-weak 2010-09-10 20:42:36 +00:00
weak.exp Fix <rdar://problem/10136825> 2011-10-04 23:11:56 +00:00