aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChad Austin <chad@imvu.com>2013-01-28 17:38:04 -0800
committerChad Austin <chad@imvu.com>2013-03-04 19:00:41 -0800
commitc83c53bfe50f8805a0a4ea8bebdac030a2ac53d1 (patch)
tree1043131591245e4836bfaf4f86b2367397f4bae3
parent90b9f2199f263f8feaa7ffb16d0c2cb42dcc9275 (diff)
Remove TempFiles's dependency on global and environment variables
-rwxr-xr-xemscripten.py6
-rw-r--r--tools/js_optimizer.py2
-rw-r--r--tools/shared.py16
3 files changed, 17 insertions, 7 deletions
diff --git a/emscripten.py b/emscripten.py
index 1fc5f190..3ceb0c8e 100755
--- a/emscripten.py
+++ b/emscripten.py
@@ -32,7 +32,7 @@ def path_from_root(*pathelems):
"""
return os.path.join(__rootpath__, *pathelems)
-temp_files = shared.TempFiles()
+temp_files = shared.ConfigureTempFiles()
compiler_engine = None
jcache = False
@@ -574,7 +574,7 @@ def main(args):
emscript(args.infile, settings, args.outfile, libraries)
-if __name__ == '__main__':
+def main():
parser = optparse.OptionParser(
usage='usage: %prog [-h] [-H HEADERS] [-o OUTFILE] [-c COMPILER_ENGINE] [-s FOO=BAR]* infile',
description=('You should normally never use this! Use emcc instead. '
@@ -618,3 +618,5 @@ if __name__ == '__main__':
temp_files.run_and_clean(lambda: main(keywords))
+if __name__ == '__main__':
+ main()
diff --git a/tools/js_optimizer.py b/tools/js_optimizer.py
index 231c6257..c1e800c3 100644
--- a/tools/js_optimizer.py
+++ b/tools/js_optimizer.py
@@ -2,7 +2,7 @@
import os, sys, subprocess, multiprocessing, re
import shared
-temp_files = shared.TempFiles()
+temp_files = shared.ConfigureTempFiles()
__rootpath__ = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
def path_from_root(*pathelems):
diff --git a/tools/shared.py b/tools/shared.py
index c5774c1a..0580cf03 100644
--- a/tools/shared.py
+++ b/tools/shared.py
@@ -425,7 +425,10 @@ def try_delete(filename):
pass
class TempFiles:
- def __init__(self):
+ def __init__(self, tmp, saveDebugFiles=False):
+ self.tmp = tmp
+ self.saveDebugFiles = saveDebugFiles
+
self.to_clean = []
def note(self, filename):
@@ -433,13 +436,13 @@ class TempFiles:
def get(self, suffix):
"""Returns a named temp file with the given prefix."""
- named_file = tempfile.NamedTemporaryFile(dir=TEMP_DIR if not DEBUG else EMSCRIPTEN_TEMP_DIR, suffix=suffix, delete=False)
+ named_file = tempfile.NamedTemporaryFile(dir=self.tmp, suffix=suffix, delete=False)
self.note(named_file.name)
return named_file
def clean(self):
- if os.environ.get('EMCC_DEBUG_SAVE'):
- print >> sys.stderr, 'not cleaning up temp files since in debug-save mode, see them in %s' % EMSCRIPTEN_TEMP_DIR
+ if self.saveDebugFiles:
+ print >> sys.stderr, 'not cleaning up temp files since in debug-save mode, see them in %s' % (self.tmp,)
return
for filename in self.to_clean:
try_delete(filename)
@@ -451,6 +454,11 @@ class TempFiles:
finally:
self.clean()
+def ConfigureTempFiles():
+ return TempFiles(
+ tmp=TEMP_DIR if not DEBUG else EMSCRIPTEN_TEMP_DIR,
+ saveDebugFiles=os.environ.get('EMCC_DEBUG_SAVE'))
+
# Utilities
def check_engine(engine):