summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorWilliam Deegan <bill@baddogconsulting.com>2015-09-28 17:57:12 (GMT)
committerWilliam Deegan <bill@baddogconsulting.com>2015-09-28 17:57:12 (GMT)
commit936a25097bed77935a44c7397ad45121ea61be66 (patch)
treeb2f818b3c5bdae79f70b75f58347b691af431720 /src
parent60ec8bc52b7c15a3f017a898b20644810609d185 (diff)
parent7e15cea215477c4eb495be1e8459e7eacd02b235 (diff)
downloadSCons-936a25097bed77935a44c7397ad45121ea61be66.zip
SCons-936a25097bed77935a44c7397ad45121ea61be66.tar.gz
SCons-936a25097bed77935a44c7397ad45121ea61be66.tar.bz2
Merged in billcroberts/scons (pull request #226)
Diffstat (limited to 'src')
-rw-r--r--src/CHANGES.txt3
-rw-r--r--src/engine/SCons/Script/Main.py3
-rw-r--r--src/engine/SCons/Script/SConscript.py4
-rw-r--r--src/engine/SCons/Script/__init__.py15
4 files changed, 20 insertions, 5 deletions
diff --git a/src/CHANGES.txt b/src/CHANGES.txt
index f23d847..8e659ee 100644
--- a/src/CHANGES.txt
+++ b/src/CHANGES.txt
@@ -13,6 +13,9 @@ RELEASE VERSION/DATE TO BE FILLED IN LATER
- InstallVersionedLib now available in the DefaultEnvironment context.
- Improves orthogonality of use cases between different Install functions.
+ From William Roberts:
+ - Fix bug 2831 and allow Help() text to be appended to AddOption() help.
+
From Paweł Tomulik:
- Reimplemented versioning for shared libraries, with the following effects
- Fixed tigris issues #3001, #3006.
diff --git a/src/engine/SCons/Script/Main.py b/src/engine/SCons/Script/Main.py
index 323fba9..bd227bd 100644
--- a/src/engine/SCons/Script/Main.py
+++ b/src/engine/SCons/Script/Main.py
@@ -484,6 +484,9 @@ def GetOption(name):
def SetOption(name, value):
return OptionsParser.values.set_option(name, value)
+def PrintHelp(file=None):
+ OptionsParser.print_help(file=file)
+
#
class Stats(object):
def __init__(self):
diff --git a/src/engine/SCons/Script/SConscript.py b/src/engine/SCons/Script/SConscript.py
index 0a5720d..b832ff7 100644
--- a/src/engine/SCons/Script/SConscript.py
+++ b/src/engine/SCons/Script/SConscript.py
@@ -499,9 +499,9 @@ class SConsEnvironment(SCons.Environment.Base):
name = self.subst(name)
return SCons.Script.Main.GetOption(name)
- def Help(self, text):
+ def Help(self, text, append=False):
text = self.subst(text, raw=1)
- SCons.Script.HelpFunction(text)
+ SCons.Script.HelpFunction(text, append=append)
def Import(self, *vars):
try:
diff --git a/src/engine/SCons/Script/__init__.py b/src/engine/SCons/Script/__init__.py
index 90b1fc3..4dcd055 100644
--- a/src/engine/SCons/Script/__init__.py
+++ b/src/engine/SCons/Script/__init__.py
@@ -41,6 +41,7 @@ start_time = time.time()
import collections
import os
+import StringIO
import sys
# Special chicken-and-egg handling of the "--debug=memoizer" flag:
@@ -107,6 +108,7 @@ QuestionTask = Main.QuestionTask
#SConscriptSettableOptions = Main.SConscriptSettableOptions
AddOption = Main.AddOption
+PrintHelp = Main.PrintHelp
GetOption = Main.GetOption
SetOption = Main.SetOption
Progress = Main.Progress
@@ -258,10 +260,17 @@ def _Set_Default_Targets(env, tlist):
#
help_text = None
-def HelpFunction(text):
+def HelpFunction(text, append=False):
global help_text
- if SCons.Script.help_text is None:
- SCons.Script.help_text = text
+ if help_text is None:
+ if append:
+ s = StringIO.StringIO()
+ PrintHelp(s)
+ help_text = s.getvalue()
+ s.close()
+ else:
+ help_text = ""
+ help_text = help_text + "\nLocal Build Variables:\n" + text
else:
help_text = help_text + text