Warning, /sdk/selenium-webdriver-at-spi/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 # SPDX-License-Identifier: BSD-3-Clause
0002 # SPDX-FileCopyrightText: 2022 Harald Sitter <sitter@kde.org>
0003 
0004 project(selenium-webdriver-at-spi)
0005 
0006 cmake_minimum_required(VERSION 3.22)
0007 find_package(ECM 5.99 REQUIRED NO_MODULE)
0008 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
0009 
0010 include(FeatureSummary)
0011 include(KDEInstallDirs)
0012 include(KDECMakeSettings)
0013 include(KDECompilerSettings)
0014 include(KDEClangFormat)
0015 include(KDEGitCommitHooks)
0016 include(CMakePackageConfigHelpers)
0017 include(FindPkgConfig)
0018 
0019 set(CMAKE_CXX_STANDARD 20)
0020 set(CMAKE_CXX_STANDARD_REQUIRED ON)
0021 
0022 # Disable legacy stuff to get rid of some deprecation warnings. Notably duplicated QProcess::finished overloads.
0023 add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050e00)
0024 
0025 find_package(Qt${QT_MAJOR_VERSION} ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS Core DBus WaylandClient)
0026 if(QT_MAJOR_VERSION EQUAL "5")
0027     find_package(KF5 5.99 REQUIRED COMPONENTS WindowSystem Wayland CoreAddons)
0028 else()
0029     find_package(KF6 5.240 REQUIRED COMPONENTS WindowSystem Wayland CoreAddons)
0030 endif()
0031 
0032 find_package(KPipeWire REQUIRED)
0033 find_package(Wayland REQUIRED COMPONENTS Client)
0034 find_package(PlasmaWaylandProtocols REQUIRED)
0035 if (QT_MAJOR_VERSION EQUAL "5")
0036     find_package(QtWaylandScanner REQUIRED)
0037 endif()
0038 
0039 # Runtime Dependencies
0040 include(cmake/FindPythonModule.cmake)
0041 find_pythonmodule(flask)
0042 find_pythonmodule(pyatspi)
0043 find_pythonmodule(lxml)
0044 find_pythonmodule(gi)
0045 pkg_check_modules(GObjectIntrospection gobject-introspection-1.0)
0046 add_feature_info(GObjectIntrospection GObjectIntrospection_FOUND "required at runtime!")
0047 
0048 add_subdirectory(appidlister)
0049 add_subdirectory(screenshotter)
0050 add_subdirectory(autotests)
0051 add_subdirectory(inputsynth)
0052 add_subdirectory(videorecorder)
0053 
0054 install(PROGRAMS run.rb
0055     RENAME selenium-webdriver-at-spi-run
0056     DESTINATION ${CMAKE_INSTALL_BINDIR})
0057 install(FILES selenium-webdriver-at-spi.py app_roles.py requirements.txt DESTINATION ${CMAKE_INSTALL_DATADIR}/selenium-webdriver-at-spi)
0058 
0059 set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/SeleniumWebDriverATSPI")
0060 
0061 configure_package_config_file(
0062     ${CMAKE_CURRENT_SOURCE_DIR}/SeleniumWebDriverATSPIConfig.cmake.in
0063     ${CMAKE_CURRENT_BINARY_DIR}/SeleniumWebDriverATSPIConfig.cmake
0064     INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}
0065 )
0066 
0067 install(
0068     FILES
0069         ${CMAKE_CURRENT_BINARY_DIR}/SeleniumWebDriverATSPIConfig.cmake
0070         cmake/Findat-spi2-registryd.cmake
0071         cmake/Findat-spi-bus-launcher.cmake
0072         cmake/FindPython3.cmake
0073         cmake/FindPythonModule.cmake
0074         cmake/FindPythonModule.cmake.in
0075         cmake/FindRuby.cmake
0076         cmake/ProgramFinder.cmake
0077     DESTINATION ${CMAKECONFIG_INSTALL_DIR}
0078     COMPONENT Devel
0079 )
0080 
0081 feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)