diff --git a/kate/CMakeLists.txt b/kate/CMakeLists.txt index 9f705a257..bdc67bf4e 100644 --- a/kate/CMakeLists.txt +++ b/kate/CMakeLists.txt @@ -1,168 +1,168 @@ # We use an intermediate static library because linking tests directly to an executable is not # possible with CMake yet. -add_library(kate STATIC "") +add_library(kate-lib STATIC "") configure_file(config.h.in config.h) include(GenerateExportHeader) generate_export_header( - kate + kate-lib EXPORT_FILE_NAME katetests_export.h EXPORT_MACRO_NAME KATE_TESTS_EXPORT ) target_include_directories( - kate + kate-lib PUBLIC ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/session ${CMAKE_CURRENT_SOURCE_DIR}/qtsingleapplication ${CMAKE_CURRENT_BINARY_DIR} # katetests_export.h + config.h ) find_package( KF5 QUIET REQUIRED COMPONENTS TextEditor IconThemes WindowSystem DBusAddons Crash OPTIONAL_COMPONENTS Activities ) target_link_libraries( - kate + kate-lib PUBLIC KF5::TextEditor KF5::IconThemes KF5::WindowSystem KF5::DBusAddons KF5::Crash ) if(KF5Activities_FOUND) - target_link_libraries(kate PUBLIC KF5::Activities) + target_link_libraries(kate-lib PUBLIC KF5::Activities) endif() ki18n_wrap_ui(UI_SOURCES ui/sessionconfigwidget.ui session/katesessionmanagedialog.ui) -target_sources(kate PRIVATE ${UI_SOURCES}) +target_sources(kate-lib PRIVATE ${UI_SOURCES}) set(ICONS_PNG ${CMAKE_CURRENT_SOURCE_DIR}/icons/16-apps-kate.png ${CMAKE_CURRENT_SOURCE_DIR}/icons/22-apps-kate.png ${CMAKE_CURRENT_SOURCE_DIR}/icons/32-apps-kate.png ${CMAKE_CURRENT_SOURCE_DIR}/icons/48-apps-kate.png ${CMAKE_CURRENT_SOURCE_DIR}/icons/64-apps-kate.png ${CMAKE_CURRENT_SOURCE_DIR}/icons/128-apps-kate.png ) set(ICONS_SVG ${CMAKE_CURRENT_SOURCE_DIR}/icons/sc-apps-kate.svgz) # Add icon files to the application's source files to have CMake bundle them in the executable. ecm_add_app_icon(ICONS_SOURCES ICONS ${ICONS_PNG}) -target_sources(kate PRIVATE ${ICONS_SOURCES}) +target_sources(kate-lib PRIVATE ${ICONS_SOURCES}) target_sources( - kate + kate-lib PRIVATE data/kate.qrc session/katesession.cpp session/katesessionmanagedialog.cpp session/katesessionmanager.cpp session/katesessionsaction.cpp kateapp.cpp kateappadaptor.cpp katecolorschemechooser.cpp kateconfigdialog.cpp kateconfigplugindialogpage.cpp katedocmanager.cpp katefileactions.cpp katemainwindow.cpp katemdi.cpp katemwmodonhddialog.cpp katepluginmanager.cpp katequickopen.cpp katequickopenmodel.cpp katerunninginstanceinfo.cpp katesavemodifieddialog.cpp katetabbar.cpp katetabbutton.cpp kateviewmanager.cpp kateviewspace.cpp katewaiter.cpp ) # Use a single application on MacOS + Windows instead of dbus. if(APPLE OR WIN32) - target_compile_definitions(kate PRIVATE USE_QT_SINGLE_APP) + target_compile_definitions(kate-lib PRIVATE USE_QT_SINGLE_APP) target_sources( - kate + kate-lib PRIVATE qtsingleapplication/qtlocalpeer.cpp qtsingleapplication/qtsingleapplication.cpp qtsingleapplication/qtlockedfile.cpp ) if(WIN32) - target_sources(kate PRIVATE qtsingleapplication/qtlockedfile_win.cpp) + target_sources(kate-lib PRIVATE qtsingleapplication/qtlockedfile_win.cpp) else() - target_sources(kate PRIVATE qtsingleapplication/qtlockedfile_unix.cpp) + target_sources(kate-lib PRIVATE qtsingleapplication/qtlockedfile_unix.cpp) endif() endif() # Executable only adds the main definition. add_executable(kate-bin main.cpp) -target_link_libraries(kate-bin PRIVATE kate) +target_link_libraries(kate-bin PRIVATE kate-lib) set_property( TARGET kate-bin PROPERTY OUTPUT_NAME kate ) # See https://cmake.org/cmake/help/v3.15/prop_tgt/MACOSX_BUNDLE_INFO_PLIST.html if(APPLE) set_property( TARGET kate-bin PROPERTY MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/data/MacOSXBundleInfo.plist.in ) # These are substituted by CMake into plist.in. set(MACOSX_BUNDLE_DISPLAY_NAME "Kate") set(MACOSX_BUNDLE_GUI_IDENTIFIER "org.kde.Kate") set(MACOSX_BUNDLE_BUNDLE_NAME "Kate") set(MACOSX_BUNDLE_DISPLAY_NAME "Kate") set(MACOSX_BUNDLE_INFO_STRING "Kate - Advanced Text Editor") set(MACOSX_BUNDLE_LONG_VERSION_STRING "Kate ${KDE_APPLICATIONS_VERSION}") set(MACOSX_BUNDLE_SHORT_VERSION_STRING "${KDE_APPLICATIONS_VERSION_MAJOR}.${KDE_APPLICATIONS_VERSION_MINOR}") set(MACOSX_BUNDLE_BUNDLE_VERSION "${KDE_APPLICATIONS_VERSION}") set(MACOSX_BUNDLE_COPYRIGHT "2000-2016 The Kate Authors") endif() install(TARGETS kate-bin ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) ecm_install_icons( ICONS ${ICONS_PNG} ${ICONS_SVG} DESTINATION ${ICON_INSTALL_DIR} THEME hicolor ) install( PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/data/org.kde.kate.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) install( FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/org.kde.kate.appdata.xml DESTINATION ${CMAKE_INSTALL_METAINFODIR} ) if(BUILD_TESTING) add_subdirectory(autotests) endif() diff --git a/kate/autotests/CMakeLists.txt b/kate/autotests/CMakeLists.txt index 4c387947e..511da575c 100644 --- a/kate/autotests/CMakeLists.txt +++ b/kate/autotests/CMakeLists.txt @@ -1,25 +1,25 @@ include(ECMMarkAsTest) find_package(Qt5Test QUIET REQUIRED) macro(kate_executable_tests) foreach(_testname ${ARGN}) add_executable(${_testname} ${_testname}.cpp) target_link_libraries( ${_testname} PRIVATE - kate + kate-lib Qt5::Test ) add_test(NAME kateapp-${_testname} COMMAND ${_testname}) ecm_mark_as_test(${_testname}) endforeach() endmacro() kate_executable_tests( session_test session_manager_test sessions_action_test )