cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR) # metadata set(META_PROJECT_NAME syncthingtray) set(META_PROJECT_TYPE application) set(META_APP_NAME "Syncthing Tray") set(META_APP_AUTHOR "Martchus") set(META_APP_URL "https://github.com/${META_APP_AUTHOR}/${META_PROJECT_NAME}") set(META_APP_DESCRIPTION "Tray application for Syncthing") set(META_APP_CATEGORIES "Utility;Network;") set(META_GUI_OPTIONAL false) set(META_VERSION_MAJOR 0) set(META_VERSION_MINOR 0) set(META_VERSION_PATCH 1) set(META_APP_VERSION ${META_VERSION_MAJOR}.${META_VERSION_MINOR}.${META_VERSION_PATCH}) # add project files set(HEADER_FILES data/syncthingconnection.h data/syncthingdirectorymodel.h data/syncthingdevicemodel.h ) set(SRC_FILES data/syncthingconnection.cpp data/syncthingdirectorymodel.cpp data/syncthingdevicemodel.cpp ) set(WIDGETS_HEADER_FILES application/settings.h gui/tray.h gui/settingsdialog.h gui/webpage.h gui/webviewdialog.h gui/webviewprovider.h gui/dirbuttonsitemdelegate.h gui/dirview.h gui/devview.h ) set(WIDGETS_SRC_FILES application/main.cpp application/settings.cpp gui/tray.cpp gui/settingsdialog.cpp gui/webpage.cpp gui/webviewdialog.cpp gui/dirbuttonsitemdelegate.cpp gui/dirview.cpp gui/devview.cpp resources/icons.qrc ) set(WIDGETS_UI_FILES gui/traywidget.ui gui/connectionoptionpage.ui gui/notificationsoptionpage.ui gui/launcheroptionpage.ui gui/webviewoptionpage.ui ) #set(QUICK_HEADER_FILES #) #set(QUICK_SRC_FILES #) set(TS_FILES translations/${META_PROJECT_NAME}_de_DE.ts translations/${META_PROJECT_NAME}_en_US.ts ) set(ICON_FILES resources/icons/hicolor/scalable/apps/${META_PROJECT_NAME}.svg ) set(DOC_FILES README.md ) # find c++utilities find_package(c++utilities 4.0.0 REQUIRED) use_cpp_utilities() include(BasicConfig) # find qtutilities if(WIDGETS_GUI OR QUICK_GUI) find_package(qtutilities 5.0.0 REQUIRED) use_qt_utilities() endif() list(APPEND ADDITIONAL_QT_MODULES Network Svg) # include modules to apply configuration include(BasicConfig) include(QtGuiConfig) include(QtConfig) include(WindowsResources) include(WebViewProviderConfig) include(AppTarget) include(ShellCompletion) include(ConfigHeader) # create desktop file using previously defined meta data add_desktop_file()