]> code.ossystems Code Review - openembedded-core.git/commitdiff
webkit: update to 30762 from OE
authorMarcin Juszkiewicz <hrw@openedhand.com>
Wed, 5 Mar 2008 13:19:52 +0000 (13:19 +0000)
committerMarcin Juszkiewicz <hrw@openedhand.com>
Wed, 5 Mar 2008 13:19:52 +0000 (13:19 +0000)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3919 311d38ba-8fff-0310-9ca6-ca027cbcb966

meta/conf/distro/poky.conf
meta/packages/webkit/files/GNUmakefile.am
meta/packages/webkit/files/Makefile
meta/packages/webkit/files/Makefile.shared
meta/packages/webkit/files/WebKit.pri
meta/packages/webkit/files/autogen.sh
meta/packages/webkit/files/configure.ac
meta/packages/webkit/webkit-gtk_svn.bb
meta/packages/webkit/webkit.inc

index 40040183b234ff74ce104b58d4454a7a08f7bc93..b19f30eb4797cb85c04c67b2d70afd2633badbee 100644 (file)
@@ -139,7 +139,7 @@ SRCREV_pn-gaku ?= "365"
 SRCREV_pn-gypsy ?= "39"
 SRCDATE_yaffs2-utils = "20071107"
 SRCDATE_yaffs2-utils-native = "20071107"
-SRCREV_pn-webkit-gtk ?= "28656"
+SRCREV_pn-webkit-gtk ?= "30762"
 SRCREV_pn-clipboard-manager ?= "14994"
 
 # Previously floating revisions
index f3ec252ee864c971336b6d6b6ce14a5984a120f5..977770a1eddb868d39f244862bcd7de80759f229 100644 (file)
 #
 # global_cppflags   = CPPFLAGS that apply to JSC, WebCore, and to any
 #                     specific port
-# global_cflags     = CFLAGS and CXXFLAGS that apply to JSC, WebCore, and to
+# global_cflags     = CFLAGS that apply to JSC, WebCore, and to
 #                     any specific port
+# global_cxxflags   = CXXFLAGS that apply to JSC, WebCore, and to any
+#                     specific port
 
 srcdir = @srcdir@
 VPATH = @srcdir@
@@ -34,8 +36,6 @@ GENSOURCES := $(top_builddir)/DerivedSources
 CREATE_HASH_TABLE = $(srcdir)/JavaScriptCore/kjs/create_hash_table
 
 # Libraries and support components
-noinst_LTLIBRARIES :=
-
 noinst_HEADERS :=
 
 noinst_PROGRAMS :=
@@ -49,140 +49,203 @@ EXTRA_DIST :=
 
 #
 # Global flags to CPP
-global_cppflags := 
+global_cppflags :=
 
 global_cppflags += \
-       -I $(srcdir)/JavaScriptCore \
-       -I $(srcdir)/JavaScriptCore/ForwardingHeaders \
-       -I $(srcdir)/JavaScriptCore/wtf \
-       -I $(srcdir)/JavaScriptCore/kjs \
-       -I $(top_builddir)/DerivedSources
+       -I$(srcdir)/JavaScriptCore \
+       -I$(srcdir)/JavaScriptCore/ForwardingHeaders \
+       -I$(srcdir)/JavaScriptCore/wtf \
+       -I$(srcdir)/JavaScriptCore/kjs \
+       -I$(top_builddir)/DerivedSources
 
 # Default compiler flags
 global_cflags := \
        -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type \
        -Wformat -Wformat-security -Wno-format-y2k -Wundef \
        -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings \
-       -Wno-unused-parameter -fno-exceptions -fno-strict-aliasing
+       -Wno-unused-parameter
 
-# Libraries
-lib_LTLIBRARIES = libJavaScriptCore.la libWebKitGtk.la
+global_cxxflags := \
+       $(SYMBOL_VISIBILITY_INLINES)
+
+if !ENABLE_DEBUG
+global_cflags += \
+       -fno-exceptions \
+       $(SYMBOL_VISIBILITY)
+
+global_cxxflags += \
+       -fno-rtti
+endif
+
+# Shared libraries
+lib_LTLIBRARIES = \
+       libwebkit-1.0.la
+
+# Convenience libraries
+noinst_LTLIBRARIES = \
+       libJavaScriptCore.la \
+       libWebCore.la
 
 #
 # JavaScriptCore
 javascriptcore_h_api :=
 javascriptcore_cppflags:=
 javascriptcore_sources :=
-javascriptcore_built_sources := 
+javascriptcore_built_sources :=
 javascriptcore_built_nosources :=
 
 # The variables above are already included below so no need to touch
 # these variables unless you really have to
-libJavaScriptCore_ladir = $(prefix)/include/WebKit/JavaScriptCore
-libJavaScriptCore_la_HEADERS := $(javascriptcore_h_api)
+libJavaScriptCore_ladir = $(prefix)/include/webkit-1.0/JavaScriptCore
+libJavaScriptCore_la_HEADERS = $(javascriptcore_h_api)
 
-libJavaScriptCore_la_SOURCES := \
+libJavaScriptCore_la_SOURCES = \
        $(javascriptcore_built_sources) \
        $(javascriptcore_sources)
 
-libJavaScriptCore_la_LDFLAGS := -lpthread
+libJavaScriptCore_la_LIBADD = \
+       $(ICU_LIBS) \
+       $(GLOBALDEPS_LIBS) \
+       -lpthread
 
-libJavaScriptCore_la_CXXFLAGS := $(global_cflags)
+libJavaScriptCore_la_CXXFLAGS = \
+       $(global_cxxflags) \
+       $(global_cflags) \
+       $(GLOBALDEPS_CFLAGS) \
+       -fstrict-aliasing
 
-libJavaScriptCore_la_CFLAGS := $(global_cflags)
+libJavaScriptCore_la_CFLAGS = \
+       $(global_cflags) \
+       $(GLOBALDEPS_CFLAGS) \
+       -fstrict-aliasing
 
