Commit Graph
100 Commits
Author SHA1 Message Date
Deukhoofd 09bc55ec94 Allow disabling signal handling, turn signal handling off by default.
continuous-integration/drone/push Build is failing
2020-10-18 17:18:27 +02:00
Deukhoofd c445536aed Fixed issue preventing THROW macro having easy access to sstream.
continuous-integration/drone/push Build is passing
2020-10-15 18:05:51 +02:00
Deukhoofd c3606c25f6 Replaces some overrides with final for minor performance gains.
continuous-integration/drone/push Build is passing
2020-10-15 17:54:06 +02:00
Deukhoofd edaa9f496d Modify THROW macro to use a constexpr function for file name, instead of macro.
continuous-integration/drone/push Build is passing
This prevents potential warnings (such as clang-tidy's "cppcoreguidelines-pro-bounds-pointer-arithmetic") from showing up when using this macro.
2020-10-09 13:48:21 +02:00
Deukhoofd 5fcebd4d4d Implements faster hash mechanic for StringView.
continuous-integration/drone/push Build is passing
2020-10-09 13:23:32 +02:00
Deukhoofd 77e9f3f768 Revert "Make CInterface exported functions be contained in .h files, instead of .cpp."
continuous-integration/drone/push Build is passing
This reverts commit 9abdbecd
2020-10-02 18:44:29 +02:00
Deukhoofd dff8c4d15c Attempt creating a tag file online.
continuous-integration/drone/push Build is passing
2020-09-25 18:11:53 +02:00
Deukhoofd 078f790732 Save docs.
continuous-integration/drone/push Build is passing
2020-09-25 15:13:25 +02:00
Deukhoofd 2479e39320 Sign build file.
continuous-integration/drone/push Build is passing
2020-09-25 15:02:46 +02:00
Deukhoofd e9ae447273 Include the precompiled header file.
continuous-integration/drone/push Build was killed
2020-09-25 12:46:20 +02:00
Deukhoofd 2e8a7f5fbb Documents the C Interface.
continuous-integration/drone/push Build is passing
2020-09-25 12:31:37 +02:00
Deukhoofd 9abdbecd17 Make CInterface exported functions be contained in .h files, instead of .cpp. 2020-09-25 12:00:44 +02:00
Deukhoofd 178a38db07 Fixed colours in test output on build server.
continuous-integration/drone/push Build is passing
2020-09-25 11:54:23 +02:00
Deukhoofd 3e9fd2bea8 Switch from Catch2 to DocTest for unit tests.
continuous-integration/drone/push Build is passing
2020-09-25 11:50:53 +02:00
Deukhoofd 51c7ba1c50 Use a precompiled header for many std includes.
continuous-integration/drone/push Build is passing
2020-09-25 11:06:55 +02:00
Deukhoofd 74d7e23056 Style fixes.
continuous-integration/drone/push Build is passing
2020-09-24 21:02:22 +02:00
Deukhoofd 2e93cd65c5 Remove constevals for now, until mingw32-w64 supports it on the build server.
continuous-integration/drone/push Build is passing
2020-09-24 20:54:11 +02:00
Deukhoofd 9d7b2d62b6 Check whether everything has documentation on build
continuous-integration/drone/push Build is failing
2020-09-24 20:48:00 +02:00
Deukhoofd f20b55b0d5 Lots more documentation.
continuous-integration/drone/push Build is failing
2020-09-24 20:40:21 +02:00
Deukhoofd 31b63d56db Lots of documentation.
continuous-integration/drone/push Build is passing
2020-09-22 19:32:40 +02:00
Deukhoofd 95f1e818e7 Further build fixes.
continuous-integration/drone/push Build is passing
2020-09-21 18:59:26 +02:00
Deukhoofd 79e6bd4aa1 Fixes for build failing.
continuous-integration/drone/push Build is failing
2020-09-21 18:58:30 +02:00
Deukhoofd 3f4b026071 Header cleanup.
continuous-integration/drone/push Build is failing
2020-09-21 14:01:19 +02:00
Deukhoofd 4a476dcf4c Try using Ninja instead of make.
continuous-integration/drone/push Build is failing
2020-09-21 13:19:19 +02:00
Deukhoofd 49ca3d0426 Use LLD as linker when we build with Clang.
continuous-integration/drone/push Build is passing
2020-09-21 12:37:34 +02:00
Deukhoofd 514186a1e6 Remove thinlto, causes more issues than it helps.
continuous-integration/drone/push Build is passing
2020-09-18 19:32:50 +02:00
Deukhoofd 38f36699ac Only use ThinLTO for shared libraries.
continuous-integration/drone/push Build is passing
2020-09-12 16:59:07 +02:00
Deukhoofd 4f8ca03a39 Attempt using RanLib and AR
continuous-integration/drone/push Build is failing
2020-09-12 16:55:27 +02:00
Deukhoofd b6de3a730b Use ThinLTO for Clang.
continuous-integration/drone/push Build is failing
2020-09-12 16:50:36 +02:00
Deukhoofd fedb27790e Fixed checks for less than 0 on List indexing, as it was always false.
continuous-integration/drone/push Build is passing
2020-08-20 13:27:39 +02:00
Deukhoofd 675407d7f5 Fixed Windows issues.
continuous-integration/drone/push Build is passing
2020-08-20 13:21:39 +02:00
Deukhoofd 8fecd2079a Remove Windows signal handling for now, as it's causing issues.
continuous-integration/drone/push Build is failing
2020-08-20 13:19:11 +02:00
Deukhoofd efe902d045 Dont include signal handler in Windows.
continuous-integration/drone/push Build is failing
2020-08-20 13:10:10 +02:00
Deukhoofd 8dac6c632b Link pthread statically.
continuous-integration/drone/push Build is passing
2020-08-20 12:54:37 +02:00
Deukhoofd a91a57aa0a Style fix
continuous-integration/drone/push Build is passing
2020-08-18 19:18:38 +02:00
Deukhoofd 5eb95805f6 Further Windows fixes.
continuous-integration/drone/push Build is passing
2020-08-18 19:15:00 +02:00
Deukhoofd 16b083d927 Tweaks to make Windows happy again hopefully
continuous-integration/drone/push Build is failing
2020-08-18 18:50:03 +02:00
Deukhoofd c1a207f918 Further fixes for Windows.
continuous-integration/drone/push Build is failing
2020-08-18 18:46:50 +02:00
Deukhoofd c2655568d7 Fixes for Windows.
continuous-integration/drone/push Build is failing
2020-08-18 18:44:06 +02:00
Deukhoofd cfcdbfe984 Support for custom signal callbacks.
continuous-integration/drone/push Build is failing
2020-08-18 18:41:18 +02:00
Deukhoofd d59c13a34d Allow disabling pretty traces and remove dependency on libdw.
continuous-integration/drone/push Build is passing
2020-08-17 20:08:23 +02:00
Deukhoofd 37b1e16b34 Style fix.
continuous-integration/drone/push Build is passing
2020-08-17 12:05:15 +02:00
Deukhoofd a665ad3eaf Set up macros for easier exception throwing.
continuous-integration/drone/push Build is passing
2020-08-17 12:02:42 +02:00
Deukhoofd a64c2aaca8 Trim whitespace of snippets in stack traces.
continuous-integration/drone/push Build is passing
2020-08-16 19:45:19 +02:00
Deukhoofd 98ff6b3b69 Improves exception stack traces by including inlined functions, and displaying snippets of code.
continuous-integration/drone/push Build is passing
2020-08-16 19:15:45 +02:00
Deukhoofd 010600c76b Fix unit test
continuous-integration/drone/push Build is passing
2020-08-16 17:35:51 +02:00
Deukhoofd 5c9e58d032 Style fixes.
continuous-integration/drone/push Build is failing
2020-08-16 17:34:58 +02:00
Deukhoofd 73e67b8c5d Fixed define flag.
continuous-integration/drone/push Build is passing
2020-08-16 17:31:11 +02:00
Deukhoofd c58bc6f785 Hide some functions that aren't used by Windows from the Windows build.
continuous-integration/drone/push Build is failing
2020-08-16 17:27:09 +02:00
Deukhoofd 5c0c0878a6 Fixed issue where compile options were added too late.
continuous-integration/drone/push Build is failing
2020-08-16 17:24:37 +02:00
Deukhoofd 34ba9331ed Only add debug symbols on Linux build
continuous-integration/drone/push Build is failing
2020-08-16 17:18:12 +02:00
Deukhoofd 620248f329 Include debug symbols in Release build, rework exception stack trace.
continuous-integration/drone/push Build is failing
2020-08-16 16:59:13 +02:00
Deukhoofd 5a14c712d2 Style fix
continuous-integration/drone/push Build is passing
2020-08-16 10:43:54 +02:00
Deukhoofd 20a7dc55a0 Return a value when stacktrace is empty.
continuous-integration/drone/push Build is passing
2020-08-16 10:41:10 +02:00
Deukhoofd 9726920b7f Fixes for Windows.
continuous-integration/drone/push Build is passing
2020-08-15 16:14:33 +02:00
Deukhoofd 7de12d53b5 Implements noexcept copy constructor for Exception. 2020-08-15 16:14:06 +02:00
Deukhoofd 0a2acc1eea Link stacktrace to library instead of test executable.
continuous-integration/drone/push Build is passing
2020-08-15 14:58:44 +02:00
Deukhoofd 34362a2cd7 Style fixes.
continuous-integration/drone/push Build is passing
2020-08-15 14:54:19 +02:00
Deukhoofd faaa4cdc9b Make C Interface return stack.
continuous-integration/drone/push Build is passing
2020-08-15 14:52:15 +02:00
Deukhoofd f158dbf8a2 Throw all exceptions with Arbutils exception. 2020-08-15 14:50:17 +02:00
Deukhoofd 3e96d2fd76 Dont include test for stack trace on Windows.
continuous-integration/drone/push Build is passing
2020-08-15 14:32:38 +02:00
Deukhoofd 168c45cb3b Further fixes for Exception class on Windows.
continuous-integration/drone/push Build is failing
2020-08-15 14:25:27 +02:00
Deukhoofd c7d18db8b7 Completely not include the stacktrace on Windows.
continuous-integration/drone/push Build is failing
2020-08-15 14:22:32 +02:00
Deukhoofd e778b61839 Don't use stacktrace on Windows.
continuous-integration/drone/push Build is failing
2020-08-15 14:19:36 +02:00
Deukhoofd 002902eed9 Dont include stack trace test in valgrind.
continuous-integration/drone/push Build is failing
2020-08-15 14:05:22 +02:00
Deukhoofd 1dee4cd4a8 Better handling for Exception stack trace testing.
continuous-integration/drone/push Build is failing
2020-08-15 13:59:10 +02:00
Deukhoofd 5ac7654be1 Add option to get depth of stack trace.
continuous-integration/drone/push Build is failing
2020-08-15 13:48:34 +02:00
Deukhoofd f29e111b78 Support new exception type with stack trace.
continuous-integration/drone/push Build is failing
2020-08-15 13:31:16 +02:00
Deukhoofd fb6b04bf03 Style Fix
continuous-integration/drone/push Build is passing
2020-08-10 17:22:47 +02:00
Deukhoofd 6e7a28d754 Support for swapping in a UniquePtrList.
continuous-integration/drone/push Build is passing
2020-08-10 17:20:37 +02:00
Deukhoofd 08952c86d0 Support for passing parameters to list to construct item in list.
continuous-integration/drone/push Build is passing
2020-08-09 10:47:41 +02:00
Deukhoofd d18e2c080c Style fix..
continuous-integration/drone/push Build is passing
2020-08-08 12:22:28 +02:00
Deukhoofd 74ebb40afc Fixes build.
continuous-integration/drone/push Build is passing
2020-08-08 12:20:20 +02:00
Deukhoofd 93e14af1e8 Trigger new build.
continuous-integration/drone/push Build is failing
2020-08-08 12:19:01 +02:00
Deukhoofd 0d9ea1d3a3 Changes empty static StringView, as it caused conflicts with older Empty bool checker.
continuous-integration/drone/push Build is failing
2020-08-08 12:10:25 +02:00
Deukhoofd f330e8a9e0 Fixes naming.
continuous-integration/drone/push Build is passing
2020-08-08 11:41:21 +02:00
Deukhoofd d8c3fe1436 Add support for simple empty StringView.
continuous-integration/drone/push Build is passing
2020-08-08 11:26:46 +02:00
Deukhoofd 18c7c3ddcb Remove thread_local as it causes issues with shared library linking.
continuous-integration/drone/push Build is passing
2020-07-28 19:24:35 +02:00
Deukhoofd 1000893652 Make C Interface exceptions thread local.
continuous-integration/drone/push Build is passing
2020-07-28 18:35:42 +02:00
Deukhoofd 5fda89bc72 Add support for setting and taking ownership on a pointer in UniquePtrList.
continuous-integration/drone/push Build is passing
2020-07-25 14:28:00 +02:00
Deukhoofd 287b50fb2f Exception handling for the C Interface.
continuous-integration/drone/push Build is passing
2020-07-19 11:08:05 +02:00
Deukhoofd 0295bb949a Actually export the C Interface.
continuous-integration/drone/push Build is passing
2020-07-19 10:44:54 +02:00
Deukhoofd b55e0c5473 Tell the build server to run a tests build.
continuous-integration/drone/push Build is passing
2020-07-17 12:17:16 +02:00
Deukhoofd 4f5ae70634 Cleanup for the cmake file.
continuous-integration/drone/push Build is failing
2020-07-17 12:15:32 +02:00
Deukhoofd eb3e174877 Reset to before c++20 features that required clang.
continuous-integration/drone/push Build is passing
2020-07-12 15:06:20 +02:00
Deukhoofd 23bbd45d92 Further fixes in the hope of fixing conan.
continuous-integration/drone/push Build is passing
2020-07-12 14:50:22 +02:00
Deukhoofd ab7504e79a Further fixes in the hope of fixing conan.
continuous-integration/drone/push Build is passing
2020-07-12 13:36:20 +02:00
Deukhoofd 03d1ff23e1 Log exact cmake command used by conan.
continuous-integration/drone/push Build is passing
2020-07-12 12:26:38 +02:00
Deukhoofd 1ddbfb09b9 Test to see if this works better with Conan.
continuous-integration/drone/push Build is passing
2020-07-12 11:46:48 +02:00
Deukhoofd 592e3c3ffe Found a better way to remove -fPIC flag for Windows build.
continuous-integration/drone/push Build is passing
2020-07-12 10:19:21 +02:00
Deukhoofd 61aa266737 More work on figuring out wclang with conan.
continuous-integration/drone/push Build is passing
2020-07-11 14:24:10 +02:00
Deukhoofd e578331001 Dont use mingw linker
continuous-integration/drone/push Build is passing
2020-07-11 14:06:33 +02:00
Deukhoofd d11661e06e Removed build step that was no longer needd.
continuous-integration/drone/push Build is passing
2020-07-11 13:49:27 +02:00
Deukhoofd f873dc97bf Several fixes for new build, ensuring we build DLLs for Windows, and that the proper libraries are included.
continuous-integration/drone/push Build is failing
2020-07-11 13:46:48 +02:00
Deukhoofd 69bf782c4c Do not statically link for conan build.
continuous-integration/drone/push Build is passing
2020-07-10 15:24:28 +02:00
Deukhoofd 9a7ce7dacb Dont link statically on release build, due to Valgrind testing.
continuous-integration/drone/push Build is passing
2020-07-10 14:32:01 +02:00
Deukhoofd d9aca71d32 Update to new Windows build container
continuous-integration/drone/push Build is failing
2020-07-10 14:12:22 +02:00
Deukhoofd 84052a2d94 Make StringViewLiteral use ConstEval
continuous-integration/drone/push Build is failing
2020-07-10 11:07:34 +02:00
Deukhoofd 0d2bec95e8 C Interface for random class. 2020-07-10 09:30:10 +02:00
Deukhoofd 950464ae79 Implements piping StringView into streams.
continuous-integration/drone/push Build is passing
2020-07-08 13:28:43 +02:00