1. 21 Feb, 2019 2 commits
  2. 20 Feb, 2019 13 commits
  3. 19 Feb, 2019 20 commits
  4. 18 Feb, 2019 5 commits
    • Vitaly Stakhovsky's avatar
    • 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
    • Brad King's avatar
      Restore unconditional use of "standard" include directories · 5c171ca8
      Brad King authored
      `CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES` is meant to unconditionally
      add explicitly specified include directories to compile lines.  In
      commit 5f34bdc7 (cmLocalGenerator: Refactor
      `GetIncludeDirectoriesImplicit` method, 2019-01-25, v3.14.0-rc1~65^2~1)
      a condition was accidentally added to exclude implicit include
      directories.  Drop that condition.
      
      Fixes: #18936
      5c171ca8
    • Brad King's avatar
      Prefix implicit include directories with sysroot on construction · 9502276f
      Brad King authored
      Since commit 7cd65c97 (Add CMAKE_SYSROOT variable to set --sysroot
      when cross compiling., 2013-04-13, v3.0.0-rc1~342^2) we have prefixed
      the value of `CMAKE_SYSROOT` to implicit include directories.  This was
      done because we hard-coded `/usr/include` as an implicit include
      directory without accounting for the sysroot.  Instead we should prefix
      the hard-coded paths when they are constructed.  Update the
      `Platform/UnixPaths` module to do this as `Platform/Darwin` already
      does.
      
      Since commit 5990ecb7 (Compute implicit include directories from
      compiler output, 2018-12-07, v3.14.0-rc1~108^2) the values of the
      `CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES` variables are computed from
      a real compiler invocation so they already account for the sysroot
      prefix.  In commit 6fc33829 (Update logic for sysroot in detected
      implicit include directories, 2019-02-13, v3.14.0-rc2~6^2) we attempted
      to apply the prefix conditionally, but that is incorrect because the
      compiler's real implicit include directories are not all under the
      sysroot.  Instead assume that all implicit include directories in
      `CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES` already have the sysroot
      prefix if needed.  Code that constructs the value must be responsible
      for that because it is the only place that knows.
      9502276f
    • Saleem Abdulrasool's avatar
      Ninja: remove duplicate local variable (NFC) · c489c3e7
      Saleem Abdulrasool authored
      Remove the second reference to the generator target.
      c489c3e7