Commit Graph

334 Commits

Author SHA1 Message Date
Brad King 6ed916795d BUG: Work around broken GetLongPathName case
On Windows the GetLongPathName API function does not work on some
filesystems even if the file exists.  In this case we should just use
the original long path name and not the GetShortPathName result.
See issue #8480.
2009-02-09 16:45:15 -05:00
Brad King ca096a4596 BUG: Fix GetRealPath when realpath fails
This patch from Philip Lowman teaches SystemTools::GetRealPath to deal
with paths that do not exist by dealing with the case that realpath
returns NULL.  See issue #8423.
2009-02-09 09:23:13 -05:00
David Cole 0fafdb7eb8 BUG: Do not copy permissions of files when making the copy in an install rule. If the source file was read-only, this prevents the subsequent set of the destination file's modification time, making the copied file always different in time-stamp than the original and always installing a new file with a new time stamp (but the same content) causing unnecessary downstream incremental rebuilds. As part of this fix, add an optional copyPermissions parameter to the SystemTools routines CopyFileIfDifferent, CopyFileAlways, CopyAFile and CopyADirectory. The copyPermissions parameter defaults to true to preserve the behavior of these routines for existing callers. 2008-12-18 10:43:24 -05:00
Sebastien Barre 8e5886e652 ENH: fix for Vista 2008-10-16 19:30:49 -04:00
Sebastien Barre b55f7a261f ENH: oops 2008-10-16 11:34:16 -04:00
Sebastien Barre ef93279573 ENH: fix for Windows Vista 2008-10-15 23:24:33 -04:00
Brad King b3f43f0065 STYLE: Fix typo in GetFilenameLastExtension docs
See issue #7797.
2008-10-10 11:23:02 -04:00
Bill Hoffman 64fc597de2 ENH: add initial support for HAIKU OS from bug# 7425 2008-09-15 17:53:28 -04:00
Brad King cea66664c5 ENH: Added WOW64 key view support to KWSys SystemTools' windows registry API.
- Add an argument to registry read/write/delete methods to specify
    a 32-bit or 64-bit view.
  - Default is the bit-ness of the running program.
  - See issue #7095.
