1. 03 Aug, 2017 1 commit
  2. 25 Jul, 2017 1 commit
  3. 08 Jun, 2017 1 commit
    • Brad King's avatar
      SystemTools: Remove RemoveEmptyPathElements method · 7e04a3d2
      Brad King authored
      This method was added recently but we've found another solution for its
      intended use case.  Removing empty path elements can corrupt paths that
      depend on a trailing empty component to preserve a trailing slash.
      
      Since this method was meant to complement SplitPath and JoinPath, update
      their documentation to explain how they treat empty components.
      7e04a3d2
  4. 30 May, 2017 3 commits
  5. 06 May, 2017 1 commit
  6. 17 Apr, 2017 2 commits
  7. 31 Mar, 2017 1 commit
  8. 29 Mar, 2017 1 commit
  9. 03 Mar, 2017 1 commit
  10. 02 Feb, 2017 1 commit
  11. 10 Jan, 2017 1 commit
    • Ben Boeckel's avatar
      SystemTools: use PathExists where appropriate · 45db0937
      Ben Boeckel authored
      The `Touch` method should care about existence and directory creation
      should also be guarded against unreadable paths as well. In addition,
      fix a path existence check which should have been updated before.
      45db0937
  12. 09 Jan, 2017 1 commit
  13. 04 Nov, 2016 3 commits
    • Kitware Robot's avatar
      Revise C++ coding style using clang-format · 6c973b46
      Kitware Robot authored
      Run the `clang-format.bash` script to update all our C and C++ code to a new
      style defined by `.clang-format`.  Use `clang-format` version 3.8.
      
      * If you reached this commit for a line in `git blame`, re-run the blame
        operation starting at the parent of this commit to see older history
        for the content.
      
      * See the parent commit for instructions to rebase a change across this
        style transition commit.
      
      Change-Id: Ie3aedc03bfe5c3999d4a077fafb8c6f3bbffc5c5
      6c973b46
    • Brad King's avatar
      Simplify KWSys per-source license notices · c41c1bc4
      Brad King authored
      Per-source copyright/license notice headers that spell out copyright holder
      names and years are hard to maintain and often out-of-date or plain wrong.
      Precise contributor information is already maintained automatically by the
      version control tool.  Ultimately it is the receiver of a file who is
      responsible for determining its licensing status, and per-source notices are
      merely a convenience.  Therefore it is simpler and more accurate for
      each source to have a generic notice of the license name and references to
      more detailed information on copyright holders and full license terms.
      
      Our `Copyright.txt` file now contains a list of Contributors whose names
      appeared source-level copyright notices.  It also references version control
      history for more precise information.  Therefore we no longer need to spell
      out the list of Contributors in each source file notice.
      
      Replace KWSys per-source copyright/license notice headers with a short
      description of the license and links to `Copyright.txt` and online
      information available from "https://cmake.org/licensing#kwsys".
      
      Run the `filter-notices.bash` script to perform the replacements mechanically.
      Manually fix up the shebang line in one file.
      
      Change-Id: I8497f7c868664dcf54a8608ab302ad93c860b334
      c41c1bc4
    • Brad King's avatar
      Sort includes to stabilize include order w.r.t. clang-format · 15e90a3c
      Brad King authored
      The clang-format tool sorts `#include` lines within contiguous blocks.
      Separate blocks with blank lines and sort the include lines within them
      so that clang-format does not re-order anything.
      
      Change-Id: I96d6828f470b9a234464972172d46afab322487c
      15e90a3c
  14. 07 Oct, 2016 1 commit
    • Brad King's avatar
      SystemTools: Re-implement Strucmp · dfe9b386
      Brad King authored
      The current implementation was added by commit 5c8693bc (remove
      redundant function and eliminate need for strcasecmp, 2003-04-11).  The
      code was taken from Graphviz in 2003 from a source file that at the time
      was distributed under terms of the Common Public License, Version 1.0.
      While the actual content is simple and likely not copyrightable, clarify
      the licensing status by simply re-implementing the function from scratch
      using another approach.
      
      Change-Id: I44f72b215577af9e3de234b5ef03113c580a3bd6
      dfe9b386
  15. 29 Sep, 2016 1 commit
  16. 14 Sep, 2016 1 commit
    • Brad King's avatar
      SystemTools: Teach GetActualCaseForPath to convert as much as possible · c4049689
      Brad King authored
      If only some leading components of the input path exist then convert
      those and leave the rest unchanged.  This way if a file path is
      constructed using GetActualCaseForPath and created on disk, then a
      following GetActualCaseForPath on the same now-existing path will return
      the same value.
      
      Change-Id: I6e09a4d411f8bf107312f39d7409ba2d22bf176b
      CMake-Issue: 16295
      c4049689
  17. 24 Aug, 2016 1 commit
  18. 03 Aug, 2016 1 commit
    • Ben Boeckel's avatar
      SystemTools: add a PathExists method · 6d23dd7e
      Ben Boeckel authored
      This method checks if a path by the given name exists. The problem with
      FileExists is that it returns `false` even for broken (or
      self-referential) symlinks which may not be what the user wants.
      
      Change-Id: I71b8af6e12a5ae4b1319a3bec83db6c3cef36f90
      6d23dd7e
  19. 02 Aug, 2016 1 commit
  20. 01 Aug, 2016 1 commit
  21. 18 Jul, 2016 1 commit
  22. 15 Jul, 2016 2 commits
  23. 14 Jul, 2016 4 commits
  24. 31 Mar, 2016 2 commits
  25. 07 Mar, 2016 1 commit
  26. 19 Feb, 2016 1 commit
    • Ben Boeckel's avatar
      SystemTools: support deleting junction points · de83c4d4
      Ben Boeckel authored
      Junction points can exist in directories which may be manipulated within
      CMake. The problem is that junction points are currently completely
      unsupported within CMake. Since junctions need special API calls to
      manipulate, DeleteFileW does not work and instead DeviceIoControl must
      be used. Token privilege API calls must also be used to be able to
      actually open the junction points.
      
      Change-Id: I3e4ff3b7a600146ac3574d2b17890eef07d06496
      de83c4d4
  27. 08 Feb, 2016 1 commit
  28. 11 Jan, 2016 2 commits
  29. 03 Dec, 2015 1 commit