llvm-project/clang/lib
Petr Hosek ae8b2cab67 [Driver] Support default libc++ library location on Darwin
Darwin driver currently uses libc++ headers that are part of Clang
toolchain when available (by default ../include/c++/v1 relative to
executable), but it completely ignores the libc++ library itself
because it doesn't pass the location of libc++ library that's part
of Clang (by default ../lib relative to the exceutable) to the linker
always using the system copy of libc++.

This may lead to subtle issues when the compilation fails because the
headers that are part of Clang toolchain are incompatible with the
system library. Either the driver should ignore both headers as well as
the library, or it should always try to use both when available.

This patch changes the driver behavior to do the latter which seems more
reasonable, it makes it easy to test and use custom libc++ build on
Darwin while still allowing the use of system version. This also matches
the Clang driver behavior on other systems.

Differential Revision: https://reviews.llvm.org/D45639
2021-04-20 12:30:35 -07:00
..
APINotes [clang][APINotes] Fix -Wunused-function warning (NFC) 2021-04-01 09:52:43 +08:00
ARCMigrate [SystemZ][z/OS] Set files in FileRemapper.cpp are text 2021-04-19 07:59:42 -04:00
AST [clang-tidy] Add check for implicit widening of multiplication result 2021-04-13 21:41:22 +03:00
ASTMatchers [ASTMatchers] Add `cxxBaseSpecifier` matcher (non-top-level) 2021-04-09 00:05:36 +01:00
Analysis [-Wcompletion-handler] Don't recognize init methods as conventional 2021-04-07 13:50:01 +03:00
Basic [M68k] Fix empty builtin va_list kind 2021-04-16 11:09:22 -07:00
CodeGen Ensure target-multiversioning emits deferred declarations 2021-04-20 08:10:26 -07:00
CrossTU [analyzer][CTU] API for CTU macro expansions 2021-02-22 11:12:22 +01:00
DirectoryWatcher Revert "ADT: Migrate users of AlignedCharArrayUnion to std::aligned_union_t, NFC" 2020-12-14 17:04:06 -08:00
Driver [Driver] Support default libc++ library location on Darwin 2021-04-20 12:30:35 -07:00
Edit [Matrix] Implement C-style explicit type conversions for matrix types. 2021-04-10 11:48:41 +01:00
Format clang-format: [JS] do not merge imports and exports. 2021-04-20 13:08:18 +02:00
Frontend [clang][cli] NFC: Move conditional LangOptions parsing/generation 2021-04-19 11:25:40 +02:00
FrontendTool [NFC] Refactor Registry loops to range for 2020-06-19 00:40:10 +01:00
Headers [CUDA][HIP] Allow non-ODR use of host var in device 2021-04-19 14:45:24 -04:00
Index [index] Improve macro indexing support 2021-04-06 09:12:14 -07:00
IndexSerialization [index-while-building] Fix build with -DBUILD_SHARED_LIBS=True 2020-08-20 15:12:56 +01:00
Lex [C++2b] Support size_t literals 2021-03-31 13:36:23 +00:00
Parse [clang][parser] Unify rejecting (non) decl stmts with gnu attributes 2021-04-19 12:43:55 +02:00
Rewrite [clang] DeltaTree::AddDelta - fix "initialization is never read" clang-tidy warning. NFCI. 2021-03-02 15:01:34 +00:00
Sema clang: Update libstdc++ issue workaround 2021-04-20 11:34:12 -07:00
Serialization [ASTReader] Only mark module out of date if not already compiled 2021-04-16 17:57:03 -07:00
StaticAnalyzer [analyzer] [NFC] Eliminate dispatchCast, evalCastFromNonLoc and evalCastFromLoc functions from SValBuilder 2021-04-13 18:56:04 +03:00
Testing Fix MSVC "not all control paths return a value" warning. NFC. 2020-06-05 10:45:59 +01:00
Tooling [AST] Fix comparison to of SourceRanges in container 2021-04-19 21:19:21 +01:00
CMakeLists.txt APINotes: add APINotesYAMLCompiler 2020-11-05 18:55:13 +00:00