diff options
| author | Brian Anderson <banderson@mozilla.com> | 2016-01-06 19:21:28 +0000 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2016-02-06 20:56:31 +0000 |
| commit | 7afb56f51e52030fbdda07c38f9ae09a1daeed9f (patch) | |
| tree | 83257dd207b6d5636ce4a24aedb03df23a8e54d3 | |
| parent | bd3fe498e5d1587e8081607731113593cee1c0dc (diff) | |
| download | rust-7afb56f51e52030fbdda07c38f9ae09a1daeed9f.tar.gz rust-7afb56f51e52030fbdda07c38f9ae09a1daeed9f.zip | |
Add emscripten support to compiletest
| -rw-r--r-- | src/compiletest/runtest.rs | 13 | ||||
| -rw-r--r-- | src/compiletest/util.rs | 2 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/compiletest/runtest.rs b/src/compiletest/runtest.rs index 4abc4cce727..ada6ea200d1 100644 --- a/src/compiletest/runtest.rs +++ b/src/compiletest/runtest.rs @@ -1357,7 +1357,12 @@ fn make_lib_name(config: &Config, auxfile: &Path, testfile: &Path) -> PathBuf { fn make_exe_name(config: &Config, testfile: &Path) -> PathBuf { let mut f = output_base_name(config, testfile); - if !env::consts::EXE_SUFFIX.is_empty() { + // FIXME: This is using the host architecture exe suffix, not target! + if config.target == "asmjs-unknown-emscripten" { + let mut fname = f.file_name().unwrap().to_os_string(); + fname.push(".js"); + f.set_file_name(&fname); + } else if !env::consts::EXE_SUFFIX.is_empty() { let mut fname = f.file_name().unwrap().to_os_string(); fname.push(env::consts::EXE_SUFFIX); f.set_file_name(&fname); @@ -1370,6 +1375,12 @@ fn make_run_args(config: &Config, props: &TestProps, testfile: &Path) // If we've got another tool to run under (valgrind), // then split apart its command let mut args = split_maybe_args(&config.runtool); + + // If this is emscripten, then run tests under nodejs + if config.target == "asmjs-unknown-emscripten" { + args.push("nodejs".to_owned()); + } + let exe_file = make_exe_name(config, testfile); // FIXME (#9639): This needs to handle non-utf8 paths diff --git a/src/compiletest/util.rs b/src/compiletest/util.rs index 027d5610380..69b839c5b7d 100644 --- a/src/compiletest/util.rs +++ b/src/compiletest/util.rs @@ -26,6 +26,7 @@ const OS_TABLE: &'static [(&'static str, &'static str)] = &[ ("win32", "windows"), ("windows", "windows"), ("solaris", "solaris"), + ("emscripten", "emscripten"), ]; const ARCH_TABLE: &'static [(&'static str, &'static str)] = &[ @@ -44,6 +45,7 @@ const ARCH_TABLE: &'static [(&'static str, &'static str)] = &[ ("sparc", "sparc"), ("x86_64", "x86_64"), ("xcore", "xcore"), + ("asmjs", "asmjs"), ]; pub fn get_os(triple: &str) -> &'static str { |
