rust/mk
bors 12b2607572 auto merge of #12602 : alexcrichton/rust/backtrace, r=brson
Whenever a failure happens, if a program is run with
`RUST_LOG=std::rt::backtrace` a backtrace will be printed to the task's stderr
handle. Stack traces are uncondtionally printed on double-failure and
rtabort!().

This ended up having a nontrivial implementation, and here's some highlights of
it:

* We're bundling libbacktrace for everything but OSX and Windows
* We use libgcc_s and its libunwind apis to get a backtrace of instruction
  pointers
* On OSX we use dladdr() to go from an instruction pointer to a symbol
* On unix that isn't OSX, we use libbacktrace to get symbols
* Windows, as usual, has an entirely separate implementation

Lots more fun details and comments can be found in the source itself.

Closes #10128
2014-03-13 01:11:39 -07:00
..
clean.mk mk: rewrite the documentation handling. 2014-03-09 19:34:40 +11:00
crates.mk Add basic backtrace functionality 2014-03-13 00:24:20 -07:00
ctags.mk Don't make tags for our dependencies and tests. 2013-11-16 13:44:52 +11:00
dist.mk mk: Put all distribution artifacts in dist/ 2014-03-09 14:17:27 -07:00
docs.mk Test fixes from rolling up PRs 2014-03-12 15:01:27 -07:00
host.mk Refactor the build system for easily adding crates 2014-01-26 00:53:41 -08:00
install.mk Address review feedback 2014-02-16 17:36:43 -08:00
llvm.mk Only build LLVM tools Rust needs. 2014-01-15 17:47:48 -08:00
main.mk fix typos with with repeated words, just like this sentence. 2014-03-06 20:19:14 +09:00
perf.mk support for GNU configure syntax 2013-10-29 16:22:08 -07:00
platform.mk mk: Remove old flags to llc for arm. 2014-02-15 20:08:33 -05:00
prepare.mk mk: forcibly delete dest dir when PREPARE_CLEAN 2014-03-09 14:17:27 -07:00
reconfig.mk mk: Move most of Makefile.in to .mk files 2014-02-14 17:45:54 -08:00
rt.mk Add basic backtrace functionality 2014-03-13 00:24:20 -07:00
rustllvm.mk Remove VPATH usage in Makefiles 2014-02-02 10:59:14 -08:00
snap.mk support for GNU configure syntax 2013-10-29 16:22:08 -07:00
stage0.mk Make rustc's own lib directory configurable and change the default to rustlib. Fixes #3319 2014-01-05 12:06:20 +01:00
target.mk Build compiler-rt and link it to all crates, similarly to morestack. 2014-02-11 15:59:59 -08:00
tests.mk Add basic backtrace functionality 2014-03-13 00:24:20 -07:00
util.mk mk: Address review feedback 2014-02-14 19:17:50 -08:00