webkit-gtk: switch to libsoup backend (segfaults are gone) to get cookies working...
authorKoen Kooi <koen@openembedded.org>
Tue, 10 Feb 2009 14:20:06 +0000 (15:20 +0100)
committerKoen Kooi <koen@openembedded.org>
Tue, 10 Feb 2009 14:20:06 +0000 (15:20 +0100)
* runtime tested on beagleboard

conf/distro/include/sane-srcrevs.inc
packages/webkit/webkit-gtk/GNUmakefile.am
packages/webkit/webkit-gtk/acinclude.m4
packages/webkit/webkit-gtk/autogen.sh
packages/webkit/webkit-gtk/configure.ac
packages/webkit/webkit-gtk_svn.bb

index ecc3d09..47f999b 100644 (file)
@@ -229,7 +229,7 @@ SRCREV_pn-uclibc-initial ?= "24279"
 SRCREV_pn-usbpath ?= "3172"
 SRCREV_pn-usbpath-native ?= "3172"
 SRCREV_pn-vala-terminal ?= "94117f453ce884e9c30b611fae6fc19f85f98f2b"
-SRCREV_pn-webkit-gtk ?= "39964"
+SRCREV_pn-webkit-gtk ?= "40814"
 SRCREV_pn-webkit-qt ?= "28656"
 SRCREV_pn-webkit-qtopia ?= "28656"
 SRCREV_pn-wlan-ng-modules ?= "1859"
index 7aec061..c74e1fa 100644 (file)
@@ -77,7 +77,7 @@ no_undefined = -no-undefined
 endif
 
 if OS_GNU
-version_script = -Wl,--version-script,$(srcdir)/symbols.filter
+version_script = -Wl,--version-script,$(srcdir)/autotools/symbols.filter
 endif
 
 # Shared libraries
@@ -121,7 +121,7 @@ libJavaScriptCore_la_SOURCES = \
 
 libJavaScriptCore_la_LIBADD = \
        $(UNICODE_LIBS) \
-       $(GLOBALDEPS_LIBS) \
+       $(GLIB_LIBS) \
        -lpthread
 
 libJavaScriptCore_la_CXXFLAGS = \
@@ -132,7 +132,7 @@ libJavaScriptCore_la_CFLAGS = \
        -fstrict-aliasing \
        -O3 \
        $(global_cflags) \
-       $(GLOBALDEPS_CFLAGS) \
+       $(GLIB_CFLAGS) \
        $(UNICODE_CFLAGS)
 
 libJavaScriptCore_la_CPPFLAGS = \
@@ -167,7 +167,7 @@ libWebCore_la_CXXFLAGS = \
 libWebCore_la_CFLAGS = \
        -fno-strict-aliasing \
        $(global_cflags) \
-       $(GLOBALDEPS_CFLAGS) \
+       $(GLIB_CFLAGS) \
        $(UNICODE_CFLAGS) \
        $(LIBXML_CFLAGS) \
        $(CAIRO_CFLAGS) \
@@ -181,7 +181,8 @@ libWebCore_la_CFLAGS = \
        $(GSTREAMER_CFLAGS) \
        $(LIBXSLT_CFLAGS) \
        $(COVERAGE_CFLAGS) \
-       $(HILDON_CFLAGS)
+       $(HILDON_CFLAGS) \
+       $(GEOCLUE_CFLAGS)
 
 libWebCore_la_CPPFLAGS = \
        $(global_cppflags) \
@@ -194,7 +195,7 @@ libWebCore_la_LIBADD = \
        libJavaScriptCore.la \
        libWebCoreJS.la \
        $(webcore_libadd) \
-       $(GLOBALDEPS_LIBS) \
+       $(GLIB_LIBS) \
        $(LIBXML_LIBS) \
        $(CAIRO_LIBS) \
        $(PANGO_LIBS) \
@@ -210,6 +211,7 @@ libWebCore_la_LIBADD = \
        $(HILDON_LIBS) \
        $(JPEG_LIBS) \
        $(PNG_LIBS) \
+       $(GEOCLUE_LIBS) \
        -lpthread
 
 # WebKit
