summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2002-03-12 20:42:17 (GMT)
committerSteven Knight <knight@baldmt.com>2002-03-12 20:42:17 (GMT)
commit50ef9e4b3dbf4f1a345297d12ffe98679c50d9d1 (patch)
tree6d35999fb53e81acf9fdbdd1f96ad89519f1dec5 /src/engine/SCons
parent136f9a0b1742fb37db047d923dccacb2f5d5f9ad (diff)
downloadSCons-50ef9e4b3dbf4f1a345297d12ffe98679c50d9d1.zip
SCons-50ef9e4b3dbf4f1a345297d12ffe98679c50d9d1.tar.gz
SCons-50ef9e4b3dbf4f1a345297d12ffe98679c50d9d1.tar.bz2
Add a --profile=file option.
Diffstat (limited to 'src/engine/SCons')
-rw-r--r--src/engine/SCons/Script/__init__.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/engine/SCons/Script/__init__.py b/src/engine/SCons/Script/__init__.py
index 0be6653..5472e10 100644
--- a/src/engine/SCons/Script/__init__.py
+++ b/src/engine/SCons/Script/__init__.py
@@ -511,6 +511,15 @@ def options_init():
short = 'p',
help = "Print internal environments/objects.")
+ def opt_profile(opt, arg):
+ sys.argv = filter(lambda x: x[0:10] != "--profile=", sys.argv)
+ import profile
+ profile.run('SCons.Script.main()', arg)
+
+ Option(func = opt_profile,
+ long = ['profile'], arg = 'FILE',
+ help = "Profile SCons and put results in FILE.")
+
def opt_q(opt, arg):
global task_class
task_class = QuestionTask