Warning, /office/kbibtex/src/program/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-License-Identifier: GPL-2.0-or-later
0002 # SPDX-FileCopyrightText: 2009-2022 Thomas Fischer <fischer@unix-ag.uni-kl.de>
0003 # SPDX-FileContributor: 2017 Pino Toscano <pino@kde.org>
0004 
0005 set(
0006     kbibtexprogram_SRCS
0007     program.cpp
0008     mainwindow.cpp
0009     documentlist.cpp
0010     mdiwidget.cpp
0011     docklets/statistics.cpp
0012     docklets/referencepreview.cpp
0013     docklets/documentpreview.cpp
0014     docklets/valuelist.cpp
0015     docklets/searchform.cpp
0016     docklets/searchresults.cpp
0017     docklets/elementform.cpp
0018     docklets/filesettings.cpp
0019     docklets/zoterobrowser.cpp
0020     openfileinfo.cpp
0021 
0022     program.qrc
0023 )
0024 
0025 set(
0026     kbibtexcliprogram_SRCS
0027     commandline.cpp
0028 )
0029 
0030 ecm_qt_declare_logging_category(kbibtexprogram_SRCS
0031     HEADER logging_program.h
0032     IDENTIFIER LOG_KBIBTEX_PROGRAM
0033     CATEGORY_NAME kbibtex.program
0034 )
0035 
0036 if(UNITY_BUILD AND NOT WIN32) # FIXME: Unity build of programs breaks on Windows
0037     enable_unity_build(kbibtex kbibtexprogram_SRCS)
0038     enable_unity_build(kbibtex kbibtexcliprogram_SRCS)
0039 endif(UNITY_BUILD AND NOT WIN32)
0040 
0041 
0042 ecm_add_app_icon(kbibtexprogram_SRCS
0043     ICONS
0044     ${CMAKE_SOURCE_DIR}/icons/16-apps-kbibtex.png
0045     ${CMAKE_SOURCE_DIR}/icons/22-apps-kbibtex.png
0046     ${CMAKE_SOURCE_DIR}/icons/32-apps-kbibtex.png
0047     ${CMAKE_SOURCE_DIR}/icons/48-apps-kbibtex.png
0048     ${CMAKE_SOURCE_DIR}/icons/64-apps-kbibtex.png
0049     ${CMAKE_SOURCE_DIR}/icons/128-apps-kbibtex.png
0050 )
0051 
0052 if(BUILD_APP_DESKTOP)
0053     add_executable(kbibtex
0054         ${kbibtexprogram_SRCS}
0055     )
0056 
0057     add_dependencies(kbibtex
0058         generate-kbibtex-git-info
0059     )
0060 
0061     target_include_directories(kbibtex
0062         PRIVATE
0063             ${CMAKE_BINARY_DIR}
0064     )
0065 
0066     target_link_libraries(kbibtex
0067         PRIVATE
0068             Qt${QT_VERSION_MAJOR}::Core
0069             KF${QT_VERSION_MAJOR}::CoreAddons
0070             KF${QT_VERSION_MAJOR}::Crash
0071             KF${QT_VERSION_MAJOR}::I18n
0072             KF${QT_VERSION_MAJOR}::IconThemes
0073             KF${QT_VERSION_MAJOR}::KIOCore
0074             KF${QT_VERSION_MAJOR}::KIOFileWidgets
0075             KF${QT_VERSION_MAJOR}::Parts
0076             KF${QT_VERSION_MAJOR}::Wallet
0077             KF${QT_VERSION_MAJOR}::TextWidgets
0078             KBibTeX::Global
0079             KBibTeX::GUI
0080             KBibTeX::IO
0081             KBibTeX::Networking
0082             KBibTeX::Processing
0083     )
0084 
0085     if(Qt${QT_VERSION_MAJOR}WebEngineWidgets_FOUND)
0086         message(STATUS "Using QtWebEngine to render complex HTML content")
0087         target_link_libraries(kbibtex
0088             PRIVATE
0089                 Qt${QT_VERSION_MAJOR}::WebEngineWidgets
0090         )
0091     else()
0092         if(Qt${QT_VERSION_MAJOR}WebKitWidgets_FOUND)
0093             message(STATUS "Using QtWebKit to render complex HTML content")
0094             # Once CMake 3.12.x is minimum requirement, use 'add_compile_definitions'
0095             add_definitions(
0096                 -DHAVE_WEBKITWIDGETS
0097             )
0098             target_link_libraries(kbibtex
0099                 PRIVATE
0100                     Qt${QT_VERSION_MAJOR}::WebKitWidgets
0101             )
0102         else()
0103             message(STATUS "If available, using a KPart to render complex HTML content")
0104         endif()
0105     endif()
0106 
0107     install(
0108         TARGETS
0109         kbibtex
0110         ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}
0111     )
0112 
0113     install(
0114         PROGRAMS
0115         org.kde.kbibtex.desktop
0116         DESTINATION
0117         ${KDE_INSTALL_APPDIR}
0118     )
0119     install(
0120         FILES
0121         org.kde.kbibtex.appdata.xml
0122         DESTINATION
0123         ${KDE_INSTALL_METAINFODIR}
0124     )
0125 endif(BUILD_APP_DESKTOP)
0126 
0127 if(BUILD_APP_COMMAND_LINE)
0128     add_executable(kbibtex-cli
0129         ${kbibtexcliprogram_SRCS}
0130     )
0131 
0132     target_include_directories(kbibtex-cli
0133         PRIVATE
0134             ${CMAKE_BINARY_DIR}
0135     )
0136 
0137     target_link_libraries(kbibtex-cli
0138         PRIVATE
0139             Qt${QT_VERSION_MAJOR}::Core
0140             KBibTeX::Data
0141             KBibTeX::IO
0142             KBibTeX::Processing
0143     )
0144 
0145     install(
0146         TARGETS
0147         kbibtex-cli
0148         ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}
0149     )
0150 endif(BUILD_APP_COMMAND_LINE)
0151 
0152 ecm_install_icons(
0153     ICONS
0154     ${CMAKE_SOURCE_DIR}/icons/16-apps-kbibtex.png
0155     ${CMAKE_SOURCE_DIR}/icons/22-apps-kbibtex.png
0156     ${CMAKE_SOURCE_DIR}/icons/32-apps-kbibtex.png
0157     ${CMAKE_SOURCE_DIR}/icons/48-apps-kbibtex.png
0158     ${CMAKE_SOURCE_DIR}/icons/64-apps-kbibtex.png
0159     ${CMAKE_SOURCE_DIR}/icons/128-apps-kbibtex.png
0160     DESTINATION ${KDE_INSTALL_ICONDIR}
0161 )