Skip to content
  • Brad King's avatar
    Do not explicitly report "standard" include directories as implicit · 890bae52
    Brad King authored
    In commit 1293ed85 (ParseImplicitIncludeInfo: keep implicit incl.
    consistent when rerunning cmake, 2019-01-30, v3.14.0-rc1~26^2) we did
    not account for `CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES`.  This
    variable lets platform modules or toolchain files specify directories
    that are to be explicitly passed as standard include directories.  These
    include directories are used by the test project from which we extract
    implicit include directories so they appear in the parsed results
    whether or not the compiler really considers them implicit.  Exclude
    these entries from the computed implicit include directories since they
    are not actually implied by the compiler when we invoke it with
    "standard" include directories passed explicitly.
    
    Instead teach the build system generators to treat the "standard"
    directories as implicit for purposes of excluding them from appearing
    earlier in the compiler command line due to `include_directories` and
    `target_include_directories` calls.
    
    Issue: #18936, #18944
    890bae52