|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
http://scons.tigris.org/svn/scons/branches/core
........
r2731 | stevenknight | 2008-04-01 09:22:37 -0700 (Tue, 01 Apr 2008) | 4 lines
Fix test/Interactive/version.py, which still had the old hard-coded
Copyright string, by moving the test copy of the Copyright string
into QMTest/TestSCons.py, where it's available to all test scripts.
........
r2732 | stevenknight | 2008-04-02 13:28:32 -0700 (Wed, 02 Apr 2008) | 3 lines
Issues 317, 323, 329: Ignore the -d, -e and -w options, which we're
not going to implement.
........
r2734 | stevenknight | 2008-04-05 07:50:49 -0700 (Sat, 05 Apr 2008) | 2 lines
Fix bootstrap.py for pre-2.3 versions of Python, which don't have __file__.
........
r2735 | stevenknight | 2008-04-05 07:54:44 -0700 (Sat, 05 Apr 2008) | 2 lines
Fix the non-breaking-hyphen regular expression(s) for Python 1.5.
........
r2736 | garyo | 2008-04-05 19:15:52 -0700 (Sat, 05 Apr 2008) | 1 line
Added Users Guide section for AddMethod.
........
r2737 | stevenknight | 2008-04-08 09:43:31 -0700 (Tue, 08 Apr 2008) | 3 lines
Don't raise strings as exceptions in the exception-handling unit tests.
That's now deprecated Python behavior.
........
r2738 | stevenknight | 2008-04-08 10:36:00 -0700 (Tue, 08 Apr 2008) | 5 lines
Address a serious inefficiency in Java builds by moving the pre-build
check for whether source files exist from the Node class to the Executor
class, so we only have to perform the check once when building a whole
bunch of targets from a whole bunch of sources.
........
r2739 | stevenknight | 2008-04-08 13:53:44 -0700 (Tue, 08 Apr 2008) | 2 lines
Add a backwards-compatibility version of the "itertools" module.
........
r2740 | stevenknight | 2008-04-08 14:12:05 -0700 (Tue, 08 Apr 2008) | 2 lines
Issue 1961: speed up SCons.Util.to_String*() functions. (Benoit Belley)
........
r2741 | stevenknight | 2008-04-08 14:15:36 -0700 (Tue, 08 Apr 2008) | 2 lines
Use the itertools.izip() method for some key Node.FS methods. (Benoit Belley)
........
r2742 | stevenknight | 2008-04-08 14:35:35 -0700 (Tue, 08 Apr 2008) | 2 lines
Issues 1961: use izip() instead of zip() where possible (Benoit Belley)
........
r2743 | stevenknight | 2008-04-08 14:48:08 -0700 (Tue, 08 Apr 2008) | 3 lines
Issue 1961: more efficient get_contents() implementation for Python
function Actions. (Benoit Belley)
........
r2744 | stevenknight | 2008-04-08 17:55:30 -0700 (Tue, 08 Apr 2008) | 3 lines
Issue 1961: make SCons.Node.* state variables global in Taskmaster.py so
we avoid unneceesary attribute fetches. (Benoit Belley)
........
r2745 | stevenknight | 2008-04-08 20:40:31 -0700 (Tue, 08 Apr 2008) | 2 lines
Issue 1961: Optimize the code in Node.get_binfo(). (Benoit Belley)
........
r2746 | stevenknight | 2008-04-08 21:05:17 -0700 (Tue, 08 Apr 2008) | 3 lines
Issue 1961: Enhance the backwards-compatibility sets() module with the
ability to compare sets. (Benoit Belley)
........
r2747 | stevenknight | 2008-04-08 22:11:20 -0700 (Tue, 08 Apr 2008) | 2 lines
Issue 1961: Optimize Executor.scan(). (Benoit Belley)
........
r2748 | stevenknight | 2008-04-08 22:17:55 -0700 (Tue, 08 Apr 2008) | 3 lines
Python 1.5 compatibility: use for p in paths.keys() for dictionaries.
(Benoit Belley)
........
r2749 | stevenknight | 2008-04-08 22:54:02 -0700 (Tue, 08 Apr 2008) | 10 lines
Issue 1961: additional build optimizations:
-- Make taskmastertrace output more useful and readable.
-- Move dependency cycle checking to avoid re-doing it.
-- Have Nodes use sets, not dictionaries, to track various things.
-- Eliminate intermediate function calls from fetching Node children.
-- Add a Task.needs_execute() method to avoid doing that check over and
over as part of needs_execute().
-- Remove the unused Node.found_includes attribute.
(Benoit Belley)
........
r2750 | stevenknight | 2008-04-09 14:47:44 -0700 (Wed, 09 Apr 2008) | 4 lines
Make target Java .class files depend *only* on the input .java files as
their sources when determining if they require rebuilding. This eliminates
O(NxM) checking for every single edge in a big, overly-connected DAG mesh.
........
r2751 | stevenknight | 2008-04-09 16:58:41 -0700 (Wed, 09 Apr 2008) | 2 lines
Remove 0.95 and 0.96* release notes.
........
r2752 | stevenknight | 2008-04-10 02:24:50 -0700 (Thu, 10 Apr 2008) | 2 lines
Issue 1956: Fix --debug=stree printing its tree twice. (Benoit Belley)
........
r2753 | stevenknight | 2008-04-10 02:33:28 -0700 (Thu, 10 Apr 2008) | 2 lines
Issue 1896: Add support for the GDC D language compiler. (Matthew Wesley)
........
r2754 | stevenknight | 2008-04-10 02:39:24 -0700 (Thu, 10 Apr 2008) | 2 lines
Fix tabs.
........
r2755 | stevenknight | 2008-04-10 02:41:50 -0700 (Thu, 10 Apr 2008) | 3 lines
Issue 1964: Fix passing variable names in a list to Return() (as
already documented in the man page!) (Mike Wake)
........
r2756 | stevenknight | 2008-04-10 02:55:40 -0700 (Thu, 10 Apr 2008) | 2 lines
Support the ability to download 2.6 candidate releases (e.g. 2.6a2).
........
r2757 | stevenknight | 2008-04-10 02:58:35 -0700 (Thu, 10 Apr 2008) | 3 lines
Issue 1669: Fix the ability to use LoadableModule() under MinGW.
(Johan Boule)
........
r2758 | stevenknight | 2008-04-10 03:03:15 -0700 (Thu, 10 Apr 2008) | 3 lines
Update the test/Interactive/tree.py script for Benoit's fix to
remove duplicate tree printing.
........
r2759 | stevenknight | 2008-04-10 06:43:44 -0700 (Thu, 10 Apr 2008) | 3 lines
Fix Tool/dmd.py when no D compiler is installed -- we don't want to
search for a path if the result is None.
........
r2760 | GregNoel | 2008-04-10 15:30:34 -0700 (Thu, 10 Apr 2008) | 1 line
Issue 2009: separate Debug.caller() by functionality
........
r2761 | stevenknight | 2008-04-11 04:47:25 -0700 (Fri, 11 Apr 2008) | 3 lines
Issue 1882: Add the scons.bat directory to %PATH% so it can find python.exe.
(Anatoly Techtonik)
........
r2762 | stevenknight | 2008-04-11 09:15:22 -0700 (Fri, 11 Apr 2008) | 4 lines
Issues 1835,1901: fix the ability to list a source file multiple
times for a target by making sure we only store unique entries in the
.sconsign file.
........
r2763 | stevenknight | 2008-04-11 10:58:26 -0700 (Fri, 11 Apr 2008) | 4 lines
Issue 1882: Fix earlier patch to scons.bat by adding ~dp0;~dp0.. to
the front of %PATH%, and only executing endlocal on NT-based systems.
(Anatoly Techtonik)
........
r2764 | stevenknight | 2008-04-11 13:06:29 -0700 (Fri, 11 Apr 2008) | 4 lines
Add a Variables object and {Bool,Envum,List,Package,Path}Variable()
functions as a first step towards eventually deprecating the
Options object and {Bool,Envum,List,Package,Path}Option() functions.
........
r2765 | stevenknight | 2008-04-11 18:13:53 -0700 (Fri, 11 Apr 2008) | 3 lines
Issue 1962: Capture a test case for ListActions that contain a
command-line string containing unicode, and Python FunctionAction.
........
r2766 | stevenknight | 2008-04-11 22:03:14 -0700 (Fri, 11 Apr 2008) | 3 lines
Issue 1933: expect .py files generated by the SWIG -python option
to be in the same (sub)directory as the target.
........
r2767 | stevenknight | 2008-04-12 06:41:57 -0700 (Sat, 12 Apr 2008) | 2 lines
Remove the SCons.Options package in favor of the new SCons.Variables package.
........
r2768 | stevenknight | 2008-04-12 13:33:52 -0700 (Sat, 12 Apr 2008) | 5 lines
Issue 1971: Move the incorporation of $CCFLAGS and $SHCCFLAGS directly
into the C++ command lines (${SHCXX,CXX}COM) instead of through indirect
expansion of $CXXFLAGS and $SHCXXFLAGS. This requires removing -fPIC
from the default setting of $SHCXXFLAGS under the GNU toolchain.
........
r2769 | stevenknight | 2008-04-13 07:01:27 -0700 (Sun, 13 Apr 2008) | 3 lines
Fix __all__ definitions in the Variables/*Variable.py file that were
cause epydoc to blow up when generating developer documentation.
........
r2770 | stevenknight | 2008-04-13 11:47:49 -0700 (Sun, 13 Apr 2008) | 3 lines
Add variables= keyword argument to Environment() creation as a first
step towards deprecating options=.
........
r2771 | stevenknight | 2008-04-13 11:54:19 -0700 (Sun, 13 Apr 2008) | 2 lines
Correct underscore-instead-of-hyphen misspellings in option names.
........
r2772 | bdbaddog | 2008-04-13 17:39:21 -0700 (Sun, 13 Apr 2008) | 3 lines
Changes to fix 15 tests which were failing on cygwin.
........
r2773 | GregNoel | 2008-04-13 22:31:07 -0700 (Sun, 13 Apr 2008) | 1 line
Various fixes to tests on Darwin using 1.5.2
........
r2774 | stevenknight | 2008-04-14 15:00:44 -0700 (Mon, 14 Apr 2008) | 2 lines
Python 1.5.2 fix in new test/SWIG/subdir.py script (use the -classic option).
........
r2775 | belley | 2008-04-14 18:02:40 -0700 (Mon, 14 Apr 2008) | 32 lines
Dont use KeyboardInterrupt to stop a build! [Issue 1907]
SCons would often hang after pressing Ctrl-C. I started investigating and I
realized that most of the Python libraries are not really safe with respect to
asynchronous exceptions. Although,there are enough try/finally blocks to handle
exceptions thrown synchronously by the library code, the Python libraries are
not always protected against exceptions being thrown asynchronously, such as a
KeyboardInterrupt being thrown at a completely random location.
For example, the function Queue.empty() does not protect its mutex with a
try/finally block. If the KeyboardInterrupt exception gets thrown while the
mutex is held, any further attempt to access the Queue will lead to dead-lock
(explaining why SCons hangs sometimes after pressing CTRL-C). Even the
threading.Condition condition variables are not async-exception safe. It
therefore seems a lost battle to try to stop a build by raising an exception.
Instead, I have implemented a signal handler that tells the Jobs (and its
associated Taskmaster) to stop the build. I have been careful to wait after the
.sconsign file has been written back to re-install the default SIGINT signal
handler that raises a KeyboardInterrupt exception.
This patch is submitted against changeset 2773 of branches/core. The
regression test suite has been run on RHEL4 using Pyhon 2.5.1 and
1.5.2. My team has been using an SCons build with this patch for a
while now on Windows, Linux and OSX.
See:
http://scons.tigris.org/issues/show_bug.cgi?id=1907
Benoit Belley
........
r2777 | cournape | 2008-04-14 20:11:56 -0700 (Mon, 14 Apr 2008) | 3 lines
Initialized merge tracking via "svnmerge" with revisions "1-2776" from
http://scons.tigris.org/svn/scons/branches/fortran_refactor
........
r2788 | stevenknight | 2008-04-14 22:09:27 -0700 (Mon, 14 Apr 2008) | 2 lines
Fix the print the "script" line in the --version output.
........
r2789 | stevenknight | 2008-04-14 22:18:27 -0700 (Mon, 14 Apr 2008) | 2 lines
Add a __COPYRIGHT__ line.
........
r2790 | stevenknight | 2008-04-14 22:20:39 -0700 (Mon, 14 Apr 2008) | 3 lines
Issue 2008: in checkpoint releases, use a '.' to separate (e.g.) 0.98.0
from 0d20080414.
........
r2817 | belley | 2008-04-15 06:44:21 -0700 (Tue, 15 Apr 2008) | 13 lines
TestSCons.up_to_date() should use match_re_dotall
I changed TestSCons.up_to_date() to use match_re_dotall instead of
match_exact. This is necessary so that I can call up_to_date() with
the TestSCons.deprecated_python_expr error message in one of my test.
Note that TestSCons.not_up_to_date() is already using match_re_dotall.
Ran the test suite on both Python 2.5.1 and 1.5.2.
Benoit
........
r2818 | belley | 2008-04-15 12:10:52 -0700 (Tue, 15 Apr 2008) | 10 lines
Improved the multiple-parents.py test to also tests the following
cases:
d) Some children are ignored
e) Some children are pre-requesites
f) Some sources are missing
The test still passes. No extra bug were found.
........
r2850 | stevenknight | 2008-04-16 11:15:24 -0700 (Wed, 16 Apr 2008) | 4 lines
Fix problems with the __del__() method referencing other module functions
through global variables, which can get deleted out from under us at
shutdown.
........
r2851 | stevenknight | 2008-04-16 11:17:07 -0700 (Wed, 16 Apr 2008) | 4 lines
Fix use of --interactive with -u/-U/-D and VariantDir() by making the
method that cleans Node states between interactive commands aware of
the alter_targets() method that tells us about an associated VariantDir().
........
|
|
http://scons.tigris.org/svn/scons/branches/core
........
r2528 | stevenknight | 2007-12-13 06:08:21 -0800 (Thu, 13 Dec 2007) | 5 lines
Remove the .del_binfo() method, no longer needed since the Big Signature
Refactoring causes us to visit every Node in order during the DAG walk,
and the BuildInfo object now just holds information for storage in the
.sconsign file.
........
r2529 | stevenknight | 2007-12-13 13:17:15 -0800 (Thu, 13 Dec 2007) | 3 lines
Fix the --keep-going flag so it builds all possible targets even when
a later top-level target depends on a child that failed its build.
........
r2530 | stevenknight | 2007-12-14 04:02:05 -0800 (Fri, 14 Dec 2007) | 4 lines
Issue 1715: BuildDir(duplicate=0) support for Tex/LaTeX.
Re-run LaTeX in response to package warnings.
(Rob Managan)
........
r2531 | stevenknight | 2007-12-14 07:14:31 -0800 (Fri, 14 Dec 2007) | 3 lines
Refactor the max_drift logic around fetching stored signatures into
its own new method.
........
r2532 | stevenknight | 2007-12-14 07:18:44 -0800 (Fri, 14 Dec 2007) | 3 lines
Have get_csig() return the stored content signature if max_drift
says it's okay.
........
r2533 | stevenknight | 2007-12-14 18:34:51 -0800 (Fri, 14 Dec 2007) | 2 lines
Issue 1859: Support SWIG statements like %module(directors="1").
........
r2534 | stevenknight | 2007-12-15 03:51:13 -0800 (Sat, 15 Dec 2007) | 3 lines
Python 2.1 portability fix w.r.t. "import SCons" and "import
SCons.platform.win32" and binding local variables and whatnot.
........
r2535 | stevenknight | 2007-12-15 03:51:56 -0800 (Sat, 15 Dec 2007) | 2 lines
Python 1.5 fix: use the -classic flag when invoking SWIG.
........
r2536 | stevenknight | 2007-12-15 06:03:48 -0800 (Sat, 15 Dec 2007) | 4 lines
Support subclasses of the new-style str() class as input to Builders
and the like. Also speed up all of the Util.is_*() functions when using
new-style classes by just using isinstance() internally.
........
r2537 | stevenknight | 2007-12-15 06:35:49 -0800 (Sat, 15 Dec 2007) | 3 lines
Issue 1851: Fix being able to use $PDB and $WINDOWS_INSERT_MANIFEST together.
(Benoit Belley)
........
r2538 | stevenknight | 2007-12-15 06:59:43 -0800 (Sat, 15 Dec 2007) | 3 lines
Handle dangling entries for the Intel C compiler in the Windows registry.
(Benoit Belley)
........
r2539 | stevenknight | 2007-12-15 09:51:59 -0800 (Sat, 15 Dec 2007) | 2 lines
Reorganize library-related tests into a separate subdirectory.
........
r2540 | stevenknight | 2007-12-15 09:57:29 -0800 (Sat, 15 Dec 2007) | 4 lines
Issue 1850: better support for non-standard shared library prefixes and
suffixes by stripping all prefixes and suffixes in lists of $SHLIBPREFIXES
and $SHLIBSUFFIXES. (Benoit Belley)
........
r2541 | stevenknight | 2007-12-15 18:49:15 -0800 (Sat, 15 Dec 2007) | 2 lines
Python 1.5 portability fixes.
........
r2542 | stevenknight | 2007-12-15 19:02:39 -0800 (Sat, 15 Dec 2007) | 3 lines
Issue 1768: Have the D language scanner search for .di files as well
as .d files. (Jerome Berger)
........
r2543 | stevenknight | 2007-12-16 14:31:40 -0800 (Sun, 16 Dec 2007) | 3 lines
Add a find_include_names() method to the Scanner.Classic class to abstract
out how included names can be generated by subclasses. (Jerome Berger)
........
r2544 | stevenknight | 2007-12-16 14:31:54 -0800 (Sun, 16 Dec 2007) | 3 lines
Add a find_include_names() method to the Scanner.Classic class to abstract
out how included names can be generated by subclasses. (Jerome Berger)
........
r2545 | stevenknight | 2007-12-16 15:04:43 -0800 (Sun, 16 Dec 2007) | 3 lines
Issue 1860: Support the D scanner returning multiple modules from a
single import statement. (Jerome Berger)
........
r2546 | stevenknight | 2007-12-16 17:41:17 -0800 (Sun, 16 Dec 2007) | 3 lines
Issue 1861: Fix the ability to #include a file (or search other $*PATH
variables) that has an absoluate path.
........
r2547 | stevenknight | 2007-12-18 08:09:59 -0800 (Tue, 18 Dec 2007) | 2 lines
Replace uses of "is_List() or is_Tuple()" with is_Sequence().
........
r2548 | stevenknight | 2007-12-18 08:13:14 -0800 (Tue, 18 Dec 2007) | 2 lines
Report the incorrect value in assertions.
........
r2549 | stevenknight | 2007-12-19 07:58:56 -0800 (Wed, 19 Dec 2007) | 3 lines
Fix handling #includes of absolute path names when the path doesn't
exist (implicitly, because it's #ifdef'ed out).
........
r2550 | stevenknight | 2007-12-19 08:29:24 -0800 (Wed, 19 Dec 2007) | 4 lines
Fix test path examination when the temporary directory location
is redirected via symlinks (e.g. /usr/tmp -> /var/tmp on Red Hat).
(Benoit Belley)
........
r2551 | stevenknight | 2007-12-19 08:30:17 -0800 (Wed, 19 Dec 2007) | 2 lines
Fix scons-time path reporting when symlinks are involved. (Benoit Belley)
........
r2552 | stevenknight | 2007-12-19 22:51:18 -0800 (Wed, 19 Dec 2007) | 4 lines
Issue 1855: Reduce the worker thread stack size to a default of 256
Kbytes. Add a --stack-size= command-line option, also configurable
via SetOption('stack_size'). (Benoit Belley)
........
r2553 | stevenknight | 2007-12-20 18:25:50 -0800 (Thu, 20 Dec 2007) | 2 lines
Skip this test if SWIG isn't installed.
........
r2554 | stevenknight | 2007-12-20 18:26:21 -0800 (Thu, 20 Dec 2007) | 2 lines
Accomodate slightly different permissions errors on Ubuntu Gutsy.
........
r2555 | stevenknight | 2007-12-21 02:12:09 -0800 (Fri, 21 Dec 2007) | 3 lines
Fix a Python 2.2 quirk in the reported file name ("<string>") when
encountering a SyntaxError in a SConstruct file.
........
r2556 | stevenknight | 2007-12-21 02:12:35 -0800 (Fri, 21 Dec 2007) | 2 lines
Enforce order between the build of f1.out and f2.out.
........
r2557 | stevenknight | 2007-12-21 02:12:55 -0800 (Fri, 21 Dec 2007) | 2 lines
Don't die if the Python version doesn't have os.path.realpath().
........
r2558 | stevenknight | 2007-12-21 02:13:19 -0800 (Fri, 21 Dec 2007) | 2 lines
Refactor the test/build-errors.py script into separate scripts for each test.
........
r2559 | stevenknight | 2007-12-21 08:08:12 -0800 (Fri, 21 Dec 2007) | 3 lines
Issue 1864: Add a CheckDeclaration() call to configure contexts.
(David Cournapeau)
........
r2560 | stevenknight | 2007-12-21 08:18:47 -0800 (Fri, 21 Dec 2007) | 2 lines
Issue 1865: Improve the CheckTypeSize() code. (David Cournapeau)
........
r2561 | stevenknight | 2007-12-21 08:21:47 -0800 (Fri, 21 Dec 2007) | 2 lines
Fix os.path.realpath() handling (a Python 2.1 portability issue).
........
r2562 | stevenknight | 2007-12-21 14:08:39 -0800 (Fri, 21 Dec 2007) | 2 lines
Split CPPDEFINES.py into separate sub-test scripts.
........
r2563 | stevenknight | 2007-12-21 15:56:26 -0800 (Fri, 21 Dec 2007) | 6 lines
Support proper expansion of construction variables containing lists
within expansions like $CPPPATH.
Change env.subst() to return a list, not a joined string, when the
input is a list.
(Konstantin Bozhikov)
........
r2564 | stevenknight | 2007-12-22 04:15:11 -0800 (Sat, 22 Dec 2007) | 2 lines
Normalize the ModDate field when comparing generated PDF files.
........
r2565 | stevenknight | 2007-12-22 22:01:45 -0800 (Sat, 22 Dec 2007) | 5 lines
Java test refactoring to commonize construction environment initialization
and searching for javac / javah / jar / rmic.
Don't look for *_Skel.class files to be created by Java 1.[56].
Minor Java code changes to deal with compiler warnings.
........
r2566 | stevenknight | 2007-12-23 05:20:45 -0800 (Sun, 23 Dec 2007) | 2 lines
Don't still look for *_Skel.class files.
........
r2567 | stevenknight | 2007-12-23 07:30:36 -0800 (Sun, 23 Dec 2007) | 5 lines
Fix Intel C compiler issues:
Issue 1863: Fix failure to match /opt/intel_cc_* directories. (Benoit Belley)
Issue 1866: Fix topdir when the version isn't specified. (Jonas Olsson)
Issue 1867: Fix use of network licenses. (Jonas Olsson)
........
r2573 | stevenknight | 2008-01-01 09:59:16 -0800 (Tue, 01 Jan 2008) | 3 lines
Add asynchronous subprocess communication via new start() and finish()
methods.
........
r2574 | stevenknight | 2008-01-01 10:02:26 -0800 (Tue, 01 Jan 2008) | 4 lines
Minor code cleanup: attach the version string to the options parser
object, instead of passing it in to deal with the lack of nested scopes
in Python 1.5.2.
........
r2575 | stevenknight | 2008-01-01 10:08:46 -0800 (Tue, 01 Jan 2008) | 4 lines
Rename the CacheDir class and let the name CacheDir be a variable that
can be reset at will, depending on whether CacheDir() support is enabled
or disabled at any particular time.
........
r2576 | stevenknight | 2008-01-01 10:14:58 -0800 (Tue, 01 Jan 2008) | 2 lines
Restore the Node.del_binfo() method and its call in Node.clear().
........
r2577 | stevenknight | 2008-01-02 07:51:25 -0800 (Wed, 02 Jan 2008) | 6 lines
Refactor CacheDir support (again) for --interactive mode. Delay effects
of --cache-* settings until they're needed by getting rid of the Null()
object pattern and the functional programming idiom of replacing the
CacheDebug method. Have the Environment.CacheDir() method just record
the path for later instantiation.
........
r2578 | stevenknight | 2008-01-02 18:48:12 -0800 (Wed, 02 Jan 2008) | 3 lines
Issue 1657: Add a --interactive option to create a command-line
interpreter for re-building targets without re-reading SConscript files.
........
r2579 | stevenknight | 2008-01-02 21:54:38 -0800 (Wed, 02 Jan 2008) | 2 lines
Python 1.5.2 portability fix (no use of +=).
........
r2580 | stevenknight | 2008-01-02 21:54:47 -0800 (Wed, 02 Jan 2008) | 3 lines
Use a regular expression to avoid having to match a specific
MD5 checksum value in the --cache-debug output.
........
r2581 | stevenknight | 2008-01-02 21:54:59 -0800 (Wed, 02 Jan 2008) | 4 lines
Don't bother looking for shlex.split(), since our compatibility layer
provides it in older Python version. Make the compatibility version of
shlex.split() not treat '.' as a token separator.
........
r2582 | stevenknight | 2008-01-02 21:56:15 -0800 (Wed, 02 Jan 2008) | 3 lines
Python 1.5.2 portability fixes: no list comprehensions, no nested
scopes, no "for x in" a dictionary.
........
r2583 | stevenknight | 2008-01-03 07:39:59 -0800 (Thu, 03 Jan 2008) | 3 lines
Fix a left-over use of a string method.
Fix printing --interactive help text, which I outright broke last checkin.
........
r2584 | stevenknight | 2008-01-03 07:58:56 -0800 (Thu, 03 Jan 2008) | 4 lines
Import the vanilla Python2.5 shlex module, which we'll use as a basis
for retrofitting to old Python versions to provide shlex.split()
functionality.
........
r2585 | stevenknight | 2008-01-03 08:01:02 -0800 (Thu, 03 Jan 2008) | 3 lines
Modifications to the vanilla Python 2.5 shlex module to make it work
back to Python 1.5.
........
r2586 | stevenknight | 2008-01-03 08:04:31 -0800 (Thu, 03 Jan 2008) | 3 lines
Use the new shlex compatibility module if we're using an old version of
Python with a native shlex module that has no shlex.split() function.
........
r2587 | stevenknight | 2008-01-03 09:31:15 -0800 (Thu, 03 Jan 2008) | 3 lines
Fix the ParseFlags() unit test now that we have a real shlex.split()
function even on earlier Python versions.
........
r2588 | stevenknight | 2008-01-06 04:52:05 -0800 (Sun, 06 Jan 2008) | 3 lines
Add compat/_scons_shlex.py to exception lists for __copyright__ and
__revision__ strings.
........
r2589 | stevenknight | 2008-01-06 06:32:07 -0800 (Sun, 06 Jan 2008) | 2 lines
Remove leftover debug print.
........
r2590 | stevenknight | 2008-01-06 07:35:46 -0800 (Sun, 06 Jan 2008) | 3 lines
Change the test to work by wrapping the public .__call__() method
of the C scanner, instead of the internal .scan() method.
........
r2591 | stevenknight | 2008-01-06 07:39:12 -0800 (Sun, 06 Jan 2008) | 3 lines
Use the public CScan.path() method, not the internal CScan.path_function
attribute.
........
r2592 | stevenknight | 2008-01-07 02:55:53 -0800 (Mon, 07 Jan 2008) | 2 lines
Use a tuple instead of a list for the cpp module path(s).
........
r2593 | stevenknight | 2008-01-07 03:10:28 -0800 (Mon, 07 Jan 2008) | 2 lines
Don't die if a macro function expands to a non-string (an integer).
........
r2594 | stevenknight | 2008-01-07 03:29:12 -0800 (Mon, 07 Jan 2008) | 3 lines
Python 1.5 throws TypeError, not AttributeError if you try to
string.split() a non-string value.
........
r2595 | stevenknight | 2008-01-07 03:30:18 -0800 (Mon, 07 Jan 2008) | 3 lines
Reduce duplicate execution of individual test_*() unit test methods
by eliminating duplicates (if the set() type is avaiable).
........
r2596 | stevenknight | 2008-01-07 06:57:30 -0800 (Mon, 07 Jan 2008) | 6 lines
Add a basic test of in-line #include handling.
Sort the test names.
Don't os.path.join() the directory name if we
find the file in the current directory.
Use os.curdir instead of hard-coding '.' as the current directory.
........
r2597 | stevenknight | 2008-01-07 06:59:29 -0800 (Mon, 07 Jan 2008) | 3 lines
Read files with a new .read_file() method, so it can be overridden
by subclasses.
........
r2598 | stevenknight | 2008-01-07 17:59:50 -0800 (Mon, 07 Jan 2008) | 6 lines
Record the name of the file currently being processed.
Make the public API (the .__call__() method) passing in a file name to
be opened, and have it call a new, separate .process_contents() method
(the old .__call__() method) for handling in-memory strings.
........
r2599 | stevenknight | 2008-01-07 20:03:18 -0800 (Mon, 07 Jan 2008) | 3 lines
Make the test failure informative when we don't find the includes
we expect by printing the expected string and actual output.
........
r2600 | stevenknight | 2008-01-07 20:24:21 -0800 (Mon, 07 Jan 2008) | 2 lines
Handle no white space after #include (e.g. #include<foo.h>).
........
r2601 | stevenknight | 2008-01-07 21:01:27 -0800 (Mon, 07 Jan 2008) | 4 lines
Fixes for older Python versions:
No tempfile.mktemp(prefix=) argument.
No string methods.
........
r2602 | stevenknight | 2008-01-08 20:57:30 -0800 (Tue, 08 Jan 2008) | 3 lines
Fix command-line editing of --interactive mode with the readline module
by only changing sys.stdout to our Unbuffered class if it isn't a tty.
........
r2603 | stevenknight | 2008-01-08 22:12:20 -0800 (Tue, 08 Jan 2008) | 4 lines
Fix the --interactive "build" command with no targets: build the
specified Default() targets; issue an error message but don't exit if
Default(None) is explicity specified.
........
r2604 | stevenknight | 2008-01-09 05:00:36 -0800 (Wed, 09 Jan 2008) | 9 lines
Improve Python functions used as actions by incorporating into their
build signatures:
- literal values referenced by the byte code.
- values of default arguments
- code of nested functions
- values of variables captured by closures
- names of referenced global variables and functions
(Benoit Belley)
........
r2605 | stevenknight | 2008-01-09 06:39:03 -0800 (Wed, 09 Jan 2008) | 4 lines
Add a Configure.Define() method for adding arbitrary #define lines
to generated configure header files.
(David Cournapeau)
........
r2606 | stevenknight | 2008-01-09 07:33:21 -0800 (Wed, 09 Jan 2008) | 4 lines
Issue 1858: Fix the closing message when --clean and --keep-going are
both used so it only reports errors if some actually occurred.
(Benoit Belley)
........
r2607 | stevenknight | 2008-01-09 07:51:55 -0800 (Wed, 09 Jan 2008) | 3 lines
Issue 1843: Add a gfortran Tool module for the GNU F95/F2003 compiler.
(David Cournapeau)
........
r2608 | stevenknight | 2008-01-09 09:31:15 -0800 (Wed, 09 Jan 2008) | 4 lines
Issue 1733: If $JARCHDIR isn't set explicitly, use the .java_classdir
attribute that was set when the Java() Builder built the .class files.
(Jan Nijtmans)
........
r2609 | stevenknight | 2008-01-09 11:27:28 -0800 (Wed, 09 Jan 2008) | 4 lines
Allow Scanner.FindPathDirs objects to not take a dir= keyword argument
when called. (The code already detects that and uses the current
directory if necessary.)
........
r2610 | stevenknight | 2008-01-09 12:23:26 -0800 (Wed, 09 Jan 2008) | 3 lines
Allow subclass overrides of results-handling by the addition of
new initialize_result() and finalize_result() methods.
........
r2611 | stevenknight | 2008-01-09 14:49:50 -0800 (Wed, 09 Jan 2008) | 6 lines
Capture new C Scanner glue code that knows how to use $CPPDEFINES to
evaluate CPP #if/#ifdef/#elif/#else lines. Currently disabled (including
the test script that validates the behavior) while we look for the right
way to let users configure the feature, and work on performance issues
with its O(N*M) algorithm.
........
r2612 | stevenknight | 2008-01-24 20:42:57 -0800 (Thu, 24 Jan 2008) | 3 lines
Fix regular expression comparisons on Windows by escaping the \ path
separators.
........
r2613 | stevenknight | 2008-01-24 20:49:04 -0800 (Thu, 24 Jan 2008) | 3 lines
Rename a created stub script from "cmd.py" so it doesn't mistakenly
get imported by the "import cmd" statement in Script/Interactive.py.
........
r2614 | stevenknight | 2008-01-24 20:56:05 -0800 (Thu, 24 Jan 2008) | 4 lines
Fix a race condition between the actions executed by the worker threads
by having the dependent action print its own execution line, and telling
SCons to treat it silently (strfunction=None).
........
r2615 | stevenknight | 2008-01-24 20:59:03 -0800 (Thu, 24 Jan 2008) | 2 lines
Remove left-over commented-out lines.
........
r2616 | stevenknight | 2008-01-24 21:59:49 -0800 (Thu, 24 Jan 2008) | 7 lines
Windows portability in --interactive mode and its tests:
Quote target names that may have spaces in them. Use the .exe suffix
on a generated executable. Use the subprocess .wait() method to get the
subprocess exit status when shelling out on Windows. Use an Unbuffered
object for stderr (when it's not a tty).
........
r2617 | stevenknight | 2008-01-24 22:14:49 -0800 (Thu, 24 Jan 2008) | 3 lines
Issue 1886: Fix the ability to build Aliases in --interactive mode.
(Gary Oberbrunner)
........
r2618 | stevenknight | 2008-01-24 22:33:29 -0800 (Thu, 24 Jan 2008) | 3 lines
Issue 1886: Handle Python versions that throw TypeError when they can't
pickle a nested function. (Gary Oberbrunner)
........
r2619 | stevenknight | 2008-01-24 22:38:44 -0800 (Thu, 24 Jan 2008) | 3 lines
Fix the LoadableModule.py test when run on Intel Macs (look for the
string i386 in the file output, in addition to ppc).
........
r2620 | stevenknight | 2008-01-25 06:50:43 -0800 (Fri, 25 Jan 2008) | 4 lines
Issue 1892: use "link" instead of "gnulink" for the Mac tool chain,
since it doesn't understand the -rpath option and can't use $RPATH.
(David Cournapeau)
........
r2621 | stevenknight | 2008-01-25 07:51:56 -0800 (Fri, 25 Jan 2008) | 2 lines
Issue 1893: add Intel C compiler support on Mac OS X. (Benoit Belley)
........
r2622 | stevenknight | 2008-01-25 21:48:16 -0800 (Fri, 25 Jan 2008) | 2 lines
Fix how we handle falling back to timestamps when no md5.py module exists.
........
r2623 | stevenknight | 2008-01-26 16:55:56 -0800 (Sat, 26 Jan 2008) | 5 lines
Work around a metaclass / new.instancemethod() bug in base Python 2.2 by
disallowing --debug=memoizer functionality if Python can't handle the
Memoizer initialization (much like we do for earlier Python versions
that don't have metaclasses at all).
........
r2624 | stevenknight | 2008-01-26 18:22:14 -0800 (Sat, 26 Jan 2008) | 4 lines
Fix CacheDir by simplifying how the NullEnvironment hands back something
that looks enough like a CacheDir object that the rest of the code
doesn't require special handling.
........
r2625 | stevenknight | 2008-01-26 20:56:17 -0800 (Sat, 26 Jan 2008) | 2 lines
Have the "scons-time time" subcommand handle empty files gracefully.
........
r2626 | stevenknight | 2008-01-26 20:57:21 -0800 (Sat, 26 Jan 2008) | 3 lines
Add a Trace() statement to the Node.changed() method if the dependency
lists are different lengths.
........
r2627 | stevenknight | 2008-01-26 21:30:59 -0800 (Sat, 26 Jan 2008) | 3 lines
Have the "scons-time time --which" subcommand handle files that don't
contain the requested results
........
r2628 | stevenknight | 2008-01-26 21:52:51 -0800 (Sat, 26 Jan 2008) | 2 lines
Fix the ability to draw vertical bars with --fmt gnuplot option.
........
r2629 | stevenknight | 2008-01-26 22:23:10 -0800 (Sat, 26 Jan 2008) | 3 lines
Allow "scons-time run" to copy non-archive files for timing.
Document the archive_list config file variable.
........
r2630 | stevenknight | 2008-01-27 10:38:11 -0800 (Sun, 27 Jan 2008) | 3 lines
Use the maximum Y value, not the maximum X value, as the top Y endpoint
of a vertical bar drawn with --fmt=gnuplot.
........
r2631 | stevenknight | 2008-01-27 12:05:40 -0800 (Sun, 27 Jan 2008) | 2 lines
Make scons-time more robust when handling log files that have no results.
........
r2632 | stevenknight | 2008-01-27 12:49:02 -0800 (Sun, 27 Jan 2008) | 2 lines
Rotate label positions so they don't overwrite each other.
........
r2633 | stevenknight | 2008-01-27 16:21:17 -0800 (Sun, 27 Jan 2008) | 2 lines
Extend vertical bars to graph top, not maximum X value.
........
r2634 | stevenknight | 2008-01-27 18:08:19 -0800 (Sun, 27 Jan 2008) | 2 lines
Capture three configurations for timing various aspects of SCons.
........
r2635 | stevenknight | 2008-01-28 04:55:12 -0800 (Mon, 28 Jan 2008) | 2 lines
Fix jar calls to use "tf" instead of "-t -f" for compatibility with Sun.
........
r2636 | stevenknight | 2008-01-28 12:49:58 -0800 (Mon, 28 Jan 2008) | 6 lines
Refactor cut-and-paste tempdir_re() function into a common method
in QMTest/TestSCons_time.py.
In the refactored code, fix typo of os.path.relpath() where we meant
os.path.realpath(), so we follow the /tmp -> /private/tmp symlink on
Mac OS X.
........
r2637 | stevenknight | 2008-01-28 15:18:14 -0800 (Mon, 28 Jan 2008) | 5 lines
Apple portability in the test for explicit "No such file" error messages
from trying to fork()/exec() a non-existent file name.
Refactor the tests for (non-)expected output in stderr so they're
informative if they fail.
........
r2638 | stevenknight | 2008-01-28 17:54:29 -0800 (Mon, 28 Jan 2008) | 3 lines
Make the test output deterministic by making the InstallAs() targets
(file[23].out) depend on the Install() target (file1.out).
........
r2639 | stevenknight | 2008-01-28 21:37:38 -0800 (Mon, 28 Jan 2008) | 4 lines
On Mac OS X, add -w to LINKFLAGS to suppress warnings about the
directories we specify as -L arguments which don't actually exist.
We just want to make sure that the right directory names show up.
........
r2640 | stevenknight | 2008-01-28 21:38:36 -0800 (Mon, 28 Jan 2008) | 3 lines
On Mac OS X, the generated include file for C++ just tacks ".h" on the end
of the generated .cpp file name. Define $YACCHXXFILESUFFIX accordingly.
........
r2641 | stevenknight | 2008-01-29 04:56:18 -0800 (Tue, 29 Jan 2008) | 3 lines
Add the src/CHANGES.txt for the previous change (Mac OS X bison behavior).
Add a "bison" application entity to the DocBook infrastructure.
........
r2642 | stevenknight | 2008-01-30 05:09:02 -0800 (Wed, 30 Jan 2008) | 5 lines
Improve QT tests for Mac OS X:
More general regular expression match for a "Generated moc file" warning.
Copy libmyqt.dylib to the same directory as the "aaa" executable so
it's found when we run it.
........
r2643 | stevenknight | 2008-01-30 05:19:23 -0800 (Wed, 30 Jan 2008) | 2 lines
Skip the test of Java handling SWIG dependencies if swig isn't installed.
........
r2644 | stevenknight | 2008-01-30 06:44:30 -0800 (Wed, 30 Jan 2008) | 2 lines
Remove left-over print statement.
........
r2645 | stevenknight | 2008-01-30 06:52:54 -0800 (Wed, 30 Jan 2008) | 2 lines
Mac OS X fix: use .dylib, not .so, in the list of "weird suffixes" we test.
........
|