llvm-project/libcxx/lib
Eric Fiselier 27cb2f1225 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

llvm-svn: 268443
2016-05-03 21:30:18 +00:00
..
CMakeLists.txt Create new library 'libc++experimental.a' for packaging TS symbols. 2016-05-03 21:30:18 +00:00
buildit [libcxx] Remove -Wpadded from buildit script. 2016-01-27 01:55:11 +00:00
libc++abi.exp
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++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
weak.exp Fix <rdar://problem/10136825> 2011-10-04 23:11:56 +00:00