Warning, /frameworks/kcrash/src/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 add_library(KF6Crash) 0002 add_library(KF6::Crash ALIAS KF6Crash) 0003 0004 set_target_properties(KF6Crash PROPERTIES 0005 VERSION ${KCRASH_VERSION} 0006 SOVERSION ${KCRASH_SOVERSION} 0007 EXPORT_NAME Crash 0008 ) 0009 0010 target_sources(KF6Crash PRIVATE 0011 coreconfig.cpp 0012 coreconfig_p.h 0013 kcrash.cpp 0014 kcrash.h 0015 metadata.cpp 0016 metadata_p.h 0017 exception.cpp 0018 ) 0019 0020 kde_source_files_enable_exceptions(exception.cpp) 0021 0022 configure_file( 0023 ${CMAKE_CURRENT_SOURCE_DIR}/config-kcrash.h.cmake 0024 ${CMAKE_CURRENT_BINARY_DIR}/config-kcrash.h 0025 ) 0026 0027 ecm_qt_declare_logging_category( 0028 KF6Crash 0029 HEADER kcrash_debug.h 0030 IDENTIFIER LOG_KCRASH 0031 CATEGORY_NAME kf.crash 0032 OLD_CATEGORY_NAMES org.kde.kcrash 0033 DESCRIPTION "KCrash" 0034 EXPORT KCRASH 0035 ) 0036 0037 ecm_generate_export_header(KF6Crash 0038 BASE_NAME KCrash 0039 GROUP_BASE_NAME KF 0040 VERSION ${KF_VERSION} 0041 USE_VERSION_HEADER 0042 DEPRECATED_BASE_VERSION 0 0043 ) 0044 0045 target_include_directories(KF6Crash INTERFACE "$<INSTALL_INTERFACE:${KDE_INSTALL_INCLUDEDIR_KF}/KCrash>") 0046 0047 target_link_libraries(KF6Crash PUBLIC Qt6::Core) 0048 target_link_libraries(KF6Crash PRIVATE Qt6::Gui KF6::CoreAddons) 0049 0050 # FIXME: It is needed to work around undefined reference error on FreeBSD 0051 # caused by --no-undefined because the `environ' variable does not exist 0052 # in libc.so.7 -- it is in crt1.o, and so not available to shared 0053 # libraries. We just drop the normal no-undefined flag for library building 0054 # here, on the assumption that Linux CI will catch any *actual* undefineds. 0055 if (CMAKE_SYSTEM_NAME MATCHES "FreeBSD") 0056 string(REPLACE "-Wl,--no-undefined" "" CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}") 0057 endif () 0058 0059 if(WITH_X11) 0060 target_link_libraries(KF6Crash PRIVATE X11::X11) 0061 endif() 0062 0063 ecm_generate_headers(KCrash_HEADERS 0064 HEADER_NAMES 0065 KCrash 0066 0067 REQUIRED_HEADERS KCrash_HEADERS 0068 ) 0069 0070 install(TARGETS KF6Crash EXPORT KF6CrashTargets ${KF_INSTALL_TARGETS_DEFAULT_ARGS}) 0071 0072 install(FILES 0073 ${CMAKE_CURRENT_BINARY_DIR}/kcrash_export.h 0074 ${KCrash_HEADERS} 0075 DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF}/KCrash COMPONENT Devel 0076 ) 0077 0078 ecm_qt_install_logging_categories( 0079 EXPORT KCRASH 0080 FILE kcrash.categories 0081 DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} 0082 ) 0083 0084 if(BUILD_QCH) 0085 ecm_add_qch( 0086 KF6Crash_QCH 0087 NAME KCrash 0088 BASE_NAME KF6Crash 0089 VERSION ${KF_VERSION} 0090 ORG_DOMAIN org.kde 0091 SOURCES # using only public headers, to cover only public API 0092 ${KCrash_HEADERS} 0093 MD_MAINPAGE "${CMAKE_SOURCE_DIR}/README.md" 0094 LINK_QCHS 0095 Qt6Core_QCH 0096 INCLUDE_DIRS 0097 ${CMAKE_CURRENT_BINARY_DIR} 0098 BLANK_MACROS 0099 KCRASH_EXPORT 0100 KCRASH_DEPRECATED 0101 KCRASH_DEPRECATED_EXPORT 0102 TAGFILE_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0103 QCH_INSTALL_DESTINATION ${KDE_INSTALL_QTQCHDIR} 0104 COMPONENT Devel 0105 ) 0106 endif() 0107