Wrapper around libconfig that writes and reads files in XDG_CONFIG_HOME.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tastytea 9337964266
Install headers more elegantly.
1 month ago
cmake Replaced ${PROJECT_NAME} with @PROJECT_NAME@. 1 month ago
examples License change to BSD-3-Clause. 1 month ago
include Install headers more elegantly. 1 month ago
pkg-config Rearranged the file structure and rewrote the CMake recipes. 1 month ago
src Install headers more elegantly. 1 month ago
tests Rearranged the file structure and rewrote the CMake recipes. 1 month ago
.drone.yml Added gcc-9 to CI. 1 month ago
.gitignore Added documentation generation 1 year ago
CMakeLists.txt Install headers more elegantly. 1 month ago
Doxyfile Fixed paths in Doxyfile. 1 month ago
LICENSE License change to BSD-3-Clause. 1 month ago
README.md Fixed example location in readme. 1 month ago
build_doc.sh Updated Doxygen generation. 1 month ago

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

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.