index 5353429..e69de29 100644 (file)
@@ -1,359 +0,0 @@
-dnl dolt, a replacement for libtool
-dnl Copyright © 2007-2008 Josh Triplett <josh@freedesktop.org>
-dnl Copying and distribution of this file, with or without modification,
-dnl are permitted in any medium without royalty provided the copyright
-dnl notice and this notice are preserved.
-dnl
-dnl To use dolt, invoke the DOLT macro immediately after the libtool macros.
-dnl Optionally, copy this file into acinclude.m4, to avoid the need to have it
-dnl installed when running autoconf on your project.
-
-AC_DEFUN([DOLT], [
-AC_REQUIRE([AC_CANONICAL_HOST])
-# dolt, a replacement for libtool
-# Josh Triplett <josh@freedesktop.org>
-AC_PATH_PROG(DOLT_BASH, bash)
-AC_MSG_CHECKING([if dolt supports this host])
-dolt_supported=yes
-if test x$DOLT_BASH = x; then
-    dolt_supported=no
-fi
-if test x$GCC != xyes; then
-    dolt_supported=no
-fi
-case $host in
-i?86-*-linux*|x86_64-*-linux*|powerpc-*-linux* \
-|amd64-*-freebsd*|i?86-*-freebsd*|ia64-*-freebsd*)
-    pic_options='-fPIC'
-    ;;
-i?86-apple-darwin*)
-    pic_options='-fno-common'
-    ;;
-*mingw32*)
-    pic_options='-DDLL_EXPORT'
-    ;;
-*)
-    dolt_supported=no
-    ;;
-esac
-if test x$dolt_supported = xno ; then
-    AC_MSG_RESULT([no, falling back to libtool])
-    LTCOMPILE='$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(COMPILE)'
-    LTCXXCOMPILE='$(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXXCOMPILE)'
-else
-    AC_MSG_RESULT([yes, replacing libtool])
-
-dnl Start writing out doltcompile.
-    cat <<__DOLTCOMPILE__EOF__ >doltcompile
-#!$DOLT_BASH
-__DOLTCOMPILE__EOF__
-    cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-args=("$[]@")
-for ((arg=0; arg<${#args@<:@@@:>@}; arg++)) ; do
-    if test x"${args@<:@$arg@:>@}" = x-o ; then
-        objarg=$((arg+1))
-        break
-    fi
-done
-if test x$objarg = x ; then
-    echo 'Error: no -o on compiler command line' 1>&2
-    exit 1
-fi
-lo="${args@<:@$objarg@:>@}"
-obj="${lo%.lo}"
-if test x"$lo" = x"$obj" ; then
-    echo "Error: libtool object file name \"$lo\" does not end in .lo" 1>&2
-    exit 1
-fi
-objbase="${obj##*/}"
-__DOLTCOMPILE__EOF__
-
-dnl Write out shared compilation code.
-    if test x$enable_shared = xyes; then
-        cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-libobjdir="${obj%$objbase}.libs"
-if test ! -d "$libobjdir" ; then
-    mkdir_out="$(mkdir "$libobjdir" 2>&1)"
-    mkdir_ret=$?
-    if test "$mkdir_ret" -ne 0 && test ! -d "$libobjdir" ; then
-       echo "$mkdir_out" 1>&2
-        exit $mkdir_ret
-    fi
-fi
-pic_object="$libobjdir/$objbase.o"
-args@<:@$objarg@:>@="$pic_object"
-__DOLTCOMPILE__EOF__
-    cat <<__DOLTCOMPILE__EOF__ >>doltcompile
-"\${args@<:@@@:>@}" $pic_options -DPIC || exit \$?
-__DOLTCOMPILE__EOF__
-    fi
-
-dnl Write out static compilation code.
-dnl Avoid duplicate compiler output if also building shared objects.
-    if test x$enable_static = xyes; then
-        cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-non_pic_object="$obj.o"
-args@<:@$objarg@:>@="$non_pic_object"
-__DOLTCOMPILE__EOF__
-        if test x$enable_shared = xyes; then
-            cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-"${args@<:@@@:>@}" >/dev/null 2>&1 || exit $?
-__DOLTCOMPILE__EOF__
-        else
-            cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-"${args@<:@@@:>@}" || exit $?
-__DOLTCOMPILE__EOF__
-        fi
-    fi
-
-dnl Write out the code to write the .lo file.
-dnl The second line of the .lo file must match "^# Generated by .*libtool"
-    cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-{
-echo "# $lo - a libtool object file"
-echo "# Generated by doltcompile, not libtool"
-__DOLTCOMPILE__EOF__
-
-    if test x$enable_shared = xyes; then
-        cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo "pic_object='.libs/${objbase}.o'"
-__DOLTCOMPILE__EOF__
-    else
-        cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo pic_object=none
-__DOLTCOMPILE__EOF__
-    fi
-
-    if test x$enable_static = xyes; then
-        cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo "non_pic_object='${objbase}.o'"
-__DOLTCOMPILE__EOF__
-    else
-        cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-echo non_pic_object=none
-__DOLTCOMPILE__EOF__
-    fi
-
-    cat <<'__DOLTCOMPILE__EOF__' >>doltcompile
-} > "$lo"
-__DOLTCOMPILE__EOF__
-
-dnl Done writing out doltcompile; substitute it for libtool compilation.
-    chmod +x doltcompile
-    LTCOMPILE='$(top_builddir)/doltcompile $(COMPILE)'
-    LTCXXCOMPILE='$(top_builddir)/doltcompile $(CXXCOMPILE)'
-
-dnl automake ignores LTCOMPILE and LTCXXCOMPILE when it has separate CFLAGS for
-dnl a target, so write out a libtool wrapper to handle that case.
-dnl Note that doltlibtool does not handle inferred tags or option arguments
-dnl without '=', because automake does not use them.
-    cat <<__DOLTLIBTOOL__EOF__ > doltlibtool
-#!$DOLT_BASH
-__DOLTLIBTOOL__EOF__
-    cat <<'__DOLTLIBTOOL__EOF__' >>doltlibtool
-top_builddir_slash="${0%%doltlibtool}"
-: ${top_builddir_slash:=./}
-args=()
-modeok=false
-tagok=false
-for arg in "$[]@"; do
-    case "$arg" in
-        --mode=compile) modeok=true ;;
-        --tag=CC|--tag=CXX) tagok=true ;;
-        *) args@<:@${#args[@]}@:>@="$arg" ;;
-    esac
-done
-if $modeok && $tagok ; then
-    . ${top_builddir_slash}doltcompile "${args@<:@@@:>@}"
-else
-    exec ${top_builddir_slash}libtool "$[]@"
-fi
-__DOLTLIBTOOL__EOF__
-
-dnl Done writing out doltlibtool; substitute it for libtool.
-    chmod +x doltlibtool
-    LIBTOOL='$(top_builddir)/doltlibtool'
-fi
-AC_SUBST(LTCOMPILE)
-AC_SUBST(LTCXXCOMPILE)
-# end dolt
-])
-
-# ===========================================================================
-#           http://autoconf-archive.cryp.to/ax_compare_version.html
-# ===========================================================================
-#
-# SYNOPSIS
-#
-#   AX_COMPARE_VERSION(VERSION_A, OP, VERSION_B, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
-#
-# DESCRIPTION
-#
-#   This macro compares two version strings. Due to the various number of
-#   minor-version numbers that can exist, and the fact that string
-#   comparisons are not compatible with numeric comparisons, this is not
-#   necessarily trivial to do in a autoconf script. This macro makes doing
-#   these comparisons easy.
-#
-#   The six basic comparisons are available, as well as checking equality
-#   limited to a certain number of minor-version levels.
-#
-#   The operator OP determines what type of comparison to do, and can be one
-#   of:
-#
-#    eq  - equal (test A == B)
-#    ne  - not equal (test A != B)
-#    le  - less than or equal (test A <= B)
-#    ge  - greater than or equal (test A >= B)
-#    lt  - less than (test A < B)
-#    gt  - greater than (test A > B)
-#
-#   Additionally, the eq and ne operator can have a number after it to limit
-#   the test to that number of minor versions.
-#
-#    eq0 - equal up to the length of the shorter version
-#    ne0 - not equal up to the length of the shorter version
-#    eqN - equal up to N sub-version levels
-#    neN - not equal up to N sub-version levels
-#
-#   When the condition is true, shell commands ACTION-IF-TRUE are run,
-#   otherwise shell commands ACTION-IF-FALSE are run. The environment
-#   variable 'ax_compare_version' is always set to either 'true' or 'false'
-#   as well.
-#
-#   Examples:
-#
-#     AX_COMPARE_VERSION([3.15.7],[lt],[3.15.8])
-#     AX_COMPARE_VERSION([3.15],[lt],[3.15.8])
-#
-#   would both be true.
-#
-#     AX_COMPARE_VERSION([3.15.7],[eq],[3.15.8])
-#     AX_COMPARE_VERSION([3.15],[gt],[3.15.8])
-#
-#   would both be false.
-#
-#     AX_COMPARE_VERSION([3.15.7],[eq2],[3.15.8])
-#
-#   would be true because it is only comparing two minor versions.
-#
-#     AX_COMPARE_VERSION([3.15.7],[eq0],[3.15])
-#
-#   would be true because it is only comparing the lesser number of minor
-#   versions of the two values.
-#
-#   Note: The characters that separate the version numbers do not matter. An
-#   empty string is the same as version 0. OP is evaluated by autoconf, not
-#   configure, so must be a string, not a variable.
-#
-#   The author would like to acknowledge Guido Draheim whose advice about
-#   the m4_case and m4_ifvaln functions make this macro only include the
-#   portions necessary to perform the specific comparison specified by the
-#   OP argument in the final configure script.
-#
-# LAST MODIFICATION
-#
-#   2008-04-12
-#
-# COPYLEFT
-#
-#   Copyright (c) 2008 Tim Toolan <toolan@ele.uri.edu>
-#
-#   Copying and distribution of this file, with or without modification, are
-#   permitted in any medium without royalty provided the copyright notice
-#   and this notice are preserved.
-
-dnl #########################################################################
-AC_DEFUN([AX_COMPARE_VERSION], [
-  AC_PROG_AWK
-
-  # Used to indicate true or false condition
-  ax_compare_version=false
-
-  # Convert the two version strings to be compared into a format that
-  # allows a simple string comparison.  The end result is that a version
-  # string of the form 1.12.5-r617 will be converted to the form
-  # 0001001200050617.  In other words, each number is zero padded to four
-  # digits, and non digits are removed.
-  AS_VAR_PUSHDEF([A],[ax_compare_version_A])
-  A=`echo "$1" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
-                     -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
-                     -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
-                     -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
-                     -e 's/[[^0-9]]//g'`
-
-  AS_VAR_PUSHDEF([B],[ax_compare_version_B])
-  B=`echo "$3" | sed -e 's/\([[0-9]]*\)/Z\1Z/g' \
-                     -e 's/Z\([[0-9]]\)Z/Z0\1Z/g' \
-                     -e 's/Z\([[0-9]][[0-9]]\)Z/Z0\1Z/g' \
-                     -e 's/Z\([[0-9]][[0-9]][[0-9]]\)Z/Z0\1Z/g' \
-                     -e 's/[[^0-9]]//g'`
-
-  dnl # In the case of le, ge, lt, and gt, the strings are sorted as necessary
-  dnl # then the first line is used to determine if the condition is true.
-  dnl # The sed right after the echo is to remove any indented white space.
-  m4_case(m4_tolower($2),
-  [lt],[
-    ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/false/;s/x${B}/true/;1q"`
-  ],
-  [gt],[
-    ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort | sed "s/x${A}/false/;s/x${B}/true/;1q"`
-  ],
-  [le],[
-    ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort | sed "s/x${A}/true/;s/x${B}/false/;1q"`
-  ],
-  [ge],[
-    ax_compare_version=`echo "x$A
-x$B" | sed 's/^ *//' | sort -r | sed "s/x${A}/true/;s/x${B}/false/;1q"`
-  ],[
-    dnl Split the operator from the subversion count if present.
-    m4_bmatch(m4_substr($2,2),
-    [0],[
-      # A count of zero means use the length of the shorter version.
-      # Determine the number of characters in A and B.
-      ax_compare_version_len_A=`echo "$A" | $AWK '{print(length)}'`
-      ax_compare_version_len_B=`echo "$B" | $AWK '{print(length)}'`
-
-      # Set A to no more than B's length and B to no more than A's length.
-      A=`echo "$A" | sed "s/\(.\{$ax_compare_version_len_B\}\).*/\1/"`
-      B=`echo "$B" | sed "s/\(.\{$ax_compare_version_len_A\}\).*/\1/"`
-    ],
-    [[0-9]+],[
-      # A count greater than zero means use only that many subversions
-      A=`echo "$A" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
-      B=`echo "$B" | sed "s/\(\([[0-9]]\{4\}\)\{m4_substr($2,2)\}\).*/\1/"`
-    ],
-    [.+],[
-      AC_WARNING(
-        [illegal OP numeric parameter: $2])
-    ],[])
-
-    # Pad zeros at end of numbers to make same length.
-    ax_compare_version_tmp_A="$A`echo $B | sed 's/./0/g'`"
-    B="$B`echo $A | sed 's/./0/g'`"
-    A="$ax_compare_version_tmp_A"
-
-    # Check for equality or inequality as necessary.
-    m4_case(m4_tolower(m4_substr($2,0,2)),
-    [eq],[
-      test "x$A" = "x$B" && ax_compare_version=true
-    ],
-    [ne],[
-      test "x$A" != "x$B" && ax_compare_version=true
-    ],[
-      AC_WARNING([illegal OP parameter: $2])
-    ])
-  ])
-
-  AS_VAR_POPDEF([A])dnl
-  AS_VAR_POPDEF([B])dnl
-
-  dnl # Execute ACTION-IF-TRUE / ACTION-IF-FALSE.
-  if test "$ax_compare_version" = "true" ; then
-    m4_ifvaln([$4],[$4],[:])dnl
-    m4_ifvaln([$5],[else $5])dnl
-  fi
-]) dnl AX_COMPARE_VERSION
index a929538..f87238c 100644 (file)
@@ -8,6 +8,10 @@ test -z "$srcdir" && srcdir=.
 ORIGDIR=`pwd`
 cd $srcdir
 
+LIBTOOLIZE_FLAGS="--force --automake"
+ACLOCAL_FLAGS="-I autotools"
+AUTOMAKE_FLAGS="--foreign --add-missing"
+
 DIE=0
 
 (autoconf --version) < /dev/null > /dev/null 2>&1 || {
@@ -46,10 +50,10 @@ rm -rf $top_srcdir/autom4te.cache
 
 touch README INSTALL
 
-aclocal || exit $?
-$LIBTOOLIZE --force || exit $?
+aclocal $ACLOCAL_FLAGS || exit $?
+$LIBTOOLIZE $LIBTOOLIZE_FLAGS || exit $?
 autoheader || exit $?
-automake --foreign --add-missing || exit $?
+automake $AUTOMAKE_FLAGS || exit $?
 autoconf || exit $?
 
 cd $ORIGDIR || exit 1
index 7b451ef..c7ed988 100644 (file)
@@ -6,6 +6,10 @@ m4_define([webkit_micro_version], [0])
 
 AC_INIT([WebKit],[webkit_major_version.webkit_minor_version.webkit_micro_version],[http://bugs.webkit.org/])
 
+AC_CONFIG_MACRO_DIR([autotools])
+AC_CONFIG_AUX_DIR([autotools])
+AC_SUBST(ACLOCAL_AMFLAGS, "-I autotools")
+
 AC_CONFIG_HEADERS([autotoolsconfig.h])
 AC_CANONICAL_SYSTEM
 
@@ -23,10 +27,13 @@ dnl # see http://www.gnu.org/software/libtool/manual.html#Versioning
 LIBWEBKITGTK_VERSION=1:0:0
 AC_SUBST([LIBWEBKITGTK_VERSION])
 
+# Recent libtool+automake don't assume you want C++, explicitly enable it
+AC_PROG_CXX
+
 AM_INIT_AUTOMAKE([foreign subdir-objects tar-ustar])
 
 # host checking - inspired by the GTK+ configure.in
-# TODO: os_mac, os_bsd
+# TODO: move these to webkit.m4?
 AC_MSG_CHECKING([for native Win32])
 case "$host" in
      *-*-mingw*)
@@ -59,57 +66,14 @@ case "$host_os" in
        ;;
 esac
 
-# If CXXFLAGS and CFLAGS are unset, default to empty.
-# This is to tell automake not to include '-g' if CXXFLAGS is not set
-# For more info - http://www.gnu.org/software/automake/manual/autoconf.html#C_002b_002b-Compiler
-if test -z "$CXXFLAGS"; then
-   CXXFLAGS=""
-fi
-if test -z "$CFLAGS"; then
-   CFLAGS=""
-fi
-
-AM_PROG_CC_STDC
-AM_PROG_CC_C_O
-AC_PROG_CXX
-AC_PROG_INSTALL
+# initialize webkit options
+WEBKIT_INIT
 AC_DISABLE_STATIC
 AC_LIBTOOL_WIN32_DLL
 AC_PROG_LIBTOOL
-AC_SYS_LARGEFILE
+# use dolt to speedup the build
 DOLT
 
-# 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])
-fi
-
-AC_PATH_PROG(BISON, bison)
-if test -z "$BISON"; then
-   AC_MSG_ERROR([You need the 'bison' parser generator to compile WebKit])
-else
-    case "$target_cpu" in
-        arm)
-            BISON_VERSION=`$BISON --version | head -n1 | sed 's,.*\ \([0-9]*\.[0-9]*\)$,\1,'`
-            AX_COMPARE_VERSION([2.2],[gt],[$BISON_VERSION],
-                echo "Autoconf say: I'm broken, ignore me")
-        ;;
-        *) ;;
-    esac
-fi
-
 AC_PATH_PROG(FLEX, flex)
 if test -z "$FLEX"; then
    AC_MSG_ERROR([You need the 'flex' lexer generator to compile WebKit])
@@ -124,34 +88,6 @@ if test -z "$GPERF"; then
    AC_MSG_ERROR([You need the 'gperf' hash function generator to compile WebKit])
 fi
 
-AC_PATH_PROG(MV, mv)
-if test -z "$MV"; then
-   AC_MSG_ERROR([You need 'mv' to compile WebKit])
-fi
-
-# GTK+ port only
-# Check for glib-genmarshal and glib-mkenums
-AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
-AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
-if test -z "$GLIB_GENMARSHAL" || test -z "$GLIB_MKENUMS"; then
-   AC_MSG_ERROR([You need the GLib dev tools in your path])
-fi
-
-# Check whether a C++ was found (AC_PROG_CXX sets $CXX to "g++" even when it
-# doesn't exist)
-AC_LANG_PUSH([C++])
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])],[],[AC_MSG_ERROR([No C++ compiler found])])
-AC_LANG_POP([C++])
-
-# C/C++ Language Features
-AC_C_CONST
-AC_C_INLINE
-AC_C_VOLATILE
-
-# C/C++ Headers
-AC_HEADER_STDC
-AC_HEADER_STDBOOL
-
 # pthread (not needed on Windows)
 if test "$os_win32" = "no"; then
 AC_CHECK_HEADERS([pthread.h],
@@ -183,12 +119,6 @@ if test "$jpeg_ok" = yes; then
 fi
 AC_SUBST([JPEG_LIBS])
 
-# check for pkg-config
-AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
-if test "$PKG_CONFIG" = "no"; then
-   AC_MSG_ERROR([Cannot find pkg-config, make sure it is installed in your PATH])
-fi
-
 # Check for libpng the way Gtk+ does it
 AC_MSG_CHECKING(for libpng12)
 if $PKG_CONFIG --exists libpng12 ; then
@@ -219,44 +149,6 @@ else
 fi
 AC_SUBST([PNG_LIBS])
 
-# 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
-
-AC_MSG_RESULT([$unicode_backend])
-
-if test "$unicode_backend" = "icu"; then
-       AC_PATH_PROG(icu_config, icu-config, no)
-       if test "$icu_config" = "no"; then
-               if test "$os_darwin" = "yes"; then
-                       UNICODE_CFLAGS="-I\$(srcdir)/JavaScriptCore/icu -I\$(srcdir)/WebCore/icu"
-                       UNICODE_LIBS="-licucore"
-               elif test "$os_win32" = "yes"; then
-                       UNICODE_CFLAGS=""
-                       UNICODE_LIBS="-licuin -licuuc"
-               else
-                       AC_MSG_ERROR([Cannot find icu-config. The ICU library is needed.])
-               fi
-       else
-               # 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,
@@ -307,9 +199,6 @@ 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
 GTK_REQUIRED_VERSION=2.8
 
@@ -320,13 +209,14 @@ LIBXSLT_REQUIRED_VERSION=1.1.7
 SQLITE_REQUIRED_VERSION=3.0
 GSTREAMER_REQUIRED_VERSION=0.10
 
-PKG_CHECK_MODULES([GLOBALDEPS],
-                  [glib-2.0 >= $GLIB_REQUIRED_VERSION
-                  gobject-2.0 >= $GOBJECT_REQUIRED_VERSION
-                  gthread-2.0 >= $GTHREAD_REQUIRED_VERSION])
-AC_SUBST([GLOBALDEPS_CFLAGS])
-AC_SUBST([GLOBALDEPS_LIBS])
-
+# Available modules
+#
+# glib - glib and includes gthread
+# unicode - check and identify which unicode backend to use
+#
+# todo: webcore gtk
+WEBKIT_CHECK_DEPENDENCIES([glib unicode])
+                          
 PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= $LIBXML_REQUIRED_VERSION)
 AC_SUBST(LIBXML_CFLAGS)
 AC_SUBST(LIBXML_LIBS)
@@ -456,8 +346,8 @@ AC_MSG_RESULT([$enable_xslt])
 AC_MSG_CHECKING([whether to enable geolocation support])
 AC_ARG_ENABLE(geolocation,
               AC_HELP_STRING([--enable-geolocation],
-                             [enable support for geolocation [default=yes]]),
-              [],[enable_geolocation="yes"])
+                             [enable support for geolocation [default=no]]),
+              [],[enable_geolocation="no"])
 AC_MSG_RESULT([$enable_geolocation])
 
 # check whether to enable SVG support
@@ -676,6 +566,14 @@ if test "$enable_xslt" = "yes"; then
    AC_SUBST([LIBXSLT_LIBS])
 fi
 
+# check if geoclue is available
+if test "$enable_geolocation" = "yes"; then
+    PKG_CHECK_MODULES([GEOCLUE], [geoclue])
+    AC_SUBST([GEOCLUE_CFLAGS])
+    AC_SUBST([GEOCLUE_LIBS])
+fi
+
+
 # check if gstreamer is available
 if test "$enable_video" = "yes"; then
    PKG_CHECK_MODULES([GSTREAMER],
index 96ef562..9892672 100644 (file)
@@ -1,11 +1,11 @@
 DESCRIPTION = "WebKit browser engine, GTK+ edition"
-DEPENDS = "curl icu libxml2 cairo libxslt libxt libidn gnutls gtk+ gstreamer gst-plugins-base gnome-vfs bison-native flex-native gperf-native perl-native sqlite3"
+DEPENDS = "libsoup-2.4 curl icu libxml2 cairo libxslt libxt libidn gnutls gtk+ gstreamer gst-plugins-base gnome-vfs bison-native flex-native gperf-native perl-native sqlite3"
 
 SRCREV_FORMAT = "webcore-rwebkit"
 
 # Yes, this is wrong...
 PV = "0.1+svnr${SRCREV}"
-PR = "r7"
+PR = "r8"
 
 SRC_URI = "\
   svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptCore;proto=http \
@@ -14,7 +14,7 @@ SRC_URI = "\
   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://acinclude.m4 \
+  svn://svn.webkit.org/repository/webkit/trunk/;module=autotools;proto=http \
   file://Makefile \
   file://Makefile.shared \
   file://autogen.sh \
@@ -29,13 +29,13 @@ inherit autotools pkgconfig lib_package
 
 export BISON="${STAGING_BINDIR_NATIVE}/bison"
 ARM_INSTRUCTION_SET = "arm"
-# FIXME: Segfaulting without --with-http-backend=curl
 EXTRA_OECONF = "\
                 --enable-debug=no \
                 --enable-svg \
                 --enable-icon-database=yes \
-               --with-http-backend=curl \
+               --with-http-backend=soup \
                "
+EXTRA_AUTORECONF = " -I autotools "
 
 # Dolt gets used on x86 and ppc and hardcodes 'libtool'
 do_configure_append() {