Wrapper around libconfig that writes and reads files in XDG_CONFIG_HOME.
|
||
---|---|---|
cmake | ||
examples | ||
include | ||
pkg-config | ||
src | ||
tests | ||
.drone.yml | ||
.gitignore | ||
build_doc.sh | ||
CMakeLists.txt | ||
Doxyfile | ||
LICENSE | ||
README.md |
xdgcfg is a very simple wrapper around libconfig written in C++. It reads
and writes files in ${XDG_CONFIG_HOME}
. It creates subdirectories if
necessary.
Usage
xdgcfg.hpp
has explanatory comments in it and there is an
example. The reference is also available at
doc.schlomp.space/xdgcfg/.
Use it in your CMake project like this:
find_package(xdgcfg CONFIG REQUIRED)
target_link_libraries(MyProject xdgcfg::xdgcfg)
If you don't use CMake, you can get the compile-flags with pkg-config:
pkg-config --libs --cflags xdgcfg
Install
Gentoo
Add my repository and install it from there.
eselect repository enable tastytea
echo "dev-cpp/xdgcfg" >> /etc/portage/package.accept_keywords/xdgcfg
emaint sync -r tastytea
emerge -a dev-cpp/xdgcfg
From source
Dependencies
- C++ compiler (Tested: g++ 5/8/9)
- cmake (at least: 3.1)
- pkgconfig (tested: 0.29)
- libconfig++ (tested: 1.5)
- libxdg-basedir (tested: 1.2)
Compile
mkdir build
cd build
cmake ..
cmake --build .
make install
CMake options
-DWITH_TESTS=YES
to compile the tests.-DWITH_EXAMPLES=YES
to compile the example.-DBUILD_SHARED_LIBS=NO
to build a static library.