This repository has been archived on 2025-02-12. You can view files and clone it, but cannot push or open issues or pull requests.
NeoStats/lib/execinfo
2008-01-07 16:25:25 +00:00
..
execinfo.c more autoconf updates to fix up little issues in the builds and fix some compile warnings 2007-09-28 09:29:05 +00:00
execinfo.h include libexecinfo for backtraces on other platforms. Not tested & make distcheck is broken atm. I'm heading for beers now 2007-09-26 07:28:05 +00:00
gen.py include libexecinfo for backtraces on other platforms. Not tested & make distcheck is broken atm. I'm heading for beers now 2007-09-26 07:28:05 +00:00
Makefile.am include libexecinfo for backtraces on other platforms. Not tested & make distcheck is broken atm. I'm heading for beers now 2007-09-26 07:28:05 +00:00
Makefile.in fix this up 2008-01-07 16:25:25 +00:00
README include libexecinfo for backtraces on other platforms. Not tested & make distcheck is broken atm. I'm heading for beers now 2007-09-26 07:28:05 +00:00
stacktraverse.c include libexecinfo for backtraces on other platforms. Not tested & make distcheck is broken atm. I'm heading for beers now 2007-09-26 07:28:05 +00:00
stacktraverse.h include libexecinfo for backtraces on other platforms. Not tested & make distcheck is broken atm. I'm heading for beers now 2007-09-26 07:28:05 +00:00

I. About

This is a quick-n-dirty BSD licensed clone of backtrace facility found
in the GNU libc, mainly intended for porting linuxish code to BSD
platforms, however it can be used at any platform which has a gcc
compiler.

More information about API can be found here:

http://www.gnu.org/software/libc/manual/html_node/Backtraces.html


II. Known limitations

- Depth of stack trace is limited to 128 levels, which should be enough
  in most cases, the limit can be increased by editing gen.py and
  regenerating stacktraverse.c. The reason for that limitation steams
  from the fact that __builtin_return_address() function takes only
  constant as an argument, while gcc(1) has problems compiling giant
  switch() tables. For example to compile one with 1024 entries gcc(1)
  needs more than 1GB of memory (sic!);

- executable have to be linked using `-Wl,--export-dynamic' option,
  in order for function names to be displayed properly.


III. Author

Author of this junk is Maxim Sobolev <sobomax@FreeBSD.org>. Any feedback,
patches or suggestions are greatly appreciated.

$Id: README,v 1.2 2004/07/19 05:13:42 sobomax Exp $