From 64b41ca4f3e4b6d475832088c45545fc54b15977 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Wed, 13 Aug 2014 14:10:02 +0200 Subject: webkit-efl: upgrade to 1.11.0 * webkit-efl snapshots are now versioned consistenly with efl bump PE to prevent version going backwards * announcement: http://sourceforge.net/p/enlightenment/mailman/message/32713414/ Signed-off-by: Martin Jansa --- meta-efl/recipes-efl/webkit/webkit-efl.inc | 29 ++-- ...on.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch | 46 ++++++ ...KitHelpers.cmake-Add-Wno-error-cast-align.patch | 30 ---- ...r.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch | 80 ---------- ...rs.cmake-Add-Wno-error-deprecated-declara.patch | 36 +++++ .../0003-FEBlendNEON.h-fix-missing-semicolon.patch | 35 +++++ .../webkit/webkit-efl/0003-Fix-linking-issue.patch | 63 -------- ...ld-with-EFL-1.12-https-bugs.webkit.org-sh.patch | 146 ++++++++++++++++++ ...emorySamplerLinux-Fix-type-limits-warning.patch | 32 ---- .../recipes-efl/webkit/webkit-efl/CMakeLists.txt | 166 --------------------- meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb | 10 ++ .../webkit/webkit-efl_2.3.4+svnr164189.bb | 13 -- meta-efl/recipes-efl/webkit/webkit-efl_svn.bb | 22 --- 13 files changed, 287 insertions(+), 421 deletions(-) create mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch delete mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0001-WebKitHelpers.cmake-Add-Wno-error-cast-align.patch delete mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0002-ARMAssembler.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch create mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch create mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0003-FEBlendNEON.h-fix-missing-semicolon.patch delete mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0003-Fix-linking-issue.patch create mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch delete mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/0004-WebMemorySamplerLinux-Fix-type-limits-warning.patch delete mode 100644 meta-efl/recipes-efl/webkit/webkit-efl/CMakeLists.txt create mode 100644 meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb delete mode 100644 meta-efl/recipes-efl/webkit/webkit-efl_2.3.4+svnr164189.bb delete mode 100644 meta-efl/recipes-efl/webkit/webkit-efl_svn.bb (limited to 'meta-efl/recipes-efl') diff --git a/meta-efl/recipes-efl/webkit/webkit-efl.inc b/meta-efl/recipes-efl/webkit/webkit-efl.inc index 44ef9d48f..cf919ece9 100644 --- a/meta-efl/recipes-efl/webkit/webkit-efl.inc +++ b/meta-efl/recipes-efl/webkit/webkit-efl.inc @@ -1,8 +1,10 @@ DESCRIPTION = "Webkit browser engine, EFL edition" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://Source/WebKit/LICENSE;md5=4646f90082c40bcf298c285f8bab0b12 \ - file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \ - file://Source/WebKit/efl/ewk/EWebKit.h;endline=20;md5=55ea170b1582797d2c69712de850f2fa \ +LICENSE = "GPLv2+ & LGPL-2.1" +LIC_FILES_CHKSUM = " \ + file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \ + file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \ + file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \ + file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \ " # you need harfbuzz with icu enabled, you can add this to your config: @@ -10,18 +12,15 @@ LIC_FILES_CHKSUM = "file://Source/WebKit/LICENSE;md5=4646f90082c40bcf298c285f8ba DEPENDS = "icu libxslt sqlite3 gperf-native bison-native flex-native jpeg \ libpng libxt fontconfig cairo freetype glib-2.0 libsoup-2.4 \ libxml2 pango eina ecore evas edje eldbus harfbuzz enchant \ - ruby-native" + ruby-native elementary" +PE = "1" + +SRCVER ?= "${PV}" SRC_URI = "\ - ${E_RELEASES}/libs/webkit-efl/webkit-efl-164189.tar.xz \ - file://0001-WebKitHelpers.cmake-Add-Wno-error-cast-align.patch \ - file://0002-ARMAssembler.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch \ - file://0003-Fix-linking-issue.patch \ + ${E_RELEASES}/libs/webkit-efl/ewebkit-${SRCVER}.tar.xz \ " -SRC_URI[md5sum] = "731513fc042ec8e03840bc1ab6a66771" -SRC_URI[sha256sum] = "660aefd65c0e5c6494eaec30539cda5f40fbdff17f28e7e83d341b245227cccd" - -S = "${WORKDIR}/efl-webkit" +S = "${WORKDIR}/ewebkit" inherit cmake lib_package pkgconfig perlnative pythonnative @@ -60,8 +59,8 @@ COMPATIBLE_MACHINE_armv7a = "(.*)" LEAD_SONAME = "libewebkit.so" PACKAGES =+ "${PN}launcher-dbg ${PN}launcher ${PN}-inspector" -FILES_${PN} += "${datadir}/webkit-1.0/theme/default.edj ${datadir}/ewebkit-0/themes/default.edj" +FILES_${PN} += "${datadir}/ewebkit2-1/themes/default.edj" FILES_${PN}-dev += "${libdir}/cmake" FILES_${PN}launcher = "${bindir}/EWebLauncher" FILES_${PN}launcher-dbg = "${bindir}/.debug/EWebLauncher" -FILES_${PN}-inspector += "${datadir}/ewebkit-0/inspector" +FILES_${PN}-inspector += "${datadir}/ewebkit2-1/inspector" diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch new file mode 100644 index 000000000..19b7bb88d --- /dev/null +++ b/meta-efl/recipes-efl/webkit/webkit-efl/0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch @@ -0,0 +1,46 @@ +From e6caaf6e80b9c80dc2b860b471a8f05e825f6dfa Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Thu, 14 Aug 2014 01:00:21 +0200 +Subject: [PATCH 1/3] OptionsCommon.cmake: don't mix CXX_FLAGS into C_FLAGS + +* it was added in https://bugs.webkit.org/show_bug.cgi?id=130261 +* causes build failures in udis86 which explicitly asks for gcc but then + gets g++ flags from CMAKE_CXX_FLAGS. + +cc1: error: command line option '-fvisibility-inlines-hidden' is valid +for C++/ObjC++ but not for C [-Werror] +cc1: error: command line option '-fpermissive' is valid for C++/ObjC++ +but not for C [-Werror] +cc1: all warnings being treated as errors +Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/build.make:11182: +recipe for target +'Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/disassembler/udis86/udis86.c.o' +failed +make[2]: *** +[Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/disassembler/udis86/udis86.c.o] +Error 1 +make[2]: *** Waiting for unfinished jobs.... +make[2]: Leaving directory +'/OE/build/oe-core/tmp-eglibc/work/core2-64-oe-linux/webkit-efl/1_1.10.0+1.11.0-beta1-r0/build' + +Signed-off-by: Martin Jansa +--- + Source/cmake/OptionsCommon.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Source/cmake/OptionsCommon.cmake b/Source/cmake/OptionsCommon.cmake +index e304a99..045c614 100644 +--- a/Source/cmake/OptionsCommon.cmake ++++ b/Source/cmake/OptionsCommon.cmake +@@ -25,7 +25,7 @@ endif () + set_property(GLOBAL PROPERTY USE_FOLDERS ON) + + if (CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") +- set(CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions -fno-strict-aliasing") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-exceptions -fno-strict-aliasing") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-exceptions -fno-strict-aliasing -fno-rtti") + endif () + +-- +2.1.3 + diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0001-WebKitHelpers.cmake-Add-Wno-error-cast-align.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0001-WebKitHelpers.cmake-Add-Wno-error-cast-align.patch deleted file mode 100644 index c769c7fbb..000000000 --- a/meta-efl/recipes-efl/webkit/webkit-efl/0001-WebKitHelpers.cmake-Add-Wno-error-cast-align.patch +++ /dev/null @@ -1,30 +0,0 @@ -From b37711ca03ea9410e795f29398069fed9e9c2d30 Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Mon, 13 Jan 2014 17:21:25 +0100 -Subject: [PATCH 1/3] WebKitHelpers.cmake: Add -Wno-error=cast-align - -Signed-off-by: Martin Jansa ---- - Source/cmake/WebKitHelpers.cmake | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/Source/cmake/WebKitHelpers.cmake b/Source/cmake/WebKitHelpers.cmake -index 409931c..345b346 100644 ---- a/Source/cmake/WebKitHelpers.cmake -+++ b/Source/cmake/WebKitHelpers.cmake -@@ -44,7 +44,11 @@ macro(WEBKIT_SET_EXTRA_COMPILER_FLAGS _target) - - # Enable errors on warning - if (OPTION_ENABLE_WERROR) -- set(OLD_COMPILE_FLAGS "-Werror -Wno-error=unused-parameter ${OLD_COMPILE_FLAGS}") -+ # FIXME: When we use -fno-tree-dce to support the jsCStack branch merge, build error occurs due to the uninitialization. Temporarily we set -+ # uninitialized as build warning in order to support the jsCStack merge. https://bugs.webkit.org/show_bug.cgi?id=127777. -+ set(OLD_COMPILE_FLAGS "-Werror -Wno-error=unused-parameter -Wno-error=uninitialized ${OLD_COMPILE_FLAGS}") -+ # | /OE/build/shr-core/tmp-eglibc/work/arm920tt-oe-linux-gnueabi/webkit-efl/2.3.2+svnr159807-r0/webkit-efl/Source/JavaScriptCore/runtime/JSDataViewPrototype.cpp:161:104: error: cast from 'uint8_t* {aka unsigned char*}' to 'JSC::FloatTypedArrayAdaptor, JSC::JSGenericTypedArrayView, (JSC::TypedArrayType)9u>::Type* {aka double*}' increases required alignment of target type [-Werror=cast-align] -+ set(OLD_COMPILE_FLAGS "-Wno-error=cast-align -Wno-error=array-bounds -Wno-error=deprecated-declarations ${OLD_COMPILE_FLAGS}") - endif () - - set_target_properties(${_target} PROPERTIES --- -1.9.0 - diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0002-ARMAssembler.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0002-ARMAssembler.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch deleted file mode 100644 index 9f005bcd3..000000000 --- a/meta-efl/recipes-efl/webkit/webkit-efl/0002-ARMAssembler.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch +++ /dev/null @@ -1,80 +0,0 @@ -From e284e92da00011e55d8f79383034e0c9c1a8a106 Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Thu, 27 Feb 2014 13:40:43 +0100 -Subject: [PATCH 2/3] ARMAssembler.h: Don't generate BKPT and BLX for armv4* - -* I haven't tested it in runtime yet, but it's better than to wait for asm failure later: - {standard input}: Assembler messages: - {standard input}:35: Error: selected processor does not support ARM mode `bkpt #0' - {standard input}:62: Error: selected processor does not support ARM mode `blx llint_throw_stack_overflow_error' - ... - -Signed-off-by: Martin Jansa ---- - Source/JavaScriptCore/assembler/ARMAssembler.h | 19 +++++++++++++++++++ - 1 file changed, 19 insertions(+) - -diff --git a/Source/JavaScriptCore/assembler/ARMAssembler.h b/Source/JavaScriptCore/assembler/ARMAssembler.h -index 087d31c..1b40ded 100644 ---- a/Source/JavaScriptCore/assembler/ARMAssembler.h -+++ b/Source/JavaScriptCore/assembler/ARMAssembler.h -@@ -211,7 +211,9 @@ namespace JSC { - LDMIA = 0x08b00000, - B = 0x0a000000, - BL = 0x0b000000, -+#if WTF_ARM_ARCH_AT_LEAST(5) - BX = 0x012fff10, -+#endif - VMOV_VFP64 = 0x0c400a10, - VMOV_ARM64 = 0x0c500a10, - VMOV_VFP32 = 0x0e000a10, -@@ -223,8 +225,10 @@ namespace JSC { - VCVT_F64_F32 = 0x0eb70ac0, - VMRS_APSR = 0x0ef1fa10, - CLZ = 0x016f0f10, -+#if WTF_ARM_ARCH_AT_LEAST(5) - BKPT = 0xe1200070, - BLX = 0x012fff30, -+#endif - #if WTF_ARM_ARCH_AT_LEAST(7) - MOVW = 0x03000000, - MOVT = 0x03400000, -@@ -689,7 +693,11 @@ namespace JSC { - - void bkpt(ARMWord value) - { -+#if WTF_ARM_ARCH_AT_LEAST(5) - m_buffer.putInt(BKPT | ((value & 0xff0) << 4) | (value & 0xf)); -+#else -+ // BKPT is available in ARMv5T and above, skip it here -+#endif - } - - void nop() -@@ -704,12 +712,23 @@ namespace JSC { - - void bx(int rm, Condition cc = AL) - { -+#if WTF_ARM_ARCH_AT_LEAST(5) - emitInstruction(toARMWord(cc) | BX, 0, 0, RM(rm)); -+#else -+ // BX is available in ARMv5T and above. -+ emitInstruction(toARMWord(cc) | MOV, ARMRegisters::pc, ARMRegisters::lr, 0); -+#endif - } - - AssemblerLabel blx(int rm, Condition cc = AL) - { -+#if WTF_ARM_ARCH_AT_LEAST(5) - emitInstruction(toARMWord(cc) | BLX, 0, 0, RM(rm)); -+#else -+ // BLX is available in ARMv5T and above. -+ emitInstruction(toARMWord(cc) | MOV, ARMRegisters::lr, ARMRegisters::pc, 0); -+ emitInstruction(toARMWord(cc) | MOV, ARMRegisters::pc, RM(rm), 0); -+#endif - return m_buffer.label(); - } - --- -1.9.0 - diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch new file mode 100644 index 000000000..9386e703d --- /dev/null +++ b/meta-efl/recipes-efl/webkit/webkit-efl/0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch @@ -0,0 +1,36 @@ +From de93951f89e851b6689718022eebb4b8b1d14c06 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Mon, 13 Jan 2014 17:21:25 +0100 +Subject: [PATCH 2/3] WebKitHelpers.cmake: Add + -Wno-error=deprecated-declarations -Wno-error=cast-align + -Wno-error=type-limits + +Signed-off-by: Martin Jansa +--- + Source/cmake/WebKitHelpers.cmake | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/Source/cmake/WebKitHelpers.cmake b/Source/cmake/WebKitHelpers.cmake +index 227b9ee..ae52ef6 100644 +--- a/Source/cmake/WebKitHelpers.cmake ++++ b/Source/cmake/WebKitHelpers.cmake +@@ -40,6 +40,16 @@ macro(WEBKIT_SET_EXTRA_COMPILER_FLAGS _target) + # FIXME: When we use -fno-tree-dce to support the jsCStack branch merge, build error occurs due to the uninitialization. Temporarily we set + # uninitialized as build warning in order to support the jsCStack merge. https://bugs.webkit.org/show_bug.cgi?id=127777. + set(OLD_COMPILE_FLAGS "-Werror -Wno-error=unused-parameter -Wno-error=uninitialized -Wno-error=literal-suffix ${OLD_COMPILE_FLAGS}") ++ # libsoup-2.4/libsoup/soup-proxy-uri-resolver.h:13:84: error: 'GType soup_proxy_uri_resolver_get_type()' is deprecated (declared at /OE/build/oe-core/tmp-eglibc/sysroots/qemux86-64/usr/include/libsoup-2.4/libsoup/soup-proxy-uri-resolver.h:48) [-Werror=deprecated-declarations] ++ set(OLD_COMPILE_FLAGS "-Wno-error=deprecated-declarations ${OLD_COMPILE_FLAGS}") ++ # webkit-efl/1_1.10.0+1.11.0-beta1-r0/ewebkit/Source/WTF/wtf/text/StringImpl.h:742:87: error: cast from 'uint8_t* {aka unsigned char*}' to 'WTF::StringImpl**' increases required alignment of target type [-Werror=cast-align] ++ set(OLD_COMPILE_FLAGS "-Wno-error=cast-align ${OLD_COMPILE_FLAGS}") ++ # webkit-efl/1_1.10.0+1.11.0-beta1-r0/ewebkit/Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp:70:16: error: comparison is always false due to limited range of data type [-Werror=type-limits] ++ set(OLD_COMPILE_FLAGS "-Wno-error=type-limits ${OLD_COMPILE_FLAGS}") ++ # webkit-efl/1_1.11.0-r0/ewebkit/Source/WebKit2/UIProcess/API/efl/EwkView.cpp:832:5: error: missing initializer for member '_Evas_GL_Config::gles_version' [-Werror=missing-field-initializers] ++ # this one is new with efl-1.12 ++ set(OLD_COMPILE_FLAGS "-Wno-error=missing-field-initializers ${OLD_COMPILE_FLAGS}") ++ + endif () + + set_target_properties(${_target} PROPERTIES +-- +2.1.3 + diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0003-FEBlendNEON.h-fix-missing-semicolon.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0003-FEBlendNEON.h-fix-missing-semicolon.patch new file mode 100644 index 000000000..e718ee1c1 --- /dev/null +++ b/meta-efl/recipes-efl/webkit/webkit-efl/0003-FEBlendNEON.h-fix-missing-semicolon.patch @@ -0,0 +1,35 @@ +From a076d76b8e8862bd641cd991190e82cfd478cc66 Mon Sep 17 00:00:00 2001 +From: Martin Jansa +Date: Wed, 20 Aug 2014 00:52:03 +0200 +Subject: [PATCH 3/3] FEBlendNEON.h: fix missing semicolon + +* Otherwise fails with: +In file included from ewebkit/Source/WebCore/platform/graphics/filters/FEBlend.cpp:29:0: +ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h: In member function 'virtual void WebCore::FEBlend::platformApplySoftware()': +ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h:130:5: error: expected primary-expression before '}' token + } + ^ +ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h:130:5: error: return-statement with a value, in function returning 'void' [-fpermissive] +ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h:130:5: error: expected ';' before '}' token + +Signed-off-by: Martin Jansa +--- + Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h b/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h +index 1c50765..f4b6f46 100644 +--- a/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h ++++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h +@@ -126,7 +126,7 @@ void FEBlend::platformApplySoftware() + + if (pixelArrayLength >= 8) { + platformApplyNEON(srcPixelArrayA->data(), srcPixelArrayB->data(), dstPixelArray->data(), pixelArrayLength); +- return ++ return; + } + // If there is just one pixel we expand it to two. + ASSERT(pixelArrayLength > 0); +-- +2.1.3 + diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0003-Fix-linking-issue.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0003-Fix-linking-issue.patch deleted file mode 100644 index ce1c6872d..000000000 --- a/meta-efl/recipes-efl/webkit/webkit-efl/0003-Fix-linking-issue.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 09088da56f3de17ab1cc537627cda6bf808eaf4c Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Thu, 27 Feb 2014 14:17:29 +0100 -Subject: [PATCH 3/3] Fix linking issue - -* inline function is sometimes not included soon enough - - Partialy taken from: - https://bugs.webkit.org/show_bug.cgi?id=124152 - -Signed-off-by: Martin Jansa ---- - Source/JavaScriptCore/llint/LLIntEntrypoint.cpp | 3 +++ - Source/JavaScriptCore/runtime/FunctionExecutableDump.cpp | 3 +++ - Source/JavaScriptCore/runtime/SymbolTable.cpp | 4 ++++ - 3 files changed, 10 insertions(+) - -diff --git a/Source/JavaScriptCore/llint/LLIntEntrypoint.cpp b/Source/JavaScriptCore/llint/LLIntEntrypoint.cpp -index 5d91be6..73cba31 100644 ---- a/Source/JavaScriptCore/llint/LLIntEntrypoint.cpp -+++ b/Source/JavaScriptCore/llint/LLIntEntrypoint.cpp -@@ -31,6 +31,9 @@ - #include "CodeBlock.h" - #include "JITCode.h" - #include "JSObject.h" -+#include "JSCellInlines.h" -+#include "JSDestructibleObject.h" -+#include "SlotVisitorInlines.h" - #include "LLIntThunks.h" - #include "LowLevelInterpreter.h" - #include "MaxFrameExtentForSlowPathCall.h" -diff --git a/Source/JavaScriptCore/runtime/FunctionExecutableDump.cpp b/Source/JavaScriptCore/runtime/FunctionExecutableDump.cpp -index d0583fc..4be5ec3 100644 ---- a/Source/JavaScriptCore/runtime/FunctionExecutableDump.cpp -+++ b/Source/JavaScriptCore/runtime/FunctionExecutableDump.cpp -@@ -25,6 +25,9 @@ - - #include "config.h" - #include "FunctionExecutableDump.h" -+#include "JSCellInlines.h" -+#include "JSDestructibleObject.h" -+#include "SlotVisitorInlines.h" - - #include "CodeBlock.h" - -diff --git a/Source/JavaScriptCore/runtime/SymbolTable.cpp b/Source/JavaScriptCore/runtime/SymbolTable.cpp -index 6eb0239..21450df 100644 ---- a/Source/JavaScriptCore/runtime/SymbolTable.cpp -+++ b/Source/JavaScriptCore/runtime/SymbolTable.cpp -@@ -33,6 +33,10 @@ - #include "JSCInlines.h" - #include "SlotVisitorInlines.h" - -+#include "JSCellInlines.h" -+#include "JSDestructibleObject.h" -+#include "SlotVisitorInlines.h" -+ - namespace JSC { - - const ClassInfo SymbolTable::s_info = { "SymbolTable", 0, 0, 0, CREATE_METHOD_TABLE(SymbolTable) }; --- -1.9.0 - diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch new file mode 100644 index 000000000..bfa3052b1 --- /dev/null +++ b/meta-efl/recipes-efl/webkit/webkit-efl/0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch @@ -0,0 +1,146 @@ +From baebc004111289ef658c78a42f8332f3dceef41e Mon Sep 17 00:00:00 2001 +From: "ryuan.choi@navercorp.com" +Date: Thu, 13 Nov 2014 07:07:16 +0000 +Subject: [PATCH 4/4] Fix the build with EFL 1.12 + https://bugs.webkit.org/show_bug.cgi?id=138245 + +Reviewed by Gyuyoung Kim. + +Source/WebKit2: + +* UIProcess/API/efl/EwkView.cpp: +First, modified to use Evas_GL raw pointer instead of UniquePtrEfl because +Evas_GL.h can't be included in UniquePtrEfl.h +It should be moved into EvasGLContext because WebKit/EFL use only one Evas_GL. +Second, provided the version of GLES in Evas_GL_Config not to break build with +EFL 1.12 +(EwkView::EwkView): +(EwkView::~EwkView): +(EwkView::displayTimerFired): +(EwkView::createGLSurface): +* UIProcess/API/efl/EwkView.h: + +Source/WTF: + +* wtf/efl/UniquePtrEfl.h: +Removed Evas_GL.h from UniquePtrEfl.h, which is commonly included, because +it should not be included with official GL headers. + +git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176066 268f45cc-cd09-0410-ab3c-d52691b4dbfc +--- + Source/WTF/wtf/efl/UniquePtrEfl.h | 2 -- + Source/WebKit2/UIProcess/API/efl/EwkView.cpp | 24 ++++++++++++++++-------- + Source/WebKit2/UIProcess/API/efl/EwkView.h | 3 ++- + 3 files changed, 18 insertions(+), 11 deletions(-) + +diff --git a/Source/WTF/wtf/efl/UniquePtrEfl.h b/Source/WTF/wtf/efl/UniquePtrEfl.h +index ba0110a..038d3fb 100644 +--- a/Source/WTF/wtf/efl/UniquePtrEfl.h ++++ b/Source/WTF/wtf/efl/UniquePtrEfl.h +@@ -33,7 +33,6 @@ + #include + #include + #include +-#include + + namespace WTF { + +@@ -51,7 +50,6 @@ using EflUniquePtr = std::unique_ptr>; + macro(Eina_Hash, eina_hash_free) \ + macro(Eina_Module, eina_module_free) \ + macro(Evas_Object, evas_object_del) \ +- macro(Evas_GL, evas_gl_free) + + #define WTF_DEFINE_EFLPTR_DELETER(typeName, deleterFunc) \ + template<> struct EflPtrDeleter \ +diff --git a/Source/WebKit2/UIProcess/API/efl/EwkView.cpp b/Source/WebKit2/UIProcess/API/efl/EwkView.cpp +index 50d34ed..6ff3394 100755 +--- a/Source/WebKit2/UIProcess/API/efl/EwkView.cpp ++++ b/Source/WebKit2/UIProcess/API/efl/EwkView.cpp +@@ -299,9 +299,11 @@ EwkView::EwkView(WKViewRef view, Evas_Object* evasObject) + + // FIXME: Remove when possible. + static_cast(webView())->setEwkView(this); +- m_evasGL = EflUniquePtr(evas_gl_new(evas_object_evas_get(m_evasObject))); ++ ++ // FIXME: Consider it to move into EvasGLContext. ++ m_evasGL = evas_gl_new(evas_object_evas_get(m_evasObject)); + if (m_evasGL) +- m_evasGLContext = EvasGLContext::create(m_evasGL.get()); ++ m_evasGLContext = EvasGLContext::create(m_evasGL); + + if (!m_evasGLContext) { + WARN("Failed to create Evas_GL, falling back to software mode."); +@@ -333,6 +335,9 @@ EwkView::~EwkView() + { + ASSERT(wkPageToEvasObjectMap().get(wkPage()) == m_evasObject); + wkPageToEvasObjectMap().remove(wkPage()); ++ ++ if (m_evasGL) ++ evas_gl_free(m_evasGL); + } + + EwkView* EwkView::create(WKViewRef webView, Evas* canvas, Evas_Smart* smart) +@@ -587,7 +592,7 @@ void EwkView::displayTimerFired(Timer*) + return; + } + +- evas_gl_make_current(m_evasGL.get(), m_evasGLSurface->surface(), m_evasGLContext->context()); ++ evas_gl_make_current(m_evasGL, m_evasGLSurface->surface(), m_evasGLContext->context()); + + WKViewPaintToCurrentGLContext(wkView()); + +@@ -828,21 +833,24 @@ bool EwkView::createGLSurface() + EVAS_GL_DEPTH_BIT_8, + EVAS_GL_STENCIL_NONE, + EVAS_GL_OPTIONS_NONE, +- EVAS_GL_MULTISAMPLE_NONE ++ EVAS_GL_MULTISAMPLE_NONE, ++#if defined(EVAS_GL_API_VERSION) && EVAS_GL_API_VERSION >= 2 ++ EVAS_GL_GLES_2_X ++#endif + }; + + // Recreate to current size: Replaces if non-null, and frees existing surface after (OwnPtr). +- m_evasGLSurface = EvasGLSurface::create(m_evasGL.get(), &evasGLConfig, deviceSize()); ++ m_evasGLSurface = EvasGLSurface::create(m_evasGL, &evasGLConfig, deviceSize()); + if (!m_evasGLSurface) + return false; + + Evas_Native_Surface nativeSurface; +- evas_gl_native_surface_get(m_evasGL.get(), m_evasGLSurface->surface(), &nativeSurface); ++ evas_gl_native_surface_get(m_evasGL, m_evasGLSurface->surface(), &nativeSurface); + evas_object_image_native_surface_set(smartData()->image, &nativeSurface); + +- evas_gl_make_current(m_evasGL.get(), m_evasGLSurface->surface(), m_evasGLContext->context()); ++ evas_gl_make_current(m_evasGL, m_evasGLSurface->surface(), m_evasGLContext->context()); + +- Evas_GL_API* gl = evas_gl_api_get(m_evasGL.get()); ++ Evas_GL_API* gl = evas_gl_api_get(m_evasGL); + + WKPoint boundsEnd = WKViewUserViewportToScene(wkView(), WKPointMake(deviceSize().width(), deviceSize().height())); + gl->glViewport(0, 0, boundsEnd.x, boundsEnd.y); +diff --git a/Source/WebKit2/UIProcess/API/efl/EwkView.h b/Source/WebKit2/UIProcess/API/efl/EwkView.h +index 1c482cf..68dab87 100644 +--- a/Source/WebKit2/UIProcess/API/efl/EwkView.h ++++ b/Source/WebKit2/UIProcess/API/efl/EwkView.h +@@ -39,6 +39,7 @@ + #endif + + typedef struct _cairo_surface cairo_surface_t; ++typedef struct _Evas_GL Evas_GL; + + namespace WebKit { + class ContextMenuClientEfl; +@@ -241,7 +242,7 @@ private: + Evas_Object* m_evasObject; + RefPtr m_context; + RefPtr m_pageGroup; +- EflUniquePtr m_evasGL; ++ Evas_GL* m_evasGL; + std::unique_ptr m_evasGLContext; + std::unique_ptr m_evasGLSurface; + bool m_pendingSurfaceResize; +-- +2.1.3 + diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0004-WebMemorySamplerLinux-Fix-type-limits-warning.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0004-WebMemorySamplerLinux-Fix-type-limits-warning.patch deleted file mode 100644 index f30987ba3..000000000 --- a/meta-efl/recipes-efl/webkit/webkit-efl/0004-WebMemorySamplerLinux-Fix-type-limits-warning.patch +++ /dev/null @@ -1,32 +0,0 @@ -From ed7972510df191d9fabe7aff2f688cbc45f0c955 Mon Sep 17 00:00:00 2001 -From: Martin Jansa -Date: Sun, 20 Jul 2014 10:52:17 +0200 -Subject: [PATCH] WebMemorySamplerLinux: Fix type-limits warning - -* otherwise it fails with: - webkit-efl/2.3.4+svnr164189-r0/efl-webkit/Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp:70:16: - error: comparison is always false due to limited range of data type [-Werror=type-limits] - | if (ch == EOF || (isASCIISpace(ch) && index)) // Break on non-initial ASCII space. - | ^ - -Signed-off-by: Martin Jansa ---- - Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp b/Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp -index 7cb70d4..6bb78d8 100644 ---- a/Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp -+++ b/Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp -@@ -67,7 +67,7 @@ static inline String nextToken(FILE* file) - unsigned int index = 0; - while (index < maxBuffer) { - char ch = fgetc(file); -- if (ch == EOF || (isASCIISpace(ch) && index)) // Break on non-initial ASCII space. -+ if (isASCIISpace(ch) && index) // Break on non-initial ASCII space. - break; - if (!isASCIISpace(ch)) { - buffer[index] = ch; --- -2.0.0 - diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/CMakeLists.txt b/meta-efl/recipes-efl/webkit/webkit-efl/CMakeLists.txt deleted file mode 100644 index 8071d61f9..000000000 --- a/meta-efl/recipes-efl/webkit/webkit-efl/CMakeLists.txt +++ /dev/null @@ -1,166 +0,0 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8) -PROJECT(WebKit) - -# Set a default build type if and only if user did not define one as command -# line options and he did not give custom CFLAGS or CXXFLAGS. Otherwise, flags -# from default build type would overwrite user-defined ones. -IF (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_C_FLAGS AND NOT CMAKE_CXX_FLAGS) - SET(CMAKE_BUILD_TYPE Release) -ENDIF () - -# ----------------------------------------------------------------------------- -# Default library type -# ----------------------------------------------------------------------------- -SET(ENABLE_WEBCORE ON) - -IF (NOT ENABLE_WEBKIT AND NOT ENABLE_WEBKIT2) - SET(ENABLE_WEBKIT ON) -ENDIF () - -SET(ENABLE_TOOLS ON) - -SET(WTF_DIR "${CMAKE_SOURCE_DIR}/Source/WTF") -SET(JAVASCRIPTCORE_DIR "${CMAKE_SOURCE_DIR}/Source/JavaScriptCore") -SET(WEBCORE_DIR "${CMAKE_SOURCE_DIR}/Source/WebCore") -SET(WEBKIT_DIR "${CMAKE_SOURCE_DIR}/Source/WebKit") -SET(WEBKIT2_DIR "${CMAKE_SOURCE_DIR}/Source/WebKit2") -SET(THIRDPARTY_DIR "${CMAKE_SOURCE_DIR}/Source/ThirdParty") - -SET(TOOLS_DIR "${CMAKE_SOURCE_DIR}/Tools") - -SET(DERIVED_SOURCES_DIR "${CMAKE_BINARY_DIR}/DerivedSources") -SET(DERIVED_SOURCES_JAVASCRIPTCORE_DIR "${CMAKE_BINARY_DIR}/DerivedSources/JavaScriptCore") -SET(DERIVED_SOURCES_WEBCORE_DIR "${CMAKE_BINARY_DIR}/DerivedSources/WebCore") -SET(DERIVED_SOURCES_WEBKIT_DIR "${CMAKE_BINARY_DIR}/DerivedSources/WebKit") -SET(DERIVED_SOURCES_WEBKIT2_DIR "${CMAKE_BINARY_DIR}/DerivedSources/WebKit2") - -SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/Source/cmake") - -SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) -SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) -SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) - -INCLUDE(WebKitMacros) -INCLUDE(WebKitFS) -INCLUDE(WebKitHelpers) -INCLUDE(WebKitFeatures) - -# ----------------------------------------------------------------------------- -# Determine which port will be built -# ----------------------------------------------------------------------------- -SET(ALL_PORTS Efl WinCE BlackBerry) -SET(PORT "NOPORT" CACHE STRING "choose which WebKit port to build (one of ${ALL_PORTS})") - -LIST(FIND ALL_PORTS ${PORT} RET) -IF (${RET} EQUAL -1) - MESSAGE(FATAL_ERROR "Please choose which WebKit port to build (one of ${ALL_PORTS})") -ENDIF () - -STRING(TOLOWER ${PORT} WEBKIT_PORT_DIR) - -# ----------------------------------------------------------------------------- -# Find common packages (used by all ports) -# ----------------------------------------------------------------------------- -FIND_PACKAGE(BISON REQUIRED) -FIND_PACKAGE(FLEX REQUIRED) -FIND_PACKAGE(Gperf REQUIRED) -FIND_PACKAGE(Perl REQUIRED) -FIND_PACKAGE(PythonInterp REQUIRED) - -# ----------------------------------------------------------------------------- -# Determine the target processor -# ----------------------------------------------------------------------------- -STRING(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} LOWERCASE_CMAKE_SYSTEM_PROCESSOR) -IF (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^arm") - SET(WTF_CPU_ARM 1) -ELSEIF (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "^mips") - SET(WTF_CPU_MIPS 1) -ELSEIF (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64|amd64)") - SET(WTF_CPU_X86_64 1) -ELSEIF (LOWERCASE_CMAKE_SYSTEM_PROCESSOR MATCHES "(i[3-6]86|x86)") - SET(WTF_CPU_X86 1) -ELSE () - MESSAGE(FATAL_ERROR "Unknown CPU '${CMAKE_SYSTEM_PROCESSOR}'") -ENDIF () - -# ----------------------------------------------------------------------------- -# Determine the operating system -# ----------------------------------------------------------------------------- -IF (UNIX) - IF (APPLE) - SET(WTF_OS_MAC_OS_X 1) - ELSE () - SET(WTF_OS_UNIX 1) - ENDIF () -ELSEIF (CMAKE_SYSTEM_NAME MATCHES "Windows") - SET(WTF_OS_WINDOWS 1) -ELSEIF (CMAKE_SYSTEM_NAME MATCHES "QNX") - SET(WTF_OS_QNX 1) - SET(WTF_OS_UNIX 1) -ELSE () - MESSAGE(FATAL_ERROR "Unknown OS '${CMAKE_SYSTEM_NAME}'") -ENDIF () - -# ----------------------------------------------------------------------------- -# Default target names (can be overrriden in Options${PORT}.cmake file) -# ----------------------------------------------------------------------------- -SET(JSC_EXECUTABLE_NAME JSC) -SET(WTF_LIBRARY_NAME WTF) -SET(JavaScriptCore_LIBRARY_NAME JavaScriptCore) -SET(WebCore_LIBRARY_NAME WebCore) -SET(WebKit_LIBRARY_NAME WebKit) -SET(WebKit2_LIBRARY_NAME WebKit2) -SET(WebCoreTestSupport_LIBRARY_NAME WebCoreTestSupport) - -# ----------------------------------------------------------------------------- -# Default library types -# ----------------------------------------------------------------------------- -OPTION(SHARED_CORE "build JavaScriptCore and WebCore as shared libraries") - -IF (SHARED_CORE) - SET(JavaScriptCore_LIBRARY_TYPE SHARED) - SET(WebCore_LIBRARY_TYPE SHARED) -ELSE () - SET(JavaScriptCore_LIBRARY_TYPE STATIC) - SET(WebCore_LIBRARY_TYPE STATIC) -ENDIF () - -SET(WebKit_LIBRARY_TYPE SHARED) -SET(WebKit2_LIBRARY_TYPE SHARED) -SET(WebCoreTestSupport_LIBRARY_TYPE STATIC) - -# ----------------------------------------------------------------------------- -# Port-specific options -# ----------------------------------------------------------------------------- -INCLUDE(OptionsCommon) -INCLUDE(Options${PORT}) - -# ----------------------------------------------------------------------------- -# Enable API unit tests and create a target for the test runner -# ----------------------------------------------------------------------------- -IF (ENABLE_API_TESTS) - ENABLE_TESTING() -ENDIF () - -# ----------------------------------------------------------------------------- -# Install JavaScript shell -# ----------------------------------------------------------------------------- -OPTION(SHOULD_INSTALL_JS_SHELL "generate an installation rule to install the built JavaScript shell") - -# ----------------------------------------------------------------------------- -# Define packaging -# ----------------------------------------------------------------------------- -INCLUDE(WebKitPackaging) - -# ----------------------------------------------------------------------------- -# Add module directories -# ----------------------------------------------------------------------------- -ADD_SUBDIRECTORY(Source) - -# ----------------------------------------------------------------------------- -# Add tools -# ----------------------------------------------------------------------------- -IF (ENABLE_TOOLS) - ADD_SUBDIRECTORY(Tools) -ENDIF () - diff --git a/meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb b/meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb new file mode 100644 index 000000000..068c0d977 --- /dev/null +++ b/meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb @@ -0,0 +1,10 @@ +require ${BPN}.inc + +SRC_URI += "\ + file://0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch \ + file://0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch \ + file://0003-FEBlendNEON.h-fix-missing-semicolon.patch \ + file://0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch \ +" +SRC_URI[md5sum] = "90fa970ebf8646319d292c2bb5bff5db" +SRC_URI[sha256sum] = "d8d21e27f4a21cd77c41914548c184ddb98693ba23851aa66c8e51c0be4b90b7" diff --git a/meta-efl/recipes-efl/webkit/webkit-efl_2.3.4+svnr164189.bb b/meta-efl/recipes-efl/webkit/webkit-efl_2.3.4+svnr164189.bb deleted file mode 100644 index 748ecea11..000000000 --- a/meta-efl/recipes-efl/webkit/webkit-efl_2.3.4+svnr164189.bb +++ /dev/null @@ -1,13 +0,0 @@ -require ${BPN}.inc - -SRC_URI = "\ - ${E_RELEASES}/libs/webkit-efl/webkit-efl-164189.tar.xz \ - file://0001-WebKitHelpers.cmake-Add-Wno-error-cast-align.patch \ - file://0002-ARMAssembler.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch \ - file://0003-Fix-linking-issue.patch \ - file://0004-WebMemorySamplerLinux-Fix-type-limits-warning.patch \ -" -SRC_URI[md5sum] = "731513fc042ec8e03840bc1ab6a66771" -SRC_URI[sha256sum] = "660aefd65c0e5c6494eaec30539cda5f40fbdff17f28e7e83d341b245227cccd" - -S = "${WORKDIR}/efl-webkit" diff --git a/meta-efl/recipes-efl/webkit/webkit-efl_svn.bb b/meta-efl/recipes-efl/webkit/webkit-efl_svn.bb deleted file mode 100644 index e50139c8d..000000000 --- a/meta-efl/recipes-efl/webkit/webkit-efl_svn.bb +++ /dev/null @@ -1,22 +0,0 @@ -require ${BPN}.inc - -SRCREV = "164189" -PV = "2.3.4+svnr${SRCPV}" - -SRCREV_FORMAT = "source" - -SRC_URI = "\ - svn://svn.webkit.org/repository/webkit/trunk;module=Source;name=source;protocol=http;subdir=src \ - svn://svn.webkit.org/repository/webkit/trunk/;module=WebKitLibraries;protocol=http;subdir=src \ - svn://svn.webkit.org/repository/webkit/trunk/;module=Tools;protocol=http;subdir=src \ - file://CMakeLists.txt \ - file://0001-WebKitHelpers.cmake-Add-Wno-error-cast-align.patch \ - file://0002-ARMAssembler.h-Don-t-generate-BKPT-and-BLX-for-armv4.patch \ - file://0003-Fix-linking-issue.patch \ -" - -S = "${WORKDIR}/src" - -do_configure_prepend() { - cp ${WORKDIR}/CMakeLists.txt ${S}; -} -- cgit v1.2.3-54-g00ecf