Warning, /frameworks/prison/src/lib/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 include(CMakePackageConfigHelpers)
0002 if(TARGET Dmtx::Dmtx)
0003 set(HAVE_DMTX 1)
0004 endif()
0005 if (TARGET ZXing::ZXing)
0006 set(HAVE_ZXING 1)
0007 endif()
0008 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config-prison.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-prison.h)
0009
0010 add_library(KF6Prison)
0011 add_library(KF6::Prison ALIAS KF6Prison)
0012
0013 qt_extract_metatypes(KF6Prison)
0014
0015 set_target_properties(KF6Prison PROPERTIES
0016 VERSION ${PRISON_VERSION}
0017 SOVERSION ${PRISON_SOVERSION}
0018 EXPORT_NAME Prison
0019 )
0020
0021 target_sources(KF6Prison PRIVATE
0022 abstractbarcode_p.cpp
0023 aztecbarcode.cpp
0024 aztecbarcode_p.h
0025 barcode.cpp
0026 barcodeutil.cpp
0027 barcodeutil_p.h
0028 bitvector.cpp
0029 bitvector_p.h
0030 code128barcode.cpp
0031 code128barcode_p.h
0032 code39barcode.cpp
0033 code39barcode_p.h
0034 code93barcode.cpp
0035 code93barcode_p.h
0036 mecard.cpp
0037 mecard.h
0038 prison.h
0039 qrcodebarcode.cpp
0040 qrcodebarcode_p.h
0041 reedsolomon.cpp
0042 reedsolomon_p.h
0043 )
0044 if(TARGET Dmtx::Dmtx)
0045 target_sources(KF6Prison PRIVATE datamatrixbarcode.cpp datamatrixbarcode_p.h)
0046 endif()
0047 if(TARGET ZXing::ZXing)
0048 target_sources(KF6Prison PRIVATE
0049 pdf417barcode.cpp
0050 pdf417barcode_p.h
0051 zxingutil.cpp
0052 )
0053 endif()
0054 kde_source_files_enable_exceptions(
0055 barcode.cpp
0056 pdf417barcode.cpp
0057 prison.cpp
0058 zxingutil.cpp
0059 )
0060
0061 ecm_qt_declare_logging_category(KF6Prison
0062 HEADER prison_debug.h
0063 IDENTIFIER Prison::Log
0064 CATEGORY_NAME kf.prison
0065 OLD_CATEGORY_NAMES kf5.prison
0066 DESCRIPTION "Prison (lib)"
0067 EXPORT PRISON
0068 )
0069
0070 ecm_generate_export_header(KF6Prison
0071 BASE_NAME Prison
0072 GROUP_BASE_NAME KF
0073 VERSION ${KF_VERSION}
0074 USE_VERSION_HEADER
0075 DEPRECATED_BASE_VERSION 0
0076 DEPRECATION_VERSIONS
0077 EXCLUDE_DEPRECATED_BEFORE_AND_AT ${EXCLUDE_DEPRECATED_BEFORE_AND_AT}
0078 )
0079
0080 target_include_directories(KF6Prison
0081 INTERFACE
0082 "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/Prison>"
0083 PUBLIC
0084 "$<BUILD_INTERFACE:${CMAKE_BINARY_DIR}>" # module version header
0085 )
0086
0087 target_link_libraries(KF6Prison
0088 PUBLIC
0089 Qt6::Gui
0090 PRIVATE
0091 QRencode::QRencode
0092 )
0093 if(TARGET Dmtx::Dmtx)
0094 target_link_libraries(KF6Prison PRIVATE Dmtx::Dmtx)
0095 endif()
0096 if(TARGET ZXing::ZXing)
0097 target_link_libraries(KF6Prison PRIVATE ZXing::ZXing)
0098 endif()
0099
0100 install(TARGETS KF6Prison EXPORT KF6PrisonTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS})
0101
0102 ecm_generate_headers(Prison_CamelCase_HEADERS
0103 HEADER_NAMES
0104 Barcode
0105 Prison
0106 MeCard
0107 REQUIRED_HEADERS Prison_HEADERS
0108 OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/Prison
0109 )
0110
0111 set(_all_headers
0112 ${Prison_HEADERS}
0113 ${Prison_CamelCase_HEADERS}
0114 ${CMAKE_CURRENT_BINARY_DIR}/prison_export.h
0115 )
0116
0117 install(
0118 FILES ${_all_headers}
0119 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/Prison/Prison
0120 COMPONENT Devel
0121 )
0122
0123 if(BUILD_QCH)
0124 ecm_add_qch(
0125 KF6Prison_QCH
0126 NAME Prison
0127 BASE_NAME KF6Prison
0128 VERSION ${KF_VERSION}
0129 ORG_DOMAIN org.kde
0130 SOURCES # using only public headers, to cover only public API
0131 ${Prison_HEADERS}
0132 MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md"
0133 LINK_QCHS
0134 Qt6Gui_QCH
0135 INCLUDE_DIRS
0136 ${CMAKE_CURRENT_BINARY_DIR}
0137 BLANK_MACROS
0138 PRISON_EXPORT
0139 PRISON_DEPRECATED
0140 PRISON_DEPRECATED_EXPORT
0141 "PRISON_DEPRECATED_VERSION(x, y, t)"
0142 "PRISON_DEPRECATED_VERSION_BELATED(x, y, xt, yt, t)"
0143 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0144 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR}
0145 COMPONENT Devel
0146 )
0147 endif()
0148