From da10d6c2f611ef5e2a042a4e55d34ca515fbd73f Mon Sep 17 00:00:00 2001 From: Gerhard Hoffmann Date: Tue, 14 May 2024 16:38:47 +0200 Subject: [PATCH] make compile --- DownloadDCFirmware/main.cpp | 87 +++++++++++++++++++++++++++++++++++-- 1 file changed, 84 insertions(+), 3 deletions(-) diff --git a/DownloadDCFirmware/main.cpp b/DownloadDCFirmware/main.cpp index 6c7e555..be8be7e 100644 --- a/DownloadDCFirmware/main.cpp +++ b/DownloadDCFirmware/main.cpp @@ -1,13 +1,25 @@ + #include #include #include +#include + +#include +#include +#include +#include +#include #include -#include -#include #include -#include "../common/include/message_handler.h" +#include "message_handler.h" +#include "commandline_parser.h" +#include "utils.h" +#include "update.h" #include "mainwindow.h" +#include "System.h" + +#include #ifdef __linux__ #include @@ -19,6 +31,20 @@ #define SERIAL_PORT "ttyUSB0" #endif +int read1stLineOfFile(QString fileName) { + QFile f(fileName); + if (f.exists()) { + if (f.open(QIODevice::ReadOnly | QIODevice::Text)) { + QTextStream in(&f); + in.setCodec("UTF-8"); + while(!in.atEnd()) { + return in.readLine().toInt(); + } + } + } + return -1; +} + int main(int argc, char **argv) { QByteArray const value = qgetenv("LC_ALL"); if (value != "C") { @@ -37,6 +63,61 @@ int main(int argc, char **argv) { setDebugLevel(LOG_NOTICE); } + CommandLineParser parser; + parser.process(a); + parser.readSettings(); + + QString repositoryUrl = parser.repositoryUrl(); + QString plugInDir = parser.plugInDir(); + QString plugInName = parser.plugInName(); + QString workingDir = parser.workingDir(); + QString psaConfigDir = parser.psaConfigDir(); + QString psaTariffDir = parser.psaTariffDir(); + QString iniFileName = parser.iniFileName(); + bool const dryRun = parser.dryRun(); + bool const noUpdatePsaHardware = parser.noUpdatePsaHardware(); + bool const showYoctoVersion = parser.yoctoVersion(); + bool const showYoctoInstallStatus = parser.yoctoInstallStatus(); + bool const showExtendedVersion = parser.extendedVersion(); + bool const alwaysDownloadConfig = parser.alwaysDownloadConfig(); + bool const alwaysDownloadDC = parser.alwaysDownloadDC(); + + QString const rtPath = QCoreApplication::applicationDirPath(); + + int const machineNr = read1stLineOfFile("/mnt/system_data/machine_nr"); + int const customerNr = read1stLineOfFile("/mnt/system_data/cust_nr"); + int const zoneNr = read1stLineOfFile("/mnt/system_data/zone_nr"); + QString const branchName = (zoneNr != 0) + ? QString("zg1/zone%1").arg(zoneNr) : "master"; + + qInfo() << "pwd ......................" << rtPath; + qInfo() << "repositoryUrl ............" << repositoryUrl; + qInfo() << "plugInDir ................" << plugInDir; + qInfo() << "plugInName ..............." << plugInName; + qInfo() << "workingDir ..............." << workingDir; + qInfo() << "psaConfigDir ............." << psaConfigDir; + qInfo() << "psaTariffDir ............." << psaTariffDir; + qInfo() << "dryRun ..................." << dryRun; + qInfo() << "noUpdatePsaHardware ......" << noUpdatePsaHardware; + qInfo() << "alwaysDownloadConfig ....." << alwaysDownloadConfig; + qInfo() << "alwaysDownloadDC ........." << alwaysDownloadDC; + qInfo() << "showYoctoVersion ........." << showYoctoVersion; + qInfo() << "showYoctoInstallStatus ..." << showYoctoInstallStatus; + qInfo() << "showExtendedVersion ......" << showExtendedVersion; + qInfo() << "iniFileName .............." << iniFileName; + qInfo() << "extended-version ........." << APP_EXTENDED_VERSION; + qInfo() << "machineNr ................" << machineNr; + qInfo() << "customerNr ..............." << customerNr; + qInfo() << "zoneNr ..................." << zoneNr; + + if (showExtendedVersion) { + printf(APP_EXTENDED_VERSION"\n"); + return 0; + } + + QString const &customerRepo = QDir::cleanPath(workingDir + QDir::separator() + QString("customer_%1").arg(customerNr)); + QStringList filesToUpdate; + QThread::currentThread()->setObjectName("main thread"); qInfo() << "Main thread" << QThread::currentThreadId();