[EFL] Build break with latest EFL libraries.
authorryuan.choi@samsung.com <ryuan.choi@samsung.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Dec 2012 00:59:46 +0000 (00:59 +0000)
committerryuan.choi@samsung.com <ryuan.choi@samsung.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 21 Dec 2012 00:59:46 +0000 (00:59 +0000)
https://bugs.webkit.org/show_bug.cgi?id=104827

Reviewed by Laszlo Gombos.

.:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

* Source/cmake/FindEo.cmake: Added.
* Source/cmake/OptionsEfl.cmake:
Modified to check Eo when version of EFL libraries is 1.8.

Source/WebCore:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

* PlatformEfl.cmake: Includes eo EFL library.
* platform/Widget.h: Modified declaration of Evas and Evas_Object.
In addition, removed unnecessary declaration.
* platform/efl/EflScreenUtilities.h: Modified declaration of Evas.
* platform/efl/RenderThemeEfl.h: Removed unnecessary declaration.
* platform/graphics/Icon.h: Ditto.
* platform/graphics/Image.h: Modified declaration of Evas and Evas_Object.

Source/WebKit:

* PlatformEfl.cmake: Includes eo EFL library.

Source/WebKit/efl:

* WebCoreSupport/ChromeClientEfl.h: Removed unnecessary declaration.
* WebCoreSupport/DumpRenderTreeSupportEfl.h: Ditto.
* WebCoreSupport/EditorClientEfl.h: Ditto.
* WebCoreSupport/FrameNetworkingContextEfl.h: Ditto.
* WebCoreSupport/PageClientEfl.h: Ditto.

Source/WebKit2:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

* PlatformEfl.cmake: Includes eo EFL library.
* UIProcess/API/C/efl/WKAPICastEfl.h: Modified declaration of Evas_Object.
* UIProcess/API/C/efl/WKView.h: Modified declaration of Evas.
* UIProcess/efl/WebPopupMenuProxyEfl.h: Removed unnecessary declaration.

Source/WTF:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

* wtf/OwnPtrCommon.h: Modified declaration of Evas_Object and Ecore_Timer.
* wtf/PlatformEfl.cmake: Includes eo EFL library.
* wtf/efl/RefPtrEfl.h: Modified declaration of Evas_Object.

Tools:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

* DumpRenderTree/efl/CMakeLists.txt: Includes eo EFL library.
* EWebLauncher/CMakeLists.txt: Ditto.
* MiniBrowser/efl/CMakeLists.txt: Ditto.
* ImageDiff/PlatformEfl.cmake: Ditto.
* TestWebKitAPI/PlatformEfl.cmake: Ditto.
* TestWebKitAPI/PlatformWebView.h: Modified declaration of Evas_Object.
* WebKitTestRunner/InjectedBundle/TestRunner.h: Modified declaration of Ecore_Timer.
* WebKitTestRunner/PlatformEfl.cmake: Includes eo EFL library.
* WebKitTestRunner/PlatformWebView.h: Modified declaration of Evas_Object.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@138326 268f45cc-cd09-0410-ab3c-d52691b4dbfc

