[libc++abi] Look for __config instead of vector
authorShoaib Meenai <smeenai@fb.com>
Sat, 30 Jun 2018 01:25:47 +0000 (01:25 +0000)
committerShoaib Meenai <smeenai@fb.com>
Sat, 30 Jun 2018 01:25:47 +0000 (01:25 +0000)
vector is a generic C++ header, whereas __config is libc++-specific, so
we can look for it instead to guarantee we're finding a libc++
installation. This was suggested by Eric in https://reviews.llvm.org/D48694.

This is less important now that we're limiting the header search to the
specified directories (which definitely shouldn't have any other C++
library's headers anyway), but it shouldn't hurt either. There's a
chance some other library could also be providing a __config header, so
there's still a trade-off there. It would be ideal if we could check for
the presence of both __config and vector in the same directory, but
there doesn't seem to be any easy way to do that in CMake.

llvm-svn: 336034

libcxxabi/CMakeLists.txt

index f8892e5..383bf96 100644 (file)
@@ -110,7 +110,7 @@ endforeach()
 
 find_path(
   LIBCXXABI_LIBCXX_INCLUDES
-  vector
+  __config
   PATHS ${LIBCXXABI_LIBCXX_INCLUDES}
         ${LIBCXXABI_LIBCXX_PATH}/include
         ${CMAKE_BINARY_DIR}/${LIBCXXABI_LIBCXX_INCLUDES}