Remove hack from dotest.py to fix extra output on -P command, and fix MacOSX multi-threaded test run collisions on crashlog.dylib.

On MacOSX, we need to adjust the way we clean up the crashlog dylib in deleteCrashInfoDylib().
Right now it is only geared to run one test at a time.  For now I'm just skipping the delete.
I'll work with Apple on a fix that handles this.  It seems to only cause one dylib total to
hang around that might otherwise have been deleted.  Fixes MacOSX multiple tests running
at the same time.  (I didn't hit this on Yosemite, might be an issue that only shows up
on Mavericks?)

llvm-svn: 212548
This commit is contained in:
Todd Fiala 2014-07-08 16:29:54 +00:00
parent 862d8b8d06
commit 9189e034f1
1 changed files with 6 additions and 4 deletions

View File

@ -399,7 +399,10 @@ setCrashInfoHook = None
def deleteCrashInfoDylib(dylib_path): def deleteCrashInfoDylib(dylib_path):
try: try:
os.remove(dylib_path) # Need to modify this to handle multiple tests running at the same time. If we move this
# to the test's real dir, all should be we run sequentially within a test directory.
# os.remove(dylib_path)
None
finally: finally:
pass pass
@ -1010,9 +1013,8 @@ def setupSysPath():
if lldb_dash_p_result and not lldb_dash_p_result.startswith(("<", "lldb: invalid option:")): if lldb_dash_p_result and not lldb_dash_p_result.startswith(("<", "lldb: invalid option:")):
lines = lldb_dash_p_result.splitlines() lines = lldb_dash_p_result.splitlines()
# Assume the last line of output is the path. Generally there should only be one. if len(lines) == 1 and os.path.isfile(os.path.join(lines[0], init_in_python_dir)):
if os.path.isfile(os.path.join(lines[-1], init_in_python_dir)): lldbPath = lines[0]
lldbPath = lines[-1]
if "freebsd" in sys.platform or "linux" in sys.platform: if "freebsd" in sys.platform or "linux" in sys.platform:
os.environ['LLDB_LIB_DIR'] = os.path.join(lldbPath, '..', '..') os.environ['LLDB_LIB_DIR'] = os.path.join(lldbPath, '..', '..')