2008-05-27 14:47:00 -04:00
Bill Lorensen 68dfcefbcb COMP: sprintf warnings. DWORD should use %ld rather than %d. Also, const char *p, a shadowed variable warning. 2008-05-10 22:48:53 -04:00
Jeffrey Baumes 4cf167173f ENH: Allow numbers in username in URL regex. 2008-04-23 12:51:02 -04:00
Bill Hoffman 7dcfdf5005 BUG: fix install problem on make and allow symlinks to cmake bin directory 2008-03-27 17:05:11 -04:00
Brad King 9198a92af9 COMP: Fix VS6 and old HP build. This source does not have the #define for hack. 2008-01-21 08:01:04 -05:00
Brad King ce2b20361a BUG: Fix previous commit to not access empty strings out of bounds. 2008-01-20 19:29:12 -05:00
Brad King c7b844ba3e BUG: Make sure search paths never have double-slashes. Leading with two slashes (//) on cygwin looks like a network path and delays while waiting for a non-existent machine. 2008-01-20 17:24:46 -05:00
Brad King 615ce67ad4 COMP: Fix build on borland. 2008-01-12 09:52:50 -05:00
Brad King a6d32b96ed ENH: Add SystemTools::SplitPathRootComponent and re-implement SplitPath to use it. Add better treatment of user home directory paths. 2008-01-11 08:33:48 -05:00
Bill Hoffman a5e76555bf BUG: fix for bug 6136 make sure includes are not directories 2007-12-14 20:31:27 -05:00
Philippe Pebay 836e595fcc BUG: fixed an incomplete regexp 2007-12-06 16:43:11 -05:00
Brad King cc80c4e285 COMP: Remove reference to vtksys. The unmangled kwsys name should be used in this source. 2007-12-05 13:13:53 -05:00
Philippe Pebay f18ae2234c ENH: added two functions for URL parsing:
1. an "abridged" version that separates protocol from dataglom in
        an expression with the form protocol://dataglom
     2. a "full" version that parses protocol, username, password,
        hostname, port, and path in a standard URL (all of these variables
        are optional, except for protocol and hostname).
2007-12-05 12:24:27 -05:00
Bill Hoffman 39c164cb83 ENH: remove warning 2007-12-04 17:00:44 -05:00
Bill Hoffman 5050706ae3 ENH: add a touch -E command to cmake 2007-12-04 16:03:19 -05:00
Alexander Neundorf e3c84cf5a6 ENH: add support for the Syllable OS (http://www.syllable.org)
major issues:
-access() doesn't return false for an empty string (#ifdefed in cmake)
-dlopen() doesn't return 0 on failure (#ifdefed in cmake and fixed now in Syllable)
-the kwsys and Bootstrap tests fail with timeout due to the fact that I'm doing all that in qemu, which is quite slow
-RPATH is now supported, so without modifying the test adapting DLL_PATH in Syllable is required for the tests to succeed
-the Plugin test fails with an undefined reference to example_exe_function() in example_mod_1, it seems this isn't supported under Syllable

Alex
2007-11-23 20:45:49 -05:00
David Cole 867de7fc67 ENH: Add ability to call Visual Studio macros from CMake. Add a CMake Visual Studio macro to reload a solution file automatically if CMake makes changes to .sln files or .vcproj files. Add code to call the macro automatically for any running Visual Studio instances with the .sln file open at the end of the Visual Studio Generate call. Only call the macro if some .sln or .vcproj file changed during Generate. Also, add handling for REG_EXPAND_SZ type to SystemTools::ReadRegistryValue - returned string has environment variable references expanded. 2007-11-16 07:01:58 -05:00
Brad King 8b9dcc9e1a COMP: Fix warning when gcount stream method does not really return std::streamsize. 2007-11-07 08:59:29 -05:00
Brad King f410f8578e COMP: Fix warnings on 64-bit Mac OS X build. Patch from issue #3697. 2007-11-05 14:34:36 -05:00
Sean McBride 0b4c9cb86c STYLE: fixed misspellings of Mac OS X 2007-10-26 12:13:01 -04:00
Brad King c4ffd00711 BUG: Fix bug#5590. When converting a relative path between two full paths on different windows drive letters do not create a ../../d:/foo/bar path and just return the full path to the destination. 2007-10-25 13:29:47 -04:00
Bill Hoffman 22fca8aa12 BUG: fix for bug 0005767 hang for replace string with empty 2007-10-12 09:58:17 -04:00
Sebastien Barre 4e54f93501 ENH: bad bug bad 2007-10-09 15:20:30 -04:00
Bill Hoffman e0899bcaf2 ENH: speed up actual path name by cache on windows 2007-10-02 15:48:21 -04:00
Alexander Neundorf f2bb57684f COMP: TIOCGWINSZ and struct winsize also doesn't exist on Cray Catamount
Alex
2007-09-20 09:36:30 -04:00
Alexander Neundorf 6b45ec0326 COMP: make SystemTools.cxx build on Cray Xt3
Alex
2007-09-20 09:30:41 -04:00
Alexander Neundorf dddbad259c PERF: micro optimization: the (*pos1) && (*pos1=='/') were redundant, and
hasDoubleSlash is false in most cases, so in most cases 3 comparisons were
done, now only one

Alex
2007-07-23 09:06:48 -04:00
Bill Hoffman 80de27ace5 ENH: fix case problem with drive letters and cmake vs CMakeSetup build.make changing 2007-06-06 10:44:20 -04:00
Brad King e01cdf2065 ENH: Added kwsys SystemTools::CreateSymlink and SystemTools::ReadSymlink. 2007-03-12 13:50:28 -04:00
Ken Martin fdbe20cf8b COMP: fix warnings 2007-03-02 10:48:58 -05:00
Ken Martin 508ddaf929 COMP: fix warning 2007-03-01 14:52:26 -05:00
Ken Martin ae3ef64307 ENH: added a limit to the getline method 2007-03-01 14:30:42 -05:00
Brad King 2a64bb4774 BUG: Fix bug#4482. 2007-02-22 15:27:56 -05:00
Bill Hoffman 2d6e914b2d COMP: remove warning 2007-02-22 09:48:19 -05:00
Bill Hoffman 5647e6e254 ENH: fix parens in the path with spaces in the path 2007-02-21 21:24:17 -05:00
Brad King 293f24763f STYLE: Removed one more stray comment. 2007-02-01 14:45:08 -05:00
Ken Martin 2da51e0f69 STYLE: removed code accidently checked in 2007-02-01 14:43:09 -05:00
Ken Martin 3dd4a53d97 BUG: fix for bug number 3320 2007-02-01 14:11:06 -05:00
Bill Hoffman b32f3b4131 ENH: allow copy if different from a file to a directory to work 2007-01-30 11:32:33 -05:00
Clinton Stimpson e264771122 ENH: Add support for "~otheruser/" 2007-01-16 14:37:33 -05:00
Clinton Stimpson 50489ff6ff ENH: Handle "~" in SplitPath. 2007-01-12 16:47:23 -05:00
Utkarsh Ayachit fa69ba942e BUG: FileIsDirectory would remove the trailing '/' even when the path is indeed the root i.e. '/'. Hence the test would be incorrect for root directory. Fixed that. 2006-12-18 11:30:09 -05:00
Bill Hoffman 3a32cec969 ENH: merge in changes for beos support 2006-12-04 17:26:41 -05:00
David Cole e9fb6cd51a BUG: Correct the SystemReportDebugHook function. It should not call exit. It gets called multiple times at shutdown in a memory leak reporting scenario... This is the source of the long standing KWWidgetsTour debug build dashboard failure. 2006-10-18 23:27:33 -04:00
Bill Hoffman 5b98b7af78 ENH: check for empty path 2006-10-03 13:35:59 -04:00
Brad King dc0c5d082b BUG: GetLineFromStream should remove carriage return characters to make sure newlines do not get duplicates. 2006-08-26 16:14:26 -04:00
Brad King c58777ec47 BUG: FileIsDirectory should work when the name contains a trailing slash. 2006-08-21 17:34:40 -04:00
Brad King 3a44f2a47e ENH: Added JoinPath overload that accepts an iterator range. 2006-08-17 12:02:18 -04:00
Bill Hoffman 71af96aad1 ENH: still escape () but do not escape 2006-08-14 09:50:52 -04:00
Ken Martin 7de2d93d1a ENH: fix for AddKeepPath not calling realpath 2006-08-11 10:54:35 -04:00
Bill Hoffman fd56f7247a ENH: escape ( and ) in unix paths 2006-08-11 09:56:39 -04:00
David Cole 76d05cd5fa BUG: strlen logic was backwards resulting in function body never actually executing... when called with valid strings, it was always doing nothing and returning false... now it works as expected. 2006-08-10 15:17:53 -04:00
Brad King ab61137eb1 COMP: Fix and/or disable warnings for Borland 5.6 build. 2006-08-01 11:38:42 -04:00
Brad King 0b196d1aef BUG: Do not block signals during sleep. Leave that up to the application. 2006-07-27 11:27:28 -04:00
Brad King c482ef3bbc BUG: Mask signals during SystemTools::Delay to avoid interrupted sleep. 2006-07-25 15:18:35 -04:00
Ken Martin b379666b39 BUG: some bug fixes, better docs, and more coverage 2006-07-25 12:08:05 -04:00
Bill Hoffman 3b74388050 ENH: allow for source tree to be in root directory 2006-07-24 11:27:07 -04:00
Andy Cedilnik d2a3ccd505 ENH: Add support for multi-arguments: -f arg1 arg2 arg3 ... and support for lists: -f arg1 -f arg2 -f arg3 ... and for boolean to be stored as strings and doubles 2006-07-14 09:13:23 -04:00
Andy Cedilnik 4f728e93e1 COMP: Remove warnings 2006-07-13 09:27:10 -04:00
Andy Cedilnik 2e1882389b COMP: Remove warnings 2006-07-12 09:21:26 -04:00
Bill Hoffman 1d8043cb4f ENH: search for program without extensions 2006-05-08 14:18:09 -04:00
Brad King 523d9ebeed ENH: Added always/if-different option to CopyADirectory. Added CopyAFile with the same interface. 2006-05-05 10:29:27 -04:00
Bill Hoffman 4c93b9a158 ENH: put the fix back in with abort 2006-04-27 17:52:45 -04:00
Bill Hoffman dc304cfdec ENH: remove code that does not compile, on windows cwd must exist 2006-04-27 17:46:10 -04:00
Mark Richardson 2b5d8e84c9 COMP: Fixing the the build for windows. 2006-04-27 16:02:52 -04:00
Bill Hoffman 6c6eebac20 ENH: handle running from a directory that has been deleted 2006-04-27 15:26:53 -04:00
Brad King dbd70091f1 BUG: IsSubDirectory should use ComparePath to do platform-independent path comparison. 2006-04-25 09:54:07 -04:00
Bill Hoffman 72f0c21f94 ENH: fix borland bug 2006-04-21 20:13:08 -04:00
Bill Hoffman b2b2e68c37 ENH: performance improvments 2006-04-21 15:15:52 -04:00
Sebastien Barre d5237b30fc ENH: try to bypass Microsoft assert() on isspace, isalpha, etc. 2006-04-18 11:50:39 -04:00
Brad King b8a589bb1d ENH: Improved implementation of FilesDiffer to avoid allocating enough memory for the entire file twice. Instead using a block-at-a-time comparison. 2006-04-13 22:56:32 -04:00
Bill Hoffman cae4e6b37a ENH: add patch for finding applications on OSX 2006-04-13 11:00:52 -04:00
Bill Hoffman 5a2668b326 ENH: add support for win64 for visual studio 2005 ide and nmake, also fix warnings produced by building for win64 2006-03-30 13:49:56 -05:00
Sebastien Barre d82c979787 ENH: the arguments to this function were not checked in a robust way 2006-03-21 17:47:11 -05:00
Mathieu Malaterre e9fcafafe5 ENH: Use const char where it should have been. At same time fix Bug#2958 2006-03-17 12:06:41 -05:00
Bill Hoffman 83daad3ec2 ENH: remove warning 2006-03-12 10:03:03 -05:00
Bill Hoffman 08bb4d52ba ENH: try to clean up the search for programs 2006-03-11 11:52:57 -05:00
Bill Hoffman d2f7b0c64f ENH: undo last change because it broke the dashboard 2006-03-10 17:37:47 -05:00
Bill Hoffman 7387cb5850 ENH: fix find program to look for .com and .exe correctly and not return files with no extension on windows 2006-03-10 16:52:28 -05:00
Mathieu Malaterre 509e383aac STYLE: Remove trailing whitespaces 2006-03-10 13:34:41 -05:00
Mathieu Malaterre 5623ef913f ENH: Add trailing whitespace 2006-03-10 13:33:28 -05:00
Bill Hoffman be375b1bcd ENH: fix std in kwsys, has to be kwsys_stl 2006-03-02 21:33:57 -05:00
Bill Hoffman a5825cd11a ENH: check in new find stuff 2006-03-02 13:30:22 -05:00
Bill Hoffman d2621064e2 ENH: fix for bug 28618, cmake.exe can not find itself 2006-02-10 12:43:00 -05:00
Andy Cedilnik 30daaa6a3e COMP: Fix problem with STL on HP, and fix reusing the same variable in for loops 2006-02-08 07:17:59 -05:00
Andy Cedilnik 2ed1ca11bc COMP: Fix compile problem on windows and mac 2006-02-07 11:43:17 -05:00
Andy Cedilnik 9740913dd8 COMP: Fix build problem 2006-02-07 10:43:45 -05:00
Andy Cedilnik e5a8e115bc ENH: Move relative path to kwsys 2006-02-07 10:23:17 -05:00
Ken Martin 1ff49b9789 ENH: by Bill make sure path is unix style 2006-01-23 16:36:13 -05:00
Bill Hoffman 9891260a6d ENH: add support for watcom wmake and wcl386 2006-01-17 10:21:45 -05:00
Bill Hoffman 452925649a ENH: add better support for framework linking 2005-12-26 13:14:19 -05:00
Andy Cedilnik affced3f81 BUG: Return if the file is in any directory not just in first one 2005-12-16 09:03:04 -05:00
Andy Cedilnik ccf5a130ef COMP: for a in range(100): write_on_board(No std in kwsys...) 2005-12-11 00:12:40 -05:00
Andy Cedilnik 33c891f8d8 ENH: Add another signature to FindProgram that matches more to the one from CMake 2005-12-10 12:08:55 -05:00
Brad King 946c9a2cc6 ENH: Improved file modification time comparison on Windows to use GetFileAttributesEx instead of CreateFile/GetFileTime/CloseHandle to get file times. This results in a 30% reduction in time to do a build system check. 2005-10-27 13:57:48 -04:00
Andy Cedilnik b93359f41d ENH: Add an accessor for the maximum file length 2005-10-12 12:08:49 -04:00
Brad King 93efb1cf5b BUG: Automatic pwd/cwd path translation must check that the generated logical-to-physical mapping is correct by using realpath. 2005-08-17 17:04:23 -04:00
Sebastien Barre 6e4b6ca0d3 ENH: add method to attempt to check if a file is text or binary 2005-07-28 13:21:03 -04:00
Andy Cedilnik 3e020b3dcc COMP: Remove warning on windows 2005-07-13 09:49:01 -04:00
Andy Cedilnik eee2d2b035 BUG: Revert the change to FileIsDirectory. Add FileIsSymlink and treat symlinks as files when removing directory 2005-07-12 13:21:21 -04:00
Andy Cedilnik 219bcf25ba BUG: When removing directory, use lstat instead of stat to make sure that symlinks are treated as files and not as directories 2005-07-12 10:40:14 -04:00
Sebastien Barre 7f2c1e434c ENH: add method to escape some chars in a string 2005-06-13 18:03:53 -04:00
Brad King c1f64baa4a COMP: Need windows.h even on cygwin to get CreateFile API. 2005-06-09 07:51:49 -04:00
Bill Lorensen bd74de53f3 COMP: warning. 2005-05-28 08:44:44 -04:00
Sebastien Barre a662af88de ENH: add convenience function to convert Windows command line args into Unix argc/argv. Pulled and cleaned from PV/VV/VJ init code 2005-05-27 22:11:26 -04:00
Brad King 69cf728623 COMP: Added work-around to avoid warnings about unreferenced inline functions from SGI termios. 2005-05-05 09:08:05 -04:00
Andy Cedilnik fe110e2ae0 ENH: Add split that splits on arbitrary separator 2005-05-04 11:37:01 -04:00
Brad King bac564356b COMP: Added pragma directives for SGI compilers to avoid useless warnings. 2005-05-03 14:58:13 -04:00
Andy Cedilnik d381fbfa38 BUG: Looks like std::string changes the result of c_str() call. This fixes potential problems 2005-04-26 11:31:08 -04:00
Brad King 8136f69813 COMP: Fixed assignment-in-conditional warning. 2005-04-22 09:22:07 -04:00
Sebastien Barre ecc142ee33 ENH: move convenience method to get OS name and version from KWApp to KWSys. 2005-04-15 15:18:51 -04:00
Brad King 66095be685 BUG: Added missing variable initialization that was accidentally removed on the previsous commit. 2005-04-15 13:56:23 -04:00
Brad King d3a69766df COMP: Removed extra variable initializations to avoid Borland warnings. 2005-04-15 08:25:53 -04:00
Brad King caf54b2093 COMP: Adding work-around for CMake dependency scanning limitation. Any configured header included by KWSYS_HEADER() in a .c or .cxx file in kwsys itself must use this hack to get dependencies. 2005-04-13 16:46:09 -04:00
Brad King bf70e83397 BUG: Fix GetFilenameName to not use uninitialized search position in win32 version. 2005-04-13 14:37:30 -04:00
Andy Cedilnik bddcf4ec97 ENH: Speedup improvements 2005-04-13 13:59:48 -04:00
Bill Hoffman 3778d89cb9 BUG: fix insert for 64 bit 2005-04-13 09:54:37 -04:00
Brad King 85f82c2092 COMP: Fixed ambiguous call to insert method of string. 2005-04-12 13:33:58 -04:00
Bill Hoffman 266d5d16df ENH: optimization of cwd and do not leak library handle 2005-04-12 13:25:19 -04:00
Bill Hoffman 5e39c9ca14 BUG: fix GetLongPathName for WindowsNT 2005-04-11 12:20:24 -04:00
Bill Hoffman a5be6b8406 BUG: fix build on mingw 2005-04-08 08:34:22 -04:00
Bill Hoffman 3387db4c05 BUG: if short path or long path fails return the original input 2005-04-07 17:20:33 -04:00
Bill Hoffman be32b258cb ENH: check return value of GetLongPath 2005-04-07 16:58:02 -04:00
Bill Hoffman fadff33791 BUG: fix for bug 1717 incorrect path sent to dart server 2005-04-07 13:03:47 -04:00
Bill Hoffman 1e6989017d remove cerr stuff 2005-04-06 09:47:07 -04:00
Bill Hoffman d8f75badb4 Fix bug in != stuff 2005-04-06 09:44:09 -04:00
Bill Hoffman 19aff4f3bd COMP: hack fix for old sgi until bootstrap is fixed 2005-04-05 21:10:10 -04:00
Brad King c7a2c80c17 ENH: SplitPath now supports slashes in both directions in the input path but still produces forward slashes in the root component. 2005-03-29 08:09:47 -05:00
Sebastien Barre 1816011791 ENH: move EstimateFormatLength to kwsys 2005-03-28 17:46:38 -05:00
Brad King 4ba14d1278 ENH: Re-implemented CollapseFullPath to not need to change directories. Operation is now fully string based. 2005-03-25 08:09:00 -05:00
Brad King eea7221f31 COMP: Using proper __QNX__ preprocessor test. 2005-03-17 13:06:55 -05:00
Brad King 6b43d78dae COMP: Only include malloc.h on QNX. 2005-03-16 10:49:58 -05:00
Sebastien Barre 74ec81ca3f FIX: that was wrong 2005-03-16 10:15:13 -05:00
Brad King 59ae67558f COMP: Need malloc.h for malloc/free on QNX. 2005-03-16 09:41:26 -05:00
Sebastien Barre a1de574851 ENH: add last two small funcs from vtkString. Done removing deps 2005-03-11 11:48:39 -05:00
Sebastien Barre 213c04563c ENH: update documentation, sort methods into categories 2005-03-11 10:43:31 -05:00
Brad King 0d0cfaea08 COMP: Added missing include of string.h. 2005-03-11 10:07:36 -05:00
Sebastien Barre c8772c286e COMP: fix some warnings 2005-03-11 09:31:58 -05:00
Sebastien Barre effbdf8d8f ENH: remove deps to vtkString by using KWSys (a handful of functions have been moved to KWSys) 2005-03-10 17:49:27 -05:00
Sebastien Barre 2415ff678a ENH: remove deps to vtkString by using KWSys (a handful of functions have been moved to KWSys) 2005-03-10 17:44:58 -05:00
Sebastien Barre 07bdc60045 ENH: remove deps to vtkString by using KWSys (a handful of functions have been moved to KWSys) 2005-03-10 17:34:22 -05:00
Sebastien Barre a79868206e ENH: move function from vtkKWDirectoryUtilities and vtkString to SystemTools 2005-03-10 12:50:17 -05:00