(C) 2018-, Mura. All rights reserved.
This is my utility library written in C++17 or C++20.
This library reserves the following names:
- any names in the global xxx namespase
- all the macro names with 'xxx_' prefix
This library requires the followings:
- C++17 or C++20 compiler and standard libraries (to build)
- CMake version 3.8 or higher (to build)
- GNU make, Visual Studio, or other build system generated by the CMake (to build)
- Doxygen, Graphviz, and Mscgen (to generate document)
This library supports the newest stable version of following compilers:
- LLVM clang++
- GNU g++
- Visual C++
This library requires 'hosted environment' basically. Main targets are the following platforms:
- 32/64-bit POSIX or similar OS
- 32/64-bit Win32-based OS
But it is easy to port the library to another platform because the library is free from such dependency as far as possible. Platform-depended and/or implementation-defined code are separated.
This library supports both the static (such as '.a' or '.lib') and dynamic (such as '.so' or '.dll') link. Furthermore, several headers are available as only headers without the libraries.
Generally, this library does not depend on third-party's library excluding C++ standard library and platform's primitive libraries.
This library conforms to the following specifications:
- ISO/IEC 14882:2017
- ISO/IEC 14882:2020
$ cmake .
$ make
$ ctest
$ doxygen doc/Doxyfile