A static C++ library that encompasses many of the tools I have made to make development easier.
The library was created using the tools listed below. While the library can be compiled without them, it would require setting up a make file manually.
You can get clang here: http://releases.llvm.org/download.html
This project currently uses clang 12.0.0 with posix thread model
You can get Ninja here: https://ninja-build.org/
This is a personal project I created to help setup c++ projects.
It was used to setup this project, the batch files, and the .ninja files.
While editing was still needed on a few files, it works nicely.
This is mainly used when you add a new file to update the .ninja files for you.
You can get cppPS here: https://github.com/Davidah121/cppPS/
The windows SDK is needed and can be installed in different ways.
The build files reference the include files and library files through environment variables.
cppPS can setup the environment variables for you however if compiled using Visual Studios, it is not required.
Note that with Visual Studios, modification will be needed to compile and use the files in the 'ext' folders.
There are libraries that are not fundamentally required to compile as you can ignore them using Preprocessor defines.
Without these though, you may find certain classes no longer work or performance may be lacking.
For instance, not using -mavx and setting the preprocessor OPTI to a value above 0 can result in the library not using intrinsics instructions.
OpenSSL is required to use SSL. This includes SecureSockets and HTTPS.
pthreads is required on linux.