diff --git a/OnDemandUpdatePTU.pro b/OnDemandUpdatePTU.pro index 67c6e51..1909112 100644 --- a/OnDemandUpdatePTU.pro +++ b/OnDemandUpdatePTU.pro @@ -41,9 +41,36 @@ DEFINES += QT_DEPRECATED_WARNINGS # up cloning of customer repository. # 1.3.13: Fix: if the customer repository is corrupted, remove it and re-clone # the repository (without checking the ISMAS-trigger (WAIT-)button. +VERSION="1.3.14" # 1.3.14: Add additional check for sanity of customer repository using # "git fsck". -# Stream-lined code of update process. +# Stream-lined code of update process: massive refactoring. +# Added functionality: If WAIT button is not active, then an existing +# customer repository will be repaired, or a not existing repository +# will be cloned. The process stops then. +# However, if the WAIT button is active, the at least the commands in +# opkg_commands will be executed. Changed files in the customer +# repository will be worked on: tariff-files will be synced with the +# local filesystem, json-files will be downloaded to firmware. +# The device-controller firmware will be handled in a later version. + +# PLANNED TODOS: +# 1: Das Repository wird repariert bwz. neu geklont. Unabhaengig vom WAIT. +# 2: Wenn der WAIT-Button aktiv ist, dann wird ein Repository repariert (neu +# geklont), aber zusaetzlich werden alle verfuegbaren Dateien als neu +# angesehen und die entsprechenden Aktionen durchgefuehrt: tariff-files +# spiegeln, json-files laden und dc laden. Also VORSICHT: das repository +# muss in diesem fall wirklich in ordnung sein. +# 3: Wurde keine Datei geaendert, kein initiales Clone und der WAIT-button +# nicht aktiv, so (passiert natuerlich nichts) kann man davon ausgehen, +# dass es sich um ein automatisches Update handelt. Dann koennte man im +# ISMAS eine entsprechende Meldung anzeigen als Teil von SEND-LAST-VERSION. +# Wenn der WAIT-button aktiv ist, dann werden zumindest die opkg-commands +# ausgefuehrt. +# 4: rsync: immer alle Dateien soiegeln (bis auf opkg-commands) +# 5: Falls das Tool mal abstuerzt, dann einen Signal-Handler (fuer TERM) +# installieren, sodass zumnidest SEND-LASt-VERSION mit rausgeht. +# 6: rsync: explizites Binary, nicht das in busybox enthaltene. win32 { BUILD_DATE=$$system("date /t") @@ -55,7 +82,6 @@ win32 { GIT_COMMIT=$$system("git log -1 --format=oneline | cut -d' ' -f1") -VERSION="1.3.11" EXTENDED_VERSION="$${VERSION}-$${GIT_COMMIT}" INCLUDEPATH += plugins @@ -68,6 +94,8 @@ DEFINES+=APP_BUILD_DATE=\\\"$$BUILD_DATE\\\" DEFINES+=APP_BUILD_TIME=\\\"$$BUILD_TIME\\\" DEFINES+=APP_EXTENDED_VERSION=\\\"$$EXTENDED_VERSION\\\" +# keep comments, as /* fall through */ +QMAKE_CXXFLAGS += -C QMAKE_CXXFLAGS += -g QMAKE_CXXFLAGS += -Wno-deprecated-copy @@ -76,14 +104,14 @@ contains( CONFIG, PTU5 ) { CONFIG += link_pkgconfig lessThan(QT_MAJOR_VERSION, 5): PKGCONFIG += qextserialport QMAKE_CXXFLAGS += -O2 -std=c++17 # for GCC >= 4.7 - QMAKE_CXXFLAGS += -Wno-deprecated-copy + # QMAKE_CXXFLAGS += -Wno-deprecated-copy ARCH = PTU5 DEFINES+=PTU5 } contains( CONFIG, PTU5_YOCTO ) { greaterThan(QT_MAJOR_VERSION, 4): QT += serialport QMAKE_CXXFLAGS += -std=c++17 # for GCC >= 4.7 - QMAKE_CXXFLAGS += -Wno-deprecated-copy + # QMAKE_CXXFLAGS += -Wno-deprecated-copy PTU5BASEPATH = /opt/devel/ptu5 ARCH = PTU5 DEFINES+=PTU5 @@ -97,7 +125,7 @@ contains( CONFIG, DesktopLinux ) { # QMAKE_CC = ccache $$QMAKE_CC # QMAKE_CXX = ccache $$QMAKE_CXX QMAKE_CXXFLAGS += -std=c++17 - QMAKE_CXXFLAGS += -Wno-deprecated-copy + # QMAKE_CXXFLAGS += -Wno-deprecated-copy linux-clang { QMAKE_CXXFLAGS += -Qunused-arguments } ARCH = DesktopLinux DEFINES+=DesktopLinux