1. 27 Jun, 2018 1 commit
    • Zack Galbreath's avatar
      ctest_submit: Check CA file during CDASH_UPLOAD · 4464ef21
      Zack Galbreath authored and Brad King's avatar Brad King committed
      This fixes a bug where ctest(SUBMIT CDASH_UPLOAD ...) would fail when
      attemping to submit to a site bearing a genuine SSL certificate.
      This code path was missing a call to cmCurlSetCAInfo() which loads
      the certificate authority file.
  2. 04 Jun, 2018 1 commit
  3. 01 Jun, 2018 1 commit
    • Kitware Robot's avatar
      Revise C++ coding style using clang-format-6.0 · d7204e64
      Kitware Robot authored and Brad King's avatar Brad King committed
      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.
  4. 25 May, 2018 1 commit
  5. 11 May, 2018 1 commit
  6. 09 May, 2018 1 commit
    • Kyle Edwards's avatar
      ctest_start: read model from TAG file · 56378109
      Kyle Edwards authored
      This change reworks ctest_start() so that simply calling
      ctest_start(APPEND) will read all the information from the TAG file.
      On top of that, it relaxes the argument parsing for ctest_start() to
      allow greater flexibility in the argument ordering, and the documentation
      for ctest_start() has been cleaned up.
  7. 05 Apr, 2018 1 commit
  8. 28 Mar, 2018 1 commit
  9. 27 Mar, 2018 1 commit
    • Brad King's avatar
      ctest_update: Fix crash when handling svn externals · 27f03355
      Brad King authored
      Refactoring in commit v3.9.0-rc1~156^2 (c++: prefer vectors over lists,
      2017-05-04) switched `cmCTestSVN::Repositories` from `std::list` to
      `std::vector`.  This can cause re-allocation when svn externals are
      processed and break the `RootInfo` pointer that is supposed to point at
      the first repository element.  Switch back to `std::list` so that the
      address remains stable.
      Fixes: #17854
  10. 08 Mar, 2018 1 commit
  11. 07 Mar, 2018 1 commit
  12. 05 Mar, 2018 1 commit
    • Brad King's avatar
      CTest: Add options to control test process affinity to CPUs · 6be53c66
      Brad King authored
      In commit v2.8.0~170 (ENH: Added ctest test options PROCESSORS and
      RUN_SERIAL, 2009-09-07) CTest learned to track the number of processors
      allocated to running tests in order to balance it against the desired
      level of parallelism.  Extend this idea by introducing a new
      `PROCESSOR_AFFINITY` test property to ask that CTest run a test
      with the CPU affinity mask set.  This will allow a set of tests
      that are running concurrently to use disjoint CPU resources.
  13. 31 Jan, 2018 1 commit
    • Pavel Solodovnikov's avatar
      Reduce raw string pointers usage. · 653b8946
      Pavel Solodovnikov authored
      * Change some functions to take `std::string` instead of
        `const char*` in the following classes: `cmMakeFile`, `cmake`,
        `cmCoreTryCompile`, `cmSystemTools`,  `cmState`, `cmLocalGenerator`
        and a few others.
      * Greatly reduce using of `const char*` overloads for
        `cmSystemTools::MakeDirectory` and `cmSystemTools::RelativePath`.
      * Remove many redundant `c_str()` conversions throughout the code.
  14. 26 Jan, 2018 2 commits
    • Kyle Edwards's avatar
      cmCTestScriptHandler: Add new field ShouldRunCurrentScript · 74092d92
      Kyle Edwards authored
      This is to avoid scope issues with CTEST_RUN_CURRENT_SCRIPT. If
      ctest_start() is called within a function scope, the value of
      CTEST_RUN_CURRENT_SCRIPT that it sets doesn't make it to the global
      scope. With this change, ctest_start() no longer sets
      CTEST_RUN_CURRENT_SCRIPT, and instead sets a field directly in
      cmCTestScriptHandler. The old behavior of CTEST_RUN_CURRENT_SCRIPT
      has also been kept for projects and tests that rely on setting it.
    • Pavel Solodovnikov's avatar
      Reduce allocation of temporary values on heap. · c85bb007
      Pavel Solodovnikov authored
      - Use `std::move` while inserting temporary results into vectors.
      - Change `push_back` to `emplace_back` where appropriate.
  15. 25 Jan, 2018 2 commits
  16. 23 Jan, 2018 3 commits
    • Wouter Klouwen's avatar
      Make use of std::chrono throughout every component · e6a80ccf
      Wouter Klouwen authored
      This commit continues the changes made in CTest to support std::chrono
      applying it throughout every component where a duration was used.
      No functional change intended.
    • Wouter Klouwen's avatar
      CTest: add safe conversion from cmDuration to integer types · ff62b005
      Wouter Klouwen authored and Brad King's avatar Brad King committed
      A problem area by recent refactoring of time to std::chrono has been the
      unsafe conversion from duration<double> to std::chrono::seconds, which
      is of an unspecified integer type.
      This commit adds a template function that for a given type provides a
      safe conversion, effectively clamping a duration<double> into what fits
      safely in that type. A specialisation for int and unsigned int are
      It changes the protential problem areas to use this safe function.
    • Wouter Klouwen's avatar
      CTest: introduce cmDuration · 695951bc
      Wouter Klouwen authored and Brad King's avatar Brad King committed
      This commit introduces cmDuration as a typedef for
      std::chrono::duration<double, std::ratio<1>>. It is less verbose and
      provides for a point to put future common functionality for durations.
      No functional change intended.
  17. 17 Jan, 2018 2 commits
    • Brad King's avatar
      CTest: Fix process output read error cases · a6e9b9c9
      Brad King authored
      The libuv documentation states that the stream read callback may
      be called with `nread == 0` for EAGAIN.  Handle this gracefully.
      It also states that the callee is responsible for closing the
      stream on error.  Always close the stream for `nread < 0`.
    • Brad King's avatar
      CTest: Fix decoding of MBCS character split by buffering · c10119df
      Brad King authored
      Use a single `cmProcessOutput` instance persistently to decode
      all output of a test process so that partial character bytes
      can be buffered.
  18. 10 Jan, 2018 8 commits
  19. 08 Jan, 2018 5 commits
  20. 03 Jan, 2018 1 commit
  21. 11 Dec, 2017 1 commit
    • Brad King's avatar
      CTest: Use integer-representable value for "infinite" timeout · ba6caafa
      Brad King authored
      Refactoring in commit 66419bc0 (CTest: convert timeouts to
      std::chrono::duration, 2017-11-20) changed out "infinite" timeout to a
      value not representable by a 64-bit integer.  This causes undefined
      behavior when e.g. KWSys Process converts the duration to a `long` to
      interact with system APIs.  Use the old `1.0e7` maximum value.
  22. 08 Dec, 2017 3 commits