Warning, /frameworks/prison/src/scanner/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-FileCopyrightText: 2022 Volker Krause <vkrause@kde.org>
0002 # SPDX-License-Identifier: BSD-3-Clause
0003 
0004 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-prison-scanner.h.in ${CMAKE_CURRENT_BINARY_DIR}/config-prison-scanner.h)
0005 
0006 add_library(KF6PrisonScanner)
0007 add_library(KF6::PrisonScanner ALIAS KF6PrisonScanner)
0008 
0009 qt_extract_metatypes(KF6PrisonScanner)
0010 
0011 set_target_properties(KF6PrisonScanner PROPERTIES
0012     VERSION     ${PRISON_VERSION}
0013     SOVERSION   ${PRISON_SOVERSION}
0014     EXPORT_NAME PrisonScanner
0015 )
0016 
0017 target_sources(KF6PrisonScanner PRIVATE
0018     format.cpp
0019     scanresult.cpp
0020     videoscanner.cpp
0021     videoscannerframe.cpp
0022     videoscannerworker.cpp
0023 )
0024 
0025 kde_source_files_enable_exceptions(videoscannerworker.cpp)
0026 
0027 ecm_generate_export_header(KF6PrisonScanner
0028     BASE_NAME PrisonScanner
0029     GROUP_BASE_NAME KF
0030     VERSION ${KF_VERSION}
0031     USE_VERSION_HEADER
0032     VERSION_BASE_NAME Prison
0033     DEPRECATED_BASE_VERSION 0
0034     EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0035 )
0036 
0037 target_include_directories(KF6PrisonScanner
0038     INTERFACE
0039         "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/PrisonScanner>"
0040         "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/Prison>" # module version header
0041     PUBLIC
0042         "$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}>" # module version header
0043 )
0044 target_link_libraries(KF6PrisonScanner
0045     PUBLIC
0046         Qt6::Multimedia
0047     PRIVATE
0048         Qt6::Core
0049         ZXing::ZXing
0050 )
0051 
0052 install(TARGETS KF6PrisonScanner EXPORT KF6PrisonTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0053 
0054 ecm_generate_headers(PrisonScanner_CamelCase_HEADERS
0055     HEADER_NAMES
0056         Format
0057         ScanResult
0058         VideoScanner
0059     OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/Prison
0060     REQUIRED_HEADERS PrisonScanner_HEADERS
0061 )
0062 
0063 install(
0064     FILES
0065         ${PrisonScanner_CamelCase_HEADERS}
0066         ${PrisonScanner_HEADERS}
0067         ${CMAKE_CURRENT_BINARY_DIR}/prisonscanner_export.h
0068     DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/PrisonScanner/Prison
0069     COMPONENT Devel
0070 )
0071 
0072 if(BUILD_QCH)
0073     ecm_add_qch(
0074         KF6PrisonScanner_QCH
0075         NAME PrisonScanner
0076         BASE_NAME KF6PrisonScanner
0077         VERSION ${KF_VERSION}
0078         ORG_DOMAIN org.kde
0079         SOURCES # using only public headers, to cover only public API
0080             ${PrisonScanner_HEADERS}
0081         MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0082         LINK_QCHS
0083             Qt6Multimedia_QCH
0084         INCLUDE_DIRS
0085             ${CMAKE_CURRENT_BINARY_DIR}
0086         BLANK_MACROS
0087             PRISONSCANNER_EXPORT
0088             PRISONSCANNER_DEPRECATED
0089             PRISONSCANNER_DEPRECATED_EXPORT
0090             "PRISONSCANNER_DEPRECATED_VERSION(x, y, t)"
0091             "PRISONSCANNER_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)"
0092         TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0093         QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0094         COMPONENT Devel
0095     )
0096 endif()