Commit Graph

830 Commits

Author SHA1 Message Date
Jeremy
70634cb6f4
Undo temporary change printing object addresses in stack traces 2024-05-28 21:44:13 -05:00
Jeremy
9d1c592f0c
Remove CPPTRACE_CONDA_LIBDWARF_WEIRDNESS bodge and better support libdwarf via pkgconfig, resolves #131 2024-05-28 21:32:54 -05:00
Jeremy
2499fa4a67
Add option to build tests with external gtest, closes #130 2024-05-28 20:56:54 -05:00
Jeremy Rifkin
b2bff57d81
Debug Fission (#132)
Implement support for debug fission, closes #129
2024-05-28 20:39:34 -05:00
Jeremy
5556aedddb
Refactor cu lookup out of pc resolution 2024-05-25 16:20:41 -05:00
Jeremy
8bff5dc9fe
Quick fix 2024-05-25 14:32:34 -05:00
Jeremy
810b74ecaa
Refactor symbols_with_libdwarf indo separate files 2024-05-25 14:29:55 -05:00
Jeremy
5171e87a51
Refactor logic in the libdwarf resolver's resolve_frames, pull out trace flattening 2024-05-25 13:38:06 -05:00
Jeremy
a9f72c6f67
Refactor logic in the libdwarf resolver's resolve_frames, pull out resolver management 2024-05-25 13:02:25 -05:00
Jeremy
dcd9a31ce4
Refactor collate_frames 2024-05-25 12:38:34 -05:00
Jeremy
583c0efdb3
Undo ee6787f0ed which pointed to a non-release libdwarf commit 2024-05-25 00:43:48 -05:00
Jeremy
dad3bd1843
Some comments regarding dlfcn logistics and comment cleanup 2024-05-25 00:40:08 -05:00
Jeremy
eb5417baae
Quick readme update 2024-05-25 00:36:12 -05:00
Jeremy
7916f10278
Attempt to fallback to dladdr if dladdr1 is not available 2024-05-24 23:04:20 -05:00
Jeremy
f8d28a6469
Fix incorrect handling of lazy_trace_holder's union, I can't believe I wrote such egregious code 2024-05-23 22:33:56 -05:00
Jeremy
6307700710
Fix ASSERT macro under -Wpedantic 2024-05-23 22:33:33 -05:00
Jeremy
470b0c8eb0
Only use -Wpedantic during a -Werror build 2024-05-23 22:28:02 -05:00
Jeremy
d288609b42
Fix for lazy_trace_holder's default constructor 2024-05-23 22:18:16 -05:00
Jeremy Rifkin
b3836e9318
Support -Wpedantic if someone sets the flag globally while using FetchContent (#127)
Closes #107
2024-05-23 21:18:11 -05:00
Jeremy
38f3d04784
Merge branch 'main' into dev 2024-05-21 23:36:58 -05:00
Jeremy
040d131cef
Update docs to make note of a relatively new libdwarf being needed, related to #124 2024-05-21 23:36:42 -05:00
Jeremy
32275cd679
Quick patch for when LIBUNWIND_LDFLAGS isn't set 2024-05-21 22:40:47 -05:00
Jeremy
7c9b24ca72
Fix dwarf_ranges handling of lowpc == pc, it's not correct to jump the gun and not check the high-pc. I think I erroneously added this in c94b03ae6e. Discovered as part of #123. 2024-05-19 17:00:44 -05:00
Jeremy
4884c4e99b
Fix frame pointer calculation for symbol frames under libunwind, #123 2024-05-19 16:36:07 -05:00
Jeremy
b2fe396d70
Fix address formatting, somehow it was left-aligned 2024-05-19 16:28:41 -05:00
Jeremy
10e7a5e442
Fix again 2024-05-15 20:00:53 -05:00
Jeremy
2172164478
Unbreak dev 2024-05-15 19:44:26 -05:00
Jeremy
2e1f14c7de
Add a warning flag 2024-05-12 22:02:34 -05:00
Jeremy
323ab5814e
Merge branch 'main' into dev 2024-05-12 22:00:45 -05:00
Ben Dunkin
a70cf7935a
Fix missing cxxabi.h include on Windows when using libc++ (#122)
Make operator precedence explicit so the
`CPPTRACE_HAS_CXX_EXCEPTION_TYPE` define is a dominant switch to use
cxxabi.h, rather than one that only applies when `__GLIBCXX__` is
defined.

Fixes https://github.com/jeremy-rifkin/cpptrace/issues/121
2024-05-12 21:56:38 -05:00
Jeremy
ee6787f0ed
Update dev to point at latest libdwarf dev commit with a pe heuristic fix 2024-05-10 12:06:56 -05:00
Jeremy
74ed6afc0a
Add cpptrace::system_error 2024-05-06 23:01:11 -05:00
Tamás Solymos
d2b940ab07
Fix typos in README.md (#117) 2024-05-06 14:37:32 -05:00
Jeremy
b1e3179a97
A couple quick fixes 2024-05-05 17:51:50 -05:00
Jeremy
da0aa4d5c0
Split a bunch of internal headers into .cpp/.hpp 2024-05-05 17:44:27 -05:00
Jeremy
9275f62fc5
Fix ci? 2024-05-05 15:30:24 -05:00
Jeremy
93b1d1c76a
Add basic unittest 2024-05-04 22:34:25 -05:00
Jeremy
f8ebdd26be
Small test refactor 2024-05-04 11:52:45 -05:00
Jeremy
ee572226f7
Update contributing instructions 2024-05-03 20:23:33 -05:00
Jeremy
4feeb6dfe2
Add godboltian makefile 2024-05-03 20:14:21 -05:00
Jeremy
d7c19a5544
Updates for conda 2024-05-03 20:07:09 -05:00
Jeremy
0db934caf7
Bump to 0.5.4 2024-05-02 11:30:54 -05:00
Jeremy
abbc77dcea
Clean up logic a bit 2024-05-02 11:17:41 -05:00
Jeremy
d3c7e7351c
Remove guard for resolve_l_name 2024-05-02 11:09:37 -05:00
Jeremy
ce19421bb5
Update for macos 2024-05-02 11:05:22 -05:00
Jeremy
b125248b32
Update dladdr path to not use dli_fname as it's unreliable in the case of a non-standard argv[0] 2024-05-02 10:47:31 -05:00
Jeremy
beb5506233
Add additional notes about CPPTRACE_STATIC_DEFINE 2024-04-30 23:18:30 -05:00
Jeremy
14d25fd89a
Bump to v0.5.3 and update changelog 2024-04-29 23:12:53 -05:00
Jeremy
24d1f7780f
Typo fix 2024-04-29 21:13:21 -05:00
Jeremy Rifkin
ed790ea82a
Improve zstd handling (#115)
This PR adds a Findzstd.cmake script to cpptrace's install so that
`find_dependency(zstd)` can succeed on installations that don't include
zstdConfig.cmake/zstd-config.cmake.

The reason `find_dependency(zstd)` is needed in cpptrace's config,
despite `find_dependency(zstd)` also being in libdwarf's cmake and
cpptrace not needing zstd, is that libdwarf's cmake doesn't define
`zstd::libzstd_static` / `zstd::libzstd_shared` targets.

This should fix #112.
2024-04-28 23:56:27 -05:00