Added PersistentJsonStorageClass
PersistentJsonStorage is used to store persistent information in
json format. This class will be used by ReportManager to save
persistent report configuration.
Tested:
- Added unit tests for new functionality
- All other unit tests are passing
Signed-off-by: Krzysztof Grobelny <krzysztof.grobelny@intel.com>
Change-Id: Ib496e6782e849d910fe37c02c355047afda5c79c
diff --git a/meson.build b/meson.build
index c6ef6ea..f373ef7 100644
--- a/meson.build
+++ b/meson.build
@@ -49,15 +49,29 @@
systemd = dependency('systemd')
+if cpp.has_header('nlohmann/json.hpp')
+ nlohmann_json = declare_dependency()
+else
+ subproject('nlohmann', required: false)
+ nlohmann_json = declare_dependency(
+ include_directories: [
+ 'subprojects/nlohmann/single_include',
+ 'subprojects/nlohmann/single_include/nlohmann',
+ ]
+ )
+endif
+
executable(
'telemetry',
[
'src/main.cpp',
'src/report.cpp',
'src/report_manager.cpp',
+ 'src/persistent_json_storage.cpp',
],
dependencies: [
boost,
+ nlohmann_json,
sdbusplus,
phosphor_logging,
],
@@ -76,3 +90,7 @@
install: true,
install_dir: systemd.get_pkgconfig_variable('systemdsystemunitdir'),
)
+
+if get_option('buildtest')
+ subdir('tests')
+endif