-libJavaScriptCore_la_CPPFLAGS := $(global_cppflags) $(javascriptcore_cppflags)
+libJavaScriptCore_la_CPPFLAGS = \
+       $(global_cppflags) \
+       $(javascriptcore_cppflags) \
+       $(ICU_CPPFLAGS)
 
 #
 # WebCore
 webcore_cppflags :=
 webcore_sources :=
 webcore_headers :=
+webcore_libadd :=
 webcore_built_sources :=
 webcore_built_nosources :=
 
-# WebKitGtk
+webcore_cppflags += $(HILDON_CPPFLAGS)
+
+# WebKit
 webkitgtk_h_api :=
 webkitgtk_headers :=
 webkitgtk_sources :=
 webkitgtk_cppflags :=
-webkitgtk_ldflags :=
 webkitgtk_built_sources :=
 webkitgtk_built_nosources :=
 webkitgtk_cleanfiles :=
 
-# No need to touch the following variables unless you have to. If you need to change the values
-# for the following variables, use the "webkitgtk_" variables above
-libWebKitGtk_ladir := $(prefix)/include/WebKit
-
-libWebKitGtk_la_HEADERS := $(webkitgtk_h_api)
-
-libWebKitGtk_la_SOURCES := \
+libWebCore_la_SOURCES = \
        $(webcore_built_sources) \
        $(webcore_headers) \
-       $(webcore_sources) \
-       $(webkitgtk_built_sources) \
-       $(webkitgtk_headers) \
-       $(webkitgtk_sources)
+       $(webcore_sources)
 
-libWebKitGtk_la_CXXFLAGS := \
-       -fno-rtti \
+libWebCore_la_CXXFLAGS = \
+       -fno-strict-aliasing \
+       $(global_cxxflags) \
        $(global_cflags) \
-       $(DEPENDENCIES_CFLAGS) \
+       $(GLOBALDEPS_CFLAGS) \
+       $(WEBKITDEPS_CFLAGS) \
+       $(LIBCURL_CFLAGS) \
        $(SQLITE3_CFLAGS) \
        $(GSTREAMER_CFLAGS) \
        $(LIBXSLT_CFLAGS) \
-       $(COVERAGE_CFLAGS)
+       $(COVERAGE_CFLAGS) \
+       $(HILDON_CFLAGS)
 
-libWebKitGtk_la_CFLAGS := \
+libWebCore_la_CFLAGS = \
+       -fno-strict-aliasing \
        $(global_cflags) \
-       $(DEPENDENCIES_CFLAGS) \
+       $(GLOBALDEPS_CFLAGS) \
+       $(WEBKITDEPS_CFLAGS) \
+       $(LIBCURL_CFLAGS) \
        $(SQLITE3_CFLAGS) \
        $(GSTREAMER_CFLAGS) \
        $(LIBXSLT_CFLAGS) \
-       $(COVERAGE_CFLAGS)
+       $(COVERAGE_CFLAGS) \
+       $(HILDON_CFLAGS)
 
-libWebKitGtk_la_CPPFLAGS := \
+libWebCore_la_CPPFLAGS = \
+       $(ICU_CPPFLAGS) \
        $(global_cppflags) \
        $(webcore_cppflags) \
        $(webkitgtk_cppflags)
 
-libWebKitGtk_la_LIBADD := @LTLIBOBJS@ libJavaScriptCore.la
-
-libWebKitGtk_la_LDFLAGS := \
-       $(webkitgtk_ldflags) \
-       $(DEPENDENCIES_LIBS) \
+libWebCore_la_LIBADD = \
+       libJavaScriptCore.la \
+       $(webcore_libadd) \
+       $(GLOBALDEPS_LIBS) \
+       $(WEBKITDEPS_LIBS) \
+       $(LIBCURL_LIBS) \
        $(ICU_LIBS) \
        $(SQLITE3_LIBS) \
        $(GSTREAMER_LIBS) \
        $(LIBXSLT_LIBS) \
-       $(COVERAGE_LDFLAGS) \
+       $(HILDON_LIBS) \
        -lpthread \
-       -ljpeg \
+       -ljpeg
+
+libwebkit_1_0_ladir = $(prefix)/include/webkit-1.0/webkit
+libwebkit_1_0_la_HEADERS = $(webkitgtk_h_api)
+
+libwebkit_1_0_la_SOURCES = \
+       $(webkitgtk_built_sources) \
+       $(webkitgtk_headers) \
+       $(webkitgtk_sources)
+
+libwebkit_1_0_la_CXXFLAGS = \
+       $(libWebCore_la_CXXFLAGS)
+
+libwebkit_1_0_la_CFLAGS = \
+       $(libWebCore_la_CFLAGS)
+
+libwebkit_1_0_la_CPPFLAGS = \
+       $(libWebCore_la_CPPFLAGS)
+
+libwebkit_1_0_la_LDFLAGS = \
+       $(COVERAGE_LDFLAGS) \
        -version-info @LIBWEBKITGTK_VERSION@
 
+libwebkit_1_0_la_LIBADD = \
+       libWebCore.la
+
 #
 # Extra checks and flags
 global_cppflags += \
        -DBUILDING_GTK__=1 \
-       -DUSE_SYSTEM_MALLOC \
        -DWTF_CHANGES
 
+if !ENABLE_FAST_MALLOC
+global_cppflags += \
+       -DUSE_SYSTEM_MALLOC
+endif
+
 if TARGET_X11
 global_cppflags += -DXP_UNIX
 endif
 
 if !ENABLE_DEBUG
 global_cppflags += -DNDEBUG
-else 
+else
 webkitgtk_cppflags += \
        -DG_DISABLE_DEPRECATED \
        -DGDK_PIXBUF_DISABLE_DEPRECATED \
        -DGDK_DISABLE_DEPRECATED \
        -DGTK_DISABLE_DEPRECATED \
