1. 28 Sep, 2009 2 commits
    • 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
    • Brad King's avatar
      Install KWSys Copyright.txt as documentation · 1fb49641
      Brad King authored
      This commit adds KWSys configuration option KWSYS_INSTALL_DOC_DIR to
      specify the directory for installation of documentation.  We use it to
      put the KWSys Copyright.txt file at the location
      
        ${KWSYS_INSTALL_DOC_DIR}/${KWSYS_NAMESPACE}/Copyright.txt
      
      in the project installation tree.  This helps containing projects meet
      the license requirement to distribute the copyright and license with
      binary forms.
      1fb49641
  2. 25 Sep, 2009 1 commit
  3. 24 Sep, 2009 1 commit
    • Brad King's avatar
      Restore KWSys SystemTools _WIN32 state on cygwin · f71bac73
      Brad King authored
      The commit "Fix KWSys SystemTools build on cygwin with -mwin32" tried to
      restore the state of the _WIN32 definition that was broken by the commit
      "Optimize KWSys SystemTools::FileExists on Windows".  It did so for the
      case of building with -mwin32 on cygwin, but since including <windows.h>
      defines _WIN32, it failed for the case of not using -mwin32.
      
      This commit restores the state of _WIN32 in all cases by undefining it
      after including <windows.h> if it was not defined beforehand.
      f71bac73
  4. 23 Sep, 2009 1 commit
    • Brad King's avatar
      Fix KWSys SystemTools build on cygwin with -mwin32 · 853959a4
      Brad King authored
      Commit "Optimize KWSys SystemTools::FileExists on Windows" accidentally
      added "#undef _WIN32" when including <windows.h> on cygwin, which breaks
      builds using the -mwin32 flag.  This commit removes that line and fixes
      the real error it was intended to avoid.
      853959a4
  5. 22 Sep, 2009 4 commits
  6. 14 Sep, 2009 1 commit
  7. 03 Sep, 2009 1 commit
    • Brad King's avatar
      COMP: Silence useless Borland inlining warning · f3beae21
      Brad King authored
      KWSys tries not to force anything on source files that include its
      headers, but Borland warning 8027 leaves us no choice when we want to
      have inline function definitions.  This commit disables the warning for
      the RegularExpression header and any file that includes it.
      f3beae21
  8. 31 Aug, 2009 1 commit
    • Brad King's avatar
      Define kwsys_ios_binary macro for std::ios::binary · 9350c584
      Brad King authored
      The 'binary' openmode does not exist on all compilers.  We define macro
      <kwsys>_ios_binary, where <kwsys> is the KWSys namespace, to refer to
      std::ios::binary if it exists and 0 otherwise.  Sample usage:
      
        kwsys_ios::ifstream fin(fn, kwsys_ios::ios::in | kwsys_ios_binary);
      9350c584
  9. 06 Aug, 2009 1 commit
  10. 27 Jul, 2009 1 commit
  11. 26 Jul, 2009 1 commit
  12. 24 Jul, 2009 1 commit
  13. 13 Jul, 2009 2 commits
  14. 09 Jul, 2009 1 commit
  15. 08 Jul, 2009 4 commits
  16. 25 Jun, 2009 1 commit
  17. 22 Jun, 2009 2 commits
  18. 12 Jun, 2009 3 commits
  19. 11 Jun, 2009 1 commit
  20. 10 Jun, 2009 4 commits
    • Brad King's avatar
      ENH: Teach KWSys SystemTools about VMS paths · 1e406776
      Brad King authored
      This teaches ConvertToUnixSlashes to convert VMS paths into posix-style
      paths.  We also set the DECC$FILENAME_UNIX_ONLY feature so the process
      always sees posix-style paths on disk.
      1e406776
    • Brad King's avatar
      ENH: Teach KWSys Process basic VMS support · 48d72f12
      Brad King authored
      This achieves basic process execution on OpenVMS.  We use work-arounds
      for different fork()/exec() behavior and a lack of select().
      
      VMS emulates fork/exec using setjmp/longjmp to evaluate the child and
      parent return cases from fork.  Therefore both must be invoked from the
      same function.
      
      Since select() works only for sockets we use the BeOS-style polling
      implementation.  However, non-blocking reads on empty pipes cannot be
      distinguished easily from the last read on a closed pipe.  Therefore we
      identify end of data by an empty read after the child terminates.
      48d72f12
    • Brad King's avatar
      BUG: Fix non-select process impl without timeout · 6eac6c06
      Brad King authored
      This avoids use of an uninitialized value in the KWSys ProcessUNIX
      polling implementation when no timeout is given.
      6eac6c06
    • Brad King's avatar
      COMP: Avoid String.c inclusion by Compaq templates · 7ecacbfa
      Brad King authored
      The Compaq compiler (on VMS) includes 'String.c' in source files that
      use the stl string while looking for template definitions.  This was the
      true cause of double-inclusion of the 'kwsysPrivate.h' header.  We work
      around the problem by conditionally compiling the entire source file on
      a condition only true when really building the source.
      7ecacbfa
  21. 09 Jun, 2009 2 commits
  22. 05 Jun, 2009 3 commits
  23. 20 May, 2009 1 commit