syncthingtray/model/CMakeLists.txt

62 lines
1.6 KiB
CMake

cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
# metadata
set(META_PROJECT_NAME syncthingmodel)
set(META_PROJECT_TYPE library)
set(META_APP_NAME "Data models of Syncthing Tray")
set(META_APP_DESCRIPTION "Data models of Syncthing Tray")
set(META_PROJECT_VARNAME_UPPER LIB_SYNCTHING_MODEL)
set(META_PUBLIC_QT_MODULES Gui Widgets)
set(META_PUBLIC_SHARED_LIB_DEPENDS syncthingconnector)
set(META_PUBLIC_STATIC_LIB_DEPENDS syncthingconnector_static)
# add project files
set(HEADER_FILES
syncthingmodel.h
syncthingdirectorymodel.h
syncthingdevicemodel.h
syncthingdownloadmodel.h
syncthingstatusselectionmodel.h
syncthingicons.h
colors.h
)
set(SRC_FILES
syncthingmodel.cpp
syncthingdirectorymodel.cpp
syncthingdevicemodel.cpp
syncthingdownloadmodel.cpp
syncthingstatusselectionmodel.cpp
syncthingicons.cpp
)
set(RES_FILES
resources/${META_PROJECT_NAME}icons.qrc
)
set(TS_FILES
translations/${META_PROJECT_NAME}_de_DE.ts
translations/${META_PROJECT_NAME}_en_US.ts
)
# find c++utilities
find_package(c++utilities 4.0.0 REQUIRED)
use_cpp_utilities()
# find qtutilities (only CMake modules used)
find_package(qtutilities 5.0.0 REQUIRED)
use_qt_utilities()
# find backend libraries
find_package(syncthingconnector ${META_APP_VERSION} REQUIRED)
use_syncthingconnector()
# link also explicitely against the following Qt 5 modules
list(APPEND ADDITIONAL_QT_MODULES Network Gui Widgets Svg)
# include modules to apply configuration
include(BasicConfig)
include(QtConfig)
include(WindowsResources)
include(LibraryTarget)
include(Doxygen)
include(ConfigHeader)