Virtual File System
TBD
In order to build this project following tools must be present in the system:
- git (to check out project and it’s external modules, see dependencies section)
- doxygen (for documentation)
- cppcheck (static code analysis, latest version from git is used as part of the 'codecheck' step)
- cpplint (for static code analysis in addition to cppcheck)
- valgrind (for runtime code quality verification)
This project is using C++17 features extensively. The minimal tested/required version of gcc is gcc-7. CI is using clang-6 and gcc-7. To install build tools on Debian based Linux distribution:
sudo apt-get update -qq
sudo apt-get install cmake git doxygen python-pip valgrind ggcov
sudo pip install cpplint
The library has single external dependency: libsolace managed via conan package manager. Make sure conan is installed on your system in order to build the project.
# In the project check-out directory:
# To build debug version with sanitizer enabled (recommended for development)
./configure --enable-debug --enable-sanitizer
# To build the library it self
make
# To build and run unit tests:
make test
# To run valgrind on test suit:
# Note: `valgrind` doesn’t work with ./configure --enable-sanitize option
make verify
# To build API documentation using doxygen:
make doc
To install locally for testing:
make --prefix=/user/home/<username>/test/lib install
To install system wide (as root):
make install
To run code quality check before submission of a patch:
# Verify code quality before submission
make codecheck
Please see LICENSE file for details
Please see AUTHORS file for the list of contributors