#endif // V8_CC_MSVC
#endif // V8_OS_WIN
+ // hack to print cctest specific flags
+ for (int i = 1; i < argc; i++) {
+ char* arg = argv[i];
+ if ((strcmp(arg, "--help") == 0) || (strcmp(arg, "-h") == 0)) {
+ printf("Usage: %s [--list] [[V8_FLAGS] CCTEST]\n", argv[0]);
+ printf("\n");
+ printf("Options:\n");
+ printf(" --list: list all cctests\n");
+ printf(" CCTEST: cctest identfier returned by --list\n");
+ printf(" D8_FLAGS: see d8 output below\n");
+ printf("\n\n");
+ }
+ }
+
v8::V8::InitializeICU();
v8::Platform* platform = v8::platform::CreateDefaultPlatform();
v8::V8::InitializePlatform(platform);
def BuildOptions():
result = optparse.OptionParser()
+ result.usage = '%prog [options] [tests]'
+ result.description = """TESTS: %s""" % (DEFAULT_TESTS)
result.add_option("--arch",
help=("The architecture to run tests for, "
- "'auto' or 'native' for auto-detect"),
+ "'auto' or 'native' for auto-detect: %s" % SUPPORTED_ARCHS),
default="ia32,x64,arm")
result.add_option("--arch-and-mode",
help="Architecture and mode in the format 'arch.mode'",
result.add_option("-j", help="The number of parallel tasks to run",
default=0, type="int")
result.add_option("-m", "--mode",
- help="The test modes in which to run (comma-separated)",
+ help="The test modes in which to run (comma-separated,"
+ " uppercase for ninja and buildbot builds): %s" % MODES.keys(),
default="release,debug")
result.add_option("--no-harness", "--noharness",
help="Run without test harness of a given suite",
help="Don't run any testing variants",
default=False, dest="no_variants", action="store_true")
result.add_option("--variants",
- help="Comma-separated list of testing variants")
+ help="Comma-separated list of testing variants: %s" % VARIANTS)
result.add_option("--outdir", help="Base directory with compile output",
default="out")
result.add_option("--predictable",
"%s.%s" % (arch, MODES[mode]["output_folder"]),
)
shell_dir = os.path.relpath(shell_dir)
+ if not os.path.exists(shell_dir):
+ raise Exception('Could not find shell_dir: "%s"' % shell_dir)
# Populate context object.
mode_flags = MODES[mode]["flags"]
error_mode = SEM_NOGPFAULTERRORBOX
prev_error_mode = Win32SetErrorMode(error_mode)
Win32SetErrorMode(error_mode | prev_error_mode)
- process = subprocess.Popen(
- args=popen_args,
- stdout=subprocess.PIPE,
- stderr=subprocess.PIPE,
- **rest
- )
+
+ try:
+ process = subprocess.Popen(
+ args=popen_args,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE,
+ **rest
+ )
+ except Exception as e:
+ sys.stderr.write("Error executing: %s\n" % popen_args)
+ raise e
+
if (utils.IsWindows() and prev_error_mode != SEM_INVALID_VALUE):
Win32SetErrorMode(prev_error_mode)