!14 upgrade to alpha4 and drop python2
From: @jackie_wu123 Reviewed-by: @small_leek Signed-off-by: @small_leek
This commit is contained in:
commit
666c215059
@ -1,33 +0,0 @@
|
|||||||
From fbd1de045999d1e5b5dcae7ac6c1e674ac0044fe Mon Sep 17 00:00:00 2001
|
|
||||||
From: Dmitry Shachnev <mitya57@gmail.com>
|
|
||||||
Date: Sat, 24 Feb 2018 15:09:53 +0300
|
|
||||||
Subject: [PATCH 12/14] [cmake] Fix include dir in the generated pkg-config
|
|
||||||
files
|
|
||||||
|
|
||||||
---
|
|
||||||
Source/WebKit/PlatformQt.cmake | 2 ++
|
|
||||||
1 file changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/Source/WebKit/PlatformQt.cmake b/Source/WebKit/PlatformQt.cmake
|
|
||||||
index 6fe440be800..28976b611cd 100644
|
|
||||||
--- a/Source/WebKit/PlatformQt.cmake
|
|
||||||
+++ b/Source/WebKit/PlatformQt.cmake
|
|
||||||
@@ -503,6 +503,7 @@ if (NOT MACOS_BUILD_FRAMEWORKS)
|
|
||||||
ecm_generate_pkgconfig_file(
|
|
||||||
BASE_NAME Qt5WebKit
|
|
||||||
DESCRIPTION "Qt WebKit module"
|
|
||||||
+ INCLUDE_INSTALL_DIR "${KDE_INSTALL_INCLUDEDIR}/QtWebKit"
|
|
||||||
DEPS "${WEBKIT_PKGCONGIG_DEPS}"
|
|
||||||
FILENAME_VAR WebKit_PKGCONFIG_FILENAME
|
|
||||||
)
|
|
||||||
@@ -728,6 +729,7 @@ if (NOT MACOS_BUILD_FRAMEWORKS)
|
|
||||||
ecm_generate_pkgconfig_file(
|
|
||||||
BASE_NAME Qt5WebKitWidgets
|
|
||||||
DESCRIPTION "Qt WebKitWidgets module"
|
|
||||||
+ INCLUDE_INSTALL_DIR "${KDE_INSTALL_INCLUDEDIR}/QtWebKitWidgets"
|
|
||||||
DEPS "${WEBKITWIDGETS_PKGCONFIG_DEPS}"
|
|
||||||
FILENAME_VAR WebKitWidgets_PKGCONFIG_FILENAME
|
|
||||||
)
|
|
||||||
--
|
|
||||||
2.17.1
|
|
||||||
|
|
||||||
@ -1,204 +0,0 @@
|
|||||||
From 4ef333ab0b60ca86e9a44cae0b77d1f752892a94 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Konstantin Tokarev <annulen@yandex.ru>
|
|
||||||
Date: Tue, 27 Jun 2017 16:34:00 +0300
|
|
||||||
Subject: [PATCH 016/143] [cmake] Import ECMEnableSanitizers
|
|
||||||
|
|
||||||
Change-Id: I1417511f0734e8d03bf8d55c5766b57388ed5504
|
|
||||||
---
|
|
||||||
Source/cmake/ECMEnableSanitizers.cmake | 173 +++++++++++++++++++++++++
|
|
||||||
Source/cmake/OptionsQt.cmake | 1 +
|
|
||||||
2 files changed, 174 insertions(+)
|
|
||||||
create mode 100644 Source/cmake/ECMEnableSanitizers.cmake
|
|
||||||
|
|
||||||
diff --git a/Source/cmake/ECMEnableSanitizers.cmake b/Source/cmake/ECMEnableSanitizers.cmake
|
|
||||||
new file mode 100644
|
|
||||||
index 00000000000..06cc0b66d86
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/Source/cmake/ECMEnableSanitizers.cmake
|
|
||||||
@@ -0,0 +1,173 @@
|
|
||||||
+#.rst:
|
|
||||||
+# ECMEnableSanitizers
|
|
||||||
+# -------------------
|
|
||||||
+#
|
|
||||||
+# Enable compiler sanitizer flags.
|
|
||||||
+#
|
|
||||||
+# The following sanitizers are supported:
|
|
||||||
+#
|
|
||||||
+# - Address Sanitizer
|
|
||||||
+# - Memory Sanitizer
|
|
||||||
+# - Thread Sanitizer
|
|
||||||
+# - Leak Sanitizer
|
|
||||||
+# - Undefined Behaviour Sanitizer
|
|
||||||
+#
|
|
||||||
+# All of them are implemented in Clang, depending on your version, and
|
|
||||||
+# there is an work in progress in GCC, where some of them are currently
|
|
||||||
+# implemented.
|
|
||||||
+#
|
|
||||||
+# This module will check your current compiler version to see if it
|
|
||||||
+# supports the sanitizers that you want to enable
|
|
||||||
+#
|
|
||||||
+# Usage
|
|
||||||
+# =====
|
|
||||||
+#
|
|
||||||
+# Simply add::
|
|
||||||
+#
|
|
||||||
+# include(ECMEnableSanitizers)
|
|
||||||
+#
|
|
||||||
+# to your ``CMakeLists.txt``. Note that this module is included in
|
|
||||||
+# KDECompilerSettings, so projects using that module do not need to also
|
|
||||||
+# include this one.
|
|
||||||
+#
|
|
||||||
+# The sanitizers are not enabled by default. Instead, you must set
|
|
||||||
+# ``ECM_ENABLE_SANITIZERS`` (either in your ``CMakeLists.txt`` or on the
|
|
||||||
+# command line) to a semicolon-separated list of sanitizers you wish to enable.
|
|
||||||
+# The options are:
|
|
||||||
+#
|
|
||||||
+# - address
|
|
||||||
+# - memory
|
|
||||||
+# - thread
|
|
||||||
+# - leak
|
|
||||||
+# - undefined
|
|
||||||
+#
|
|
||||||
+# The sanitizers "address", "memory" and "thread" are mutually exclusive. You
|
|
||||||
+# cannot enable two of them in the same build.
|
|
||||||
+#
|
|
||||||
+# "leak" requires the "address" sanitizer.
|
|
||||||
+#
|
|
||||||
+# .. note::
|
|
||||||
+#
|
|
||||||
+# To reduce the overhead induced by the instrumentation of the sanitizers, it
|
|
||||||
+# is advised to enable compiler optimizations (``-O1`` or higher).
|
|
||||||
+#
|
|
||||||
+# Example
|
|
||||||
+# =======
|
|
||||||
+#
|
|
||||||
+# This is an example of usage::
|
|
||||||
+#
|
|
||||||
+# mkdir build
|
|
||||||
+# cd build
|
|
||||||
+# cmake -DECM_ENABLE_SANITIZERS='address;leak;undefined' ..
|
|
||||||
+#
|
|
||||||
+# .. note::
|
|
||||||
+#
|
|
||||||
+# Most of the sanitizers will require Clang. To enable it, use::
|
|
||||||
+#
|
|
||||||
+# -DCMAKE_CXX_COMPILER=clang++
|
|
||||||
+#
|
|
||||||
+# Since 1.3.0.
|
|
||||||
+
|
|
||||||
+#=============================================================================
|
|
||||||
+# Copyright 2014 Mathieu Tarral <mathieu.tarral@gmail.com>
|
|
||||||
+#
|
|
||||||
+# Redistribution and use in source and binary forms, with or without
|
|
||||||
+# modification, are permitted provided that the following conditions
|
|
||||||
+# are met:
|
|
||||||
+#
|
|
||||||
+# 1. Redistributions of source code must retain the copyright
|
|
||||||
+# notice, this list of conditions and the following disclaimer.
|
|
||||||
+# 2. Redistributions in binary form must reproduce the copyright
|
|
||||||
+# notice, this list of conditions and the following disclaimer in the
|
|
||||||
+# documentation and/or other materials provided with the distribution.
|
|
||||||
+# 3. The name of the author may not be used to endorse or promote products
|
|
||||||
+# derived from this software without specific prior written permission.
|
|
||||||
+#
|
|
||||||
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
||||||
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
||||||
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
||||||
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
+
|
|
||||||
+# MACRO check_compiler_version
|
|
||||||
+#-----------------------------
|
|
||||||
+macro (check_compiler_version gcc_required_version clang_required_version)
|
|
||||||
+ if (
|
|
||||||
+ (
|
|
||||||
+ CMAKE_CXX_COMPILER_ID MATCHES "GNU"
|
|
||||||
+ AND
|
|
||||||
+ CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${gcc_required_version}
|
|
||||||
+ )
|
|
||||||
+ OR
|
|
||||||
+ (
|
|
||||||
+ CMAKE_CXX_COMPILER_ID MATCHES "Clang"
|
|
||||||
+ AND
|
|
||||||
+ CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${clang_required_version}
|
|
||||||
+ )
|
|
||||||
+ )
|
|
||||||
+ # error !
|
|
||||||
+ message(FATAL_ERROR "You ask to enable the sanitizer ${CUR_SANITIZER},
|
|
||||||
+ but your compiler ${CMAKE_CXX_COMPILER_ID} version ${CMAKE_CXX_COMPILER_VERSION}
|
|
||||||
+ does not support it !
|
|
||||||
+ You should use at least GCC ${gcc_required_version} or Clang ${clang_required_version}
|
|
||||||
+ (99.99 means not implemented yet)")
|
|
||||||
+ endif ()
|
|
||||||
+endmacro ()
|
|
||||||
+
|
|
||||||
+# MACRO check_compiler_support
|
|
||||||
+#------------------------------
|
|
||||||
+macro (enable_sanitizer_flags sanitize_option)
|
|
||||||
+ if (${sanitize_option} MATCHES "address")
|
|
||||||
+ check_compiler_version("4.8" "3.1")
|
|
||||||
+ set(XSAN_COMPILE_FLAGS "-fsanitize=address -fno-omit-frame-pointer -fno-optimize-sibling-calls")
|
|
||||||
+ set(XSAN_LINKER_FLAGS "asan")
|
|
||||||
+ elseif (${sanitize_option} MATCHES "thread")
|
|
||||||
+ check_compiler_version("4.8" "3.1")
|
|
||||||
+ set(XSAN_COMPILE_FLAGS "-fsanitize=thread")
|
|
||||||
+ set(XSAN_LINKER_FLAGS "tsan")
|
|
||||||
+ elseif (${sanitize_option} MATCHES "memory")
|
|
||||||
+ check_compiler_version("99.99" "3.1")
|
|
||||||
+ set(XSAN_COMPILE_FLAGS "-fsanitize=memory")
|
|
||||||
+ elseif (${sanitize_option} MATCHES "leak")
|
|
||||||
+ check_compiler_version("4.9" "3.4")
|
|
||||||
+ set(XSAN_COMPILE_FLAGS "-fsanitize=leak")
|
|
||||||
+ set(XSAN_LINKER_FLAGS "lsan")
|
|
||||||
+ elseif (${sanitize_option} MATCHES "undefined")
|
|
||||||
+ check_compiler_version("4.9" "3.1")
|
|
||||||
+ set(XSAN_COMPILE_FLAGS "-fsanitize=undefined -fno-omit-frame-pointer -fno-optimize-sibling-calls")
|
|
||||||
+ else ()
|
|
||||||
+ message(FATAL_ERROR "Compiler sanitizer option \"${sanitize_option}\" not supported.")
|
|
||||||
+ endif ()
|
|
||||||
+endmacro ()
|
|
||||||
+
|
|
||||||
+if (ECM_ENABLE_SANITIZERS)
|
|
||||||
+ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
|
|
||||||
+ # for each element of the ECM_ENABLE_SANITIZERS list
|
|
||||||
+ foreach ( CUR_SANITIZER ${ECM_ENABLE_SANITIZERS} )
|
|
||||||
+ # lowercase filter
|
|
||||||
+ string(TOLOWER ${CUR_SANITIZER} CUR_SANITIZER)
|
|
||||||
+ # check option and enable appropriate flags
|
|
||||||
+ enable_sanitizer_flags ( ${CUR_SANITIZER} )
|
|
||||||
+ # TODO: GCC will not link pthread library if enabled ASan
|
|
||||||
+ if(CMAKE_C_COMPILER_ID MATCHES "Clang")
|
|
||||||
+ set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${XSAN_COMPILE_FLAGS}" )
|
|
||||||
+ endif()
|
|
||||||
+ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${XSAN_COMPILE_FLAGS}" )
|
|
||||||
+ if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
|
|
||||||
+ link_libraries(${XSAN_LINKER_FLAGS})
|
|
||||||
+ endif()
|
|
||||||
+ if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
|
||||||
+ string(REPLACE "-Wl,--no-undefined" "" CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS}")
|
|
||||||
+ string(REPLACE "-Wl,--no-undefined" "" CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS}")
|
|
||||||
+ endif ()
|
|
||||||
+ endforeach()
|
|
||||||
+ else()
|
|
||||||
+ message(STATUS "Tried to enable sanitizers (-DECM_ENABLE_SANITIZERS=${ECM_ENABLE_SANITIZERS}), \
|
|
||||||
+but compiler (${CMAKE_CXX_COMPILER_ID}) does not have sanitizer support")
|
|
||||||
+ endif()
|
|
||||||
+endif()
|
|
||||||
diff --git a/Source/cmake/OptionsQt.cmake b/Source/cmake/OptionsQt.cmake
|
|
||||||
index 463a091c787..0835e47aa72 100644
|
|
||||||
--- a/Source/cmake/OptionsQt.cmake
|
|
||||||
+++ b/Source/cmake/OptionsQt.cmake
|
|
||||||
@@ -1,4 +1,5 @@
|
|
||||||
include(FeatureSummary)
|
|
||||||
+include(ECMEnableSanitizers)
|
|
||||||
include(ECMPackageConfigHelpers)
|
|
||||||
|
|
||||||
set(ECM_MODULE_DIR ${CMAKE_MODULE_PATH})
|
|
||||||
--
|
|
||||||
2.17.1
|
|
||||||
|
|
||||||
@ -1,24 +0,0 @@
|
|||||||
From 5648446933f52fe479d0a9006f6393a81a790116 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Konstantin Tokarev <annulen@yandex.ru>
|
|
||||||
Date: Thu, 25 May 2017 00:49:22 +0300
|
|
||||||
Subject: [PATCH 031/143] Disable ES6 Proxy object
|
|
||||||
|
|
||||||
Change-Id: Ifd6404e254b242afa8dd563c03f9588b4b05ab93
|
|
||||||
---
|
|
||||||
Source/JavaScriptCore/runtime/JSGlobalObject.cpp | 3 +
|
|
||||||
91 files changed, 17 insertions(+), 1379 deletions(-)
|
|
||||||
diff --git a/Source/JavaScriptCore/runtime/JSGlobalObject.cpp b/Source/JavaScriptCore/runtime/JSGlobalObject.cpp
|
|
||||||
index 9e613a21215..7d57590b4c5 100644
|
|
||||||
--- a/Source/JavaScriptCore/runtime/JSGlobalObject.cpp
|
|
||||||
+++ b/Source/JavaScriptCore/runtime/JSGlobalObject.cpp
|
|
||||||
@@ -458,7 +458,10 @@ m_ ## lowerName ## Prototype->putDirectWithoutTransition(vm, vm.propertyNames->c
|
|
||||||
putDirectWithoutTransition(vm, vm.propertyNames->TypeError, m_typeErrorConstructor.get(), DontEnum);
|
|
||||||
putDirectWithoutTransition(vm, vm.propertyNames->URIError, m_URIErrorConstructor.get(), DontEnum);
|
|
||||||
|
|
||||||
+#if !PLATFORM(QT)
|
|
||||||
+ // Disable ES6 Proxy because our implementation is not compliant with what real world code expects
|
|
||||||
putDirectWithoutTransition(vm, vm.propertyNames->Proxy, ProxyConstructor::create(vm, ProxyConstructor::createStructure(vm, this, m_functionPrototype.get())), DontEnum);
|
|
||||||
+#endif
|
|
||||||
|
|
||||||
|
|
||||||
#define PUT_CONSTRUCTOR_FOR_SIMPLE_TYPE(capitalName, lowerName, properName, instanceType, jsName) \
|
|
||||||
@ -1,156 +0,0 @@
|
|||||||
From 0325d51c4a2a05fb11b93f0c99d1d08976aac47d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Konstantin Tokarev <annulen@yandex.ru>
|
|
||||||
Date: Thu, 28 Dec 2017 02:22:58 +0300
|
|
||||||
Subject: [PATCH 111/143] [ECM] Update ECMGeneratePkgConfigFile to latest
|
|
||||||
version, fill in DESCRIPTION
|
|
||||||
|
|
||||||
Change-Id: Ib9252a02badeb2be4d8da74c9ab38195ded92afd
|
|
||||||
---
|
|
||||||
Source/WebKit/PlatformQt.cmake | 2 +
|
|
||||||
Source/cmake/ECMGeneratePkgConfigFile.cmake | 60 ++++++++++++++++-----
|
|
||||||
2 files changed, 50 insertions(+), 12 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/Source/WebKit/PlatformQt.cmake b/Source/WebKit/PlatformQt.cmake
|
|
||||||
index cf5f3670040..909efc00dba 100644
|
|
||||||
--- a/Source/WebKit/PlatformQt.cmake
|
|
||||||
+++ b/Source/WebKit/PlatformQt.cmake
|
|
||||||
@@ -502,6 +502,7 @@ endif ()
|
|
||||||
if (NOT MACOS_BUILD_FRAMEWORKS)
|
|
||||||
ecm_generate_pkgconfig_file(
|
|
||||||
BASE_NAME Qt5WebKit
|
|
||||||
+ DESCRIPTION "Qt WebKit module"
|
|
||||||
DEPS "${WEBKIT_PKGCONGIG_DEPS}"
|
|
||||||
FILENAME_VAR WebKit_PKGCONFIG_FILENAME
|
|
||||||
)
|
|
||||||
@@ -726,6 +727,7 @@ install(
|
|
||||||
if (NOT MACOS_BUILD_FRAMEWORKS)
|
|
||||||
ecm_generate_pkgconfig_file(
|
|
||||||
BASE_NAME Qt5WebKitWidgets
|
|
||||||
+ DESCRIPTION "Qt WebKitWidgets module"
|
|
||||||
DEPS "${WEBKITWIDGETS_PKGCONFIG_DEPS}"
|
|
||||||
FILENAME_VAR WebKitWidgets_PKGCONFIG_FILENAME
|
|
||||||
)
|
|
||||||
diff --git a/Source/cmake/ECMGeneratePkgConfigFile.cmake b/Source/cmake/ECMGeneratePkgConfigFile.cmake
|
|
||||||
index b4e68663038..09d7e2b476d 100644
|
|
||||||
--- a/Source/cmake/ECMGeneratePkgConfigFile.cmake
|
|
||||||
+++ b/Source/cmake/ECMGeneratePkgConfigFile.cmake
|
|
||||||
@@ -16,6 +16,7 @@
|
|
||||||
# [INCLUDE_INSTALL_DIR <dir>]
|
|
||||||
# [LIB_INSTALL_DIR <dir>]
|
|
||||||
# [DEFINES -D<variable=value>...]
|
|
||||||
+# [DESCRIPTION <library description>]
|
|
||||||
# [INSTALL])
|
|
||||||
#
|
|
||||||
# ``BASE_NAME`` is the name of the module. It's the name projects will use to
|
|
||||||
@@ -42,6 +43,10 @@
|
|
||||||
# ``DEFINES`` is a list of preprocessor defines that it is recommended users of
|
|
||||||
# the library pass to the compiler when using it.
|
|
||||||
#
|
|
||||||
+# ``DESCRIPTION`` describes what this library is. If it's not specified, CMake
|
|
||||||
+# will first try to get the description from the metainfo.yaml file or will
|
|
||||||
+# create one based on ``LIB_NAME``.
|
|
||||||
+#
|
|
||||||
# ``INSTALL`` will cause the module to be installed to the ``pkgconfig``
|
|
||||||
# subdirectory of ``LIB_INSTALL_DIR``, unless the ``ECM_PKGCONFIG_INSTALL_DIR``
|
|
||||||
# cache variable is set to something different. Note that the first call to
|
|
||||||
@@ -66,24 +71,39 @@
|
|
||||||
# )
|
|
||||||
#
|
|
||||||
# Since 1.3.0.
|
|
||||||
+# ``DESCRIPTION`` available since 5.1.41
|
|
||||||
+#
|
|
||||||
|
|
||||||
#=============================================================================
|
|
||||||
# Copyright 2014 Aleix Pol Gonzalez <aleixpol@kde.org>
|
|
||||||
# Copyright 2014 David Faure <faure@kde.org>
|
|
||||||
#
|
|
||||||
-# Distributed under the OSI-approved BSD License (the "License");
|
|
||||||
-# see accompanying file COPYING-CMAKE-SCRIPTS for details.
|
|
||||||
-#
|
|
||||||
-# This software is distributed WITHOUT ANY WARRANTY; without even the
|
|
||||||
-# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
||||||
-# See the License for more information.
|
|
||||||
-#=============================================================================
|
|
||||||
-# (To distribute this file outside of extra-cmake-modules, substitute the full
|
|
||||||
-# License text for the above reference.)
|
|
||||||
+# Redistribution and use in source and binary forms, with or without
|
|
||||||
+# modification, are permitted provided that the following conditions
|
|
||||||
+# are met:
|
|
||||||
+#
|
|
||||||
+# 1. Redistributions of source code must retain the copyright
|
|
||||||
+# notice, this list of conditions and the following disclaimer.
|
|
||||||
+# 2. Redistributions in binary form must reproduce the copyright
|
|
||||||
+# notice, this list of conditions and the following disclaimer in the
|
|
||||||
+# documentation and/or other materials provided with the distribution.
|
|
||||||
+# 3. The name of the author may not be used to endorse or promote products
|
|
||||||
+# derived from this software without specific prior written permission.
|
|
||||||
+#
|
|
||||||
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
||||||
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
||||||
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
||||||
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
||||||
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
||||||
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
||||||
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
function(ECM_GENERATE_PKGCONFIG_FILE)
|
|
||||||
set(options INSTALL)
|
|
||||||
- set(oneValueArgs BASE_NAME LIB_NAME FILENAME_VAR INCLUDE_INSTALL_DIR LIB_INSTALL_DIR)
|
|
||||||
+ set(oneValueArgs BASE_NAME LIB_NAME FILENAME_VAR INCLUDE_INSTALL_DIR LIB_INSTALL_DIR DESCRIPTION)
|
|
||||||
set(multiValueArgs DEPS DEFINES)
|
|
||||||
|
|
||||||
cmake_parse_arguments(EGPF "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
|
||||||
@@ -119,6 +139,17 @@ function(ECM_GENERATE_PKGCONFIG_FILE)
|
|
||||||
set(EGPF_LIB_INSTALL_DIR "lib")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
+ if(NOT EGPF_DESCRIPTION)
|
|
||||||
+ if(EXISTS ${CMAKE_SOURCE_DIR}/metainfo.yaml)
|
|
||||||
+ file(STRINGS "${CMAKE_SOURCE_DIR}/metainfo.yaml" _EGPF_METAINFO_DESCRIPTION_STRING REGEX "^description:.*$")
|
|
||||||
+ if(_EGPF_METAINFO_DESCRIPTION_STRING)
|
|
||||||
+ string(REGEX REPLACE "^description:[ ]*(.*)" "\\1" EGPF_DESCRIPTION ${_EGPF_METAINFO_DESCRIPTION_STRING})
|
|
||||||
+ endif()
|
|
||||||
+ endif()
|
|
||||||
+ if("${EGPF_DESCRIPTION}" STREQUAL "")
|
|
||||||
+ set(EGPF_DESCRIPTION "${EGPF_LIB_NAME} library.")
|
|
||||||
+ endif()
|
|
||||||
+ endif()
|
|
||||||
|
|
||||||
set(PKGCONFIG_TARGET_BASENAME ${EGPF_BASE_NAME})
|
|
||||||
set(PKGCONFIG_TARGET_LIBNAME ${EGPF_LIB_NAME})
|
|
||||||
@@ -135,6 +166,7 @@ function(ECM_GENERATE_PKGCONFIG_FILE)
|
|
||||||
else()
|
|
||||||
set(PKGCONFIG_TARGET_LIBS "${CMAKE_INSTALL_PREFIX}/${EGPF_LIB_INSTALL_DIR}")
|
|
||||||
endif()
|
|
||||||
+ set(PKGCONFIG_TARGET_DESCRIPTION "${EGPF_DESCRIPTION}")
|
|
||||||
set(PKGCONFIG_TARGET_DEFINES "")
|
|
||||||
if(EGPF_DEFINES)
|
|
||||||
set(PKGCONFIG_TARGET_DEFINES "${EGPF_DEFINE}")
|
|
||||||
@@ -148,6 +180,7 @@ function(ECM_GENERATE_PKGCONFIG_FILE)
|
|
||||||
file(WRITE ${PKGCONFIG_FILENAME}
|
|
||||||
"
|
|
||||||
Name: ${PKGCONFIG_TARGET_LIBNAME}
|
|
||||||
+Description: ${PKGCONFIG_TARGET_DESCRIPTION}
|
|
||||||
Version: ${PROJECT_VERSION}
|
|
||||||
Libs: -L${CMAKE_INSTALL_PREFIX}/${EGPF_LIB_INSTALL_DIR} -l${PKGCONFIG_TARGET_LIBNAME}
|
|
||||||
Cflags: ${PKGCONFIG_TARGET_INCLUDES} ${PKGCONFIG_TARGET_DEFINES}
|
|
||||||
@@ -156,8 +189,11 @@ Requires: ${PKGCONFIG_TARGET_DEPS}
|
|
||||||
)
|
|
||||||
|
|
||||||
if(EGPF_INSTALL)
|
|
||||||
- set(ECM_PKGCONFIG_INSTALL_DIR "${EGPF_LIB_INSTALL_DIR}/pkgconfig" CACHE PATH "The directory where pkgconfig will be installed to.")
|
|
||||||
+ if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
|
|
||||||
+ set(ECM_PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/libdata/pkgconfig" CACHE PATH "The directory where pkgconfig will be installed to.")
|
|
||||||
+ else()
|
|
||||||
+ set(ECM_PKGCONFIG_INSTALL_DIR "${EGPF_LIB_INSTALL_DIR}/pkgconfig" CACHE PATH "The directory where pkgconfig will be installed to.")
|
|
||||||
+ endif()
|
|
||||||
install(FILES ${PKGCONFIG_FILENAME} DESTINATION ${ECM_PKGCONFIG_INSTALL_DIR})
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
-
|
|
||||||
--
|
|
||||||
2.17.1
|
|
||||||
|
|
||||||
@ -1,55 +0,0 @@
|
|||||||
From dc02ec4080010e33b737db6491d71d6bb961a77d Mon Sep 17 00:00:00 2001
|
|
||||||
From: "commit-queue@webkit.org"
|
|
||||||
<commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
|
|
||||||
Date: Fri, 4 Oct 2019 21:51:37 +0000
|
|
||||||
Subject: [PATCH] Fix build with icu 65.1
|
|
||||||
https://bugs.webkit.org/show_bug.cgi?id=202600
|
|
||||||
|
|
||||||
Patch by Heiko Becker <heirecka@exherbo.org> on 2019-10-04
|
|
||||||
Reviewed by Konstantin Tokarev.
|
|
||||||
|
|
||||||
Source/WebCore:
|
|
||||||
|
|
||||||
* dom/Document.cpp:
|
|
||||||
(WebCore::isValidNameNonASCII):
|
|
||||||
(WebCore::Document::parseQualifiedName):
|
|
||||||
|
|
||||||
Source/WTF:
|
|
||||||
|
|
||||||
* wtf/URLHelpers.cpp:
|
|
||||||
(WTF::URLHelpers::allCharactersInIDNScriptWhiteList):
|
|
||||||
|
|
||||||
Change-Id: I1b087322cbae43fbe155facdf933717ac8569b6c
|
|
||||||
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@250747 268f45cc-cd09-0410-ab3c-d52691b4dbfc
|
|
||||||
---
|
|
||||||
Source/WebCore/dom/Document.cpp | 6 +++---
|
|
||||||
1 files changed, 3 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/Source/WebCore/dom/Document.cpp b/Source/WebCore/dom/Document.cpp
|
|
||||||
index 1bca2d0a66f8..19355f166019 100644
|
|
||||||
--- a/Source/WebCore/dom/Document.cpp
|
|
||||||
+++ b/Source/WebCore/dom/Document.cpp
|
|
||||||
@@ -4407,12 +4407,12 @@ static bool isValidNameNonASCII(const UChar* characters, unsigned length)
|
|
||||||
unsigned i = 0;
|
|
||||||
|
|
||||||
UChar32 c;
|
|
||||||
- U16_NEXT(characters, i, length, c)
|
|
||||||
+ U16_NEXT(characters, i, length, c);
|
|
||||||
if (!isValidNameStart(c))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
while (i < length) {
|
|
||||||
- U16_NEXT(characters, i, length, c)
|
|
||||||
+ U16_NEXT(characters, i, length, c);
|
|
||||||
if (!isValidNamePart(c))
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
@@ -4474,7 +4474,7 @@ bool Document::parseQualifiedName(const String& qualifiedName, String& prefix, S
|
|
||||||
|
|
||||||
for (unsigned i = 0; i < length;) {
|
|
||||||
UChar32 c;
|
|
||||||
- U16_NEXT(qualifiedName, i, length, c)
|
|
||||||
+ U16_NEXT(qualifiedName, i, length, c);
|
|
||||||
if (c == ':') {
|
|
||||||
if (sawColon) {
|
|
||||||
ec = NAMESPACE_ERR;
|
|
||||||
46
fix_build_with_bison.patch
Normal file
46
fix_build_with_bison.patch
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
From d92b11fea65364fefa700249bd3340e0cd4c5b31 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dmitry Shachnev <mitya57@gmail.com>
|
||||||
|
Date: Tue, 4 Aug 2020 21:04:06 +0300
|
||||||
|
Subject: [PATCH] Let Bison generate the header directly, to fix build with
|
||||||
|
Bison 3.7
|
||||||
|
|
||||||
|
Starting with Bison 3.7, the generated C++ file #include's the header
|
||||||
|
by default, instead of duplicating it. So we should not delete it.
|
||||||
|
|
||||||
|
Remove the code to add #ifdef guards to the header, since Bison adds
|
||||||
|
them itself since version 2.6.3.
|
||||||
|
---
|
||||||
|
Source/WebCore/css/makegrammar.pl | 21 +--------------------
|
||||||
|
1 file changed, 1 insertion(+), 20 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Source/WebCore/css/makegrammar.pl b/Source/WebCore/css/makegrammar.pl
|
||||||
|
index 5d63b08102eb..9435701c7061 100644
|
||||||
|
--- a/Source/WebCore/css/makegrammar.pl
|
||||||
|
+++ b/Source/WebCore/css/makegrammar.pl
|
||||||
|
@@ -73,25 +73,6 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
my $fileBase = File::Spec->join($outputDir, $filename);
|
||||||
|
-my @bisonCommand = ($bison, "-d", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp");
|
||||||
|
+my @bisonCommand = ($bison, "--defines=$fileBase.h", "-p", $symbolsPrefix, $grammarFilePath, "-o", "$fileBase.cpp");
|
||||||
|
push @bisonCommand, "--no-lines" if $^O eq "MSWin32"; # Work around bug in bison >= 3.0 on Windows where it puts backslashes into #line directives.
|
||||||
|
system(@bisonCommand) == 0 or die;
|
||||||
|
-
|
||||||
|
-open HEADER, ">$fileBase.h" or die;
|
||||||
|
-print HEADER << "EOF";
|
||||||
|
-#ifndef CSSGRAMMAR_H
|
||||||
|
-#define CSSGRAMMAR_H
|
||||||
|
-EOF
|
||||||
|
-
|
||||||
|
-open HPP, "<$fileBase.cpp.h" or open HPP, "<$fileBase.hpp" or die;
|
||||||
|
-while (<HPP>) {
|
||||||
|
- print HEADER;
|
||||||
|
-}
|
||||||
|
-close HPP;
|
||||||
|
-
|
||||||
|
-print HEADER "#endif\n";
|
||||||
|
-close HEADER;
|
||||||
|
-
|
||||||
|
-unlink("$fileBase.cpp.h");
|
||||||
|
-unlink("$fileBase.hpp");
|
||||||
|
-
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -Naur qtwebkit/Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp qtwebkit.new/Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp
|
|
||||||
--- qtwebkit/Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp 2017-10-23 17:25:58.941518553 +0200
|
|
||||||
+++ qtwebkit.new/Source/WebKit/qt/WebCoreSupport/QWebFrameAdapter.cpp 2017-10-23 17:27:44.223917497 +0200
|
|
||||||
@@ -961,6 +961,8 @@
|
|
||||||
FrameView* view = frame->view();
|
|
||||||
ASSERT(view);
|
|
||||||
view->resize(size);
|
|
||||||
+ if (view->needsLayout())
|
|
||||||
+ view->layout();
|
|
||||||
view->adjustViewSize();
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,83 +1,187 @@
|
|||||||
%undefine _annotated_build
|
%undefine _annotated_build
|
||||||
|
|
||||||
|
%global qt_module qtwebkit
|
||||||
|
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
%global add_to_license_files() mkdir -p _license_files ; cp -p %1 _license_files/$(echo '%1' | sed -e 's!/!.!g')
|
|
||||||
|
%global prerel alpha4
|
||||||
|
%global prerel_tag -%{prerel}
|
||||||
|
|
||||||
|
## NOTE: Lots of files in various subdirectories have the same name (such as
|
||||||
|
## "LICENSE") so this short macro allows us to distinguish them by using their
|
||||||
|
## directory names (from the source tree) as prefixes for the files.
|
||||||
|
%global add_to_license_files() \
|
||||||
|
mkdir -p _license_files ; \
|
||||||
|
cp -p %1 _license_files/$(echo '%1' | sed -e 's!/!.!g')
|
||||||
|
|
||||||
|
Name: qt5-%{qt_module}
|
||||||
|
Version: 5.212.0
|
||||||
|
Release: 4
|
||||||
|
Summary: Qt5 - QtWebKit components
|
||||||
|
|
||||||
|
License: LGPLv2 and BSD
|
||||||
|
URL: https://github.com/qtwebkit/qtwebkit
|
||||||
|
Source0: https://github.com/qtwebkit/qtwebkit/releases/download/%{qt_module}-%{version}%{?prerel_tag}/%{qt_module}-%{version}%{?prerel_tag}.tar.xz
|
||||||
|
|
||||||
|
# Patch for new CMake policy CMP0071 to explicitly use old behaviour.
|
||||||
|
Patch2: qtwebkit-5.212.0_cmake_cmp0071.patch
|
||||||
|
Patch3: fix_build_with_bison.patch
|
||||||
|
|
||||||
|
BuildRequires: bison
|
||||||
|
BuildRequires: cmake
|
||||||
|
BuildRequires: flex
|
||||||
|
BuildRequires: pkgconfig(fontconfig)
|
||||||
|
BuildRequires: pkgconfig(libwoff2dec)
|
||||||
|
BuildRequires: pkgconfig(gio-2.0)
|
||||||
|
BuildRequires: pkgconfig(glib-2.0)
|
||||||
|
BuildRequires: gperf
|
||||||
|
BuildRequires: pkgconfig(gstreamer-1.0)
|
||||||
|
BuildRequires: pkgconfig(gstreamer-app-1.0)
|
||||||
|
BuildRequires: hyphen-devel
|
||||||
|
BuildRequires: pkgconfig(icu-i18n) pkgconfig(icu-uc)
|
||||||
|
BuildRequires: libjpeg-devel
|
||||||
|
BuildRequires: pkgconfig(libpng)
|
||||||
|
BuildRequires: pkgconfig(libwebp)
|
||||||
|
BuildRequires: pkgconfig(xcomposite)
|
||||||
|
BuildRequires: pkgconfig(xrender)
|
||||||
|
BuildRequires: pkgconfig(libxslt)
|
||||||
|
BuildRequires: pkgconfig(gl)
|
||||||
|
BuildRequires: pkgconfig(gstreamer-gl-1.0)
|
||||||
|
BuildRequires: pkgconfig(gstreamer-mpegts-1.0)
|
||||||
|
BuildRequires: perl-generators
|
||||||
|
BuildRequires: perl(File::Copy)
|
||||||
|
BuildRequires: python3
|
||||||
|
BuildRequires: qt5-qtbase-devel
|
||||||
|
BuildRequires: qt5-qtdeclarative-devel
|
||||||
|
%if ! 0%{?bootstrap}
|
||||||
|
BuildRequires: qt5-qtlocation-devel
|
||||||
|
BuildRequires: qt5-qtsensors-devel
|
||||||
|
BuildRequires: qt5-qtwebchannel-devel
|
||||||
|
%endif
|
||||||
|
BuildRequires: pkgconfig(ruby)
|
||||||
|
BuildRequires: rubygems
|
||||||
|
BuildRequires: pkgconfig(sqlite3)
|
||||||
|
BuildRequires: pkgconfig(zlib)
|
||||||
|
# workaround bad embedded png files, https://bugzilla.redhat.com/1639422
|
||||||
|
BuildRequires: findutils
|
||||||
|
BuildRequires: pngcrush
|
||||||
|
|
||||||
|
BuildRequires: qt5-qtbase-private-devel
|
||||||
|
%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
|
||||||
|
BuildRequires: qt5-qtdeclarative-private-devel
|
||||||
|
%{?_qt5:Requires: qt5-qtdeclarative%{?_isa} = %{_qt5_version}}
|
||||||
|
|
||||||
|
|
||||||
|
# filter qml provides
|
||||||
%global __provides_exclude_from ^%{_qt5_archdatadir}/qml/.*\\.so$
|
%global __provides_exclude_from ^%{_qt5_archdatadir}/qml/.*\\.so$
|
||||||
|
|
||||||
Name: qt5-qtwebkit
|
# We're supposed to specify versions here, but these crap Google libs don't do
|
||||||
Version: 5.212.0
|
# normal releases. Accordingly, they're not suitable to be system libs.
|
||||||
Release: 3
|
Provides: bundled(angle)
|
||||||
Summary: QtWebKit components of Qt5
|
Provides: bundled(brotli)
|
||||||
License: LGPLv2 and BSD
|
Provides: bundled(woff2)
|
||||||
URL: https://github.com/annulen/webkit
|
|
||||||
Source0: https://github.com/annulen/webkit/releases/download/qtwebkit-%{version}-alpha2/qtwebkit-%{version}-alpha2.tar.xz
|
|
||||||
|
|
||||||
BuildRequires: bison cmake flex pkgconfig(fontconfig) pkgconfig(gio-2.0) pkgconfig(glib-2.0) gperf
|
|
||||||
BuildRequires: pkgconfig(gstreamer-1.0) pkgconfig(gstreamer-app-1.0) hyphen-devel pkgconfig(icu-i18n)
|
|
||||||
BuildRequires: pkgconfig(icu-uc) libjpeg-devel pkgconfig(libpng) pkgconfig(libwebp) pkgconfig(xcomposite)
|
|
||||||
BuildRequires: pkgconfig(xrender) pkgconfig(libxslt) pkgconfig(gl) pkgconfig(gstreamer-gl-1.0)
|
|
||||||
BuildRequires: pkgconfig(gstreamer-mpegts-1.0) perl-generators python2 qt5-qtbase-devel findutils
|
|
||||||
BuildRequires: qt5-qtdeclarative-devel pkgconfig(ruby) rubygems pkgconfig(sqlite3) pkgconfig(zlib)
|
|
||||||
BuildRequires: qt5-qtbase-private-devel qt5-qtdeclarative-private-devel
|
|
||||||
%if ! 0%{?bootstrap}
|
|
||||||
BuildRequires: qt5-qtlocation-devel qt5-qtsensors-devel qt5-qtwebchannel-devel
|
|
||||||
Provides: bundled(angle) bundled(brotli) bundled(woff2)
|
|
||||||
%endif
|
|
||||||
%{?_qt5:Requires: %{_qt5} = %{_qt5_version}}
|
|
||||||
%{?_qt5:Requires: qt5-qtdeclarative = %{_qt5_version}}
|
|
||||||
|
|
||||||
# Upstream patch to fix pagewidth issue with trojita
|
|
||||||
# https://github.com/annulen/webkit/issues/511
|
|
||||||
# https://github.com/annulen/webkit/commit/6faf11215e1af27d35e921ae669aa0251a01a1ab
|
|
||||||
# https://github.com/annulen/webkit/commit/76420459a13d9440b41864c93cb4ebb404bdab55
|
|
||||||
Patch0000: qt5-qtwebkit-5.212.0-alpha2-fix-pagewidth.patch
|
|
||||||
# Patch from Kevin Kofler to fix https://github.com/annulen/webkit/issues/573
|
|
||||||
Patch0001: qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference.patch
|
|
||||||
# Patch for new CMake policy CMP0071 to explicitly use old behaviour.
|
|
||||||
Patch0002: qtwebkit-5.212.0_cmake_cmp0071.patch
|
|
||||||
# Patch to fix for missing source file.
|
|
||||||
Patch0003: qtwebkit-5.212.0_fix_missing_sources.patch
|
|
||||||
## upstream patches (qtwebkit-5.212 branch)
|
|
||||||
Patch0004: 0016-cmake-Import-ECMEnableSanitizers.patch
|
|
||||||
# disable ES6 Proxy
|
|
||||||
Patch0005: 0031-Disable-ES6-Proxy-object.patch
|
|
||||||
# ECM Update ECMGeneratePkgConfigFile to latest versio
|
|
||||||
Patch0006: 0111-ECM-Update-ECMGeneratePkgConfigFile-to-latest-versio.patch
|
|
||||||
## upstream patches (qtwebkit-stable branch)
|
|
||||||
Patch0007: 0012-cmake-Fix-include-dir-in-the-generated-pkg-config-fi.patch
|
|
||||||
## Fix build with icu 65.1
|
|
||||||
Patch0008: Fix-build-with-icu-65.1.patch
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
QtWebKit components of Qt5.
|
%{summary}
|
||||||
|
|
||||||
%package devel
|
%package devel
|
||||||
Summary: Development files for qt5-qtwebkit
|
Summary: Development files for %{name}
|
||||||
Requires: qt5-qtwebkit = %{version}-%{release}
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
Requires: qt5-qtbase-devel
|
Requires: qt5-qtbase-devel%{?_isa}
|
||||||
Requires: qt5-qtdeclarative-devel
|
Requires: qt5-qtdeclarative-devel%{?_isa}
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
Development files for qt5-qtwebkit.
|
The %{name}-devel package contains libraries and header files for
|
||||||
|
developing applications that use %{name}.
|
||||||
|
|
||||||
|
%if 0%{?docs}
|
||||||
|
%package doc
|
||||||
|
Summary: API documentation for %{name}
|
||||||
|
BuildRequires: qt5-qdoc
|
||||||
|
BuildRequires: qt5-qhelpgenerator
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description doc
|
||||||
|
%{summary}.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -n qtwebkit-%{version}-alpha2 -p1
|
%autosetup -p1 -n %{qt_module}-%{version}%{?prerel_tag}
|
||||||
|
|
||||||
|
# find/fix pngs with "libpng warning: iCCP: known incorrect sRGB profile"
|
||||||
|
find -name \*.png | xargs -n1 pngcrush -ow -fix
|
||||||
|
|
||||||
|
# ppc64le failed once with
|
||||||
|
# make[2]: *** No rule to make target 'Source/WebCore/Resources/textAreaResizeCorner.png', needed by 'Source/WebKit/qrc_WebCore.cpp'. Stop.
|
||||||
test -f Source/WebCore/Resources/textAreaResizeCorner.png
|
test -f Source/WebCore/Resources/textAreaResizeCorner.png
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
# The following changes of optflags ietc. are adapted from webkitgtk4 package, which
|
||||||
|
# is mostly similar to this one...
|
||||||
|
#
|
||||||
|
# Increase the DIE limit so our debuginfo packages could be size optimized.
|
||||||
|
# Decreases the size for x86_64 from ~5G to ~1.1G.
|
||||||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1456261
|
||||||
%global _dwz_max_die_limit 250000000
|
%global _dwz_max_die_limit 250000000
|
||||||
|
|
||||||
|
# Decrease debuginfo even on ix86 because of:
|
||||||
|
# https://bugs.webkit.org/show_bug.cgi?id=140176
|
||||||
|
%ifarch s390 s390x %{arm} %{ix86} ppc %{power64} %{mips}
|
||||||
|
# Decrease debuginfo verbosity to reduce memory consumption even more
|
||||||
|
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch ppc
|
||||||
|
# Use linker flag -relax to get WebKit build under ppc(32) with JIT disabled
|
||||||
|
%global optflags %{optflags} -Wl,-relax
|
||||||
|
%endif
|
||||||
|
|
||||||
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ;
|
CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ;
|
||||||
CXXFLAGS="${CXXFLAGS:-%optflags} -fpermissive" ; export CXXFLAGS ;
|
CXXFLAGS="${CXXFLAGS:-%optflags} -fpermissive" ; export CXXFLAGS ;
|
||||||
%{?__global_ldflags:LDFLAGS="${LDFLAGS:-%__global_ldflags}" ; export LDFLAGS ;}
|
%{?__global_ldflags:LDFLAGS="${LDFLAGS:-%__global_ldflags}" ; export LDFLAGS ;}
|
||||||
cmake -DPORT=Qt -DCMAKE_BUILD_TYPE=Release -DENABLE_TOOLS=OFF -DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \
|
# We cannot use default cmake macro here as it overwrites some settings queried
|
||||||
-DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON
|
# by qtwebkit cmake from qmake
|
||||||
|
cmake . \
|
||||||
|
-DPORT=Qt \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DENABLE_TOOLS=OFF \
|
||||||
|
-DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \
|
||||||
|
-DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" \
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
|
||||||
|
%ifarch s390 s390x ppc %{power64}
|
||||||
|
-DENABLE_JIT=OFF \
|
||||||
|
%endif
|
||||||
|
%ifarch s390 s390x ppc %{power64}
|
||||||
|
-DUSE_SYSTEM_MALLOC=ON \
|
||||||
|
%endif
|
||||||
|
%{?docs:-DGENERATE_DOCUMENTATION=ON} \
|
||||||
|
-DPYTHON_EXECUTABLE:PATH="%{__python3}"
|
||||||
|
|
||||||
%make_build
|
%make_build
|
||||||
|
|
||||||
|
%if 0%{?docs}
|
||||||
|
%make_build docs
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install
|
%make_install
|
||||||
|
|
||||||
find %{buildroot} -name '*.la' -exec rm -f {} ';'
|
find %{buildroot} -name '*.la' -exec rm -f {} ';'
|
||||||
|
|
||||||
|
# fix pkgconfig files
|
||||||
|
#sed -i '/Name/a Description: Qt5 WebKit module' %{buildroot}%{_libdir}/pkgconfig/Qt5WebKit.pc
|
||||||
|
#sed -i "s,Cflags: -I%{_qt5_libdir}/qt5/../../include/qt5/Qt5WebKit,Cflags: -I%{_qt5_headerdir}/QtWebKit,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKit.pc
|
||||||
|
# strictly speaking, this isn't *wrong*, but can made more readable, so let's do that
|
||||||
sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKit,Libs: -L%{_qt5_libdir} -lQt5WebKit ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKit.pc
|
sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKit,Libs: -L%{_qt5_libdir} -lQt5WebKit ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKit.pc
|
||||||
|
|
||||||
|
#sed -i '/Name/a Description: Qt5 WebKitWidgets module' %{buildroot}%{_libdir}/pkgconfig/Qt5WebKitWidgets.pc
|
||||||
|
#sed -i "s,Cflags: -I%{_qt5_libdir}/qt5/../../include/qt5/Qt5WebKitWidgets,Cflags: -I%{_qt5_headerdir}/QtWebKitWidgets,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKitWidgets.pc
|
||||||
sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKitWidgets,Libs: -L%{_qt5_libdir} -lQt5WebKitWidgets ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKitWidgets.pc
|
sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKitWidgets,Libs: -L%{_qt5_libdir} -lQt5WebKitWidgets ,g" %{buildroot}%{_libdir}/pkgconfig/Qt5WebKitWidgets.pc
|
||||||
|
|
||||||
|
# Finally, copy over and rename various files for %%license inclusion
|
||||||
%add_to_license_files Source/JavaScriptCore/COPYING.LIB
|
%add_to_license_files Source/JavaScriptCore/COPYING.LIB
|
||||||
%add_to_license_files Source/JavaScriptCore/icu/LICENSE
|
%add_to_license_files Source/JavaScriptCore/icu/LICENSE
|
||||||
%add_to_license_files Source/ThirdParty/ANGLE/LICENSE
|
%add_to_license_files Source/ThirdParty/ANGLE/LICENSE
|
||||||
@ -93,17 +197,23 @@ sed -i "s,Libs: -L%{_qt5_libdir}/qt5/../ -lQt5WebKitWidgets,Libs: -L%{_qt5_libdi
|
|||||||
%add_to_license_files Source/WTF/wtf/dtoa/COPYING
|
%add_to_license_files Source/WTF/wtf/dtoa/COPYING
|
||||||
%add_to_license_files Source/WTF/wtf/dtoa/LICENSE
|
%add_to_license_files Source/WTF/wtf/dtoa/LICENSE
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
|
# verify Qt5WebKit cflags non-use of -I/.../Qt5WebKit
|
||||||
export PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig
|
export PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig
|
||||||
test -z "$(pkg-config --cflags Qt5WebKit | grep Qt5WebKit)"
|
test -z "$(pkg-config --cflags Qt5WebKit | grep Qt5WebKit)"
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
|
||||||
%postun -p /sbin/ldconfig
|
%ldconfig_scriptlets
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%doc LICENSE.LGPLv21 _license_files/*
|
%license LICENSE.LGPLv21 _license_files/*
|
||||||
%{_qt5_libdir}/{libQt5WebKit.so.5*,libQt5WebKitWidgets.so.5*}
|
%{_qt5_libdir}/libQt5WebKit.so.5*
|
||||||
%{_qt5_libexecdir}/{QtWebDatabaseProcess,QtWebNetworkProcess,QtWebPluginProcess,QtWebProcess}
|
%{_qt5_libdir}/libQt5WebKitWidgets.so.5*
|
||||||
|
%{_qt5_libexecdir}/QtWebNetworkProcess
|
||||||
|
%{_qt5_libexecdir}/QtWebPluginProcess
|
||||||
|
%{_qt5_libexecdir}/QtWebProcess
|
||||||
|
%{_qt5_libexecdir}/QtWebStorageProcess
|
||||||
%{_qt5_archdatadir}/qml/QtWebKit/
|
%{_qt5_archdatadir}/qml/QtWebKit/
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
@ -113,7 +223,18 @@ test -z "$(pkg-config --cflags Qt5WebKit | grep Qt5WebKit)"
|
|||||||
%{_qt5_libdir}/pkgconfig/Qt5*.pc
|
%{_qt5_libdir}/pkgconfig/Qt5*.pc
|
||||||
%{_qt5_archdatadir}/mkspecs/modules/*.pri
|
%{_qt5_archdatadir}/mkspecs/modules/*.pri
|
||||||
|
|
||||||
|
|
||||||
|
%if 0%{?docs}
|
||||||
|
%files doc
|
||||||
|
%{_qt5_docdir}/qtwebkit.qch
|
||||||
|
%{_qt5_docdir}/qtwebkit/
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Nov 12 2020 wutao <wutao61@huawei.com> - 5.212.0-4
|
||||||
|
- update to alpha4 and drop python2 module
|
||||||
|
|
||||||
* Mon Aug 03 2020 lingsheng <lingsheng@huawei.com> - 5.212.0-3
|
* Mon Aug 03 2020 lingsheng <lingsheng@huawei.com> - 5.212.0-3
|
||||||
- Fix build with icu 65.1
|
- Fix build with icu 65.1
|
||||||
|
|
||||||
|
|||||||
@ -1,15 +0,0 @@
|
|||||||
diff -ur qtwebkit-5.212.0-alpha2/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp
|
|
||||||
--- qtwebkit-5.212.0-alpha2/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp 2017-06-09 16:11:36.000000000 +0200
|
|
||||||
+++ qtwebkit-5.212.0-alpha2-fix-null-pointer-dereference/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp 2017-10-24 21:44:40.504943501 +0200
|
|
||||||
@@ -390,7 +390,10 @@
|
|
||||||
|
|
||||||
QString QWebPageAdapter::selectedHtml() const
|
|
||||||
{
|
|
||||||
- return page->focusController().focusedOrMainFrame().editor().selectedRange()->toHTML();
|
|
||||||
+ RefPtr<Range> range = page->focusController().focusedOrMainFrame().editor().selectedRange();
|
|
||||||
+ if (!range)
|
|
||||||
+ return QString();
|
|
||||||
+ return range->toHTML();
|
|
||||||
}
|
|
||||||
|
|
||||||
bool QWebPageAdapter::isContentEditable() const
|
|
||||||
Binary file not shown.
@ -1,20 +0,0 @@
|
|||||||
Index: qtwebkit-5.212.0-alpha2/Source/WebKit/PlatformQt.cmake
|
|
||||||
===================================================================
|
|
||||||
--- qtwebkit-5.212.0-alpha2.orig/Source/WebKit/PlatformQt.cmake
|
|
||||||
+++ qtwebkit-5.212.0-alpha2/Source/WebKit/PlatformQt.cmake
|
|
||||||
@@ -786,6 +786,7 @@ if (COMPILER_IS_GCC_OR_CLANG)
|
|
||||||
set_source_files_properties(
|
|
||||||
qt/Api/qwebdatabase.cpp
|
|
||||||
qt/Api/qwebelement.cpp
|
|
||||||
+ qt/Api/qwebfullscreenrequest.cpp
|
|
||||||
qt/Api/qwebhistory.cpp
|
|
||||||
qt/Api/qwebhistoryinterface.cpp
|
|
||||||
qt/Api/qwebpluginfactory.cpp
|
|
||||||
@@ -795,7 +796,6 @@ if (COMPILER_IS_GCC_OR_CLANG)
|
|
||||||
|
|
||||||
qt/WidgetApi/qgraphicswebview.cpp
|
|
||||||
qt/WidgetApi/qwebframe.cpp
|
|
||||||
- qt/WidgetApi/qwebfullscreenrequest.cpp
|
|
||||||
qt/WidgetApi/qwebinspector.cpp
|
|
||||||
qt/WidgetApi/qwebpage.cpp
|
|
||||||
qt/WidgetApi/qwebview.cpp
|
|
||||||
Loading…
x
Reference in New Issue
Block a user