Use __config_site when building libc++. Also cleanup ABI versioning doc

llvm-svn: 250261
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: 29ada6d178890d843133fd67300b96427951086a
diff --git a/cmake/Modules/HandleLibcxxFlags.cmake b/cmake/Modules/HandleLibcxxFlags.cmake
index 3206505..bb886fa 100644
--- a/cmake/Modules/HandleLibcxxFlags.cmake
+++ b/cmake/Modules/HandleLibcxxFlags.cmake
@@ -49,10 +49,12 @@
   endif()
 endmacro()
 
+# Add a macro definition to the __config_site file if the specified condition
+# is 'true'. Note that '-D${def}' is not added. Instead it is expected that
+# the build include the '__config_site' header.
 macro(config_define_if condition def)
   if (${condition})
     set(${def} ON)
-    add_definitions(-D${def})
     set(LIBCXX_NEEDS_SITE_CONFIG ON)
   endif()
 endmacro()
@@ -60,14 +62,12 @@
 macro(config_define_if_not condition def)
   if (NOT ${condition})
     set(${def} ON)
-    add_definitions(-D${def})
     set(LIBCXX_NEEDS_SITE_CONFIG ON)
   endif()
 endmacro()
 
 macro(config_define value def)
   set(${def} ${value})
-  add_definitions(-D${def}=${value})
   set(LIBCXX_NEEDS_SITE_CONFIG ON)
 endmacro()