diff --git a/CMakeLists.txt b/CMakeLists.txt index 5977df00..f2983cf6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,192 +1,192 @@ # CMake version required. This must be the very first line, because it sets default policies affecting everything else cmake_minimum_required(VERSION 3.1) # Project name and version project(Falkon VERSION 3.1.0) # Find ECM, with nice error handling in case of failure include(FeatureSummary) find_package(ECM 5.27.0 CONFIG) set_package_properties(ECM PROPERTIES TYPE REQUIRED DESCRIPTION "Extra CMake Modules." URL "https://projects.kde.org/projects/frameworks/extra-cmake-modules") feature_summary(WHAT REQUIRED_PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake) # Many includes from ECM, to get all the nice cmake functions and settings include(KDEInstallDirs) include(KDECMakeSettings) include(KDECompilerSettings NO_POLICY_SCOPE) include(ECMInstallIcons) include(ECMSetupVersion) include(ECMAddAppIcon) include(ECMQtDeclareLoggingCategory) include(ECMPoQmTools) # Output dirs (like ECM 5.38 does) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib") set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin") set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin") if (UNIX AND NOT APPLE) set(FALKON_INSTALL_PLUGINDIR "${KDE_INSTALL_PLUGINDIR}/falkon") else() set(FALKON_INSTALL_PLUGINDIR "${KDE_INSTALL_PLUGINDIR}") endif() if (IS_ABSOLUTE ${FALKON_INSTALL_PLUGINDIR}) set(PLUGIN_PATH "${FALKON_INSTALL_PLUGINDIR}") else() set(PLUGIN_PATH "${CMAKE_INSTALL_PREFIX}/${FALKON_INSTALL_PLUGINDIR}") endif() if (NOT WIN32) set(FALKON_PLUGIN_PATH "${PLUGIN_PATH}" CACHE PATH "Default plugin search path") endif() # Defines that are always set add_definitions(-DQT_NO_URL_CAST_FROM_STRING -DQT_USE_QSTRINGBUILDER -DQT_NO_CAST_TO_ASCII) # Mandatory: Qt5 set(QT_MIN_VERSION "5.9.0") find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Core Widgets Network Sql QuickWidgets PrintSupport WebEngine WebEngineWidgets WebChannel) if (BUILD_TESTING) find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS Test) endif() if (NOT DISABLE_DBUS) find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS DBus) endif() if (UNIX AND NOT APPLE AND NOT NO_X11) add_definitions(-DQZ_WS_X11) find_package(XCB REQUIRED COMPONENTS XCB UTIL) find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS X11Extras) endif() if (WIN32) add_definitions(-DW7API) find_package(Qt5 ${QT_MIN_VERSION} REQUIRED COMPONENTS WinExtras) # taken from https://stackoverflow.com/a/40217291 macro(get_WIN32_WINNT version) if (CMAKE_SYSTEM_VERSION) set(ver ${CMAKE_SYSTEM_VERSION}) string(REGEX MATCH "^([0-9]+).([0-9])" ver ${ver}) string(REGEX MATCH "^([0-9]+)" verMajor ${ver}) # Check for Windows 10, b/c we'll need to convert to hex 'A'. if ("${verMajor}" MATCHES "10") set(verMajor "A") string(REGEX REPLACE "^([0-9]+)" ${verMajor} ver ${ver}) endif ("${verMajor}" MATCHES "10") # Remove all remaining '.' characters. string(REPLACE "." "" ver ${ver}) # Prepend each digit with a zero. string(REGEX REPLACE "([0-9A-Z])" "0\\1" ver ${ver}) set(${version} "0x${ver}") endif(CMAKE_SYSTEM_VERSION) endmacro(get_WIN32_WINNT) get_WIN32_WINNT(ver) add_definitions(-D_WIN32_WINNT=${ver}) endif() # Mandatory: OpenSSL find_package(OpenSSL REQUIRED) # KF5I18n: Mandatory with downloaded translations (only for ki18n_install) if (EXISTS "${CMAKE_SOURCE_DIR}/po") find_package(KF5I18n REQUIRED) endif() # Optional: GnomeKeyring find_package(PkgConfig) if (PKG_CONFIG_FOUND) option(BUILD_KEYRING "Gnome keyring password plugin" ON) if (BUILD_KEYRING) pkg_check_modules(GNOME_KEYRING IMPORTED_TARGET gnome-keyring-1 ) endif() endif() # Optional: KWallet, KIO, KCrash, KCoreAddons set(KF5_MIN_VERSION "5.54.0") find_package(KF5Wallet ${KF5_MIN_VERSION} CONFIG) set_package_properties(KF5Wallet PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL) find_package(KF5KIO ${KF5_MIN_VERSION} CONFIG) set_package_properties(KF5KIO PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL) find_package(KF5Crash ${KF5_MIN_VERSION} CONFIG) set_package_properties(KF5Crash PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL) find_package(KF5CoreAddons ${KF5_MIN_VERSION} CONFIG) set_package_properties(KF5CoreAddons PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL) find_package(KF5Purpose ${KF5_MIN_VERSION} CONFIG) set_package_properties(KF5Purpose PROPERTIES DESCRIPTION "KDE Frameworks Integration plugin" TYPE OPTIONAL) if (KF5Wallet_FOUND AND KF5KIO_FOUND AND KF5Crash_FOUND AND KF5CoreAddons_FOUND AND KF5Purpose_FOUND) set(ENABLE_KDE_FRAMEWORKS_INTEGRATION_PLUGIN TRUE) endif() # Optional: PySide2 find_package(PySide2 "2.0.0") find_package(Shiboken2 "2.0.0") -find_package(PythonLibs "3.0") -set_package_properties(PySide2 PROPERTIES DESCRIPTION "Python plugins (experimental)" TYPE OPTIONAL) -set_package_properties(Shiboken2 PROPERTIES DESCRIPTION "Python plugins (experimental)" TYPE OPTIONAL) -set_package_properties(PythonLibs PROPERTIES DESCRIPTION "Python plugins (experimental)" TYPE OPTIONAL) -if (PySide2_FOUND AND Shiboken2_FOUND AND PythonLibs_FOUND) +find_package(Python3 COMPONENTS Development) +set_package_properties(PySide2 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL) +set_package_properties(Shiboken2 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL) +set_package_properties(Python3 PROPERTIES DESCRIPTION "Python plugins" TYPE OPTIONAL) +if (PySide2_FOUND AND Shiboken2_FOUND AND Python3_FOUND) set(ENABLE_PYTHON_PLUGINS TRUE) endif() find_package(Intl) if (Intl_FOUND) set(HAVE_LIBINTL TRUE) endif() # Git revision if (EXISTS "${CMAKE_SOURCE_DIR}/.git") find_package(Git QUIET) if(GIT_FOUND) execute_process( COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE GIT_REVISION ) string(REGEX REPLACE "\n" "" GIT_REVISION "${GIT_REVISION}") set(FALKON_GIT_REVISION "${GIT_REVISION}") else() message(STATUS "Git revision could not be determined") endif() endif() configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/src/config.h) # Include dirs used everywhere include_directories( ${CMAKE_SOURCE_DIR}/src/lib/3rdparty ${CMAKE_SOURCE_DIR}/src/lib/adblock ${CMAKE_SOURCE_DIR}/src/lib/app ${CMAKE_SOURCE_DIR}/src/lib/autofill ${CMAKE_SOURCE_DIR}/src/lib/bookmarks ${CMAKE_SOURCE_DIR}/src/lib/cookies ${CMAKE_SOURCE_DIR}/src/lib/downloads ${CMAKE_SOURCE_DIR}/src/lib/history ${CMAKE_SOURCE_DIR}/src/lib/navigation ${CMAKE_SOURCE_DIR}/src/lib/network ${CMAKE_SOURCE_DIR}/src/lib/notifications ${CMAKE_SOURCE_DIR}/src/lib/opensearch ${CMAKE_SOURCE_DIR}/src/lib/other ${CMAKE_SOURCE_DIR}/src/lib/plugins ${CMAKE_SOURCE_DIR}/src/lib/popupwindow ${CMAKE_SOURCE_DIR}/src/lib/preferences ${CMAKE_SOURCE_DIR}/src/lib/session ${CMAKE_SOURCE_DIR}/src/lib/sidebar ${CMAKE_SOURCE_DIR}/src/lib/tabwidget ${CMAKE_SOURCE_DIR}/src/lib/tools ${CMAKE_SOURCE_DIR}/src/lib/webengine ${CMAKE_SOURCE_DIR}/src/lib/webtab ) # Finally, go into the subdirs add_subdirectory(src) if (BUILD_TESTING) add_subdirectory(autotests) add_subdirectory(tests/benchmarks) endif() # Tell releaseme that po is already taken care of # SKIP_PO_INSTALL feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/src/plugins/PyFalkon/CMakeLists.txt b/src/plugins/PyFalkon/CMakeLists.txt index 55893e5c..7251d808 100644 --- a/src/plugins/PyFalkon/CMakeLists.txt +++ b/src/plugins/PyFalkon/CMakeLists.txt @@ -1,189 +1,187 @@ # Enable policy to run automoc on generated files. if(POLICY CMP0071) cmake_policy(SET CMP0071 NEW) endif() # Get all relevant Qt include dirs, to pass them on to shiboken. get_property(QT_CORE_INCLUDE_DIRS TARGET Qt5::Core PROPERTY INTERFACE_INCLUDE_DIRECTORIES) get_property(QT_GUI_INCLUDE_DIRS TARGET Qt5::Gui PROPERTY INTERFACE_INCLUDE_DIRECTORIES) get_property(QT_SQL_INCLUDE_DIRS TARGET Qt5::Sql PROPERTY INTERFACE_INCLUDE_DIRECTORIES) get_property(QT_WIDGETS_INCLUDE_DIRS TARGET Qt5::Widgets PROPERTY INTERFACE_INCLUDE_DIRECTORIES) get_property(QT_NETWORK_INCLUDE_DIRS TARGET Qt5::Network PROPERTY INTERFACE_INCLUDE_DIRECTORIES) get_property(QT_WEBENGINECORE_INCLUDE_DIRS TARGET Qt5::WebEngineCore PROPERTY INTERFACE_INCLUDE_DIRECTORIES) get_property(QT_WEBENGINEWIDGETS_INCLUDE_DIRS TARGET Qt5::WebEngineWidgets PROPERTY INTERFACE_INCLUDE_DIRECTORIES) set(QT_INCLUDE_DIRS ${QT_CORE_INCLUDE_DIRS} ${QT_GUI_INCLUDE_DIRS} ${QT_SQL_INCLUDE_DIRS} ${QT_WIDGETS_INCLUDE_DIRS} ${QT_NETWORK_INCLUDE_DIRS} ${QT_WEBENGINECORE_INCLUDE_DIRS} ${QT_WEBENGINEWIDGETS_INCLUDE_DIRS} ) set(INCLUDES "") foreach(INCLUDE_DIR ${QT_INCLUDE_DIRS}) list(APPEND INCLUDES "-I${INCLUDE_DIR}") endforeach() get_property(FalkonPrivate_INCLUDE_DIRS TARGET FalkonPrivate PROPERTY INCLUDE_DIRECTORIES) foreach(INCLUDE_DIR ${FalkonPrivate_INCLUDE_DIRS}) list(APPEND INCLUDES "-I${INCLUDE_DIR}") endforeach() # Set up the options to pass to shiboken. set(GLOBAL_HEADER ${CMAKE_CURRENT_SOURCE_DIR}/pyfalkon_global.h) set(TYPESYSTEM_FILE ${CMAKE_CURRENT_SOURCE_DIR}/typesystem_pyfalkon.xml) set(SHIBOKEN_OPTIONS --generator-set=shiboken --enable-parent-ctor-heuristic --enable-pyside-extensions --enable-return-value-heuristic --use-isnull-as-nb_nonzero --avoid-protected-hack ${INCLUDES} -T${PYSIDE_TYPESYSTEMS} --output-directory=${CMAKE_CURRENT_BINARY_DIR} --api-version="${Qt5_VERSION_MAJOR}.${Qt5_VERSION_MINOR}" ) # Specify which sources will be generated by shiboken, and their dependencies. set(GENERATED_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/pyfalkon_module_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/webview_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabbedwebview_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/webpage_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/webhittestresult_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/desktopfile_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/plugininterface_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/loadrequest_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/qz_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/desktopnotificationsfactory_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/externaljsobject_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/pluginproxy_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/plugins_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/plugins_plugin_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/pluginspec_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/qtsingleapplication_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/squeezelabelv1_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/squeezelabelv2_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/lineedit_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/sidewidget_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/webtab_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/mainapplication_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/datapaths_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/settings_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/autosaver_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/browserwindow_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/pageformdata_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/passwordentry_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/passwordbackend_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/autofill_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/passwordmanager_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/bookmarkitem_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/bookmarkstools_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/bookmarks_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/bookmarksmodel_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/bookmarksfoldersmenu_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/bookmarksfoldersbutton_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/cookiemanager_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/cookiejar_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/downloaditem_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/downloadmanager_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/downloadmanager_downloadinfo_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/history_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/history_historyentry_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/historyitem_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/historymodel_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/locationbar_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/locationbar_loadaction_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/navigationbar_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/networkmanager_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/searchenginesdialog_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/searchenginesmanager_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/searchenginesmanager_engine_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/sidebarmanager_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/sidebarinterface_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/webinspector_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/combotabbar_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabbar_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabcontextmenu_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabicon_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabicon_data_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabmodel_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabmrumodel_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabstackedwidget_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabtreemodel_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/tabwidget_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/searchtoolbar_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/checkboxdialog_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/qzsettings_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/statusbar_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/abstractbuttoninterface_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/abstractbuttoninterface_clickcontroller_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/clickablelabel_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/delayedfilewatcher_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/iconprovider_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/qztools_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/sqlqueryjob_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/sqldatabase_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/toolbutton_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/wheelhelper_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/menu_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/action_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/urlinterceptor_wrapper.cpp ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon/extensionschemehandler_wrapper.cpp ) set(GENERATED_SOURCES_DEPENDENCIES ${GLOBAL_HEADER} ${TYPESYSTEM_FILE} ) # Add custom target to run shiboken. add_custom_command(OUTPUT ${GENERATED_SOURCES} - COMMAND ${SHIBOKEN_BINARY} + COMMAND Shiboken2::shiboken2 ${SHIBOKEN_OPTIONS} ${GLOBAL_HEADER} ${TYPESYSTEM_FILE} DEPENDS ${GENERATED_SOURCES_DEPENDENCIES} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} COMMENT "Running generator for ${TYPESYSTEM_FILE}.") # We need to include the headers for the module bindings that we use. set(PYSIDE_ADDITIONAL_INCLUDES "") -foreach(INCLUDE_DIR ${PYSIDE_INCLUDE_DIR}) +get_target_property(PYSIDE_INCLUDE_DIRS PySide2::pyside2 INTERFACE_INCLUDE_DIRECTORIES) +foreach(INCLUDE_DIR ${PYSIDE_INCLUDE_DIRS}) list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtCore") list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtGui") list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtNetwork") + list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtPrintSupport") list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtWidgets") list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtWebChannel") list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtWebEngineCore") list(APPEND PYSIDE_ADDITIONAL_INCLUDES "${INCLUDE_DIR}/QtWebEngineWidgets") endforeach() -set( PyFalkon_SRCS +set(PyFalkon_SRCS pythonplugin.cpp ${GENERATED_SOURCES} ) add_library(PyFalkon MODULE ${PyFalkon_SRCS}) install(TARGETS PyFalkon DESTINATION ${FALKON_INSTALL_PLUGINDIR}) target_include_directories(PyFalkon PRIVATE - ${SHIBOKEN_INCLUDE_DIR} - ${SHIBOKEN_PYTHON_INCLUDE_DIR} - ${PYSIDE_INCLUDE_DIR} ${PYSIDE_ADDITIONAL_INCLUDES} ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR}/PyFalkon ) target_link_libraries(PyFalkon PRIVATE FalkonPrivate - ${PYTHON_LIBRARIES} - ${SHIBOKEN_LIBRARY} - ${SHIBOKEN_PYTHON_LIBRARIES} - ${PYSIDE_LIBRARY} + Shiboken2::libshiboken + PySide2::pyside2 + Python3::Python ) # Same as CONFIG += no_keywords to avoid syntax errors in object.h due to the usage of the word Slot target_compile_definitions(PyFalkon PRIVATE QT_NO_KEYWORDS) if(BUILD_TESTING) add_subdirectory(autotests) endif()