summaryrefslogtreecommitdiff
path: root/recipes
diff options
context:
space:
mode:
authorStefan Schmidt <stefan@datenfreihafen.org>2009-11-04 11:09:39 +0100
committerStefan Schmidt <stefan@datenfreihafen.org>2009-11-04 11:09:39 +0100
commitd626f7db71c1a113e63c9b5e7c97394eb8ed4b59 (patch)
treee3e549ad14091008b93ac899167b1b6075178ecd /recipes
parent9c964b09b089d98b7da4c528f83fc0ea30a5c9bd (diff)
parentd5270e5061a5b96c2ba1470c607308a414085359 (diff)
Merge branch 'org.openembedded.dev' of git.openembedded.org:openembedded into org.openembedded.dev
Diffstat (limited to 'recipes')
-rw-r--r--recipes/autofs/autofs.inc19
-rw-r--r--recipes/autofs/autofs_3.1.7.bb20
-rw-r--r--recipes/autofs/autofs_4.0.0.bb17
-rw-r--r--recipes/autofs/autofs_4.1.4.bb19
-rw-r--r--recipes/boost/boost-14x.inc83
-rw-r--r--recipes/boost/boost_1.40.0.bb10
-rw-r--r--recipes/boost/files/uclibc.patch13
-rw-r--r--recipes/connman/connman_0.46.bb37
-rw-r--r--recipes/e17/expedite_svn.bb5
-rw-r--r--recipes/efl1/evas.inc12
-rw-r--r--recipes/efl1/evas_svn.bb22
-rw-r--r--recipes/eject/eject_2.1.5.bb3
-rw-r--r--recipes/gnome-mplayer/gecko-mediaplayer/gecko-mplayer-svn.diff480
-rw-r--r--recipes/gthumb/gthumb_2.10.11.bb4
-rw-r--r--recipes/linux/linux-2.6.31/boc01/005-091103-isl12024.patch (renamed from recipes/linux/linux-2.6.31/boc01/005-091008-isl12024.patch)339
-rw-r--r--recipes/linux/linux_2.6.31.bb2
-rw-r--r--recipes/mysql/mysql_4.1.22.bb6
-rw-r--r--recipes/mythtv/mythplugins/mytharchive.pro.patch41
-rw-r--r--recipes/mythtv/mythplugins_0.21+0.22rc2.bb48
-rw-r--r--recipes/neon/neon_0.25.5.bb1
-rw-r--r--recipes/neon/neon_0.26.0.bb1
-rwxr-xr-xrecipes/ntp/ntp-4.2.4p7/ntpdate49
-rw-r--r--recipes/ntp/ntp_4.2.4p7.bb10
-rw-r--r--recipes/openvpn/openvpn_2.0.9+2.1rc20.bb9
-rw-r--r--recipes/opkg/opkg.inc5
-rw-r--r--recipes/opkg/opkg/isatty.patch64
-rw-r--r--recipes/perl/libxml-parser-perl_2.36.bb21
-rw-r--r--recipes/powervr-drivers/libgles-omap3.inc16
-rw-r--r--recipes/prelink/prelink_20061027.bb9
-rw-r--r--recipes/prelink/prelink_20071009.bb9
-rw-r--r--recipes/proxy-libintl/proxy-libintl_20080418.bb3
-rw-r--r--recipes/qt4/qt4-x11-free.inc2
-rw-r--r--recipes/usbutils/usbutils_0.86.bb19
-rw-r--r--recipes/xfce-base/xfce4-panel_4.6.2.bb31
34 files changed, 1146 insertions, 283 deletions
diff --git a/recipes/autofs/autofs.inc b/recipes/autofs/autofs.inc
new file mode 100644
index 0000000000..badadb524a
--- /dev/null
+++ b/recipes/autofs/autofs.inc
@@ -0,0 +1,19 @@
+DESCRIPTION = "Kernel based automounter for linux."
+SECTION = "base"
+LICENSE = "GPL"
+INC_PR = "r4"
+EXTRA_OEMAKE += "'RANLIB=${RANLIB}'"
+
+inherit autotools
+
+do_configure_prepend () {
+ if [ ! -e acinclude.m4 ]; then
+ cp aclocal.m4 acinclude.m4
+ fi
+}
+
+do_install () {
+ install -d ${D}${mandir}/man5 ${D}${mandir}/man8 \
+ ${D}${sbindir}
+ oe_runmake 'INSTALLROOT=${D}' install
+}
diff --git a/recipes/autofs/autofs_3.1.7.bb b/recipes/autofs/autofs_3.1.7.bb
index 05481ed46c..10840d8d33 100644
--- a/recipes/autofs/autofs_3.1.7.bb
+++ b/recipes/autofs/autofs_3.1.7.bb
@@ -1,18 +1,4 @@
-DESCRIPTION = "Kernel based automounter for linux."
-SECTION = "base"
-LICENSE = "GPL"
-SRC_URI = "${KERNELORG_MIRROR}/pub/linux/daemons/autofs/v3/autofs-${PV}.tar.bz2"
-
-inherit autotools
+require autofs.inc
-do_configure_prepend () {
- if [ ! -e acinclude.m4 ]; then
- cp aclocal.m4 acinclude.m4
- fi
-}
-
-do_install () {
- install -d ${D}${mandir}/man5 ${D}${mandir}/man8 \
- ${D}${sbindir}
- oe_runmake 'INSTALLROOT=${D}' install
-}
+SRC_URI = "${KERNELORG_MIRROR}/pub/linux/daemons/autofs/v3/autofs-${PV}.tar.bz2"
+PR = "${INC_PR}"
diff --git a/recipes/autofs/autofs_4.0.0.bb b/recipes/autofs/autofs_4.0.0.bb
index 6033b8a09a..b08d6aa3bf 100644
--- a/recipes/autofs/autofs_4.0.0.bb
+++ b/recipes/autofs/autofs_4.0.0.bb
@@ -1,17 +1,4 @@
-DESCRIPTION = "Kernel based automounter for linux."
-SECTION = "base"
-LICENSE = "GPL"
+require autofs.inc
SRC_URI = "${KERNELORG_MIRROR}/pub/linux/daemons/autofs/v4/old/autofs-${PV}-1.tar.bz2"
-
-inherit autotools
-
-do_configure_prepend () {
- if [ ! -e acinclude.m4 ]; then
- cp aclocal.m4 acinclude.m4
- fi
-}
-
-do_install () {
- oe_runmake 'INSTALLROOT=${D}' install
-}
+PR = "${INC_PR}"
diff --git a/recipes/autofs/autofs_4.1.4.bb b/recipes/autofs/autofs_4.1.4.bb
index 2f998ab220..0ec818a046 100644
--- a/recipes/autofs/autofs_4.1.4.bb
+++ b/recipes/autofs/autofs_4.1.4.bb
@@ -1,8 +1,4 @@
-DESCRIPTION = "Kernel based automounter for linux."
-SECTION = "base"
-LICENSE = "GPL"
-
-PR = "r3"
+require autofs.inc
SRC_URI = "${KERNELORG_MIRROR}/pub/linux/daemons/autofs/v4/autofs-${PV}.tar.bz2 \
${KERNELORG_MIRROR}/pub/linux/daemons/autofs/v4/autofs-4.1.4-misc-fixes.patch;patch=1 \
@@ -14,8 +10,9 @@ SRC_URI = "${KERNELORG_MIRROR}/pub/linux/daemons/autofs/v4/autofs-${PV}.tar.bz2
file://auto.net-sort-option-fix.patch;patch=1 \
file://autofs-additional-distros.patch;patch=1 \
file://no-bash.patch;patch=1"
+PR = "${INC_PR}"
-inherit autotools update-rc.d
+inherit update-rc.d
INITSCRIPT_NAME = "autofs"
INITSCRIPT_PARAMS = "defaults"
@@ -24,13 +21,3 @@ INITSCRIPT_PARAMS = "defaults"
CFLAGS += "${LDFLAGS}"
EXTRA_OEMAKE = "STRIP=/bin/true"
PARALLEL_MAKE = ""
-
-do_configure_prepend () {
- if [ ! -e acinclude.m4 ]; then
- cp aclocal.m4 acinclude.m4
- fi
-}
-
-do_install () {
- oe_runmake 'INSTALLROOT=${D}' install
-}
diff --git a/recipes/boost/boost-14x.inc b/recipes/boost/boost-14x.inc
new file mode 100644
index 0000000000..b1a5f6bb65
--- /dev/null
+++ b/recipes/boost/boost-14x.inc
@@ -0,0 +1,83 @@
+# The Boost web site provides free peer-reviewed portable
+# C++ source libraries. The emphasis is on libraries which
+# work well with the C++ Standard Library. The libraries are
+# intended to be widely useful, and are in regular use by
+# thousands of programmers across a broad spectrum of applications.
+DESCRIPTION = "Free peer-reviewed portable C++ source libraries"
+HOMEPAGE = "http://www.boost.org/"
+SECTION = "libs"
+DEPENDS = "zlib bzip2 python expat"
+PRIORITY = "optional"
+LICENSE = "Boost Software License"
+PR = "r0"
+
+ARM_INSTRUCTION_SET = "arm"
+BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}"
+BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}"
+BOOST_P = "boost_${BOOST_VER}"
+
+inherit cmake
+
+EXTRA_OECMAKE = "-DBUILD_SHARED=ON \
+ -DBUILD_MULTI_THREADED=ON \
+ -DBUILD_RELEASE=ON \
+ -DBUILD_DEBUG=OFF \
+ "
+
+BOOST_LIBS = "\
+ date_time \
+ filesystem \
+ graph \
+ iostreams \
+ program_options \
+ python \
+ regex \
+ serialization \
+ signals \
+ system \
+ test \
+ thread \
+ "
+
+# FIXME: for some reason this fails on powerpc
+#BOOST_LIBS += "serialization"
+
+# To enable python, uncomment the following:
+#BOOST_LIBS += "python"
+#DEPENDS += "python"
+#PYTHON_ROOT = "${STAGING_DIR_HOST}/${layout_prefix}"
+#PYTHON_VERSION = "2.5"
+
+S = "${WORKDIR}/${BOOST_P}"
+
+# Make a package for each library, plus -dev
+PACKAGES = "${PN}-dbg ${BOOST_PACKAGES}"
+python __anonymous () {
+ import bb
+
+ packages = []
+ extras = []
+ for lib in bb.data.getVar('BOOST_LIBS', d, 1).split( ):
+ pkg = "boost-%s" % lib.replace("_", "-")
+ extras.append("--with-%s" % lib)
+ packages.append(pkg)
+ if not bb.data.getVar("FILES_%s" % pkg, d, 1):
+ bb.data.setVar("FILES_%s" % pkg, "${libdir}/libboost_%s*.so*" % lib, d)
+ bb.data.setVar("BOOST_PACKAGES", " ".join(packages), d)
+ bb.data.setVar("BJAM_EXTRA", " ".join(extras), d)
+}
+
+# Override the contents of specific packages
+FILES_boost-serialization = "${libdir}/libboost_serialization*.so* \
+ ${libdir}/libboost_wserialization*.so*"
+FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so \
+ ${libdir}/libboost_unit_test_framework*.so*"
+
+# -dev last to pick up the remaining stuff
+PACKAGES += "${PN}-dev"
+FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a"
+
+# "boost" is a metapackage which pulls in all boost librabries
+PACKAGES += "${PN}"
+RRECOMMENDS_${PN} += "${BOOST_PACKAGES}"
+
diff --git a/recipes/boost/boost_1.40.0.bb b/recipes/boost/boost_1.40.0.bb
new file mode 100644
index 0000000000..5db3b4a301
--- /dev/null
+++ b/recipes/boost/boost_1.40.0.bb
@@ -0,0 +1,10 @@
+require boost-14x.inc
+
+PR = "r0"
+
+SRC_URI = "http://sodium.resophonic.com/boost-cmake/1.40.0.cmake2/boost-1.40.0.cmake2.tar.gz \
+ file://uclibc.patch;patch=1 \
+ "
+S = "${WORKDIR}/boost-1.40.0.cmake2"
+
+DEFAULT_PREFERENCE = "-1"
diff --git a/recipes/boost/files/uclibc.patch b/recipes/boost/files/uclibc.patch
new file mode 100644
index 0000000000..738b8b947d
--- /dev/null
+++ b/recipes/boost/files/uclibc.patch
@@ -0,0 +1,13 @@
+Index: boost-1.40.0.cmake2/libs/thread/src/pthread/thread.cpp
+===================================================================
+--- boost-1.40.0.cmake2.orig/libs/thread/src/pthread/thread.cpp 2009-11-03 21:33:21.392444361 +0100
++++ boost-1.40.0.cmake2/libs/thread/src/pthread/thread.cpp 2009-11-03 21:36:04.748684550 +0100
+@@ -390,7 +390,7 @@
+ {
+ #if defined(PTW32_VERSION) || defined(__hpux)
+ return pthread_num_processors_np();
+-#elif defined(__linux__)
++#elif defined(__linux__) && !defined(__UCLIBC__)
+ return get_nprocs();
+ #elif defined(__APPLE__) || defined(__FreeBSD__)
+ int count;
diff --git a/recipes/connman/connman_0.46.bb b/recipes/connman/connman_0.46.bb
new file mode 100644
index 0000000000..26b7b82798
--- /dev/null
+++ b/recipes/connman/connman_0.46.bb
@@ -0,0 +1,37 @@
+require connman.inc
+
+PR = "r1"
+
+EXTRA_OECONF += "\
+ --disable-gtk-doc \
+ --enable-debug \
+ --enable-threads \
+ --enable-loopback \
+ --enable-ethernet \
+ --enable-wifi \
+ --disable-wimax \
+ --enable-bluetooth \
+ --enable-udhcp \
+ --enable-dhclient \
+ --enable-resolvconf \
+ --enable-dnsproxy \
+ --disable-novatel \
+ --disable-huawei \
+ --disable-hso \
+ --enable-ppp \
+# needs udev >= 129
+ --disable-udev \
+ --disable-polkit \
+ --enable-client \
+ --enable-fake \
+# --with-udhcpc=PROGRAM \
+# --with-dhclient=PROGRAM \
+# --with-resolvconf=PROGRAM \
+# --with-pppd=PROGRAM \
+"
+
+SRC_URI = "\
+ http://www.kernel.org/pub/linux/network/connman/connman-${PV}.tar.gz \
+ file://connman \
+"
+
diff --git a/recipes/e17/expedite_svn.bb b/recipes/e17/expedite_svn.bb
index c4dfa5afed..2bcc6d9877 100644
--- a/recipes/e17/expedite_svn.bb
+++ b/recipes/e17/expedite_svn.bb
@@ -1,9 +1,9 @@
DESCRIPTION = "Expedite is a comprehensive benchmarking suite for Evas"
DEPENDS = "eet evas"
-RDEPENDS = "evas-engine-buffer evas-engine-fb evas-engine-software-generic evas-engine-software-x11 evas-loader-png"
+RDEPENDS = "expedite-themes evas-engine-buffer evas-engine-fb evas-engine-software-generic evas-engine-software-x11 evas-loader-png"
LICENSE = "MIT BSD"
PV = "0.6.0+svnr${SRCREV}"
-PR = "r1"
+PR = "r3"
inherit e
@@ -13,7 +13,6 @@ EXTRA_OECONF = "\
--enable-simple-x11 \
\
--disable-opengl-glew \
- --disable-opengl-x11 \
--enable-software-x11 \
--enable-xrender-x11 \
--enable-software-16-x11 \
diff --git a/recipes/efl1/evas.inc b/recipes/efl1/evas.inc
index 55774ee7ad..833d38f240 100644
--- a/recipes/efl1/evas.inc
+++ b/recipes/efl1/evas.inc
@@ -29,12 +29,12 @@ do_install_append() {
find "${D}" -name .debug -type d -exec rm -rf {} \;
}
-FILES_${PN}-dev += "${libdir}/evas/modules/*/*/*/*.a ${libdir}/evas/modules/*/*/*/*.la"
-FILES_${PN}-dbg += "${libdir}/evas/modules/*/*/*/.debug/"
+FILES_${SRCNAME}-dev += "${libdir}/evas/modules/*/*/*/*.a ${libdir}/evas/modules/*/*/*/*.la"
+FILES_${SRCNAME}-dbg += "${libdir}/evas/modules/*/*/*/.debug/"
PACKAGES_DYNAMIC = "evas-engine-* evas-loader-* evas-saver-*"
-RRECOMMENDS_${PN} = "\
+RRECOMMENDS_${SRCNAME} = "\
evas-engine-buffer \
evas-engine-fb \
evas-engine-software-generic \
@@ -51,9 +51,9 @@ RRECOMMENDS_${PN} = "\
# Some upgrade path tweaking
AUTO_LIBNAME_PKGS = ""
-RREPLACES_${PN} = "libevas-ver-pre-svn-00-0 libevas-ver-pre-svn-01-0"
+RREPLACES_${SRCNAME} = "libevas-ver-pre-svn-00-0 libevas-ver-pre-svn-01-0"
-RREPLACES_${PN}-tests = "libevas-ver-pre-svn-00-tests libevas-ver-pre-svn-01-tests"
+RREPLACES_${SRCNAME}-tests = "libevas-ver-pre-svn-00-tests libevas-ver-pre-svn-01-tests"
RREPLACES_evas-loader-pmaps = "liblibevas-ver-pre-svn-00-loader-pmaps libevas-ver-pre-svn-00-loader-pmaps "
RREPLACES_evas-loader-eet = "liblibevas-ver-pre-svn-00-loader-eet libevas-ver-pre-svn-00-loader-eet "
@@ -79,6 +79,6 @@ RREPLACES_evas-engine-software-x11 = "liblibevas-ver-pre-svn-00-engine-software-
# disabling this, since (due to OE bugs) it drags in whole Gtk+
-#RRECOMMENDS_${PN} += "\
+#RRECOMMENDS_${SRCNAME} += "\
# libevas-loader-svg \
#"
diff --git a/recipes/efl1/evas_svn.bb b/recipes/efl1/evas_svn.bb
index f84bd48f7a..21779818ca 100644
--- a/recipes/efl1/evas_svn.bb
+++ b/recipes/efl1/evas_svn.bb
@@ -1,5 +1,8 @@
require evas.inc
-PR = "r3"
+PR = "r4"
+
+EVAS_CPU_TWEAKS = ""
+EVAS_CPU_TWEAKS_armv7a = "--enable-cpu-neon"
EXTRA_OECONF = "\
--x-includes=${STAGING_INCDIR}/X11 \
@@ -60,4 +63,19 @@ EXTRA_OECONF = "\
--enable-convert-32-rgb-rot-0 \
--enable-convert-32-rgb-rot-90 \
--disable-convert-32-rgb-rot-180 \
- --enable-convert-32-rgb-rot-270"
+ --enable-convert-32-rgb-rot-270 \
+ ${EVAS_CPU_TWEAKS}"
+
+
+# either sgx or 6410 atm
+GLES ?= "sgx"
+
+# This is a hack to get openGL|ES 2.x support enabled for people that have the SDK headers in staging.
+# We put this in the main recipe, since it will just not build the gl stuff when the headers are missing
+
+# If the above sentence confuse you: everything is built and configured as before if you don't have the SDK
+
+EXTRA_OECONF += "\
+ --enable-gl-x11 --enable-gl-flavor-gles --enable-gles-variety-${GLES} \
+"
+
diff --git a/recipes/eject/eject_2.1.5.bb b/recipes/eject/eject_2.1.5.bb
index 6d53aee9a7..f90f8e6993 100644
--- a/recipes/eject/eject_2.1.5.bb
+++ b/recipes/eject/eject_2.1.5.bb
@@ -1,9 +1,10 @@
DESCRIPTION = "Eject allows removable media (typically a CD-ROM, floppy disk, tape, or JAZ or ZIP disk) to be ejected under software control."
+HOMEPAGE = "http://eject.sourceforge.net/"
LICENSE = "GPLv2"
inherit autotools gettext
-SRC_URI = "http://ca.geocities.com/jefftranter@rogers.com/eject-${PV}.tar.gz"
+SRC_URI = "http://sources.openembedded.org/eject-2.1.5.tar.gz"
S = "${WORKDIR}/${PN}"
diff --git a/recipes/gnome-mplayer/gecko-mediaplayer/gecko-mplayer-svn.diff b/recipes/gnome-mplayer/gecko-mediaplayer/gecko-mplayer-svn.diff
new file mode 100644
index 0000000000..929d02540a
--- /dev/null
+++ b/recipes/gnome-mplayer/gecko-mediaplayer/gecko-mplayer-svn.diff
@@ -0,0 +1,480 @@
+Index: configure
+===================================================================
+--- configure (revision 328)
++++ configure (working copy)
+@@ -639,6 +639,7 @@
+ am__EXEEXT_TRUE
+ LTLIBOBJS
+ LIBOBJS
++plugindir
+ GIO_DEFINES
+ GIO_LIBS
+ GIO_CFLAGS
+@@ -775,6 +776,7 @@
+ enable_schemas_install
+ with_gconf
+ with_gio
++with_plugin_dir
+ enable_caching
+ '
+ ac_precious_vars='build_alias
+@@ -1444,6 +1446,7 @@
+ Directory for installing schema files.
+ --with-gconf Use Gconf to store preferences
+ --with-gio Use GIO for file I/O
++ --with-plugin-dir=dir Directory where plugins are stored
+
+ Some influential environment variables:
+ CC C compiler command
+@@ -9640,6 +9643,16 @@
+ fi
+
+
++
++# Check whether --with-plugin_dir was given.
++if test "${with_plugin_dir+set}" = set; then
++ withval=$with_plugin_dir; plugindir=$withval
++else
++ plugindir='$(libdir)/mozilla/plugins'
++fi
++
++
++
+ # Check whether --enable-caching was given.
+ if test "${enable_caching+set}" = set; then
+ enableval=$enable_caching; usecache=$enableval
+Index: Makefile.in
+===================================================================
+--- Makefile.in (revision 328)
++++ Makefile.in (working copy)
+@@ -239,6 +239,7 @@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+ pdfdir = @pdfdir@
++plugindir = @plugindir@
+ prefix = @prefix@
+ program_transform_name = @program_transform_name@
+ psdir = @psdir@
+Index: configure.in
+===================================================================
+--- configure.in (revision 328)
++++ configure.in (working copy)
+@@ -114,6 +114,13 @@
+ AC_SUBST(GIO_LIBS)
+ ])
+
++AC_ARG_WITH([plugin_dir],
++ [AS_HELP_STRING([--with-plugin-dir=dir],
++ [Directory where plugins are stored])],
++ [plugindir=$withval],
++ [plugindir='$(libdir)/mozilla/plugins'])
++AC_SUBST(plugindir)
++
+ AC_ARG_ENABLE(caching,
+ AC_HELP_STRING([--disable-caching],[Disable caching of remote media to local storage]),
+ [usecache=$enableval],[usecache=yes])
+Index: src/plugin.cpp
+===================================================================
+--- src/plugin.cpp (revision 328)
++++ src/plugin.cpp (working copy)
+@@ -42,9 +42,9 @@
+ #include "plugin_setup.h"
+ #include "plugin_types.h"
+ #include "plugin_dbus.h"
+-#include "nsIPrefBranch.h"
+-#include "nsIPrefService.h"
+-#include "nsIServiceManager.h"
++#include <nsIPrefBranch.h>
++#include <nsIPrefService.h>
++#include <nsIServiceManager.h>
+
+ nsIPrefBranch *prefBranch = NULL;
+ nsIPrefService *prefService = NULL;
+@@ -170,9 +170,9 @@
+ {
+ gchar *jscript;
+
+- jscript = g_strdup_printf("javascript:obj=document.getElementById('%s');"
+- "e=document.createEvent('Events');"
+- "e.initEvent('%s',true,true);" "obj.dispatchEvent(e);", id, event);
++ jscript = g_strdup_printf("javascript:obj_gmp=document.getElementById('%s');"
++ "e_gmp=document.createEvent('Events');"
++ "e_gmp.initEvent('%s',true,true);" "obj_gmp.dispatchEvent(e_gmp);", id, event);
+ NPN_GetURL(mInstance, jscript, NULL);
+ g_free(jscript);
+ }
+@@ -259,6 +259,7 @@
+ console(NULL),
+ controls(NULL),
+ user_agent(NULL),
++player_backend(NULL),
+ disable_context_menu(FALSE),
+ disable_fullscreen(FALSE),
+ post_dom_events(FALSE),
+@@ -354,6 +355,8 @@
+ store = gm_pref_store_new("gecko-mediaplayer");
+ if (store != NULL) {
+ debug_level = gm_pref_store_get_int(store, DEBUG_LEVEL);
++ player_backend = gm_pref_store_get_string(store, PLAYER_BACKEND);
++ printf("Using player backend of '%s'\n",player_backend);
+ gm_pref_store_free(store);
+ }
+
+@@ -458,10 +461,16 @@
+ }
+
+ if (!player_launched && mWidth > 0 && mHeight > 0) {
+- app_name = g_find_program_in_path("gnome-mplayer");
+- if (app_name == NULL)
+- app_name = g_find_program_in_path("gnome-mplayer-minimal");
+-
++ app_name = NULL;
++ if (player_backend != NULL) {
++ app_name = g_find_program_in_path(player_backend);
++ }
++ if (app_name == NULL) {
++ app_name = g_find_program_in_path("gnome-mplayer");
++ if (app_name == NULL)
++ app_name = g_find_program_in_path("gnome-mplayer-minimal");
++ }
++
+ argvn[arg++] = g_strdup_printf("%s", app_name);
+ g_free(app_name);
+ argvn[arg++] = g_strdup_printf("--window=%i", (gint) mWindow);
+@@ -643,6 +652,14 @@
+ g_free(path);
+ }
+ //printf("Leaving destroy stream src = %s\n", item->src);
++
++ } else if (reason == NPRES_NETWORK_ERR) {
++ item = (ListItem *) stream->notifyData;
++ if (item) {
++ printf("Destroy Stream, network error, item is %s\n", item->src);
++ } else {
++ printf("Destory Stream, network error, item is NULL\n");
++ }
+ } else {
+ item = (ListItem *) stream->notifyData;
+ // item = list_find(playlist, (gchar*)stream->url);
+@@ -692,9 +709,19 @@
+ */
+ }
+ } else {
+- if (item)
++ if (item) {
+ item->played = TRUE;
+- if (!item->streaming) {
++ if (!item->streaming) {
++ item = list_find_next_playable(playlist);
++ if (item) {
++ if (item->retrieved) {
++ open_location(this, item, TRUE);
++ } else {
++ NPN_GetURLNotify(mInstance, item->src, NULL, item);
++ }
++ }
++ }
++ } else {
+ item = list_find_next_playable(playlist);
+ if (item) {
+ if (item->retrieved) {
+@@ -703,7 +730,7 @@
+ NPN_GetURLNotify(mInstance, item->src, NULL, item);
+ }
+ }
+- }
++ }
+ }
+ }
+
+Index: src/Makefile.in
+===================================================================
+--- src/Makefile.in (revision 328)
++++ src/Makefile.in (working copy)
+@@ -57,34 +57,45 @@
+ $(am__objects_1)
+ gecko_mediaplayer_dvx_so_OBJECTS = \
+ $(am_gecko_mediaplayer_dvx_so_OBJECTS)
+-gecko_mediaplayer_dvx_so_DEPENDENCIES = libgmlib/libgmlib.a
++am__DEPENDENCIES_1 =
++gecko_mediaplayer_dvx_so_DEPENDENCIES = libgmlib/libgmlib.a \
++ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
++ $(am__DEPENDENCIES_1)
+ gecko_mediaplayer_dvx_so_LINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \
+ $(gecko_mediaplayer_dvx_so_LDFLAGS) $(LDFLAGS) -o $@
+ am_gecko_mediaplayer_qt_so_OBJECTS = plugin_types_qt.$(OBJEXT) \
+ $(am__objects_1)
+ gecko_mediaplayer_qt_so_OBJECTS = \
+ $(am_gecko_mediaplayer_qt_so_OBJECTS)
+-gecko_mediaplayer_qt_so_DEPENDENCIES = libgmlib/libgmlib.a
++gecko_mediaplayer_qt_so_DEPENDENCIES = libgmlib/libgmlib.a \
++ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
++ $(am__DEPENDENCIES_1)
+ gecko_mediaplayer_qt_so_LINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \
+ $(gecko_mediaplayer_qt_so_LDFLAGS) $(LDFLAGS) -o $@
+ am_gecko_mediaplayer_rm_so_OBJECTS = plugin_types_rm.$(OBJEXT) \
+ $(am__objects_1)
+ gecko_mediaplayer_rm_so_OBJECTS = \
+ $(am_gecko_mediaplayer_rm_so_OBJECTS)
+-gecko_mediaplayer_rm_so_DEPENDENCIES = libgmlib/libgmlib.a
++gecko_mediaplayer_rm_so_DEPENDENCIES = libgmlib/libgmlib.a \
++ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
++ $(am__DEPENDENCIES_1)
+ gecko_mediaplayer_rm_so_LINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \
+ $(gecko_mediaplayer_rm_so_LDFLAGS) $(LDFLAGS) -o $@
+ am_gecko_mediaplayer_wmp_so_OBJECTS = plugin_types_wmp.$(OBJEXT) \
+ $(am__objects_1)
+ gecko_mediaplayer_wmp_so_OBJECTS = \
+ $(am_gecko_mediaplayer_wmp_so_OBJECTS)
+-gecko_mediaplayer_wmp_so_DEPENDENCIES = libgmlib/libgmlib.a
++gecko_mediaplayer_wmp_so_DEPENDENCIES = libgmlib/libgmlib.a \
++ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
++ $(am__DEPENDENCIES_1)
+ gecko_mediaplayer_wmp_so_LINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \
+ $(gecko_mediaplayer_wmp_so_LDFLAGS) $(LDFLAGS) -o $@
+ am_gecko_mediaplayer_so_OBJECTS = plugin_types_std.$(OBJEXT) \
+ $(am__objects_1)
+ gecko_mediaplayer_so_OBJECTS = $(am_gecko_mediaplayer_so_OBJECTS)
+-gecko_mediaplayer_so_DEPENDENCIES = libgmlib/libgmlib.a
++gecko_mediaplayer_so_DEPENDENCIES = libgmlib/libgmlib.a \
++ $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
++ $(am__DEPENDENCIES_1)
+ gecko_mediaplayer_so_LINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \
+ $(gecko_mediaplayer_so_LDFLAGS) $(LDFLAGS) -o $@
+ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
+@@ -265,6 +276,7 @@
+ mkdir_p = @mkdir_p@
+ oldincludedir = @oldincludedir@
+ pdfdir = @pdfdir@
++plugindir = @plugindir@
+ prefix = @prefix@
+ program_transform_name = @program_transform_name@
+ psdir = @psdir@
+@@ -312,42 +324,42 @@
+ npp_gate.cpp \
+ npupp.h
+
+-install_libexecdir = $(libdir)/mozilla/plugins
++install_libexecdir = $(plugindir)
+ gecko_mediaplayer_so_SOURCES = \
+ plugin_types_std.cpp \
+ $(COMMONCODE)
+
+ gecko_mediaplayer_so_CFLAGS = -fPIC
+-gecko_mediaplayer_so_LDFLAGS = -shared $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS) -fPIC
+-gecko_mediaplayer_so_LDADD = libgmlib/libgmlib.a
++gecko_mediaplayer_so_LDFLAGS = -shared -fPIC
++gecko_mediaplayer_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+ gecko_mediaplayer_qt_so_SOURCES = \
+ plugin_types_qt.cpp \
+ $(COMMONCODE)
+
+ gecko_mediaplayer_qt_so_CFLAGS = -fPIC
+-gecko_mediaplayer_qt_so_LDFLAGS = -shared $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS) -fPIC
+-gecko_mediaplayer_qt_so_LDADD = libgmlib/libgmlib.a
++gecko_mediaplayer_qt_so_LDFLAGS = -shared -fPIC
++gecko_mediaplayer_qt_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+ gecko_mediaplayer_wmp_so_SOURCES = \
+ plugin_types_wmp.cpp \
+ $(COMMONCODE)
+
+ gecko_mediaplayer_wmp_so_CFLAGS = -fPIC
+-gecko_mediaplayer_wmp_so_LDFLAGS = -shared $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS) -fPIC
+-gecko_mediaplayer_wmp_so_LDADD = libgmlib/libgmlib.a
++gecko_mediaplayer_wmp_so_LDFLAGS = -shared -fPIC
++gecko_mediaplayer_wmp_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+ gecko_mediaplayer_dvx_so_SOURCES = \
+ plugin_types_dvx.cpp \
+ $(COMMONCODE)
+
+ gecko_mediaplayer_dvx_so_CFLAGS = -fPIC
+-gecko_mediaplayer_dvx_so_LDFLAGS = -shared $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS) -fPIC
+-gecko_mediaplayer_dvx_so_LDADD = libgmlib/libgmlib.a
++gecko_mediaplayer_dvx_so_LDFLAGS = -shared -fPIC
++gecko_mediaplayer_dvx_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+ gecko_mediaplayer_rm_so_SOURCES = \
+ plugin_types_rm.cpp \
+ $(COMMONCODE)
+
+ gecko_mediaplayer_rm_so_CFLAGS = -fPIC
+-gecko_mediaplayer_rm_so_LDFLAGS = -shared $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS) -fPIC
+-gecko_mediaplayer_rm_so_LDADD = libgmlib/libgmlib.a
++gecko_mediaplayer_rm_so_LDFLAGS = -shared -fPIC
++gecko_mediaplayer_rm_so_LDADD = libgmlib/libgmlib.a $(GLIB_LIBS) $(DBUS_LIBS) $(GCONF_LIBS)
+ all: all-recursive
+
+ .SUFFIXES:
+Index: src/plugin.h
+===================================================================
+--- src/plugin.h (revision 328)
++++ src/plugin.h (working copy)
+@@ -84,6 +84,7 @@
+ #define DISABLE_DVX "disable_dvx"
+ #define DEBUG_LEVEL "debug_level"
+ #define DISABLE_MIDI "disable_midi"
++#define PLAYER_BACKEND "player_backend"
+
+ typedef enum {
+ PLAYING,
+@@ -189,6 +190,7 @@
+ gchar *console;
+ gchar *controls;
+ gchar *user_agent;
++ gchar *player_backend;
+
+ // events
+ gboolean post_dom_events;
+Index: src/plugin_dbus.cpp
+===================================================================
+--- src/plugin_dbus.cpp (revision 328)
++++ src/plugin_dbus.cpp (working copy)
+@@ -109,6 +109,14 @@
+ return DBUS_HANDLER_RESULT_HANDLED;
+ }
+
++ if (g_ascii_strcasecmp(dbus_message_get_member(message), "ListDump") == 0) {
++
++ printf("playlist:\n");
++ list_dump(instance->playlist);
++
++ return DBUS_HANDLER_RESULT_HANDLED;
++ }
++
+ if (g_ascii_strcasecmp(dbus_message_get_member(message), "RequestById") == 0) {
+ dbus_error_init(&error);
+ if (dbus_message_get_args(message, &error, DBUS_TYPE_STRING, &s, DBUS_TYPE_INVALID)) {
+@@ -773,6 +781,10 @@
+
+ result = TRUE;
+
++ } else if (g_ascii_strcasecmp(message, "/DEBUG") == 0) {
++
++ result = TRUE;
++
+ } else {
+
+ if (instance->playlist != NULL) {
+Index: src/Makefile.am
+===================================================================
+--- src/Makefile.am (revision 328)
++++ src/Makefile.am (working copy)
+@@ -39,7 +39,7 @@
+ npp_gate.cpp \
+ npupp.h
+
+-install_libexecdir