-       -DPANGO_DISABLE_DEPRECATED \
-       -DGDK_MULTIHEAD_SAFE \
-       -DGTK_MULTIHEAD_SAFE
+       -DPANGO_DISABLE_DEPRECATED
+
+# Might be useful in the future
+#      -DGDK_MULTIHEAD_SAFE \
+#      -DGTK_MULTIHEAD_SAFE
 endif
 
 if !ENABLE_DATABASE
@@ -200,30 +263,30 @@ global_cppflags += \
 endif
 
 if ENABLE_VIDEO
-webkitgtk_ldflags += -lgstinterfaces-0.10 -lgstvideo-0.10
+webcore_libadd += -lgstinterfaces-0.10 -lgstvideo-0.10
 endif
 
-#
-# WEBKIT GTK+
 webkitgtk_cppflags += \
--I $(top_builddir)/WebKit/gtk/WebView \
+-I$(top_builddir)/WebKit/gtk/webkit \
 -DBUILDING_CAIRO__=1 \
 -DBUILD_WEBKIT
 
 webkitgtk_h_api += \
-       WebKit/gtk/WebView/webkit.h \
-       WebKit/gtk/WebView/webkitdefines.h \
-       WebKit/gtk/WebView/webkitnetworkrequest.h \
-       WebKit/gtk/WebView/webkitwebframe.h \
-       WebKit/gtk/WebView/webkitwebview.h 
+       WebKit/gtk/webkit/webkit.h \
+       WebKit/gtk/webkit/webkitdefines.h \
+       WebKit/gtk/webkit/webkitnetworkrequest.h \
+       WebKit/gtk/webkit/webkitwebbackforwardlist.h \
+       WebKit/gtk/webkit/webkitwebframe.h \
+       WebKit/gtk/webkit/webkitwebhistoryitem.h \
+       WebKit/gtk/webkit/webkitwebsettings.h \
+       WebKit/gtk/webkit/webkitwebview.h
 
 webkitgtk_built_sources += \
-       WebKit/gtk/WebView/webkit-marshal.h \
-       WebKit/gtk/WebView/webkit-marshal.cpp
+       WebKit/gtk/webkit/webkit-marshal.h \
+       WebKit/gtk/webkit/webkit-marshal.cpp
 
 webkitgtk_headers += \
-       WebKit/gtk/WebView/webkitprivate.h \
-       WebKit/gtk/WebView/webkitsettings.h \
+       WebKit/gtk/webkit/webkitprivate.h \
        WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \
        WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h \
        WebKit/gtk/WebCoreSupport/DragClientGtk.h \
@@ -233,37 +296,39 @@ webkitgtk_headers += \
        WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h
 
 webkitgtk_sources += \
-       WebKit/gtk/WebView/webkitnetworkrequest.cpp \
-       WebKit/gtk/WebView/webkitprivate.cpp \
-       WebKit/gtk/WebView/webkitsettings.cpp \
-       WebKit/gtk/WebView/webkitwebframe.cpp \
-       WebKit/gtk/WebView/webkitwebview.cpp \
+       WebKit/gtk/webkit/webkitnetworkrequest.cpp \
+       WebKit/gtk/webkit/webkitprivate.cpp \
+       WebKit/gtk/webkit/webkitwebbackforwardlist.cpp \
+       WebKit/gtk/webkit/webkitwebframe.cpp \
+       WebKit/gtk/webkit/webkitwebhistoryitem.cpp \
+       WebKit/gtk/webkit/webkitwebsettings.cpp \
+       WebKit/gtk/webkit/webkitwebview.cpp \
        WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \
        WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \
        WebKit/gtk/WebCoreSupport/DragClientGtk.cpp \
        WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp \
        WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp \
        WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp \
-       WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.cpp 
+       WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.cpp
 
 webkitgtk_cleanfiles += \
        $(top_builddir)/Programs/GtkLauncher \
-       $(top_builddir)/WebKit/gtk/WebKitGtk.pc
+       $(top_builddir)/WebKit/gtk/webkit-1.0.pc
 
 pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = WebKit/gtk/WebKitGtk.pc
+pkgconfig_DATA = WebKit/gtk/webkit-1.0.pc
 
-WEBKIT_MARSHAL = $(CURDIR)/WebKit/gtk/WebView/webkit-marshal
-WEBKIT_MARSHAL_LIST = $(srcdir)/WebKit/gtk/WebView/webkit-marshal.list
+WEBKIT_MARSHAL = $(CURDIR)/WebKit/gtk/webkit/webkit-marshal
+WEBKIT_MARSHAL_LIST = $(srcdir)/WebKit/gtk/webkit/webkit-marshal.list
 
 stamp_files := \
        stamp-webkit-marshal.cpp \
        stamp-webkit-marshal.h
 
-WebKit/gtk/WebView/webkit-marshal.cpp: stamp-webkit-marshal.cpp
+WebKit/gtk/webkit/webkit-marshal.cpp: stamp-webkit-marshal.cpp
        @true
 
-WebKit/gtk/WebView/webkit-marshal.h: stamp-webkit-marshal.h
+WebKit/gtk/webkit/webkit-marshal.h: stamp-webkit-marshal.h
        @true
 
 stamp-webkit-marshal.cpp: $(WEBKIT_MARSHAL_LIST)
@@ -289,7 +354,7 @@ include WebKitTools/GNUmakefile.am
 
 
 # Autogenerated sources
-BUILT_SOURCES := \
+BUILT_SOURCES = \
        $(javascriptcore_built_sources) \
        $(javascriptcore_built_nosources) \
        $(webcore_built_sources) \
@@ -302,7 +367,6 @@ CLEANFILES += \
        $(webkitgtk_cleanfiles) \
        $(top_builddir)/Programs/DumpRenderTree \
        $(top_builddir)/Programs/testkjs \
