summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/checksums.ini16
-rw-r--r--recipes/libgtkstylus/files/gtkstylus.sh2
-rw-r--r--recipes/libgtkstylus/libgtkstylus_0.3.bb3
-rw-r--r--recipes/mythplugins/files/mythflix.pro.patch13
-rw-r--r--recipes/mythplugins/files/mythgallery.pro.patch13
-rw-r--r--recipes/mythplugins/files/mythmovies.pro.patch13
-rw-r--r--recipes/mythplugins/files/mythnews.pro.patch17
-rw-r--r--recipes/mythplugins/files/mythweather.pro.patch15
-rw-r--r--recipes/mythplugins/files/mythzoneminder.pro.patch13
-rw-r--r--recipes/mythplugins/mythplugins_0.21+0.22rc1.bb124
-rw-r--r--recipes/mythtv/mythplugins/MythBackend.php.patch (renamed from recipes/mythplugins/files/MythBackend.php.patch)0
-rw-r--r--recipes/mythtv/mythplugins/configure.patch13
-rw-r--r--recipes/mythtv/mythplugins/mythplugins_wo_qtopengl.diff129
-rw-r--r--recipes/mythtv/mythplugins/sysroot.patch197
-rw-r--r--recipes/mythtv/mythplugins_0.21+0.22rc2.bb201
-rw-r--r--recipes/mythtv/mythtv-0.21+0.22rc2/configure.patch61
-rw-r--r--recipes/mythtv/mythtv_0.21+0.22rc2.bb113
-rw-r--r--recipes/mythtv/mythtv_0.22rc1.bb123
-rw-r--r--recipes/xchat/xchat_2.8.6.bb25
-rw-r--r--recipes/xorg-lib/pixman/neon-24bpp.patch264
-rw-r--r--recipes/xorg-lib/pixman/prefetch.patch298
-rw-r--r--recipes/xorg-lib/pixman_git.bb6
22 files changed, 1317 insertions, 342 deletions
diff --git a/conf/checksums.ini b/conf/checksums.ini
index e41bd939cb..2dc649c176 100644
--- a/conf/checksums.ini
+++ b/conf/checksums.ini
@@ -18866,9 +18866,9 @@ sha256=7744d78131619b73a82adb6f73d6cfc6bad11a6ad2806c0f5130f88fe88ac9dd
md5=37b4479951fa0cf052269d27c41ca200
sha256=6bd2436fd0f233bb1518e15975cb4e9fa4434acb53c3c3cd7d4648219abf58e9
-[ftp://ftp.osuosl.org/pub/mythtv/mythplugins-0.22rc1.tar.bz2]
-md5=1c03d3f4ccedcd9de1c0ac2226e0031c
-sha256=f62969cd61dc9718973708b79f5e86f653f630097f5ad14f90d78fcff677c0da
+[ftp://ftp.osuosl.org/pub/mythtv/mythplugins-0.22rc2.tar.bz2]
+md5=de15246c1f59665f3960015c49138da3
+sha256=73dff22a4622f2140b49ee824f1f69d6120135d828bc38f6877a619986c99245
[http://www.mythtv.org/mc/mythtv-0.18.1.tar.bz2]
md5=e6cabf88feeaf6ae8f830d3fdf7b113d
@@ -18882,9 +18882,9 @@ sha256=777ff60afa89426f0e52e49b0e7a7661ddb45b59d2ebbfdcbe07fd179e526ff3
md5=49fc135e1cde90cd935c1229467fa37e
sha256=33a878a8fc3efdd74519b09b4ec3d16fa9d3a0436b321c13344e5f3ab723c5e4
-[ftp://ftp.osuosl.org/pub/mythtv/mythtv-0.22rc1.tar.bz2]
-md5=049e93d78d5370351539c9a23b47e1af
-sha256=8e6823f4b92d88c837735322ca71199919406a2826bddae257c6e0f52d089cd7
+[ftp://ftp.osuosl.org/pub/mythtv/mythtv-0.22rc2.tar.bz2]
+md5=1e4be634b137e5b944c94b418d8c3791
+sha256=5cba470ccd60fec00be2bf7ef231f104dcea8275698fe70f5df398dbe2fe19fd
[http://kldp.net/frs/download.php/3742/nabi-0.17.tar.gz]
md5=8746890ea666ac1b7ae6db77993c6592
@@ -27058,6 +27058,10 @@ sha256=7e239a43c5e293da57a0ee8dc1e383d243ec44b00e682558db93be3d2752611f
md5=66d60febc62a01bafac9bb3a35fb37ae
sha256=f95a9a9e477128aae536669dedd79f4e7b4d469072565695289e4bbb5b36dd63
+[http://www.xchat.org/files/source/2.8/xchat-2.8.6.tar.bz2]
+md5=1f2670865d43a23a9abc596dde999aca
+sha256=8c89dbf36304b99363a7f090d695447653102b4528ca2aa367a2abe5cff1746d
+
[http://xorg.freedesktop.org/releases/individual/app/xclipboard-1.0.1.tar.bz2]
md5=2c6ecedb10dc51adbb64c95f22fd99c2
sha256=3399a27101285112ea578e1855c8374254afa8d427a3c5943458abc27c4d70fc
diff --git a/recipes/libgtkstylus/files/gtkstylus.sh b/recipes/libgtkstylus/files/gtkstylus.sh
index b1302ede0e..623ddae84b 100644
--- a/recipes/libgtkstylus/files/gtkstylus.sh
+++ b/recipes/libgtkstylus/files/gtkstylus.sh
@@ -1,5 +1,5 @@
#!/bin/sh
-GTK_MODULES=libgtkstylus.so
+GTK_MODULES=${GTK_MODULES}:libgtkstylus.so
export GTK_MODULES
diff --git a/recipes/libgtkstylus/libgtkstylus_0.3.bb b/recipes/libgtkstylus/libgtkstylus_0.3.bb
index e19a8a9f26..5912b2dab8 100644
--- a/recipes/libgtkstylus/libgtkstylus_0.3.bb
+++ b/recipes/libgtkstylus/libgtkstylus_0.3.bb
@@ -2,7 +2,7 @@ DESCRIPTION = "GTK plugin for stylus based systems"
SECTION = "libs"
DEPENDS = "gtk+"
LICENSE = "LGPL"
-PR = "r5"
+PR = "r6"
inherit autotools
@@ -16,4 +16,3 @@ do_install_append() {
}
FILES_${PN} = "/etc ${libdir}/gtk-2.0/*/modules/*.so*"
-
diff --git a/recipes/mythplugins/files/mythflix.pro.patch b/recipes/mythplugins/files/mythflix.pro.patch
deleted file mode 100644
index cffaeae197..0000000000
--- a/recipes/mythplugins/files/mythflix.pro.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: mythplugins-0.22rc1/mythflix/mythflix/mythflix.pro
-===================================================================
---- mythplugins-0.22rc1.orig/mythflix/mythflix/mythflix.pro
-+++ mythplugins-0.22rc1/mythflix/mythflix/mythflix.pro
-@@ -8,7 +8,7 @@ TARGET = mythflix
- target.path = $${LIBDIR}/mythtv/plugins
- INSTALLS += target
-
--INCLUDEPATH += $${PREFIX}/include/mythtv
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
-
- installfiles.path = $${PREFIX}/share/mythtv/mythflix
- installfiles.files = netflix-rss.xml
diff --git a/recipes/mythplugins/files/mythgallery.pro.patch b/recipes/mythplugins/files/mythgallery.pro.patch
deleted file mode 100644
index 8be5ea016b..0000000000
--- a/recipes/mythplugins/files/mythgallery.pro.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: mythplugins-0.22rc1/mythgallery/mythgallery/mythgallery.pro
-===================================================================
---- mythplugins-0.22rc1.orig/mythgallery/mythgallery/mythgallery.pro
-+++ mythplugins-0.22rc1/mythgallery/mythgallery/mythgallery.pro
-@@ -14,7 +14,7 @@ TARGET = mythgallery
- target.path = $${LIBDIR}/mythtv/plugins
- INSTALLS += target
-
--INCLUDEPATH += $${PREFIX}/include/mythtv
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
-
- # Input
- HEADERS += iconview.h singleview.h
diff --git a/recipes/mythplugins/files/mythmovies.pro.patch b/recipes/mythplugins/files/mythmovies.pro.patch
deleted file mode 100644
index 84e9450309..0000000000
--- a/recipes/mythplugins/files/mythmovies.pro.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: mythplugins-0.22rc1/mythmovies/mythmovies/mythmovies.pro
-===================================================================
---- mythplugins-0.22rc1.orig/mythmovies/mythmovies/mythmovies.pro
-+++ mythplugins-0.22rc1/mythmovies/mythmovies/mythmovies.pro
-@@ -10,7 +10,7 @@ TARGET = mythmovies
- target.path = $${LIBDIR}/mythtv/plugins
- INSTALLS += target
-
--INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
-
- # Input
- HEADERS += moviesui.h helperobjects.h moviessettings.h
diff --git a/recipes/mythplugins/files/mythnews.pro.patch b/recipes/mythplugins/files/mythnews.pro.patch
deleted file mode 100644
index 8b572fcb15..0000000000
--- a/recipes/mythplugins/files/mythnews.pro.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Index: mythplugins-0.22rc1/mythnews/mythnews/mythnews.pro
-===================================================================
---- mythplugins-0.22rc1.orig/mythnews/mythnews/mythnews.pro
-+++ mythplugins-0.22rc1/mythnews/mythnews/mythnews.pro
-@@ -10,9 +10,9 @@ TARGET = mythnews
- target.path = $${LIBDIR}/mythtv/plugins
- INSTALLS += target
-
--INCLUDEPATH += $${PREFIX}/include/mythtv
--INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
--INCLUDEPATH += $${PREFIX}/include/mythtv/libmythdb
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythdb
-
- installfiles.path = $${PREFIX}/share/mythtv/mythnews
- installfiles.files = news-sites.xml
diff --git a/recipes/mythplugins/files/mythweather.pro.patch b/recipes/mythplugins/files/mythweather.pro.patch
deleted file mode 100644
index c7fff48708..0000000000
--- a/recipes/mythplugins/files/mythweather.pro.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: mythplugins-0.22rc1/mythweather/mythweather/mythweather.pro
-===================================================================
---- mythplugins-0.22rc1.orig/mythweather/mythweather/mythweather.pro
-+++ mythplugins-0.22rc1/mythweather/mythweather/mythweather.pro
-@@ -13,8 +13,8 @@ INSTALLS += target
- QMAKE_COPY_DIR = sh ../../cpsvndir
- win32:QMAKE_COPY_DIR = sh ../../cpsimple
-
--INCLUDEPATH += $${PREFIX}/include/mythtv
--INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
-
- datafiles.path = $${PREFIX}/share/mythtv/mythweather/
- datafiles.files = weather-screens.xml
diff --git a/recipes/mythplugins/files/mythzoneminder.pro.patch b/recipes/mythplugins/files/mythzoneminder.pro.patch
deleted file mode 100644
index 9eb019c3ac..0000000000
--- a/recipes/mythplugins/files/mythzoneminder.pro.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: mythplugins-0.22rc1/mythzoneminder/mythzoneminder/mythzoneminder.pro
-===================================================================
---- mythplugins-0.22rc1.orig/mythzoneminder/mythzoneminder/mythzoneminder.pro
-+++ mythplugins-0.22rc1/mythzoneminder/mythzoneminder/mythzoneminder.pro
-@@ -8,7 +8,7 @@ TARGET = mythzoneminder
- target.path = $${LIBDIR}/mythtv/plugins
- INSTALLS += target
-
--INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
-+INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
-
- # Input
- HEADERS += zmconsole.h zmplayer.h zmevents.h zmliveplayer.h zmdefines.h
diff --git a/recipes/mythplugins/mythplugins_0.21+0.22rc1.bb b/recipes/mythplugins/mythplugins_0.21+0.22rc1.bb
deleted file mode 100644
index 62b4accfa4..0000000000
--- a/recipes/mythplugins/mythplugins_0.21+0.22rc1.bb
+++ /dev/null
@@ -1,124 +0,0 @@
-inherit qmake2 qt4x11
-
-DEFAULT_PREFERENCE = "-1"
-
-PV = "0.21+0.22rc1"
-PR = "r0"
-DEPENDS = "flac taglib mythtv libvorbis libexif libvisual libsdl-x11 libcdaudio"
-# to add libcdparanoia
-
-# todo: add mythweb
-
-PACKAGES =+ "mythmovies mythnews mythweather"
-
-RDEPENDS_${PN} = "mythmovies mythnews mythweather"
-
-FILES_mythmovies = "${libdir}/mythtv/plugins/libmythmovies.so \
- ${bindir}/ignyte \
- ${datadir}/mythtv/mythmovies/ \
- ${datadir}/mythtv/themes/default/movies-ui.xml \
- ${datadir}/mythtv/themes/default-wide/movies-ui.xml \
- "
-
-FILES_mythmovies-dbg = "${bindir}/.debug/ignyte \
- ${libdir}/mythtv/plugins/.debug/libmythmovies.so"
-
-
-FILES_mythnews = "${libdir}/mythtv/plugins/libmythnews.so \
- ${datadir}/mythtv/mythnews/ \
- ${datadir}/mythtv/themes/default/enclosures.png \
- ${datadir}/mythtv/themes/default/needs-download.png \
- ${datadir}/mythtv/themes/default/news-info-bg.png \
- ${datadir}/mythtv/themes/default/news-ui.xml \
- "
-
-FILES_mythnews-dbg = "${libdir}/mythtv/plugins/.debug/libmythnews.so"
-
-FILES_mythweather = "${libdir}/mythtv/plugins/libmythweather.so \
- ${datadir}/mythtv/mythweather/ \
- ${datadir}/mythtv/il8n/mythweather* \
- ${datadir}/mythtv/themes/default-wide/mw-background.png \
- ${datadir}/mythtv/themes/default-wide/mw-lines.png \
- ${datadir}/mythtv/themes/default-wide/mw-map-sat.png \
- ${datadir}/mythtv/themes/default-wide/mw-map.png \
- ${datadir}/mythtv/themes/default-wide/mw-popup.png \
- ${datadir}/mythtv/themes/default-wide/weather-ui.xml \
- ${datadir}/mythtv/themes/default/cloudy.png \
- ${datadir}/mythtv/themes/default/fair.png \
- ${datadir}/mythtv/themes/default/flurries.png \
- ${datadir}/mythtv/themes/default/fog.png \
- ${datadir}/mythtv/themes/default/logo.png \
- ${datadir}/mythtv/themes/default/lshowers.png \
- ${datadir}/mythtv/themes/default/mcloudy.png \
- ${datadir}/mythtv/themes/default/mw_background.png \
- ${datadir}/mythtv/themes/default/mw_checked.png \
- ${datadir}/mythtv/themes/default/mw_checked_high.png \
- ${datadir}/mythtv/themes/default/mw_lines.png \
- ${datadir}/mythtv/themes/default/mw_map-sat.png \
- ${datadir}/mythtv/themes/default/mw_map.png \
- ${datadir}/mythtv/themes/default/mw_popup.png \
- ${datadir}/mythtv/themes/default/mw_shading.png \
- ${datadir}/mythtv/themes/default/mw_unchecked.png \
- ${datadir}/mythtv/themes/default/mw_unchecked_high.png \
- ${datadir}/mythtv/themes/default/mwmain.png \
- ${datadir}/mythtv/themes/default/pcloudy.png \
- ${datadir}/mythtv/themes/default/rainsnow.png \
- ${datadir}/mythtv/themes/default/showers.png \
- ${datadir}/mythtv/themes/default/snowshow.png \
- ${datadir}/mythtv/themes/default/sunny.png \
- ${datadir}/mythtv/themes/default/thunshowers.png \
- ${datadir}/mythtv/themes/default/unknown.png \
- ${datadir}/mythtv/themes/default/weather-ui.xml \
- ${datadir}/mythtv/themes/menus/weather_settings.xml \
- "
-
-FILES_mythweather-dbg = "${libdir}/mythtv/plugins/.debug/libmythweather.so"
-
-SRC_URI = "ftp://ftp.osuosl.org/pub/mythtv/mythplugins-0.22rc1.tar.bz2 \
- file://MythBackend.php.patch;patch=1 \
- file://mythflix.pro.patch;patch=1 \
- file://mythgallery.pro.patch;patch=1 \
- file://mythmovies.pro.patch;patch=1 \
- file://mythnews.pro.patch;patch=1 \
- file://mythweather.pro.patch;patch=1 \
- file://mythzoneminder.pro.patch;patch=1 \
- "
-
-S = "${WORKDIR}/mythplugins-0.22rc1"
-
-QMAKE_PROFILES = "mythplugins.pro"
-
-# Note: a lot of functionality is disabled because it depends on QtOpenGL
-# which is not in OE at the moment
-
-EXTRA_OECONF = " \
- --cross-prefix=${TARGET_PREFIX} \
- --sysroot=${STAGING_DIR_HOST} \
- --prefix=${prefix} \
- --with-libdir-name=${STAGING_LIBDIR} \
- --disable-opengl \
- --disable-mytharchive \
- --disable-mythbrowser \
- --disable-mythflix \
- --disable-mythgallery \
- --disable-mythgame \
- --disable-mythmusic \
- --disable-mythvideo \
- --disable-mythzoneminder \
- \
- --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
- --extra-cxxflags="${TARGET_CXXFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
- --extra-ldflags="${TARGET_LDFLAGS}" \
- ${EXTRA_MYTHTVCONF} \
-"
-
-do_configure() {
- ${S}/configure --qmake=qmake2 ${EXTRA_OECONF}
-}
-
-do_install () {
- oe_runmake install INSTALL_ROOT="${D}"
-
-}
-
-#ALLOW_EMPTY_${PN} = "1"
diff --git a/recipes/mythplugins/files/MythBackend.php.patch b/recipes/mythtv/mythplugins/MythBackend.php.patch
index 95cf86e49f..95cf86e49f 100644
--- a/recipes/mythplugins/files/MythBackend.php.patch
+++ b/recipes/mythtv/mythplugins/MythBackend.php.patch
diff --git a/recipes/mythtv/mythplugins/configure.patch b/recipes/mythtv/mythplugins/configure.patch
new file mode 100644
index 0000000000..6eae691e9a
--- /dev/null
+++ b/recipes/mythtv/mythplugins/configure.patch
@@ -0,0 +1,13 @@
+Index: mythplugins-0.22rc1/configure
+===================================================================
+--- mythplugins-0.22rc1.orig/configure
++++ mythplugins-0.22rc1/configure
+@@ -730,7 +730,7 @@ if test "$music" = "yes" ; then
+ fi
+
+ if test "$taglib" = "yes" ; then
+- echo "INCLUDEPATH += `taglib-config --prefix`/include/taglib" >> ./mythmusic/mythmusic/config.pro
++ echo "INCLUDEPATH += ${STAGING_INCDIR}/taglib" >> ./mythmusic/mythmusic/config.pro
+ fi
+ fi
+
diff --git a/recipes/mythtv/mythplugins/mythplugins_wo_qtopengl.diff b/recipes/mythtv/mythplugins/mythplugins_wo_qtopengl.diff
new file mode 100644
index 0000000000..c0eb9d3075
--- /dev/null
+++ b/recipes/mythtv/mythplugins/mythplugins_wo_qtopengl.diff
@@ -0,0 +1,129 @@
+diff --git a/mythplugins/mytharchive/mytharchive/mytharchive.pro b/mythplugins/mytharchive/mytharchive/mytharchive.pro
+index bf7f717..d20e0f7 100644
+--- mythplugins/mytharchive/mytharchive/mytharchive.pro
++++ mythplugins/mytharchive/mytharchive/mytharchive.pro
+@@ -14,7 +14,7 @@ LIBS += -lmythavcodec-$$LIBVERSION
+ LIBS += -lmythavformat-$$LIBVERSION
+ LIBS += -lmythswscale-$$LIBVERSION
+
+-TEMPLATE = lib opengl
++TEMPLATE = lib
+ CONFIG += plugin thread
+ TARGET = mytharchive
+ target.path = $${LIBDIR}/mythtv/plugins
+@@ -61,6 +61,7 @@ INSTALLS += profilefiles burnuifiles
+ INSTALLS += nativeuifiles
+
+ #The following line was inserted by qt3to4
+-QT += xml sql opengl
++QT += xml sql
++using_opengl:QT += opengl
+
+ include ( ../../libs-targetfix.pro )
+diff --git a/mythplugins/mytharchive/mytharchivehelper/mytharchivehelper.pro b/mythplugins/mytharchive/mytharchivehelper/mytharchivehelper.pro
+index ae073c1..90e413e 100644
+--- mythplugins/mytharchive/mytharchivehelper/mytharchivehelper.pro
++++ mythplugins/mytharchive/mytharchivehelper/mytharchivehelper.pro
+@@ -9,7 +9,8 @@ INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libswscale
+ DEPENDPATH *= $${INCLUDEPATH}
+
+ TEMPLATE = app
+-CONFIG += thread opengl
++CONFIG += thread
++using_opengl:CONFIG += opengl
+
+ target.path = $${PREFIX}/bin
+
+@@ -27,4 +28,5 @@ LIBS += -lmythavcodec-$$LIBVERSION
+ LIBS += -lmythavformat-$$LIBVERSION
+ LIBS += -lmythswscale-$$LIBVERSION
+
+-QT += xml sql opengl
++QT += xml sql
++using_opengl:QT += opengl
+diff --git a/mythplugins/mythbrowser/mythbrowser/mythbrowser.pro b/mythplugins/mythbrowser/mythbrowser/mythbrowser.pro
+index 98a8a9d..f689c0c 100644
+--- mythplugins/mythbrowser/mythbrowser/mythbrowser.pro
++++ mythplugins/mythbrowser/mythbrowser/mythbrowser.pro
+@@ -2,10 +2,12 @@ include (../../mythconfig.mak )
+ include (../../settings.pro )
+ include (../../programs-libs.pro )
+
+-QT += network xml sql opengl webkit
++QT += network xml sql webkit
++using_opengl:QT += opengl
+
+ TEMPLATE = lib
+-CONFIG += thread opengl plugin warn_on
++CONFIG += thread plugin warn_on
++using_opengl:CONFIG += opengl
+ TARGET = mythbrowser
+ target.path = $${LIBDIR}/mythtv/plugins
+ INSTALLS += target
+diff --git a/mythplugins/mythflix/mythflix/mythflix.pro b/mythplugins/mythflix/mythflix/mythflix.pro
+index 5ffa22e..4359f77 100644
+--- mythplugins/mythflix/mythflix/mythflix.pro
++++ mythplugins/mythflix/mythflix/mythflix.pro
+@@ -25,6 +25,7 @@ SOURCES += newsengine.cpp dbcheck.cpp flixutil.cpp
+
+
+ #The following line was inserted by qt3to4
+-QT += network xml sql opengl qt3support
++QT += network xml sql qt3support
++using_opengl:QT += opengl
+
+ include ( ../../libs-targetfix.pro )
+diff --git a/mythplugins/mythgallery/mythgallery/mythgallery.pro b/mythplugins/mythgallery/mythgallery/mythgallery.pro
+index cf8219a..4542477 100644
+--- mythplugins/mythgallery/mythgallery/mythgallery.pro
++++ mythplugins/mythgallery/mythgallery/mythgallery.pro
+@@ -37,6 +37,7 @@ opengl {
+
+
+ #The following line was inserted by qt3to4
+-QT += network opengl sql xml
++QT += network sql xml
++using_opengl:QT += opengl
+
+ include ( ../../libs-targetfix.pro )
+diff --git a/mythplugins/mythgame/mythgame/mythgame.pro b/mythplugins/mythgame/mythgame/mythgame.pro
+index b1f371a..39e7847 100644
+--- mythplugins/mythgame/mythgame/mythgame.pro
++++ mythplugins/mythgame/mythgame/mythgame.pro
+@@ -23,6 +23,7 @@ use_hidesyms {
+ LIBS += -lz
+
+ #The following line was inserted by qt3to4
+-QT += xml sql opengl qt3support
++QT += xml sql qt3support
++using_opengl:QT += opengl
+
+ include ( ../../libs-targetfix.pro )
+diff --git a/mythplugins/mythmusic/mythmusic/mythmusic.pro b/mythplugins/mythmusic/mythmusic/mythmusic.pro
+index 177a5bc..1153405 100644
+--- mythplugins/mythmusic/mythmusic/mythmusic.pro
++++ mythplugins/mythmusic/mythmusic/mythmusic.pro
+@@ -3,7 +3,8 @@ include ( ../../settings.pro )
+ include ( ../../programs-libs.pro )
+ include (config.pro)
+
+-QT += xml sql opengl qt3support network
++QT += xml sql qt3support network
++using_opengl:QT += opengl
+
+ !exists( config.pro ) {
+ error(Missing config.pro: please run the configure script)
+diff --git a/mythplugins/mythvideo/mtd/mtd.pro b/mythplugins/mythvideo/mtd/mtd.pro
+index 7c3c357..d63d170 100644
+--- mythplugins/mythvideo/mtd/mtd.pro
++++ mythplugins/mythvideo/mtd/mtd.pro
+@@ -5,7 +5,8 @@ include ( ../../programs-libs.pro )
+ QT += sql xml network
+
+ TEMPLATE = app
+-CONFIG += thread opengl
++CONFIG += thread
++using_opengl:CONFIG += opengl
+ TARGET = mtd
+ target.path = $${PREFIX}/bin
+ INSTALLS += target
diff --git a/recipes/mythtv/mythplugins/sysroot.patch b/recipes/mythtv/mythplugins/sysroot.patch
new file mode 100644
index 0000000000..4cf344d2d7
--- /dev/null
+++ b/recipes/mythtv/mythplugins/sysroot.patch
@@ -0,0 +1,197 @@
+Index: mythplugins/programs-libs.pro
+===================================================================
+--- mythplugins/programs-libs.pro (revision 22430)
++++ mythplugins/programs-libs.pro (working copy)
+@@ -4,7 +4,7 @@
+ INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmyth
+ DEPENDPATH *= $${INCLUDEPATH}
+
+-LIBS += -L$${LIBDIR} $$EXTRA_LIBS -lmythdb-$$LIBVERSION
++LIBS += -L$${SYSROOT}$${LIBDIR} $$EXTRA_LIBS -lmythdb-$$LIBVERSION
+ LIBS += -lmythavutil-$$LIBVERSION -lmythavcodec-$$LIBVERSION
+ LIBS += -lmyth-$$LIBVERSION -lmythui-$$LIBVERSION -lmythupnp-$$LIBVERSION
+
+Index: mythplugins/configure
+===================================================================
+--- mythplugins/configure (revision 22430)
++++ mythplugins/configure (working copy)
+@@ -266,24 +266,25 @@
+
+ has_library()
+ {
+- if test -f /etc/ld.so.conf ; then
+- LIBPATHS=`cat /etc/ld.so.conf | grep -v "#" | grep -v "include"`
+- else
+- LIBPATHS=''
+- fi
++ LIBPATHS=''
++ if test "x$sysroot" = "x" ; then
++ if test -f /etc/ld.so.conf ; then
++ LIBPATHS=`cat /etc/ld.so.conf | grep -v "#" | grep -v "include"`
++ fi
+
+- LIBPATHS="$LIBPATHS `echo $LD_LIBRARY_PATH | sed s/':'/' '/g` "
+- # Mac OS X has a different variable for this:
+- LIBPATHS="$LIBPATHS `echo $DYLD_LIBRARY_PATH | sed s/':'/' '/g` "
++ LIBPATHS="$LIBPATHS `echo $LD_LIBRARY_PATH | sed s/':'/' '/g` "
++ # Mac OS X has a different variable for this:
++ LIBPATHS="$LIBPATHS `echo $DYLD_LIBRARY_PATH | sed s/':'/' '/g` "
+
+- # recurse down just one level, should be enough in most cases
+- if test -f /etc/ld.so.conf ; then
+- INCL=`cat /etc/ld.so.conf | grep -v "#" | grep "^include"`
+- SRCH=`echo "$INCL" | sed '{ s/^include \//\//; s/^include /\/etc\//}'`
+- for x in $SRCH ; do
+- LP_APPEND=`cat $x | grep -v "#" | grep -v "^include"`
+- LIBPATHS="$LIBPATHS $LP_APPEND"
+- done
++ # recurse down just one level, should be enough in most cases
++ if test -f /etc/ld.so.conf ; then
++ INCL=`cat /etc/ld.so.conf | grep -v "#" | grep "^include"`
++ SRCH=`echo "$INCL" | sed '{ s/^include \//\//; s/^include /\/etc\//}'`
++ for x in $SRCH ; do
++ LP_APPEND=`cat $x | grep -v "#" | grep -v "^include"`
++ LIBPATHS="$LIBPATHS $LP_APPEND"
++ done
++ fi
+ fi
+
+ LIBPATHS="`echo $LIBPATHS $sysroot$prefix/$libdir_name $sysroot/$libdir_name $sysroot/usr/$libdir_name $sysroot/usr/local/$libdir_name $sysroot/usr/X11R6/$libdir_name | sed s/'\/ '/' '/g` "
+@@ -300,8 +301,10 @@
+ has_header()
+ {
+ HPATHS="$sysroot$prefix/include $sysroot/usr/local/include $sysroot/usr/include $sysroot/usr/include/g++-v3 $sysroot/usr/X11R6/include $sysroot/"
+- INCL=`echo $DYLD_LIBRARY_PATH $LD_LIBRARY_PATH | sed s/':'/' '/g`
+- HPATHS="$HPATHS `echo $INCL | sed s/$libdir_name/include/g` "
++ if test "x$sysroot" = "x" ; then
++ INCL=`echo $DYLD_LIBRARY_PATH $LD_LIBRARY_PATH | sed s/':'/' '/g`
++ HPATHS="$HPATHS `echo $INCL | sed s/$libdir_name/include/g` "
++ fi
+
+ HAS_IT="no"
+ for HPATH in $HPATHS ; do
+@@ -689,7 +692,7 @@
+ if test "$sdl" = "yes" ; then
+ echo " libvisual support will be included in MythMusic"
+ echo "#define LIBVISUAL_SUPPORT 1" >> ./mythmusic/mythmusic/config.h
+- echo "INCLUDEPATH += /usr/include/libvisual-0.4" >> ./mythmusic/mythmusic/config.pro
++ echo "INCLUDEPATH += ${sysroot}/usr/include/libvisual-0.4" >> ./mythmusic/mythmusic/config.pro
+ echo "LIBS += -lvisual-0.4" >> ./mythmusic/mythmusic/config.pro
+ else
+ echo " libvisual support will not be included in MythMusic (requires SDL support)"
+Index: mythplugins/settings.pro
+===================================================================
+--- mythplugins/settings.pro (revision 22430)
++++ mythplugins/settings.pro (working copy)
+@@ -3,8 +3,8 @@
+ LIBVERSION = 0.22
+
+ INCLUDEPATH += $${SYSROOT}$${PREFIX}/include
+-#INCLUDEPATH += /usr/include/cdda
+-#INCLUDEPATH += /usr/include/FLAC
++#INCLUDEPATH += $${SYSROOT}/usr/include/cdda
++#INCLUDEPATH += $${SYSROOT}/usr/include/FLAC
+
+ LIBS *= -L$${SYSROOT}$${PREFIX}/$${LIBDIRNAME}
+
+Index: mythplugins/mythgallery/mythgallery/mythgallery.pro
+===================================================================
+--- mythplugins/mythgallery/mythgallery/mythgallery.pro (revision 22430)
++++ mythplugins/mythgallery/mythgallery/mythgallery.pro (working copy)
+@@ -14,7 +14,7 @@
+ target.path = $${LIBDIR}/mythtv/plugins
+ INSTALLS += target
+
+-INCLUDEPATH += $${PREFIX}/include/mythtv
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
+
+ # Input
+ HEADERS += iconview.h singleview.h
+Index: mythplugins/mythweather/mythweather/mythweather.pro
+===================================================================
+--- mythplugins/mythweather/mythweather/mythweather.pro (revision 22430)
++++ mythplugins/mythweather/mythweather/mythweather.pro (working copy)
+@@ -13,8 +13,8 @@
+ QMAKE_COPY_DIR = sh ../../cpsvndir
+ win32:QMAKE_COPY_DIR = sh ../../cpsimple
+
+-INCLUDEPATH += $${PREFIX}/include/mythtv
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
+
+ datafiles.path = $${PREFIX}/share/mythtv/mythweather/
+ datafiles.files = weather-screens.xml
+Index: mythplugins/mythflix/mythflix/mythflix.pro
+===================================================================
+--- mythplugins/mythflix/mythflix/mythflix.pro (revision 22430)
++++ mythplugins/mythflix/mythflix/mythflix.pro (working copy)
+@@ -8,7 +8,7 @@
+ target.path = $${LIBDIR}/mythtv/plugins
+ INSTALLS += target
+
+-INCLUDEPATH += $${PREFIX}/include/mythtv
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
+
+ installfiles.path = $${PREFIX}/share/mythtv/mythflix
+ installfiles.files = netflix-rss.xml
+Index: mythplugins/mythmovies/mythmovies/mythmovies.pro
+===================================================================
+--- mythplugins/mythmovies/mythmovies/mythmovies.pro (revision 22430)
++++ mythplugins/mythmovies/mythmovies/mythmovies.pro (working copy)
+@@ -10,7 +10,7 @@
+ target.path = $${LIBDIR}/mythtv/plugins
+ INSTALLS += target
+
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
+
+ # Input
+ HEADERS += moviesui.h helperobjects.h moviessettings.h
+Index: mythplugins/mythzoneminder/mythzoneminder/mythzoneminder.pro
+===================================================================
+--- mythplugins/mythzoneminder/mythzoneminder/mythzoneminder.pro (revision 22430)
++++ mythplugins/mythzoneminder/mythzoneminder/mythzoneminder.pro (working copy)
+@@ -8,7 +8,7 @@
+ target.path = $${LIBDIR}/mythtv/plugins
+ INSTALLS += target
+
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
+
+ # Input
+ HEADERS += zmconsole.h zmplayer.h zmevents.h zmliveplayer.h zmdefines.h
+Index: mythplugins/mythnews/mythnews/mythnews.pro
+===================================================================
+--- mythplugins/mythnews/mythnews/mythnews.pro (revision 22430)
++++ mythplugins/mythnews/mythnews/mythnews.pro (working copy)
+@@ -10,9 +10,9 @@
+ target.path = $${LIBDIR}/mythtv/plugins
+ INSTALLS += target
+
+-INCLUDEPATH += $${PREFIX}/include/mythtv
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmythui
+-INCLUDEPATH += $${PREFIX}/include/mythtv/libmythdb
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythui
++INCLUDEPATH += $${SYSROOT}$${PREFIX}/include/mythtv/libmythdb
+
+ installfiles.path = $${PREFIX}/share/mythtv/mythnews
+ installfiles.files = news-sites.xml
+Index: mythplugins/targetdep.pro
+===================================================================
+--- mythplugins/targetdep.pro (revision 22430)
++++ mythplugins/targetdep.pro (working copy)
+@@ -10,10 +10,10 @@
+ MYTH_LIB_EXT =$${LIBVERSION}.$${QMAKE_EXTENSION_LIB}
+
+
+-DEPLIBS = $${LIBDIR}
++DEPLIBS = $${SYSROOT}$${LIBDIR}
+
+ # On Windows, dlls were installed with exes:
+-mingw : DEPLIBS = $${PREFIX}/bin
++mingw : DEPLIBS = $${SYSROOT}$${PREFIX}/bin
+
+ TARGETDEPS += $${DEPLIBS}/libmyth-$${MYTH_SHLIB_EXT}
+ TARGETDEPS += $${DEPLIBS}/libmythdb-$${MYTH_SHLIB_EXT}
diff --git a/recipes/mythtv/mythplugins_0.21+0.22rc2.bb b/recipes/mythtv/mythplugins_0.21+0.22rc2.bb
new file mode 100644
index 0000000000..12d6f268da
--- /dev/null
+++ b/recipes/mythtv/mythplugins_0.21+0.22rc2.bb
@@ -0,0 +1,201 @@
+# todo: add mythweb
+# todo: fix and add mythmusic
+# todo: fix and add zoneminder
+#ALLOW_EMPTY_${PN} = "1"
+DEPENDS = "flac taglib mythtv libvorbis libexif libvisual libsdl-x11 libcdaudio cdparanoia"
+RDEPENDS_${PN} = "mytharchive mythbrowser mythflix mythgallery \
+ mythgame mythmovies mythnews mythvideo mythweather"
+PV = "0.21+0.22rc2"
+PR = "r0"
+
+#DEFAULT_PREFERENCE = "-1"
+
+QMAKE_PROFILES = "mythplugins.pro"
+
+SRC_URI = "ftp://ftp.osuosl.org/pub/mythtv/mythplugins-0.22rc2.tar.bz2 \
+ file://MythBackend.php.patch;patch=1 \
+ file://sysroot.patch;patch=1 \
+ file://mythplugins_wo_qtopengl.diff;patch=1 \
+ file://configure.patch;patch=1 \
+ "
+
+S = "${WORKDIR}/mythplugins-0.22rc2"
+
+inherit qmake2 qt4x11
+
+# zoneminder needs sql files
+# mythmusic has a problem with cdparanoia and private; from the cdparanoia buglist
+# 'private' as a reserved keyword now being enforced by GCC 4.3, causes a build failure (patched in SVN).
+EXTRA_OECONF = " \
+ --cross-prefix=${TARGET_PREFIX} \
+ --sysroot=${STAGING_DIR_HOST} \
+ --prefix=${prefix} \
+ --with-libdir-name=${STAGING_LIBDIR} \
+ --disable-opengl \
+ --disable-mythmusic \
+ --disable-mythzoneminder \
+ \
+ --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+ --extra-cxxflags="${TARGET_CXXFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+ --extra-ldflags="${TARGET_LDFLAGS}" \
+ ${EXTRA_MYTHTVCONF} \
+"
+
+do_configure() {
+ ${S}/configure --qmake=qmake2 ${EXTRA_OECONF}
+}
+do_install () {
+ oe_runmake install INSTALL_ROOT="${D}"
+}
+
+PACKAGES =+ "mytharchive mytharchive-dbg \
+ mythbrowser mythbrowser-dbg \
+ mythflix mythflix-dbg \
+ mythgallery mythgallery-dbg \
+ mythgame mythgame-dbg \
+ mythmovies mythmovies-dbg \
+ mythnews mythnews-dbg \
+ mythvideo mythvideo-dbg \
+ mythweather mythweather-dbg"
+
+FILES_mytharchive = "${libdir}/mythtv/plugins/libmytharchive.so \
+ ${bindir}/mytharchivehelper \
+ ${datadir}/mythtv/i18n/mytharchive* \
+ ${datadir}/mythtv/mytharchive/* \
+ ${datadir}/mythtv/archiveformat.xml \
+ ${datadir}/mythtv/archivemenu.xml \
+ ${datadir}/mythtv/archiveutils.xml \
+ ${datadir}/mythtv/themes/default/mytharchive-ui.xml \
+ ${datadir}/mythtv/themes/default/mythburn-ui.xml \
+ ${datadir}/mythtv/themes/default/mythnative-ui.xml \
+ ${datadir}/mythtv/themes/default/ma_*.png \
+ ${datadir}/mythtv/themes/default-wide/mytharchive-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/mythburn-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/mythnative-ui.xml \
+ "
+FILES_mytharchive-dbg = "${bindir}/.debug/mytharchivehelper \
+ ${libdir}/mythtv/plugins/.debug/libmytharchive.so"
+FILES_mythbrowser = "${libdir}/mythtv/plugins/libmythbrowser.so \
+ ${bindir}/mythbrowser \
+ ${datadir}/mythtv/i18n/mythbrowser* \
+ ${datadir}/mythtv/themes/default/webpage.png \
+ ${datadir}/mythtv/themes/default/browser-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/browser-ui.xml \
+ "
+FILES_mythbrowser-dbg = "${libdir}/mythtv/plugins/.debug/libmythbrowser.so"
+FILES_mythflix = "${libdir}/mythtv/plugins/libmythflix.so \
+ ${datadir}/mythtv/i18n/mythflix* \
+ ${datadir}/mythtv/mythflix/* \
+ ${datadir}/mythtv/netflix_menu.xml \
+ ${datadir}/mythtv/themes/default/mythflix_background.png \
+ ${datadir}/mythtv/themes/default/netflix-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/netflix-ui.xml \
+ ${datadir}/mythtv/themes/default/title_netflix.png \
+ ${datadir}/mythtv/themes/default-wide/title_netflix-bg.png \
+ ${datadir}/mythtv/themes/default-wide/netflix-bg.png \
+ "
+FILES_mythflix-dbg = "${libdir}/mythtv/plugins/.debug/libmythflix.so"
+FILES_mythgallery = "${libdir}/mythtv/plugins/libmythgallery.so \
+ ${datadir}/mythtv/i18n/mythgallery* \
+ ${datadir}/mythtv/themes/default/gallery*.png \
+ ${datadir}/mythtv/themes/default/gallery-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/gallery-ui.xml \
+ "
+FILES_mythgallery-dbg = "${libdir}/mythtv/plugins/.debug/libmythgallery.so"
+FILES_mythgame = "${libdir}/mythtv/plugins/libmythgame.so \
+ ${datadir}/mythtv/i18n/mythgame* \
+ ${datadir}/mythtv/game_settings.xml \
+ ${datadir}/mythtv/themes/default/game-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/game-ui.xml \
+ "
+FILES_mythgame-dbg = "${libdir}/mythtv/plugins/.debug/libmythgame.so"
+FILES_mythmovies = "${libdir}/mythtv/plugins/libmythmovies.so \
+ ${bindir}/ignyte \
+ ${datadir}/mythtv/mythmovies/* \
+ ${datadir}/mythtv/i18n/mythmovies* \
+ ${datadir}/mythtv/themes/default/movies-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/movies-ui.xml \
+ "
+FILES_mythmovies-dbg = "${bindir}/.debug/ignyte \
+ ${libdir}/mythtv/plugins/.debug/libmythmovies.so"
+FILES_mythnews = "${libdir}/mythtv/plugins/libmythnews.so \
+ ${datadir}/mythtv/mythnews/* \
+ ${datadir}/mythtv/i18n/mythnews* \
+ ${datadir}/mythtv/themes/default/enclosures.png \
+ ${datadir}/mythtv/themes/default/need-download.png \
+ ${datadir}/mythtv/themes/default/podcast.png \
+ ${datadir}/mythtv/themes/default/news-info-bg.png \
+ ${datadir}/mythtv/themes/default/news-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/news-ui.xml \
+ "
+FILES_mythnews-dbg = "${libdir}/mythtv/plugins/.debug/libmythnews.so"
+FILES_mythvideo = "${libdir}/mythtv/plugins/libmythvideo.so \
+ ${bindir}/mtd \
+ ${datadir}/mythtv/mythvideo/* \
+ ${datadir}/mythtv/i18n/mythvideo* \
+ $(datadir)/mythtv/themes/default/mv_level_none.png \
+ $(datadir)/mythtv/themes/default/mv_level_high.png \
+ $(datadir)/mythtv/themes/default/mv_results_popup.png \
+ $(datadir)/mythtv/themes/default-wide/mv_results_popup.png \
+ $(datadir)/mythtv/themes/default/mv_level_low.png \
+ $(datadir)/mythtv/themes/default/mv_level_medium.png \
+ $(datadir)/mythtv/themes/default/mv_browse_selector.png \
+ $(datadir)/mythtv/themes/default-wide/mv_browse_selector.png \
+ $(datadir)/mythtv/themes/default-wide/mv_browse_background.png \
+ $(datadir)/mythtv/themes/default-wide/mv_browse_nocover_large.png \
+ $(datadir)/mythtv/themes/default-wide/mv_itemdetail_popup.png \
+ ${datadir}/mythtv/themes/default-wide/movies-ui.xml \
+ ${datadir}/mythtv/themes/default/dvd-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/dvd-ui.xml \
+ ${datadir}/mythtv/themes/default/video-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/video-ui.xml \
+ ${datadir}/mythtv/themes/default-wide/mv-background.png \
+ ${datadir}/mythtv/themes/default-wide/mv-mselect.png \
+ ${datadir}/mythtv/themes/default-wide/mv-sel.png \
+ ${datadir}/mythtv/themes/default-wide/mv-wait-background.png \
+ ${datadir}/mythtv/themes/default-wide/mv-filerequest.png \
+ ${datadir}/mythtv/themes/default-wide/mv-other_background.png \
+ ${datadir}/mythtv/themes/default-wide/mv-selected.png \
+ ${datadir}/mythtv/video_settings.xml \
+ ${datadir}/mythtv/videomenu.xml \
+ "
+FILES_mythvideo-dbg = "${bindir}/.debug/mtd \
+ ${libdir}/mythtv/plugins/.debug/libmythvideo.so"
+FILES_mythweather = "${libdir}/mythtv/plugins/libmythweather.so \
+ ${datadir}/mythtv/mythweather/* \
+ ${datadir}/mythtv/i18n/mythweather* \
+ ${datadir}/mythtv/themes/default-wide/mw-background.png \
+ ${datadir}/mythtv/themes/default-wide/mw-lines.png \
+ ${datadir}/mythtv/themes/default-wide/mw-map-sat.png \
+ ${datadir}/mythtv/themes/default-wide/mw-map.png \
+ ${datadir}/mythtv/themes/default-wide/mw-popup.png \
+ ${datadir}/mythtv/themes/default-wide/weather-ui.xml \
+ ${datadir}/mythtv/themes/default/cloudy.png \
+ ${datadir}/mythtv/themes/default/fair.png \
+ ${datadir}/mythtv/themes/default/flurries.png \
+ ${datadir}/mythtv/themes/default/fog.png \
+ ${datadir}/mythtv/themes/default/logo.png \
+ ${datadir}/mythtv/themes/default/lshowers.png \
+ ${datadir}/mythtv/themes/default/mcloudy.png \
+ ${datadir}/mythtv/themes/default/mw_background.png \
+ ${datadir}/mythtv/themes/default/mw_checked.png \
+ ${datadir}/mythtv/themes/default/mw_checked_high.png \
+ ${datadir}/mythtv/themes/default/mw_lines.png \
+ ${datadir}/mythtv/themes/default/mw_map-sat.png \
+ ${datadir}/mythtv/themes/default/mw_map.png \
+ ${datadir}/mythtv/themes/default/mw_popup.png \
+ ${datadir}/mythtv/themes/default/mw_shading.png \
+ ${datadir}/mythtv/themes/default/mw_unchecked.png \
+ ${datadir}/mythtv/themes/default/mw_unchecked_high.png \
+ ${datadir}/mythtv/themes/default/mwmain.png \
+ ${datadir}/mythtv/themes/default/pcloudy.png \
+ ${datadir}/mythtv/themes/default/rainsnow.png \
+ ${datadir}/mythtv/themes/default/showers.png \
+ ${datadir}/mythtv/themes/default/snowshow.png \
+ ${datadir}/mythtv/themes/default/sunny.png \
+ ${datadir}/mythtv/themes/default/thunshowers.png \
+ ${datadir}/mythtv/themes/default/unknown.png \
+ ${datadir}/mythtv/themes/default/weather-ui.xml \
+ ${datadir}/mythtv/weather_settings.xml \
+ "
+FILES_mythweather-dbg = "${libdir}/mythtv/plugins/.debug/libmythweather.so"
diff --git a/recipes/mythtv/mythtv-0.21+0.22rc2/configure.patch b/recipes/mythtv/mythtv-0.21+0.22rc2/configure.patch
new file mode 100644
index 0000000000..748c88d9fc
--- /dev/null
+++ b/recipes/mythtv/mythtv-0.21+0.22rc2/configure.patch
@@ -0,0 +1,61 @@
+Index: mythtv/configure
+===================================================================
+--- mythtv/configure (revision 22430)
++++ mythtv/configure (working copy)
+@@ -919,27 +919,27 @@
+ #deprecated, use check_lib or check_lib2 instead
+ has_library()
+ {
+- if test -f /etc/ld.so.conf ; then
+- LIBPATHS=`cat /etc/ld.so.conf | grep -v "#" | grep -v "include"`
+- else
+- LIBPATHS=''
+- fi
++ LIBPATHS=''
++ if test "x${sysroot}" = "x" ; then
++ if test -f /etc/ld.so.conf ; then
++ LIBPATHS=`cat /etc/ld.so.conf | grep -v "#" | grep -v "include"`
++ fi
++ LIBPATHS="$LIBPATHS `echo $LD_LIBRARY_PATH | sed s/':'/' '/g` "
++ # Mac OS X has a different variable for this:
++ LIBPATHS="$LIBPATHS `echo $DYLD_LIBRARY_PATH | sed s/':'/' '/g` "
+
+- LIBPATHS="$LIBPATHS `echo $LD_LIBRARY_PATH | sed s/':'/' '/g` "
+- # Mac OS X has a different variable for this:
+- LIBPATHS="$LIBPATHS `echo $DYLD_LIBRARY_PATH | sed s/':'/' '/g` "
+-
+- # recurse down just one level, should be enough in most cases
+- if test -f /etc/ld.so.conf ; then
+- INCL=`cat /etc/ld.so.conf | grep -v "#" | grep "^include"`
+- SRCH=`echo "$INCL" | sed '{ s/^include \//\//; s/^include /\/etc\//}'`
+- for x in $SRCH ; do
+- LP_APPEND=`cat $x | grep -v "#" | grep -v "^include"`
+- LIBPATHS="$LIBPATHS $LP_APPEND"
+- done
++ # recurse down just one level, should be enough in most cases
++ if test -f /etc/ld.so.conf ; then
++ INCL=`cat /etc/ld.so.conf | grep -v "#" | grep "^include"`
++ SRCH=`echo "$INCL" | sed '{ s/^include \//\//; s/^include /\/etc\//}'`
++ for x in $SRCH ; do
++ LP_APPEND=`cat $x | grep -v "#" | grep -v "^include"`
++ LIBPATHS="$LIBPATHS $LP_APPEND"
++ done
++ fi
+ fi
+
+- LIBPATHS="`echo $LIBPATHS /$libdir_name /usr/$libdir_name /usr/local/$libdir_name /usr/X11R6/$libdir_name | sed s/'\/ '/' '/g` "
++ LIBPATHS="`echo $LIBPATHS $sysroot/$libdir_name $sysroot/usr/$libdir_name $sysroot/usr/local/$libdir_name $sysroot/usr/X11R6/$libdir_name | sed s/'\/ '/' '/g` "
+
+ HAS_IT="no"
+ for LIBPATH in $LIBPATHS ; do
+@@ -4252,8 +4252,8 @@
+ # -L from early in the link line, to ignore any old installed libmyth*
+ # Note: Qt uses QMAKE_INCDIR_QT to build an absolute path for include
+ # directories, it cannot be modified.
+-QMAKE_LIBDIR_QT -= $libdir
+-LATE_LIBS += -L$libdir
++QMAKE_LIBDIR_QT -= ${sysroot}${libdir}
++LATE_LIBS += -L${sysroot}${libdir}
+ EOF
+
+ diff $TMPH $MYTH_CONFIG_H >/dev/null 2>&1
diff --git a/recipes/mythtv/mythtv_0.21+0.22rc2.bb b/recipes/mythtv/mythtv_0.21+0.22rc2.bb
new file mode 100644
index 0000000000..38608797eb
--- /dev/null
+++ b/recipes/mythtv/mythtv_0.21+0.22rc2.bb
@@ -0,0 +1,113 @@
+require mythtv.inc
+
+RDEPENDS_${PN} = "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data"
+PV = "0.21+0.22rc2"
+PR = "r0"
+REALPV = "0.22"
+
+#DEFAULT_PREFERENCE = "-1"
+ALLOW_EMPTY_${PN} = "1"
+
+QMAKE_PROFILES = "mythtv.pro"
+
+SRC_URI = "ftp://ftp.osuosl.org/pub/mythtv/mythtv-0.22rc2.tar.bz2 \
+ file://configure.patch;patch=1 \
+ "
+
+S = "${WORKDIR}/mythtv-0.22rc2"
+
+inherit qmake2 qt4x11
+
+EXTRA_MYTHTVCONF_armv7a = "--cpu=cortex-a8"
+EXTRA_MYTHTVCONF_armv5te = "--cpu=armv5te"
+EXTRA_MYTHTVCONF ?= ""
+EXTRA_OECONF = " \
+ --cross-prefix=${TARGET_PREFIX} \
+ --sysroot=${STAGING_DIR_HOST} \
+ --prefix=${prefix} \
+ --arch=${TARGET_ARCH} \
+ \
+ --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+ --extra-cxxflags="${TARGET_CXXFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+ --extra-ldflags="${TARGET_LDFLAGS}" \
+ ${EXTRA_MYTHTVCONF} \
+"
+
+do_configure_prepend() {
+# it's not autotools anyway, so we call ./configure directly
+ find . -name "Makefile"|xargs rm -f
+ ./configure --qmake=qmake2 \
+ --disable-altivec \
+ --disable-opengl \
+ --disable-stripping \
+ --disable-xvmc \
+ --enable-v4l \
+ --enable-audio-oss \
+ --enable-dvb \
+ --enable-libmp3lame \
+ --dvb-path=${STAGING_INCDIR} \
+ --without-bindings=perl,python \
+ ${EXTRA_OECONF}
+}
+do_stage() {
+ install -d ${STAGING_INCDIR}
+ install -d ${STAGING_INCDIR}/${PN}
+ install -d ${STAGING_INCDIR}/${PN}/dvdnav
+ install -d ${STAGING_INCDIR}/${PN}/dvdread
+ install -d ${STAGING_INCDIR}/${PN}/libavcodec
+ install -d ${STAGING_INCDIR}/${PN}/libavformat
+ install -d ${STAGING_INCDIR}/${PN}/libavutil
+ install -d ${STAGING_INCDIR}/${PN}/libmyth
+ install -d ${STAGING_INCDIR}/${PN}/libmythdb
+ install -d ${STAGING_INCDIR}/${PN}/libmythui
+ install -d ${STAGING_INCDIR}/${PN}/libswscale
+ install -d ${STAGING_INCDIR}/${PN}/mpeg2dec
+ install -d ${STAGING_INCDIR}/${PN}/upnp
+ install -m 0644 ${D}/${includedir}/${PN}/*.h ${STAGING_INCDIR}/${PN}
+ install -m 0644 ${D}/${includedir}/${PN}/mythconfig.mak ${STAGING_INCDIR}/${PN}
+ install -m 0644 ${D}/${includedir}/${PN}/dvdnav/*.h ${STAGING_INCDIR}/${PN}/dvdnav
+ install -m 0644 ${D}/${includedir}/${PN}/dvdread/*.h ${STAGING_INCDIR}/${PN}/dvdread
+ install -m 0644 ${D}/${includedir}/${PN}/libavcodec/*.h ${STAGING_INCDIR}/${PN}/libavcodec
+ install -m 0644 ${D}/${includedir}/${PN}/libavformat/*.h ${STAGING_INCDIR}/${PN}/libavformat
+ install -m 0644 ${D}/${includedir}/${PN}/libavutil/*.h ${STAGING_INCDIR}/${PN}/libavutil
+ install -m 0644 ${D}/${includedir}/${PN}/libmyth/*.h ${STAGING_INCDIR}/${PN}/libmyth
+ install -m 0644 ${D}/${includedir}/${PN}/libmythdb/*.h ${STAGING_INCDIR}/${PN}/libmythdb
+ install -m 0644 ${D}/${includedir}/${PN}/libmythui/*.h ${STAGING_INCDIR}/${PN}/libmythui
+ install -m 0644 ${D}/${includedir}/${PN}/libswscale/*.h ${STAGING_INCDIR}/${PN}/libswscale
+ install -m 0644 ${D}/${includedir}/${PN}/mpeg2dec/*.h ${STAGING_INCDIR}/${PN}/mpeg2dec
+ install -m 0644 ${D}/${includedir}/${PN}/upnp/*.h ${STAGING_INCDIR}/${PN}/upnp
+ # next part may need to be done better
+ cp -R ${D}/${libdir}/* ${STAGING_LIBDIR}
+ # ugly chmod ahead
+ chmod -R ugo+r ${STAGING_LIBDIR}
+}
+
+PACKAGES =+ "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data"
+PACKAGES_DYNAMIC = "mythtv-theme-*"
+
+FILES_${PN}-dbg += "${libdir}/mythtv/filters/.debug"
+FILES_mythtv-backend = "${bindir}/mythbackend ${bindir}/mythcommflag ${bindir}/mythfilldatabase ${bindir}/mythtranscode"
+FILES_mythtv-frontend = "${bindir}/mythfrontend ${datadir}/mythtv/i18n/mythfrontend_* ${datadir}/mythtv/*.ttf"
+FILES_mythtv-bin = "${bindir}/*"
+FILES_mythtv-filters = "${libdir}/mythtv/filters/*"
+FILES_mythtv-data = "${datadir}"
+
+mythlibs = "mythdb mythavutil mythavcodec mythavformat mythswscale mythhdhomerun myth mythtv mythui mythfreemheg mythupnp mythlivemedia"
+
+python __anonymous () {
+ import bb
+ mythlibs = bb.data.getVar('mythlibs', d).split()
+ pv = bb.data.expand(bb.data.getVar("REALPV", d), d)
+ for m in mythlibs:
+ bb.data.setVar("FILES_lib%s%s" % (m, pv), "${libdir}/lib%s-%s.so.*" % (m, pv), d)
+ bb.data.setVar("FILES_lib%s%s-dev" % (m, pv), "${libdir}/lib%s-%s.*" % (m, pv), d)
+ packages = " ".join(map(lambda x: "lib%s%s lib%s%s-dev" % (x, pv, x, pv), mythlibs) + bb.data.getVar("PACKAGES", d).split())
+ bb.data.setVar("PACKAGES", packages, d)
+}
+python populate_packages_prepend () {
+ new_packages = []
+ def the_hook(file, pkg, pattern, format, basename):
+ new_packages.append(pkg)
+ do_split_packages(d, root=bb.data.expand('${datadir}/mythtv/themes', d), file_regex='(.*)', output_pattern='mythtv-theme-%s', description='MythTV theme %s', allow_dirs=True, hook=the_hook, prepend=True)
+ bb.data.setVar("RDEPENDS_${PN}", "%s %s" % (bb.data.getVar("RDEPENDS_${PN}", d), " ".join(new_packages)), d)
+}
diff --git a/recipes/mythtv/mythtv_0.22rc1.bb b/recipes/mythtv/mythtv_0.22rc1.bb
deleted file mode 100644
index 8e95d0d99c..0000000000
--- a/recipes/mythtv/mythtv_0.22rc1.bb
+++ /dev/null
@@ -1,123 +0,0 @@
-require mythtv.inc
-
-inherit qmake2 qt4x11
-
-DEFAULT_PREFERENCE = "-1"
-
-PV = "0.21+0.22rc1"
-PR = "r3"
-REALPV = "0.22"
-
-SRC_URI = "ftp://ftp.osuosl.org/pub/mythtv/mythtv-0.22rc1.tar.bz2"
-
-S = "${WORKDIR}/mythtv-0.22rc1"
-
-QMAKE_PROFILES = "mythtv.pro"
-
-mythlibs = "mythdb mythavutil mythavcodec mythavformat mythswscale mythhdhomerun myth mythtv mythui mythfreemheg mythupnp mythlivemedia"
-PACKAGES =+ "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data"
-
-FILES_${PN}-dbg += "${libdir}/mythtv/filters/.debug"
-FILES_mythtv-backend = "${bindir}/mythbackend ${bindir}/mythcommflag ${bindir}/mythfilldatabase ${bindir}/mythtranscode"
-FILES_mythtv-frontend = "${bindir}/mythfrontend ${datadir}/mythtv/i18n/mythfrontend_* ${datadir}/mythtv/*.ttf"
-FILES_mythtv-bin = "${bindir}/*"
-FILES_mythtv-filters = "${libdir}/mythtv/filters/*"
-FILES_mythtv-data = "${datadir}"
-RDEPENDS_${PN} = "mythtv-backend mythtv-frontend mythtv-bin mythtv-filters mythtv-data"
-ALLOW_EMPTY_${PN} = "1"
-
-PACKAGES_DYNAMIC = "mythtv-theme-*"
-
-python __anonymous () {
- import bb
-
- mythlibs = bb.data.getVar('mythlibs', d).split()
- pv = bb.data.expand(bb.data.getVar("REALPV", d), d)
-
- for m in mythlibs:
- bb.data.setVar("FILES_lib%s%s" % (m, pv), "${libdir}/lib%s-%s.so.*" % (m, pv), d)
- bb.data.setVar("FILES_lib%s%s-dev" % (m, pv), "${libdir}/lib%s-%s.*" % (m, pv), d)
-
- packages = " ".join(map(lambda x: "lib%s%s lib%s%s-dev" % (x, pv, x, pv), mythlibs) + bb.data.getVar("PACKAGES", d).split())
-
- bb.data.setVar("PACKAGES", packages, d)
-}
-
-EXTRA_MYTHTVCONF_armv7a = "--cpu=cortex-a8"
-EXTRA_MYTHTVCONF_armv5te = "--cpu=armv5te"
-EXTRA_MYTHTVCONF ?= ""
-
-EXTRA_OECONF = " \
- --cross-prefix=${TARGET_PREFIX} \
- --sysroot=${STAGING_DIR_HOST} \
- --prefix=${prefix} \
- --arch=${TARGET_ARCH} \
- \
- --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
- --extra-cxxflags="${TARGET_CXXFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
- --extra-ldflags="${TARGET_LDFLAGS}" \
- ${EXTRA_MYTHTVCONF} \
-"
-
-do_configure_prepend() {
-# it's not autotools anyway, so we call ./configure directly
- find . -name "Makefile"|xargs rm -f
-
- ./configure --qmake=qmake2 \
- --disable-altivec \
- --disable-opengl \
- --disable-stripping \
- --disable-xvmc \
- --enable-v4l \
- --enable-audio-oss \
- --enable-dvb \
- --enable-libmp3lame \
- --dvb-path=${STAGING_INCDIR} \
- --without-bindings=perl,python \
- ${EXTRA_OECONF}
-}
-
-python populate_packages_prepend () {
- new_packages = []
-
- def the_hook(file, pkg, pattern, format, basename):
- new_packages.append(pkg)
-
- do_split_packages(d, root=bb.data.expand('${datadir}/mythtv/themes', d), file_regex='(.*)', output_pattern='mythtv-theme-%s', description='MythTV theme %s', allow_dirs=True, hook=the_hook, prepend=True)
-
- bb.data.setVar("RDEPENDS_${PN}", "%s %s" % (bb.data.getVar("RDEPENDS_${PN}", d), " ".join(new_packages)), d)
-}
-
-do_stage() {
- install -d ${STAGING_INCDIR}
- install -d ${STAGING_INCDIR}/${PN}
- install -d ${STAGING_INCDIR}/${PN}/dvdnav
- install -d ${STAGING_INCDIR}/${PN}/dvdread
- install -d ${STAGING_INCDIR}/${PN}/libavcodec
- install -d ${STAGING_INCDIR}/${PN}/libavformat
- install -d ${STAGING_INCDIR}/${PN}/libavutil
- install -d ${STAGING_INCDIR}/${PN}/libmyth
- install -d ${STAGING_INCDIR}/${PN}/libmythdb
- install -d ${STAGING_INCDIR}/${PN}/libmythui
- install -d ${STAGING_INCDIR}/${PN}/libswscale
- install -d ${STAGING_INCDIR}/${PN}/mpeg2dec
- install -d ${STAGING_INCDIR}/${PN}/upnp
- install -m 0644 ${D}/${includedir}/${PN}/*.h ${STAGING_INCDIR}/${PN}
- install -m 0644 ${D}/${includedir}/${PN}/mythconfig.mak ${STAGING_INCDIR}/${PN}
- install -m 0644 ${D}/${includedir}/${PN}/dvdnav/*.h ${STAGING_INCDIR}/${PN}/dvdnav
- install -m 0644 ${D}/${includedir}/${PN}/dvdread/*.h ${STAGING_INCDIR}/${PN}/dvdread
- install -m 0644 ${D}/${includedir}/${PN}/libavcodec/*.h ${STAGING_INCDIR}/${PN}/libavcodec
- install -m 0644 ${D}/${includedir}/${PN}/libavformat/*.h ${STAGING_INCDIR}/${PN}/libavformat
- install -m 0644 ${D}/${includedir}/${PN}/libavutil/*.h ${STAGING_INCDIR}/${PN}/libavutil
- install -m 0644 ${D}/${includedir}/${PN}/libmyth/*.h ${STAGING_INCDIR}/${PN}/libmyth
- install -m 0644 ${D}/${includedir}/${PN}/libmythdb/*.h ${STAGING_INCDIR}/${PN}/libmythdb
- install -m 0644 ${D}/${includedir}/${PN}/libmythui/*.h ${STAGING_INCDIR}/${PN}/libmythui
- install -m 0644 ${D}/${includedir}/${PN}/libswscale/*.h ${STAGING_INCDIR}/${PN}/libswscale
- install -m 0644 ${D}/${includedir}/${PN}/mpeg2dec/*.h ${STAGING_INCDIR}/${PN}/mpeg2dec
- install -m 0644 ${D}/${includedir}/${PN}/upnp/*.h ${STAGING_INCDIR}/${PN}/upnp
- sed -i 's:LIBDIR=/usr/lib:LIBDIR=${STAGING_LIBDIR}:' ${STAGING_INCDIR}/${PN}/mythconfig.mak
- # next part may need to be done better
- cp -R ${D}/${libdir}/* ${STAGING_LIBDIR}
- # ugly chmod ahead
- chmod -R ugo+r ${STAGING_LIBDIR}
-}
diff --git a/recipes/xchat/xchat_2.8.6.bb b/recipes/xchat/xchat_2.8.6.bb
new file mode 100644
index 0000000000..9be5bd385f
--- /dev/null
+++ b/recipes/xchat/xchat_2.8.6.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "Full-featured IRC chat client with scripting support"
+LICENSE = "GPL"
+HOMEPAGE = "http://www.xchat.org"
+SECTION = "x11/network"
+DEPENDS = "libgcrypt zlib gtk+"
+DEPENDS += "gdk-pixbuf-csource-native"
+PR = "r0"
+
+SRC_URI = "http://www.xchat.org/files/source/2.8/xchat-${PV}.tar.bz2"
+
+inherit autotools
+
+EXTRA_OECONF = "\
+ --disable-perl \
+ --disable-python \
+"
+
+#Fix little bug that slipped into the 2.8.6 release, already fixed upstream.
+do_compile_prepend() {
+ sed -i 's/GtkType/GType/' ${s}src/fe-gtk/xtext.{c,h}
+}
+
+FILES_${PN} += "${datadir}/dbus-1"
+
+FILES_${PN}-dbg += "${libdir}/xchat/plugins/.debug"
diff --git a/recipes/xorg-lib/pixman/neon-24bpp.patch b/recipes/xorg-lib/pixman/neon-24bpp.patch
new file mode 100644
index 0000000000..edfd367626
--- /dev/null
+++ b/recipes/xorg-lib/pixman/neon-24bpp.patch
@@ -0,0 +1,264 @@
+From b101c115102b83bb1fc4e28de6136dd4940796bc Mon Sep 17 00:00:00 2001
+From: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date: Fri, 30 Oct 2009 17:02:14 +0000
+Subject: ARM: initial 24bpp support
+
+---
+diff --git a/pixman/pixman-arm-neon-asm.S b/pixman/pixman-arm-neon-asm.S
+index 35e6a7e..7f91ced 100644
+--- a/pixman/pixman-arm-neon-asm.S
++++ b/pixman/pixman-arm-neon-asm.S
+@@ -977,3 +977,32 @@ generate_composite_function \
+ pixman_composite_over_8888_n_8888_process_pixblock_head, \
+ pixman_composite_over_8888_n_8888_process_pixblock_tail, \
+ pixman_composite_over_8888_n_8888_process_pixblock_tail_head
++
++/******************************************************************************/
++
++.macro pixman_composite_src_0888_0888_process_pixblock_head
++.endm
++
++.macro pixman_composite_src_0888_0888_process_pixblock_tail
++.endm
++
++.macro pixman_composite_src_0888_0888_process_pixblock_tail_head
++ vst3.8 {d0, d1, d2}, [DST_W]!
++ vld3.8 {d0, d1, d2}, [SRC]!
++ cache_preload 8, 8
++.endm
++
++generate_composite_function \
++ pixman_composite_src_0888_0888_asm_neon, 24, 0, 24, \
++ FLAG_DST_WRITEONLY, \
++ 8, /* number of pixels, processed in a single block */ \
++ 10, /* prefetch distance */ \
++ default_init, \
++ default_cleanup, \
++ pixman_composite_src_0888_0888_process_pixblock_head, \
++ pixman_composite_src_0888_0888_process_pixblock_tail, \
++ pixman_composite_src_0888_0888_process_pixblock_tail_head, \
++ 0, /* dst_w_basereg */ \
++ 0, /* dst_r_basereg */ \
++ 0, /* src_basereg */ \
++ 0 /* mask_basereg */
+diff --git a/pixman/pixman-arm-neon-asm.h b/pixman/pixman-arm-neon-asm.h
+index a2941ae..1653ef4 100644
+--- a/pixman/pixman-arm-neon-asm.h
++++ b/pixman/pixman-arm-neon-asm.h
+@@ -95,6 +95,14 @@
+ op&.&elem_size {d&reg1[idx]}, [&mem_operand&]!
+ .endm
+
++.macro pixldst3 op, elem_size, reg1, reg2, reg3, mem_operand
++ op&.&elem_size {d&reg1, d&reg2, d&reg3}, [&mem_operand&]!
++.endm
++
++.macro pixldst30 op, elem_size, reg1, reg2, reg3, idx, mem_operand
++ op&.&elem_size {d&reg1[idx], d&reg2[idx], d&reg3[idx]}, [&mem_operand&]!
++.endm
++
+ .macro pixldst numbytes, op, elem_size, basereg, mem_operand, abits
+ .if numbytes == 32
+ pixldst4 op, elem_size, %(basereg+4), %(basereg+5), \
+@@ -134,6 +142,18 @@
+ .if (bpp == 32) && (numpix == 8) && (DEINTERLEAVE_32BPP_ENABLED != 0)
+ pixldst4 vld4, 8, %(basereg+4), %(basereg+5), \
+ %(basereg+6), %(basereg+7), mem_operand, abits
++.elseif (bpp == 24) && (numpix == 8)
++ pixldst3 vld3, 8, %(basereg+3), %(basereg+4), %(basereg+5), mem_operand
++.elseif (bpp == 24) && (numpix == 4)
++ pixldst30 vld3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 4, mem_operand
++ pixldst30 vld3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 5, mem_operand
++ pixldst30 vld3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 6, mem_operand
++ pixldst30 vld3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 7, mem_operand
++.elseif (bpp == 24) && (numpix == 2)
++ pixldst30 vld3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 2, mem_operand
++ pixldst30 vld3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 3, mem_operand
++.elseif (bpp == 24) && (numpix == 1)
++ pixldst30 vld3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 1, mem_operand
+ .else
+ pixldst %(numpix * bpp / 8), vld1, %(bpp), basereg, mem_operand, abits
+ .endif
+@@ -145,6 +165,18 @@
+ .if (bpp == 32) && (numpix == 8) && (DEINTERLEAVE_32BPP_ENABLED != 0)
+ pixldst4 vst4, 8, %(basereg+4), %(basereg+5), \
+ %(basereg+6), %(basereg+7), mem_operand, abits
++.elseif (bpp == 24) && (numpix == 8)
++ pixldst3 vst3, 8, %(basereg+3), %(basereg+4), %(basereg+5), mem_operand
++.elseif (bpp == 24) && (numpix == 4)
++ pixldst30 vst3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 4, mem_operand
++ pixldst30 vst3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 5, mem_operand
++ pixldst30 vst3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 6, mem_operand
++ pixldst30 vst3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 7, mem_operand
++.elseif (bpp == 24) && (numpix == 2)
++ pixldst30 vst3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 2, mem_operand
++ pixldst30 vst3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 3, mem_operand
++.elseif (bpp == 24) && (numpix == 1)
++ pixldst30 vst3, 8, %(basereg+0), %(basereg+1), %(basereg+2), 1, mem_operand
+ .else
+ pixldst %(numpix * bpp / 8), vst1, %(bpp), basereg, mem_operand, abits
+ .endif
+@@ -334,6 +366,8 @@ fname:
+
+ .if src_bpp == 32
+ .set src_bpp_shift, 2
++.elseif src_bpp == 24
++ .set src_bpp_shift, 0
+ .elseif src_bpp == 16
+ .set src_bpp_shift, 1
+ .elseif src_bpp == 8
+@@ -345,6 +379,8 @@ fname:
+ .endif
+ .if mask_bpp == 32
+ .set mask_bpp_shift, 2
++.elseif mask_bpp == 24
++ .set mask_bpp_shift, 0
+ .elseif mask_bpp == 8
+ .set mask_bpp_shift, 0
+ .elseif mask_bpp == 0
+@@ -354,6 +390,8 @@ fname:
+ .endif
+ .if dst_w_bpp == 32
+ .set dst_bpp_shift, 2
++.elseif dst_w_bpp == 24
++ .set dst_bpp_shift, 0
+ .elseif dst_w_bpp == 16
+ .set dst_bpp_shift, 1
+ .elseif dst_w_bpp == 8
+@@ -398,6 +436,19 @@ fname:
+ PF mov PF_CTL, H, lsl #4
+ PF add PF_CTL, #(prefetch_distance - 0x10)
+
++.if src_bpp == 24
++ sub SRC_STRIDE, SRC_STRIDE, W
++ sub SRC_STRIDE, SRC_STRIDE, W, lsl #1
++.endif
++.if mask_bpp == 24
++ sub MASK_STRIDE, MASK_STRIDE, W
++ sub MASK_STRIDE, MASK_STRIDE, W, lsl #1
++.endif
++.if dst_w_bpp == 24
++ sub DST_STRIDE, DST_STRIDE, W
++ sub DST_STRIDE, DST_STRIDE, W, lsl #1
++.endif
++
+ init
+ .if regs_shortage
+ push {r0, r1}
+@@ -412,7 +463,8 @@ fname:
+ cmp W, #(pixblock_size * 2)
+ blt 8f
+ 0:
+- /* ensure 16 byte alignment of the destination buffer */
++ /* ensure 16 byte alignment of the destination buffer, except for 24bpp */
++.if dst_w_bpp != 24
+ tst DST_R, #0xF
+ beq 2f
+
+@@ -454,6 +506,7 @@ fname:
+ .endif
+ .endr
+ 2:
++.endif
+
+ pixld_a pixblock_size, dst_r_bpp, \
+ (dst_r_basereg - pixblock_size * dst_r_bpp / 64), DST_R
+@@ -520,11 +573,13 @@ fname:
+ .if mask_bpp != 0
+ add MASK, MASK, MASK_STRIDE, lsl #mask_bpp_shift
+ .endif
++.if (dst_w_bpp != 24)
+ sub DST_W, DST_W, W, lsl #dst_bpp_shift
+-.if src_bpp != 0
++.endif
++.if (src_bpp != 24) && (src_bpp != 0)
+ sub SRC, SRC, W, lsl #src_bpp_shift
+ .endif
+-.if mask_bpp != 0
++.if (mask_bpp != 24) && (mask_bpp != 0)
+ sub MASK, MASK, W, lsl #mask_bpp_shift
+ .endif
+ subs H, H, #1
+@@ -539,7 +594,7 @@ fname:
+ cleanup
+ pop {r4-r12, pc} /* exit */
+
+-8: /* handle small rectangle, width up to 15 pixels */
++8: /* handle small rectangle, width up to (pixblock_size * 2 - 1) pixels */
+ tst W, #pixblock_size
+ beq 1f
+ pixld pixblock_size, dst_r_bpp, \
+@@ -592,11 +647,13 @@ fname:
+ .if mask_bpp != 0
+ add MASK, MASK, MASK_STRIDE, lsl #mask_bpp_shift
+ .endif
++.if (dst_w_bpp != 24)
+ sub DST_W, DST_W, W, lsl #dst_bpp_shift
+-.if src_bpp != 0
++.endif
++.if (src_bpp != 24) && (src_bpp != 0)
+ sub SRC, SRC, W, lsl #src_bpp_shift
+ .endif
+-.if mask_bpp != 0
++.if (mask_bpp != 24) && (mask_bpp != 0)
+ sub MASK, MASK, W, lsl #mask_bpp_shift
+ .endif
+ subs H, H, #1
+diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c
+index 2811099..f3f38a9 100644
+--- a/pixman/pixman-arm-neon.c
++++ b/pixman/pixman-arm-neon.c
+@@ -2065,6 +2065,43 @@ neon_composite_src_8888_8888 (pixman_implementation_t *imp,
+ }
+
+ void
++pixman_composite_src_0888_0888_asm_neon (int32_t w,
++ int32_t h,
++ uint8_t *dst,
++ int32_t dst_stride,
++ uint8_t *src,
++ int32_t src_stride);
++
++static void
++neon_composite_src_0888_0888 (pixman_implementation_t *imp,
++ pixman_op_t op,
++ pixman_image_t * src_image,
++ pixman_image_t * mask_image,
++ pixman_image_t * dst_image,
++ int32_t src_x,
++ int32_t src_y,
++ int32_t mask_x,
++ int32_t mask_y,
++ int32_t dest_x,
++ int32_t dest_y,
++ int32_t width,
++ int32_t height)
++{
++ uint8_t *dst_line;
++ uint8_t *src_line;
++ int32_t dst_stride, src_stride;
++
++ PIXMAN_IMAGE_GET_LINE (src_image, src_x, src_y, uint8_t,
++ src_stride, src_line, 3);
++ PIXMAN_IMAGE_GET_LINE (dst_image, dest_x, dest_y, uint8_t,
++ dst_stride, dst_line, 3);
++
++ pixman_composite_src_0888_0888_asm_neon (width, height,
++ dst_line, dst_stride,
++ src_line, src_stride);
++}
++
++void
+ pixman_composite_over_8888_8888_asm_neon (int32_t w,
+ int32_t h,
+ uint32_t *dst,
+@@ -2449,6 +2486,7 @@ static const pixman_fast_path_t arm_neon_fast_path_array[] =
+ { PIXMAN_OP_SRC, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_x8b8g8r8, neon_composite_src_8888_8888, 0 },
+ { PIXMAN_OP_SRC, PIXMAN_x8b8g8r8, PIXMAN_null, PIXMAN_x8b8g8r8, neon_composite_src_8888_8888, 0 },
+ { PIXMAN_OP_SRC, PIXMAN_b5g6r5, PIXMAN_null, PIXMAN_b5g6r5, neon_composite_src_0565_0565, 0 },
++ { PIXMAN_OP_SRC, PIXMAN_r8g8b8, PIXMAN_null, PIXMAN_r8g8b8, neon_composite_src_0888_0888, 0 },
+ { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_r5g6b5, neon_composite_over_8888_0565, 0 },
+ { PIXMAN_OP_OVER, PIXMAN_a8b8g8r8, PIXMAN_null, PIXMAN_b5g6r5, neon_composite_over_8888_0565, 0 },
+ { PIXMAN_OP_OVER, PIXMAN_a8r8g8b8, PIXMAN_null, PIXMAN_a8r8g8b8, neon_composite_over_8888_8888, 0 },
+--
+cgit v0.8.2
diff --git a/recipes/xorg-lib/pixman/prefetch.patch b/recipes/xorg-lib/pixman/prefetch.patch
new file mode 100644
index 0000000000..c2e856ec25
--- /dev/null
+++ b/recipes/xorg-lib/pixman/prefetch.patch
@@ -0,0 +1,298 @@
+From d0044bfbd596f22ed1560579ea6537b39f3dc1af Mon Sep 17 00:00:00 2001
+From: Siarhei Siamashka <siarhei.siamashka@nokia.com>
+Date: Thu, 29 Oct 2009 19:06:42 +0000
+Subject: ARM: Don't emit prefetch code if prefetch distance is set to 0
+
+Also it is now possible to disable prefetch globally with
+a configuration macro
+---
+diff --git a/pixman/pixman-arm-neon-asm.S b/pixman/pixman-arm-neon-asm.S
+index bca499a..35e6a7e 100644
+--- a/pixman/pixman-arm-neon-asm.S
++++ b/pixman/pixman-arm-neon-asm.S
+@@ -219,33 +219,33 @@
+ vshrn.u16 d7, q2, #3
+ vsli.u16 q2, q2, #5
+ vshll.u8 q14, d16, #8
+- add PF_X, PF_X, #8
++ PF add PF_X, PF_X, #8
+ vshll.u8 q8, d19, #8
+- tst PF_CTL, #0xF
++ PF tst PF_CTL, #0xF
+ vsri.u8 d6, d6, #5
+- addne PF_X, PF_X, #8
++ PF addne PF_X, PF_X, #8
+ vmvn.8 d3, d3
+- subne PF_CTL, PF_CTL, #1
++ PF subne PF_CTL, PF_CTL, #1
+ vsri.u8 d7, d7, #6
+ vshrn.u16 d30, q2, #2
+ vmull.u8 q10, d3, d6
+- pld [PF_SRC, PF_X, lsl #src_bpp_shift]
++ PF pld, [PF_SRC, PF_X, lsl #src_bpp_shift]
+ vmull.u8 q11, d3, d7
+ vmull.u8 q12, d3, d30
+- pld [PF_DST, PF_X, lsl #dst_bpp_shift]
++ PF pld, [PF_DST, PF_X, lsl #dst_bpp_shift]
+ vsri.u16 q14, q8, #5
+- cmp PF_X, ORIG_W
++ PF cmp PF_X, ORIG_W
+ vshll.u8 q9, d18, #8
+ vrshr.u16 q13, q10, #8
+- subge PF_X, PF_X, ORIG_W
++ PF subge PF_X, PF_X, ORIG_W
+ vrshr.u16 q3, q11, #8
+ vrshr.u16 q15, q12, #8
+- subges PF_CTL, PF_CTL, #0x10
++ PF subges PF_CTL, PF_CTL, #0x10
+ vsri.u16 q14, q9, #11
+- ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
+ vraddhn.u16 d20, q10, q13
+ vraddhn.u16 d23, q11, q3
+- ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
+ vraddhn.u16 d22, q12, q15
+ vst1.16 {d28, d29}, [DST_W, :128]!
+ .endm
+@@ -323,20 +323,20 @@ generate_composite_function \
+
+ .macro pixman_composite_src_8888_0565_process_pixblock_tail_head
+ vsri.u16 q14, q8, #5
+- add PF_X, PF_X, #8
+- tst PF_CTL, #0xF
++ PF add PF_X, PF_X, #8
++ PF tst PF_CTL, #0xF
+ vld4.8 {d0, d1, d2, d3}, [SRC]!
+- addne PF_X, PF_X, #8
+- subne PF_CTL, PF_CTL, #1
++ PF addne PF_X, PF_X, #8
++ PF subne PF_CTL, PF_CTL, #1
+ vsri.u16 q14, q9, #11
+- cmp PF_X, ORIG_W
+- pld [PF_SRC, PF_X, lsl #src_bpp_shift]
++ PF cmp PF_X, ORIG_W
++ PF pld, [PF_SRC, PF_X, lsl #src_bpp_shift]
+ vshll.u8 q8, d1, #8
+ vst1.16 {d28, d29}, [DST_W, :128]!
+- subge PF_X, PF_X, ORIG_W
+- subges PF_CTL, PF_CTL, #0x10
++ PF subge PF_X, PF_X, ORIG_W
++ PF subges PF_CTL, PF_CTL, #0x10
+ vshll.u8 q14, d2, #8
+- ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
+ vshll.u8 q9, d0, #8
+ .endm
+
+@@ -363,20 +363,20 @@ generate_composite_function \
+
+ .macro pixman_composite_add_8000_8000_process_pixblock_tail_head
+ vld1.8 {d0, d1, d2, d3}, [SRC]!
+- add PF_X, PF_X, #32
+- tst PF_CTL, #0xF
++ PF add PF_X, PF_X, #32
++ PF tst PF_CTL, #0xF
+ vld1.8 {d4, d5, d6, d7}, [DST_R, :128]!
+- addne PF_X, PF_X, #32
+- subne PF_CTL, PF_CTL, #1
++ PF addne PF_X, PF_X, #32
++ PF subne PF_CTL, PF_CTL, #1
+ vst1.8 {d28, d29, d30, d31}, [DST_W, :128]!
+- cmp PF_X, ORIG_W
+- pld [PF_SRC, PF_X, lsl #src_bpp_shift]
+- pld [PF_DST, PF_X, lsl #dst_bpp_shift]
+- subge PF_X, PF_X, ORIG_W
+- subges PF_CTL, PF_CTL, #0x10
++ PF cmp PF_X, ORIG_W
++ PF pld, [PF_SRC, PF_X, lsl #src_bpp_shift]
++ PF pld, [PF_DST, PF_X, lsl #dst_bpp_shift]
++ PF subge PF_X, PF_X, ORIG_W
++ PF subges PF_CTL, PF_CTL, #0x10
+ vqadd.u8 q14, q0, q2
+- ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
+- ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
+ vqadd.u8 q15, q1, q3
+ .endm
+
+@@ -418,32 +418,32 @@ generate_composite_function \
+ .macro pixman_composite_over_8888_8888_process_pixblock_tail_head
+ vld4.8 {d4, d5, d6, d7}, [DST_R, :128]!
+ vrshr.u16 q14, q8, #8
+- add PF_X, PF_X, #8
+- tst PF_CTL, #0xF
++ PF add PF_X, PF_X, #8
++ PF tst PF_CTL, #0xF
+ vrshr.u16 q15, q9, #8
+ vrshr.u16 q12, q10, #8
+ vrshr.u16 q13, q11, #8
+- addne PF_X, PF_X, #8
+- subne PF_CTL, PF_CTL, #1
++ PF addne PF_X, PF_X, #8
++ PF subne PF_CTL, PF_CTL, #1
+ vraddhn.u16 d28, q14, q8
+ vraddhn.u16 d29, q15, q9
+- cmp PF_X, ORIG_W
++ PF cmp PF_X, ORIG_W
+ vraddhn.u16 d30, q12, q10
+ vraddhn.u16 d31, q13, q11
+ vqadd.u8 q14, q0, q14
+ vqadd.u8 q15, q1, q15
+ vld4.8 {d0, d1, d2, d3}, [SRC]!
+- pld [PF_SRC, PF_X, lsl #src_bpp_shift]
++ PF pld, [PF_SRC, PF_X, lsl #src_bpp_shift]
+ vmvn.8 d22, d3
+- pld [PF_DST, PF_X, lsl #dst_bpp_shift]
++ PF pld, [PF_DST, PF_X, lsl #dst_bpp_shift]
+ vst4.8 {d28, d29, d30, d31}, [DST_W, :128]!
+- subge PF_X, PF_X, ORIG_W
++ PF subge PF_X, PF_X, ORIG_W
+ vmull.u8 q8, d22, d4
+- subges PF_CTL, PF_CTL, #0x10
++ PF subges PF_CTL, PF_CTL, #0x10
+ vmull.u8 q9, d22, d5
+- ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
+ vmull.u8 q10, d22, d6
+- ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
+ vmull.u8 q11, d22, d7
+ .endm
+
+diff --git a/pixman/pixman-arm-neon-asm.h b/pixman/pixman-arm-neon-asm.h
+index d276ab9..a2941ae 100644
+--- a/pixman/pixman-arm-neon-asm.h
++++ b/pixman/pixman-arm-neon-asm.h
+@@ -58,6 +58,11 @@
+ #define RESPECT_STRICT_ALIGNMENT 1
+
+ /*
++ * If set to nonzero value, prefetch is globally disabled
++ */
++#define PREFETCH_GLOBALLY_DISABLED 0
++
++/*
+ * Definitions of supplementary pixld/pixst macros (for partial load/store of
+ * pixel data)
+ */
+@@ -218,37 +223,43 @@
+ * pixels processing like simple copy. Anyway, having prefetch is a must
+ * when working with graphics data.
+ */
++.macro PF a, x:vararg
++.if (ADVANCED_PREFETCH_ENABLED != 0) && (PREFETCH_GLOBALLY_DISABLED == 0)
++ a x
++.endif
++.endm
++
+ .macro cache_preload std_increment, boost_increment
+ .if (src_bpp_shift >= 0) || (dst_r_bpp != 0) || (mask_bpp_shift >= 0)
+ .if regs_shortage
+- ldr ORIG_W, [sp] /* If we are short on regs, ORIG_W is kept on stack */
++ PF ldr ORIG_W, [sp] /* If we are short on regs, ORIG_W is kept on stack */
+ .endif
+ .if std_increment != 0
+- add PF_X, PF_X, #std_increment
++ PF add PF_X, PF_X, #std_increment
+ .endif
+- tst PF_CTL, #0xF
+- addne PF_X, PF_X, #boost_increment
+- subne PF_CTL, PF_CTL, #1
+- cmp PF_X, ORIG_W
++ PF tst PF_CTL, #0xF
++ PF addne PF_X, PF_X, #boost_increment
++ PF subne PF_CTL, PF_CTL, #1
++ PF cmp PF_X, ORIG_W
+ .if src_bpp_shift >= 0
+- pld [PF_SRC, PF_X, lsl #src_bpp_shift]
++ PF pld, [PF_SRC, PF_X, lsl #src_bpp_shift]
+ .endif
+ .if dst_r_bpp != 0
+- pld [PF_DST, PF_X, lsl #dst_bpp_shift]
++ PF pld, [PF_DST, PF_X, lsl #dst_bpp_shift]
+ .endif
+ .if mask_bpp_shift >= 0
+- pld [PF_MASK, PF_X, lsl #mask_bpp_shift]
++ PF pld, [PF_MASK, PF_X, lsl #mask_bpp_shift]
+ .endif
+- subge PF_X, PF_X, ORIG_W
+- subges PF_CTL, PF_CTL, #0x10
++ PF subge PF_X, PF_X, ORIG_W
++ PF subges PF_CTL, PF_CTL, #0x10
+ .if src_bpp_shift >= 0
+- ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_SRC, SRC_STRIDE, lsl #src_bpp_shift]!
+ .endif
+ .if dst_r_bpp != 0
+- ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_DST, DST_STRIDE, lsl #dst_bpp_shift]!
+ .endif
+ .if mask_bpp_shift >= 0
+- ldrgeb DUMMY, [PF_MASK, MASK_STRIDE, lsl #mask_bpp_shift]!
++ PF ldrgeb DUMMY, [PF_MASK, MASK_STRIDE, lsl #mask_bpp_shift]!
+ .endif
+ .endif
+ .endm
+@@ -297,6 +308,12 @@ fname:
+ PF_DST .req r12
+ PF_MASK .req r14
+
++.if prefetch_distance == 0
++ .set ADVANCED_PREFETCH_ENABLED, 0
++.else
++ .set ADVANCED_PREFETCH_ENABLED, 1
++.endif
++
+ .if mask_bpp == 0
+ ORIG_W .req r7 /* saved original width */
+ DUMMY .req r8 /* temporary register */
+@@ -374,12 +391,12 @@ fname:
+ ldr MASK_STRIDE, [sp, #52]
+ .endif
+ mov DST_R, DST_W
+- mov PF_SRC, SRC
+- mov PF_DST, DST_R
+- mov PF_MASK, MASK
+- mov PF_CTL, H, lsl #4
+- /* pf_ctl = 10 | ((h - 1) << 4) */
+- add PF_CTL, #(prefetch_distance - 0x10)
++ PF mov PF_SRC, SRC
++ PF mov PF_DST, DST_R
++ PF mov PF_MASK, MASK
++ /* PF_CTL = prefetch_distance | ((h - 1) << 4) */
++ PF mov PF_CTL, H, lsl #4
++ PF add PF_CTL, #(prefetch_distance - 0x10)
+
+ init
+ .if regs_shortage
+@@ -412,7 +429,7 @@ fname:
+ .else
+ add DST_R, DST_R, #lowbit
+ .endif
+- add PF_X, PF_X, #(lowbit * 8 / dst_w_bpp)
++ PF add PF_X, PF_X, #(lowbit * 8 / dst_w_bpp)
+ sub W, W, #(lowbit * 8 / dst_w_bpp)
+ 1:
+ .endif
+@@ -444,7 +461,7 @@ fname:
+ (src_basereg - pixblock_size * src_bpp / 64), SRC
+ pixld pixblock_size, mask_bpp, \
+ (mask_basereg - pixblock_size * mask_bpp / 64), MASK
+- add PF_X, PF_X, #pixblock_size
++ PF add PF_X, PF_X, #pixblock_size
+ process_pixblock_head
+ cache_preload 0, pixblock_size
+ subs W, W, #(pixblock_size * 2)
+@@ -468,7 +485,7 @@ fname:
+ pixld chunk_size, src_bpp, src_basereg, SRC
+ pixld chunk_size, mask_bpp, mask_basereg, MASK
+ pixld_a chunk_size, dst_r_bpp, dst_r_basereg, DST_R
+- add PF_X, PF_X, #chunk_size
++ PF add PF_X, PF_X, #chunk_size
+ 1:
+ .endif
+ .endr
+--
+cgit v0.8.2
diff --git a/recipes/xorg-lib/pixman_git.bb b/recipes/xorg-lib/pixman_git.bb
index 8a0ee265fd..ffca7becce 100644
--- a/recipes/xorg-lib/pixman_git.bb
+++ b/recipes/xorg-lib/pixman_git.bb
@@ -4,10 +4,10 @@ DESCRIPTION = "Low-level pixel manipulation library."
LICENSE = "X11"
PV = "0.17.1"
-PR = "r2"
+PR = "r3"
PR_append = "+gitr${SRCREV}"
-SRCREV = "dc46ad274a47d351bacf3c2167c359d23dbaf8b3"
+SRCREV = "67bf739187cd43b5fff754b25693f76bb788d1fa"
DEFAULT_PREFERENCE = "-1"
DEFAULT_PREFERENCE_angstrom = "1"
@@ -22,6 +22,8 @@ file://0007-ARM-Enabled-new-NEON-optimizations.patch;patch=1 \
file://pixman-28986.patch;patch=1 \
file://nearest-neighbour.patch;patch=1 \
file://over-8888-0565.patch;patch=1 \
+file://prefetch.patch;patch=1 \
+file://neon-24bpp.patch;patch=1 \
"
S = "${WORKDIR}/git"