BSD Ports

devel/libunwind 20240221_1 MidnightBSD

Generic stack unwinding library

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
License
mit
Categories
devel

Description

The primary goal of this project is to define a portable and efficient C programming interface (API) to determine the call-chain of a program. The API additionally provides the means to manipulate the preserved (callee-saved) state of each call-frame and to resume execution at any point in the call-chain (non-local goto). The API supports both local (same-process) and remote (across-process) operation. As such, the API is useful in a number of applications. Some examples include:

  • exception handling The libunwind API makes it trivial to implement the stack-manipulation aspects of exception handling.
  • debuggers The libunwind API makes it trivial for debuggers to generate the call-chain (backtrace) of the threads in a running program.
  • introspection It is often useful for a running thread to determine its call-chain. For example, this is useful to display error messages (to show how the error came about) and for performance monitoring/analysis.
  • efficient setjmp() With libunwind, it is possible to implement an extremely efficient version of setjmp(). Effectively, the only context that needs to be saved consists of the stack-pointer(s).

In the other systems

SystemPortVersion
MidnightBSDdevel/libunwind20240221_1
FreeBSDdevel/libunwind20250904
DragonFlydevel/libunwind20240221_2
HardenedBSDdevel/libunwind20250904
GhostBSDdevel/libunwind20250904
OPNsensedevel/libunwind20250904

Install

Binary package:

mport install libunwind

From mports:

cd /usr/mports/devel/libunwind && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	libunwind>0:devel/libunwind
LIB_DEPENDS=	libunwind-.so:devel/libunwind

Dependencies

Configuration

No options to configure.

USES
compiler:c11 cpe libtool pathfix pkgconfig
Service scripts
none

Files

Manual pages 40
  • _U_dyn_cancel(3)
  • _U_dyn_register(3)
  • libunwind(3)
  • libunwind-coredump(3)
  • libunwind-dynamic(3)
  • libunwind-ia64(3)
  • libunwind-nto(3)
  • libunwind-ptrace(3)
  • libunwind-setjmp(3)
  • unw_apply_reg_state(3)
  • unw_backtrace(3)
  • unw_create_addr_space(3)
  • unw_destroy_addr_space(3)
  • unw_flush_cache(3)
  • unw_get_accessors(3)
  • unw_get_elf_filename(3)
  • unw_get_elf_filename_by_ip(3)
  • unw_get_fpreg(3)
  • unw_get_proc_info(3)
  • unw_get_proc_info_by_ip(3)
  • unw_get_proc_info_in_range(3)
  • unw_get_proc_name(3)
  • unw_get_proc_name_by_ip(3)
  • unw_get_reg(3)
  • unw_getcontext(3)
  • unw_init_local(3)
  • unw_init_local2(3)
  • unw_init_remote(3)
  • unw_is_fpreg(3)
  • unw_is_signal_frame(3)
  • unw_reg_states_iterate(3)
  • unw_regname(3)
  • unw_resume(3)
  • unw_set_cache_size(3)
  • unw_set_caching_policy(3)
  • unw_set_fpreg(3)
  • unw_set_iterate_phdr_function(3)
  • unw_set_reg(3)
  • unw_step(3)
  • unw_strerror(3)
pkg-plist 73
  • include/libunwind-.h
  • include/libunwind-common.h
  • include/libunwind-coredump.h
  • include/libunwind-dynamic.h
  • include/libunwind-ptrace.h
  • include/libunwind.h
  • lib/libunwind-.a
  • lib/libunwind-.so
  • lib/libunwind-.so.8
  • lib/libunwind-.so.8.1.0
  • lib/libunwind-coredump.a
  • lib/libunwind-coredump.so
  • lib/libunwind-coredump.so.0
  • lib/libunwind-coredump.so.0.0.0
  • lib/libunwind-generic.a
  • lib/libunwind-generic.so
  • lib/libunwind-ptrace.a
  • lib/libunwind-ptrace.so
  • lib/libunwind-ptrace.so.0
  • lib/libunwind-ptrace.so.0.0.0
  • lib/libunwind-setjmp.a
  • lib/libunwind-setjmp.so
  • lib/libunwind-setjmp.so.0
  • lib/libunwind-setjmp.so.0.0.0
  • lib/libunwind.a
  • lib/libunwind.so
  • lib/libunwind.so.8
  • lib/libunwind.so.8.1.0
  • libdata/pkgconfig/libunwind-coredump.pc
  • libdata/pkgconfig/libunwind-generic.pc
  • libdata/pkgconfig/libunwind-ptrace.pc
  • libdata/pkgconfig/libunwind-setjmp.pc
  • libdata/pkgconfig/libunwind.pc
  • share/man/man3/_U_dyn_cancel.3.gz
  • share/man/man3/_U_dyn_register.3.gz
  • share/man/man3/libunwind-coredump.3.gz
  • share/man/man3/libunwind-dynamic.3.gz
  • share/man/man3/libunwind-ia64.3.gz
  • share/man/man3/libunwind-nto.3.gz
  • share/man/man3/libunwind-ptrace.3.gz
  • share/man/man3/libunwind-setjmp.3.gz
  • share/man/man3/libunwind.3.gz
  • share/man/man3/unw_apply_reg_state.3.gz
  • share/man/man3/unw_backtrace.3.gz
  • share/man/man3/unw_create_addr_space.3.gz
  • share/man/man3/unw_destroy_addr_space.3.gz
  • share/man/man3/unw_flush_cache.3.gz
  • share/man/man3/unw_get_accessors.3.gz
  • share/man/man3/unw_get_elf_filename.3.gz
  • share/man/man3/unw_get_elf_filename_by_ip.3.gz
  • share/man/man3/unw_get_fpreg.3.gz
  • share/man/man3/unw_get_proc_info.3.gz
  • share/man/man3/unw_get_proc_info_by_ip.3.gz
  • share/man/man3/unw_get_proc_info_in_range.3.gz
  • share/man/man3/unw_get_proc_name.3.gz
  • share/man/man3/unw_get_proc_name_by_ip.3.gz
  • share/man/man3/unw_get_reg.3.gz
  • share/man/man3/unw_getcontext.3.gz
  • share/man/man3/unw_init_local.3.gz
  • share/man/man3/unw_init_local2.3.gz
  • share/man/man3/unw_init_remote.3.gz
  • share/man/man3/unw_is_fpreg.3.gz
  • share/man/man3/unw_is_signal_frame.3.gz
  • share/man/man3/unw_reg_states_iterate.3.gz
  • share/man/man3/unw_regname.3.gz
  • share/man/man3/unw_resume.3.gz
  • share/man/man3/unw_set_cache_size.3.gz
  • share/man/man3/unw_set_caching_policy.3.gz
  • share/man/man3/unw_set_fpreg.3.gz
  • share/man/man3/unw_set_iterate_phdr_function.3.gz
  • share/man/man3/unw_set_reg.3.gz
  • share/man/man3/unw_step.3.gz
  • share/man/man3/unw_strerror.3.gz
distinfo 2
FileSizeSHA256
libunwind-1.8.1.tar.gz958468ddf0e32dd5fafe5283198d37e4bf9decf7ba1770b6e7e006c33e6df79e6a6157
b841b2a2665da25dd28fd16977a77bf8b3494dc7.patch95356570397cbdd40ef36d3fe06538357651b2a7923780bc7e49b486857eb4999b5
Master sites 1
  • https://github.com/libunwind/libunwind/releases/download/v1.8.1/