Simlib is a C++ utility library for Linux originally created for the Sim project.
Some functionality documentation
You will need meson build system to be installed (on most platforms it is in the meson package).
You need a C++ compiler with C++17 support. Meson will point out missing dependencies.
meson setup release-build/ -Dbuildtype=release -Ddefault_library=both
ninja -C release-build/ basemeson setup build/ -Dc_args=-DDEBUG -Dcpp_args='-DDEBUG -D_GLIBCXX_DEBUG' -Db_sanitize=undefined -Db_lundef=false
ninja -C build/ baseStatic build is useful if you want to build executables linked statically.
meson setup static-build/ -Ddefault_library=static -Dstatic=true
ninja -C static-build/ baseRun after building:
# we will use release-build build directory, if you use other just change all release-build below
# if you want to install to default prefix
meson install -C release-build
# specifying other install directory
DESTDIR=other/install/dir/ meson install -C release-buildninja -C build/ test # or other build directoryTo format all sources (clang-format is required):
ninja -C build formatTo lint all sources:
ninja -C build tidyor
./tidyTo lint specified sources:
./tidy path/to/source.cc other/source.hninja -C build scan-build