1. 13 Feb, 2020 1 commit
  2. 18 Aug, 2019 1 commit
  3. 29 May, 2019 1 commit
    • Zsolt Parragi's avatar
      Fixing issues when building with clang 8.0 on Windows · 887b1da5
      Zsolt Parragi authored
      * Clang with the MSVC STL requires C++14
      * Deprecatoion warning suppressions were specific to MSVC and Intel
      * An assignment inside a condition resulted in a warning
      * kwsysProcessSetExitException was declared, but never defined or used
      887b1da5
  4. 01 May, 2019 1 commit
    • Ken Martin's avatar
      SystemInformation: Implement backtrace support on Windows · 43c6e2fd
      Ken Martin authored and Brad King's avatar Brad King committed
      The prior code had no implementation on windows. This code relies on
      dbghelp.dll which is a standard part of the operating system. It is
      implemented for OS from Vista forward when compiled with MSVC version
      1800 or later (VS2013).
      43c6e2fd
  5. 17 Apr, 2019 1 commit
    • Ben Boeckel's avatar
      SystemTools: support hiding the translation map · 84bd7c9e
      Ben Boeckel authored and Brad King's avatar Brad King committed
      When determining full paths, CMake would treat the as-called path for
      the source and build directories as real paths even if they were
      symlinks. This causes problems when determining the relative path
      between the source and build directories when they are symlinks.
      
      Take the following setup as an example:
      
          /mnt/src/project/
              src/
              build/ -> /mnt/builds/project/build
      
      With the translation map and /mnt/src/project/build/ as the build
      directory, CMake would use ../src as the relative path to the source
      tree from the build tree rather than ../../../src/project/src and
      lookups using ../src would fail. If the build directory were instead
      used *as* /mnt/builds/project/build, everything would work just
      fine.
      
      This patch makes the core logic which does this logic optional so that
      it can be experimented with in CMake itself.
      84bd7c9e
  6. 25 Mar, 2019 2 commits
  7. 22 Feb, 2019 1 commit
    • Brad King's avatar
      Configure: Drop Large File Support macro definitions · 363bf5ab
      Brad King authored
      Historically we have defined macros like
      
      * `_LARGEFILE_SOURCE`
      * `_LARGEFILE64_SOURCE`
      * `_LARGE_FILES`
      * `_FILE_OFFSET_BITS`
      
      in `Configure.h` to activate large file support in system headers.  This
      requires consuming projects to include the header at the beginning of
      every translation unit in order to get the macros defined consistently.
      
      Instead these macros should be defined by the build system on the
      compiler command line.  Drop them from KWSys in favor of that approach.
      The macros are not needed as often as they once were anyway.
      363bf5ab
  8. 30 Jan, 2019 2 commits
  9. 23 Jan, 2019 1 commit
  10. 24 Oct, 2018 1 commit
  11. 04 Oct, 2018 1 commit
  12. 09 Jul, 2018 1 commit
    • Brad King's avatar
      XL: Restore suppression of infinite loop warning in process test · aebe4597
      Brad King authored
      Our use of the `-qsuppress=` flag to suppress this warning was removed
      by commit 51e95ba7 (XL: Fix compatibility with newer clang-based XL on
      Linux, 2017-04-28) because XL 13.1.[1-6] for Linux does not support the
      flag.  XL 16.1 restores support for the flag.  Restore our use of it for
      this version.  Suppress the warning on intermediate versions by blocking
      all warnings with `-w`.
      aebe4597
  13. 24 Apr, 2018 1 commit
    • Kyle Edwards's avatar
      Fix recent regression in installation of namelink · e5733515
      Kyle Edwards authored
      The check for whether or not to install a namelink depends on
      KWSYS_BUILD_SHARED, but this variable wasn't being set until later
      in CMakeLists.txt, causing the namelink to not be installed if
      KWSYS_BUILD_SHARED is not explicitly set. Fix this by moving the
      variable assignment closer to the top of the file.
      e5733515
  14. 19 Apr, 2018 1 commit
  15. 20 Feb, 2018 1 commit
    • Brad King's avatar
      Fix include directory usage requirement for build tree · 6e190d9a
      Brad King authored
      The include directory usage requirement for the build tree was added by
      commit 993f0ea4 (Add an option to split object and interface libs,
      2017-06-19) and preserved by commit b61faf89 (Fix install rules and
      usage requirements for interface+object libs, 2017-06-28).  However, its
      value should be that of `KWSYS_HEADER_ROOT` rather than just its
      default.
      6e190d9a
  16. 31 Jan, 2018 1 commit
    • Ben Boeckel's avatar
      GetFilenameName: optionally don't search for \ on non-Windows · 6770cb3e
      Ben Boeckel authored and Brad King's avatar Brad King committed
      Non-Windows platforms don't have backslash as a separator, however some
      projects may want to support Windows paths on non-Windows platforms
      (e.g., paths from data files). For those which don't need this, this
      allows the search to be faster since it's searching for a single
      character.
      6770cb3e
  17. 17 Jan, 2018 1 commit
  18. 09 Jan, 2018 3 commits
  19. 03 Jan, 2018 1 commit
  20. 08 Dec, 2017 1 commit
    • Brad King's avatar
      hashtable: Drop when building inside CMake · 9995f700
      Brad King authored
      CMake now builds as C++11 or higher and uses `unordered_{map,set}`
      instead of `hash_{map,set}`.  Skip providing KWSys hashtable to it
      since it uses features deprecated by C++17.
      9995f700
  21. 29 Nov, 2017 1 commit
    • Brad King's avatar
      Configure: Add KWSYS_FALLTHROUGH macro for C++ code · 1b09cf0d
      Brad King authored
      Some C++ compilers now warn when a switch case falls through to another
      case, but compilers vary in how to suppress the warning with an explicit
      fallthrough specifier.  Provide a macro for the specifier.
      1b09cf0d
  22. 06 Nov, 2017 1 commit
  23. 31 Oct, 2017 2 commits
  24. 11 Oct, 2017 1 commit
    • Wouter Klouwen's avatar
      ProcessUNIX: Use monotonic clock in kwsysProcessTimeGetCurrent() for POSIX · 749b7506
      Wouter Klouwen authored
      While a process is running, it is possible for other processes such as
      NTP to alter the system clock in large jumps.
      
      To make the measurement of how long a process has taken to run
      impervious to such large jumps it is helpful to use a monotonic clock.
      This is a clock that takes an arbitrary starting point that does not
      change.
      
      clock_gettime() is a POSIX method that implements this clock. This is
      not available on all platforms, so this commit adds a check for its
      presence. If the monotonic timer is available, use that in
      kwsysProcessTimeGetCurrent(), otherwise falls back to previous
      non-monotonic behaviour.
      749b7506
  25. 29 Sep, 2017 1 commit
    • Brad King's avatar
      Remove unnecessary testIOS · 41c93d97
      Brad King authored
      This test was meant to cover the `kwsys/ios/*` headers, but they were
      removed in commit 15a16826 (Remove include <kwsys/ios/*> and
      kwsys_ios:: compatibility layer, 2015-08-20).
      41c93d97
  26. 01 Sep, 2017 1 commit
  27. 04 Aug, 2017 1 commit
  28. 28 Jun, 2017 1 commit
  29. 26 Jun, 2017 1 commit
    • Chuck Atkins's avatar
      Add an option to split object and interface libs. · 993f0ea4
      Chuck Atkins authored
      Introduce the KWSYS_SPLIT_OBJECTS_FROM_INTERFACE option.  This will
      cause the build to generate a separate interface and object library,
      instead of a static or shared library.  This will enable kwsys to be
      embedded into another library as objects rather than linked as a
      seperate library while still maintaining the propagation of target usage
      requirements.
      993f0ea4
  30. 28 Apr, 2017 1 commit
  31. 27 Apr, 2017 1 commit
    • Daniel Pfeifer's avatar
      Disable clang-tidy · 2564822b
      Daniel Pfeifer authored
      KWSys has not been updated for `clang-tidy`.
      Until this is done, block use of the tool on our own targets.
      This is useful when KWSys is embedded in the source tree of
      another project that may activate clang-tidy.
      2564822b
  32. 18 Apr, 2017 1 commit
  33. 11 Apr, 2017 1 commit
    • Daniel Pfeifer's avatar
      Disable include-what-you-use · ce5b0d34
      Daniel Pfeifer authored
      KWSys has not been updated for `include-what-you-use`.
      Until this is done, block use of the tool on our own targets.
      This is useful when KWSys is embedded in the source tree of
      another project that may activate iwyu.
      ce5b0d34
  34. 03 Feb, 2017 1 commit
  35. 21 Dec, 2016 1 commit