Header-Only C++ Library to Extend the Functionality of the STL
master | |||
Current |
Language Standard: | C++20 |
Compiler: | GCC | Clang |
Build System: | build2 |
Operating System: | Linux |
Dependencies: | - |
Optional Dependencies: | doctest |
Add this repository to the repositories.manifest
file of your build2 package.
:
role: prerequisite
location: https://github.com/lyrahgames/xstd.git
Add the following entry to the manifest
file with a possible version dependency.
depends: lyrahgames-xstd
Add these entries to your buildfile
.
import libs = lyrahgames-xstd%lib{lyrahgames-xstd}
exe{your-executable}: {hxx cxx}{**} $libs
The standard installation process will only install the header-only library with some additional description, library, and package files.
bpkg -d build2-packages cc \
config.install.root=/usr/local \
config.install.sudo=sudo
Get the latest package release and build it.
bpkg build https://github.com/lyrahgames/xstd.git
Install the built package.
bpkg install lyrahgames-xstd
For uninstalling, do the following.
bpkg uninstall lyrahgames-xstd
If your package uses an explicit depends: lyrahgames-xstd
make sure to initialize this dependency as a system dependency when creating a new configuration.
bdep init -C @build cc config.cxx=g++ "config.cxx.coptions=-O3" -- "?sys:lyrahgames-xstd/*"
To use other build systems or manual compilation, you only have to add the lyrahgames/xstd/
directory to your project and include it in the compilation process.
Sadly, robust and automatic generation of API documents for the modern C++ standard is still lacking. So, you are probably left with reading the source code files directly to get some understanding of the main API parts. The source code provides some amount of comments to make it easier to understand.