-       $(top_builddir)/Programs/dftables \
        $(GENSOURCES)
 
 MAINTAINERCLEANFILES += \
index 89344f7a582396c94262e3691106978117b0e51e..fa7ea02426eabc667cd27e503f52861a0f24588c 100644 (file)
@@ -7,16 +7,23 @@ all:
 debug d development dev develop:
        @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
        if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
-       
+
 release r deployment dep deploy:
        @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
        if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
-       
+
 universal u:
        @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
        if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
 
-clean:
+64:
        @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
        if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
 
+64u:
+       @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
+       if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
+
+clean:
+       @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \
+       if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done
index a036aacc50e8e93ce7e30dae6bc435f8490a3ca8..096d32e948d338768866ecde7c9a5203fe507ac6 100644 (file)
@@ -15,6 +15,12 @@ release r deployment dep deploy: force
 universal u: force
        ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) 'ARCHS=ppc i386' | grep -v setenv && exit $${PIPESTATUS[0]} )
 
+64: force
+       ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) 'ARCHS=i386 x86_64' | grep -v setenv && exit $${PIPESTATUS[0]} )
+
+64u: force
+       ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) 'ARCHS=ppc ppc64 i386 x86_64' | grep -v setenv && exit $${PIPESTATUS[0]} )
+
 clean:
        ( xcodebuild $(OTHER_OPTIONS) -alltargets clean $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} )
 
index 640fa34174c42d509067ca84afd64c28e1fef8de..36404ac8032bde8a522f718d4decbefae573ef28 100644 (file)
@@ -58,6 +58,11 @@ CONFIG(release) {
     DEFINES += NDEBUG
 }
 
+gtk-port:CONFIG(debug) {
+    DEFINES += G_DISABLE_DEPRECATED GDK_PIXBUF_DISABLE_DEPRECATED GDK_DISABLE_DEPRECATED GTK_DISABLE_DEPRECATED PANGO_DISABLE_DEPRECATED
+# maybe useful for debugging   DEFINES += GDK_MULTIHEAD_SAFE GTK_MULTIHEAD_SAFE
+}
+
 BASE_DIR = $$PWD
 qt-port:INCLUDEPATH += \
     $$PWD/WebKit/qt/Api
index b7f7d37b2f759b1a33247f57030586d880f3e5cd..1c0fc61156971033268bd0a11156d287f2827d58 100644 (file)
@@ -1,8 +1,11 @@
 #! /bin/sh
 
+# Allow invocation from a separate build directory; in that case, we change
+# to the source directory to run the auto*, then change back before running configure
 srcdir=`dirname $0`
 test -z "$srcdir" && srcdir=.
 
+ORIGDIR=`pwd`
 cd $srcdir
 
 DIE=0
@@ -37,4 +40,6 @@ autoheader || exit $?
 automake --foreign --add-missing || exit $?
 autoconf || exit $?
 
-./configure $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
+cd $ORIGDIR || exit 1
+
+$srcdir/configure $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
index 05c25b94a8c12bb1cedfc18c5e15f267390513ff..404e5a0d6ad9dfe5bc1bd2033f8f5818a179e29f 100644 (file)
@@ -9,9 +9,7 @@ AC_CONFIG_SRCDIR([WebCore/config.h])
 LIBWEBKITGTK_VERSION=1:0:0
 AC_SUBST([LIBWEBKITGTK_VERSION])
 
-AM_INIT_AUTOMAKE([1.9 foreign tar-ustar subdir-objects])
-
-AM_MAINTAINER_MODE
+AM_INIT_AUTOMAKE([foreign subdir-objects])
 
 AC_CANONICAL_HOST
 
@@ -35,6 +33,9 @@ case "$host" in
      *-*-freebsd*)
        os_freebsd=yes
        ;;
+     *-*-darwin*)
+       os_darwin=yes
+       ;;
 esac
 
 # If CXXFLAGS and CFLAGS are unset, default to -O2
@@ -53,9 +54,20 @@ AM_PROG_LIBTOOL
 AC_PROG_INSTALL
 AM_PROG_CC_STDC
 AC_PROG_CXX
-AC_PROG_CXX_C_O
 AM_PROG_CC_C_O
 
+# check for -fvisibility=hidden compiler support (GCC >= 4)
+saved_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -fvisibility=hidden -fvisibility-inlines-hidden"
+AC_MSG_CHECKING([if ${CXX} supports -fvisibility=hidden -fvisibility-inlines-hidden])
+AC_COMPILE_IFELSE([char foo;],
+      [ AC_MSG_RESULT([yes])
+        SYMBOL_VISIBILITY="-fvisibility=hidden" SYMBOL_VISIBILITY_INLINES="-fvisibility-inlines-hidden" ],
+        AC_MSG_RESULT([no]))
+CFLAGS="$saved_CFLAGS"
+AC_SUBST(SYMBOL_VISIBILITY)
+AC_SUBST(SYMBOL_VISIBILITY_INLINES)
+
 AC_PATH_PROG(PERL, perl)
 if test -z "$PERL"; then
    AC_MSG_ERROR([You need 'perl' to compile WebKit])
@@ -101,10 +113,12 @@ AC_C_VOLATILE
 AC_HEADER_STDC
 AC_HEADER_STDBOOL
 
-# pthread
+# pthread (not needed on Windows)
+if test "$os_win32" = "no"; then
 AC_CHECK_HEADERS([pthread.h],
                  AC_DEFINE([HAVE_PTHREAD_H],[1],[Define if pthread exist]),
                  AC_MSG_ERROR([pthread support is required to build WebKit]))
+fi
 
 # libjpeg headers
 AC_CHECK_HEADERS([jpeglib.h])
@@ -116,75 +130,126 @@ if test "$PKG_CONFIG" = "no"; then
 fi
 
 # check for icu-config
