Jeremy Rifkin
c95ab97a48
Merge branch 'main' into dev
2024-10-02 20:20:39 -05:00
Patrick Quist
ae86a79f16
getpagesize() was removed from OSX (and posix) ( #177 )
2024-10-02 20:18:16 -05:00
Sofie
7b2a994559
fix: mangled url for FetchContent in cmake 3.16 ( #176 )
...
Fixes #174
Seems to be that older versions of CMake has a tendency to mangle URLs
as per described in https://stackoverflow.com/questions/74996365/
2024-10-02 20:18:16 -05:00
Vittorio Romeo
0ddbbf43cb
Improve compilation times on Windows ( #172 )
...
Thank you for the very useful library!
Few improvements:
- Better header hygiene
- Isolate `windows.h` to `.cpp` whenever possible
- Use `WIN32_LEAN_AND_MEAN`
- Remove unused headers
Tested on Windows with
```
cmake .. -DCMAKE_BUILD_TYPE=Debug -GNinja -DCMAKE_EXPORT_COMPILE_COMMANDS=1
-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_FLAGS="-ftime-trace -Wall -Wextra -Wpedantic
-Wno-ignored-attributes" -DCMAKE_COLOR_DIAGNOSTICS=1 -DCPPTRACE_BUILD_TESTING=1
-DCPPTRACE_BUILD_BENCHMARKING=0
```
There's a lot more that can be improved if you are interested.
---------
Co-authored-by: Jeremy Rifkin <51220084+jeremy-rifkin@users.noreply.github.com>
2024-10-02 10:55:13 -05:00
Patrick Quist
ce8214bb16
getpagesize() was removed from OSX (and posix) ( #177 )
2024-09-30 00:25:58 -05:00
Sofie
54a3e6fdf7
fix: mangled url for FetchContent in cmake 3.16 ( #176 )
...
Fixes #174
Seems to be that older versions of CMake has a tendency to mangle URLs
as per described in https://stackoverflow.com/questions/74996365/
2024-09-17 08:25:23 -05:00
Jeremy Rifkin
06eb15bda6
Some changelog corrections for v0.7.1
2024-09-13 08:21:28 -05:00
Jeremy Rifkin
3890a70cb4
Bump to v0.7.1
2024-09-13 08:19:24 -05:00
Jeremy Rifkin
4ed90c1585
Switch away from FetchContent_Populated, #171
2024-09-13 00:42:17 -05:00
Jeremy Rifkin
142e0b9ea4
Per 0blu's suggestion, use the SymGetLineFromAddr macro instead of SymGetLineFromAddr64
2024-09-13 00:06:05 -05:00
Jeremy Rifkin
d09378c8e8
Use execinfo.h by default for clang/apple clang on macos, #161
2024-09-12 23:56:09 -05:00
Jeremy Rifkin
f9ab949a9e
Bump hard_max_frames to 400
2024-09-12 23:12:11 -05:00
Jeremy Rifkin
4e9f0da95f
Nest microfmt in the cpptrace namespace due to conditionally-enabled C++17 behavior causing ODR issues, related to https://github.com/jeremy-rifkin/libassert/issues/103
2024-09-12 21:06:12 -05:00
Jeremy Rifkin
4f94f20d41
Fix computation of object address for safe object frames. I forgot to do this as part of a528aa8e0b, also related to #104
2024-09-07 12:02:52 -05:00
Jeremy Rifkin
499bea182c
Reduce bazel build to -std=c++11
2024-09-06 17:24:52 -05:00
_BLU
0d89be4fbe
VS2015 fixes ( #165 )
...
Fixes the compilation on VS14 / 2015.
2024-09-04 22:32:00 -05:00
Jeremy Rifkin
7fdbbfdf67
Fix compilation on ios ( #167 )
...
This aims to address #163
2024-09-04 17:22:32 -05:00
Pavol Gono
26093d5791
MSYS2+MINGW64 platform with libbacktrace ( #166 )
...
I've updated cmake conditions, to allow libbacktrace usage under
mingw64. And fixed one compilation issue.
Tested with package
https://packages.msys2.org/package/mingw-w64-x86_64-libbacktrace
with this setup:
```
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DCPPTRACE_GET_SYMBOLS_WITH_LIBBACKTRACE=On
```
2024-09-03 19:58:39 -05:00
lzw
f671819510
build: support build with libunwind on osx ( #162 )
...
macOS provides a libunwind in SDK, so we can skip the library search
process.
---------
Co-authored-by: Jeremy Rifkin <51220084+jeremy-rifkin@users.noreply.github.com>
2024-08-30 18:15:38 -05:00
Jeremy Rifkin
231960d472
Merge branch 'main' into dev
2024-08-30 17:18:12 -05:00
Jeremy Rifkin
cf08f2578c
Somehow forgot to commit this
2024-08-29 22:38:50 -05:00
Jeremy Rifkin
c7ff8cbf79
Add a bullet point about traces from exceptions
2024-08-29 22:32:47 -05:00
Jeremy Rifkin
9a7bd8f95e
Clarify copying of cpptrace target on windows
2024-08-28 20:02:21 -05:00
Jeremy Rifkin
0742b42dad
Update changelog and bump to v0.7.0
2024-08-21 08:47:23 -05:00
Jeremy Rifkin
31ebb3ca23
Fix a couple file endings and also make note of lazy_trace_holder::get_raw_trace in the readme
2024-08-21 00:07:36 -05:00
Jeremy Rifkin
4dcfdf5281
Bump zstd and libdwarf versions in ci scripts
2024-08-20 23:19:44 -05:00
Jeremy Rifkin
3b0eb54797
Implement a system for preventing redundant tracing during search, and other various improvements for the from_current system ( #159 )
2024-08-20 23:10:17 -05:00
WSUFan
0249b50698
fix Bazel build ( #158 )
2024-08-18 21:46:34 -05:00
Jeremy Rifkin
fddbe72a66
Quick readme update
2024-08-18 19:17:53 -05:00
WSUFan
88d681d986
Enable Bazel build system support ( #153 )
...
This pull request enables Bazel build support for cpptrace. Please note
that currently, only Linux is supported. Additional platform support
will be added if necessary.
2024-08-18 19:16:53 -05:00
Jeremy Rifkin
3e131ce8c6
Experiment with some benchmarking
2024-08-18 18:59:50 -05:00
Jeremy Rifkin
5e30d2ae60
Disable a configuration broken upstream
2024-08-18 18:18:20 -05:00
Jeremy Rifkin
b87be87c66
Fix CPPTRACE_BUILD_TESTING_DWARF_VERSION use
2024-08-18 16:56:37 -05:00
Jeremy Rifkin
b364d37f78
Implement better dwarf rangelist base address logic ( #157 )
...
Related to https://github.com/davea42/libdwarf-code/issues/255 , allows
re-enabling the clang+sanitizer+rel+dsym tests.
2024-08-18 16:51:40 -05:00
Jeremy Rifkin
a4d75a3894
Unittest under libc++ ( #156 )
2024-08-18 14:11:51 -05:00
Jeremy Rifkin
d64a935fb4
Bump to libdwarf 0.11.0
2024-08-18 14:11:16 -05:00
Jeremy Rifkin
64e0210449
Better handle resolution of safe object frames with empty object paths
2024-08-18 13:38:06 -05:00
Jeremy Rifkin
0e2c3a130d
Fix windows build
2024-08-18 12:11:20 -05:00
Jeremy Rifkin
973309cb22
Some more platform refactoring/cleanup, also add a note to readme
2024-08-18 12:07:34 -05:00
Jeremy Rifkin
164cc75681
A little refactoring and reorganization. Remove relative includes.
2024-08-18 11:58:49 -05:00
Jeremy Rifkin
0bb5aa2318
Add a basic test for traced exception objects
2024-08-18 11:41:38 -05:00
Jeremy Rifkin
3f68171d0b
Some makefile improvements
2024-08-18 11:33:57 -05:00
Jeremy Rifkin
7621f2b277
A couple notes/comments/documentation tweaks
2024-08-18 11:20:59 -05:00
Jeremy Rifkin
5558210cbe
Bump zstd to 1.5.6, #150
2024-08-18 11:20:21 -05:00
Jeremy Rifkin
26e009c688
Add cpptrace::from_current ( #155 )
2024-08-18 11:11:47 -05:00
Jeremy Rifkin
d5eed55dcd
Fix -g on msvc
2024-08-18 00:56:28 -05:00
Jeremy Rifkin
df1d78d1eb
Revert "Fix -g on msvc"
...
This reverts commit 51551ab741 .
2024-08-18 00:55:49 -05:00
Jeremy Rifkin
51551ab741
Fix -g on msvc
2024-08-18 00:53:44 -05:00
Jeremy Rifkin
70e78e3c8a
Remove some commented code
2024-08-16 10:29:00 -05:00
Degen's Regens
767ddeb10c
size_t cannot be negative ( #154 )
2024-08-16 10:24:40 -05:00