- Split minidump (upload) and exception handling code
- Smaller minidumps for faster uploads
- Several new build flags (accessible from premake5 with --params)
- BitMessage abstractions
- Some other things I can't remember.
All dependency projects are now separated into their own Premake scripts and are designed to provide easy "import", "includes" and "setup" functions.
First, you use project.setup { ... } to provide the library with its respective configuration, this MAY include defines and MUST include the source path of that specific library. Then you can use project.includes() or project.import() in your target application or library project to let the script configure your project. This will configure all necessary include directories and links.
- --debug-detections sets the "DEBUG_DETECTIONS" define to show whenever a mismatch in the anticheat hashing occurs.
- --debug-load-library sets the "DEBUG_LOAD_LIBRARY" define to show libraries as they are loaded during runtime in the debug console.
- --force-unit-tests sets the "FORCE_UNIT_TESTS" define to enforce compiling the unit tests into the binary.
REVISION_CLEAN can be 0 or 1. When it is 0 that means that there were uncommitted changes to the code at the time of version info generation, otherwise this will be 1 which means that there have been no uncommitted changes.
This is mainly with focus on issues with the ECC code. One of these issues is a "possible overflow in ecc_ansi_x963_export" (https://github.com/libtom/libtomcrypt/issues/58). Other than that all changes are minimal, only one new compile flag had to be added to get around a compiler incompatibility case for LTC_FAST (we're not working with GNU compilers here) and the code will fully compile.
- /wd4100 since "unused formal parameter" is not a critical error
- _SCL_SECURE_NO_WARNINGS as unfortunately protoc's generated code still relies on potentially unsafe methods