Allow backend libraries to be used from other projects

So far the backend libraries' include paths were relative within this
repository. This means the header files could not be used at their
installed location.

This change replaces them with "<>" includes to fix that problem and adds
a new include directory so building everything at once still works.

With this change it should be easier to actually split some parts into
another repository if this one would become too big.
This commit is contained in:
Martchus 2021-01-25 19:48:11 +01:00
parent b350aaf879
commit 975e86c895
52 changed files with 144 additions and 138 deletions

View File

@ -26,6 +26,9 @@ else()
set(PLASMOID_DISABLED_BY_DEFAULT OFF)
endif()
# set the include directory used when building so the headers of the different backend libraries can be found at build time
set(TARGET_INCLUDE_DIRECTORY_BUILD_INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/include")
# add options for partial build
option(NO_LIBSYNCTHING "whether building Syncthing itself as a library should be skipped" ON)
option(NO_CLI "whether building CLI should be skipped" OFF)

View File

@ -4,8 +4,8 @@
#include "./jsdefs.h"
#include "./jsincludes.h"
#include "../connector/syncthingconfig.h"
#include "../connector/utils.h"
#include <syncthingconnector/syncthingconfig.h>
#include <syncthingconnector/utils.h>
// use header-only functions waitForSignals() and signalInfo() from test utilities; disable assertions via macro
#define SYNCTHINGTESTHELPER_FOR_CLI

View File

@ -3,8 +3,8 @@
#include "./args.h"
#include "../connector/syncthingconnection.h"
#include "../connector/syncthingconnectionsettings.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingconnectionsettings.h>
#include <QObject>

View File

@ -1,10 +1,10 @@
#include "./syncthingdiractions.h"
#include "./syncthingfileitemactionstaticdata.h"
#include "../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include "../connector/syncthingdir.h"
#include "../connector/utils.h"
#include <syncthingconnector/syncthingdir.h>
#include <syncthingconnector/utils.h>
using namespace Data;

View File

@ -1,7 +1,7 @@
#ifndef SYNCTHINGDIRACTIONS_H
#define SYNCTHINGDIRACTIONS_H
#include "../connector/syncthingdir.h"
#include <syncthingconnector/syncthingdir.h>
#include "./syncthinginfoaction.h"

View File

@ -3,7 +3,7 @@
#include "./syncthinginfoaction.h"
#include "./syncthingmenuaction.h"
#include "../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include <KFileItem>
#include <KPluginFactory>

View File

@ -1,10 +1,10 @@
#include "./syncthingfileitemactionstaticdata.h"
#include "../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include "../connector/syncthingconfig.h"
#include "../connector/syncthingconnection.h"
#include "../connector/syncthingconnectionsettings.h"
#include <syncthingconnector/syncthingconfig.h>
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingconnectionsettings.h>
#include <c++utilities/application/argumentparser.h>
#include <c++utilities/io/ansiescapecodes.h>

View File

@ -1,7 +1,7 @@
#ifndef SYNCTHINGFILEITEMACTIONSTATICDATA_H
#define SYNCTHINGFILEITEMACTIONSTATICDATA_H
#include "../connector/syncthingconnection.h"
#include <syncthingconnector/syncthingconnection.h>
/*!
* \brief The SyncthingFileItemActionStaticData class holds objects required during the whole application's live time.

View File

@ -1,9 +1,9 @@
#include "./syncthingmenuaction.h"
#include "./syncthingfileitemaction.h"
#include "../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include "../connector/syncthingconnection.h"
#include <syncthingconnector/syncthingconnection.h>
#ifdef CPP_UTILITIES_DEBUG_BUILD
#include <c++utilities/io/ansiescapecodes.h>

View File

@ -1,7 +1,7 @@
#ifndef SYNCTHINGMENUACTION_H
#define SYNCTHINGMENUACTION_H
#include "../connector/syncthingnotifier.h"
#include <syncthingconnector/syncthingnotifier.h>
#include <KFileItemListProperties>

1
include/syncthingconnector Symbolic link
View File

@ -0,0 +1 @@
../connector

1
include/syncthingmodel Symbolic link
View File

@ -0,0 +1 @@
../model

1
include/syncthingwidgets Symbolic link
View File

@ -0,0 +1 @@
../widgets

View File

@ -2,8 +2,8 @@
#include "./colors.h"
#include "./syncthingicons.h"
#include "../connector/syncthingconnection.h"
#include "../connector/utils.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/utils.h>
#include <c++utilities/conversion/stringconversion.h>

View File

@ -2,8 +2,8 @@
#include "./colors.h"
#include "./syncthingicons.h"
#include "../connector/syncthingconnection.h"
#include "../connector/utils.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/utils.h>
#include <c++utilities/conversion/stringconversion.h>

View File

@ -1,7 +1,7 @@
#include "./syncthingdownloadmodel.h"
#include "../connector/syncthingconnection.h"
#include "../connector/utils.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/utils.h>
#include <QStringBuilder>

View File

@ -1,7 +1,7 @@
#include "./syncthingmodel.h"
#include "./syncthingicons.h"
#include "../connector/syncthingconnection.h"
#include <syncthingconnector/syncthingconnection.h>
namespace Data {

View File

@ -2,8 +2,8 @@
#include "./colors.h"
#include "./syncthingicons.h"
#include "../connector/syncthingconnection.h"
#include "../connector/utils.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/utils.h>
#include <c++utilities/conversion/stringconversion.h>

View File

@ -3,8 +3,8 @@
#include "./syncthingmodel.h"
#include "../connector/syncthingconnectionstatus.h"
#include "../connector/syncthingdir.h"
#include <syncthingconnector/syncthingconnectionstatus.h>
#include <syncthingconnector/syncthingdir.h>
#include <deque>

View File

@ -1,6 +1,6 @@
#include "./syncthingstatuscomputionmodel.h"
#include "../connector/syncthingconnectionsettings.h"
#include <syncthingconnector/syncthingconnectionsettings.h>
#include <type_traits>

View File

@ -1,6 +1,6 @@
#include "./syncthingstatusselectionmodel.h"
#include "../connector/syncthingconnection.h"
#include <syncthingconnector/syncthingconnection.h>
using namespace QtUtilities;

View File

@ -3,7 +3,7 @@
#include "ui_appearanceoptionpage.h"
#include "../../widgets/settings/settingsdialog.h"
#include <syncthingwidgets/settings/settingsdialog.h>
#include <qtutilities/settingsdialog/optioncategory.h>
#include <qtutilities/settingsdialog/optioncategorymodel.h>

View File

@ -1,9 +1,9 @@
#ifndef SETTINGSDIALOG_H
#define SETTINGSDIALOG_H
#include "../../model/syncthingstatusselectionmodel.h"
#include <syncthingmodel/syncthingstatusselectionmodel.h>
#include "../../widgets/settings/settingsdialog.h"
#include <syncthingwidgets/settings/settingsdialog.h>
#include <qtutilities/settingsdialog/optionpage.h>

View File

@ -1,20 +1,20 @@
#include "./syncthingapplet.h"
#include "./settingsdialog.h"
#include "../../connector/syncthingservice.h"
#include "../../connector/utils.h"
#include <syncthingconnector/syncthingservice.h>
#include <syncthingconnector/utils.h>
#include "../../widgets/misc/direrrorsdialog.h"
#include "../../widgets/misc/internalerrorsdialog.h"
#include "../../widgets/misc/otherdialogs.h"
#include "../../widgets/misc/textviewdialog.h"
#include "../../widgets/settings/settings.h"
#include "../../widgets/settings/settingsdialog.h"
#include "../../widgets/webview/webviewdialog.h"
#include <syncthingwidgets/misc/direrrorsdialog.h>
#include <syncthingwidgets/misc/internalerrorsdialog.h>
#include <syncthingwidgets/misc/otherdialogs.h>
#include <syncthingwidgets/misc/textviewdialog.h>
#include <syncthingwidgets/settings/settings.h>
#include <syncthingwidgets/settings/settingsdialog.h>
#include <syncthingwidgets/webview/webviewdialog.h>
#include "../../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include "../../connector/utils.h"
#include <syncthingconnector/utils.h>
#include "resources/config.h"
#include "resources/qtconfig.h"

View File

@ -1,20 +1,20 @@
#ifndef SYNCTHINGAPPLET_H
#define SYNCTHINGAPPLET_H
#include "../../widgets/misc/dbusstatusnotifier.h"
#include "../../widgets/misc/statusinfo.h"
#include "../../widgets/webview/webviewdefs.h"
#include <syncthingwidgets/misc/dbusstatusnotifier.h>
#include <syncthingwidgets/misc/statusinfo.h>
#include <syncthingwidgets/webview/webviewdefs.h>
#include "../../model/syncthingdevicemodel.h"
#include "../../model/syncthingdirectorymodel.h"
#include "../../model/syncthingdownloadmodel.h"
#include "../../model/syncthingrecentchangesmodel.h"
#include "../../model/syncthingsortfiltermodel.h"
#include "../../model/syncthingstatusselectionmodel.h"
#include <syncthingmodel/syncthingdevicemodel.h>
#include <syncthingmodel/syncthingdirectorymodel.h>
#include <syncthingmodel/syncthingdownloadmodel.h>
#include <syncthingmodel/syncthingrecentchangesmodel.h>
#include <syncthingmodel/syncthingsortfiltermodel.h>
#include <syncthingmodel/syncthingstatusselectionmodel.h>
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingnotifier.h"
#include "../../connector/syncthingservice.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingnotifier.h>
#include <syncthingconnector/syncthingservice.h>
#include <qtutilities/aboutdialog/aboutdialog.h>
#include <qtutilities/models/checklistmodel.h>

View File

@ -4,7 +4,7 @@
#include "./global.h"
#include "./helper.h"
#include "../connector/syncthingprocess.h"
#include <syncthingconnector/syncthingprocess.h>
#include <QCoreApplication>
#include <QProcess>

View File

@ -3,12 +3,12 @@
#include "../gui/trayicon.h"
#include "../gui/traywidget.h"
#include "../../widgets/misc/syncthinglauncher.h"
#include "../../widgets/settings/settings.h"
#include <syncthingwidgets/misc/syncthinglauncher.h>
#include <syncthingwidgets/settings/settings.h>
#include "../../connector/syncthingprocess.h"
#include <syncthingconnector/syncthingprocess.h>
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
#include "../../connector/syncthingservice.h"
#include <syncthingconnector/syncthingservice.h>
#endif
#include "resources/config.h"

View File

@ -1,7 +1,7 @@
#include "./devbuttonsitemdelegate.h"
#include "../../connector/syncthingconnection.h"
#include "../../model/syncthingdevicemodel.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingmodel/syncthingdevicemodel.h>
#include <QApplication>
#include <QBrush>

View File

@ -2,9 +2,9 @@
#include "./devbuttonsitemdelegate.h"
#include "./helper.h"
#include "../../connector/syncthingdev.h"
#include "../../model/syncthingdevicemodel.h"
#include "../../model/syncthingsortfiltermodel.h"
#include <syncthingconnector/syncthingdev.h>
#include <syncthingmodel/syncthingdevicemodel.h>
#include <syncthingmodel/syncthingsortfiltermodel.h>
#include <QClipboard>
#include <QGuiApplication>

View File

@ -1,6 +1,6 @@
#include "./dirbuttonsitemdelegate.h"
#include "../model/syncthingdirectorymodel.h"
#include <syncthingmodel/syncthingdirectorymodel.h>
#include <QApplication>
#include <QBrush>

View File

@ -2,10 +2,10 @@
#include "./dirbuttonsitemdelegate.h"
#include "./helper.h"
#include "../../connector/syncthingconnection.h"
#include "../../model/syncthingdirectorymodel.h"
#include "../../model/syncthingsortfiltermodel.h"
#include "../../widgets/misc/direrrorsdialog.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingmodel/syncthingdirectorymodel.h>
#include <syncthingmodel/syncthingsortfiltermodel.h>
#include <syncthingwidgets/misc/direrrorsdialog.h>
#include <QClipboard>
#include <QGuiApplication>

View File

@ -1,6 +1,6 @@
#include "./downloaditemdelegate.h"
#include "../../model/syncthingdownloadmodel.h"
#include <syncthingmodel/syncthingdownloadmodel.h>
#include <QApplication>
#include <QBrush>

View File

@ -2,8 +2,8 @@
#include "./downloaditemdelegate.h"
#include "./helper.h"
#include "../../connector/syncthingdir.h"
#include "../../model/syncthingdownloadmodel.h"
#include <syncthingconnector/syncthingdir.h>
#include <syncthingmodel/syncthingdownloadmodel.h>
#include <QClipboard>
#include <QGuiApplication>

View File

@ -1,18 +1,18 @@
#include "./trayicon.h"
#include "./traywidget.h"
#include "../../widgets/misc/internalerrorsdialog.h"
#include "../../widgets/misc/statusinfo.h"
#include "../../widgets/misc/textviewdialog.h"
#include "../../widgets/settings/settings.h"
#include <syncthingwidgets/misc/internalerrorsdialog.h>
#include <syncthingwidgets/misc/statusinfo.h>
#include <syncthingwidgets/misc/textviewdialog.h>
#include <syncthingwidgets/settings/settings.h>
#include "../../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include "../../connector/syncthingconnection.h"
#include <syncthingconnector/syncthingconnection.h>
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
#include "../../connector/syncthingservice.h"
#include <syncthingconnector/syncthingservice.h>
#endif
#include "../../connector/utils.h"
#include <syncthingconnector/utils.h>
#include <qtutilities/misc/dialogutils.h>

View File

@ -3,7 +3,7 @@
#include "./traymenu.h"
#include "../../widgets/misc/dbusstatusnotifier.h"
#include <syncthingwidgets/misc/dbusstatusnotifier.h>
#include <c++utilities/chrono/datetime.h>

View File

@ -2,7 +2,7 @@
#include "./trayicon.h"
#include "./traywidget.h"
#include "../../widgets/settings/settings.h"
#include <syncthingwidgets/settings/settings.h>
#include <qtutilities/misc/dialogutils.h>

View File

@ -3,22 +3,22 @@
#include "./trayicon.h"
#include "./traymenu.h"
#include "../../widgets/misc/otherdialogs.h"
#include "../../widgets/misc/syncthinglauncher.h"
#include "../../widgets/misc/textviewdialog.h"
#include "../../widgets/settings/settingsdialog.h"
#include "../../widgets/webview/webviewdialog.h"
#include <syncthingwidgets/misc/otherdialogs.h>
#include <syncthingwidgets/misc/syncthinglauncher.h>
#include <syncthingwidgets/misc/textviewdialog.h>
#include <syncthingwidgets/settings/settingsdialog.h>
#include <syncthingwidgets/webview/webviewdialog.h>
#ifdef SYNCTHINGTRAY_UNIFY_TRAY_MENUS
#include "../../widgets/misc/internalerrorsdialog.h"
#include <syncthingwidgets/misc/internalerrorsdialog.h>
#endif
#include "../../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
#include "../../connector/syncthingservice.h"
#include <syncthingconnector/syncthingservice.h>
#endif
#include "../../connector/utils.h"
#include <syncthingconnector/utils.h>
// use meta-data of syncthingtray application here
#include "resources/../../tray/resources/config.h"

View File

@ -1,18 +1,18 @@
#ifndef TRAY_WIDGET_H
#define TRAY_WIDGET_H
#include "../../widgets/settings/settings.h"
#include "../../widgets/webview/webviewdefs.h"
#include <syncthingwidgets/settings/settings.h>
#include <syncthingwidgets/webview/webviewdefs.h>
#include "../../model/syncthingdevicemodel.h"
#include "../../model/syncthingdirectorymodel.h"
#include "../../model/syncthingdownloadmodel.h"
#include "../../model/syncthingrecentchangesmodel.h"
#include "../../model/syncthingsortfiltermodel.h"
#include <syncthingmodel/syncthingdevicemodel.h>
#include <syncthingmodel/syncthingdirectorymodel.h>
#include <syncthingmodel/syncthingdownloadmodel.h>
#include <syncthingmodel/syncthingrecentchangesmodel.h>
#include <syncthingmodel/syncthingsortfiltermodel.h>
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingnotifier.h"
#include "../../connector/syncthingprocess.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingnotifier.h>
#include <syncthingconnector/syncthingprocess.h>
#include <QWidget>

View File

@ -1,7 +1,7 @@
#ifdef QT_UTILITIES_SUPPORT_DBUS_NOTIFICATIONS
#include "./dbusstatusnotifier.h"
#include "../../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
// use meta-data of syncthingtray application here
#include "resources/../../tray/resources/config.h"

View File

@ -1,8 +1,8 @@
#include "./direrrorsdialog.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingdir.h"
#include "../../connector/utils.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingdir.h>
#include <syncthingconnector/utils.h>
#include <QDir>
#include <QHBoxLayout>

View File

@ -3,8 +3,8 @@
#include "../settings/settings.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingservice.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingservice.h>
#include <QNetworkReply>

View File

@ -1,7 +1,7 @@
#include "./otherdialogs.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingdir.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingdir.h>
// use meta-data of syncthingtray application here
#include "resources/../../tray/resources/config.h"

View File

@ -1,9 +1,9 @@
#include "./statusinfo.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingdev.h"
#include "../../connector/utils.h"
#include "../../model/syncthingicons.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingdev.h>
#include <syncthingconnector/utils.h>
#include <syncthingmodel/syncthingicons.h>
#include <QCoreApplication>
#include <QIcon>

View File

@ -1,6 +1,6 @@
#include "./syncthingkiller.h"
#include "../../connector/syncthingprocess.h"
#include <syncthingconnector/syncthingprocess.h>
#define SYNCTHINGTESTHELPER_FOR_CLI
#include "../../testhelper/helper.h"

View File

@ -3,7 +3,7 @@
#include "../global.h"
#include "../../connector/syncthingprocess.h"
#include <syncthingconnector/syncthingprocess.h>
#include "../../libsyncthing/interface.h"
#include <QByteArray>

View File

@ -1,7 +1,7 @@
#include "./textviewdialog.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingdir.h"
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingdir.h>
// use meta-data of syncthingtray application here
#include "resources/../../tray/resources/config.h"

View File

@ -3,13 +3,13 @@
#include "../misc/syncthingkiller.h"
#include "../misc/syncthinglauncher.h"
#include "../../connector/qstringhash.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingconnectionsettings.h"
#include "../../connector/syncthingnotifier.h"
#include "../../connector/syncthingprocess.h"
#include <syncthingconnector/qstringhash.h>
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingconnectionsettings.h>
#include <syncthingconnector/syncthingnotifier.h>
#include <syncthingconnector/syncthingprocess.h>
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
#include "../../connector/syncthingservice.h"
#include <syncthingconnector/syncthingservice.h>
#endif
// use meta-data of syncthingtray application here

View File

@ -1,9 +1,9 @@
#ifndef SETTINGS_H
#define SETTINGS_H
#include "../../connector/syncthingconnectionsettings.h"
#include <syncthingconnector/syncthingconnectionsettings.h>
#include "../../libsyncthing/interface.h"
#include "../../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include "../global.h"
#include <qtutilities/settingsdialog/qtsettings.h>

View File

@ -2,15 +2,15 @@
#include "../misc/syncthinglauncher.h"
#include "../../connector/syncthingconfig.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingprocess.h"
#include "../../connector/utils.h"
#include "../../model/syncthingstatuscomputionmodel.h"
#include <syncthingconnector/syncthingconfig.h>
#include <syncthingconnector/syncthingconnection.h>
#include <syncthingconnector/syncthingprocess.h>
#include <syncthingconnector/utils.h>
#include <syncthingmodel/syncthingstatuscomputionmodel.h>
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
#include "../../connector/syncthingservice.h"
#include "../../model/colors.h"
#include "../../model/syncthingicons.h"
#include <syncthingconnector/syncthingservice.h>
#include <syncthingmodel/colors.h>
#include <syncthingmodel/syncthingicons.h>
#endif
#include "ui_appearanceoptionpage.h"

View File

@ -5,7 +5,7 @@
#include "../webview/webviewdefs.h"
#include "../../model/syncthingicons.h"
#include <syncthingmodel/syncthingicons.h>
#include <qtutilities/settingsdialog/optionpage.h>
#include <qtutilities/settingsdialog/qtsettings.h>

View File

@ -4,7 +4,7 @@
#include "../settings/settings.h"
#include "../../connector/syncthingconnection.h"
#include <syncthingconnector/syncthingconnection.h>
#include "resources/config.h"

View File

@ -1,7 +1,7 @@
#ifdef SYNCTHINGWIDGETS_USE_WEBENGINE
#include "./webviewinterceptor.h"
#include "../../connector/syncthingconnectionsettings.h"
#include <syncthingconnector/syncthingconnectionsettings.h>
#include <QWebEngineProfile>
#include <QWebEngineUrlRequestInterceptor>