summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorWilliam Deegan <bill@baddogconsulting.com>2011-01-27 06:34:42 (GMT)
committerWilliam Deegan <bill@baddogconsulting.com>2011-01-27 06:34:42 (GMT)
commit2314323fb1826ab4e1950fe79637292a9e19d9a5 (patch)
treee6310973f9ce4b1b4df14a060526ce27e2a08636 /src
parenta7c8d242d950064970ddd69e5e5577511e47d850 (diff)
downloadSCons-2314323fb1826ab4e1950fe79637292a9e19d9a5.zip
SCons-2314323fb1826ab4e1950fe79637292a9e19d9a5.tar.gz
SCons-2314323fb1826ab4e1950fe79637292a9e19d9a5.tar.bz2
Fix for bug 2558. Handle .output file generated by bison or yacc properly. Make SCons aware that it's a SideEffect, and clean it when SCons cleans
Diffstat (limited to 'src')
-rw-r--r--src/CHANGES.txt4
-rw-r--r--src/engine/SCons/Tool/yacc.py10
2 files changed, 14 insertions, 0 deletions
diff --git a/src/CHANGES.txt b/src/CHANGES.txt
index 248938d..4619955 100644
--- a/src/CHANGES.txt
+++ b/src/CHANGES.txt
@@ -7,6 +7,10 @@
RELEASE 2.1.0.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE
+ From Robert Lehr:
+ - Handle .output file generated by bison/yacc properly. Cleaning it
+ when necessary.
+
From Antoine Dechaume:
- Handle SWIG file where there is whitespace after the module name
properly. Previously the generated files would include
diff --git a/src/engine/SCons/Tool/yacc.py b/src/engine/SCons/Tool/yacc.py
index ca5e2fc..5896cbe 100644
--- a/src/engine/SCons/Tool/yacc.py
+++ b/src/engine/SCons/Tool/yacc.py
@@ -61,6 +61,16 @@ def _yaccEmitter(target, source, env, ysuf, hsuf):
base, ext = os.path.splitext(SCons.Util.to_String(source[0]))
target.append(base + env.subst("$YACCVCGFILESUFFIX"))
+ # If -v is specirfied yacc will create the output debug file
+ # which is not really source for any process, but should
+ # be noted and also be cleaned
+ # Bug #2558
+ if "-v" in flags:
+ env.SideEffect(targetBase+'.output',target[0])
+ env.Clean(target[0],targetBase+'.output')
+
+
+
# With --defines and --graph, the name of the file is totally defined
# in the options.
fileGenOptions = ["--defines=", "--graph="]