+if test "$os_darwin" = "yes"; then
+ICU_CPPFLAGS="-I\$(srcdir)/JavaScriptCore/icu -I\$(srcdir)/WebCore/icu"
+ICU_LIBS="-licucore"
+else
 AC_PATH_PROG(icu_config, icu-config, no)
 if test "$icu_config" = "no"; then
    AC_MSG_ERROR([Cannot find icu-config. ICU library is needed.])
 fi
-ICU_CFLAGS=`$icu_config --cflags`
+
+# We don't use --cflags as this gives us a lot of things that we don't
+# necessarily want, like debugging and optimization flags
+# See man (1) icu-config for more info.
+ICU_CPPFLAGS=`$icu_config --cppflags`
 ICU_LIBS=`$icu_config --ldflags`
-AC_SUBST([ICU_CFLAGS])
+AC_SUBST([ICU_CPPFLAGS])
 AC_SUBST([ICU_LIBS])
+fi
 
 # determine the GDK/GTK+ target
-AC_MSG_CHECKING([the target for WebKit GTK+])
-AC_ARG_WITH(webkit_target,
-            AC_HELP_STRING([--with-webkit-target=@<:@x11/win32/quartz/directfb@:>@],
+AC_MSG_CHECKING([the target windowing system])
+AC_ARG_WITH(target,
+            AC_HELP_STRING([--with-target=@<:@x11/win32/quartz/directfb@:>@],
                            [Select webkit target [default=x11]]),
-            [],[with_webkit_target="x11"])
+            [],[with_target="x11"])
 
-case "$with_webkit_target" in
+case "$with_target" in
      x11|win32|quartz|directfb) ;;
      *) AC_MSG_ERROR([Invalid target: must be x11, quartz, win32, or directfb.]) ;;
 esac
 
-AC_MSG_RESULT([$with_webkit_target])
+AC_MSG_RESULT([$with_target])
+
+AC_MSG_CHECKING([for Hildon UI extensions])
+AC_ARG_WITH(hildon,
+            AC_HELP_STRING([--with-hildon],
+                           [Use Hildon UI extensions [default=no]]),
+            [],[with_hildon="no"])
+AC_MSG_RESULT([$with_hildon])
+
+if test "$with_hildon" = "yes"; then
+    HILDON_CPPFLAGS="-DMAEMO_CHANGES"
+    PKG_CHECK_MODULES([HILDON], [hildon-1])
+    AC_SUBST([HILDON_CPPFLAGS])
+    AC_SUBST([HILDON_CFLAGS])
+    AC_SUBST([HILDON_LIBS])
+fi
+
+# determine the http backend
+AC_MSG_CHECKING([the HTTP backend to use])
+AC_ARG_WITH(http_backend,
+            AC_HELP_STRING([--with-http-backend=@<:@curl@:>@],
+                           [Select HTTP backend [default=curl]]),
+            [],[http_backend="curl"])
+
+case "$http_backend" in
+     curl) ;;
+     *) AC_MSG_ERROR([Invalid HTTP backend: must be curl.]) ;;
+esac
+
+AC_MSG_RESULT([$http_backend])
 
 # minimum base dependencies
+CAIRO_REQUIRED_VERSION=1.4
+FONTCONFIG_REQUIRED_VERSION=2.4
+FREETYPE2_REQUIRED_VERSION=9.0
+LIBXML_REQUIRED_VERSION=2.6
+
+# minimum GTK+ base dependencies
 GLIB_REQUIRED_VERSION=2.0
 GOBJECT_REQUIRED_VERSION=2.0
 GTHREAD_REQUIRED_VERSION=2.0
 PANGO_REQUIRED_VERSION=1.0
-CAIRO_REQUIRED_VERSION=1.2
-FONTCONFIG_REQUIRED_VERSION=2.4
-FREETYPE2_REQUIRED_VERSION=9.0
-LIBCURL_REQUIRED_VERSION=7.15
-LIBXML_REQUIRED_VERSION=2.6
+GTK_REQUIRED_VERSION=2.8
 
 # optional modules
-GTK_REQUIRED_VERSION=2.0
+LIBCURL_REQUIRED_VERSION=7.15
 LIBXSLT_REQUIRED_VERSION=1.1.7
 SQLITE_REQUIRED_VERSION=3.0
 GSTREAMER_REQUIRED_VERSION=0.10
 GNOME_VFS_REQUIRED_VERSION=2.0
 
-PKG_CHECK_MODULES([DEPENDENCIES],
+PKG_CHECK_MODULES([GLOBALDEPS],
                   [glib-2.0 >= $GLIB_REQUIRED_VERSION
                   gobject-2.0 >= $GOBJECT_REQUIRED_VERSION
-                  gthread-2.0 >= $GTHREAD_REQUIRED_VERSION
-                  gtk+-2.0 >= $GTK_REQUIRED_VERSION
+                  gthread-2.0 >= $GTHREAD_REQUIRED_VERSION])
+AC_SUBST([GLOBALDEPS_CFLAGS])
+AC_SUBST([GLOBALDEPS_LIBS])
+
+PKG_CHECK_MODULES([WEBKITDEPS],
+                  [gtk+-2.0 >= $GTK_REQUIRED_VERSION
                   pango >= $PANGO_REQUIRED_VERSION
-                  libcurl >= $LIBCURL_REQUIRED_VERSION
                   cairo >= $CAIRO_REQUIRED_VERSION
                   cairo-ft,
                   fontconfig >= $FONTCONFIG_REQUIRED_VERSION
                   freetype2 >= $FREETYPE2_REQUIRED_VERSION
                   libxml-2.0 >= $LIBXML_REQUIRED_VERSION])
-AC_SUBST([DEPENDENCIES_CFLAGS])
-AC_SUBST([DEPENDENCIES_LIBS])
+AC_SUBST([WEBKITDEPS_CFLAGS])
+AC_SUBST([WEBKITDEPS_LIBS])
 
 # check whether to build with debugging enabled
 AC_MSG_CHECKING([whether to do a debug build])
 AC_ARG_ENABLE(debug,
               AC_HELP_STRING([--enable-debug],
                              [turn on debugging [default=no]]),
-              [enable_debug="yes"],[enable_debug="no"])
+              [],[enable_debug="no"])
 AC_MSG_RESULT([$enable_debug])
 
