59 lines
1.6 KiB
CMake
59 lines
1.6 KiB
CMake
cmake_minimum_required(VERSION 3.16)
|
|
project(presenter)
|
|
|
|
include(FeatureSummary)
|
|
|
|
set(QT5_MIN_VERSION 5.15)
|
|
set(KF5_MIN_VERSION 5.83)
|
|
|
|
set(CMAKE_AUTOMOC ON)
|
|
set(CMAKE_AUTORCC ON)
|
|
#set(CMAKE_C_COMPILER gcc)
|
|
#set(CMAKE_CXX_COMPILER g++)
|
|
|
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
|
|
|
find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE)
|
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
|
|
|
include(KDEInstallDirs)
|
|
include(KDECMakeSettings)
|
|
include(KDECompilerSettings NO_POLICY_SCOPE)
|
|
include(ECMSetupVersion)
|
|
include(ECMGenerateHeaders)
|
|
include(ECMPoQmTools)
|
|
|
|
kde_enable_exceptions()
|
|
|
|
find_package(Qt5 ${QT_MIN_VERSION} REQUIRED NO_MODULE COMPONENTS Core Quick Test Gui QuickControls2 Widgets Sql X11Extras)
|
|
find_package(KF5 ${KF_MIN_VERSION} REQUIRED COMPONENTS Kirigami2 I18n CoreAddons)
|
|
|
|
find_package(Libmpv)
|
|
set_package_properties(Libmpv PROPERTIES TYPE REQUIRED)
|
|
|
|
FIND_PACKAGE(LIBPODOFO)
|
|
IF(NOT LIBPODOFO_FOUND)
|
|
MESSAGE("+++PoDoFo not found... building private copy")
|
|
SET(PODOFO_BUILD_STATIC 1)
|
|
SET(PODOFO_BUILD_SHARED 0)
|
|
SET(PODOFO_BUILD_LIB_ONLY 1)
|
|
ADD_SUBDIRECTORY(externals/required_libpodofo)
|
|
SET(LIBPODOFO_H ${CMAKE_CURRENT_SOURCE_DIR}/externals/required_libpodofo)
|
|
SET(LIBPODOFO_CONFIG_H ${CMAKE_CURRENT_BINARY_DIR}/externals/required_libpodofo)
|
|
SET(LIBPODOFO_LIB podofo_static)
|
|
MESSAGE("+++Done setting up private PoDoFo copy")
|
|
ENDIF(NOT LIBPODOFO_FOUND)
|
|
|
|
|
|
INCLUDE_DIRECTORIES(
|
|
${LIBPODOFO_H}
|
|
${LIBPODOFO_CONFIG_H}
|
|
)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
add_subdirectory(src)
|
|
|
|
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
|