about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndrew Gaspar <andrew.gaspar@outlook.com>2017-02-20 11:10:32 -0800
committerAlex Crichton <alex@alexcrichton.com>2017-04-24 16:26:00 -0700
commit70e673952ee7544576e2912efe9735bc4617e447 (patch)
tree5482fa653416323d355765fe587465972038180a
parent63c77214c1d38789652b465694b254205d1886e0 (diff)
downloadrust-70e673952ee7544576e2912efe9735bc4617e447.tar.gz
rust-70e673952ee7544576e2912efe9735bc4617e447.zip
Adds rust-windbg.cmd script
-rw-r--r--src/bootstrap/dist.rs7
-rw-r--r--src/etc/rust-windbg.cmd18
2 files changed, 24 insertions, 1 deletions
diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
index 4328c4e3f1d..ada8d4df604 100644
--- a/src/bootstrap/dist.rs
+++ b/src/bootstrap/dist.rs
@@ -254,7 +254,12 @@ pub fn debugger_scripts(build: &Build,
         install(&build.src.join("src/etc/").join(file), &dst, 0o644);
     };
     if host.contains("windows-msvc") {
-        // no debugger scripts
+        // windbg debugger scripts
+        install(&build.src.join("src/etc/rust-windbg.cmd"), &sysroot.join("bin"),
+            0o755);
+
+        cp_debugger_script("natvis/libcore.natvis");
+        cp_debugger_script("natvis/libcollections.natvis");
     } else {
         cp_debugger_script("debugger_pretty_printers_common.py");
 
diff --git a/src/etc/rust-windbg.cmd b/src/etc/rust-windbg.cmd
new file mode 100644
index 00000000000..4cdd6b98609
--- /dev/null
+++ b/src/etc/rust-windbg.cmd
@@ -0,0 +1,18 @@
+@echo off
+setlocal
+
+REM Copyright 2014 The Rust Project Developers. See the COPYRIGHT
+REM file at the top-level directory of this distribution and at
+REM http://rust-lang.org/COPYRIGHT.
+REM
+REM Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+REM http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+REM <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+REM option. This file may not be copied, modified, or distributed
+REM except according to those terms.
+
+for /f "delims=" %%i in ('rustc --print=sysroot') do set rustc_sysroot=%%i
+
+set rust_etc=%rustc_sysroot%\lib\rustlib\etc
+
+windbg -c ".nvload %rust_etc%\libcore.natvis;.nvload %rust_etc%\libcollections.natvis;" %*
\ No newline at end of file