+# check whether to build with cross-document messaging support
+AC_MSG_CHECKING([whether to enable HTML5 cross-document messaging support])
+AC_ARG_ENABLE(cross_document_messaging,
+              AC_HELP_STRING([--enable-cross-document-messaging],
+                             [enable HTML5 cross-document messaging support [default=yes]]),
+              [],[enable_cross_document_messaging="yes"])
+AC_MSG_RESULT([$enable_cross_document_messaging])
+
 # check whether to build with database support
 AC_MSG_CHECKING([whether to enable HTML5 client-side storage support])
 AC_ARG_ENABLE(database,
               AC_HELP_STRING([--enable-database],
-                             [enable HTML5 client-side storage support [default=no]]),
+                             [enable HTML5 client-side storage support [default=yes]]),
               [],[enable_database="yes"])
 AC_MSG_RESULT([$enable_database])
 
@@ -201,14 +266,14 @@ AC_MSG_CHECKING([whether to enable HTML5 video support])
 AC_ARG_ENABLE(video,
               AC_HELP_STRING([--enable-video],
                              [enable HTML5 video support [default=no]]),
-              [enable_video="yes"],[enable_video="no"])
+              [],[enable_video="no"])
 AC_MSG_RESULT([$enable_video])
 
 # check whether to enable XPath support
 AC_MSG_CHECKING([whether to enable XPath support])
 AC_ARG_ENABLE(xpath,
               AC_HELP_STRING([--enable-xpath],
-                             [enable support for XPath [default=no]]),
+                             [enable support for XPath [default=yes]]),
               [],[enable_xpath="yes"])
 AC_MSG_RESULT([$enable_xpath])
 
@@ -216,10 +281,29 @@ AC_MSG_RESULT([$enable_xpath])
 AC_MSG_CHECKING([whether to enable XSLT support])
 AC_ARG_ENABLE(xslt,
               AC_HELP_STRING([--enable-xslt],
-                             [enable support for XSLT [default=no]]),
+                             [enable support for XSLT [default=yes]]),
               [],[enable_xslt="yes"])
 AC_MSG_RESULT([$enable_xslt])
 
