File 0001-Fixes-build.patch of Package timed

From 2b54667fce5d43774c88edf27ea024fa8077506d Mon Sep 17 00:00:00 2001
From: Jozef Mlich <jmlich83@gmail.com>
Date: Fri, 23 Jun 2023 09:38:50 +0200
Subject: [PATCH] Fixes build

---
 src/server/server.pro |  7 ++++---
 src/server/timed.cpp  | 17 ++++++-----------
 src/server/timed.h    |  8 ++++----
 src/server/tzdata.cpp |  4 ++--
 4 files changed, 16 insertions(+), 20 deletions(-)

diff --git a/src/server/server.pro b/src/server/server.pro
index dc1cc8f..eaf92c0 100644
--- a/src/server/server.pro
+++ b/src/server/server.pro
@@ -10,9 +10,10 @@ VERSION = $$(TIMED_VERSION)
 INCLUDEPATH += ../h
 
 QMAKE_LIBDIR_FLAGS += -L../lib -L../voland
-LIBS += -ltimed-qt5 -ltimed-voland-qt5
+LIBS += -ltimed-qt5 -ltimed-voland-qt5 -liodata-qt5
 
-IODATA_TYPES = queue.type config.type settings.type customization.type tzdata.type
+typeinfo.files = queue.type config.type settings.type customization.type tzdata.type
+typeinfo.path = $$(DESTDIR)/usr/share/timed/typeinfo
 
 CONFIG(dsme_dbus_if) {
     SOURCES += dsme-mode.cpp
@@ -103,7 +104,7 @@ systemd.files = timed-qt5.service
 oneshot.path = $$(DESTDIR)/usr/lib/oneshot.d
 oneshot.files = setcaps-timed-qt5.sh
 
-INSTALLS += target xml timedrc dbusconf systemd oneshot
+INSTALLS += target xml timedrc dbusconf systemd oneshot typeinfo
 
 QMAKE_CXXFLAGS  += -Wall
 
diff --git a/src/server/timed.cpp b/src/server/timed.cpp
index db56b1d..479cc2e 100644
--- a/src/server/timed.cpp
+++ b/src/server/timed.cpp
@@ -39,11 +39,6 @@
 
 #include "../voland/interface.h"
 
-#include "config.type.h"
-#include "customization.type.h"
-#include "queue.type.h"
-#include "settings.type.h"
-
 #if HAVE_DSME
 #include "interfaces.h"
 #endif
@@ -271,7 +266,7 @@ void Timed::init_configuration()
     const char *input_path = configuration_path();
     iodata::storage *config_storage = new iodata::storage;
     config_storage->set_primary_path(input_path);
-    config_storage->set_validator(etc_timed_rc_validator(), "config_t");
+    config_storage->set_validator(configuration_type(), "config_t");
 
     /* Because config_storage->load() also sets up the default values, we
    * must call it even if we know that the input file is not present ... */
@@ -342,7 +337,7 @@ void Timed::init_customization()
     const char *input_path = customization_path();
     iodata::storage *storage = new iodata::storage;
     storage->set_primary_path(input_path);
-    storage->set_validator(customization_data_validator(), "customization_t");
+    storage->set_validator(customization_type(), "customization_t");
 
     /* Because config_storage->load() also sets up the default values, we
    * must call it even if we know that the input file is not present ... */
@@ -456,7 +451,7 @@ void Timed::init_read_settings()
     shared_settings_storage = new iodata::storage;
     shared_settings_storage->set_primary_path(shared_settings_path.toStdString());
     shared_settings_storage->set_secondary_path(shared_settings_path.toStdString() + ".bak");
-    shared_settings_storage->set_validator(settings_data_validator(), "settings_t");
+    shared_settings_storage->set_validator(settings_file_type(), "settings_t");
 
     /* If possible, read shared settings file */
     if (access(qUtf8Printable(shared_settings_path), R_OK) == 0
@@ -474,7 +469,7 @@ void Timed::init_read_settings()
         /* Private data has been migrated / is otherwise unreadable */
         private_settings_storage->set_primary_path("/dev/null");
     }
-    private_settings_storage->set_validator(settings_data_validator(), "settings_t");
+    private_settings_storage->set_validator(settings_file_type(), "settings_t");
 
     /* If reading shared settings file failed, read private / dummy data */
     if (!tree) {
@@ -619,7 +614,7 @@ void Timed::init_load_events()
     shared_event_storage = new iodata::storage;
     shared_event_storage->set_primary_path(shared_events_path.toStdString());
     shared_event_storage->set_secondary_path(shared_events_path.toStdString() + ".bak");
-    shared_event_storage->set_validator(events_data_validator(), "event_queue_t");
+    shared_event_storage->set_validator(event_queue_type(), "event_queue_t");
 
     if (permissions_shared_events()) {
         iodata::record *events = shared_event_storage->load();
@@ -632,7 +627,7 @@ void Timed::init_load_events()
     private_event_storage = new iodata::storage;
     private_event_storage->set_primary_path(private_events_path.toStdString());
     private_event_storage->set_secondary_path(private_events_path.toStdString() + ".bak");
-    private_event_storage->set_validator(events_data_validator(), "event_queue_t");
+    private_event_storage->set_validator(event_queue_type(), "event_queue_t");
 
     if (permissions_private_events()) {
         iodata::record *events = private_event_storage->load();
diff --git a/src/server/timed.h b/src/server/timed.h
index 9e3efb8..0c064b1 100644
--- a/src/server/timed.h
+++ b/src/server/timed.h
@@ -56,17 +56,17 @@ struct Timed : public QCoreApplication
 {
 public:
     inline const char *configuration_path() { return "/etc/timed-qt5.rc"; }
-    // inline const char *configuration_type() { return  "/usr/share/timed/typeinfo/config.type" ; }
+    inline const char *configuration_type() { return  "/usr/share/timed/typeinfo/config.type" ; }
 
     inline const char *customization_path()
     {
         return "/usr/share/timed/customization.data";
     } // TODO: make it configurable
-    // inline const char *customization_type() { return  "/usr/share/timed/typeinfo/customization.type" ; }
+    inline const char *customization_type() { return  "/usr/share/timed/typeinfo/customization.type" ; }
 
-    // inline const char *settings_file_type() { return  "/usr/share/timed/typeinfo/settings.type" ; }
+    inline const char *settings_file_type() { return  "/usr/share/timed/typeinfo/settings.type" ; }
 
-    // inline const char *event_queue_type() { return  "/usr/share/timed/typeinfo/queue.type" ; }
+    inline const char *event_queue_type() { return  "/usr/share/timed/typeinfo/queue.type" ; }
 
 private:
     bool format24_by_default;
diff --git a/src/server/tzdata.cpp b/src/server/tzdata.cpp
index 06d816e..9aa0d8e 100644
--- a/src/server/tzdata.cpp
+++ b/src/server/tzdata.cpp
@@ -142,13 +142,13 @@ string tzdata::set_str(const set<olson *> &x)
 
 // --- initialization ---
 
-#include "tzdata.type.h"
+static iodata::validator *tzdata_validator = iodata::validator::from_file("/usr/share/timed/typeinfo/tzdata.type") ;
 
 static iodata::record *open_database(const char *path, const char *type)
 {
     log_notice("opening file '%s', reading record of type '%s'", path, type);
     iodata::storage file;
-    file.set_validator(tzdata_validator(), type);
+    file.set_validator(tzdata_validator, type);
     file.set_primary_path(path);
     if (iodata::record *res = file.load())
         return res;
-- 
2.40.1

openSUSE Build Service is sponsored by