37 files changed:
ChangeLog
Source/WTF/ChangeLog
Source/WTF/wtf/OwnPtrCommon.h
Source/WTF/wtf/PlatformEfl.cmake
Source/WTF/wtf/efl/RefPtrEfl.h
Source/WebCore/ChangeLog
Source/WebCore/PlatformEfl.cmake
Source/WebCore/platform/Widget.h
Source/WebCore/platform/efl/EflScreenUtilities.h
Source/WebCore/platform/efl/RenderThemeEfl.h
Source/WebCore/platform/graphics/Icon.h
Source/WebCore/platform/graphics/Image.h
Source/WebKit/ChangeLog
Source/WebKit/PlatformEfl.cmake
Source/WebKit/efl/ChangeLog
Source/WebKit/efl/WebCoreSupport/ChromeClientEfl.h
Source/WebKit/efl/WebCoreSupport/DumpRenderTreeSupportEfl.h
Source/WebKit/efl/WebCoreSupport/EditorClientEfl.h
Source/WebKit/efl/WebCoreSupport/FrameNetworkingContextEfl.h
Source/WebKit/efl/WebCoreSupport/PageClientEfl.h
Source/WebKit2/ChangeLog
Source/WebKit2/PlatformEfl.cmake
Source/WebKit2/UIProcess/API/C/efl/WKAPICastEfl.h
Source/WebKit2/UIProcess/API/C/efl/WKView.h
Source/WebKit2/UIProcess/efl/WebPopupMenuProxyEfl.h
Source/cmake/FindEo.cmake [new file with mode: 0644]
Source/cmake/OptionsEfl.cmake
Tools/ChangeLog
Tools/DumpRenderTree/efl/CMakeLists.txt
Tools/EWebLauncher/CMakeLists.txt
Tools/ImageDiff/PlatformEfl.cmake
Tools/MiniBrowser/efl/CMakeLists.txt
Tools/TestWebKitAPI/PlatformEfl.cmake
Tools/TestWebKitAPI/PlatformWebView.h
Tools/WebKitTestRunner/InjectedBundle/TestRunner.h
Tools/WebKitTestRunner/PlatformEfl.cmake
Tools/WebKitTestRunner/PlatformWebView.h

index 9a4bacb..077aff0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
+
+        [EFL] Build break with latest EFL libraries.
+        https://bugs.webkit.org/show_bug.cgi?id=104827
+
+        Reviewed by Laszlo Gombos.
+
+        The eo EFL package is introduced and evas and ecore use it since 1.8.
+        While introducing Eo, EFL changed several structures of Evas and Ecore
+        from own specific class to Eo.
+
+        So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
+        Ecore_Timer to build with latest EFL libraries.
+
+        * Source/cmake/FindEo.cmake: Added.
+        * Source/cmake/OptionsEfl.cmake:
+        Modified to check Eo when version of EFL libraries is 1.8.
+
 2012-12-20  Kondapally Kalyan  <kalyan.kondapally@intel.com>
 
         [EFL][WebGL][Wk2] Replace HAVE(GLX) checks with USE(GLX).
index 4a3515b..da9b2db 100644 (file)
@@ -1,3 +1,21 @@
+2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
+
+        [EFL] Build break with latest EFL libraries.
+        https://bugs.webkit.org/show_bug.cgi?id=104827
+
+        Reviewed by Laszlo Gombos.
+
+        The eo EFL package is introduced and evas and ecore use it since 1.8.
+        While introducing Eo, EFL changed several structures of Evas and Ecore
+        from own specific class to Eo.
+
+        So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
+        Ecore_Timer to build with latest EFL libraries.
+
+        * wtf/OwnPtrCommon.h: Modified declaration of Evas_Object and Ecore_Timer.
+        * wtf/PlatformEfl.cmake: Includes eo EFL library.
+        * wtf/efl/RefPtrEfl.h: Modified declaration of Evas_Object.
+
 2012-12-20  Oliver Hunt  <oliver@apple.com>
 
         Harden pointers in FastMalloc's singly linked list implementation
index c564001..27c7754 100644 (file)
@@ -42,10 +42,15 @@ typedef struct HRGN__* HRGN;
 typedef struct _Ecore_Evas Ecore_Evas;
 typedef struct _Ecore_IMF_Context Ecore_IMF_Context;
 typedef struct _Ecore_Pipe Ecore_Pipe;
-typedef struct _Ecore_Timer Ecore_Timer;
 typedef struct _Eina_Hash Eina_Hash;
 typedef struct _Eina_Module Eina_Module;
+#if USE(EO)
+typedef struct _Eo Ecore_Timer;
+typedef struct _Eo Evas_Object;
+#else
+typedef struct _Ecore_Timer Ecore_Timer;
 typedef struct _Evas_Object Evas_Object;
+#endif
 #if USE(ACCELERATED_COMPOSITING)
 typedef struct _Evas_GL Evas_GL;
 #endif