+# check whether to enable SVG experimental features
+# Enable all SVG if it is
+AC_MSG_CHECKING([whether to enable SVG experimental features])
+AC_ARG_ENABLE(svg_experimental,
+              AC_HELP_STRING([--enable-svg-experimental],
+                             [enable support for SVG experimental features [default=no]]),
+              [],[enable_svg_experimental="no"])
+AC_MSG_RESULT([$enable_svg_experimental])
+
+if test "$enable_svg_experimental" = "yes"; then
+   enable_svg=yes
+   enable_svg_animation=yes
+#   enable_svg_filters=yes
+   enable_svg_fonts=yes
+   enable_svg_foreign_object=yes
+   enable_svg_as_image=yes
+   enable_svg_use_element=yes
+fi
+
 # check whether to enable SVG support
 AC_MSG_CHECKING([whether to enable SVG support])
 AC_ARG_ENABLE(svg,
@@ -229,10 +313,10 @@ AC_ARG_ENABLE(svg,
 AC_MSG_RESULT([$enable_svg])
 
 # check whether to enable support for SVG animation
-AC_MSG_CHECKING([whether to enable support for SVG animataion])
+AC_MSG_CHECKING([whether to enable support for SVG animation])
 AC_ARG_ENABLE(svg_animation,
               AC_HELP_STRING([--enable-svg-animation],
-                             [enable support for SVG animation feature (experimental) [default=no]]),
+                             [enable support for SVG animation (experimental) [default=no]]),
               [],[enable_svg_animation="no"])
 AC_MSG_RESULT([$enable_svg_animation])
 
@@ -252,6 +336,14 @@ AC_ARG_ENABLE(svg_fonts,
               [],[enable_svg_fonts="no"])
 AC_MSG_RESULT([$enable_svg_fonts])
 
+# check whether to enable foreign objects support for SVG
+AC_MSG_CHECKING([whether to enable support for SVG foreign objects])
+AC_ARG_ENABLE(svg_foreign_object,
+              AC_HELP_STRING([--enable-svg-foreign-object],
+                             [enable support for SVG foreign objects (experimental) [default=no]]),
+              [],[enable_svg_foreign_object="no"])
+AC_MSG_RESULT([$enable_svg_foreign_object])
+
 # check whether to enable SVG As Image support
 AC_MSG_CHECKING([whether to enable SVG as Image support])
 AC_ARG_ENABLE(svg_as_image,
@@ -276,19 +368,35 @@ AC_ARG_ENABLE(coverage,
               [],[enable_coverage="no"])
 AC_MSG_RESULT([$enable_coverage])
 
+# check whether to enable FastMalloc
+AC_MSG_CHECKING([whether to enable optimized memory allocator])
+AC_ARG_ENABLE(fast_malloc,
+              AC_HELP_STRING([--enable-fast-malloc],
+                             [enable optimized memory allocator default=yes, default=no for debug builds]),
+              [],[if test "$enable_debug" = "yes"; then enable_fast_malloc="no"; else enable_fast_malloc="yes"; fi])
+AC_MSG_RESULT([$enable_fast_malloc])
+
 # Add '-g' flag to gcc if it's debug build
 if test "$enable_debug" = "yes"; then
    CXXFLAGS="$CXXFLAGS -g"
    CFLAGS="$CFLAGS -g"
 fi
 
+# check if curl is available
+if test "$http_backend" = "curl"; then
+   PKG_CHECK_MODULES([LIBCURL],
+                     [libcurl >= $LIBCURL_REQUIRED_VERSION])
+   AC_SUBST([LIBCURL_CFLAGS])
+   AC_SUBST([LIBCURL_LIBS])
+fi
+
 # check if sqlite 3 is available
 if test "$enable_icon_database" = "yes" || test "$enable_database" = "yes"; then
    PKG_CHECK_MODULES([SQLITE3], [sqlite3 >= $SQLITE_REQUIRED_VERSION])
    AC_SUBST([SQLITE3_CFLAGS])
    AC_SUBST([SQLITE3_LIBS])
 fi
-  
+
 # check if libxslt is available
 if test "$enable_xslt" = "yes"; then
    PKG_CHECK_MODULES([LIBXSLT],[libxslt >= $LIBXSLT_REQUIRED_VERSION])
@@ -316,16 +424,17 @@ if test "$enable_coverage" = "yes"; then
 fi
 
 # check for SVG features, enabling SVG if necessary
-if test "$enable_svg" = "no" && (\
-   test "$enable_svg_animation" = "yes" || \
+if test "$enable_svg_animation" = "yes" || \
    test "$enable_svg_filters" = "yes" || \
    test "$enable_svg_fonts" = "yes" || \
+   test "$enable_svg_foreign_object" = "yes" || \
    test "$enable_svg_as_image" = "yes" || \
-   test "$enable_svg_use_element" = "yes"); then
-
-   AC_MSG_WARN([SVG feature(s) requested but SVG is disabled.. Enabling SVG support])
-   enable_svg = yes
-   svg_flags = yes
+   test "$enable_svg_use_element" = "yes"; then
+   svg_flags=yes
+   if test "$enable_svg" = "no"; then
+       AC_MSG_WARN([SVG feature(s) requested but SVG is disabled.. Enabling SVG support])
+       enable_svg=yes
+   fi
 fi
 
 # OS conditionals
@@ -335,13 +444,17 @@ AM_CONDITIONAL([OS_LINUX],[test "$os_linux" = "yes"])
 AM_CONDITIONAL([OS_FREEBSD],[test "$os_freebsd" = "yes"])
 
 # target conditionals
-AM_CONDITIONAL([TARGET_X11], [test "$with_webkit_target" = "x11"])
-AM_CONDITIONAL([TARGET_WIN32], [test "$with_webkit_target" = "win32"])
-AM_CONDITIONAL([TARGET_QUARTZ], [test "$with_webkit_target" = "quartz"])
-AM_CONDITIONAL([TARGET_DIRECTFB], [test "$with_webkit_target" = "directfb"])
+AM_CONDITIONAL([TARGET_X11], [test "$with_target" = "x11"])
+AM_CONDITIONAL([TARGET_WIN32], [test "$with_target" = "win32"])
+AM_CONDITIONAL([TARGET_QUARTZ], [test "$with_target" = "quartz"])
+AM_CONDITIONAL([TARGET_DIRECTFB], [test "$with_target" = "directfb"])
+
+# HTTP backend conditionals
+AM_CONDITIONAL([USE_CURL], [test "$http_backend" = "curl"])
 
 # WebKit feature conditionals
 AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug" = "yes"])
+AM_CONDITIONAL([ENABLE_CROSS_DOCUMENT_MESSAGING],[test "$enable_cross_document_messaging" = "yes"])
 AM_CONDITIONAL([ENABLE_DATABASE],[test "$enable_database" = "yes"])
 AM_CONDITIONAL([ENABLE_ICONDATABASE],[test "$enable_icon_database" = "yes"])
 AM_CONDITIONAL([ENABLE_XPATH],[test "$enable_xpath" = "yes"])
@@ -351,14 +464,16 @@ AM_CONDITIONAL([ENABLE_SVG],[test "$enable_svg" = "yes"])
 AM_CONDITIONAL([ENABLE_SVG_ANIMATION],[test "$enable_svg_animation" = "yes"])
 AM_CONDITIONAL([ENABLE_SVG_FILTERS],[test "$enable_svg_filters" = "yes"])
 AM_CONDITIONAL([ENABLE_SVG_FONTS],[test "$enable_svg_fonts" = "yes"])
+AM_CONDITIONAL([ENABLE_SVG_FOREIGN_OBJECT],[test "$enable_svg_foreign_object" = "yes"])
 AM_CONDITIONAL([ENABLE_SVG_AS_IMAGE],[test "$enable_svg_as_image" = "yes"])
 AM_CONDITIONAL([ENABLE_SVG_USE],[test "$enable_svg_use_element" = "yes"])
 AM_CONDITIONAL([ENABLE_COVERAGE],[test "$enable_coverage" = "yes"])
+AM_CONDITIONAL([ENABLE_FAST_MALLOC],[test "$enable_fast_malloc" = "yes"])
 AM_CONDITIONAL([SVG_FLAGS],[test "$svg_flags" = "yes"])
 
 AC_CONFIG_FILES([
 GNUmakefile
-WebKit/gtk/WebKitGtk.pc:WebKit/gtk/WebKitGtk.pc.in
+WebKit/gtk/webkit-1.0.pc:WebKit/gtk/webkit.pc.in
 ]
 )
 
@@ -367,9 +482,13 @@ AC_OUTPUT
 echo "
 WebKit was configured with the following options:
 
- Target                            : $with_webkit_target
- Enable debug                      : $enable_debug
+Build configuration:
+ Enable debugging (slow)           : $enable_debug
  Code coverage support             : $enable_coverage
+ HTTP backend                      : $http_backend
+ Optimized memory allocator        : $enable_fast_malloc
+Features:
+ HTML5 cross-document messaging    : $enable_cross_document_messaging
  HTML5 client-side storage support : $enable_database
  HTML5 video element support       : $enable_video
  Icon database support             : $enable_icon_database
@@ -377,8 +496,12 @@ WebKit was configured with the following options:
  SVG animation support             : $enable_svg_animation
  SVG filters support               : $enable_svg_filters
  SVG fonts support                 : $enable_svg_fonts
+ SVG foreign object support        : $enable_svg_foreign_object
  SVG as image support              : $enable_svg_as_image
  SVG use element support           : $enable_svg_use_element
  XPATH support                     : $enable_xpath
  XSLT support                      : $enable_xslt
+GTK+ configuration:
+ GDK target                        : $with_target
+ Hildon UI extensions              : $with_hildon
 "
index 517d7e80621e96d242733dba8ed64dea1560623e..4fe9cb8a00c8c8de37e7afae9f882f6e9b07c12d 100644 (file)
@@ -1,33 +1,59 @@
-DEPENDS = "curl icu libxml2 cairo libxslt libidn gnutls gtk+"
-
-# If you activate HTML5 media support (ENABLE_VIDEO=1) you'll need:
-# DEPENDS += " gstreamer gst-plugins-base gnome-vfs "
-
-
-WEBKIT_PORT = "gtk-port"
-WEBKIT_EXTRA_OPTIONS = "CONFIG-=qt"
-
-FILES_webkit-gtklauncher = "${bindir}/GtkLauncher"
-FILES_webkit-gtklauncher-dbg += "${bindir}/.debug/GtkLauncher"
-
-require webkit.inc
+DEPENDS = "curl icu libxml2 cairo libxslt libidn gnutls gtk+ gstreamer gst-plugins-base gnome-vfs flex-native gperf-native perl-native sqlite3"
+
+SRCREV_FORMAT = "webcore-rwebkit"
+
+# Yes, this is wrong...
+PV = "0.1+svnr${SRCREV}"
+PR = "r4"
+
+SRC_URI = "\
+  svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptCore;proto=http \
+  svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptGlue;proto=http \
+  svn://svn.webkit.org/repository/webkit/trunk/;module=WebCore;proto=http;name=webcore \
+  svn://svn.webkit.org/repository/webkit/trunk/;module=WebKit;proto=http;name=webkit \
+  svn://svn.webkit.org/repository/webkit/trunk/;module=WebKitLibraries;proto=http \
+  svn://svn.webkit.org/repository/webkit/trunk/;module=WebKitTools;proto=http \
+  file://Makefile \
+  file://Makefile.shared \
+  file://autogen.sh \
+  file://configure.ac \
+  file://GNUmakefile.am \
+ "
+
+S = "${WORKDIR}/"
+
+inherit autotools pkgconfig
+
+EXTRA_OECONF = "\
+                --enable-debug=no \
+                --enable-svg \
+                --enable-icon-database=yes \
+               "
+
+do_compile_prepend() {
+        mkdir -p ${S}/WebKitBuilds/Debug/JavaScriptCore/pcre/tmp/
+        mkdir -p ${S}/Programs/
+       cd ${S}/JavaScriptCore/pcre
+        if test -e dftables.c
+        then
+            ${BUILD_CC} dftables.c -o dftables -I. -I../wtf
+        elif test -e dftables.cpp
+        then
+            ${BUILD_CXX} dftables.cpp -o dftables -I. -I../wtf
+        fi
+        cp dftables ${S}/WebKitBuilds/Debug/JavaScriptCore/pcre/tmp/
+        cp dftables ${S}/Programs/        
+       cd ${S}
+}
 
-SRC_URI += "file://autogen.sh \
-            file://configure.ac \
-            file://GNUmakefile.am \
-            file://fix_im.patch;patch=1 \
-          "
+do_stage() {
+       autotools_stage_all
+}
 
-PR = "r5"
+PACKAGES =+ "${PN}launcher-dbg ${PN}launcher libjavascriptcore"
+FILES_${PN}launcher = "${bindir}/GtkLauncher"
+FILES_${PN}launcher-dbg = "${bindir}/.debug/GtkLauncher"
+FILES_libjavascriptcore = "${libdir}/libJavaScriptCore.so.*"
 
-do_install() {
-       install -d ${D}${bindir}
-       install -d ${D}${libdir}
-       install -d ${D}${libdir}/pkgconfig
 
-       install -m 0755 ${S}/WebKitBuilds/Debug/WebKitTools/GtkLauncher/GtkLauncher ${D}${bindir}
-       cd ${S}/WebKitBuilds/Debug
-       PWD=`pwd` ${WEBKIT_QMAKE} WEBKIT_INC_DIR=${D}${prefix}/include WEBKIT_LIB_DIR=${D}${libdir} $PWD/../../WebKit.pro
-       oe_runmake install
-}
 
index e7820409a2507d63b196b6d524851e429ccedee3..087115de0960283222274709a50eff3f8b3f3266 100644 (file)
@@ -1,3 +1,4 @@
+DESCRIPTION = "WebKit browser engine, GTK+ edition"
 DEPENDS += "flex-native gperf-native perl-native sqlite3"
 SRCREV_FORMAT = "webcore-rwebkit"
 
@@ -6,7 +7,7 @@ PACKAGES =+ "${PN}launcher-dbg ${PN}launcher"
 # Yes, this is wrong...
 PV = "0.1+svnr${SRCREV}"
 
-inherit qmake2 
+inherit qmake2 pkgconfig
 
 SRC_URI = "\
   svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptCore;proto=http \
@@ -51,7 +52,5 @@ do_stage() {
        cd ${S}/WebKitBuilds/Debug
        PWD=`pwd` ${WEBKIT_QMAKE} WEBKIT_INC_DIR=${STAGING_INCDIR} WEBKIT_LIB_DIR=${STAGING_LIBDIR} $PWD/../../WebKit.pro
        oe_runmake install
-
-#sed -i -e "s:${WORKDIR}/image/::g" ${PKG_CONFIG_DIR}/WebKitGtk.pc
 }