HardwareState: Add IETFHardware module

Port the module aggregating data for ietf-hardware-state module from
cla-sysrepo@238b1d583bb1c25382741f0d94e384ad05456c7b.

Change-Id: I49111977309672c6e8318672dc516c5c421beb96
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 20cd762..fbcbb1a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -62,6 +62,8 @@
     src/utils/log-fwd.h
     src/utils/log-init.cpp
     src/utils/log-init.h
+    src/utils/time.cpp
+    src/utils/time.h
     )
 target_link_libraries(velia-utils PUBLIC spdlog::spdlog PRIVATE PkgConfig::SYSTEMD)
 
@@ -101,6 +103,8 @@
     src/ietf-hardware/sysfs/EMMC.h
     src/ietf-hardware/sysfs/HWMon.cpp
     src/ietf-hardware/sysfs/HWMon.h
+    src/ietf-hardware/IETFHardware.cpp
+    src/ietf-hardware/IETFHardware.h
     )
 target_link_libraries(velia-ietf-hardware
     PUBLIC
@@ -173,6 +177,7 @@
 
     velia_test(hardware_emmc velia-ietf-hardware FsTestUtils)
     velia_test(hardware_hwmon velia-ietf-hardware FsTestUtils)
+    velia_test(hardware_ietf-hardware velia-ietf-hardware)
 
     find_program(YANGLINT_PATH yanglint)
     if (NOT YANGLINT_PATH)