diff options
author | Petr Hosek <phosek@google.com> | 2022-03-28 14:12:23 -0700 |
---|---|---|
committer | Petr Hosek <phosek@google.com> | 2022-05-06 14:06:25 -0700 |
commit | 203455c85ad03325ce2d77f067f6ac953f2a32ce (patch) | |
tree | 9c3bf2ca0137b57d6ec5ad3c96054a4276f8d06d /runtimes | |
parent | 981523b2e4675d4be496a333583b2f728c057d02 (diff) | |
download | llvm-203455c85ad03325ce2d77f067f6ac953f2a32ce.tar.gz |
[CMake][libcxx] Use target_include_directories for libc++ headers
This is the idiomatic way to handle include directories in CMake.
Differential Revision: https://reviews.llvm.org/D122614
Diffstat (limited to 'runtimes')
-rw-r--r-- | runtimes/CMakeLists.txt | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/runtimes/CMakeLists.txt b/runtimes/CMakeLists.txt index 1783e0114291..2d7f853a9ac2 100644 --- a/runtimes/CMakeLists.txt +++ b/runtimes/CMakeLists.txt @@ -92,6 +92,17 @@ include(LLVMCheckCompilerLinkerFlag) include(CheckCCompilerFlag) include(CheckCXXCompilerFlag) +# CMake omits default compiler include paths, but in runtimes build, we use +# -nostdinc and -nostdinc++ and control include paths manually so this behavior +# is undesirable. Resetting CMAKE_{LANG}_IMPLICIT_INCLUDE_DIRECTORIES disables +# this behavior. See https://gitlab.kitware.com/cmake/cmake/-/issues/19227 for +# further details no this topic. +# +# TODO: We may want to consider filtering out only the paths that are within +# the toolchain installation and leaving the system paths. +set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "") +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "") +set(CMAKE_ASM_IMPLICIT_INCLUDE_DIRECTORIES "") check_c_compiler_flag("" LLVM_RUNTIMES_LINKING_WORKS) if (NOT LLVM_RUNTIMES_LINKING_WORKS) |