diff options
Diffstat (limited to 'tools/shared.py')
-rw-r--r-- | tools/shared.py | 16 |
1 files changed, 12 insertions, 4 deletions
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): |