From 8967b4f874723f9c94a7ce7575a30a8907555df2 Mon Sep 17 00:00:00 2001 From: Konstantin Tokarev Date: Sun, 20 Sep 2020 20:18:16 +0300 Subject: Import QtWebKit commit 6faf5d547055321f0d518fe83766499cac5d8664 Change-Id: Ic4699dbd1292dda99d8058853dadf69f5a81cd0e Reviewed-by: Konstantin Tokarev --- Source/WebKit/qt/declarative/CMakeLists.txt | 4 ++++ .../qt/declarative/experimental/CMakeLists.txt | 4 ++++ Source/WebKit2/PlatformQt.cmake | 13 +++++++++++ Source/cmake/OptionsQt.cmake | 5 ++++- Tools/qt/conanfile.py | 26 ++++++++++++++-------- 5 files changed, 42 insertions(+), 10 deletions(-) diff --git a/Source/WebKit/qt/declarative/CMakeLists.txt b/Source/WebKit/qt/declarative/CMakeLists.txt index e1ba22bc1..d6bbf841b 100644 --- a/Source/WebKit/qt/declarative/CMakeLists.txt +++ b/Source/WebKit/qt/declarative/CMakeLists.txt @@ -42,6 +42,10 @@ set_target_properties(qmlwebkitplugin PROPERTIES AUTOMOC ON ) +if (COMPILER_IS_GCC_OR_CLANG) + target_compile_options(qmlwebkitplugin PRIVATE -frtti) +endif () + add_custom_target( qmlwebkitplugin-files ALL COMMAND ${CMAKE_COMMAND} -E copy_if_different qmldir "${CMAKE_BINARY_DIR}/imports/QtWebKit/qmldir" diff --git a/Source/WebKit/qt/declarative/experimental/CMakeLists.txt b/Source/WebKit/qt/declarative/experimental/CMakeLists.txt index 1526e6f47..c2b0efad9 100644 --- a/Source/WebKit/qt/declarative/experimental/CMakeLists.txt +++ b/Source/WebKit/qt/declarative/experimental/CMakeLists.txt @@ -19,6 +19,10 @@ set_target_properties(qmlwebkitexperimentalplugin PROPERTIES AUTOMOC ON ) +if (COMPILER_IS_GCC_OR_CLANG) + target_compile_options(qmlwebkitexperimentalplugin PRIVATE -frtti) +endif () + add_custom_target( qmlwebkitexperimentalplugin-files ALL COMMAND ${CMAKE_COMMAND} -E copy_if_different qmldir "${CMAKE_BINARY_DIR}/imports/QtWebKit/experimental/qmldir" diff --git a/Source/WebKit2/PlatformQt.cmake b/Source/WebKit2/PlatformQt.cmake index e920902f4..f233e3cd9 100644 --- a/Source/WebKit2/PlatformQt.cmake +++ b/Source/WebKit2/PlatformQt.cmake @@ -217,6 +217,19 @@ list(APPEND WebKit2_SOURCES WebProcess/qt/WebProcessQt.cpp ) +if (COMPILER_IS_GCC_OR_CLANG) + set_source_files_properties( + UIProcess/API/qt/qquicknetworkreply.cpp + UIProcess/API/qt/qquicknetworkrequest.cpp + UIProcess/API/qt/qquickurlschemedelegate.cpp + UIProcess/API/qt/qquickwebpage.cpp + UIProcess/API/qt/qquickwebview.cpp + UIProcess/API/qt/qwebiconimageprovider.cpp + PROPERTIES + COMPILE_FLAGS -frtti + ) +endif () + qt5_add_resources(WebKit2_SOURCES WebKit2.qrc ) diff --git a/Source/cmake/OptionsQt.cmake b/Source/cmake/OptionsQt.cmake index 5e5eb6c22..bce9ea252 100644 --- a/Source/cmake/OptionsQt.cmake +++ b/Source/cmake/OptionsQt.cmake @@ -172,7 +172,10 @@ macro(QTWEBKIT_SEPARATE_DEBUG_INFO _target _target_debug) endif () endmacro() -set(CMAKE_MACOSX_RPATH ON) +if (APPLE) + set(CMAKE_MACOSX_RPATH ON) + set(CMAKE_FIND_FRAMEWORK LAST) +endif () add_definitions(-DBUILDING_QT__=1) add_definitions(-DQT_NO_EXCEPTIONS) diff --git a/Tools/qt/conanfile.py b/Tools/qt/conanfile.py index c292ce221..6617d3499 100644 --- a/Tools/qt/conanfile.py +++ b/Tools/qt/conanfile.py @@ -35,11 +35,6 @@ class QtWebKitConan(ConanFile): generators = "cmake", "virtualenv", "txt" exports_sources = "../../*" no_copy_source = True - requires = ( - "libjpeg-turbo/2.0.3@qtproject/stable", - "libpng/1.6.37", - "libwebp/1.1.0" - ) options = { "qt": "ANY", "cmakeargs": "ANY", @@ -84,18 +79,31 @@ class QtWebKitConan(ConanFile): if not tools.which("flex"): self.build_requires("flex_installer/2.6.4@bincrafters/stable") if not tools.which("ninja"): - self.build_requires("ninja/1.9.0") + self.build_requires("ninja/[>=1.9.0]") if not tools.which("cmake"): - self.build_requires("cmake/3.16.4") + self.build_requires("cmake/[>=3.18.2]") def requirements(self): # TODO: Handle case when custom ICU is needed (AppStore etc., MACOS_USE_SYSTEM_ICU=OFF in CMake) - if self.settings.os != 'Macos': + if self.settings.os == 'Windows': self.requires("icu/65.1@qtproject/stable") self.requires("libxml2/2.9.10@qtproject/stable") self.requires("libxslt/1.1.34@qtproject/stable") self.requires("zlib/1.2.11") - self.requires("sqlite3/3.31.1") + + if self.settings.os == 'Windows' or self.settings.os == 'Macos': + # FIXME: Pass Qt version, handle more versions + qt_version = "5.15.1" + if qt_version == "5.14.1": + self.requires("sqlite3/3.30.1") + self.requires("libjpeg-turbo/2.0.3@qtproject/stable") + self.requires("libpng/1.6.37") + if qt_version == "5.15.1": + self.requires("sqlite3/3.32.3") + self.requires("libjpeg-turbo/2.0.5@qtproject/stable") + self.requires("libpng/1.6.37") + + self.requires("libwebp/1.1.0") def build(self): cmake = CMake(self, set_cmake_flags=True) -- cgit v1.2.1