1. 13 May, 2014 1 commit
  2. 12 Feb, 2014 1 commit
    • Brad King's avatar
      Windows: Make file delete/rename retry configurable · 7b1f966a
      Brad King authored
      Several CMake operations need to replace files in rapid succession.
      This commonly fails on Windows due to filesystem lock behavior so
      we have retry loops.  No matter how many times we retry or how long
      we delay there will inevitably be someone with an environment that
      needs more.  Make the retry count and delay configurable in the
      Windows Registry keys:
      
       {HKCU,HKLM}/Software/Kitware/CMake/Config
      
      in DWORD values
      
       FilesystemRetryCount = Number of tries
       FilesystemRetryDelay = Delay in milliseconds between tries
      
      Leave the feature undocumented for now to see how it goes.
      7b1f966a
  3. 07 Jan, 2014 1 commit
  4. 06 Jan, 2014 1 commit
  5. 09 Dec, 2013 1 commit
  6. 15 Nov, 2013 2 commits
  7. 12 Nov, 2013 1 commit
    • Brad King's avatar
      Refactor internal resource location APIs and initialization · d1526f82
      Brad King authored
      Rename cmSystemTools::FindExecutableDirectory to FindCMakeResources.
      Teach it to compute the locations of cmake, ctest, cpack, ccmake, and
      cmake-gui executables, and the location of CMAKE_ROOT.  Provide this
      information from static cmSystemTools::Get<resource>() methods.
      Refactor code that needs these locations to use the new APIs.
      
      Teach FindCMakeResources to use the OS X system API to lookup the
      executable location.  When running from the CMake build tree itself,
      leave a file in the tree that FindCMakeResources can use to read the
      location of the source tree.  This avoids the need to compile the source
      tree location into a binary that may be installed and used without the
      source tree.
      
      Teach the QtDialog on OS X to create a "cmake-gui" symlink in the build
      tree next to "cmake" and the other tools, as is already done in the
      install tree for the application bundle.  This ensures a consistent set
      of executables are available in one directory.
      d1526f82
  8. 01 Nov, 2013 2 commits
    • Brad King's avatar
      cmake: Avoid '-E tar' failure to extract symlinks on Windows (#13251) · 4c383b52
      Brad King authored
      If a symlink fails to extract and the host system is Windows then report
      a warning and skip the entry instead of failing.  This will allow
      archives containing symbolic links to be extracted on Windows with
      somewhat gracefully degraded behavior.
      4c383b52
    • Brad King's avatar
      cmSystemTools: Re-order extract_tar logic · 0d8552c4
      Brad King authored
      Simplify extraction message logic to be easier to follow and to write a
      newline before any error messages that may be produced.  Also flip
      handling of the archive_write_header return code to handle success in
      the "then" case and failure in the "else" case.
      0d8552c4
  9. 19 Oct, 2013 1 commit
  10. 16 Oct, 2013 1 commit
    • Brad King's avatar
      Teach --help-* options to load documentation from .rst files · ec6df367
      Brad King authored
      Install the Help directory next to Modules to make it available in CMake
      distributions.  Use cmRST to read Help .rst documents and print them as
      help output.
      
      Add options
      
       --help-manual-list
       --help-manual
      
      to list available manuals or print one of them.  Implement the options
      
       --help-commands
       --help-modules
       --help-policies
       --help-properties
       --help-variables
      
      by mapping to the corresponding manual page.  Implement the options
      
       --help-command-list
       --help-module-list
       --help-policy-list
       --help-property-list
       --help-variable-list
      
      by globbing the available Help .rst documents of the corresponding type
      and reading their titles.  Implement the options
      
       --help-command
       --help-module
       --help-policy
       --help-property
       --help-variable
      
      by globbing the matching Help .rst document(s) and printing them.
      ec6df367
  11. 29 Jul, 2013 1 commit
  12. 27 Jul, 2013 1 commit
  13. 16 Jul, 2013 1 commit
    • Brad King's avatar
      VS: Avoid leaking child process output back to IDE (#14266) · 45d2966d
      Brad King authored
      The VS IDE sets the environment variable VS_UNICODE_OUTPUT when
      executing build rules in order to tell MS tools to report output through
      a back door instead of through stdout/stderr.  Unset this variable so
      that CMake can capture or properly redirect all output from processes it
      runs even when running inside a VS IDE build environment.
      
      This generalizes the special cases fixed by commit 80d045b0 (When
      GetPrerequisites.cmake runs dumpbin while running inside the VS IDE...,
      2008-05-01) and commit 44aff73d (ExternalProject: Avoid bleed-through
      output when logging, 2011-01-06), so drop special handling of
      VS_UNICODE_OUTPUT in those instances.
      45d2966d
  14. 26 Jun, 2013 1 commit
  15. 21 Jun, 2013 1 commit
  16. 12 Jun, 2013 1 commit
  17. 05 Jun, 2013 1 commit
  18. 03 Jun, 2013 1 commit
    • Clinton Stimpson's avatar
      OS X: Add RPATH support for Mac. · 94e7fef2
      Clinton Stimpson authored and Brad King's avatar Brad King committed
      RPATH support is activated on targets that have the MACOSX_RPATH
      property turned on.
      For install time, it is also useful to set INSTALL_RPATH to help
      find dependent libraries with an @rpath in their install name.
      
      Also adding detection of rpath conflicts when using frameworks.
      94e7fef2
  19. 27 Mar, 2013 1 commit
  20. 04 Feb, 2013 1 commit
    • Brad King's avatar
      Fix cmSystemTools::RenameFile race on Windows · 59b568e5
      Brad King authored
      Since commit d46d8df0 (Re-implemented cmGeneratedFileStream to look like a
      real stream and replace the destination file atomically, 2004-11-03) our
      RenameFile implementation tries to deal with MoveFile not replacing
      read-only files.  In order to avoid the Get/SetFileAttributes pair we used
      stat to test for existence of the destination file.  This has a race in
      which the destination could be created between the test for existence and
      the MoveFile call.
      
      Remove the stat call and use GetFileAttributes to detect whether the file
      exists.  This shortens the race but does not eliminate it.  Use a loop to
      try multiple times in case we lose the race.  While at it, drop Win9x
      support and always use MoveFileEx.
      59b568e5
  21. 26 Nov, 2012 1 commit
  22. 20 Nov, 2012 1 commit
    • Stephen Kelly's avatar
      Always use the auto_ptr from cmsys. · ddc05205
      Stephen Kelly authored
      This is for consistency throughout cmake. The cmsys version exists
      becaues uses of auto_ptr types as return types does not work with
      some implementations in ancient compilers.
      ddc05205
  23. 24 Apr, 2012 1 commit
    • Brad King's avatar
      CTest: Simplify environment save/restore · b10c5cbb
      Brad King authored
      Replace use of AppendEnv/RestoreEnv pairs with instances of
      SaveRestoreEnvironment.  Simplify the signature of AppendEnv and use it
      in place of similar loops elsewhere.  Move the RestoreEnv implementation
      inside the SaveRestoreEnvironment destructor which is the only place
      left that calls it.
      b10c5cbb
  24. 03 Mar, 2012 1 commit
  25. 02 Feb, 2012 1 commit
  26. 02 Jan, 2012 1 commit
    • Clinton Stimpson's avatar
      cmake-gui: Improve interrupt granularity to fix bug 12649. · 131eed66
      Clinton Stimpson authored
      Instead of enabling interrupt only when a progress or message callback is called, add a new callback specifically for
      interrupt.  This new callback is called from GetFatalErrorOccured() so cmake-gui can immediately report interrupt status
      instead of calling queuing a call to cmSystemTools::SetFatalErrorOccured() and waiting for the progress or message
      callback to be called to process that queued call.
      131eed66
  27. 22 Dec, 2011 1 commit
  28. 16 Nov, 2011 1 commit
  29. 28 Jul, 2011 5 commits
  30. 07 Jun, 2011 1 commit
  31. 26 May, 2011 1 commit
  32. 19 May, 2011 1 commit
    • Brad King's avatar
      Explicitly cast time value in cmSystemTools::RandomSeed · 3d92c8c8
      Brad King authored
      Use static_cast to avoid warnings like
      
       conversion to ‘unsigned int’ from ‘__time_t’ may alter its value
       conversion to ‘unsigned int’ from ‘__suseconds_t’ may alter its value
      
      We do not care if the value is truncated because we are looking for just
      32 bits anyway.
      3d92c8c8
  33. 18 May, 2011 2 commits