From 88e4e78db89256c38779d218fa665b2c4f099aa5 Mon Sep 17 00:00:00 2001 From: tastytea Date: Tue, 1 Jun 2021 18:47:12 +0200 Subject: [PATCH] Add nlohmann_json dependency. --- .drone.yml | 13 ++++++++----- CMakeLists.txt | 1 + README.adoc | 5 ++++- src/CMakeLists.txt | 3 ++- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/.drone.yml b/.drone.yml index a35384d..c572a06 100644 --- a/.drone.yml +++ b/.drone.yml @@ -27,7 +27,7 @@ steps: - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq build-essential cmake clang locales - - apt-get install -qq catch libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev + - apt-get install -qq catch libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json3-dev - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DWITH_TESTS=YES .. - make VERBOSE=1 @@ -60,12 +60,13 @@ steps: DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 pugixml_DIR: "/usr/share/libpugixml-dev/cmake" + nlohmann_json_DIR: "/usr/lib/cmake" commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq g++-8 build-essential clang locales - - apt-get install -qq catch libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev + - apt-get install -qq catch libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json-dev - sh cmake_installer.sh --skip-license --exclude-subdir --prefix=/usr/local - cp /usr/lib/x86_64-linux-gnu/libpugixml* /lib/x86_64-linux-gnu/ - rm -rf build && mkdir -p build && cd build @@ -119,12 +120,13 @@ steps: CXXFLAGS: -pipe -O2 DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 + nlohmann_json_DIR: "/usr/lib/cmake" commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq build-essential cmake clang locales lsb-release - - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev + - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json-dev - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr .. - make VERBOSE=1 @@ -148,7 +150,7 @@ steps: - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq build-essential cmake clang locales lsb-release - - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev + - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json3-dev - rm -rf build && mkdir -p build && cd build - cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr .. - make VERBOSE=1 @@ -176,12 +178,13 @@ steps: DEBIAN_FRONTEND: noninteractive LANG: C.UTF-8 pugixml_DIR: "/usr/share/libpugixml-dev/cmake" + nlohmann_json_DIR: "/usr/lib/cmake" commands: - rm /etc/apt/apt.conf.d/docker-clean - alias apt-get='rm -f /var/cache/apt/archives/lock && apt-get' - apt-get update -q - apt-get install -qq g++-8 build-essential clang locales lsb-release - - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev + - apt-get install -qq libboost-program-options-dev libboost-locale-dev libboost-regex-dev libboost-log-dev gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev nlohmann-json-dev - sh cmake_installer.sh --skip-license --exclude-subdir --prefix=/usr/local - cp /usr/lib/x86_64-linux-gnu/libpugixml* /lib/x86_64-linux-gnu/ - rm -rf build && mkdir -p build && cd build diff --git a/CMakeLists.txt b/CMakeLists.txt index adb9ef2..377d655 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -41,6 +41,7 @@ if(NOT termcolor_FOUND) endif() find_package(Threads REQUIRED) find_package(pugixml REQUIRED CONFIG) +find_package(nlohmann_json REQUIRED CONFIG) add_subdirectory(src) diff --git a/README.adoc b/README.adoc index 5e4ab43..d3bf73a 100644 --- a/README.adoc +++ b/README.adoc @@ -16,6 +16,7 @@ :uri-asciidoc: http://asciidoc.org/ :uri-termcolor: https://termcolor.readthedocs.io/ :uri-pugixml: https://pugixml.org/ +:uri-json: https://nlohmann.github.io/json/ :license: https://schlomp.space/tastytea/{project}/src/branch/main/LICENSE :license-termcolor: https://schlomp.space/tastytea/{project}/src/branch/main/dist/termcolor/LICENSE @@ -86,6 +87,7 @@ If you get the error message that `add-apt-repository` was not found, install * link:{uri-termcolor}[Termcolor] (tested: 2.0) (If not found, the bundled version is used.) * link:{uri-pugixml}[pugixml] (tested: 1.11 / 1.8) +* link:{uri-json}[nlohmann_json] (tested: 3.9 / 2.0) * Optional ** Tests: link:{uri-catch}[Catch] (tested: 2.13 / 1.10) @@ -99,7 +101,8 @@ of CMake. -------------------------------------------------------------------------------- sudo apt install build-essential cmake libboost-program-options-dev \ libboost-locale-dev libboost-regex-dev libboost-log-dev \ - gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev + gettext libarchive-dev libfmt-dev asciidoc libpugixml-dev \ + nlohmann-json3?-dev -------------------------------------------------------------------------------- ==== Get sourcecode diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 713f712..ebd383f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -32,7 +32,8 @@ target_link_libraries(${PROJECT_NAME}_lib termcolor::termcolor Threads::Threads m - pugixml) + pugixml + nlohmann_json) if(${CMAKE_VERSION} VERSION_LESS 3.17) target_link_libraries(${PROJECT_NAME}_lib