index dc0919f..6a7b763 100644 (file)
@@ -23,6 +23,7 @@ list(APPEND WTF_LIBRARIES
     ${ECORE_EVAS_LIBRARIES}
     ${ECORE_IMF_LIBRARIES}
     ${EINA_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
     ${CMAKE_DL_LIBS}
 )
@@ -31,6 +32,7 @@ list(APPEND WTF_INCLUDE_DIRECTORIES
     ${ECORE_INCLUDE_DIRS}
     ${ECORE_EVAS_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
     ${ICU_INCLUDE_DIRS}
index 4815284..ab56435 100644 (file)
 
 #include <wtf/RefPtr.h>
 
+#if USE(EO)
+typedef struct _Eo Evas_Object;
+#else
 typedef struct _Evas_Object Evas_Object;
+#endif
 
 namespace WTF {
 
index 06a33c2..d3f9168 100644 (file)
@@ -1,3 +1,25 @@
+2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
+
+        [EFL] Build break with latest EFL libraries.
+        https://bugs.webkit.org/show_bug.cgi?id=104827
+
+        Reviewed by Laszlo Gombos.
+
+        The eo EFL package is introduced and evas and ecore use it since 1.8.
+        While introducing Eo, EFL changed several structures of Evas and Ecore
+        from own specific class to Eo.
+
+        So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
+        Ecore_Timer to build with latest EFL libraries.
+
+        * PlatformEfl.cmake: Includes eo EFL library.
+        * platform/Widget.h: Modified declaration of Evas and Evas_Object.
+        In addition, removed unnecessary declaration.
+        * platform/efl/EflScreenUtilities.h: Modified declaration of Evas.
+        * platform/efl/RenderThemeEfl.h: Removed unnecessary declaration.
+        * platform/graphics/Icon.h: Ditto.
+        * platform/graphics/Image.h: Modified declaration of Evas and Evas_Object.
+
 2012-12-20  Sheriff Bot  <webkit.review.bot@gmail.com>
 
         Unreviewed, rolling out r138270.
index 7b21081..56e306c 100644 (file)
@@ -165,6 +165,7 @@ list(APPEND WebCore_LIBRARIES
     ${ECORE_EVAS_LIBRARIES}
     ${ECORE_FILE_LIBRARIES}
     ${ECORE_X_LIBRARIES}
+    ${EO_LIBRARIES}
     ${E_DBUS_LIBRARIES}
     ${E_DBUS_EUKIT_LIBRARIES}
     ${EDJE_LIBRARIES}
@@ -193,6 +194,7 @@ list(APPEND WebCore_INCLUDE_DIRECTORIES
     ${ECORE_EVAS_INCLUDE_DIRS}
     ${ECORE_FILE_INCLUDE_DIRS}
     ${ECORE_X_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${E_DBUS_INCLUDE_DIRS}
     ${E_DBUS_EUKIT_INCLUDE_DIRS}
     ${EDJE_INCLUDE_DIRS}
index 3ba3625..c2c7c6d 100644 (file)
@@ -79,9 +79,13 @@ typedef wxWindow* PlatformWidget;
 #endif
 
 #if PLATFORM(EFL)
+#if USE(EO)
+typedef struct _Eo Evas_Object;
+typedef struct _Eo Evas;
+#else
 typedef struct _Evas_Object Evas_Object;
 typedef struct _Evas Evas;
-typedef struct _Ecore_Evas Ecore_Evas;
+#endif
 typedef Evas_Object* PlatformWidget;
 #endif
 
index 6ec60ef..e913057 100644 (file)
 
 #include <wtf/text/WTFString.h>
 
+#if USE(EO)
+typedef struct _Eo Evas;
+#else
 typedef struct _Evas Evas;
+#endif
 
 namespace WebCore {
 
index 622213c..f88267c 100644 (file)
@@ -39,9 +39,6 @@
 #include <cairo.h>
 #include <wtf/efl/RefPtrEfl.h>
 
-typedef struct _Ecore_Evas Ecore_Evas;
-typedef struct _Evas_Object Evas_Object;
-
 namespace WebCore {
 
 enum FormType { // KEEP IN SYNC WITH edjeGroupFromFormType()
index 781a08c..c585807 100644 (file)
@@ -35,8 +35,6 @@ typedef struct HICON__* HICON;
 #include <QIcon>
 #elif PLATFORM(GTK)
 typedef struct _GdkPixbuf GdkPixbuf;
-#elif PLATFORM(EFL)
-typedef struct _Evas_Object Evas_Object;
 #elif PLATFORM(CHROMIUM)
 #include "Image.h"
 #include "PlatformIcon.h"
index 4e85a58..41a3146 100644 (file)
@@ -62,9 +62,14 @@ typedef struct _GdkPixbuf GdkPixbuf;
 #endif
 
 #if PLATFORM(EFL)
+#if USE(EO)
+typedef struct _Eo Evas;
+typedef struct _Eo Evas_Object;
+#else
 typedef struct _Evas Evas;
 typedef struct _Evas_Object Evas_Object;
 #endif
+#endif
 
 namespace WebCore {
 
index 1d87a16..a427aeb 100644 (file)
@@ -1,3 +1,12 @@
+2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
+
+        [EFL] Build break with latest EFL libraries.
+        https://bugs.webkit.org/show_bug.cgi?id=104827
+
+        Reviewed by Laszlo Gombos.
+
+        * PlatformEfl.cmake: Includes eo EFL library.
+
 2012-12-18  Joseph Pecoraro  <pecoraro@apple.com>
 
         [Mac] Add Build Phase to Check Headers for Inappropriate Macros (Platform.h macros)
index 2736a25..37bf7a1 100644 (file)
@@ -17,6 +17,7 @@ list(APPEND WebKit_INCLUDE_DIRECTORIES
     ${EDJE_INCLUDE_DIRS}
     ${EFREET_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
     ${HARFBUZZ_INCLUDE_DIRS}
@@ -149,6 +150,7 @@ list(APPEND WebKit_LIBRARIES
     ${ECORE_EVAS_LIBRARIES}
     ${ECORE_INPUT_LIBRARIES}
     ${EFREET_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
     ${FREETYPE_LIBRARIES}
     ${HARFBUZZ_LIBRARIES}
index 124634c..d3c3001 100644 (file)
@@ -1,3 +1,16 @@
+2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
+
+        [EFL] Build break with latest EFL libraries.
+        https://bugs.webkit.org/show_bug.cgi?id=104827
+
+        Reviewed by Laszlo Gombos.
+
+        * WebCoreSupport/ChromeClientEfl.h: Removed unnecessary declaration.
+        * WebCoreSupport/DumpRenderTreeSupportEfl.h: Ditto.
+        * WebCoreSupport/EditorClientEfl.h: Ditto.
+        * WebCoreSupport/FrameNetworkingContextEfl.h: Ditto.
+        * WebCoreSupport/PageClientEfl.h: Ditto.
+
 2012-12-18  Alexey Proskuryakov  <ap@apple.com>
 
         Remove unnecessary functions from CookiesStrategy
index b92d2cc..8c74d16 100644 (file)
@@ -36,8 +36,6 @@
 #include "NotificationClient.h"
 #endif
 
-typedef struct _Evas_Object Evas_Object;
-
 namespace WebCore {
 
 class ChromeClientEfl : public ChromeClient {
index 80277d5..2966346 100644 (file)
@@ -30,7 +30,6 @@
 #include <wtf/Vector.h>
 #include <wtf/text/WTFString.h>
 
-typedef struct _Evas_Object Evas_Object;
 typedef struct _Ewk_History_Item Ewk_History_Item;
 typedef struct _Ewk_Intent Ewk_Intent;
 typedef struct _Ewk_Intent_Request Ewk_Intent_Request;
index 2a8ff4f..c2cddb5 100644 (file)
@@ -41,8 +41,6 @@
 #include <wtf/Deque.h>
 #include <wtf/Forward.h>
 
-typedef struct _Evas_Object Evas_Object;
-
 struct Ewk_Should_Insert_Node_Event {
     WebCore::Node* node;
     WebCore::Range* range;
index 68531cc..31470e9 100644 (file)
@@ -31,8 +31,6 @@
 
 #include "FrameNetworkingContext.h"
 
-typedef struct _Evas_Object Evas_Object;
-
 namespace WebCore {
 
 class FrameNetworkingContextEfl : public WebCore::FrameNetworkingContext {
index 8ba7544..4516d46 100644 (file)
@@ -23,7 +23,6 @@
 #include "IntRect.h"
 
 typedef struct _Evas_Native_Surface Evas_Native_Surface;
-typedef struct _Evas_Object Evas_Object;
 
 namespace WebCore {
 class GraphicsContext3D;
index 69542cb..171608e 100644 (file)
@@ -1,3 +1,22 @@
+2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
+
+        [EFL] Build break with latest EFL libraries.
+        https://bugs.webkit.org/show_bug.cgi?id=104827
+
+        Reviewed by Laszlo Gombos.
+
+        The eo EFL package is introduced and evas and ecore use it since 1.8.
+        While introducing Eo, EFL changed several structures of Evas and Ecore
+        from own specific class to Eo.
+
+        So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
+        Ecore_Timer to build with latest EFL libraries.
+
+        * PlatformEfl.cmake: Includes eo EFL library.
+        * UIProcess/API/C/efl/WKAPICastEfl.h: Modified declaration of Evas_Object.
+        * UIProcess/API/C/efl/WKView.h: Modified declaration of Evas.
+        * UIProcess/efl/WebPopupMenuProxyEfl.h: Removed unnecessary declaration.
+
 2012-12-20  Helder Correia  <helder.correia@nokia.com>
 
         [CoordGfx] Remove CoordinatedLayerUpdateInfo class forwarding
index 546e004..c57c28e 100644 (file)
@@ -181,6 +181,7 @@ list(APPEND WebKit2_INCLUDE_DIRECTORIES
     ${EDJE_INCLUDE_DIRS}
     ${EFREET_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
     ${HARFBUZZ_INCLUDE_DIRS}
     ${LIBSOUP_INCLUDE_DIRS}
@@ -205,6 +206,7 @@ list(APPEND WebKit2_LIBRARIES
     ${EDJE_LIBRARIES}
     ${EFREET_LIBRARIES}
     ${EINA_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
     ${Freetype_LIBRARIES}
     ${HARFBUZZ_LIBRARIES}
index 5a068ef..b013a0a 100644 (file)
 #error "Please #include \"WKAPICast.h\" instead of this file directly."
 #endif
 
+#if USE(EO)
+typedef struct _Eo Evas_Object;
+#else
 typedef struct _Evas_Object Evas_Object;
+#endif
 
 namespace WebKit {
 
index ca17a99..84e1b47 100644 (file)
 
 #include <WebKit2/WKBase.h>
 
+#if USE(EO)
+typedef struct _Eo Evas;
+#else
 typedef struct _Evas Evas;
+#endif
 
 #ifdef __cplusplus
 extern "C" {
index e4edb96..4c0cafe 100644 (file)
@@ -28,8 +28,6 @@
 
 #include "WebPopupMenuProxy.h"
 
-typedef struct _Evas_Object Evas_Object;
-
 namespace WebCore {
 class IntRect;
 }
diff --git a/Source/cmake/FindEo.cmake b/Source/cmake/FindEo.cmake
new file mode 100644 (file)
index 0000000..59714d1
--- /dev/null
@@ -0,0 +1,41 @@
+# - Try to find Eo
+# Once done, this will define
+#
+#  EO_FOUND - system has Eo installed.
+#  EO_INCLUDE_DIRS - directories which contain the Eo headers.
+#  EO_LIBRARIES - libraries required to link against Eo.
+#
+# Copyright (C) 2012 Samsung Electronics.
+#
+# 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 above copyright
+#     notice, this list of conditions and the following disclaimer.
+# 2.  Redistributions in binary form must reproduce the above copyright
+#     notice, this list of conditions and the following disclaimer in the
+#     documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``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 COPYRIGHT HOLDER OR ITS
+# CONTRIBUTORS 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.
+
+include(EFLHelpers)
+
+FIND_EFL_LIBRARY(EO
+    HEADERS Eo.h
+    HEADER_PREFIXES eo-1
+    LIBRARY eo
+)
+
+include(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(Eo REQUIRED_VARS EO_INCLUDE_DIRS EO_LIBRARIES
+                                     VERSION_VAR   EO_VERSION)
index a5133e9..800a709 100644 (file)
@@ -123,6 +123,12 @@ find_package(Eeze 1.6 REQUIRED)
 find_package(Efreet 1.6 REQUIRED)
 find_package(E_DBus 1.6 COMPONENTS EUKit)
 
+# Add Eo dependency if EFL version is 1.8
+if (${EVAS_VERSION} VERSION_EQUAL 1.8 AND ${ECORE_VERSION} VERSION_EQUAL 1.8)
+    find_package(Eo)
+    add_definitions(-DWTF_USE_EO=1)
+endif ()
+
 # Prefer and promote EFL version 1.7+ as the reference configuration
 if ((${EINA_VERSION} STRLESS 1.7) OR (${EVAS_VERSION} STRLESS 1.7) OR (${ECORE_VERSION} STRLESS 1.7) OR (${EDJE_VERSION} STRLESS 1.7) OR
     (${EET_VERSION} STRLESS 1.7) OR (${EEZE_VERSION} STRLESS 1.7) OR (${EFREET_VERSION} STRLESS 1.7) OR (${E_DBUS_VERSION} STRLESS 1.7))
index 4118c37..4a97cca 100644 (file)
@@ -1,3 +1,27 @@
+2012-12-20  Ryuan Choi  <ryuan.choi@samsung.com>
+
+        [EFL] Build break with latest EFL libraries.
+        https://bugs.webkit.org/show_bug.cgi?id=104827
+
+        Reviewed by Laszlo Gombos.
+
+        The eo EFL package is introduced and evas and ecore use it since 1.8.
+        While introducing Eo, EFL changed several structures of Evas and Ecore
+        from own specific class to Eo.
+
+        So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
+        Ecore_Timer to build with latest EFL libraries.
+
+        * DumpRenderTree/efl/CMakeLists.txt: Includes eo EFL library.
+        * EWebLauncher/CMakeLists.txt: Ditto.
+        * MiniBrowser/efl/CMakeLists.txt: Ditto.
+        * ImageDiff/PlatformEfl.cmake: Ditto.
+        * TestWebKitAPI/PlatformEfl.cmake: Ditto.
+        * TestWebKitAPI/PlatformWebView.h: Modified declaration of Evas_Object.
+        * WebKitTestRunner/InjectedBundle/TestRunner.h: Modified declaration of Ecore_Timer.
+        * WebKitTestRunner/PlatformEfl.cmake: Includes eo EFL library.
+        * WebKitTestRunner/PlatformWebView.h: Modified declaration of Evas_Object.
+
 2012-12-20  Dirk Pranke  <dpranke@chromium.org>
 
         TestExpectation fallback is broken
index d236d0d..2b9c9a3 100644 (file)
@@ -34,6 +34,7 @@ set(DumpRenderTree_LIBRARIES
     ${ECORE_INPUT_LIBRARIES}
     ${EDJE_LIBRARIES}
     ${EINA_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
     ${FONTCONFIG_LIBRARIES}
     ${LIBXML2_LIBRARIES}
@@ -103,6 +104,7 @@ set(DumpRenderTree_INCLUDE_DIRECTORIES
     ${ECORE_INPUT_INCLUDE_DIRS}
     ${EDJE_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
     ${FONTCONFIG_INCLUDE_DIR}
     ${GLIB_INCLUDE_DIRS}
index e27c503..05b95fd 100644 (file)
@@ -15,6 +15,7 @@ set(EWebLauncher_LIBRARIES
     ${ECORE_X_LIBRARIES}
     ${EDJE_LIBRARIES}
     ${EINA_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
     ${LIBXML2_LIBRARIES}
     ${LIBXSLT_LIBRARIES}
@@ -32,6 +33,7 @@ set(EWebLauncher_INCLUDE_DIRECTORIES
     ${ECORE_X_INCLUDE_DIRS}
     ${EDJE_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
     ${LIBSOUP_INCLUDE_DIRS}
index 4af46f4..68b4444 100644 (file)
@@ -6,6 +6,7 @@ list(APPEND IMAGE_DIFF_INCLUDE_DIRECTORIES
     ${ECORE_EVAS_INCLUDE_DIRS}
     ${ECORE_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
 )
 
@@ -13,5 +14,6 @@ list(APPEND IMAGE_DIFF_LIBRARIES
     ${ECORE_EVAS_LIBRARIES}
     ${ECORE_LIBRARIES}
     ${EINA_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
 )
index af13763..922f355 100644 (file)
@@ -15,6 +15,7 @@ set(MiniBrowser_INCLUDE_DIRECTORIES
     ${ECORE_FILE_INCLUDE_DIRS}
     ${EDJE_INCLUDE_DIRS}
     ${EET_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${DBUS_INCLUDE_DIRS}
     ${E_DBUS_INCLUDE_DIRS}
     ${EFREET_INCLUDE_DIRS}
@@ -38,6 +39,7 @@ set(MiniBrowser_LIBRARIES
     ${EDJE_LIBRARIES}
     ${EINA_LIBRARIES}
     ${ELEMENTARY_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
     ${FONTCONFIG_LIBRARIES}
     ${GLIB_LIBRARIES}
index 1a7ef34..3ca711c 100644 (file)
@@ -16,6 +16,7 @@ include_directories(
     ${WEBKIT2_DIR}/UIProcess/API/efl
     ${ECORE_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
     ${LIBSOUP_INCLUDE_DIRS}
index 653a17c..5ad1eed 100644 (file)
@@ -47,7 +47,11 @@ typedef HWND PlatformWindow;
 typedef WKViewRef PlatformWKView;
 typedef GtkWidget *PlatformWindow;
 #elif PLATFORM(EFL)
+#if USE(EO)
+typedef struct _Eo Evas_Object;
+#else
 typedef struct _Evas_Object Evas_Object;
+#endif
 typedef struct _Ecore_Evas Ecore_Evas;
 typedef Evas_Object* PlatformWKView;
 typedef Ecore_Evas* PlatformWindow;
index 943b56e..7329270 100644 (file)
@@ -45,7 +45,11 @@ typedef QTimer PlatformTimerRef;
 #elif PLATFORM(GTK)
 typedef unsigned int PlatformTimerRef;
 #elif PLATFORM(EFL)
+#if USE(EO)
+typedef struct _Eo Ecore_Timer;
+#else
 typedef struct _Ecore_Timer Ecore_Timer;
+#endif
 typedef Ecore_Timer* PlatformTimerRef;
 #endif
 
index 9ef1346..653c273 100644 (file)
@@ -25,6 +25,7 @@ list(APPEND WebKitTestRunner_INCLUDE_DIRECTORIES
     ${ECORE_INCLUDE_DIRS}
     ${ECORE_EVAS_INCLUDE_DIRS}
     ${EINA_INCLUDE_DIRS}
+    ${EO_INCLUDE_DIRS}
     ${EVAS_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
 )
@@ -34,6 +35,7 @@ list(APPEND WebKitTestRunner_LIBRARIES
     ${ECORE_LIBRARIES}
     ${ECORE_EVAS_LIBRARIES}
     ${EINA_LIBRARIES}
+    ${EO_LIBRARIES}
     ${EVAS_LIBRARIES}
     ${GLIB_LIBRARIES}
     ${OPENGL_LIBRARIES}
index bbdc6b7..8f9dcdb 100644 (file)
@@ -54,7 +54,11 @@ typedef struct _GtkWidget GtkWidget;
 typedef WKViewRef PlatformWKView;
 typedef GtkWidget* PlatformWindow;
 #elif PLATFORM(EFL)
+#if USE(EO)
+typedef struct _Eo Evas_Object;
+#else
 typedef struct _Evas_Object Evas_Object;
+#endif
 typedef struct _Ecore_Evas Ecore_Evas;
 typedef Evas_Object* PlatformWKView;
 typedef Ecore_Evas* PlatformWindow;