Skip to content
  • Brad King's avatar
    Do not exclude include directories made implicit by CPATH · 2d0b0e2b
    Brad King authored
    Entries of the `CPATH` environment variable are implicitly searched as
    include directories by some C/C++ compilers.  Since commit 5990ecb7
    (Compute implicit include directories from compiler output, 2018-12-07,
    v3.14.0-rc1~108^2) these entries are detected by CMake and included in
    the `CMAKE_{C,CXX}_IMPLICIT_INCLUDE_DIRECTORIES` variables.
    
    However, we should not exclude them from explicit specification via `-I`
    or particularly `-isystem` because they are meant as user-specified
    include directories that can be re-ordered without breaking compiler
    builtin headers.  In particular, we need explicit requests via
    `include_directories` with the `SYSTEM` option to result in `-isystem`
    so that third-party headers do not produce warnings.
    
    Co-Author: Ben Boeckel <ben.boeckel@kitware.com>
    Fixes: #19291
    2d0b0e2b