summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Node/FS.py
Commit message (Collapse)AuthorAgeFilesLines
* Fix for issue #1420, Windows UNC path handling. Applied patch from Benoit ↵Gary Oberbrunner2010-11-181-113/+237
| | | | Belley after updating it to fit into trunk, and added a couple of extra tests from issues 1420, 1857 and 1948.
* Fix issue 2048: when morphing an Entry into a Dir, retain any existing ↵Gary Oberbrunner2010-07-311-3/+18
| | | | executor action list.
* Convert Util.Proxy from an old-style class to a new-style class.Steven Knight2010-05-191-0/+3
|
* Convert old-style classes in Node/FS.py to new-style classes. Refactor ↵Steven Knight2010-05-171-11/+9
| | | | assignment to FS.DiskChecker.__call__.
* http://scons.tigris.org/issues/show_bug.cgi?id=2345Greg Noel2010-04-241-89/+20
| | | | | | | Comb out all code that supported earlier versions of Python. Most such code is in snippets of only a few lines and can be identified by having a Python version string in it. Such snippets add up; this combing pass probably got rid of over 500 lines of code.
* http://scons.tigris.org/issues/show_bug.cgi?id=2317Greg Noel2010-04-231-1/+1
| | | | | | Apply the refactorings from the 'dict' fixer, less occurrences that were manually audited to be safe. Also pick up changes in bin/sfsum, a Python file that was not being scanned before.
* http://scons.tigris.org/issues/show_bug.cgi?id=2345Greg Noel2010-04-211-4/+2
| | | | Apply the 'itertools' and 'itertools_imports' fixers.
* http://scons.tigris.org/issues/show_bug.cgi?id=2345Greg Noel2010-04-151-2/+1
| | | | | | | | | Fixes due to running the regression tests with the '-3' option to Python2.6, which causes the run-time to look for potential compatibility problems with Python 3.x. In some cases, all we can do is quiet the warning since we still support Python versions that can't use the newer idiom. In other cases, we fix the problem. This patch contains a mix of quieting and fixing, plus a little lint.
* http://scons.tigris.org/issues/show_bug.cgi?id=2345Greg Noel2010-04-151-12/+12
| | | | | | Apply the first part of the 'raise' fixer (the three-argument cases are not converted and will need to wait until native support of with_traceback() is available).
* Issue 2332: Convert from using StringIO.StringIO class to using theSteven Knight2010-04-071-2/+1
| | | | | forward-compatible io.StringIO class, with the addition of an "io" compatibility module for Python versions before 2.6.
* http://scons.tigris.org/issues/show_bug.cgi?id=2345Greg Noel2010-03-291-1/+1
| | | | | | | Accumulated small fixers: renames, next, zip, and intern. Files that were modified or added while developing on branches/pending didn't have the fixers previously applied. This patchset picks up those.
* http://scons.tigris.org/issues/show_bug.cgi?id=2329Greg Noel2010-03-271-7/+3
| | | | | | | | | | | | | | | Applied a number of idiomatic changes. Uses of the 'sort()' method were converted into calls of 'sorted()' when possible and the sorted() expression was inserted into a subsequent statement whenever that made sense. The statement 'while 1:' was changed to 'while True:'. Names from the 'types' module (e.g., 'types.FooType') were converted to the equivalent build-in type (e.g., 'foo'). Comparisons between types were changed to use 'isinstance()'.
* Move 2.0 changes collected in branches/pending back to trunk for furtherGreg Noel2010-03-251-35/+33
| | | | | development. Note that this set of changes is NOT backward-compatible; the trunk no longer works with Python 1.5.2, 2.0, or 2.1.
* Add a message to the UserError raised when trying to do a Dir lookup with ↵Gary Oberbrunner2009-12-201-1/+2
| | | | create=False. Should not normally happen, but it did to me, and it is better to have some explanatory message when it happens rather than failing silently.
* Fix issue #2419 by sorting the other return path from glob() in FS.py. ↵Gary Oberbrunner2009-05-291-1/+3
| | | | Thanks to Jin Liu for the original analysis of the problem.
* Issue 2415: Tolerate unicode strings when using intern()Ludwig Hähne2009-05-171-8/+8
|
* Fix handling of both UTF_16_LE and UTF_16_BE. Add an actual test forSteven Knight2009-03-021-7/+58
| | | | | scanning Unicode files for implicit dependencies. Clean up how we handle decoding, and wrap it for earlier Python versions.
* Move the set_state(EXECUTED) call associated with pulling thingsSteven Knight2009-02-221-16/+16
| | | | | | out of a CacheDir from CacheDir.py to Taskmaster.py. Ripple effects include adding a Node.FS.push_to_cache() method, so that logic can be invoked separately from the Node.built() method.
* Return the intern() string on the first call to Node.FS.Base._save_str().Steven Knight2009-02-191-2/+2
|
* Issue 2181: intern file-names to save memoryLudwig Hähne2009-02-091-9/+11
|
* Handle finding implicit dependents defined with doubled pathSteven Knight2009-02-091-2/+3
| | | | | separators, as can happen on Windows systems when the backslashes in the path name are escaped (e.g. "C:\\some\\include.h").
* Add emacs and vim editing settings to the bottom of *.py files.Steven Knight2009-02-091-0/+5
|
* 2to3 sez, "rewrite map() as loop"Greg Noel2009-02-081-1/+1
|
* Detect the presence of 8.3 names on Windows when looking on-diskSteven Knight2009-01-271-2/+12
| | | | for whethr an entry exists.
* Various Windows fixes:Steven Knight2009-01-181-3/+6
| | | | | | | | | | | * Restore correct code to detect a bad drive on Windows. * Update the bad drive error message to include the target name. * Update SConfTests.py to print the config.log on error. * Fix the smart_link() error message to not use repr() of a path so escaping the \ separators on Windows doesn't interfere with regex matchs. * Update regexes in test/VariantDir/reflect.py to accomodate command-line re-ordering to put the /OUT: first in the line. * Explicitly check for smart_link() messages even on Windows.
* Issue 1086: add support for generic batch build actions, andSteven Knight2009-01-091-0/+3
| | | | | | | | | | | | | | | | | | | | | | specific support for batched compilation for Microsoft Visual C/C++. Merged revisions 3819-3851,3854-3869,3871-3877,3880 via svnmerge from http://scons.tigris.org/svn/scons/branches/sgk_batch ........ r3820 | stevenknight | 2008-12-09 23:59:14 -0800 (Tue, 09 Dec 2008) | 6 lines Issue 1086: Batch compilation support: * $MSVC_BATCH to control Visual C/C++ batch compilation. * New $CHANGED_SOURCES, $CHANGED_TARGETS, $UNCHANGED_SOURCES and $UNCHANGED_TARGETS construction variables. * New Action(batch_key=, targets=) keyword arguments. ........ r3880 | stevenknight | 2009-01-07 20:50:41 -0800 (Wed, 07 Jan 2009) | 3 lines Use UniqueList objects to collect the all_children(), all_prerequisites() and all_sources() lists instead of calling uniquer_hashables() by hand. ........
* Allow subclassing of File and Dir nodes by having the must_be_same()Steven Knight2008-12-301-1/+1
| | | | method check for isinstance(), not an exact class match.
* Issue 2276: Fix use of codecs module in pre-2.3 Python versions.Steven Knight2008-12-201-0/+13
|
* Issue 2255: Handle scanning of UTF-8 and UTF-16 files. (Greg Spencer)Steven Knight2008-12-121-10/+51
|
* Issue 1287: copy File attributes from the local Node to a RepositorySteven Knight2008-12-101-0/+13
| | | | | Node so we identify shared object files in a Repository and can link them into a local shared library. (Matthew Wesley)
* Fix a Glob() exception (with stack trace) when an explicit NodeSteven Knight2008-12-021-1/+5
| | | | | exists in a repository directory without a corresponding on-disk file or directory.
* Speed up Node.FS.EntryProxy.__getattr__() by not spending cyclesSteven Knight2008-11-151-10/+22
| | | | | | | generating an AttributeError exception message that gets ignored most of the time. Instead, re-raise an AttributeError subclass that delays message generation until its __str__() method is actually called. (Brad Fitzpatrick)
* Fix an exception and stack trace when Glob() hits an on-disk file orSteven Knight2008-11-081-0/+3
| | | | directory that begins with '#'.
* Fix a nested-scope regression affecting Python 1.5, 2.0 and 2.1.Steven Knight2008-11-071-1/+2
|
* Issue 2242: Minor style and loop enhancementsGreg Noel2008-11-071-102/+92
|
* Issue 2235: File.Dir() creates files in the wrong placeGreg Noel2008-11-071-17/+13
|
* Speed up Node.FS.FileFinder.find_file() by avoiding constructing debuggingSteven Knight2008-10-291-8/+7
| | | | strings that will only get thrown away during normal operation.
* Issue 1646: Block-wise signature computation for large filesLudwig Hähne2008-09-281-4/+28
|
* Issue 2106: Don't match a directory that matches the name of aSteven Knight2008-09-141-3/+4
| | | | #include file. (John Gozde)
* Issue 1693: make the subdirectory in which the .sconsign file willSteven Knight2008-09-141-2/+5
| | | | appear (if it doesn't already exist. (Damyan Pepper, Jim Randall)
* Revert the previous change, I overlooked some regression test failures.Steven Knight2008-09-131-5/+2
|
* Issue 1693: Make the directory in which the .sconsign file will live,Steven Knight2008-09-131-2/+5
| | | | if the directory doesn't already exist. (Damyan Pepper, Jim Randall)
* Issue 2121: fix handling #includes of files in VariantDir subdirectories,Steven Knight2008-09-131-1/+4
| | | | | | by having it handle checking for VariantDir directories on disk like it does VariantDir files. (patch: Jared Grubb; test case: Ali Tofigh)
* Issue 1307: Invalidate node caches after Execute()Ludwig Hähne2008-09-081-0/+43
|
* Make Glob() sort, to prevent spurious rebuilds. Fixes issue #2131.Gary Oberbrunner2008-09-061-0/+1
|
* Issue 2177: Dir get_contents changed to return list of signaturesLudwig Hähne2008-09-031-3/+18
|
* Fix for bug #2184, Glob() corrupts LIBPATH.Gary Oberbrunner2008-09-031-2/+2
|
* Fix bug #2138, missing parens after clear call in Entry.must_be_same(). ↵Gary Oberbrunner2008-08-151-1/+1
| | | | Passes tests on Linux.
* Merged revisions 2949-2953,2955-3056 via svnmerge fromSteven Knight2008-06-101-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://scons.tigris.org/svn/scons/branches/core ................ r2955 | stevenknight | 2008-05-18 07:48:43 -0700 (Sun, 18 May 2008) | 2 lines Update lines for next development cycle. ................ r2956 | GregNoel | 2008-05-19 14:24:39 -0700 (Mon, 19 May 2008) | 1 line Fix typo in Mkdir() description ................ r2957 | cournape | 2008-05-19 22:37:17 -0700 (Mon, 19 May 2008) | 1 line sunc++ tool: do not parse pkgchk output if no output available (Fix for #2060). ................ r2958 | cournape | 2008-05-19 23:34:01 -0700 (Mon, 19 May 2008) | 6 lines Do not set cppcPath to CXX if CXX has no dirname. This caused weird behaviour, because cppcPath and cxx were joined together, and scons used things like CC/CC as CXX. ................ r2960 | cournape | 2008-05-20 22:23:12 -0700 (Tue, 20 May 2008) | 3 lines Initialized merge tracking via "svnmerge" with revisions "1-2959" from http://scons.tigris.org/svn/scons/branches/pyext ................ r2971 | stevenknight | 2008-05-22 16:01:11 -0700 (Thu, 22 May 2008) | 4 lines Issue 2056: Fix scons.bat so that it returns the SCons exit status even though we're using setlocal + endlocal to avoid polluting the calling user's %PATH% variable. ................ r2972 | stevenknight | 2008-05-22 16:35:00 -0700 (Thu, 22 May 2008) | 2 lines Move generic windows tests from the test/ subdirectory into test/Win32. ................ r2973 | stevenknight | 2008-05-22 18:58:35 -0700 (Thu, 22 May 2008) | 2 lines Fix scoping under Python 1.5 / 2.0 / 2.1. ................ r2976 | cournape | 2008-05-23 04:10:37 -0700 (Fri, 23 May 2008) | 3 lines Initialized merge tracking via "svnmerge" with revisions "1-2975" from http://scons.tigris.org/svn/scons/branches/libwithcontext ................ r2978 | GregNoel | 2008-05-23 12:39:42 -0700 (Fri, 23 May 2008) | 1 line script to convert XML issues into CSV spreadsheet ................ r2987 | GregNoel | 2008-05-25 10:57:14 -0700 (Sun, 25 May 2008) | 1 line trivial typo ................ r2989 | pankrat | 2008-05-25 14:42:53 -0700 (Sun, 25 May 2008) | 3 lines Initialized merge tracking via "svnmerge" with revisions "1-2988" from http://scons.tigris.org/svn/scons/branches/heapmonitor ................ r2992 | belley | 2008-05-27 08:23:34 -0700 (Tue, 27 May 2008) | 41 lines Fixed the detection of Intel C++ Compiler for EMT64 The table used to check the registry keys for installed versions of the Intel C++ compiler for EMT64 seems erroneous. I have double check using the Intel C++ compiler versions 9.1 and 10.0 on both Windows XP 32-bit and Windows Server2003 64-bits. The registry keys have the form HKEY_LOCAL_MACHINE\SOFTWARE\INTEL\Compilers\C++\100.025\IA32 HKEY_LOCAL_MACHINE\SOFTWARE\INTEL\Compilers\C++\100.025\IA64 HKEY_LOCAL_MACHINE\SOFTWARE\INTEL\Compilers\C++\100.025\EMT64 Benoit Index: src/engine/SCons/Tool/intelc.py =================================================================== *** src/engine/SCons/Tool/intelc.py (revision 2991) --- src/engine/SCons/Tool/intelc.py (working copy) *************** *** 101,108 **** valid_abis = {'ia32' : 'ia32', 'x86' : 'ia32', 'ia64' : 'ia64', ! 'em64t' : 'ia32e', ! 'amd64' : 'ia32e'} if is_linux: valid_abis = {'ia32' : 'ia32', 'x86' : 'ia32', --- 101,108 ---- valid_abis = {'ia32' : 'ia32', 'x86' : 'ia32', 'ia64' : 'ia64', ! 'em64t' : 'em64t', ! 'amd64' : 'em64t'} if is_linux: valid_abis = {'ia32' : 'ia32', 'x86' : 'ia32', ................ r2993 | stevenknight | 2008-05-27 16:22:35 -0700 (Tue, 27 May 2008) | 3 lines Issue 2062: Fix --interactive mode getting "stuck" reporting failures for every build after the first one that fails. ................ r2997 | stevenknight | 2008-05-28 18:18:36 -0700 (Wed, 28 May 2008) | 4 lines Fix the closing message on interrupt to report "building terminated because of errors." Add a missing test.pass_test() call to the end of test/KeyboardInterrupt.py. ................ r2998 | stevenknight | 2008-05-29 08:14:47 -0700 (Thu, 29 May 2008) | 2 lines Issue 2075: Fix the ability to call the Node.FS.File.File() method. ................ r2999 | stevenknight | 2008-05-29 14:12:07 -0700 (Thu, 29 May 2008) | 2 lines Issue 2063: On Mac OS X, install under /usr/local by default. ................ r3017 | stevenknight | 2008-05-30 08:05:26 -0700 (Fri, 30 May 2008) | 3 lines Get the fix for File.File() right this time. Apply the same fix to File.Dir() and File.Entry(), too. ................ r3022 | stevenknight | 2008-06-02 18:52:42 -0700 (Mon, 02 Jun 2008) | 3 lines Fix "deprecated conversion from string constant to char *" warnings in various C++ tests. ................ r3045 | garyo | 2008-06-05 06:05:37 -0700 (Thu, 05 Jun 2008) | 8 lines This fix uses Python sequence comparison to compare the dotted version numbers used in .NET version numbers rather than comparing each element of the list individually. It's more robust and also more correct. I also fixed a Python 1.5.2 compatibility issue (strings didn't have the split method). Original reporter confirms this fixes his issue. ................ r3046 | garyo | 2008-06-05 20:35:27 -0700 (Thu, 05 Jun 2008) | 1 line Minor doc tweaks to Users Guide. ................ r3050 | stevenknight | 2008-06-06 11:38:38 -0700 (Fri, 06 Jun 2008) | 21 lines Merged revisions 2877,2879-2978,2980-3019,3021-3048 via svnmerge from http://scons.tigris.org/svn/scons/branches/fortran_refactor ........ r2980 | cournape | 2008-05-23 21:56:19 -0700 (Fri, 23 May 2008) | 1 line Emit a warning and use as a linker when fortran and c++ codes are mixed. ........ r3000 | cournape | 2008-05-29 21:29:37 -0700 (Thu, 29 May 2008) | 1 line Improve warning when mixing c++ and fortran. ........ r3048 | stevenknight | 2008-06-06 11:30:25 -0700 (Fri, 06 Jun 2008) | 6 lines Issue 2047: update the warning text to make it less alarming. Move the warning classes so they can be suppressed. Add a test of the warning (and suppression) behavior Only issue one warning per SCons invocation, not one per built executable. Update CHANGES.txt and RELEASE.txt. ........ ................ r3051 | stevenknight | 2008-06-07 08:11:46 -0700 (Sat, 07 Jun 2008) | 3 lines Fix the Fortran/C++ link test for deprecation warnings under earlier Python version. ................ r3052 | stevenknight | 2008-06-07 08:12:22 -0700 (Sat, 07 Jun 2008) | 2 lines Add Benoit's EMT64 change that will be released in 0.98.5. ................ r3053 | stevenknight | 2008-06-07 08:21:50 -0700 (Sat, 07 Jun 2008) | 2 lines Update lines for 0.98.5 release. ................ r3054 | stevenknight | 2008-06-07 08:26:04 -0700 (Sat, 07 Jun 2008) | 2 lines Update 0.98.4 versions to 0.98.5. ................
* Merged revisions 2928-2932,2934-2946 via svnmerge fromSteven Knight2008-05-181-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://scons.tigris.org/svn/scons/branches/core ........ r2932 | garyo | 2008-04-30 09:14:38 -0700 (Wed, 30 Apr 2008) | 1 line Add doc for site_scons dir and related options. Closes issue #1996. ........ r2934 | stevenknight | 2008-04-30 22:05:38 -0700 (Wed, 30 Apr 2008) | 3 lines Issue 2039: Fix a syntax error in Intel C compiler support on Windows. (Jonas Olsson) ........ r2935 | belley | 2008-05-01 06:59:21 -0700 (Thu, 01 May 2008) | 10 lines test/KeyboardInterrupt.py no longer hangs under Cygwin. There seems to be a bug on Cygwin where the compiler process hangs after sending the SIGINT signal to the process group. It is probably a bug in cygwin1.dll, or maybe in the Python 'C' code or the Python subprocess module. We therefore do not use 'killpg' on Cygwin. Benoit ........ r2936 | belley | 2008-05-01 07:10:23 -0700 (Thu, 01 May 2008) | 12 lines cell_contents not defined in python < 2.5. [Issue 2035] Some versions of Python supports lexical scoping of local variables (aka closures) but not the cell_contents attribute that would allow the FunctionAction signature that take the content of these closure cells into account. The access to the cell_contents attribute is now protected with a try/except AttributeError so that at least the other parts of the function signature are properly computed. Benoit ........ r2937 | stevenknight | 2008-05-01 12:08:25 -0700 (Thu, 01 May 2008) | 3 lines When running tests, allow the user to set the $SCONSIGN variable to pick a specific sconsign script to execute. ........ r2938 | stevenknight | 2008-05-02 19:13:14 -0700 (Fri, 02 May 2008) | 2 lines Set svn:ignore to '*.py[co]'. ........ r2939 | stevenknight | 2008-05-08 21:07:18 -0700 (Thu, 08 May 2008) | 4 lines Issue 2033: Fix excessive memory use when a Python Value node's representation is stored in a .sconsign file and then re-stored after being interpreted with escaped backslashes and quotes. ........ r2940 | cournape | 2008-05-16 03:56:49 -0700 (Fri, 16 May 2008) | 1 line Fix issue 2054. ........ r2941 | stevenknight | 2008-05-16 12:02:45 -0700 (Fri, 16 May 2008) | 8 lines Issue 2045: After a Node has failed its build and we're propagating the failure to other Nodes on the candidate list, don't marke candidate Nodes as FAILED if they've already been visited and been determined to be up-to-date. This avoids problems with Configure tests not running because failure of an earlier Configure tests caused (e.g.) /usr/bin/g++ to get marked as FAILED, making SCons think it doesn't need to bother trying to rebuild anything that will use it... ........ r2942 | stevenknight | 2008-05-16 12:10:14 -0700 (Fri, 16 May 2008) | 8 lines Improve the regular expressions used by the test infrastructure to examine SCons output to decide if a list of targets are considered up-to-date or not. The new code uses the re.escape() function instead of hand-escaping '.' and '\n'. This required a little restructuring in the not_up_to_date() method to escape the characters within the arguments themselves, but not the surrounding characters we use to construct the regex that makes sure those strings *don't* exist in the output. ........ r2943 | stevenknight | 2008-05-16 14:04:23 -0700 (Fri, 16 May 2008) | 3 lines Issue 2049: Handle multiple pipe-separated values in Visual Studio for INCLUDE, LIB and PATH. Still only uses Win32, not any other values. ........ r2944 | stevenknight | 2008-05-16 18:36:27 -0700 (Fri, 16 May 2008) | 2 lines Record changes by David Cournapeau and Benoit Belley. ........ r2945 | stevenknight | 2008-05-17 07:13:46 -0700 (Sat, 17 May 2008) | 3 lines Pass in dc as a keyword argument to _smartLink for older Python versions without nested scopes. ........ r2946 | stevenknight | 2008-05-17 07:14:01 -0700 (Sat, 17 May 2008) | 3 lines Expect a warning about shadowing global variables on Python 2.1. (This code can go away after we release 1.0.) ........