Optional modules¶
HolorLib contains some optional modules that can be built after the installation.
Examples¶
Some examples that demonstrate few uses of the library, such as how to construct and slice Holors. The examples can be compiled using the following instructions from the root folder.
cd build
cmake .. -DHOLOR_BUILD_EXAMPLES=ON -DCMAKE_BUILD_TYPE=Release [-DCMAKE_CXX_COMPILER=...]
make
./holor.sh build_examples [--compiler ...]
The compilation of the examples is enabled by setting the cmake option -DHOLOR_BUILD_EXAMPLES=ON
. Optionally, one can specify the compiler to be used with the cmake option -DCMAKE_CXX_COMPILER
, for example if the default system compiler does not support C++20.
The examples can be compiled using the script holor.sh
. Optionally, one can specify the compiler to be used with argument --compiler
, for example if the default system compiler does not support C++20.
The compiled binaries are located in the directory build/bin
.
Tests¶
Some tests to verify the correct behavior of the library. The tests can be compiled using the following instructions from the root folder.
Requirements
The tests require gtest, to be used in conjunction with CMake. We recommend checking the instructions on the gtest page. For a quick setup, go to the directory where you want to download the gtest repository and follow these instructions
git clone https://github.com/google/googletest.git
cd googletest
mkdir build
cd build
cmake ..
make
sudo make install
cd build
cmake .. -DHOLOR_BUILD_TESTS=ON -DCMAKE_BUILD_TYPE=Release [-DCMAKE_CXX_COMPILER=...]
make
./holor.sh build_tests [--compiler ...]
The compilation of the tests is enabled by setting the cmake option -DHOLOR_BUILD_TESTS=ON
. Optionally, one can specify the compiler to be used with the cmake option -DCMAKE_CXX_COMPILER
, for example if the default system compiler does not support C++20.
The tests can be compiled using the script holor.sh
. Optionally, one can specify the compiler to be used with argument --compiler
, for example if the default system compiler does not support C++20.
The compiled binaries are located in the directory build/bin
.
Benchmarks¶
Some benchmarks to evalaute the performance of the Holor containers. The benchmarks can be compiled using the following instructions from the root folder.
Requirements
The tests require google benchmark, to be used in conjunction with CMake. We recommend checking the instructions on the benchmark page. For a quick setup, go to the directory where you want to download the repository and follow these instructions
git clone https://github.com/google/benchmark.git
cd benchmark
cmake -E make_directory "build"
cmake -E chdir "build" cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=on -DCMAKE_BUILD_TYPE=Release ../
cmake -DCMAKE_BUILD_TYPE=Release -S . -B "build"
cmake --build "build" --config Release
cd build
sudo make install
cd build
cmake .. -DHOLOR_BUILD_BENCHMARKS=ON -DCMAKE_BUILD_TYPE=Release [-DCMAKE_CXX_COMPILER=...]
make
`` bash ./holor.sh build_benchmarks [--compiler ...] ```
The compilation of the benchmarks is enabled by setting the cmake option -DHOLOR_BUILD_BENCHMARKS=ON
. Optionally, one can specify the compiler to be used with the cmake option -DCMAKE_CXX_COMPILER
, for example if the default system compiler does not support C++20.
The benchmarks can be compiled using the script holor.sh
. Optionally, one can specify the compiler to be used with argument --compiler
, for example if the default system compiler does not support C++20.
The compiled binaries are located in the directory build/bin
.
Documentation¶
This very same documentation can be built locally to be accessed offline.
Requirements
The documentation is built using Material for MkDocs 7.3.0 or superior. We recommend to install it using pip
pip install mkdocs-material
The documentation can be built using the following command from the root folder
mkdocs build
site
folder. To consult it, open the index.html
file in a web browser.