From 133a314a4f1d38fc93d37caf204c9946b92eccf3 Mon Sep 17 00:00:00 2001 From: Marcin Juszkiewicz Date: Mon, 31 Mar 2008 18:34:18 +0000 Subject: webkit: upgraded to rev 31467, enabled SVG fonts http://bugs.webkit.org/show_bug.cgi?id=18239 was reported as SVG fonts support is required to make Webkit built. git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4151 311d38ba-8fff-0310-9ca6-ca027cbcb966 --- meta/packages/webkit/files/GNUmakefile.am | 29 ++++++---- meta/packages/webkit/files/WebKit.pri | 11 ++-- meta/packages/webkit/files/WebKit.pro | 6 +- meta/packages/webkit/files/autogen.sh | 36 ++++++++---- meta/packages/webkit/files/configure.ac | 95 +++++++++++++++++++++++-------- meta/packages/webkit/files/fix_im.patch | 12 ---- 6 files changed, 125 insertions(+), 64 deletions(-) (limited to 'meta/packages/webkit/files') diff --git a/meta/packages/webkit/files/GNUmakefile.am b/meta/packages/webkit/files/GNUmakefile.am index 977770a1e..4cdd3dbfe 100644 --- a/meta/packages/webkit/files/GNUmakefile.am +++ b/meta/packages/webkit/files/GNUmakefile.am @@ -52,11 +52,7 @@ EXTRA_DIST := global_cppflags := global_cppflags += \ - -I$(srcdir)/JavaScriptCore \ - -I$(srcdir)/JavaScriptCore/ForwardingHeaders \ - -I$(srcdir)/JavaScriptCore/wtf \ - -I$(srcdir)/JavaScriptCore/kjs \ - -I$(top_builddir)/DerivedSources + -DWTF_USE_ICU_UNICODE=1 # Default compiler flags global_cflags := \ @@ -94,6 +90,13 @@ javascriptcore_sources := javascriptcore_built_sources := javascriptcore_built_nosources := +javascriptcore_cppflags += \ + -I$(srcdir)/JavaScriptCore \ + -I$(srcdir)/JavaScriptCore/ForwardingHeaders \ + -I$(srcdir)/JavaScriptCore/wtf \ + -I$(srcdir)/JavaScriptCore/kjs \ + -I$(top_builddir)/DerivedSources + # The variables above are already included below so no need to touch # these variables unless you really have to libJavaScriptCore_ladir = $(prefix)/include/webkit-1.0/JavaScriptCore @@ -104,7 +107,7 @@ libJavaScriptCore_la_SOURCES = \ $(javascriptcore_sources) libJavaScriptCore_la_LIBADD = \ - $(ICU_LIBS) \ + $(UNICODE_LIBS) \ $(GLOBALDEPS_LIBS) \ -lpthread @@ -112,17 +115,18 @@ libJavaScriptCore_la_CXXFLAGS = \ $(global_cxxflags) \ $(global_cflags) \ $(GLOBALDEPS_CFLAGS) \ + $(UNICODE_CFLAGS) \ -fstrict-aliasing libJavaScriptCore_la_CFLAGS = \ $(global_cflags) \ $(GLOBALDEPS_CFLAGS) \ + $(UNICODE_CFLAGS) \ -fstrict-aliasing libJavaScriptCore_la_CPPFLAGS = \ $(global_cppflags) \ - $(javascriptcore_cppflags) \ - $(ICU_CPPFLAGS) + $(javascriptcore_cppflags) # # WebCore @@ -154,8 +158,10 @@ libWebCore_la_CXXFLAGS = \ $(global_cxxflags) \ $(global_cflags) \ $(GLOBALDEPS_CFLAGS) \ + $(UNICODE_CFLAGS) \ $(WEBKITDEPS_CFLAGS) \ $(LIBCURL_CFLAGS) \ + $(LIBSOUP_CFLAGS) \ $(SQLITE3_CFLAGS) \ $(GSTREAMER_CFLAGS) \ $(LIBXSLT_CFLAGS) \ @@ -166,8 +172,10 @@ libWebCore_la_CFLAGS = \ -fno-strict-aliasing \ $(global_cflags) \ $(GLOBALDEPS_CFLAGS) \ + $(UNICODE_CFLAGS) \ $(WEBKITDEPS_CFLAGS) \ $(LIBCURL_CFLAGS) \ + $(LIBSOUP_CFLAGS) \ $(SQLITE3_CFLAGS) \ $(GSTREAMER_CFLAGS) \ $(LIBXSLT_CFLAGS) \ @@ -175,9 +183,9 @@ libWebCore_la_CFLAGS = \ $(HILDON_CFLAGS) libWebCore_la_CPPFLAGS = \ - $(ICU_CPPFLAGS) \ $(global_cppflags) \ $(webcore_cppflags) \ + $(javascriptcore_cppflags) \ $(webkitgtk_cppflags) libWebCore_la_LIBADD = \ @@ -186,7 +194,8 @@ libWebCore_la_LIBADD = \ $(GLOBALDEPS_LIBS) \ $(WEBKITDEPS_LIBS) \ $(LIBCURL_LIBS) \ - $(ICU_LIBS) \ + $(LIBSOUP_LIBS) \ + $(UNICODE_LIBS) \ $(SQLITE3_LIBS) \ $(GSTREAMER_LIBS) \ $(LIBXSLT_LIBS) \ diff --git a/meta/packages/webkit/files/WebKit.pri b/meta/packages/webkit/files/WebKit.pri index 36404ac80..d12423beb 100644 --- a/meta/packages/webkit/files/WebKit.pri +++ b/meta/packages/webkit/files/WebKit.pri @@ -17,7 +17,7 @@ qt-port:!building-libs { gtk-port:!building-libs { QMAKE_LIBDIR = $$OUTPUT_DIR/lib $$QMAKE_LIBDIR LIBS += -lWebKitGtk - DEPENDPATH += $$PWD/WebKit/gtk/WebView $$PWD/WebKit/gtk/WebCoreSupport + DEPENDPATH += $$PWD/WebKit/gtk $$PWD/WebKit/gtk/WebCoreSupport $$PWD/WebKit/gtk/webkit } gtk-port { @@ -36,6 +36,7 @@ gtk-port { # We use the curl http backend on all platforms PKGCONFIG += libcurl + DEFINES += WTF_USE_CURL=1 LIBS += -lWebKitGtk -ljpeg -lpng @@ -72,8 +73,9 @@ gtk-port:INCLUDEPATH += \ $$BASE_DIR/WebCore/platform/graphics/cairo \ $$BASE_DIR/WebCore/loader/gtk \ $$BASE_DIR/WebCore/page/gtk \ - $$BASE_DIR/WebKit/gtk/WebView \ - $$BASE_DIR/WebKit/gtk/WebCoreSupport + $$BASE_DIR/WebKit/gtk \ + $$BASE_DIR/WebKit/gtk/WebCoreSupport \ + $$BASE_DIR/WebKit/gtk/webkit INCLUDEPATH += \ $$BASE_DIR/JavaScriptCore/ \ $$BASE_DIR/JavaScriptCore/kjs \ @@ -95,7 +97,8 @@ INCLUDEPATH += \ $$BASE_DIR/WebCore/rendering \ $$BASE_DIR/WebCore/history \ $$BASE_DIR/WebCore/xml \ - $$BASE_DIR/WebCore/html + $$BASE_DIR/WebCore/html \ + $$BASE_DIR/WebCore/plugins macx { diff --git a/meta/packages/webkit/files/WebKit.pro b/meta/packages/webkit/files/WebKit.pro index 027017bd8..bc14feb5f 100644 --- a/meta/packages/webkit/files/WebKit.pro +++ b/meta/packages/webkit/files/WebKit.pro @@ -1,7 +1,11 @@ TEMPLATE = subdirs CONFIG += ordered !gtk-port:CONFIG += qt-port -qt-port:!win32-*:SUBDIRS += WebKit/qt/Plugins +qt-port { + lessThan(QT_MINOR_VERSION, 4) { + !win32-*:SUBDIRS += WebKit/qt/Plugins + } +} SUBDIRS += \ WebCore \ JavaScriptCore/kjs/testkjs.pro diff --git a/meta/packages/webkit/files/autogen.sh b/meta/packages/webkit/files/autogen.sh index 1c0fc6115..a929538d2 100644 --- a/meta/packages/webkit/files/autogen.sh +++ b/meta/packages/webkit/files/autogen.sh @@ -11,23 +11,35 @@ cd $srcdir DIE=0 (autoconf --version) < /dev/null > /dev/null 2>&1 || { - echo - echo "You must have autoconf installed to compile $PROJECT." - echo "Install the appropriate package for your distribution," - echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/" - DIE=1 + echo + echo "You must have autoconf installed to compile $PROJECT." + echo "Install the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/" + DIE=1 } (automake --version) < /dev/null > /dev/null 2>&1 || { - echo - echo "You must have automake installed to compile $PROJECT." - echo "Install the appropriate package for your distribution," - echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/" - DIE=1 + echo + echo "You must have automake installed to compile $PROJECT." + echo "Install the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/" + DIE=1 +} + +LIBTOOLIZE=libtoolize +($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 || { + LIBTOOLIZE=glibtoolize + ($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have libtool installed to compile $PROJECT." + echo "Install the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/" + DIE=1 + } } if test "$DIE" -eq 1; then - exit 1 + exit 1 fi rm -rf $top_srcdir/autom4te.cache @@ -35,7 +47,7 @@ rm -rf $top_srcdir/autom4te.cache touch README INSTALL aclocal || exit $? -libtoolize --force || exit $? +$LIBTOOLIZE --force || exit $? autoheader || exit $? automake --foreign --add-missing || exit $? autoconf || exit $? diff --git a/meta/packages/webkit/files/configure.ac b/meta/packages/webkit/files/configure.ac index 404e5a0d6..64f32dc68 100644 --- a/meta/packages/webkit/files/configure.ac +++ b/meta/packages/webkit/files/configure.ac @@ -129,25 +129,42 @@ if test "$PKG_CONFIG" = "no"; then AC_MSG_ERROR([Cannot find pkg-config, make sure it is installed in your PATH]) 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 +# determine the Unicode backend +AC_MSG_CHECKING([the Unicode backend to use]) +AC_ARG_WITH(unicode_backend, + AC_HELP_STRING([--with-unicode-backend=@<:@icu@:>@], + [Select Unicode backend [default=icu]]), + [],[unicode_backend="icu"]) + +case "$unicode_backend" in + icu) ;; + *) AC_MSG_ERROR([Invalid Unicode backend: must be icu.]) ;; +esac -# 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_CPPFLAGS]) -AC_SUBST([ICU_LIBS]) +AC_MSG_RESULT([$unicode_backend]) + +if test "$unicode_backend" = "icu"; then + # check for icu-config + if test "$os_darwin" = "yes"; then + UNICODE_CFLAGS="-I\$(srcdir)/JavaScriptCore/icu -I\$(srcdir)/WebCore/icu" + UNICODE_LIBS="-licucore" + else + AC_PATH_PROG(icu_config, icu-config, no) + if test "$icu_config" = "no"; then + AC_MSG_ERROR([Cannot find icu-config. The ICU library is needed.]) + fi + + # 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. + UNICODE_CFLAGS=`$icu_config --cppflags` + UNICODE_LIBS=`$icu_config --ldflags` + fi fi +AC_SUBST([UNICODE_CFLAGS]) +AC_SUBST([UNICODE_LIBS]) + # determine the GDK/GTK+ target AC_MSG_CHECKING([the target windowing system]) AC_ARG_WITH(target, @@ -180,16 +197,16 @@ 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@:>@], + AC_HELP_STRING([--with-http-backend=@<:@curl/soup@:>@], [Select HTTP backend [default=curl]]), - [],[http_backend="curl"]) + [],[with_http_backend="curl"]) -case "$http_backend" in - curl) ;; - *) AC_MSG_ERROR([Invalid HTTP backend: must be curl.]) ;; +case "$with_http_backend" in + curl|soup) ;; + *) AC_MSG_ERROR([Invalid HTTP backend: must be curl, soup.]) ;; esac -AC_MSG_RESULT([$http_backend]) +AC_MSG_RESULT([$with_http_backend]) # minimum base dependencies CAIRO_REQUIRED_VERSION=1.4 @@ -206,6 +223,7 @@ GTK_REQUIRED_VERSION=2.8 # optional modules LIBCURL_REQUIRED_VERSION=7.15 +LIBSOUP_REQUIRED_VERSION=2.4 LIBXSLT_REQUIRED_VERSION=1.1.7 SQLITE_REQUIRED_VERSION=3.0 GSTREAMER_REQUIRED_VERSION=0.10 @@ -376,6 +394,19 @@ AC_ARG_ENABLE(fast_malloc, [],[if test "$enable_debug" = "yes"; then enable_fast_malloc="no"; else enable_fast_malloc="yes"; fi]) AC_MSG_RESULT([$enable_fast_malloc]) +# determine the font backend +AC_MSG_CHECKING([the font backend to use]) +AC_ARG_WITH(font_backend, + AC_HELP_STRING([--with-font-backend=@<:@freetype/pango@:>@], + [Select font backend [default=freetype]]), + [],[with_font_backend="freetype"]) + +case "$with_font_backend" in + freetype|pango) ;; + *) AC_MSG_ERROR([Invalid font backend: must be freetype or pango.]) ;; +esac +AC_MSG_RESULT([$with_font_backend]) + # Add '-g' flag to gcc if it's debug build if test "$enable_debug" = "yes"; then CXXFLAGS="$CXXFLAGS -g" @@ -383,13 +414,20 @@ if test "$enable_debug" = "yes"; then fi # check if curl is available -if test "$http_backend" = "curl"; then +if test "$with_http_backend" = "curl"; then PKG_CHECK_MODULES([LIBCURL], [libcurl >= $LIBCURL_REQUIRED_VERSION]) AC_SUBST([LIBCURL_CFLAGS]) AC_SUBST([LIBCURL_LIBS]) fi +if test "$with_http_backend" = "soup"; then + PKG_CHECK_MODULES([LIBSOUP], + [libsoup-2.4 >= $LIBSOUP_REQUIRED_VERSION]) + AC_SUBST([LIBSOUP_CFLAGS]) + AC_SUBST([LIBSOUP_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]) @@ -450,7 +488,12 @@ 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"]) +AM_CONDITIONAL([USE_CURL], [test "$with_http_backend" = "curl"]) +AM_CONDITIONAL([USE_SOUP], [test "$with_http_backend" = "soup"]) + +# Font backend conditionals +AM_CONDITIONAL([USE_FREETYPE], [test "$with_font_backend" = "freetype"]) +AM_CONDITIONAL([USE_PANGO], [test "$with_font_backend" = "pango"]) # WebKit feature conditionals AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug" = "yes"]) @@ -485,7 +528,9 @@ WebKit was configured with the following options: Build configuration: Enable debugging (slow) : $enable_debug Code coverage support : $enable_coverage - HTTP backend : $http_backend + Unicode backend : $unicode_backend + HTTP backend : $with_http_backend + Font backend : $with_font_backend Optimized memory allocator : $enable_fast_malloc Features: HTML5 cross-document messaging : $enable_cross_document_messaging diff --git a/meta/packages/webkit/files/fix_im.patch b/meta/packages/webkit/files/fix_im.patch index 4bd7b5a4c..e69de29bb 100644 --- a/meta/packages/webkit/files/fix_im.patch +++ b/meta/packages/webkit/files/fix_im.patch @@ -1,12 +0,0 @@ -Index: webkit-gtk-0.1+svnr28656-r4/WebKit/gtk/WebView/webkitwebview.cpp -=================================================================== ---- webkit-gtk-0.1+svnr28656-r4.orig/WebKit/gtk/WebView/webkitwebview.cpp 2008-02-08 17:41:55.000000000 +0000 -+++ webkit-gtk-0.1+svnr28656-r4/WebKit/gtk/WebView/webkitwebview.cpp 2008-02-08 17:42:17.000000000 +0000 -@@ -183,6 +183,7 @@ - hildon_gtk_im_context_filter_event(webViewData->imContext, (GdkEvent*)event); - hildon_gtk_im_context_show(webViewData->imContext); - #endif -+ gtk_im_context_focus_in(webViewData->imContext); - } - - return frame->eventHandler()->handleMouseReleaseEvent(PlatformMouseEvent(event)); -- cgit v1.2.3