From 76c42701dd5c19bd6f67a58dfc53878b778b0572 Mon Sep 17 00:00:00 2001 From: 0xFEEDC0DE64 <0xFEEDC0DE64@gmail.com> Date: Mon, 17 Sep 2018 19:52:23 +0200 Subject: [PATCH] Added project structure --- .gitmodules | 51 +++++++++++++++++++++ 3rdparty/3rdparty.pro | 3 ++ 3rdparty/Quazip | 1 + DbDatabaseTree | 1 + DbHashCracker | 1 + DbMessaging | 1 + DbNeuralNet | 1 + DbPathFinder | 1 + DbPicSync | 1 + DbRadioDumper | 1 + DbSerialServer | 1 + DbSketch | 1 + DbSoftware.pro | 27 +++++++++++ DbTernaryClock | 1 + DbTictactoe | 1 + DbWebserver | 1 + DbZeiterfassung | 1 + app.pri | 4 ++ installs.pri | 14 ++++++ installs_win32.pri | 28 ++++++++++++ lib.pri | 4 ++ libs/DbCoreLib | 1 + libs/DbGuiLib | 1 + libs/libs.pro | 7 +++ libs/unittests/TstFixedSizeMatrix | 1 + libs/unittests/unittests.pro | 3 ++ project.pri | 76 +++++++++++++++++++++++++++++++ 27 files changed, 234 insertions(+) create mode 100644 .gitmodules create mode 100644 3rdparty/3rdparty.pro create mode 160000 3rdparty/Quazip create mode 160000 DbDatabaseTree create mode 160000 DbHashCracker create mode 160000 DbMessaging create mode 160000 DbNeuralNet create mode 160000 DbPathFinder create mode 160000 DbPicSync create mode 160000 DbRadioDumper create mode 160000 DbSerialServer create mode 160000 DbSketch create mode 100644 DbSoftware.pro create mode 160000 DbTernaryClock create mode 160000 DbTictactoe create mode 160000 DbWebserver create mode 160000 DbZeiterfassung create mode 100644 app.pri create mode 100644 installs.pri create mode 100644 installs_win32.pri create mode 100644 lib.pri create mode 160000 libs/DbCoreLib create mode 160000 libs/DbGuiLib create mode 100644 libs/libs.pro create mode 160000 libs/unittests/TstFixedSizeMatrix create mode 100644 libs/unittests/unittests.pro create mode 100644 project.pri diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..c33b944 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,51 @@ +[submodule "3rdparty/Quazip"] + path = 3rdparty/Quazip + url = https://github.com/0xFEEDC0DE64/Quazip.git +[submodule "libs/DbCoreLib"] + path = libs/DbCoreLib + url = https://github.com/0xFEEDC0DE64/DbCoreLib.git +[submodule "libs/DbGuiLib"] + path = libs/DbGuiLib + url = https://github.com/0xFEEDC0DE64/DbGuiLib.git +[submodule "libs/unittests/TstFixedSizeMatrix"] + path = libs/unittests/TstFixedSizeMatrix + url = https://github.com/0xFEEDC0DE64/TstFixedSizeMatrix.git +[submodule "DbDatabaseTree"] + path = DbDatabaseTree + url = https://github.com/0xFEEDC0DE64/DbDatabaseTree.git +[submodule "DbHashCracker"] + path = DbHashCracker + url = https://github.com/0xFEEDC0DE64/DbHashCracker.git +[submodule "DbMessaging"] + path = DbMessaging + url = https://github.com/0xFEEDC0DE64/DbMessaging.git +[submodule "DbNeuralNet"] + path = DbNeuralNet + url = https://github.com/0xFEEDC0DE64/DbNeuralNet.git +[submodule "DbPathFinder"] + path = DbPathFinder + url = https://github.com/0xFEEDC0DE64/DbPathFinder.git +[submodule "DbPicSync"] + path = DbPicSync + url = https://github.com/0xFEEDC0DE64/DbPicSync.git +[submodule "DbRadioDumper"] + path = DbRadioDumper + url = https://github.com/0xFEEDC0DE64/DbRadioDumper.git +[submodule "DbSerialServer"] + path = DbSerialServer + url = https://github.com/0xFEEDC0DE64/DbSerialServer.git +[submodule "DbSketch"] + path = DbSketch + url = https://github.com/0xFEEDC0DE64/DbSketch.git +[submodule "DbTernaryClock"] + path = DbTernaryClock + url = https://github.com/0xFEEDC0DE64/DbTernaryClock.git +[submodule "DbTictactoe"] + path = DbTictactoe + url = https://github.com/0xFEEDC0DE64/DbTictactoe.git +[submodule "DbWebserver"] + path = DbWebserver + url = https://github.com/0xFEEDC0DE64/DbWebserver.git +[submodule "DbZeiterfassung"] + path = DbZeiterfassung + url = https://github.com/0xFEEDC0DE64/DbZeiterfassung.git diff --git a/3rdparty/3rdparty.pro b/3rdparty/3rdparty.pro new file mode 100644 index 0000000..327ceb2 --- /dev/null +++ b/3rdparty/3rdparty.pro @@ -0,0 +1,3 @@ +TEMPLATE = subdirs + +SUBDIRS += Quazip diff --git a/3rdparty/Quazip b/3rdparty/Quazip new file mode 160000 index 0000000..6277b9f --- /dev/null +++ b/3rdparty/Quazip @@ -0,0 +1 @@ +Subproject commit 6277b9f46fab14f30b247868174a688a5e81218a diff --git a/DbDatabaseTree b/DbDatabaseTree new file mode 160000 index 0000000..bce4810 --- /dev/null +++ b/DbDatabaseTree @@ -0,0 +1 @@ +Subproject commit bce481084ce137e8f3dd43785c42203051706209 diff --git a/DbHashCracker b/DbHashCracker new file mode 160000 index 0000000..14d9b15 --- /dev/null +++ b/DbHashCracker @@ -0,0 +1 @@ +Subproject commit 14d9b15a2f8a6ac8b35f1a32b370cfd7a42e91f4 diff --git a/DbMessaging b/DbMessaging new file mode 160000 index 0000000..a62aa7e --- /dev/null +++ b/DbMessaging @@ -0,0 +1 @@ +Subproject commit a62aa7ec5aa90088c30c5c1b89c4d9af7abeebf0 diff --git a/DbNeuralNet b/DbNeuralNet new file mode 160000 index 0000000..d628773 --- /dev/null +++ b/DbNeuralNet @@ -0,0 +1 @@ +Subproject commit d628773720e03b5927cff5bab4549215edc48226 diff --git a/DbPathFinder b/DbPathFinder new file mode 160000 index 0000000..40c7226 --- /dev/null +++ b/DbPathFinder @@ -0,0 +1 @@ +Subproject commit 40c7226c14d1195e3c6864701944816e90cb7663 diff --git a/DbPicSync b/DbPicSync new file mode 160000 index 0000000..2a52477 --- /dev/null +++ b/DbPicSync @@ -0,0 +1 @@ +Subproject commit 2a5247743679d2eb1799bfa813a9d714e6de4296 diff --git a/DbRadioDumper b/DbRadioDumper new file mode 160000 index 0000000..743408e --- /dev/null +++ b/DbRadioDumper @@ -0,0 +1 @@ +Subproject commit 743408e767db4df521d3f50d73bce5613e4d9831 diff --git a/DbSerialServer b/DbSerialServer new file mode 160000 index 0000000..fe4c3c5 --- /dev/null +++ b/DbSerialServer @@ -0,0 +1 @@ +Subproject commit fe4c3c52fb4128d29e780dd2b08b176bb299c102 diff --git a/DbSketch b/DbSketch new file mode 160000 index 0000000..8ff2754 --- /dev/null +++ b/DbSketch @@ -0,0 +1 @@ +Subproject commit 8ff2754dd300c34b2f06dca484edc27d2ca565a1 diff --git a/DbSoftware.pro b/DbSoftware.pro new file mode 100644 index 0000000..5b65df5 --- /dev/null +++ b/DbSoftware.pro @@ -0,0 +1,27 @@ +TEMPLATE = subdirs + +SUBDIRS += 3rdparty \ + DbDatabaseTree \ + DbHashCracker \ + DbMessaging \ + DbNeuralNet \ + DbPathFinder \ + DbPicSync \ + DbRadioDumper \ + DbSerialServer \ + DbSketch \ + DbTernaryClock \ + DbTictactoe \ + DbWebserver \ + DbZeiterfassung \ + libs + +OTHER_FILES += app.pri \ + lib.pri \ + project.pri + +DbTernaryClock.depends += libs +DbZeiterfassung.depends += DbSketch libs + +include(installs.pri) +win32: include(installs_win32.pri) diff --git a/DbTernaryClock b/DbTernaryClock new file mode 160000 index 0000000..4ca57e5 --- /dev/null +++ b/DbTernaryClock @@ -0,0 +1 @@ +Subproject commit 4ca57e59d253233c84dd6edf510307777f392aac diff --git a/DbTictactoe b/DbTictactoe new file mode 160000 index 0000000..b8a0011 --- /dev/null +++ b/DbTictactoe @@ -0,0 +1 @@ +Subproject commit b8a00116957c98e12fbe1e3a2f2793d94d648ff4 diff --git a/DbWebserver b/DbWebserver new file mode 160000 index 0000000..3426433 --- /dev/null +++ b/DbWebserver @@ -0,0 +1 @@ +Subproject commit 3426433a22b4e7f3bce3acea9075e8796f8131c7 diff --git a/DbZeiterfassung b/DbZeiterfassung new file mode 160000 index 0000000..3081d7d --- /dev/null +++ b/DbZeiterfassung @@ -0,0 +1 @@ +Subproject commit 3081d7de2dd639665fbdea602c6138ab18b63d35 diff --git a/app.pri b/app.pri new file mode 100644 index 0000000..a94c83d --- /dev/null +++ b/app.pri @@ -0,0 +1,4 @@ +TEMPLATE = app +CONFIG -= app_bundle +DESTDIR = $${OUT_PWD}/$${PROJECT_ROOT}/bin +include(project.pri) diff --git a/installs.pri b/installs.pri new file mode 100644 index 0000000..df38b05 --- /dev/null +++ b/installs.pri @@ -0,0 +1,14 @@ +qtTranslationsInstall.path = $${OUT_PWD}/bin/translations +qtTranslationsInstall.files = $$[QT_INSTALL_TRANSLATIONS]/qt_en.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtbase_en.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtmultimedia_en.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtquick1_en.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtscript_en.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtxmlpatterns_en.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qt_de.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtbase_de.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtmultimedia_de.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtquick1_de.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtscript_de.qm \ + $$[QT_INSTALL_TRANSLATIONS]/qtxmlpatterns_de.qm +INSTALLS += qtTranslationsInstall diff --git a/installs_win32.pri b/installs_win32.pri new file mode 100644 index 0000000..da5ead8 --- /dev/null +++ b/installs_win32.pri @@ -0,0 +1,28 @@ +CONFIG(debug, release|debug): DEBUG_SIGN = d + +qtLibsInstall.path = $${OUT_PWD}/bin +qtLibsInstall.files = win32/Qt.conf \ + $$[QT_INSTALL_BINS]/Qt5Core$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_BINS]/Qt5Gui$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_BINS]/Qt5Network$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_BINS]/Qt5Widgets$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_BINS]/libgcc_s_dw2-1.dll \ + $$[QT_INSTALL_BINS]/libstdc++-6.dll \ + $$[QT_INSTALL_BINS]/libwinpthread-1.dll +INSTALLS += qtLibsInstall + +qtImageFormatsInstall.path = $${OUT_PWD}/bin/plugins/imageformats +qtImageFormatsInstall.files = $$[QT_INSTALL_PLUGINS]/imageformats/qgif$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qicns$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qico$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qjpeg$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qsvg$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qtga$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qtiff$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qwbmp$${DEBUG_SIGN}.dll \ + $$[QT_INSTALL_PLUGINS]/imageformats/qwebp$${DEBUG_SIGN}.dll +INSTALLS += qtImageFormatsInstall + +qtPlatformsInstall.path = $${OUT_PWD}/bin/plugins/platforms +qtPlatformsInstall.files = $$[QT_INSTALL_PLUGINS]/platforms/qwindows$${DEBUG_SIGN}.dll +INSTALLS += qtPlatformsInstall diff --git a/lib.pri b/lib.pri new file mode 100644 index 0000000..a869ed1 --- /dev/null +++ b/lib.pri @@ -0,0 +1,4 @@ +TEMPLATE = lib +win32: DESTDIR = $${OUT_PWD}/$${PROJECT_ROOT}/bin +else: DESTDIR = $${OUT_PWD}/$${PROJECT_ROOT}/lib +include(project.pri) diff --git a/libs/DbCoreLib b/libs/DbCoreLib new file mode 160000 index 0000000..56ce99e --- /dev/null +++ b/libs/DbCoreLib @@ -0,0 +1 @@ +Subproject commit 56ce99e0e942d8fcb6b59fd521a475cf4b9011e5 diff --git a/libs/DbGuiLib b/libs/DbGuiLib new file mode 160000 index 0000000..8f87272 --- /dev/null +++ b/libs/DbGuiLib @@ -0,0 +1 @@ +Subproject commit 8f872727211bb67babe61c0518821f954ffc1edb diff --git a/libs/libs.pro b/libs/libs.pro new file mode 100644 index 0000000..21793a5 --- /dev/null +++ b/libs/libs.pro @@ -0,0 +1,7 @@ +TEMPLATE = subdirs + +SUBDIRS += DbCoreLib \ + DbGuiLib \ + unittests + +unittests.depends += DbCoreLib diff --git a/libs/unittests/TstFixedSizeMatrix b/libs/unittests/TstFixedSizeMatrix new file mode 160000 index 0000000..7b37b24 --- /dev/null +++ b/libs/unittests/TstFixedSizeMatrix @@ -0,0 +1 @@ +Subproject commit 7b37b247b14e66a684ff03508c1bc5a2a738cca8 diff --git a/libs/unittests/unittests.pro b/libs/unittests/unittests.pro new file mode 100644 index 0000000..720a88d --- /dev/null +++ b/libs/unittests/unittests.pro @@ -0,0 +1,3 @@ +TEMPLATE = subdirs + +SUBDIRS += TstFixedSizeMatrix diff --git a/project.pri b/project.pri new file mode 100644 index 0000000..3aec67b --- /dev/null +++ b/project.pri @@ -0,0 +1,76 @@ +CONFIG += qt warn_on depend_includepath c++14 + +QMAKE_TARGET_PRODUCT = "DbSoftware" +QMAKE_TARGET_DESCRIPTION = "$$TARGET" +QMAKE_TARGET_COMPANY = "brunner.ninja" +QMAKE_TARGET_COPYRIGHT = "Copyright (C) by feedc0de" + +DEFINES += QT_DEPRECATED_WARNINGS \ + QT_DISABLE_DEPRECATED_BEFORE=0x060000 \ + QT_MESSAGELOGCONTEXT + +!isEmpty(DBLIBS) { + win32: LIBS += -L$${OUT_PWD}/$${PROJECT_ROOT}/bin + else: LIBS += -Wl,-rpath=\\\$$ORIGIN/../lib -L$${OUT_PWD}/$${PROJECT_ROOT}/lib +} + +for(DBLIB, DBLIBS) { + equals(DBLIB, "dbcore") { + LIBS += -ldbcore + + INCLUDEPATH += $$PWD/libs/DbCoreLib + DEPENDPATH += $$PWD/libs/DbCoreLib + } else: equals(DBLIB, "dbgui") { + LIBS += -ldbgui + + INCLUDEPATH += $$PWD/libs/DbGuiLib + DEPENDPATH += $$PWD/libs/DbGuiLib + } else: equals(DBLIB, "messaginglib") { + LIBS += -lmessaginglib + + INCLUDEPATH += $$PWD/DbMessaging/messaginglib + DEPENDPATH += $$PWD/DbMessaging/messaginglib + } else: equals(DBLIB, "neuralnetlib") { + LIBS += -lneuralnetlib + + INCLUDEPATH += $$PWD/DbNeuralNet/neuralnetlib + DEPENDPATH += $$PWD/DbNeuralNet/neuralnetlib + } else: equals(DBLIB, "sketchlib") { + LIBS += -lsketchlib + + INCLUDEPATH += $$PWD/DbSketch/sketchlib + DEPENDPATH += $$PWD/DbSketch/sketchlib + } else: equals(DBLIB, "webserverlib") { + LIBS += -lwebserverlib + + INCLUDEPATH += $$PWD/DbWebserver/webserverlib + DEPENDPATH += $$PWD/DbWebserver/webserverlib + } else: equals(DBLIB, "zeiterfassungcore") { + LIBS += -lzeiterfassungcore + + INCLUDEPATH += $$PWD/DbZeiterfassung/zeiterfassungcorelib + DEPENDPATH += $$PWD/DbZeiterfassung/zeiterfassungcorelib + } else: equals(DBLIB, "zeiterfassunggui") { + LIBS += -lzeiterfassunggui + + INCLUDEPATH += $$PWD/DbZeiterfassung/zeiterfassungguilib + DEPENDPATH += $$PWD/DbZeiterfassung/zeiterfassungguilib + } else: equals(DBLIB, "quazip") { + LIBS += -lquazip + + INCLUDEPATH += $$PWD/3rdparty/Quazip + DEPENDPATH += $$PWD/3rdparty/Quazip + } else: message("ERROR: Unknown dblib $$DBLIB") +} + +isEmpty(QMAKE_LRELEASE) { + win32:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]\lrelease.exe + else:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease +} + +lrelease.input = TRANSLATIONS +lrelease.output = $${OUT_PWD}/$${PROJECT_ROOT}/bin/translations/${QMAKE_FILE_BASE}.qm +lrelease.commands = $${QMAKE_LRELEASE} ${QMAKE_FILE_IN} -qm ${QMAKE_FILE_OUT} +lrelease.CONFIG += no_link +QMAKE_EXTRA_COMPILERS += lrelease +PRE_TARGETDEPS += compiler_lrelease_make_all