https://matgomes.com/integrate-google-test-into-cmake/
https://stackoverflow.com/questions/1398445/directory-structure-for-a-c-library
https://stackoverflow.com/questions/63916507/c-cmake-project-structure-for-lib-and-executable
https://cmake.org/cmake/help/book/mastering-cmake/chapter/Testing%20With%20CMake%20and%20CTest.html
https://matgomes.com/add-library-cmake-create-libraries/#google_vignette
cd build
cmake ..
make -j8
ctest
https://stackoverflow.com/questions/2649334/difference-between-static-and-shared-libraries
https://decovar.dev/blog/2021/03/08/cmake-cpp-library/
cmake -B build -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER=gcc -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release