1. 31 May, 2018 1 commit
    • Kitware Robot's avatar
      Revise C++ coding style using clang-format-6.0 · 828b6837
      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 6.0.
      
      * 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.
      828b6837
  2. 01 Nov, 2017 1 commit
  3. 07 Oct, 2017 1 commit
  4. 06 Oct, 2017 1 commit
  5. 15 May, 2017 2 commits
  6. 06 May, 2017 1 commit
  7. 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
  8. 09 Mar, 2016 1 commit
  9. 22 Feb, 2016 1 commit
    • Zack Galbreath's avatar
      Process: Allow timeout to be changed after child starts · 4847aedd
      Zack Galbreath authored
      Recompute `TimeoutTime` after `Timeout` changes so that one may modify
      the timeout of a process after it has started running by calling the
      normal `kwsysProcess_SetTimeout` method.
      
      Change-Id: I460a02d0d3c5f107b844abb56e39f5c844e7e3fb
      4847aedd
  10. 08 Feb, 2016 1 commit
  11. 30 Jul, 2015 1 commit
    • James Johnston's avatar
      Process: Fix error message for startup failure on Windows · f63febb7
      James Johnston authored
      Since commit faff2ab0 (Process: Wait for children to terminate on Ctrl+C,
      2015-06-30) we do not report the GetLastError() from CreateProcessW()
      failure.  Refactor kwsysProcessCleanup to pass the error code in so
      that we can always call GetLastError() immediately after a failure.
      
      Change-Id: I2b7950560c8bde2e29070c87f4927c51dca32e39
      f63febb7
  12. 15 Jul, 2015 2 commits
    • James Johnston's avatar
      Process: Added initial support for process groups. · ef517b19
      James Johnston authored
      kwsysProcess_SetOption now allows you to specify a new
      kwsysProcess_Option_CreateProcessGroup option, which creates the
      process in a new process group (Windows/UNIX) and a new session
      (UNIX).  Child process groups receive signals separately from their
      parents.  This allowed for the introduction of the new
      kwsysProcess_Interrupt function, which allows one to safely request
      the child process in its own group to terminate.  The Ctrl+C handler
      also manually sends that signal to child process groups, since it's
      no longer automatic.
      
      Change-Id: Id0a420ad65f1b1c1d299ac0eb95fbb8b50a52409
      ef517b19
    • James Johnston's avatar
      Process: Wait for children to terminate on Ctrl+C. · faff2ab0
      James Johnston authored
      The following applies to any KWSys console app on Windows or UNIX
      (e.g. cmake.exe):  The default behavior of such an app when Ctrl+C is
      pressed is to call ExitProcess or _exit.  If the user has a
      subprocess open (e.g. by way of cmake --build) when this happens, the
      subprocess will be orphaned because the kwsys-based program will
      immediately exit.  This can lead to odd behavior such as the orphaned
      subprocess continuing to run and mix output with the operating system
      shell.  We prevent this behavior on Windows by tracking all
      subprocesses and waiting for their termination when Ctrl+C is pressed
      before allowing the call to ExitProcess to proceed.  On UNIX, we reap
      every single child process and then call _exit.
      
      Change-Id: Iebd2eedb1c06719e9797dd5b1309d473145476a8
      faff2ab0
  13. 07 Jul, 2015 1 commit
  14. 05 May, 2015 2 commits
    • Brad King's avatar
      Process: Add option to merge stdout/stderr · 34fceb50
      Brad King authored
      When enabled, ignore all stderr pipe configuration options and
      just give the child a copy of stdout as its stderr.
      
      Change-Id: I87a64657cc701b706da78f7bfc56ad0071383372
      34fceb50
    • Brad King's avatar
      Process: Refactor child pipe creation · 8c8b2273
      Brad King authored
      Consolidate logic to prepare stdin/stdout/stderr in the same way
      before starting any processes.  This will simplify alternative
      approaches to select the child pipes.
      
      Change-Id: I36175a8cfc2578543103297420908a539ad71a3a
      8c8b2273
  15. 20 Jan, 2015 1 commit
  16. 25 Sep, 2014 1 commit
    • Brad King's avatar
      Suppress deprecation warnings for GetVersionEx · 29ffaf43
      Brad King authored
      Visual Studio 12 (2013) deprecated GetVersionEx:
      
        warning C4996: 'GetVersionExW': was declared deprecated
      
      in favor of either "versionhelpers.h" or VerifyVersionInfo, neither of
      which exist in some of the older compilers we support.  Rather than
      try to port conditionally to VerifyVersionInfo, simply suppress the
      warning for now.
      
      Change-Id: I85a6547c7dc25a104d4fe9b4034efdc5cea215ef
      29ffaf43
  17. 31 Oct, 2013 1 commit
  18. 14 Nov, 2012 1 commit
    • Brad King's avatar
      Process: Remove support for Windows 98 · fea37696
      Brad King authored
      We no longer support Windows 98.  Remove Win9x-specific code and
      supporting infrastructure.  This simplifies the implementation in several
      places.
      
      Change-Id: Ic3062a81e5880b649feeedf397bf846400f12526
      fea37696
  19. 11 Jun, 2010 1 commit
  20. 30 Nov, 2009 1 commit
    • Brad King's avatar
      KWSys: Fix process tree kill on 64-bit Windows · b8b6840c
      Brad King authored
      We enumerate processes to identify those whose parent is being killed so
      that we can recursively kill the children.  Enumeration uses the
      Process32(First|Next) windows API functions, which accept PROCESSENTRY32
      objects to be filled.  This commit corrects the declaration of the entry
      structure to account for its size on 64-bit Windows.
      b8b6840c
  21. 28 Sep, 2009 1 commit
    • Brad King's avatar
      Convert KWSys to OSI-approved BSD License · 62db264e
      Brad King authored
      This converts the KWSys license to a pure 3-clause OSI-approved BSD
      License.  We drop the previous license clause requiring modified
      versions to be plainly marked.  We also update the KWSys copyright to
      cover the full development time range.
      62db264e
  22. 25 Jun, 2009 1 commit
  23. 10 May, 2008 1 commit
  24. 24 Jul, 2007 1 commit
  25. 12 Apr, 2007 1 commit
  26. 09 Oct, 2006 1 commit
  27. 03 Oct, 2006 1 commit
  28. 27 Sep, 2006 1 commit
  29. 21 Sep, 2006 1 commit
  30. 17 Jul, 2006 1 commit
  31. 19 Jun, 2006 1 commit
  32. 15 Jun, 2006 1 commit
  33. 21 May, 2006 1 commit
  34. 30 Mar, 2006 1 commit
  35. 28 Feb, 2006 1 commit