llvm-project/libcxx
Shoaib Meenai 461764de0d [libc++] Add _LIBCPP_DISABLE_EXTERN_TEMPLATE config option
When the libc++ extern template macros were added, the intent was for it
to be possible for consumers of the headers to disable extern templates
(via `-D_LIBCPP_EXTERN_TEMPLATE(...)=`). Unfortunately, support for
specifying function-like macros varies on the command line varies across
compilers (e.g. MSVC doesn't support it at all), and cmake doesn't allow
it for the same reason. Add a non-function macro for this purpose.

The intended use is for libraries which want to use the libc++ headers
without taking a dependency on the libc++ library itself. I can name the
macro something which reflects its intent rather than its behavior (e.g.
`_LIBCPP_HEADER_ONLY`) if desired.

Differential Revision: https://reviews.llvm.org/D31725

llvm-svn: 300246
2017-04-13 20:13:32 +00:00
..
benchmarks improve performance of string::find 2016-12-30 18:01:36 +00:00
cmake [CMake][libcxx] Use check_c_compiler_flag to check for nodefaultlibs 2017-04-06 21:06:33 +00:00
docs [libc++] Add _LIBCPP_DISABLE_EXTERN_TEMPLATE config option 2017-04-13 20:13:32 +00:00
include [libc++] Add _LIBCPP_DISABLE_EXTERN_TEMPLATE config option 2017-04-13 20:13:32 +00:00
lib [CMake][libcxx] Use builtins rather than gcc_s when compiler-rt is requested 2017-04-05 22:53:05 +00:00
src [libc++] Drop support for CRTs older than VS 2015 2017-04-07 02:20:52 +00:00
test Remove the binders from C++17. Reviewed as https://reviews.llvm.org/D31769 2017-04-13 18:25:32 +00:00
utils Fix remote test execution in lit 2017-04-06 01:14:57 +00:00
www Implement LWG#2855 - made easy by previous refactoring 2017-04-13 16:57:42 +00:00
.arcconfig Upgrade arcconfig to use https 2016-07-18 02:02:49 +00:00
.clang-format Tweak .clang-format configuration. 2017-01-14 05:43:02 +00:00
.gitignore Implement N4606 optional 2016-10-12 07:46:20 +00:00
CMakeLists.txt [libc++] Explicitly set output directory for DLL 2017-04-13 16:27:38 +00:00
CREDITS.TXT Updated email address in `CREDITS.txt`. 2017-03-06 20:46:55 +00:00
LICENSE.TXT Update year to 2017 2017-01-03 11:20:43 +00:00
NOTES.TXT Update doc and various cleanup 2016-12-23 20:00:13 +00:00
TODO.TXT Add list of filesystem NB comments to TODO.TXT so they can be tracked separately 2017-03-06 21:23:36 +00:00