#!/usr/bin/env python
import subprocess
import sys

dotest_path = '@LLDB_SOURCE_DIR@/test/dotest.py'
dotest_args_str = '@LLDB_DOTEST_ARGS@'

if __name__ == '__main__':
    wrapper_args = sys.argv[1:]
    dotest_args = dotest_args_str.split(';')
    # Build dotest.py command.
    cmd = [dotest_path, '-q']
    cmd.extend(dotest_args)
    cmd.extend(wrapper_args)
    # Invoke dotest.py and return exit code.
    sys.exit(subprocess.call(cmd))
