[oe-commits] [meta-openembedded] 51/55: recipes: remove blacklisted recipes

git at git.openembedded.org git at git.openembedded.org
Wed Aug 30 09:42:37 UTC 2017


This is an automated email from the git hooks/post-receive script.

martin_jansa pushed a commit to branch master-next
in repository meta-openembedded.

commit 2f3705737abad5728cff7026871fbbddb6f70a61
Author: Martin Jansa <Martin.Jansa at gmail.com>
AuthorDate: Thu Apr 27 11:04:51 2017 +0200

    recipes: remove blacklisted recipes
    
    * as PNBLACKLIST message says, these recipes are blacklisted for long
      time and nobody showed any interest to fix them
    * remove all unused .patch and .inc files as well
    
    Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
---
 .../conf/distro/include/efl-from-svn-recipes.inc   |   43 -
 meta-efl/recipes-devtools/python/python-edbus.inc  |   46 -
 .../recipes-devtools/python/python-edbus_1.7.0.bb  |    8 -
 meta-efl/recipes-devtools/python/python-efl.inc    |   71 -
 .../recipes-devtools/python/python-efl_1.15.0.bb   |    6 -
 meta-efl/recipes-devtools/python/python-efl_git.bb |   11 -
 meta-efl/recipes-efl/e17/cpu/configure.patch       |   13 -
 meta-efl/recipes-efl/e17/cpu_svn.bb                |   12 -
 meta-efl/recipes-efl/e17/diskio_svn.bb             |   10 -
 meta-efl/recipes-efl/e17/e-module.inc              |   19 -
 .../0001-dbus-stuff-Convert-to-eldbus.patch        |  204 -
 meta-efl/recipes-efl/e17/e-tasks_git.bb            |   34 -
 meta-efl/recipes-efl/e17/e-wm-theme-b-and-w_svn.bb |   37 -
 .../e17/e-wm-theme-illume-efenniht/LICENSE         |   25 -
 .../e17/e-wm-theme-illume-efenniht_svn.bb          |   39 -
 meta-efl/recipes-efl/e17/e-wm.inc                  |  200 -
 .../e17/e-wm/0001-Fix-incorrect-message-type.patch |   28 -
 .../e17/e-wm/0001-configure.ac-add-foreign.patch   |   29 -
 meta-efl/recipes-efl/e17/e-wm/applications.menu    |  105 -
 .../recipes-efl/e17/e-wm/enlightenment_start.oe    |    9 -
 meta-efl/recipes-efl/e17/e-wm_0.18.8.bb            |   17 -
 meta-efl/recipes-efl/e17/e-wm_0.19.10.bb           |   21 -
 meta-efl/recipes-efl/e17/e-wm_git.bb               |   16 -
 meta-efl/recipes-efl/e17/edje-viewer_svn.bb        |   18 -
 meta-efl/recipes-efl/e17/elbow_git.bb              |   26 -
 meta-efl/recipes-efl/e17/elfe_git.bb               |   17 -
 .../recipes-efl/e17/elmdentica/configure.patch     |   13 -
 meta-efl/recipes-efl/e17/elmdentica_svn.bb         |   23 -
 meta-efl/recipes-efl/e17/emprint_svn.bb            |   14 -
 ...position-as-percent-and-define-a-1-second.patch |  133 -
 meta-efl/recipes-efl/e17/enjoy/configure.patch     |   13 -
 meta-efl/recipes-efl/e17/enjoy_git.bb              |   50 -
 meta-efl/recipes-efl/e17/ephoto/configure.patch    |   13 -
 meta-efl/recipes-efl/e17/ephoto_svn.bb             |   21 -
 .../recipes-efl/e17/exalt-client/configure.patch   |   28 -
 meta-efl/recipes-efl/e17/exalt-client_svn.bb       |   26 -
 meta-efl/recipes-efl/e17/exalt_svn.bb              |   36 -
 meta-efl/recipes-efl/e17/exquisite-theme-illume.bb |   41 -
 .../recipes-efl/e17/exquisite-theme-illume/LICENSE |   25 -
 meta-efl/recipes-efl/e17/exquisite/exquisite-init  |   40 -
 meta-efl/recipes-efl/e17/exquisite/splashfuncs     |   29 -
 meta-efl/recipes-efl/e17/exquisite_svn.bb          |   43 -
 meta-efl/recipes-efl/e17/flame/configure.patch     |   13 -
 meta-efl/recipes-efl/e17/flame_svn.bb              |   17 -
 meta-efl/recipes-efl/e17/forecasts/configure.patch |   13 -
 meta-efl/recipes-efl/e17/forecasts_svn.bb          |   12 -
 ...file-update-KEYBOARDS_DIR-for-new-illume2.patch |   23 -
 .../recipes-efl/e17/illume-keyboards-shr/LICENSE   |   25 -
 meta-efl/recipes-efl/e17/news_svn.bb               |   14 -
 meta-efl/recipes-efl/e17/places/configure.patch    |   13 -
 meta-efl/recipes-efl/e17/places_svn.bb             |   18 -
 meta-efl/recipes-efl/e17/rage_svn.bb               |   15 -
 meta-efl/recipes-efl/e17/rain/configure.patch      |   13 -
 meta-efl/recipes-efl/e17/rain_svn.bb               |   18 -
 .../screenshot/screenshot-fix-mkinstalldirs.patch  |   23 -
 meta-efl/recipes-efl/e17/screenshot_svn.bb         |   16 -
 meta-efl/recipes-efl/e17/terminology.inc           |   22 -
 meta-efl/recipes-efl/e17/terminology_0.9.1.bb      |   10 -
 meta-efl/recipes-efl/e17/uptime/configure.patch    |   13 -
 meta-efl/recipes-efl/e17/uptime_svn.bb             |   12 -
 meta-efl/recipes-efl/efl/azy_svn.bb                |   37 -
 .../efl/ecore/fix-ecore-fb-initialization.patch    |   41 -
 meta-efl/recipes-efl/efl/edbus.inc                 |   29 -
 meta-efl/recipes-efl/efl/edbus_1.7.9.bb            |   16 -
 meta-efl/recipes-efl/efl/edje-fpu.inc              |    6 -
 meta-efl/recipes-efl/efl/efl.inc                   |  290 -
 ...igure.ac-Don-t-check-for-Xprint-extension.patch |   27 -
 .../efl/efl/0001-evas_3d-Add-Eet.h-includes.patch  |   51 -
 meta-efl/recipes-efl/efl/efl_1.15.1.bb             |   29 -
 .../efl/elementary-theme-efenniht/LICENSE          |   25 -
 .../efl/elementary-theme-efenniht_svn.bb           |   44 -
 meta-efl/recipes-efl/efl/elementary.inc            |   89 -
 ...e-elementary_codegen-defined-in-configure.patch |   29 -
 meta-efl/recipes-efl/efl/elementary_1.15.1.bb      |   18 -
 .../recipes-efl/efl/emotion-generic-players.inc    |   14 -
 .../efl/emotion-generic-players_1.15.0.bb          |   14 -
 meta-efl/recipes-efl/efl/engrave_svn.bb            |   15 -
 ...am-use-common-auth-instead-of-system-auth.patch |   26 -
 meta-efl/recipes-efl/efl/entrance/entrance.service |    8 -
 meta-efl/recipes-efl/efl/entrance_svn.bb           |   43 -
 ...alias-functions-poppler-has-dropped-them-.patch |  132 -
 ...r_postscript.cpp-fix-build-for-poppler-AP.patch |   45 -
 meta-efl/recipes-efl/efl/epdf_svn.bb               |   35 -
 meta-efl/recipes-efl/efl/evas-generic-loaders.inc  |   73 -
 .../recipes-efl/efl/evas-generic-loaders_1.15.0.bb |   14 -
 meta-efl/recipes-efl/efl/expedite.inc              |   25 -
 meta-efl/recipes-efl/efl/expedite_1.7.9.bb         |   28 -
 meta-efl/recipes-efl/efl/expedite_git.bb           |   31 -
 .../efl/libeflvala/disable.eina.test.patch         |   44 -
 meta-efl/recipes-efl/efl/libeflvala_svn.bb         |   23 -
 meta-efl/recipes-efl/efl/libeweather_svn.bb        |   48 -
 .../packagegroups/packagegroup-efl-sdk.bb          |   19 -
 .../packagegroups/packagegroup-efl-sdk.inc         |   12 -
 .../packagegroup-efl-standalone-sdk-target.bb      |   19 -
 .../packagegroups/packagegroup-x11-illume.bb       |   30 -
 meta-efl/recipes-efl/webkit/webkit-efl.inc         |   69 -
 ...on.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch |   46 -
 ...rs.cmake-Add-Wno-error-deprecated-declara.patch |   45 -
 .../0003-FEBlendNEON.h-fix-missing-semicolon.patch |   35 -
 ...ld-with-EFL-1.12-https-bugs.webkit.org-sh.patch |  146 -
 .../0005-Fix-the-build-with-cmake-3.patch          |  104 -
 ...sEfl.cmake-Fix-build-with-newer-CMake-3.4.patch |   30 -
 meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb   |   12 -
 meta-efl/recipes-navigation/mcnavi/mcnavi_0.3.4.bb |   19 -
 .../recipes-utils/dmapi/dmapi_2.2.12.bb            |   33 -
 .../files/dmapi_aarch64_configure_support.patch    |   37 -
 .../dmapi/files/remove-install-as-user.patch       |  205 -
 meta-gnome/recipes-apps/cheese/cheese_2.30.1.bb    |   26 -
 .../epdfview/epdfview/browser_command.patch        |   17 -
 .../epdfview/epdfview/fix-format.patch             |   19 -
 .../epdfview/epdfview/glib-single-include.patch    |   17 -
 .../epdfview/epdfview/swap-colors.patch            |   43 -
 meta-gnome/recipes-apps/epdfview/epdfview_0.1.8.bb |   25 -
 .../recipes-apps/gnome-mplayer/gmtk_1.0.5.bb       |   18 -
 .../gnome-mplayer/gnome-mplayer_1.0.5.bb           |   32 -
 .../gtk-theme-torturer/gtk-theme-torturer_git.bb   |   25 -
 .../recipes-gnome/gcalctool/gcalctool_5.32.0.bb    |   20 -
 .../gdm/gdm/0001-Remove-user-switch-applet.patch   | 2281 -----
 ...nager.c-avoid-displaying-system-users-in-.patch |   34 -
 .../gdm/gdm/sysrooted-pkg-config.patch             |   37 -
 meta-gnome/recipes-gnome/gdm/gdm_2.32.2.bb         |  108 -
 .../gnome-backgrounds/gnome-backgrounds_2.32.0.bb  |   21 -
 .../gnome-control-center_2.32.1.bb                 |   35 -
 .../gnome-desktop/gnome-desktop_2.32.1.bb          |   28 -
 .../0001-Add-support-for-DeviceAutomountHint.patch |   74 -
 .../0002-Require-libnotify-0.6.1.patch             |   49 -
 .../gnome-disk-utility/disable-scrollkeeper.patch  |   27 -
 .../gnome-disk-utility/fix-dbus-interfaces.patch   |   34 -
 .../gnome-disk-utility/sysrooted-pkg-config.patch  |   37 -
 .../gnome-disk-utility_2.32.0.bb                   |   45 -
 .../gnome-menus/gnome-menus_2.30.5.bb              |   30 -
 .../0001-Add-gnome-doc-utils.make.patch            |  730 --
 .../gnome-panel/0001-Fix-build-with-gcc-5.patch    |   35 -
 .../gnome-panel/gnome-panel/as-needed.patch        |   36 -
 .../gnome-panel/gnome-panel/idl-sysroot.patch      |   22 -
 .../gnome-panel/gnome-panel3_3.0.2.bb              |   51 -
 .../gnome-panel/gnome-panel_2.32.1.bb              |   48 -
 .../0001-Makefile.am-don-t-build-help-man.patch    |   37 -
 .../sysrooted-pkg-config.patch                     |   35 -
 .../gnome-power-manager_2.32.0.bb                  |   54 -
 .../gnome-session/use_G_GINT64_FORMAT.patch        |   61 -
 .../gnome-session/gnome-session_2.32.1.bb          |   32 -
 .../files/0001-Require-libnotify-0.6.0.patch       |   81 -
 .../gnome-settings-daemon_2.32.1.bb                |   43 -
 .../files/0001-Fix-glib-includes.patch             |  101 -
 ...0002-src-procman.cpp-include-main-gtkmm.h.patch |   49 -
 ...ove-pkg-config-check-for-gnome-icon-theme.patch |   30 -
 .../gnome-system-monitor_2.28.2.bb                 |   35 -
 .../0001-Makefile.am-do-not-build-help.patch       |   28 -
 .../recipes-gnome/gnome/gnome-terminal_2.30.2.bb   |   22 -
 .../recipes-gnome/gnome/libgnomecups_0.2.3.bb      |   25 -
 ...0001-configure-use-pkgconfig-for-freetype.patch |   37 -
 .../gnome/libgnomeprint/bison3-support.patch       |   30 -
 .../gnome/libgnomeprint/fix.includes.patch         |   11 -
 .../gnome/libgnomeprint/freetype.patch             |   38 -
 .../recipes-gnome/gnome/libgnomeprint_2.18.8.bb    |   28 -
 ...n-drop-introspection-macros-replace-them-.patch |   84 -
 .../gnumeric/gnumeric/do-not-use-srcdir.patch      |   15 -
 .../recipes-gnome/gnumeric/gnumeric_1.12.0.bb      |   49 -
 .../0001-Drop-help-directory-from-build.patch      |   25 -
 .../recipes-gnome/gthumb/files/parallel.patch      |  158 -
 meta-gnome/recipes-gnome/gthumb/gthumb_2.12.4.bb   |   35 -
 .../recipes-gnome/gweather/libgweather3_3.0.2.bb   |   28 -
 .../recipes-gnome/gweather/libgweather_2.30.3.bb   |   24 -
 .../nautilus/nautilus/idl-sysroot.patch            |    7 -
 .../nautilus/no-G_DISABLE_DEPRECATED.patch         |   44 -
 .../recipes-gnome/nautilus/nautilus3_3.2.1.bb      |   54 -
 .../recipes-gnome/nautilus/nautilus_2.32.2.bb      |   43 -
 meta-gnome/recipes-gnome/pimlico/contacts.inc      |   28 -
 .../contacts-conditionally-install-schema.patch    |   37 -
 .../recipes-gnome/pimlico/contacts/make-382.patch  |   16 -
 meta-gnome/recipes-gnome/pimlico/contacts_0.9.bb   |   20 -
 meta-gnome/recipes-gnome/pimlico/contacts_git.bb   |   19 -
 meta-gnome/recipes-gnome/pimlico/tasks.inc         |   10 -
 meta-gnome/recipes-gnome/pimlico/tasks_0.19.bb     |   16 -
 meta-gnome/recipes-gnome/pimlico/tasks_git.bb      |   12 -
 .../add-angstrom-distro.patch                      |   41 -
 .../system-tools/system-tools-backends_2.10.2.bb   |   54 -
 .../files/0001-Makefile.am-don-t-build-help.patch  |   39 -
 meta-gnome/recipes-gnome/zenity/zenity_2.32.1.bb   |   21 -
 .../florence/files/0001-Fix-glib-includes.patch    |   33 -
 ...igure.ac-fix-paths-to-introspection-tools.patch |   41 -
 .../recipes-support/goffice/goffice_0.10.1.bb      |   51 -
 .../enable-sqlite-crosscompile.patch               |   13 -
 .../fix-removable-media-detection.patch            |   30 -
 .../tracker/tracker-0.14.2/giflib5-support.patch   |  126 -
 .../recipes-support/tracker/tracker_0.14.2.bb      |   88 -
 ...ering-of-LDADD-options-to-fix-a-compilati.patch |   28 -
 .../gpe-scap/gpe-scap/use.libsoup-2.4.patch        |   42 -
 meta-gpe/recipes-graphics/gpe-scap/gpe-scap_1.4.bb |   24 -
 .../libgpewidget/libgpewidget/glib-2.32.patch      |   11 -
 .../libgpewidget/libgpewidget/pkgconfig.patch      |   11 -
 .../libgpewidget/libgpewidget_0.117.bb             |   25 -
 .../minilite/minilite/makefile-fix.patch           |   11 -
 .../recipes-graphics/minilite/minilite_0.50.bb     |   18 -
 .../fbreader/fbreader-0.12.10/Makefile.patch       |   22 -
 .../fbreader-0.12.10/fix-cflags-fribidi.patch      |   11 -
 .../fbreader-0.12.10/fix-return-code-gcc6.patch    |   11 -
 .../fbreader/fbreader-0.12.10/gcc45.patch          |   20 -
 .../recipes-support/fbreader/fbreader_0.12.10.bb   |   46 -
 meta-gpe/recipes-support/fbreader/fbreader_git.bb  |   45 -
 ...ation-of-the-icons-when-RESOLUTION-is-set.patch |   40 -
 .../recipes-dvb/dvb-apps/dvb-apps_1.1.1.bb         |  136 -
 .../tvheadend/0001-Fix-checks-for-sse2-mmx.patch   |   40 -
 ...efile-Ignore-warning-about-wrong-includes.patch |   31 -
 .../0001-disable-varargs-warning-on-clang.patch    |   32 -
 .../0001-dvr-Use-labs-instead-of-abs.patch         |   37 -
 ...verride-forced-overrdiing-og-CC-STRIP-and.patch |   40 -
 .../recipes-dvb/tvheadend/tvheadend_git.bb         |   43 -
 .../0001-Update-to-p8-platform.patch               |  427 -
 .../kodi/kodi-addon-pvr-hts_git.bb                 |   57 -
 .../0001-fix-cross-compile-badness.patch           |   40 -
 .../kodi-platform-02_no-multi-lib.patch            |   12 -
 .../recipes-mediacenter/kodi/kodi-platform_git.bb  |   39 -
 .../recipes-mediacenter/kodi/kodi-startup.bb       |   24 -
 .../recipes-mkv/mkvtoolnix/mkvtoolnix_git.bb       |   57 -
 .../coriander/coriander/cross-compile.patch        |   17 -
 .../coriander/coriander_2.0.2.bb                   |   17 -
 .../0001-aacdec-check-channel-count.patch          |   34 -
 .../0001-alac-fix-nb_samples-order-case.patch      |   30 -
 .../0001-alsdec-check-block-length.patch           |   61 -
 ...ac3dec-Check-coding-mode-against-channels.patch |   37 -
 ...util-fix-signedness-in-sizeof-comparissio.patch |   40 -
 ...le-use-av_image_get_linesize-to-calculate.patch |   50 -
 ...c-parser-reset-indexes-on-realloc-failure.patch |   50 -
 ...a-Perform-pointer-advance-and-checks-befo.patch |   81 -
 .../0001-avcodec-smc-fix-off-by-1-error.patch      |   32 -
 ...egtsenc-Check-data-array-size-in-mpegts_w.patch |   69 -
 .../0001-eamad-fix-out-of-array-accesses.patch     |   29 -
 ...-error-concealment-initialize-block-index.patch |   29 -
 ...alment-Check-that-the-picture-is-not-in-a.patch |   37 -
 .../0001-ffserver-set-oformat.patch                |   36 -
 ...t-ref-count-check-and-limit-fix-out-of-ar.patch |   29 -
 ...t-parameters-from-SPS-whenever-it-changes.patch |  145 -
 ...rror-concealment-when-SPS-and-slices-are-.patch |   33 -
 .../0001-h264_sei-Fix-infinite-loop.patch          |   39 -
 ...01-huffyuvdec-Check-init_vlc-return-codes.patch |   87 -
 .../0001-huffyuvdec-Skip-len-0-cases.patch         |   61 -
 ...f-compute-probe-buffer-size-more-reliably.patch |   45 -
 .../0001-mjpegdec-check-SE.patch                   |   32 -
 ...heck-RLE-size-before-copying.-Fix-out-of-.patch |   34 -
 ...er-dont-access-out-of-array-elements-at-t.patch |   44 -
 ...array-index-before-use-fix-out-of-array-a.patch |   30 -
 .../0001-qdm2dec-fix-buffer-overflow.patch         |   58 -
 ...001-roqvideodec-check-dimensions-validity.patch |   36 -
 ...Check-that-the-last-indexes-are-within-th.patch |   32 -
 ...-vp3-Copy-all-3-frames-for-thread-updates.patch |   32 -
 ...-read-for-negative-tokens-and-memleaks-on.patch |  183 -
 ...o-check-chunk-sizes-before-reading-chunks.patch |   51 -
 ...egdec-check-bits-per-pixel-for-changes-si.patch |   68 -
 .../gst-ffmpeg-0.10.13/configure-fix.patch         |   22 -
 .../gst-ffmpeg-CVE-2013-0855.patch                 |  100 -
 .../gst-ffmpeg-CVE-2013-3674.patch                 |   26 -
 .../gst-ffmpeg-fix-CVE-2011-4352.patch             |   64 -
 .../gst-ffmpeg-fix-CVE-2014-7933.patch             |   38 -
 .../gst-ffmpeg-fix-CVE-2014-8542.patch             |   38 -
 .../gst-ffmpeg-fix-CVE-2014-8543.patch             |   35 -
 .../gst-ffmpeg-fix-CVE-2014-8544.patch             |   56 -
 .../gst-ffmpeg-fix-CVE-2014-8545.patch             |   36 -
 .../gst-ffmpeg-fix-CVE-2014-8546.patch             |   35 -
 .../gst-ffmpeg-fix-CVE-2014-8547.patch             |   59 -
 .../gst-ffmpeg-fix-CVE-2014-9318.patch             |   37 -
 .../gst-ffmpeg-fix-CVE-2014-9603.patch             |   41 -
 .../gst-ffmpeg-0.10.13/h264_qpel_mmx.patch         |   57 -
 .../gst-ffmpeg-0.10.13/libav-9.patch               | 9304 --------------------
 .../gst-ffmpeg-0.10.13/libav_e500mc.patch          |   21 -
 .../gst-ffmpeg-0.10.13/libav_e5500.patch           |   19 -
 .../gstreamer-0.10/gst-ffmpeg_0.10.13.bb           |  103 -
 .../gstreamer/files/display.patch                  |   60 -
 .../recipes-multimedia/gstreamer/gst123_0.3.1.bb   |   17 -
 .../recipes-daemons/dnrd/dnrd_2.20.3.bb            |   41 -
 .../libnftnl/libnftnl/snprintf_shadow.patch        |  224 -
 ...1-testmmap-fix-compile-issue-with-gcc-5.x.patch |   33 -
 .../netmap/files/makefile_fixup.patch              |   97 -
 .../recipes-kernel/netmap/netmap-modules_git.bb    |   92 -
 meta-networking/recipes-kernel/netmap/netmap.inc   |   17 -
 .../recipes-kernel/netmap/netmap_git.bb            |   37 -
 .../recipes-protocols/accel-ppp/accel-ppp_git.bb   |   45 -
 .../example21.cpp-remove-deprecated-code.patch     |   47 -
 .../libtevent/do-not-check-xsltproc-manpages.patch |   16 -
 .../recipes-support/nis/ypbind-mt_2.2.bb           |   53 -
 ...x-lib64-can-not-be-shiped-in-64bit-target.patch |   75 -
 meta-oe/recipes-benchmark/pmbw/pmbw_git.bb         |   30 -
 .../obsolete_automake_macros.patch                 |   14 -
 meta-oe/recipes-connectivity/bluez/bluez4.inc      |   47 -
 .../recipes-connectivity/gnokii/gnokii_0.6.31.bb   |   36 -
 .../recipes-connectivity/soft66/files/fix-ar.patch |   13 -
 meta-oe/recipes-connectivity/soft66/soft66_git.bb  |   20 -
 .../telepathy/libtelepathy/doublefix.patch         |   18 -
 .../telepathy/libtelepathy/prefer_python_2.5.patch |   15 -
 .../telepathy/libtelepathy_0.3.3.bb                |   26 -
 .../tmc-Makefile-fix-race.patch                    |   76 -
 .../telepathy/telepathy-mission-control_5.16.1.bb  |   53 -
 .../0002-Modify-Makefile-for-cross-compile.patch   |  292 -
 .../zeroc-ice/zeroc-ice_3.5.1.bb                   |   87 -
 .../fakeroot/fakeroot-native_1.18.4.bb             |   15 -
 meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb   |   30 -
 .../packagegroups/packagegroup-cli-tools.bb        |   49 -
 .../proxy-libintl-20100902/soname.patch            |   23 -
 ...e-as-interpreter-for-sketches-instead-of-.patch |   29 -
 meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb      |  118 -
 ...op-using-relative-path-for-scsilib.c-link.patch |   29 -
 .../recipes-devtools/dt/dt/Use-tcsh-shell.patch    |   92 -
 .../dt/dt/dt-default-source-define.patch           |   18 -
 .../dt/dt/dt-wformat-security.patch                |   48 -
 meta-oe/recipes-devtools/dt/dt_18.32.bb            |   49 -
 .../ltp-ddt/ltp-Do-not-link-against-libfl.patch    |   31 -
 meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb  |   97 -
 ...deprecated-glib-functions-and-use-the-new.patch |  166 -
 .../packagekit/packagekit-0.5.6/configurefix.patch |   13 -
 .../packagekit/packagekit-0.5.6/opkgfixes.patch    |  422 -
 .../packagekit/packagekit_0.5.6.bb                 |   65 -
 .../vala-dbus-binding-tool.inc                     |   16 -
 ...igure.ac-don-t-use-dash-in-m4-macro-names.patch |   34 -
 .../vala-dbus-binding-tool_0.4.0.bb                |    6 -
 .../vala-dbus-binding-tool_git.bb                  |   20 -
 ...x-lib64-can-not-be-shiped-in-64bit-target.patch |   31 -
 .../openlmi/openlmi-networking_0.3.1.bb            |   32 -
 .../openlmi/openlmi-providers/0001-fix-error.patch |   26 -
 ...x-lib64-can-not-be-shiped-in-64bit-target.patch |   31 -
 .../openlmi/openlmi-providers_0.6.0.bb             |   56 -
 .../openlmi/openlmi-storage_0.8.1.bb               |   34 -
 .../recipes-extended/subsurface/subsurface_git.bb  |   21 -
 .../gtkextra/files/remove-tutorial.patch           |   12 -
 meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb   |   19 -
 ...001-tests-main.c-fix-build-with-glib-2.36.patch |   32 -
 meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb     |   41 -
 meta-oe/recipes-graphics/clutter/clutter-box2d.inc |   15 -
 .../recipes-graphics/clutter/clutter-box2d_git.bb  |   19 -
 meta-oe/recipes-graphics/fim/files/cross_cc.patch  |   29 -
 meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb        |   52 -
 meta-oe/recipes-graphics/libsexy/libsexy.inc       |   15 -
 .../libsexy/libsexy/libsexy-pkgconfig-fixes.patch  |   15 -
 meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb |    8 -
 .../libvncserver/0002-format_string.patch          |   21 -
 ...0002-Fix-image-handling-integer-overflows.patch |  343 -
 .../0003-Fix-build-failure-with-ld-as-needed.patch |   37 -
 .../slim/slim/0004-Add-support-libpng15.patch      |   50 -
 ...Remove-path-of-gcc-amd-g-and-version-of-g.patch |   30 -
 ...emove-localhost-from-Authenticator-of-pam.patch |   32 -
 .../slim/slim/0007-Fix-tty-slowness.patch          |   47 -
 .../slim/slim/0008-restart-Xserver-if-killed.patch |  161 -
 meta-oe/recipes-graphics/slim/slim_1.3.2.bb        |   82 -
 .../recipes-graphics/wayland/wayland-fits_git.bb   |   35 -
 .../xorg-driver/xf86-input-mtev/fix-it.patch       |  153 -
 .../xorg-driver/xf86-input-mtev_git.bb             |   22 -
 ...1-Add-config.h-include-to-src-lx_memory.c.patch |   41 -
 .../xorg-driver/xf86-video-geode_2.11.16.bb        |   16 -
 .../0001-fix-build-with-KMS-disabled.patch         |   29 -
 ...lamo-driver-remove-references-to-mibstore.patch |   48 -
 ...-glamo-kms-driver-drop-unused-xf86_config.patch |   35 -
 ...mo-driver-adapt-to-xserver-0.13-video-API.patch |  279 -
 ...-glamo.h-use-const-for-jbt6k74_state_path.patch |   29 -
 .../xorg-driver/xf86-video-glamo_git.bb            |   25 -
 meta-oe/recipes-kernel/ktap/ktap-module_git.bb     |   22 -
 meta-oe/recipes-kernel/ktap/ktap.inc               |   26 -
 meta-oe/recipes-kernel/ktap/ktap_git.bb            |   19 -
 meta-oe/recipes-multimedia/minidlna/minidlna.inc   |   39 -
 .../recipes-multimedia/minidlna/minidlna_1.1.5.bb  |    6 -
 ...on-t-disable-ASS-support-when-explicitly-.patch |   26 -
 ...artially-port-libtheora-glue-code-to-Theo.patch |  136 -
 meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb |  159 -
 meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb     |  114 -
 .../recipes-sato/claws-mail/claws-mail_3.9.0.bb    |   56 -
 .../claws-plugin-gtkhtml2-viewer/configure.patch   |   52 -
 .../claws-plugin-gtkhtml2-viewer_0.31.bb           |   24 -
 .../claws-mail/claws-plugin-mailmbox_1.15.bb       |   20 -
 .../claws-mail/claws-plugin-rssyl/configure.patch  |   53 -
 .../claws-mail/claws-plugin-rssyl_0.34.bb          |   20 -
 .../claws-mail/sylpheed/glib-2.32.patch            |   11 -
 meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb  |   33 -
 meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb |   42 -
 .../emacs/emacs-23.4/nostdlib-unwind.patch         |   16 -
 .../emacs/emacs-23.4/use-qemu.patch                |  104 -
 meta-oe/recipes-support/emacs/emacs.inc            |  147 -
 meta-oe/recipes-support/emacs/emacs_23.4.bb        |   12 -
 .../recipes-support/farsight/farsight2_0.0.22.bb   |   34 -
 meta-oe/recipes-support/fftw/benchfft_3.1.bb       |   21 -
 .../flite-alsa-1.3-configure-with-audio.patch      |   12 -
 meta-oe/recipes-support/flite/flite-alsa_1.3.bb    |   21 -
 meta-oe/recipes-support/flite/flite.inc            |   33 -
 meta-oe/recipes-support/iksemel/iksemel_1.4.bb     |   19 -
 meta-oe/recipes-support/libdbi/libdbi-drivers.inc  |   51 -
 .../libdbi/libdbi-drivers_0.8.3-1.bb               |    8 -
 .../libetpan-0.57/libetpan-autoreconf.patch        |   12 -
 .../libetpan/libetpan-0.57/libetpan-ldflags.patch  |   11 -
 .../libetpan/libetpan-0.57/sepbuild.patch          |   16 -
 meta-oe/recipes-support/libetpan/libetpan_0.57.bb  |   30 -
 meta-oe/recipes-support/ode/ode/configure.patch    |   13 -
 meta-oe/recipes-support/ode/ode_0.13.bb            |   31 -
 .../open-vcdiff/open-vcdiff_0.8.4.bb               |   21 -
 .../recipes-support/opencv/opencv-samples_2.4.bb   |   41 -
 ...ector-instead-of-vector-as-suggests-Eigen.patch |   49 -
 meta-oe/recipes-support/opencv/opencv_2.4.bb       |  106 -
 .../openmotif/openmotif/configure.patch            |   15 -
 .../recipes-support/openmotif/openmotif_2.3.3.bb   |   48 -
 meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb |  115 -
 .../psqlodbc-donot-use-the-hardcode-libdir.patch   |   26 -
 .../files/psqlodbc-fix-for-ptest-support.patch     |  148 -
 ...bc-remove-some-checks-for-cross-compiling.patch |  118 -
 meta-oe/recipes-support/psqlodbc/psqlodbc.inc      |   50 -
 .../psqlodbc/psqlodbc_09.05.0300.bb                |   16 -
 .../vala-terminal/vala-terminal_git.bb             |   20 -
 .../vboxguestdrivers/vboxguestdrivers_4.3.36.bb    |   72 -
 .../xchat/xchat-2.8.8/automake-foreign.patch       |   11 -
 .../fix-includes-for-separate-build.patch          |   78 -
 .../xchat/xchat-2.8.8/glib-2.32.patch              |   44 -
 meta-oe/recipes-support/xchat/xchat_2.8.8.bb       |   39 -
 .../files/tweak-native-language-support.patch      |   44 -
 meta-ruby/recipes-devtools/ruby/bundler_git.bb     |   33 -
 410 files changed, 30810 deletions(-)

diff --git a/meta-efl/conf/distro/include/efl-from-svn-recipes.inc b/meta-efl/conf/distro/include/efl-from-svn-recipes.inc
deleted file mode 100644
index 23a8eae..0000000
--- a/meta-efl/conf/distro/include/efl-from-svn-recipes.inc
+++ /dev/null
@@ -1,43 +0,0 @@
-EFL_PREFERRED_VERSION ?= "1.7.4+svn%"
-EFL_PREFERRED_PYTHON_VERSION ?= "1.7.0+svn%"
-
-PREFERRED_VERSION_e-wm ?= "0.17.0+svnr%"
-
-PREFERRED_VERSION_ecore ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_ecore-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_edbus ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_edbus-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_edje ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_edje-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_edje-nativesdk ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_eeze ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_eeze-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_efreet ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_efreet-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_eina ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_eina-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_embryo ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_embryo-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_evas ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_evas-generic-loaders ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_evas-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_expedite ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_expedite-native ?= "${EFL_PREFERRED_VERSION}"
-
-PREFERRED_VERSION_eet ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_eet-native ?= "${EFL_PREFERRED_VERSION}"
-
-PREFERRED_VERSION_eio ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_eio-native ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_emotion ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_ethumb ?= "${EFL_PREFERRED_VERSION}"
-PREFERRED_VERSION_elementary ?= "${EFL_PREFERRED_VERSION}"
-
-PREFERRED_VERSION_python-elementary ?= "${EFL_PREFERRED_PYTHON_VERSION}"
-PREFERRED_VERSION_python-ecore ?= "${EFL_PREFERRED_PYTHON_VERSION}"
-PREFERRED_VERSION_python-edbus ?= "${EFL_PREFERRED_PYTHON_VERSION}"
-PREFERRED_VERSION_python-edje ?= "${EFL_PREFERRED_PYTHON_VERSION}"
-PREFERRED_VERSION_python-emotion ?= "${EFL_PREFERRED_PYTHON_VERSION}"
-PREFERRED_VERSION_python-evas ?= "${EFL_PREFERRED_PYTHON_VERSION}"
-
-PREFERRED_VERSION_terminology ?= "0.2.0+svn%"
diff --git a/meta-efl/recipes-devtools/python/python-edbus.inc b/meta-efl/recipes-devtools/python/python-edbus.inc
deleted file mode 100644
index cc60083..0000000
--- a/meta-efl/recipes-devtools/python/python-edbus.inc
+++ /dev/null
@@ -1,46 +0,0 @@
-DESCRIPTION = "${PN} bindings"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
-AUTHOR = "Gustavo Sverzut Barbieri <barbieri at gmail.com>"
-# NOTE: Due to a bug in distutils, even if we don't use pyrex but cython,
-# we need to build pyrex otherwise cython doesn't get called to build
-# the extension modules.
-DEPENDS = "python-cython-native python-pyrex-native python-numeric eina edbus python-dbus"
-RDEPENDS_${PN} += "python-lang python-dbus"
-
-inherit e-base autotools pkgconfig distutils-base
-
-SRCNAME = "python-e_dbus"
-SRCVER = "${PV}"
-
-SRC_URI = "\
-    ${E_MIRROR}/BINDINGS/python/${SRCNAME}-${SRCVER}.tar.bz2 \
-"
-S = "${WORKDIR}/${SRCNAME}-${SRCVER}"
-
-
-do_configure_prepend() {
-    # prefix CYTHON_.*_INCLUDEDIR with path to STAGING_DIR_HOST also use $PKG_CONFIG instead of pkg-config directly
-    sed -i "s#=\`\$PKG_CONFIG --variable=includedir \"python-evas#=${STAGING_DIR_HOST}\`\$PKG_CONFIG --variable=includedir \"python-evas#g" ${S}/configure.ac
-}
-
-do_install_append() {
-    if [ -e examples ]; then
-        for i in `find examples -name "*.edc"`; do
-            cd ${S}/`dirname $i`
-            echo "Generating .edj file for $i..."
-            edje_cc `basename $i`
-            echo "Removing sources in this directory..."
-            rm -f *.edc *.png *.ttf *.jpeg
-        done
-        cd ${S}
-        install -d ${D}${datadir}/${PN}/
-        cp -R --no-dereference --preserve=mode,links -v examples ${D}${datadir}/${PN}/
-        find ${D}${datadir}/${PN}/examples -name ".svn" | xargs rm -rf
-    fi
-}
-
-FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/*.egg/*/*/.debug"
-
-PACKAGES += "${PN}-examples"
-FILES_${PN}-examples = "${datadir}/${PN}/examples"
diff --git a/meta-efl/recipes-devtools/python/python-edbus_1.7.0.bb b/meta-efl/recipes-devtools/python/python-edbus_1.7.0.bb
deleted file mode 100644
index bfacf89..0000000
--- a/meta-efl/recipes-devtools/python/python-edbus_1.7.0.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require ${BPN}.inc
-
-PR = "r1"
-
-SRC_URI[md5sum] = "40b479444bb06147429a276127981890"
-SRC_URI[sha256sum] = "78e5ca334ee25185748660b4e612f984f4d3bced018f062278701429868f117b"
-
-PNBLACKLIST[python-edbus] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130600/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-devtools/python/python-efl.inc b/meta-efl/recipes-devtools/python/python-efl.inc
deleted file mode 100644
index 6837dab..0000000
--- a/meta-efl/recipes-devtools/python/python-efl.inc
+++ /dev/null
@@ -1,71 +0,0 @@
-DESCRIPTION = "${PN} bindings"
-
-LICENSE = "LGPL-3.0"
-LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02"
-# there is also GPLv3.0 in COPYING;md5=d32239bcb673463ab874e80d47fae504 but no file seems to use that
-
-AUTHOR = "Gustavo Sverzut Barbieri <barbieri at gmail.com>"
-# NOTE: Due to a bug in distutils, even if we don't use pyrex but cython,
-# we need to build pyrex otherwise cython doesn't get called to build
-# the extension modules.
-DEPENDS = "python-cython-native python-pyrex-native python-numeric python-dbus lua efl elementary"
-RDEPENDS_${PN} += "python-lang"
-
-PROVIDES = "python-ecore python-eldbus python-edje python-elementary python-emotion python-evas"
-
-inherit e-base distutils pkgconfig
-
-SRCVER = "${PV}"
-
-SRC_URI = "\
-    ${E_RELEASES}/bindings/python/${SRCNAME}-${SRCVER}.tar.gz \
-"
-S = "${WORKDIR}/${SRCNAME}-${SRCVER}"
-
-do_install_append() {
-    # drop all .pyo, pyc files
-    find ${D}${libdir}/${PYTHON_DIR}/site-packages -name \*.pyo -o -name \*.pyc | xargs rm -f
-}
-
-PACKAGES += "python-ecore python-eldbus python-edje python-elementary python-emotion python-evas python-ethumb ${PN}-examples"
-
-FILES_${PN} = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/python_efl*egg-info \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/eo.so \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/utils \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/__init__.py \
-"
-FILES_${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/*.egg/*/*/.debug"
-FILES_${PN}-dev += "${libdir}/${PYTHON_DIR}/site-packages/*/*.la"
-
-FILES_${PN}-examples = "${datadir}/${PN}/examples"
-
-FILES_python-ecore = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/ecore/ \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/ecore*.so \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/ecore \
-"
-FILES_python-eldbus = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/e_dbus/ \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/dbus_mainloop.so \
-"
-FILES_python-edje = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/edje/ \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/edje*.so \
-"
-FILES_python-elementary = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/elementary/ \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/elementary/ \
-"
-FILES_python-emotion = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/emotion/ \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/emotion.so \
-"
-FILES_python-evas = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/evas/ \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/evas.so \
-"
-FILES_python-ethumb = " \
-    ${libdir}/${PYTHON_DIR}/site-packages/ethumb/ \
-    ${libdir}/${PYTHON_DIR}/site-packages/efl/ethumb*so \
-"
diff --git a/meta-efl/recipes-devtools/python/python-efl_1.15.0.bb b/meta-efl/recipes-devtools/python/python-efl_1.15.0.bb
deleted file mode 100644
index e9a79b2..0000000
--- a/meta-efl/recipes-devtools/python/python-efl_1.15.0.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI[md5sum] = "f7c5d557336ea9df69bcca09c420711a"
-SRC_URI[sha256sum] = "11e607b465cb66dafe05c66e02d61e09335b370fe9fd2a74d88282b3ee597bcc"
-
-PNBLACKLIST[python-efl] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-devtools/python/python-efl_git.bb b/meta-efl/recipes-devtools/python/python-efl_git.bb
deleted file mode 100644
index 292b9eb..0000000
--- a/meta-efl/recipes-devtools/python/python-efl_git.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-require ${BPN}.inc
-
-SRCREV = "71ed20ebf662a7b72e60913df94ce6933236bf09"
-PV = "1.12.0+git${SRCPV}"
-DEFAULT_PREFERENCE = "-1"
-
-SRC_URI = "git://git.enlightenment.org/bindings/python/${BPN}.git;branch=python-efl-1.12"
-
-S = "${WORKDIR}/git"
-
-PNBLACKLIST[python-efl] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/cpu/configure.patch b/meta-efl/recipes-efl/e17/cpu/configure.patch
deleted file mode 100644
index 87c85de..0000000
--- a/meta-efl/recipes-efl/e17/cpu/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: cpu/configure.ac
-===================================================================
---- cpu.orig/configure.ac	2014-07-17 20:39:48.000000000 +0000
-+++ cpu/configure.ac	2014-07-17 21:39:55.320555868 +0000
-@@ -10,7 +10,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.6)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- 
diff --git a/meta-efl/recipes-efl/e17/cpu_svn.bb b/meta-efl/recipes-efl/e17/cpu_svn.bb
deleted file mode 100644
index 3ffb988..0000000
--- a/meta-efl/recipes-efl/e17/cpu_svn.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35 \
-                    file://COPYING-PLAIN;md5=c910b645eda0005ccec46f75203dc96e"
-
-PV = "0.0.1+svnr${SRCREV}"
-PR = "${INC_PR}.0"
-
-require e-module.inc
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[cpu] ?= "Depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/diskio_svn.bb b/meta-efl/recipes-efl/e17/diskio_svn.bb
deleted file mode 100644
index 4f778d6..0000000
--- a/meta-efl/recipes-efl/e17/diskio_svn.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35 \
-                    file://COPYING-PLAIN;md5=68be76d8126face2fbbecdf1bcbe2b10"
-
-PV = "0.0.1+svnr${SRCPV}"
-PR = "${INC_PR}.0"
-
-PNBLACKLIST[diskio] ?= "broken: switch to https://git.enlightenment.org/enlightenment/modules/diskio.git/ and fix 0.0.1+svnr82070-r0.0/E-MODULES-EXTRA/diskio/e-module-diskio.edc:58. invalid state name: 'off'. "default" state must always be first. - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-require e-module.inc
diff --git a/meta-efl/recipes-efl/e17/e-module.inc b/meta-efl/recipes-efl/e17/e-module.inc
deleted file mode 100644
index 770f794..0000000
--- a/meta-efl/recipes-efl/e17/e-module.inc
+++ /dev/null
@@ -1,19 +0,0 @@
-DESCRIPTION = "E17 ${PN} module"
-SECTION = "x11/multimedia"
-DEPENDS = "e-wm"
-
-SRCREV = "${EFL_SRCREV}"
-INC_PR = "r0"
-
-SRCNAME = "E-MODULES-EXTRA/${BPN}"
-
-inherit e gettext
-SRC_URI = "${E_SVN}/trunk;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-EXTRA_OECONF = "--with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc"
-
-FILES_${PN} += "${libdir}/enlightenment/modules/${PN}"
-FILES_${PN}-dbg += "${libdir}/enlightenment/modules/${PN}/*/.debug"
-FILES_${PN}-staticdev += "${libdir}/enlightenment/modules/${PN}/*/*.a"
-
diff --git a/meta-efl/recipes-efl/e17/e-tasks/0001-dbus-stuff-Convert-to-eldbus.patch b/meta-efl/recipes-efl/e17/e-tasks/0001-dbus-stuff-Convert-to-eldbus.patch
deleted file mode 100644
index f92a772..0000000
--- a/meta-efl/recipes-efl/e17/e-tasks/0001-dbus-stuff-Convert-to-eldbus.patch
+++ /dev/null
@@ -1,204 +0,0 @@
-From 37223289b3d85ea8876e7ba7c9ff97ec428073ba Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Sat, 22 Feb 2014 14:36:38 +0100
-Subject: [PATCH] dbus-stuff: Convert to eldbus
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- configure.ac     |  2 +-
- src/Makefile.am  |  2 +-
- src/dbus-stuff.c | 95 ++++++++++++++++++++++++++++++++------------------------
- src/dbus-stuff.h | 13 ++------
- src/main.c       |  2 +-
- 5 files changed, 61 insertions(+), 53 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index b3e4d12..4ace32a 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -15,7 +15,7 @@ AC_HEADER_STDC
- 
- AM_PROG_LIBTOOL
- 
--PKG_CHECK_MODULES(TASKS, [elementary eina dbus-1 edbus sqlite3])
-+PKG_CHECK_MODULES(TASKS, [elementary eina dbus-1 eldbus sqlite3])
- 
- AC_OUTPUT([
- Makefile
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 2143dc9..31d5253 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -8,7 +8,7 @@ AM_CPPFLAGS = \
- 	$(TASKS_CFLAGS)
- 
- AM_CFLAGS =\
--         $(EDBUS_CFLAGS) \
-+         $(ELDBUS_CFLAGS) \
- 	 -Wall\
- 	 -g
- 
-diff --git a/src/dbus-stuff.c b/src/dbus-stuff.c
-index 50809bc..9f02ef3 100644
---- a/src/dbus-stuff.c
-+++ b/src/dbus-stuff.c
-@@ -1,8 +1,7 @@
- /***************************************************************************
-  *            dbus-stuff.c
-  *
-- *  Copyright  2009  cchandel
-- *  <cchandel at yahoo.com>
-+ *  Copyright  2009  cchandel <cchandel at yahoo.com>
-  ****************************************************************************/
- 
- /*
-@@ -21,51 +20,67 @@
-  * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301,  USA
-  */
- #include "dbus-stuff.h"
--#include <string.h>
--#include <E_DBus.h>
--#include <Elementary.h>
-+#include "Eldbus.h"
- 
--void occupy_cpu(void)
-+void on_usage_cb(void *data EINA_UNUSED, const Eldbus_Message *msg, Eldbus_Pending *pending EINA_UNUSED)
-+{
-+        const char *errname, *errmsg;
-+        if (eldbus_message_error_get(msg, &errname, &errmsg))
-+	        fprintf(stderr, "Error: %s %s\n", errname, errmsg);
-+}
-+
-+int ousaged_resource(const char *resource, int used)
- {	
--	e_dbus_init();
--	conn = e_dbus_bus_get(DBUS_BUS_SYSTEM);
--	
--	DBusMessage *msg;
--	msg = dbus_message_new_method_call(
--		"org.freesmartphone.ousaged",
--		"/org/freesmartphone/Usage",
--		"org.freesmartphone.Usage",
--		"RequestResource"
--	);
--	
--	const char *resource = "CPU";
--	dbus_message_append_args (msg, DBUS_TYPE_STRING, &resource, DBUS_TYPE_INVALID);
-+	eldbus_init();
-+	const char *REQUEST = "RequestResource";
-+	const char *RELEASE = "ReleaseResource";
-+	const int   PREQUEST = 1;
- 
--	e_dbus_message_send(conn, msg, dbus_reply_cb, -1, NULL);
--	dbus_message_unref(msg);
--}
-+        Eldbus_Connection *conn;
-+        Eldbus_Object *obj;
-+        Eldbus_Proxy *usage;
-+        Eldbus_Pending *pending;
-+	conn = eldbus_connection_get(ELDBUS_CONNECTION_TYPE_SYSTEM);
-+        if (!conn)
-+        {
-+                fprintf(stderr, "Error: could not get system bus\n");
-+                return EXIT_FAILURE;
-+        }
- 
--void release_cpu(void)
--{
--	DBusMessage *msg;
--	msg = dbus_message_new_method_call(
--		"org.freesmartphone.ousaged",
--		"/org/freesmartphone/Usage",
--		"org.freesmartphone.Usage",
--		"ReleaseResource"
--	);
--	
--	const char *resource = "CPU";
--	dbus_message_append_args (msg, DBUS_TYPE_STRING, &resource, DBUS_TYPE_INVALID);
-+        obj = eldbus_object_get(conn, "org.freesmartphone.ousaged", "/org/freesmartphone/Usage");
-+        if (!obj)
-+        {
-+                fprintf(stderr, "Error: could not get object\n");
-+                return EXIT_FAILURE;
-+        }
- 
--	e_dbus_message_send(conn, msg, dbus_reply_cb, -1, NULL);
--	dbus_message_unref(msg);
-+        usage = eldbus_proxy_get(obj, "org.freesmartphone.Usage");
-+        if (!usage)
-+        {
-+                fprintf(stderr, "Error: could not get proxy\n");
-+                return EXIT_FAILURE;
-+        }
-+
-+        pending = eldbus_proxy_call(usage, used == PREQUEST ? REQUEST : RELEASE, on_usage_cb, NULL, -1, "ss", resource);
-+        if (!pending)
-+        {
-+                fprintf(stderr, "Error: could not call\n");
-+                return EXIT_FAILURE;
-+        }
-+        eldbus_proxy_unref(usage);
-+        eldbus_object_unref(obj);
-+        eldbus_connection_unref(conn);
-+
-+        eldbus_shutdown();
-+	return EXIT_SUCCESS;
- }
- 
--void dbus_reply_cb(void *data, DBusMessage *replymsg, DBusError *error)
-+int request_cpu(void)
- {
--	if (dbus_error_is_set(error)) {
--		printf("Error: %s - %s\n", error->name, error->message);
--	}
-+        return ousaged_resource("CPU", 1);
- }
- 
-+int release_cpu(void)
-+{
-+        return ousaged_resource("CPU" , 0);
-+}
-diff --git a/src/dbus-stuff.h b/src/dbus-stuff.h
-index 83d4778..a3c72cb 100644
---- a/src/dbus-stuff.h
-+++ b/src/dbus-stuff.h
-@@ -2,8 +2,7 @@
-  *            dbus.h
-  *
-  *  Fri Mar  6 12:32:57 2009
-- *  Copyright  2009  nidhin
-- *  <nidhin at nids-laptop.home>
-+ *  Copyright  2009  nidhin <nidhin at nids-laptop.home>
-  ****************************************************************************/
- 
- /*
-@@ -22,11 +21,5 @@
-  * Foundation, Inc., 51 Franklin Street, Fifth Floor Boston, MA 02110-1301,  USA
-  */
- 
--#include <E_DBus.h>
--#include <Elementary.h>
--
--void occupy_cpu(void);
--void release_cpu(void);
--void dbus_reply_cb(void *data, DBusMessage *replymsg, DBusError *error);
--
--E_DBus_Connection *conn;
-+int request_cpu(void);
-+int release_cpu(void);
-diff --git a/src/main.c b/src/main.c
-index 92d21de..4e4bbe2 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -76,7 +76,7 @@ elm_main(int argc, char **argv)
- 	//restore state
- 	restore_state();
- 
--	occupy_cpu();
-+	request_cpu();
- 
- 	elm_run();
- 	//clean up stuff
--- 
-1.8.5.3
-
diff --git a/meta-efl/recipes-efl/e17/e-tasks_git.bb b/meta-efl/recipes-efl/e17/e-tasks_git.bb
deleted file mode 100644
index 7eab6d0..0000000
--- a/meta-efl/recipes-efl/e17/e-tasks_git.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-SUMMARY = "e-tasks is a todo program for Openmoko phones"
-HOMEPAGE = "http://code.google.com/p/e-tasks/"
-AUTHOR = "cchandel"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"
-SECTION = "e/apps"
-DEPENDS = "elementary eina eldbus sqlite3"
-
-inherit autotools
-
-SRCREV = "890f5ee37d1a5fd1ceb2495950d15151d4cf756b"
-PV = "0.0.2+gitr${SRCPV}"
-
-SRC_URI = "git://github.com/shr-project/e-tasks.git"
-SRC_URI += "file://0001-dbus-stuff-Convert-to-eldbus.patch"
-
-S = "${WORKDIR}/git"
-
-do_install_append() {
-    install -d "${D}/${datadir}/pixmaps"
-    install -m 0644 "${S}/resources/e-tasks.png" "${D}/${datadir}/pixmaps"
-    install -d "${D}/${datadir}/applications"
-    install -m 0644 "${S}/resources/e-tasks.desktop" "${D}/${datadir}/applications"
-    install -d  "${D}/${datadir}/e-tasks"
-    for ico in "${S}/resources/"*.png; do
-        if [ "$(basename $ico)" != "e-tasks.png" ]; then
-            install -m 0644 $ico "${D}/${datadir}/e-tasks"
-        fi
-    done
-}
-
-FILES_${PN} += "/usr/share/e-tasks/* /usr/share/applications/* /usr/share/pixmaps/*"
-
-PNBLACKLIST[e-tasks] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/e-wm-theme-b-and-w_svn.bb b/meta-efl/recipes-efl/e17/e-wm-theme-b-and-w_svn.bb
deleted file mode 100644
index 9e6e9f2..0000000
--- a/meta-efl/recipes-efl/e17/e-wm-theme-b-and-w_svn.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-DESCRIPTION = "b-and-w theme was default E17 theme before alpha3 and some people still prefers it."
-SECTION = "e/utils"
-DEPENDS = "edje-native"
-RDEPENDS_${PN} = "e-wm"
-LICENSE = "MIT & BSD"
-# upstream was asked to include license infor in THEME dir
-LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
-
-inherit allarch
-
-SRCREV = "${EFL_SRCREV}"
-PV = "0.0+svnr${SRCPV}"
-
-inherit e-base
-
-SRCNAME = "b_and_w"
-SRC_URI = "${E_SVN}/trunk/THEMES;module=${SRCNAME};protocol=http"
-S = "${WORKDIR}/${SRCNAME}/e"
-
-do_compile() {
-    # unfortunately hardcoded edje_cc in Makefile
-    sed -i "s#\tedje_cc#\t${STAGING_BINDIR_NATIVE}/edje_cc#g" Makefile
-    make
-}
-
-do_install() {
-    install -d ${D}${datadir}/enlightenment/data/themes/
-    install -m 0644 ${S}/b_and_w.edj ${D}${datadir}/enlightenment/data/themes/
-}
-
-FILES_${PN} = "${datadir}/enlightenment/data/themes/"
-
-PNBLACKLIST[e-wm-theme-b-and-w] ?= "Runtime depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[e-wm-theme-b-and-w] ?= "Runtime depends on blacklisted e-wm-theme-b-and-w - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[e-wm-theme-b-and-w] ?= "Runtime depends on blacklisted e-wm-theme-b-and-w-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/e-wm-theme-illume-efenniht/LICENSE b/meta-efl/recipes-efl/e17/e-wm-theme-illume-efenniht/LICENSE
deleted file mode 100644
index 61bb2f6..0000000
--- a/meta-efl/recipes-efl/e17/e-wm-theme-illume-efenniht/LICENSE
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright notice for Enlightenment:
-
-Copyright (C) 2000-2010 Carsten Haitzler and various contributors (see AUTHORS)
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-   1. Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-   2. Redistributions in binary form must reproduce the above copyright 
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/meta-efl/recipes-efl/e17/e-wm-theme-illume-efenniht_svn.bb b/meta-efl/recipes-efl/e17/e-wm-theme-illume-efenniht_svn.bb
deleted file mode 100644
index 5212134..0000000
--- a/meta-efl/recipes-efl/e17/e-wm-theme-illume-efenniht_svn.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-DESCRIPTION = "efenniht illume theme - Efenniht was devised to be clean \
-and neutral. Its name (which means equinox) comes from the chromatic duality \
-that was decided at the very beginning, with a dark theme (black and orange) \
-and a bright one (white and blue) to be developed so that more people feel \
-comfortable using it. Efenniht uses few animations, discrete contrasts between \
-shades of gray and fine lines (colored) that outline the selected elements."
-SECTION = "e/utils"
-HOMEPAGE = "http://trac.enlightenment.org/e/wiki/Themes#Efenniht"
-DEPENDS = "edje-native"
-RDEPENDS_${PN} = "e-wm"
-RSUGGESTS_${PN} = "elementary-theme-efenniht"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=f523ab5986cc79b52a90d2ac3d5454a2"
-
-SRCREV = "${EFL_SRCREV}"
-PV = "0.0+svnr${SRCPV}"
-
-inherit e-base allarch
-
-SRCNAME = "efenniht"
-SRC_URI = "${E_SVN}/trunk/THEMES;module=${SRCNAME};protocol=http \
-           file://LICENSE \
-"
-S = "${WORKDIR}/${SRCNAME}"
-
-do_compile() {
-    ${STAGING_BINDIR_NATIVE}/edje_cc -id ${S}/images ${S}/efenniht.edc -o ${S}/efenniht.edj
-}
-
-do_install() {
-    install -d ${D}${datadir}/enlightenment/data/themes/
-    install -m 0644 ${S}/efenniht.edj ${D}${datadir}/enlightenment/data/themes/
-}
-
-FILES_${PN} = "${datadir}/enlightenment/data/themes/"
-
-PNBLACKLIST[e-wm-theme-illume-efenniht] ?= "Runtime depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[e-wm-theme-illume-efenniht] ?= "Runtime depends on blacklisted e-wm-theme-illume-efenniht - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/e-wm.inc b/meta-efl/recipes-efl/e17/e-wm.inc
deleted file mode 100644
index a6e964b..0000000
--- a/meta-efl/recipes-efl/e17/e-wm.inc
+++ /dev/null
@@ -1,200 +0,0 @@
-DESCRIPTION = "The Enlightenment Window Manager Version 17"
-DEPENDS = "eet evas eina ecore edje efreet edbus eeze eio elementary libxcb xcb-util-keysyms"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=76de290eb3fdda12121830191c152a7d"
-SRCNAME = "e"
-
-inherit e update-alternatives gettext pkgconfig
-S = "${WORKDIR}/${SRCNAME}"
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd', d)}"
-PACKAGECONFIG[pam] = "--enable-pam,--disable-pam,libpam"
-PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
-
-EXTRA_OECONF = "\
-    --with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc \
-    --with-eet-eet=${STAGING_BINDIR_NATIVE}/eet \
-    --x-includes=${STAGING_INCDIR}/X11 \
-    --x-libraries=${STAGING_LIBDIR} \
-    --enable-simple-x11 \
-"
-
-do_configure_prepend() {
-    autopoint || true
-    sed '/^ *EFL_PKG_CHECK_VAR/ s/systemduserunitdir/systemdsystemunitdir/g' -i ${S}/configure.ac
-}
-
-do_install_append() {
-    # customising - should rather make this simple upstream
-    install -m 755 ${WORKDIR}/enlightenment_start.oe ${D}/${bindir}
-
-    # security reasons, e-wm checks that in runtime
-    # xinit[418]: ERROR: CONFIGURATION FILE HAS BAD PERMISSIONS
-    chmod 600 ${D}/${sysconfdir}/enlightenment/sysactions.conf
-
-    install -d ${D}/${sysconfdir}/xdg/menus
-    install -m 644 ${WORKDIR}/applications.menu ${D}/${sysconfdir}/xdg/menus/
-    for I in `find ${D}/${libdir}/enlightenment -name "*.a" -print`; do rm -f $I; done
-    for I in `find ${D}/${libdir}/enlightenment -name "*.la" -print`; do rm -f $I; done
-
-    # work around for issue caused in r78978, more infor in:
-    # http://sourceforge.net/mailarchive/forum.php?thread_name=20121118194904.GA3438%40jama.jama.net&forum_name=enlightenment-devel
-    mv ${D}/${libdir}/enlightenment/modules/policies ${D}/${libdir}/enlightenment/modules/illume2/ \
-      || echo "illume2 policies are in correct place now"
-    mv ${D}/${libdir}/enlightenment/modules/keyboards ${D}/${libdir}/enlightenment/modules/illume2/ \
-      || echo "illume2 keyboards are in correct place now"
-}
-
-RDEPENDS_${PN} += "\
-    shared-mime-info \
-    mime-support \
-    setxkbmap \
-    edje-utils \
-    ${PN}-utils \
-    dbus-x11 \
-"
-
-# Uclibc build don't have 'glibc-utils'
-RDEPENDS_${PN}_append_libc-glibc = " glibc-utils "
-
-# The systray module used to be external, but is part of e-wm now
-RREPLACES_${PN} = "systray"
-
-RREPLACES_${PN}-config-mobile = "${PN}-config-illume2"
-RCONFLICTS_${PN}-config-mobile = "${PN}-config-illume2"
-RPROVIDES_${PN}-config-mobile = "${PN}-config-illume2"
-
-PACKAGES =+ "\
-    ${PN}-config-default \
-    ${PN}-config-mobile \
-    ${PN}-config-minimalist \
-    ${PN}-config-netbook \
-    ${PN}-config-scaleable \
-    ${PN}-config-standard \
-    ${PN}-config-tiling \
-    ${PN}-theme-default \
-    ${PN}-background-dark-gradient \
-    ${PN}-background-light-gradient \
-    ${PN}-backgrounds \
-    ${PN}-images \
-    ${PN}-icons \
-    ${PN}-other \
-    ${PN}-input-methods \
-    ${PN}-sysactions \
-    ${PN}-utils \
-    ${PN}-menu \
-    efm-desktop-icon \
-    illume-keyboard-default-alpha \
-    illume-keyboard-default-numeric \
-    illume-keyboard-default-terminal \
-"
-
-ESYSACTIONS ?= "${PN}-sysactions"
-
-RRECOMMENDS_${PN} = "\
-    ${PN}-config-default \
-    ${PN}-images \
-    ${PN}-icons \
-    ${PN}-other \
-    ${PN}-input-methods \
-    ${ESYSACTIONS} \
-    efreet \
-    evas-generic-loader-svg \
-"
-
-FILES_${PN} = "\
-    ${bindir}/* \
-    ${libdir}/enlightenment/utils/* \
-    ${libdir}/enlightenment/modules/*/*.* \
-    ${libdir}/enlightenment/modules/*/*/* \
-    ${libdir}/enlightenment/modules/*/*/.order \
-    ${libdir}/enlightenment/modules/keyboards/ignore_built_in_keyboards \
-    ${libdir}/enlightenment/*plugins/*/*/* \
-    ${libdir}/enlightenment/preload/e_precache.so \
-    ${datadir}/enlightenment/data/icons \
-    ${datadir}/enlightenment/data/favorites \
-    ${datadir}/enlightenment/data/input_methods \
-    ${datadir}/enlightenment/data/config/profile.cfg \
-    ${datadir}/enlightenment/AUTHORS \
-    ${datadir}/enlightenment/COPYING \
-    ${datadir}/xsessions/enlightenment.desktop \
-    ${sysconfdir}/xdg \
-    ${systemd_unitdir} \
-"
-
-FILES_${PN}-config-default = "${datadir}/enlightenment/data/config/default"
-FILES_${PN}-config-mobile = "${datadir}/enlightenment/data/config/mobile"
-FILES_${PN}-config-minimalist = "${datadir}/enlightenment/data/config/minimalist"
-FILES_${PN}-config-netbook = "${datadir}/enlightenment/data/config/netbook"
-FILES_${PN}-config-scaleable = "${datadir}/enlightenment/data/config/scaleable"
-FILES_${PN}-config-standard = "${datadir}/enlightenment/data/config/standard"
-FILES_${PN}-config-tiling = "${datadir}/enlightenment/data/config/tiling"
-FILES_${PN}-theme-default = "${datadir}/enlightenment/data/themes/default.edj"
-FILES_${PN}-theme-default = "${datadir}/enlightenment/data/themes/default.edj"
-FILES_${PN}-background-dark-gradient = "${datadir}/enlightenment/data/backgrounds/Dark_Gradient.edj"
-FILES_${PN}-background-light-gradient = "${datadir}/enlightenment/data/backgrounds/Light_Gradient.edj"
-FILES_${PN}-backgrounds = "${datadir}/enlightenment/data/backgrounds/*.edj"
-FILES_${PN}-images = "${datadir}/enlightenment/data/images ${datadir}/enlightenment/data/flags"
-FILES_${PN}-icons = "${datadir}/enlightenment/data/icons"
-FILES_${PN}-other = "${datadir}/enlightenment/data/other"
-FILES_${PN}-input-methods = "${datadir}/enlightenment/data/input_methods"
-FILES_${PN}-sysactions = "${sysconfdir}/enlightenment/sysactions.conf"
-FILES_${PN}-utils = "${libdir}/enlightenment/utils/*"
-FILES_${PN}-menu = "${sysconfdir}/xdg/menus/applications.menu"
-
-FILES_efm-desktop-icon = "\
-    ${datadir}/applications/efm.desktop \
-    ${datadir}/applications/enlightenment_filemanager.desktop \
-    ${datadir}/icons/e-module-fileman.png \
-"
-
-KEYBOARDS_DIR="${libdir}/enlightenment/modules/illume-keyboard/keyboards"
-FILES_illume-keyboard-default-alpha = "\
-    ${KEYBOARDS_DIR}/Default.kbd \
-    ${KEYBOARDS_DIR}/alpha.png \
-"
-FILES_illume-keyboard-default-numeric = "\
-    ${KEYBOARDS_DIR}/Numbers.kbd \
-    ${KEYBOARDS_DIR}/numeric.png \
-"
-FILES_illume-keyboard-default-terminal = "\
-    ${KEYBOARDS_DIR}/Terminal.kbd \
-    ${KEYBOARDS_DIR}/qwerty.png \
-"
-
-RRECOMMENDS_${PN}-config-default = "${PN}-theme-default"
-RRECOMMENDS_${PN}-config-mobile = "\
-    illume-keyboard-default-alpha \
-    illume-keyboard-default-numeric \
-    illume-keyboard-default-terminal \
-"
-
-RRECOMMENDS_${PN}-config-minimalist = "\
-    ${PN}-background-light-gradient \
-    ${PN}-theme-default \
-"
-RRECOMMENDS_${PN}-config-netbook = "\
-    ${PN}-background-dark-gradient \
-    ${PN}-theme-default \
-"
-RRECOMMENDS_${PN}-config-scaleable = "${PN}-theme-default"
-RRECOMMENDS_${PN}-config-standard = "${PN}-theme-default"
-
-FILES_${PN}-dbg += "\
-    ${libdir}/enlightenment/modules/*/*/.debug/ \
-    ${libdir}/enlightenment/modules/policies/.debug/ \
-    ${libdir}/enlightenment/preload/.debug/ \
-    ${libdir}/enlightenment/utils/.debug/ \
-    ${libdir}/enlightenment/*plugins/*/*/.debug \
-"
-
-FILES_${PN}-doc += "\
-    ${datadir}/enlightenment/doc \
-"
-
-CONFFILES_${PN}-menu = "${sysconfdir}/xdg/menus/applications.menu"
-CONFFILES_${PN}-sysactions = "/etc/enlightenment/sysactions.conf"
-
-ALTERNATIVE_${PN} = "x-window-manager"
-ALTERNATIVE_TARGET[x-window-manager] = "${bindir}/enlightenment_start.oe"
-ALTERNATIVE_PRIORITY[x-window-manager] = "16"
diff --git a/meta-efl/recipes-efl/e17/e-wm/0001-Fix-incorrect-message-type.patch b/meta-efl/recipes-efl/e17/e-wm/0001-Fix-incorrect-message-type.patch
deleted file mode 100644
index e718ef3..0000000
--- a/meta-efl/recipes-efl/e17/e-wm/0001-Fix-incorrect-message-type.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 0aef43c9cd1656413cf2eb3dc7c19b355ee7ed52 Mon Sep 17 00:00:00 2001
-From: Carlos Rafael Giani <dv at pseudoterminal.org>
-Date: Sun, 1 Jun 2014 14:45:49 +0200
-Subject: [PATCH] Fix incorrect message type
-
-Upstream-Status: Pending
-
-Signed-off-by: Carlos Rafael Giani <dv at pseudoterminal.org>
----
- src/bin/e_desk.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/bin/e_desk.c b/src/bin/e_desk.c
-index b156e19..77d7520 100644
---- a/src/bin/e_desk.c
-+++ b/src/bin/e_desk.c
-@@ -221,7 +221,7 @@ e_desk_show(E_Desk *desk)
-    E_Event_Desk_Show *ev;
-    E_Event_Desk_Before_Show *eev;
-    E_Event_Desk_After_Show *eeev;
--   Edje_Message_Float_Set *msg;
-+   Edje_Message_Int_Set *msg;
-    Eina_List *l;
-    E_Shelf *es;
-    int was_zone = 0, x, y, dx = 0, dy = 0;
--- 
-1.8.3.2
-
diff --git a/meta-efl/recipes-efl/e17/e-wm/0001-configure.ac-add-foreign.patch b/meta-efl/recipes-efl/e17/e-wm/0001-configure.ac-add-foreign.patch
deleted file mode 100644
index c7a574c..0000000
--- a/meta-efl/recipes-efl/e17/e-wm/0001-configure.ac-add-foreign.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 19e59b6e8148388e7a17f10d4390176a50e2917f Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Mon, 25 Aug 2014 16:06:03 +0200
-Subject: [PATCH] configure.ac: add foreign
-
-* fixes:
-  | configure.ac:312: error: required file './ABOUT-NLS' not found
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 51ad0ba..cd77739 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -34,7 +34,7 @@ AH_BOTTOM([
- #endif /* EFL_CONFIG_H__ */
- ])
- 
--AM_INIT_AUTOMAKE([1.11 dist-bzip2 dist-xz -Wno-portability])
-+AM_INIT_AUTOMAKE([1.11 dist-bzip2 dist-xz -Wno-portability foreign])
- AM_SILENT_RULES([yes])
- 
- AC_USE_SYSTEM_EXTENSIONS
--- 
-2.3.0
-
diff --git a/meta-efl/recipes-efl/e17/e-wm/applications.menu b/meta-efl/recipes-efl/e17/e-wm/applications.menu
deleted file mode 100644
index ed9b906..0000000
--- a/meta-efl/recipes-efl/e17/e-wm/applications.menu
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN" "http://standards.freedesktop.org/menu-spec/menu-1.0.dtd">
-<Menu>
-  <Name>Applications</Name>
-  <!--   <Directory>Applications.directory</Directory> -->
-
-  <!-- Read standard .directory and .desktop file locations -->
-  <DefaultAppDirs>/usr/share/applications</DefaultAppDirs>
-  <DefaultDirectoryDirs/>
-
-  <Menu>
-    <Name>Office</Name>
-    <Directory>Office.directory</Directory>
-    <Include>
-      <And>
-        <Category>Office</Category>
-      </And>
-    </Include>
-  </Menu>
-  
-  <Menu>
-    <Name>Multimedia</Name>
-    <Directory>Multimedia.directory</Directory>
-    <Include>
-      <And>
-        <Category>AudioVideo</Category>
-      </And>
-    </Include>
-  </Menu>
-
-  <Menu>
-    <Name>Graphics</Name>
-    <Directory>Graphics.directory</Directory>
-    <Include>
-      <And>
-        <Category>Graphics</Category>
-      </And>
-    </Include>
-  </Menu>
-
-  <Menu>
-    <Name>Games</Name>
-    <Directory>Games.directory</Directory>
-    <Include>
-      <And>
-        <Or>
-         <Category>Game</Category>
-         <Category>Games</Category>
-        </Or>
-      </And>
-    </Include>
-  </Menu>
-
-  <Menu>
-    <Name>Internet</Name>
-    <Directory>Internet.directory</Directory>
-    <Include>
-      <And>
-        <Or>
-         <Category>Internet</Category>
-         <Category>Network</Category>
-        </Or>
-      </And>
-    </Include>
-  </Menu>
-
-  <Menu>
-    <Name>Settings</Name>
-    <Directory>Settings.directory</Directory>
-    <Include>
-      <And>
-        <Or>
-          <Category>SystemSettings</Category>
-          <Category>Settings</Category>
-        </Or>
-        <Not>
-          <Category>System</Category>
-        </Not>
-      </And>
-    </Include>
-  </Menu>
-
-  <Menu>
-    <Name>Accessories</Name>
-    <Directory>Accessories.directory</Directory>
-    <Include>
-      <And>
-        <Or>
-          <Category>Applications</Category>
-          <Category>Utility</Category>
-        </Or>
-        <Not>
-          <Category>System</Category>
-          <Category>Office</Category>
-          <Category>Internet</Category>
-          <Category>AudioVideo</Category>
-          <Category>Graphics</Category>
-          <Category>Games</Category>
-        </Not>
-      </And>
-    </Include>
-  </Menu>
-  
-</Menu>
-
diff --git a/meta-efl/recipes-efl/e17/e-wm/enlightenment_start.oe b/meta-efl/recipes-efl/e17/e-wm/enlightenment_start.oe
deleted file mode 100644
index ff86172..0000000
--- a/meta-efl/recipes-efl/e17/e-wm/enlightenment_start.oe
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh
-
-E_PROFILE=""
-if [ -r /etc/enlightenment/default_profile ]; then
-  . /etc/enlightenment/default_profile
-fi
-
-renice -2 -p $$
-exec enlightenment_start $E_PROFILE
diff --git a/meta-efl/recipes-efl/e17/e-wm_0.18.8.bb b/meta-efl/recipes-efl/e17/e-wm_0.18.8.bb
deleted file mode 100644
index ac18b59..0000000
--- a/meta-efl/recipes-efl/e17/e-wm_0.18.8.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-require ${BPN}.inc
-
-SRCNAME = "enlightenment"
-
-S = "${WORKDIR}/${SRCNAME}-${PV}"
-
-SRC_URI = "\
-    ${E_RELEASES}/apps/${SRCNAME}/${SRCNAME}-${SRCVER}.tar.gz \
-    file://enlightenment_start.oe \
-    file://applications.menu \
-    file://0001-Fix-incorrect-message-type.patch \
-"
-
-SRC_URI[md5sum] = "79c9f524e1d0510061c62c4b038a8ece"
-SRC_URI[sha256sum] = "14c9bde4334d2f8b0776c6113d02b923ab159eea1cbf7013489e4f3bf37a51bb"
-
-PNBLACKLIST[e-wm] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/e-wm_0.19.10.bb b/meta-efl/recipes-efl/e17/e-wm_0.19.10.bb
deleted file mode 100644
index aa6a7b8..0000000
--- a/meta-efl/recipes-efl/e17/e-wm_0.19.10.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-require ${BPN}.inc
-
-SRCNAME = "enlightenment"
-
-S = "${WORKDIR}/${SRCNAME}-${PV}"
-
-# couple of modules needed for illume2 (mobile) profile were removed in
-# http://git.enlightenment.org/core/enlightenment.git/commit/src/modules/Makefile.mk?id=1be76d599ca27f820b58b8186c5f73d9844c67ca
-# and replacements aren't included yet, if you want to use e-wm on device with small screen, better stay with 0.18 release
-DEFAULT_PREFERENCE = "-1"
-
-SRC_URI = "\
-    ${E_RELEASES}/apps/${SRCNAME}/${SRCNAME}-${SRCVER}.tar.gz \
-    file://enlightenment_start.oe \
-    file://applications.menu \
-"
-
-SRC_URI[md5sum] = "9063617760329445ada8635270a4e627"
-SRC_URI[sha256sum] = "484d305bcf403303b18c46a3a498445b93689cd325010ae8d0601551926469d8"
-
-PNBLACKLIST[e-wm] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/e-wm_git.bb b/meta-efl/recipes-efl/e17/e-wm_git.bb
deleted file mode 100644
index 0f25fd5..0000000
--- a/meta-efl/recipes-efl/e17/e-wm_git.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require ${BPN}.inc
-
-PV = "0.19.4+git${SRCPV}"
-DEFAULT_PREFERENCE = "-2"
-
-SRC_URI = " \
-    git://git.enlightenment.org/core/enlightenment.git;branch=enlightenment-0.19 \
-    file://0001-configure.ac-add-foreign.patch \
-    file://enlightenment_start.oe \
-    file://applications.menu \
-"
-S = "${WORKDIR}/git"
-
-SRCREV = "4545d4a70031e0b2565b8d83d5f756bff1a584d0"
-
-PNBLACKLIST[e-wm] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/edje-viewer_svn.bb b/meta-efl/recipes-efl/e17/edje-viewer_svn.bb
deleted file mode 100644
index 6d3efda..0000000
--- a/meta-efl/recipes-efl/e17/edje-viewer_svn.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "Edje_Viewer is just that"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35 \
-                    file://COPYING-PLAIN;md5=e01359041001e8bf24c09acca556e792"
-
-DEPENDS = "elementary"
-PV = "0.0.0+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-inherit e
-
-SRCNAME = "edje_viewer"
-SRC_URI = "${E_SVN}/trunk;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-FILES_${PN} += "${datadir}"
-
-PNBLACKLIST[edje-viewer] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/elbow_git.bb b/meta-efl/recipes-efl/e17/elbow_git.bb
deleted file mode 100644
index d2a8539..0000000
--- a/meta-efl/recipes-efl/e17/elbow_git.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "EFL based browser"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6a6a8e020838b23406c81b19c1d46df6"
-DEPENDS = "evas ecore edje eina elementary webkit-efl sqlite3"
-
-PV = "0.0.1+gitr${SRCPV}"
-SRCREV = "b41fd0bc9514ff61bb2a50d957efe4155fa3e6a8"
-
-# webkit-efl isn't available for < armv7a
-COMPATIBLE_MACHINE = "(-)"
-COMPATIBLE_MACHINE_x86 = "(.*)"
-COMPATIBLE_MACHINE_x86-64 = "(.*)"
-COMPATIBLE_MACHINE_armv7a = "(.*)"
-
-inherit e gettext cmake
-
-EXTRA_OECMAKE = "-DDATA_INSTALL_DIR=${datadir}"
-
-SRC_URI = " \
-    git://github.com/bunhere/elbow.git;protocol=https \
-"
-S = "${WORKDIR}/git"
-
-FILES_${PN} += "${datadir}/themes"
-
-PNBLACKLIST[elbow] ?= "Depends on blacklisted webkit-efl - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/elfe_git.bb b/meta-efl/recipes-efl/e17/elfe_git.bb
deleted file mode 100644
index e9f7f9e..0000000
--- a/meta-efl/recipes-efl/e17/elfe_git.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35"
-PV = "0.0.1+gitr${SRCPV}"
-PE = "1"
-
-require e-module.inc
-
-SRC_URI = " \
-    git://git.enlightenment.org/enlightenment/modules/${BPN}.git \
-"
-S = "${WORKDIR}/git"
-
-SRCREV = "1ec0e7713c3ca901014811ff78277d9e2aaac981"
-
-DEPENDS += "elementary"
-
-PNBLACKLIST[elfe] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/elmdentica/configure.patch b/meta-efl/recipes-efl/e17/elmdentica/configure.patch
deleted file mode 100644
index 79a981b..0000000
--- a/meta-efl/recipes-efl/e17/elmdentica/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: elmdentica/configure.ac
-===================================================================
---- elmdentica.orig/configure.ac	2014-07-17 21:46:14.712566207 +0000
-+++ elmdentica/configure.ac	2014-07-17 21:51:34.960574935 +0000
-@@ -3,7 +3,7 @@
- AM_CONFIG_HEADER(config.h)
- AC_CONFIG_MACRO_DIR([m4])
- 
--AM_INIT_AUTOMAKE
-+AM_INIT_AUTOMAKE([foreign])
- 
- AC_PROG_CC
- AC_GNU_SOURCE
diff --git a/meta-efl/recipes-efl/e17/elmdentica_svn.bb b/meta-efl/recipes-efl/e17/elmdentica_svn.bb
deleted file mode 100644
index b171217..0000000
--- a/meta-efl/recipes-efl/e17/elmdentica_svn.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-SUMMARY = "A indenti.ca client for E"
-DEPENDS = "glib-2.0 gconf curl elementary sqlite3-native azy"
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-SECTION = "e/apps"
-HOMEPAGE = "http://elmdentica.googlecode.com"
-AUTHOR = "seabra"
-
-inherit e gettext
-SRC_URI = "${E_SVN}/trunk;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-EXTRA_OECONF = "--with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc"
-
-PV = "0.9.9+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-RDEPENDS_${PN} = "${PN}-themes"
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[elmdentica] ?= "OLD and depends on broken azy - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/emprint_svn.bb b/meta-efl/recipes-efl/e17/emprint_svn.bb
deleted file mode 100644
index 115dc7c..0000000
--- a/meta-efl/recipes-efl/e17/emprint_svn.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-DESCRIPTION = "Emprint is a utility for taking screenshots of the entire screen, a specific window, or a specific region."
-LICENSE = "MIT & BSD"
-DEPENDS = "imlib2 virtual/libx11 ecore evas edje eina"
-PV = "0.0.1+svnr${SRCPV}"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35"
-SRCREV = "${EFL_SRCREV}"
-
-inherit e
-SRC_URI = "${E_SVN}/trunk;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-FILES_${PN}-dbg += "${libdir}/${PN}/modules/.debug"
-
-PNBLACKLIST[emprint] ?= "if you want to use these modules with E18, then you need to update it to git recipe fetching newer sources from http://git.enlightenment.org/apps/emprint.git/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/enjoy/0001-always-use-position-as-percent-and-define-a-1-second.patch b/meta-efl/recipes-efl/e17/enjoy/0001-always-use-position-as-percent-and-define-a-1-second.patch
deleted file mode 100644
index 0962450..0000000
--- a/meta-efl/recipes-efl/e17/enjoy/0001-always-use-position-as-percent-and-define-a-1-second.patch
+++ /dev/null
@@ -1,133 +0,0 @@
-From 751505501e0db31cf766ec0ae95a6968b4d1eb93 Mon Sep 17 00:00:00 2001
-From: Alban Browaeys <prahal at yahoo.com>
-Date: Wed, 5 Sep 2012 02:58:26 +0000
-Subject: [PATCH] always use position as percent and define a 1 seconds
- tolerance.
-
-Fix "reverb" effect: ie loop between setting the slider to match
-the position and handling slider to position (seek).
----
- data/themes/default.edc |  8 +++-----
- src/bin/win.c           | 28 ++++++++++++++++++++++------
- 2 files changed, 25 insertions(+), 11 deletions(-)
-
-diff --git a/data/themes/default.edc b/data/themes/default.edc
-index ebf8ba4..7a906b1 100644
---- a/data/themes/default.edc
-+++ b/data/themes/default.edc
-@@ -186,7 +186,6 @@ collections {
-    group {
-       name: "nowplaying";
-       script {
--         public cur_length;
-          public mute;
- 
-          public get_time_str(Float:time, time_str[6])
-@@ -201,16 +200,15 @@ collections {
-                new Float:position = getfarg(2);
-                new Float:length = getfarg(3);
-                if (length > 0)
--                  external_param_set_float(PART:"progress.slider", "value", position / length * 100);
-+                  external_param_set_float(PART:"progress.slider", "value", position * 100);
-                else
-                   external_param_set_float(PART:"progress.slider", "value", 0);
- 
-                new time_str[6];
--               get_time_str(position, time_str);
-+               get_time_str(position * length, time_str);
-                set_text(PART:"ejy.text.current_time", time_str);
-                get_time_str(length, time_str);
-                set_text(PART:"ejy.text.total_time", time_str);
--               set_float(cur_length, length);
-             } else if (type == MSG_INT && id == MSG_SHUFFLE) {
-                external_param_set_bool(PART:"buttons.shuffle", "state", getarg(2));
-             } else if (type == MSG_INT && id == MSG_LOOP) {
-@@ -689,7 +687,7 @@ collections {
-             source: "progress.slider";
-             signal: "changed";
-             script {
--               send_message(MSG_FLOAT, MSG_POSITION, (external_param_get_float(PART:"progress.slider", "value") * get_float(cur_length) / 100));
-+               send_message(MSG_FLOAT, MSG_POSITION, (external_param_get_float(PART:"progress.slider", "value") / 100));
-             }
-          }
-          program {
-diff --git a/src/bin/win.c b/src/bin/win.c
-index 2f65953..428e268 100644
---- a/src/bin/win.c
-+++ b/src/bin/win.c
-@@ -194,8 +194,8 @@ _win_play_eval(Win *w)
- {
-    Edje_Message_Float_Set *mf;
- 
--   w->play.position = emotion_object_position_get(w->emotion);
-    w->play.length = emotion_object_play_length_get(w->emotion);
-+   w->play.position = emotion_object_position_get(w->emotion) / w->play.length;
- 
-    if ((w->song) && (w->song->length != (int)w->play.length))
-       db_song_length_set(w->db, w->song, w->play.length);
-@@ -542,8 +542,14 @@ _win_edje_msg(void *data, Evas_Object *o __UNUSED__, Edje_Message_Type type, int
-          else
-            {
-               Edje_Message_Float *m = msg;
-+
-+              if ((((m->val - w->play.position) * w->play.length) < 1.0)
-+                  && (((w->play.position - m->val) * w->play.length) < 1.0))
-+                  return;
-+
-               w->play.position = m->val;
--              emotion_object_position_set(w->emotion, w->play.position);
-+              emotion_object_position_set(w->emotion, w->play.position
-+                                                            * w->play.length);
-               ecore_event_add(ENJOY_EVENT_POSITION_CHANGE, NULL, NULL, NULL);
-            }
-         break;
-@@ -617,16 +623,21 @@ enjoy_control_seek(uint64_t position)
- {
-    Win *w = &_win;
-    double seek_to;
-+   double new_pos = w->play.length / ((double)position / 1e6);
- 
-    if (!w->db) return;
--   seek_to = w->play.position + w->play.length / ((double)position / 1e6);
-+
-+   if ((((new_pos - w->play.position) * w->play.length) < 1.0)
-+       && (((w->play.position - new_pos) * w->play.length) < 1.0)) return;
-+
-+   seek_to = w->play.position + new_pos;
-    if (seek_to <= 0.0)
-      seek_to = 0.0;
-    else if (seek_to >= 1.0)
-      seek_to = 1.0;
- 
-    w->play.position = seek_to;
--   emotion_object_position_set(w->emotion, w->play.position);
-+   emotion_object_position_set(w->emotion, w->play.position * w->play.length);
-    ecore_event_add(ENJOY_EVENT_POSITION_CHANGE, NULL, NULL, NULL);
- }
- 
-@@ -692,15 +703,20 @@ EAPI void
- enjoy_position_set(int32_t position)
- {
-    Win *w = &_win;
-+   double new_pos = w->play.length / ((double)position / 1e6);
- 
-    if (!w->db) return;
--   w->play.position = w->play.length / ((double)position / 1e6);
-+
-+   if ((((new_pos - w->play.position) * w->play.length) < 1.0)
-+       && (((w->play.position - new_pos) * w->play.length) < 1.0)) return;
-+
-+   w->play.position = new_pos;
-    if (w->play.position < 0.0)
-      w->play.position = 0.0;
-    else if (w->play.position > 1.0)
-      w->play.position = 1.0;
- 
--   emotion_object_position_set(w->emotion, w->play.position);
-+   emotion_object_position_set(w->emotion, w->play.position * w->play.length);
-    ecore_event_add(ENJOY_EVENT_POSITION_CHANGE, NULL, NULL, NULL);
- }
- 
--- 
-1.8.5.2
-
diff --git a/meta-efl/recipes-efl/e17/enjoy/configure.patch b/meta-efl/recipes-efl/e17/enjoy/configure.patch
deleted file mode 100644
index 6e0ed74..0000000
--- a/meta-efl/recipes-efl/e17/enjoy/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: git/configure.ac
-===================================================================
---- git.orig/configure.ac	2014-07-17 21:48:51.284570474 +0000
-+++ git/configure.ac	2014-07-17 21:53:39.104578318 +0000
-@@ -26,7 +26,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.6 dist-bzip2)
-+AM_INIT_AUTOMAKE([dist-bzip2 foreign])
- AC_CONFIG_HEADERS(config.h)
- _XTERM_COLORS
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
diff --git a/meta-efl/recipes-efl/e17/enjoy_git.bb b/meta-efl/recipes-efl/e17/enjoy_git.bb
deleted file mode 100644
index 716d73e..0000000
--- a/meta-efl/recipes-efl/e17/enjoy_git.bb
+++ /dev/null
@@ -1,50 +0,0 @@
-SUMMARY = "Enjoy music player"
-LICENSE = "LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6a6a8e020838b23406c81b19c1d46df6"
-DEPENDS = "evas ecore edje elementary emotion lightmediascanner eldbus gst-plugins-good"
-
-SRCREV = "aa8fec69e885eec048a849c2b34059ec58404e02"
-PV = "0.1.0+gitr${SRCPV}"
-
-#1st needed for all formats
-#2nd needed for mp3 playback
-#3d needed for ogg playback
-#4th needed for flac playback
-#5th needed binary to create db
-RDEPENDS_${PN} += "\
-       gst-plugins-base-typefindfunctions gst-plugins-base-playbin gst-plugins-base-volume gst-plugins-base-decodebin2 gst-plugins-good-autodetect \
-       gst-plugins-base-ogg gst-plugins-base-ivorbisdec \
-       gst-plugins-good-flac \
-       lightmediascanner-test \
-"
-
-inherit e gettext
-SRC_URI = " \
-    git://git.enlightenment.org/apps/enjoy.git \
-    file://0001-always-use-position-as-percent-and-define-a-1-second.patch \
-    file://configure.patch \
-"
-S = "${WORKDIR}/git"
-
-FILES_${PN} += "${datadir}/icons/"
-
-EXTRA_OECONF = "\
-    --with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc \
-"
-
-PACKAGECONFIG[mad] = ",,gst-plugins-ugly,gst-plugins-ugly-mad"
-PACKAGECONFIG[id3demux] = ",,,gst-plugins-good-id3demux"
-
-do_configure_prepend() {
-    autopoint || touch config.rpath
-}
-
-pkg_postinst_${PN} () {
-    echo "enjoy:    SCAN and LIBRARY MANAGER are not implemeted yet!"
-    echo "enjoy:    Meanwhile please run:"
-    echo "enjoy:    test-lms -m mono -p id3 -i 5000 -s /path/to/your/music/dir /home/root/.config/enjoy/media.db"
-    echo "enjoy:"
-    echo "enjoy:    Use test-lms -P to see available formats that can be scanned"
-}
-
-PNBLACKLIST[enjoy] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/ephoto/configure.patch b/meta-efl/recipes-efl/e17/ephoto/configure.patch
deleted file mode 100644
index 59466f8..0000000
--- a/meta-efl/recipes-efl/e17/ephoto/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: ephoto/configure.ac
-===================================================================
---- ephoto.orig/configure.ac	2014-07-17 21:48:51.028570467 +0000
-+++ ephoto/configure.ac	2014-07-17 21:52:56.120577146 +0000
-@@ -27,7 +27,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.6 dist-bzip2)
-+AM_INIT_AUTOMAKE([dist-bzip2 foreign])
- AM_CONFIG_HEADER(src/bin/config.h)
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- 
diff --git a/meta-efl/recipes-efl/e17/ephoto_svn.bb b/meta-efl/recipes-efl/e17/ephoto_svn.bb
deleted file mode 100644
index f86ffe1..0000000
--- a/meta-efl/recipes-efl/e17/ephoto_svn.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-LICENSE = "MIT & GPL-3.0"
-PV = "0.1.0+svnr${SRCREV}"
-PR = "${INC_PR}.0"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=fdffcddb366d0cc78e0e46c4ea70c8d9 \
-                    file://COPYING.icons;md5=8f0e2cd40e05189ec81232da84bd6e1a"
-
-require e-module.inc
-
-inherit gettext
-
-DEPENDS += "elementary ethumb ecore eio"
-
-SRCNAME = "${PN}"
-
-# autotools-brokensep
-B = "${S}"
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[ephoto] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/exalt-client/configure.patch b/meta-efl/recipes-efl/e17/exalt-client/configure.patch
deleted file mode 100644
index d4ff801..0000000
--- a/meta-efl/recipes-efl/e17/exalt-client/configure.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Index: exalt-client/configure.ac
-===================================================================
---- exalt-client.orig/configure.ac	2014-07-17 21:46:14.712566207 +0000
-+++ exalt-client/configure.ac	2014-07-17 21:47:56.880568991 +0000
-@@ -10,7 +10,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.8)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
- 
- AC_PROG_CC
-@@ -29,7 +29,6 @@
- 
- m4_ifdef([AM_GNU_GETTEXT], [
- AM_GNU_GETTEXT([external])
--po_makefile_in=po/Makefile.in
- AM_CONDITIONAL([HAVE_PO], [true])
- ],[
- AM_CONDITIONAL([HAVE_PO], [false])
-@@ -101,6 +100,5 @@
- src/Makefile
- module.desktop
- e_modules-exalt-client.spec
--$po_makefile_in
- ], [
- ])
diff --git a/meta-efl/recipes-efl/e17/exalt-client_svn.bb b/meta-efl/recipes-efl/e17/exalt-client_svn.bb
deleted file mode 100644
index cb78a2e..0000000
--- a/meta-efl/recipes-efl/e17/exalt-client_svn.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-LICENSE = "LGPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
-
-PV = "0.0.1+svnr${SRCPV}"
-
-require e-module.inc
-
-DEPENDS += "elementary exalt edje-native"
-
-CFLAGS += " -I${STAGING_INCDIR}/exalt -I${STAGING_INCDIR}/exalt_dbus"
-
-do_configure_prepend() {
-    sed -i -e /po/d ${S}/configure.ac
-    sed -i -e s:\ po::g ${S}/Makefile.am
-}
-
-FILES_${PN} += "${libdir}/enlightenment/modules/*/*.desktop \
-                ${libdir}/enlightenment/modules/*/*.edj \
-                ${libdir}/enlightenment/modules/*/*/*.so"
-
-FILES_${PN}-staticdev += "${libdir}/enlightenment/modules/*/*/*.a"
-FILES_${PN}-dev += "${libdir}/enlightenment/modules/*/*/*.la"
-FILES_${PN}-dbg += "${libdir}/enlightenment/modules/*/*/.debug"
-
-SRC_URI += "file://configure.patch"
-PNBLACKLIST[exalt-client] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/exalt_svn.bb b/meta-efl/recipes-efl/e17/exalt_svn.bb
deleted file mode 100644
index 9e63f1b..0000000
--- a/meta-efl/recipes-efl/e17/exalt_svn.bb
+++ /dev/null
@@ -1,36 +0,0 @@
-SUMMARY = "Exalt is a network manager for the windows manager Enlightenment DR17"
-HOMEPAGE = "http://watchwolf.fr/wiki/doku.php?id=exalt"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
-
-DEPENDS = "elementary vpnc wpa-supplicant ecore eet edbus"
-RDEPENDS_${PN} = "vpnc wpa-supplicant"
-
-PV = "0.9+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-inherit e
-SRC_URI = "${E_SVN}/trunk;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-EXTRA_OECONF = " \
---with-wpa_supplicant=${sbindir}/wpa_supplicant \
---with-vpnc=${sbindir}/vpnc \
---with-vpnc-disconnect=${sbindir}/vpnc-disconnect \
-"
-
-do_install_append() {
-    # install dbus config file
-    install -d ${D}${sysconfdir}/dbus-1/system.d/
-    install -m 0644 ${S}/data/daemon/dbus/exalt.conf ${D}${sysconfdir}/dbus-1/system.d/exalt.conf
-
-    # install dbus service file
-    install -d ${D}${datadir}/dbus-1/system-services/
-    install -m 0644 ${B}/org.e.Exalt.service ${D}${datadir}/dbus-1/system-services/
-}
-
-FILES_${PN} += "${datadir}/dbus-1"
-
-
-PNBLACKLIST[exalt] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/exquisite-theme-illume.bb b/meta-efl/recipes-efl/e17/exquisite-theme-illume.bb
deleted file mode 100644
index c9063bc..0000000
--- a/meta-efl/recipes-efl/e17/exquisite-theme-illume.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-DDESCRIPTION = "A theme for exquisite"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=f523ab5986cc79b52a90d2ac3d5454a2"
-SECTION = "x11"
-DEPENDS = "edje-native"
-PV = "1.0+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-inherit e-base update-alternatives allarch
-
-ALTERNATIVE_NAME = "exquisite-config"
-ALTERNATIVE_LINK = "${sysconfdir}/exquisite/config"
-ALTERNATIVE_PATH = "${sysconfdir}/exquisite/config-illume"
-ALTERNATIVE_PRIORITY = "10"
-
-SRCNAME = "b_and_w"
-
-SRC_URI = "${E_SVN}/trunk/THEMES;module=${SRCNAME};protocol=http \
-           file://LICENSE \
-"
-S = "${WORKDIR}/${SRCNAME}"
-
-do_compile() {
-    ${STAGING_BINDIR_NATIVE}/edje_cc exquisite.edc illume.edj
-}
-
-do_install() {
-    install -d ${D}${sysconfdir}/exquisite
-    install -d ${D}${datadir}/exquisite/data/themes
-    install -m 0644 ${S}/illume.edj ${D}${datadir}/exquisite/data/themes/
-    echo 'THEME="-t illume"' > ${D}${sysconfdir}/exquisite/config-illume
-}
-
-CONFFILES_${PN} = "${sysconfdir}/exquisite/config-illume"
-FILES_${PN} = "${sysconfdir}/exquisite ${datadir}/exquisite/data/themes"
-
-PNBLACKLIST[exquisite-theme-illume] ?= "Depends on blacklisted edje-native - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[exquisite-theme-illume] ?= "Runtime depends on blacklisted exquisite-theme-illume - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[exquisite-theme-illume] ?= "Runtime depends on blacklisted exquisite-theme-illume-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/exquisite-theme-illume/LICENSE b/meta-efl/recipes-efl/e17/exquisite-theme-illume/LICENSE
deleted file mode 100644
index 61bb2f6..0000000
--- a/meta-efl/recipes-efl/e17/exquisite-theme-illume/LICENSE
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright notice for Enlightenment:
-
-Copyright (C) 2000-2010 Carsten Haitzler and various contributors (see AUTHORS)
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-   1. Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-   2. Redistributions in binary form must reproduce the above copyright 
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/meta-efl/recipes-efl/e17/exquisite/exquisite-init b/meta-efl/recipes-efl/e17/exquisite/exquisite-init
deleted file mode 100644
index 2de6774..0000000
--- a/meta-efl/recipes-efl/e17/exquisite/exquisite-init
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/sh
-
-for x in $(cat /proc/cmdline); do
-  case $x in
-    splash=false)
-      echo "Splash Disabled"
-      exit 0;
-      ;;
-  esac
-done
-
-. /etc/init.d/functions
-
-### Default config here - gets overriden later
-THEME="-t default"
-FPS="-fps 30"
-### Override config - if there is a config file - load it.
-if test -f /etc/exquisite/config; then
-  . /etc/exquisite/config
-fi
-
-args=''
-case `machine_id` in
-  "hp_ipaq_h3100"|"hp_ipaq_h3800")
-     args='-rot 90' ;;
-  "hp_ipaq_3600"|"hp_ipaq_3700"|"hp_ipaq_h3900"|"htc_universal"|*collie|*poodle|*akita|*spitz|*borzoi)
-     args='-rot 270' ;;
-esac
-args=$args" $FPS $THEME"
-
-export EXDIR=/mnt/.splash
-export EXQUISITE_IPC=$EXDIR/exquisite
-mount tmpfs -t tmpfs $EXDIR -o,size=40k
-exquisite -fb -fs $args &
-
-exquisite-write -wait 120
-exquisite-write "PULSATE"
-setterm -blank 0
-setterm -powersave off
-setterm -powerdown 0
diff --git a/meta-efl/recipes-efl/e17/exquisite/splashfuncs b/meta-efl/recipes-efl/e17/exquisite/splashfuncs
deleted file mode 100644
index ada2a96..0000000
--- a/meta-efl/recipes-efl/e17/exquisite/splashfuncs
+++ /dev/null
@@ -1,29 +0,0 @@
-status() {
-  if type splash-write >/dev/null 2>&1; then
-    (TMPDIR="/mnt/.splash" EXQUISITE_IPC="$TMPDIR/exquisite" splash-write "$1" || true) &
-  fi
-}
-
-status_position() {
-  status "PROGRESS $1"
-}
-
-status_title() {
-  status "TITLE $1"
-}
-
-status_text() {
-  if test -n "$1"; then
-    status "MSG $1"
-  else
-    status "CLEAR"
-  fi
-}
-
-status_pulse() {
-  status "PULSATE"
-}
-
-status_tick() {
-  status "TICK"
-}
diff --git a/meta-efl/recipes-efl/e17/exquisite_svn.bb b/meta-efl/recipes-efl/e17/exquisite_svn.bb
deleted file mode 100644
index 826cd44..0000000
--- a/meta-efl/recipes-efl/e17/exquisite_svn.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-SUMMARY = "A psplash replacement for display"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=14defa372a91118e755133bc8e6aff83"
-DEPENDS = "eet evas ecore embryo edje"
-PV = "0.0.1+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-RRECOMMENDS_${PN} = "exquisite-themes"
-RCONFLICTS_${PN} = "psplash virtual-psplash"
-
-SRCNAME = "exquisite"
-
-inherit e
-SRC_URI = "${E_SVN}/trunk;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-EXTRA_OECONF = "--with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc"
-
-SRC_URI += "file://exquisite-init"
-SRC_URI += "file://splashfuncs"
-
-inherit update-rc.d
-
-do_install_prepend() {
-    install -d ${D}/mnt/.splash/
-    install -d ${D}${sysconfdir}/init.d
-    install -m 0755 ${WORKDIR}/exquisite-init ${D}${sysconfdir}/init.d/exquisite
-    install -d ${D}${sysconfdir}/default
-    install -m 0755 ${WORKDIR}/splashfuncs ${D}${sysconfdir}/default/splashfuncs
-    install -d ${D}${bindir}
-    ln -s exquisite-write ${D}${bindir}/splash-write
-}
-
-
-do_install_append() {
-    rm -rf ${D}${datadir}/exquisite/data/fonts/*
-}
-
-INITSCRIPT_NAME = "exquisite"
-INITSCRIPT_PARAMS = "start 01 S . stop 20 0 1 6 ."
-
-FILES_${PN} += "/mnt/.splash/"
-
-PNBLACKLIST[exquisite] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130619/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/flame/configure.patch b/meta-efl/recipes-efl/e17/flame/configure.patch
deleted file mode 100644
index 87c85de..0000000
--- a/meta-efl/recipes-efl/e17/flame/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: cpu/configure.ac
-===================================================================
---- cpu.orig/configure.ac	2014-07-17 20:39:48.000000000 +0000
-+++ cpu/configure.ac	2014-07-17 21:39:55.320555868 +0000
-@@ -10,7 +10,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.6)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- 
diff --git a/meta-efl/recipes-efl/e17/flame_svn.bb b/meta-efl/recipes-efl/e17/flame_svn.bb
deleted file mode 100644
index 6583d27..0000000
--- a/meta-efl/recipes-efl/e17/flame_svn.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35 \
-                    file://COPYING-PLAIN;md5=c910b645eda0005ccec46f75203dc96e"
-
-PV = "0.0.3+svnr${SRCPV}"
-PR = "${INC_PR}.0"
-
-require e-module.inc
-
-do_configure_prepend() {
-    sed -i -e /po/d ${S}/configure.ac
-    sed -i -e s:\ po::g ${S}/Makefile.am
-}
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[flame] ?= "Depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/forecasts/configure.patch b/meta-efl/recipes-efl/e17/forecasts/configure.patch
deleted file mode 100644
index 87c85de..0000000
--- a/meta-efl/recipes-efl/e17/forecasts/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: cpu/configure.ac
-===================================================================
---- cpu.orig/configure.ac	2014-07-17 20:39:48.000000000 +0000
-+++ cpu/configure.ac	2014-07-17 21:39:55.320555868 +0000
-@@ -10,7 +10,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.6)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- 
diff --git a/meta-efl/recipes-efl/e17/forecasts_svn.bb b/meta-efl/recipes-efl/e17/forecasts_svn.bb
deleted file mode 100644
index 495f314..0000000
--- a/meta-efl/recipes-efl/e17/forecasts_svn.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35 \
-                    file://COPYING-PLAIN;md5=51328cfb73bfec3eed7cfd3dbed73988"
-
-PV = "0.2.0+svnr${SRCREV}"
-PR = "${INC_PR}.0"
-
-require e-module.inc
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[forecasts] ?= "Depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/illume-keyboards-shr/0001-Makefile-update-KEYBOARDS_DIR-for-new-illume2.patch b/meta-efl/recipes-efl/e17/illume-keyboards-shr/0001-Makefile-update-KEYBOARDS_DIR-for-new-illume2.patch
deleted file mode 100644
index b18a69b..0000000
--- a/meta-efl/recipes-efl/e17/illume-keyboards-shr/0001-Makefile-update-KEYBOARDS_DIR-for-new-illume2.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 9316e3973c44b981e73b953b2861060c6902de47 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Mon, 23 Aug 2010 12:54:05 +0200
-Subject: [PATCH] Makefile: update KEYBOARDS_DIR for new illume2
-
----
- Makefile |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 46e9420..3d8757c 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,5 +1,5 @@
- 
--INSTBASE = /usr/lib/enlightenment/modules/illume/keyboards
-+INSTBASE = /usr/lib/enlightenment/modules/illume-keyboard/keyboards
- 
- FILES-arabic = Arabic.kbd Arabic.png
- FILES-persian = Persian.kbd Persian.png
--- 
-1.7.2
-
diff --git a/meta-efl/recipes-efl/e17/illume-keyboards-shr/LICENSE b/meta-efl/recipes-efl/e17/illume-keyboards-shr/LICENSE
deleted file mode 100644
index 61bb2f6..0000000
--- a/meta-efl/recipes-efl/e17/illume-keyboards-shr/LICENSE
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright notice for Enlightenment:
-
-Copyright (C) 2000-2010 Carsten Haitzler and various contributors (see AUTHORS)
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-   1. Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-   2. Redistributions in binary form must reproduce the above copyright 
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/meta-efl/recipes-efl/e17/news_svn.bb b/meta-efl/recipes-efl/e17/news_svn.bb
deleted file mode 100644
index 4349e04..0000000
--- a/meta-efl/recipes-efl/e17/news_svn.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-PV = "0.1.0+svnr${SRCPV}"
-PR = "${INC_PR}.0"
-
-require e-module.inc
-
-do_configure_prepend() {
-    sed -i -e /po/d configure.ac
-    sed -i -e s:\ po::g Makefile.am
-}
-
-PNBLACKLIST[news] ?= "if you want to use these modules with E18, then you need to update it to git recipe fetching newer sources from http://git.enlightenment.org/enlightenment/modules/news.git/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/places/configure.patch b/meta-efl/recipes-efl/e17/places/configure.patch
deleted file mode 100644
index f8f4834..0000000
--- a/meta-efl/recipes-efl/e17/places/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: places/configure.ac
-===================================================================
---- places.orig/configure.ac	2014-07-17 21:51:01.276574017 +0000
-+++ places/configure.ac	2014-07-17 21:52:07.096575810 +0000
-@@ -10,7 +10,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.8)
-+AM_INIT_AUTOMAKE([foreign])
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- AM_CONFIG_HEADER(config.h)
- 
diff --git a/meta-efl/recipes-efl/e17/places_svn.bb b/meta-efl/recipes-efl/e17/places_svn.bb
deleted file mode 100644
index b184f84..0000000
--- a/meta-efl/recipes-efl/e17/places_svn.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35"
-
-PV = "0.1.0+svnr${SRCPV}"
-PR = "${INC_PR}.0"
-
-require e-module.inc
-
-do_configure_prepend() {
-    autopoint || touch config.rpath
-}
-
-# Calls /usr/bin/eject for media
-RRECOMMENDS_${PN} += "eject"
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[places] ?= "Depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/rage_svn.bb b/meta-efl/recipes-efl/e17/rage_svn.bb
deleted file mode 100644
index 0a90fe3..0000000
--- a/meta-efl/recipes-efl/e17/rage_svn.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "Rage is a media center application based on EFL"
-AUTHOR = "Carsten 'The Rasterman' Haitzler"
-HOMEPAGE = "http://www.rasterman.com"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35"
-DEPENDS = "emotion evas ecore edje"
-SECTION = "x11/multimedia"
-PV = "0.3.0.042+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-inherit e
-SRC_URI = "${E_SVN}/trunk;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-PNBLACKLIST[rage] ?= "if you want to use these modules with E18, then you need to update it to git recipe fetching newer sources from  http://git.enlightenment.org/apps/rage.git/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/rain/configure.patch b/meta-efl/recipes-efl/e17/rain/configure.patch
deleted file mode 100644
index 87c85de..0000000
--- a/meta-efl/recipes-efl/e17/rain/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: cpu/configure.ac
-===================================================================
---- cpu.orig/configure.ac	2014-07-17 20:39:48.000000000 +0000
-+++ cpu/configure.ac	2014-07-17 21:39:55.320555868 +0000
-@@ -10,7 +10,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.6)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- 
diff --git a/meta-efl/recipes-efl/e17/rain_svn.bb b/meta-efl/recipes-efl/e17/rain_svn.bb
deleted file mode 100644
index 14aa2ed..0000000
--- a/meta-efl/recipes-efl/e17/rain_svn.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-LICENSE = "MIT"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35 \
-                    file://COPYING-PLAIN;md5=c910b645eda0005ccec46f75203dc96e"
-
-PV = "0.0.3+svnr${SRCPV}"
-PR = "${INC_PR}.0"
-
-require e-module.inc
-
-do_configure_prepend() {
-    sed -i -e /po/d ${S}/configure.ac
-    sed -i -e s:\ po::g ${S}/Makefile.am
-}
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[rain] ?= "Depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/screenshot/screenshot-fix-mkinstalldirs.patch b/meta-efl/recipes-efl/e17/screenshot/screenshot-fix-mkinstalldirs.patch
deleted file mode 100644
index 14f1141..0000000
--- a/meta-efl/recipes-efl/e17/screenshot/screenshot-fix-mkinstalldirs.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
-Subject: fix screenshot po/ building
-Upstream-Status: Pending
-
-Somehow configure doesn't substitute @MKINSTALLDIRS@ by default anymore,
-however this substitution is required for po/Makefile
-
-Fix that by calling AM_MKINSTALLDIRS from configure.ac
-
-Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
-
-Index: E-MODULES-EXTRA/screenshot/configure.ac
-===================================================================
---- E-MODULES-EXTRA.orig/screenshot/configure.ac	2011-08-17 15:49:22.000000000 +0400
-+++ E-MODULES-EXTRA/screenshot/configure.ac	2011-08-17 15:49:34.000000000 +0400
-@@ -24,6 +24,7 @@
- define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
- AC_PROG_LIBTOOL
- 
-+AM_MKINSTALLDIRS
- m4_ifdef([AM_GNU_GETTEXT_VERSION], [
- AM_GNU_GETTEXT_VERSION([0.14])
- ])
diff --git a/meta-efl/recipes-efl/e17/screenshot_svn.bb b/meta-efl/recipes-efl/e17/screenshot_svn.bb
deleted file mode 100644
index 233f777..0000000
--- a/meta-efl/recipes-efl/e17/screenshot_svn.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-LICENSE = "MIT"
-PV = "0.3.0+svnr${SRCREV}"
-PR = "${INC_PR}.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35"
-SRC_URI += "file://screenshot-fix-mkinstalldirs.patch"
-
-require e-module.inc
-
-DEPENDS += "emprint"
-RDEPENDS_${PN} += "emprint"
-
-do_configure_prepend() {
-    sed -i -e 's:AC_MSG_ERROR(emprint not found):echo foo:g' ${S}/configure.ac
-}
-
-PNBLACKLIST[screenshot] ?= "depends on blacklisted emprint - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/terminology.inc b/meta-efl/recipes-efl/e17/terminology.inc
deleted file mode 100644
index 24f789f..0000000
--- a/meta-efl/recipes-efl/e17/terminology.inc
+++ /dev/null
@@ -1,22 +0,0 @@
-DESCRIPTION = "Enlightenment Terminal Emulator"
-LICENSE = "MIT & BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4efac6b05b3256ba7da66301ac1ee6c6"
-DEPENDS = "evas ecore edje elementary eina eet emotion"
-
-inherit e gettext
-
-# Because latest release we have is 0.1.0 which sorts lower then 0.1.0+svnr${SRCPV} already in feeds
-PE = "2"
-
-EXTRA_OECONF = "\
-    --with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc \
-"
-
-FILES_${PN} += "\
-    ${datadir}/icons/terminology.png \
-"
-
-# doesn't start without own theme
-# ERR<770>:terminology utils.c:26 theme_apply() Could not load any theme for group=terminology/background: No Error
-# CRI<770>:terminology main.c:448 elm_main() Couldn't find terminology theme! Forgot 'make install'?
-RDEPENDS_${PN} += "${PN}-themes"
diff --git a/meta-efl/recipes-efl/e17/terminology_0.9.1.bb b/meta-efl/recipes-efl/e17/terminology_0.9.1.bb
deleted file mode 100644
index 77dd223..0000000
--- a/meta-efl/recipes-efl/e17/terminology_0.9.1.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI = "\
-    ${E_RELEASES}/apps/${SRCNAME}/${SRCNAME}-${SRCVER}.tar.gz \
-"
-
-SRC_URI[md5sum] = "c7ce2e8ebc5f311d3d3f59ecfdf18f61"
-SRC_URI[sha256sum] = "7fb864a14202490e9181c5f254a7e772019216a3aa75c3952d0f12cd32113896"
-
-PNBLACKLIST[terminology] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/e17/uptime/configure.patch b/meta-efl/recipes-efl/e17/uptime/configure.patch
deleted file mode 100644
index 87c85de..0000000
--- a/meta-efl/recipes-efl/e17/uptime/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: cpu/configure.ac
-===================================================================
---- cpu.orig/configure.ac	2014-07-17 20:39:48.000000000 +0000
-+++ cpu/configure.ac	2014-07-17 21:39:55.320555868 +0000
-@@ -10,7 +10,7 @@
- AC_CANONICAL_HOST
- AC_ISC_POSIX
- 
--AM_INIT_AUTOMAKE(1.6)
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(config.h)
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
- 
diff --git a/meta-efl/recipes-efl/e17/uptime_svn.bb b/meta-efl/recipes-efl/e17/uptime_svn.bb
deleted file mode 100644
index 60d48a2..0000000
--- a/meta-efl/recipes-efl/e17/uptime_svn.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=344895f253c32f38e182dcaf30fe8a35 \
-                    file://COPYING-PLAIN;md5=c910b645eda0005ccec46f75203dc96e"
-
-PV = "0.0.2+svnr${SRCREV}"
-PR = "${INC_PR}.0"
-
-require e-module.inc
-
-SRC_URI += "file://configure.patch"
-
-PNBLACKLIST[uptime] ?= "Depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/azy_svn.bb b/meta-efl/recipes-efl/efl/azy_svn.bb
deleted file mode 100644
index d3bc200..0000000
--- a/meta-efl/recipes-efl/efl/azy_svn.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-DESCRIPTION = "Azy is a library meant for implementing rpc clients and servers in a simple manner."
-DEPENDS = "pkgconfig zlib openssl eina gnutls ecore libxml2 re2c-native mysql5 azy-native glib-2.0"
-DEPENDS_class-native = "pkgconfig-native zlib-native openssl-native eina-native gnutls-native ecore-native libxml2-native re2c-native mysql5-native glib-2.0-native"
-LICENSE = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-
-PV = "1.0.0+svnr${SRCPV}"
-PR = "r2"
-
-SRCREV = "${EFL_SRCREV}"
-
-# to provide native lemon binary
-BBCLASSEXTEND = "native"
-
-EXTRA_OECONF += " --disable-mysql-tests"
-
-do_configure_prepend_class-target() {
-    sed -i "s#\./lemon#${STAGING_BINDIR_NATIVE}/azy_lemon#g" ${S}/src/bin/Makefile.am
-    sed -i "s#\$(top_builddir)/src/bin/azy_parser -H -p -o#${STAGING_BINDIR_NATIVE}/azy_parser -H -p -o#g" ${S}/src/tests/Makefile.am
-    sed -i "s#\$(top_builddir)/src/bin/azy_parser -eHn -m#${STAGING_BINDIR_NATIVE}/azy_parser -eHn -m#g" ${S}/src/tests/identi.ca/Makefile.am
-}
-
-do_install_append_class-native() {
-    install -d ${D}/${bindir}
-    install -m 0755 ${B}/src/bin/lemon ${D}/${bindir}/azy_lemon
-}
-
-inherit efl
-
-SRC_URI = "${E_SVN}/trunk/PROTO;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-# azy/2_1.0.0+svnr82070-r2/azy/src/lib/extras/pugixml.cpp:33:
-# sysroots/qemuarm/usr/include/c++/5.2.0/bits/basic_string.h:4780:5: error: reference to 'basic_string' is ambiguous
-#     basic_string<_CharT, _Traits, _Alloc>
-#     ^
-PNBLACKLIST[azy] ?= "OLD and doesn't build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/ecore/fix-ecore-fb-initialization.patch b/meta-efl/recipes-efl/efl/ecore/fix-ecore-fb-initialization.patch
deleted file mode 100644
index 55773a3..0000000
--- a/meta-efl/recipes-efl/efl/ecore/fix-ecore-fb-initialization.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 657571197c9d369e12ae31b6777a1929fe3680ef Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Sat, 29 Oct 2011 00:16:55 +0200
-Subject: [PATCH] ecore-fb: fix ts init
-
-Upstream-Status: Pending
-
-The whole ecore-fb init logic is somewhat flawed; with this patch we
-get at least a working touchscreen w/ tslib again.
-
-Signed-off-by: Michael 'Mickey' Lauer <mlauer at vanille-media.de>
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- ecore/src/lib/ecore_fb/ecore_fb.c |    4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/src/lib/ecore_fb/ecore_fb.c b/src/lib/ecore_fb/ecore_fb.c
-index 5b2b84b..a1904b3 100644
---- a/src/lib/ecore_fb/ecore_fb.c
-+++ b/src/lib/ecore_fb/ecore_fb.c
-@@ -46,6 +46,9 @@ ecore_fb_init(const char *name __UNUSED__)
-    if (!ecore_fb_vt_init())
-       return --_ecore_fb_init_count;
- 
-+   if (!ecore_fb_ts_init())
-+      return --_ecore_fb_init_count;
-+
-    if (!oldhand)
-      {
-         oldhand = signal(SIGINT, nosigint);
-@@ -77,6 +80,7 @@ ecore_fb_shutdown(void)
-         oldhand = NULL;
-      }
-    
-+   ecore_fb_ts_shutdown();
-    ecore_fb_vt_shutdown();
- 
-    return _ecore_fb_init_count;
--- 
-1.7.8.6
-
diff --git a/meta-efl/recipes-efl/efl/edbus.inc b/meta-efl/recipes-efl/efl/edbus.inc
deleted file mode 100644
index 03d0ee5..0000000
--- a/meta-efl/recipes-efl/efl/edbus.inc
+++ /dev/null
@@ -1,29 +0,0 @@
-DESCRIPTION = "DBus and HAL convenience wrappers for EFL"
-DEPENDS = "dbus ecore eina"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=550b8cea13dacc4bf00508a8cce1074c"
-
-inherit efl
-
-# -dev and -dbg packages wants ${PN} which is empty here
-ALLOW_EMPTY_${PN} = "1"
-
-BBCLASSEXTEND = "native"
-INC_PR = "r0"
-
-SRCNAME = "e_dbus"
-
-# it needs to be disabled, because creates circular dependency on elementary
-EXTRA_OECONF += "--disable-edbus-performance-test"
-
-PACKAGES =+ "${PN}-enotify ${PN}-edbus ${PN}-enm ${PN}-ehal ${PN}-econnman ${PN}-eofono ${PN}-eukit ${PN}-ebluez"
-FILES_${PN}-enotify = "${libdir}/libenotify.so.* ${bindir}/e-notify-send"
-FILES_${PN}-edbus = "${libdir}/libedbus.so.*"
-FILES_${PN}-enm = "${libdir}/libenm.so.*"
-FILES_${PN}-ehal = "${libdir}/libehal.so.*"
-FILES_${PN}-econnman = "${libdir}/libeconnman.so.* ${libdir}/libeconnman0_7x.so.*"
-FILES_${PN}-eofono = "${libdir}/libeofono.so.*"
-FILES_${PN}-eukit = "${libdir}/libeukit.so.*"
-FILES_${PN}-ebluez = "${libdir}/libebluez.so.*"
-FILES_${PN} += "${datadir}/e_dbus/logo.png"
-
diff --git a/meta-efl/recipes-efl/efl/edbus_1.7.9.bb b/meta-efl/recipes-efl/efl/edbus_1.7.9.bb
deleted file mode 100644
index a8033ac..0000000
--- a/meta-efl/recipes-efl/efl/edbus_1.7.9.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI = "\
-    ${E_MIRROR}/${SRCNAME}-${SRCVER}.tar.gz \
-"
-
-SRC_URI[md5sum] = "8f72da14e5664aad8c45eeeca0e3ff5f"
-SRC_URI[sha256sum] = "c328c4cf1424629cb67c83689ccc1f95967abcb4c03dffd437e93b799ff151c1"
-
-PNBLACKLIST[edbus] ?= "Depends on blacklisted ecore - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[edbus] ?= "Depends on blacklisted eina - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[edbus] ?= "Runtime depends on blacklisted edbus - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[edbus] ?= "Runtime depends on blacklisted edbus-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/edje-fpu.inc b/meta-efl/recipes-efl/efl/edje-fpu.inc
deleted file mode 100644
index 32a6daf..0000000
--- a/meta-efl/recipes-efl/efl/edje-fpu.inc
+++ /dev/null
@@ -1,6 +0,0 @@
-
-def get_edje_fpu_setting(bb, d):
-    if d.getVar('TARGET_FPU') in [ 'soft' ]:
-        return "--enable-fixed-point"
-    return ""
-
diff --git a/meta-efl/recipes-efl/efl/efl.inc b/meta-efl/recipes-efl/efl/efl.inc
deleted file mode 100644
index 4cd21bf..0000000
--- a/meta-efl/recipes-efl/efl/efl.inc
+++ /dev/null
@@ -1,290 +0,0 @@
-SUMMARY = "EFL"
-LICENSE = "MIT & BSD & LGPL-2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ca7873210523dcfd32694b94286dca60"
-
-DEPENDS_class-native = "freetype-native libxext-native libpng-native jpeg-native tiff-native libfribidi-native glib-2.0-native dbus-native openssl-native"
-DEPENDS = "virtual/libiconv tslib curl glib-2.0 gnutls pkgconfig zlib jpeg openssl libsndfile1 dbus libexif librsvg freetype libpng tiff libxext virtual/libx11 libxdamage libxrender fontconfig libfribidi giflib udev libxcursor libxcomposite libxinerama libxrandr libxtst libxscrnsaver efl-native util-linux libunwind"
-
-inherit efl gettext pkgconfig
-
-BBCLASSEXTEND = "native"
-
-PROVIDES += "ecore edje eet eeze efreet eina eio embryo emotion ethumb evas eldbus"
-
-# we don't have bullet for physics
-# You have chosen to disable physics support. This disables lots of
-# core functionality and is effectively never tested. You are going
-# to find features that suddenly don't work and as a result cause
-# a series of breakages. This is simply not tested so you are on
-# your own in terms of ensuring everything works if you do this
-EXTRA_OECONF = " \
-    --disable-physics \
-    --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aba \
-"
-EXTRA_OECONF_append_class-target = " \
-    --with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc \
-    --with-eolian-gen=${STAGING_BINDIR_NATIVE}/eolian_gen \
-    --with-eolian-cxx=${STAGING_BINDIR_NATIVE}/eolian_cxx \
-    --with-elua=${STAGING_BINDIR_NATIVE}/elua \
-"
-EXTRA_OECONF_append_class-native = " \
-    --disable-fontconfig \
-    --disable-audio \
-    --disable-physics \
-    --disable-multisense \
-    --disable-cserve \
-    --disable-libeeze \
-    --with-x11=none \
-    --disable-image-loader-bmp \
-    --disable-image-loader-eet \
-    --disable-image-loader-generic \
-    --disable-image-loader-gif \
-    --disable-image-loader-ico \
-    --disable-image-loader-jp2k \
-    --disable-image-loader-pmaps \
-    --disable-image-loader-psd \
-    --disable-image-loader-tga \
-    --disable-image-loader-wbmp \
-    --disable-image-loader-webp \
-    --disable-image-loader-xpm \
-    --disable-image-loader-tgv \
-    --disable-image-loader-dds \
-"
-
-PACKAGECONFIG ?= "egl opengl-es gstreamer1 pulseaudio luajit ${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)}"
-PACKAGECONFIG_class-native = "luajit"
-
-PACKAGECONFIG[wayland] = "--enable-wayland --enable-wayland-ivi-shell,--disable-wayland --disable-wayland-ivi-shell,wayland"
-PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl"
-# sort of tri-state
-PACKAGECONFIG[opengl-full] = "--with-opengl=full,,virtual/libgl"
-PACKAGECONFIG[opengl-es] = "--with-opengl=es,,virtual/libgles2"
-PACKAGECONFIG[opengl-none] = "--with-opengl=none,,"
-# be aware when enabling this for efl-native, we don't provide gcc-native so you need to make
-# sure that all your builders have g++ which supports -std=gnu++11
-PACKAGECONFIG[c++11] = "--enable-cxx-bindings,--disable-cxx-bindings"
-PACKAGECONFIG[gstreamer] = "--enable-gstreamer,--disable-gstreamer,gstreamer"
-PACKAGECONFIG[gstreamer1] = "--enable-gstreamer1,--disable-gstreamer1,gstreamer1.0 gstreamer1.0-plugins-base"
-PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio"
-PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
-PACKAGECONFIG[luajit] = "--disable-lua-old,--enable-lua-old,luajit"
-PACKAGECONFIG[lua-old] = "--enable-lua-old,--disable-lua-old,lua"
-PACKAGECONFIG[avahi] = "--enable-avahi,--disable-avahi,avahi"
-# currently we don't provide doxygen-native
-PACKAGECONFIG[doc] = "--enable-doc,--disable-doc,doxygen-native"
-
-do_install_append() {
-    # don't ship precompiled lua files
-    rm -f ${datadir}/elua/*/*.luac
-}
-
-PACKAGES =+ "edje-utils embryo-utils embryo-tests efreet-trash efreet-mime libeet libefreet ecore-audio ecore-input-evas ecore-input ecore-imf-evas ecore-imf ecore-file ecore-con ecore-ipc ecore-x ecore-evas libemotion eo ecore edje eet eeze efreet eina eio embryo emotion ethumb evas eldbus elua"
-
-# upgrade path from 1.7
-DEBIAN_NOAUTONAME_ecore-audio = "1"
-DEBIAN_NOAUTONAME_ecore-input-evas = "1"
-DEBIAN_NOAUTONAME_ecore-input = "1"
-DEBIAN_NOAUTONAME_ecore-imf-evas = "1"
-DEBIAN_NOAUTONAME_ecore-imf = "1"
-DEBIAN_NOAUTONAME_ecore-file = "1"
-DEBIAN_NOAUTONAME_ecore-con = "1"
-DEBIAN_NOAUTONAME_ecore-ipc = "1"
-DEBIAN_NOAUTONAME_ecore-x = "1"
-DEBIAN_NOAUTONAME_ecore-evas = "1"
-DEBIAN_NOAUTONAME_embryo = "1"
-
-ALLOW_EMPTY_ecore = "1"
-RDEPENDS_ecore = "ecore-audio ecore-input-evas ecore-input ecore-imf-evas ecore-imf ecore-file ecore-con ecore-ipc ecore-x ecore-evas"
-
-python populate_packages_prepend () {
-    for plugin_type in "engines loaders savers".split():
-        bb.note( "splitting packages for evas %s..." % plugin_type )
-        basedir = d.expand( '${libdir}/evas/modules/%s' % plugin_type)
-
-        do_split_packages(d, basedir, '^(.*)',
-        output_pattern = 'evas-' + plugin_type[:-1] + "-%s",
-        description = 'Evas module %s',
-        allow_dirs=True, recursive=False, extra_depends="" )
-
-        plugin_type = "cserve2"
-        bb.note( "splitting packages for evas %s..." % plugin_type )
-        basedir = d.expand( '${libdir}/evas/%s/loaders' % plugin_type)
-
-        do_split_packages(d, basedir, '^(.*)',
-        output_pattern = 'evas-' + plugin_type + "-%s",
-        description = 'Evas csever2 loader module %s',
-        allow_dirs=True, recursive=False, extra_depends="" )
-}
-
-PACKAGES += "evas-loader-png evas-engine-software-generic evas-engine-fb"
-PACKAGES_DYNAMIC += "^evas-engine-.* ^evas-loader-.* ^evas-saver-.* ^evas-cserve2-.*"
-
-# PACKAGES_DYNAMIC + do_split_packages isn't used for all libe libs,
-# because PACKAGES_DYNAMIC would be catching too many patterns
-# (or need to list all possible prefixes) and not all original packages
-# were splitted like that, so it would need RCONFLICTS/RPROVIDES/RREPLACES
-# combos at least in few places for upgrade path.
-
-FILES_efreet-trash = " \
-    ${libdir}/libefreet_trash${SOLIBS} \
-"
-FILES_efreet-mime = " \
-    ${libdir}/libefreet_mime${SOLIBS} \
-"
-FILES_libeet = " \
-    ${libdir}/libeet${SOLIBS} \
-"
-FILES_libefreet = " \
-    ${libdir}/libefreet${SOLIBS} \
-"
-FILES_ecore-audio = "\
-    ${libdir}/libecore_audio${SOLIBS} \
-"
-FILES_ecore-input-evas = "\
-    ${libdir}/libecore_input_evas${SOLIBS} \
-"
-FILES_ecore-input = "\
-    ${libdir}/libecore_input${SOLIBS} \
-"
-FILES_ecore-imf-evas = "\
-    ${libdir}/libecore_imf_evas${SOLIBS} \
-    ${libdir}/ecore-imf/modules/*/*/module.so \
-"
-FILES_ecore-imf = "\
-    ${libdir}/libecore_imf${SOLIBS} \
-"
-
-FILES_ecore-file = "\
-    ${libdir}/libecore_file${SOLIBS} \
-"
-FILES_ecore-con = "\
-    ${libdir}/libecore_con${SOLIBS} \
-"
-FILES_ecore-ipc = "\
-    ${libdir}/libecore_ipc${SOLIBS} \
-"
-FILES_ecore-x = "\
-    ${libdir}/libecore_x${SOLIBS} \
-    ${libdir}/ecore_x/bin/v-*/ecore_x_vsync \
-"
-FILES_ecore-evas = "\
-    ${libdir}/libecore_evas${SOLIBS} \
-    ${libdir}/ecore-evas/engines/*/*/module.so \
-"
-FILES_eio = "\
-    ${libdir}/libeio${SOLIBS} \
-"
-FILES_eina = "\
-    ${libdir}/libeina${SOLIBS} \
-    ${bindir}/eina-bench-cmp \
-"
-FILES_edje-utils = "\
-    ${bindir}/edje_* \
-    ${datadir}/edje/include/edje.inc \
-"
-FILES_eldbus = "\
-    ${libdir}/libeldbus${SOLIBS} \
-"
-FILES_eo = "\
-    ${libdir}/libeo${SOLIBS} \
-"
-FILES_libemotion = "\
-    ${libdir}/libemotion${SOLIBS} \
-"
-FILES_efreet = " \
-    ${datadir}/dbus-1/services/*Efreet* \
-    ${libdir}/efreet/*/efreet*create \
-    ${bindir}/efreetd \
-    ${datadir}/efreet \
-"
-FILES_eet = " \
-    ${bindir}/eet \
-    ${bindir}/eetpack \
-    ${bindir}/vieet \
-    ${bindir}/diffeet \
-    ${libdir}/libeet${SOLIBS} \
-"
-FILES_emotion = " \
-    ${datadir}/emotion \
-    ${libdir}/emotion/modules/gstreamer1/*/module.so \
-"
-FILES_embryo-tests = " \
-    ${datadir}/embryo/ \
-"
-FILES_embryo-utils = " \
-    ${binddir}/embryo_* \
-"
-FILES_embryo = " \
-    ${libdir}/libembryo${SOLIBS} \
-"
-FILES_ethumb = " \
-    ${datadir}/dbus-1/services/*Ethumb* \
-    ${libdir}/libethumb${SOLIBS} \
-    ${libdir}/libethumb_client${SOLIBS} \
-    ${bindir}/ethumbd \
-    ${bindir}/ethumbd_client \
-    ${bindir}/ethumb \
-    ${libdir}/ethumb/*/*/*/module.so \
-    ${libdir}/ethumb/*/*/*/*.edj \
-    ${libdir}/ethumb_client/utils/*/ethumbd_slave \
-    ${datadir}/ethumb* \
-"
-FILES_ecore = " \
-    ${libdir}/libecore${SOLIBS} \
-    ${libdir}/ecore*/*/*/*/module.so \
-    ${datadir}/ecore* \
-"
-FILES_evas = " \
-    ${libdir}/libevas${SOLIBS} \
-    ${libdir}/evas*/*/*/*/*/module.so \
-    ${libdir}/evas*/*/*/*/*/*.edj \
-    ${libdir}/evas/cserve2/bin/*/evas_cserve2* \
-    ${datadir}/evas* \
-    ${bindir}/evas_cserve2_* \
-"
-
-FILES_eeze = " \
-    ${libdir}/libeeze${SOLIBS} \
-    ${libdir}/eeze*/*/*/*/*/module.so \
-    ${datadir}/eeze \
-    ${bindir}/eeze_* \
-"
-FILES_edje = " \
-    ${libdir}/libedje${SOLIBS} \
-    ${libdir}/edje*/*/*/*/module.so \
-    ${libdir}/edje/utils/*/epp \
-    ${datadir}/edje \
-    ${datadir}/mime \
-"
-FILES_elua = " \
-    ${bindir}/elua \
-    ${datadir}/elua \
-"
-FILES_${PN}-dbg += " \
-    ${libdir}/efreet/*/.debug \
-    ${libdir}/ecore*/*/*/*/.debug \
-    ${libdir}/ecore*/*/*/.debug \
-    ${libdir}/evas*/*/*/*/*/.debug \
-    ${libdir}/evas/cserve2/bin/*/.debug \
-    ${libdir}/eeze*/*/*/*/*/.debug \
-    ${libdir}/edje*/*/*/*/.debug \
-    ${libdir}/edje/utils/*/.debug \
-    ${libdir}/ethumb/*/*/*/.debug \
-    ${libdir}/ethumb_client/utils/*/.debug \
-    ${libdir}/emotion/modules/gstreamer1/*/.debug \
-"
-FILES_${PN}-dev += " \
-    ${libdir}/cmake \
-    ${libdir}/ecore*/*/*/*/module.la \
-    ${libdir}/evas*/*/*/*/*/module.la \
-    ${libdir}/ethumb*/*/*/*/module.la \
-    ${libdir}/eeze*/*/*/*/*/module.la \
-    ${libdir}/edje*/*/*/*/module.la \
-    ${libdir}/emotion/modules/gstreamer1/*/module.la \
-    ${datadir}/gdb/auto-load \
-    ${datadir}/eo/gdb \
-    ${bindir}/eldbus-codegen \
-"
-
-PNBLACKLIST[efl] ?= "Depends on broken efl-native - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-PNBLACKLIST[efl-native] ?= "Broken: fails to build with http://errors.yoctoproject.org/Errors/Details/138240/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/efl/0001-configure.ac-Don-t-check-for-Xprint-extension.patch b/meta-efl/recipes-efl/efl/efl/0001-configure.ac-Don-t-check-for-Xprint-extension.patch
deleted file mode 100644
index fa85f81..0000000
--- a/meta-efl/recipes-efl/efl/efl/0001-configure.ac-Don-t-check-for-Xprint-extension.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 27aedcdcdafbf079dc022bab72ec309cf7db3172 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Fri, 10 Jan 2014 17:07:13 +0100
-Subject: [PATCH 1/3] configure.ac: Don't check for Xprint extension
-
-* it's long gone
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- configure.ac | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index c108b1b..f019bfc 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -3474,7 +3474,6 @@ if test "x${want_x11_xlib}" = "xyes" ; then
-    ECORE_CHECK_X_EXTENSION([Xdpms], [dpms.h], [Xext], [DPMSQueryExtension])
-    ECORE_CHECK_X_EXTENSION([Xfixes], [Xfixes.h], [Xfixes], [XFixesExpandRegion])
-    ECORE_CHECK_X_EXTENSION([Xinerama], [Xinerama.h], [Xinerama], [XineramaQueryScreens])
--   ECORE_CHECK_X_EXTENSION([Xprint], [Print.h], [Xp], [XpQueryScreens])
-    ECORE_CHECK_X_EXTENSION([Xrandr], [Xrandr.h], [Xrandr], [XRRGetScreenResourcesCurrent])
-    ECORE_CHECK_X_EXTENSION([Xrender], [Xrender.h], [Xrender], [XRenderFindVisualFormat])
-    ECORE_CHECK_X_EXTENSION([Xtest], [XTest.h], [Xtst], [XTestFakeKeyEvent])
--- 
-2.3.0
-
diff --git a/meta-efl/recipes-efl/efl/efl/0001-evas_3d-Add-Eet.h-includes.patch b/meta-efl/recipes-efl/efl/efl/0001-evas_3d-Add-Eet.h-includes.patch
deleted file mode 100644
index d0f26c7..0000000
--- a/meta-efl/recipes-efl/efl/efl/0001-evas_3d-Add-Eet.h-includes.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 2e50fd2dfc68b77e7acddc79550f22987778a897 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Tue, 2 Dec 2014 12:21:10 +0100
-Subject: [PATCH] evas_3d: Add Eet.h includes
-
-* with some very restrictive options like we use in efl-native, the build is complaining
-  about missing symbols from Eet.h, add include where needed
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- src/lib/evas/canvas/evas_canvas3d_eet.c                  | 1 +
- src/modules/evas/model_loaders/eet/evas_model_load_eet.c | 1 +
- src/modules/evas/model_savers/eet/evas_model_save_eet.c  | 1 +
- 3 files changed, 3 insertions(+)
-
-diff --git a/src/lib/evas/canvas/evas_canvas3d_eet.c b/src/lib/evas/canvas/evas_canvas3d_eet.c
-index 281f69d..a604076 100644
---- a/src/lib/evas/canvas/evas_canvas3d_eet.c
-+++ b/src/lib/evas/canvas/evas_canvas3d_eet.c
-@@ -1,3 +1,4 @@
-+#include <Eet.h>
- #include <stdio.h>
- #include "evas_common_private.h"
- #include "evas_private.h"
-diff --git a/src/modules/evas/model_loaders/eet/evas_model_load_eet.c b/src/modules/evas/model_loaders/eet/evas_model_load_eet.c
-index 803846d..7ebaf8e 100644
---- a/src/modules/evas/model_loaders/eet/evas_model_load_eet.c
-+++ b/src/modules/evas/model_loaders/eet/evas_model_load_eet.c
-@@ -3,6 +3,7 @@
- #endif
- 
- #include <Eo.h>
-+#include <Eet.h>
- #include <stdio.h>
- #include "evas_common_private.h"
- #include "evas_private.h"
-diff --git a/src/modules/evas/model_savers/eet/evas_model_save_eet.c b/src/modules/evas/model_savers/eet/evas_model_save_eet.c
-index 71e094a..4d56977 100644
---- a/src/modules/evas/model_savers/eet/evas_model_save_eet.c
-+++ b/src/modules/evas/model_savers/eet/evas_model_save_eet.c
-@@ -2,6 +2,7 @@
-    #include "config.h"
- #endif
- 
-+#include <Eet.h>
- #include <stdio.h>
- #include "evas_common_private.h"
- #include "evas_private.h"
--- 
-2.5.0
-
diff --git a/meta-efl/recipes-efl/efl/efl_1.15.1.bb b/meta-efl/recipes-efl/efl/efl_1.15.1.bb
deleted file mode 100644
index 9f18531..0000000
--- a/meta-efl/recipes-efl/efl/efl_1.15.1.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI = "\
-    ${E_RELEASES}/libs/${SRCNAME}/${SRCNAME}-${SRCVER}.tar.gz \
-    file://0001-configure.ac-Don-t-check-for-Xprint-extension.patch \
-    file://0001-evas_3d-Add-Eet.h-includes.patch \
-"
-
-SRC_URI[md5sum] = "dc91bcab73275f678e1748a2dea8d88a"
-SRC_URI[sha256sum] = "2a6d0ab28020b4741be20b32ad0ffeb8f97f766c5c32175bacc2f2d0dc52f98c"
-
-# Temporary disable until error like the one following are fixed
-# efl-native/2_1.8.4-r0/efl-1.8.4/src/lib/eet/.libs/libeet.so: file not recognized: File truncated
-# collect2: error: ld returned 1 exit status
-# x86_64-linux-libtool: install: error: relink `modules/evas/savers/tiff/module.la' with the above command before installing it
-# Makefile:11031: recipe for target 'install-savertiffpkgLTLIBRARIES' failed
-PARALLEL_MAKE_class-native = ""
-
-#EFL_RUN_IN_TREE=1 ../src/bin/eolian/eolian_gen --eo --legacy -I/OE/build/shr-core/tmp-eglibc/work/x86_64-linux/efl-native/2_1.10.0-r0/efl-1.10.0/src/lib/eo -I/OE/build/shr-core/tmp-eglibc/work/x86_64-linux/efl-native/2_1.10.0-r0/efl-1.10.0/src/lib/evas/canvas -I/OE/build/shr-core/tmp-eglibc/work/x86_64-linux/efl-native/2_1.10.0-r0/efl-1.10.0/src/lib/edje -I/OE/build/shr-core/tmp-eglibc/work/x86_64-linux/efl-native/2_1.10.0-r0/efl-1.10.0/src/lib/ecore_audio --gc -o lib/evas/canvas/evas_l [...]
-#ERR<32439>:eolian_gen /OE/build/shr-core/tmp-eglibc/work/x86_64-linux/efl-native/2_1.10.0-r0/efl-1.10.0/src/bin/eolian/main.c:103 _generate_c_file() Couldnt open file lib/evas/canvas/evas_line.eo.c for writing
-#Makefile:30738: recipe for target 'lib/evas/canvas/evas_line.eo.c' failed
-#make[2]: *** [lib/evas/canvas/evas_line.eo.c] Error 1
-#Makefile:2163: recipe for target 'all-recursive' failed
-# autotools-brokensep
-B = "${S}"
-
-#ld: error: modules/evas/image_loaders/png/bin_evas_evas_cserve2_slave-evas_image_load_png.o: requires unsupported dynamic reloc R_ARM_MOVW_ABS_NC; recompile with -fPIC
-#ld: error: modules/evas/image_loaders/png/bin_evas_evas_cserve2_slave-evas_image_load_png.o: requires unsupported dynamic reloc R_ARM_MOVW_ABS_NC; recompile with -fPIC
-CFLAGS += "-fPIC"
diff --git a/meta-efl/recipes-efl/efl/elementary-theme-efenniht/LICENSE b/meta-efl/recipes-efl/efl/elementary-theme-efenniht/LICENSE
deleted file mode 100644
index 61bb2f6..0000000
--- a/meta-efl/recipes-efl/efl/elementary-theme-efenniht/LICENSE
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright notice for Enlightenment:
-
-Copyright (C) 2000-2010 Carsten Haitzler and various contributors (see AUTHORS)
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-   1. Redistributions of source code must retain the above copyright
-      notice, this list of conditions and the following disclaimer.
-   2. Redistributions in binary form must reproduce the above copyright 
-      notice, this list of conditions and the following disclaimer in the
-      documentation and/or other materials provided with the distribution.
-
-THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
-OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/meta-efl/recipes-efl/efl/elementary-theme-efenniht_svn.bb b/meta-efl/recipes-efl/efl/elementary-theme-efenniht_svn.bb
deleted file mode 100644
index 783d123..0000000
--- a/meta-efl/recipes-efl/efl/elementary-theme-efenniht_svn.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-DESCRIPTION = "efenniht elementary theme - Efenniht was devised to be clean \
-and neutral. Its name (which means equinox) comes from the chromatic duality \
-that was decided at the very beginning, with a dark theme (black and orange) \
-and a bright one (white and blue) to be developed so that more people feel \
-comfortable using it. Efenniht uses few animations, discrete contrasts between \
-shades of gray and fine lines (colored) that outline the selected elements."
-SECTION = "e/utils"
-HOMEPAGE = "http://trac.enlightenment.org/e/wiki/Themes#Efenniht"
-DEPENDS = "edje-native"
-RSUGGESTS_${PN} = "e-wm-theme-illume-efenniht"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/LICENSE;md5=f523ab5986cc79b52a90d2ac3d5454a2"
-
-SRCREV_THM_REV ?= "${EFL_SRCREV}"
-SRCREV_ELM_REV ?= "${EFL_SRCREV}"
-
-SRCREV_FORMAT = "THM_REV"
-PV = "0.0+svnr${SRCPV}"
-PR = "r1"
-
-inherit e-base allarch
-
-SRCNAME = "efenniht"
-SRC_URI = "${E_SVN}/trunk/THEMES;module=${SRCNAME};protocol=http;name=THM_REV"
-SRC_URI += "${E_SVN}/trunk/elementary/data;module=themes;protocol=http;name=ELM_REV"
-SRC_URI += "file://LICENSE"
-S = "${WORKDIR}/${SRCNAME}"
-
-do_compile() {
-    ${STAGING_BINDIR_NATIVE}/edje_cc -id ${S}/images -id ${WORKDIR}/themes/images ${S}/elm-efenniht.edc -o ${S}/elm-efenniht.edj
-}
-
-do_install() {
-    install -d ${D}${datadir}/elementary/themes/
-    install -m 0644 ${S}/elm-efenniht.edj ${D}${datadir}/elementary/themes/
-}
-
-FILES_${PN} = "${datadir}/elementary/themes/"
-
-PNBLACKLIST[elementary-theme-efenniht] ?= "Depends on blacklisted edje-native - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[elementary-theme-efenniht] ?= "Runtime depends on blacklisted elementary-theme-efenniht - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[elementary-theme-efenniht] ?= "Runtime depends on blacklisted elementary-theme-efenniht-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/elementary.inc b/meta-efl/recipes-efl/efl/elementary.inc
deleted file mode 100644
index cec67aa..0000000
--- a/meta-efl/recipes-efl/efl/elementary.inc
+++ /dev/null
@@ -1,89 +0,0 @@
-DESCRIPTION = "EFL based widget set for mobile devices"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a173054a93896e933df53e3382d472c2"
-DEPENDS = "eet-native edje-native elementary-native efreet evas ecore edje eet eldbus ethumb eio"
-DEPENDS_class-native = "efl-native"
-
-inherit efl gettext
-
-EXTRA_OECONF_append_class-target = "\
-    --with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc \
-    --with-eet-eet=${STAGING_BINDIR_NATIVE}/eet \
-    --with-elementary-codegen=${STAGING_BINDIR_NATIVE}/elementary_codegen \
-    --with-elm-prefs-cc=${STAGING_BINDIR_NATIVE}/elm_prefs_cc \
-    --with-eolian-gen=${STAGING_BINDIR_NATIVE}/eolian_gen \
-    --with-eolian-cxx=${STAGING_BINDIR_NATIVE}/eolian_cxx \
-"
-
-BBCLASSEXTEND = "native"
-
-PACKAGECONFIG[eweather] = "--enable-eweather,--disable-eweather,libeweather"
-PACKAGECONFIG[ewebkit] = "--with-elementary-web-backend=ewebkit,--with-elementary-web-backend=none,webkit-efl"
-# be aware when enabling this for efl-native, we don't provide gcc-native so you need to make
-# sure that all your builders have g++ which supports -std=gnu++11
-PACKAGECONFIG[c++11] = "--enable-cxx-bindings,--disable-cxx-bindings"
-
-do_configure_prepend() {
-    # prefix returned eolian paths with STAGING_DIR_HOST
-    sed -i 's%^\(DEPS_EOLIAN_FLAGS=`.*\)`$%\1 | sed "s#-I\\${prefix}#-I\\${STAGING_DIR_HOST}\\${prefix}#g"`%g' ${S}/configure.ac
-}
-
-do_compile_append_class-target() {
-    sed -i -e s:${STAGING_DIR_TARGET}::g \
-           -e s:/${TARGET_SYS}::g \
-              elementary.pc
-}
-
-PACKAGES += "${PN}-configs ${PN}-accessibility"
-
-RDEPENDS_${PN}_class-native = ""
-
-RDEPENDS_${PN} = "\
-    ${PN}-themes \
-    ${PN}-configs \
-"
-RSUGGESTS_${PN} = "${PN}-tests ${PN}-accessibility"
-
-FILES_${PN} += "\
-    ${libdir}/edje/modules/elm \
-    ${libdir}/elementary/modules/datetime_input_ctxpopup/*/module.so \
-    ${libdir}/elementary/modules/prefs/*/module.so \
-    ${libdir}/elementary/modules/prefs/*/*.edj \
-"
-
-FILES_${PN}-dev += "\
-    ${bindir}/elm_prefs_cc \
-    ${libdir}/elementary/modules/*/*/module.la \
-    ${libdir}/cmake \
-"
-
-FILES_${PN}-themes = "\
-    ${datadir}/elementary/themes \
-"
-
-FILES_${PN}-configs = "\
-    ${datadir}/elementary/config \
-"
-
-FILES_${PN}-dbg += "\
-    ${libdir}/elementary/modules/*/*/.debug \
-    ${libdir}/edje/modules/elm/*/.debug \
-"
-
-FILES_${PN}-tests = "\
-    ${bindir}/elementary* \
-    ${datadir}/elementary/images \
-    ${datadir}/elementary/objects \
-    ${datadir}/elementary/examples \
-    ${datadir}/applications/* \
-    ${datadir}/icons/* \
-    ${libdir}/elementary/modules/test_entry/* \
-    ${libdir}/elementary/modules/test_map/* \
-"
-
-FILES_${PN}-accessibility = "\
-    ${libdir}/elementary/modules/access_output/* \
-"
-
-# Some upgrade path tweaking, as in evas
-AUTO_LIBNAME_PKGS = ""
diff --git a/meta-efl/recipes-efl/efl/elementary/0001-Makefile-Use-elementary_codegen-defined-in-configure.patch b/meta-efl/recipes-efl/efl/elementary/0001-Makefile-Use-elementary_codegen-defined-in-configure.patch
deleted file mode 100644
index 9524c70..0000000
--- a/meta-efl/recipes-efl/efl/elementary/0001-Makefile-Use-elementary_codegen-defined-in-configure.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 75d104d105aa03dd9d446fa7d84fa95e0f566cf9 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Sat, 11 Jan 2014 12:55:59 +0100
-Subject: [PATCH] Makefile: Use elementary_codegen defined in configure
-
-* using binaries from top_buildir doesn't work when cross-compiling elementary
-  where we need to pass native binaries in configure params
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- src/examples/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/examples/Makefile.am b/src/examples/Makefile.am
-index fc35c75..1e10b0b 100644
---- a/src/examples/Makefile.am
-+++ b/src/examples/Makefile.am
-@@ -29,7 +29,7 @@ LDADD = \
- @ELEMENTARY_X_LIBS@ \
- $(top_builddir)/src/lib/libelementary.la
- 
--ELEMENTARY_CODEGEN = $(top_builddir)/src/bin/@ELEMENTARY_CODEGEN_PRG@
-+ELEMENTARY_CODEGEN = @elementary_codegen@
- ELEMENTARY_CODEGEN_FLAGS = --prefix=codegen_example
- 
- SRCS = \
--- 
-1.9.0
-
diff --git a/meta-efl/recipes-efl/efl/elementary_1.15.1.bb b/meta-efl/recipes-efl/efl/elementary_1.15.1.bb
deleted file mode 100644
index 40dd8ad..0000000
--- a/meta-efl/recipes-efl/efl/elementary_1.15.1.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI = "\
-    ${E_RELEASES}/libs/${SRCNAME}/${SRCNAME}-${SRCVER}.tar.gz \
-"
-
-# only for target, because configure doesn't default to sane default when
-# these paths aren't passed in -native build
-SRC_URI_append_class-target = " file://0001-Makefile-Use-elementary_codegen-defined-in-configure.patch"
-
-SRC_URI[md5sum] = "bde4d85fa10ee8a7c0aeb74e69d7cd06"
-SRC_URI[sha256sum] = "ae5540c2103fcdc69fd7469277ce25a8a00a0f701fc2c20771dc0108401e53a0"
-
-# autotools-brokensep - configure updates Elementary.h correctly in ${B}, but then build is using Elementary.h from ${S}
-# which includes #define ELM_EMAP (instead of #undef ELM_EMAP) and building fails
-B = "${S}"
-
-PNBLACKLIST[elementary] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130584/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/emotion-generic-players.inc b/meta-efl/recipes-efl/efl/emotion-generic-players.inc
deleted file mode 100644
index 4ab89ae..0000000
--- a/meta-efl/recipes-efl/efl/emotion-generic-players.inc
+++ /dev/null
@@ -1,14 +0,0 @@
-DESCRIPTION = "Emotion generic players"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a0f11eedf8706bf6d4d6639fb67eb8ae"
-
-DEPENDS = "emotion"
-
-inherit efl
-
-SRCNAME = "emotion_generic_players"
-
-# creates empty packages until you get vlc-2 and enable it here
-PACKAGECONFIG ?= ""
-# needs eina and ecore from efl and vlc-2 (currently we have 1.11)
-PACKAGECONFIG[vlc] = "--with-vlc,--without-vlc,vlc efl"
diff --git a/meta-efl/recipes-efl/efl/emotion-generic-players_1.15.0.bb b/meta-efl/recipes-efl/efl/emotion-generic-players_1.15.0.bb
deleted file mode 100644
index ffdd269..0000000
--- a/meta-efl/recipes-efl/efl/emotion-generic-players_1.15.0.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI = "\
-    ${E_RELEASES}/libs/${SRCNAME}/${SRCNAME}-${SRCVER}.tar.gz \
-"
-
-SRC_URI[md5sum] = "68627c1aabf5b7fe084299adcc0b73c1"
-SRC_URI[sha256sum] = "10bad633480a691585b0ba470c573b14da0a010008d9d59d0792cea8c621d423"
-
-PNBLACKLIST[emotion-generic-players] ?= "Depends on blacklisted emotion - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[emotion-generic-players] ?= "Runtime depends on blacklisted emotion-generic-players - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[emotion-generic-players] ?= "Runtime depends on blacklisted emotion-generic-players-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/engrave_svn.bb b/meta-efl/recipes-efl/efl/engrave_svn.bb
deleted file mode 100644
index f950938..0000000
--- a/meta-efl/recipes-efl/efl/engrave_svn.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-SUMMARY = "Engrave is an Edje Editing Library"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=edf2d968b9eb026bfa82cccbd0e6f9f5"
-# also requires yacc and lex on host
-DEPENDS = "evas ecore flex"
-PV = "0.0.0+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-inherit efl autotools-brokensep
-SRC_URI = "${E_SVN}/OLD;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-# engrave.l:5:35: fatal error: libengrave_la-engrave.h: No such file or directory
-# http://errors.yoctoproject.org/Errors/Details/56597/
-PNBLACKLIST[engrave] ?= "BROKEN: fails to build with latest oe-core - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/entrance/0001-pam-use-common-auth-instead-of-system-auth.patch b/meta-efl/recipes-efl/efl/entrance/0001-pam-use-common-auth-instead-of-system-auth.patch
deleted file mode 100644
index a82d1ed..0000000
--- a/meta-efl/recipes-efl/efl/entrance/0001-pam-use-common-auth-instead-of-system-auth.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 14396c52a2556b1ab778a310a318ec19c2829735 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Thu, 24 Nov 2011 13:25:33 +0100
-Subject: [PATCH] pam: use common-auth instead of system-auth
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- PROTO/entrance/data/entrance |    8 ++++----
- 1 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/data/entrance b/data/entrance
-index 872c83d..2b98c3a 100644
---- a/data/entrance
-+++ b/data/entrance
-@@ -1,4 +1,4 @@
--auth	include		system-auth
--account	include		system-auth
--password	include		system-auth
--session	include		system-auth
-+auth	include		common-auth
-+account	include		common-account
-+password	include		common-password
-+session	include		common-session
--- 
-1.7.8.6
-
diff --git a/meta-efl/recipes-efl/efl/entrance/entrance.service b/meta-efl/recipes-efl/efl/entrance/entrance.service
deleted file mode 100644
index 4828686..0000000
--- a/meta-efl/recipes-efl/efl/entrance/entrance.service
+++ /dev/null
@@ -1,8 +0,0 @@
-[Unit]
-Description=Login manager for Enlightenment
-
-[Service]
-ExecStart=/usr/sbin/entrance
-
-[Install]
-Alias=display-manager.service
diff --git a/meta-efl/recipes-efl/efl/entrance_svn.bb b/meta-efl/recipes-efl/efl/entrance_svn.bb
deleted file mode 100644
index b1e580d..0000000
--- a/meta-efl/recipes-efl/efl/entrance_svn.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-SUMMARY = "Login manager for Enlightenment"
-DEPENDS = "efreet eina eet ecore elementary"
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SECTION = "e/apps"
-
-inherit e gettext systemd
-SRC_URI = "${E_SVN}/trunk/PROTO;module=${SRCNAME};protocol=http;scmdata=keep \
-    file://0001-pam-use-common-auth-instead-of-system-auth.patch \
-    file://entrance.service \
-"
-S = "${WORKDIR}/${SRCNAME}"
-
-PNBLACKLIST[entrance] ?= "broken: switch to https://git.enlightenment.org/misc/entrance.git and fix 0.0.4+svnr82070-r7/entrance/data/themes/old/default.edc:678. invalid state name: 'defaault'. "default" state must always be first. - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[consolekit] = "--enable-consolekit,--disable-consolekit,consolekit"
-
-EXTRA_OECONF = "--with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '', '--disable-pam', d)}"
-
-PR = "r7"
-PV = "0.0.4+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-RDEPENDS_${PN} += "${PN}-themes sessreg xauth"
-CONFFILES_${PN} += "${sysconfdir}/entrance.conf"
-
-RCONFLICTS_${PN} += "xserver-nodm-init"
-RREPLACES_${PN} += "xserver-nodm-init"
-
-RCONFLICTS_${PN} += "xserver-nodm-init-systemd"
-RREPLACES_${PN} += "xserver-nodm-init-systemd"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-
-SYSTEMD_SERVICE_${PN} = "entrance.service"
-
-do_install_append() {
-    install -d ${D}${systemd_unitdir}/system
-    install -m 0644 ${WORKDIR}/entrance.service ${D}${systemd_unitdir}/system
-}
diff --git a/meta-efl/recipes-efl/efl/epdf/0001-remove-antialias-functions-poppler-has-dropped-them-.patch b/meta-efl/recipes-efl/efl/epdf/0001-remove-antialias-functions-poppler-has-dropped-them-.patch
deleted file mode 100644
index 728ffa6..0000000
--- a/meta-efl/recipes-efl/efl/epdf/0001-remove-antialias-functions-poppler-has-dropped-them-.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-From 6691ac5fcbac0e766d4410ae649a13957ae85289 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Thu, 22 Oct 2015 16:27:52 +0200
-Subject: [PATCH 1/2] remove antialias functions - poppler has dropped them in
- the API
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The functions removed were not used.
-
-Upstream-Status: pending
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- src/lib/epdf_main.h                   | 45 -----------------------------------
- src/lib/mupdf/epdf_mupdf_main.c       | 18 --------------
- src/lib/poppler/epdf_poppler_main.cpp | 21 ----------------
- 3 files changed, 84 deletions(-)
-
-diff --git a/src/lib/epdf_main.h b/src/lib/epdf_main.h
-index 54a57ca..0a79bad 100644
---- a/src/lib/epdf_main.h
-+++ b/src/lib/epdf_main.h
-@@ -29,49 +29,4 @@ EAPI int epdf_shutdown();
-  */
- EAPI const char *epdf_backend_version_get (void);
- 
--/**
-- * @brief Return the state of fonts antialiasing in Poppler
-- *
-- * @return EINA_TRUE if fonts antialiasing enabled, EINA_FALSE otherwise.
-- *
-- * Return EINA_TRUE if the state of fonts antialiasing is enabled in
-- * Poppler, EINA_FALSE otherwise.
-- *
-- * @ingroup Epdf_Main
-- */
--EAPI Eina_Bool epdf_fonts_antialias_get (void);
--
--/**
-- * @brief Sets fonts antialiasing mode in Poppler
-- *
-- * @param on EINA_TRUE to enable fonts antialiasing, EINA_FALSE to disable
-- *
-- * Set @p on to EINA_TRUE to enable fonts antialiasing in Poppler,
-- * EINA_FALSE to disable it.
-- */
--EAPI void epdf_fonts_antialias_set (Eina_Bool on);
--
--/**
-- * @brief Return the state of lines antialiasing in Poppler
-- *
-- * @return EINA_TRUE if lines antialiasing enabled, EINA_FALSE otherwise.
-- *
-- * Return EINA_TRUE if the state of lines antialiasing is enabled in
-- * Poppler, EINA_FALSE otherwise.
-- *
-- * @ingroup Epdf_Main
-- */
--EAPI Eina_Bool epdf_lines_antialias_get (void);
--
--/**
-- * @brief Sets lines antialiasing mode in Poppler
-- *
-- * @param on EINA_TRUE to enable lines antialiasing, EINA_FALSE to disable
-- *
-- * Set @p on to EINA_TRUE to enable lines antialiasing in Poppler,
-- * EINA_FALSE to disable it.
-- */
--EAPI void epdf_lines_antialias_set (Eina_Bool on);
--
--
- #endif /* __EPDF_MAIN_H__ */
-diff --git a/src/lib/mupdf/epdf_mupdf_main.c b/src/lib/mupdf/epdf_mupdf_main.c
-index 17bb830..27c6de2 100644
---- a/src/lib/mupdf/epdf_mupdf_main.c
-+++ b/src/lib/mupdf/epdf_mupdf_main.c
-@@ -37,21 +37,3 @@ epdf_backend_version_get (void)
- {
-    return "0.5";
- }
--
--Eina_Bool epdf_fonts_antialias_get(void)
--{
--   return EINA_TRUE;
--}
--
--void epdf_fonts_antialias_set(Eina_Bool on)
--{
--}
--
--Eina_Bool epdf_lines_antialias_get(void)
--{
--   return EINA_TRUE;
--}
--
--void epdf_lines_antialias_set(Eina_Bool on)
--{
--}
-diff --git a/src/lib/poppler/epdf_poppler_main.cpp b/src/lib/poppler/epdf_poppler_main.cpp
-index 9841987..9efdbe8 100644
---- a/src/lib/poppler/epdf_poppler_main.cpp
-+++ b/src/lib/poppler/epdf_poppler_main.cpp
-@@ -46,24 +46,3 @@ epdf_backend_version_get (void)
- {
-   return POPPLER_VERSION;
- }
--
--Eina_Bool epdf_fonts_antialias_get (void)
--{
--  return globalParams->getAntialias();
--}
--
--void epdf_fonts_antialias_set (Eina_Bool on)
--{
--  /* Nice API */
--  globalParams->setAntialias((char*)(on ? "yes" : "no"));
--}
--
--Eina_Bool epdf_lines_antialias_get (void)
--{
--    return globalParams->getVectorAntialias();
--}
--
--void epdf_lines_antialias_set (Eina_Bool on)
--{
--    globalParams->setVectorAntialias((char*)(on ? "yes" : "no"));
--}
--- 
-2.1.0
-
diff --git a/meta-efl/recipes-efl/efl/epdf/0002-epdf_poppler_postscript.cpp-fix-build-for-poppler-AP.patch b/meta-efl/recipes-efl/efl/epdf/0002-epdf_poppler_postscript.cpp-fix-build-for-poppler-AP.patch
deleted file mode 100644
index c9adaa7..0000000
--- a/meta-efl/recipes-efl/efl/epdf/0002-epdf_poppler_postscript.cpp-fix-build-for-poppler-AP.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From a84c16fdc606f22b993f870b1cea56dd060a35e6 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Thu, 22 Oct 2015 16:55:30 +0200
-Subject: [PATCH 2/2] epdf_poppler_postscript.cpp: fix build for poppler API
- change
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Poppler API was changed in [1]. The patch not only shows the change but also
-inspires how to fix.
-
-[1] http://cgit.freedesktop.org/poppler/poppler/commit/?id=9caf7525409d699c16896653528486451123b485
-
-Upstream-Status: Pending
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- src/lib/poppler/epdf_poppler_postscript.cpp | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/src/lib/poppler/epdf_poppler_postscript.cpp b/src/lib/poppler/epdf_poppler_postscript.cpp
-index 0c2836b..656193b 100644
---- a/src/lib/poppler/epdf_poppler_postscript.cpp
-+++ b/src/lib/poppler/epdf_poppler_postscript.cpp
-@@ -82,11 +82,14 @@ epdf_postscript_print (const Epdf_Postscript *postscript)
- 
-   // FIXME: fix postscript title
- #ifdef HAVE_POPPLER_0_20
-+  std::vector<int> pages;
-+  for (int i = postscript->first_page; i <= postscript->last_page; ++i) {
-+    pages.push_back(i);
-+  }
-   PSOutputDev ps_dev(postscript->filename,
-                      postscript->pdfdoc,
-                      (char *)"PS title",
--                     postscript->first_page,
--                     postscript->last_page,
-+                     pages,
-                      psModePS,
-                      (int)postscript->width,
-                      (int)postscript->height,
--- 
-2.1.0
-
diff --git a/meta-efl/recipes-efl/efl/epdf_svn.bb b/meta-efl/recipes-efl/efl/epdf_svn.bb
deleted file mode 100644
index d664bad..0000000
--- a/meta-efl/recipes-efl/efl/epdf_svn.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Epdf is the glue between EFL and libpoppler"
-
-DEPENDS = "poppler evas ecore"
-PV = "0.1.0+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-inherit efl
-
-LICENSE = "GPLv2 & LGPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \
-                    file://COPYING.LESSER;md5=6a6a8e020838b23406c81b19c1d46df6 \
-"
-
-SRC_URI = " \
-    ${E_SVN}/trunk/PROTO;module=${SRCNAME};protocol=http;scmdata=keep \
-    file://0001-remove-antialias-functions-poppler-has-dropped-them-.patch \
-    file://0002-epdf_poppler_postscript.cpp-fix-build-for-poppler-AP.patch \
-"
-S = "${WORKDIR}/${SRCNAME}"
-
-EXTRA_OECONF = "\
-    --enable-poppler \
-    --disable-mupdf \
-"
-
-# Some upgrade path tweaking, as in evas
-AUTO_LIBNAME_PKGS = ""
-
-PNBLACKLIST[epdf] ?= "Depends on blacklisted ecore - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[epdf] ?= "Depends on blacklisted evas - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[epdf] ?= "Runtime depends on blacklisted epdf-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[epdf] ?= "Runtime depends on blacklisted epdf - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/evas-generic-loaders.inc b/meta-efl/recipes-efl/efl/evas-generic-loaders.inc
deleted file mode 100644
index d277c11..0000000
--- a/meta-efl/recipes-efl/efl/evas-generic-loaders.inc
+++ /dev/null
@@ -1,73 +0,0 @@
-DESCRIPTION = "Evas generic loaders"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a87563ed30add2b0e3460272d3138a00"
-DEPENDS = "eina librsvg cairo"
-
-inherit efl
-
-SRCNAME = "evas_generic_loaders"
-
-EXTRA_OECONF = " \
-    --enable-svg \
-    --disable-gstreamer \
-    --disable-libraw \
-    --disable-spectre \
-"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[poppler] = "--enable-poppler,--disable-poppler,poppler"
-
-PACKAGESPLITFUNCS_prepend = "split_evas_loader_packages "
-
-python split_evas_loader_packages () {
-    bb.note( "splitting packages for evas generic loaders" )
-    basedir = d.expand( '${libdir}/evas/utils')
-
-    do_split_packages(d, basedir, 'evas_image_loader\.(.*)$',
-    output_pattern = "evas-generic-loader-%s",
-    description = 'Evas generic loaders - module %s',
-    allow_dirs=True, recursive=False, extra_depends="" )
-
-    do_split_packages(d, basedir, 'evas_generic_pdf_loader\.(.*)$',
-    output_pattern = "evas-generic-pdf-loader-%s",
-    description = 'Evas generic pdf loaders - module %s',
-    allow_dirs=True, recursive=False, extra_depends="" )
-}
-
-# add symlinks for different format (it doesn't make much sense to package them in separate packages)
-FILES_evas-generic-loader-xcf += " \
-    ${libdir}/evas/utils/evas_image_loader.xcf.gz \
-"
-FILES_evas-generic-loader-svg += " \
-    ${libdir}/evas/utils/evas_image_loader.svg.gz \
-    ${libdir}/evas/utils/evas_image_loader.svgz \
-"
-FILES_evas-generic-loader-pdf += " \
-    ${libdir}/evas/utils/evas_image_loader.doc \
-    ${libdir}/evas/utils/evas_image_loader.docx \
-    ${libdir}/evas/utils/evas_image_loader.odp \
-    ${libdir}/evas/utils/evas_image_loader.ods \
-    ${libdir}/evas/utils/evas_image_loader.odt \
-    ${libdir}/evas/utils/evas_image_loader.ppt \
-    ${libdir}/evas/utils/evas_image_loader.pptx \
-    ${libdir}/evas/utils/evas_image_loader.rtf \
-    ${libdir}/evas/utils/evas_image_loader.xls \
-    ${libdir}/evas/utils/evas_image_loader.xlsx \
-"
-FILES_evas-generic-pdf-loader-libreoffice += " \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.doc \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.docx \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.odp \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.ods \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.odt \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.ppt \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.pptx \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.rtf \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.xls \
-    ${libdir}/evas/utils/evas_generic_pdf_loader.xlsx \
-"
-
-FILES_${PN}-dbg += "${libdir}/evas/utils/.debug"
-
-PACKAGES += "evas-generic-loader-svg"
-PACKAGES_DYNAMIC += "^evas-generic-loader-.* ^evas-generic-pdf-loader-.*"
diff --git a/meta-efl/recipes-efl/efl/evas-generic-loaders_1.15.0.bb b/meta-efl/recipes-efl/efl/evas-generic-loaders_1.15.0.bb
deleted file mode 100644
index ecdbcee..0000000
--- a/meta-efl/recipes-efl/efl/evas-generic-loaders_1.15.0.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI = "\
-    ${E_RELEASES}/libs/${SRCNAME}/${SRCNAME}-${SRCVER}.tar.gz \
-"
-
-SRC_URI[md5sum] = "3ca8443b8cbf177845595c5e02fbc49c"
-SRC_URI[sha256sum] = "caa22c9ba1ae9629c16a3fe809ea927f60b8f0d80cdb7f145159b997b9ae2bcd"
-
-PNBLACKLIST[evas-generic-loaders] ?= "Depends on blacklisted eina - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[evas-generic-loaders] ?= "Runtime depends on blacklisted evas-generic-loaders - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[evas-generic-loaders] ?= "Runtime depends on blacklisted evas-generic-loaders-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/expedite.inc b/meta-efl/recipes-efl/efl/expedite.inc
deleted file mode 100644
index 60e8597..0000000
--- a/meta-efl/recipes-efl/efl/expedite.inc
+++ /dev/null
@@ -1,25 +0,0 @@
-DESCRIPTION = "Expedite is a comprehensive benchmarking suite for Evas"
-DEPENDS = "eet evas libsdl"
-LICENSE = "MIT & BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d70bc65d46237e4ef386beebe7d0fe5b"
-
-INC_PR = "r0"
-
-inherit e
-
-EXTRA_OECONF = "\
-    --x-includes=${STAGING_INCDIR}/X11 \
-    --x-libraries=${STAGING_LIBDIR} \
-    --enable-simple-x11 \
-\
-    --enable-software-x11 \
-    --enable-xrender-x11 \
-    --enable-software-16-x11 \
-    --enable-opengl-x11 \
-    --enable-fb \
-    --disable-software-ddraw \
-    --disable-direct3d \
-"
-
-FILES_${PN} += "${datadir}"
-RDEPENDS_${PN} = "expedite-themes evas-engine-fb evas-engine-software-generic evas-engine-software-x11 evas-engine-gl-x11 evas-loader-png"
diff --git a/meta-efl/recipes-efl/efl/expedite_1.7.9.bb b/meta-efl/recipes-efl/efl/expedite_1.7.9.bb
deleted file mode 100644
index 832cd00..0000000
--- a/meta-efl/recipes-efl/efl/expedite_1.7.9.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI = "\
-    ${E_MIRROR}/${SRCNAME}-${SRCVER}.tar.gz \
-"
-
-SRC_URI[md5sum] = "954fe8e40fec6a561190ff0fb75b6bdd"
-SRC_URI[sha256sum] = "a05be096c911e0d66d4bdc497ebb935a04ad23696de9084aed9959b5172a593e"
-
-PNBLACKLIST[expedite] ?= "Depends on blacklisted eet - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Depends on blacklisted evas - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-loader-png - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted expedite - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted expedite-themes - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-gl-x11 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-software-generic - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted expedite-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-software-x11 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-fb - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/expedite_git.bb b/meta-efl/recipes-efl/efl/expedite_git.bb
deleted file mode 100644
index 65c2d4a..0000000
--- a/meta-efl/recipes-efl/efl/expedite_git.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-require ${BPN}.inc
-
-SRCREV = "a5e6af917af52877b378090811cf836c16d0bfbb"
-PV = "1.7.99+gitr${SRCPV}"
-
-DEFAULT_PREFERENCE = "-1"
-
-SRC_URI = "\
-    git://git.enlightenment.org/tools/${BPN}.git \
-"
-S = "${WORKDIR}/${SRCNAME}"
-
-PNBLACKLIST[expedite] ?= "Depends on blacklisted eet - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Depends on blacklisted evas - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-loader-png - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted expedite - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-software-generic - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-fb - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-software-x11 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted evas-engine-gl-x11 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted expedite-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[expedite] ?= "Runtime depends on blacklisted expedite-themes - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/libeflvala/disable.eina.test.patch b/meta-efl/recipes-efl/efl/libeflvala/disable.eina.test.patch
deleted file mode 100644
index 84be133..0000000
--- a/meta-efl/recipes-efl/efl/libeflvala/disable.eina.test.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-It causes testeina.c build to fail linking to internal eina_.*_{init,shutdown} symbols
-as reported in:
-http://lists.alioth.debian.org/pipermail/pkg-fso-maint/2010-May/003056.html
-
-Upstream-Status: Pending
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
-
-diff -uNr vala/tests/testeina.vala ../../../arm920tt-oe-linux-gnueabi/libeflvala/1_2011.01.13.1+svnr82070-r2/vala/tests/testeina.vala
---- vala/tests/testeina.vala	2014-01-13 16:16:53.984999035 +0100
-+++ ../../../arm920tt-oe-linux-gnueabi/libeflvala/1_2011.01.13.1+svnr82070-r2/vala/tests/testeina.vala	2010-02-26 09:02:06.000000000 +0100
-@@ -153,22 +153,22 @@
- 
- void test_eina_benchmark()
- {
--    assert( Eina.Module.init() );
--    assert( Eina.List.init() );
--    assert( Eina.Array.init() );
--    assert( Eina.Benchmark.init() );
--    assert( Eina.Mempool.init() );
-+//  assert( Eina.Module.init() );
-+//  assert( Eina.List.init() );
-+//  assert( Eina.Array.init() );
-+//  assert( Eina.Benchmark.init() );
-+//  assert( Eina.Mempool.init() );
-     var b = new Eina.Benchmark( "test", "test");
-     assert( b.register( "bogus", spec_one, 0, 100, 5 ) );
-     unowned Eina.Array<string> result = b.run();
-     assert( result.count_get() == 2 );
-     result = null;
-     b = null;
--    assert( Eina.Mempool.shutdown() );
--    assert( Eina.Benchmark.shutdown() );
--    assert( Eina.Array.shutdown() );
--    assert( Eina.List.shutdown() );
--    assert( Eina.Module.shutdown() );
-+//  assert( Eina.Mempool.shutdown() );
-+//  assert( Eina.Benchmark.shutdown() );
-+//  assert( Eina.Array.shutdown() );
-+//  assert( Eina.List.shutdown() );
-+//  assert( Eina.Module.shutdown() );
- }
- 
- //===========================================================================
diff --git a/meta-efl/recipes-efl/efl/libeflvala_svn.bb b/meta-efl/recipes-efl/efl/libeflvala_svn.bb
deleted file mode 100644
index eaf4893..0000000
--- a/meta-efl/recipes-efl/efl/libeflvala_svn.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-SUMMARY = "Vala meets the Enlightenment Foundation Libraries"
-AUTHOR = "Michael 'Mickey' Lauer <mlauer at vanille-media.de>"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-SECTION = "devel"
-DEPENDS = "vala-native glib-2.0 dbus dbus-glib eina eet evas ecore edje elementary tiff"
-PV = "2011.01.13.1+svnr${SRCPV}"
-PE = "1"
-PR = "r2"
-SRCREV = "${EFL_SRCREV}"
-SRCNAME = "vala"
-
-inherit e-base autotools-brokensep pkgconfig vala
-
-SRC_URI = "${E_SVN}/trunk/BINDINGS;module=${SRCNAME};protocol=http \
-    file://disable.eina.test.patch \
-"
-S = "${WORKDIR}/${SRCNAME}"
-
-PACKAGES =+ "${PN}-examples"
-FILES_${PN}-examples = "${datadir}/libeflvala ${bindir}/*"
-
-PNBLACKLIST[libeflvala] ?= "Depends on blacklisted elementary - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/efl/libeweather_svn.bb b/meta-efl/recipes-efl/efl/libeweather_svn.bb
deleted file mode 100644
index 53988b0..0000000
--- a/meta-efl/recipes-efl/efl/libeweather_svn.bb
+++ /dev/null
@@ -1,48 +0,0 @@
-SUMMARY = "EFL-based weather widget library"
-LICENSE = "LGPL-2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24 \
-                    file://COPYING-PLAIN;md5=c910b645eda0005ccec46f75203dc96e"
-
-DEPENDS = "ecore edje"
-PV = "0.0.0+svnr${SRCPV}"
-SRCREV = "${EFL_SRCREV}"
-
-inherit efl
-SRC_URI = "${E_SVN}/trunk/PROTO;module=${SRCNAME};protocol=http;scmdata=keep"
-S = "${WORKDIR}/${SRCNAME}"
-
-EXTRA_OECONF = "--with-edje-cc=${STAGING_BINDIR_NATIVE}/edje_cc"
-
-RSUGGESTS_${PN} = "elementary-tests"
-
-do_compile_append() {
-    sed -i -e s:${STAGING_DIR_TARGET}::g \
-           -e s:/${TARGET_SYS}::g \
-              eweather.pc
-}
-
-PACKAGES += "${PN}-plugins"
-
-FILES_${PN}-themes = "\
-    ${datadir} \
-"
-
-FILES_${PN}-plugins = "\
-    ${libdir}/eweather/plugins/*.so \
-"
-
-FILES_${PN}-dbg += "\
-    ${libdir}/eweather/plugins/.debug \
-"
-
-FILES_${PN}-dev += "\
-    ${libdir}/eweather/plugins/*.a \
-    ${libdir}/eweather/plugins/*.la \
-"
-
-RRECOMMENDS_${PN} = "\
-    ${PN}-themes \
-    ${PN}-plugins \
-"
-
-PNBLACKLIST[libeweather] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130649/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/packagegroups/packagegroup-efl-sdk.bb b/meta-efl/recipes-efl/packagegroups/packagegroup-efl-sdk.bb
deleted file mode 100644
index ee4e2c4..0000000
--- a/meta-efl/recipes-efl/packagegroups/packagegroup-efl-sdk.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Efl Software Development Kit"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \
-                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-
-ALLOW_EMPTY_${PN} = "1"
-
-PR = "r1"
-
-require packagegroup-efl-sdk.inc
-
-PACKAGES = "${PN}"
-
-RDEPENDS_${PN} = "\
-    packagegroup-core-sdk \
-    ${SDK-EFL} \
-    ${SDK-EXTRAS}"
-
-PNBLACKLIST[packagegroup-efl-sdk] ?= "Runtime depends on blacklisted elementary-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/packagegroups/packagegroup-efl-sdk.inc b/meta-efl/recipes-efl/packagegroups/packagegroup-efl-sdk.inc
deleted file mode 100644
index f2b0456..0000000
--- a/meta-efl/recipes-efl/packagegroups/packagegroup-efl-sdk.inc
+++ /dev/null
@@ -1,12 +0,0 @@
-SDK-EFL = " \
-     efl-dev \
-     elementary-dev \
-     edbus-dev \
-     luajit-dev \
-"
-
-SDK-EXTRAS ?= ""
-SDK-EXTRAS_qemux86 ?= " valgrind lttng-ust-dev"
-SDK-EXTRAS_qemux86-64 ?= " lttng-ust-dev"
-SDK-EXTRAS_qemuppc ?= " lttng-ust-dev"
-SDK-EXTRAS_qemuarm ?= " lttng-ust-dev"
diff --git a/meta-efl/recipes-efl/packagegroups/packagegroup-efl-standalone-sdk-target.bb b/meta-efl/recipes-efl/packagegroups/packagegroup-efl-standalone-sdk-target.bb
deleted file mode 100644
index 2d9dde6..0000000
--- a/meta-efl/recipes-efl/packagegroups/packagegroup-efl-standalone-sdk-target.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Efl Software Development Kit"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690 \
-                    file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-
-ALLOW_EMPTY_${PN} = "1"
-
-PR = "r1"
-
-require packagegroup-efl-sdk.inc
-
-PACKAGES = "${PN} ${PN}-dbg"
-
-RDEPENDS_${PN} = "\
-    packagegroup-core-standalone-sdk-target \
-    ${SDK-EFL} \
-    ${SDK-EXTRAS}"
-
-PNBLACKLIST[packagegroup-efl-standalone-sdk-target] ?= "Runtime depends on blacklisted elementary-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/packagegroups/packagegroup-x11-illume.bb b/meta-efl/recipes-efl/packagegroups/packagegroup-x11-illume.bb
deleted file mode 100644
index 95ebcab..0000000
--- a/meta-efl/recipes-efl/packagegroups/packagegroup-x11-illume.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-DESCRIPTION = "The Illume Windowing Environment -- install this task to get the Enlightenment Window Manager + the Illume environment."
-SECTION = "x11/wm"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${TOPDIR}/meta-openembedded/meta-efl/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PV = "1.0"
-PR = "r5"
-
-inherit packagegroup allarch
-
-# Default theme and config
-ETHEME ?= "e-wm-theme-default"
-ECONFIG ?= "e-wm-config-mobile"
-
-RRECOMMENDS_${PN} = "\
-    ${ETHEME} \
-"
-
-RDEPENDS_${PN} = "\
-    packagegroup-core-x11-xserver \
-    packagegroup-core-x11-utils \
-    \
-    e-wm \
-    ${ECONFIG} \
-"
-
-PNBLACKLIST[packagegroup-x11-illume] ?= "Runtime depends on blacklisted e-wm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[packagegroup-x11-illume] ?= "Runtime depends on blacklisted e-wm-config-mobile - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[packagegroup-x11-illume] ?= "Runtime depends on blacklisted e-wm-theme-default - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl.inc b/meta-efl/recipes-efl/webkit/webkit-efl.inc
deleted file mode 100644
index f49f2ee..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl.inc
+++ /dev/null
@@ -1,69 +0,0 @@
-DESCRIPTION = "Webkit browser engine, EFL edition"
-LICENSE = "GPLv2+ & LGPL-2.1"
-LIC_FILES_CHKSUM = " \
-    file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \
-    file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \
-    file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \
-    file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \
-"
-
-# you need harfbuzz with icu enabled, you can add this to your config:
-# PACKAGECONFIG_append_pn-harfbuzz = " icu"
-DEPENDS = "icu libxslt sqlite3 gperf-native bison-native flex-native jpeg \
-           libpng libxt fontconfig cairo freetype glib-2.0 libsoup-2.4 \
-           libxml2 pango eina ecore evas edje eldbus harfbuzz enchant \
-           ruby-native elementary"
-
-PE = "1"
-
-SRCVER ?= "${PV}"
-SRC_URI = "\
-    ${E_RELEASES}/libs/webkit-efl/ewebkit-${SRCVER}.tar.xz \
-"
-S = "${WORKDIR}/ewebkit"
-
-inherit cmake lib_package pkgconfig perlnative pythonnative
-
-ARM_INSTRUCTION_SET = "arm"
-
-EXTRA_OECMAKE = " \
-    -DPORT=Efl \
-    -DSHARED_CORE=On \
-    -DENABLE_DRAG_SUPPORT=On \
-    -DENABLE_WEB_AUDIO=Off \
-    -DENABLE_VIDEO=Off \
-    -DENABLE_VIDEO_TRACK=Off \
-    -DENABLE_ACCESSIBILITY=Off \
-    -DENABLE_BATTERY_STATUS=Off \
-"
-# generated ASM code isn't compatible with armv[45]
-# it was removed from macro assembler in upstream commit 121885
-# https://bugs.webkit.org/show_bug.cgi?id=90198
-EXTRA_OECMAKE_append_armv4 = " -DENABLE_LLINT=Off -DENABLE_JIT=Off -DENABLE_DFG_JIT=Off -DENABLE_FTL_JIT=Off"
-EXTRA_OECMAKE_append_armv5 = " -DENABLE_LLINT=Off -DENABLE_JIT=Off -DENABLE_DFG_JIT=Off -DENABLE_FTL_JIT=Off"
-
-# hack it in OptionsEfl.cmake because that overrules -DENABLE_LLINT=Off
-do_configure_prepend_armv4() {
-    sed -i 's/WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LLINT ON)/WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LLINT OFF)/g' ${S}/Source/cmake/OptionsEfl.cmake
-}
-do_configure_prepend_armv5() {
-    sed -i 's/WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LLINT ON)/WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_LLINT OFF)/g' ${S}/Source/cmake/OptionsEfl.cmake
-}
-
-# and disabled LLINT currently isn't supported, so restrict to armv7a and x86*
-COMPATIBLE_MACHINE = "(-)"
-COMPATIBLE_MACHINE_x86 = "(.*)"
-COMPATIBLE_MACHINE_x86-64 = "(.*)"
-COMPATIBLE_MACHINE_armv7a = "(.*)"
-
-LEAD_SONAME = "libewebkit.so"
-PACKAGES =+ "${PN}launcher-dbg ${PN}launcher ${PN}-inspector"
-
-FILES_${PN} += "${datadir}/ewebkit2-1/themes/default.edj"
-FILES_${PN}-dev += "${libdir}/cmake"
-FILES_${PN}launcher = "${bindir}/EWebLauncher"
-FILES_${PN}launcher-dbg = "${bindir}/.debug/EWebLauncher"
-FILES_${PN}-inspector += "${datadir}/ewebkit2-1/inspector"
-
-# http://errors.yoctoproject.org/Errors/Details/40659/
-PNBLACKLIST[webkit-efl] ?= "Old and unmaintaned fork with many security issues - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch
deleted file mode 100644
index 19b7bb8..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl/0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From e6caaf6e80b9c80dc2b860b471a8f05e825f6dfa Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Thu, 14 Aug 2014 01:00:21 +0200
-Subject: [PATCH 1/3] OptionsCommon.cmake: don't mix CXX_FLAGS into C_FLAGS
-
-* it was added in https://bugs.webkit.org/show_bug.cgi?id=130261
-* causes build failures in udis86 which explicitly asks for gcc but then
-  gets g++ flags from CMAKE_CXX_FLAGS.
-
-cc1: error: command line option '-fvisibility-inlines-hidden' is valid
-for C++/ObjC++ but not for C [-Werror]
-cc1: error: command line option '-fpermissive' is valid for C++/ObjC++
-but not for C [-Werror]
-cc1: all warnings being treated as errors
-Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/build.make:11182:
-recipe for target
-'Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/disassembler/udis86/udis86.c.o'
-failed
-make[2]: ***
-[Source/JavaScriptCore/CMakeFiles/JavaScriptCore.dir/disassembler/udis86/udis86.c.o]
-Error 1
-make[2]: *** Waiting for unfinished jobs....
-make[2]: Leaving directory
-'/OE/build/oe-core/tmp-eglibc/work/core2-64-oe-linux/webkit-efl/1_1.10.0+1.11.0-beta1-r0/build'
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- Source/cmake/OptionsCommon.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Source/cmake/OptionsCommon.cmake b/Source/cmake/OptionsCommon.cmake
-index e304a99..045c614 100644
---- a/Source/cmake/OptionsCommon.cmake
-+++ b/Source/cmake/OptionsCommon.cmake
-@@ -25,7 +25,7 @@ endif ()
- set_property(GLOBAL PROPERTY USE_FOLDERS ON)
- 
- if (CMAKE_COMPILER_IS_GNUCXX OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
--    set(CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions -fno-strict-aliasing")
-+    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-exceptions -fno-strict-aliasing")
-     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-exceptions -fno-strict-aliasing -fno-rtti")
- endif ()
- 
--- 
-2.1.3
-
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch
deleted file mode 100644
index 627a9e8..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl/0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From de93951f89e851b6689718022eebb4b8b1d14c06 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Mon, 13 Jan 2014 17:21:25 +0100
-Subject: [PATCH 2/3] WebKitHelpers.cmake: Add
- -Wno-error=deprecated-declarations -Wno-error=cast-align
- -Wno-error=type-limits
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- Source/cmake/WebKitHelpers.cmake | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/Source/cmake/WebKitHelpers.cmake b/Source/cmake/WebKitHelpers.cmake
-index 227b9ee..ae52ef6 100644
---- a/Source/cmake/WebKitHelpers.cmake
-+++ b/Source/cmake/WebKitHelpers.cmake
-@@ -40,6 +40,25 @@ macro(WEBKIT_SET_EXTRA_COMPILER_FLAGS _target)
-             # FIXME: When we use -fno-tree-dce to support the jsCStack branch merge, build error occurs due to the uninitialization. Temporarily we set
-             # uninitialized as build warning in order to support the jsCStack merge. https://bugs.webkit.org/show_bug.cgi?id=127777.
-             set(OLD_COMPILE_FLAGS "-Werror -Wno-error=unused-parameter -Wno-error=uninitialized -Wno-error=literal-suffix ${OLD_COMPILE_FLAGS}")
-+            # libsoup-2.4/libsoup/soup-proxy-uri-resolver.h:13:84: error: 'GType soup_proxy_uri_resolver_get_type()' is deprecated (declared at /OE/build/oe-core/tmp-eglibc/sysroots/qemux86-64/usr/include/libsoup-2.4/libsoup/soup-proxy-uri-resolver.h:48) [-Werror=deprecated-declarations]
-+            set(OLD_COMPILE_FLAGS "-Wno-error=deprecated-declarations ${OLD_COMPILE_FLAGS}")
-+            # webkit-efl/1_1.10.0+1.11.0-beta1-r0/ewebkit/Source/WTF/wtf/text/StringImpl.h:742:87: error: cast from 'uint8_t* {aka unsigned char*}' to 'WTF::StringImpl**' increases required alignment of target type [-Werror=cast-align]
-+            set(OLD_COMPILE_FLAGS "-Wno-error=cast-align ${OLD_COMPILE_FLAGS}")
-+            # webkit-efl/1_1.10.0+1.11.0-beta1-r0/ewebkit/Source/WebKit2/Shared/linux/WebMemorySamplerLinux.cpp:70:16: error: comparison is always false due to limited range of data type [-Werror=type-limits]
-+            set(OLD_COMPILE_FLAGS "-Wno-error=type-limits ${OLD_COMPILE_FLAGS}")
-+            # webkit-efl/1_1.11.0-r0/ewebkit/Source/WebKit2/UIProcess/API/efl/EwkView.cpp:832:5: error: missing initializer for member '_Evas_GL_Config::gles_version' [-Werror=missing-field-initializers]
-+            # this one is new with efl-1.12
-+            set(OLD_COMPILE_FLAGS "-Wno-error=missing-field-initializers ${OLD_COMPILE_FLAGS}")
-+            # webkit-efl/1_1.11.0-r0/ewebkit/Source/WTF/wtf/dtoa/bignum.cc:105:10: error: assuming signed overflow does not occur when assuming that (X + c) < X is always false [-Werror=strict-overflow]
-+            # this one is new with gcc-5.2
-+            set(OLD_COMPILE_FLAGS "-Wno-error=strict-overflow ${OLD_COMPILE_FLAGS}")
-+            # webkit-efl/1_1.11.0-r0/ewebkit/Source/WTF/wtf/SaturatedArithmetic.h:46:26: error: suggest parentheses around operand of '!' or change '&' to '&&' or '!' to '~' [-Werror=parentheses]
-+            # this one is new with gcc-5.2
-+            set(OLD_COMPILE_FLAGS "-Wno-error=parentheses ${OLD_COMPILE_FLAGS}")
-+            # webkit-efl/1_1.11.0-r0/ewebkit/Source/WebCore/loader/cache/CachedScript.cpp:103:108: error: logical not is only applied to the left hand side of comparison [-Werror=logical-not-parentheses]
-+            # this one is new with gcc-5.2
-+            set(OLD_COMPILE_FLAGS "-Wno-error=logical-not-parentheses ${OLD_COMPILE_FLAGS}")
-+
-         endif ()
- 
-         set_target_properties(${_target} PROPERTIES
--- 
-2.1.3
-
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0003-FEBlendNEON.h-fix-missing-semicolon.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0003-FEBlendNEON.h-fix-missing-semicolon.patch
deleted file mode 100644
index e718ee1..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl/0003-FEBlendNEON.h-fix-missing-semicolon.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From a076d76b8e8862bd641cd991190e82cfd478cc66 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Wed, 20 Aug 2014 00:52:03 +0200
-Subject: [PATCH 3/3] FEBlendNEON.h: fix missing semicolon
-
-* Otherwise fails with:
-In file included from ewebkit/Source/WebCore/platform/graphics/filters/FEBlend.cpp:29:0:
-ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h: In member function 'virtual void WebCore::FEBlend::platformApplySoftware()':
-ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h:130:5: error: expected primary-expression before '}' token
-     }
-     ^
-ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h:130:5: error: return-statement with a value, in function returning 'void' [-fpermissive]
-ewebkit/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h:130:5: error: expected ';' before '}' token
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h b/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h
-index 1c50765..f4b6f46 100644
---- a/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h
-+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FEBlendNEON.h
-@@ -126,7 +126,7 @@ void FEBlend::platformApplySoftware()
- 
-     if (pixelArrayLength >= 8) {
-         platformApplyNEON(srcPixelArrayA->data(), srcPixelArrayB->data(), dstPixelArray->data(), pixelArrayLength);
--        return
-+        return;
-     }
-     // If there is just one pixel we expand it to two.
-     ASSERT(pixelArrayLength > 0);
--- 
-2.1.3
-
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch
deleted file mode 100644
index bfa3052..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl/0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch
+++ /dev/null
@@ -1,146 +0,0 @@
-From baebc004111289ef658c78a42f8332f3dceef41e Mon Sep 17 00:00:00 2001
-From: "ryuan.choi at navercorp.com" <ryuan.choi at navercorp.com>
-Date: Thu, 13 Nov 2014 07:07:16 +0000
-Subject: [PATCH 4/4] Fix the build with EFL 1.12
- https://bugs.webkit.org/show_bug.cgi?id=138245
-
-Reviewed by Gyuyoung Kim.
-
-Source/WebKit2:
-
-* UIProcess/API/efl/EwkView.cpp:
-First, modified to use Evas_GL raw pointer instead of UniquePtrEfl because
-Evas_GL.h can't be included in UniquePtrEfl.h
-It should be moved into EvasGLContext because WebKit/EFL use only one Evas_GL.
-Second, provided the version of GLES in Evas_GL_Config not to break build with
-EFL 1.12
-(EwkView::EwkView):
-(EwkView::~EwkView):
-(EwkView::displayTimerFired):
-(EwkView::createGLSurface):
-* UIProcess/API/efl/EwkView.h:
-
-Source/WTF:
-
-* wtf/efl/UniquePtrEfl.h:
-Removed Evas_GL.h from UniquePtrEfl.h, which is commonly included, because
-it should not be included with official GL headers.
-
-git-svn-id: http://svn.webkit.org/repository/webkit/trunk@176066 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- Source/WTF/wtf/efl/UniquePtrEfl.h            |  2 --
- Source/WebKit2/UIProcess/API/efl/EwkView.cpp | 24 ++++++++++++++++--------
- Source/WebKit2/UIProcess/API/efl/EwkView.h   |  3 ++-
- 3 files changed, 18 insertions(+), 11 deletions(-)
-
-diff --git a/Source/WTF/wtf/efl/UniquePtrEfl.h b/Source/WTF/wtf/efl/UniquePtrEfl.h
-index ba0110a..038d3fb 100644
---- a/Source/WTF/wtf/efl/UniquePtrEfl.h
-+++ b/Source/WTF/wtf/efl/UniquePtrEfl.h
-@@ -33,7 +33,6 @@
- #include <Ecore_IMF.h>
- #include <Eina.h>
- #include <Evas.h>
--#include <Evas_GL.h>
- 
- namespace WTF {
- 
-@@ -51,7 +50,6 @@ using EflUniquePtr = std::unique_ptr<T, EflPtrDeleter<T>>;
-     macro(Eina_Hash, eina_hash_free) \
-     macro(Eina_Module, eina_module_free) \
-     macro(Evas_Object, evas_object_del) \
--    macro(Evas_GL, evas_gl_free)
- 
- #define WTF_DEFINE_EFLPTR_DELETER(typeName, deleterFunc) \
-     template<> struct EflPtrDeleter<typeName> \
-diff --git a/Source/WebKit2/UIProcess/API/efl/EwkView.cpp b/Source/WebKit2/UIProcess/API/efl/EwkView.cpp
-index 50d34ed..6ff3394 100755
---- a/Source/WebKit2/UIProcess/API/efl/EwkView.cpp
-+++ b/Source/WebKit2/UIProcess/API/efl/EwkView.cpp
-@@ -299,9 +299,11 @@ EwkView::EwkView(WKViewRef view, Evas_Object* evasObject)
- 
-     // FIXME: Remove when possible.
-     static_cast<WebViewEfl*>(webView())->setEwkView(this);
--    m_evasGL = EflUniquePtr<Evas_GL>(evas_gl_new(evas_object_evas_get(m_evasObject)));
-+
-+    // FIXME: Consider it to move into EvasGLContext.
-+    m_evasGL = evas_gl_new(evas_object_evas_get(m_evasObject));
-     if (m_evasGL)
--        m_evasGLContext = EvasGLContext::create(m_evasGL.get());
-+        m_evasGLContext = EvasGLContext::create(m_evasGL);
- 
-     if (!m_evasGLContext) {
-         WARN("Failed to create Evas_GL, falling back to software mode.");
-@@ -333,6 +335,9 @@ EwkView::~EwkView()
- {
-     ASSERT(wkPageToEvasObjectMap().get(wkPage()) == m_evasObject);
-     wkPageToEvasObjectMap().remove(wkPage());
-+
-+    if (m_evasGL)
-+        evas_gl_free(m_evasGL);
- }
- 
- EwkView* EwkView::create(WKViewRef webView, Evas* canvas, Evas_Smart* smart)
-@@ -587,7 +592,7 @@ void EwkView::displayTimerFired(Timer<EwkView>*)
-         return;
-     }
- 
--    evas_gl_make_current(m_evasGL.get(), m_evasGLSurface->surface(), m_evasGLContext->context());
-+    evas_gl_make_current(m_evasGL, m_evasGLSurface->surface(), m_evasGLContext->context());
- 
-     WKViewPaintToCurrentGLContext(wkView());
- 
-@@ -828,21 +833,24 @@ bool EwkView::createGLSurface()
-         EVAS_GL_DEPTH_BIT_8,
-         EVAS_GL_STENCIL_NONE,
-         EVAS_GL_OPTIONS_NONE,
--        EVAS_GL_MULTISAMPLE_NONE
-+        EVAS_GL_MULTISAMPLE_NONE,
-+#if defined(EVAS_GL_API_VERSION) && EVAS_GL_API_VERSION >= 2
-+        EVAS_GL_GLES_2_X
-+#endif
-     };
- 
-     // Recreate to current size: Replaces if non-null, and frees existing surface after (OwnPtr).
--    m_evasGLSurface = EvasGLSurface::create(m_evasGL.get(), &evasGLConfig, deviceSize());
-+    m_evasGLSurface = EvasGLSurface::create(m_evasGL, &evasGLConfig, deviceSize());
-     if (!m_evasGLSurface)
-         return false;
- 
-     Evas_Native_Surface nativeSurface;
--    evas_gl_native_surface_get(m_evasGL.get(), m_evasGLSurface->surface(), &nativeSurface);
-+    evas_gl_native_surface_get(m_evasGL, m_evasGLSurface->surface(), &nativeSurface);
-     evas_object_image_native_surface_set(smartData()->image, &nativeSurface);
- 
--    evas_gl_make_current(m_evasGL.get(), m_evasGLSurface->surface(), m_evasGLContext->context());
-+    evas_gl_make_current(m_evasGL, m_evasGLSurface->surface(), m_evasGLContext->context());
- 
--    Evas_GL_API* gl = evas_gl_api_get(m_evasGL.get());
-+    Evas_GL_API* gl = evas_gl_api_get(m_evasGL);
- 
-     WKPoint boundsEnd = WKViewUserViewportToScene(wkView(), WKPointMake(deviceSize().width(), deviceSize().height()));
-     gl->glViewport(0, 0, boundsEnd.x, boundsEnd.y);
-diff --git a/Source/WebKit2/UIProcess/API/efl/EwkView.h b/Source/WebKit2/UIProcess/API/efl/EwkView.h
-index 1c482cf..68dab87 100644
---- a/Source/WebKit2/UIProcess/API/efl/EwkView.h
-+++ b/Source/WebKit2/UIProcess/API/efl/EwkView.h
-@@ -39,6 +39,7 @@
- #endif
- 
- typedef struct _cairo_surface cairo_surface_t;
-+typedef struct _Evas_GL Evas_GL;
- 
- namespace WebKit {
- class ContextMenuClientEfl;
-@@ -241,7 +242,7 @@ private:
-     Evas_Object* m_evasObject;
-     RefPtr<EwkContext> m_context;
-     RefPtr<EwkPageGroup> m_pageGroup;
--    EflUniquePtr<Evas_GL> m_evasGL;
-+    Evas_GL* m_evasGL;
-     std::unique_ptr<WebCore::EvasGLContext> m_evasGLContext;
-     std::unique_ptr<WebCore::EvasGLSurface> m_evasGLSurface;
-     bool m_pendingSurfaceResize;
--- 
-2.1.3
-
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0005-Fix-the-build-with-cmake-3.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0005-Fix-the-build-with-cmake-3.patch
deleted file mode 100644
index 7e8e295..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl/0005-Fix-the-build-with-cmake-3.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-From a00a7097b85567ae6eb7a00b3ce7ef021841203c Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Thu, 24 Sep 2015 18:03:52 +0200
-Subject: [PATCH 5/5] Fix the build with cmake 3
-
-* the same issue as in GTK port:
-  https://bugs.webkit.org/show_bug.cgi?id=141796
-  http://trac.webkit.org/changeset/180502
-
-* otherwise linking fails with couple undefined symbols
-| CMakeFiles/WebKit2.dir/PluginProcess/unix/PluginProcessMainUnix.cpp.o: In function `WebKit::webkitXError(_XDisplay*, XErrorEvent*)':
-| ewebkit/Source/WebKit2/PluginProcess/unix/PluginProcessMainUnix.cpp:63: undefined reference to `XGetErrorText'
-| CMakeFiles/WebKit2.dir/PluginProcess/unix/PluginProcessMainUnix.cpp.o: In function `WebKit::PluginProcessMain::parseCommandLine(int, char**)':
-| ewebkit/Source/WebKit2/PluginProcess/unix/PluginProcessMainUnix.cpp:102: undefined reference to `XSetErrorHandler'
-| ewebkit/Source/WebKit2/PluginProcess/unix/PluginProcessMainUnix.cpp:102: undefined reference to `XSetErrorHandler'
-| CMakeFiles/WebKit2.dir/WebProcess/efl/WebProcessMainEfl.cpp.o: In function `WebKit::WebProcessMain::platformInitialize()':
-| ewebkit/Source/WebKit2/WebProcess/efl/WebProcessMainEfl.cpp:67: undefined reference to `XSetExtensionErrorHandler'
-| ewebkit/Source/WebKit2/WebProcess/efl/WebProcessMainEfl.cpp:67: undefined reference to `XSetExtensionErrorHandler'
-| CMakeFiles/WebKit2.dir/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp.o: In function `WebKit::NetscapePlugin::platformPostInitializeWindowed(bool, unsigned long)':
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:170: undefined reference to `XFlush'
-| CMakeFiles/WebKit2.dir/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp.o: In function `WebKit::NetscapePlugin::platformPostInitializeWindowless()':
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:195: undefined reference to `XGetVisualInfo'
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:199: undefined reference to `XFree'
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:202: undefined reference to `XCreateColormap'
-| CMakeFiles/WebKit2.dir/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp.o: In function `WebKit::NetscapePlugin::platformDestroy()':
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:251: undefined reference to `XFreeColormap'
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:255: undefined reference to `XFreePixmap'
-| CMakeFiles/WebKit2.dir/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp.o: In function `WebKit::NetscapePlugin::platformGeometryDidChange()':
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:293: undefined reference to `XCreatePixmap'
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:286: undefined reference to `XFreePixmap'
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:295: undefined reference to `XSync'
-| CMakeFiles/WebKit2.dir/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp.o: In function `WebKit::NetscapePlugin::platformPaint(WebCore::GraphicsContext*, WebCore::IntRect const&, bool)':
-| ewebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:343: undefined reference to `XSync'
-| collect2: error: ld returned 1 exit status
-| Source/WebKit2/CMakeFiles/WebKit2.dir/build.make:16145: recipe for target 'lib/libewebkit2.so.1.11.0' failed
-| make[2]: *** [lib/libewebkit2.so.1.11.0] Error 1
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- Source/WebCore/PlatformEfl.cmake         | 1 +
- Source/WebKit2/PlatformEfl.cmake         | 3 +++
- Source/cmake/OptionsEfl.cmake            | 1 +
- Tools/WebKitTestRunner/PlatformEfl.cmake | 1 +
- 4 files changed, 6 insertions(+)
-
-diff --git a/Source/WebCore/PlatformEfl.cmake b/Source/WebCore/PlatformEfl.cmake
-index 41ffc15..63b7861 100644
---- a/Source/WebCore/PlatformEfl.cmake
-+++ b/Source/WebCore/PlatformEfl.cmake
-@@ -404,6 +404,7 @@ if (WTF_USE_3D_GRAPHICS)
-         )
-     endif ()
- 
-+    find_package(X11 REQUIRED)
-     list(APPEND WebCore_LIBRARIES
-         ${X11_X11_LIB}
-     )
-diff --git a/Source/WebKit2/PlatformEfl.cmake b/Source/WebKit2/PlatformEfl.cmake
-index 8c66d1b..d96f0bd 100644
---- a/Source/WebKit2/PlatformEfl.cmake
-+++ b/Source/WebKit2/PlatformEfl.cmake
-@@ -331,12 +331,15 @@ if (ENABLE_SECCOMP_FILTERS)
- endif ()
- 
- if (ENABLE_ECORE_X)
-+    find_package(X11 REQUIRED)
-     list(APPEND WebProcess_LIBRARIES
-         ${ECORE_X_LIBRARIES}
-         ${X11_Xext_LIB}
-     )
-     list(APPEND WebKit2_LIBRARIES
-         ${ECORE_X_LIBRARIES}
-+        ${X11_X11_LIB}
-+        ${X11_Xext_LIB}
-     )
- endif ()
- 
-diff --git a/Source/cmake/OptionsEfl.cmake b/Source/cmake/OptionsEfl.cmake
-index 8585f19..1aa9002 100644
---- a/Source/cmake/OptionsEfl.cmake
-+++ b/Source/cmake/OptionsEfl.cmake
-@@ -181,6 +181,7 @@ endif ()
- 
- if (WTF_OS_UNIX)
-     set(ENABLE_X11_TARGET ON)
-+    find_package(X11 REQUIRED)
-     add_definitions(-DXP_UNIX)
- endif (WTF_OS_UNIX)
- 
-diff --git a/Tools/WebKitTestRunner/PlatformEfl.cmake b/Tools/WebKitTestRunner/PlatformEfl.cmake
-index 1873279..a905f2a 100644
---- a/Tools/WebKitTestRunner/PlatformEfl.cmake
-+++ b/Tools/WebKitTestRunner/PlatformEfl.cmake
-@@ -53,6 +53,7 @@ list(APPEND WebKitTestRunnerInjectedBundle_LIBRARIES
- )
- 
- if (ENABLE_ECORE_X)
-+    find_package(X11 REQUIRED)
-     list(APPEND WebKitTestRunner_INCLUDE_DIRECTORIES
-         ${ECORE_X_INCLUDE_DIRS}
-     )
--- 
-2.6.0
-
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl/0006-OptionsEfl.cmake-Fix-build-with-newer-CMake-3.4.patch b/meta-efl/recipes-efl/webkit/webkit-efl/0006-OptionsEfl.cmake-Fix-build-with-newer-CMake-3.4.patch
deleted file mode 100644
index 0562634..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl/0006-OptionsEfl.cmake-Fix-build-with-newer-CMake-3.4.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 993882f81fe991b8baf1099392703337cc13fac0 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Wed, 27 Jan 2016 18:40:23 +0100
-Subject: [PATCH] OptionsEfl.cmake: Fix build with newer CMake 3.4
-
-* otherwise it fails with:
-  | CMake Error at Source/cmake/OptionsEfl.cmake:251 (CHECK_INCLUDE_FILES):
-  |   Unknown CMake command "CHECK_INCLUDE_FILES".
-* https://bugs.webkit.org/show_bug.cgi?id=150117
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- Source/cmake/OptionsEfl.cmake | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Source/cmake/OptionsEfl.cmake b/Source/cmake/OptionsEfl.cmake
-index 1aa9002..05216d0 100644
---- a/Source/cmake/OptionsEfl.cmake
-+++ b/Source/cmake/OptionsEfl.cmake
-@@ -253,6 +253,7 @@ if (ENABLE_WEBGL OR WTF_USE_TILED_BACKING_STORE)
-         set(WTF_USE_EGL 1)
-         add_definitions(-DWTF_USE_EGL=1)
-     else ()
-+        include(CheckIncludeFiles)
-         CHECK_INCLUDE_FILES("GL/glx.h" OPENGLX_FOUND)
-         add_definitions(-DWTF_USE_GLX=1)
-     endif ()
--- 
-2.7.0
-
diff --git a/meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb b/meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb
deleted file mode 100644
index 96ad830..0000000
--- a/meta-efl/recipes-efl/webkit/webkit-efl_1.11.0.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI += "\
-    file://0001-OptionsCommon.cmake-don-t-mix-CXX_FLAGS-into-C_FLAGS.patch \
-    file://0002-WebKitHelpers.cmake-Add-Wno-error-deprecated-declara.patch \
-    file://0003-FEBlendNEON.h-fix-missing-semicolon.patch \
-    file://0004-Fix-the-build-with-EFL-1.12-https-bugs.webkit.org-sh.patch \
-    file://0005-Fix-the-build-with-cmake-3.patch \
-    file://0006-OptionsEfl.cmake-Fix-build-with-newer-CMake-3.4.patch \
-"
-SRC_URI[md5sum] = "90fa970ebf8646319d292c2bb5bff5db"
-SRC_URI[sha256sum] = "d8d21e27f4a21cd77c41914548c184ddb98693ba23851aa66c8e51c0be4b90b7"
diff --git a/meta-efl/recipes-navigation/mcnavi/mcnavi_0.3.4.bb b/meta-efl/recipes-navigation/mcnavi/mcnavi_0.3.4.bb
deleted file mode 100644
index 040e006..0000000
--- a/meta-efl/recipes-navigation/mcnavi/mcnavi_0.3.4.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Free GPS navigation for car and outdoor with OpenStreetMap maps"
-HOMEPAGE = "http://www.gps-routes.info/index.php?name=Content&pa=showpage&pid=1"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a"
-DEPENDS = "ecore evas imlib2 gpsd edje edje-native mysql5 intltool-native"
-
-SRC_URI = "http://www.gps-routes.info/debian/pool/main/m/mcnavi/mcnavi_${PV}.tar.gz"
-SRC_URI[md5sum] = "6860cde5c02a9f93c829da4b10e5a226"
-SRC_URI[sha256sum] = "ee7f65155e91386175875fc4f72f4bc94e4e9cdb8258112632da94520ef2c349"
-
-S = "${WORKDIR}/${PN}"
-
-inherit autotools
-
-PNBLACKLIST[mcnavi] ?= "BROKEN: latest version 0.3.4 is 3 years old and now broken with more strict ejde_cc from efl-1.13 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-# | edje_cc: Error. parse error 0.3.4-r0/mcnavi/data/themes/Default/main.edc:126. invalid state name: 'none'. "default" state must always be first.
-# | edje_cc: Error. parse error 0.3.4-r0/mcnavi/data/themes/Default/itinerary.edc:84. invalid state name: 'none'. "default" state must always be first.
-# | edje_cc: Error. parse error 0.3.4-r0/mcnavi/data/themes/Default/text.edc:1129. invalid state name: 'none'. "default" state must always be first.
-# | edje_cc: Error. parse error 0.3.4-r0/mcnavi/data/themes/Default/fileopen.edc:78. invalid state name: 'off'. "default" state must always be first.
diff --git a/meta-filesystems/recipes-utils/dmapi/dmapi_2.2.12.bb b/meta-filesystems/recipes-utils/dmapi/dmapi_2.2.12.bb
deleted file mode 100644
index 632f79d..0000000
--- a/meta-filesystems/recipes-utils/dmapi/dmapi_2.2.12.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "Library functions to get attribute bits"
-DESCRIPTION = "The Data Management API (DMAPI/XDSM) allows implementation \
-               of hierarchical storage management software with no kernel \
-               modifications as well as high-performance dump programs \
-               without requiring "raw" access to the disk and knowledge \
-               of filesystem structures.This interface is implemented by \
-               the libdm library."
-
-HOMEPAGE = "http://oss.sgi.com/projects/xfs"
-SECTION = "base"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://doc/COPYING;md5=1678edfe8de9be9564d23761ae2fa794"
-DEPENDS = "xfsprogs"
-
-SRC_URI = "ftp://oss.sgi.com/projects/xfs/cmd_tars/dmapi-${PV}.tar.gz \
-           file://remove-install-as-user.patch \
-           file://dmapi_aarch64_configure_support.patch \
-          "
-SRC_URI[md5sum] = "cd825d4e141c16011367e0a0dd98c9c5"
-SRC_URI[sha256sum] = "b18e34f47374f6adf7c164993c26df36986a009b86aa004ef9444102653aea69"
-
-inherit autotools-brokensep
-
-PARALLEL_MAKE = ""
-EXTRA_OEMAKE += "LIBTOOL="${HOST_SYS}-libtool --tag=CC" V=1"
-
-do_install () {
-    export DIST_ROOT=${D}
-    install -d ${D}${libdir}
-    oe_runmake install install-dev PKG_DEVLIB_DIR=${libdir}
-}
-
-PNBLACKLIST[dmapi] ?= "Depends on broken xfsprogs - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-filesystems/recipes-utils/dmapi/files/dmapi_aarch64_configure_support.patch b/meta-filesystems/recipes-utils/dmapi/files/dmapi_aarch64_configure_support.patch
deleted file mode 100644
index 98753b7..0000000
--- a/meta-filesystems/recipes-utils/dmapi/files/dmapi_aarch64_configure_support.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Add config support to cross compile dmapi for 
-aarch64 architecture
-
-Upstream-Status: Pending
-
-Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa at mvista.com>
-
---- dmapi-2.2.12_org/config.sub	2012-12-12 23:03:05.000000000 +0530
-+++ dmapi-2.2.12/config.sub	2014-03-24 16:49:56.771993523 +0530
-@@ -246,6 +246,7 @@ case $basic_machine in
- 	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- 	| am33_2.0 \
- 	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-+	| aarch64 | aarch64be \
- 	| bfin \
- 	| c4x | clipper \
- 	| d10v | d30v | dlx | dsp16xx \
-@@ -326,6 +327,7 @@ case $basic_machine in
- 	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- 	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- 	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-+	| aarch64-* | aarch64be-* \
- 	| avr-* | avr32-* \
- 	| bfin-* | bs2000-* \
- 	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
---- dmapi-2.2.12_org/config.guess	2012-12-12 23:03:05.000000000 +0530
-+++ dmapi-2.2.12/config.guess	2014-03-24 16:49:56.771993523 +0530
-@@ -864,6 +864,9 @@ EOF
- 	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
- 	fi
- 	exit ;;
-+    aarch64*:Linux:*:*)
-+	echo ${UNAME_MACHINE}-unknown-linux-gnu
-+	exit;;
-     avr32*:Linux:*:*)
- 	echo ${UNAME_MACHINE}-unknown-linux-gnu
- 	exit ;;
diff --git a/meta-filesystems/recipes-utils/dmapi/files/remove-install-as-user.patch b/meta-filesystems/recipes-utils/dmapi/files/remove-install-as-user.patch
deleted file mode 100644
index e761db3..0000000
--- a/meta-filesystems/recipes-utils/dmapi/files/remove-install-as-user.patch
+++ /dev/null
@@ -1,205 +0,0 @@
-remove install as user
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- include/buildmacros |  2 +-
- include/install-sh  | 95 ++++++++---------------------------------------------
- 2 files changed, 14 insertions(+), 83 deletions(-)
-
-diff --git a/include/buildmacros b/include/buildmacros
-index 7a01880..0840d55 100644
---- a/include/buildmacros
-+++ b/include/buildmacros
-@@ -30,7 +30,7 @@ OBJECTS = $(ASFILES:.s=.o) \
- 	  $(LFILES:.l=.o) \
- 	  $(YFILES:%.y=%.tab.o)
- 
--INSTALL	= $(TOPDIR)/install-sh -o $(PKG_USER) -g $(PKG_GROUP)
-+INSTALL	= $(TOPDIR)/install-sh
- 
- IMAGES_DIR = $(TOPDIR)/all-images
- DIST_DIR = $(TOPDIR)/dist
-diff --git a/include/install-sh b/include/install-sh
-index c952a71..b9d66f7 100755
---- a/include/install-sh
-+++ b/include/install-sh
-@@ -24,11 +24,11 @@
- #       set           set      |    yes        yes
- #
- _usage() {
--    echo "Usage: $prog [-o owner] [-g group] [-m mode] -d directory"
--    echo "or     $prog [-D] [-o owner] [-g group] [-m mode] file directory/file"
--    echo "or     $prog [-o owner] [-g group] [-m mode] file [file ...] directory"
-+    echo "Usage: $prog [-m mode] -d directory"
-+    echo "or     $prog [-m mode] file directory/file"
-+    echo "or     $prog [-m mode] file [file ...] directory"
-     echo "or     $prog -S file target  (creates \"target\" symlink)"
--    echo "or     $prog -T lt_arg [-o owner] [-g group] [-m mode] libtool.lai directory"
-+    echo "or     $prog -T lt_arg [-m mode] libtool.lai directory"
-     echo ""
-     echo "The \$DIST_MANIFEST and \$DIST_ROOT environment variables affect the"
-     echo "behaviour of this command - see comments in the script."
-@@ -38,32 +38,6 @@ _usage() {
-     exit 1
- }
- 
--_chown ()
--{
--    _st=255
--    if [ $# -eq 3 ] ; then
--	chown $1:$2 $3
--	_st=$?
--	if [ $_st -ne 0 ] ; then
--	    if [ $REAL_UID != '0' ] ; then
--		if [ ! -f $DIST_ROOT/.chown.quiet ] ; then
--		    echo '==============================================='
--		    echo Ownership of files under ${DIST_ROOT:-/}
--		    echo cannot be changed
--		    echo '==============================================='
--		    if [ -n "$DIST_ROOT" ] ; then
--			touch $DIST_ROOT/.chown.quiet
--		    fi
--		fi
--	       _st=0
--	    fi     
--	fi
--    fi
--
--    return $_st
--}
--
--
- _manifest ()
- { 
-     echo $* | sed -e 's/\/\//\//g' >>${DIST_MANIFEST:-/dev/null}
-@@ -77,9 +51,6 @@ Sflag=false
- Tflag=false
- DIRMODE=755
- FILEMODE=644
--OWNER=`id -u`
--GROUP=`id -g`
--REAL_UID=$OWNER
- 
- # default is to install and don't append manifest
- INSTALL=true
-@@ -94,24 +65,16 @@ MANIFEST=:
- 
- if $INSTALL
- then
--    CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod; CHOWN=_chown
-+    CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod;
- else
--    CP=true; LN=true; MKDIR=true; CHMOD=true; CHOWN=true
-+    CP=true; LN=true; MKDIR=true; CHMOD=true;
- fi
- 
--[ -n "$DIST_ROOT" -a $REAL_UID -ne 0 ] && CHOWN=true
--
--while getopts "Dcm:d:S:o:g:T:" c $*
-+while getopts "Dcm:d:S:T:" c $*
- do
-    case $c in
-    c)
- 	;;
--   g)
--	GROUP=$OPTARG
--	;;
--   o)
--	OWNER=$OPTARG
--	;;
-    m)
- 	DIRMODE=`expr $OPTARG`
- 	FILEMODE=$DIRMODE
-@@ -146,18 +109,7 @@ then
-     # first usage
-     #
-     $MKDIR -p $dir 
--    status=$?
--    if [ $status -eq 0 ]
--    then
--	$CHMOD $DIRMODE $dir
--	status=$?
--    fi
--    if [ $status -eq 0 ]
--    then
--	$CHOWN $OWNER $GROUP $dir
--	status=$?
--    fi
--    $MANIFEST d $DIRMODE $OWNER $GROUP ${dir#$DIST_ROOT}
-+    $MANIFEST d $DIRMODE ${dir#$DIST_ROOT}
- elif $Sflag
- then
-     #
-@@ -203,7 +155,7 @@ then
- 			install_name=$target/$solib
- 			$CP $solib $install_name
- 			status=$?
--			$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$solib ${install_name#$DIST_ROOT}
-+			$MANIFEST f $FILEMODE $HERE/$solib ${install_name#$DIST_ROOT}
- 			break
- 		fi
- 	done
-@@ -254,7 +206,7 @@ then
- 	install_name=$target/$old_library
- 	$CP $old_library $install_name
- 	status=$?
--	$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$old_library ${install_name#$DIST_ROOT}
-+	$MANIFEST f $FILEMODE $HERE/$old_library ${install_name#$DIST_ROOT}
- 	;;
-     *)
- 	echo "$prog: -T $lt_install invalid"
-@@ -267,7 +219,6 @@ then
- 	if [ $status -eq 0 ]
- 	then
- 		$CHMOD $FILEMODE $install_name
--		$CHOWN $OWNER $GROUP $install_name
- 	fi
- 	;;
-     esac
-@@ -292,23 +243,10 @@ else
- 	then 
- 	    if [ -f $dir/$f ]
- 	    then
--		$CHMOD $FILEMODE $dir/$f
--		status=$?
--		if [ $status -eq 0 ]
--		then
--		    $CHOWN $OWNER $GROUP $dir/$f
--		    status=$?
--		fi
--		$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f
-+		$MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f
- 	    else
- 		$CHMOD $FILEMODE $dir
--		status=$?
--		if [ $status -eq 0 ]
--		then
--		    $CHOWN $OWNER $GROUP $dir
--		    status=$?
--		fi
--		$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$dir ${dir#$DIST_ROOT}
-+		$MANIFEST f $FILEMODE $HERE/$dir ${dir#$DIST_ROOT}
- 	    fi
- 	fi
-     else
-@@ -334,14 +272,7 @@ else
- 	    status=$?
- 	    if [ $status -eq 0 ]
- 	    then
--		$CHMOD $FILEMODE $dir/$f
--		status=$?
--		if [ $status -eq 0 ]
--		then
--		    $CHOWN $OWNER $GROUP $dir/$f
--		    status=$?
--		fi
--		$MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f
-+		$MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f
- 	    fi
- 	    [ $status -ne 0 ] && break
- 	done
--- 
-1.8.1.2
-
diff --git a/meta-gnome/recipes-apps/cheese/cheese_2.30.1.bb b/meta-gnome/recipes-apps/cheese/cheese_2.30.1.bb
deleted file mode 100644
index 3f5a5b1..0000000
--- a/meta-gnome/recipes-apps/cheese/cheese_2.30.1.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "Take photos and videos with your webcam, with fun graphical effects"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a17cb0a873d252440acfdf9b3d0e7fbf"
-
-DEPENDS = "gtk+ gstreamer gst-plugins-base libcanberra udev librsvg gnome-desktop evolution-data-server intltool-native"
-
-PR = "r2"
-
-inherit gnome
-
-SRC_URI[archive.md5sum] = "1599fded8a1797ea51fb010af4e6c45b"
-SRC_URI[archive.sha256sum] = "48f03470c6f527caa0e3b269d3afcff86ae0939a74f66ce030d4eed3bc3cbd9a"
-GNOME_COMPRESS_TYPE="bz2"
-
-FILES_${PN} += "${datadir}/dbus-1"
-RRECOMMENDS_${PN} = "gst-plugins-good-meta gst-plugins-base-meta"
-
-EXTRA_OECONF += "--disable-scrollkeeper"
-
-do_configure_prepend() {
-    sed -i -e "s: help : :g" ${S}/Makefile.am
-}
-
-PNBLACKLIST[cheese] ?= "Depends on blacklisted gstreamer - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[cheese] ?= "Depends on blacklisted gnome-desktop - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-apps/epdfview/epdfview/browser_command.patch b/meta-gnome/recipes-apps/epdfview/epdfview/browser_command.patch
deleted file mode 100644
index 75e45e0..0000000
--- a/meta-gnome/recipes-apps/epdfview/epdfview/browser_command.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Imported from Debian 0.1.8-3
-
-Upstream-Status: Pending
-
-diff --git a/src/Config.cxx b/src/Config.cxx
-index 28f37ab..bc58819 100644
---- a/src/Config.cxx
-+++ b/src/Config.cxx
-@@ -22,7 +22,7 @@
- using namespace ePDFView;
- 
- // Constants
--static const gchar *DEFAULT_EXTERNAL_BROWSER_COMMAND_LINE = "firefox %s";
-+static const gchar *DEFAULT_EXTERNAL_BROWSER_COMMAND_LINE = "x-www-browser %s";
- static const gchar *DEFAULT_OPEN_FILE_FOLDER = NULL;
- static const gchar *DEFAULT_SAVE_FILE_FOLDER = NULL;
- static const gboolean DEFAULT_SHOW_STATUSBAR = TRUE;
diff --git a/meta-gnome/recipes-apps/epdfview/epdfview/fix-format.patch b/meta-gnome/recipes-apps/epdfview/epdfview/fix-format.patch
deleted file mode 100644
index 8ad5b97..0000000
--- a/meta-gnome/recipes-apps/epdfview/epdfview/fix-format.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Imported from Debian 0.1.8-3
-
-Upstream-Status: Pending
-
-diff --git a/src/gtk/MainView.cxx b/src/gtk/MainView.cxx
-index b983bff..f87de28 100644
---- a/src/gtk/MainView.cxx
-+++ b/src/gtk/MainView.cxx
-@@ -634,8 +634,9 @@ MainView::showErrorMessage (const gchar *title, const gchar *body)
-             GTK_DIALOG_DESTROY_WITH_PARENT,
-             GTK_MESSAGE_ERROR,
-             GTK_BUTTONS_OK,
-+            "%s",
-             title);
--    gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG(errorDialog),
-+    gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG(errorDialog), "%s",
-                                               body);
-     gtk_dialog_run (GTK_DIALOG (errorDialog));
-     gtk_widget_destroy (errorDialog);
diff --git a/meta-gnome/recipes-apps/epdfview/epdfview/glib-single-include.patch b/meta-gnome/recipes-apps/epdfview/epdfview/glib-single-include.patch
deleted file mode 100644
index 84a4913..0000000
--- a/meta-gnome/recipes-apps/epdfview/epdfview/glib-single-include.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Imported from Debian 0.1.8-3
-
-Upstream-Status: Pending
-
-diff --git a/src/gtk/StockIcons.h b/src/gtk/StockIcons.h
-index c142a7a..58fcf2e 100644
---- a/src/gtk/StockIcons.h
-+++ b/src/gtk/StockIcons.h
-@@ -18,7 +18,7 @@
- #if !defined (__STOCK_ICONS_H__)
- #define __STOCK_ICONS_H__
- 
--#include <glib/gmacros.h>
-+#include <glib.h>
- 
- G_BEGIN_DECLS
- 
diff --git a/meta-gnome/recipes-apps/epdfview/epdfview/swap-colors.patch b/meta-gnome/recipes-apps/epdfview/epdfview/swap-colors.patch
deleted file mode 100644
index 282bfb1..0000000
--- a/meta-gnome/recipes-apps/epdfview/epdfview/swap-colors.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Imported from Debian 0.1.8-3
-
-Upstream-Status: Pending
-
-Index: trunk/src/PDFDocument.cxx
-===================================================================
---- trunk/src/PDFDocument.cxx	(revision 361)
-+++ trunk/src/PDFDocument.cxx	(revision 367)
-@@ -21,4 +21,5 @@
- #include <poppler.h>
- #include <unistd.h>
-+#include <algorithm>
- #include "epdfview.h"
- 
-@@ -33,4 +34,22 @@
- static PageMode convertPageMode (gint pageMode);
- static gchar *getAbsoluteFileName (const gchar *fileName);
-+
-+namespace
-+{
-+    void
-+    convert_bgra_to_rgba (guint8 *data, int width, int height)
-+    {
-+        using std::swap;
-+
-+        for (int y = 0; y < height; y++)
-+        {
-+            for (int x = 0; x < width; x++)
-+            {
-+                swap(data[0], data[2]);
-+                data += 4;
-+            }
-+        }
-+    }
-+}
- 
- ///
-@@ -651,4 +670,5 @@
-         cairo_destroy(context);
-         cairo_surface_destroy (surface);
-+        convert_bgra_to_rgba(renderedPage->getData (), width, height);
- #else // !HAVE_POPPLER_0_17_0
-         // Create the pixbuf from the data and render to it.
diff --git a/meta-gnome/recipes-apps/epdfview/epdfview_0.1.8.bb b/meta-gnome/recipes-apps/epdfview/epdfview_0.1.8.bb
deleted file mode 100644
index 5e11a95..0000000
--- a/meta-gnome/recipes-apps/epdfview/epdfview_0.1.8.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-SUMMARY = "A lightweight PDF viewer based on gtk and poppler"
-HOMEPAGE = "http://www.emma-soft.com/projects/epdfview/"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-SECTION = "x11/applications"
-DEPENDS = "gtk+ poppler"
-
-PR = "r3"
-
-EXTRA_OECONF += "--without-cups"
-
-inherit autotools gettext
-
-SRC_URI = "http://www.emma-soft.com/projects/${BPN}/chrome/site/releases/${BP}.tar.bz2 \
-           file://browser_command.patch \
-           file://fix-format.patch \
-           file://glib-single-include.patch \
-           file://swap-colors.patch \
-"
-SRC_URI[md5sum] = "e50285b01612169b2594fea375f53ae4"
-SRC_URI[sha256sum] = "948648ae7c9d7b3b408d738bd4f48d87375b1196cae1129d6b846a8de0f2f8f0"
-
-PNBLACKLIST[epdfview] ?= "BROKEN: images are not displayed anymore - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-# There will be no further development / upstream is gone [1]
-# [1] https://bugzilla.redhat.com/show_bug.cgi?id=906121
diff --git a/meta-gnome/recipes-apps/gnome-mplayer/gmtk_1.0.5.bb b/meta-gnome/recipes-apps/gnome-mplayer/gmtk_1.0.5.bb
deleted file mode 100644
index f6d737c..0000000
--- a/meta-gnome/recipes-apps/gnome-mplayer/gmtk_1.0.5.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "GTK+ widget and function libraries for gnome-mplayer"
-HOMEPAGE = "http://code.google.com/p/gmtk"
-SECTION = "libs"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-DEPENDS = "gtk+ alsa-lib glib-2.0 virtual/libx11 intltool-native pulseaudio gtk+3"
-
-SRC_URI = "http://${BPN}.googlecode.com/files/${BP}.tar.gz"
-SRC_URI[md5sum] = "e06e9ca8d61d74910343bb3ef4348f7f"
-SRC_URI[sha256sum] = "a07130d62719e8c1244f8405dd97445798df5204fc0f3f2f2b669b125114b468"
-
-EXTRA_OECONF = "--disable-gconf --with-gio --with-alsa --enable-keystore"
-
-inherit gettext pkgconfig autotools gconf
-
-PNBLACKLIST[gmtk] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130661/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-apps/gnome-mplayer/gnome-mplayer_1.0.5.bb b/meta-gnome/recipes-apps/gnome-mplayer/gnome-mplayer_1.0.5.bb
deleted file mode 100644
index 629b830..0000000
--- a/meta-gnome/recipes-apps/gnome-mplayer/gnome-mplayer_1.0.5.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "A GTK+ interface to MPlayer"
-HOMEPAGE = "http://code.google.com/p/gnome-mplayer"
-SECTION = "multimedia"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-PNBLACKLIST[gnome-mplayer] ?= "rdepends on blacklisted mplayer - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-PR = "r2"
-
-DEPENDS = "gmtk gtk+ alsa-lib libnotify glib-2.0 dbus-glib virtual/libx11 libxscrnsaver"
-
-SRC_URI = "http://${BPN}.googlecode.com/files/${BP}.tar.gz"
-SRC_URI[md5sum] = "1d3ab24c5501b5528e357931ca4dc6da"
-SRC_URI[sha256sum] = "ac3c179345baecb4ca5237782aa33e83253a87bf8b42ce6eb3a9207a340f61b2"
-
-EXTRA_OECONF = "--with-gio --with-alsa --with-dbus --with-libnotify"
-
-FILES_${PN} += "${datadir}/gnome-control-center/default-apps/${PN}.xml"
-PACKAGES =+ "${PN}-nautilus-extension"
-FILES_${PN}-nautilus-extension += "${libdir}/nautilus/extensions-2.0/*.so \
-                                   ${libdir}/nautilus/extensions-3.0/*.so"
-FILES_${PN}-dev += "${libdir}/nautilus/extensions-2.0/*.la \
-                    ${libdir}/nautilus/extensions-3.0/*.la"
-FILES_${PN}-staticdev += "${libdir}/nautilus/extensions-2.0/*.a \
-                          ${libdir}/nautilus/extensions-3.0/*.a"
-FILES_${PN}-dbg += "${libdir}/nautilus/extensions-2.0/.debug \
-                    ${libdir}/nautilus/extensions-3.0/.debug"
-
-inherit gettext pkgconfig mime gtk-icon-cache autotools
-
-RDEPENDS_${PN} = "mplayer"
diff --git a/meta-gnome/recipes-extended/gtk-theme-torturer/gtk-theme-torturer_git.bb b/meta-gnome/recipes-extended/gtk-theme-torturer/gtk-theme-torturer_git.bb
deleted file mode 100644
index c419d0f..0000000
--- a/meta-gnome/recipes-extended/gtk-theme-torturer/gtk-theme-torturer_git.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-SUMMARY = "GTK+ Theme benchmark program"
-DEPENDS = "gtk+"
-HOMEPAGE = "http://wiki.laptop.org/go/GTK_for_OLPC"
-SECTION = "devel"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://appwindow.c;endline=13;md5=8c09920de460c7ea1f64ee56986aabd9"
-
-SRCREV = "99962ae39bb5aadb31929b25c58e1a053f9c9545"
-PV = "0.0.0+git${SRCPV}"
-
-SRC_URI = "git://dev.laptop.org/projects/soc-gtk/"
-S = "${WORKDIR}/git/gtk-theme-torturer"
-
-CFLAGS += "-Wl,-rpath-link,${STAGING_LIBDIR}"
-
-inherit distro_features_check
-ANY_OF_DISTRO_FEATURES = "${GTK2DISTROFEATURES}"
-
-do_install() {
-    install -d ${D}${bindir}
-    install -m 0755 torturer ${D}${bindir}
-}
-
-# http://errors.yoctoproject.org/Errors/Details/35132/
-PNBLACKLIST[gtk-theme-torturer] ?= "BROKEN: gmacros.h:182:53: error: size of array '_GStaticAssertCompileTimeAssertion_2' is negative - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gcalctool/gcalctool_5.32.0.bb b/meta-gnome/recipes-gnome/gcalctool/gcalctool_5.32.0.bb
deleted file mode 100644
index 6028f2d..0000000
--- a/meta-gnome/recipes-gnome/gcalctool/gcalctool_5.32.0.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "gcalctool is a powerful calculator"
-SECTION = "x11"
-DEPENDS = "gtk+ gnome-doc-utils"
-
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-
-SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
-SRC_URI = "http://download.gnome.org/sources/${BPN}/${SHRT_VER}/${BP}.tar.gz"
-
-SRC_URI[md5sum] = "48db927c6e7ee1d5395f953a8c184c98"
-SRC_URI[sha256sum] = "346f645c0fdef900642f6e9a2c18e7ba9a7ca9bc62fe2b08eb418f065a425c89"
-
-inherit autotools pkgconfig gsettings
-
-do_configure_prepend() {
-    sed -i -e "s: help: :g" ${S}/Makefile.am
-}
-
-PNBLACKLIST[gcalctool] ?= "broken at least since April 2013 http://permalink.gmane.org/gmane.comp.handhelds.openembedded/57920 and nobody complained, it's also replaced by gnome calculator - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gdm/gdm/0001-Remove-user-switch-applet.patch b/meta-gnome/recipes-gnome/gdm/gdm/0001-Remove-user-switch-applet.patch
deleted file mode 100644
index 75aff5d..0000000
--- a/meta-gnome/recipes-gnome/gdm/gdm/0001-Remove-user-switch-applet.patch
+++ /dev/null
@@ -1,2281 +0,0 @@
-From 0a4fe802edbd2e8a016161f08283e4b467c6762e Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen at dominion.thruhere.net>
-Date: Tue, 21 Jun 2011 12:48:39 +0200
-Subject: [PATCH] Remove user switch applet
-
-This hasn't been updated to work with gnome-panel > 2.30.0, so just drop it
-
-Upstream-Status: unacceptable, backport
-
-Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
----
- configure.ac                                       |    8 -
- gui/Makefile.am                                    |    2 -
- .../GNOME_FastUserSwitchApplet.server.in.in        |   38 -
- .../GNOME_FastUserSwitchApplet.xml                 |   20 -
- gui/user-switch-applet/Makefile.am                 |   67 -
- gui/user-switch-applet/applet.c                    | 1662 --------------------
- gui/user-switch-applet/gdm-entry-menu-item.c       |  304 ----
- gui/user-switch-applet/gdm-entry-menu-item.h       |   51 -
- po/POTFILES.in                                     |    4 -
- po/POTFILES.skip                                   |    1 -
- 10 files changed, 0 insertions(+), 2157 deletions(-)
- delete mode 100644 gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in
- delete mode 100644 gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml
- delete mode 100644 gui/user-switch-applet/Makefile.am
- delete mode 100644 gui/user-switch-applet/applet.c
- delete mode 100644 gui/user-switch-applet/gdm-entry-menu-item.c
- delete mode 100644 gui/user-switch-applet/gdm-entry-menu-item.h
-
-diff --git a/configure.ac b/configure.ac
-index 841efe0..a834110 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -149,13 +149,6 @@ PKG_CHECK_MODULES(SIMPLE_CHOOSER,
- AC_SUBST(SIMPLE_CHOOSER_CFLAGS)
- AC_SUBST(SIMPLE_CHOOSER_LIBS)
- 
--PKG_CHECK_MODULES(APPLET,
--        dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION
--        gtk+-2.0 >= $GTK_REQUIRED_VERSION
--        libpanelapplet-2.0 >= $GNOME_PANEL_REQUIRED_VERSION)
--AC_SUBST(APPLET_CFLAGS)
--AC_SUBST(APPLET_LIBS)
--
- PLUGIN_LIBTOOL_FLAGS="-export_dynamic -module -avoid-version"
- AC_SUBST(PLUGIN_LIBTOOL_FLAGS)
- 
-@@ -1340,7 +1333,6 @@ gui/Makefile
- gui/simple-greeter/Makefile
- gui/simple-greeter/libnotificationarea/Makefile
- gui/simple-chooser/Makefile
--gui/user-switch-applet/Makefile
- utils/Makefile
- data/gdm.conf
- data/Makefile
-diff --git a/gui/Makefile.am b/gui/Makefile.am
-index 326239f..bda3f7a 100644
---- a/gui/Makefile.am
-+++ b/gui/Makefile.am
-@@ -2,7 +2,6 @@ NULL =
- 
- SUBDIRS =			\
- 	simple-greeter		\
--	user-switch-applet	\
- 	$(NULL)
- 
- if XDMCP_SUPPORT
-@@ -12,5 +11,4 @@ endif
- DIST_SUBDIRS =			\
- 	simple-chooser		\
- 	simple-greeter		\
--	user-switch-applet	\
- 	$(NULL)
-diff --git a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in b/gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in
-deleted file mode 100644
-index a9b775f..0000000
---- a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in
-+++ /dev/null
-@@ -1,38 +0,0 @@
--<oaf_info>
--  <oaf_server iid="OAFIID:GNOME_FastUserSwitchApplet_Factory" type="exe"
--              location="@LIBEXECDIR@/gdm-user-switch-applet">
--
--    <oaf_attribute name="repo_ids" type="stringv">
--      <item value="IDL:Bonobo/GenericFactory:1.0"/>
--      <item value="IDL:Bonobo/Unknown:1.0"/>
--    </oaf_attribute>
--    <oaf_attribute name="name" type="string" _value="User Switcher Applet Factory"/>
--    <oaf_attribute name="description" type="string" _value="User Switcher Applet Factory"/>
--    <oaf_attribute name="bonobo:environment" type="stringv">
--       <item value="DBUS_SESSION_BUS_ADDRESS"/>
--     <oaf_attribute name="bugzilla:bugzilla" type="string" value="GNOME"/>
--     <oaf_attribute name="bugzilla:product" type="string" value="gdm"/>
--     <oaf_attribute name="bugzilla:component" type="string" value="general"/>
--     <oaf_attribute name="bugzilla:version" type="string" value="@VERSION@"/>
--     <oaf_attribute name="bugzilla:other_binaries" type="string" value="gdm-user-switch-applet"/>
--    </oaf_attribute>
--  </oaf_server>
--
--  <oaf_server iid="OAFIID:GNOME_FastUserSwitchApplet" type="factory"
--              location="OAFIID:GNOME_FastUserSwitchApplet_Factory">
--
--    <oaf_attribute name="repo_ids" type="stringv">
--      <item value="IDL:GNOME/Vertigo/PanelAppletShell:1.0"/>
--      <item value="IDL:Bonobo/Control:1.0"/>
--      <item value="IDL:Bonobo/Unknown:1.0"/>
--    </oaf_attribute>
--    <oaf_attribute name="name" type="string" _value="User Switcher"/>
--    <oaf_attribute name="description" type="string" _value="A menu to quickly switch between users"/>
--    <oaf_attribute name="panel:icon" type="string" value="stock_people"/>
--    <oaf_attribute name="bugzilla:bugzilla" type="string" value="GNOME"/>
--    <oaf_attribute name="bugzilla:product" type="string" value="gdm"/>
--    <oaf_attribute name="bugzilla:component" type="string" value="general"/>
--    <oaf_attribute name="bugzilla:version" type="string" value="@VERSION@"/>
--    <oaf_attribute name="bugzilla:other_binaries" type="string" value="gdm-user-switch-applet"/>
--  </oaf_server>
--</oaf_info>
-diff --git a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml b/gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml
-deleted file mode 100644
-index e1845c8..0000000
---- a/gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml
-+++ /dev/null
-@@ -1,20 +0,0 @@
--<Root>
--  <popups>
--    <popup name="button3">
--      <menuitem
--       name="About Me Item"
--       verb="GdmAboutMe"
--       _label="Edit Personal _Information"/>
--      <menuitem
--       name="Users and Groups Admin Item"
--       verb="GdmUsersGroupsAdmin"
--       _label="_Edit Users and Groups"/>
--      <menuitem
--       name="About Item"
--       verb="GdmAbout"
--       _label="_About"
--       pixtype="stock"
--       pixname="gtk-about"/>
--    </popup>
--  </popups>
--</Root>
-diff --git a/gui/user-switch-applet/Makefile.am b/gui/user-switch-applet/Makefile.am
-deleted file mode 100644
-index 2d2cdc0..0000000
---- a/gui/user-switch-applet/Makefile.am
-+++ /dev/null
-@@ -1,67 +0,0 @@
--NULL =
--
--AM_CPPFLAGS = \
--	-I$(top_srcdir)/gui/simple-greeter		\
--	-I$(top_srcdir)/common				\
--	-DPREFIX=\""$(prefix)"\" 			\
--	-DLIBDIR=\""$(libdir)"\" 			\
--	-DDATADIR=\""$(datadir)"\"		 	\
--	-DSYSCONFDIR=\""$(sysconfdir)"\"		\
--	-DLIBLOCALEDIR=\""$(prefix)/lib/locale"\"	\
--	-DGNOMELOCALEDIR=\""$(datadir)/locale"\"	\
--	-DGLADEDIR=\""$(pkgdatadir)"\" 			\
--	-DLIBEXECDIR=\""$(libexecdir)"\" 		\
--	-DSBINDIR=\""$(sbindir)"\"		 	\
--	-DGDMCONFDIR=\"$(gdmconfdir)\"			\
--	$(GTK_CFLAGS)					\
--	$(APPLET_CFLAGS)				\
--	$(NULL)
--
--libexec_PROGRAMS =			\
--	gdm-user-switch-applet		\
--	$(NULL)
--
--gdm_user_switch_applet_SOURCES =  	\
--	applet.c 			\
--	gdm-entry-menu-item.h		\
--	gdm-entry-menu-item.c		\
--	$(NULL)
--
--gdm_user_switch_applet_LDADD = 		\
--	$(top_builddir)/gui/simple-greeter/libgdmuser.la	\
--	$(top_builddir)/common/libgdmcommon.la		\
--	$(COMMON_LIBS)					\
--	$(APPLET_LIBS)					\
--	$(NULL)
--
--# Bonobo UI
--uidir =	$(datadir)/gnome-2.0/ui
--ui_DATA =					\
--	GNOME_FastUserSwitchApplet.xml		\
--	$(NULL)
--
--# Bonobo .server
--serverdir = $(libdir)/bonobo/servers
--server_in_files =				\
--	GNOME_FastUserSwitchApplet.server.in	\
--	$(NULL)
--server_DATA = $(server_in_files:.server.in=.server)
--
--$(server_in_files): $(server_in_files:.server.in=.server.in.in)
--	sed -e "s|\@LIBEXECDIR\@|$(libexecdir)|" -e "s|\@VERSION\@|$(VERSION)|" $< > $@
--
-- at INTLTOOL_SERVER_RULE@
--
--EXTRA_DIST = 			\
--	$(ui_DATA)		\
--	GNOME_FastUserSwitchApplet.server.in.in	\
--	$(NULL)
--
--DISTCLEANFILES =                        \
--	$(server_in_files)		\
--	$(server_DATA)			\
--        $(NULL)
--
--MAINTAINERCLEANFILES =                  \
--        *~                              \
--        Makefile.in
-diff --git a/gui/user-switch-applet/applet.c b/gui/user-switch-applet/applet.c
-deleted file mode 100644
-index b4f944c..0000000
---- a/gui/user-switch-applet/applet.c
-+++ /dev/null
-@@ -1,1662 +0,0 @@
--/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
-- *
-- * Copyright (C) 2004-2005 James M. Cape <jcape at ignore-your.tv>.
-- * Copyright (C) 2008      Red Hat, Inc.
-- *
-- * This program is free software; you can redistribute it and/or modify
-- * it under the terms of the GNU General Public License as published by
-- * the Free Software Foundation; either version 2 of the License, or
-- * (at your option) any later version.
-- *
-- * This program is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- * GNU General Public License for more details.
-- *
-- * You should have received a copy of the GNU General Public License
-- * along with this program; if not, write to the Free Software
-- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-- */
--
--#include "config.h"
--
--#include <string.h>
--#include <unistd.h>
--#include <stdlib.h>
--#include <sys/types.h>
--
--#include <glib/gi18n.h>
--#include <gdk/gdkkeysyms.h>
--#include <gtk/gtk.h>
--
--#include <gconf/gconf.h>
--#include <gconf/gconf-client.h>
--
--#include <dbus/dbus-glib.h>
--
--#include <bonobo/bonobo-main.h>
--#include <bonobo/bonobo-ui-util.h>
--
--#include <panel-applet.h>
--#include <panel-applet-gconf.h>
--
--#include "gdm-user-manager.h"
--#include "gdm-entry-menu-item.h"
--#include "gdm-settings-client.h"
--
--#define LOCKDOWN_DIR    "/desktop/gnome/lockdown"
--#define LOCKDOWN_USER_SWITCHING_KEY LOCKDOWN_DIR "/disable_user_switching"
--#define LOCKDOWN_LOCK_SCREEN_KEY    LOCKDOWN_DIR "/disable_lock_screen"
--#define LOCKDOWN_COMMAND_LINE_KEY   LOCKDOWN_DIR "/disable_command_line"
--
--typedef enum {
--        GSM_PRESENCE_STATUS_AVAILABLE = 0,
--        GSM_PRESENCE_STATUS_INVISIBLE,
--        GSM_PRESENCE_STATUS_BUSY,
--        GSM_PRESENCE_STATUS_IDLE,
--} GsmPresenceStatus;
--
--typedef struct _GdmAppletData
--{
--        PanelApplet    *applet;
--
--        GConfClient    *client;
--        GdmUserManager *manager;
--        GdmUser        *user;
--
--        GtkWidget      *menubar;
--        GtkWidget      *menuitem;
--        GtkWidget      *menu;
--#ifdef BUILD_PRESENSE_STUFF
--        GtkWidget      *user_item;
--#endif
--        GtkWidget      *control_panel_item;
--        GtkWidget      *account_item;
--        GtkWidget      *lock_screen_item;
--        GtkWidget      *login_screen_item;
--        GtkWidget      *quit_session_item;
--
--        guint           client_notify_lockdown_id;
--
--        guint           current_status;
--        guint           user_loaded_notify_id;
--        guint           user_changed_notify_id;
--        gint8           pixel_size;
--        gint            panel_size;
--        GtkIconSize     icon_size;
--#ifdef BUILD_PRESENSE_STUFF
--        DBusGProxy     *presence_proxy;
--#endif
--} GdmAppletData;
--
--typedef struct _SelectorResponseData
--{
--        GdmAppletData  *adata;
--        GtkRadioButton *radio;
--} SelectorResponseData;
--
--static void reset_icon   (GdmAppletData *adata);
--static void update_label (GdmAppletData *adata);
--
--static gboolean applet_factory (PanelApplet   *applet,
--                                const char    *iid,
--                                gpointer       data);
--
--PANEL_APPLET_BONOBO_FACTORY ("OAFIID:GNOME_FastUserSwitchApplet_Factory",
--                             PANEL_TYPE_APPLET,
--                             "gdm-user-switch-applet", "0",
--                             (PanelAppletFactoryCallback)applet_factory,
--                             NULL)
--
--static void
--about_me_cb (BonoboUIComponent *ui_container,
--             gpointer           data,
--             const char        *cname)
--{
--        GError *err;
--
--        err = NULL;
--        if (! g_spawn_command_line_async ("gnome-about-me", &err)) {
--                g_critical ("Could not run `gnome-about-me': %s",
--                            err->message);
--                g_error_free (err);
--                bonobo_ui_component_set_prop (ui_container,
--                                              "/commands/GdmAboutMe",
--                                              "hidden", "1",
--                                              NULL);
--        }
--}
--
--/*
-- * gnome-panel/applets/wncklet/window-menu.c:window_filter_button_press()
-- *
-- * Copyright (C) 2005 James M. Cape.
-- * Copyright (C) 2003 Sun Microsystems, Inc.
-- * Copyright (C) 2001 Free Software Foundation, Inc.
-- * Copyright (C) 2000 Helix Code, Inc.
-- */
--static gboolean
--menubar_button_press_event_cb (GtkWidget      *menubar,
--                               GdkEventButton *event,
--                               GdmAppletData  *adata)
--{
--        if (event->button != 1) {
--                g_signal_stop_emission_by_name (menubar, "button-press-event");
--                /* Reset the login window item */
--        }
--
--        return FALSE;
--}
--
--static void
--about_cb (BonoboUIComponent *ui_container,
--          gpointer           data,
--          const char        *cname)
--{
--        static const char *authors[] = {
--                "James M. Cape <jcape at ignore-your.tv>",
--                "Thomas Thurman <thomas at thurman.org.uk>",
--                "William Jon McCann <jmccann at redhat.com>",
--                NULL
--        };
--        static char *license[] = {
--                N_("The User Switch Applet is free software; you can redistribute it and/or modify "
--                   "it under the terms of the GNU General Public License as published by "
--                   "the Free Software Foundation; either version 2 of the License, or "
--                   "(at your option) any later version."),
--                N_("This program is distributed in the hope that it will be useful, "
--                   "but WITHOUT ANY WARRANTY; without even the implied warranty of "
--                   "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the "
--                   "GNU General Public License for more details."),
--                N_("You should have received a copy of the GNU General Public License "
--                   "along with this program; if not, write to the Free Software "
--                   "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA "),
--                NULL
--        };
--        char *license_i18n;
--
--        license_i18n = g_strconcat (_(license[0]), "\n\n", _(license[1]), "\n\n", _(license[2]), NULL); 
--
--        gtk_show_about_dialog (NULL,
--                               "version", VERSION,
--                               "copyright", "Copyright \xc2\xa9 2004-2005 James M. Cape.\n"
--                               "Copyright \xc2\xa9 2006 Thomas Thurman.\n"
--                               "Copyright \xc2\xa9 2008 Red Hat, Inc.",
--                               "comments", _("A menu to quickly switch between users."),
--                               "authors", authors,
--                               "license", license_i18n,
--                               "wrap-license", TRUE,
--                               "translator-credits", _("translator-credits"),
--                               "logo-icon-name", "stock_people",
--                               NULL);
--
--        g_free (license_i18n);
--}
--
--
--static void
--admin_cb (BonoboUIComponent *ui_container,
--          gpointer           data,
--          const char        *cname)
--{
--#ifdef USERS_ADMIN
--        char   **args;
--        gboolean res;
--        GError  *err;
--
--        err = NULL;
--        if (!g_shell_parse_argv (USERS_ADMIN, NULL, &args, &err)) {
--                g_critical ("Could not parse users and groups management command line `%s': %s",
--                            USERS_ADMIN, err->message);
--                return;
--        }
--
--        res = g_spawn_async (g_get_home_dir (),
--                             args,
--                             NULL,
--                             (G_SPAWN_STDOUT_TO_DEV_NULL |
--                              G_SPAWN_STDERR_TO_DEV_NULL |
--                              G_SPAWN_SEARCH_PATH),
--                             NULL,
--                             NULL,
--                             NULL,
--                             &err);
--        if (! res) {
--                g_critical ("Could not run `%s' to manage users and groups: %s",
--                            USERS_ADMIN, err->message);
--                g_error_free (err);
--        }
--        g_strfreev (args);
--#endif /* USERS_ADMIN */
--}
--
--static void
--set_menuitem_icon (BonoboUIComponent *component,
--                   const char        *item_path,
--                   GtkIconTheme      *theme,
--                   const char        *icon_name,
--                   gint               icon_size)
--{
--        GdkPixbuf *pixbuf;
--        int        width;
--        int        height;
--
--        pixbuf = gtk_icon_theme_load_icon (theme, icon_name, icon_size, 0, NULL);
--        if (pixbuf == NULL) {
--                return;
--        }
--
--        width = gdk_pixbuf_get_width (pixbuf);
--        height = gdk_pixbuf_get_height (pixbuf);
--        if (width > icon_size + 4 || height > icon_size + 4) {
--                GdkPixbuf *tmp;
--                if (height > width) {
--                        width *= (gdouble) icon_size / (gdouble) height;
--                        height = icon_size;
--                } else {
--                        height *= (gdouble) icon_size / (gdouble) width;
--                        width = icon_size;
--                }
--                tmp = gdk_pixbuf_scale_simple (pixbuf, width, height, GDK_INTERP_BILINEAR);
--                g_object_unref (pixbuf);
--                pixbuf = tmp;
--        }
--
--        bonobo_ui_util_set_pixbuf (component, item_path, pixbuf, NULL);
--        g_object_unref (pixbuf);
--}
--
--static void
--applet_style_set_cb (GtkWidget *widget,
--                     GtkStyle  *old_style,
--                     gpointer   data)
--{
--        BonoboUIComponent *component;
--        GdkScreen         *screen;
--        GtkIconTheme      *theme;
--        int                width;
--        int                height;
--        int                icon_size;
--
--        if (gtk_widget_has_screen (widget)) {
--                screen = gtk_widget_get_screen (widget);
--        } else {
--                screen = gdk_screen_get_default ();
--        }
--
--        if (gtk_icon_size_lookup_for_settings (gtk_settings_get_for_screen (screen),
--                                               GTK_ICON_SIZE_MENU, &width, &height)) {
--                icon_size = MAX (width, height);
--        } else {
--                icon_size = 16;
--        }
--
--        theme = gtk_icon_theme_get_for_screen (screen);
--        component = panel_applet_get_popup_component (PANEL_APPLET (widget));
--
--        set_menuitem_icon (component,
--                           "/commands/GdmAboutMe",
--                           theme,
--                           "user-info",
--                           icon_size);
--        set_menuitem_icon (component,
--                           "/commands/GdmUsersGroupsAdmin",
--                           theme,
--                           "stock_people",
--                           icon_size);
--}
--
--static void
--applet_change_background_cb (PanelApplet               *applet,
--                             PanelAppletBackgroundType  type,
--                             GdkColor                  *color,
--                             GdkPixmap                 *pixmap,
--                             GdmAppletData             *adata)
--{
--        GtkRcStyle *rc_style;
--        GtkStyle   *style;
--
--        gtk_widget_set_style (adata->menubar, NULL);
--        rc_style = gtk_rc_style_new ();
--        gtk_widget_modify_style (GTK_WIDGET (adata->menubar), rc_style);
--        g_object_unref (rc_style);
--
--        switch (type) {
--        case PANEL_NO_BACKGROUND:
--                break;
--        case PANEL_COLOR_BACKGROUND:
--                gtk_widget_modify_bg (adata->menubar, GTK_STATE_NORMAL, color);
--                break;
--        case PANEL_PIXMAP_BACKGROUND:
--                style = gtk_style_copy (gtk_widget_get_style (adata->menubar));
--                if (style->bg_pixmap[GTK_STATE_NORMAL]) {
--                        g_object_unref (style->bg_pixmap[GTK_STATE_NORMAL]);
--                }
--
--                style->bg_pixmap[GTK_STATE_NORMAL] = g_object_ref (pixmap);
--                gtk_widget_set_style (adata->menubar, style);
--                g_object_unref (style);
--                break;
--        }
--}
--
--/*
-- * gnome-panel/applets/wncklet/window-menu.c:window_menu_key_press_event()
-- *
-- * Copyright (C) 2003 Sun Microsystems, Inc.
-- * Copyright (C) 2001 Free Software Foundation, Inc.
-- * Copyright (C) 2000 Helix Code, Inc.
-- */
--static gboolean
--applet_key_press_event_cb (GtkWidget     *widget,
--                           GdkEventKey   *event,
--                           GdmAppletData *adata)
--{
--        GtkMenuShell *menu_shell;
--
--        switch (event->keyval) {
--        case GDK_KP_Enter:
--        case GDK_ISO_Enter:
--        case GDK_3270_Enter:
--        case GDK_Return:
--        case GDK_space:
--        case GDK_KP_Space:
--                menu_shell = GTK_MENU_SHELL (adata->menubar);
--                /*
--                 * We need to call _gtk_menu_shell_activate() here as is done in
--                 * window_key_press_handler in gtkmenubar.c which pops up menu
--                 * when F10 is pressed.
--                 *
--                 * As that function is private its code is replicated here.
--                 */
--                if (!menu_shell->active) {
--                        gtk_grab_add (GTK_WIDGET (menu_shell));
--                        menu_shell->have_grab = TRUE;
--                        menu_shell->active = TRUE;
--                }
--
--                gtk_menu_shell_select_first (menu_shell, FALSE);
--                return TRUE;
--        default:
--                break;
--        }
--
--        return FALSE;
--}
--
--static void
--set_item_text_angle_and_alignment (GtkWidget *item,
--                                   double     text_angle,
--                                   float      xalign,
--                                   float      yalign)
--{
--        GtkWidget *label;
--
--        label = gtk_bin_get_child (GTK_BIN (item));
--
--        gtk_label_set_angle (GTK_LABEL (label), text_angle);
--
--        gtk_misc_set_alignment (GTK_MISC (label), xalign, yalign);
--}
--
--/*
-- * gnome-panel/applets/wncklet/window-menu.c:window_menu_size_allocate()
-- *
-- * Copyright (C) 2003 Sun Microsystems, Inc.
-- * Copyright (C) 2001 Free Software Foundation, Inc.
-- * Copyright (C) 2000 Helix Code, Inc.
-- */
--static void
--applet_size_allocate_cb (GtkWidget     *widget,
--                         GtkAllocation *allocation,
--                         GdmAppletData *adata)
--{
--        GList            *children;
--        GtkWidget        *top_item;
--        PanelAppletOrient orient;
--        gint              pixel_size;
--        gdouble           text_angle;
--        GtkPackDirection  pack_direction;
--        float             text_xalign;
--        float             text_yalign;
--
--        pack_direction = GTK_PACK_DIRECTION_LTR;
--        text_angle = 0.0;
--        text_xalign = 0.0;
--        text_yalign = 0.5;
--
--        children = gtk_container_get_children (GTK_CONTAINER (adata->menubar));
--        top_item = GTK_WIDGET (children->data);
--        g_list_free (children);
--
--        orient = panel_applet_get_orient (PANEL_APPLET (widget));
--
--        switch (orient) {
--        case PANEL_APPLET_ORIENT_UP:
--        case PANEL_APPLET_ORIENT_DOWN:
--                gtk_widget_set_size_request (top_item, -1, allocation->height);
--                pixel_size = allocation->height - gtk_widget_get_style (top_item)->ythickness * 2;
--                break;
--        case PANEL_APPLET_ORIENT_LEFT:
--                gtk_widget_set_size_request (top_item, allocation->width, -1);
--                pixel_size = allocation->width - gtk_widget_get_style (top_item)->xthickness * 2;
--                pack_direction = GTK_PACK_DIRECTION_TTB;
--                text_angle = 270.0;
--                text_xalign = 0.5;
--                text_yalign = 0.0;
--                break;
--        case PANEL_APPLET_ORIENT_RIGHT:
--                gtk_widget_set_size_request (top_item, allocation->width, -1);
--                pixel_size = allocation->width - gtk_widget_get_style (top_item)->xthickness * 2;
--                pack_direction = GTK_PACK_DIRECTION_BTT;
--                text_angle = 90.0;
--                text_xalign = 0.5;
--                text_yalign = 0.0;
--                break;
--        default:
--                g_assert_not_reached ();
--                break;
--        }
--
--        gtk_menu_bar_set_pack_direction (GTK_MENU_BAR (adata->menubar),
--                                         pack_direction);
--        gtk_menu_bar_set_child_pack_direction (GTK_MENU_BAR (adata->menubar),
--                                               pack_direction);
--
--        set_item_text_angle_and_alignment (adata->menuitem,
--                                           text_angle,
--                                           text_xalign,
--                                           text_yalign);
--
--        if (adata->panel_size != pixel_size) {
--                adata->panel_size = pixel_size;
--                reset_icon (adata);
--        }
--}
--
--
--static void
--gdm_applet_data_free (GdmAppletData *adata)
--{
--        gconf_client_notify_remove (adata->client, adata->client_notify_lockdown_id);
--
--        if (adata->user_loaded_notify_id != 0) {
--                g_signal_handler_disconnect (adata->user, adata->user_loaded_notify_id);
--        }
--
--        if (adata->user_changed_notify_id != 0) {
--                g_signal_handler_disconnect (adata->user, adata->user_changed_notify_id);
--        }
--
--#ifdef BUILD_PRESENSE_STUFF
--        if (adata->presence_proxy != NULL) {
--                g_object_unref (adata->presence_proxy);
--        }
--#endif
--
--        if (adata->user != NULL) {
--                g_object_unref (adata->user);
--        }
--        g_object_unref (adata->client);
--        g_object_unref (adata->manager);
--
--        g_free (adata);
--}
--
--
--/*
-- * gnome-panel/applets/wncklet/window-menu.c:window_menu_on_expose()
-- *
-- * Copyright (C) 2003 Sun Microsystems, Inc.
-- * Copyright (C) 2001 Free Software Foundation, Inc.
-- * Copyright (C) 2000 Helix Code, Inc.
-- */
--static gboolean
--menubar_expose_event_cb (GtkWidget      *widget,
--                         GdkEventExpose *event,
--                         GdmAppletData  *adata)
--{
--        if (gtk_widget_has_focus (GTK_WIDGET (adata->applet)))
--                gtk_paint_focus (gtk_widget_get_style (widget),
--                                 gtk_widget_get_window (widget),
--                                 gtk_widget_get_state (widget),
--                                 NULL, widget, "menu-applet", 0, 0, -1, -1);
--
--        return FALSE;
--}
--
--static void
--menu_style_set_cb (GtkWidget     *menu,
--                   GtkStyle      *old_style,
--                   GdmAppletData *adata)
--{
--        GtkSettings *settings;
--        int          width;
--        int          height;
--
--        adata->icon_size = gtk_icon_size_from_name ("panel-menu");
--
--        if (adata->icon_size == GTK_ICON_SIZE_INVALID) {
--                adata->icon_size = gtk_icon_size_register ("panel-menu", 24, 24);
--        }
--
--        if (gtk_widget_has_screen (menu)) {
--                settings = gtk_settings_get_for_screen (gtk_widget_get_screen (menu));
--        } else {
--                settings = gtk_settings_get_default ();
--        }
--
--        if (!gtk_icon_size_lookup_for_settings (settings, adata->icon_size,
--                                                &width, &height)) {
--                adata->pixel_size = -1;
--        } else {
--                adata->pixel_size = MAX (width, height);
--        }
--}
--
--static void
--menuitem_style_set_cb (GtkWidget     *menuitem,
--                       GtkStyle      *old_style,
--                       GdmAppletData *adata)
--{
--        GtkWidget *image;
--
--        if (GDM_IS_ENTRY_MENU_ITEM (menuitem)) {
--        } else {
--                const char *icon_name;
--
--                if (menuitem == adata->login_screen_item) {
--                        icon_name = "system-users";
--                } else if (menuitem == adata->lock_screen_item) {
--                        icon_name = "system-lock-screen";
--                } else if (menuitem == adata->quit_session_item) {
--                        icon_name = "system-log-out";
--                } else if (menuitem == adata->account_item) {
--                        icon_name = "user-info";
--                } else if (menuitem == adata->control_panel_item) {
--                        icon_name = "preferences-desktop";
--                } else {
--                        icon_name = GTK_STOCK_MISSING_IMAGE;
--                }
--
--                image = gtk_image_menu_item_get_image (GTK_IMAGE_MENU_ITEM (menuitem));
--                gtk_image_set_pixel_size (GTK_IMAGE (image), adata->pixel_size);
--                gtk_image_set_from_icon_name (GTK_IMAGE (image), icon_name,
--                                              adata->icon_size);
--        }
--}
--
--static void
--on_user_changed (GdmUser         *user,
--                 GdmAppletData   *adata)
--{
--        g_debug ("user changed");
--        update_label (adata);
--        reset_icon (adata);
--}
--
--/* Called every time the menu is displayed (and also for some reason
-- * immediately it's created, which does no harm). All we have to do
-- * here is kick off a request to GDM to let us know which users are
-- * logged in, so we can display check marks next to their names.
-- */
--static gboolean
--menu_expose_cb (GtkWidget *menu,
--                gpointer   data)
--{
--        char *program;
--        GdmAppletData *adata = data;
--
--        program = g_find_program_in_path ("gnome-control-center");
--        if (program != NULL) {
--                gtk_widget_show (adata->control_panel_item);
--        } else {
--                gtk_widget_hide (adata->control_panel_item);
--        }
--        g_free (program);
--        return FALSE;
--}
--
--static void
--maybe_lock_screen (GdmAppletData *adata)
--{
--        char      *args[3];
--        GError    *err;
--        GdkScreen *screen;
--        gboolean   use_gscreensaver = TRUE;
--        gboolean   res;
--
--        g_debug ("Attempting to lock screen");
--
--        args[0] = g_find_program_in_path ("gnome-screensaver-command");
--        if (args[0] == NULL) {
--                args[0] = g_find_program_in_path ("xscreensaver-command");
--                use_gscreensaver = FALSE;
--        }
--
--        if (args[0] == NULL) {
--                return;
--        }
--
--        if (use_gscreensaver) {
--                args[1] = "--lock";
--        } else {
--                args[1] = "-lock";
--        }
--        args[2] = NULL;
--
--        if (gtk_widget_has_screen (GTK_WIDGET (adata->applet))) {
--                screen = gtk_widget_get_screen (GTK_WIDGET (adata->applet));
--        } else {
--                screen = gdk_screen_get_default ();
--        }
--
--        err = NULL;
--        res = gdk_spawn_on_screen (screen,
--                                   g_get_home_dir (),
--                                   args,
--                                   NULL,
--                                   0,
--                                   NULL,
--                                   NULL,
--                                   NULL,
--                                   &err);
--        if (! res) {
--                g_warning (_("Can't lock screen: %s"), err->message);
--                g_error_free (err);
--        }
--
--        if (use_gscreensaver) {
--                args[1] = "--throttle";
--        } else {
--                args[1] = "-throttle";
--        }
--
--        err = NULL;
--        res = gdk_spawn_on_screen (screen,
--                                   g_get_home_dir (),
--                                   args,
--                                   NULL,
--                                   (G_SPAWN_STDERR_TO_DEV_NULL
--                                   | G_SPAWN_STDOUT_TO_DEV_NULL),
--                                   NULL,
--                                   NULL,
--                                   NULL,
--                                   &err);
--        if (! res) {
--                g_warning (_("Can't temporarily set screensaver to blank screen: %s"),
--                           err->message);
--                g_error_free (err);
--        }
--
--        g_free (args[0]);
--}
--
--static void
--do_switch (GdmAppletData *adata,
--           GdmUser       *user)
--{
--        guint num_sessions;
--
--        g_debug ("Do user switch");
--
--        if (user == NULL) {
--                gdm_user_manager_goto_login_session (adata->manager);
--                goto out;
--        }
--
--        num_sessions = gdm_user_get_num_sessions (user);
--        if (num_sessions > 0) {
--                gdm_user_manager_activate_user_session (adata->manager, user);
--        } else {
--                gdm_user_manager_goto_login_session (adata->manager);
--        }
-- out:
--        maybe_lock_screen (adata);
--}
--
--static void
--update_switch_user (GdmAppletData *adata)
--{
--        gboolean can_switch;
--        gboolean has_other_users;
--
--        can_switch = gdm_user_manager_can_switch (adata->manager);
--        g_object_get (adata->manager,
--                      "has-multiple-users", &has_other_users,
--                      NULL);
--
--        if (can_switch && has_other_users) {
--                gtk_widget_show (adata->login_screen_item);
--        } else {
--
--                gtk_widget_hide (adata->login_screen_item);
--        }
--}
--
--static void
--on_manager_is_loaded_changed (GdmUserManager *manager,
--                              GParamSpec     *pspec,
--                              GdmAppletData  *adata)
--{
--        update_switch_user (adata);
--}
--
--static void
--on_manager_has_multiple_users_changed (GdmUserManager       *manager,
--                                       GParamSpec           *pspec,
--                                       GdmAppletData        *adata)
--{
--        update_switch_user (adata);
--}
--
--#ifdef BUILD_PRESENSE_STUFF
--static void
--on_user_item_activate (GtkMenuItem   *item,
--                       GdmAppletData *adata)
--{
--        g_signal_stop_emission_by_name (item, "activate");
--}
--#endif
--
--static void
--on_control_panel_activate (GtkMenuItem   *item,
--                           GdmAppletData *adata)
--{
--        char      *args[2];
--        GError    *error;
--        GdkScreen *screen;
--        gboolean   res;
--
--        args[0] = g_find_program_in_path ("gnome-control-center");
--        if (args[0] == NULL) {
--                return;
--        }
--        args[1] = NULL;
--
--        if (gtk_widget_has_screen (GTK_WIDGET (adata->applet))) {
--                screen = gtk_widget_get_screen (GTK_WIDGET (adata->applet));
--        } else {
--                screen = gdk_screen_get_default ();
--        }
--
--        error = NULL;
--        res = gdk_spawn_on_screen (screen,
--                                   g_get_home_dir (),
--                                   args,
--                                   NULL,
--                                   0,
--                                   NULL,
--                                   NULL,
--                                   NULL,
--                                   &error);
--        if (! res) {
--                g_warning (_("Can't lock screen: %s"), error->message);
--                g_error_free (error);
--        }
--
--        g_free (args[0]);
--}
--
--static void
--on_account_activate (GtkMenuItem   *item,
--                     GdmAppletData *adata)
--{
--        char      *args[2];
--        GError    *error;
--        GdkScreen *screen;
--        gboolean   res;
--
--        args[0] = g_find_program_in_path ("accounts-dialog");
--        if (args[0] == NULL) {
--                args[0] = g_find_program_in_path ("gnome-about-me");
--                if (args[0] == NULL) {
--                        return;
--                }
--        }
--        args[1] = NULL;
--
--        if (gtk_widget_has_screen (GTK_WIDGET (adata->applet))) {
--                screen = gtk_widget_get_screen (GTK_WIDGET (adata->applet));
--        } else {
--                screen = gdk_screen_get_default ();
--        }
--
--        error = NULL;
--        res = gdk_spawn_on_screen (screen,
--                                   g_get_home_dir (),
--                                   args,
--                                   NULL,
--                                   0,
--                                   NULL,
--                                   NULL,
--                                   NULL,
--                                   &error);
--        if (! res) {
--                g_warning (_("Can't lock screen: %s"), error->message);
--                g_error_free (error);
--        }
--
--        g_free (args[0]);
--}
--
--static void
--on_lock_screen_activate (GtkMenuItem   *item,
--                         GdmAppletData *adata)
--{
--        maybe_lock_screen (adata);
--}
--
--static void
--on_login_screen_activate (GtkMenuItem   *item,
--                          GdmAppletData *adata)
--{
--        GdmUser *user;
--
--        user = NULL;
--
--        do_switch (adata, user);
--}
--
--static void
--on_quit_session_activate (GtkMenuItem   *item,
--                          GdmAppletData *adata)
--{
--        char      *args[3];
--        GError    *error;
--        GdkScreen *screen;
--        gboolean   res;
--
--        args[0] = g_find_program_in_path ("gnome-session-save");
--        if (args[0] == NULL) {
--                return;
--        }
--
--        args[1] = "--logout-dialog";
--        args[2] = NULL;
--
--        if (gtk_widget_has_screen (GTK_WIDGET (adata->applet))) {
--                screen = gtk_widget_get_screen (GTK_WIDGET (adata->applet));
--        } else {
--                screen = gdk_screen_get_default ();
--        }
--
--        error = NULL;
--        res = gdk_spawn_on_screen (screen,
--                                   g_get_home_dir (),
--                                   args,
--                                   NULL,
--                                   0,
--                                   NULL,
--                                   NULL,
--                                   NULL,
--                                   &error);
--        if (! res) {
--                g_warning (_("Can't log out: %s"), error->message);
--                g_error_free (error);
--        }
--
--        g_free (args[0]);
--}
--
--#ifdef BUILD_PRESENSE_STUFF
--static gboolean
--on_menu_key_press_event (GtkWidget     *widget,
--                         GdkEventKey   *event,
--                         GdmAppletData *adata)
--{
--        GtkWidget *entry;
--
--        entry = gdm_entry_menu_item_get_entry (GDM_ENTRY_MENU_ITEM (adata->user_item));
--
--        if (GTK_WIDGET_HAS_FOCUS (entry)) {
--                gtk_widget_event (entry, (GdkEvent *)event);
--                return TRUE;
--        } else {
--                return FALSE;
--        }
--}
--
--static void
--save_status (GdmAppletData *adata,
--             guint          status)
--{
--        if (adata->current_status != status) {
--                GError *error;
--
--                adata->current_status = status;
--
--                g_debug ("Saving status: %u", status);
--                error = NULL;
--                dbus_g_proxy_call (adata->presence_proxy,
--                                   "SetStatus",
--                                   &error,
--                                   G_TYPE_UINT, status,
--                                   G_TYPE_INVALID,
--                                   G_TYPE_INVALID);
--
--                if (error != NULL) {
--                        g_warning ("Couldn't save presence status: %s", error->message);
--                        g_error_free (error);
--                }
--        }
--}
--
--static void
--on_status_available_activate (GtkWidget     *widget,
--                              GdmAppletData *adata)
--{
--
--        if (gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (widget))) {
--                save_status (adata, GSM_PRESENCE_STATUS_AVAILABLE);
--        }
--}
--
--static void
--on_status_busy_activate (GtkWidget     *widget,
--                         GdmAppletData *adata)
--{
--         if (gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (widget))) {
--                 save_status (adata, GSM_PRESENCE_STATUS_BUSY);
--         }
--}
--
--static void
--on_status_invisible_activate (GtkWidget     *widget,
--                              GdmAppletData *adata)
--{
--         if (gtk_check_menu_item_get_active (GTK_CHECK_MENU_ITEM (widget))) {
--                 save_status (adata, GSM_PRESENCE_STATUS_INVISIBLE);
--         }
--}
--
--static struct {
--        char      *icon_name;
--        char      *display_name;
--        void      *menu_callback;
--        GtkWidget *widget;
--} statuses[] = {
--        { "user-online", N_("Available"), on_status_available_activate, NULL },
--        { "user-invisible", N_("Invisible"), on_status_invisible_activate, NULL },
--        { "user-busy", N_("Busy"), on_status_busy_activate, NULL },
--        { "user-away", N_("Away"), NULL, NULL },
--};
--#endif
--
--static void
--update_label (GdmAppletData *adata)
--{
--        GtkWidget *label;
--        char      *markup;
--
--        label = gtk_bin_get_child (GTK_BIN (adata->menuitem));
--
--#ifdef BUILD_PRESENSE_STUFF
--        markup = g_strdup_printf ("<b>%s</b> <small>(%s)</small>",
--                                  gdm_user_get_real_name (GDM_USER (adata->user)),
--                                  _(statuses[adata->current_status].display_name));
--#else
--        markup = g_strdup_printf ("<b>%s</b>",
--                                  gdm_user_get_real_name (GDM_USER (adata->user)));
--#endif
--        gtk_label_set_markup (GTK_LABEL (label), markup);
--        g_free (markup);
--}
--
--#ifdef BUILD_PRESENSE_STUFF
--static void
--save_status_text (GdmAppletData *adata)
--{
--        GtkWidget     *entry;
--        GtkTextBuffer *buffer;
--        char          *escaped_text;
--        char          *text;
--        GtkTextIter    start, end;
--
--        entry = gdm_entry_menu_item_get_entry (GDM_ENTRY_MENU_ITEM (adata->user_item));
--        buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (entry));
--        gtk_text_buffer_get_bounds (buffer, &start, &end);
--        text = gtk_text_buffer_get_text (buffer, &start, &end, FALSE);
--        escaped_text = g_markup_escape_text (text, -1);
--
--        if (escaped_text != NULL) {
--                GError *error;
--
--                error = NULL;
--                dbus_g_proxy_call (adata->presence_proxy,
--                                   "SetStatusText",
--                                   &error,
--                                   G_TYPE_STRING, escaped_text,
--                                   G_TYPE_INVALID,
--                                   G_TYPE_INVALID);
--
--                if (error != NULL) {
--                        g_warning ("Couldn't set presence status text: %s", error->message);
--                        g_error_free (error);
--                }
--        }
--
--        g_free (text);
--        g_free (escaped_text);
--}
--
--static void
--on_user_item_deselect (GtkWidget     *item,
--                       GdmAppletData *adata)
--{
--        save_status_text (adata);
--}
--#endif
--
--static void
--create_sub_menu (GdmAppletData *adata)
--{
--        GtkWidget *item;
--#ifdef BUILD_PRESENSE_STUFF
--        int        i;
--        GSList    *radio_group;
--#endif
--
--        adata->menu = gtk_menu_new ();
--#ifdef BUILD_PRESENSE_STUFF
--        g_signal_connect (adata->menu,
--                          "key-press-event",
--                          G_CALLBACK (on_menu_key_press_event),
--                          adata);
--#endif
--        gtk_menu_item_set_submenu (GTK_MENU_ITEM (adata->menuitem), adata->menu);
--        g_signal_connect (adata->menu, "style-set",
--                          G_CALLBACK (menu_style_set_cb), adata);
--        g_signal_connect (adata->menu, "show",
--                          G_CALLBACK (menu_expose_cb), adata);
--
--#ifdef BUILD_PRESENSE_STUFF
--        adata->user_item = gdm_entry_menu_item_new ();
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu),
--                               adata->user_item);
--        gtk_widget_show (adata->user_item);
--        g_signal_connect (adata->user_item, "activate",
--                          G_CALLBACK (on_user_item_activate), adata);
--        g_signal_connect (adata->user_item,
--                          "deselect",
--                          G_CALLBACK (on_user_item_deselect),
--                          adata);
--
--        item = gtk_separator_menu_item_new ();
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu), item);
--        gtk_widget_show (item);
--
--        radio_group = NULL;
--        for (i = 0; i < G_N_ELEMENTS (statuses); i++) {
--                GtkWidget *hbox;
--                GtkWidget *label;
--                GtkWidget *image;
--                GtkWidget *item;
--
--                if (statuses[i].menu_callback == NULL) {
--                        continue;
--                }
--
--                item = gtk_radio_menu_item_new (radio_group);
--                radio_group = gtk_radio_menu_item_get_group (GTK_RADIO_MENU_ITEM (item));
--                hbox = gtk_hbox_new (FALSE, 3);
--                label = gtk_label_new (_(statuses[i].display_name));
--                gtk_label_set_justify (GTK_LABEL(label), GTK_JUSTIFY_LEFT);
--                gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
--                gtk_box_pack_start (GTK_BOX (hbox), label, TRUE, TRUE, 0);
--                gtk_widget_show (label);
--                image = gtk_image_new_from_icon_name (statuses[i].icon_name, GTK_ICON_SIZE_MENU);
--                gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, TRUE, 0);
--                gtk_widget_show (image);
--                gtk_widget_show (hbox);
--                gtk_container_add (GTK_CONTAINER (item), hbox);
--
--                gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu),
--                                       item);
--                g_signal_connect (item, "activate",
--                                  G_CALLBACK (statuses[i].menu_callback), adata);
--                gtk_widget_show (item);
--
--                statuses[i].widget = item;
--        }
--
--        item = gtk_separator_menu_item_new ();
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu), item);
--        gtk_widget_show (item);
--#endif
--
--        adata->account_item = gtk_image_menu_item_new_with_label (_("Account Information"));
--        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (adata->account_item),
--                                       gtk_image_new ());
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu),
--                               adata->account_item);
--        g_signal_connect (adata->account_item, "style-set",
--                          G_CALLBACK (menuitem_style_set_cb), adata);
--        g_signal_connect (adata->account_item, "activate",
--                          G_CALLBACK (on_account_activate), adata);
--        gtk_widget_show (adata->account_item);
--
--
--        adata->control_panel_item = gtk_image_menu_item_new_with_label (_("System Preferences"));
--        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (adata->control_panel_item),
--                                       gtk_image_new ());
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu),
--                               adata->control_panel_item);
--        g_signal_connect (adata->control_panel_item, "style-set",
--                          G_CALLBACK (menuitem_style_set_cb), adata);
--        g_signal_connect (adata->control_panel_item, "activate",
--                          G_CALLBACK (on_control_panel_activate), adata);
--
--        item = gtk_separator_menu_item_new ();
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu), item);
--        gtk_widget_show (item);
--
--        adata->lock_screen_item = gtk_image_menu_item_new_with_label (_("Lock Screen"));
--        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (adata->lock_screen_item),
--                                       gtk_image_new ());
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu),
--                               adata->lock_screen_item);
--        g_signal_connect (adata->lock_screen_item, "style-set",
--                          G_CALLBACK (menuitem_style_set_cb), adata);
--        g_signal_connect (adata->lock_screen_item, "activate",
--                          G_CALLBACK (on_lock_screen_activate), adata);
--        /* Only show if not locked down */
--
--        adata->login_screen_item = gtk_image_menu_item_new_with_label (_("Switch User"));
--        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (adata->login_screen_item),
--                                       gtk_image_new ());
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu),
--                               adata->login_screen_item);
--        g_signal_connect (adata->login_screen_item, "style-set",
--                          G_CALLBACK (menuitem_style_set_cb), adata);
--        g_signal_connect (adata->login_screen_item, "activate",
--                          G_CALLBACK (on_login_screen_activate), adata);
--        /* Only show switch user if there are other users */
--
--        adata->quit_session_item = gtk_image_menu_item_new_with_label (_("Quit…"));
--        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (adata->quit_session_item),
--                                       gtk_image_new ());
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menu),
--                               adata->quit_session_item);
--        g_signal_connect (adata->quit_session_item, "style-set",
--                          G_CALLBACK (menuitem_style_set_cb), adata);
--        g_signal_connect (adata->quit_session_item, "activate",
--                          G_CALLBACK (on_quit_session_activate), adata);
--        gtk_widget_show (adata->quit_session_item);
--        gtk_widget_show (adata->menu);
--}
--
--static void
--destroy_sub_menu (GdmAppletData *adata)
--{
--        gtk_menu_item_set_submenu (GTK_MENU_ITEM (adata->menuitem), NULL);
--}
--
--static void
--set_menu_visibility (GdmAppletData *adata,
--                     gboolean       visible)
--{
--
--        if (visible) {
--                create_sub_menu (adata);
--        } else {
--                destroy_sub_menu (adata);
--        }
--}
--
--static void
--client_notify_lockdown_func (GConfClient   *client,
--                             guint          cnxn_id,
--                             GConfEntry    *entry,
--                             GdmAppletData *adata)
--{
--        GConfValue *value;
--        const char *key;
--
--        value = gconf_entry_get_value (entry);
--        key = gconf_entry_get_key (entry);
--
--        if (value == NULL || key == NULL) {
--                return;
--        }
--
--        if (strcmp (key, LOCKDOWN_USER_SWITCHING_KEY) == 0) {
--                if (gconf_value_get_bool (value)) {
--                        set_menu_visibility (adata, FALSE);
--                } else {
--                        set_menu_visibility (adata, TRUE);
--                }
--        } else if (strcmp (key, LOCKDOWN_LOCK_SCREEN_KEY) == 0) {
--                if (gconf_value_get_bool (value)) {
--                        gtk_widget_hide (adata->lock_screen_item);
--                } else {
--                        gtk_widget_show (adata->lock_screen_item);
--                }
--        }
--}
--
--static void
--reset_icon (GdmAppletData *adata)
--{
--        GdkPixbuf *pixbuf;
--        GtkWidget *image;
--
--        if (adata->user == NULL || !gtk_widget_has_screen (GTK_WIDGET (adata->menuitem))) {
--                return;
--        }
--
--#ifdef BUILD_PRESENSE_STUFF
--        if (adata->user_item != NULL) {
--                image = gdm_entry_menu_item_get_image (GDM_ENTRY_MENU_ITEM (adata->user_item));
--                pixbuf = gdm_user_render_icon (adata->user, adata->panel_size * 3);
--                if (pixbuf == NULL) {
--                        return;
--                }
--
--                gtk_image_set_from_pixbuf (GTK_IMAGE (image), pixbuf);
--                g_object_unref (pixbuf);
--        }
--#else
--        pixbuf = gdm_user_render_icon (adata->user, adata->panel_size);
--
--        if (pixbuf == NULL) {
--                return;
--        }
--
--        image = gtk_image_menu_item_get_image (GTK_IMAGE_MENU_ITEM (adata->menuitem));
--        gtk_image_set_from_pixbuf (GTK_IMAGE (image), pixbuf);
--        g_object_unref (pixbuf);
--#endif
--}
--
--static void
--setup_current_user_now (GdmAppletData *adata)
--{
--        g_assert (adata->user != NULL);
--
--        if (adata->user_loaded_notify_id != 0) {
--                g_signal_handler_disconnect (adata->user, adata->user_loaded_notify_id);
--        }
--        adata->user_loaded_notify_id = 0;
--
--        update_label (adata);
--        reset_icon (adata);
--        adata->user_changed_notify_id =
--            g_signal_connect (adata->user,
--                              "changed",
--                              G_CALLBACK (on_user_changed),
--                              adata);
--}
--
--static void
--on_current_user_loaded (GdmUser       *user,
--                        GParamSpec    *pspec,
--                        GdmAppletData *adata)
--{
--        if (!gdm_user_is_loaded (user)) {
--                return;
--        }
--
--        setup_current_user_now (adata);
--}
--
--static void
--setup_current_user (GdmAppletData *adata)
--{
--        adata->user = gdm_user_manager_get_user_by_uid (adata->manager, getuid ());
--
--        if (adata->user == NULL) {
--                g_warning ("Could not setup current user");
--                return;
--        }
--
--        g_object_ref (adata->user);
--
--        adata->menuitem = gtk_image_menu_item_new_with_label ("");
--#ifndef BUILD_PRESENSE_STUFF
--        gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (adata->menuitem),
--                                       gtk_image_new ());
--#endif
--        gtk_menu_shell_append (GTK_MENU_SHELL (adata->menubar), adata->menuitem);
--        gtk_widget_show (adata->menuitem);
--
--        if (gdm_user_is_loaded (adata->user)) {
--                setup_current_user_now (adata);
--                return;
--        }
--
--        adata->user_loaded_notify_id = g_signal_connect (adata->user,
--                                                         "notify::is-loaded",
--                                                         G_CALLBACK (on_current_user_loaded),
--                                                         adata);
--}
--
--#ifdef BUILD_PRESENSE_STUFF
--static void
--set_status (GdmAppletData *adata,
--            guint status)
--{
--        int i;
--
--        g_debug ("Setting current status: %u", status);
--        adata->current_status = status;
--        for (i = 0; i < G_N_ELEMENTS (statuses); i++) {
--                if (statuses[i].widget == NULL) {
--                        continue;
--                }
--                if (i == status) {
--                        gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (statuses[i].widget),
--                                                        TRUE);
--                }
--        }
--
--        update_label (adata);
--}
--
--static void
--on_presence_status_changed (DBusGProxy    *presence_proxy,
--                            guint          status,
--                            GdmAppletData *adata)
--{
--        g_debug ("Status changed: %u", status);
--
--        set_status (adata, status);
--}
--
--static void
--set_status_text (GdmAppletData *adata,
--                 const char    *status_text)
--{
--        GtkWidget     *entry;
--        GtkTextBuffer *buffer;
--
--        g_debug ("Status text changed: %s", status_text);
--
--        entry = gdm_entry_menu_item_get_entry (GDM_ENTRY_MENU_ITEM (adata->user_item));
--        buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (entry));
--        gtk_text_buffer_set_text (buffer, status_text, -1);
--}
--
--static void
--on_presence_status_text_changed (DBusGProxy    *presence_proxy,
--                                 const char    *status_text,
--                                 GdmAppletData *adata)
--{
--        set_status_text (adata, status_text);
--}
--#endif
--
--static gboolean
--fill_applet (PanelApplet *applet)
--{
--        static const BonoboUIVerb menu_verbs[] = {
--                BONOBO_UI_VERB ("GdmAboutMe", about_me_cb),
--                BONOBO_UI_VERB ("GdmUsersGroupsAdmin", admin_cb),
--                BONOBO_UI_VERB ("GdmAbout", about_cb),
--                BONOBO_UI_VERB_END
--        };
--        static gboolean    first_time = FALSE;
--        char              *tmp;
--        BonoboUIComponent *popup_component;
--        GdmAppletData     *adata;
--        GError            *error;
--        DBusGConnection   *bus;
--
--        if (!first_time) {
--                first_time = TRUE;
--
--                /* Do this here so it's only done once. */
--                gtk_rc_parse_string ("style \"gdm-user-switch-menubar-style\"\n"
--                                     "{\n"
--                                     "GtkMenuBar::shadow-type = none\n"
--                                     "GtkMenuBar::internal-padding = 0\n"
--                                     "}\n"
--                                     "style \"gdm-user-switch-applet-style\"\n"
--                                     "{\n"
--                                     "GtkWidget::focus-line-width = 0\n"
--                                     "GtkWidget::focus-padding = 0\n"
--                                     "}\n"
--                                     "widget \"*.gdm-user-switch-menubar\" style \"gdm-user-switch-menubar-style\"\n"
--                                     "widget \"*.gdm-user-switch-applet\" style \"gdm-user-switch-applet-style\"\n");
--                gtk_window_set_default_icon_name ("stock_people");
--                g_set_application_name (_("User Switch Applet"));
--
--                if (! gdm_settings_client_init (DATADIR "/gdm/gdm.schemas", "/")) {
--                        g_critical ("Unable to initialize settings client");
--                        exit (1);
--                }
--
--        }
--
--        adata = g_new0 (GdmAppletData, 1);
--        adata->applet = applet;
--        adata->panel_size = 24;
--
--        adata->client = gconf_client_get_default ();
--
--        gtk_widget_set_tooltip_text (GTK_WIDGET (applet), _("Change account settings and status"));
--        gtk_container_set_border_width (GTK_CONTAINER (applet), 0);
--        gtk_widget_set_name (GTK_WIDGET (applet), "gdm-user-switch-applet");
--        panel_applet_set_flags (applet, PANEL_APPLET_EXPAND_MINOR);
--        panel_applet_setup_menu_from_file (applet, NULL,
--                                           DATADIR "/gnome-2.0/ui/GNOME_FastUserSwitchApplet.xml",
--                                           NULL, menu_verbs, adata);
--
--        popup_component = panel_applet_get_popup_component (applet);
--
--        /* Hide the admin context menu items if locked down or no cmd-line */
--        if (gconf_client_get_bool (adata->client,
--                                   LOCKDOWN_COMMAND_LINE_KEY,
--                                   NULL) ||
--            panel_applet_get_locked_down (applet)) {
--                bonobo_ui_component_set_prop (popup_component,
--                                              "/popups/button3/GdmSeparator",
--                                              "hidden", "1", NULL);
--                bonobo_ui_component_set_prop (popup_component,
--                                              "/commands/GdmUsersGroupsAdmin",
--                                              "hidden", "1", NULL);
--        } else {
--#ifndef USERS_ADMIN
--#  ifdef GDM_SETUP
--                bonobo_ui_component_set_prop (popup_component,
--                                              "/popups/button3/GdmSeparator",
--                                              "hidden", "1",
--                                              NULL);
--#  endif /* !GDM_SETUP */
--                bonobo_ui_component_set_prop (popup_component,
--                                              "/commands/GdmUsersGroupsAdmin",
--                                              "hidden", "1",
--                                              NULL);
--#endif /* !USERS_ADMIN */
--        }
--
--        /* Hide the gdmphotosetup item if it can't be found in the path. */
--        tmp = g_find_program_in_path ("gnome-about-me");
--        if (!tmp) {
--                bonobo_ui_component_set_prop (popup_component,
--                                              "/commands/GdmAboutMe",
--                                              "hidden", "1",
--                                              NULL);
--        } else {
--                g_free (tmp);
--        }
--
--        g_signal_connect (adata->applet,
--                          "style-set",
--                          G_CALLBACK (applet_style_set_cb), adata);
--        g_signal_connect (applet,
--                          "change-background",
--                          G_CALLBACK (applet_change_background_cb), adata);
--        g_signal_connect (applet,
--                          "size-allocate",
--                          G_CALLBACK (applet_size_allocate_cb), adata);
--        g_signal_connect (applet,
--                          "key-press-event",
--                          G_CALLBACK (applet_key_press_event_cb), adata);
--        g_signal_connect_after (applet,
--                                "focus-in-event",
--                                G_CALLBACK (gtk_widget_queue_draw), NULL);
--        g_signal_connect_after (applet,
--                                "focus-out-event",
--                                G_CALLBACK (gtk_widget_queue_draw), NULL);
--        g_object_set_data_full (G_OBJECT (applet),
--                                "gdm-applet-data",
--                                adata,
--                                (GDestroyNotify) gdm_applet_data_free);
--
--        adata->menubar = gtk_menu_bar_new ();
--        gtk_widget_set_name (adata->menubar, "gdm-user-switch-menubar");
--        gtk_widget_set_can_focus (adata->menubar, TRUE);
--        g_signal_connect (adata->menubar, "button-press-event",
--                          G_CALLBACK (menubar_button_press_event_cb), adata);
--        g_signal_connect_after (adata->menubar, "expose-event",
--                                G_CALLBACK (menubar_expose_event_cb), adata);
--        gtk_container_add (GTK_CONTAINER (applet), adata->menubar);
--        gtk_widget_show (adata->menubar);
--
--        adata->manager = gdm_user_manager_ref_default ();
--        g_object_set (adata->manager, "include-all", TRUE, NULL);
--        g_signal_connect (adata->manager,
--                          "notify::is-loaded",
--                          G_CALLBACK (on_manager_is_loaded_changed),
--                          adata);
--        g_signal_connect (adata->manager,
--                          "notify::has-multiple-users",
--                          G_CALLBACK (on_manager_has_multiple_users_changed),
--                          adata);
--
--        gdm_user_manager_queue_load (adata->manager);
--        setup_current_user (adata);
--
--        gconf_client_add_dir (adata->client,
--                              LOCKDOWN_DIR,
--                              GCONF_CLIENT_PRELOAD_ONELEVEL,
--                              NULL);
--
--        adata->client_notify_lockdown_id = gconf_client_notify_add (adata->client,
--                                                                    LOCKDOWN_DIR,
--                                                                    (GConfClientNotifyFunc)client_notify_lockdown_func,
--                                                                    adata,
--                                                                    NULL,
--                                                                    NULL);
--
--        if (gconf_client_get_bool (adata->client, LOCKDOWN_USER_SWITCHING_KEY, NULL)) {
--                set_menu_visibility (adata, FALSE);
--        } else {
--                set_menu_visibility (adata, TRUE);
--        }
--        if (gconf_client_get_bool (adata->client, LOCKDOWN_LOCK_SCREEN_KEY, NULL)) {
--                        gtk_widget_hide (adata->lock_screen_item);
--        } else {
--                        gtk_widget_show (adata->lock_screen_item);
--        }
--
--        error = NULL;
--        bus = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
--        if (bus == NULL) {
--                g_warning ("Unable to get session bus: %s", error->message);
--                g_error_free (error);
--                goto done;
--        }
--
--#ifdef BUILD_PRESENSE_STUFF
--        adata->presence_proxy = dbus_g_proxy_new_for_name (bus,
--                                                          "org.gnome.SessionManager",
--                                                          "/org/gnome/SessionManager/Presence",
--                                                          "org.gnome.SessionManager.Presence");
--        if (adata->presence_proxy != NULL) {
--                DBusGProxy *proxy;
--
--                dbus_g_proxy_add_signal (adata->presence_proxy,
--                                         "StatusChanged",
--                                         G_TYPE_UINT,
--                                         G_TYPE_INVALID);
--                dbus_g_proxy_connect_signal (adata->presence_proxy,
--                                             "StatusChanged",
--                                             G_CALLBACK (on_presence_status_changed),
--                                             adata,
--                                             NULL);
--                dbus_g_proxy_add_signal (adata->presence_proxy,
--                                         "StatusTextChanged",
--                                         G_TYPE_STRING,
--                                         G_TYPE_INVALID);
--                dbus_g_proxy_connect_signal (adata->presence_proxy,
--                                             "StatusTextChanged",
--                                             G_CALLBACK (on_presence_status_text_changed),
--                                             adata,
--                                             NULL);
--
--
--                proxy = dbus_g_proxy_new_from_proxy (adata->presence_proxy,
--                                                     "org.freedesktop.DBus.Properties",
--                                                     "/org/gnome/SessionManager/Presence");
--                if (proxy != NULL) {
--                        guint       status;
--                        const char *status_text;
--                        GValue      value = { 0, };
--
--                        status = 0;
--                        status_text = NULL;
--
--                        error = NULL;
--                        dbus_g_proxy_call (proxy,
--                                           "Get",
--                                           &error,
--                                           G_TYPE_STRING, "org.gnome.SessionManager.Presence",
--                                           G_TYPE_STRING, "status",
--                                           G_TYPE_INVALID,
--                                           G_TYPE_VALUE, &value,
--                                           G_TYPE_INVALID);
--
--                        if (error != NULL) {
--                                g_warning ("Couldn't get presence status: %s", error->message);
--                                g_error_free (error);
--                        } else {
--                                status = g_value_get_uint (&value);
--                        }
--
--                        g_value_unset (&value);
--
--                        error = NULL;
--                        dbus_g_proxy_call (proxy,
--                                           "Get",
--                                           &error,
--                                           G_TYPE_STRING, "org.gnome.SessionManager.Presence",
--                                           G_TYPE_STRING, "status-text",
--                                           G_TYPE_INVALID,
--                                           G_TYPE_VALUE, &value,
--                                           G_TYPE_INVALID);
--
--                        if (error != NULL) {
--                                g_warning ("Couldn't get presence status text: %s", error->message);
--                                g_error_free (error);
--                        } else {
--                                status_text = g_value_get_string (&value);
--                        }
--
--                        set_status (adata, status);
--                        set_status_text (adata, status_text);
--                }
--        } else {
--                g_warning ("Failed to get session presence proxy");
--        }
--#endif
--
-- done:
--        gtk_widget_show (GTK_WIDGET (adata->applet));
--
--        return TRUE;
--}
--
--static gboolean
--applet_factory (PanelApplet   *applet,
--                const char    *iid,
--                gpointer       data)
--{
--        gboolean ret;
--        ret = FALSE;
--        if (strcmp (iid, "OAFIID:GNOME_FastUserSwitchApplet") == 0) {
--                ret = fill_applet (applet);
--        }
--        return ret;
--}
-diff --git a/gui/user-switch-applet/gdm-entry-menu-item.c b/gui/user-switch-applet/gdm-entry-menu-item.c
-deleted file mode 100644
-index d657e7a..0000000
---- a/gui/user-switch-applet/gdm-entry-menu-item.c
-+++ /dev/null
-@@ -1,304 +0,0 @@
--/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
-- *
-- * Copyright (C) 2008 Red Hat, Inc.
-- *
-- * This program is free software; you can redistribute it and/or modify
-- * it under the terms of the GNU General Public License as published by
-- * the Free Software Foundation; either version 2 of the License, or
-- * (at your option) any later version.
-- *
-- * This program is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- * GNU General Public License for more details.
-- *
-- * You should have received a copy of the GNU General Public License
-- * along with this program; if not, write to the Free Software
-- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-- */
--
--#include "config.h"
--
--#include <unistd.h>
--#include <sys/types.h>
--
--#include <string.h>
--
--#include <glib/gi18n.h>
--#include <gtk/gtk.h>
--
--#include "gdm-entry-menu-item.h"
--
--/* same as twitter */
--#define TEXT_BUFFER_MAX_CHARS 64
--
--enum
--{
--        PROP_0,
--};
--
--struct _GdmEntryMenuItem
--{
--        GtkMenuItem      parent;
--
--        GtkWidget       *hbox;
--        GtkWidget       *image;
--        GtkWidget       *entry;
--};
--
--struct _GdmEntryMenuItemClass
--{
--        GtkMenuItemClass parent_class;
--};
--
--G_DEFINE_TYPE (GdmEntryMenuItem, gdm_entry_menu_item, GTK_TYPE_MENU_ITEM)
--
--static void
--gdm_entry_menu_item_set_property (GObject      *object,
--                                  guint         param_id,
--                                  const GValue *value,
--                                  GParamSpec   *pspec)
--{
--        GdmEntryMenuItem *item;
--
--        item = GDM_ENTRY_MENU_ITEM (object);
--
--        switch (param_id) {
--        default:
--                G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
--                break;
--        }
--}
--
--static void
--gdm_entry_menu_item_get_property (GObject    *object,
--                                  guint       param_id,
--                                  GValue     *value,
--                                  GParamSpec *pspec)
--{
--        GdmEntryMenuItem *item;
--
--        item = GDM_ENTRY_MENU_ITEM (object);
--
--        switch (param_id) {
--        default:
--                G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
--                break;
--        }
--}
--
--static void
--gdm_entry_menu_item_dispose (GObject *object)
--{
--
--        (*G_OBJECT_CLASS (gdm_entry_menu_item_parent_class)->dispose) (object);
--}
--
--static gboolean
--gdm_entry_menu_item_button_release (GtkWidget      *widget,
--                                    GdkEventButton *event)
--{
--        return TRUE;
--}
--
--/* Cut and paste from gtkwindow.c */
--static void
--send_focus_change (GtkWidget *widget,
--                   gboolean   in)
--{
--        GdkEvent *fevent = gdk_event_new (GDK_FOCUS_CHANGE);
--
--        g_object_ref (widget);
--
--        gtk_widget_set_can_focus (widget, in);
--
--        fevent->focus_change.type = GDK_FOCUS_CHANGE;
--        fevent->focus_change.window = g_object_ref (gtk_widget_get_window (widget));
--        fevent->focus_change.in = in;
--
--        gtk_widget_event (widget, fevent);
--
--        g_object_notify (G_OBJECT (widget), "has-focus");
--
--        g_object_unref (widget);
--        gdk_event_free (fevent);
--}
--
--static gboolean
--gdm_entry_menu_item_button_press (GtkWidget      *widget,
--                                  GdkEventButton *event)
--{
--        GtkWidget *entry;
--
--        entry = GDM_ENTRY_MENU_ITEM (widget)->entry;
--
--        if (gtk_widget_get_window (entry) != NULL) {
--                gdk_window_raise (gtk_widget_get_window (entry));
--        }
--
--        if (!gtk_widget_has_focus (entry)) {
--                gtk_widget_grab_focus (entry);
--        }
--
--        return FALSE;
--}
--
--static void
--gdm_entry_menu_item_realize (GtkWidget *widget)
--{
--        if (GTK_WIDGET_CLASS (gdm_entry_menu_item_parent_class)->realize) {
--                GTK_WIDGET_CLASS (gdm_entry_menu_item_parent_class)->realize (widget);
--        }
--}
--
--static void
--gdm_entry_menu_item_select (GtkItem *item)
--{
--        g_return_if_fail (GDM_IS_ENTRY_MENU_ITEM (item));
--        send_focus_change (GTK_WIDGET (GDM_ENTRY_MENU_ITEM (item)->entry), TRUE);
--}
--
--static void
--gdm_entry_menu_item_deselect (GtkItem *item)
--{
--        g_return_if_fail (GDM_IS_ENTRY_MENU_ITEM (item));
--
--        send_focus_change (GTK_WIDGET (GDM_ENTRY_MENU_ITEM (item)->entry), FALSE);
--}
--
--static void
--gdm_entry_menu_item_class_init (GdmEntryMenuItemClass *klass)
--{
--        GObjectClass     *gobject_class;
--        GtkWidgetClass   *widget_class;
--        GtkMenuItemClass *menu_item_class;
--        GtkItemClass     *item_class;
--
--        gobject_class = G_OBJECT_CLASS (klass);
--        widget_class = GTK_WIDGET_CLASS (klass);
--        menu_item_class = GTK_MENU_ITEM_CLASS (klass);
--        item_class = GTK_ITEM_CLASS (klass);
--
--        gobject_class->set_property = gdm_entry_menu_item_set_property;
--        gobject_class->get_property = gdm_entry_menu_item_get_property;
--        gobject_class->dispose = gdm_entry_menu_item_dispose;
--
--        widget_class->button_release_event = gdm_entry_menu_item_button_release;
--        widget_class->button_press_event = gdm_entry_menu_item_button_press;
--        widget_class->realize = gdm_entry_menu_item_realize;
--
--        item_class->select = gdm_entry_menu_item_select;
--        item_class->deselect = gdm_entry_menu_item_deselect;
--
--        menu_item_class->hide_on_activate = FALSE;
--}
--
--static void
--on_entry_show (GtkWidget        *widget,
--               GdmEntryMenuItem *item)
--{
--        if (gtk_widget_get_window (widget) != NULL) {
--                gdk_window_raise (gtk_widget_get_window (widget));
--        }
--        send_focus_change (widget, TRUE);
--}
--
--static void
--on_text_buffer_changed (GtkTextBuffer    *buffer,
--                        GdmEntryMenuItem *item)
--{
--        int len;
--
--        len = gtk_text_buffer_get_char_count (buffer);
--        if (len > TEXT_BUFFER_MAX_CHARS) {
--                gdk_window_beep (gtk_widget_get_window (GTK_WIDGET (item)));
--        }
--}
--
--static void
--on_entry_move_focus (GtkWidget        *widget,
--                     GtkDirectionType  direction,
--                     GdmEntryMenuItem *item)
--{
--        g_debug ("focus move");
--        send_focus_change (GTK_WIDGET (GDM_ENTRY_MENU_ITEM (item)->entry), FALSE);
--        g_signal_emit_by_name (item,
--                               "move-focus",
--                               GTK_DIR_TAB_FORWARD);
--}
--
--static void
--gdm_entry_menu_item_init (GdmEntryMenuItem *item)
--{
--        PangoFontDescription *fontdesc;
--        PangoFontMetrics     *metrics;
--        PangoContext         *context;
--        PangoLanguage        *lang;
--        int                   ascent;
--        GtkTextBuffer        *buffer;
--
--        item->hbox = gtk_hbox_new (FALSE, 6);
--        gtk_container_add (GTK_CONTAINER (item), item->hbox);
--
--        item->image = gtk_image_new ();
--        gtk_box_pack_start (GTK_BOX (item->hbox), item->image, FALSE, FALSE, 0);
--
--        item->entry = gtk_text_view_new ();
--        gtk_text_view_set_accepts_tab (GTK_TEXT_VIEW (item->entry), FALSE);
--        gtk_text_view_set_editable (GTK_TEXT_VIEW (item->entry), TRUE);
--        gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (item->entry),
--                                     GTK_WRAP_WORD);
--        g_signal_connect (item->entry,
--                          "show",
--                          G_CALLBACK (on_entry_show),
--                          item);
--        g_signal_connect (item->entry,
--                          "move-focus",
--                          G_CALLBACK (on_entry_move_focus),
--                          item);
--
--        buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (item->entry));
--        g_signal_connect (buffer,
--                          "changed",
--                          G_CALLBACK (on_text_buffer_changed),
--                          item);
--
--        /* get the font ascent for the current font and language */
--        context = gtk_widget_get_pango_context (item->entry);
--        fontdesc = pango_context_get_font_description (context);
--        lang = pango_context_get_language (context);
--        metrics = pango_context_get_metrics (context, fontdesc, lang);
--        ascent = pango_font_metrics_get_ascent (metrics) * 1.5 / PANGO_SCALE;
--        pango_font_metrics_unref (metrics);
--
--        /* size our progress bar to be five ascents long */
--        gtk_widget_set_size_request (item->entry, ascent * 5, -1);
--
--        gtk_box_pack_start (GTK_BOX (item->hbox), item->entry, TRUE, TRUE, 0);
--
--        gtk_widget_show (item->hbox);
--        gtk_widget_show (item->image);
--        gtk_widget_show (item->entry);
--}
--
--GtkWidget *
--gdm_entry_menu_item_new (void)
--{
--        return g_object_new (GDM_TYPE_ENTRY_MENU_ITEM, NULL);
--}
--
--GtkWidget *
--gdm_entry_menu_item_get_entry (GdmEntryMenuItem *item)
--{
--        g_return_val_if_fail (GDM_IS_ENTRY_MENU_ITEM (item), NULL);
--
--        return item->entry;
--}
--
--GtkWidget *
--gdm_entry_menu_item_get_image (GdmEntryMenuItem *item)
--{
--        g_return_val_if_fail (GDM_IS_ENTRY_MENU_ITEM (item), NULL);
--
--        return item->image;
--}
-diff --git a/gui/user-switch-applet/gdm-entry-menu-item.h b/gui/user-switch-applet/gdm-entry-menu-item.h
-deleted file mode 100644
-index 3031609..0000000
---- a/gui/user-switch-applet/gdm-entry-menu-item.h
-+++ /dev/null
-@@ -1,51 +0,0 @@
--/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
-- *
-- * Copyright (C) 2004-2005 James M. Cape <jcape at ignore-your.tv>.
-- *
-- * This program is free software; you can redistribute it and/or modify
-- * it under the terms of the GNU General Public License as published by
-- * the Free Software Foundation; either version 2 of the License, or
-- * (at your option) any later version.
-- *
-- * This program is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- * GNU General Public License for more details.
-- *
-- * You should have received a copy of the GNU General Public License
-- * along with this program; if not, write to the Free Software
-- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-- */
--
--#ifndef __GDM_ENTRY_MENU_ITEM__
--#define __GDM_ENTRY_MENU_ITEM__
--
--#include <gtk/gtk.h>
--
--G_BEGIN_DECLS
--
--#define GDM_TYPE_ENTRY_MENU_ITEM \
--  (gdm_entry_menu_item_get_type ())
--#define GDM_ENTRY_MENU_ITEM(object) \
--  (G_TYPE_CHECK_INSTANCE_CAST ((object), GDM_TYPE_ENTRY_MENU_ITEM, GdmEntryMenuItem))
--#define GDM_ENTRY_MENU_ITEM_CLASS(klass) \
--  (G_TYPE_CHECK_CLASS_CAST ((klass), GDM_TYPE_ENTRY_MENU_ITEM, GdmEntryMenuItemClass))
--#define GDM_IS_ENTRY_MENU_ITEM(object) \
--  (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDM_TYPE_ENTRY_MENU_ITEM))
--#define GDM_IS_ENTRY_MENU_ITEM_CLASS(klass) \
--  (G_TYPE_CHECK_CLASS_TYPE ((klass), GDM_TYPE_ENTRY_MENU_ITEM))
--#define GDM_ENTRY_MENU_ITEM_GET_CLASS(object) \
--  (G_TYPE_INSTANCE_GET_CLASS ((object), GDM_TYPE_ENTRY_MENU_ITEM, GdmEntryMenuItemClass))
--
--typedef struct _GdmEntryMenuItem GdmEntryMenuItem;
--typedef struct _GdmEntryMenuItemClass GdmEntryMenuItemClass;
--
--GType      gdm_entry_menu_item_get_type      (void) G_GNUC_CONST;
--
--GtkWidget *gdm_entry_menu_item_new           (void);
--GtkWidget *gdm_entry_menu_item_get_entry     (GdmEntryMenuItem *item);
--GtkWidget *gdm_entry_menu_item_get_image     (GdmEntryMenuItem *item);
--
--G_END_DECLS
--
--#endif /* __GDM_ENTRY_MENU_ITEM__ */
-diff --git a/po/POTFILES.in b/po/POTFILES.in
-index 1fccb90..cc1a3fd 100644
---- a/po/POTFILES.in
-+++ b/po/POTFILES.in
-@@ -84,10 +84,6 @@ gui/simple-greeter/gdm-timer.c
- gui/simple-greeter/gdm-user.c
- gui/simple-greeter/gdm-user-chooser-widget.c
- gui/simple-greeter/greeter-main.c
--gui/user-switch-applet/applet.c
--gui/user-switch-applet/gdm-entry-menu-item.c
--gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in.in
--gui/user-switch-applet/GNOME_FastUserSwitchApplet.xml
- utils/gdmflexiserver.c
- utils/gdm-screenshot.c
- 
-diff --git a/po/POTFILES.skip b/po/POTFILES.skip
-index 0269a0f..ee3d753 100644
---- a/po/POTFILES.skip
-+++ b/po/POTFILES.skip
-@@ -7,7 +7,6 @@
- # remove these unless you fix "make distcheck" a different way.
- #
- data/gdm.schemas.in
--gui/user-switch-applet/GNOME_FastUserSwitchApplet.server.in
- data/greeter-autostart/at-spi-registryd-wrapper.desktop.in
- data/greeter-autostart/gdm-simple-greeter.desktop.in
- data/greeter-autostart/gnome-power-manager.desktop.in
--- 
-1.6.6.1
-
diff --git a/meta-gnome/recipes-gnome/gdm/gdm/0002-gdm-user-manager.c-avoid-displaying-system-users-in-.patch b/meta-gnome/recipes-gnome/gdm/gdm/0002-gdm-user-manager.c-avoid-displaying-system-users-in-.patch
deleted file mode 100644
index ad21073..0000000
--- a/meta-gnome/recipes-gnome/gdm/gdm/0002-gdm-user-manager.c-avoid-displaying-system-users-in-.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 43e59f3deadb3914a1cc931ae18d4023874cdeca Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Fri, 26 Apr 2013 17:15:48 +0200
-Subject: [PATCH] gdm-user-manager.c: avoid displaying system users in
- greeter's list
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-yocto environment system users have UID below 1000
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- gui/simple-greeter/gdm-user-manager.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/gui/simple-greeter/gdm-user-manager.c b/gui/simple-greeter/gdm-user-manager.c
-index c631989..f18e478 100644
---- a/gui/simple-greeter/gdm-user-manager.c
-+++ b/gui/simple-greeter/gdm-user-manager.c
-@@ -63,7 +63,7 @@
- #ifdef __sun
- #define FALLBACK_MINIMAL_UID     100
- #else
--#define FALLBACK_MINIMAL_UID     500
-+#define FALLBACK_MINIMAL_UID     1000
- #endif
- 
- #ifndef _PATH_SHELLS
--- 
-1.7.4.4
-
diff --git a/meta-gnome/recipes-gnome/gdm/gdm/sysrooted-pkg-config.patch b/meta-gnome/recipes-gnome/gdm/gdm/sysrooted-pkg-config.patch
deleted file mode 100644
index 1f9fa2a..0000000
--- a/meta-gnome/recipes-gnome/gdm/gdm/sysrooted-pkg-config.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-In cross environment we have to prepend the sysroot to the path found by
-pkgconfig since the path returned from pkgconfig does not have sysroot prefixed
-it ends up using the files from host system. Now usually people have gnome installed
-so the build succeeds but if you dont have gnome installed on build host then
-it wont find the files on host system and packages using gnome-doc-utils wont
-compile.
-
-This should work ok with non sysrooted builds too since in those cases PKG_CONFIG_SYSROOT_DIR
-will be empty
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-
-Index: gdm-2.32.2/gnome-doc-utils.make
-===================================================================
---- gdm-2.32.2.orig/gnome-doc-utils.make	2011-05-31 08:06:59.000000000 -0700
-+++ gdm-2.32.2/gnome-doc-utils.make	2011-09-25 15:32:39.540992521 -0700
-@@ -133,12 +133,12 @@
- _xml2po ?= `which xml2po`
- _xml2po_mode = $(if $(DOC_ID),mallard,docbook)
- 
--_db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils`
--_db2omf  ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
--_malrng  ?= `$(PKG_CONFIG) --variable malrng gnome-doc-utils`
--_chunks  ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
--_credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
--_ids ?= $(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl
-+_db2html ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2html gnome-doc-utils`
-+_db2omf  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
-+_malrng  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable malrng gnome-doc-utils`
-+_chunks  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
-+_credits ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
-+_ids ?= ${PKG_CONFIG_SYSROOT_DIR}$(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl
- 
- if ENABLE_SK
- _ENABLE_SK = true
diff --git a/meta-gnome/recipes-gnome/gdm/gdm_2.32.2.bb b/meta-gnome/recipes-gnome/gdm/gdm_2.32.2.bb
deleted file mode 100644
index 64785ca..0000000
--- a/meta-gnome/recipes-gnome/gdm/gdm_2.32.2.bb
+++ /dev/null
@@ -1,108 +0,0 @@
-SUMMARY = "Graphical login manager"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-DEPENDS = "xinput gnome-panel tcp-wrappers libcanberra libxklavier grep consolekit libpam gnome-doc-utils gtk+ xrdb"
-
-PR = "r18"
-
-inherit gnome update-rc.d systemd useradd
-
-SRC_URI += " \
-    file://cross-xdetection.diff \
-    file://0001-Remove-user-switch-applet.patch \
-    file://0002-gdm-user-manager.c-avoid-displaying-system-users-in-.patch \
-    file://sysrooted-pkg-config.patch \
-    file://%gconf-tree.xml \
-    file://gdm \
-    file://gdm.conf \
-    file://gdm-pam \
-    file://Default \
-    file://gdm.service.in \
-"
-
-SRC_URI[archive.md5sum] = "dbe5187a2e17881cc454e313e0ae8d1e"
-SRC_URI[archive.sha256sum] = "034d23af0ea18d86e5543e707212d9297ec7d83f221808968af266dbebc0e703"
-GNOME_COMPRESS_TYPE="bz2"
-
-EXTRA_OECONF = " \
-    --enable-authentication-scheme=shadow \
-    --enable-debug=yes \
-    --with-console-kit \
-    --disable-scrollkeeper \
-"
-
-do_configure_prepend() {
-    sed -i -e "s:\bdocs::g" ${S}/Makefile.am
-    rm -f ${S}/m4/gnome-doc-utils.m4
-}
-
-do_install_prepend() {
-    install -d ${D}/${localstatedir}/lib/gdm/.gconf.mandatory
-    install ${WORKDIR}/%gconf-tree.xml ${D}/${localstatedir}/lib/gdm/.gconf.mandatory/
-}
-
-do_install_append() {
-    install -d ${D}/${sysconfdir}/init.d
-    install -m 0755 ${WORKDIR}/gdm ${D}/${sysconfdir}/init.d/
-
-    install -d ${D}/${sysconfdir}/gdm
-    install -m 0644 ${WORKDIR}/gdm.conf ${D}/${sysconfdir}/gdm/
-
-    install -d ${D}/${sysconfdir}/pam.d
-    install -m 0755 ${WORKDIR}/gdm-pam       ${D}/${sysconfdir}/pam.d/gdm
-    rm -f ${D}/${sysconfdir}/pam.d/gdm-autologin
-
-    install -d ${D}/${sysconfdir}/gdm/Init
-    install -m 0755 ${WORKDIR}/Default ${D}/${sysconfdir}/gdm/Init
-
-    install -d ${D}${systemd_unitdir}/system
-    sed -e 's,%sbindir%,${sbindir},g' \
-        < ${WORKDIR}/gdm.service.in \
-        > ${D}${systemd_unitdir}/system/gdm.service
-
-    chown -R gdm:gdm ${D}${localstatedir}/lib/gdm
-    chmod 0750 ${D}${localstatedir}/lib/gdm
-
-    rm -rf "${D}${localstatedir}/run"
-    rmdir --ignore-fail-on-non-empty "${D}${localstatedir}"
-
-    rm -f ${D}${datadir}/gdm/autostart/LoginWindow/at-spi-registryd-wrapper.desktop
-    rm -f ${D}${datadir}/gdm/autostart/LoginWindow/orca-screen-reader.desktop
-    rm -f ${D}${datadir}/gdm/autostart/LoginWindow/gnome-mag.desktop
-    rm -f ${D}${datadir}/gdm/autostart/LoginWindow/gok.desktop
-    rm -f ${D}${datadir}/gdm/autostart/LoginWindow/metacity.desktop
-}
-
-FILES_${PN} += "${datadir}/icon* \
-    ${datadir}/xsession* \
-"
-
-RDEPENDS_${PN} += "grep dbus-x11 shadow"
-# "libpam-base-files"
-CONFFILES_${PN} += "${sysconfdir}/gdm/gdm.conf ${sysconfdir}/init.d/gdm"
-RRECOMMENDS_${PN} += "openssh-misc desktop-file-utils glib-2.0-utils metacity gnome-session polkit-gnome consolekit"
-
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "gdm.service"
-
-INITSCRIPT_NAME = "gdm"
-INITSCRIPT_PARAMS = "start 99 5 . stop 20 0 1 2 3 6 ."
-
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --no-create-home --home ${localstatedir}/lib/gdm --user-group gdm"
-
-pkg_postinst_${PN} () {
-# Register up as default dm
-mkdir -p $D${sysconfdir}/X11/
-echo "${bindir}/gdm" > $D${sysconfdir}/X11/default-display-manager
-}
-
-pkg_postrm_${PN} () {
-    deluser gdm || true
-    delgroup gdm || true
-    sed -i /gdm/d ${sysconfdir}/X11/default-display-manager || true
-}
-
-PNBLACKLIST[gdm] ?= "Depends on broken gnome-panel - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_2.32.0.bb b/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_2.32.0.bb
deleted file mode 100644
index 235b02a..0000000
--- a/meta-gnome/recipes-gnome/gnome-backgrounds/gnome-backgrounds_2.32.0.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Gnome background images"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-SECTION = "x11/gnome"
-
-# glib-2.0 for glib-gettext.m4 which provides AM_GLIB_GNU_GETTEXT
-# intltool-native for IT_PROG_INTLTOOL(0.35.0)
-DEPENDS = "glib-2.0 intltool-native"
-
-inherit gnomebase
-
-SRC_URI[archive.md5sum] = "3df26626483b02e51adefc6ab5945a8d"
-SRC_URI[archive.sha256sum] = "4d7b60b5ba768bf8834b5fa3a3471cd9a9e14b5884bc210dc2d3cdbf1faddcef"
-GNOME_COMPRESS_TYPE="bz2"
-
-FILES_${PN} += "${datadir}/gnome-background-properties"
-
-
-PNBLACKLIST[gnome-backgrounds] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130647/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_2.32.1.bb b/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_2.32.1.bb
deleted file mode 100644
index 201783e..0000000
--- a/meta-gnome/recipes-gnome/gnome-control-center/gnome-control-center_2.32.1.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "GNOME control center"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-DEPENDS = "desktop-file-utils-native gnome-menus libunique dbus-glib gnome-desktop libxml2 metacity gconf gnome-settings-daemon librsvg pango libgnomekbd libxklavier libcanberra libgtop libxscrnsaver"
-
-PR = "r1"
-
-inherit gnome
-
-SRC_URI[archive.md5sum] = "b4e8ab5c7556ae07addbfcfb4fa2f761"
-SRC_URI[archive.sha256sum] = "7c568b57358e5c08f4d8dd76dbac7df2539135ad081872b60514b7a8ac797e66"
-GNOME_COMPRESS_TYPE="bz2"
-
-LDFLAGS += "-lgthread-2.0 -lxml2"
-
-do_configure_prepend() {
-    sed -i s:help::g ${S}/Makefile.am
-    rm -f ${S}/m4/gnome-doc-utils.m4
-}
-do_install_append() {
-    rm -rf ${D}${datadir}/mime
-}
-
-FILES_${PN} += "${datadir}/icon* \
-                ${datadir}/xsession* \
-                ${libdir}/window-manager-settings/*.so \
-                ${datadir}/gnome \
-                ${datadir}/desktop-directories \
-"
-FILES_${PN}-dbg += "${libdir}/window-manager-settings/.debug"
-FILES_${PN}-dev += "${libdir}/window-manager-settings/*.la"
-FILES_${PN}-staticdev += "${libdir}/window-manager-settings/*.a"
-
-PNBLACKLIST[gnome-control-center] ?= "Depends on broken gnome-menus - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_2.32.1.bb b/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_2.32.1.bb
deleted file mode 100644
index f1dafad..0000000
--- a/meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_2.32.1.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-SUMMARY = "GNOME library for reading .desktop files"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-
-PR = "r6"
-
-inherit gnome pkgconfig
-
-SRC_URI[archive.md5sum] = "5c80d628a240eb9d9ff78913b31f2f67"
-SRC_URI[archive.sha256sum] = "55cbecf67efe1fa1e57ac966520a7c46d799c8ba3c652a1219f60cafccb3739d"
-GNOME_COMPRESS_TYPE="bz2"
-
-DEPENDS += "gconf libxrandr virtual/libx11 gtk+ glib-2.0 gnome-doc-utils startup-notification intltool-native gnome-common-native"
-
-EXTRA_OECONF = "--disable-scrollkeeper --disable-desktop-docs --disable-gnome-about"
-
-do_configure_prepend () {
-    sed -i -e s:^#!@PYTHON@:#!${bindir}/python: ${S}/gnome-about/gnome-about.in
-    rm -f ${S}/m4/gnome-doc-utils.m4
-}
-
-PACKAGES =+ "libgnome-desktop"
-FILES_libgnome-desktop = "${libdir}/lib*${SOLIBS} ${datadir}/libgnome-desktop/pnp.ids"
-FILES_${PN} += "${datadir}/gnome-about"
-
-PNBLACKLIST[gnome-desktop] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130595/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-Add-support-for-DeviceAutomountHint.patch b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-Add-support-for-DeviceAutomountHint.patch
deleted file mode 100644
index 805e937..0000000
--- a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0001-Add-support-for-DeviceAutomountHint.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 7dde5bc75a1d96be9510ce1e98d28f9d33520919 Mon Sep 17 00:00:00 2001
-From: David Zeuthen <davidz at redhat.com>
-Date: Fri, 8 Jul 2011 11:03:52 -0400
-Subject: [PATCH] Add support for DeviceAutomountHint
-
-Based on the patch in https://bugzilla.gnome.org/show_bug.cgi?id=653184
-
-Upstream-Status: Applied [1]
-
-[1] https://mail.gnome.org/archives/commits-list/2011-July/msg03207.html
-
-Signed-off-by: David Zeuthen <davidz at redhat.com>
----
- src/gdu/gdu-device.c |   10 ++++++++++
- src/gdu/gdu-device.h |    1 +
- 2 files changed, 11 insertions(+), 0 deletions(-)
-
-diff --git a/src/gdu/gdu-device.c b/src/gdu/gdu-device.c
-index 6a5afad..4be39cf 100644
---- a/src/gdu/gdu-device.c
-+++ b/src/gdu/gdu-device.c
-@@ -82,6 +82,7 @@ typedef struct
-   gboolean device_presentation_nopolicy;
-   char *device_presentation_name;
-   char *device_presentation_icon_name;
-+  char *device_automount_hint;
-   guint64 device_size;
-   guint64 device_block_size;
- 
-@@ -279,6 +280,8 @@ collect_props (const char *key,
-     props->device_presentation_name = g_strdup (g_value_get_string (value));
-   else if (strcmp (key, "DevicePresentationIconName") == 0)
-     props->device_presentation_icon_name = g_strdup (g_value_get_string (value));
-+  else if (strcmp (key, "DeviceAutomountHint") == 0)
-+    props->device_automount_hint = g_strdup (g_value_get_string (value));
-   else if (strcmp (key, "DeviceSize") == 0)
-     props->device_size = g_value_get_uint64 (value);
-   else if (strcmp (key, "DeviceBlockSize") == 0)
-@@ -549,6 +552,7 @@ device_properties_free (DeviceProperties *props)
-   g_strfreev (props->device_mount_paths);
-   g_free (props->device_presentation_name);
-   g_free (props->device_presentation_icon_name);
-+  g_free (props->device_automount_hint);
-   g_free (props->job_id);
-   g_free (props->id_usage);
-   g_free (props->id_type);
-@@ -1294,6 +1298,12 @@ gdu_device_drive_get_media_compatibility (GduDevice *device)
- }
- 
- const char *
-+gdu_device_get_automount_hint (GduDevice *device)
-+{
-+        return device->priv->props->device_automount_hint;
-+}
-+
-+const char *
- gdu_device_drive_get_media (GduDevice *device)
- {
-         return device->priv->props->drive_media;
-diff --git a/src/gdu/gdu-device.h b/src/gdu/gdu-device.h
-index 4c1302b..8cfd7a9 100644
---- a/src/gdu/gdu-device.h
-+++ b/src/gdu/gdu-device.h
-@@ -143,6 +143,7 @@ const char *gdu_device_drive_get_wwn (GduDevice *device);
- const char *gdu_device_drive_get_connection_interface (GduDevice *device);
- guint64 gdu_device_drive_get_connection_speed (GduDevice *device);
- char **gdu_device_drive_get_media_compatibility (GduDevice *device);
-+const gchar *gdu_device_get_automount_hint(GduDevice *device);
- const char *gdu_device_drive_get_media (GduDevice *device);
- gboolean gdu_device_drive_get_is_media_ejectable (GduDevice *device);
- gboolean gdu_device_drive_get_requires_eject (GduDevice *device);
--- 
-1.7.6.5
-
diff --git a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0002-Require-libnotify-0.6.1.patch b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0002-Require-libnotify-0.6.1.patch
deleted file mode 100644
index 0bc9707..0000000
--- a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/0002-Require-libnotify-0.6.1.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From f8dea8dd411cba10a54ec083c3d5c9d641ec36c0 Mon Sep 17 00:00:00 2001
-From: William Jon McCann <jmccann at redhat.com>
-Date: Tue, 12 Oct 2010 00:12:49 -0400
-Subject: [PATCH] Require libnotify 0.6.1
-
-https://bugzilla.gnome.org/show_bug.cgi?id=631940
-
-Upstream-Status: Backport [1]
-
-[1] https://git.gnome.org/browse/gnome-disk-utility/commit/?id=f8dea8dd411cba10a54ec083c3d5c9d641ec36c0
-
-Signed-off-by: David Zeuthen <davidz at redhat.com>
----
- configure.ac                         | 2 +-
- src/notification/notification-main.c | 5 +----
- 2 files changed, 2 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index c61212e..3790fcf 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -128,7 +128,7 @@ DBUS_GLIB_REQUIRED=0.74
- GNOME_KEYRING_REQUIRED=2.22
- GTK2_REQUIRED=2.20.0
- UNIQUE_REQUIRED=1.0
--LIBNOTIFY_REQUIRED=0.3.0
-+LIBNOTIFY_REQUIRED=0.6.1
- NAUTILUS_REQUIRED=2.24.0
- AVAHI_UI_REQUIRED=0.6.25
- 
-diff --git a/src/notification/notification-main.c b/src/notification/notification-main.c
-index 18e9672..b6a713f 100644
---- a/src/notification/notification-main.c
-+++ b/src/notification/notification-main.c
-@@ -535,10 +535,7 @@ update_status_icon (NotificationData *data)
-                     _("A hard disk may be failing"),
-                     /* Translators: This is used as the text of the notification*/
-                     _("One or more hard disks report health problems. Click the icon to get more information."),
--                    "gtk-dialog-warning",
--                    NULL);
--                notify_notification_attach_to_status_icon (data->ata_smart_notification,
--                                                           data->status_icon);
-+                    "gtk-dialog-warning");
-                 notify_notification_set_urgency (data->ata_smart_notification, NOTIFY_URGENCY_CRITICAL);
-                 notify_notification_set_timeout (data->ata_smart_notification, NOTIFY_EXPIRES_NEVER);
-                 show_notification (data);
--- 
-2.1.0
-
diff --git a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/disable-scrollkeeper.patch b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/disable-scrollkeeper.patch
deleted file mode 100644
index f36942d..0000000
--- a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/disable-scrollkeeper.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
-Subject: Disable scrollkeeper-config not found message
-Upstream-Status: Not-Applicable
-
-If scrollkeeper-config isn't found, configure fails with an error.
-Fix that by commenting out the check.
-
-Signed-Off-By: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
-
-
-Index: gnome-disk-utility-2.32.0/configure.ac
-===================================================================
---- gnome-disk-utility-2.32.0.orig/configure.ac	2010-09-15 19:07:25.000000000 +0400
-+++ gnome-disk-utility-2.32.0/configure.ac	2011-08-20 01:29:48.000000000 +0400
-@@ -188,9 +188,9 @@
- # *************
-
- AC_PATH_PROG(SCROLLKEEPER_CONFIG, scrollkeeper-config,no)
--if test x$SCROLLKEEPER_CONFIG = xno; then
--  AC_MSG_ERROR(Couldn't find scrollkeeper-config, please install the scrollkeeper package)
--fi
-+dnl if test x$SCROLLKEEPER_CONFIG = xno; then
-+dnl  AC_MSG_ERROR([Couldn't find scrollkeeper-config, please install the scrollkeeper package])
-+dnl fi
-
- # ********************
- # Internationalization
diff --git a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/fix-dbus-interfaces.patch b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/fix-dbus-interfaces.patch
deleted file mode 100644
index 6ba3979..0000000
--- a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/fix-dbus-interfaces.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Index: gnome-disk-utility-2.32.0/src/gdu/Makefile.am
-===================================================================
---- gnome-disk-utility-2.32.0.orig/src/gdu/Makefile.am	2011-08-20 01:59:16.000000000 +0400
-+++ gnome-disk-utility-2.32.0/src/gdu/Makefile.am	2011-08-20 02:08:18.000000000 +0400
-@@ -14,20 +14,20 @@
- gdu-marshal.c: gdu-marshal.list
-	echo "#include \"gdu-marshal.h\"" > $@ && glib-genmarshal $< --prefix=gdu_marshal --body >> $@
-
--udisks-daemon-glue.h: /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.xml Makefile.am
--	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-daemon-glue.h /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.xml
-+udisks-daemon-glue.h: $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.xml Makefile.am
-+	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-daemon-glue.h $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.xml
-
--udisks-device-glue.h: /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Device.xml Makefile.am
--	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-device-glue.h /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Device.xml
-+udisks-device-glue.h: $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Device.xml Makefile.am
-+	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-device-glue.h $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Device.xml
-
--udisks-adapter-glue.h: /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Adapter.xml Makefile.am
--	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-adapter-glue.h /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Adapter.xml
-+udisks-adapter-glue.h: $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Adapter.xml Makefile.am
-+	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-adapter-glue.h $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Adapter.xml
-
--udisks-expander-glue.h: /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Expander.xml Makefile.am
--	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-expander-glue.h /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Expander.xml
-+udisks-expander-glue.h: $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Expander.xml Makefile.am
-+	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-expander-glue.h $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Expander.xml
-
--udisks-port-glue.h: /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Port.xml Makefile.am
--	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-port-glue.h /usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Port.xml
-+udisks-port-glue.h: $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Port.xml Makefile.am
-+	dbus-binding-tool --prefix=devkit_disks_daemon --mode=glib-client --output=udisks-port-glue.h $(PKG_CONFIG_SYSROOT_DIR)/usr/share/dbus-1/interfaces/org.freedesktop.UDisks.Port.xml
-
- lib_LTLIBRARIES=libgdu.la
diff --git a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/sysrooted-pkg-config.patch b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/sysrooted-pkg-config.patch
deleted file mode 100644
index 48e63b1..0000000
--- a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility/sysrooted-pkg-config.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-In cross environment we have to prepend the sysroot to the path found by
-pkgconfig since the path returned from pkgconfig does not have sysroot prefixed
-it ends up using the files from host system. Now usually people have gnome installed
-so the build succeeds but if you dont have gnome installed on build host then
-it wont find the files on host system and packages using gnome-doc-utils wont
-compile.
-
-This should work ok with non sysrooted builds too since in those cases PKG_CONFIG_SYSROOT_DIR
-will be empty
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-
-Index: gnome-disk-utility-2.32.0/gnome-doc-utils.make
-===================================================================
---- gnome-disk-utility-2.32.0.orig/gnome-doc-utils.make	2010-09-15 08:27:46.000000000 -0700
-+++ gnome-disk-utility-2.32.0/gnome-doc-utils.make	2011-09-25 16:04:30.693795591 -0700
-@@ -133,12 +133,12 @@
- _xml2po ?= `which xml2po`
- _xml2po_mode = $(if $(DOC_ID),mallard,docbook)
- 
--_db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils`
--_db2omf  ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
--_malrng  ?= `$(PKG_CONFIG) --variable malrng gnome-doc-utils`
--_chunks  ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
--_credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
--_ids ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/ids.xsl
-+_db2html ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2html gnome-doc-utils`
-+_db2omf  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
-+_malrng  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable malrng gnome-doc-utils`
-+_chunks  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
-+_credits ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
-+_ids ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/ids.xsl
- 
- if ENABLE_SK
- _ENABLE_SK = true
diff --git a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_2.32.0.bb b/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_2.32.0.bb
deleted file mode 100644
index 55a589c..0000000
--- a/meta-gnome/recipes-gnome/gnome-disk-utility/gnome-disk-utility_2.32.0.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-SUMMARY = "GNOME disk utility"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e9115d11797a5e6b746b4e9b90194564"
-
-DEPENDS = "glib-2.0 gtk+ libnotify libunique udisks avahi-ui \
-    virtual/libx11 libatasmart gnome-doc-utils intltool-native \
-    gnome-common-native libgnome-keyring dbus-glib-native \
-"
-
-PR = "r4"
-
-inherit gnomebase gtk-icon-cache distro_features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
-
-SRC_URI[archive.md5sum] = "f0366c8baebca0404d190b2d78f3582d"
-SRC_URI[archive.sha256sum] = "03e461b6bda7f773f8018d25fa3213d3073d4dc83a76e6b39d962652f4de6a98"
-GNOME_COMPRESS_TYPE="bz2"
-
-SRC_URI += "\
-    file://disable-scrollkeeper.patch \
-    file://fix-dbus-interfaces.patch \
-    file://sysrooted-pkg-config.patch \
-    file://0001-Add-support-for-DeviceAutomountHint.patch \
-    file://0002-Require-libnotify-0.6.1.patch \
-"
-
-EXTRA_OECONF += "--disable-scrollkeeper"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[nautilus] = "--enable-nautilus,--disable-nautilus,nautilus"
-
-do_configure_prepend() {
-    sed -i -e "s: help : :g" ${S}/Makefile.am
-}
-
-PACKAGES =+ "${PN}-nautilus-extension ${PN}-libs"
-FILES_${PN}-nautilus-extension += "${libdir}/nautilus/extensions-2.0/*.so"
-FILES_${PN}-libs += "${libdir}/libgdu*.so.*"
-FILES_${PN}-dev += "${libdir}/nautilus/extensions-2.0/*.la"
-FILES_${PN}-staticdev += "${libdir}/nautilus/extensions-2.0/*.a"
-FILES_${PN}-dbg += "${libdir}/nautilus/extensions-2.0/.debug"
-
-PNBLACKLIST[gnome-disk-utility] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/132824/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_2.30.5.bb b/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_2.30.5.bb
deleted file mode 100644
index d1c9e4d..0000000
--- a/meta-gnome/recipes-gnome/gnome-menus/gnome-menus_2.30.5.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "GNOME menus"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-PR = "r1"
-
-DEPENDS = "python libxml2 gconf popt gtk+ intltool-native"
-
-inherit gnomebase pkgconfig python-dir pythonnative gobject-introspection
-
-SRC_URI[archive.md5sum] = "caa6772e63ed5870cf43dc3d354e0624"
-SRC_URI[archive.sha256sum] = "6dcc565006d6e8c2025ae83ab1f82edf6bd04d61c804c0dc9bf5ea50629c4caa"
-GNOME_COMPRESS_TYPE="bz2"
-
-do_configure_append () {
-
-    # this expands to native-pthon which we don't want.
-    sed -i 's:\@PYTHON\@:/usr/bin/env python:' ${S}/simple-editor/gmenu-simple-editor.in
-
-}
-PACKAGES += "${PN}-python ${PN}-python-staticdev"
-FILES_${PN} += "${datadir}/desktop-directories/"
-FILES_${PN}-python-staticdev = "${PYTHON_SITEPACKAGES_DIR}/gmenu.a ${PYTHON_SITEPACKAGES_DIR}/gmenu.la"
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/gmenu.so ${PYTHON_SITEPACKAGES_DIR}/GMenuSimpleEditor "
-FILES_${PN}-dbg += "${PYTHON_SITEPACKAGES_DIR}/*/.debug \
-                    ${PYTHON_SITEPACKAGES_DIR}/.debug"
-
-# http://errors.yoctoproject.org/Errors/Details/81001/
-PNBLACKLIST[gnome-menus] ?= "BROKEN: fails to build because of python + conflicts with gnome-menu3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/0001-Add-gnome-doc-utils.make.patch b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/0001-Add-gnome-doc-utils.make.patch
deleted file mode 100644
index fdcccb9..0000000
--- a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/0001-Add-gnome-doc-utils.make.patch
+++ /dev/null
@@ -1,730 +0,0 @@
-From 7345730ac882ee5a493254e5cf9162c96c648ef2 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin at gmail.com>
-Date: Tue, 17 May 2016 14:40:33 +0300
-Subject: [PATCH] Add gnome-doc-utils.make
-
-Since the sources are taken from git, the file is absent
-(and is installed by tools from gnome-doc-utils which
-are no longer provided).
-
-Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
----
- gnome-doc-utils.make | 706 +++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 706 insertions(+)
- create mode 100644 gnome-doc-utils.make
-
-diff --git a/gnome-doc-utils.make b/gnome-doc-utils.make
-new file mode 100644
-index 0000000..b2e0fa1
---- /dev/null
-+++ b/gnome-doc-utils.make
-@@ -0,0 +1,706 @@
-+# gnome-doc-utils.make - make magic for building documentation
-+# Copyright (C) 2004-2005 Shaun McCance <shaunm at gnome.org>
-+#
-+# This program is free software; you can redistribute it and/or modify
-+# it under the terms of the GNU General Public License as published by
-+# the Free Software Foundation; either version 2 of the License, or
-+# (at your option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful,
-+# but WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+# GNU General Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License
-+# along with this program; if not, write to the Free Software Foundation,
-+# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-+#
-+# As a special exception to the GNU General Public License, if you
-+# distribute this file as part of a program that contains a
-+# configuration script generated by Autoconf, you may include it under
-+# the same distribution terms that you use for the rest of that program.
-+
-+################################################################################
-+## @@ Generating Header Files
-+
-+## @ DOC_H_FILE
-+## The name of the header file to generate
-+DOC_H_FILE ?=
-+
-+## @ DOC_H_DOCS
-+## The input DocBook files for generating the header file
-+DOC_H_DOCS ?=
-+
-+$(DOC_H_FILE): $(DOC_H_DOCS);
-+	@rm -f $@.tmp; touch $@.tmp;
-+	echo 'const gchar* documentation_credits[] = {' >> $@.tmp
-+	list='$(DOC_H_DOCS)'; for doc in $$list; do \
-+	  xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \
-+	  if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \
-+	  xsltproc -nonet --path "$$xmlpath" $(_credits) $$doc; \
-+	done | sort | uniq \
-+	  | awk 'BEGIN{s=""}{n=split($$0,w,"<");if(s!=""&&s!=substr(w[1],1,length(w[1])-1)){print s};if(n>1){print $$0;s=""}else{s=$$0}};END{if(s!=""){print s}}' \
-+	  | sed -e 's/\\/\\\\/' -e 's/"/\\"/' -e 's/\(.*\)/\t"\1",/' >> $@.tmp
-+	echo '	NULL' >> $@.tmp
-+	echo '};' >> $@.tmp
-+	echo >> $@.tmp
-+	list='$(DOC_H_DOCS)'; for doc in $$list; do \
-+	  xmlpath="`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`:$(srcdir)/`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`"; \
-+	  if ! test -f "$$doc"; then doc="$(srcdir)/$$doc"; fi; \
-+	  docid=`echo "$$doc" | sed -e 's/.*\/\([^/]*\)\.xml/\1/' \
-+	    | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`; \
-+	  echo $$xmlpath; \
-+	  ids=`xsltproc -nonet --xinclude --path "$$xmlpath" $(_ids) $$doc`; \
-+	  for id in $$ids; do \
-+	    echo '#define HELP_'`echo $$docid`'_'`echo $$id \
-+	      | sed -e 's/[^a-zA-Z_]/_/g' | tr 'a-z' 'A-Z'`' "'$$id'"' >> $@.tmp; \
-+	  done; \
-+	  echo >> $@.tmp; \
-+	done;
-+	cp $@.tmp $@ && rm -f $@.tmp
-+
-+dist-check-gdu:
-+if !HAVE_GNOME_DOC_UTILS
-+	@echo "*** GNOME Doc Utils must be installed in order to make dist"
-+	@false
-+endif
-+
-+.PHONY: dist-doc-header
-+dist-doc-header: $(DOC_H_FILE)
-+	@if test -f "$(DOC_H_FILE)"; then d=; else d="$(srcdir)/"; fi; \
-+	echo "$(INSTALL_DATA) $${d}$(DOC_H_FILE) $(distdir)/$(DOC_H_FILE)"; \
-+	$(INSTALL_DATA) "$${d}$(DOC_H_FILE)" "$(distdir)/$(DOC_H_FILE)";
-+
-+doc-dist-hook: dist-check-gdu $(if $(DOC_H_FILE),dist-doc-header)
-+
-+.PHONY: clean-doc-header
-+_clean_doc_header = $(if $(DOC_H_FILE),clean-doc-header)
-+clean-local: $(_clean_doc_header)
-+distclean-local: $(_clean_doc_header)
-+mostlyclean-local: $(_clean_doc_header)
-+maintainer-clean-local: $(_clean_doc_header)
-+clean-doc-header:
-+	rm -f $(DOC_H_FILE)
-+
-+all: $(DOC_H_FILE)
-+
-+
-+################################################################################
-+## @@ Generating Documentation Files
-+
-+## @ DOC_MODULE
-+## The name of the document being built
-+DOC_MODULE ?=
-+
-+## @ DOC_ID
-+## The unique identifier for a Mallard document
-+DOC_ID ?=
-+
-+## @ DOC_PAGES
-+## Page files in a Mallard document
-+DOC_PAGES ?=
-+
-+## @ DOC_ENTITIES
-+## Files included with a SYSTEM entity
-+DOC_ENTITIES ?=
-+
-+## @ DOC_INCLUDES
-+## Files included with XInclude
-+DOC_INCLUDES ?=
-+
-+## @ DOC_FIGURES
-+## Figures and other external data
-+DOC_FIGURES ?=
-+
-+## @ DOC_FORMATS
-+## The default formats to be built and installed
-+DOC_FORMATS ?= docbook
-+_DOC_REAL_FORMATS = $(if $(DOC_USER_FORMATS),$(DOC_USER_FORMATS),$(DOC_FORMATS))
-+
-+## @ DOC_LINGUAS
-+## The languages this document is translated into
-+DOC_LINGUAS ?=
-+_DOC_REAL_LINGUAS = $(if $(filter environment,$(origin LINGUAS)),		\
-+	$(filter $(LINGUAS),$(DOC_LINGUAS)),					\
-+	$(DOC_LINGUAS))
-+
-+_DOC_ABS_SRCDIR = @abs_srcdir@
-+
-+
-+################################################################################
-+## Variables for Bootstrapping
-+
-+_xml2po ?= `which xml2po`
-+_xml2po_mode = $(if $(DOC_ID),mallard,docbook)
-+
-+_db2html ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2html gnome-doc-utils`
-+_db2omf  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
-+_chunks  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
-+_credits ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
-+_ids ?= ${PKG_CONFIG_SYSROOT_DIR}$(shell $(PKG_CONFIG) --variable xmldir gnome-doc-utils)/gnome/xslt/docbook/utils/ids.xsl
-+
-+if ENABLE_SK
-+_ENABLE_SK = true
-+_skpkgdatadir ?= `scrollkeeper-config --pkgdatadir`
-+_sklocalstatedir ?= `scrollkeeper-config --pkglocalstatedir`
-+_skcontentslist ?= $(_skpkgdatadir)/Templates/C/scrollkeeper_cl.xml
-+endif
-+
-+
-+################################################################################
-+## Support for automake silent-rules
-+GDU_V_XML2PO=$(GDU__v_XML2PO_$(V))
-+GDU__v_XML2PO_=$(GDU__v_XML2PO_$(AM_DEFAULT_VERBOSITY))
-+GDU__v_XML2PO_0=@echo "  XML2PO" $@;
-+
-+GDU_V_MSGFMT=$(GDU__v_MSGFMT_$(V))
-+GDU__v_MSGFMT_=$(GDU__v_MSGFMT_$(AM_DEFAULT_VERBOSITY))
-+GDU__v_MSGFMT_0=@echo "  MSGFMT" $@;
-+
-+GDU_V_DB2OMF=$(GDU__v_DB2OMF_$(V))
-+GDU__v_DB2OMF_=$(GDU__v_DB2OMF_$(AM_DEFAULT_VERBOSITY))
-+GDU__v_DB2OMF_0=@echo "  DB2OMF" $@;
-+
-+GDU_V_DB2HTM=$(GDU__v_DB2HTM_$(V))
-+GDU__v_DB2HTM_=$(GDU__v_DB2HTM_$(AM_DEFAULT_VERBOSITY))
-+GDU__v_DB2HTM_0=@echo "  DB2HTM" $@;
-+
-+################################################################################
-+## @@ Rules for OMF Files
-+
-+db2omf_args =									\
-+	--stringparam db2omf.basename $(DOC_MODULE)				\
-+	--stringparam db2omf.format $(3)					\
-+	--stringparam db2omf.dtd						\
-+	$(shell xmllint --format $(2) | grep -h PUBLIC | head -n 1 		\
-+		| sed -e 's/.*PUBLIC \(\"[^\"]*\"\).*/\1/')			\
-+	--stringparam db2omf.lang $(notdir $(patsubst %/$(notdir $(2)),%,$(2)))	\
-+	--stringparam db2omf.omf_dir "$(OMF_DIR)"				\
-+	--stringparam db2omf.help_dir "$(HELP_DIR)"				\
-+	--stringparam db2omf.omf_in "$(_DOC_OMF_IN)"				\
-+	$(if $(_ENABLE_SK),							\
-+	  --stringparam db2omf.scrollkeeper_cl "$(_skcontentslist)")		\
-+	$(_db2omf) $(2)
-+
-+## @ _DOC_OMF_IN
-+## The OMF input file
-+_DOC_OMF_IN = $(if $(DOC_MODULE),$(wildcard $(_DOC_ABS_SRCDIR)/$(DOC_MODULE).omf.in))
-+
-+## @ _DOC_OMF_DB
-+## The OMF files for DocBook output
-+_DOC_OMF_DB = $(if $(_DOC_OMF_IN),						\
-+	$(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-$(lc).omf))
-+
-+$(_DOC_OMF_DB) : $(_DOC_OMF_IN)
-+$(_DOC_OMF_DB) : $(DOC_MODULE)-%.omf : %/$(DOC_MODULE).xml
-+	@test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || {	\
-+	  echo "The file '$(_skcontentslist)' does not exist." >&2;		\
-+	  echo "Please check your ScrollKeeper installation." >&2;		\
-+	  exit 1; }
-+	$(GDU_V_DB2OMF)xsltproc -nonet -o $@ $(call db2omf_args,$@,$<,'docbook') || { rm -f "$@"; exit 1; }
-+
-+## @ _DOC_OMF_HTML
-+## The OMF files for HTML output
-+_DOC_OMF_HTML = $(if $(_DOC_OMF_IN),						\
-+	$(foreach lc,C $(_DOC_REAL_LINGUAS),$(DOC_MODULE)-html-$(lc).omf))
-+
-+$(_DOC_OMF_HTML) : $(_DOC_OMF_IN)
-+$(_DOC_OMF_HTML) : $(DOC_MODULE)-html-%.omf : %/$(DOC_MODULE).xml
-+if ENABLE_SK
-+	@test "x$(_ENABLE_SK)" != "xtrue" -o -f "$(_skcontentslist)" || {	\
-+	  echo "The file '$(_skcontentslist)' does not exist" >&2;		\
-+	  echo "Please check your ScrollKeeper installation." >&2;		\
-+	  exit 1; }
-+endif
-+	$(GDU_V_DB2OMF)xsltproc -nonet -o $@ $(call db2omf_args,$@,$<,'xhtml') || { rm -f "$@"; exit 1; }
-+
-+## @ _DOC_OMF_ALL
-+## All OMF output files to be built
-+# FIXME
-+_DOC_OMF_ALL =									\
-+	$(if $(filter docbook,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_DB))		\
-+	$(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_OMF_HTML))
-+
-+.PHONY: omf
-+omf: $(_DOC_OMF_ALL)
-+
-+
-+################################################################################
-+## @@ C Locale Documents
-+
-+## @ _DOC_C_MODULE
-+## The top-level documentation file in the C locale
-+_DOC_C_MODULE = $(if $(DOC_MODULE),C/$(DOC_MODULE).xml)
-+
-+## @ _DOC_C_PAGES
-+## Page files in a Mallard document in the C locale
-+_DOC_C_PAGES = $(foreach page,$(DOC_PAGES),C/$(page))
-+
-+## @ _DOC_C_ENTITIES
-+## Files included with a SYSTEM entity in the C locale
-+_DOC_C_ENTITIES = $(foreach ent,$(DOC_ENTITIES),C/$(ent))
-+
-+## @ _DOC_C_XINCLUDES
-+## Files included with XInclude in the C locale
-+_DOC_C_INCLUDES = $(foreach inc,$(DOC_INCLUDES),C/$(inc))
-+
-+## @ _DOC_C_DOCS
-+## All documentation files in the C locale
-+_DOC_C_DOCS =								\
-+	$(_DOC_C_ENTITIES)	$(_DOC_C_INCLUDES)			\
-+	$(_DOC_C_PAGES)		$(_DOC_C_MODULE)
-+
-+## @ _DOC_C_DOCS_NOENT
-+## All documentation files in the C locale,
-+## except files included with a SYSTEM entity
-+_DOC_C_DOCS_NOENT =							\
-+	$(_DOC_C_MODULE)	$(_DOC_C_INCLUDES)			\
-+	$(_DOC_C_PAGES)
-+
-+## @ _DOC_C_FIGURES
-+## All figures and other external data in the C locale
-+_DOC_C_FIGURES = $(if $(DOC_FIGURES),					\
-+	$(foreach fig,$(DOC_FIGURES),C/$(fig)),				\
-+	$(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/C/figures/*.png)))
-+
-+## @ _DOC_C_HTML
-+## All HTML documentation in the C locale
-+# FIXME: probably have to shell escape to determine the file names
-+_DOC_C_HTML = $(foreach f,						\
-+	$(shell xsltproc -nonet --xinclude 					\
-+	  --stringparam db.chunk.basename "$(DOC_MODULE)"		\
-+	  $(_chunks) "C/$(DOC_MODULE).xml"),				\
-+	C/$(f).xhtml)
-+
-+###############################################################################
-+## @@ Other Locale Documentation
-+
-+## @ _DOC_POFILES
-+## The .po files used for translating the document
-+_DOC_POFILES = $(if $(DOC_MODULE)$(DOC_ID),					\
-+	$(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(lc).po))
-+
-+.PHONY: po
-+po: $(_DOC_POFILES)
-+
-+## @ _DOC_MOFILES
-+## The .mo files used for translating the document
-+_DOC_MOFILES = $(patsubst %.po,%.mo,$(_DOC_POFILES))
-+
-+.PHONY: mo
-+mo: $(_DOC_MOFILES)
-+
-+## @ _DOC_LC_MODULES
-+## The top-level documentation files in all other locales
-+_DOC_LC_MODULES = $(if $(DOC_MODULE),						\
-+	$(foreach lc,$(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xml))
-+
-+## @ _DOC_LC_PAGES
-+## Page files in a Mallard document in all other locales
-+_DOC_LC_PAGES =									\
-+	$(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach page,$(_DOC_C_PAGES),	\
-+		$(lc)/$(notdir $(page)) ))
-+
-+## @ _DOC_LC_XINCLUDES
-+## Files included with XInclude in all other locales
-+_DOC_LC_INCLUDES =								\
-+	$(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach inc,$(_DOC_C_INCLUDES),	\
-+		$(lc)/$(notdir $(inc)) ))
-+
-+## @ _DOC_LC_HTML
-+## All HTML documentation in all other locales
-+# FIXME: probably have to shell escape to determine the file names
-+_DOC_LC_HTML =									\
-+	$(foreach lc,$(_DOC_REAL_LINGUAS),$(foreach doc,$(_DOC_C_HTML),		\
-+		$(lc)/$(notdir $(doc)) ))
-+
-+## @ _DOC_LC_DOCS
-+## All documentation files in all other locales
-+_DOC_LC_DOCS =									\
-+	$(_DOC_LC_MODULES)	$(_DOC_LC_INCLUDES)	$(_DOC_LC_PAGES)	\
-+	$(if $(filter html HTML,$(_DOC_REAL_FORMATS)),$(_DOC_LC_HTML))
-+
-+## @ _DOC_LC_FIGURES
-+## All figures and other external data in all other locales
-+_DOC_LC_FIGURES = $(foreach lc,$(_DOC_REAL_LINGUAS),				\
-+	$(patsubst C/%,$(lc)/%,$(_DOC_C_FIGURES)) )
-+
-+_DOC_SRC_FIGURES =								\
-+	$(foreach fig,$(_DOC_C_FIGURES), $(foreach lc,C $(_DOC_REAL_LINGUAS),	\
-+		$(wildcard $(srcdir)/$(lc)/$(patsubst C/%,%,$(fig))) ))
-+
-+$(_DOC_POFILES):
-+	@if ! test -d $(dir $@); then \
-+	  echo "mkdir $(dir $@)"; \
-+	  mkdir "$(dir $@)"; \
-+	fi
-+	@if test ! -f $@ -a -f $(srcdir)/$@; then \
-+	  echo "cp $(srcdir)/$@ $@"; \
-+	  cp "$(srcdir)/$@" "$@"; \
-+	fi;
-+	@docs=; \
-+	list='$(_DOC_C_DOCS_NOENT)'; for doc in $$list; do \
-+	  docs="$$docs $(_DOC_ABS_SRCDIR)/$$doc"; \
-+	done; \
-+	if ! test -f $@; then \
-+	  echo "(cd $(dir $@) && \
-+	    $(_xml2po) -m $(_xml2po_mode) -e $$docs > $(notdir $@).tmp && \
-+	    cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)"; \
-+	  (cd $(dir $@) && \
-+	    $(_xml2po) -m $(_xml2po_mode) -e $$docs > $(notdir $@).tmp && \
-+	    cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp); \
-+	else \
-+	  echo "(cd $(dir $@) && \
-+	    $(_xml2po) -m $(_xml2po_mode) -e -u $(notdir $@) $$docs)"; \
-+	  (cd $(dir $@) && \
-+	    $(_xml2po) -m $(_xml2po_mode) -e -u $(notdir $@) $$docs); \
-+	fi
-+
-+$(_DOC_MOFILES): %.mo: %.po
-+	$(AM_V_at)if ! test -d $(dir $@); then mkdir "$(dir $@)"; fi
-+	$(GDU_V_MSGFMT)msgfmt -o $@ $<
-+
-+# FIXME: fix the dependancy
-+# FIXME: hook xml2po up
-+$(_DOC_LC_DOCS) : $(_DOC_MOFILES)
-+$(_DOC_LC_DOCS) : $(_DOC_C_DOCS)
-+	$(AM_V_at)if ! test -d $(dir $@); then mkdir $(dir $@); fi
-+	$(GDU_V_XML2PO)if [ -f "C/$(notdir $@)" ]; then d="../"; else d="$(_DOC_ABS_SRCDIR)/"; fi; \
-+	mo="$(dir $@)$(patsubst %/$(notdir $@),%,$@).mo"; \
-+	if [ -f "$${mo}" ]; then mo="../$${mo}"; else mo="$(_DOC_ABS_SRCDIR)/$${mo}"; fi; \
-+	(cd $(dir $@) && \
-+	  $(_xml2po) -m $(_xml2po_mode) -e -t "$${mo}" \
-+	    "$${d}C/$(notdir $@)" > $(notdir $@).tmp && \
-+	    cp $(notdir $@).tmp $(notdir $@) && rm -f $(notdir $@).tmp)
-+
-+## @ _DOC_POT
-+## A pot file
-+_DOC_POT = $(if $(DOC_MODULE),$(DOC_MODULE).pot,$(if $(DOC_ID),$(DOC_ID).pot))
-+.PHONY: pot
-+pot: $(_DOC_POT)
-+$(_DOC_POT): $(_DOC_C_DOCS_NOENT)
-+	$(GDU_V_XML2PO)$(_xml2po) -m $(_xml2po_mode) -e -o $@ $^
-+
-+
-+################################################################################
-+## @@ All Documentation
-+
-+## @ _DOC_HTML_ALL
-+## All HTML documentation, only if it's built
-+_DOC_HTML_ALL = $(if $(filter html HTML,$(_DOC_REAL_FORMATS)), \
-+	$(_DOC_C_HTML) $(_DOC_LC_HTML))
-+
-+_DOC_HTML_TOPS = $(foreach lc,C $(_DOC_REAL_LINGUAS),$(lc)/$(DOC_MODULE).xhtml)
-+
-+$(_DOC_HTML_TOPS): $(_DOC_C_DOCS) $(_DOC_LC_DOCS)
-+	$(GDU_V_DB2HTM)xsltproc -nonet -o $@ --xinclude --param db.chunk.chunk_top "false()" --stringparam db.chunk.basename "$(DOC_MODULE)" --stringparam db.chunk.extension ".xhtml" $(_db2html) $(patsubst %.xhtml,%.xml,$@)
-+
-+
-+################################################################################
-+## All
-+
-+all:							\
-+	$(_DOC_C_DOCS)		$(_DOC_LC_DOCS)		\
-+	$(_DOC_OMF_ALL)		$(_DOC_DSK_ALL)		\
-+	$(_DOC_HTML_ALL)	$(_DOC_POFILES)
-+
-+
-+################################################################################
-+## Clean
-+
-+.PHONY: clean-doc-omf clean-doc-dsk clean-doc-lc clean-doc-dir
-+
-+clean-doc-omf: ; rm -f $(_DOC_OMF_DB) $(_DOC_OMF_HTML)
-+clean-doc-dsk: ; rm -f $(_DOC_DSK_DB) $(_DOC_DSK_HTML)
-+clean-doc-lc:
-+	rm -f $(_DOC_LC_DOCS)
-+	rm -f $(_DOC_MOFILES)
-+	@list='$(_DOC_POFILES)'; for po in $$list; do \
-+	  if ! test "$$po" -ef "$(srcdir)/$$po"; then \
-+	    echo "rm -f $$po"; \
-+	    rm -f "$$po"; \
-+	  fi; \
-+	done
-+#	.xml2.po.mo cleaning is obsolete as of 0.18.1 and could be removed in 0.20.x
-+	@for lc in C $(_DOC_REAL_LINGUAS); do \
-+	  if test -f "$$lc/.xml2po.mo"; then \
-+	    echo "rm -f $$lc/.xml2po.mo"; \
-+	    rm -f "$$lc/.xml2po.mo"; \
-+	  fi; \
-+	done
-+clean-doc-dir: clean-doc-lc
-+	@for lc in C $(_DOC_REAL_LINGUAS); do \
-+	  for dir in `find $$lc -depth -type d`; do \
-+	    if ! test $$dir -ef $(srcdir)/$$dir; then \
-+	      echo "rmdir $$dir"; \
-+	      rmdir "$$dir"; \
-+	   fi; \
-+	  done; \
-+	done
-+
-+_clean_omf = $(if $(_DOC_OMF_IN),clean-doc-omf)
-+_clean_dsk = $(if $(_DOC_DSK_IN),clean-doc-dsk)
-+_clean_lc  = $(if $(_DOC_REAL_LINGUAS),clean-doc-lc)
-+_clean_dir = $(if $(DOC_MODULE)$(DOC_ID),clean-doc-dir)
-+
-+clean-local:						\
-+	$(_clean_omf)		$(_clean_dsk)		\
-+	$(_clean_lc)		$(_clean_dir)
-+distclean-local:					\
-+	$(_clean_omf)		$(_clean_dsk)		\
-+	$(_clean_lc)		$(_clean_dir)
-+mostlyclean-local:					\
-+	$(_clean_omf)		$(_clean_dsk)		\
-+	$(_clean_lc)		$(_clean_dir)
-+maintainer-clean-local:					\
-+	$(_clean_omf)		$(_clean_dsk)		\
-+	$(_clean_lc)		$(_clean_dir)
-+
-+
-+
-+################################################################################
-+## Dist
-+
-+.PHONY: dist-doc-docs dist-doc-pages dist-doc-figs dist-doc-omf dist-doc-dsk
-+doc-dist-hook: 						\
-+	$(if $(DOC_MODULE)$(DOC_ID),dist-doc-docs)	\
-+	$(if $(_DOC_C_FIGURES),dist-doc-figs)		\
-+	$(if $(_DOC_OMF_IN),dist-doc-omf)
-+#	$(if $(_DOC_DSK_IN),dist-doc-dsk)
-+
-+dist-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS) $(_DOC_POFILES)
-+	@for lc in C $(_DOC_REAL_LINGUAS); do \
-+	  echo " $(mkinstalldirs) $(distdir)/$$lc"; \
-+	  $(mkinstalldirs) "$(distdir)/$$lc"; \
-+	done
-+	@list='$(_DOC_C_DOCS)'; \
-+	for doc in $$list; do \
-+	  if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
-+	    docdir=`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
-+	    if ! test -d "$(distdir)/$$docdir"; then \
-+	      echo "$(mkinstalldirs) $(distdir)/$$docdir"; \
-+	      $(mkinstalldirs) "$(distdir)/$$docdir"; \
-+	    fi; \
-+	  echo "$(INSTALL_DATA) $$d$$doc $(distdir)/$$doc"; \
-+	  $(INSTALL_DATA) "$$d$$doc" "$(distdir)/$$doc"; \
-+	done
-+	@list='$(_DOC_LC_DOCS)'; \
-+	for doc in $$list; do \
-+	  if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
-+	    docdir=`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
-+	    if ! test -d "$(distdir)/$$docdir"; then \
-+	      echo "$(mkinstalldirs) $(distdir)/$$docdir"; \
-+	      $(mkinstalldirs) "$(distdir)/$$docdir"; \
-+	    fi; \
-+	  echo "$(INSTALL_DATA) $$d$$doc $(distdir)/$$doc"; \
-+	  $(INSTALL_DATA) "$$d$$doc" "$(distdir)/$$doc"; \
-+	done
-+	@list='$(_DOC_POFILES)'; \
-+	for doc in $$list; do \
-+	  if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
-+	    docdir=`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
-+	    if ! test -d "$(distdir)/$$docdir"; then \
-+	      echo "$(mkinstalldirs) $(distdir)/$$docdir"; \
-+	      $(mkinstalldirs) "$(distdir)/$$docdir"; \
-+	    fi; \
-+	  echo "$(INSTALL_DATA) $$d$$doc $(distdir)/$$doc"; \
-+	  $(INSTALL_DATA) "$$d$$doc" "$(distdir)/$$doc"; \
-+	done
-+
-+dist-doc-figs: $(_DOC_SRC_FIGURES)
-+	@list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; \
-+	for fig in $$list; do \
-+	  if test -f "$$fig"; then d=; else d="$(srcdir)/"; fi; \
-+	  if test -f "$$d$$fig"; then \
-+	    figdir=`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
-+	    if ! test -d "$(distdir)/$$figdir"; then \
-+	      echo "$(mkinstalldirs) $(distdir)/$$figdir"; \
-+	      $(mkinstalldirs) "$(distdir)/$$figdir"; \
-+	    fi; \
-+	    echo "$(INSTALL_DATA) $$d$$fig $(distdir)/$$fig"; \
-+	    $(INSTALL_DATA) "$$d$$fig" "$(distdir)/$$fig"; \
-+	  fi; \
-+	done;
-+
-+dist-doc-omf:
-+	@if test -f "$(_DOC_OMF_IN)"; then d=; else d="$(srcdir)/"; fi; \
-+	echo "$(INSTALL_DATA) $$d$(_DOC_OMF_IN) $(distdir)/$(notdir $(_DOC_OMF_IN))"; \
-+	$(INSTALL_DATA) "$$d$(_DOC_OMF_IN)" "$(distdir)/$(notdir $(_DOC_OMF_IN))"
-+
-+dist-doc-dsk:
-+	@if test -f "$(_DOC_DSK_IN)"; then d=; else d="$(srcdir)/"; fi; \
-+	echo "$(INSTALL_DATA) $$d$(_DOC_DSK_IN) $(distdir)/$(notdir $(_DOC_DSK_IN))"; \
-+	$(INSTALL_DATA) "$$d$(_DOC_DSK_IN)" "$(distdir)/$(notdir $(_DOC_DSK_IN))"
-+
-+
-+
-+################################################################################
-+## Check
-+
-+.PHONY: check-doc-docs check-doc-omf
-+check:							\
-+	$(if $(DOC_MODULE),check-doc-docs)		\
-+	$(if $(DOC_ID),check-doc-pages)			\
-+	$(if $(_DOC_OMF_IN),check-doc-omf)
-+
-+check-doc-docs: $(_DOC_C_DOCS) $(_DOC_LC_DOCS)
-+	@for lc in C $(_DOC_REAL_LINGUAS); do \
-+	  if test -f "$$lc"; \
-+	    then d=; \
-+	    xmlpath="$$lc"; \
-+	  else \
-+	    d="$(srcdir)/"; \
-+	    xmlpath="$$lc:$(srcdir)/$$lc"; \
-+	  fi; \
-+	  echo "xmllint --noout --noent --path $$xmlpath --xinclude --postvalid $$d$$lc/$(DOC_MODULE).xml"; \
-+	  xmllint --noout --noent --path "$$xmlpath" --xinclude --postvalid "$$d$$lc/$(DOC_MODULE).xml"; \
-+	done
-+
-+check-doc-pages: $(_DOC_C_PAGES) $(_DOC_LC_PAGES)
-+	for lc in C $(_DOC_REAL_LINGUAS); do \
-+	  if test -f "$$lc"; \
-+	    then d=; \
-+	    xmlpath="$$lc"; \
-+	  else \
-+	    d="$(srcdir)/"; \
-+	    xmlpath="$$lc:$(srcdir)/$$lc"; \
-+	  fi; \
-+	  for page in $(DOC_PAGES); do \
-+	    echo "xmllint --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \
-+	    xmllint --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \
-+	  done; \
-+	done
-+
-+check-doc-omf: $(_DOC_OMF_ALL)
-+	@list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
-+	  echo "xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf"; \
-+	  xmllint --noout --xinclude --dtdvalid 'http://scrollkeeper.sourceforge.net/dtds/scrollkeeper-omf-1.0/scrollkeeper-omf.dtd' $$omf; \
-+	done
-+
-+
-+
-+################################################################################
-+## Install
-+
-+.PHONY: install-doc-docs install-doc-html install-doc-figs install-doc-omf install-doc-dsk
-+
-+_doc_install_dir = $(if $(DOC_ID),$(DOC_ID),$(DOC_MODULE))
-+
-+install-data-local:					\
-+	$(if $(DOC_MODULE)$(DOC_ID),install-doc-docs)	\
-+	$(if $(_DOC_HTML_ALL),install-doc-html)		\
-+	$(if $(_DOC_C_FIGURES),install-doc-figs)	\
-+	$(if $(_DOC_OMF_IN),install-doc-omf)
-+#	$(if $(_DOC_DSK_IN),install-doc-dsk)
-+
-+install-doc-docs:
-+	@for lc in C $(_DOC_REAL_LINGUAS); do \
-+	  echo "$(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$lc"; \
-+	  $(mkinstalldirs) $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$lc; \
-+	done
-+	@list='$(_DOC_C_DOCS)'; for doc in $$list; do \
-+	  if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
-+	  docdir="$$lc/"`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
-+	  docdir="$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$docdir"; \
-+	  if ! test -d "$$docdir"; then \
-+	    echo "$(mkinstalldirs) $$docdir"; \
-+	    $(mkinstalldirs) "$$docdir"; \
-+	  fi; \
-+	  echo "$(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
-+	  $(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc; \
-+	done
-+	@list='$(_DOC_LC_DOCS)'; for doc in $$list; do \
-+	  if test -f "$$doc"; then d=; else d="$(srcdir)/"; fi; \
-+	  docdir="$$lc/"`echo $$doc | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
-+	  docdir="$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$docdir"; \
-+	  if ! test -d "$$docdir"; then \
-+	    echo "$(mkinstalldirs) $$docdir"; \
-+	    $(mkinstalldirs) "$$docdir"; \
-+	  fi; \
-+	  echo "$(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
-+	  $(INSTALL_DATA) $$d$$doc $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc; \
-+	done
-+
-+install-doc-figs:
-+	@list='$(patsubst C/%,%,$(_DOC_C_FIGURES))'; for fig in $$list; do \
-+	  for lc in C $(_DOC_REAL_LINGUAS); do \
-+	    figsymlink=false; \
-+	    if test -f "$$lc/$$fig"; then \
-+	      figfile="$$lc/$$fig"; \
-+	    elif test -f "$(srcdir)/$$lc/$$fig"; then \
-+	      figfile="$(srcdir)/$$lc/$$fig"; \
-+	    else \
-+	      figsymlink=true; \
-+	    fi; \
-+	    figdir="$$lc/"`echo $$fig | sed -e 's/^\(.*\/\).*/\1/' -e '/\//!s/.*//'`; \
-+	    figdir="$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$figdir"; \
-+	    if ! test -d "$$figdir"; then \
-+	      echo "$(mkinstalldirs) $$figdir"; \
-+	      $(mkinstalldirs) "$$figdir"; \
-+	    fi; \
-+	    figbase=`echo $$fig | sed -e 's/^.*\///'`; \
-+	    if $$figsymlink; then \
-+	      echo "cd $$figdir && $(LN_S) -f ../../C/$$fig $$figbase"; \
-+	      ( cd "$$figdir" && $(LN_S) -f "../../C/$$fig" "$$figbase" ); \
-+	    else \
-+	      echo "$(INSTALL_DATA) $$figfile $$figdir$$figbase"; \
-+	      $(INSTALL_DATA) "$$figfile" "$$figdir$$figbase"; \
-+	    fi; \
-+	  done; \
-+	done
-+
-+install-doc-html:
-+	echo install-html
-+
-+install-doc-omf:
-+	$(mkinstalldirs) $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)
-+	@list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
-+	  echo "$(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
-+	  $(INSTALL_DATA) $$omf $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf; \
-+	done
-+	@if test "x$(_ENABLE_SK)" = "xtrue"; then \
-+	  echo "scrollkeeper-update -p $(DESTDIR)$(_sklocalstatedir) -o $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)"; \
-+	  scrollkeeper-update -p "$(DESTDIR)$(_sklocalstatedir)" -o "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)"; \
-+	fi;
-+
-+install-doc-dsk:
-+	echo install-dsk
-+
-+
-+
-+################################################################################
-+## Uninstall
-+
-+.PHONY: uninstall-doc-docs uninstall-doc-html uninstall-doc-figs uninstall-doc-omf uninstall-doc-dsk
-+uninstall-local:					\
-+	$(if $(DOC_MODULE)$(DOC_ID),uninstall-doc-docs)	\
-+	$(if $(_DOC_HTML_ALL),uninstall-doc-html)	\
-+	$(if $(_DOC_C_FIGURES),uninstall-doc-figs)	\
-+	$(if $(_DOC_OMF_IN),uninstall-doc-omf)
-+#	$(if $(_DOC_DSK_IN),uninstall-doc-dsk)
-+
-+uninstall-doc-docs:
-+	@list='$(_DOC_C_DOCS)'; for doc in $$list; do \
-+	  echo " rm -f $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
-+	  rm -f "$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
-+	done
-+	@list='$(_DOC_LC_DOCS)'; for doc in $$list; do \
-+	  echo " rm -f $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
-+	  rm -f "$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$doc"; \
-+	done
-+
-+uninstall-doc-figs:
-+	@list='$(_DOC_C_FIGURES) $(_DOC_LC_FIGURES)'; for fig in $$list; do \
-+	  echo "rm -f $(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$fig"; \
-+	  rm -f "$(DESTDIR)$(HELP_DIR)/$(_doc_install_dir)/$$fig"; \
-+	done;
-+
-+uninstall-doc-omf:
-+	@list='$(_DOC_OMF_ALL)'; for omf in $$list; do \
-+	  if test "x$(_ENABLE_SK)" = "xtrue"; then \
-+	    echo "scrollkeeper-uninstall -p $(_sklocalstatedir) $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
-+	    scrollkeeper-uninstall -p "$(_sklocalstatedir)" "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
-+	  fi; \
-+	  echo "rm -f $(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
-+	  rm -f "$(DESTDIR)$(OMF_DIR)/$(_doc_install_dir)/$$omf"; \
-+	done
--- 
-2.8.1
-
diff --git a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/0001-Fix-build-with-gcc-5.patch b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/0001-Fix-build-with-gcc-5.patch
deleted file mode 100644
index 6b7fc5b..0000000
--- a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/0001-Fix-build-with-gcc-5.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 20810fcf329c6e0b48b8e7602565ccc70c7ce62b Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Sun, 10 May 2015 02:10:59 -0700
-Subject: [PATCH] Fix build with gcc 5
-
-cc1: error: ../../gnome-panel/libpanel-applets-private: No such file or
-directory [-Werror=missing-include-dirs]
-cc1: error: ../../gnome-panel/libpanel-applets-private: No such file or
-directory [-Werror=missing-include-dirs]
-cc1: error: ../../gnome-panel/libpanel-applets-private: No such file or
-directory [-Werror=missing-include-dirs]
-cc1: some warnings being treated as errors
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
-Upstream-Status: Pending
-
- gnome-panel/libpanel-applet-private/Makefile.am | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/gnome-panel/libpanel-applet-private/Makefile.am b/gnome-panel/libpanel-applet-private/Makefile.am
-index f12dee8..d556f12 100644
---- a/gnome-panel/libpanel-applet-private/Makefile.am
-+++ b/gnome-panel/libpanel-applet-private/Makefile.am
-@@ -8,7 +8,6 @@ AM_CPPFLAGS =							\
- 	-I$(srcdir)						\
- 	-I$(top_srcdir)/gnome-panel				\
- 	-I$(top_builddir)/gnome-panel				\
--	-I$(top_builddir)/gnome-panel/libpanel-applets-private	\
- 	-I$(top_builddir)/gnome-panel/libpanel-util		\
- 	-DDATADIR=\""$(datadir)"\"				\
- 	-DPANEL_APPLETS_DIR=\"$(appletsdir)\"			\
--- 
-2.1.4
-
diff --git a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/as-needed.patch b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/as-needed.patch
deleted file mode 100644
index 378e3e4..0000000
--- a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/as-needed.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From c65f1ae3472cfd4cd96fd376b7bbd95fba5eef0a Mon Sep 17 00:00:00 2001
-From: Vincent Untz <vuntz at gnome.org>
-Date: Fri, 27 May 2011 17:00:14 +0000
-Subject: build: Fix build with --as-needed
-
-upstream-status: backport
-
----
-diff --git a/applets/notification_area/Makefile.am b/applets/notification_area/Makefile.am
-index 0afc6c5..9734536 100644
---- a/applets/notification_area/Makefile.am
-+++ b/applets/notification_area/Makefile.am
-@@ -29,17 +29,17 @@ libtray_la_SOURCES =		\
- NOTIFICATION_AREA_SOURCES = main.c main.h
- 
- NOTIFICATION_AREA_LDADD =				\
-+	libtray.la					\
- 	../../libpanel-applet/libpanel-applet-4.la	\
- 	$(X_LIBS)					\
- 	$(NOTIFICATION_AREA_LIBS)			\
--	$(LIBPANEL_APPLET_LIBS)				\
--	libtray.la
-+	$(LIBPANEL_APPLET_LIBS)
- 
- testtray_SOURCES = testtray.c
- testtray_LDADD =			\
-+	libtray.la			\
- 	$(X_LIBS)			\
--	$(NOTIFICATION_AREA_LIBS)	\
--	libtray.la
-+	$(NOTIFICATION_AREA_LIBS)
- 
- if NOTIFICATION_AREA_INPROCESS
- APPLET_IN_PROCESS = true
---
-cgit v0.9
diff --git a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/idl-sysroot.patch b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/idl-sysroot.patch
deleted file mode 100644
index de4cd84..0000000
--- a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel/idl-sysroot.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- /tmp/Makefile.am	2009-10-26 16:53:20.000000000 +0100
-+++ gnome-panel-2.28.0/gnome-panel/Makefile.am	2009-10-26 16:53:51.000000000 +0100
-@@ -43,7 +43,7 @@
- 	$(NULL)
- 
- $(CORBA_SRCLIST): $(top_srcdir)/idl/GNOME_Panel.idl $(ORBIT_IDL)
--	$(AM_V_GEN)$(ORBIT_IDL) -I $(BONOBO_IDLDIR) -I $(BONOBO_ACT_IDLDIR) $(top_srcdir)/idl/GNOME_Panel.idl
-+	$(AM_V_GEN)$(ORBIT_IDL) -I $(SYSROOT)$(BONOBO_IDLDIR) -I $(SYSROOT)$(BONOBO_ACT_IDLDIR) $(top_srcdir)/idl/GNOME_Panel.idl
- 
- BUILT_SOURCES = \
- 	$(CORBA_SRCLIST)	\
---- /tmp/Makefile.am	2009-10-26 16:54:17.000000000 +0100
-+++ gnome-panel-2.28.0/libpanel-applet/Makefile.am	2009-10-26 16:54:34.000000000 +0100
-@@ -45,7 +45,7 @@
- 	GNOME_Panel.h
- 
- $(CORBA_SRCLIST): $(top_srcdir)/idl/GNOME_Panel.idl $(ORBIT_IDL)
--	$(AM_V_GEN)$(ORBIT_IDL) -I $(BONOBO_IDLDIR) -I $(BONOBO_ACT_IDLDIR) $(top_srcdir)/idl/GNOME_Panel.idl
-+	$(AM_V_GEN)$(ORBIT_IDL) -I $(SYSROOT)$(BONOBO_IDLDIR) -I $(SYSROOT)$(BONOBO_ACT_IDLDIR) $(top_srcdir)/idl/GNOME_Panel.idl
- 
- noinst_PROGRAMS = test-bonobo-applet
- 
diff --git a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel3_3.0.2.bb b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel3_3.0.2.bb
deleted file mode 100644
index d1cfab8..0000000
--- a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel3_3.0.2.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-SUMMARY = "GNOME panel"
-LICENSE = "GPLv2 & LGPLv2 & GFDL-1.1"
-
-BPN = "gnome-panel"
-PR = "r1"
-
-PNBLACKLIST[gnome-panel3] ?= "CONFLICT: depends on libgweather3 which conflicts with libgweather - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-# conflicts with gnome-panel, because they provide the same package
-# http://patches.openembedded.org/patch/43105/
-EXCLUDE_FROM_WORLD = "1"
-DEFAULT_PREFERENCE = "-1"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://COPYING-DOCS;md5=c9211dab3ae61e580f48432020784324 \
-                    file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-
-SECTION = "x11/gnome"
-
-DEPENDS = "gnome-doc-utils-native gtk+3 dconf gconf glib-2.0 gnome-desktop3 gtk+ pango libwnck3 gnome-menus cairo libgweather3 dbus-glib librsvg libcanberra"
-
-inherit gtk-doc gnome gettext pkgconfig
-
-SRC_URI += "file://as-needed.patch "
-
-SRC_URI[archive.md5sum] = "0f2f644dc4081b72f6df7a65282af7c6"
-SRC_URI[archive.sha256sum] = "25db8ec026c4bf47f0ef5cc7e2712f2aad175bd7fb8e4952ef5f8b200f17f196"
-
-EXTRA_OECONF = "--disable-scrollkeeper --disable-eds --enable-bonobo=no --with-in-process-applets=none"
-
-do_configure_prepend() {
-    gnome-doc-prepare --automake
-    sed -i -e s:help:: ${S}/Makefile.am
-}
-
-pkg_postinst_${PN}_append () {
-    gconftool-2 --config-source=xml:readwrite:/etc/gconf/gconf.xml.defaults \
-        --direct --load /etc/gconf/schemas/panel-default-setup.entries
-}
-
-PACKAGES =+ "libpanel-applet"
-FILES_libpanel-applet = "${libdir}/libpanel-applet-3.so.*"
-
-FILES_${PN} =+ "${datadir}/gnome* \
-                ${datadir}/dbus-1 \
-                ${datadir}/icons \
-                ${datadir}/PolicyKit \
-                ${libdir}/bonobo \
-"
-
-PNBLACKLIST[gnome-panel3] ?= "Depends on broken gnome-menus - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_2.32.1.bb b/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_2.32.1.bb
deleted file mode 100644
index 7cb8b9d..0000000
--- a/meta-gnome/recipes-gnome/gnome-panel/gnome-panel_2.32.1.bb
+++ /dev/null
@@ -1,48 +0,0 @@
-SUMMARY = "GNOME panel"
-LICENSE = "GPL-2.0 & LGPL-2.0 & GFDL-1.1"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://COPYING-DOCS;md5=c9211dab3ae61e580f48432020784324 \
-                    file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
-
-SECTION = "x11/gnome"
-
-PR = "r7"
-
-DEPENDS = "gnome-doc-utils gconf glib-2.0 gnome-desktop gtk+ \
-    pango libwnck gnome-menus cairo libgweather dbus dbus-glib \
-    librsvg libcanberra \
-"
-RDEPENDS_${PN} = "python"
-
-inherit gtk-doc gnome autotools-brokensep gettext pkgconfig gconf gobject-introspection
-
-SRCREV = "8292bd2b8a36df7eed3c760899400790cde68590"
-SRC_URI = "git://git.gnome.org/gnome-panel;branch=gnome-2-32 \
-           file://0001-Fix-build-with-gcc-5.patch \
-           file://0001-Add-gnome-doc-utils.make.patch \
-"
-
-S = "${WORKDIR}/git"
-
-EXTRA_OECONF = "--disable-scrollkeeper --disable-eds --enable-bonobo=no --with-in-process-applets=none"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[networkmanager] = "--enable-network-manager,--disable-network-manager,networkmanager"
-
-do_configure_prepend() {
-    sed -i -e s:help:: ${S}/Makefile.am
-    sed -i -e s:^#!@PYTHON@:#!/usr/bin/python: ${S}/gnome-panel/gnome-panel-add.in
-}
-
-PACKAGES =+ "libpanel-applet"
-FILES_libpanel-applet = "${libdir}/libpanel-applet-*.so.*"
-
-FILES_${PN} =+ "${datadir}/gnome* \
-                ${datadir}/dbus-1 \
-                ${datadir}/icons \
-                ${datadir}/PolicyKit \
-                ${libdir}/bonobo \
-"
-
-PNBLACKLIST[gnome-panel] ?= "Depends on broken libgweather - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager-2.32.0/0001-Makefile.am-don-t-build-help-man.patch b/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager-2.32.0/0001-Makefile.am-don-t-build-help-man.patch
deleted file mode 100644
index d6d49bb..0000000
--- a/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager-2.32.0/0001-Makefile.am-don-t-build-help-man.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 3ed15a3c6ae4ab94c7e3af306644bb5d7f3fd1fa Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Mon, 29 Apr 2013 13:08:10 +0200
-Subject: [PATCH] Makefile.am: don't build help/man
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-help crashes with:
-
-| xsltproc -o gnome-power-manager-C.omf --stringparam db2omf.basename gnome-power-manager --stringparam db2omf.format 'docbook' --stringparam db2omf.dtd "-//OASIS//DTD DocBook XML V4.3//EN" --stringparam db2omf.lang C --stringparam db2omf.omf_dir "/usr/share/omf" --stringparam db2omf.help_dir "/usr/share/gnome/help" --stringparam db2omf.omf_in "/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/gnome-power-manager/2.32.0-r2/gnome-power-manager-2.32.0/hel [...]
-| unable to parse fr/gnome-power-manager.xml
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- Makefile.am |    2 --
- 1 files changed, 0 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 005b8a0..5b9e318 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -5,9 +5,7 @@ SUBDIRS = 						\
- 	src						\
- 	po						\
- 	docs						\
--	man						\
- 	data						\
--	help						\
- 	policy						\
- 	tools
- 
--- 
-1.7.6.5
-
diff --git a/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager-2.32.0/sysrooted-pkg-config.patch b/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager-2.32.0/sysrooted-pkg-config.patch
deleted file mode 100644
index f3db7ab..0000000
--- a/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager-2.32.0/sysrooted-pkg-config.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-In cross environment we have to prepend the sysroot to the path found by
-pkgconfig since the path returned from pkgconfig does not have sysroot prefixed
-it ends up using the files from host system. Now usually people have gnome installed
-so the build succeeds but if you dont have gnome installed on build host then
-it wont find the files on host system and packages using gnome-doc-utils wont
-compile.
-
-This should work ok with non sysrooted builds too since in those cases PKG_CONFIG_SYSROOT_DIR
-will be empty
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-
-Index: gnome-power-manager-2.32.0/gnome-doc-utils.make
-===================================================================
---- gnome-power-manager-2.32.0.orig/gnome-doc-utils.make	2010-01-27 08:28:31.000000000 -0800
-+++ gnome-power-manager-2.32.0/gnome-doc-utils.make	2011-09-25 16:16:04.914813800 -0700
-@@ -124,11 +124,11 @@
- 
- _xml2po ?= `which xml2po`
- 
--_db2html ?= `$(PKG_CONFIG) --variable db2html gnome-doc-utils`
--_db2omf  ?= `$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
--_chunks  ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
--_credits ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
--_ids ?= `$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/ids.xsl
-+_db2html ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2html gnome-doc-utils`
-+_db2omf  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable db2omf gnome-doc-utils`
-+_chunks  ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/chunks.xsl
-+_credits ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/credits.xsl
-+_ids ?= ${PKG_CONFIG_SYSROOT_DIR}`$(PKG_CONFIG) --variable xmldir gnome-doc-utils`/gnome/xslt/docbook/utils/ids.xsl
- 
- if ENABLE_SK
- _ENABLE_SK = true
diff --git a/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager_2.32.0.bb b/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager_2.32.0.bb
deleted file mode 100644
index ec21107..0000000
--- a/meta-gnome/recipes-gnome/gnome-power-manager/gnome-power-manager_2.32.0.bb
+++ /dev/null
@@ -1,54 +0,0 @@
-SUMMARY = "Power management daemon"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-PR = "r4"
-
-DEPENDS = "glib-2.0 gtk+ gconf libgnome-keyring dbus dbus-glib libnotify libwnck cairo libunique xrandr virtual/libx11 libxrender libcanberra upower gnome-doc-utils"
-RRECOMMENDS_${PN} += "gnome-keyring"
-
-inherit gnome
-
-SRC_URI += " \
-    file://sysrooted-pkg-config.patch \
-    file://0001-Makefile.am-don-t-build-help-man.patch \
-"
-
-SRC_URI[archive.md5sum] = "9a08e85dce3ffb90775f15e3bda4adda"
-SRC_URI[archive.sha256sum] = "17fa301bf7e133285c0e054ae3be2b0f690c48f59b09f67e04d6ed339b330476"
-GNOME_COMPRESS_TYPE="bz2"
-
-EXTRA_OECONF = " --disable-scrollkeeper \
-                 --disable-applets \
-                 --x-includes=${STAGING_INCDIR} \
-                 --x-libraries=${STAGING_LIBDIR} \
-                 --enable-compile-warnings=no \
-                 ac_cv_header_X11_extensions_dpms_h=yes \
-"
-
-do_configure_append() {
-    # Sigh... --enable-compile-warnings=no doesn't actually turn off -Werror
-    for i in $(find ${B} -name "Makefile") ; do
-        sed -i -e s:-Werror::g $i
-    done
-    sed -e "s/libtool --/${TARGET_SYS}-libtool --/" -i ${B}/src/Makefile
-}
-
-PACKAGES =+ "${PN}-applets"
-
-FILES_${PN}-applets = "${bindir}/*applet* \
-    ${libdir}/bonobo/servers \
-    ${datadir}/gnome-2.0/ui \
-"
-
-FILES_${PN} += "${datadir}/icons \
-    ${datadir}/dbus-1 \
-    ${datadir}/gnome/autostart \
-"
-
-FILES_${PN}-doc += "${datadir}/omf \
-    ${datadir}/gnome/help \
-"
-
-# gnome-power-manager-2.32.0/src/gpm-manager.c:488:18: error: too many arguments to function 'notify_notification_new'
-PNBLACKLIST[gnome-power-manager] ?= "BROKEN: not compatible with current libnotify - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-session/gnome-session/use_G_GINT64_FORMAT.patch b/meta-gnome/recipes-gnome/gnome-session/gnome-session/use_G_GINT64_FORMAT.patch
deleted file mode 100644
index b09f8d2..0000000
--- a/meta-gnome/recipes-gnome/gnome-session/gnome-session/use_G_GINT64_FORMAT.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-This patch fixes the build errors when building gnome-session for 64bit target using gcc 4.8
-
-| gs-idle-monitor.c: In function 'handle_alarm_notify_event':
-| gs-idle-monitor.c:196:9: error: format '%lld' expects argument of type 'long long int', but argument 5 has type 'gint64' [-Werror=format=]
-|          g_debug ("Watch %d fired, idle time = %lld",
-|          ^
-| gs-idle-monitor.c: In function '_xsync_alarm_set':
-| gs-idle-monitor.c:453:17: error: format '%lld' expects argument of type 'long long int', but argument 4 has type 'gint64' [-Werror=format=]
-|                  g_debug ("GSIdleMonitor: updating alarm for positive transition wait=%lld",
-|                  ^
-| gs-idle-monitor.c:457:17: error: format '%lld' expects argument of type 'long long int', but argument 4 has type 'gint64' [-Werror=format=]
-|                  g_debug ("GSIdleMonitor: creating new alarm for positive transition wait=%lld",
-|                  ^
-| gs-idle-monitor.c:464:17: error: format '%lld' expects argument of type 'long long int', but argument 4 has type 'gint64' [-Werror=format=]
-|                  g_debug ("GSIdleMonitor: updating alarm for negative transition wait=%lld",
-|                  ^
-| gs-idle-monitor.c:468:17: error: format '%lld' expects argument of type 'long long int', but argument 4 has type 'gint64' [-Werror=format=]
-
-Upstream-Status: Unknown
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-Index: gnome-session-2.32.1/gnome-session/gs-idle-monitor.c
-===================================================================
---- gnome-session-2.32.1.orig/gnome-session/gs-idle-monitor.c	2010-11-17 03:17:04.000000000 -0800
-+++ gnome-session-2.32.1/gnome-session/gs-idle-monitor.c	2013-06-11 23:33:12.239960082 -0700
-@@ -193,7 +193,7 @@
-                 return;
-         }
- 
--        g_debug ("Watch %d fired, idle time = %lld",
-+        g_debug ("Watch %d fired, idle time = %" G_GINT64_FORMAT "",
-                  watch->id,
-                  _xsyncvalue_to_int64 (alarm_event->counter_value));
- 
-@@ -450,22 +450,22 @@
- 
-         attr.trigger.test_type = XSyncPositiveTransition;
-         if (watch->xalarm_positive != None) {
--                g_debug ("GSIdleMonitor: updating alarm for positive transition wait=%lld",
-+                g_debug ("GSIdleMonitor: updating alarm for positive transition wait=%" G_GINT64_FORMAT "",
-                          _xsyncvalue_to_int64 (attr.trigger.wait_value));
-                 XSyncChangeAlarm (GDK_DISPLAY (), watch->xalarm_positive, flags, &attr);
-         } else {
--                g_debug ("GSIdleMonitor: creating new alarm for positive transition wait=%lld",
-+                g_debug ("GSIdleMonitor: creating new alarm for positive transition wait=%" G_GINT64_FORMAT "",
-                          _xsyncvalue_to_int64 (attr.trigger.wait_value));
-                 watch->xalarm_positive = XSyncCreateAlarm (GDK_DISPLAY (), flags, &attr);
-         }
- 
-         attr.trigger.test_type = XSyncNegativeTransition;
-         if (watch->xalarm_negative != None) {
--                g_debug ("GSIdleMonitor: updating alarm for negative transition wait=%lld",
-+                g_debug ("GSIdleMonitor: updating alarm for negative transition wait=%" G_GINT64_FORMAT "",
-                          _xsyncvalue_to_int64 (attr.trigger.wait_value));
-                 XSyncChangeAlarm (GDK_DISPLAY (), watch->xalarm_negative, flags, &attr);
-         } else {
--                g_debug ("GSIdleMonitor: creating new alarm for negative transition wait=%lld",
-+                g_debug ("GSIdleMonitor: creating new alarm for negative transition wait=%" G_GINT64_FORMAT "",
-                          _xsyncvalue_to_int64 (attr.trigger.wait_value));
-                 watch->xalarm_negative = XSyncCreateAlarm (GDK_DISPLAY (), flags, &attr);
-         }
diff --git a/meta-gnome/recipes-gnome/gnome-session/gnome-session_2.32.1.bb b/meta-gnome/recipes-gnome/gnome-session/gnome-session_2.32.1.bb
deleted file mode 100644
index c49f2d3..0000000
--- a/meta-gnome/recipes-gnome/gnome-session/gnome-session_2.32.1.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "Gnome session manager"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-PR = "r3"
-
-SECTION = "x11/gnome"
-DEPENDS = "libxtst gtk+ glib-2.0 upower dbus-glib gconf pango gdk-pixbuf-native startup-notification"
-
-inherit gnome
-
-SRC_URI += "file://use_G_GINT64_FORMAT.patch"
-
-SRC_URI[archive.md5sum] = "222bad6b446cb19a6b9028ea24538002"
-SRC_URI[archive.sha256sum] = "22d93ce433fcf9c7ce6b5f36dd81f64e692ea0e41faaa0f61159ddac28c3686a"
-GNOME_COMPRESS_TYPE="bz2"
-
-EXTRA_OECONF = " --with-gtk=2.0 ac_cv_path_GCONF_SANITY_CHECK=set --disable-docbook-docs"
-
-do_configure_append() {
-    for i in $(find ${S} -name "Makefile") ; do
-        sed -i -e s:"GCONFTOOL = .*/usr/bin/gconftool-2":"GCONFTOOL = /usr/bin/gconftool-2":g $i
-        sed -i -e s:"GCONF_SANITY_CHECK = set":"GCONF_SANITY_CHECK = /usr/libexec/gconf-sanity-check-2":g $i
-    done
-}
-
-RRECOMMENDS_${PN} += "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-ck-connector', '', d)}"
-FILES_${PN} += "${datadir}/xsessions ${datadir}/icons ${datadir}/gnome ${libdir}/gnome-session/helpers"
-FILES_${PN}-dbg += "${libexecdir}/gnome-session/helpers/.debug"
-
-# http://errors.yoctoproject.org/Errors/Details/68621/
-PNBLACKLIST[gnome-session] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-settings-daemon/files/0001-Require-libnotify-0.6.0.patch b/meta-gnome/recipes-gnome/gnome-settings-daemon/files/0001-Require-libnotify-0.6.0.patch
deleted file mode 100644
index 6dd33f3..0000000
--- a/meta-gnome/recipes-gnome/gnome-settings-daemon/files/0001-Require-libnotify-0.6.0.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From e1ab570b0dce479ba235e5542ea07d1b5bafc4c9 Mon Sep 17 00:00:00 2001
-From: William Jon McCann <jmccann at redhat.com>
-Date: Mon, 11 Oct 2010 23:35:45 -0400
-Subject: [PATCH] Require libnotify 0.6.0
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
-
-Upstream-Status: Backport
-
----
- configure.ac                                      |  2 +-
- plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c |  8 ++------
- plugins/xrandr/gsd-xrandr-manager.c               | 13 +++----------
- 3 files changed, 6 insertions(+), 17 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 8a90053..8624b2a 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -54,7 +54,7 @@ GTK_REQUIRED_VERSION=2.91.0
- GCONF_REQUIRED_VERSION=2.6.1
- GIO_REQUIRED_VERSION=2.17.3
- GNOME_DESKTOP_REQUIRED_VERSION=2.29.92
--LIBNOTIFY_REQUIRED_VERSION=0.4.3
-+LIBNOTIFY_REQUIRED_VERSION=0.6.1
- 
- EXTRA_COMPILE_WARNINGS(yes)
- 
-diff --git a/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c b/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
-index 9ca820a..f5964b9 100644
---- a/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
-+++ b/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
-@@ -608,9 +608,7 @@ ax_slowkeys_warning_post_bubble (GsdA11yKeyboardManager *manager,
-         gsd_a11y_keyboard_manager_ensure_status_icon (manager);
-         manager->priv->notification = notify_notification_new (title,
-                                                                message,
--                                                               "preferences-desktop-accessibility",
--                                                               NULL);
--        notify_notification_attach_to_status_icon (manager->priv->notification, manager->priv->status_icon);
-+                                                               "preferences-desktop-accessibility");
-         notify_notification_set_timeout (manager->priv->notification, NOTIFICATION_TIMEOUT * 1000);
- 
-         notify_notification_add_action (manager->priv->notification,
-@@ -747,9 +745,7 @@ ax_stickykeys_warning_post_bubble (GsdA11yKeyboardManager *manager,
-         gsd_a11y_keyboard_manager_ensure_status_icon (manager);
-         manager->priv->notification = notify_notification_new (title,
-                                                                message,
--                                                               "preferences-desktop-accessibility",
--                                                               NULL);
--        notify_notification_attach_to_status_icon (manager->priv->notification, manager->priv->status_icon);
-+                                                               "preferences-desktop-accessibility");
-         notify_notification_set_timeout (manager->priv->notification, NOTIFICATION_TIMEOUT * 1000);
- 
-         notify_notification_add_action (manager->priv->notification,
-diff --git a/plugins/xrandr/gsd-xrandr-manager.c b/plugins/xrandr/gsd-xrandr-manager.c
-index 02536a3..ef57d5b 100644
---- a/plugins/xrandr/gsd-xrandr-manager.c
-+++ b/plugins/xrandr/gsd-xrandr-manager.c
-@@ -1084,16 +1084,9 @@ error_message (GsdXrandrManager *mgr, const char *primary_text, GError *error_to
- 
-         g_assert (error_to_display == NULL || secondary_text == NULL);
- 
--        if (priv->status_icon)
--                notification = notify_notification_new_with_status_icon (primary_text,
--                                                                         error_to_display ? error_to_display->message : secondary_text,
--                                                                         GSD_XRANDR_ICON_NAME,
--                                                                         priv->status_icon);
--        else
--                notification = notify_notification_new (primary_text,
--                                                        error_to_display ? error_to_display->message : secondary_text,
--                                                        GSD_XRANDR_ICON_NAME,
--                                                        NULL);
-+        notification = notify_notification_new (primary_text,
-+                                                error_to_display ? error_to_display->message : secondary_text,
-+                                                GSD_XRANDR_ICON_NAME);
- 
-         notify_notification_show (notification, NULL); /* NULL-GError */
- #else
--- 
-2.1.0
-
diff --git a/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_2.32.1.bb b/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_2.32.1.bb
deleted file mode 100644
index 9a18972..0000000
--- a/meta-gnome/recipes-gnome/gnome-settings-daemon/gnome-settings-daemon_2.32.1.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-SUMMARY = "GNOME settings daemon"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-
-PR = "r7"
-
-DEPENDS = "intltool libxxf86misc libsndfile1 libxtst glib-2.0 polkit gtk+ gconf dbus-glib libnotify libgnomekbd libxklavier gnome-doc-utils gnome-desktop"
-
-inherit gnome
-
-SRC_URI = " \
-    git://git.gnome.org/gnome-settings-daemon;branch=gnome-2-32 \
-    file://0001-Require-libnotify-0.6.0.patch \
-"
-SRCREV = "0160f6725cfb872e017f3958f108792c3b882872"
-
-S = "${WORKDIR}/git"
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)}"
-PACKAGECONFIG[pulseaudio] = "--enable-pulse,--disable-pulse,pulseaudio glib-2.0 libcanberra"
-PACKAGECONFIG[smartcard] = "--enable-smartcard-support,--disable-smartcard-support,nss"
-
-EXTRA_OECONF = " \
-    --x-includes=${STAGING_INCDIR} \
-    --x-libraries=${STAGING_LIBDIR} \
-    --enable-polkit \
-"
-
-do_configure_prepend() {
-    sed -i -e 's:-L$libdir::g' -e 's:-I$includedir::g' ${S}/configure.ac
-}
-
-FILES_${PN} += "${libdir}/gnome-settings-daemon-2.0/*.so ${libdir}/gnome-settings-daemon-2.0/*plugin \
-                ${datadir}/dbus-1/ \
-                ${datadir}/icon* \
-                ${datadir}/gnome-control-center \
-                ${datadir}/xsession*"
-
-FILES_${PN}-dbg += "${libdir}/gnome-settings-daemon-2.0/.debug"
-FILES_${PN}-dev += "${libdir}/gnome-settings-daemon-2.0/*.la"
-FILES_${PN}-staticdev += "${libdir}/gnome-settings-daemon-2.0/*.a"
-
-PNBLACKLIST[gnome-settings-daemon] ?= "Depends on blacklisted gnome-desktop - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome-system-monitor/files/0001-Fix-glib-includes.patch b/meta-gnome/recipes-gnome/gnome-system-monitor/files/0001-Fix-glib-includes.patch
deleted file mode 100644
index ace1b00..0000000
--- a/meta-gnome/recipes-gnome/gnome-system-monitor/files/0001-Fix-glib-includes.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 8587e35af52f7773f62361be2e72ddf286a59185 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Tue, 15 May 2012 13:02:02 +0200
-Subject: [PATCH] Fix glib includes
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-Upstream-Status: unknown
-
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- src/interface.h       |    2 +-
- src/load-graph.h      |    2 +-
- src/lsof.h            |    2 +-
- src/openfiles.h       |    2 +-
- src/procman_gnomesu.h |    2 +-
- src/util.cpp          |    2 +-
- 6 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/src/interface.h b/src/interface.h
-index 4bda35a..b26b670 100644
---- a/src/interface.h
-+++ b/src/interface.h
-@@ -20,7 +20,7 @@
- #ifndef _PROCMAN_INTERFACE_H_
- #define _PROCMAN_INTERFACE_H_
- 
--#include <glib/gtypes.h>
-+#include <glib.h>
- #include <gtk/gtk.h>
- #include "procman.h"
- 
-diff --git a/src/load-graph.h b/src/load-graph.h
-index 6111c78..6e7a599 100644
---- a/src/load-graph.h
-+++ b/src/load-graph.h
-@@ -1,7 +1,7 @@
- #ifndef _PROCMAN_LOAD_GRAPH_H_
- #define _PROCMAN_LOAD_GRAPH_H_
- 
--#include <glib/gtypes.h>
-+#include <glib.h>
- #include <glibtop/cpu.h>
- 
- enum
-diff --git a/src/lsof.h b/src/lsof.h
-index ad7f111..da420e2 100644
---- a/src/lsof.h
-+++ b/src/lsof.h
-@@ -1,7 +1,7 @@
- #ifndef H_PROCMAN_LSOF_1161179202
- #define H_PROCMAN_LSOF_1161179202
- 
--#include <glib/gmacros.h>
-+#include <glib.h>
- #include "procman.h"
- 
- void procman_lsof(ProcData *data);
-diff --git a/src/openfiles.h b/src/openfiles.h
-index 38b1cc8..a8b7b05 100644
---- a/src/openfiles.h
-+++ b/src/openfiles.h
-@@ -1,7 +1,7 @@
- #ifndef _OPENFILES_H_
- #define _OPENFILES_H_
- 
--#include <glib/gtypes.h>
-+#include <glib.h>
- 
- #include "procman.h"
- 
-diff --git a/src/procman_gnomesu.h b/src/procman_gnomesu.h
-index fec2650..474ca9a 100644
---- a/src/procman_gnomesu.h
-+++ b/src/procman_gnomesu.h
-@@ -1,7 +1,7 @@
- #ifndef H_GNOME_SYSTEM_MONITOR_GNOMESU_H_1132171917
- #define H_GNOME_SYSTEM_MONITOR_GNOMESU_H_1132171917
- 
--#include <glib/gtypes.h>
-+#include <glib.h>
- 
- gboolean
- procman_gnomesu_create_root_password_dialog(const char * message);
-diff --git a/src/util.cpp b/src/util.cpp
-index 9b1c9f5..90073fe 100644
---- a/src/util.cpp
-+++ b/src/util.cpp
-@@ -1,7 +1,7 @@
- #include <config.h>
- 
- #include <glib/gi18n.h>
--#include <glib/gstring.h>
-+#include <glib.h>
- #include <gtk/gtk.h>
- 
- #include <glibtop/proctime.h>
--- 
-1.7.6.5
-
diff --git a/meta-gnome/recipes-gnome/gnome-system-monitor/files/0002-src-procman.cpp-include-main-gtkmm.h.patch b/meta-gnome/recipes-gnome/gnome-system-monitor/files/0002-src-procman.cpp-include-main-gtkmm.h.patch
deleted file mode 100644
index 7b67281..0000000
--- a/meta-gnome/recipes-gnome/gnome-system-monitor/files/0002-src-procman.cpp-include-main-gtkmm.h.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From acff719983aa1294148dc4a367c48957f5510eff Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Fri, 17 May 2013 18:25:56 +0200
-Subject: [PATCH] src/procman.cpp: include main gtkmm.h
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-after update of gtkmm build failed with:
-
-In file included from /home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gtkmm-2.4/gtkmm/main.h:33:0,
-                 from procman.cpp:26:
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:92:7: error: 'Value' is not a template
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:92:54: error: expected template-name before '<' token
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:92:54: error: expected '{' before '<' token
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:92:54: error: expected unqualified-id before '<' token
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:174:7: error: 'Value' is not a template
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:174:30: error: 'Glib::Value' is not a template type
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:174:58: error: expected template-name before '<' token
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:207:7: error: 'Value' is not a template
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:207:24: error: 'Glib::Value' is not a template type
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:207:51: error: expected template-name before '<' token
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:274:7: error: 'Value' is not a template
-/home/Superandy/tmp/oe-core-eglibc/sysroots/overo/usr/include/gdkmm-2.4/gdkmm/types.h:274:32: error: 'Glib::Value' is not a template type
-<...>
-
-Upstream-Status: Backport
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- src/procman.cpp |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/procman.cpp b/src/procman.cpp
-index b5c0d0a..d9b4b3f 100644
---- a/src/procman.cpp
-+++ b/src/procman.cpp
-@@ -23,7 +23,7 @@
- 
- #include <locale.h>
- 
--#include <gtkmm/main.h>
-+#include <gtkmm.h>
- #include <giomm/volumemonitor.h>
- #include <giomm/init.h>
- #include <glib.h>
--- 
-1.7.4.4
-
diff --git a/meta-gnome/recipes-gnome/gnome-system-monitor/files/Remove-pkg-config-check-for-gnome-icon-theme.patch b/meta-gnome/recipes-gnome/gnome-system-monitor/files/Remove-pkg-config-check-for-gnome-icon-theme.patch
deleted file mode 100644
index 3c5169e..0000000
--- a/meta-gnome/recipes-gnome/gnome-system-monitor/files/Remove-pkg-config-check-for-gnome-icon-theme.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 36fd2aa23e712f05f0cce4a1be3453fcf405d026 Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen <jussi.kukkonen at intel.com>
-Date: Tue, 15 Sep 2015 16:28:18 +0300
-Subject: [PATCH] Remove pkg-config check for gnome-icon-theme
-
-Theme is not required for building, and the icons are provided by
-adwaita-icon-theme anyway
-
-Upstream-Status: Inappropriate [Fixed in current versions]
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen at intel.com>
----
- configure.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.in b/configure.in
-index 3600823..42262f2 100644
---- a/configure.in
-+++ b/configure.in
-@@ -37,7 +37,7 @@ LIBXML_REQUIRED=2.0
- RSVG_REQUIRED=2.12
- DBUS_REQUIRED=0.7
- 
--PKG_CHECK_MODULES(PROCMAN, glib-2.0 >= $GLIB_REQUIRED gconf-2.0 >= $GCONF_REQUIRED libgtop-2.0 >= $LIBGTOP_REQUIRED libwnck-1.0 >= $LIBWNCK_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gnome-icon-theme >= $GNOME_ICON_THEME_REQUIRED gtkmm-2.4 >= $GTKMM_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED librsvg-2.0 >= $RSVG_REQUIRED glibmm-2.4 >= $GLIBMM_REQUIRED giomm-2.4 >= $GIOMM_REQUIRED dbus-glib-1 >= $DBUS_REQUIRED)
-+PKG_CHECK_MODULES(PROCMAN, glib-2.0 >= $GLIB_REQUIRED gconf-2.0 >= $GCONF_REQUIRED libgtop-2.0 >= $LIBGTOP_REQUIRED libwnck-1.0 >= $LIBWNCK_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gtkmm-2.4 >= $GTKMM_REQUIRED libxml-2.0 >= $LIBXML_REQUIRED librsvg-2.0 >= $RSVG_REQUIRED glibmm-2.4 >= $GLIBMM_REQUIRED giomm-2.4 >= $GIOMM_REQUIRED dbus-glib-1 >= $DBUS_REQUIRED)
- 
- 
- AC_ARG_ENABLE(more-warnings,
--- 
-2.1.4
-
diff --git a/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_2.28.2.bb b/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_2.28.2.bb
deleted file mode 100644
index 4b397bf..0000000
--- a/meta-gnome/recipes-gnome/gnome-system-monitor/gnome-system-monitor_2.28.2.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Gnome system monitor"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-SECTION = "x11/gnome"
-PR = "r2"
-
-DEPENDS = "libgtop gtkmm glibmm gnome-doc-utils libwnck gtk+ dbus-glib librsvg intltool-native gnome-common-native"
-
-inherit gnome
-SRC_URI[archive.md5sum] = "3f0bca9b0ebc7a365466851cd580d167"
-SRC_URI[archive.sha256sum] = "b628edfd39e3a6b374ce133f367d3568475eb4e981a367f4f9d62a9784e5ae59"
-GNOME_COMPRESS_TYPE="bz2"
-SRC_URI += " \
-    file://0001-Fix-glib-includes.patch \
-    file://0002-src-procman.cpp-include-main-gtkmm.h.patch \
-    file://Remove-pkg-config-check-for-gnome-icon-theme.patch \
-"
-
-do_configure_prepend() {
-    sed -i -e s:help::g ${S}/Makefile.am
-}
-
-CXXFLAGS += "--std=c++11"
-
-RRECOMMENDS_${PN} = "adwaita-icon-theme"
-
-FILES_${PN} += "${datadir}/icons \
-                ${datadir}/dbus-1 \
-                ${datadir}/gnome/autostart \
-"
-
-FILES_${PN}-doc += "${datadir}/omf \
-                    ${datadir}/gnome/help "
-
-PNBLACKLIST[gnome-system-monitor] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/131635/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome/gnome-terminal/0001-Makefile.am-do-not-build-help.patch b/meta-gnome/recipes-gnome/gnome/gnome-terminal/0001-Makefile.am-do-not-build-help.patch
deleted file mode 100644
index d7874e4..0000000
--- a/meta-gnome/recipes-gnome/gnome/gnome-terminal/0001-Makefile.am-do-not-build-help.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From d2549d3ef08536be6d141524e3382fef07fea8bf Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Tue, 30 Apr 2013 19:48:27 +0200
-Subject: [PATCH] Makefile.am: do not build help
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- Makefile.am |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 89f7ee4..31e11ab 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,4 +1,4 @@
--SUBDIRS = src po help
-+SUBDIRS = src po
- 
- NULL =
- 
--- 
-1.7.6.5
-
diff --git a/meta-gnome/recipes-gnome/gnome/gnome-terminal_2.30.2.bb b/meta-gnome/recipes-gnome/gnome/gnome-terminal_2.30.2.bb
deleted file mode 100644
index 6b3bf76..0000000
--- a/meta-gnome/recipes-gnome/gnome/gnome-terminal_2.30.2.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "GNOME Terminal"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5b51eba4ba4cafe64073227530c061ed"
-DEPENDS = "gtk+ glib-2.0 startup-notification dbus-glib vte9 gnome-doc-utils intltool-native"
-PR = "r1"
-
-inherit gnome
-
-SRC_URI += " \
-    file://0001-Makefile.am-do-not-build-help.patch \
-"
-
-EXTRA_OECONF += "--disable-scrollkeeper"
-
-SRC_URI[archive.md5sum] = "74c4528f00067072c2bd867d1f8fe844"
-SRC_URI[archive.sha256sum] = "2c7af2250698b9f9f53c6eaa93211c1118cf2c7e29cbbacfd1e8a6a10069e07a"
-GNOME_COMPRESS_TYPE="bz2"
-
-RRECOMMENDS_${PN} += "gnome-common-schemas"
-
-# http://errors.yoctoproject.org/Errors/Details/68636/
-PNBLACKLIST[gnome-terminal] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome/libgnomecups_0.2.3.bb b/meta-gnome/recipes-gnome/gnome/libgnomecups_0.2.3.bb
deleted file mode 100644
index 3480712..0000000
--- a/meta-gnome/recipes-gnome/gnome/libgnomecups_0.2.3.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-DESCRIPTION="Gnome Cups Manager"
-LICENSE="GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-DEPENDS="glib-2.0 gtk+ pango cups intltool libgnomeui"
-
-PR = "r2"
-
-inherit gnomebase pkgconfig
-
-do_compile_append () {
-    cp libgnomecups-1.0.pc libgnomecups-1.0.pc.old
-    sed 's:${STAGING_DIR_HOST}::' < libgnomecups-1.0.pc.old > libgnomecups-1.0.pc
-}
-
-SRC_URI += "\
-    file://libgnomecups-0.2.3-glib.h.patch \
-    file://libgnomecups-0.2.3-cups-1.6.patch \
-"
-
-SRC_URI[archive.md5sum] = "dc4920c15c9f886f73ea74fbff0ae48b"
-SRC_URI[archive.sha256sum] = "e130e80942b386de19a288a4c194ff3dbe9140315b31e982058c8bffbb6a1d29"
-GNOME_COMPRESS_TYPE="bz2"
-
-PNBLACKLIST[libgnomecups] ?= "Depends on blacklisted libgnomeui - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnome/libgnomeprint/0001-configure-use-pkgconfig-for-freetype.patch b/meta-gnome/recipes-gnome/gnome/libgnomeprint/0001-configure-use-pkgconfig-for-freetype.patch
deleted file mode 100644
index 174985a..0000000
--- a/meta-gnome/recipes-gnome/gnome/libgnomeprint/0001-configure-use-pkgconfig-for-freetype.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From ed31fd89f4c77d89390774d29427898a85b25ab1 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen at dominion.thruhere.net>
-Date: Fri, 1 Aug 2014 13:58:36 +0200
-Subject: [PATCH] configure: use pkgconfig for freetype
-
-Upstream-status: Pending
-Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
----
- configure.in | 12 +++++-------
- 1 file changed, 5 insertions(+), 7 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 729278d..e569429 100644
---- a/configure.in
-+++ b/configure.in
-@@ -164,13 +164,11 @@ dnl Checking for freetype2
- dnl =================================
- FREETYPE_LIBS=
- FREETYPE_CFLAGS=
--AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no)
--if test "x$FREETYPE_CONFIG" = "xno" ; then
--	AC_MSG_ERROR(You need FreeType2 (freetype-devel v 2.x package) for this version of libgnomeprint)
--else
--	FREETYPE_CFLAGS=`$FREETYPE_CONFIG --cflags`
--	FREETYPE_LIBS=`$FREETYPE_CONFIG --libs`
--fi
-+PKG_CHECK_MODULES(FREETYPE2, freetype2, 
-+    FREETYPE_CFLAGS="$CFLAGS $FREETYPE2_CFLAGS"
-+    FREETYPE_LIBS="$LIBS $FREETYPE2_LIBS",
-+    AC_MSG_ERROR([*** Unable to find FreeType2 library (http://www.freetype.org/)])
-+)
- 
- libgnomeprint_save_ldflags=$LDFLAGS
- LDFLAGS="$LDFLAGS $FREETYPE_LIBS"
--- 
-1.9.0
-
diff --git a/meta-gnome/recipes-gnome/gnome/libgnomeprint/bison3-support.patch b/meta-gnome/recipes-gnome/gnome/libgnomeprint/bison3-support.patch
deleted file mode 100644
index 29d410a..0000000
--- a/meta-gnome/recipes-gnome/gnome/libgnomeprint/bison3-support.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Index: libgnomeprint-2.18.8/libgnomeprint/grammar.y
-===================================================================
---- libgnomeprint-2.18.8.orig/libgnomeprint/grammar.y
-+++ libgnomeprint-2.18.8/libgnomeprint/grammar.y
-@@ -99,7 +99,7 @@ gnome_print_filter_parse_prop (GnomePrin
- }
- 
- static int yylex (void *lvalp);
--static int yyerror (const char *s);
-+static int yyerror (graph_t *g, const char *s);
- %}
- 
- %union {
-@@ -117,6 +117,7 @@ static int yyerror (const char *s);
- %type <p> pool
- 
- %pure_parser
-+%parse-param { graph_t *graph }
- 
- %start graph
- %%
-@@ -185,7 +186,7 @@ graph: filter {
- %%
- 
- static int
--yyerror (const char *s)
-+yyerror (graph_t *g, const char *s)
- {
- 	return -1;
- }
diff --git a/meta-gnome/recipes-gnome/gnome/libgnomeprint/fix.includes.patch b/meta-gnome/recipes-gnome/gnome/libgnomeprint/fix.includes.patch
deleted file mode 100644
index 53235a1..0000000
--- a/meta-gnome/recipes-gnome/gnome/libgnomeprint/fix.includes.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -uNr libgnomeprint-2.18.7.orig/libgnomeprint/modules/cups/gnome-print-cups-transport.c libgnomeprint-2.18.7/libgnomeprint/modules/cups/gnome-print-cups-transport.c
---- libgnomeprint-2.18.7.orig/libgnomeprint/modules/cups/gnome-print-cups-transport.c	2009-04-19 19:45:36.000000000 +0200
-+++ libgnomeprint-2.18.7/libgnomeprint/modules/cups/gnome-print-cups-transport.c	2012-12-23 12:34:52.058643537 +0100
-@@ -35,6 +35,7 @@
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <unistd.h>
-+#include <stdio.h>
- #include <locale.h>
- 
- #include <cups/cups.h>
diff --git a/meta-gnome/recipes-gnome/gnome/libgnomeprint/freetype.patch b/meta-gnome/recipes-gnome/gnome/libgnomeprint/freetype.patch
deleted file mode 100644
index 7a27ecd..0000000
--- a/meta-gnome/recipes-gnome/gnome/libgnomeprint/freetype.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-Use proper method to include freetype headers
-
-FreeType wants to use these special macros to include its APIs
-so be it.
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-Upstream-Status: Pending
-
-Index: libgnomeprint-2.18.7/libgnomeprint/gnome-font-face.c
-===================================================================
---- libgnomeprint-2.18.7.orig/libgnomeprint/gnome-font-face.c
-+++ libgnomeprint-2.18.7/libgnomeprint/gnome-font-face.c
-@@ -36,7 +36,9 @@
- #include <stdarg.h>
- #include <locale.h>
- 
--#include <freetype/ftoutln.h>
-+#include <ft2build.h>
-+#include FT_FREETYPE_H
-+
- 
- #include <libgnomeprint/gnome-print-private.h>
- #include <libgnomeprint/gnome-font-private.h>
-Index: libgnomeprint-2.18.7/libgnomeprint/gnome-rfont.c
-===================================================================
---- libgnomeprint-2.18.7.orig/libgnomeprint/gnome-rfont.c
-+++ libgnomeprint-2.18.7/libgnomeprint/gnome-rfont.c
-@@ -28,8 +28,8 @@
- 
- #include <ft2build.h>
- #include FT_FREETYPE_H
--#include <freetype/ftglyph.h>
--#include <freetype/ftbbox.h>
-+#include FT_GLYPH_H
-+#include FT_BBOX_H
- #include <libart_lgpl/art_misc.h>
- #include <libart_lgpl/art_affine.h>
- #include <libart_lgpl/art_vpath.h>
diff --git a/meta-gnome/recipes-gnome/gnome/libgnomeprint_2.18.8.bb b/meta-gnome/recipes-gnome/gnome/libgnomeprint_2.18.8.bb
deleted file mode 100644
index a462a4b..0000000
--- a/meta-gnome/recipes-gnome/gnome/libgnomeprint_2.18.8.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-LICENSE = "GPLv2"
-SECTION = "x11/gnome/libs"
-
-DEPENDS = "bison-native flex-native libxml2 libgnomecups glib-2.0 pango libart-lgpl fontconfig popt gnome-common freetype"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-inherit gnomebase
-
-SRC_URI += "file://fix.includes.patch \
-            file://freetype.patch \
-            file://0001-configure-use-pkgconfig-for-freetype.patch \
-            file://bison3-support.patch \
-           "
-SRC_URI[archive.md5sum] = "63b05ffb5386e131487c6af30f4c56ac"
-SRC_URI[archive.sha256sum] = "1034ec8651051f84d2424e7a1da61c530422cc20ce5b2d9e107e1e46778d9691"
-GNOME_COMPRESS_TYPE="bz2"
-
-FILES_${PN}-dbg += "\
-    ${libdir}/${PN}/${PV}/modules/.debug \
-    ${libdir}/${PN}/${PV}/modules/*/.debug \
-"
-FILES_${PN}-staticdev += "\
-    ${libdir}/${PN}/${PV}/modules/*.a \
-    ${libdir}/${PN}/${PV}/modules/*/*.a \
-"
-
-PNBLACKLIST[libgnomeprint] ?= "Depends on broken libgnomecups - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gnumeric/gnumeric/0001-configure.in-drop-introspection-macros-replace-them-.patch b/meta-gnome/recipes-gnome/gnumeric/gnumeric/0001-configure.in-drop-introspection-macros-replace-them-.patch
deleted file mode 100644
index 914d2cc..0000000
--- a/meta-gnome/recipes-gnome/gnumeric/gnumeric/0001-configure.in-drop-introspection-macros-replace-them-.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From de5f0a535d6ea1932d2c7de53bd33510c8682ee7 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin at gmail.com>
-Date: Mon, 22 Feb 2016 16:34:03 +0200
-Subject: [PATCH] configure.in: drop introspection macros, replace them with a
- standard one
-
-Upstream-Status: Pending
-Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
----
- configure.in | 57 +--------------------------------------------------------
- 1 file changed, 1 insertion(+), 56 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 8e1aa37..3086503 100644
---- a/configure.in
-+++ b/configure.in
-@@ -934,63 +934,8 @@ AC_SUBST(MONO_CFLAGS)
- AC_SUBST(MONO_LIBS)
- ])
- 
--# GObject Introspection
--GIR_REQ=1.0.0
--AC_ARG_ENABLE(introspection,
--          AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]],
--                         [Enable introspection for this build]),, 
--                         [enable_introspection=no])
--
--AC_MSG_CHECKING([for gobject-introspection])
--
--dnl presence/version checking
--AS_CASE([$enable_introspection],
--[no], [
--    found_introspection="no (disabled, use --enable-introspection to enable)"
--],
--[yes],[
--    PKG_CHECK_EXISTS([gobject-introspection-1.0],,
--                     AC_MSG_ERROR([gobject-introspection-1.0 is not installed]))
--    PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $GIR_REQ],
--                     found_introspection=yes,
--                     AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME]))
--],
--[auto],[
--    PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $GIR_REQ], found_introspection=yes, found_introspection=no)
--dnl Canonicalize enable_introspection
--enable_introspection=$found_introspection
--],
--[	
--    AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@])
--])
-+GOBJECT_INTROSPECTION_CHECK([1.46.0])
- 
--AC_MSG_RESULT([$found_introspection])
--
--INTROSPECTION_SCANNER=
--INTROSPECTION_COMPILER=
--INTROSPECTION_GENERATE=
--INTROSPECTION_GIRDIR=
--INTROSPECTION_TYPELIBDIR=
--if test "x$found_introspection" = "xyes"; then
--   INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
--   INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
--   INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
--   INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
--   INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
--   INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
--   INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
--   INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
--fi
--AC_SUBST(INTROSPECTION_SCANNER)
--AC_SUBST(INTROSPECTION_COMPILER)
--AC_SUBST(INTROSPECTION_GENERATE)
--AC_SUBST(INTROSPECTION_GIRDIR)
--AC_SUBST(INTROSPECTION_TYPELIBDIR)
--AC_SUBST(INTROSPECTION_CFLAGS)
--AC_SUBST(INTROSPECTION_LIBS)
--AC_SUBST(INTROSPECTION_MAKEFILE)
--
--AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes")
- dnl we need to change the install directories for distcheck
- AC_ARG_WITH([gir-dir],
- 	AS_HELP_STRING(
--- 
-2.7.0
-
diff --git a/meta-gnome/recipes-gnome/gnumeric/gnumeric/do-not-use-srcdir.patch b/meta-gnome/recipes-gnome/gnumeric/gnumeric/do-not-use-srcdir.patch
deleted file mode 100644
index cc81b1f..0000000
--- a/meta-gnome/recipes-gnome/gnumeric/gnumeric/do-not-use-srcdir.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: gnumeric-1.12.0/test/Makefile.am
-===================================================================
---- gnumeric-1.12.0.orig/test/Makefile.am	2011-05-17 17:54:24.000000000 -0700
-+++ gnumeric-1.12.0/test/Makefile.am	2013-10-17 20:28:19.920618596 -0700
-@@ -25,7 +25,9 @@
- #
- # 90xx: Misc stuff.
- 
--TESTS = $(sort $(wildcard $(srcdir)/t[0-9][0-9][0-9][0-9]-*.pl))
-+TESTS_EXTENSIONS=.pl
-+TESTS = @auto_find_tests@
-+
- SUPPS = common.supp commondots.supp gui.supp t8003-valgrind-pdf.supp
- 
- import-db:
diff --git a/meta-gnome/recipes-gnome/gnumeric/gnumeric_1.12.0.bb b/meta-gnome/recipes-gnome/gnumeric/gnumeric_1.12.0.bb
deleted file mode 100644
index 49d0fe9..0000000
--- a/meta-gnome/recipes-gnome/gnumeric/gnumeric_1.12.0.bb
+++ /dev/null
@@ -1,49 +0,0 @@
-LICENSE = "GPLv2 | GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=be0de417af78dd340558810d1ced52e6"
-SECTION = "x11/utils"
-S = "${WORKDIR}/gnumeric-${PV}"
-DEPENDS = "gdk-pixbuf libgsf gtk+3 libxml2 libglade libart-lgpl intltool-native libgnomecanvas libgnomeprint libbonoboui orbit2-native goffice"
-SUMMARY = "Gnumeric spreadsheet for GNOME"
-
-GNOME_COMPRESS_TYPE = "xz"
-
-inherit gnome pythonnative gobject-introspection
-
-SRC_URI += "file://do-not-use-srcdir.patch \
-            file://0001-configure.in-drop-introspection-macros-replace-them-.patch"
-
-SRC_URI[archive.md5sum] = "3fd87cca95334b5d8ac922989670fe27"
-SRC_URI[archive.sha256sum] = "037b53d909e5d1454b2afda8c4fb1e7838e260343e36d4e36245f4a5d0e04111"
-
-
-EXTRA_OECONF=" --without-perl "
-
-PACKAGES_DYNAMIC += "gnumeric-plugin-*"
-PACKAGES += "libspreadsheet libspreadsheet-dev gnumeric-goffice gnumeric-goffice-dbg"
-
-FILES_${PN}-dbg += "${libdir}/gnumeric/${PV}/plugins/*/.debug"
-FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig"
-FILES_${PN}-staticdev = "${libdir}/libspreadsheet.la"
-FILES_libspreadsheet = "${libdir}/libspreadsheet-${PV}.so"
-FILES_libspreadsheet-dev = "${libdir}/libspreadsheet.so"
-FILES_gnumeric-goffice-dbg += "${libdir}/goffice/*/plugins/gnumeric/.debug"
-FILES_gnumeric-goffice = "${libdir}/goffice/*/plugins/gnumeric/*"
-
-# This hack works around the problem mentioned here:
-# https://mail.gnome.org/archives/gnumeric-list/2010-February/msg00006.html
-do_install_prepend() {
-    sed -i ${B}/doc/C/Makefile -e 's/\tfor file in $(omffile); do/\t-for file in $(omffile); do/'
-}
-
-python populate_packages_prepend () {
-    gnumeric_libdir = bb.data.expand('${libdir}/gnumeric/${PV}/plugins', d)
-
-    do_split_packages(d, gnumeric_libdir, '^(.*)/.*$',
-        output_pattern='gnumeric-plugin-%s',
-        description='Gnumeric plugin %s',
-        extra_depends='',
-        recursive=True,
-        prepend=True)
-}
-
-PNBLACKLIST[gnumeric] ?= "Depends on broken libgnomeprint - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gthumb/files/0001-Drop-help-directory-from-build.patch b/meta-gnome/recipes-gnome/gthumb/files/0001-Drop-help-directory-from-build.patch
deleted file mode 100644
index d116968..0000000
--- a/meta-gnome/recipes-gnome/gthumb/files/0001-Drop-help-directory-from-build.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 48cb878cb724e7a509260f014db6365510b8b541 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin at gmail.com>
-Date: Tue, 17 May 2016 14:05:29 +0300
-Subject: [PATCH] Drop help directory from build
-
-It hardcodes the use of xml2po tool form gnome-doc-utils
-
-Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
----
- Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index d056875..3fc4a41 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,4 +1,4 @@
--SUBDIRS = m4 copy-n-paste data po gthumb extensions tests help
-+SUBDIRS = m4 copy-n-paste data po gthumb extensions tests
- 
- ACLOCAL_AMFLAGS = -I m4
- AMCFLAGS = -fPIC -DPIC
--- 
-2.8.1
-
diff --git a/meta-gnome/recipes-gnome/gthumb/files/parallel.patch b/meta-gnome/recipes-gnome/gthumb/files/parallel.patch
deleted file mode 100644
index 20ce5c5..0000000
--- a/meta-gnome/recipes-gnome/gthumb/files/parallel.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-From 34969cde1dcb7740b4a7c3b6e3d04d481e5980b5 Mon Sep 17 00:00:00 2001
-From: Ross Burton <ross.burton at intel.com>
-Date: Tue, 31 Jul 2012 17:26:27 +0100
-Subject: [PATCH] build: Fix parallel build problems with enum generation
-
-This is a backport from a patch against master.
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=680925]
----
- extensions/file_tools/Makefile.am    |   10 ++++------
- extensions/importer/Makefile.am      |   10 ++++------
- extensions/pixbuf_savers/Makefile.am |   10 ++++------
- gthumb/Makefile.am                   |   10 ++++------
- 4 files changed, 16 insertions(+), 24 deletions(-)
-
-diff --git a/extensions/file_tools/Makefile.am b/extensions/file_tools/Makefile.am
-index 7785eff..d70a8a5 100644
---- a/extensions/file_tools/Makefile.am
-+++ b/extensions/file_tools/Makefile.am
-@@ -24,17 +24,16 @@ HEADER_FILES = 				\
- 	gth-file-tool-undo.h		\
- 	preferences.h
- 
--enum-types.h: $(HEADER_FILES) $(GLIB_MKENUMS)
-+enum-types.h: $(HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#ifndef ENUM_TYPES_H\n#define ENUM_TYPES_H\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
- 		--fprod "/* enumerations from \"@filename@\" */\n" \
- 		--vhead "GType @enum_name at _get_type (void);\n#define GTH_TYPE_ at ENUMSHORT@ (@enum_name at _get_type())\n" \
- 		--ftail "G_END_DECLS\n\n#endif /* ENUM_TYPES_H */" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) enum-types.h || cp xgen-$(@F) enum-types.h ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) enum-types.h )
- 
--enum-types.c: $(HEADER_FILES) enum-types.h
-+enum-types.c: $(HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#include <glib-object.h>\n" \
- 		--fprod "\n/* enumerations from \"@filename@\" */\n#include \"@filename@\"" \
-@@ -42,8 +41,7 @@ enum-types.c: $(HEADER_FILES) enum-types.h
- 		--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- 		--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_ at type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) enum-types.c || cp xgen-$(@F) enum-types.c ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) enum-types.c )
- 
- libfile_tools_la_SOURCES = 		\
- 	$(ENUM_TYPES)			\
-diff --git a/extensions/importer/Makefile.am b/extensions/importer/Makefile.am
-index 29e7f2c..07c1eba 100644
---- a/extensions/importer/Makefile.am
-+++ b/extensions/importer/Makefile.am
-@@ -14,17 +14,16 @@ HEADER_FILES = 					\
- 	preferences.h				\
- 	utils.h
- 
--gth-import-enum-types.h: $(HEADER_FILES) $(GLIB_MKENUMS)
-+gth-import-enum-types.h: $(HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#ifndef ENUM_TYPES_H\n#define ENUM_TYPES_H\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
- 		--fprod "/* enumerations from \"@filename@\" */\n" \
- 		--vhead "GType @enum_name at _get_type (void);\n#define GTH_TYPE_ at ENUMSHORT@ (@enum_name at _get_type())\n" \
- 		--ftail "G_END_DECLS\n\n#endif /* ENUM_TYPES_H */" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) gth-import-enum-types.h || cp xgen-$(@F) gth-import-enum-types.h ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) gth-import-enum-types.h )
- 
--gth-import-enum-types.c: $(HEADER_FILES) gth-import-enum-types.h
-+gth-import-enum-types.c: $(HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#include <glib-object.h>\n" \
- 		--fprod "\n/* enumerations from \"@filename@\" */\n#include \"@filename@\"" \
-@@ -32,8 +31,7 @@ gth-import-enum-types.c: $(HEADER_FILES) gth-import-enum-types.h
- 		--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- 		--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_ at type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) gth-import-enum-types.c || cp xgen-$(@F) gth-import-enum-types.c ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) gth-import-enum-types.c )
- 
- libimporter_la_SOURCES = 			\
- 	$(ENUM_TYPES)				\
-diff --git a/extensions/pixbuf_savers/Makefile.am b/extensions/pixbuf_savers/Makefile.am
-index bfe9f34..4764c32 100644
---- a/extensions/pixbuf_savers/Makefile.am
-+++ b/extensions/pixbuf_savers/Makefile.am
-@@ -10,17 +10,16 @@ ENUM_TYPES =				\
- HEADER_FILES = 				\
- 	preferences.h
- 
--enum-types.h: $(HEADER_FILES) $(GLIB_MKENUMS)
-+enum-types.h: $(HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#ifndef ENUM_TYPES_H\n#define ENUM_TYPES_H\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
- 		--fprod "/* enumerations from \"@filename@\" */\n" \
- 		--vhead "GType @enum_name at _get_type (void);\n#define GTH_TYPE_ at ENUMSHORT@ (@enum_name at _get_type())\n" \
- 		--ftail "G_END_DECLS\n\n#endif /* ENUM_TYPES_H */" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) enum-types.h || cp xgen-$(@F) enum-types.h ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) enum-types.h )
- 
--enum-types.c: $(HEADER_FILES) enum-types.h
-+enum-types.c: $(HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#include <glib-object.h>\n" \
- 		--fprod "\n/* enumerations from \"@filename@\" */\n#include \"@filename@\"" \
-@@ -28,8 +27,7 @@ enum-types.c: $(HEADER_FILES) enum-types.h
- 		--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- 		--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_ at type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) enum-types.c || cp xgen-$(@F) enum-types.c ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) enum-types.c )
- 
- libpixbuf_savers_la_SOURCES = 	\
- 	$(ENUM_TYPES)		\
-diff --git a/gthumb/Makefile.am b/gthumb/Makefile.am
-index e9e385e..2f14e03 100644
---- a/gthumb/Makefile.am
-+++ b/gthumb/Makefile.am
-@@ -296,17 +296,16 @@ gthumb_CFLAGS =							\
- 	-DGTHUMB_EXTENSIONS_DIR=\"$(extensions_dir)\"		\
- 	$(NULL)
- 
--gth-enum-types.h: $(PUBLIC_HEADER_FILES) $(GLIB_MKENUMS)
-+gth-enum-types.h: $(PUBLIC_HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#ifndef GTH_ENUM_TYPES_H\n#define GTH_ENUM_TYPES_H\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
- 		--fprod "/* enumerations from \"@filename@\" */\n" \
- 		--vhead "GType @enum_name at _get_type (void);\n#define GTH_TYPE_ at ENUMSHORT@ (@enum_name at _get_type())\n" \
- 		--ftail "G_END_DECLS\n\n#endif /* GTH_ENUM_TYPES_H */" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) gth-enum-types.h || cp xgen-$(@F) gth-enum-types.h ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) gth-enum-types.h )
- 
--gth-enum-types.c: $(PUBLIC_HEADER_FILES) gth-enum-types.h
-+gth-enum-types.c: $(PUBLIC_HEADER_FILES)
- 	$(AM_V_GEN)( $(GLIB_MKENUMS) \
- 		--fhead "#include <glib-object.h>\n" \
- 		--fprod "\n/* enumerations from \"@filename@\" */\n#include \"@filename@\"" \
-@@ -314,8 +313,7 @@ gth-enum-types.c: $(PUBLIC_HEADER_FILES) gth-enum-types.h
- 		--vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
- 		--vtail "      { 0, NULL, NULL }\n    };\n    etype = g_ at type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
- 		$^> xgen-$(@F) \
--	&& (cmp -s xgen-$(@F) gth-enum-types.c || cp xgen-$(@F) gth-enum-types.c ) \
--	&& rm -f xgen-$(@F) )
-+	&& mv -f xgen-$(@F) gth-enum-types.c )
- 
- gth-marshal.h: gth-marshal.list $(GLIB_GENMARSHAL)
- 	$(AM_V_GEN)( $(GLIB_GENMARSHAL) $(srcdir)/gth-marshal.list --header --prefix=gth_marshal > $@ )
--- 
-1.7.10.4
-
diff --git a/meta-gnome/recipes-gnome/gthumb/gthumb_2.12.4.bb b/meta-gnome/recipes-gnome/gthumb/gthumb_2.12.4.bb
deleted file mode 100644
index 62d3df9..0000000
--- a/meta-gnome/recipes-gnome/gthumb/gthumb_2.12.4.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "gThumb is an image viewer and browser for the GNOME Desktop"
-SECTION = "x11/gnome"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-DEPENDS = "gnome-common-native glib-2.0 gtk+ libxml2 gnome-doc-utils libunique gconf libpng gstreamer jpeg tiff gst-plugins-base intltool-native gconf-native"
-
-PR = "r4"
-
-EXTRA_OECONF = "--disable-gnome-keyring --disable-libsoup --disable-exiv2 --disable-clutter"
-
-inherit gnome pkgconfig
-
-SRC_URI[archive.md5sum] = "97fc13221b0c5d80c27a2e25a3a3ac6f"
-SRC_URI[archive.sha256sum] = "cf809695230ab8892a078be454a42ade865754c72ec1da7c3d74d4310de54f1d"
-GNOME_COMPRESS_TYPE="bz2"
-
-SRC_URI += "file://parallel.patch \
-            file://0001-Drop-help-directory-from-build.patch"
-
-do_configure_prepend () {
-    rm -f ${S}/m4/gnome-doc-utils.m4
-}
-
-do_install_append () {
-    rm -f ${D}${libdir}/${BPN}/extensions/*.a
-}
-
-FILES_${PN} += "${datadir}/icons"
-FILES_${PN} += "${libdir}/${BPN}/extensions/*.so \
-                ${libdir}/${BPN}/extensions/*.extension"
-FILES_${PN}-dev += "${libdir}/${BPN}/extensions/*.la"
-FILES_${PN}-dbg += "${libdir}/${BPN}/extensions/.debug/"
-
-
-PNBLACKLIST[gthumb] ?= "Depends on blacklisted gstreamer - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/gweather/libgweather3_3.0.2.bb b/meta-gnome/recipes-gnome/gweather/libgweather3_3.0.2.bb
deleted file mode 100644
index 6920f0a..0000000
--- a/meta-gnome/recipes-gnome/gweather/libgweather3_3.0.2.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-SECTION = "x11/gnome/libs"
-DEPENDS = "libxml2 gconf libsoup-2.4 gtk+3"
-
-PNBLACKLIST[libgweather3] ?= "CONFLICT: 876 files are conflicting with libgweather - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-# e.g. sysroots/qemux86-64/usr/share/libgweather/locations.dtd
-#      sysroots/qemux86-64/usr/share/libgweather/Locations.zh_TW.xml
-
-BPN = "libgweather"
-
-inherit gnome
-SRC_URI[archive.md5sum] = "f1a96c6f19c9a0bc6b4e12acc9a8a85d"
-SRC_URI[archive.sha256sum] = "9041526fa0466b99dae5cf06c2cc70376f25531eec5d58b1e1378acfb302410c"
-
-do_configure_prepend() {
-    sed -i -e 's: doc : :g' ${S}/Makefile.am
-}
-
-FILES_${PN} += "${datadir}/gnome* \
-                ${datadir}/icons"
-
-PACKAGES =+ "${PN}-locationdata"
-FILES_${PN}-locationdata = "${datadir}/libgweather/*ocations*"
-
-
-
diff --git a/meta-gnome/recipes-gnome/gweather/libgweather_2.30.3.bb b/meta-gnome/recipes-gnome/gweather/libgweather_2.30.3.bb
deleted file mode 100644
index 8b69f1f..0000000
--- a/meta-gnome/recipes-gnome/gweather/libgweather_2.30.3.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-SECTION = "x11/gnome/libs"
-DEPENDS = "libxml2 gconf libsoup-2.4 gtk+ libgnome-keyring"
-
-inherit gnome
-
-SRC_URI[archive.md5sum] = "bf6a0a05051341ecb250f332e3edfb88"
-SRC_URI[archive.sha256sum] = "b835374661423f37c46aa8e37368ae24a68856f117b7c21e475a21efdba5264c"
-GNOME_COMPRESS_TYPE="bz2"
-
-do_configure_prepend() {
-    sed -i -e 's: doc : :g' ${S}/Makefile.am
-}
-
-FILES_${PN} += "${datadir}/gnome* \
-                ${datadir}/icons"
-
-PACKAGES =+ "${PN}-locationdata"
-FILES_${PN}-locationdata = "${datadir}/libgweather/Locations*"
-
-# http://errors.yoctoproject.org/Errors/Details/68608/
-PNBLACKLIST[libgweather] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/nautilus/nautilus/idl-sysroot.patch b/meta-gnome/recipes-gnome/nautilus/nautilus/idl-sysroot.patch
deleted file mode 100644
index 0062cfb..0000000
--- a/meta-gnome/recipes-gnome/nautilus/nautilus/idl-sysroot.patch
+++ /dev/null
@@ -1,7 +0,0 @@
-Index: nautilus-2.24.2/add-include-prefix
-===================================================================
---- nautilus-2.24.2.orig/add-include-prefix	2008-10-06 17:22:21.000000000 +0000
-+++ nautilus-2.24.2/add-include-prefix	2009-04-09 16:00:05.000000000 +0000
-@@ -1 +1 @@
--sed -e 's/^/ /' -e 's/  */ /g' -e 's/ / -I /g' -e 's/ -I $//'
-+sed -e 's:^: :' -e 's:  *: :g' -e 's: : -I '"$SYSROOT"':g' -e 's: -I '"$SYSROOT"'$::'
diff --git a/meta-gnome/recipes-gnome/nautilus/nautilus/no-G_DISABLE_DEPRECATED.patch b/meta-gnome/recipes-gnome/nautilus/nautilus/no-G_DISABLE_DEPRECATED.patch
deleted file mode 100644
index 43a6152..0000000
--- a/meta-gnome/recipes-gnome/nautilus/nautilus/no-G_DISABLE_DEPRECATED.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From e7233d98c114b03c7c8b96d1f41770452da14aa7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at gmx.de>
-Date: Mon, 17 Oct 2011 00:59:01 +0200
-Subject: [PATCH] nautilus build fails for newer glib versions
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-build with glib-2.0 v2.30.0 run into errors for at least G_CONST_RETURN missing
-
-Signed-off-by: Andreas Müller <schnitzeltony at gmx.de>
----
- configure.in    |    2 +-
- eel/Makefile.am |    1 -
- 2 files changed, 1 insertions(+), 2 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 97e171e..859a097 100644
---- a/configure.in
-+++ b/configure.in
-@@ -342,7 +342,7 @@ AC_SUBST(CORE_CFLAGS)
- CORE_LIBS="`$PKG_CONFIG --libs $CORE_MODULES` $x_libs"
- AC_SUBST(CORE_LIBS)
- 
--DISABLE_DEPRECATED_CFLAGS="-DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED"
-+DISABLE_DEPRECATED_CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED"
- AC_SUBST(DISABLE_DEPRECATED_CFLAGS)
- 
- dnl Multimedia keys
-diff --git a/eel/Makefile.am b/eel/Makefile.am
-index b1fe356..c1d56cd 100644
---- a/eel/Makefile.am
-+++ b/eel/Makefile.am
-@@ -10,7 +10,6 @@ INCLUDES =						\
- 	-DDATADIR=\""$(datadir)"\"			\
- 	-DSOURCE_DATADIR=\""$(top_srcdir)/data"\"	\
- 	-DGNOMELOCALEDIR=\""$(prefix)/${DATADIRNAME}/locale"\"	\
--	-DG_DISABLE_DEPRECATED				\
- 	-DGDK_PIXBUF_DISABLE_DEPRECATED			\
- 	-DGMENU_I_KNOW_THIS_IS_UNSTABLE			\
- 	$(NULL)
--- 
-1.7.4.4
-
diff --git a/meta-gnome/recipes-gnome/nautilus/nautilus3_3.2.1.bb b/meta-gnome/recipes-gnome/nautilus/nautilus3_3.2.1.bb
deleted file mode 100644
index 5580f93..0000000
--- a/meta-gnome/recipes-gnome/nautilus/nautilus3_3.2.1.bb
+++ /dev/null
@@ -1,54 +0,0 @@
-# nautilus OE build file
-# Copyright (C) 2005, Advanced Micro Devices, Inc.  All Rights Reserved
-# Released under the MIT license (see packages/COPYING)
-
-LICENSE="GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f08a446809913fc9b3c718f0eaea0426 \
-                    file://COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a"
-
-PR = "r4"
-
-DEPENDS = "libnotify gtk+3 libunique gvfs librsvg libexif gnome-desktop3"
-# optional: tracker
-
-# to include nautilus3/no-try-run-strftime.diff before the rest
-FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:"
-BPN = "nautilus"
-inherit gnome
-
-SRC_URI += "file://no-try-run-strftime.diff"
-SRC_URI[archive.md5sum] = "12314328b59aa1dfd83619f718b81bd5"
-SRC_URI[archive.sha256sum] = "c482d6e7babcc238304cf55586cdf7e2b2806025214a143ed355f0d89b33b154"
-
-EXTRA_OECONF = " --disable-gtk-doc  --disable-update-mimedb --enable-nst-extension"
-export SYSROOT = "${STAGING_DIR_HOST}"
-
-do_configure() {
-    sed -i -e /docs/d ${S}/Makefile.am
-    autotools_do_configure
-}
-
-RDEPENDS_${PN} = "gvfs gvfsd-ftp gvfsd-sftp gvfsd-trash glib-2.0-utils"
-FILES_${PN} += "${datadir}/icons \
-                /usr/libexec/ \
-                ${datadir}/nautilus* \
-                ${datadir}/dbus-1 \
-                ${libdir}/nautilus/extensions*/*.so \
-"
-FILES_${PN}-dbg += "/usr/libexec/.debug \
-    ${libdir}/nautilus/extensions*/.debug"
-
-# Don't make nautils drag us in
-PRIVATE_LIBS = "libnautilus-extension.so.1"
-
-pkg_postinst_${PN} () {
-if [ -n "$D" ]; then
-    exit 1
-fi
-
-glib-compile-schemas ${datadir}/glib-2.0/schemas
-}
-
-# 3.2.1-r4/nautilus-3.2.1/eel/eel-gnome-extensions.c:34:50: fatal error: libgnome-desktop/gnome-desktop-utils.h: No such file or directory
-# 3.2.1-r4/nautilus-3.2.1/eel/eel-editable-label.c:3105:55: error: 'GTK_STOCK_CUT' undeclared (first use in this function)
-PNBLACKLIST[nautilus3] ?= "BROKEN: fails to build, maybe missing dependency on gnome-desktop-utils.h provider - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/nautilus/nautilus_2.32.2.bb b/meta-gnome/recipes-gnome/nautilus/nautilus_2.32.2.bb
deleted file mode 100644
index caf7f57..0000000
--- a/meta-gnome/recipes-gnome/nautilus/nautilus_2.32.2.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-# nautilus OE build file
-# Copyright (C) 2005, Advanced Micro Devices, Inc.  All Rights Reserved
-# Released under the MIT license (see packages/COPYING)
-
-LICENSE="GPLv2 & LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7c0048536e43642a1f3a724c2909872b \
-                    file://COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a"
-
-PR = "r6"
-
-DEPENDS = "gdk-pixbuf gtk+ libunique gvfs librsvg libexif esound gnome-desktop orbit2-native"
-# optional: tracker
-
-inherit gnome gobject-introspection
-
-SRC_URI[archive.md5sum] = "51565aa10d1625dff56e381228346911"
-SRC_URI[archive.sha256sum] = "2d4ff28c7a7aa5d40eb2468149954a564c257a305183773057584d22d15347a2"
-GNOME_COMPRESS_TYPE="bz2"
-
-SRC_URI += "file://idl-sysroot.patch \
-            file://no-try-run-strftime.diff \
-            file://no-G_DISABLE_DEPRECATED.patch \
-"
-
-
-EXTRA_OECONF = " --disable-gtk-doc  --disable-update-mimedb "
-export SYSROOT = "${STAGING_DIR_HOST}"
-
-do_configure() {
-    sed -i -e /docs/d ${S}/Makefile.am
-    autotools_do_configure
-    # We need native orbit-idl with target idl files. No way to say it in a clean way:
-    find ${B} -name Makefile -exec sed -i '/\/usr\/bin\/orbit-idl-2/{s:/usr/bin:${STAGING_BINDIR_NATIVE}:;s:/usr/share:${STAGING_DATADIR}:g}' {} \;
-}
-
-RDEPENDS_${PN} = "gvfs gvfsd-ftp gvfsd-sftp gvfsd-trash glib-networking"
-FILES_${PN} += "${datadir}/icons"
-
-# Don't make nautils3 drag us in
-PRIVATE_LIBS = "libnautilus-extension.so.1"
-
-
-PNBLACKLIST[nautilus] ?= "Depends on blacklisted gnome-desktop - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/pimlico/contacts.inc b/meta-gnome/recipes-gnome/pimlico/contacts.inc
deleted file mode 100644
index fedd223..0000000
--- a/meta-gnome/recipes-gnome/pimlico/contacts.inc
+++ /dev/null
@@ -1,28 +0,0 @@
-DESCRIPTION = "Address-book application."
-HOMEPAGE = "http://pimlico-project.org/contacts.html"
-BUGTRACKER = "https://bugzilla.gnome.org/"
-
-LICENSE = "GPLv2 & GPLv2+ & GPLv3+ "
-SECTION = "x11"
-DEPENDS = "glib-2.0 gtk+ evolution-data-server intltool-native"
-RDEPENDS_${PN} = "libedata-book"
-
-inherit autotools pkgconfig gconf
-
-EXTRA_OECONF += "--disable-gnome-vfs"
-EXTRA_OEMAKE += "GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1"
-
-do_install_append () {
-    install -d ${D}/${datadir}/pixmaps
-    install -m 0644 ${WORKDIR}/stock_contact.png ${D}/${datadir}/pixmaps
-    install -m 0644 ${WORKDIR}/stock_person.png ${D}/${datadir}/pixmaps
-}
-
-FILES_${PN} += "${datadir}/pixmaps/stock_contact.png \
-        ${datadir}/pixmaps/stock_person.png \
-        ${datadir}/icons/hicolor"
-
-SRC_URI = "file://stock_contact.png \
-           file://stock_person.png \
-           file://contacts-conditionally-install-schema.patch \
-"
diff --git a/meta-gnome/recipes-gnome/pimlico/contacts/contacts-conditionally-install-schema.patch b/meta-gnome/recipes-gnome/pimlico/contacts/contacts-conditionally-install-schema.patch
deleted file mode 100644
index 2ab7882..0000000
--- a/meta-gnome/recipes-gnome/pimlico/contacts/contacts-conditionally-install-schema.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Install schema should respect to GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
-
-If GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL is set, the schema should not
-be installed.
-
-Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
-
-Upstream-Status: Pending
----
- data/Makefile.am |    7 ++++---
- 1 files changed, 4 insertions(+), 3 deletions(-)
-
-diff --git a/data/Makefile.am b/data/Makefile.am
-index f790823..b6fd643 100644
---- a/data/Makefile.am
-+++ b/data/Makefile.am
-@@ -14,13 +14,14 @@ dist_man1_MANS = contacts.1
- 
- if HAVE_GCONF
- install-data-local:
--	GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \
-+	if [ "$(GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL)" != "1" ]; then \
-+		GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) \
- 		$(GCONFTOOL) --makefile-install-rule $(schema_DATA) || \
- 		(echo ;\
- 		echo "*****************************************************"; \
- 		echo "Installation of schemas failed, install them manually"; \
--		echo "*****************************************************";)
--		@true
-+		echo "*****************************************************";); \
-+	fi
- endif
- 
- CLEANFILES = $(desktop_DATA)
--- 
-1.7.7.6
-
diff --git a/meta-gnome/recipes-gnome/pimlico/contacts/make-382.patch b/meta-gnome/recipes-gnome/pimlico/contacts/make-382.patch
deleted file mode 100644
index a7cfee3..0000000
--- a/meta-gnome/recipes-gnome/pimlico/contacts/make-382.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix for stricter parser in make 3.82. This fix has been pushed to upstream git.
-
-JL - 15/12/10
-
-Upstream-Status: Accepted
-
-Index: git/Makefile.am
-===================================================================
---- git.orig/Makefile.am
-+++ git/Makefile.am
-@@ -11,4 +11,4 @@ DISTCLEANFILES = $(INTLTOOL_BUILT)
- MAINTAINERCLEANFILES = aclocal.m4 compile config.guess config.sub configure depcomp $(INTLTOOL_BUILT:=.in) install-sh ltmain.sh mkinstalldirs Makefile.in missing
- 
- snapshot:
--        $(MAKE) dist distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
-+	$(MAKE) dist distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
diff --git a/meta-gnome/recipes-gnome/pimlico/contacts_0.9.bb b/meta-gnome/recipes-gnome/pimlico/contacts_0.9.bb
deleted file mode 100644
index 516cf93..0000000
--- a/meta-gnome/recipes-gnome/pimlico/contacts_0.9.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-require contacts.inc
-
-PR = "r8"
-
-SRC_URI =+ "http://pimlico-project.org/sources/${BPN}/${BPN}-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "aab5affbf93d6fa7b978b323a8d44de0"
-SRC_URI[sha256sum] = "9cacec98f8123993033aaa255f3f4c04c86a1be65e487dd21f0aaa54384a6f6d"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
-                    file://src/contacts-main.h;endline=18;md5=0371af46fbc72e33575e0072dca5fb19 \
-                    file://src/contacts-dbus.c;endline=18;md5=e4da9ac1a0539fafc7df431010904fd5 \
-                    file://src/contacts-gtk.c;endline=21;md5=1c2e3f55b215635eff4ba76f7696f8ee"
-
-do_configure_prepend () {
-    # It used 8 spaces to instead of a tab, but it doesn't work for us
-    sed -i 's/^        $(MAKE) dist distdir=/\t$(MAKE) dist distdir/' Makefile.am
-}
-
-PNBLACKLIST[contacts] ?= "Fails to fetch, pimlico-project.org is gone http://errors.yoctoproject.org/Errors/Details/132854/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/pimlico/contacts_git.bb b/meta-gnome/recipes-gnome/pimlico/contacts_git.bb
deleted file mode 100644
index b46e9d9..0000000
--- a/meta-gnome/recipes-gnome/pimlico/contacts_git.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-require contacts.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
-                    file://src/contacts-main.h;endline=20;md5=9dc3531c914fb6d6d4a8d1aee4519fef \
-                    file://src/contacts-dbus.c;endline=20;md5=95e02d77f155fbd07a14dba3348b9b03 \
-                    file://src/contacts-gtk.c;endline=23;md5=e1ee9b9e72045f2d3aa44cf17313b46e"
-
-SRCREV = "19853893fdb595de6aa59db0d9dc2f9451ed2933"
-PV = "0.12+git${SRCPV}"
-PR = "r4"
-
-S = "${WORKDIR}/git"
-
-SRC_URI =+ "git://git.gnome.org/${BPN} \
-        file://make-382.patch"
-
-S = "${WORKDIR}/git"
-
-PNBLACKLIST[contacts] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/132826/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/pimlico/tasks.inc b/meta-gnome/recipes-gnome/pimlico/tasks.inc
deleted file mode 100644
index f8217dc..0000000
--- a/meta-gnome/recipes-gnome/pimlico/tasks.inc
+++ /dev/null
@@ -1,10 +0,0 @@
-DESCRIPTION = "Task list application"
-HOMEPAGE = "http://pimlico-project.org/tasks.html"
-BUGTRACKER = "https://bugzilla.gnome.org/"
-
-LICENSE = "GPLv2 & GPLv2+"
-
-SECTION = "x11"
-DEPENDS = "glib-2.0 gtk+ evolution-data-server intltool-native"
-
-inherit autotools pkgconfig gtk-icon-cache
diff --git a/meta-gnome/recipes-gnome/pimlico/tasks_0.19.bb b/meta-gnome/recipes-gnome/pimlico/tasks_0.19.bb
deleted file mode 100644
index 42c20c4..0000000
--- a/meta-gnome/recipes-gnome/pimlico/tasks_0.19.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require tasks.inc
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
-                    file://src/gtk/main.c;endline=19;md5=8659d0b7fd68a2ad6ac30c6539ea5b82 \
-                    file://src/omoko/openmoko-tasks.c;endline=20;md5=04d56a46863c9f4247694f40257a836a \
-                    file://src/hildon/hildon-tasks.c;endline=21;md5=488ddf31dc14b2196dec7cc736211b52"
-
-SRC_URI = "http://pimlico-project.org/sources/${BPN}/${BPN}-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "0afd969758561599fd782e1effb39c08"
-SRC_URI[sha256sum] = "1a7fdc5f95a2193a1a25fdb13f071867fb7e42245ce19ccee4bcccb69e557f2e"
-
-PR = "r3"
-
-# tasks-0.19/libkoto/koto-utils.c:81:3: error: format not a string literal, argument types not checked [-Werror=format-nonliteral]
-PNBLACKLIST[tasks] ?= "Fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/pimlico/tasks_git.bb b/meta-gnome/recipes-gnome/pimlico/tasks_git.bb
deleted file mode 100644
index b71f1dc..0000000
--- a/meta-gnome/recipes-gnome/pimlico/tasks_git.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require tasks.inc
-
-SRC_URI = "git://git.gnome.org/${BPN}"
-
-SRCREV = "ea52d46d691c5fce4473ea4e24a35411381f3a65"
-PV = "0.13+git${SRCPV}"
-PR = "r3"
-
-S = "${WORKDIR}/git"
-
-# ../../git/libkoto/koto-utils.c:81:3: error: format not a string literal, argument types not checked [-Werror=format-nonliteral]
-PNBLACKLIST[tasks] ?= "Fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/system-tools/system-tools-backends-2.10.2/add-angstrom-distro.patch b/meta-gnome/recipes-gnome/system-tools/system-tools-backends-2.10.2/add-angstrom-distro.patch
deleted file mode 100644
index cb03fd8..0000000
--- a/meta-gnome/recipes-gnome/system-tools/system-tools-backends-2.10.2/add-angstrom-distro.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From b5084616a3bc2a0d485f43aeae69c6025f3f857e Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen at dominion.thruhere.net>
-Date: Fri, 10 Jun 2011 18:44:21 +0200
-Subject: [PATCH] add support for the angstrom distribtion
-
-Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
----
- Utils/Platform.pm |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
-
-diff --git a/Utils/Platform.pm b/Utils/Platform.pm
-index fc76360..8b8c770 100644
---- a/Utils/Platform.pm
-+++ b/Utils/Platform.pm
-@@ -92,6 +92,7 @@ my $PLATFORM_INFO = {
-   "nexenta-1.0"     => [ "Nexenta GNU/Solaris", "1.0", "Ellate" ],
-   "yellowdog-4.1"   => [ "Yellow Dog Linux", "4.1", "Sagitta" ],
-   "guadalinex-v4"   => [ "Guadalinex", "v4", "Toro" ],
-+  "angstrom"        => [ "Angstrom", "", "" ],
- };
- 
- sub get_platform_info
-@@ -143,6 +144,7 @@ sub ensure_distro_map
-      "vine-3.1"         => "vine-3.0",
-      "vlos-1.2"         => "gentoo",
-      "nexenta-1.0"      => "solaris-2.11",
-+     "angstrom"         => "debian",
-      );
- 
-   return $metamap{$distro} if ($metamap{$distro});
-@@ -375,6 +377,7 @@ sub guess
-                   [ \&check_ark ],
-                   [ \&check_yoper ],
-                   [ \&check_distro_file, "/etc/yellowdog-release", "yellowdog", "^Yellow Dog Linux release (\\S+)" ],
-+                  [ \&check_file_exists, "/etc/angstrom-version", "angstrom" ],
-                  ],
-     "FreeBSD" => [[ \&check_freebsd ]],
-     "SunOS"   => [[ \&check_solaris ]]
--- 
-1.6.6.1
-
diff --git a/meta-gnome/recipes-gnome/system-tools/system-tools-backends_2.10.2.bb b/meta-gnome/recipes-gnome/system-tools/system-tools-backends_2.10.2.bb
deleted file mode 100644
index 862c0ea..0000000
--- a/meta-gnome/recipes-gnome/system-tools/system-tools-backends_2.10.2.bb
+++ /dev/null
@@ -1,54 +0,0 @@
-SUMMARY = "gnome system tools backends"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-DEPENDS = "dbus dbus-glib glib-2.0 polkit"
-
-inherit gnome pkgconfig update-rc.d gettext
-
-SRC_URI[archive.md5sum] = "edae148b31342aecae035051adc70c74"
-SRC_URI[archive.sha256sum] = "1dbe5177df46a9c7250735e05e77129fe7ec04840771accfa87690111ca2c670"
-
-SRC_URI += " \
-            file://system-tools-backends \
-"
-
-# This needs to move to meta-angstrom
-SRC_URI_append_angstrom = " \
-            file://add-angstrom-distro.patch \
-"
-
-EXTRA_OECONF = " --with-net-dbus=${libdir}/perl5 "
-
-do_configure() {
-    rm missing || true
-    automake --add-missing
-    sed -i -e 's:CC=$(CC):CC="$(CC)":g' ${S}/Net-DBus/Makefile.am
-    sed -i -e 's:CC=$(CC):CC="$(CC)":g' ${S}/Net-DBus/Makefile.in
-    libtoolize --force --install
-    aclocal
-    gnu-configize
-    oe_runconf
-    cp ${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool ${S}
-}
-
-do_install_append () {
-    install -d ${D}/${sysconfdir}/init.d
-    install -m 0755 ${WORKDIR}/system-tools-backends ${D}/${sysconfdir}/init.d/
-}
-
-INITSCRIPT_NAME = "system-tools-backends"
-INITSCRIPT_PARAMS = "start 50 2 3 4 5 . stop 70 1 ."
-
-# Shadow added so there is a full adduser/deluser
-# (Gnome images tend to pull in shadow anyway)
-RDEPENDS_${PN} = "shadow"
-
-FILES_${PN} += " ${sysconfdir}/dbus-1/system.d"
-FILES_${PN} += " ${libdir}/pkgconfig"
-FILES_${PN} += " ${datadir}/dbus-1/system-services"
-FILES_${PN} += " ${datadir}/system-tools-backends-2.0/files"
-FILES_${PN} += " ${datadir}/system-tools-backends-2.0/scripts"
-FILES_${PN} += " ${datadir}/polkit*"
-
-PNBLACKLIST[system-tools-backends] ?= "does not build with distroless qemuarm as reported in 'State of bitbake world' thread, nobody volunteered to fix them - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-gnome/zenity/files/0001-Makefile.am-don-t-build-help.patch b/meta-gnome/recipes-gnome/zenity/files/0001-Makefile.am-don-t-build-help.patch
deleted file mode 100644
index 50c9cb9..0000000
--- a/meta-gnome/recipes-gnome/zenity/files/0001-Makefile.am-don-t-build-help.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 17e5606f8c4c8ff26ba18489aad4c484cf8e2949 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Mon, 29 Apr 2013 11:34:27 +0200
-Subject: [PATCH] Makefile.am: don't build help
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-it crashes with:
-
-| warning: failed to load external entity "/usr/share/xml/gnome/xslt/docbook/omf/db2omf.xsl"
-| cannot parse /usr/share/xml/gnome/xslt/docbook/omf/db2omf.xsl
-| make[2]: *** [zenity-bg.omf] Error 1
-| make[2]: Leaving directory `/home/andreas/tmp/oe-core-eglibc/work/armv7a-vfp-neon-angstrom-linux-gnueabi/zenity/2.32.1-r2/zenity-2.32.1/help'
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- Makefile.am |    3 +--
- 1 files changed, 1 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 03accc1..caec7f0 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,8 +1,7 @@
- SUBDIRS = \
- 	src	\
- 	po	\
--	data	\
--	help
-+	data
- 
- EXTRA_DIST = \
- 	autogen.sh		\
--- 
-1.7.6.5
-
diff --git a/meta-gnome/recipes-gnome/zenity/zenity_2.32.1.bb b/meta-gnome/recipes-gnome/zenity/zenity_2.32.1.bb
deleted file mode 100644
index bd9f7a0..0000000
--- a/meta-gnome/recipes-gnome/zenity/zenity_2.32.1.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Display dialog boxes from the commandline and shell scripts"
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
-
-PR = "r2"
-
-PNBLACKLIST[zenity] ?= "BROKEN: doesn't build with B!=S - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-DEPENDS = "gtk+ glib-2.0 libnotify gnome-doc-utils"
-
-inherit gnomebase
-SRC_URI += "file://0001-Makefile.am-don-t-build-help.patch"
-SRC_URI[archive.md5sum] = "aa66ec35451b16e424519b4973082170"
-SRC_URI[archive.sha256sum] = "8838be041a07364b62a4281c971392e4a09bb01bb3237a836ec0457ec0ea18ac"
-
-EXTRA_OECONF += "--disable-scrollkeeper"
-# remove -I/usr/include from zenity_CPPFLAGS
-do_configure_prepend() {
-    sed -i -e '/-I$(includedir)/d' src/Makefile.am
-}
-
diff --git a/meta-gnome/recipes-support/florence/files/0001-Fix-glib-includes.patch b/meta-gnome/recipes-support/florence/files/0001-Fix-glib-includes.patch
deleted file mode 100644
index 83e598e..0000000
--- a/meta-gnome/recipes-support/florence/files/0001-Fix-glib-includes.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From c8419ef05ff92ffa3de2e626eb6acd5d2df3baa1 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Tue, 15 May 2012 13:40:05 +0200
-Subject: [PATCH] Fix glib includes
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-Upstream-Status: unknown
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- src/trace.c |    5 +----
- 1 files changed, 1 insertions(+), 4 deletions(-)
-
-diff --git a/src/trace.c b/src/trace.c
-index 5ea5c13..774c56d 100644
---- a/src/trace.c
-+++ b/src/trace.c
-@@ -21,10 +21,7 @@
- 
- #include "trace.h"
- #include "system.h"
--#include <glib/gprintf.h>
--#include <glib/gutils.h>
--#include <glib/gslist.h>
--#include <glib/gstrfuncs.h>
-+#include <glib.h>
- #include <stdio.h>
- #include <stdarg.h>
- 
--- 
-1.7.6.5
-
diff --git a/meta-gnome/recipes-support/goffice/goffice/0001-configure.ac-fix-paths-to-introspection-tools.patch b/meta-gnome/recipes-support/goffice/goffice/0001-configure.ac-fix-paths-to-introspection-tools.patch
deleted file mode 100644
index a645978..0000000
--- a/meta-gnome/recipes-support/goffice/goffice/0001-configure.ac-fix-paths-to-introspection-tools.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 8e158c16cd15fff08b42ed86edc55816d3387837 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex.kanavin at gmail.com>
-Date: Fri, 19 Feb 2016 16:04:24 +0200
-Subject: [PATCH] configure.ac: fix paths to introspection tools
-
-They need to be prefixed with $PKG_CONFIG_SYSROOT_DIR
-
-Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
----
- configure.ac | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 6d2b747..3b28463 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -706,9 +706,9 @@ if test "x$found_introspection" = "xyes"; then
-    dnl python where to find libgoffice, so you might also need to set
-    dnl LD_LIBRARY_PATH.
- 
--   INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
--   INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
--   INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
-+   INTROSPECTION_SCANNER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
-+   INTROSPECTION_COMPILER=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
-+   INTROSPECTION_GENERATE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
-    if test "x$INTROSPECTION_GIRDIR" = x; then
-      INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
-    fi
-@@ -717,7 +717,7 @@ if test "x$found_introspection" = "xyes"; then
-    fi
-    INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
-    INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
--   INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
-+   INTROSPECTION_MAKEFILE=$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
- else
-    INTROSPECTION_SCANNER=
-    INTROSPECTION_COMPILER=
--- 
-2.7.0
-
diff --git a/meta-gnome/recipes-support/goffice/goffice_0.10.1.bb b/meta-gnome/recipes-support/goffice/goffice_0.10.1.bb
deleted file mode 100644
index 6a2080d..0000000
--- a/meta-gnome/recipes-support/goffice/goffice_0.10.1.bb
+++ /dev/null
@@ -1,51 +0,0 @@
-DESCRIPTION="Gnome Office Library"
-
-LICENSE="GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=6dc33ff21e1ba1ac1a2a1069d361e29e"
-
-DEPENDS = "libxml-parser-perl-native glib-2.0 gtk+3 pango cairo libgsf libpcre libxml2 libart-lgpl librsvg intltool"
-
-inherit gnomebase pkgconfig perlnative gobject-introspection
-
-GNOME_COMPRESS_TYPE = "xz"
-
-SRC_URI += "file://0001-configure.ac-fix-paths-to-introspection-tools.patch"
-
-SRC_URI[archive.md5sum] = "90fd17c6fe205b779571e00d9b0b4727"
-SRC_URI[archive.sha256sum] = "5c38f4e81e874cc8e89481b080f77c47c72bfd6fe2526f4fc2ef87c17f96cad0"
-
-FILES_${PN}-dbg += "${libdir}/goffice/${PV}/plugins/*/.debug"
-
-RRECOMMENDS_${PN} = " \
-    goffice-plugin-plot-barcol \
-    goffice-plugin-plot-distrib \
-    goffice-plugin-plot-pie \
-    goffice-plugin-plot-radar \
-    goffice-plugin-plot-surface \
-    goffice-plugin-plot-xy \
-    goffice-plugin-reg-linear \
-    goffice-plugin-reg-logfit \
-    goffice-plugin-smoothing \
-"
-
-FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*${SOLIBS} \
-    ${sysconfdir} ${sharedstatedir} ${localstatedir} \
-    ${base_bindir}/* ${base_sbindir}/* \
-    ${base_libdir}/*${SOLIBS} \
-    ${datadir}/${PN} \
-    ${datadir}/pixmaps ${datadir}/applications \
-    ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
-    ${libdir}/bonobo/servers"
-
-FILES_${PN}-locale = "${libdir}/locale"
-
-PACKAGES_DYNAMIC += "^goffice-plugin-.*"
-
-python populate_packages_prepend () {
-    goffice_libdir = d.expand('${libdir}/goffice/${PV}/plugins/')
-
-    do_split_packages(d, goffice_libdir, '(.*)', 'goffice-plugin-%s', 'Goffice plugin for %s', allow_dirs=True)
-}
-
-# | ../../goffice-0.10.1/goffice/math/go-complex.c:75:3: error: format not a string literal, argument types not checked [-Werror=format-nonliteral]
-PNBLACKLIST[goffice] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gnome/recipes-support/tracker/tracker-0.14.2/enable-sqlite-crosscompile.patch b/meta-gnome/recipes-support/tracker/tracker-0.14.2/enable-sqlite-crosscompile.patch
deleted file mode 100644
index 5dadda2..0000000
--- a/meta-gnome/recipes-support/tracker/tracker-0.14.2/enable-sqlite-crosscompile.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: tracker-0.10.17/m4/sqlite-threadsafe.m4
-===================================================================
---- tracker-0.10.17.orig/m4/sqlite-threadsafe.m4
-+++ tracker-0.10.17/m4/sqlite-threadsafe.m4
-@@ -45,7 +45,7 @@ int main ()
-   ]])],
-        [ax_cv_sqlite_threadsafe=yes],
-        [ax_cv_sqlite_threadsafe=no],
--       [ax_cv_sqlite_threadsafe=no])])
-+       [ax_cv_sqlite_threadsafe=yes])])
- 
-   LIBS="$save_LIBS"
- ])
diff --git a/meta-gnome/recipes-support/tracker/tracker-0.14.2/fix-removable-media-detection.patch b/meta-gnome/recipes-support/tracker/tracker-0.14.2/fix-removable-media-detection.patch
deleted file mode 100644
index 6c3d9de..0000000
--- a/meta-gnome/recipes-support/tracker/tracker-0.14.2/fix-removable-media-detection.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Index: tracker-0.14.2/src/libtracker-miner/tracker-storage.c
-===================================================================
---- tracker-0.14.2.orig/src/libtracker-miner/tracker-storage.c	2011-08-03 13:53:16.000000000 +0100
-+++ tracker-0.14.2/src/libtracker-miner/tracker-storage.c	2012-09-10 08:25:18.322215126 +0100
-@@ -20,6 +20,7 @@
- #include "config.h"
- 
- #include <string.h>
-+#include <sys/stat.h>
- 
- #include <gio/gio.h>
- #include <gio/gunixmounts.h>
-@@ -646,6 +647,17 @@
- 				gchar *content_type;
- 				gboolean is_multimedia;
- 				gboolean is_blank;
-+                                struct stat st;
-+
-+                                /*
-+                                 * Consider all files under /media to be
-+                                 * removable unless the file .this-is-root is
-+                                 * present.
-+                                 */
-+                                if (!strncmp (mount_path, "/media/",
-+                                              strlen ("/media/")) &&
-+                                    stat ("/media/.this-is-root", &st))
-+                                  is_removable = TRUE;
- 
- 				content_type = mount_guess_content_type (mount, &is_optical, &is_multimedia, &is_blank);
- 
diff --git a/meta-gnome/recipes-support/tracker/tracker-0.14.2/giflib5-support.patch b/meta-gnome/recipes-support/tracker/tracker-0.14.2/giflib5-support.patch
deleted file mode 100644
index fab3371..0000000
--- a/meta-gnome/recipes-support/tracker/tracker-0.14.2/giflib5-support.patch
+++ /dev/null
@@ -1,126 +0,0 @@
- src/tracker-extract/tracker-extract-gif.c |   36 +++++++++++++++++++++++++++++
- 1 file changed, 36 insertions(+)
---- a/src/tracker-extract/tracker-extract-gif.c	
-+++ a/src/tracker-extract/tracker-extract-gif.c	
-@@ -75,6 +75,39 @@
- 	return (GIF_OK);
- }
- 
-+#if GIFLIB_MAJOR >= 5
-+static inline void
-+gif_error (const gchar *action, int err)
-+{
-+	const char *str = GifErrorString (err);
-+	if (str != NULL) {
-+		g_message ("%s, error: '%s'", action, str);
-+	} else {
-+		g_message ("%s, undefined error %d", action, err);
-+	}
-+}
-+#else /* GIFLIB_MAJOR >= 5 */
-+static inline void print_gif_error()
-+{
-+#if defined(GIFLIB_MAJOR) && defined(GIFLIB_MINOR) && ((GIFLIB_MAJOR == 4 && GIFLIB_MINOR >= 2) || GIFLIB_MAJOR > 4)
-+	const char *str = GifErrorString ();
-+	if (str != NULL) {
-+		g_message ("GIF, error: '%s'", str);
-+	} else {
-+		g_message ("GIF, undefined error");
-+	}
-+#else
-+	PrintGifError();
-+#endif
-+}
-+#endif /* GIFLIB_MAJOR >= 5 */
-+
-+/* giflib 5.1 changed the API of DGifCloseFile to take two arguments */
-+#if !defined(GIFLIB_MAJOR) || \
-+    !(GIFLIB_MAJOR > 5 || (GIFLIB_MAJOR == 5 && GIFLIB_MINOR >= 1))
-+#define DGifCloseFile(a, b) DGifCloseFile(a)
-+#endif
-+
- static void
- read_metadata (TrackerSparqlBuilder *preupdate,
-                TrackerSparqlBuilder *metadata,
-@@ -100,14 +133,22 @@
- 		ExtBlock extBlock;
- 
- 		if (DGifGetRecordType(gifFile, &RecordType) == GIF_ERROR) {
--			PrintGifError();
-+#if GIFLIB_MAJOR < 5
-+			print_gif_error ();
-+#else  /* GIFLIB_MAJOR < 5 */
-+			gif_error ("Could not read next GIF record type", gifFile->Error);
-+#endif /* GIFLIB_MAJOR < 5 */
- 			return;
- 		}
- 
- 		switch (RecordType) {
- 			case IMAGE_DESC_RECORD_TYPE:
- 			if (DGifGetImageDesc(gifFile) == GIF_ERROR) {
--				PrintGifError();
-+#if GIFLIB_MAJOR < 5
-+				print_gif_error();
-+#else  /* GIFLIB_MAJOR < 5 */
-+				gif_error ("Could not get GIF record information", gifFile->Error);
-+#endif /* GIFLIB_MAJOR < 5 */
- 				return;
- 			}
- 
-@@ -117,7 +158,11 @@
- 			framedata = g_malloc (framewidth*frameheight);
- 
- 			if (DGifGetLine(gifFile, framedata, framewidth*frameheight)==GIF_ERROR) {
--				PrintGifError();
-+#if GIFLIB_MAJOR < 5
-+				print_gif_error();
-+#else  /* GIFLIB_MAJOR < 5 */
-+				gif_error ("Could not load a block of GIF pixes", gifFile->Error);
-+#endif /* GIFLIB_MAJOR < 5 */
- 				return;
- 			}
- 
-@@ -593,6 +638,9 @@
- 	gchar *filename, *uri;
- 	GFile *file;
- 	int fd;
-+#if GIFLIB_MAJOR >= 5
-+	int err;
-+#endif
- 
- 	preupdate = tracker_extract_info_get_preupdate_builder (info);
- 	metadata = tracker_extract_info_get_metadata_builder (info);
-@@ -617,8 +665,14 @@
- 		return FALSE;
- 	}	
- 
-+#if GIFLIB_MAJOR < 5
- 	if ((gifFile = DGifOpenFileHandle (fd)) == NULL) {
--		PrintGifError ();
-+		print_gif_error ();
-+#else   /* GIFLIB_MAJOR < 5 */
-+	if ((gifFile = DGifOpenFileHandle (fd, &err)) == NULL) {
-+		gif_error ("Could not open GIF file with handle", err);
-+#endif /* GIFLIB_MAJOR < 5 */
-+		g_free (filename);
- 		close (fd);
- 		return FALSE;
- 	}
-@@ -637,10 +691,15 @@
- 	g_string_free (where, TRUE);
- 
- 	g_free (uri);
--
-+#if GIFLIB_MAJOR < 5
- 	if (DGifCloseFile (gifFile) != GIF_OK) {
--		PrintGifError ();
-+		print_gif_error ();
-+	}
-+#else  /* GIFLIB_MAJOR < 5 */
-+	if (DGifCloseFile (gifFile, NULL) != GIF_OK) {
-+		gif_error ("Could not close GIF file", gifFile->Error);
- 	}
-+#endif /* GIFLIB_MAJOR < 5 */
- 
- 	return TRUE;
- }
diff --git a/meta-gnome/recipes-support/tracker/tracker_0.14.2.bb b/meta-gnome/recipes-support/tracker/tracker_0.14.2.bb
deleted file mode 100644
index eb36a12..0000000
--- a/meta-gnome/recipes-support/tracker/tracker_0.14.2.bb
+++ /dev/null
@@ -1,88 +0,0 @@
-DESCRIPTION = "Tracker is a tool designed to extract information and metadata about your personal data so that it can be searched easily and quickly."
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ee31012bf90e7b8c108c69f197f3e3a4"
-DEPENDS = "file gstreamer dbus libexif gettext sqlite3 icu gst-plugins-base libgnome-keyring poppler tiff enca libgsf libunistring giflib taglib bzip2 upower gtk+3 libgee networkmanager intltool-native"
-
-RDEPENDS_${PN} += " gvfs gsettings-desktop-schemas"
-
-RDEPENDS_${PN}-nautilus-extension += "nautilus"
-HOMEPAGE = "http://projects.gnome.org/tracker/"
-
-PR = "r7"
-
-inherit autotools pkgconfig gnomebase gettext gsettings systemd gobject-introspection
-
-VER_DIR = "${@gnome_verdir("${PV}")}"
-SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/tracker/${VER_DIR}/tracker-${PV}.tar.xz \
-           file://enable-sqlite-crosscompile.patch \
-           file://fix-removable-media-detection.patch \
-           file://giflib5-support.patch \
-           file://90tracker \
-           file://tracker-store.service \
-           file://tracker-miner-fs.service \
-           file://tracker-dbus.service \
-           "
-
-SYSTEMD_SERVICE_${PN} = " tracker-store.service tracker-miner-fs.service tracker-dbus.service "
-SYSTEMD_AUTO_ENABLE = "disable"
-
-EXTRA_OECONF += " tracker_cv_have_ioprio=yes"
-
-PACKAGECONFIG ?= "nautilus"
-PACKAGECONFIG[nautilus] = "--enable-nautilus-extension,--disable-nautilus-extension,nautilus"
-
-# Disable the desktop-centric miners
-EXTRA_OECONF += "--disable-miner-thunderbird --disable-miner-firefox \
-                 --disable-miner-evolution --disable-miner-flickr"
-
-LEAD_SONAME = "libtrackerclient.so.0"
-
-do_compile_prepend() {
-        export GIR_EXTRA_LIBS_PATH="${B}/src/libtracker-sparql-backend/.libs:${B}/src/libtracker-data/.libs:${B}/src/libtracker-common/.libs"
-}
-
-do_install_append() {
-    cp -PpR ${D}${STAGING_DATADIR}/* ${D}${datadir}/ || true
-#   install -d ${D}/${sysconfdir}/X11/Xsession.d/
-#   install -m 0755 ${WORKDIR}/90tracker  ${D}/${sysconfdir}/X11/Xsession.d/
-
-    install -d ${D}${systemd_unitdir}/system
-    install -m 0644 ${WORKDIR}/tracker-store.service ${D}${systemd_unitdir}/system
-    install -m 0644 ${WORKDIR}/tracker-miner-fs.service ${D}${systemd_unitdir}/system
-    install -m 0644 ${WORKDIR}/tracker-dbus.service ${D}${systemd_unitdir}/system
-    sed -i -e 's, at LIBEXECDIR@,${libexecdir},g' \
-           -e 's, at BASE_BINDIR@,${base_bindir},g' \
-               ${D}${systemd_unitdir}/system/*.service
-}
-
-PACKAGES =+ "${PN}-tests ${PN}-vala ${PN}-nautilus-extension"
-
-FILES_${PN} += "${datadir}/dbus-1/ \
-                ${libdir}/tracker-${VER_DIR}/*.so.* \
-                ${libdir}/tracker-${VER_DIR}/extract-modules/*.so \
-                ${libdir}/tracker-${VER_DIR}/writeback-modules/*.so \
-                ${datadir}/icons/hicolor/*/apps/tracker.* \
-                ${libdir}/nautilus/extensions-2.0/*.la \
-                ${datadir}/glib-2.0/schemas/* \
-                ${systemd_unitdir}/system/tracker-store.service \
-                ${systemd_unitdir}/system/tracker-miner-fs.service \
-                ${systemd_unitdir}/system/tracker-dbus.service \
-"
-
-FILES_${PN}-dev += "${libdir}/tracker-${VER_DIR}/*.la \
-                    ${libdir}/tracker-${VER_DIR}/*.so \
-                    ${libdir}/tracker-${VER_DIR}/*/*.la \
-                    ${libdir}/tracker-${VER_DIR}/extract-modules/*.la"
-
-FILES_${PN}-staticdev += "${libdir}/nautilus/extensions-2.0/*.a"
-FILES_${PN}-dbg += "${libdir}/*/*/.debug \
-                    ${libdir}/*/.debug"
-FILES_${PN}-tests = "${datadir}/tracker-tests/"
-FILES_${PN}-vala = "${datadir}/vala/"
-FILES_${PN}-nautilus-extension += "${libdir}/nautilus/extensions-2.0/*.so"
-
-SRC_URI[md5sum] = "f3a871beeebf86fd752863ebd22af9ac"
-SRC_URI[sha256sum] = "9b59330aa2e9e09feee587ded895e9247f71fc25f46b023d616d9969314bc7f1"
-
-# http://errors.yoctoproject.org/Errors/Details/81007/
-PNBLACKLIST[tracker] ?= "BROKEN: fails to build with new binutils-2.27 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gpe/recipes-graphics/gpe-scap/gpe-scap/0001-Fix-the-ordering-of-LDADD-options-to-fix-a-compilati.patch b/meta-gpe/recipes-graphics/gpe-scap/gpe-scap/0001-Fix-the-ordering-of-LDADD-options-to-fix-a-compilati.patch
deleted file mode 100644
index c976ff4..0000000
--- a/meta-gpe/recipes-graphics/gpe-scap/gpe-scap/0001-Fix-the-ordering-of-LDADD-options-to-fix-a-compilati.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From c551dece6768f67b74b508e9c0133320205ef2df Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen at dominion.thruhere.net>
-Date: Mon, 23 May 2011 15:03:29 +0200
-Subject: [PATCH] Fix the ordering of LDADD options to fix a compilation failure.
-
-"invalid DSO for symbol `XUngrabServer' definition "
-
-Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
----
- src/Makefile.am |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 2fddc98..45bd850 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -6,7 +6,7 @@ INCLUDES = -DPKGDATADIR=\"$(pkgdatadir)\" \
- 	   $(GLADE_CFLAGS) \
-        -D_GNU_SOURCE
- 
--LIBS = $(GTK_LIBS) $(GLADE_LIBS) $(XSHAPE_LIBS)
-+LIBS = -lX11 $(XSHAPE_LIBS) $(GLADE_LIBS) $(GTK_LIBS) 
- 
- bin_PROGRAMS = gpe-scap
- gpe_scap_SOURCES = scr-i18n.h \
--- 
-1.6.6.1
-
diff --git a/meta-gpe/recipes-graphics/gpe-scap/gpe-scap/use.libsoup-2.4.patch b/meta-gpe/recipes-graphics/gpe-scap/gpe-scap/use.libsoup-2.4.patch
deleted file mode 100644
index 3cfe5d7..0000000
--- a/meta-gpe/recipes-graphics/gpe-scap/gpe-scap/use.libsoup-2.4.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -uNr gpe-scap-1.4.orig/configure.ac gpe-scap-1.4/configure.ac
---- gpe-scap-1.4.orig/configure.ac	2009-03-05 18:53:53.000000000 +0100
-+++ gpe-scap-1.4/configure.ac	2012-05-06 10:18:29.348308322 +0200
-@@ -24,7 +24,7 @@
- AC_SUBST(LDFLAGS)
- 
- dnl libraries
--GTK_MODULES="gtk+-2.0 >= 2.6.0 gthread-2.0 libsoup-2.2"
-+GTK_MODULES="gtk+-2.0 >= 2.6.0 gthread-2.0 libsoup-2.4"
- PKG_CHECK_MODULES(GTK, $GTK_MODULES)
- AC_SUBST(GTK_CFLAGS)
- AC_SUBST(GTK_LIBS)
-diff -uNr gpe-scap-1.4.orig/src/scr-shot-common.c gpe-scap-1.4/src/scr-shot-common.c
---- gpe-scap-1.4.orig/src/scr-shot-common.c	2009-03-05 12:13:20.000000000 +0100
-+++ gpe-scap-1.4/src/scr-shot-common.c	2012-05-06 10:30:52.299371576 +0200
-@@ -182,12 +182,12 @@
-   /* create session and message */
-   session = soup_session_sync_new ();
-   message = soup_message_new ("POST", url);
--  soup_message_add_header (message->request_headers, "User-Agent", "gpe-scap/" VERSION);
--  soup_message_add_header (message->request_headers, "Accept",
-+  soup_message_headers_append (message->request_headers, "User-Agent", "gpe-scap/" VERSION);
-+  soup_message_headers_append (message->request_headers, "Accept",
- 			   "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5");
--/*  soup_message_add_header (message->request_headers, "Accept-Charset", "Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7");
--  soup_message_add_header (message->request_headers, "Keep-Alive", "100");
--  soup_message_add_header (message->request_headers, "Connection", "keep-alive");
-+/*  soup_message_headers_append (message->request_headers, "Accept-Charset", "Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7");
-+  soup_message_headers_append (message->request_headers, "Keep-Alive", "100");
-+  soup_message_headers_append (message->request_headers, "Connection", "keep-alive");
-   soup_message_wire	add_header (message->request_headers, "Accept-Encoding", "gzip,deflate");
- */
-   /* build message body */
-@@ -207,7 +207,7 @@
-   memcpy (body + strlen (cmd) + len, tail, strlen (tail));
- 
-   soup_message_set_request (message, "multipart/form-data; boundary="SEP,
--                            SOUP_BUFFER_SYSTEM_OWNED, body, content_len);
-+                            SOUP_MEMORY_TAKE, body, content_len);
- 
-   soup_session_send_message (session, message);
- 
diff --git a/meta-gpe/recipes-graphics/gpe-scap/gpe-scap_1.4.bb b/meta-gpe/recipes-graphics/gpe-scap/gpe-scap_1.4.bb
deleted file mode 100644
index db50e38..0000000
--- a/meta-gpe/recipes-graphics/gpe-scap/gpe-scap_1.4.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "A GPE application that allows you to take screenshots"
-SECTION = "gpe"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
-
-DEPENDS = "glib-2.0 gtk+ libgpewidget libglade libsoup-2.4"
-
-PR = "r3"
-
-SRC_URI[md5sum] = "eaf545561b0ad981c9d01833f30fcf95"
-SRC_URI[sha256sum] = "762778421fae7c62d5ec6a9d27986166c0dbbe2ff51fc10bb9b8baff5c367534"
-
-GPE_TARBALL_SUFFIX = "bz2"
-
-inherit gpe autotools pkgconfig
-
-SRC_URI += "file://0001-Fix-the-ordering-of-LDADD-options-to-fix-a-compilati.patch \
-    file://use.libsoup-2.4.patch \
-"
-
-RREPLACES_${PN} = "gpe-screenshot"
-
-PNBLACKLIST[gpe-scap] ?= "Depends on blacklisted libgpewidget - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gpe/recipes-graphics/libgpewidget/libgpewidget/glib-2.32.patch b/meta-gpe/recipes-graphics/libgpewidget/libgpewidget/glib-2.32.patch
deleted file mode 100644
index f590caa..0000000
--- a/meta-gpe/recipes-graphics/libgpewidget/libgpewidget/glib-2.32.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -uNr libgpewidget-0.117.orig/gpehelp.c libgpewidget-0.117/gpehelp.c
---- libgpewidget-0.117.orig/gpehelp.c	2006-10-12 12:20:33.000000000 +0200
-+++ libgpewidget-0.117/gpehelp.c	2012-04-30 07:45:57.813293792 +0200
-@@ -33,7 +33,6 @@
- #include <gdk-pixbuf/gdk-pixbuf.h>
- #include <gdk/gdk.h>
- #include <glib.h>
--#include <glib/gkeyfile.h>
- 
- 
- /* helper function definitions*/
diff --git a/meta-gpe/recipes-graphics/libgpewidget/libgpewidget/pkgconfig.patch b/meta-gpe/recipes-graphics/libgpewidget/libgpewidget/pkgconfig.patch
deleted file mode 100644
index 317e01a..0000000
--- a/meta-gpe/recipes-graphics/libgpewidget/libgpewidget/pkgconfig.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- configure.ac.orig	2006-02-04 17:37:55.000000000 +0100
-+++ configure.ac	2006-02-06 00:56:28.000000000 +0100
-@@ -36,7 +36,7 @@
- 	ENABLE_CAIRO=$enableval
- ],
- [
--       	PKG_CHECK_EXISTS(cairo, [ENABLE_CAIRO=yes], [ENABLE_CAIRO=no])
-+       	PKG_CHECK_MODULES(cairo, [ENABLE_CAIRO=yes], [ENABLE_CAIRO=no])
- ])
- 
- ENABLE_HILDON=false
diff --git a/meta-gpe/recipes-graphics/libgpewidget/libgpewidget_0.117.bb b/meta-gpe/recipes-graphics/libgpewidget/libgpewidget_0.117.bb
deleted file mode 100644
index 31e247e..0000000
--- a/meta-gpe/recipes-graphics/libgpewidget/libgpewidget_0.117.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-DESCRIPTION = "libgpewidget contains a collection of widgets and other common code shared by many GPE applications."
-SECTION = "gpe/libs"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=d8045f3b8f929c1cb29a1e3fd737b499"
-
-DEPENDS = "gtk+ cairo libxinerama libxcomposite libxrender"
-PR = "r5"
-
-inherit gpe pkgconfig autotools gtk-doc
-
-SRC_URI += "file://pkgconfig.patch;striplevel=0 \
-    file://glib-2.32.patch \
-"
-SRC_URI[md5sum] = "b85a839264a35d0faf9a1a38c486e189"
-SRC_URI[sha256sum] = "f96d30c09b0395ea4e146730fd52d9ea303b619bb139051d9f12d3f868a9e18c"
-
-GPE_TARBALL_SUFFIX = "bz2"
-
-EXTRA_OECONF = "--enable-cairo --disable-gtk-doc"
-LDFLAGS += " -L${STAGING_LIBDIR}"
-
-PACKAGES =+ "${PN}-bin"
-
-PNBLACKLIST[libgpewidget] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130594/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gpe/recipes-graphics/minilite/minilite/makefile-fix.patch b/meta-gpe/recipes-graphics/minilite/minilite/makefile-fix.patch
deleted file mode 100644
index 1be6cea..0000000
--- a/meta-gpe/recipes-graphics/minilite/minilite/makefile-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- /tmp/Makefile.old	2006-01-16 22:51:34.000000000 +0100
-+++ minilite-050/Makefile	2009-05-01 16:36:32.000000000 +0200
-@@ -45,7 +45,7 @@
- 
- install-program: all
- 	mkdir -p $(DESTDIR)$(PREFIX)/bin
--	$(INSTALL) -s $(PACKAGE) $(DESTDIR)$(PREFIX)/bin/$(PACKAGE)
-+	$(INSTALL) $(PACKAGE) $(DESTDIR)$(PREFIX)/bin/$(PACKAGE)
- 	mkdir -p $(DESTDIR)$(PREFIX)/share/applications
- 	$(INSTALL) -m 644 $(PACKAGE).desktop $(DESTDIR)$(PREFIX)/share/applications/$(PACKAGE).desktop
- 	mkdir -p $(DESTDIR)$(PREFIX)/share/pixmaps/
diff --git a/meta-gpe/recipes-graphics/minilite/minilite_0.50.bb b/meta-gpe/recipes-graphics/minilite/minilite_0.50.bb
deleted file mode 100644
index 8e064fd..0000000
--- a/meta-gpe/recipes-graphics/minilite/minilite_0.50.bb
+++ /dev/null
@@ -1,18 +0,0 @@
-SUMMARY = "GPE Screen light control dockapp"
-SECTION = "gpe"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://minilite.c;beginline=8;endline=11;md5=fe9332aaecbce9f74ce2bfeb91680ed1"
-
-DEPENDS = "libgpewidget"
-
-inherit gpe
-
-SRC_URI = "${GPE_MIRROR}/${BP}.tar.gz \
-           file://makefile-fix.patch"
-SRC_URI[md5sum] = "d81cecf269ad7bab0da960e6e7228332"
-SRC_URI[sha256sum] = "2b299425203246090a4949e034f1d0efb3ff99cd1591d0e16c57370a530b361e"
-
-export CVSBUILD="no"
-
-PNBLACKLIST[minilite] ?= "Depends on blacklisted libgpewidget - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/Makefile.patch b/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/Makefile.patch
deleted file mode 100644
index 0e498c7..0000000
--- a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/Makefile.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -uri fbreader-0.12.1.orig/fbreader/Makefile fbreader-0.12.1/fbreader/Makefile
---- fbreader-0.12.1.orig/fbreader/Makefile	2009-12-13 09:03:11.000000000 +0100
-+++ fbreader-0.12.1/fbreader/Makefile	2009-12-14 17:18:47.548638783 +0100
-@@ -37,7 +37,6 @@
- 	@install $(TARGET) $(DESTDIR)$(BINDIR)/FBReader
- 	@install -d $(FBSHAREDIR)
- 	@install -d $(FBSHAREDIR)/help
--	@./scripts/install_help.sh $(VARIANT) $(FBSHAREDIR)/help
- 	@install -d $(FBSHAREDIR)/network
- 	@install -m 0644 $(wildcard data/network/*.xml) $(FBSHAREDIR)/network
- 	@install -d $(FBSHAREDIR)/network/certificates
-@@ -58,8 +57,8 @@
- 	@install -d $(FBSHAREDIR)/resources
- 	@install -m 0644 $(wildcard data/resources/*.xml) $(FBSHAREDIR)/resources
- 	@install -d $(DESTDIR)$(APPIMAGEDIR_REAL)
--	@install -m 0644 $(wildcard data/icons/toolbar/$(VARIANT)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
--	@install -m 0644 $(wildcard data/icons/filetree/$(VARIANT)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
-+	@install -m 0644 $(wildcard data/icons/toolbar/$(TARGET_ARCH)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
-+	@install -m 0644 $(wildcard data/icons/filetree/$(TARGET_ARCH)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
- 	@install -m 0644 $(wildcard data/icons/booktree/new/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
- 	@make -C $(TARGET_ARCH) RESOLUTION=$(RESOLUTION) install
- 
diff --git a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/fix-cflags-fribidi.patch b/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/fix-cflags-fribidi.patch
deleted file mode 100644
index e72fa8c..0000000
--- a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/fix-cflags-fribidi.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- fbreader-0.12.10/makefiles/config.mk.orig	2016-05-03 11:11:07.259734561 -0400
-+++ fbreader-0.12.10/makefiles/config.mk	2016-05-03 11:11:37.447735786 -0400
-@@ -38,7 +38,7 @@
- 	LDFLAGS += -pg
- endif
- 
--ZINCLUDE = -I $(ROOTDIR)/zlibrary/core/include -I $(ROOTDIR)/zlibrary/text/include
-+ZINCLUDE = $(shell pkg-config --cflags fribidi) -I $(ROOTDIR)/zlibrary/core/include -I $(ROOTDIR)/zlibrary/text/include
- 
- ZLSHARED ?= yes
- 
diff --git a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/fix-return-code-gcc6.patch b/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/fix-return-code-gcc6.patch
deleted file mode 100644
index 97ab4d3..0000000
--- a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/fix-return-code-gcc6.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- fbreader-0.12.10/fbreader/src/database/booksdb/BooksDB.cpp.orig	2016-06-08 14:54:04.206196501 -0400
-+++ fbreader-0.12.10/fbreader/src/database/booksdb/BooksDB.cpp	2016-06-08 14:54:17.686196322 -0400
-@@ -145,7 +145,7 @@
- 
- 	myFindFileId->setFileName(fileName);
- 	if (!myFindFileId->run()) {
--		return false;
-+		return 0;
- 	}
- 	((DBIntValue&)*myLoadBook->parameter("@file_id").value()) = myFindFileId->fileId();
- 	shared_ptr<DBDataReader> reader = myLoadBook->executeReader();
diff --git a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/gcc45.patch b/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/gcc45.patch
deleted file mode 100644
index 00cba10..0000000
--- a/meta-gpe/recipes-support/fbreader/fbreader-0.12.10/gcc45.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-  Fix compilation with gcc 4.5
-
-  [FBreader Ticket #340] -- http://old.fbreader.org/mantis/view.php?id=340
-
-  Without that patch we have:
-    Compiling Library.o ...Library.cpp:42:1: error: 'Library::Library' names the constructor, not the type
-
-  Upstream-Status: Accepted [Fixed in Version 0.14.0]
-
---- fbreader-0.12.10-orig/fbreader/src/library/Library.cpp	2010-04-01 15:14:24.000000000 +0200
-+++ fbreader-0.12.10/fbreader/src/library/Library.cpp	2010-04-13 13:34:06.000000000 +0200
-@@ -39,7 +39,7 @@
- shared_ptr<Library> Library::ourInstance;
- const size_t Library::MaxRecentListSize = 10;
- 
--Library::Library &Library::Instance() {
-+Library &Library::Instance() {
- 	if (ourInstance.isNull()) {
- 		ourInstance = new Library();
- 	}
diff --git a/meta-gpe/recipes-support/fbreader/fbreader_0.12.10.bb b/meta-gpe/recipes-support/fbreader/fbreader_0.12.10.bb
deleted file mode 100644
index 2dbcef4..0000000
--- a/meta-gpe/recipes-support/fbreader/fbreader_0.12.10.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-SUMMARY = "FBreader is an ebook reader"
-HOMEPAGE = "http://www.fbreader.org"
-SECTION = "x11/utils"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://fbreader/LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "gtk+ enca expat bzip2 libgpewidget virtual/libiconv liblinebreak libfribidi curl sqlite3"
-
-PR = "r1"
-
-SRC_URI = "http://www.fbreader.org/fbreader-sources-${PV}.tgz \
-file://Makefile.patch \
-file://gcc45.patch \
-file://fix-cflags-fribidi.patch \
-file://fix-return-code-gcc6.patch"
-
-# Set the defaults
-READER_RESOLUTION ?= "1024x600"
-READER_ARCH       ?= "desktop"
-READER_UI         ?= "gtk"
-READER_STATUS     ?= "release"
-
-FILES_${PN} += "${datadir}/FBReader ${datadir}/zlibrary ${libdir}/zlibrary"
-FILES_${PN}-dbg += "${libdir}/zlibrary/ui/.debug/"
-
-CFLAGS_append = " RESOLUTION=${READER_RESOLUTION} INSTALLDIR=${prefix}"
-EXTRA_OEMAKE = "CC='${CXX}' LD='${CXX}' LDFLAGS='${LDFLAGS}' INCPATH='${STAGING_INCDIR}' LIBPATH='${STAGING_LIBDIR}'"
-
-inherit pkgconfig
-
-do_configure() {
-    cd ${WORKDIR}/${PN}-${PV}
-    mv makefiles/target.mk makefiles/target.mk.orig
-
-    echo "TARGET_ARCH = ${READER_ARCH}" > makefiles/target.mk
-    echo "UI_TYPE = ${READER_UI}" >> makefiles/target.mk
-    echo "TARGET_STATUS = ${READER_STATUS}" >> makefiles/target.mk
-}
-
-do_install() {
-    oe_runmake install DESTDIR=${D} RESOLUTION=${READER_RESOLUTION}
-}
-
-SRC_URI[md5sum] = "da9ec4721efdb0ec0aaa182bff16ad82"
-SRC_URI[sha256sum] = "328aec454db80e225aa0b5c31adef74bf62a14357482947e87e9731686b3c624"
-
-PNBLACKLIST[fbreader] ?= "Depends on blacklisted libgpewidget - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gpe/recipes-support/fbreader/fbreader_git.bb b/meta-gpe/recipes-support/fbreader/fbreader_git.bb
deleted file mode 100644
index b3e7946..0000000
--- a/meta-gpe/recipes-support/fbreader/fbreader_git.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-SUMMARY = "FBreader is an ebook reader"
-HOMEPAGE = "http://www.fbreader.org"
-SECTION = "x11/utils"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://fbreader/LICENSE;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "gtk+ enca expat bzip2 libgpewidget virtual/libiconv liblinebreak libfribidi curl sqlite3"
-SRCREV = "2cf1ec0e306e1122dbed850bfa005cd59a6168ee"
-PV = "0.99.5+gitr${SRCPV}"
-
-PR = "r1"
-
-DEFAULT_PREFERENCE = "-1"
-
-SRC_URI = "git://github.com/geometer/FBReader.git;protocol=http;branch=master \
-           file://0001-Fix-installation-of-the-icons-when-RESOLUTION-is-set.patch"
-
-# Set the defaults
-READER_RESOLUTION ?= "1024x600"
-READER_ARCH       ?= "desktop"
-READER_UI         ?= "gtk"
-READER_STATUS     ?= "release"
-
-FILES_${PN} += "${datadir}/FBReader ${datadir}/zlibrary ${libdir}/zlibrary"
-FILES_${PN}-dbg += "${libdir}/zlibrary/ui/.debug/"
-
-CFLAGS_append = " RESOLUTION=${READER_RESOLUTION} INSTALLDIR=${prefix}"
-EXTRA_OEMAKE = "CC='${CXX}' LD='${CXX}' INCPATH='${STAGING_INCDIR}' LIBPATH='${STAGING_LIBDIR}'"
-inherit pkgconfig
-
-S = "${WORKDIR}/git"
-
-do_configure() {
-    cd "${S}"
-
-    echo "TARGET_ARCH = ${READER_ARCH}" > makefiles/target.mk
-    echo "UI_TYPE = ${READER_UI}" >> makefiles/target.mk
-    echo "TARGET_STATUS = ${READER_STATUS}" >> makefiles/target.mk
-}
-
-do_install() {
-    oe_runmake install DESTDIR=${D} RESOLUTION=${READER_RESOLUTION}
-}
-
-# http://errors.yoctoproject.org/Errors/Details/68618/
-PNBLACKLIST[fbreader] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-gpe/recipes-support/fbreader/files/0001-Fix-installation-of-the-icons-when-RESOLUTION-is-set.patch b/meta-gpe/recipes-support/fbreader/files/0001-Fix-installation-of-the-icons-when-RESOLUTION-is-set.patch
deleted file mode 100644
index f6e1202..0000000
--- a/meta-gpe/recipes-support/fbreader/files/0001-Fix-installation-of-the-icons-when-RESOLUTION-is-set.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From da4170b61bb41eff0af170d1d77bfd90f9ebe5dd Mon Sep 17 00:00:00 2001
-From: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
-Date: Fri, 20 Jan 2012 11:34:42 +0100
-Subject: [PATCH] Fix installation of the icons when RESOLUTION is set
-
-When resolution is set, the following code(in fbreader/Makefile) is executed:
-  VARIANT = $(TARGET_ARCH)
-  ifneq "$(RESOLUTION)" ""
-    VARIANT = $(TARGET_ARCH)_$(RESOLUTION)
-  endif
-
-This fix is based on a patch from the openembedded project,
-  which can be found here:
-    http://cgit.openembedded.org/openembedded/tree/recipes/fbreader/fbreader-0.12.1/Makefile.patch
-
-Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo at no-log.org>
----
- Submitted trough github to git://github.com/geometer/FBReader.git as a pull request
-
- fbreader/Makefile |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/fbreader/Makefile b/fbreader/Makefile
-index bfa9242..03e6cc3 100644
---- a/fbreader/Makefile
-+++ b/fbreader/Makefile
-@@ -60,8 +60,8 @@ do_install:
- 	@install -d $(FBSHAREDIR)/resources
- 	@install -m 0644 $(wildcard data/resources/*.xml) $(FBSHAREDIR)/resources
- 	@install -d $(DESTDIR)$(APPIMAGEDIR_REAL)
--	@install -m 0644 $(wildcard data/icons/toolbar/$(VARIANT)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
--	@install -m 0644 $(wildcard data/icons/filetree/$(VARIANT)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
-+	@install -m 0644 $(wildcard data/icons/toolbar/$(TARGET_ARCH)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
-+	@install -m 0644 $(wildcard data/icons/filetree/$(TARGET_ARCH)/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
- 	@install -m 0644 $(wildcard data/icons/booktree/new/*.*) $(DESTDIR)$(APPIMAGEDIR_REAL)
- 	@make -C $(TARGET_ARCH) RESOLUTION=$(RESOLUTION) install
- 
--- 
-1.7.4.1
-
diff --git a/meta-multimedia/recipes-dvb/dvb-apps/dvb-apps_1.1.1.bb b/meta-multimedia/recipes-dvb/dvb-apps/dvb-apps_1.1.1.bb
deleted file mode 100644
index 4a7ed9a..0000000
--- a/meta-multimedia/recipes-dvb/dvb-apps/dvb-apps_1.1.1.bb
+++ /dev/null
@@ -1,136 +0,0 @@
-HOMEPAGE = "http://www.linuxtv.org"
-SUMMARY = "Linux DVB API applications and utilities"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-
-DEPENDS = "v4l-utils-native"
-
-SRC_URI = " \
-            hg://linuxtv.org/hg;module=dvb-apps;protocol=http;name=apps \
-            git://linuxtv.org/git/dtv-scan-tables.git;protocol=http;destsuffix=dvb-apps/initial-scan-tables;name=scantables \
-          "
-SRCREV_apps = "3d43b280298c"
-SRCREV_scantables = "ceb11833b35f05813b1f0397a60e0f3b99430aab"
-SRCREV_FORMAT = "apps_scantables"
-
-S = "${WORKDIR}/${BPN}"
-
-TARGET_CC_ARCH += "${LDFLAGS}"
-EXTRA_OEMAKE = "VERSION_FILE='${STAGING_INCDIR}/linux/dvb/version.h'"
-
-do_configure() {
-    sed -i -e s:/usr/include:${STAGING_INCDIR}:g util/av7110_loadkeys/generate-keynames.sh
-}
-
-do_compile_append() {
-# dvb-apps only support DVBAPI v3, so generate them from the DVBAPI v5 downloaded files
-    make -C initial-scan-tables clean
-    make -C initial-scan-tables dvbv3
-}
-
-do_install() {
-    make DESTDIR=${D} install
-# dvb-apps only support DVBAPI v3, so only install the generated DVBAPI v3 files
-    make -C initial-scan-tables DATADIR=${D}/${datadir} DVBV3DIR=dvb install_v3
-
-    install -d ${D}/${bindir}
-    install -d ${D}/${docdir}/dvb-apps
-    install -d ${D}/${docdir}/dvb-apps/szap
-    chmod a+rx ${D}/${libdir}/*.so*
-
-    # Install tests
-    install -m 0755 ${S}/test/setvoltage      ${D}${bindir}/test_setvoltage
-    install -m 0755 ${S}/test/set22k          ${D}${bindir}/test_set22k
-    install -m 0755 ${S}/test/sendburst       ${D}${bindir}/test_sendburst
-    install -m 0755 ${S}/test/diseqc          ${D}${bindir}/test_diseqc
-    install -m 0755 ${S}/test/test_sections   ${D}${bindir}/
-    install -m 0755 ${S}/test/test_av_play    ${D}${bindir}/
-    install -m 0755 ${S}/test/test_stillimage ${D}${bindir}/
-    install -m 0755 ${S}/test/test_dvr_play   ${D}${bindir}/
-    install -m 0755 ${S}/test/test_tt         ${D}${bindir}/
-    install -m 0755 ${S}/test/test_sec_ne     ${D}${bindir}/
-    install -m 0755 ${S}/test/test_stc        ${D}${bindir}/
-    install -m 0755 ${S}/test/test_av         ${D}${bindir}/
-    install -m 0755 ${S}/test/test_vevent     ${D}${bindir}/
-    install -m 0755 ${S}/test/test_pes        ${D}${bindir}/
-    install -m 0755 ${S}/test/test_dvr        ${D}${bindir}/
-
-    cp -pPR ${S}/util/szap/channels-conf* ${D}/${docdir}/dvb-apps/szap/
-    cp -pPR ${S}/util/szap/README   ${D}/${docdir}/dvb-apps/szap/
-}
-
-python populate_packages_prepend () {
-    dvb_libdir = bb.data.expand('${libdir}', d)
-    do_split_packages(d, dvb_libdir, '^lib(.*)\.so$', 'lib%s', 'DVB %s package', extra_depends='', allow_links=True)
-    do_split_packages(d, dvb_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'DVB %s development package', extra_depends='${PN}-dev')
-    do_split_packages(d, dvb_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'DVB %s development package', extra_depends='${PN}-dev')
-    do_split_packages(d, dvb_libdir, '^lib(.*)\.so\.*', 'lib%s', 'DVB %s library', extra_depends='', allow_links=True)
-}
-
-PACKAGES =+ "dvb-evtest dvb-evtest-dbg \
-             dvbapp-tests dvbapp-tests-dbg \
-             dvbdate dvbdate-dbg \
-             dvbtraffic dvbtraffic-dbg \
-             dvbnet dvbnet-dbg \
-             dvb-scan dvb-scan-dbg dvb-scan-data \
-             dvb-azap dvb-azap-dbg \
-             dvb-czap dvb-czap-dbg \
-             dvb-szap dvb-szap-dbg \
-             dvb-tzap dvb-tzap-dbg \
-             dvb-femon dvb-femon-dbg \
-             dvb-zap-data"
-
-# Expose the packages from the above spitting
-PACKAGES =+ "libdvbapi libdvbcfg libdvben50221 \
-             libesg libucsi libdvbsec"
-
-FILES_${PN} = "${bindir} ${datadir}/dvb"
-FILES_${PN}-doc = ""
-FILES_${PN}-dev = "${includedir}"
-
-FILES_dvb-evtest = "${bindir}/evtest"
-FILES_dvb-evtest-dbg = "${bindir}/.debug/evtest"
-RCONFLICTS_dvb-evtest = "evtest"
-
-FILES_dvbapp-tests = "${bindir}/*test* "
-FILES_dvbapp-tests-dbg = "${bindir}/.debug/*test*"
-
-FILES_dvbdate = "${bindir}/dvbdate"
-FILES_dvbdate-dbg = "${bindir}/.debug/dvbdate"
-
-FILES_dvbtraffic = "${bindir}/dvbtraffic"
-FILES_dvbtraffic-dbg = "${bindir}/.debug/dvbtraffic"
-
-FILES_dvbnet = "${bindir}/dvbnet"
-FILES_dvbnet-dbg = "${bindir}/.debug/dvbnet"
-
-FILES_dvb-scan = "${bindir}/*scan "
-FILES_dvb-scan-dbg = "${bindir}/.debug/*scan"
-FILES_dvb-scan-data = "${datadir}/dvb"
-
-FILES_dvb-azap = "${bindir}/azap"
-FILES_dvb-azap-dbg = "${bindir}/.debug/azap"
-
-FILES_dvb-czap = "${bindir}/czap"
-FILES_dvb-czap-dbg = "${bindir}/.debug/czap"
-
-FILES_dvb-szap = "${bindir}/szap"
-FILES_dvb-szap-dbg = "${bindir}/.debug/szap"
-
-FILES_dvb-tzap = "${bindir}/tzap"
-FILES_dvb-tzap-dbg = "${bindir}/.debug/tzap"
-
-FILES_dvb-femon = "${bindir}/femon"
-FILES_dvb-femon-dbg = "${bindir}/.debug/femon"
-
-FILES_dvb-zap-data = "${docdir}/dvb-apps/szap"
-
-RDEPENDS_dvbdate =+ "libdvbapi libucsi"
-RDEPENDS_dvbtraffic =+ "libdvbapi"
-RDEPENDS_dvb-scan =+ "libdvbapi libdvbcfg libdvbsec"
-RDEPENDS_dvb-apps =+ "libdvbapi libdvbcfg libdvbsec libdvben50221 libucsi"
-RDEPENDS_dvb-femon =+ "libdvbapi"
-RDEPENDS_dvbnet =+ "libdvbapi"
-
-PNBLACKLIST[dvb-apps] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130603/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch
deleted file mode 100644
index 3283a5b..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Fix-checks-for-sse2-mmx.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From f0dab6d6fe4b0aae4394eee93be86e9747c6ed5c Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Tue, 22 Nov 2016 05:07:38 +0000
-Subject: [PATCH] Fix checks for sse2/mmx
-
-Just checking for cmdline options is not enough
-its better to check for builtin defines to be
-sure, clang does not error out on sse2 options on
-arm e.g. and it ends up doing SSE2 stuff for arm
-which is not desired
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
- configure | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/configure b/configure
-index 47d2cf2..4be000c 100755
---- a/configure
-+++ b/configure
-@@ -118,8 +118,14 @@ fi
- # Valiate compiler
- check_cc || die 'No C compiler found'
- check_cc_header execinfo
--check_cc_option mmx
--check_cc_option sse2
-+check_cc_snippet mmx '#ifndef __MMX__
-+error "MMX not supported"
-+#endif
-+'
-+check_cc_snippet sse2 '#ifndef __SSE2__
-+error "SSE2 not supported"
-+#endif
-+'
- 
- if check_cc '
- #if !defined(__clang__)
--- 
-1.9.1
-
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch
deleted file mode 100644
index 248a5e6..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-Makefile-Ignore-warning-about-wrong-includes.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 7d672305c7ad2f716dfe1c487b525a1a92954d4a Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Tue, 22 Nov 2016 06:22:36 +0000
-Subject: [PATCH] Makefile: Ignore warning about wrong includes
-
-It happens on musl especially
-usr/include/sys/poll.h:1:2: error: redirecting incorrect #include <sys/poll.h> to <poll.h> [-Werror,-W#warnings]
-| #warning redirecting incorrect #include <sys/poll.h> to <poll.h>
-|  ^
-| In file included from src/avahi.c:48:
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
- Makefile | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Makefile b/Makefile
-index f41ef1a..cc7b249 100644
---- a/Makefile
-+++ b/Makefile
-@@ -54,6 +54,7 @@ CFLAGS  += -Wno-microsoft -Qunused-arguments -Wno-unused-function
- CFLAGS  += -Wno-unused-value -Wno-tautological-constant-out-of-range-compare
- CFLAGS  += -Wno-parentheses-equality -Wno-incompatible-pointer-types
- CFLAGS  += -Wno-error=varargs
-+CFLAGS  += -Wno-error=\#warnings
- endif
- 
- ifeq ($(CONFIG_LIBFFMPEG_STATIC),yes)
--- 
-1.8.3.1
-
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch
deleted file mode 100644
index a4c4c4d..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-disable-varargs-warning-on-clang.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 906d95695af95970bf551ea55b6c3e70332c6b97 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Tue, 22 Nov 2016 05:22:32 +0000
-Subject: [PATCH] disable varargs warning on clang
-
-The issue is that 'len' is an unsigned char and we violate the promotion rules
-for passing the value to va_start.
-
-passing an object that undergoes defau
-lt argument promotion to 'va_start' has undefined behavior [-Wvarargs]
-|   va_start(ap, len);
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
- Makefile | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Makefile b/Makefile
-index 8c5e380..f41ef1a 100644
---- a/Makefile
-+++ b/Makefile
-@@ -53,6 +53,7 @@ ifeq ($(COMPILER), clang)
- CFLAGS  += -Wno-microsoft -Qunused-arguments -Wno-unused-function
- CFLAGS  += -Wno-unused-value -Wno-tautological-constant-out-of-range-compare
- CFLAGS  += -Wno-parentheses-equality -Wno-incompatible-pointer-types
-+CFLAGS  += -Wno-error=varargs
- endif
- 
- ifeq ($(CONFIG_LIBFFMPEG_STATIC),yes)
--- 
-1.9.1
-
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch
deleted file mode 100644
index ea34cdb..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-dvr-Use-labs-instead-of-abs.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From a715671eadcbf989fdaf05f62e71b93ac1749615 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Tue, 22 Nov 2016 06:08:31 +0000
-Subject: [PATCH] dvr: Use labs() instead of abs()
-
-Makes clang happy
-
-dvr/dvr_db.c:853:10: error: absolute value function
-'abs' given an argument of type 'long' but has parameter of type 'int' which may cause truncation of value [-Werror,-Wabsolute-value]
-if ((abs(de->de_start - e->start) < 600) && (abs(de->de_stop - e->stop) < 600)) {
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
- src/dvr/dvr_db.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/dvr/dvr_db.c b/src/dvr/dvr_db.c
-index 165caa6..5656569 100644
---- a/src/dvr/dvr_db.c
-+++ b/src/dvr/dvr_db.c
-@@ -414,11 +414,11 @@ dvr_entry_fuzzy_match(dvr_entry_t *de, epg_broadcast_t *e)
-   /* Wrong length (+/-20%) */
-   t1 = de->de_stop - de->de_start;
-   t2  = e->stop - e->start;
--  if ( abs(t2 - t1) > (t1 / 5) )
-+  if ( labs(t2 - t1) > (t1 / 5) )
-     return 0;
- 
-   /* Outside of window */
--  if (abs(e->start - de->de_start) > de->de_config->dvr_update_window)
-+  if (labs(e->start - de->de_start) > de->de_config->dvr_update_window)
-     return 0;
-   
-   /* Title match (or contains?) */
--- 
-1.9.1
-
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch b/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch
deleted file mode 100644
index 484e723..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend/0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From c3767e189e90965407937b6178adbbd8cdafe31d Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Tue, 22 Nov 2016 05:59:10 +0000
-Subject: [PATCH] hdhomerun: Override forced overrdiing og CC/STRIP and CFLAGS
-
-This is required for cross compiling otherwise it ends up
-using build host gcc
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
----
- Makefile.hdhomerun | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.hdhomerun b/Makefile.hdhomerun
-index 943ffec..8bd14ff 100644
---- a/Makefile.hdhomerun
-+++ b/Makefile.hdhomerun
-@@ -18,8 +18,8 @@
- 
- include $(dir $(lastword $(MAKEFILE_LIST))).config.mk
- 
--unexport CFLAGS
--unexport LDFLAGS
-+#unexport CFLAGS
-+#unexport LDFLAGS
- 
- define DOWNLOAD
- 	@mkdir -p $(LIBHDHRDIR)/build
-@@ -75,6 +75,8 @@ $(LIBHDHRDIR)/$(LIBHDHR)/.tvh_download:
- 	$(call DOWNLOAD,$(LIBHDHR_URL),$(LIBHDHRDIR)/$(LIBHDHR_TB),$(LIBHDHR_SHA1))
- 	$(call UNTAR,$(LIBHDHR_TB),z)
- 	ln -sf libhdhomerun $(LIBHDHRDIR)/$(LIBHDHR)
-+	@sed -i -e "s/CC.*:=/CC ?=/" $(LIBHDHRDIR)/$(LIBHDHR)/Makefile
-+	@sed -i -e "s/STRIP.*:=/STRIP ?=/" $(LIBHDHRDIR)/$(LIBHDHR)/Makefile
- 	@touch $@
- 
- $(LIBHDHRDIR)/$(LIBHDHR)/.tvh_build: \
--- 
-1.9.1
-
diff --git a/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb b/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
deleted file mode 100644
index 3b73549..0000000
--- a/meta-multimedia/recipes-dvb/tvheadend/tvheadend_git.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-SUMMARY = "Tvheadend TV streaming server"
-HOMEPAGE = "https://www.lonelycoder.com/redmine/projects/tvheadend"
-
-DEPENDS = "avahi zlib openssl python-native dvb-apps"
-
-LICENSE = "GPLv3+"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=9cae5acac2e9ee2fc3aec01ac88ce5db"
-
-SRC_URI = "git://github.com/tvheadend/tvheadend.git;branch=release/4.0 \
-           file://0001-Fix-checks-for-sse2-mmx.patch \
-           file://0001-disable-varargs-warning-on-clang.patch \
-           file://0001-hdhomerun-Override-forced-overrdiing-og-CC-STRIP-and.patch \
-           file://0001-dvr-Use-labs-instead-of-abs.patch \
-           file://0001-Makefile-Ignore-warning-about-wrong-includes.patch \
-"
-SRCREV = "64fec8120158de585e18be705055259484518d94"
-PV = "4.0.9+git${SRCREV}"
-
-S = "${WORKDIR}/git"
-
-PACKAGECONFIG ?= ""
-PACKAGECONFIG[uriparser] = "--enable-uriparser,--disable-uriparser,uriparser"
-
-do_configure() {
-    ./configure ${PACKAGECONFIG_CONFARGS} \
-                --prefix=${prefix} \
-                --libdir=${libdir} \
-                --bindir=${bindir} \
-                --datadir=${datadir} \
-                --arch=${TARGET_ARCH} \
-                --disable-dvbscan \
-                --disable-bundle
-}
-
-do_install() {
-    oe_runmake install DESTDIR=${D}
-}
-
-FILES_${PN} += "${datadir}/${BPN}"
-
-RDEPENDS_${PN} += "libdvben50221 libucsi libdvbapi"
-
-PNBLACKLIST[tvheadend] ?= "Depends on blacklisted dvb-apps - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts/0001-Update-to-p8-platform.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts/0001-Update-to-p8-platform.patch
deleted file mode 100644
index c4a6ae7..0000000
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts/0001-Update-to-p8-platform.patch
+++ /dev/null
@@ -1,427 +0,0 @@
-From 06a8224c99282ac1a606edd9e8ea3f591112942d Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen at dominion.thruhere.net>
-Date: Thu, 18 Feb 2016 14:04:31 +0100
-Subject: [PATCH] Update to p8-platform
-
----
- CMakeLists.txt                         |  6 +++---
- pvr.hts/changelog.txt                  |  4 ++--
- src/AutoRecordings.cpp                 |  2 +-
- src/HTSPConnection.cpp                 |  8 +++----
- src/HTSPDemuxer.cpp                    |  2 +-
- src/HTSPVFS.cpp                        |  6 +++---
- src/TimeRecordings.cpp                 |  2 +-
- src/Tvheadend.cpp                      |  4 ++--
- src/Tvheadend.h                        | 38 +++++++++++++++++-----------------
- src/client.cpp                         |  4 ++--
- src/client.h                           |  4 ++--
- src/tvheadend/Subscription.cpp         |  2 +-
- src/tvheadend/Subscription.h           |  4 ++--
- src/tvheadend/utilities/AsyncState.cpp |  4 ++--
- src/tvheadend/utilities/AsyncState.h   |  6 +++---
- 15 files changed, 48 insertions(+), 48 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 0842682..cb04942 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -6,10 +6,10 @@ enable_language(CXX)
- 
- find_package(kodi REQUIRED)
- find_package(kodiplatform REQUIRED)
--find_package(platform REQUIRED)
-+find_package(p8-platform REQUIRED)
- 
- include_directories(${kodiplatform_INCLUDE_DIRS}
--                    ${platform_INCLUDE_DIRS}
-+                    ${p8-platform_INCLUDE_DIRS}
-                     ${KODI_INCLUDE_DIR}
-                     ${PROJECT_SOURCE_DIR}/lib)
- 
-@@ -95,7 +95,7 @@ list(APPEND HTS_SOURCES
- 
- add_subdirectory(lib/libhts)
- 
--set(DEPLIBS ${platform_LIBRARIES} hts)
-+set(DEPLIBS ${p8-platform_LIBRARIES} hts)
- if(WIN32)
-   list(APPEND DEPLIBS ws2_32)
- endif()
-diff --git a/pvr.hts/changelog.txt b/pvr.hts/changelog.txt
-index 9ffa33c..1e7fe30 100644
---- a/pvr.hts/changelog.txt
-+++ b/pvr.hts/changelog.txt
-@@ -49,7 +49,7 @@
- - fixed: Autorec: Start and stop time handling.
- - fixed: LocaltimeToUTC conversion (timer settings clock display incorrect).
- - fixed: Several issues with predictive tuning.
--- added: build: Automatically fill in platform and library name.
-+- added: build: Automatically fill in p8-platform and library name.
- - fixed: Use epg data only for creation of epg-based timers.
- - improved: Do not try to reconnect to tvh while suspending or not fully awake again.
- 
-@@ -97,7 +97,7 @@
- - added: support for creating repeating timers, aka time schedules
- - fixed: conditions for addon restart after settings changes
- - internal: fixed build system regressions introduced with move to cmake
--- internal: updated to use libplatform
-+- internal: updated to use libp8-platform
- 
- 2.1.7
- - added: support for radio channel groups
-diff --git a/src/AutoRecordings.cpp b/src/AutoRecordings.cpp
-index 5fa60a0..d9e5e1d 100644
---- a/src/AutoRecordings.cpp
-+++ b/src/AutoRecordings.cpp
-@@ -26,7 +26,7 @@
- #include "tvheadend/utilities/Utilities.h"
- #include "tvheadend/utilities/Logger.h"
- 
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend;
- using namespace tvheadend::entity;
- using namespace tvheadend::utilities;
-diff --git a/src/HTSPConnection.cpp b/src/HTSPConnection.cpp
-index aec1296..86f5004 100644
---- a/src/HTSPConnection.cpp
-+++ b/src/HTSPConnection.cpp
-@@ -19,9 +19,9 @@
-  *
-  */
- 
--#include "platform/threads/mutex.h"
--#include "platform/util/StringUtils.h"
--#include "platform/sockets/tcp.h"
-+#include "p8-platform/threads/mutex.h"
-+#include "p8-platform/util/StringUtils.h"
-+#include "p8-platform/sockets/tcp.h"
- 
- extern "C" {
- #include "libhts/htsmsg_binary.h"
-@@ -33,7 +33,7 @@ extern "C" {
- 
- using namespace std;
- using namespace ADDON;
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend;
- using namespace tvheadend::utilities;
- 
-diff --git a/src/HTSPDemuxer.cpp b/src/HTSPDemuxer.cpp
-index a6e1f12..7f45345 100644
---- a/src/HTSPDemuxer.cpp
-+++ b/src/HTSPDemuxer.cpp
-@@ -27,7 +27,7 @@
- 
- using namespace std;
- using namespace ADDON;
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend;
- using namespace tvheadend::utilities;
- 
-diff --git a/src/HTSPVFS.cpp b/src/HTSPVFS.cpp
-index 0463f56..0404bab 100644
---- a/src/HTSPVFS.cpp
-+++ b/src/HTSPVFS.cpp
-@@ -19,8 +19,8 @@
-  *
-  */
- 
--#include "platform/threads/mutex.h"
--#include "platform/util/StringUtils.h"
-+#include "p8-platform/threads/mutex.h"
-+#include "p8-platform/util/StringUtils.h"
- #include "tvheadend/utilities/Logger.h"
- 
- extern "C" {
-@@ -30,7 +30,7 @@ extern "C" {
- #include "Tvheadend.h"
- 
- using namespace std;
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend::utilities;
- 
- /*
-diff --git a/src/TimeRecordings.cpp b/src/TimeRecordings.cpp
-index 5d34938..97aae09 100644
---- a/src/TimeRecordings.cpp
-+++ b/src/TimeRecordings.cpp
-@@ -25,7 +25,7 @@
- #include "tvheadend/utilities/Utilities.h"
- #include "tvheadend/utilities/Logger.h"
- 
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend;
- using namespace tvheadend::entity;
- using namespace tvheadend::utilities;
-diff --git a/src/Tvheadend.cpp b/src/Tvheadend.cpp
-index 2057241..14c3bd4 100644
---- a/src/Tvheadend.cpp
-+++ b/src/Tvheadend.cpp
-@@ -23,7 +23,7 @@
- #include <ctime>
- #include <memory>
- 
--#include "platform/util/StringUtils.h"
-+#include "p8-platform/util/StringUtils.h"
- 
- #include "Tvheadend.h"
- #include "tvheadend/utilities/Utilities.h"
-@@ -31,7 +31,7 @@
- 
- using namespace std;
- using namespace ADDON;
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend;
- using namespace tvheadend::entity;
- using namespace tvheadend::utilities;
-diff --git a/src/Tvheadend.h b/src/Tvheadend.h
-index 2ce4552..e794716 100644
---- a/src/Tvheadend.h
-+++ b/src/Tvheadend.h
-@@ -22,10 +22,10 @@
-  */
- 
- #include "client.h"
--#include "platform/sockets/tcp.h"
--#include "platform/threads/threads.h"
--#include "platform/threads/mutex.h"
--#include "platform/util/buffer.h"
-+#include "p8-platform/sockets/tcp.h"
-+#include "p8-platform/threads/threads.h"
-+#include "p8-platform/threads/mutex.h"
-+#include "p8-platform/util/buffer.h"
- #include "kodi/xbmc_codec_types.h"
- #include "kodi/xbmc_stream_utils.hpp"
- #include "kodi/libXBMC_addon.h"
-@@ -88,7 +88,7 @@ class CHTSPMessage;
- 
- /* Typedefs */
- typedef std::map<uint32_t,CHTSPResponse*> CHTSPResponseList;
--typedef PLATFORM::SyncedBuffer<CHTSPMessage> CHTSPMessageQueue;
-+typedef P8PLATFORM::SyncedBuffer<CHTSPMessage> CHTSPMessageQueue;
- 
- /*
-  * HTSP Response handler
-@@ -98,10 +98,10 @@ class CHTSPResponse
- public:
-   CHTSPResponse();
-   ~CHTSPResponse();
--  htsmsg_t *Get ( PLATFORM::CMutex &mutex, uint32_t timeout );
-+  htsmsg_t *Get ( P8PLATFORM::CMutex &mutex, uint32_t timeout );
-   void      Set ( htsmsg_t *m );
- private:
--  PLATFORM::CCondition<volatile bool> m_cond;
-+  P8PLATFORM::CCondition<volatile bool> m_cond;
-   bool                                m_flag;
-   htsmsg_t                           *m_msg;
- };
-@@ -146,7 +146,7 @@ public:
-  * HTSP Connection registration thread
-  */
- class CHTSPRegister
--  : public PLATFORM::CThread
-+  : public P8PLATFORM::CThread
- {
-   friend class CHTSPConnection;
- 
-@@ -163,7 +163,7 @@ private:
-  * HTSP Connection
-  */
- class CHTSPConnection
--  : public PLATFORM::CThread
-+  : public P8PLATFORM::CThread
- {
-   friend class CHTSPRegister;
- 
-@@ -190,7 +190,7 @@ public:
-   inline bool IsConnected       ( void ) const { return m_ready; }
-   bool        WaitForConnection ( void );
- 
--  inline PLATFORM::CMutex& Mutex ( void ) { return m_mutex; }
-+  inline P8PLATFORM::CMutex& Mutex ( void ) { return m_mutex; }
- 
-   void        OnSleep ( void );
-   void        OnWake  ( void );
-@@ -202,10 +202,10 @@ private:
-   bool        SendHello        ( void );
-   bool        SendAuth         ( const std::string &u, const std::string &p );
- 
--  PLATFORM::CTcpSocket               *m_socket;
--  PLATFORM::CMutex                    m_mutex;
-+  P8PLATFORM::CTcpSocket               *m_socket;
-+  P8PLATFORM::CMutex                    m_mutex;
-   CHTSPRegister                       m_regThread;
--  PLATFORM::CCondition<volatile bool> m_regCond;
-+  P8PLATFORM::CCondition<volatile bool> m_regCond;
-   bool                                m_ready;
-   uint32_t                            m_seq;
-   std::string                         m_serverName;
-@@ -273,13 +273,13 @@ public:
-   void SetStreamingProfile(const std::string &profile);
- 
- private:
--  PLATFORM::CMutex                        m_mutex;
-+  P8PLATFORM::CMutex                        m_mutex;
-   CHTSPConnection                        &m_conn;
--  PLATFORM::SyncedBuffer<DemuxPacket*>    m_pktBuffer;
-+  P8PLATFORM::SyncedBuffer<DemuxPacket*>    m_pktBuffer;
-   ADDON::XbmcStreamProperties             m_streams;
-   std::map<int,int>                       m_streamStat;
-   int64_t                                 m_seekTime;
--  PLATFORM::CCondition<volatile int64_t>  m_seekCond;
-+  P8PLATFORM::CCondition<volatile int64_t>  m_seekCond;
-   bool                                    m_seeking;
-   bool                                    m_speedChange;
-   tvheadend::status::SourceInfo           m_sourceInfo;
-@@ -350,7 +350,7 @@ private:
-  * Root object for Tvheadend connection
-  */
- class CTvheadend
--  : public PLATFORM::CThread
-+  : public P8PLATFORM::CThread
- {
- public:
-   CTvheadend();
-@@ -422,7 +422,7 @@ private:
-    */
-   tvheadend::Profiles         m_profiles;
- 
--  PLATFORM::CMutex            m_mutex;
-+  P8PLATFORM::CMutex            m_mutex;
- 
-   CHTSPConnection             m_conn;
- 
-@@ -519,7 +519,7 @@ public:
-    */
-   bool WaitForConnection ( void )
-   {
--    PLATFORM::CLockObject lock(m_conn.Mutex());
-+    P8PLATFORM::CLockObject lock(m_conn.Mutex());
-     return m_conn.WaitForConnection();
-   }
-   std::string GetServerName    ( void )
-diff --git a/src/client.cpp b/src/client.cpp
-index 94d2db9..3295914 100644
---- a/src/client.cpp
-+++ b/src/client.cpp
-@@ -22,14 +22,14 @@
- #include "client.h"
- #include "kodi/xbmc_pvr_dll.h"
- #include "kodi/libKODI_guilib.h"
--#include "platform/util/util.h"
-+#include "p8-platform/util/util.h"
- #include "Tvheadend.h"
- #include "tvheadend/Settings.h"
- #include "tvheadend/utilities/Logger.h"
- 
- using namespace std;
- using namespace ADDON;
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend;
- using namespace tvheadend::utilities;
- 
-diff --git a/src/client.h b/src/client.h
-index 3a5f950..a10659b 100644
---- a/src/client.h
-+++ b/src/client.h
-@@ -20,8 +20,8 @@
-  *
-  */
- 
--#include "platform/os.h"
--#include "platform/threads/mutex.h"
-+#include "p8-platform/os.h"
-+#include "p8-platform/threads/mutex.h"
- #include "kodi/libXBMC_addon.h"
- #include "kodi/libXBMC_pvr.h"
- #include "kodi/libXBMC_codec.h"
-diff --git a/src/tvheadend/Subscription.cpp b/src/tvheadend/Subscription.cpp
-index 182ca7f..e18af1e 100644
---- a/src/tvheadend/Subscription.cpp
-+++ b/src/tvheadend/Subscription.cpp
-@@ -23,7 +23,7 @@
- #include "utilities/Logger.h"
- #include "../Tvheadend.h"
- 
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- using namespace tvheadend;
- using namespace tvheadend::utilities;
- 
-diff --git a/src/tvheadend/Subscription.h b/src/tvheadend/Subscription.h
-index b03bcce..363e5ef 100644
---- a/src/tvheadend/Subscription.h
-+++ b/src/tvheadend/Subscription.h
-@@ -22,7 +22,7 @@
-  */
- 
- #include <string>
--#include "platform/threads/mutex.h"
-+#include "p8-platform/threads/mutex.h"
- 
- extern "C"
- {
-@@ -146,6 +146,6 @@ namespace tvheadend
-     std::string       m_profile;
-     CHTSPConnection   &m_conn;
- 
--    mutable PLATFORM::CMutex  m_mutex;
-+    mutable P8PLATFORM::CMutex  m_mutex;
-   };
- }
-diff --git a/src/tvheadend/utilities/AsyncState.cpp b/src/tvheadend/utilities/AsyncState.cpp
-index 0c30a93..1f4fdf3 100644
---- a/src/tvheadend/utilities/AsyncState.cpp
-+++ b/src/tvheadend/utilities/AsyncState.cpp
-@@ -22,7 +22,7 @@
- #include "AsyncState.h"
- 
- using namespace tvheadend::utilities;
--using namespace PLATFORM;
-+using namespace P8PLATFORM;
- 
- struct Param {
-   eAsyncState state;
-@@ -37,7 +37,7 @@ AsyncState::AsyncState(int timeout)
- 
- eAsyncState AsyncState::GetState()
- {
--  PLATFORM::CLockObject lock(m_mutex);
-+  P8PLATFORM::CLockObject lock(m_mutex);
-   return m_state;
- }
- 
-diff --git a/src/tvheadend/utilities/AsyncState.h b/src/tvheadend/utilities/AsyncState.h
-index 1d672da..0819cd8 100644
---- a/src/tvheadend/utilities/AsyncState.h
-+++ b/src/tvheadend/utilities/AsyncState.h
-@@ -22,7 +22,7 @@
- #ifndef ASYNCSTATE_H
- #define	ASYNCSTATE_H
- 
--#include "platform/threads/mutex.h"
-+#include "p8-platform/threads/mutex.h"
- 
- namespace tvheadend {
-   namespace utilities {
-@@ -75,8 +75,8 @@ namespace tvheadend {
-       static bool PredicateCallback ( void *param );
- 
-       eAsyncState m_state;
--      PLATFORM::CMutex m_mutex;
--      PLATFORM::CCondition<bool> m_condition;
-+      P8PLATFORM::CMutex m_mutex;
-+      P8PLATFORM::CCondition<bool> m_condition;
-       int m_timeout;
- 
-     };
--- 
-2.0.1
-
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts_git.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts_git.bb
deleted file mode 100644
index 7cafebf..0000000
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-addon-pvr-hts_git.bb
+++ /dev/null
@@ -1,57 +0,0 @@
-SUMMARY = "Kodi Media Center PVR plugins"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://src/client.cpp;md5=c8f6b73c5bc1048a3d6506700a7a91d2"
-
-DEPENDS = " \
-            zip-native \
-            p8platform \
-            kodi-platform \
-          "
-
-SRCREV_pvrhts = "7f75b70527922aef953123ff97ebaa22d9fb7cb4"
-
-SRCREV_FORMAT = "pvrhts"
-
-PV = "2.2.13+gitr${SRCPV}"
-SRC_URI = "git://github.com/kodi-pvr/pvr.hts.git;branch=Jarvis;destsuffix=pvr.hts;name=pvrhts \
-           file://0001-Update-to-p8-platform.patch \
-          "
-
-inherit cmake pkgconfig gettext
-
-S = "${WORKDIR}/pvr.hts"
-
-EXTRA_OECMAKE = " \
-	  -DADDONS_TO_BUILD=pvr.hts \
-	  -DADDON_SRC_PREFIX=${WORKDIR}/git \
-	  -DCMAKE_BUILD_TYPE=Debug \
-	  -DCMAKE_INSTALL_PREFIX=${datadir}/kodi/addons \
-          -DCMAKE_MODULE_PATH=${STAGING_DIR_HOST}${libdir}/kodi \
-          -DCMAKE_PREFIX_PATH=${STAGING_DIR_HOST}${prefix} \
-          -DPACKAGE_ZIP=1 \
-        "
-
-do_compile_prepend() {
-	sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' \
-	       -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g' \
-	          ${B}/CMakeFiles/*/flags.make
-	sed -i -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g'\
-	          ${B}/CMakeFiles/*/link.txt
-}
-
-# Make zip package for manual installation
-do_install_append() {
-	install -d ${D}${datadir}/kodi/addons/packages/
-	( cd ${D}${datadir}/kodi/addons
-	  zip -r ${D}${datadir}/kodi/addons/packages/pvr.hts-${PV}.zip pvr.hts -x '*.debug*' )
-}
-
-# Doesn't get added automagically, dlopen()?
-RDEPENDS_${PN} = "libkodiplatform"
-
-INSANE_SKIP_${PN} = "dev-so"
-FILES_${PN} += "${datadir}/kodi"
-FILES_${PN}-dbg += "${datadir}/kodi/addons/*/.debug/"
-
-PNBLACKLIST[kodi-addon-pvr-hts] ?= "Depends on blacklisted kodi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-fix-cross-compile-badness.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-fix-cross-compile-badness.patch
deleted file mode 100644
index 27e9d21..0000000
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/0001-fix-cross-compile-badness.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 3136317f096ea7fda4fb907e775a01952c4aae3d Mon Sep 17 00:00:00 2001
-From: Stefan Saraev <stefan at saraev.ca>
-Date: Fri, 19 Feb 2016 10:33:00 +0100
-Subject: [PATCH] fix cross compile badness
-
-From https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/mediacenter/kodi-platform/patches/kodi-platform-01_crosscompile-badness.patch
----
- CMakeLists.txt               | 2 +-
- kodiplatform-config.cmake.in | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index bf6b659..9abe773 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -22,7 +22,7 @@ if(NOT WIN32)
-   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
- endif()
- 
--set(kodiplatform_INCLUDE_DIRS ${TINYXML_INCLUDE_DIR} "${CMAKE_INSTALL_PREFIX}/include/kodi")
-+set(kodiplatform_INCLUDE_DIRS ${TINYXML_INCLUDE_DIR} "${CMAKE_INSTALL_PREFIX_TOOLCHAIN}/include/kodi")
- IF(WIN32)
-   LIST(APPEND kodiplatform_INCLUDE_DIRS "${CMAKE_INSTALL_PREFIX}/include/kodi/windows")
- ENDIF(WIN32)
-diff --git a/kodiplatform-config.cmake.in b/kodiplatform-config.cmake.in
-index 3fc5273..60bdf1b 100644
---- a/kodiplatform-config.cmake.in
-+++ b/kodiplatform-config.cmake.in
-@@ -10,7 +10,7 @@
- #
- # propagate these properties from one build system to the other
- set (kodiplatform_VERSION "@kodiplatform_VERSION_MAJOR at .@kodiplatform_VERSION_MINOR@")
--set (kodiplatform_INCLUDE_DIRS @kodiplatform_INCLUDE_DIRS@ @CMAKE_INSTALL_PREFIX@/include)
-+set (kodiplatform_INCLUDE_DIRS @kodiplatform_INCLUDE_DIRS@ @CMAKE_INSTALL_PREFIX_TOOLCHAIN@/include)
- set (kodiplatform_LIBRARY_DIRS "@CMAKE_LIBRARY_OUTPUT_DIRECTORY@")
- set (kodiplatform_LINKER_FLAGS "@kodiplatform_LINKER_FLAGS@")
- set (kodiplatform_CONFIG_VARS "@kodiplatform_CONFIG_VARS@")
--- 
-2.0.1
-
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/kodi-platform-02_no-multi-lib.patch b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/kodi-platform-02_no-multi-lib.patch
deleted file mode 100644
index a13c53b..0000000
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform/kodi-platform-02_no-multi-lib.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 9abe773..ae433fc 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -9,7 +9,6 @@ find_package(kodi REQUIRED)
- find_package(TinyXML REQUIRED)
- find_package(Threads REQUIRED)
- find_package(p8-platform REQUIRED)
--include(UseMultiArch.cmake)
- include(CheckAtomic.cmake)
- 
- set(kodiplatform_NAME kodiplatform)
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
deleted file mode 100644
index 0b554ef..0000000
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-platform_git.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-SUMMARY = "Platform support library used by libCEC and binary add-ons for Kodi"
-HOMEPAGE = "http://libcec.pulse-eight.com/"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://src/util/XMLUtils.cpp;beginline=2;endline=18;md5=dae8e846500e70dd8ecee55f3f018c30"
-
-DEPENDS = "libtinyxml kodi"
-
-PV = "16.0.0"
-
-SRCREV = "c8188d82678fec6b784597db69a68e74ff4986b5"
-SRC_URI = "git://github.com/xbmc/kodi-platform.git \
-           file://0001-fix-cross-compile-badness.patch \
-           file://kodi-platform-02_no-multi-lib.patch \
-          "
-
-S = "${WORKDIR}/git"
-
-inherit cmake pkgconfig
-
-EXTRA_OECMAKE = " -DCMAKE_INSTALL_PREFIX_TOOLCHAIN=${STAGING_DIR_TARGET} \
-                  -DCMAKE_INSTALL_LIBDIR=${libdir} \
-                  -DCMAKE_INSTALL_LIBDIR_NOARCH=${libdir} \
-                  -DKODI_INCLUDE_DIR=${STAGING_LIBDIR}/kodi \
-                  -DKODI_INCLUDE_DIR=${STAGING_INCDIR}/kodi \
-                "
-
-do_compile_prepend() {
-	sed -i -e 's:I/usr/include:I${STAGING_INCDIR}:g' \
-	       -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g' \
-	          ${B}/CMakeFiles/kodiplatform.dir/flags.make
-	sed -i -e 's:-pipe:${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} -pipe:g'\
-	          ${B}/CMakeFiles/kodiplatform.dir/link.txt
-}
-
-RPROVIDES_${PN} += "libkodiplatform"
-FILES_${PN}-dev += "${libdir}/*platform"
-
-PNBLACKLIST[kodi-platform] ?= "Depends on blacklisted kodi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-multimedia/recipes-mediacenter/kodi/kodi-startup.bb b/meta-multimedia/recipes-mediacenter/kodi/kodi-startup.bb
deleted file mode 100644
index 47e8f38..0000000
--- a/meta-multimedia/recipes-mediacenter/kodi/kodi-startup.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SUMMARY = "Systemd service for kodi startup"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"
-
-PV = "1.0"
-
-SRC_URI = "file://kodi.service"
-
-inherit systemd
-
-do_install() {
-	install -d ${D}/lib/systemd/system
-	install -m 0644 ${WORKDIR}/kodi.service ${D}/lib/systemd/system/ 
-}
-
-SYSTEMD_PACKAGES = "${PN}"
-SYSTEMD_SERVICE_${PN} = "kodi.service"
-
-RDEPENDS_${PN} += "xinit kodi"
-
-PNBLACKLIST[kodi-startup] ?= "Runtime depends on blacklisted kodi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[kodi-startup] ?= "Runtime depends on blacklisted kodi-startup-dev - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-multimedia/recipes-mkv/mkvtoolnix/mkvtoolnix_git.bb b/meta-multimedia/recipes-mkv/mkvtoolnix/mkvtoolnix_git.bb
deleted file mode 100644
index 8a14264..0000000
--- a/meta-multimedia/recipes-mkv/mkvtoolnix/mkvtoolnix_git.bb
+++ /dev/null
@@ -1,57 +0,0 @@
-SUMMARY = "MKVToolNix -- Cross-platform tools for Matroska"
-HOMEPAGE = "http://www.bunkus.org/videotools/mkvtoolnix/source.html"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-DEPENDS = "curl boost expat zlib libebml libmatroska libogg libvorbis bzip2 lzo file ruby-native"
-
-PV = "8.4.0+git${SRCPV}"
-SRCREV_mkvtoolnix = "7f63ea48ee474754a95838f37aba8f6118c94a65"
-SRCREV_libebml = "04b34b0dbded40e0cec93cafa6a4f4c8e90c3206"
-SRCREV_libmatroska = "db5d627b5bf48516c9e0b540254c0d36595760c3"
-SRCREV_FORMAT = "mkvtoolnix"
-SRC_URI = " \
-           git://github.com/mbunkus/mkvtoolnix.git;name=mkvtoolnix \
-           git://github.com/Matroska-Org/libebml.git;name=libebml;destsuffix=git/lib/libebml \
-           git://github.com/Matroska-Org/libmatroska.git;name=libmatroska;destsuffix=git/lib/libmatroska \
-          "
-
-S = "${WORKDIR}/git"
-
-inherit autotools-brokensep gettext
-
-# make sure rb files are used from sysroot, not from host
-# ruby-1.9.3-always-use-i386.patch is doing target_cpu=`echo $target_cpu | sed s/i.86/i386/`
-# we need to replace it too (a bit longer version without importing re)
-RUBY_SYS = "${@ '${BUILD_SYS}'.replace('i486', 'i386').replace('i586', 'i386').replace('i686', 'i386') }"
-export RUBYLIB="${STAGING_DATADIR_NATIVE}/rubygems:${STAGING_LIBDIR_NATIVE}/ruby:${STAGING_LIBDIR_NATIVE}/ruby/${RUBY_SYS}"
-
-PACKAGECONFIG ??= "flac ${@bb.utils.contains('BBFILE_COLLECTIONS', 'qt5-layer', 'qt5', '', d)}"
-PACKAGECONFIG[flac] = "--with-flac,--without-flac,flac"
-PACKAGECONFIG[qt5] = "--enable-qt --with-moc=${STAGING_BINDIR_NATIVE}/qt5/moc --with-uic=${STAGING_BINDIR_NATIVE}/qt5/uic --with-rcc=${STAGING_BINDIR_NATIVE}/qt5/rcc,--disable-qt,qtbase"
-
-EXTRA_OECONF = " --with-boost-libdir=${STAGING_LIBDIR} \
-"
-
-FILES_${PN} += "${datadir}"
-
-# remove some hardcoded searchpaths
-do_configure_prepend() {
-    sed -i -e s:/usr/local/lib:${STAGING_LIBDIR}:g -e s:/usr/local/include:${STAGING_INCDIR}:g ${S}/ac/qt5.m4
-}
-
-# Yeah, no makefile
-do_compile() {
-    LC_ALL="en_US.UTF-8" ${S}/drake ${PARALLEL_MAKE}
-}
-
-do_install() {
-    LC_ALL="en_US.UTF-8" ${S}/drake install DESTDIR=${D}
-}
-
-# | In file included from src/common/utf8_codecvt_facet.cpp:22:0:
-# | src/common/../../lib/boost/utf8_codecvt_facet/utf8_codecvt_facet.cpp:174:5: error: 'int mtx::utf8_codecvt_facet::do_length' is not a static data member of 'struct mtx::utf8_codecvt_facet'
-# |      BOOST_CODECVT_DO_LENGTH_CONST std::mbstate_t &,
-# |      ^
-PNBLACKLIST[mkvtoolnix] ?= "BROKEN: Failx to build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-multimedia/recipes-multimedia/coriander/coriander/cross-compile.patch b/meta-multimedia/recipes-multimedia/coriander/coriander/cross-compile.patch
deleted file mode 100644
index 49350fe..0000000
--- a/meta-multimedia/recipes-multimedia/coriander/coriander/cross-compile.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-In a cross compile environment adding paths like /usr are not correct.
-With this patch we make it so that its relative to sysroot if the compiler
-defines one.
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-Index: a/src/Makefile.am
-===================================================================
---- a/src/Makefile.am	2013-02-08 22:35:08.000000000 -0800
-+++ b/src/Makefile.am	2013-10-13 01:31:38.812869080 -0700
-@@ -33,5 +33,5 @@
- 	video_encode.c video_encode.h \
- 	subtitles.c subtitles.h 
- 
--coriander_LDADD = -L/usr/X11R6/lib/ @PACKAGE_LIBS@ $(INTLLIBS) $(LIBTIFF_LIBS) $(FTPLIB_LIBS) $(SDLLIB_LIBS) $(LIBDC_LIBS) $(LIBRAW_LIBS) $(XV_LIBS) $(COR_LFS_LDFLAGS) -lgthread-2.0 $(FFMPEG_LIBS) $(X11_LIBS)
-+coriander_LDADD = -L=/usr/X11R6/lib/ @PACKAGE_LIBS@ $(INTLLIBS) $(LIBTIFF_LIBS) $(FTPLIB_LIBS) $(SDLLIB_LIBS) $(LIBDC_LIBS) $(LIBRAW_LIBS) $(XV_LIBS) $(COR_LFS_LDFLAGS) -lgthread-2.0 $(FFMPEG_LIBS) $(X11_LIBS)
- 
diff --git a/meta-multimedia/recipes-multimedia/coriander/coriander_2.0.2.bb b/meta-multimedia/recipes-multimedia/coriander/coriander_2.0.2.bb
deleted file mode 100755
index 1ddd9aa..0000000
--- a/meta-multimedia/recipes-multimedia/coriander/coriander_2.0.2.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "Control and capture GUI for IIDC compliant cameras"
-HOMEPAGE = "http://damien.douxchamps.net/ieee1394/coriander/"
-SECTION = "applications"
-LICENSE = "GPL-3.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-DEPENDS = "gtk+ libgnomeui libraw1394 libdc1394 libxv tiff"
-
-PNBLACKLIST[coriander] ?= "BROKEN: fails to use SDL probably because libsdl-config was removed, error: unknown type name 'SDL_Overlay' - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/coriander-2/${PV}/${BP}.tar.gz \
-           file://cross-compile.patch \
-          "
-
-SRC_URI[md5sum] = "431d98fb013217681f97ade168201fb8"
-SRC_URI[sha256sum] = "5c7fd31cb58d398e2742352bf1ffbd2ca22e06686c6668ecfd437735c2b79123"
-
-inherit autotools gettext
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-aacdec-check-channel-count.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-aacdec-check-channel-count.patch
deleted file mode 100644
index 7da0e14..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-aacdec-check-channel-count.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-gst-ffmpeg: aacdec: check channel count
-
-Prevent out of array accesses
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 96f452ac647dae33c53c242ef3266b65a9beafb6)
-
-Upstream-Status: Backport 
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/aacdec.c |    5 +++++
- 1 files changed, 5 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c
-index 239153a..6c17c33 100644
---- a/gst-libs/ext/libav/libavcodec/aacdec.c
-+++ b/gst-libs/ext/libav/libavcodec/aacdec.c
-@@ -914,6 +914,11 @@ static av_cold int aac_decode_init(AVCodecContext *avctx)
-         }
-     }
- 
-+    if (avctx->channels > MAX_CHANNELS) {
-+        av_log(avctx, AV_LOG_ERROR, "Too many channels\n");
-+        return AVERROR_INVALIDDATA;
-+    }
-+
-     AAC_INIT_VLC_STATIC( 0, 304);
-     AAC_INIT_VLC_STATIC( 1, 270);
-     AAC_INIT_VLC_STATIC( 2, 550);
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-alac-fix-nb_samples-order-case.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-alac-fix-nb_samples-order-case.patch
deleted file mode 100644
index 10ce0f3..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-alac-fix-nb_samples-order-case.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From e0884eadf6a15e93142131b695f48776f9a0ac31 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Sat, 10 Nov 2012 17:14:04 +0100
-Subject: [PATCH] alac: fix nb_samples < order case
-
-Upstream-Status: Backport
-
-Commit e0884eadf6a15e93142131b695f48776f9a0ac31 release/1.0
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit fd4f4923cce6a2cbf4f48640b4ac706e614a1594)
----
- libavcodec/alac.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libavcodec/alac.c b/libavcodec/alac.c
-index 9cd1737..e8e844a 100644
---- a/gst-libs/ext/libav/libavcodec/alac.c
-+++ b/gst-libs/ext/libav/libavcodec/alac.c
-@@ -278,7 +278,7 @@ static void predictor_decompress_fir_ada
- 
-     /* read warm-up samples */
-     if (predictor_coef_num > 0)
--        for (i = 0; i < predictor_coef_num; i++) {
-+        for (i = 0; i < predictor_coef_num && i < output_size; i++) {
-             int32_t val;
- 
-             val = buffer_out[i] + error_buffer[i+1];
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-alsdec-check-block-length.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-alsdec-check-block-length.patch
deleted file mode 100644
index 73980f4..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-alsdec-check-block-length.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 6df0d3e2916c223dbe4262bf1b876dff1cb3f980 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Wed, 12 Dec 2012 12:28:45 +0100
-Subject: [PATCH] alsdec: check block length
-
-Upstream-Status: Backport
-
-Commit 6df0d3e2916c223dbe4262bf1b876dff1cb3f980 release/1.0
-
-Fix writing over the end
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 0ceca269b66ec12a23bf0907bd2c220513cdbf16)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/alsdec.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/alsdec.c b/libavcodec/alsdec.c
-index 46dd0b4..1095b01 100644
---- a/gst-libs/ext/libav/libavcodec/alsdec.c
-+++ b/gst-libs/ext/libav/libavcodec/alsdec.c
-@@ -552,12 +552,15 @@ static void get_block_sizes(ALSDecContext *ctx, unsigned int *div_blocks,
- 
- /** Read the block data for a constant block
-  */
--static void read_const_block_data(ALSDecContext *ctx, ALSBlockData *bd)
-+static int read_const_block_data(ALSDecContext *ctx, ALSBlockData *bd)
- {
-     ALSSpecificConfig *sconf = &ctx->sconf;
-     AVCodecContext *avctx    = ctx->avctx;
-     GetBitContext *gb        = &ctx->gb;
- 
-+    if (bd->block_length <= 0)
-+        return -1;
-+
-     *bd->raw_samples = 0;
-     *bd->const_block = get_bits1(gb);    // 1 = constant value, 0 = zero block (silence)
-     bd->js_blocks    = get_bits1(gb);
-@@ -572,6 +575,8 @@ static void read_const_block_data(ALSDecContext *ctx, ALSBlockData *bd)
- 
-     // ensure constant block decoding by reusing this field
-     *bd->const_block = 1;
-+
-+    return 0;
- }
- 
- 
-@@ -971,7 +976,8 @@ static int read_block(ALSDecContext *ctx, ALSBlockData *bd)
-         if (read_var_block_data(ctx, bd))
-             return -1;
-     } else {
--        read_const_block_data(ctx, bd);
-+        if (read_const_block_data(ctx, bd) < 0)
-+            return -1;
-     }
- 
-     return 0;
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-atrac3dec-Check-coding-mode-against-channels.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-atrac3dec-Check-coding-mode-against-channels.patch
deleted file mode 100644
index 42cb5f4..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-atrac3dec-Check-coding-mode-against-channels.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 2502914c5f8eb77659d7c0868396862557a63245 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 9 Nov 2012 13:26:20 +0100
-Subject: [PATCH] atrac3dec: Check coding mode against channels.
-
-Upstream-Status: Backport
-
-Commit 2502914c5f8eb77659d7c0868396862557a63245 release/1.0
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 13451f5520ce6b0afde861b2285dda659f8d4fb4)
-
-Conflicts:
-
-	libavcodec/atrac3.c
----
- libavcodec/atrac3.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/libavcodec/atrac3.c b/libavcodec/atrac3.c
-index 7d076be..1da4c78 100644
---- a/gst-libs/ext/libav/libavcodec/atrac3.c
-+++ b/gst-libs/ext/libav/libavcodec/atrac3.c
-@@ -955,6 +955,11 @@ static av_cold int atrac3_decode_init(AVCodecContext *avctx)
-     }
-     /* Check the extradata. */
- 
-+    if (q->codingMode == JOINT_STEREO && avctx->channels < 2) {
-+        av_log(avctx, AV_LOG_ERROR, "Invalid coding mode\n");
-+        return AVERROR_INVALIDDATA;
-+    }
-+
-     if (q->atrac3version != 4) {
-         av_log(avctx,AV_LOG_ERROR,"Version %d != 4.\n",q->atrac3version);
-         return AVERROR_INVALIDDATA;
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-dsputil-fix-signedness-in-sizeof-comparissio.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-dsputil-fix-signedness-in-sizeof-comparissio.patch
deleted file mode 100644
index 31fa51a..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-dsputil-fix-signedness-in-sizeof-comparissio.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From a99aff4e4bbef8e64b51f267cd1769214e1b4e80 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 30 Aug 2013 23:40:47 +0200
-Subject: [PATCH] avcodec/dsputil: fix signedness in sizeof() comparissions
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 454a11a1c9c686c78aa97954306fb63453299760)
-
-Upstream-Status: Backport
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/dsputil.c |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/dsputil.c b/libavcodec/dsputil.c
-index 53dc2eb..6264832 100644
---- a/gst-libs/ext/libav/libavcodec/dsputil.c
-+++ b/gst-libs/ext/libav/libavcodec/dsputil.c
-@@ -1912,7 +1912,7 @@ void ff_set_cmp(DSPContext* c, me_cmp_func *cmp, int type){
- 
- static void add_bytes_c(uint8_t *dst, uint8_t *src, int w){
-     long i;
--    for(i=0; i<=w-sizeof(long); i+=sizeof(long)){
-+    for(i=0; i<=w-(int)sizeof(long); i+=sizeof(long)){
-         long a = *(long*)(src+i);
-         long b = *(long*)(dst+i);
-         *(long*)(dst+i) = ((a&pb_7f) + (b&pb_7f)) ^ ((a^b)&pb_80);
-@@ -1937,7 +1937,7 @@ static void diff_bytes_c(uint8_t *dst, uint8_t *src1, uint8_t *src2, int w){
-         }
-     }else
- #endif
--    for(i=0; i<=w-sizeof(long); i+=sizeof(long)){
-+    for(i=0; i<=w-(int)sizeof(long); i+=sizeof(long)){
-         long a = *(long*)(src1+i);
-         long b = *(long*)(src2+i);
-         *(long*)(dst+i) = ((a|pb_80) - (b&pb_7f)) ^ ((a^b^pb_80)&pb_80);
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-msrle-use-av_image_get_linesize-to-calculate.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-msrle-use-av_image_get_linesize-to-calculate.patch
deleted file mode 100644
index b0a3fb1..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-msrle-use-av_image_get_linesize-to-calculate.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 573d5fdedae72bf59d8c0b0766fdee171063d36f Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Sun, 16 Feb 2014 23:08:52 +0100
-Subject: [PATCH] avcodec/msrle: use av_image_get_linesize() to calculate the
- linesize
-
-Upstream-Status: Backport
-
-Commit 573d5fdedae72bf59d8c0b0766fdee171063d36f release/0.9
-
-Fixes out of array access
-Fixes: 14a74a0a2dc67ede543f0e35d834fbbe-asan_heap-oob_49572c_556_cov_215466444_44_001_engine_room.mov
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit c919e1ca2ecfc47d796382973ba0e48b8f6f92a2)
-
-Conflicts:
-
-	libavcodec/msrle.c
-(cherry picked from commit bc1c8ec5e65098fd2ccd8456f667151dfc9cda42)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/msrle.c |    3 ++-
- 1 files changed, 2 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/msrle.c b/libavcodec/msrle.c
-index 30159bb..c39ae7b 100644
---- a/gst-libs/ext/libav/libavcodec/msrle.c
-+++ b/gst-libs/ext/libav/libavcodec/msrle.c
-@@ -35,6 +35,7 @@
- #include "avcodec.h"
- #include "dsputil.h"
- #include "msrledec.h"
-+#include "libavutil/imgutils.h"
- 
- typedef struct MsrleContext {
-     AVCodecContext *avctx;
-@@ -107,7 +108,7 @@ static int msrle_decode_frame(AVCodecContext *avctx,
- 
-     /* FIXME how to correctly detect RLE ??? */
-     if (avctx->height * istride == avpkt->size) { /* assume uncompressed */
--        int linesize = avctx->width * avctx->bits_per_coded_sample / 8;
-+        int linesize = av_image_get_linesize(avctx->pix_fmt, avctx->width, 0);
-         uint8_t *ptr = s->frame.data[0];
-         uint8_t *buf = avpkt->data + (avctx->height-1)*istride;
-         int i, j;
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-parser-reset-indexes-on-realloc-failure.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-parser-reset-indexes-on-realloc-failure.patch
deleted file mode 100644
index 5ff6583..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-parser-reset-indexes-on-realloc-failure.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-gst-ffmpeg: avcodec/parser: reset indexes on realloc failure
-
-Fixes Ticket2982
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit f31011e9abfb2ae75bb32bc44e2c34194c8dc40a)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-
-Upstream-Status: Backport 
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
-
----
- libavcodec/parser.c |   10 +++++++---
- 1 files changed, 7 insertions(+), 3 deletions(-)
-
-diff --git a/libavcodec/parser.c b/libavcodec/parser.c
-index 2c6de6e..66eca06 100644
---- a/gst-libs/ext/libav/libavcodec/parser.c
-+++ b/gst-libs/ext/libav/libavcodec/parser.c
-@@ -241,8 +241,10 @@ int ff_combine_frame(ParseContext *pc, int next, const uint8_t **buf, int *buf_s
-     if(next == END_NOT_FOUND){
-         void* new_buffer = av_fast_realloc(pc->buffer, &pc->buffer_size, (*buf_size) + pc->index + FF_INPUT_BUFFER_PADDING_SIZE);
- 
--        if(!new_buffer)
-+        if(!new_buffer) {
-+            pc->index = 0;
-             return AVERROR(ENOMEM);
-+        }
-         pc->buffer = new_buffer;
-         memcpy(&pc->buffer[pc->index], *buf, *buf_size);
-         pc->index += *buf_size;
-@@ -255,9 +257,11 @@ int ff_combine_frame(ParseContext *pc, int next, const uint8_t **buf, int *buf_s
-     /* append to buffer */
-     if(pc->index){
-         void* new_buffer = av_fast_realloc(pc->buffer, &pc->buffer_size, next + pc->index + FF_INPUT_BUFFER_PADDING_SIZE);
--
--        if(!new_buffer)
-+        if(!new_buffer) {
-+            pc->overread_index =
-+            pc->index = 0;
-             return AVERROR(ENOMEM);
-+        }
-         pc->buffer = new_buffer;
-         if (next > -FF_INPUT_BUFFER_PADDING_SIZE)
-             memcpy(&pc->buffer[pc->index], *buf,
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-rpza-Perform-pointer-advance-and-checks-befo.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-rpza-Perform-pointer-advance-and-checks-befo.patch
deleted file mode 100644
index 7f6eb48..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-rpza-Perform-pointer-advance-and-checks-befo.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-gst-ffmpeg: avcodec/rpza: Perform pointer advance and checks before
- using the pointers
-
-Fixes out of array accesses
-Fixes Ticket2850
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 3819db745da2ac7fb3faacb116788c32f4753f34)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-
-Upstream-Status: Backport 
-
-Singed-off-by: Yue Tao <yue.tao at windriver.com>
-
----
- libavcodec/rpza.c |    8 ++++----
- 1 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/libavcodec/rpza.c b/libavcodec/rpza.c
-index 635b406..f291a95 100644
---- a/gst-libs/ext/libav/libavcodec/rpza.c
-+++ b/gst-libs/ext/libav/libavcodec/rpza.c
-@@ -83,7 +83,7 @@ static void rpza_decode_stream(RpzaContext *s)
-     unsigned short *pixels = (unsigned short *)s->frame.data[0];
- 
-     int row_ptr = 0;
--    int pixel_ptr = 0;
-+    int pixel_ptr = -4;
-     int block_ptr;
-     int pixel_x, pixel_y;
-     int total_blocks;
-@@ -139,6 +139,7 @@ static void rpza_decode_stream(RpzaContext *s)
-             colorA = AV_RB16 (&s->buf[stream_ptr]);
-             stream_ptr += 2;
-             while (n_blocks--) {
-+                ADVANCE_BLOCK()
-                 block_ptr = row_ptr + pixel_ptr;
-                 for (pixel_y = 0; pixel_y < 4; pixel_y++) {
-                     for (pixel_x = 0; pixel_x < 4; pixel_x++){
-@@ -147,7 +148,6 @@ static void rpza_decode_stream(RpzaContext *s)
-                     }
-                     block_ptr += row_inc;
-                 }
--                ADVANCE_BLOCK();
-             }
-             break;
- 
-@@ -184,6 +184,7 @@ static void rpza_decode_stream(RpzaContext *s)
-             color4[2] |= ((21 * ta + 11 * tb) >> 5);
- 
-             while (n_blocks--) {
-+                ADVANCE_BLOCK();
-                 block_ptr = row_ptr + pixel_ptr;
-                 for (pixel_y = 0; pixel_y < 4; pixel_y++) {
-                     index = s->buf[stream_ptr++];
-@@ -194,12 +195,12 @@ static void rpza_decode_stream(RpzaContext *s)
-                     }
-                     block_ptr += row_inc;
-                 }
--                ADVANCE_BLOCK();
-             }
-             break;
- 
-         /* Fill block with 16 colors */
-         case 0x00:
-+            ADVANCE_BLOCK();
-             block_ptr = row_ptr + pixel_ptr;
-             for (pixel_y = 0; pixel_y < 4; pixel_y++) {
-                 for (pixel_x = 0; pixel_x < 4; pixel_x++){
-@@ -213,7 +214,6 @@ static void rpza_decode_stream(RpzaContext *s)
-                 }
-                 block_ptr += row_inc;
-             }
--            ADVANCE_BLOCK();
-             break;
- 
-         /* Unknown opcode */
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-smc-fix-off-by-1-error.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-smc-fix-off-by-1-error.patch
deleted file mode 100644
index 3ca6fc4..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avcodec-smc-fix-off-by-1-error.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From c17a0ad1df15a94d0b1239adc2afb593bdf0a153 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 22:50:45 +0200
-Subject: [PATCH 1/2] avcodec/smc: fix off by 1 error
-
-Upstream-Status: Backport
-
-Fixes out of array access
-Fixes: asan_heap-oob_1685bf0_5_asan_heap-oob_1f35116_430_smc.mov
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/smc.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gst-libs/ext/libav/libavcodec/smc.c b/gst-libs/ext/libav/libavcodec/smc.c
-index 3cd5e53..dec9f71 100644
---- a/gst-libs/ext/libav/libavcodec/smc.c
-+++ b/gst-libs/ext/libav/libavcodec/smc.c
-@@ -69,7 +69,7 @@ typedef struct SmcContext {
-         row_ptr += stride * 4; \
-     } \
-     total_blocks--; \
--    if (total_blocks < 0) \
-+    if (total_blocks < 0 + !!n_blocks) \
-     { \
-         av_log(s->avctx, AV_LOG_INFO, "warning: block counter just went negative (this should not happen)\n"); \
-         return; \
--- 
-2.1.0
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avformat-mpegtsenc-Check-data-array-size-in-mpegts_w.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avformat-mpegtsenc-Check-data-array-size-in-mpegts_w.patch
deleted file mode 100644
index 68bb66e..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-avformat-mpegtsenc-Check-data-array-size-in-mpegts_w.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From 12770701856a05b6b3cd706f708f8e9a4e8a1336 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Thu, 13 Feb 2014 13:59:51 +0100
-Subject: [PATCH] avformat/mpegtsenc: Check data array size in
- mpegts_write_pmt()
-
-Upstream-Status: Backport
-
-COmmit 12770701856a05b6b3cd706f708f8e9a4e8a1336 release/0.11
-
-Prevents out of array writes
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 842b6c14bcfc1c5da1a2d288fd65386eb8c158ad)
-
-Conflicts:
-
-	libavformat/mpegtsenc.c
-(cherry picked from commit e87de3f50b765134588d0b048c32ed4b8acc16fb)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavformat/mpegtsenc.c |    9 +++++++--
- 1 files changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/libavformat/mpegtsenc.c b/libavformat/mpegtsenc.c
-index 793e205..a12d19f 100644
---- a/gst-libs/ext/libav/libavformat/mpegtsenc.c
-+++ b/gst-libs/ext/libav/libavformat/mpegtsenc.c
-@@ -240,7 +240,7 @@ static void mpegts_write_pat(AVFormatContext *s)
-                           data, q - data);
- }
- 
--static void mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
-+static int mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
- {
-     //    MpegTSWrite *ts = s->priv_data;
-     uint8_t data[1012], *q, *desc_length_ptr, *program_info_length_ptr;
-@@ -293,6 +293,10 @@ static void mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
-             stream_type = STREAM_TYPE_PRIVATE_DATA;
-             break;
-         }
-+
-+        if (q - data > sizeof(data) - 32)
-+            return AVERROR(EINVAL);
-+
-         *q++ = stream_type;
-         put16(&q, 0xe000 | ts_st->pid);
-         desc_length_ptr = q;
-@@ -324,7 +328,7 @@ static void mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
-                 len_ptr = q++;
-                 *len_ptr = 0;
- 
--                for (p = lang->value; next && *len_ptr < 255 / 4 * 4; p = next + 1) {
-+                for (p = lang->value; next && *len_ptr < 255 / 4 * 4 && q - data < sizeof(data) - 4; p = next + 1) {
-                     next = strchr(p, ',');
-                     if (strlen(p) != 3 && (!next || next != p + 3))
-                         continue; /* not a 3-letter code */
-@@ -386,6 +390,7 @@ static void mpegts_write_pmt(AVFormatContext *s, MpegTSService *service)
-     }
-     mpegts_write_section1(&service->pmt, PMT_TID, service->sid, 0, 0, 0,
-                           data, q - data);
-+    return 0;
- }
- 
- /* NOTE: str == NULL is accepted for an empty string */
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-eamad-fix-out-of-array-accesses.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-eamad-fix-out-of-array-accesses.patch
deleted file mode 100644
index f45e3fd..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-eamad-fix-out-of-array-accesses.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 63ac64864c6e0e84355aa3caa5b92208997a9a8d Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Sat, 17 Nov 2012 16:26:55 +0100
-Subject: [PATCH] eamad: fix out of array accesses
-
-Upstream-Status: Backport
-
-Commit 63ac64864c6e0e84355aa3caa5b92208997a9a8d release/1.1
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/eamad.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libavcodec/eamad.c b/libavcodec/eamad.c
-index 2805195..e38650e 100644
---- a/gst-libs/ext/libav/libavcodec/eamad.c
-+++ b/gst-libs/ext/libav/libavcodec/eamad.c
-@@ -237,7 +237,7 @@ static int decode_frame(AVCodecContext *avctx,
-     int chunk_type;
-     int inter;
- 
--    if (buf_size < 17) {
-+    if (buf_size < 26) {
-         av_log(avctx, AV_LOG_ERROR, "Input buffer too small\n");
-         *data_size = 0;
-         return -1;
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-error-concealment-initialize-block-index.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-error-concealment-initialize-block-index.patch
deleted file mode 100644
index e0e4239..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-error-concealment-initialize-block-index.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-gst-ffmpeg: error concealment: initialize block index.
-
-Fixes CVE-2011-3941 (out of bounds write)
-
-Upstream-Status: Backport 
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/error_resilience.c |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/error_resilience.c b/libavcodec/error_resilience.c
-index 8bb5d0c..d55c000 100644
---- a/gst-libs/ext/libav/libavcodec/error_resilience.c
-+++ b/gst-libs/ext/libav/libavcodec/error_resilience.c
-@@ -45,6 +45,9 @@ static void decode_mb(MpegEncContext *s, int ref){
-     s->dest[1] = s->current_picture.data[1] + (s->mb_y * (16>>s->chroma_y_shift) * s->uvlinesize) + s->mb_x * (16>>s->chroma_x_shift);
-     s->dest[2] = s->current_picture.data[2] + (s->mb_y * (16>>s->chroma_y_shift) * s->uvlinesize) + s->mb_x * (16>>s->chroma_x_shift);
- 
-+    ff_init_block_index(s);
-+    ff_update_block_index(s);
-+
-     if(CONFIG_H264_DECODER && s->codec_id == CODEC_ID_H264){
-         H264Context *h= (void*)s;
-         h->mb_xy= s->mb_x + s->mb_y*s->mb_stride;
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-error_concealment-Check-that-the-picture-is-not-in-a.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-error_concealment-Check-that-the-picture-is-not-in-a.patch
deleted file mode 100644
index 8eef6e9..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-error_concealment-Check-that-the-picture-is-not-in-a.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-gst-ffmpeg: error_concealment: Check that the picture is not in a half
-
-Fixes state becoming inconsistent
-Fixes a null pointer dereference
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 23318a57358358e7a4dc551e830e4503f0638cfe)
-
-Upstream-Status: Backport 
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
-
----
- libavcodec/error_resilience.c |    6 ++++++
- 1 files changed, 6 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/error_resilience.c b/libavcodec/error_resilience.c
-index 01f7424..2b6bc42 100644
---- a/gst-libs/ext/libav/libavcodec/error_resilience.c
-+++ b/gst-libs/ext/libav/libavcodec/error_resilience.c
-@@ -793,6 +793,12 @@ void ff_er_frame_end(MpegEncContext *s){
-        s->picture_structure != PICT_FRAME || // we dont support ER of field pictures yet, though it should not crash if enabled
-        s->error_count==3*s->mb_width*(s->avctx->skip_top + s->avctx->skip_bottom)) return;
- 
-+    if (   s->picture_structure == PICT_FRAME
-+        && s->current_picture.linesize[0] != s->current_picture_ptr->linesize[0]) {
-+        av_log(s->avctx, AV_LOG_ERROR, "Error concealment not possible, frame not fully initialized\n");
-+        return;
-+    }
-+
-     if(s->current_picture.motion_val[0] == NULL){
-         av_log(s->avctx, AV_LOG_ERROR, "Warning MVs not available\n");
- 
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-ffserver-set-oformat.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-ffserver-set-oformat.patch
deleted file mode 100644
index 80325db..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-ffserver-set-oformat.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-gst-ffmpeg: ffserver: set oformat
-
-Fix Ticket1986
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit cbe43e62c9ac7d4aefdc13476f6f691bd626525f)
-
-Upstream-Status: Backport 
-
----
- ffserver.c |    4 +++-
- 1 files changed, 3 insertions(+), 1 deletions(-)
-
-diff --git a/ffserver.c b/ffserver.c
-index 4044d0f..8740140 100644
---- a/gst-libs/ext/libav/ffserver.c
-+++ b/gst-libs/ext/libav/ffserver.c
-@@ -2937,12 +2937,14 @@ static int prepare_sdp_description(FFStream *stream, uint8_t **pbuffer,
- {
-     AVFormatContext *avc;
-     AVStream *avs = NULL;
-+    AVOutputFormat *rtp_format = av_guess_format("rtp", NULL, NULL);
-     int i;
- 
-     avc =  avformat_alloc_context();
--    if (avc == NULL) {
-+    if (avc == NULL || !rtp_format) {
-         return -1;
-     }
-+    avc->oformat = rtp_format;
-     av_dict_set(&avc->metadata, "title",
-                stream->title[0] ? stream->title : "No Title", 0);
-     avc->nb_streams = stream->nb_streams;
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-correct-ref-count-check-and-limit-fix-out-of-ar.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-correct-ref-count-check-and-limit-fix-out-of-ar.patch
deleted file mode 100644
index d4f55b2..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-correct-ref-count-check-and-limit-fix-out-of-ar.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From d6c184880ee2e09fd68c0ae217173832cee5afc1 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Sun, 18 Nov 2012 16:29:04 +0100
-Subject: [PATCH] h264: correct ref count check and limit, fix out of array
- accesses.
-
-Upstream-Status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/h264.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libavcodec/h264.c b/libavcodec/h264.c
-index da43f1e..32cede5 100644
---- a/gst-libs/ext/libav/libavcodec/h264.c
-+++ b/gst-libs/ext/libav/libavcodec/h264.c
-@@ -2870,6 +2870,9 @@ static int decode_slice_header(H264Conte
-             h->ref_count[0]= get_ue_golomb(&s->gb) + 1;
-             if(h->slice_type_nos==AV_PICTURE_TYPE_B)
-                 h->ref_count[1]= get_ue_golomb(&s->gb) + 1;
-+            else
-+                // full range is spec-ok in this case, even for frames
-+                h->ref_count[1] = 1;
- 
-             if(h->ref_count[0]-1 > 32-1 || h->ref_count[1]-1 > 32-1){
-                 av_log(h->s.avctx, AV_LOG_ERROR, "reference overflow\n");
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-set-parameters-from-SPS-whenever-it-changes.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-set-parameters-from-SPS-whenever-it-changes.patch
deleted file mode 100644
index 05a9de3..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-set-parameters-from-SPS-whenever-it-changes.patch
+++ /dev/null
@@ -1,145 +0,0 @@
-gst-ffmpeg: h264: set parameters from SPS whenever it changes
-    
-Fixes a crash in the fuzzed sample sample_varPAR.avi_s26638 with
-alternating bit depths.
-
-Upstream-Status: Backport
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
-
-diff --git a/gst-libs/ext/libav/libavcodec/h264.c.old b/gst-libs/ext/libav/libavcodec/h264.c
-index 3621f41..718906a 100644
---- a/gst-libs/ext/libav/libavcodec/h264.c.old
-+++ b/gst-libs/ext/libav/libavcodec/h264.c
-@@ -2491,6 +2491,34 @@ int ff_h264_get_profile(SPS *sps)
-     return profile;
- }
- 
-+static int h264_set_parameter_from_sps(H264Context *h)
-+{
-+    MpegEncContext *s = &h->s;
-+    AVCodecContext * avctx= s->avctx;
-+
-+    if (s->flags& CODEC_FLAG_LOW_DELAY ||
-+        (h->sps.bitstream_restriction_flag && !h->sps.num_reorder_frames))
-+        s->low_delay=1;
-+
-+    if(avctx->has_b_frames < 2)
-+        avctx->has_b_frames= !s->low_delay;
-+
-+    if (avctx->bits_per_raw_sample != h->sps.bit_depth_luma) {
-+        if (h->sps.bit_depth_luma >= 8 && h->sps.bit_depth_luma <= 10) {
-+            avctx->bits_per_raw_sample = h->sps.bit_depth_luma;
-+            h->pixel_shift = h->sps.bit_depth_luma > 8;
-+
-+            ff_h264dsp_init(&h->h264dsp, h->sps.bit_depth_luma);
-+            ff_h264_pred_init(&h->hpc, s->codec_id, h->sps.bit_depth_luma);
-+            dsputil_init(&s->dsp, s->avctx);
-+        } else {
-+            av_log(avctx, AV_LOG_DEBUG, "Unsupported bit depth: %d\n", h->sps.bit_depth_luma);
-+            return -1;
-+        }
-+    }
-+    return 0;
-+}
-+
- /**
-  * decodes a slice header.
-  * This will also call MPV_common_init() and frame_start() as needed.
-@@ -2505,7 +2533,7 @@ static int decode_slice_header(H264Context *h, H264Context *h0){
-     MpegEncContext * const s0 = &h0->s;
-     unsigned int first_mb_in_slice;
-     unsigned int pps_id;
--    int num_ref_idx_active_override_flag;
-+    int num_ref_idx_active_override_flag, ret;
-     unsigned int slice_type, tmp, i, j;
-     int default_ref_list_done = 0;
-     int last_pic_structure;
-@@ -2569,7 +2597,17 @@ static int decode_slice_header(H264Context *h, H264Context *h0){
-         av_log(h->s.avctx, AV_LOG_ERROR, "non-existing SPS %u referenced\n", h->pps.sps_id);
-         return -1;
-     }
--    h->sps = *h0->sps_buffers[h->pps.sps_id];
-+
-+    if (h->pps.sps_id != h->current_sps_id ||
-+        h0->sps_buffers[h->pps.sps_id]->new) {
-+        h0->sps_buffers[h->pps.sps_id]->new = 0;
-+
-+        h->current_sps_id = h->pps.sps_id;
-+        h->sps            = *h0->sps_buffers[h->pps.sps_id];
-+
-+        if ((ret = h264_set_parameter_from_sps(h)) < 0)
-+            return ret;
-+    }
- 
-     s->avctx->profile = ff_h264_get_profile(&h->sps);
-     s->avctx->level   = h->sps.level_idc;
-@@ -3811,26 +3811,8 @@ static int decode_nal_units(H264Context *h, const uint8_t *buf, int buf_size){
-         case NAL_SPS:
-             init_get_bits(&s->gb, ptr, bit_length);
-             ff_h264_decode_seq_parameter_set(h);
--
--            if (s->flags& CODEC_FLAG_LOW_DELAY ||
--                (h->sps.bitstream_restriction_flag && !h->sps.num_reorder_frames))
--                s->low_delay=1;
--
--            if(avctx->has_b_frames < 2)
--                avctx->has_b_frames= !s->low_delay;
--
--            if (avctx->bits_per_raw_sample != h->sps.bit_depth_luma) {
--                if (h->sps.bit_depth_luma >= 8 && h->sps.bit_depth_luma <= 10) {
--                    avctx->bits_per_raw_sample = h->sps.bit_depth_luma;
--                    h->pixel_shift = h->sps.bit_depth_luma > 8;
--
--                    ff_h264dsp_init(&h->h264dsp, h->sps.bit_depth_luma);
--                    ff_h264_pred_init(&h->hpc, s->codec_id, h->sps.bit_depth_luma);
--                    dsputil_init(&s->dsp, s->avctx);
--                } else {
--                    av_log(avctx, AV_LOG_DEBUG, "Unsupported bit depth: %d\n", h->sps.bit_depth_luma);
--                    return -1;
--                }
-+            if (h264_set_parameter_from_sps(h) < 0) {
-+                return -1;
-             }
-             break;
-         case NAL_PPS:
-diff --git a/gst-libs/ext/libav/libavcodec/h264.h.old b/gst-libs/ext/libav/libavcodec/h264.h
-index e3cc815..b77ad98 100644
---- a/gst-libs/ext/libav/libavcodec/h264.h.old
-+++ b/gst-libs/ext/libav/libavcodec/h264.h
-@@ -202,6 +202,7 @@ typedef struct SPS{
-     int bit_depth_chroma;              ///< bit_depth_chroma_minus8 + 8
-     int residual_color_transform_flag; ///< residual_colour_transform_flag
-     int constraint_set_flags;          ///< constraint_set[0-3]_flag
-+    int new;                              ///< flag to keep track if the decoder context needs re-init due to changed SPS
- }SPS;
- 
- /**
-@@ -333,6 +334,7 @@ typedef struct H264Context{
-     int emu_edge_width;
-     int emu_edge_height;
- 
-+    unsigned current_sps_id; ///< id of the current SPS
-     SPS sps; ///< current sps
- 
-     /**
-diff --git a/gst-libs/ext/libav/libavcodec/h264_ps.c.old b/gst-libs/ext/libav/libavcodec/h264_ps.c
-index 7491807..0929098 100644
---- a/gst-libs/ext/libav/libavcodec/h264_ps.c.old
-+++ b/gst-libs/ext/libav/libavcodec/h264_ps.c
-@@ -438,10 +438,13 @@ int ff_h264_decode_seq_parameter_set(H264Context *h){
-                sps->timing_info_present_flag ? sps->time_scale : 0
-                );
-     }
-+    sps->new = 1;
- 
-     av_free(h->sps_buffers[sps_id]);
--    h->sps_buffers[sps_id]= sps;
--    h->sps = *sps;
-+    h->sps_buffers[sps_id] = sps;
-+    h->sps                 = *sps;
-+    h->current_sps_id      = sps_id;
-+
-     return 0;
- fail:
-     av_free(sps);
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-skip-error-concealment-when-SPS-and-slices-are-.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-skip-error-concealment-when-SPS-and-slices-are-.patch
deleted file mode 100644
index 5d45c1a..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264-skip-error-concealment-when-SPS-and-slices-are-.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-gst-ffmpeg: h264: skip error concealment when SPS and slices are
- mismatching
-
-Fixes out of array accesses
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 695af8eed642ff0104834495652d1ee784a4c14d)
-
-Upstream-Status: Backport
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/h264.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/h264.c b/libavcodec/h264.c
-index da144db..0aab4e7 100644
---- a/gst-libs/ext/libav/libavcodec/h264.c
-+++ b/gst-libs/ext/libav/libavcodec/h264.c
-@@ -2351,7 +2351,7 @@ static int field_end(H264Context *h, int in_setup)
-      * past end by one (callers fault) and resync_mb_y != 0
-      * causes problems for the first MB line, too.
-      */
--    if (!FIELD_PICTURE)
-+    if (!FIELD_PICTURE && h->current_slice && !h->sps.new)
-         ff_er_frame_end(s);
- 
-     ff_MPV_frame_end(s);
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264_sei-Fix-infinite-loop.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264_sei-Fix-infinite-loop.patch
deleted file mode 100644
index 1e62b50..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-h264_sei-Fix-infinite-loop.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-gst-ffmpeg: h264_sei: Fix infinite loop.
-
-Fixsot yet fixed parts of CVE-2011-3946.
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-
-Upstream-Status: Backport 
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
-
----
- libavcodec/h264_sei.c |    4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-
-diff --git a/libavcodec/h264_sei.c b/libavcodec/h264_sei.c
-index 374e53d..80d70e5 100644
---- a/gst-libs/ext/libav/libavcodec/h264_sei.c
-+++ b/gst-libs/ext/libav/libavcodec/h264_sei.c
-@@ -169,11 +169,15 @@ int ff_h264_decode_sei(H264Context *h){
- 
-         type=0;
-         do{
-+            if (get_bits_left(&s->gb) < 8)
-+                return -1;
-             type+= show_bits(&s->gb, 8);
-         }while(get_bits(&s->gb, 8) == 255);
- 
-         size=0;
-         do{
-+            if (get_bits_left(&s->gb) < 8)
-+                return -1;
-             size+= show_bits(&s->gb, 8);
-         }while(get_bits(&s->gb, 8) == 255);
- 
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-huffyuvdec-Check-init_vlc-return-codes.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-huffyuvdec-Check-init_vlc-return-codes.patch
deleted file mode 100644
index e859e44..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-huffyuvdec-Check-init_vlc-return-codes.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From b666debffec1fcbb19ef377635a53b9a58bca8a4 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Tue, 29 Jan 2013 18:29:41 +0100
-Subject: [PATCH] huffyuvdec: Check init_vlc() return codes.
-
-Upstream-Status: Backport
-
-Commit b666debffec1fcbb19ef377635a53b9a58bca8a4 release/1.0
-
-Prevents out of array writes
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit f67a0d115254461649470452058fa3c28c0df294)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/huffyuv.c | 14 ++++++++++----
- 1 file changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/libavcodec/huffyuv.c b/libavcodec/huffyuv.c
-index 58da789..993e524 100644
---- a/gst-libs/ext/libav/libavcodec/huffyuv.c
-+++ b/gst-libs/ext/libav/libavcodec/huffyuv.c
-@@ -33,6 +33,7 @@
- #include "put_bits.h"
- #include "dsputil.h"
- #include "thread.h"
-+#include "libavutil/avassert.h"
- 
- #define VLC_BITS 11
- 
-@@ -287,6 +287,7 @@ static void generate_joint_tables(HYuvCo
-                     int len1 = s->len[p][u];
-                     if (len1 > limit || !len1)
-                         continue;
-+                    av_assert0(i < (1 << VLC_BITS));
-                     len[i] = len0 + len1;
-                     bits[i] = (s->bits[0][y] << len1) + s->bits[p][u];
-                     symbols[i] = (y<<8) + u;
-@@ -320,6 +321,7 @@ static void generate_joint_tables(HYuvCo
-                     int len2 = s->len[2][r&255];
-                     if (len2 > limit1 || !len2)
-                         continue;
-+                    av_assert0(i < (1 << VLC_BITS));
-                     len[i] = len0 + len1 + len2;
-                     bits[i] = (code << len2) + s->bits[2][r&255];
-                     if(s->decorrelate){
-@@ -343,6 +345,7 @@ static void generate_joint_tables(HYuvCo
- static int read_huffman_tables(HYuvContext *s, const uint8_t *src, int length){
-     GetBitContext gb;
-     int i;
-+    int ret;
- 
-     init_get_bits(&gb, src, length*8);
- 
-@@ -353,7 +356,9 @@ static int read_huffman_tables(HYuvConte
-             return -1;
-         }
-         free_vlc(&s->vlc[i]);
--        init_vlc(&s->vlc[i], VLC_BITS, 256, s->len[i], 1, 1, s->bits[i], 4, 4, 0);
-+        if ((ret = init_vlc(&s->vlc[i], VLC_BITS, 256, s->len[i], 1, 1,
-+                           s->bits[i], 4, 4, 0)) < 0)
-+            return ret;
-     }
- 
-     generate_joint_tables(s);
-@@ -365,6 +370,7 @@ static int read_old_huffman_tables(HYuvC
- #if 1
-     GetBitContext gb;
-     int i;
-+    int ret;
- 
-     init_get_bits(&gb, classic_shift_luma, sizeof(classic_shift_luma)*8);
-     if(read_len_table(s->len[0], &gb)<0)
-@@ -385,7 +391,9 @@ static int read_old_huffman_tables(HYuvC
- 
-     for(i=0; i<3; i++){
-         free_vlc(&s->vlc[i]);
--        init_vlc(&s->vlc[i], VLC_BITS, 256, s->len[i], 1, 1, s->bits[i], 4, 4, 0);
-+        if ((ret = init_vlc(&s->vlc[i], VLC_BITS, 256, s->len[i], 1, 1,
-+                            s->bits[i], 4, 4, 0)) < 0)
-+            return ret;
-     }
- 
-     generate_joint_tables(s);
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-huffyuvdec-Skip-len-0-cases.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-huffyuvdec-Skip-len-0-cases.patch
deleted file mode 100644
index 94bf4b6..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-huffyuvdec-Skip-len-0-cases.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From db0f7f7394e1f994ed38db043f78ed0f10bde0da Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Tue, 29 Jan 2013 19:22:33 +0100
-Subject: [PATCH] huffyuvdec: Skip len==0 cases
-
-Upstream-Status: Backport
-
-Commit db0f7f7394e1f994ed38db043f78ed0f10bde0da release/1.0
-
-Fixes vlc decoding for hypothetical files that would contain such cases.
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 0dfc01c2bbf4b71bb56201bc4a393321e15d1b31)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/huffyuv.c | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/libavcodec/huffyuv.c b/libavcodec/huffyuv.c
-index 993e524..72ed351 100644
---- a/gst-libs/ext/libav/libavcodec/huffyuv.c
-+++ b/gst-libs/ext/libav/libavcodec/huffyuv.c
-@@ -281,11 +281,11 @@ static void generate_joint_tables(HYuvCo
-             for(i=y=0; y<256; y++){
-                 int len0 = s->len[0][y];
-                 int limit = VLC_BITS - len0;
--                if(limit <= 0)
-+                if(limit <= 0 || !len0)
-                     continue;
-                 for(u=0; u<256; u++){
-                     int len1 = s->len[p][u];
--                    if(len1 > limit)
-+                    if (len1 > limit || !len1)
-                         continue;
-                     len[i] = len0 + len1;
-                     bits[i] = (s->bits[0][y] << len1) + s->bits[p][u];
-@@ -308,17 +308,17 @@ static void generate_joint_tables(HYuvCo
-         for(i=0, g=-16; g<16; g++){
-             int len0 = s->len[p0][g&255];
-             int limit0 = VLC_BITS - len0;
--            if(limit0 < 2)
-+            if (limit0 < 2 || !len0)
-                 continue;
-             for(b=-16; b<16; b++){
-                 int len1 = s->len[p1][b&255];
-                 int limit1 = limit0 - len1;
--                if(limit1 < 1)
-+                if (limit1 < 1 || !len1)
-                     continue;
-                 code = (s->bits[p0][g&255] << len1) + s->bits[p1][b&255];
-                 for(r=-16; r<16; r++){
-                     int len2 = s->len[2][r&255];
--                    if(len2 > limit1)
-+                    if (len2 > limit1 || !len2)
-                         continue;
-                     len[i] = len0 + len1 + len2;
-                     bits[i] = (code << len2) + s->bits[2][r&255];
--- 
-1.8.5.2.233.g932f7e4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-lavf-compute-probe-buffer-size-more-reliably.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-lavf-compute-probe-buffer-size-more-reliably.patch
deleted file mode 100644
index ea4aa22..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-lavf-compute-probe-buffer-size-more-reliably.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-gst-ffmpeg: lavf: compute probe buffer size more reliably.
-
-The previous code computes the offset by reversing the growth
-of the allocated buffer size: it is complex and did lead to
-inconsistencies when the size limit is reached.
-
-Fix trac ticket #1991.
-(cherry picked from commit 03847eb8259291b4ff1bd840bd779d0699d71f96)
-
-Conflicts:
-	libavformat/utils.c
-
-Upstream-Status: Backport
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
-
----
- libavformat/utils.c |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libavformat/utils.c b/libavformat/utils.c
-index 7940037..be73c4a 100644
---- a/gst-libs/ext/libav/libavformat/utils.c
-+++ b/gst-libs/ext/libav/libavformat/utils.c
-@@ -459,7 +459,7 @@ int av_probe_input_buffer(AVIOContext *pb, AVInputFormat **fmt,
- {
-     AVProbeData pd = { filename ? filename : "", NULL, -offset };
-     unsigned char *buf = NULL;
--    int ret = 0, probe_size;
-+    int ret = 0, probe_size, buf_offset = 0;
- 
-     if (!max_probe_size) {
-         max_probe_size = PROBE_BUF_MAX;
-@@ -499,7 +499,7 @@ int av_probe_input_buffer(AVIOContext *pb, AVInputFormat **fmt,
-             score = 0;
-             ret = 0;            /* error was end of file, nothing read */
-         }
--        pd.buf_size += ret;
-+        pd.buf_size = buf_offset += ret;
-         pd.buf = &buf[offset];
- 
-         memset(pd.buf + pd.buf_size, 0, AVPROBE_PADDING_SIZE);
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-mjpegdec-check-SE.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-mjpegdec-check-SE.patch
deleted file mode 100644
index d90bafa..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-mjpegdec-check-SE.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 1f41cffe1e3e79620f587545bdfcbd7e6e68ed29 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Sun, 11 Nov 2012 00:01:24 +0100
-Subject: [PATCH] mjpegdec: check SE.
-
-Upstream-Status: Backport
-
-Commit 1f41cffe1e3e79620f587545bdfcbd7e6e68ed29 release/1.1
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/mjpegdec.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c
-index 6b5266d..0a71a6f 100644
---- a/gst-libs/ext/libav/libavcodec/mjpegdec.c
-+++ b/gst-libs/ext/libav/libavcodec/mjpegdec.c
-@@ -905,6 +905,11 @@ static int mjpeg_decode_scan_progressive
-     int16_t *quant_matrix = s->quant_matrixes[ s->quant_index[c] ];
-     GetBitContext mb_bitmask_gb;
- 
-+    if (se > 63) {
-+        av_log(s->avctx, AV_LOG_ERROR, "SE %d is too large\n", se);
-+        return AVERROR_INVALIDDATA;
-+    }
-+
-     if (mb_bitmask) {
-         init_get_bits(&mb_bitmask_gb, mb_bitmask, s->mb_width*s->mb_height);
-     }
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-pgssubdec-check-RLE-size-before-copying.-Fix-out-of-.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-pgssubdec-check-RLE-size-before-copying.-Fix-out-of-.patch
deleted file mode 100644
index 1041347..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-pgssubdec-check-RLE-size-before-copying.-Fix-out-of-.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 28bf685bfc6d0c744369cdf367f61a78d80d0b01 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Thu, 15 Nov 2012 16:41:28 +0100
-Subject: [PATCH] pgssubdec: check RLE size before copying. Fix out of array
- accesses
-
-Upstream-Status: Backport
-
-Commit 28bf685bfc6d0c744369cdf367f61a78d80d0b01 release/1.1
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit c0d68be555f5858703383040e04fcd6529777061)
----
- libavcodec/pgssubdec.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/libavcodec/pgssubdec.c b/libavcodec/pgssubdec.c
-index 728f178..26a3c2a 100644
---- a/gst-libs/ext/libav/libavcodec/pgssubdec.c
-+++ b/gst-libs/ext/libav/libavcodec/pgssubdec.c
-@@ -202,6 +202,11 @@ static int parse_picture_segment(AVCodec
-         return -1;
-     }
- 
-+    if (buf_size > rle_bitmap_len) {
-+        av_log(avctx, AV_LOG_ERROR, "too much RLE data\n");
-+        return AVERROR_INVALIDDATA;
-+    }
-+
-     ctx->picture.w = width;
-     ctx->picture.h = height;
- 
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-pngdec-filter-dont-access-out-of-array-elements-at-t.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-pngdec-filter-dont-access-out-of-array-elements-at-t.patch
deleted file mode 100644
index 1e5fb7d..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-pngdec-filter-dont-access-out-of-array-elements-at-t.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-gst-ffmpeg: pngdec/filter: dont access out of array elements at the end
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-
-Upstream-Status: Backport 
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/pngdec.c |   12 ++++--------
- 1 files changed, 4 insertions(+), 8 deletions(-)
-
-diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
-index 97c0ad1..193e35e 100644
---- a/gst-libs/ext/libav/libavcodec/pngdec.c
-+++ b/gst-libs/ext/libav/libavcodec/pngdec.c
-@@ -190,7 +190,7 @@ void ff_add_png_paeth_prediction(uint8_t *dst, uint8_t *src, uint8_t *top, int w
-     if(bpp >= 2) g = dst[1];\
-     if(bpp >= 3) b = dst[2];\
-     if(bpp >= 4) a = dst[3];\
--    for(; i < size; i+=bpp) {\
-+    for(; i <= size - bpp; i+=bpp) {\
-         dst[i+0] = r = op(r, src[i+0], last[i+0]);\
-         if(bpp == 1) continue;\
-         dst[i+1] = g = op(g, src[i+1], last[i+1]);\
-@@ -206,13 +206,9 @@ void ff_add_png_paeth_prediction(uint8_t *dst, uint8_t *src, uint8_t *top, int w
-     else if(bpp == 2) UNROLL1(2, op)\
-     else if(bpp == 3) UNROLL1(3, op)\
-     else if(bpp == 4) UNROLL1(4, op)\
--    else {\
--        for (; i < size; i += bpp) {\
--            int j;\
--            for (j = 0; j < bpp; j++)\
--                dst[i+j] = op(dst[i+j-bpp], src[i+j], last[i+j]);\
--        }\
--    }
-+    for (; i < size; i++) {\
-+        dst[i] = op(dst[i-bpp], src[i], last[i]);\
-+    }\
- 
- /* NOTE: 'dst' can be equal to 'last' */
- static void png_filter_row(PNGDSPContext *dsp, uint8_t *dst, int filter_type,
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-qdm2-check-array-index-before-use-fix-out-of-array-a.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-qdm2-check-array-index-before-use-fix-out-of-array-a.patch
deleted file mode 100644
index 8c94232..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-qdm2-check-array-index-before-use-fix-out-of-array-a.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-gst-ffmpeg: qdm2: check array index before use, fix out of array
- accesses
-
-Upstream-Status: Backport 
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/qdm2.c |    5 +++++
- 1 files changed, 5 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/qdm2.c b/libavcodec/qdm2.c
-index 4cf4b2f..1dfb8d5 100644
---- a/gst-libs/ext/libav/libavcodec/qdm2.c
-+++ b/gst-libs/ext/libav/libavcodec/qdm2.c
-@@ -1257,6 +1257,11 @@ static void qdm2_decode_super_block (QDM2Context *q)
-     for (i = 0; packet_bytes > 0; i++) {
-         int j;
- 
-+        if (i>=FF_ARRAY_ELEMS(q->sub_packet_list_A)) {
-+            SAMPLES_NEEDED_2("too many packet bytes");
-+            return;
-+        }
-+
-         q->sub_packet_list_A[i].next = NULL;
- 
-         if (i > 0) {
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-qdm2dec-fix-buffer-overflow.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-qdm2dec-fix-buffer-overflow.patch
deleted file mode 100644
index 43ffc03..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-qdm2dec-fix-buffer-overflow.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-gst-ffmpeg: qdm2dec: fix buffer overflow. Fixes NGS00144
-
-This also adds a few lines of code from master that are needed for this fix.
-
-Thanks to Phillip for suggestions to improve the patch.
-Found-by: Phillip Langlois
-
-Upstream-Status: Backport 
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/qdm2.c |    9 +++++++--
- 1 files changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/qdm2.c b/libavcodec/qdm2.c
-index 3aa9e5b..e000df8 100644
---- a/gst-libs/ext/libav/libavcodec/qdm2.c
-+++ b/gst-libs/ext/libav/libavcodec/qdm2.c
-@@ -76,6 +76,7 @@ do { \
- #define SAMPLES_NEEDED_2(why) \
-      av_log (NULL,AV_LOG_INFO,"This file triggers some missing code. Please contact the developers.\nPosition: %s\n",why);
- 
-+#define QDM2_MAX_FRAME_SIZE 512
- 
- typedef int8_t sb_int8_array[2][30][64];
- 
-@@ -168,7 +169,7 @@ typedef struct {
-     /// I/O data
-     const uint8_t *compressed_data;
-     int compressed_size;
--    float output_buffer[1024];
-+    float output_buffer[QDM2_MAX_FRAME_SIZE * MPA_MAX_CHANNELS * 2];
- 
-     /// Synthesis filter
-     MPADSPContext mpadsp;
-@@ -1819,6 +1820,9 @@ static av_cold int qdm2_decode_init(AVCodecContext *avctx)
-     s->group_order = av_log2(s->group_size) + 1;
-     s->frame_size = s->group_size / 16; // 16 iterations per super block
- 
-+    if (s->frame_size > QDM2_MAX_FRAME_SIZE)
-+        return AVERROR_INVALIDDATA;
-+
-     s->sub_sampling = s->fft_order - 7;
-     s->frequency_range = 255 / (1 << (2 - s->sub_sampling));
- 
-@@ -1887,6 +1891,9 @@ static int qdm2_decode (QDM2Context *q, const uint8_t *in, int16_t *out)
-     int ch, i;
-     const int frame_size = (q->frame_size * q->channels);
- 
-+    if((unsigned)frame_size > FF_ARRAY_ELEMS(q->output_buffer)/2)
-+        return -1;
-+
-     /* select input buffer */
-     q->compressed_data = in;
-     q->compressed_size = q->checksum_size;
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-roqvideodec-check-dimensions-validity.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-roqvideodec-check-dimensions-validity.patch
deleted file mode 100644
index 7e58afc..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-roqvideodec-check-dimensions-validity.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 391e0fc6c90ced6656b74f50f3a487b6dc76ea63 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Thu, 29 Nov 2012 15:18:17 +0100
-Subject: [PATCH] roqvideodec: check dimensions validity
-
-Upstream-Status: Backport
-
-Commit 391e0fc6c90ced6656b74f50f3a487b6dc76ea63 release/0.7
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit 3ae610451170cd5a28b33950006ff0bd23036845)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/roqvideodec.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/libavcodec/roqvideodec.c b/libavcodec/roqvideodec.c
-index f0977f6..4e34231 100644
---- a/gst-libs/ext/libav/libavcodec/roqvideodec.c
-+++ b/gst-libs/ext/libav/libavcodec/roqvideodec.c
-@@ -157,6 +157,12 @@ static av_cold int roq_decode_init(AVCodecContext *avctx)
-     RoqContext *s = avctx->priv_data;
- 
-     s->avctx = avctx;
-+
-+    if (avctx->width%16 || avctx->height%16) {
-+         av_log_ask_for_sample(avctx, "dimensions not being a multiple of 16 are unsupported\n");
-+         return AVERROR_PATCHWELCOME;
-+    }
-+
-     s->width = avctx->width;
-     s->height = avctx->height;
-     avcodec_get_frame_defaults(&s->frames[0]);
--- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-smackerdec-Check-that-the-last-indexes-are-within-th.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-smackerdec-Check-that-the-last-indexes-are-within-th.patch
deleted file mode 100644
index 15b1614..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-smackerdec-Check-that-the-last-indexes-are-within-th.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-gst-ffmpeg: smackerdec: Check that the last indexes are within the
- table.
-
-Fixes CVE-2011-3944
-
-Upstream-Status: Backport 
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/smacker.c |    5 +++++
- 1 files changed, 5 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/smacker.c b/libavcodec/smacker.c
-index 30f99b4..2a8bae8 100644
---- a/gst-libs/ext/libav/libavcodec/smacker.c
-+++ b/gst-libs/ext/libav/libavcodec/smacker.c
-@@ -259,6 +259,11 @@ static int smacker_decode_header_tree(SmackVContext *smk, GetBitContext *gb, int
-     if(ctx.last[0] == -1) ctx.last[0] = huff.current++;
-     if(ctx.last[1] == -1) ctx.last[1] = huff.current++;
-     if(ctx.last[2] == -1) ctx.last[2] = huff.current++;
-+    if(huff.current > huff.length){
-+        ctx.last[0] = ctx.last[1] = ctx.last[2] = 1;
-+        av_log(smk->avctx, AV_LOG_ERROR, "bigtree damaged\n");
-+        return -1;
-+    }
- 
-     *recodes = huff.values;
- 
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vp3-Copy-all-3-frames-for-thread-updates.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vp3-Copy-all-3-frames-for-thread-updates.patch
deleted file mode 100644
index a1989cf..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vp3-Copy-all-3-frames-for-thread-updates.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-gst-ffmpeg: vp3: Copy all 3 frames for thread updates.
-
-This fixes a double release of the current frame on deinit.
-Fixes CVE-2011-3934
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-
-Upstream-Status: Backport
-
-Signed-off-by: Yue.Tao <yue.tao at windriver.com>
-
----
- libavcodec/vp3.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
-index 738ae9f..b5daafc 100644
---- a/gst-libs/ext/libav/libavcodec/vp3.c
-+++ b/gst-libs/ext/libav/libavcodec/vp3.c
-@@ -1859,7 +1859,7 @@ static int vp3_update_thread_context(AVCodecContext *dst, const AVCodecContext *
-         ||s->width != s1->width
-         ||s->height!= s1->height) {
-         if (s != s1)
--            copy_fields(s, s1, golden_frame, current_frame);
-+            copy_fields(s, s1, golden_frame, keyframe);
-         return -1;
-     }
- 
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vp3-fix-oob-read-for-negative-tokens-and-memleaks-on.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vp3-fix-oob-read-for-negative-tokens-and-memleaks-on.patch
deleted file mode 100644
index e83d8f4..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vp3-fix-oob-read-for-negative-tokens-and-memleaks-on.patch
+++ /dev/null
@@ -1,183 +0,0 @@
-gst-ffmpeg: vp3: fix oob read for negative tokens and memleaks on error.
-
-Upstream-Status: Backport 
-
-Signed-off-by: Yue.Tao <yue.tao at windriver.com>
-
----
- libavcodec/vp3.c |   59 +++++++++++++++++++++++++++++++++++++++++------------
- 1 files changed, 45 insertions(+), 14 deletions(-)
-
-diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
-index 36715bb..ce14e63 100644
---- a/gst-libs/ext/libav/libavcodec/vp3.c
-+++ b/gst-libs/ext/libav/libavcodec/vp3.c
-@@ -45,6 +45,7 @@
- #define FRAGMENT_PIXELS 8
- 
- static av_cold int vp3_decode_end(AVCodecContext *avctx);
-+static void vp3_decode_flush(AVCodecContext *avctx);
- 
- //FIXME split things out into their own arrays
- typedef struct Vp3Fragment {
-@@ -890,7 +891,7 @@ static int unpack_vlcs(Vp3DecodeContext *s, GetBitContext *gb,
-             /* decode a VLC into a token */
-             token = get_vlc2(gb, vlc_table, 11, 3);
-             /* use the token to get a zero run, a coefficient, and an eob run */
--            if (token <= 6) {
-+            if ((unsigned) token <= 6U) {
-                 eob_run = eob_run_base[token];
-                 if (eob_run_get_bits[token])
-                     eob_run += get_bits(gb, eob_run_get_bits[token]);
-@@ -908,7 +909,7 @@ static int unpack_vlcs(Vp3DecodeContext *s, GetBitContext *gb,
-                     coeff_i        += eob_run;
-                     eob_run = 0;
-                 }
--            } else {
-+            } else if (token >= 0) {
-                 bits_to_get = coeff_get_bits[token];
-                 if (bits_to_get)
-                     bits_to_get = get_bits(gb, bits_to_get);
-@@ -942,6 +943,10 @@ static int unpack_vlcs(Vp3DecodeContext *s, GetBitContext *gb,
-                 for (i = coeff_index+1; i <= coeff_index+zero_run; i++)
-                     s->num_coded_frags[plane][i]--;
-                 coeff_i++;
-+            } else {
-+                av_log(s->avctx, AV_LOG_ERROR,
-+                       "Invalid token %d\n", token);
-+                return -1;
-             }
-     }
- 
-@@ -991,6 +996,8 @@ static int unpack_dct_coeffs(Vp3DecodeContext *s, GetBitContext *gb)
-     /* unpack the Y plane DC coefficients */
-     residual_eob_run = unpack_vlcs(s, gb, &s->dc_vlc[dc_y_table], 0,
-         0, residual_eob_run);
-+    if (residual_eob_run < 0)
-+        return residual_eob_run;
- 
-     /* reverse prediction of the Y-plane DC coefficients */
-     reverse_dc_prediction(s, 0, s->fragment_width[0], s->fragment_height[0]);
-@@ -998,8 +1005,12 @@ static int unpack_dct_coeffs(Vp3DecodeContext *s, GetBitContext *gb)
-     /* unpack the C plane DC coefficients */
-     residual_eob_run = unpack_vlcs(s, gb, &s->dc_vlc[dc_c_table], 0,
-         1, residual_eob_run);
-+    if (residual_eob_run < 0)
-+        return residual_eob_run;
-     residual_eob_run = unpack_vlcs(s, gb, &s->dc_vlc[dc_c_table], 0,
-         2, residual_eob_run);
-+    if (residual_eob_run < 0)
-+        return residual_eob_run;
- 
-     /* reverse prediction of the C-plane DC coefficients */
-     if (!(s->avctx->flags & CODEC_FLAG_GRAY))
-@@ -1036,11 +1047,17 @@ static int unpack_dct_coeffs(Vp3DecodeContext *s, GetBitContext *gb)
-     for (i = 1; i <= 63; i++) {
-             residual_eob_run = unpack_vlcs(s, gb, y_tables[i], i,
-                 0, residual_eob_run);
-+            if (residual_eob_run < 0)
-+                return residual_eob_run;
- 
-             residual_eob_run = unpack_vlcs(s, gb, c_tables[i], i,
-                 1, residual_eob_run);
-+            if (residual_eob_run < 0)
-+                return residual_eob_run;
-             residual_eob_run = unpack_vlcs(s, gb, c_tables[i], i,
-                 2, residual_eob_run);
-+            if (residual_eob_run < 0)
-+                return residual_eob_run;
-     }
- 
-     return 0;
-@@ -1777,10 +1794,15 @@ static int vp3_update_thread_context(AVCodecContext *dst, const AVCodecContext *
-     Vp3DecodeContext *s = dst->priv_data, *s1 = src->priv_data;
-     int qps_changed = 0, i, err;
- 
-+#define copy_fields(to, from, start_field, end_field) memcpy(&to->start_field, &from->start_field, (char*)&to->end_field - (char*)&to->start_field)
-+
-     if (!s1->current_frame.data[0]
-         ||s->width != s1->width
--        ||s->height!= s1->height)
-+        ||s->height!= s1->height) {
-+        if (s != s1)
-+            copy_fields(s, s1, golden_frame, current_frame);
-         return -1;
-+    }
- 
-     if (s != s1) {
-         // init tables if the first frame hasn't been decoded
-@@ -1796,8 +1818,6 @@ static int vp3_update_thread_context(AVCodecContext *dst, const AVCodecContext *
-             memcpy(s->motion_val[1], s1->motion_val[1], c_fragment_count * sizeof(*s->motion_val[1]));
-         }
- 
--#define copy_fields(to, from, start_field, end_field) memcpy(&to->start_field, &from->start_field, (char*)&to->end_field - (char*)&to->start_field)
--
-         // copy previous frame data
-         copy_fields(s, s1, golden_frame, dsp);
- 
-@@ -1987,9 +2007,6 @@ static av_cold int vp3_decode_end(AVCodecContext *avctx)
-     Vp3DecodeContext *s = avctx->priv_data;
-     int i;
- 
--    if (avctx->is_copy && !s->current_frame.data[0])
--        return 0;
--
-     av_free(s->superblock_coding);
-     av_free(s->all_fragments);
-     av_free(s->coded_fragment_list[0]);
-@@ -2016,12 +2033,7 @@ static av_cold int vp3_decode_end(AVCodecContext *avctx)
-     free_vlc(&s->motion_vector_vlc);
- 
-     /* release all frames */
--    if (s->golden_frame.data[0])
--        ff_thread_release_buffer(avctx, &s->golden_frame);
--    if (s->last_frame.data[0] && s->last_frame.type != FF_BUFFER_TYPE_COPY)
--        ff_thread_release_buffer(avctx, &s->last_frame);
--    /* no need to release the current_frame since it will always be pointing
--     * to the same frame as either the golden or last frame */
-+    vp3_decode_flush(avctx);
- 
-     return 0;
- }
-@@ -2341,6 +2353,23 @@ static void vp3_decode_flush(AVCodecContext *avctx)
-         ff_thread_release_buffer(avctx, &s->current_frame);
- }
- 
-+static int vp3_init_thread_copy(AVCodecContext *avctx)
-+{
-+    Vp3DecodeContext *s = avctx->priv_data;
-+
-+    s->superblock_coding      = NULL;
-+    s->all_fragments          = NULL;
-+    s->coded_fragment_list[0] = NULL;
-+    s->dct_tokens_base        = NULL;
-+    s->superblock_fragments   = NULL;
-+    s->macroblock_coding      = NULL;
-+    s->motion_val[0]          = NULL;
-+    s->motion_val[1]          = NULL;
-+    s->edge_emu_buffer        = NULL;
-+
-+    return 0;
-+}
-+
- AVCodec ff_theora_decoder = {
-     .name           = "theora",
-     .type           = AVMEDIA_TYPE_VIDEO,
-@@ -2352,6 +2381,7 @@ AVCodec ff_theora_decoder = {
-     .capabilities   = CODEC_CAP_DR1 | CODEC_CAP_DRAW_HORIZ_BAND | CODEC_CAP_FRAME_THREADS,
-     .flush = vp3_decode_flush,
-     .long_name = NULL_IF_CONFIG_SMALL("Theora"),
-+    .init_thread_copy      = ONLY_IF_THREADS_ENABLED(vp3_init_thread_copy),
-     .update_thread_context = ONLY_IF_THREADS_ENABLED(vp3_update_thread_context)
- };
- #endif
-@@ -2367,5 +2397,6 @@ AVCodec ff_vp3_decoder = {
-     .capabilities   = CODEC_CAP_DR1 | CODEC_CAP_DRAW_HORIZ_BAND | CODEC_CAP_FRAME_THREADS,
-     .flush = vp3_decode_flush,
-     .long_name = NULL_IF_CONFIG_SMALL("On2 VP3"),
-+    .init_thread_copy      = ONLY_IF_THREADS_ENABLED(vp3_init_thread_copy),
-     .update_thread_context = ONLY_IF_THREADS_ENABLED(vp3_update_thread_context)
- };
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vqavideo-check-chunk-sizes-before-reading-chunks.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vqavideo-check-chunk-sizes-before-reading-chunks.patch
deleted file mode 100644
index 7e4f682..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0001-vqavideo-check-chunk-sizes-before-reading-chunks.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 2cac35086c9e103fa98960c546d5017e7363803a Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 25 Jan 2013 06:11:59 +0100
-Subject: [PATCH] vqavideo: check chunk sizes before reading chunks
-
-Upstream-Status: Backport
-
-Commit 2cac35086c9e103fa98960c546d5017e7363803a release/0.7
-
-Fixes out of array writes
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-(cherry picked from commit ab6c9332bfa1e20127a16392a0b85a4aa4840889)
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
----
- libavcodec/vqavideo.c |   10 ++++++++++
- 1 files changed, 10 insertions(+), 0 deletions(-)
-
-diff --git a/libavcodec/vqavideo.c b/libavcodec/vqavideo.c
-index d1eab5b..6e1ce6c 100644
---- a/gst-libs/ext/libav/libavcodec/vqavideo.c
-+++ b/gst-libs/ext/libav/libavcodec/vqavideo.c
-@@ -527,6 +527,11 @@ static void vqa_decode_chunk(VqaContext *s)
-         chunk_size = AV_RB32(&s->buf[cbp0_chunk + 4]);
-         cbp0_chunk += CHUNK_PREAMBLE_SIZE;
- 
-+        if (chunk_size > MAX_CODEBOOK_SIZE - s->next_codebook_buffer_index) {
-+            av_log(s->avctx, AV_LOG_ERROR, "cbp0 chunk too large (0x%X bytes)\n", chunk_size);
-+            return AVERROR_INVALIDDATA;
-+        }
-+
-         /* accumulate partial codebook */
-         memcpy(&s->next_codebook_buffer[s->next_codebook_buffer_index],
-             &s->buf[cbp0_chunk], chunk_size);
-@@ -550,6 +555,11 @@ static void vqa_decode_chunk(VqaContext *s)
-         chunk_size = AV_RB32(&s->buf[cbpz_chunk + 4]);
-         cbpz_chunk += CHUNK_PREAMBLE_SIZE;
- 
-+        if (chunk_size > MAX_CODEBOOK_SIZE - s->next_codebook_buffer_index) {
-+            av_log(s->avctx, AV_LOG_ERROR, "cbpz chunk too large (0x%X bytes)\n", chunk_size);
-+            return AVERROR_INVALIDDATA;
-+        }
-+
-         /* accumulate partial codebook */
-         memcpy(&s->next_codebook_buffer[s->next_codebook_buffer_index],
-             &s->buf[cbpz_chunk], chunk_size);
--- 
-1.7.5.4
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0002-avcodec-mjpegdec-check-bits-per-pixel-for-changes-si.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0002-avcodec-mjpegdec-check-bits-per-pixel-for-changes-si.patch
deleted file mode 100644
index c8bafd5..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/0002-avcodec-mjpegdec-check-bits-per-pixel-for-changes-si.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 6043c431c97d55173f339fafbd033d3c0642e2e9 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 01:50:27 +0200
-Subject: [PATCH 2/2] avcodec/mjpegdec: check bits per pixel for changes
- similar to dimensions
-
-Upstream-Status: Backport
-
-Fixes out of array accesses
-Fixes: asan_heap-oob_16668e9_2_asan_heap-oob_16668e9_346_miss_congeniality_pegasus_mjpg.avi
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-
-Conflicts:
-	libavcodec/mjpegdec.c
----
- libavcodec/mjpegdec.c | 15 ++++++++-------
- 1 file changed, 8 insertions(+), 7 deletions(-)
-
-diff --git a/gst-libs/ext/libav/libavcodec/mjpegdec.c b/gst-libs/ext/libav/libavcodec/mjpegdec.c
-index 84343c0..c0137d8 100644
---- a/gst-libs/ext/libav/libavcodec/mjpegdec.c
-+++ b/gst-libs/ext/libav/libavcodec/mjpegdec.c
-@@ -210,16 +210,16 @@ int ff_mjpeg_decode_dht(MJpegDecodeContext *s)
- 
- int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
- {
--    int len, nb_components, i, width, height, pix_fmt_id;
-+    int len, nb_components, i, bits, width, height, pix_fmt_id;
- 
-     /* XXX: verify len field validity */
-     len = get_bits(&s->gb, 16);
--    s->bits= get_bits(&s->gb, 8);
-+    bits= get_bits(&s->gb, 8);
- 
--    if(s->pegasus_rct) s->bits=9;
--    if(s->bits==9 && !s->pegasus_rct) s->rct=1;    //FIXME ugly
-+    if(s->pegasus_rct) bits=9;
-+    if(bits==9 && !s->pegasus_rct) s->rct=1;    //FIXME ugly
- 
--    if (s->bits != 8 && !s->lossless){
-+    if (bits != 8 && !s->lossless){
-         av_log(s->avctx, AV_LOG_ERROR, "only 8 bits/component accepted\n");
-         return -1;
-     }
-@@ -239,7 +239,7 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
-     if (nb_components <= 0 ||
-         nb_components > MAX_COMPONENTS)
-         return -1;
--    if (s->ls && !(s->bits <= 8 || nb_components == 1)){
-+    if (s->ls && !(bits <= 8 || nb_components == 1)){
-         av_log(s->avctx, AV_LOG_ERROR, "only <= 8 bits/component or 16-bit gray accepted for JPEG-LS\n");
-         return -1;
-     }
-@@ -272,10 +272,11 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
- 
-     /* if different size, realloc/alloc picture */
-     /* XXX: also check h_count and v_count */
--    if (width != s->width || height != s->height) {
-+    if (width != s->width || height != s->height || bits != s->bits) {
-         av_freep(&s->qscale_table);
- 
-         s->width = width;
-+        s->bits= bits;
-         s->height = height;
-         s->interlaced = 0;
- 
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/configure-fix.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/configure-fix.patch
deleted file mode 100644
index 9ef6f7c..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/configure-fix.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Disable yasm for libav when --disable-yasm
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Shane Wang <shane.wang at intel.com>
-
-diff -r f2f8f74c6e30 configure.ac
---- a/configure.ac	Thu Dec 22 23:56:09 2011 +0800
-+++ b/configure.ac	Thu Dec 22 23:57:37 2011 +0800
-@@ -325,6 +325,12 @@
-         --enable-gpl"
-   fi
- 
-+ AC_ARG_ENABLE(yasm,
-+              [AC_HELP_STRING([--disable-yasm], [disable use of yasm assembler])])
-+  if test "x$enable_yasm" = "xno"; then
-+    embffmpeg_configure_args="$embffmpeg_configure_args --disable-yasm"
-+  fi
-+
-   # if we are cross-compiling, tell ffmpeg so
-   target_os=`echo $host_os | sed 's/-gnu//'`
-   if test "x$cross_compiling" = xyes; then
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-CVE-2013-0855.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-CVE-2013-0855.patch
deleted file mode 100644
index 3c8d8e3..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-CVE-2013-0855.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-gst-ffmpeg: Security Advisory - ffmpeg - CVE-2013-0855
-
-Upstream-Status: Backport 
-
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
-
-diff --git a/gst-libs/ext/libav/libavcodec/alac.c.old b/gst-libs/ext/libav/libavcodec/alac.c
-index 2a0df8c..bcbd56d 100644
---- a/gst-libs/ext/libav/libavcodec/alac.c.old
-+++ b/gst-libs/ext/libav/libavcodec/alac.c
-@@ -87,18 +87,44 @@ typedef struct {
-     int wasted_bits;
- } ALACContext;
- 
--static void allocate_buffers(ALACContext *alac)
-+static av_cold int alac_decode_close(AVCodecContext *avctx)
-+{
-+    ALACContext *alac = avctx->priv_data;
-+
-+    int chan;
-+    for (chan = 0; chan < MAX_CHANNELS; chan++) {
-+        av_freep(&alac->predicterror_buffer[chan]);
-+        av_freep(&alac->outputsamples_buffer[chan]);
-+        av_freep(&alac->wasted_bits_buffer[chan]);
-+    }
-+
-+    return 0;
-+}
-+
-+static int allocate_buffers(ALACContext *alac)
- {
-     int chan;
-+    int buf_size;
-+
-+    if (alac->setinfo_max_samples_per_frame > INT_MAX / sizeof(int32_t))
-+        goto buf_alloc_fail;
-+    buf_size = alac->setinfo_max_samples_per_frame * sizeof(int32_t);
-+
-     for (chan = 0; chan < MAX_CHANNELS; chan++) {
--        alac->predicterror_buffer[chan] =
--            av_malloc(alac->setinfo_max_samples_per_frame * 4);
- 
--        alac->outputsamples_buffer[chan] =
--            av_malloc(alac->setinfo_max_samples_per_frame * 4);
-+        FF_ALLOC_OR_GOTO(alac->avctx, alac->predicterror_buffer[chan],
-+                         buf_size, buf_alloc_fail);
- 
--        alac->wasted_bits_buffer[chan] = av_malloc(alac->setinfo_max_samples_per_frame * 4);
-+        FF_ALLOC_OR_GOTO(alac->avctx, alac->outputsamples_buffer[chan],
-+                         buf_size, buf_alloc_fail);
-+
-+        FF_ALLOC_OR_GOTO(alac->avctx, alac->wasted_bits_buffer[chan],
-+                         buf_size, buf_alloc_fail);
-     }
-+    return 0;
-+buf_alloc_fail:
-+    alac_decode_close(alac->avctx);
-+    return AVERROR(ENOMEM);
- }
- 
- static int alac_set_info(ALACContext *alac)
-@@ -131,8 +157,6 @@ static int alac_set_info(ALACContext *alac)
-     bytestream_get_be32(&ptr);      /* bitrate ? */
-     bytestream_get_be32(&ptr);      /* samplerate */
- 
--    allocate_buffers(alac);
--
-     return 0;
- }
- 
-@@ -659,6 +683,7 @@ static int alac_decode_frame(AVCodecContext *avctx,
- 
- static av_cold int alac_decode_init(AVCodecContext * avctx)
- {
-+    int ret;
-     ALACContext *alac = avctx->priv_data;
-     alac->avctx = avctx;
-     alac->numchannels = alac->avctx->channels;
-@@ -674,18 +699,9 @@ static av_cold int alac_decode_init(AVCodecContext * avctx)
-         return -1;
-     }
- 
--    return 0;
--}
--
--static av_cold int alac_decode_close(AVCodecContext *avctx)
--{
--    ALACContext *alac = avctx->priv_data;
--
--    int chan;
--    for (chan = 0; chan < MAX_CHANNELS; chan++) {
--        av_freep(&alac->predicterror_buffer[chan]);
--        av_freep(&alac->outputsamples_buffer[chan]);
--        av_freep(&alac->wasted_bits_buffer[chan]);
-+    if ((ret = allocate_buffers(alac)) < 0) {
-+        av_log(avctx, AV_LOG_ERROR, "Error allocating buffers\n");
-+        return ret;
-     }
- 
-     return 0;
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-CVE-2013-3674.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-CVE-2013-3674.patch
deleted file mode 100644
index aa385f5..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-CVE-2013-3674.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-avcodec/cdgraphics: check buffer size before use
-
-Fixes out of array accesses
-
-Backported from:http://git.videolan.org/?p=ffmpeg.git;a=commit;h=ad002e1a13a8df934bd6cb2c84175a4780ab8942
-
-Upstream-Status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Ming Liu <ming.liu at windriver.com>
-
-diff -urpN a/gst-libs/ext/libav/libavcodec/cdgraphics.c b/gst-libs/ext/libav/libavcodec/cdgraphics.c
---- a/gst-libs/ext/libav/libavcodec/cdgraphics.c	2013-07-18 13:17:08.399876575 +0800
-+++ b/gst-libs/ext/libav/libavcodec/cdgraphics.c	2013-07-18 13:18:05.880502267 +0800
-@@ -291,7 +291,9 @@ static int cdg_decode_frame(AVCodecConte
-     inst    = bytestream_get_byte(&buf);
-     inst    &= CDG_MASK;
-     buf += 2;  /// skipping 2 unneeded bytes
--    bytestream_get_buffer(&buf, cdg_data, buf_size - CDG_HEADER_SIZE);
-+
-+    if (buf_size > CDG_HEADER_SIZE)
-+        bytestream_get_buffer(&buf, cdg_data, buf_size - CDG_HEADER_SIZE);
- 
-     if ((command & CDG_MASK) == CDG_COMMAND) {
-         switch (inst) {
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2011-4352.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2011-4352.patch
deleted file mode 100644
index 90f3fd0..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2011-4352.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 8b94df0f2047e9728cb872adc9e64557b7a5152f Mon Sep 17 00:00:00 2001
-From: Reinhard Tartler <siretart at tauware.de>
-Date: Sun, 4 Dec 2011 10:10:33 +0100
-Subject: [PATCH] vp3dec: Check coefficient index in vp3_dequant()
-
-Based on a patch by Michael Niedermayer <michaelni at gmx.at>
-
-Fixes NGS00145, CVE-2011-4352
-
-Found-by: Phillip Langlois
-Signed-off-by: Reinhard Tartler <siretart at tauware.de>
-
-
-Upstream-Status: Backport
-
-http://git.videolan.org/?p=ffmpeg.git;a=commit;h=8b94df0f2047e9728cb872adc9e64557b7a5152f
-
-Signed-off-by: Kai Kang <kai.kang at windriver.com>
----
- libavcodec/vp3.c | 14 ++++++++++++--
- 1 file changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/libavcodec/vp3.c b/libavcodec/vp3.c
-index 51ab048..f44d084 100644
---- a/gst-libs/ext/libav/libavcodec/vp3.c
-+++ b/gst-libs/ext/libav/libavcodec/vp3.c
-@@ -1363,6 +1363,10 @@ static inline int vp3_dequant(Vp3DecodeContext *s, Vp3Fragment *frag,
-         case 1: // zero run
-             s->dct_tokens[plane][i]++;
-             i += (token >> 2) & 0x7f;
-+            if (i > 63) {
-+                av_log(s->avctx, AV_LOG_ERROR, "Coefficient index overflow\n");
-+                return i;
-+            }
-             block[perm[i]] = (token >> 9) * dequantizer[perm[i]];
-             i++;
-             break;
-@@ -1566,7 +1570,10 @@ static void render_slice(Vp3DecodeContext *s, int slice)
-                     /* invert DCT and place (or add) in final output */
- 
-                     if (s->all_fragments[i].coding_method == MODE_INTRA) {
--                        vp3_dequant(s, s->all_fragments + i, plane, 0, block);
-+                        int index;
-+                        index = vp3_dequant(s, s->all_fragments + i, plane, 0, block);
-+                        if (index > 63)
-+                            continue;
-                         if(s->avctx->idct_algo!=FF_IDCT_VP3)
-                             block[0] += 128<<3;
-                         s->dsp.idct_put(
-@@ -1574,7 +1581,10 @@ static void render_slice(Vp3DecodeContext *s, int slice)
-                             stride,
-                             block);
-                     } else {
--                        if (vp3_dequant(s, s->all_fragments + i, plane, 1, block)) {
-+                        int index = vp3_dequant(s, s->all_fragments + i, plane, 1, block);
-+                        if (index > 63)
-+                            continue;
-+                        if (index > 0) {
-                         s->dsp.idct_add(
-                             output_plane + first_pixel,
-                             stride,
--- 
-2.1.1
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-7933.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-7933.patch
deleted file mode 100644
index 3c537c7..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-7933.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 2266b8bc3370856d874334ba62b337ce4f1eb255 Mon Sep 17 00:00:00 2001
-From: Kai Kang <kai.kang at windriver.com>
-Date: Wed, 13 May 2015 16:46:06 +0800
-Subject: [PATCH 2/2] gst-ffmpeg: fix CVE-2014-7933
-
-Upstream-Status: Backport
-
-http://git.videolan.org/?p=ffmpeg.git;a=commit;h=33301f00
-
-Signed-off-by: Kai Kang <kai.kang at windriver.com>
----
- gst-libs/ext/libav/libavformat/matroskadec.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/gst-libs/ext/libav/libavformat/matroskadec.c b/gst-libs/ext/libav/libavformat/matroskadec.c
-index 59dce4f..e5f5fc1 100644
---- a/gst-libs/ext/libav/libavformat/matroskadec.c
-+++ b/gst-libs/ext/libav/libavformat/matroskadec.c
-@@ -1916,7 +1916,7 @@ static int matroska_read_seek(AVFormatContext *s, int stream_index,
-                               int64_t timestamp, int flags)
- {
-     MatroskaDemuxContext *matroska = s->priv_data;
--    MatroskaTrack *tracks = matroska->tracks.elem;
-+    MatroskaTrack *tracks = NULL;
-     AVStream *st = s->streams[stream_index];
-     int i, index, index_sub, index_min;
- 
-@@ -1939,6 +1939,7 @@ static int matroska_read_seek(AVFormatContext *s, int stream_index,
-         return 0;
- 
-     index_min = index;
-+    tracks = matroska->tracks.elem;
-     for (i=0; i < matroska->tracks.nb_elem; i++) {
-         tracks[i].audio.pkt_cnt = 0;
-         tracks[i].audio.sub_packet_cnt = 0;
--- 
-1.9.1
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8542.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8542.patch
deleted file mode 100644
index ca47c81..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8542.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 105654e376a736d243aef4a1d121abebce912e6b Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 04:30:58 +0200
-Subject: [PATCH] avcodec/utils: Add case for jv to
- avcodec_align_dimensions2()
-
-(Upstream commit 105654e376a736d243aef4a1d121abebce912e6b)
-
-Fixes out of array accesses
-Fixes: asan_heap-oob_12304aa_8_asan_heap-oob_4da4f3_300_intro.jv
-
-Upstream-Status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/utils.c |    4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/libavcodec/utils.c b/libavcodec/utils.c
-index d4f5532..c2c5579 100644
---- a/gst-libs/ext/libav/libavcodec/utils.c
-+++ b/gst-libs/ext/libav/libavcodec/utils.c
-@@ -173,6 +173,10 @@ void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height, int l
-             w_align=4;
-             h_align=4;
-         }
-+        if (s->codec_id == CODEC_ID_JV){
-+            w_align = 8;
-+            h_align = 8;
-+        }
-         break;
-     case PIX_FMT_BGR24:
-         if((s->codec_id == CODEC_ID_MSZH) || (s->codec_id == CODEC_ID_ZLIB)){
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8543.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8543.patch
deleted file mode 100644
index b65e55f..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8543.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 8b0e96e1f21b761ca15dbb470cd619a1ebf86c3e Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 14:45:04 +0200
-Subject: [PATCH] avcodec/mmvideo: Bounds check 2nd line of HHV Intra blocks
-
-(Upstream commit 8b0e96e1f21b761ca15dbb470cd619a1ebf86c3e)
-
-Fixes out of array access
-Fixes: asan_heap-oob_4da4f3_8_asan_heap-oob_4da4f3_419_scene1a.mm
-
-Upstream-Status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/mmvideo.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libavcodec/mmvideo.c b/libavcodec/mmvideo.c
-index 026d463..9ff6393 100644
---- a/gst-libs/ext/libav/libavcodec/mmvideo.c
-+++ b/gst-libs/ext/libav/libavcodec/mmvideo.c
-@@ -104,7 +104,7 @@ static void mm_decode_intra(MmContext * s, int half_horiz, int half_vert, const
- 
-         if (color) {
-             memset(s->frame.data[0] + y*s->frame.linesize[0] + x, color, run_length);
--            if (half_vert)
-+            if (half_vert && y + half_vert < s->avctx->height)
-                 memset(s->frame.data[0] + (y+1)*s->frame.linesize[0] + x, color, run_length);
-         }
-         x+= run_length;
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8544.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8544.patch
deleted file mode 100644
index a124e3a..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8544.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From e1c0cfaa419aa5d320540d5a1b3f8fd9b82ab7e5 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 16:08:32 +0200
-Subject: [PATCH] avcodec/tiff: more completely check bpp/bppcount
-
-(Upstream commit e1c0cfaa419aa5d320540d5a1b3f8fd9b82ab7e5)
-
-Fixes pixel format selection
-Fixes out of array accesses
-Fixes: asan_heap-oob_1766029_6_asan_heap-oob_20aa045_332_cov_1823216757_m2-d1d366d7965db766c19a66c7a2ccbb6b.tif
-
-Upstream-Status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/tiff.c |   13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
-diff --git a/libavcodec/tiff.c b/libavcodec/tiff.c
-index 6e2096f..0870e31 100644
---- a/gst-libs/ext/libav/libavcodec/tiff.c
-+++ b/gst-libs/ext/libav/libavcodec/tiff.c
-@@ -324,11 +324,11 @@ static int tiff_decode_tag(TiffContext *s, const uint8_t *start, const uint8_t *
-         s->height = value;
-         break;
-     case TIFF_BPP:
--        s->bppcount = count;
--        if(count > 4){
--            av_log(s->avctx, AV_LOG_ERROR, "This format is not supported (bpp=%d, %d components)\n", s->bpp, count);
-+        if(count > 4U){
-+            av_log(s->avctx, AV_LOG_ERROR, "This format is not supported (bpp=%d, %d components)\n", value, count);
-             return -1;
-         }
-+        s->bppcount = count;
-         if(count == 1) s->bpp = value;
-         else{
-             switch(type){
-@@ -344,6 +344,13 @@ static int tiff_decode_tag(TiffContext *s, const uint8_t *start, const uint8_t *
-                 s->bpp = -1;
-             }
-         }
-+        if (s->bpp > 64U) {
-+            av_log(s->avctx, AV_LOG_ERROR,
-+                   "This format is not supported (bpp=%d, %d components)\n",
-+                   s->bpp, count);
-+            s->bpp = 0;
-+            return AVERROR_INVALIDDATA;
-+        }
-         break;
-     case TIFF_SAMPLES_PER_PIXEL:
-         if (count != 1) {
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8545.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8545.patch
deleted file mode 100644
index 29d5f77..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8545.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 3e2b745020c2dbf0201fe7df3dad9e7e0b2e1bb6 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 17:35:58 +0200
-Subject: [PATCH] avcodec/pngdec: Check bits per pixel before setting
- monoblack pixel format
-
-(Upstream commit 3e2b745020c2dbf0201fe7df3dad9e7e0b2e1bb6)
-
-Fixes out of array accesses
-Fixes: asan_heap-oob_14dbfcf_4_asan_heap-oob_1ce5767_179_add_method_small.png
-
-Upstream-Status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/pngdec.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
-index da91aab..f3603b3 100644
---- a/gst-libs/ext/libav/libavcodec/pngdec.c
-+++ b/gst-libs/ext/libav/libavcodec/pngdec.c
-@@ -481,7 +481,7 @@ static int decode_frame(AVCodecContext *avctx,
-                 } else if (s->bit_depth == 16 &&
-                            s->color_type == PNG_COLOR_TYPE_RGB) {
-                     avctx->pix_fmt = PIX_FMT_RGB48BE;
--                } else if (s->bit_depth == 1 &&
-+                } else if (s->bit_depth == 1 && s->bits_per_pixel == 1 &&
-                            s->color_type == PNG_COLOR_TYPE_GRAY) {
-                     avctx->pix_fmt = PIX_FMT_MONOBLACK;
-                 } else if (s->color_type == PNG_COLOR_TYPE_PALETTE) {
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8546.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8546.patch
deleted file mode 100644
index d55d9eb..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8546.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From e7e5114c506957f40aafd794e06de1a7e341e9d5 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 19:33:01 +0200
-Subject: [PATCH] avcodec/cinepak: fix integer underflow
-
-(Upstream commit e7e5114c506957f40aafd794e06de1a7e341e9d5)
-
-Fixes out of array access
-Fixes: asan_heap-oob_4da0ba_6_asan_heap-oob_4da0ba_241_cvid_crash.avi
-
-Upstream-status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/cinepak.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libavcodec/cinepak.c b/libavcodec/cinepak.c
-index 4746289..f651c48 100644
---- a/gst-libs/ext/libav/libavcodec/cinepak.c
-+++ b/gst-libs/ext/libav/libavcodec/cinepak.c
-@@ -125,7 +125,7 @@ static int cinepak_decode_vectors (CinepakContext *s, cvid_strip *strip,
-     const uint8_t   *eod = (data + size);
-     uint32_t         flag, mask;
-     cvid_codebook   *codebook;
--    unsigned int     x, y;
-+    int             x, y;
-     uint32_t         iy[4];
-     uint32_t         iu[2];
-     uint32_t         iv[2];
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8547.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8547.patch
deleted file mode 100644
index a8616fa..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-8547.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 8f1457864be8fb9653643519dea1c6492f1dde57 Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Fri, 3 Oct 2014 20:15:52 +0200
-Subject: [PATCH] avcodec/gifdec: factorize interleave end handling out
-
-(Upstream commit 8f1457864be8fb9653643519dea1c6492f1dde57)
-
-also change it to a loop
-Fixes out of array access
-Fixes: asan_heap-oob_ca5410_8_asan_heap-oob_ca5410_97_ID_LSD_Size_Less_Then_Data_Inter_3.gif
-
-Upstream-Status: Backport
-
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/gifdec.c |   15 +++++----------
- 1 file changed, 5 insertions(+), 10 deletions(-)
-
-diff --git a/libavcodec/gifdec.c b/libavcodec/gifdec.c
-index dee48f5..90de38b 100644
---- a/gst-libs/ext/libav/libavcodec/gifdec.c
-+++ b/gst-libs/ext/libav/libavcodec/gifdec.c
-@@ -271,26 +271,21 @@ static int gif_read_image(GifState *s, AVFrame *frame)
-             case 1:
-                 y1 += 8;
-                 ptr += linesize * 8;
--                if (y1 >= height) {
--                    y1 = pass ? 2 : 4;
--                    ptr = ptr1 + linesize * y1;
--                    pass++;
--                }
-                 break;
-             case 2:
-                 y1 += 4;
-                 ptr += linesize * 4;
--                if (y1 >= height) {
--                    y1 = 1;
--                    ptr = ptr1 + linesize;
--                    pass++;
--                }
-                 break;
-             case 3:
-                 y1 += 2;
-                 ptr += linesize * 2;
-                 break;
-             }
-+            while (y1 >= height) {
-+                y1 = 4 >> pass;
-+                ptr = ptr1 + linesize * y1;
-+                pass++;
-+            }
-         } else {
-             ptr += linesize;
-         }
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-9318.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-9318.patch
deleted file mode 100644
index 0553cee..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-9318.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 0d3a3b9f8907625b361420d48fe05716859620ff Mon Sep 17 00:00:00 2001
-From: Michael Niedermayer <michaelni at gmx.at>
-Date: Wed, 26 Nov 2014 18:56:39 +0100
-Subject: [PATCH] avcodec/rawdec: Check the return code of
- avpicture_get_size()
-
-(Upstream commit 1d3a3b9f8907625b361420d48fe05716859620ff)
-
-Fixes out of array access
-Fixes: asan_heap-oob_22388d0_3435_cov_3297128910_small_roll5_FlashCine1.cine
-Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
-
-Upstream-Status: Backport
-
-Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
-Signed-off-by: Yue Tao <yue.tao at windriver.com>
----
- libavcodec/rawdec.c |    3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/libavcodec/rawdec.c b/libavcodec/rawdec.c
-index 28792a1..647dfa9 100644
---- a/gst-libs/ext/libav/libavcodec/rawdec.c
-+++ b/gst-libs/ext/libav/libavcodec/rawdec.c
-@@ -87,6 +87,9 @@ static av_cold int raw_init_decoder(AVCodecContext *avctx)
- 
-     ff_set_systematic_pal2(context->palette, avctx->pix_fmt);
-     context->length = avpicture_get_size(avctx->pix_fmt, avctx->width, avctx->height);
-+    if (context->length < 0)
-+        return context->length;
-+
-     if((avctx->bits_per_coded_sample == 4 || avctx->bits_per_coded_sample == 2) &&
-        avctx->pix_fmt==PIX_FMT_PAL8 &&
-        (!avctx->codec_tag || avctx->codec_tag == MKTAG('r','a','w',' '))){
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-9603.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-9603.patch
deleted file mode 100644
index 5dda4cc..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/gst-ffmpeg-fix-CVE-2014-9603.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From dc68faf8339a885bc55fabe5b01f1de4f8f3782c Mon Sep 17 00:00:00 2001
-From: Kai Kang <kai.kang at windriver.com>
-Date: Wed, 13 May 2015 16:30:53 +0800
-Subject: [PATCH 1/2] gst-ffmpeg: fix CVE-2014-9603
-
-Upstream-Status: Backport
-
-Upstream is version 2.x and vmdav.c is splitted into 2 files vmdaudio.c
-and vmdvideo.c. Becuase source code changes, just partly backport commit which
-is applicable to version 0.10.13 to fix CVE-2014-9603.
-
-http://git.videolan.org/?p=ffmpeg.git;a=commit;h=3030fb7e0d41836f8add6399e9a7c7b740b48bfd
-
-Signed-off-by: Kai Kang <kai.kang at windriver.com>
----
- gst-libs/ext/libav/libavcodec/vmdav.c | 7 +++++--
- 1 file changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/gst-libs/ext/libav/libavcodec/vmdav.c b/gst-libs/ext/libav/libavcodec/vmdav.c
-index d258252..ba88ad8 100644
---- a/gst-libs/ext/libav/libavcodec/vmdav.c
-+++ b/gst-libs/ext/libav/libavcodec/vmdav.c
-@@ -294,10 +294,13 @@ static void vmd_decode(VmdVideoContext *s)
-                     len = *pb++;
-                     if (len & 0x80) {
-                         len = (len & 0x7F) + 1;
--                        if (*pb++ == 0xFF)
-+                        if (*pb++ == 0xFF) {
-                             len = rle_unpack(pb, &dp[ofs], len, frame_width - ofs);
--                        else
-+                        } else {
-+                            if (ofs + len > frame_width)
-+                                return;
-                             memcpy(&dp[ofs], pb, len);
-+                        }
-                         pb += len;
-                         ofs += len;
-                     } else {
--- 
-1.9.1
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/h264_qpel_mmx.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/h264_qpel_mmx.patch
deleted file mode 100644
index ade24dc..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/h264_qpel_mmx.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-Backport http://git.videolan.org/?p=ffmpeg.git;a=commitdiff;h=5f654897e325349dacf2546674e0510bb72ecb50;hp=250cebeb3b348c3da71f9972eb500d6005dc01f1
-
-Fixes these errors on x86
-
-libavcodec/x86/h264_qpel_mmx.c: Assembler messages:
-libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
-make[5]: *** [libavcodec/x86/dsputil_mmx.o] Error 1
-
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-Upstream-Status: Backport
-Index: gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c
-===================================================================
---- gst-ffmpeg-0.10.13.orig/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c	2012-03-30 11:39:41.324522051 -0700
-+++ gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c	2012-03-30 11:54:08.152564075 -0700
-@@ -398,7 +398,7 @@
-             "2:                         \n\t"\
-             \
-             : "+a"(src), "+c"(dst)\
--            : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\
-+            : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\
-             : "memory"\
-         );\
-         src += 4-(h+5)*srcStride;\
-@@ -446,7 +446,7 @@
-             QPEL_H264HV(%%mm3, %%mm4, %%mm5, %%mm0, %%mm1, %%mm2, 15*48)\
-             "2:                     \n\t"\
-             : "+a"(src)\
--            : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)\
-+            : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)\
-             : "memory"\
-             );\
-         tmp += 4;\
-@@ -823,7 +823,7 @@
-         "2:                          \n\t"\
-         \
-         : "+a"(src), "+c"(dst)\
--        : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\
-+        : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\
-         : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3", \
-                        "%xmm4", "%xmm5", "%xmm6", "%xmm7",)\
-           "memory"\
-@@ -878,7 +878,7 @@
-             QPEL_H264HV_XMM(%%xmm3, %%xmm4, %%xmm5, %%xmm0, %%xmm1, %%xmm2, 15*48)
-             "2:                         \n\t"
-             : "+a"(src)
--            : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)
-+            : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)
-             : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3",
-                            "%xmm4", "%xmm5", "%xmm6", "%xmm7",)
-               "memory"
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav-9.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav-9.patch
deleted file mode 100644
index 1860752..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav-9.patch
+++ /dev/null
@@ -1,9304 +0,0 @@
-Taken from gentoo patchset:
-http://dev.gentoo.org/~tetromino/distfiles/gst-plugins-ffmpeg/gst-ffmpeg-0.10.13_p2012.11-libav-9-patches.tar.xz
-
-Upstream-Status: Pending
-
-Contains following changes, rebased to apply on top of our changes
-0002-Fix-includes-for-systemwide-build.patch
-0003-libav-Switch-to-non-deprecated-symbols.patch
-0005-av-Update-for-some-constant-changes.patch
-0006-av-Remove-palette-support-for-now.patch
-0007-av-Port-remaining-simple-bits.patch
-0008-av-Use-av_codec_is_-en-de-coder-API-instead-of-priva.patch
-0009-avprotocol-Port-from-the-URL-protocol-handler-to-san.patch
-0010-avdec-don-t-wait-for-keyframe.patch
-
-Following changes were skipped:
-0001-Partially-revert-commit-0300801b.patch
-0004-av-update-to-use-AVOption-variants.patch
-0011-av_get_bits_per_sample_format-was-removed-in-libav-9.patch
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
-
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpeg.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpeg.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpeg.c	2011-10-31 11:14:03.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpeg.c	2014-08-08 15:26:07.872857555 +0200
-@@ -151,9 +151,6 @@
- #endif
-   gst_ffmpegaudioresample_register (plugin);
- 
--  av_register_protocol2 (&gstreamer_protocol, sizeof (URLProtocol));
--  av_register_protocol2 (&gstpipe_protocol, sizeof (URLProtocol));
--
-   /* Now we can return the pointer to the newly created Plugin object. */
-   return TRUE;
- }
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpeg.h gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpeg.h
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpeg.h	2011-05-17 10:53:16.000000000 +0200
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpeg.h	2014-08-08 15:26:07.872857555 +0200
-@@ -58,10 +58,13 @@
- int gst_ffmpeg_avcodec_close (AVCodecContext *avctx);
- int gst_ffmpeg_av_find_stream_info(AVFormatContext *ic);
- 
--G_END_DECLS
-+int gst_ffmpegdata_open (GstPad * pad, int flags, AVIOContext ** context);
-+int gst_ffmpegdata_close (AVIOContext * h);
-+typedef struct _GstFFMpegPipe GstFFMpegPipe;
-+int gst_ffmpeg_pipe_open (GstFFMpegPipe *ffpipe, int flags, AVIOContext ** context);
-+int gst_ffmpeg_pipe_close (AVIOContext * h);
- 
--extern URLProtocol gstreamer_protocol;
--extern URLProtocol gstpipe_protocol;
-+G_END_DECLS
- 
- /* use GST_FFMPEG URL_STREAMHEADER with URL_WRONLY if the first
-  * buffer should be used as streamheader property on the pad's caps. */
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcfg.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcfg.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcfg.c	2011-07-12 16:35:27.000000000 +0200
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcfg.c	2014-08-08 15:24:17.899853612 +0200
-@@ -147,7 +147,6 @@
-       {FF_DCT_FASTINT, "Fast Integer", "fastint"},
-       {FF_DCT_INT, "Accurate Integer", "int"},
-       {FF_DCT_MMX, "MMX", "mmx"},
--      {FF_DCT_MLIB, "MLIB", "mlib"},
-       {FF_DCT_ALTIVEC, "ALTIVEC", "altivec"},
-       {FF_DCT_FAAN, "FAAN", "faan"},
-       {0, NULL, NULL},
-@@ -173,8 +172,6 @@
-       {FF_IDCT_SIMPLE, "Simple", "simple"},
-       {FF_IDCT_SIMPLEMMX, "Simple MMX", "simplemmx"},
-       {FF_IDCT_LIBMPEG2MMX, "LIBMPEG2MMX", "libmpeg2mmx"},
--      {FF_IDCT_PS2, "PS2", "ps2"},
--      {FF_IDCT_MLIB, "MLIB", "mlib"},
-       {FF_IDCT_ARM, "ARM", "arm"},
-       {FF_IDCT_ALTIVEC, "ALTIVEC", "altivec"},
-       {FF_IDCT_SH4, "SH4", "sh4"},
-@@ -263,16 +260,11 @@
- 
-   if (!ffmpeg_flags_type) {
-     static const GFlagsValue ffmpeg_flags[] = {
--      {CODEC_FLAG_OBMC, "Use overlapped block motion compensation (h263+)",
--          "obmc"},
-       {CODEC_FLAG_QSCALE, "Use fixed qscale", "qscale"},
-       {CODEC_FLAG_4MV, "Allow 4 MV per MB", "4mv"},
--      {CODEC_FLAG_H263P_AIV, "H.263 alternative inter VLC", "aiv"},
-       {CODEC_FLAG_QPEL, "Quartel Pel Motion Compensation", "qpel"},
-       {CODEC_FLAG_GMC, "GMC", "gmc"},
-       {CODEC_FLAG_MV0, "Always try a MB with MV (0,0)", "mv0"},
--      {CODEC_FLAG_PART,
--          "Store MV, DC and AC coefficients in seperate partitions", "part"},
-       {CODEC_FLAG_LOOP_FILTER, "Loop filter", "loop-filter"},
-       {CODEC_FLAG_GRAY, "Only decode/encode grayscale", "gray"},
-       {CODEC_FLAG_NORMALIZE_AQP,
-@@ -282,13 +274,9 @@
-           "global-headers"},
-       {CODEC_FLAG_AC_PRED, "H263 Advanced Intra Coding / MPEG4 AC prediction",
-           "aic"},
--      {CODEC_FLAG_H263P_UMV, "Unlimited Motion Vector", "umv"},
-       {CODEC_FLAG_CBP_RD, "Rate Distoration Optimization for CBP", "cbp-rd"},
-       {CODEC_FLAG_QP_RD, "Rate Distoration Optimization for QP selection",
-           "qp-rd"},
--      {CODEC_FLAG_H263P_SLICE_STRUCT, "H263 slice struct", "ss"},
--      {CODEC_FLAG_SVCD_SCAN_OFFSET,
--          "Reserve space for SVCD scan offset user data", "scanoffset"},
-       {CODEC_FLAG_CLOSED_GOP, "Closed GOP", "closedgop"},
-       {0, NULL, NULL},
-     };
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcodecmap.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcodecmap.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcodecmap.c	2011-10-31 11:14:03.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcodecmap.c	2014-08-08 15:31:30.968869139 +0200
-@@ -25,8 +25,10 @@
- #include <gst/gst.h>
- #ifdef HAVE_FFMPEG_UNINSTALLED
- #include <avcodec.h>
-+#include <channel_layout.h>
- #else
- #include <libavcodec/avcodec.h>
-+#include <libavutil/channel_layout.h>
- #endif
- #include <string.h>
- 
-@@ -35,43 +37,6 @@
- 
- #include <gst/pbutils/codec-utils.h>
- 
--/*
-- * Read a palette from a caps.
-- */
--
--static void
--gst_ffmpeg_get_palette (const GstCaps * caps, AVCodecContext * context)
--{
--  GstStructure *str = gst_caps_get_structure (caps, 0);
--  const GValue *palette_v;
--  const GstBuffer *palette;
--
--  /* do we have a palette? */
--  if ((palette_v = gst_structure_get_value (str, "palette_data")) && context) {
--    palette = gst_value_get_buffer (palette_v);
--    if (GST_BUFFER_SIZE (palette) >= AVPALETTE_SIZE) {
--      if (context->palctrl)
--        av_free (context->palctrl);
--      context->palctrl = av_malloc (sizeof (AVPaletteControl));
--      context->palctrl->palette_changed = 1;
--      memcpy (context->palctrl->palette, GST_BUFFER_DATA (palette),
--          AVPALETTE_SIZE);
--    }
--  }
--}
--
--static void
--gst_ffmpeg_set_palette (GstCaps * caps, AVCodecContext * context)
--{
--  if (context->palctrl) {
--    GstBuffer *palette = gst_buffer_new_and_alloc (AVPALETTE_SIZE);
--
--    memcpy (GST_BUFFER_DATA (palette), context->palctrl->palette,
--        AVPALETTE_SIZE);
--    gst_caps_set_simple (caps, "palette_data", GST_TYPE_BUFFER, palette, NULL);
--  }
--}
--
- /* IMPORTANT: Keep this sorted by the ffmpeg channel masks */
- static const struct
- {
-@@ -79,26 +44,26 @@
-   GstAudioChannelPosition gst;
- } _ff_to_gst_layout[] = {
-   {
--  CH_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT}, {
--  CH_FRONT_RIGHT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}, {
--  CH_FRONT_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER}, {
--  CH_LOW_FREQUENCY, GST_AUDIO_CHANNEL_POSITION_LFE}, {
--  CH_BACK_LEFT, GST_AUDIO_CHANNEL_POSITION_REAR_LEFT}, {
--  CH_BACK_RIGHT, GST_AUDIO_CHANNEL_POSITION_REAR_RIGHT}, {
--  CH_FRONT_LEFT_OF_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER}, {
--  CH_FRONT_RIGHT_OF_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER}, {
--  CH_BACK_CENTER, GST_AUDIO_CHANNEL_POSITION_REAR_CENTER}, {
--  CH_SIDE_LEFT, GST_AUDIO_CHANNEL_POSITION_SIDE_LEFT}, {
--  CH_SIDE_RIGHT, GST_AUDIO_CHANNEL_POSITION_SIDE_RIGHT}, {
--  CH_TOP_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
--  CH_TOP_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
--  CH_TOP_FRONT_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
--  CH_TOP_FRONT_RIGHT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
--  CH_TOP_BACK_LEFT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
--  CH_TOP_BACK_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
--  CH_TOP_BACK_RIGHT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
--  CH_STEREO_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT}, {
--  CH_STEREO_RIGHT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}
-+  AV_CH_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT}, {
-+  AV_CH_FRONT_RIGHT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}, {
-+  AV_CH_FRONT_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER}, {
-+  AV_CH_LOW_FREQUENCY, GST_AUDIO_CHANNEL_POSITION_LFE}, {
-+  AV_CH_BACK_LEFT, GST_AUDIO_CHANNEL_POSITION_REAR_LEFT}, {
-+  AV_CH_BACK_RIGHT, GST_AUDIO_CHANNEL_POSITION_REAR_RIGHT}, {
-+  AV_CH_FRONT_LEFT_OF_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER}, {
-+  AV_CH_FRONT_RIGHT_OF_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER}, {
-+  AV_CH_BACK_CENTER, GST_AUDIO_CHANNEL_POSITION_REAR_CENTER}, {
-+  AV_CH_SIDE_LEFT, GST_AUDIO_CHANNEL_POSITION_SIDE_LEFT}, {
-+  AV_CH_SIDE_RIGHT, GST_AUDIO_CHANNEL_POSITION_SIDE_RIGHT}, {
-+  AV_CH_TOP_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_FRONT_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_FRONT_RIGHT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_BACK_LEFT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_BACK_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_BACK_RIGHT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_STEREO_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT}, {
-+  AV_CH_STEREO_RIGHT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}
- };
- 
- static GstAudioChannelPosition *
-@@ -342,8 +307,8 @@
- 
-     if (channel_layout == 0) {
-       const guint64 default_channel_set[] = {
--        0, 0, CH_LAYOUT_SURROUND, CH_LAYOUT_QUAD, CH_LAYOUT_5POINT0,
--        CH_LAYOUT_5POINT1, 0, CH_LAYOUT_7POINT1
-+        0, 0, AV_CH_LAYOUT_SURROUND, AV_CH_LAYOUT_QUAD, AV_CH_LAYOUT_5POINT0,
-+        AV_CH_LAYOUT_5POINT1, 0, AV_CH_LAYOUT_7POINT1
-       };
- 
-       switch (codec_id) {
-@@ -1267,8 +1232,6 @@
-     case CODEC_ID_FLIC:
-     case CODEC_ID_VMDVIDEO:
-     case CODEC_ID_VMDAUDIO:
--    case CODEC_ID_SONIC:
--    case CODEC_ID_SONIC_LS:
-     case CODEC_ID_SNOW:
-     case CODEC_ID_VIXL:
-     case CODEC_ID_QPEG:
-@@ -1689,11 +1652,6 @@
-       gst_buffer_unref (data);
-     }
- 
--    /* palette */
--    if (context) {
--      gst_ffmpeg_set_palette (caps, context);
--    }
--
-     GST_LOG ("caps for codec_id=%d: %" GST_PTR_FORMAT, codec_id, caps);
- 
-   } else {
-@@ -1830,9 +1788,6 @@
-             "bpp", G_TYPE_INT, bpp,
-             "depth", G_TYPE_INT, depth,
-             "endianness", G_TYPE_INT, endianness, NULL);
--        if (caps && context) {
--          gst_ffmpeg_set_palette (caps, context);
--        }
-       }
-     } else if (fmt) {
-       caps = gst_ff_vid_caps_new (context, codec_id, "video/x-raw-yuv",
-@@ -1857,7 +1812,7 @@
-  */
- 
- static GstCaps *
--gst_ffmpeg_smpfmt_to_caps (enum SampleFormat sample_fmt,
-+gst_ffmpeg_smpfmt_to_caps (enum AVSampleFormat sample_fmt,
-     AVCodecContext * context, enum CodecID codec_id)
- {
-   GstCaps *caps = NULL;
-@@ -1867,22 +1822,22 @@
-   gboolean signedness = FALSE;
- 
-   switch (sample_fmt) {
--    case SAMPLE_FMT_S16:
-+    case AV_SAMPLE_FMT_S16:
-       signedness = TRUE;
-       bpp = 16;
-       break;
- 
--    case SAMPLE_FMT_S32:
-+    case AV_SAMPLE_FMT_S32:
-       signedness = TRUE;
-       bpp = 32;
-       break;
- 
--    case SAMPLE_FMT_FLT:
-+    case AV_SAMPLE_FMT_FLT:
-       integer = FALSE;
-       bpp = 32;
-       break;
- 
--    case SAMPLE_FMT_DBL:
-+    case AV_SAMPLE_FMT_DBL:
-       integer = FALSE;
-       bpp = 64;
-       break;
-@@ -1941,12 +1896,12 @@
-     }
-   } else {
-     GstCaps *temp;
--    enum SampleFormat i;
-+    enum AVSampleFormat i;
-     AVCodecContext ctx = { 0, };
- 
-     ctx.channels = -1;
-     caps = gst_caps_new_empty ();
--    for (i = 0; i <= SAMPLE_FMT_DBL; i++) {
-+    for (i = 0; i <= AV_SAMPLE_FMT_DBL; i++) {
-       temp = gst_ffmpeg_smpfmt_to_caps (i, encode ? &ctx : NULL, codec_id);
-       if (temp != NULL) {
-         gst_caps_append (caps, temp);
-@@ -2049,9 +2004,9 @@
-         gst_structure_get_int (structure, "endianness", &endianness)) {
-       if (endianness == G_BYTE_ORDER) {
-         if (width == 32)
--          context->sample_fmt = SAMPLE_FMT_FLT;
-+          context->sample_fmt = AV_SAMPLE_FMT_FLT;
-         else if (width == 64)
--          context->sample_fmt = SAMPLE_FMT_DBL;
-+          context->sample_fmt = AV_SAMPLE_FMT_DBL;
-       }
-     }
-   } else {
-@@ -2062,9 +2017,9 @@
-         gst_structure_get_int (structure, "endianness", &endianness)) {
-       if ((endianness == G_BYTE_ORDER) && (signedness == TRUE)) {
-         if ((width == 16) && (depth == 16))
--          context->sample_fmt = SAMPLE_FMT_S16;
-+          context->sample_fmt = AV_SAMPLE_FMT_S16;
-         else if ((width == 32) && (depth == 32))
--          context->sample_fmt = SAMPLE_FMT_S32;
-+          context->sample_fmt = AV_SAMPLE_FMT_S32;
-       }
-     }
-   }
-@@ -2190,7 +2145,6 @@
-       } else {
-         if (bpp == 8) {
-           context->pix_fmt = PIX_FMT_PAL8;
--          gst_ffmpeg_get_palette (caps, context);
-         }
-       }
-     }
-@@ -2576,7 +2530,6 @@
-   switch (codec_type) {
-     case AVMEDIA_TYPE_VIDEO:
-       gst_ffmpeg_caps_to_pixfmt (caps, context, codec_id == CODEC_ID_RAWVIDEO);
--      gst_ffmpeg_get_palette (caps, context);
-       break;
-     case AVMEDIA_TYPE_AUDIO:
-       gst_ffmpeg_caps_to_smpfmt (caps, context, FALSE);
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcodecmap.c.orig gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcodecmap.c.orig
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcodecmap.c.orig	1970-01-01 01:00:00.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcodecmap.c.orig	2014-08-08 15:30:34.006867097 +0200
-@@ -0,0 +1,3447 @@
-+/* GStreamer
-+ * Copyright (C) <1999> Erik Walthinsen <omega at cse.ogi.edu>
-+ * This file:
-+ * Copyright (c) 2002-2004 Ronald Bultje <rbultje at ronald.bitfreak.net>
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Library General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Library General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Library General Public
-+ * License along with this library; if not, write to the
-+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+ * Boston, MA 02111-1307, USA.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+#include <gst/gst.h>
-+#ifdef HAVE_FFMPEG_UNINSTALLED
-+#include <avcodec.h>
-+#include <channel_layout.h>>
-+#else
-+#include <libavcodec/avcodec.h>
-+#include <libavutil/channel_layout.h>
-+#endif
-+#include <string.h>
-+
-+#include "gstffmpeg.h"
-+#include "gstffmpegcodecmap.h"
-+
-+#include <gst/pbutils/codec-utils.h>
-+
-+/*
-+ * Read a palette from a caps.
-+ */
-+
-+static void
-+gst_ffmpeg_get_palette (const GstCaps * caps, AVCodecContext * context)
-+{
-+  GstStructure *str = gst_caps_get_structure (caps, 0);
-+  const GValue *palette_v;
-+  const GstBuffer *palette;
-+
-+  /* do we have a palette? */
-+  if ((palette_v = gst_structure_get_value (str, "palette_data")) && context) {
-+    palette = gst_value_get_buffer (palette_v);
-+    if (GST_BUFFER_SIZE (palette) >= AVPALETTE_SIZE) {
-+      if (context->palctrl)
-+        av_free (context->palctrl);
-+      context->palctrl = av_malloc (sizeof (AVPaletteControl));
-+      context->palctrl->palette_changed = 1;
-+      memcpy (context->palctrl->palette, GST_BUFFER_DATA (palette),
-+          AVPALETTE_SIZE);
-+    }
-+  }
-+}
-+
-+static void
-+gst_ffmpeg_set_palette (GstCaps * caps, AVCodecContext * context)
-+{
-+  if (context->palctrl) {
-+    GstBuffer *palette = gst_buffer_new_and_alloc (AVPALETTE_SIZE);
-+
-+    memcpy (GST_BUFFER_DATA (palette), context->palctrl->palette,
-+        AVPALETTE_SIZE);
-+    gst_caps_set_simple (caps, "palette_data", GST_TYPE_BUFFER, palette, NULL);
-+  }
-+}
-+
-+/* IMPORTANT: Keep this sorted by the ffmpeg channel masks */
-+static const struct
-+{
-+  guint64 ff;
-+  GstAudioChannelPosition gst;
-+} _ff_to_gst_layout[] = {
-+  {
-+  AV_CH_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT}, {
-+  AV_CH_FRONT_RIGHT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}, {
-+  AV_CH_FRONT_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER}, {
-+  AV_CH_LOW_FREQUENCY, GST_AUDIO_CHANNEL_POSITION_LFE}, {
-+  AV_CH_BACK_LEFT, GST_AUDIO_CHANNEL_POSITION_REAR_LEFT}, {
-+  AV_CH_BACK_RIGHT, GST_AUDIO_CHANNEL_POSITION_REAR_RIGHT}, {
-+  AV_CH_FRONT_LEFT_OF_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER}, {
-+  AV_CH_FRONT_RIGHT_OF_CENTER, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER}, {
-+  AV_CH_BACK_CENTER, GST_AUDIO_CHANNEL_POSITION_REAR_CENTER}, {
-+  AV_CH_SIDE_LEFT, GST_AUDIO_CHANNEL_POSITION_SIDE_LEFT}, {
-+  AV_CH_SIDE_RIGHT, GST_AUDIO_CHANNEL_POSITION_SIDE_RIGHT}, {
-+  AV_CH_TOP_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_FRONT_LEFT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_FRONT_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_FRONT_RIGHT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_BACK_LEFT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_BACK_CENTER, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_TOP_BACK_RIGHT, GST_AUDIO_CHANNEL_POSITION_NONE}, {
-+  AV_CH_STEREO_LEFT, GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT}, {
-+  AV_CH_STEREO_RIGHT, GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT}
-+};
-+
-+static GstAudioChannelPosition *
-+gst_ff_channel_layout_to_gst (guint64 channel_layout, guint channels)
-+{
-+  guint nchannels = 0, i, j;
-+  GstAudioChannelPosition *pos = NULL;
-+  gboolean none_layout = FALSE;
-+
-+  for (i = 0; i < 64; i++) {
-+    if ((channel_layout & (G_GUINT64_CONSTANT (1) << i)) != 0) {
-+      nchannels++;
-+    }
-+  }
-+
-+  if (channel_layout == 0) {
-+    nchannels = channels;
-+    none_layout = TRUE;
-+  }
-+
-+  if (nchannels != channels) {
-+    GST_ERROR ("Number of channels is different (%u != %u)", channels,
-+        nchannels);
-+    return NULL;
-+  }
-+
-+  pos = g_new (GstAudioChannelPosition, nchannels);
-+
-+  for (i = 0, j = 0; i < G_N_ELEMENTS (_ff_to_gst_layout); i++) {
-+    if ((channel_layout & _ff_to_gst_layout[i].ff) != 0) {
-+      pos[j++] = _ff_to_gst_layout[i].gst;
-+
-+      if (_ff_to_gst_layout[i].gst == GST_AUDIO_CHANNEL_POSITION_NONE)
-+        none_layout = TRUE;
-+    }
-+  }
-+
-+  if (j != nchannels) {
-+    GST_WARNING ("Unknown channels in channel layout - assuming NONE layout");
-+    none_layout = TRUE;
-+  }
-+
-+  if (!none_layout && !gst_audio_check_channel_positions (pos, nchannels)) {
-+    GST_ERROR ("Invalid channel layout %" G_GUINT64_FORMAT
-+        " - assuming NONE layout", channel_layout);
-+    none_layout = TRUE;
-+  }
-+
-+  if (none_layout) {
-+    if (nchannels == 1) {
-+      pos[0] = GST_AUDIO_CHANNEL_POSITION_FRONT_MONO;
-+    } else if (nchannels == 2) {
-+      pos[0] = GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT;
-+      pos[1] = GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT;
-+    } else if (channel_layout == 0) {
-+      g_free (pos);
-+      pos = NULL;
-+    } else {
-+      for (i = 0; i < nchannels; i++)
-+        pos[i] = GST_AUDIO_CHANNEL_POSITION_NONE;
-+    }
-+  }
-+
-+  if (nchannels == 1 && pos[0] == GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER) {
-+    GST_DEBUG ("mono common case; won't set channel positions");
-+    g_free (pos);
-+    pos = NULL;
-+  } else if (nchannels == 2 && pos[0] == GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT
-+      && pos[1] == GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT) {
-+    GST_DEBUG ("stereo common case; won't set channel positions");
-+    g_free (pos);
-+    pos = NULL;
-+  }
-+
-+  return pos;
-+}
-+
-+/* this macro makes a caps width fixed or unfixed width/height
-+ * properties depending on whether we've got a context.
-+ *
-+ * See below for why we use this.
-+ *
-+ * We should actually do this stuff at the end, like in riff-media.c,
-+ * but I'm too lazy today. Maybe later.
-+ */
-+static GstCaps *
-+gst_ff_vid_caps_new (AVCodecContext * context, enum CodecID codec_id,
-+    const char *mimetype, const char *fieldname, ...)
-+{
-+  GstStructure *structure = NULL;
-+  GstCaps *caps = NULL;
-+  va_list var_args;
-+  gint i;
-+
-+  GST_LOG ("context:%p, codec_id:%d, mimetype:%s", context, codec_id, mimetype);
-+
-+  /* fixed, non probing context */
-+  if (context != NULL && context->width != -1) {
-+    gint num, denom;
-+
-+    caps = gst_caps_new_simple (mimetype,
-+        "width", G_TYPE_INT, context->width,
-+        "height", G_TYPE_INT, context->height, NULL);
-+
-+    num = context->time_base.den / context->ticks_per_frame;
-+    denom = context->time_base.num;
-+
-+    if (!denom) {
-+      GST_LOG ("invalid framerate: %d/0, -> %d/1", num, num);
-+      denom = 1;
-+    }
-+    if (gst_util_fraction_compare (num, denom, 1000, 1) > 0) {
-+      GST_LOG ("excessive framerate: %d/%d, -> 0/1", num, denom);
-+      num = 0;
-+      denom = 1;
-+    }
-+    GST_LOG ("setting framerate: %d/%d", num, denom);
-+    gst_caps_set_simple (caps,
-+        "framerate", GST_TYPE_FRACTION, num, denom, NULL);
-+  } else {
-+    /* so we are after restricted caps in this case */
-+    switch (codec_id) {
-+      case CODEC_ID_H261:
-+      {
-+        caps = gst_caps_new_simple (mimetype,
-+            "width", G_TYPE_INT, 352,
-+            "height", G_TYPE_INT, 288,
-+            "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT, 1, NULL);
-+        gst_caps_append (caps, gst_caps_new_simple (mimetype,
-+                "width", G_TYPE_INT, 176,
-+                "height", G_TYPE_INT, 144,
-+                "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT, 1, NULL));
-+        break;
-+      }
-+      case CODEC_ID_H263:
-+      {
-+        /* 128x96, 176x144, 352x288, 704x576, and 1408x1152. slightly reordered
-+         * because we want automatic negotiation to go as close to 320x240 as
-+         * possible. */
-+        const static gint widths[] = { 352, 704, 176, 1408, 128 };
-+        const static gint heights[] = { 288, 576, 144, 1152, 96 };
-+        GstCaps *temp;
-+        gint n_sizes = G_N_ELEMENTS (widths);
-+
-+        caps = gst_caps_new_empty ();
-+        for (i = 0; i < n_sizes; i++) {
-+          temp = gst_caps_new_simple (mimetype,
-+              "width", G_TYPE_INT, widths[i],
-+              "height", G_TYPE_INT, heights[i],
-+              "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT, 1, NULL);
-+
-+          gst_caps_append (caps, temp);
-+        }
-+        break;
-+      }
-+      case CODEC_ID_DVVIDEO:
-+      {
-+        static struct
-+        {
-+          guint32 csp;
-+          gint width, height;
-+          gint par_n, par_d;
-+          gint framerate_n, framerate_d;
-+        } profiles[] = {
-+          {
-+          GST_MAKE_FOURCC ('Y', '4', '1', 'B'), 720, 480, 10, 11, 30000, 1001}, {
-+          GST_MAKE_FOURCC ('Y', '4', '1', 'B'), 720, 480, 40, 33, 30000, 1001}, {
-+          GST_MAKE_FOURCC ('I', '4', '2', '0'), 720, 576, 59, 54, 25, 1}, {
-+          GST_MAKE_FOURCC ('I', '4', '2', '0'), 720, 576, 118, 81, 25, 1}, {
-+          GST_MAKE_FOURCC ('Y', '4', '1', 'B'), 720, 576, 59, 54, 25, 1}, {
-+          GST_MAKE_FOURCC ('Y', '4', '1', 'B'), 720, 576, 118, 81, 25, 1}
-+        };
-+        GstCaps *temp;
-+        gint n_sizes = G_N_ELEMENTS (profiles);
-+
-+        caps = gst_caps_new_empty ();
-+        for (i = 0; i < n_sizes; i++) {
-+          temp = gst_caps_new_simple (mimetype,
-+              "width", G_TYPE_INT, profiles[i].width,
-+              "height", G_TYPE_INT, profiles[i].height,
-+              "framerate", GST_TYPE_FRACTION, profiles[i].framerate_n,
-+              profiles[i].framerate_d, "pixel-aspect-ratio", GST_TYPE_FRACTION,
-+              profiles[i].par_n, profiles[i].par_d, NULL);
-+
-+          gst_caps_append (caps, temp);
-+        }
-+        break;
-+      }
-+      case CODEC_ID_DNXHD:
-+      {
-+        caps = gst_caps_new_simple (mimetype,
-+            "width", G_TYPE_INT, 1920,
-+            "height", G_TYPE_INT, 1080,
-+            "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT, 1, NULL);
-+        gst_caps_append (caps, gst_caps_new_simple (mimetype,
-+                "width", G_TYPE_INT, 1280,
-+                "height", G_TYPE_INT, 720,
-+                "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT, 1, NULL));
-+        break;
-+      }
-+      default:
-+        break;
-+    }
-+  }
-+
-+  /* no fixed caps or special restrictions applied;
-+   * default unfixed setting */
-+  if (!caps) {
-+    GST_DEBUG ("Creating default caps");
-+    caps = gst_caps_new_simple (mimetype,
-+        "width", GST_TYPE_INT_RANGE, 16, 4096,
-+        "height", GST_TYPE_INT_RANGE, 16, 4096,
-+        "framerate", GST_TYPE_FRACTION_RANGE, 0, 1, G_MAXINT, 1, NULL);
-+  }
-+
-+  for (i = 0; i < gst_caps_get_size (caps); i++) {
-+    va_start (var_args, fieldname);
-+    structure = gst_caps_get_structure (caps, i);
-+    gst_structure_set_valist (structure, fieldname, var_args);
-+    va_end (var_args);
-+  }
-+
-+  return caps;
-+}
-+
-+/* same for audio - now with channels/sample rate
-+ */
-+static GstCaps *
-+gst_ff_aud_caps_new (AVCodecContext * context, enum CodecID codec_id,
-+    const char *mimetype, const char *fieldname, ...)
-+{
-+  GstCaps *caps = NULL;
-+  GstStructure *structure = NULL;
-+  gint i;
-+  va_list var_args;
-+
-+  /* fixed, non-probing context */
-+  if (context != NULL && context->channels != -1) {
-+    GstAudioChannelPosition *pos;
-+    guint64 channel_layout = context->channel_layout;
-+
-+    if (channel_layout == 0) {
-+      const guint64 default_channel_set[] = {
-+        0, 0, AV_CH_LAYOUT_SURROUND, AV_CH_LAYOUT_QUAD, AV_CH_LAYOUT_5POINT0,
-+        AV_CH_LAYOUT_5POINT1, 0, AV_CH_LAYOUT_7POINT1
-+      };
-+
-+      switch (codec_id) {
-+        case CODEC_ID_EAC3:
-+        case CODEC_ID_AC3:
-+        case CODEC_ID_DTS:
-+          if (context->channels > 0
-+              && context->channels < G_N_ELEMENTS (default_channel_set))
-+            channel_layout = default_channel_set[context->channels - 1];
-+          break;
-+        default:
-+          break;
-+      }
-+    }
-+
-+    caps = gst_caps_new_simple (mimetype,
-+        "rate", G_TYPE_INT, context->sample_rate,
-+        "channels", G_TYPE_INT, context->channels, NULL);
-+
-+    pos = gst_ff_channel_layout_to_gst (channel_layout, context->channels);
-+    if (pos != NULL) {
-+      gst_audio_set_channel_positions (gst_caps_get_structure (caps, 0), pos);
-+      g_free (pos);
-+    }
-+  } else {
-+    gint maxchannels = 2;
-+    const gint *rates = NULL;
-+    gint n_rates = 0;
-+
-+    /* so we must be after restricted caps in this case */
-+    switch (codec_id) {
-+      case CODEC_ID_AAC:
-+      case CODEC_ID_AAC_LATM:
-+      case CODEC_ID_DTS:
-+        maxchannels = 6;
-+        break;
-+      case CODEC_ID_MP2:
-+      {
-+        const static gint l_rates[] =
-+            { 48000, 44100, 32000, 24000, 22050, 16000 };
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        break;
-+      }
-+      case CODEC_ID_EAC3:
-+      case CODEC_ID_AC3:
-+      {
-+        const static gint l_rates[] = { 48000, 44100, 32000 };
-+        maxchannels = 6;
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        break;
-+      }
-+      case CODEC_ID_ADPCM_G722:
-+      {
-+        const static gint l_rates[] = { 16000 };
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        maxchannels = 1;
-+        break;
-+      }
-+      case CODEC_ID_ADPCM_G726:
-+      {
-+        const static gint l_rates[] = { 8000 };
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        maxchannels = 1;
-+        break;
-+      }
-+      case CODEC_ID_ADPCM_SWF:
-+      {
-+        const static gint l_rates[] = { 11025, 22050, 44100 };
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        break;
-+      }
-+      case CODEC_ID_ROQ_DPCM:
-+      {
-+        const static gint l_rates[] = { 22050 };
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        break;
-+      }
-+      case CODEC_ID_AMR_NB:
-+      {
-+        const static gint l_rates[] = { 8000 };
-+        maxchannels = 1;
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        break;
-+      }
-+      case CODEC_ID_AMR_WB:
-+      {
-+        const static gint l_rates[] = { 16000 };
-+        maxchannels = 1;
-+        n_rates = G_N_ELEMENTS (l_rates);
-+        rates = l_rates;
-+        break;
-+      }
-+      default:
-+        break;
-+    }
-+
-+    /* TODO: handle context->channel_layouts here to set
-+     * the list of channel layouts supported by the encoder.
-+     * Unfortunately no encoder uses this yet....
-+     */
-+    /* regardless of encode/decode, open up channels if applicable */
-+    /* Until decoders/encoders expose the maximum number of channels
-+     * they support, we whitelist them here. */
-+    switch (codec_id) {
-+      case CODEC_ID_WMAPRO:
-+      case CODEC_ID_TRUEHD:
-+        maxchannels = 8;
-+        break;
-+      default:
-+        break;
-+    }
-+
-+    if (maxchannels == 1)
-+      caps = gst_caps_new_simple (mimetype,
-+          "channels", G_TYPE_INT, maxchannels, NULL);
-+    else
-+      caps = gst_caps_new_simple (mimetype,
-+          "channels", GST_TYPE_INT_RANGE, 1, maxchannels, NULL);
-+    if (n_rates) {
-+      GValue list = { 0, };
-+      GstStructure *structure;
-+
-+      g_value_init (&list, GST_TYPE_LIST);
-+      for (i = 0; i < n_rates; i++) {
-+        GValue v = { 0, };
-+
-+        g_value_init (&v, G_TYPE_INT);
-+        g_value_set_int (&v, rates[i]);
-+        gst_value_list_append_value (&list, &v);
-+        g_value_unset (&v);
-+      }
-+      structure = gst_caps_get_structure (caps, 0);
-+      gst_structure_set_value (structure, "rate", &list);
-+      g_value_unset (&list);
-+    } else
-+      gst_caps_set_simple (caps, "rate", GST_TYPE_INT_RANGE, 4000, 96000, NULL);
-+  }
-+
-+  for (i = 0; i < gst_caps_get_size (caps); i++) {
-+    va_start (var_args, fieldname);
-+    structure = gst_caps_get_structure (caps, i);
-+    gst_structure_set_valist (structure, fieldname, var_args);
-+    va_end (var_args);
-+  }
-+
-+  return caps;
-+}
-+
-+/* Convert a FFMPEG codec ID and optional AVCodecContext
-+ * to a GstCaps. If the context is ommitted, no fixed values
-+ * for video/audio size will be included in the GstCaps
-+ *
-+ * CodecID is primarily meant for compressed data GstCaps!
-+ *
-+ * encode is a special parameter. gstffmpegdec will say
-+ * FALSE, gstffmpegenc will say TRUE. The output caps
-+ * depends on this, in such a way that it will be very
-+ * specific, defined, fixed and correct caps for encoders,
-+ * yet very wide, "forgiving" caps for decoders. Example
-+ * for mp3: decode: audio/mpeg,mpegversion=1,layer=[1-3]
-+ * but encode: audio/mpeg,mpegversion=1,layer=3,bitrate=x,
-+ * rate=x,channels=x.
-+ */
-+
-+GstCaps *
-+gst_ffmpeg_codecid_to_caps (enum CodecID codec_id,
-+    AVCodecContext * context, gboolean encode)
-+{
-+  GstCaps *caps = NULL;
-+  gboolean buildcaps = FALSE;
-+
-+  GST_LOG ("codec_id:%d, context:%p, encode:%d", codec_id, context, encode);
-+
-+  switch (codec_id) {
-+    case CODEC_ID_MPEG1VIDEO:
-+      /* FIXME: bitrate */
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/mpeg",
-+          "mpegversion", G_TYPE_INT, 1,
-+          "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
-+      break;
-+
-+    case CODEC_ID_MPEG2VIDEO:
-+      if (encode) {
-+        /* FIXME: bitrate */
-+        caps = gst_ff_vid_caps_new (context, codec_id, "video/mpeg",
-+            "mpegversion", G_TYPE_INT, 2,
-+            "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
-+      } else {
-+        /* decode both MPEG-1 and MPEG-2; width/height/fps are all in
-+         * the MPEG video stream headers, so may be omitted from caps. */
-+        caps = gst_caps_new_simple ("video/mpeg",
-+            "mpegversion", GST_TYPE_INT_RANGE, 1, 2,
-+            "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_MPEG2VIDEO_XVMC:
-+      /* this is a special ID - don't need it in GStreamer, I think */
-+      break;
-+
-+    case CODEC_ID_H263:
-+      if (encode) {
-+        caps = gst_ff_vid_caps_new (context, codec_id, "video/x-h263",
-+            "variant", G_TYPE_STRING, "itu",
-+            "h263version", G_TYPE_STRING, "h263", NULL);
-+      } else {
-+        /* don't pass codec_id, we can decode other variants with the H263
-+         * decoder that don't have specific size requirements
-+         */
-+        caps = gst_ff_vid_caps_new (context, CODEC_ID_NONE, "video/x-h263",
-+            "variant", G_TYPE_STRING, "itu", NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_H263P:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-h263",
-+          "variant", G_TYPE_STRING, "itu",
-+          "h263version", G_TYPE_STRING, "h263p", NULL);
-+      if (encode && context) {
-+
-+        gst_caps_set_simple (caps,
-+            "annex-f", G_TYPE_BOOLEAN, context->flags & CODEC_FLAG_4MV,
-+            "annex-j", G_TYPE_BOOLEAN, context->flags & CODEC_FLAG_LOOP_FILTER,
-+            "annex-i", G_TYPE_BOOLEAN, context->flags & CODEC_FLAG_AC_PRED,
-+            "annex-t", G_TYPE_BOOLEAN, context->flags & CODEC_FLAG_AC_PRED,
-+            NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_H263I:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-intel-h263",
-+          "variant", G_TYPE_STRING, "intel", NULL);
-+      break;
-+
-+    case CODEC_ID_H261:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-h261", NULL);
-+      break;
-+
-+    case CODEC_ID_RV10:
-+    case CODEC_ID_RV20:
-+    case CODEC_ID_RV30:
-+    case CODEC_ID_RV40:
-+    {
-+      gint version;
-+
-+      switch (codec_id) {
-+        case CODEC_ID_RV40:
-+          version = 4;
-+          break;
-+        case CODEC_ID_RV30:
-+          version = 3;
-+          break;
-+        case CODEC_ID_RV20:
-+          version = 2;
-+          break;
-+        default:
-+          version = 1;
-+          break;
-+      }
-+
-+      /* FIXME: context->sub_id must be filled in during decoding */
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-pn-realvideo",
-+          "systemstream", G_TYPE_BOOLEAN, FALSE,
-+          "rmversion", G_TYPE_INT, version, NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps, "format", G_TYPE_INT, context->sub_id, NULL);
-+        if (context->extradata_size >= 8) {
-+          gst_caps_set_simple (caps,
-+              "subformat", G_TYPE_INT, GST_READ_UINT32_BE (context->extradata),
-+              NULL);
-+        }
-+      }
-+    }
-+      break;
-+
-+    case CODEC_ID_MP1:
-+      /* FIXME: bitrate */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/mpeg",
-+          "mpegversion", G_TYPE_INT, 1, "layer", G_TYPE_INT, 1, NULL);
-+      break;
-+
-+    case CODEC_ID_MP2:
-+      /* FIXME: bitrate */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/mpeg",
-+          "mpegversion", G_TYPE_INT, 1, "layer", G_TYPE_INT, 2, NULL);
-+      break;
-+
-+    case CODEC_ID_MP3:
-+      if (encode) {
-+        /* FIXME: bitrate */
-+        caps = gst_ff_aud_caps_new (context, codec_id, "audio/mpeg",
-+            "mpegversion", G_TYPE_INT, 1, "layer", G_TYPE_INT, 3, NULL);
-+      } else {
-+        /* Decodes MPEG-1 layer 1/2/3. Samplerate, channels et al are
-+         * in the MPEG audio header, so may be omitted from caps. */
-+        caps = gst_caps_new_simple ("audio/mpeg",
-+            "mpegversion", G_TYPE_INT, 1,
-+            "layer", GST_TYPE_INT_RANGE, 1, 3, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_MUSEPACK7:
-+      caps =
-+          gst_ff_aud_caps_new (context, codec_id,
-+          "audio/x-ffmpeg-parsed-musepack", "streamversion", G_TYPE_INT, 7,
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_MUSEPACK8:
-+      caps =
-+          gst_ff_aud_caps_new (context, codec_id,
-+          "audio/x-ffmpeg-parsed-musepack", "streamversion", G_TYPE_INT, 8,
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_AC3:
-+      /* FIXME: bitrate */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-ac3", NULL);
-+      break;
-+
-+    case CODEC_ID_EAC3:
-+      /* FIXME: bitrate */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-eac3", NULL);
-+      break;
-+
-+    case CODEC_ID_TRUEHD:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-true-hd", NULL);
-+      break;
-+
-+    case CODEC_ID_ATRAC1:
-+      caps =
-+          gst_ff_aud_caps_new (context, codec_id, "audio/x-vnd.sony.atrac1",
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_ATRAC3:
-+      caps =
-+          gst_ff_aud_caps_new (context, codec_id, "audio/x-vnd.sony.atrac3",
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_DTS:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-dts", NULL);
-+      break;
-+
-+    case CODEC_ID_APE:
-+      caps =
-+          gst_ff_aud_caps_new (context, codec_id, "audio/x-ffmpeg-parsed-ape",
-+          NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "depth", G_TYPE_INT, context->bits_per_coded_sample, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_MLP:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-mlp", NULL);
-+      break;
-+
-+    case CODEC_ID_IMC:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-imc", NULL);
-+      break;
-+
-+      /* MJPEG is normal JPEG, Motion-JPEG and Quicktime MJPEG-A. MJPEGB
-+       * is Quicktime's MJPEG-B. LJPEG is lossless JPEG. I don't know what
-+       * sp5x is, but it's apparently something JPEG... We don't separate
-+       * between those in GStreamer. Should we (at least between MJPEG,
-+       * MJPEG-B and sp5x decoding...)? */
-+    case CODEC_ID_MJPEG:
-+    case CODEC_ID_LJPEG:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/jpeg", NULL);
-+      break;
-+
-+    case CODEC_ID_SP5X:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/sp5x", NULL);
-+      break;
-+
-+    case CODEC_ID_MJPEGB:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-mjpeg-b", NULL);
-+      break;
-+
-+    case CODEC_ID_MPEG4:
-+      if (encode && context != NULL) {
-+        /* I'm not exactly sure what ffmpeg outputs... ffmpeg itself uses
-+         * the AVI fourcc 'DIVX', but 'mp4v' for Quicktime... */
-+        switch (context->codec_tag) {
-+          case GST_MAKE_FOURCC ('D', 'I', 'V', 'X'):
-+            caps = gst_ff_vid_caps_new (context, codec_id, "video/x-divx",
-+                "divxversion", G_TYPE_INT, 5, NULL);
-+            break;
-+          case GST_MAKE_FOURCC ('m', 'p', '4', 'v'):
-+          default:
-+            /* FIXME: bitrate */
-+            caps = gst_ff_vid_caps_new (context, codec_id, "video/mpeg",
-+                "systemstream", G_TYPE_BOOLEAN, FALSE,
-+                "mpegversion", G_TYPE_INT, 4, NULL);
-+            break;
-+        }
-+      } else {
-+        /* The trick here is to separate xvid, divx, mpeg4, 3ivx et al */
-+        caps = gst_ff_vid_caps_new (context, codec_id, "video/mpeg",
-+            "mpegversion", G_TYPE_INT, 4,
-+            "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
-+        if (encode) {
-+          gst_caps_append (caps, gst_ff_vid_caps_new (context, codec_id,
-+                  "video/x-divx", "divxversion", G_TYPE_INT, 5, NULL));
-+        } else {
-+          gst_caps_append (caps, gst_ff_vid_caps_new (context, codec_id,
-+                  "video/x-divx", "divxversion", GST_TYPE_INT_RANGE, 4, 5,
-+                  NULL));
-+          gst_caps_append (caps, gst_ff_vid_caps_new (context, codec_id,
-+                  "video/x-xvid", NULL));
-+          gst_caps_append (caps, gst_ff_vid_caps_new (context, codec_id,
-+                  "video/x-3ivx", NULL));
-+        }
-+      }
-+      break;
-+
-+    case CODEC_ID_RAWVIDEO:
-+      caps =
-+          gst_ffmpeg_codectype_to_caps (AVMEDIA_TYPE_VIDEO, context, codec_id,
-+          encode);
-+      break;
-+
-+    case CODEC_ID_MSMPEG4V1:
-+    case CODEC_ID_MSMPEG4V2:
-+    case CODEC_ID_MSMPEG4V3:
-+    {
-+      gint version = 41 + codec_id - CODEC_ID_MSMPEG4V1;
-+
-+      /* encode-FIXME: bitrate */
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-msmpeg",
-+          "msmpegversion", G_TYPE_INT, version, NULL);
-+      if (!encode && codec_id == CODEC_ID_MSMPEG4V3) {
-+        gst_caps_append (caps, gst_ff_vid_caps_new (context, codec_id,
-+                "video/x-divx", "divxversion", G_TYPE_INT, 3, NULL));
-+      }
-+    }
-+      break;
-+
-+    case CODEC_ID_WMV1:
-+    case CODEC_ID_WMV2:
-+    {
-+      gint version = (codec_id == CODEC_ID_WMV1) ? 1 : 2;
-+
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-wmv",
-+          "wmvversion", G_TYPE_INT, version, NULL);
-+    }
-+      break;
-+
-+    case CODEC_ID_FLV1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-flash-video",
-+          "flvversion", G_TYPE_INT, 1, NULL);
-+      break;
-+
-+    case CODEC_ID_SVQ1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-svq",
-+          "svqversion", G_TYPE_INT, 1, NULL);
-+      break;
-+
-+    case CODEC_ID_SVQ3:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-svq",
-+          "svqversion", G_TYPE_INT, 3, NULL);
-+      break;
-+
-+    case CODEC_ID_DVAUDIO:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-dv", NULL);
-+      break;
-+
-+    case CODEC_ID_DVVIDEO:
-+    {
-+      if (encode && context) {
-+        guint32 fourcc;
-+
-+        switch (context->pix_fmt) {
-+          case PIX_FMT_YUYV422:
-+            fourcc = GST_MAKE_FOURCC ('Y', 'U', 'Y', '2');
-+            break;
-+          case PIX_FMT_YUV420P:
-+            fourcc = GST_MAKE_FOURCC ('I', '4', '2', '0');
-+            break;
-+          case PIX_FMT_YUVA420P:
-+            fourcc = GST_MAKE_FOURCC ('A', '4', '2', '0');
-+            break;
-+          case PIX_FMT_YUV411P:
-+            fourcc = GST_MAKE_FOURCC ('Y', '4', '1', 'B');
-+            break;
-+          case PIX_FMT_YUV422P:
-+            fourcc = GST_MAKE_FOURCC ('Y', '4', '2', 'B');
-+            break;
-+          case PIX_FMT_YUV410P:
-+            fourcc = GST_MAKE_FOURCC ('Y', 'U', 'V', '9');
-+            break;
-+          default:
-+            GST_WARNING
-+                ("Couldnt' find fourcc for pixfmt %d, defaulting to I420",
-+                context->pix_fmt);
-+            fourcc = GST_MAKE_FOURCC ('I', '4', '2', '0');
-+            break;
-+        }
-+        caps = gst_ff_vid_caps_new (context, codec_id, "video/x-dv",
-+            "systemstream", G_TYPE_BOOLEAN, FALSE,
-+            "format", GST_TYPE_FOURCC, fourcc, NULL);
-+      } else {
-+        caps = gst_ff_vid_caps_new (context, codec_id, "video/x-dv",
-+            "systemstream", G_TYPE_BOOLEAN, FALSE, NULL);
-+      }
-+    }
-+      break;
-+
-+    case CODEC_ID_WMAV1:
-+    case CODEC_ID_WMAV2:
-+    {
-+      gint version = (codec_id == CODEC_ID_WMAV1) ? 1 : 2;
-+
-+      if (context) {
-+        caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-wma",
-+            "wmaversion", G_TYPE_INT, version,
-+            "block_align", G_TYPE_INT, context->block_align,
-+            "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+      } else {
-+        caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-wma",
-+            "wmaversion", G_TYPE_INT, version,
-+            "block_align", GST_TYPE_INT_RANGE, 0, G_MAXINT,
-+            "bitrate", GST_TYPE_INT_RANGE, 0, G_MAXINT, NULL);
-+      }
-+    }
-+      break;
-+    case CODEC_ID_WMAPRO:
-+    {
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-wma",
-+          "wmaversion", G_TYPE_INT, 3, NULL);
-+      break;
-+    }
-+
-+    case CODEC_ID_WMAVOICE:
-+    {
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-wms", NULL);
-+      break;
-+    }
-+
-+    case CODEC_ID_MACE3:
-+    case CODEC_ID_MACE6:
-+    {
-+      gint version = (codec_id == CODEC_ID_MACE3) ? 3 : 6;
-+
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-mace",
-+          "maceversion", G_TYPE_INT, version, NULL);
-+    }
-+      break;
-+
-+    case CODEC_ID_HUFFYUV:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-huffyuv", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "bpp", G_TYPE_INT, context->bits_per_coded_sample, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_CYUV:
-+      caps =
-+          gst_ff_vid_caps_new (context, codec_id, "video/x-compressed-yuv",
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_H264:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-h264", NULL);
-+      break;
-+
-+    case CODEC_ID_INDEO5:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-indeo",
-+          "indeoversion", G_TYPE_INT, 5, NULL);
-+      break;
-+
-+    case CODEC_ID_INDEO3:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-indeo",
-+          "indeoversion", G_TYPE_INT, 3, NULL);
-+      break;
-+
-+    case CODEC_ID_INDEO2:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-indeo",
-+          "indeoversion", G_TYPE_INT, 2, NULL);
-+      break;
-+
-+    case CODEC_ID_FLASHSV:
-+      caps =
-+          gst_ff_vid_caps_new (context, codec_id, "video/x-flash-screen", NULL);
-+      break;
-+
-+    case CODEC_ID_VP3:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-vp3", NULL);
-+      break;
-+
-+    case CODEC_ID_VP5:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-vp5", NULL);
-+      break;
-+
-+    case CODEC_ID_VP6:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-vp6", NULL);
-+      break;
-+
-+    case CODEC_ID_VP6F:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-vp6-flash", NULL);
-+      break;
-+
-+    case CODEC_ID_VP6A:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-vp6-alpha", NULL);
-+      break;
-+
-+    case CODEC_ID_VP8:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-vp8", NULL);
-+      break;
-+
-+    case CODEC_ID_THEORA:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-theora", NULL);
-+      break;
-+
-+    case CODEC_ID_AAC:
-+    {
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/mpeg", NULL);
-+
-+      if (!encode) {
-+        GValue arr = { 0, };
-+        GValue item = { 0, };
-+
-+        g_value_init (&arr, GST_TYPE_LIST);
-+        g_value_init (&item, G_TYPE_INT);
-+        g_value_set_int (&item, 2);
-+        gst_value_list_append_value (&arr, &item);
-+        g_value_set_int (&item, 4);
-+        gst_value_list_append_value (&arr, &item);
-+        g_value_unset (&item);
-+
-+        gst_caps_set_value (caps, "mpegversion", &arr);
-+        g_value_unset (&arr);
-+
-+        g_value_init (&arr, GST_TYPE_LIST);
-+        g_value_init (&item, G_TYPE_STRING);
-+        g_value_set_string (&item, "raw");
-+        gst_value_list_append_value (&arr, &item);
-+        g_value_set_string (&item, "adts");
-+        gst_value_list_append_value (&arr, &item);
-+        g_value_set_string (&item, "adif");
-+        gst_value_list_append_value (&arr, &item);
-+        g_value_unset (&item);
-+
-+        gst_caps_set_value (caps, "stream-format", &arr);
-+        g_value_unset (&arr);
-+      } else {
-+        gst_caps_set_simple (caps, "mpegversion", G_TYPE_INT, 4,
-+            "stream-format", G_TYPE_STRING, "raw",
-+            "base-profile", G_TYPE_STRING, "lc", NULL);
-+
-+        if (context && context->extradata_size > 0)
-+          gst_codec_utils_aac_caps_set_level_and_profile (caps,
-+              context->extradata, context->extradata_size);
-+      }
-+
-+      break;
-+    }
-+    case CODEC_ID_AAC_LATM:    /* LATM/LOAS AAC syntax */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/mpeg",
-+          "mpegversion", G_TYPE_INT, 4, "stream-format", G_TYPE_STRING, "loas",
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_ASV1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-asus",
-+          "asusversion", G_TYPE_INT, 1, NULL);
-+      break;
-+    case CODEC_ID_ASV2:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-asus",
-+          "asusversion", G_TYPE_INT, 2, NULL);
-+      break;
-+
-+    case CODEC_ID_FFV1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-ffv",
-+          "ffvversion", G_TYPE_INT, 1, NULL);
-+      break;
-+
-+    case CODEC_ID_4XM:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-4xm", NULL);
-+      break;
-+
-+    case CODEC_ID_XAN_WC3:
-+    case CODEC_ID_XAN_WC4:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-xan",
-+          "wcversion", G_TYPE_INT, 3 - CODEC_ID_XAN_WC3 + codec_id, NULL);
-+      break;
-+
-+    case CODEC_ID_CLJR:
-+      caps =
-+          gst_ff_vid_caps_new (context, codec_id,
-+          "video/x-cirrus-logic-accupak", NULL);
-+      break;
-+
-+    case CODEC_ID_FRAPS:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-fraps", NULL);
-+      break;
-+
-+    case CODEC_ID_MDEC:
-+    case CODEC_ID_ROQ:
-+    case CODEC_ID_INTERPLAY_VIDEO:
-+      buildcaps = TRUE;
-+      break;
-+
-+    case CODEC_ID_VCR1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-ati-vcr",
-+          "vcrversion", G_TYPE_INT, 1, NULL);
-+      break;
-+
-+    case CODEC_ID_RPZA:
-+      caps =
-+          gst_ff_vid_caps_new (context, codec_id, "video/x-apple-video", NULL);
-+      break;
-+
-+    case CODEC_ID_CINEPAK:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-cinepak", NULL);
-+      break;
-+
-+      /* WS_VQA belogns here (order) */
-+
-+    case CODEC_ID_MSRLE:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-rle",
-+          "layout", G_TYPE_STRING, "microsoft", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "depth", G_TYPE_INT, (gint) context->bits_per_coded_sample, NULL);
-+      } else {
-+        gst_caps_set_simple (caps, "depth", GST_TYPE_INT_RANGE, 1, 64, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_QTRLE:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-rle",
-+          "layout", G_TYPE_STRING, "quicktime", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "depth", G_TYPE_INT, (gint) context->bits_per_coded_sample, NULL);
-+      } else {
-+        gst_caps_set_simple (caps, "depth", GST_TYPE_INT_RANGE, 1, 64, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_MSVIDEO1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-msvideocodec",
-+          "msvideoversion", G_TYPE_INT, 1, NULL);
-+      break;
-+
-+    case CODEC_ID_WMV3:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-wmv",
-+          "wmvversion", G_TYPE_INT, 3, NULL);
-+      break;
-+    case CODEC_ID_VC1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-wmv",
-+          "wmvversion", G_TYPE_INT, 3, "format", GST_TYPE_FOURCC,
-+          GST_MAKE_FOURCC ('W', 'V', 'C', '1'), NULL);
-+      break;
-+    case CODEC_ID_QDM2:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-qdm2", NULL);
-+      break;
-+
-+    case CODEC_ID_MSZH:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-mszh", NULL);
-+      break;
-+
-+    case CODEC_ID_ZLIB:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-zlib", NULL);
-+      break;
-+
-+    case CODEC_ID_TRUEMOTION1:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-truemotion",
-+          "trueversion", G_TYPE_INT, 1, NULL);
-+      break;
-+    case CODEC_ID_TRUEMOTION2:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-truemotion",
-+          "trueversion", G_TYPE_INT, 2, NULL);
-+      break;
-+
-+    case CODEC_ID_ULTI:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-ultimotion",
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_TSCC:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-camtasia", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "depth", G_TYPE_INT, (gint) context->bits_per_coded_sample, NULL);
-+      } else {
-+        gst_caps_set_simple (caps, "depth", GST_TYPE_INT_RANGE, 8, 32, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_KMVC:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-kmvc", NULL);
-+      break;
-+
-+    case CODEC_ID_NUV:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-nuv", NULL);
-+      break;
-+
-+    case CODEC_ID_GIF:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/gif", NULL);
-+      break;
-+
-+    case CODEC_ID_PNG:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/png", NULL);
-+      break;
-+
-+    case CODEC_ID_PPM:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/ppm", NULL);
-+      break;
-+
-+    case CODEC_ID_PBM:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/pbm", NULL);
-+      break;
-+
-+    case CODEC_ID_PAM:
-+      caps =
-+          gst_ff_vid_caps_new (context, codec_id, "image/x-portable-anymap",
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_PGM:
-+      caps =
-+          gst_ff_vid_caps_new (context, codec_id, "image/x-portable-graymap",
-+          NULL);
-+      break;
-+
-+    case CODEC_ID_PCX:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/x-pcx", NULL);
-+      break;
-+
-+    case CODEC_ID_SGI:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/x-sgi", NULL);
-+      break;
-+
-+    case CODEC_ID_TARGA:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/x-tga", NULL);
-+      break;
-+
-+    case CODEC_ID_TIFF:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "image/tiff", NULL);
-+      break;
-+
-+    case CODEC_ID_SUNRAST:
-+      caps =
-+          gst_ff_vid_caps_new (context, codec_id, "image/x-sun-raster", NULL);
-+      break;
-+
-+    case CODEC_ID_SMC:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-smc", NULL);
-+      break;
-+
-+    case CODEC_ID_QDRAW:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-qdrw", NULL);
-+      break;
-+
-+    case CODEC_ID_DNXHD:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-dnxhd", NULL);
-+      break;
-+
-+    case CODEC_ID_MIMIC:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-mimic", NULL);
-+      break;
-+
-+    case CODEC_ID_VMNC:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-vmnc", NULL);
-+      break;
-+
-+    case CODEC_ID_TRUESPEECH:
-+      caps =
-+          gst_ff_aud_caps_new (context, codec_id, "audio/x-truespeech", NULL);
-+      break;
-+
-+    case CODEC_ID_QCELP:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/qcelp", NULL);
-+      break;
-+
-+    case CODEC_ID_AMV:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-amv", NULL);
-+      break;
-+
-+    case CODEC_ID_AASC:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-aasc", NULL);
-+      break;
-+
-+    case CODEC_ID_LOCO:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-loco", NULL);
-+      break;
-+
-+    case CODEC_ID_ZMBV:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-zmbv", NULL);
-+      break;
-+
-+    case CODEC_ID_LAGARITH:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-lagarith", NULL);
-+      break;
-+
-+    case CODEC_ID_CSCD:
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-camstudio", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "depth", G_TYPE_INT, (gint) context->bits_per_coded_sample, NULL);
-+      } else {
-+        gst_caps_set_simple (caps, "depth", GST_TYPE_INT_RANGE, 8, 32, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_WS_VQA:
-+    case CODEC_ID_IDCIN:
-+    case CODEC_ID_8BPS:
-+    case CODEC_ID_FLIC:
-+    case CODEC_ID_VMDVIDEO:
-+    case CODEC_ID_VMDAUDIO:
-+    case CODEC_ID_SNOW:
-+    case CODEC_ID_VIXL:
-+    case CODEC_ID_QPEG:
-+    case CODEC_ID_PGMYUV:
-+    case CODEC_ID_FFVHUFF:
-+    case CODEC_ID_WNV1:
-+    case CODEC_ID_MP3ADU:
-+    case CODEC_ID_MP3ON4:
-+    case CODEC_ID_WESTWOOD_SND1:
-+    case CODEC_ID_MMVIDEO:
-+    case CODEC_ID_AVS:
-+    case CODEC_ID_CAVS:
-+      buildcaps = TRUE;
-+      break;
-+
-+      /* weird quasi-codecs for the demuxers only */
-+    case CODEC_ID_PCM_S16LE:
-+    case CODEC_ID_PCM_S16BE:
-+    case CODEC_ID_PCM_U16LE:
-+    case CODEC_ID_PCM_U16BE:
-+    case CODEC_ID_PCM_S8:
-+    case CODEC_ID_PCM_U8:
-+    {
-+      gint width = 0, depth = 0, endianness = 0;
-+      gboolean signedness = FALSE;      /* blabla */
-+
-+      switch (codec_id) {
-+        case CODEC_ID_PCM_S16LE:
-+          width = 16;
-+          depth = 16;
-+          endianness = G_LITTLE_ENDIAN;
-+          signedness = TRUE;
-+          break;
-+        case CODEC_ID_PCM_S16BE:
-+          width = 16;
-+          depth = 16;
-+          endianness = G_BIG_ENDIAN;
-+          signedness = TRUE;
-+          break;
-+        case CODEC_ID_PCM_U16LE:
-+          width = 16;
-+          depth = 16;
-+          endianness = G_LITTLE_ENDIAN;
-+          signedness = FALSE;
-+          break;
-+        case CODEC_ID_PCM_U16BE:
-+          width = 16;
-+          depth = 16;
-+          endianness = G_BIG_ENDIAN;
-+          signedness = FALSE;
-+          break;
-+        case CODEC_ID_PCM_S8:
-+          width = 8;
-+          depth = 8;
-+          endianness = G_BYTE_ORDER;
-+          signedness = TRUE;
-+          break;
-+        case CODEC_ID_PCM_U8:
-+          width = 8;
-+          depth = 8;
-+          endianness = G_BYTE_ORDER;
-+          signedness = FALSE;
-+          break;
-+        default:
-+          g_assert (0);         /* don't worry, we never get here */
-+          break;
-+      }
-+
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-raw-int",
-+          "width", G_TYPE_INT, width,
-+          "depth", G_TYPE_INT, depth,
-+          "endianness", G_TYPE_INT, endianness,
-+          "signed", G_TYPE_BOOLEAN, signedness, NULL);
-+    }
-+      break;
-+
-+    case CODEC_ID_PCM_MULAW:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-mulaw", NULL);
-+      break;
-+
-+    case CODEC_ID_PCM_ALAW:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-alaw", NULL);
-+      break;
-+
-+    case CODEC_ID_ADPCM_G722:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/G722", NULL);
-+      if (context)
-+        gst_caps_set_simple (caps,
-+            "block_align", G_TYPE_INT, context->block_align,
-+            "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+      break;
-+
-+    case CODEC_ID_ADPCM_G726:
-+    {
-+      /* the G726 decoder can also handle G721 */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-adpcm",
-+          "layout", G_TYPE_STRING, "g726", NULL);
-+      if (context)
-+        gst_caps_set_simple (caps,
-+            "block_align", G_TYPE_INT, context->block_align,
-+            "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+
-+      if (!encode) {
-+        gst_caps_append (caps, gst_caps_new_simple ("audio/x-adpcm",
-+                "layout", G_TYPE_STRING, "g721",
-+                "channels", G_TYPE_INT, 1, "rate", G_TYPE_INT, 8000, NULL));
-+      }
-+      break;
-+    }
-+    case CODEC_ID_ADPCM_IMA_QT:
-+    case CODEC_ID_ADPCM_IMA_WAV:
-+    case CODEC_ID_ADPCM_IMA_DK3:
-+    case CODEC_ID_ADPCM_IMA_DK4:
-+    case CODEC_ID_ADPCM_IMA_WS:
-+    case CODEC_ID_ADPCM_IMA_SMJPEG:
-+    case CODEC_ID_ADPCM_IMA_AMV:
-+    case CODEC_ID_ADPCM_IMA_ISS:
-+    case CODEC_ID_ADPCM_IMA_EA_EACS:
-+    case CODEC_ID_ADPCM_IMA_EA_SEAD:
-+    case CODEC_ID_ADPCM_MS:
-+    case CODEC_ID_ADPCM_4XM:
-+    case CODEC_ID_ADPCM_XA:
-+    case CODEC_ID_ADPCM_ADX:
-+    case CODEC_ID_ADPCM_EA:
-+    case CODEC_ID_ADPCM_CT:
-+    case CODEC_ID_ADPCM_SWF:
-+    case CODEC_ID_ADPCM_YAMAHA:
-+    case CODEC_ID_ADPCM_SBPRO_2:
-+    case CODEC_ID_ADPCM_SBPRO_3:
-+    case CODEC_ID_ADPCM_SBPRO_4:
-+    case CODEC_ID_ADPCM_EA_R1:
-+    case CODEC_ID_ADPCM_EA_R2:
-+    case CODEC_ID_ADPCM_EA_R3:
-+    case CODEC_ID_ADPCM_EA_MAXIS_XA:
-+    case CODEC_ID_ADPCM_EA_XAS:
-+    case CODEC_ID_ADPCM_THP:
-+    {
-+      const gchar *layout = NULL;
-+
-+      switch (codec_id) {
-+        case CODEC_ID_ADPCM_IMA_QT:
-+          layout = "quicktime";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_WAV:
-+          layout = "dvi";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_DK3:
-+          layout = "dk3";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_DK4:
-+          layout = "dk4";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_WS:
-+          layout = "westwood";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_SMJPEG:
-+          layout = "smjpeg";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_AMV:
-+          layout = "amv";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_ISS:
-+          layout = "iss";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_EA_EACS:
-+          layout = "ea-eacs";
-+          break;
-+        case CODEC_ID_ADPCM_IMA_EA_SEAD:
-+          layout = "ea-sead";
-+          break;
-+        case CODEC_ID_ADPCM_MS:
-+          layout = "microsoft";
-+          break;
-+        case CODEC_ID_ADPCM_4XM:
-+          layout = "4xm";
-+          break;
-+        case CODEC_ID_ADPCM_XA:
-+          layout = "xa";
-+          break;
-+        case CODEC_ID_ADPCM_ADX:
-+          layout = "adx";
-+          break;
-+        case CODEC_ID_ADPCM_EA:
-+          layout = "ea";
-+          break;
-+        case CODEC_ID_ADPCM_CT:
-+          layout = "ct";
-+          break;
-+        case CODEC_ID_ADPCM_SWF:
-+          layout = "swf";
-+          break;
-+        case CODEC_ID_ADPCM_YAMAHA:
-+          layout = "yamaha";
-+          break;
-+        case CODEC_ID_ADPCM_SBPRO_2:
-+          layout = "sbpro2";
-+          break;
-+        case CODEC_ID_ADPCM_SBPRO_3:
-+          layout = "sbpro3";
-+          break;
-+        case CODEC_ID_ADPCM_SBPRO_4:
-+          layout = "sbpro4";
-+          break;
-+        case CODEC_ID_ADPCM_EA_R1:
-+          layout = "ea-r1";
-+          break;
-+        case CODEC_ID_ADPCM_EA_R2:
-+          layout = "ea-r3";
-+          break;
-+        case CODEC_ID_ADPCM_EA_R3:
-+          layout = "ea-r3";
-+          break;
-+        case CODEC_ID_ADPCM_EA_MAXIS_XA:
-+          layout = "ea-maxis-xa";
-+          break;
-+        case CODEC_ID_ADPCM_EA_XAS:
-+          layout = "ea-xas";
-+          break;
-+        case CODEC_ID_ADPCM_THP:
-+          layout = "thp";
-+          break;
-+        default:
-+          g_assert (0);         /* don't worry, we never get here */
-+          break;
-+      }
-+
-+      /* FIXME: someone please check whether we need additional properties
-+       * in this caps definition. */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-adpcm",
-+          "layout", G_TYPE_STRING, layout, NULL);
-+      if (context)
-+        gst_caps_set_simple (caps,
-+            "block_align", G_TYPE_INT, context->block_align,
-+            "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+    }
-+      break;
-+
-+    case CODEC_ID_AMR_NB:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/AMR", NULL);
-+      break;
-+
-+    case CODEC_ID_AMR_WB:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/AMR-WB", NULL);
-+      break;
-+
-+    case CODEC_ID_GSM:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-gsm", NULL);
-+      break;
-+
-+    case CODEC_ID_GSM_MS:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/ms-gsm", NULL);
-+      break;
-+
-+    case CODEC_ID_NELLYMOSER:
-+      caps =
-+          gst_ff_aud_caps_new (context, codec_id, "audio/x-nellymoser", NULL);
-+      break;
-+
-+    case CODEC_ID_SIPR:
-+    {
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-sipro", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "leaf_size", G_TYPE_INT, context->block_align,
-+            "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+      }
-+    }
-+      break;
-+
-+    case CODEC_ID_RA_144:
-+    case CODEC_ID_RA_288:
-+    case CODEC_ID_COOK:
-+    {
-+      gint version = 0;
-+
-+      switch (codec_id) {
-+        case CODEC_ID_RA_144:
-+          version = 1;
-+          break;
-+        case CODEC_ID_RA_288:
-+          version = 2;
-+          break;
-+        case CODEC_ID_COOK:
-+          version = 8;
-+          break;
-+        default:
-+          break;
-+      }
-+
-+      /* FIXME: properties? */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-pn-realaudio",
-+          "raversion", G_TYPE_INT, version, NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "leaf_size", G_TYPE_INT, context->block_align,
-+            "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+      }
-+    }
-+      break;
-+
-+    case CODEC_ID_ROQ_DPCM:
-+    case CODEC_ID_INTERPLAY_DPCM:
-+    case CODEC_ID_XAN_DPCM:
-+    case CODEC_ID_SOL_DPCM:
-+    {
-+      const gchar *layout = NULL;
-+
-+      switch (codec_id) {
-+        case CODEC_ID_ROQ_DPCM:
-+          layout = "roq";
-+          break;
-+        case CODEC_ID_INTERPLAY_DPCM:
-+          layout = "interplay";
-+          break;
-+        case CODEC_ID_XAN_DPCM:
-+          layout = "xan";
-+          break;
-+        case CODEC_ID_SOL_DPCM:
-+          layout = "sol";
-+          break;
-+        default:
-+          g_assert (0);         /* don't worry, we never get here */
-+          break;
-+      }
-+
-+      /* FIXME: someone please check whether we need additional properties
-+       * in this caps definition. */
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-dpcm",
-+          "layout", G_TYPE_STRING, layout, NULL);
-+      if (context)
-+        gst_caps_set_simple (caps,
-+            "block_align", G_TYPE_INT, context->block_align,
-+            "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+    }
-+      break;
-+
-+    case CODEC_ID_SHORTEN:
-+      caps = gst_caps_new_simple ("audio/x-shorten", NULL);
-+      break;
-+
-+    case CODEC_ID_ALAC:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-alac", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "samplesize", G_TYPE_INT, context->bits_per_coded_sample, NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_FLAC:
-+      /* Note that ffmpeg has no encoder yet, but just for safety. In the
-+       * encoder case, we want to add things like samplerate, channels... */
-+      if (!encode) {
-+        caps = gst_caps_new_simple ("audio/x-flac", NULL);
-+      }
-+      break;
-+
-+    case CODEC_ID_DVD_SUBTITLE:
-+    case CODEC_ID_DVB_SUBTITLE:
-+      caps = NULL;
-+      break;
-+    case CODEC_ID_BMP:
-+      caps = gst_caps_new_simple ("image/bmp", NULL);
-+      break;
-+    case CODEC_ID_TTA:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-tta", NULL);
-+      if (context) {
-+        gst_caps_set_simple (caps,
-+            "samplesize", G_TYPE_INT, context->bits_per_coded_sample, NULL);
-+      }
-+      break;
-+    case CODEC_ID_TWINVQ:
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-twin-vq", NULL);
-+      break;
-+    default:
-+      GST_DEBUG ("Unknown codec ID %d, please add mapping here", codec_id);
-+      break;
-+  }
-+
-+  if (buildcaps) {
-+    AVCodec *codec;
-+
-+    if ((codec = avcodec_find_decoder (codec_id)) ||
-+        (codec = avcodec_find_encoder (codec_id))) {
-+      gchar *mime = NULL;
-+
-+      GST_LOG ("Could not create stream format caps for %s", codec->name);
-+
-+      switch (codec->type) {
-+        case AVMEDIA_TYPE_VIDEO:
-+          mime = g_strdup_printf ("video/x-gst_ff-%s", codec->name);
-+          caps = gst_ff_vid_caps_new (context, codec_id, mime, NULL);
-+          g_free (mime);
-+          break;
-+        case AVMEDIA_TYPE_AUDIO:
-+          mime = g_strdup_printf ("audio/x-gst_ff-%s", codec->name);
-+          caps = gst_ff_aud_caps_new (context, codec_id, mime, NULL);
-+          if (context)
-+            gst_caps_set_simple (caps,
-+                "block_align", G_TYPE_INT, context->block_align,
-+                "bitrate", G_TYPE_INT, context->bit_rate, NULL);
-+          g_free (mime);
-+          break;
-+        default:
-+          break;
-+      }
-+    }
-+  }
-+
-+  if (caps != NULL) {
-+
-+    /* set private data */
-+    if (context && context->extradata_size > 0) {
-+      GstBuffer *data = gst_buffer_new_and_alloc (context->extradata_size);
-+
-+      memcpy (GST_BUFFER_DATA (data), context->extradata,
-+          context->extradata_size);
-+      gst_caps_set_simple (caps, "codec_data", GST_TYPE_BUFFER, data, NULL);
-+      gst_buffer_unref (data);
-+    }
-+
-+    /* palette */
-+    if (context) {
-+      gst_ffmpeg_set_palette (caps, context);
-+    }
-+
-+    GST_LOG ("caps for codec_id=%d: %" GST_PTR_FORMAT, codec_id, caps);
-+
-+  } else {
-+    GST_LOG ("No caps found for codec_id=%d", codec_id);
-+  }
-+
-+  return caps;
-+}
-+
-+/* Convert a FFMPEG Pixel Format and optional AVCodecContext
-+ * to a GstCaps. If the context is ommitted, no fixed values
-+ * for video/audio size will be included in the GstCaps
-+ *
-+ * See below for usefullness
-+ */
-+
-+GstCaps *
-+gst_ffmpeg_pixfmt_to_caps (enum PixelFormat pix_fmt, AVCodecContext * context,
-+    enum CodecID codec_id)
-+{
-+  GstCaps *caps = NULL;
-+
-+  int bpp = 0, depth = 0, endianness = 0;
-+  gulong g_mask = 0, r_mask = 0, b_mask = 0, a_mask = 0;
-+  guint32 fmt = 0;
-+
-+  switch (pix_fmt) {
-+    case PIX_FMT_YUVJ420P:
-+    case PIX_FMT_YUV420P:
-+      fmt = GST_MAKE_FOURCC ('I', '4', '2', '0');
-+      break;
-+    case PIX_FMT_YUVA420P:
-+      fmt = GST_MAKE_FOURCC ('A', '4', '2', '0');
-+      break;
-+    case PIX_FMT_YUYV422:
-+      fmt = GST_MAKE_FOURCC ('Y', 'U', 'Y', '2');
-+      break;
-+    case PIX_FMT_RGB24:
-+      bpp = depth = 24;
-+      endianness = G_BIG_ENDIAN;
-+      r_mask = 0xff0000;
-+      g_mask = 0x00ff00;
-+      b_mask = 0x0000ff;
-+      break;
-+    case PIX_FMT_BGR24:
-+      bpp = depth = 24;
-+      endianness = G_BIG_ENDIAN;
-+      r_mask = 0x0000ff;
-+      g_mask = 0x00ff00;
-+      b_mask = 0xff0000;
-+      break;
-+    case PIX_FMT_YUVJ422P:
-+    case PIX_FMT_YUV422P:
-+      fmt = GST_MAKE_FOURCC ('Y', '4', '2', 'B');
-+      break;
-+    case PIX_FMT_YUVJ444P:
-+    case PIX_FMT_YUV444P:
-+      fmt = GST_MAKE_FOURCC ('Y', '4', '4', '4');
-+      break;
-+    case PIX_FMT_RGB32:
-+      bpp = 32;
-+      depth = 32;
-+      endianness = G_BIG_ENDIAN;
-+#if (G_BYTE_ORDER == G_BIG_ENDIAN)
-+      r_mask = 0x00ff0000;
-+      g_mask = 0x0000ff00;
-+      b_mask = 0x000000ff;
-+      a_mask = 0xff000000;
-+#else
-+      r_mask = 0x0000ff00;
-+      g_mask = 0x00ff0000;
-+      b_mask = 0xff000000;
-+      a_mask = 0x000000ff;
-+#endif
-+      break;
-+    case PIX_FMT_YUV410P:
-+      fmt = GST_MAKE_FOURCC ('Y', 'U', 'V', '9');
-+      break;
-+    case PIX_FMT_YUV411P:
-+      fmt = GST_MAKE_FOURCC ('Y', '4', '1', 'B');
-+      break;
-+    case PIX_FMT_RGB565:
-+      bpp = depth = 16;
-+      endianness = G_BYTE_ORDER;
-+      r_mask = 0xf800;
-+      g_mask = 0x07e0;
-+      b_mask = 0x001f;
-+      break;
-+    case PIX_FMT_RGB555:
-+      bpp = 16;
-+      depth = 15;
-+      endianness = G_BYTE_ORDER;
-+      r_mask = 0x7c00;
-+      g_mask = 0x03e0;
-+      b_mask = 0x001f;
-+      break;
-+    case PIX_FMT_PAL8:
-+      bpp = depth = 8;
-+      endianness = G_BYTE_ORDER;
-+      break;
-+    case PIX_FMT_GRAY8:
-+      bpp = depth = 8;
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-raw-gray",
-+          "bpp", G_TYPE_INT, bpp, "depth", G_TYPE_INT, depth, NULL);
-+      break;
-+    default:
-+      /* give up ... */
-+      break;
-+  }
-+
-+  if (caps == NULL) {
-+    if (bpp != 0) {
-+      if (r_mask != 0) {
-+        if (a_mask) {
-+          caps = gst_ff_vid_caps_new (context, codec_id, "video/x-raw-rgb",
-+              "bpp", G_TYPE_INT, bpp,
-+              "depth", G_TYPE_INT, depth,
-+              "red_mask", G_TYPE_INT, r_mask,
-+              "green_mask", G_TYPE_INT, g_mask,
-+              "blue_mask", G_TYPE_INT, b_mask,
-+              "alpha_mask", G_TYPE_INT, a_mask,
-+              "endianness", G_TYPE_INT, endianness, NULL);
-+        } else {
-+          caps = gst_ff_vid_caps_new (context, codec_id, "video/x-raw-rgb",
-+              "bpp", G_TYPE_INT, bpp,
-+              "depth", G_TYPE_INT, depth,
-+              "red_mask", G_TYPE_INT, r_mask,
-+              "green_mask", G_TYPE_INT, g_mask,
-+              "blue_mask", G_TYPE_INT, b_mask,
-+              "endianness", G_TYPE_INT, endianness, NULL);
-+        }
-+      } else {
-+        caps = gst_ff_vid_caps_new (context, codec_id, "video/x-raw-rgb",
-+            "bpp", G_TYPE_INT, bpp,
-+            "depth", G_TYPE_INT, depth,
-+            "endianness", G_TYPE_INT, endianness, NULL);
-+        if (caps && context) {
-+          gst_ffmpeg_set_palette (caps, context);
-+        }
-+      }
-+    } else if (fmt) {
-+      caps = gst_ff_vid_caps_new (context, codec_id, "video/x-raw-yuv",
-+          "format", GST_TYPE_FOURCC, fmt, NULL);
-+    }
-+  }
-+
-+  if (caps != NULL) {
-+    GST_DEBUG ("caps for pix_fmt=%d: %" GST_PTR_FORMAT, pix_fmt, caps);
-+  } else {
-+    GST_LOG ("No caps found for pix_fmt=%d", pix_fmt);
-+  }
-+
-+  return caps;
-+}
-+
-+/* Convert a FFMPEG Sample Format and optional AVCodecContext
-+ * to a GstCaps. If the context is ommitted, no fixed values
-+ * for video/audio size will be included in the GstCaps
-+ *
-+ * See below for usefullness
-+ */
-+
-+static GstCaps *
-+gst_ffmpeg_smpfmt_to_caps (enum AVSampleFormat sample_fmt,
-+    AVCodecContext * context, enum CodecID codec_id)
-+{
-+  GstCaps *caps = NULL;
-+
-+  int bpp = 0;
-+  gboolean integer = TRUE;
-+  gboolean signedness = FALSE;
-+
-+  switch (sample_fmt) {
-+    case AV_SAMPLE_FMT_S16:
-+      signedness = TRUE;
-+      bpp = 16;
-+      break;
-+
-+    case AV_SAMPLE_FMT_S32:
-+      signedness = TRUE;
-+      bpp = 32;
-+      break;
-+
-+    case AV_SAMPLE_FMT_FLT:
-+      integer = FALSE;
-+      bpp = 32;
-+      break;
-+
-+    case AV_SAMPLE_FMT_DBL:
-+      integer = FALSE;
-+      bpp = 64;
-+      break;
-+    default:
-+      /* .. */
-+      break;
-+  }
-+
-+  if (bpp) {
-+    if (integer) {
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-raw-int",
-+          "signed", G_TYPE_BOOLEAN, signedness,
-+          "endianness", G_TYPE_INT, G_BYTE_ORDER,
-+          "width", G_TYPE_INT, bpp, "depth", G_TYPE_INT, bpp, NULL);
-+    } else {
-+      caps = gst_ff_aud_caps_new (context, codec_id, "audio/x-raw-float",
-+          "endianness", G_TYPE_INT, G_BYTE_ORDER,
-+          "width", G_TYPE_INT, bpp, NULL);
-+    }
-+  }
-+
-+  if (caps != NULL) {
-+    GST_LOG ("caps for sample_fmt=%d: %" GST_PTR_FORMAT, sample_fmt, caps);
-+  } else {
-+    GST_LOG ("No caps found for sample_fmt=%d", sample_fmt);
-+  }
-+
-+  return caps;
-+}
-+
-+GstCaps *
-+gst_ffmpeg_codectype_to_audio_caps (AVCodecContext * context,
-+    enum CodecID codec_id, gboolean encode, AVCodec * codec)
-+{
-+  GstCaps *caps = NULL;
-+
-+  GST_DEBUG ("context:%p, codec_id:%d, encode:%d, codec:%p",
-+      context, codec_id, encode, codec);
-+  if (codec)
-+    GST_DEBUG ("sample_fmts:%p, samplerates:%p",
-+        codec->sample_fmts, codec->supported_samplerates);
-+
-+  if (context) {
-+    /* Specific codec context */
-+    caps = gst_ffmpeg_smpfmt_to_caps (context->sample_fmt, context, codec_id);
-+  } else if (codec && codec->sample_fmts) {
-+    GstCaps *temp;
-+    int i;
-+
-+    caps = gst_caps_new_empty ();
-+    for (i = 0; codec->sample_fmts[i] != -1; i++) {
-+      temp =
-+          gst_ffmpeg_smpfmt_to_caps (codec->sample_fmts[i], context, codec_id);
-+      if (temp != NULL)
-+        gst_caps_append (caps, temp);
-+    }
-+  } else {
-+    GstCaps *temp;
-+    enum AVSampleFormat i;
-+    AVCodecContext ctx = { 0, };
-+
-+    ctx.channels = -1;
-+    caps = gst_caps_new_empty ();
-+    for (i = 0; i <= AV_SAMPLE_FMT_DBL; i++) {
-+      temp = gst_ffmpeg_smpfmt_to_caps (i, encode ? &ctx : NULL, codec_id);
-+      if (temp != NULL) {
-+        gst_caps_append (caps, temp);
-+      }
-+    }
-+  }
-+  return caps;
-+}
-+
-+GstCaps *
-+gst_ffmpeg_codectype_to_video_caps (AVCodecContext * context,
-+    enum CodecID codec_id, gboolean encode, AVCodec * codec)
-+{
-+  GstCaps *caps;
-+
-+  GST_LOG ("context:%p, codec_id:%d, encode:%d, codec:%p",
-+      context, codec_id, encode, codec);
-+
-+  if (context) {
-+    caps = gst_ffmpeg_pixfmt_to_caps (context->pix_fmt, context, codec_id);
-+  } else {
-+    GstCaps *temp;
-+    enum PixelFormat i;
-+    AVCodecContext ctx = { 0, };
-+
-+    caps = gst_caps_new_empty ();
-+    for (i = 0; i < PIX_FMT_NB; i++) {
-+      ctx.width = -1;
-+      ctx.pix_fmt = i;
-+      temp = gst_ffmpeg_pixfmt_to_caps (i, encode ? &ctx : NULL, codec_id);
-+      if (temp != NULL) {
-+        gst_caps_append (caps, temp);
-+      }
-+    }
-+  }
-+  return caps;
-+}
-+
-+/* Convert a FFMPEG codec Type and optional AVCodecContext
-+ * to a GstCaps. If the context is ommitted, no fixed values
-+ * for video/audio size will be included in the GstCaps
-+ *
-+ * AVMediaType is primarily meant for uncompressed data GstCaps!
-+ */
-+
-+GstCaps *
-+gst_ffmpeg_codectype_to_caps (enum AVMediaType codec_type,
-+    AVCodecContext * context, enum CodecID codec_id, gboolean encode)
-+{
-+  GstCaps *caps;
-+
-+  switch (codec_type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+      caps =
-+          gst_ffmpeg_codectype_to_video_caps (context, codec_id, encode, NULL);
-+      break;
-+    case AVMEDIA_TYPE_AUDIO:
-+      caps =
-+          gst_ffmpeg_codectype_to_audio_caps (context, codec_id, encode, NULL);
-+      break;
-+    default:
-+      caps = NULL;
-+      break;
-+  }
-+
-+  return caps;
-+}
-+
-+/* Convert a GstCaps (audio/raw) to a FFMPEG SampleFmt
-+ * and other audio properties in a AVCodecContext.
-+ *
-+ * For usefullness, see below
-+ */
-+
-+static void
-+gst_ffmpeg_caps_to_smpfmt (const GstCaps * caps,
-+    AVCodecContext * context, gboolean raw)
-+{
-+  GstStructure *structure;
-+  gint depth = 0, width = 0, endianness = 0;
-+  gboolean signedness = FALSE;
-+  const gchar *name;
-+
-+  g_return_if_fail (gst_caps_get_size (caps) == 1);
-+  structure = gst_caps_get_structure (caps, 0);
-+
-+  gst_structure_get_int (structure, "channels", &context->channels);
-+  gst_structure_get_int (structure, "rate", &context->sample_rate);
-+  gst_structure_get_int (structure, "block_align", &context->block_align);
-+  gst_structure_get_int (structure, "bitrate", &context->bit_rate);
-+
-+  if (!raw)
-+    return;
-+
-+  name = gst_structure_get_name (structure);
-+
-+  if (!strcmp (name, "audio/x-raw-float")) {
-+    /* FLOAT */
-+    if (gst_structure_get_int (structure, "width", &width) &&
-+        gst_structure_get_int (structure, "endianness", &endianness)) {
-+      if (endianness == G_BYTE_ORDER) {
-+        if (width == 32)
-+          context->sample_fmt = AV_SAMPLE_FMT_FLT;
-+        else if (width == 64)
-+          context->sample_fmt = AV_SAMPLE_FMT_DBL;
-+      }
-+    }
-+  } else {
-+    /* INT */
-+    if (gst_structure_get_int (structure, "width", &width) &&
-+        gst_structure_get_int (structure, "depth", &depth) &&
-+        gst_structure_get_boolean (structure, "signed", &signedness) &&
-+        gst_structure_get_int (structure, "endianness", &endianness)) {
-+      if ((endianness == G_BYTE_ORDER) && (signedness == TRUE)) {
-+        if ((width == 16) && (depth == 16))
-+          context->sample_fmt = AV_SAMPLE_FMT_S16;
-+        else if ((width == 32) && (depth == 32))
-+          context->sample_fmt = AV_SAMPLE_FMT_S32;
-+      }
-+    }
-+  }
-+}
-+
-+
-+/* Convert a GstCaps (video/raw) to a FFMPEG PixFmt
-+ * and other video properties in a AVCodecContext.
-+ *
-+ * For usefullness, see below
-+ */
-+
-+static void
-+gst_ffmpeg_caps_to_pixfmt (const GstCaps * caps,
-+    AVCodecContext * context, gboolean raw)
-+{
-+  GstStructure *structure;
-+  const GValue *fps;
-+  const GValue *par = NULL;
-+
-+  GST_DEBUG ("converting caps %" GST_PTR_FORMAT, caps);
-+  g_return_if_fail (gst_caps_get_size (caps) == 1);
-+  structure = gst_caps_get_structure (caps, 0);
-+
-+  gst_structure_get_int (structure, "width", &context->width);
-+  gst_structure_get_int (structure, "height", &context->height);
-+  gst_structure_get_int (structure, "bpp", &context->bits_per_coded_sample);
-+
-+  fps = gst_structure_get_value (structure, "framerate");
-+  if (fps != NULL && GST_VALUE_HOLDS_FRACTION (fps)) {
-+
-+    /* somehow these seem mixed up.. */
-+    context->time_base.den = gst_value_get_fraction_numerator (fps);
-+    context->time_base.num = gst_value_get_fraction_denominator (fps);
-+    context->ticks_per_frame = 1;
-+
-+    GST_DEBUG ("setting framerate %d/%d = %lf",
-+        context->time_base.den, context->time_base.num,
-+        1. * context->time_base.den / context->time_base.num);
-+  }
-+
-+  par = gst_structure_get_value (structure, "pixel-aspect-ratio");
-+  if (par && GST_VALUE_HOLDS_FRACTION (par)) {
-+
-+    context->sample_aspect_ratio.num = gst_value_get_fraction_numerator (par);
-+    context->sample_aspect_ratio.den = gst_value_get_fraction_denominator (par);
-+
-+    GST_DEBUG ("setting pixel-aspect-ratio %d/%d = %lf",
-+        context->sample_aspect_ratio.den, context->sample_aspect_ratio.num,
-+        1. * context->sample_aspect_ratio.den /
-+        context->sample_aspect_ratio.num);
-+  }
-+
-+  if (!raw)
-+    return;
-+
-+  g_return_if_fail (fps != NULL && GST_VALUE_HOLDS_FRACTION (fps));
-+
-+  if (strcmp (gst_structure_get_name (structure), "video/x-raw-yuv") == 0) {
-+    guint32 fourcc;
-+
-+    if (gst_structure_get_fourcc (structure, "format", &fourcc)) {
-+      switch (fourcc) {
-+        case GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'):
-+          context->pix_fmt = PIX_FMT_YUYV422;
-+          break;
-+        case GST_MAKE_FOURCC ('I', '4', '2', '0'):
-+          context->pix_fmt = PIX_FMT_YUV420P;
-+          break;
-+        case GST_MAKE_FOURCC ('A', '4', '2', '0'):
-+          context->pix_fmt = PIX_FMT_YUVA420P;
-+          break;
-+        case GST_MAKE_FOURCC ('Y', '4', '1', 'B'):
-+          context->pix_fmt = PIX_FMT_YUV411P;
-+          break;
-+        case GST_MAKE_FOURCC ('Y', '4', '2', 'B'):
-+          context->pix_fmt = PIX_FMT_YUV422P;
-+          break;
-+        case GST_MAKE_FOURCC ('Y', 'U', 'V', '9'):
-+          context->pix_fmt = PIX_FMT_YUV410P;
-+          break;
-+#if 0
-+        case FIXME:
-+          context->pix_fmt = PIX_FMT_YUV444P;
-+          break;
-+#endif
-+      }
-+    }
-+  } else if (strcmp (gst_structure_get_name (structure),
-+          "video/x-raw-rgb") == 0) {
-+    gint bpp = 0, rmask = 0, endianness = 0;
-+
-+    if (gst_structure_get_int (structure, "bpp", &bpp) &&
-+        gst_structure_get_int (structure, "endianness", &endianness)) {
-+      if (gst_structure_get_int (structure, "red_mask", &rmask)) {
-+        switch (bpp) {
-+          case 32:
-+#if (G_BYTE_ORDER == G_BIG_ENDIAN)
-+            if (rmask == 0x00ff0000)
-+#else
-+            if (rmask == 0x0000ff00)
-+#endif
-+              context->pix_fmt = PIX_FMT_RGB32;
-+            break;
-+          case 24:
-+            if (rmask == 0x0000FF)
-+              context->pix_fmt = PIX_FMT_BGR24;
-+            else
-+              context->pix_fmt = PIX_FMT_RGB24;
-+            break;
-+          case 16:
-+            if (endianness == G_BYTE_ORDER)
-+              context->pix_fmt = PIX_FMT_RGB565;
-+            break;
-+          case 15:
-+            if (endianness == G_BYTE_ORDER)
-+              context->pix_fmt = PIX_FMT_RGB555;
-+            break;
-+          default:
-+            /* nothing */
-+            break;
-+        }
-+      } else {
-+        if (bpp == 8) {
-+          context->pix_fmt = PIX_FMT_PAL8;
-+          gst_ffmpeg_get_palette (caps, context);
-+        }
-+      }
-+    }
-+  } else if (strcmp (gst_structure_get_name (structure),
-+          "video/x-raw-gray") == 0) {
-+    gint bpp = 0;
-+
-+    if (gst_structure_get_int (structure, "bpp", &bpp)) {
-+      switch (bpp) {
-+        case 8:
-+          context->pix_fmt = PIX_FMT_GRAY8;
-+          break;
-+      }
-+    }
-+  }
-+}
-+
-+/* Convert a GstCaps and a FFMPEG codec Type to a
-+ * AVCodecContext. If the context is ommitted, no fixed values
-+ * for video/audio size will be included in the context
-+ *
-+ * AVMediaType is primarily meant for uncompressed data GstCaps!
-+ */
-+
-+void
-+gst_ffmpeg_caps_with_codectype (enum AVMediaType type,
-+    const GstCaps * caps, AVCodecContext * context)
-+{
-+  if (context == NULL)
-+    return;
-+
-+  switch (type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+      gst_ffmpeg_caps_to_pixfmt (caps, context, TRUE);
-+      break;
-+
-+    case AVMEDIA_TYPE_AUDIO:
-+      gst_ffmpeg_caps_to_smpfmt (caps, context, TRUE);
-+      break;
-+
-+    default:
-+      /* unknown */
-+      break;
-+  }
-+}
-+
-+#if 0
-+static void
-+nal_escape (guint8 * dst, guint8 * src, guint size, guint * destsize)
-+{
-+  guint8 *dstp = dst;
-+  guint8 *srcp = src;
-+  guint8 *end = src + size;
-+  gint count = 0;
-+
-+  while (srcp < end) {
-+    if (count == 2 && *srcp <= 0x03) {
-+      GST_DEBUG ("added escape code");
-+      *dstp++ = 0x03;
-+      count = 0;
-+    }
-+    if (*srcp == 0)
-+      count++;
-+    else
-+      count = 0;
-+
-+    GST_DEBUG ("copy %02x, count %d", *srcp, count);
-+    *dstp++ = *srcp++;
-+  }
-+  *destsize = dstp - dst;
-+}
-+
-+/* copy the config, escaping NAL units as we iterate them, if something fails we
-+ * copy everything and hope for the best. */
-+static void
-+copy_config (guint8 * dst, guint8 * src, guint size, guint * destsize)
-+{
-+  guint8 *dstp = dst;
-+  guint8 *srcp = src;
-+  gint cnt, i;
-+  guint nalsize, esize;
-+
-+  /* check size */
-+  if (size < 7)
-+    goto full_copy;
-+
-+  /* check version */
-+  if (*srcp != 1)
-+    goto full_copy;
-+
-+  cnt = *(srcp + 5) & 0x1f;     /* Number of sps */
-+
-+  GST_DEBUG ("num SPS %d", cnt);
-+
-+  memcpy (dstp, srcp, 6);
-+  srcp += 6;
-+  dstp += 6;
-+
-+  for (i = 0; i < cnt; i++) {
-+    GST_DEBUG ("copy SPS %d", i);
-+    nalsize = (srcp[0] << 8) | srcp[1];
-+    nal_escape (dstp + 2, srcp + 2, nalsize, &esize);
-+    dstp[0] = esize >> 8;
-+    dstp[1] = esize & 0xff;
-+    dstp += esize + 2;
-+    srcp += nalsize + 2;
-+  }
-+
-+  cnt = *(dstp++) = *(srcp++);  /* Number of pps */
-+
-+  GST_DEBUG ("num PPS %d", cnt);
-+
-+  for (i = 0; i < cnt; i++) {
-+    GST_DEBUG ("copy PPS %d", i);
-+    nalsize = (srcp[0] << 8) | srcp[1];
-+    nal_escape (dstp + 2, srcp + 2, nalsize, &esize);
-+    dstp[0] = esize >> 8;
-+    dstp[1] = esize & 0xff;
-+    dstp += esize + 2;
-+    srcp += nalsize + 2;
-+  }
-+  *destsize = dstp - dst;
-+
-+  return;
-+
-+full_copy:
-+  {
-+    GST_DEBUG ("something unexpected, doing full copy");
-+    memcpy (dst, src, size);
-+    *destsize = size;
-+    return;
-+  }
-+}
-+#endif
-+
-+/*
-+ * caps_with_codecid () transforms a GstCaps for a known codec
-+ * ID into a filled-in context.
-+ * codec_data from caps will override possible extradata already in the context
-+ */
-+
-+void
-+gst_ffmpeg_caps_with_codecid (enum CodecID codec_id,
-+    enum AVMediaType codec_type, const GstCaps * caps, AVCodecContext * context)
-+{
-+  GstStructure *str;
-+  const GValue *value;
-+  const GstBuffer *buf;
-+
-+  GST_LOG ("codec_id:%d, codec_type:%d, caps:%" GST_PTR_FORMAT " context:%p",
-+      codec_id, codec_type, caps, context);
-+
-+  if (!context || !gst_caps_get_size (caps))
-+    return;
-+
-+  str = gst_caps_get_structure (caps, 0);
-+
-+  /* extradata parsing (esds [mpeg4], wma/wmv, msmpeg4v1/2/3, etc.) */
-+  if ((value = gst_structure_get_value (str, "codec_data"))) {
-+    guint size;
-+    guint8 *data;
-+
-+    buf = GST_BUFFER_CAST (gst_value_get_mini_object (value));
-+    size = GST_BUFFER_SIZE (buf);
-+    data = GST_BUFFER_DATA (buf);
-+
-+    /* free the old one if it is there */
-+    if (context->extradata)
-+      av_free (context->extradata);
-+
-+#if 0
-+    if (codec_id == CODEC_ID_H264) {
-+      guint extrasize;
-+
-+      GST_DEBUG ("copy, escaping codec_data %d", size);
-+      /* ffmpeg h264 expects the codec_data to be escaped, there is no real
-+       * reason for this but let's just escape it for now. Start by allocating
-+       * enough space, x2 is more than enough.
-+       *
-+       * FIXME, we disabled escaping because some file already contain escaped
-+       * codec_data and then we escape twice and fail. It's better to leave it
-+       * as is, as that is what most players do. */
-+      context->extradata =
-+          av_mallocz (GST_ROUND_UP_16 (size * 2 +
-+              FF_INPUT_BUFFER_PADDING_SIZE));
-+      copy_config (context->extradata, data, size, &extrasize);
-+      GST_DEBUG ("escaped size: %d", extrasize);
-+      context->extradata_size = extrasize;
-+    } else
-+#endif
-+    {
-+      /* allocate with enough padding */
-+      GST_DEBUG ("copy codec_data");
-+      context->extradata =
-+          av_mallocz (GST_ROUND_UP_16 (size + FF_INPUT_BUFFER_PADDING_SIZE));
-+      memcpy (context->extradata, data, size);
-+      context->extradata_size = size;
-+    }
-+
-+    /* Hack for VC1. Sometimes the first (length) byte is 0 for some files */
-+    if (codec_id == CODEC_ID_VC1 && size > 0 && data[0] == 0) {
-+      context->extradata[0] = (guint8) size;
-+    }
-+
-+    GST_DEBUG ("have codec data of size %d", size);
-+  } else if (context->extradata == NULL && codec_id != CODEC_ID_AAC_LATM &&
-+      codec_id != CODEC_ID_FLAC) {
-+    /* no extradata, alloc dummy with 0 sized, some codecs insist on reading
-+     * extradata anyway which makes then segfault. */
-+    context->extradata =
-+        av_mallocz (GST_ROUND_UP_16 (FF_INPUT_BUFFER_PADDING_SIZE));
-+    context->extradata_size = 0;
-+    GST_DEBUG ("no codec data");
-+  }
-+
-+  switch (codec_id) {
-+    case CODEC_ID_MPEG4:
-+    {
-+      const gchar *mime = gst_structure_get_name (str);
-+
-+      if (!strcmp (mime, "video/x-divx"))
-+        context->codec_tag = GST_MAKE_FOURCC ('D', 'I', 'V', 'X');
-+      else if (!strcmp (mime, "video/x-xvid"))
-+        context->codec_tag = GST_MAKE_FOURCC ('X', 'V', 'I', 'D');
-+      else if (!strcmp (mime, "video/x-3ivx"))
-+        context->codec_tag = GST_MAKE_FOURCC ('3', 'I', 'V', '1');
-+      else if (!strcmp (mime, "video/mpeg"))
-+        context->codec_tag = GST_MAKE_FOURCC ('m', 'p', '4', 'v');
-+    }
-+      break;
-+
-+    case CODEC_ID_SVQ3:
-+      /* FIXME: this is a workaround for older gst-plugins releases
-+       * (<= 0.8.9). This should be removed at some point, because
-+       * it causes wrong decoded frame order. */
-+      if (!context->extradata) {
-+        gint halfpel_flag, thirdpel_flag, low_delay, unknown_svq3_flag;
-+        guint16 flags;
-+
-+        if (gst_structure_get_int (str, "halfpel_flag", &halfpel_flag) ||
-+            gst_structure_get_int (str, "thirdpel_flag", &thirdpel_flag) ||
-+            gst_structure_get_int (str, "low_delay", &low_delay) ||
-+            gst_structure_get_int (str, "unknown_svq3_flag",
-+                &unknown_svq3_flag)) {
-+          context->extradata = (guint8 *) av_mallocz (0x64);
-+          g_stpcpy ((gchar *) context->extradata, "SVQ3");
-+          flags = 1 << 3;
-+          flags |= low_delay;
-+          flags = flags << 2;
-+          flags |= unknown_svq3_flag;
-+          flags = flags << 6;
-+          flags |= halfpel_flag;
-+          flags = flags << 1;
-+          flags |= thirdpel_flag;
-+          flags = flags << 3;
-+
-+          flags = GUINT16_FROM_LE (flags);
-+
-+          memcpy ((gchar *) context->extradata + 0x62, &flags, 2);
-+          context->extradata_size = 0x64;
-+        }
-+      }
-+      break;
-+
-+    case CODEC_ID_MSRLE:
-+    case CODEC_ID_QTRLE:
-+    case CODEC_ID_TSCC:
-+    case CODEC_ID_CSCD:
-+    case CODEC_ID_APE:
-+    {
-+      gint depth;
-+
-+      if (gst_structure_get_int (str, "depth", &depth)) {
-+        context->bits_per_coded_sample = depth;
-+      } else {
-+        GST_WARNING ("No depth field in caps %" GST_PTR_FORMAT, caps);
-+      }
-+
-+    }
-+      break;
-+
-+    case CODEC_ID_RV10:
-+    case CODEC_ID_RV20:
-+    case CODEC_ID_RV30:
-+    case CODEC_ID_RV40:
-+    {
-+      gint format;
-+
-+      if (gst_structure_get_int (str, "format", &format))
-+        context->sub_id = format;
-+
-+      break;
-+    }
-+    case CODEC_ID_COOK:
-+    case CODEC_ID_RA_288:
-+    case CODEC_ID_RA_144:
-+    case CODEC_ID_SIPR:
-+    {
-+      gint leaf_size;
-+      gint bitrate;
-+
-+      if (gst_structure_get_int (str, "leaf_size", &leaf_size))
-+        context->block_align = leaf_size;
-+      if (gst_structure_get_int (str, "bitrate", &bitrate))
-+        context->bit_rate = bitrate;
-+    }
-+    case CODEC_ID_ALAC:
-+      gst_structure_get_int (str, "samplesize",
-+          &context->bits_per_coded_sample);
-+      break;
-+
-+    case CODEC_ID_DVVIDEO:
-+    {
-+      guint32 fourcc;
-+
-+      if (gst_structure_get_fourcc (str, "format", &fourcc))
-+        switch (fourcc) {
-+          case GST_MAKE_FOURCC ('Y', 'U', 'Y', '2'):
-+            context->pix_fmt = PIX_FMT_YUYV422;
-+            break;
-+          case GST_MAKE_FOURCC ('I', '4', '2', '0'):
-+            context->pix_fmt = PIX_FMT_YUV420P;
-+            break;
-+          case GST_MAKE_FOURCC ('A', '4', '2', '0'):
-+            context->pix_fmt = PIX_FMT_YUVA420P;
-+            break;
-+          case GST_MAKE_FOURCC ('Y', '4', '1', 'B'):
-+            context->pix_fmt = PIX_FMT_YUV411P;
-+            break;
-+          case GST_MAKE_FOURCC ('Y', '4', '2', 'B'):
-+            context->pix_fmt = PIX_FMT_YUV422P;
-+            break;
-+          case GST_MAKE_FOURCC ('Y', 'U', 'V', '9'):
-+            context->pix_fmt = PIX_FMT_YUV410P;
-+            break;
-+          default:
-+            GST_WARNING ("couldn't convert fourcc %" GST_FOURCC_FORMAT
-+                " to a pixel format", GST_FOURCC_ARGS (fourcc));
-+            break;
-+        }
-+      break;
-+    }
-+    case CODEC_ID_H263P:
-+    {
-+      gboolean val;
-+
-+      if (!gst_structure_get_boolean (str, "annex-f", &val) || val)
-+        context->flags |= CODEC_FLAG_4MV;
-+      else
-+        context->flags &= ~CODEC_FLAG_4MV;
-+      if ((!gst_structure_get_boolean (str, "annex-i", &val) || val) &&
-+          (!gst_structure_get_boolean (str, "annex-t", &val) || val))
-+        context->flags |= CODEC_FLAG_AC_PRED;
-+      else
-+        context->flags &= ~CODEC_FLAG_AC_PRED;
-+      if (!gst_structure_get_boolean (str, "annex-j", &val) || val)
-+        context->flags |= CODEC_FLAG_LOOP_FILTER;
-+      else
-+        context->flags &= ~CODEC_FLAG_LOOP_FILTER;
-+      break;
-+    }
-+    case CODEC_ID_ADPCM_G726:
-+    {
-+      const gchar *layout;
-+
-+      if ((layout = gst_structure_get_string (str, "layout"))) {
-+        if (!strcmp (layout, "g721")) {
-+          context->sample_rate = 8000;
-+          context->channels = 1;
-+          context->bit_rate = 32000;
-+        }
-+      }
-+      break;
-+    }
-+    default:
-+      break;
-+  }
-+
-+  if (!gst_caps_is_fixed (caps))
-+    return;
-+
-+  /* common properties (width, height, fps) */
-+  switch (codec_type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+      gst_ffmpeg_caps_to_pixfmt (caps, context, codec_id == CODEC_ID_RAWVIDEO);
-+      gst_ffmpeg_get_palette (caps, context);
-+      break;
-+    case AVMEDIA_TYPE_AUDIO:
-+      gst_ffmpeg_caps_to_smpfmt (caps, context, FALSE);
-+      break;
-+    default:
-+      break;
-+  }
-+
-+  /* fixup of default settings */
-+  switch (codec_id) {
-+    case CODEC_ID_QCELP:
-+      /* QCELP is always mono, no matter what the caps say */
-+      context->channels = 1;
-+      break;
-+    default:
-+      break;
-+  }
-+}
-+
-+/* _formatid_to_caps () is meant for muxers/demuxers, it
-+ * transforms a name (ffmpeg way of ID'ing these, why don't
-+ * they have unique numerical IDs?) to the corresponding
-+ * caps belonging to that mux-format
-+ *
-+ * Note: we don't need any additional info because the caps
-+ * isn't supposed to contain any useful info besides the
-+ * media type anyway
-+ */
-+
-+GstCaps *
-+gst_ffmpeg_formatid_to_caps (const gchar * format_name)
-+{
-+  GstCaps *caps = NULL;
-+
-+  if (!strcmp (format_name, "mpeg")) {
-+    caps = gst_caps_new_simple ("video/mpeg",
-+        "systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
-+  } else if (!strcmp (format_name, "mpegts")) {
-+    caps = gst_caps_new_simple ("video/mpegts",
-+        "systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
-+  } else if (!strcmp (format_name, "rm")) {
-+    caps = gst_caps_new_simple ("application/x-pn-realmedia",
-+        "systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
-+  } else if (!strcmp (format_name, "asf")) {
-+    caps = gst_caps_new_simple ("video/x-ms-asf", NULL);
-+  } else if (!strcmp (format_name, "avi")) {
-+    caps = gst_caps_new_simple ("video/x-msvideo", NULL);
-+  } else if (!strcmp (format_name, "wav")) {
-+    caps = gst_caps_new_simple ("audio/x-wav", NULL);
-+  } else if (!strcmp (format_name, "ape")) {
-+    caps = gst_caps_new_simple ("application/x-ape", NULL);
-+  } else if (!strcmp (format_name, "swf")) {
-+    caps = gst_caps_new_simple ("application/x-shockwave-flash", NULL);
-+  } else if (!strcmp (format_name, "au")) {
-+    caps = gst_caps_new_simple ("audio/x-au", NULL);
-+  } else if (!strcmp (format_name, "dv")) {
-+    caps = gst_caps_new_simple ("video/x-dv",
-+        "systemstream", G_TYPE_BOOLEAN, TRUE, NULL);
-+  } else if (!strcmp (format_name, "4xm")) {
-+    caps = gst_caps_new_simple ("video/x-4xm", NULL);
-+  } else if (!strcmp (format_name, "matroska")) {
-+    caps = gst_caps_new_simple ("video/x-matroska", NULL);
-+  } else if (!strcmp (format_name, "mp3")) {
-+    caps = gst_caps_new_simple ("application/x-id3", NULL);
-+  } else if (!strcmp (format_name, "flic")) {
-+    caps = gst_caps_new_simple ("video/x-fli", NULL);
-+  } else if (!strcmp (format_name, "flv")) {
-+    caps = gst_caps_new_simple ("video/x-flv", NULL);
-+  } else if (!strcmp (format_name, "tta")) {
-+    caps = gst_caps_new_simple ("audio/x-ttafile", NULL);
-+  } else if (!strcmp (format_name, "aiff")) {
-+    caps = gst_caps_new_simple ("audio/x-aiff", NULL);
-+  } else if (!strcmp (format_name, "mov_mp4_m4a_3gp_3g2")) {
-+    caps =
-+        gst_caps_from_string
-+        ("application/x-3gp; video/quicktime; audio/x-m4a");
-+  } else if (!strcmp (format_name, "mov")) {
-+    caps = gst_caps_from_string ("video/quicktime,variant=(string)apple");
-+  } else if (!strcmp (format_name, "mp4")) {
-+    caps = gst_caps_from_string ("video/quicktime,variant=(string)iso");
-+  } else if (!strcmp (format_name, "3gp")) {
-+    caps = gst_caps_from_string ("video/quicktime,variant=(string)3gpp");
-+  } else if (!strcmp (format_name, "3g2")) {
-+    caps = gst_caps_from_string ("video/quicktime,variant=(string)3g2");
-+  } else if (!strcmp (format_name, "psp")) {
-+    caps = gst_caps_from_string ("video/quicktime,variant=(string)psp");
-+  } else if (!strcmp (format_name, "ipod")) {
-+    caps = gst_caps_from_string ("video/quicktime,variant=(string)ipod");
-+  } else if (!strcmp (format_name, "aac")) {
-+    caps = gst_caps_new_simple ("audio/mpeg",
-+        "mpegversion", G_TYPE_INT, 4, NULL);
-+  } else if (!strcmp (format_name, "gif")) {
-+    caps = gst_caps_from_string ("image/gif");
-+  } else if (!strcmp (format_name, "ogg")) {
-+    caps = gst_caps_from_string ("application/ogg");
-+  } else if (!strcmp (format_name, "mxf") || !strcmp (format_name, "mxf_d10")) {
-+    caps = gst_caps_from_string ("application/mxf");
-+  } else if (!strcmp (format_name, "gxf")) {
-+    caps = gst_caps_from_string ("application/gxf");
-+  } else if (!strcmp (format_name, "yuv4mpegpipe")) {
-+    caps = gst_caps_new_simple ("application/x-yuv4mpeg",
-+        "y4mversion", G_TYPE_INT, 2, NULL);
-+  } else if (!strcmp (format_name, "mpc")) {
-+    caps = gst_caps_from_string ("audio/x-musepack, streamversion = (int) 7");
-+  } else if (!strcmp (format_name, "vqf")) {
-+    caps = gst_caps_from_string ("audio/x-vqf");
-+  } else if (!strcmp (format_name, "nsv")) {
-+    caps = gst_caps_from_string ("video/x-nsv");
-+  } else if (!strcmp (format_name, "amr")) {
-+    caps = gst_caps_from_string ("audio/x-amr-nb-sh");
-+  } else if (!strcmp (format_name, "webm")) {
-+    caps = gst_caps_from_string ("video/webm");
-+  } else {
-+    gchar *name;
-+
-+    GST_LOG ("Could not create stream format caps for %s", format_name);
-+    name = g_strdup_printf ("application/x-gst_ff-%s", format_name);
-+    caps = gst_caps_new_simple (name, NULL);
-+    g_free (name);
-+  }
-+
-+  return caps;
-+}
-+
-+gboolean
-+gst_ffmpeg_formatid_get_codecids (const gchar * format_name,
-+    enum CodecID ** video_codec_list, enum CodecID ** audio_codec_list,
-+    AVOutputFormat * plugin)
-+{
-+  static enum CodecID tmp_vlist[] = {
-+    CODEC_ID_NONE,
-+    CODEC_ID_NONE
-+  };
-+  static enum CodecID tmp_alist[] = {
-+    CODEC_ID_NONE,
-+    CODEC_ID_NONE
-+  };
-+
-+  GST_LOG ("format_name : %s", format_name);
-+
-+  if (!strcmp (format_name, "mp4")) {
-+    static enum CodecID mp4_video_list[] = {
-+      CODEC_ID_MPEG4, CODEC_ID_H264,
-+      CODEC_ID_MJPEG,
-+      CODEC_ID_NONE
-+    };
-+    static enum CodecID mp4_audio_list[] = {
-+      CODEC_ID_AAC, CODEC_ID_MP3,
-+      CODEC_ID_NONE
-+    };
-+
-+    *video_codec_list = mp4_video_list;
-+    *audio_codec_list = mp4_audio_list;
-+  } else if (!strcmp (format_name, "mpeg")) {
-+    static enum CodecID mpeg_video_list[] = { CODEC_ID_MPEG1VIDEO,
-+      CODEC_ID_MPEG2VIDEO,
-+      CODEC_ID_H264,
-+      CODEC_ID_NONE
-+    };
-+    static enum CodecID mpeg_audio_list[] = { CODEC_ID_MP1,
-+      CODEC_ID_MP2,
-+      CODEC_ID_MP3,
-+      CODEC_ID_NONE
-+    };
-+
-+    *video_codec_list = mpeg_video_list;
-+    *audio_codec_list = mpeg_audio_list;
-+  } else if (!strcmp (format_name, "dvd")) {
-+    static enum CodecID mpeg_video_list[] = { CODEC_ID_MPEG2VIDEO,
-+      CODEC_ID_NONE
-+    };
-+    static enum CodecID mpeg_audio_list[] = { CODEC_ID_MP2,
-+      CODEC_ID_AC3,
-+      CODEC_ID_DTS,
-+      CODEC_ID_PCM_S16BE,
-+      CODEC_ID_NONE
-+    };
-+
-+    *video_codec_list = mpeg_video_list;
-+    *audio_codec_list = mpeg_audio_list;
-+  } else if (!strcmp (format_name, "mpegts")) {
-+    static enum CodecID mpegts_video_list[] = { CODEC_ID_MPEG1VIDEO,
-+      CODEC_ID_MPEG2VIDEO,
-+      CODEC_ID_H264,
-+      CODEC_ID_NONE
-+    };
-+    static enum CodecID mpegts_audio_list[] = { CODEC_ID_MP2,
-+      CODEC_ID_MP3,
-+      CODEC_ID_AC3,
-+      CODEC_ID_DTS,
-+      CODEC_ID_AAC,
-+      CODEC_ID_NONE
-+    };
-+
-+    *video_codec_list = mpegts_video_list;
-+    *audio_codec_list = mpegts_audio_list;
-+  } else if (!strcmp (format_name, "vob")) {
-+    static enum CodecID vob_video_list[] =
-+        { CODEC_ID_MPEG2VIDEO, CODEC_ID_NONE };
-+    static enum CodecID vob_audio_list[] = { CODEC_ID_MP2, CODEC_ID_AC3,
-+      CODEC_ID_DTS, CODEC_ID_NONE
-+    };
-+
-+    *video_codec_list = vob_video_list;
-+    *audio_codec_list = vob_audio_list;
-+  } else if (!strcmp (format_name, "flv")) {
-+    static enum CodecID flv_video_list[] = { CODEC_ID_FLV1, CODEC_ID_NONE };
-+    static enum CodecID flv_audio_list[] = { CODEC_ID_MP3, CODEC_ID_NONE };
-+
-+    *video_codec_list = flv_video_list;
-+    *audio_codec_list = flv_audio_list;
-+  } else if (!strcmp (format_name, "asf")) {
-+    static enum CodecID asf_video_list[] =
-+        { CODEC_ID_WMV1, CODEC_ID_WMV2, CODEC_ID_MSMPEG4V3, CODEC_ID_NONE };
-+    static enum CodecID asf_audio_list[] =
-+        { CODEC_ID_WMAV1, CODEC_ID_WMAV2, CODEC_ID_MP3, CODEC_ID_NONE };
-+
-+    *video_codec_list = asf_video_list;
-+    *audio_codec_list = asf_audio_list;
-+  } else if (!strcmp (format_name, "dv")) {
-+    static enum CodecID dv_video_list[] = { CODEC_ID_DVVIDEO, CODEC_ID_NONE };
-+    static enum CodecID dv_audio_list[] = { CODEC_ID_PCM_S16LE, CODEC_ID_NONE };
-+
-+    *video_codec_list = dv_video_list;
-+    *audio_codec_list = dv_audio_list;
-+  } else if (!strcmp (format_name, "mov")) {
-+    static enum CodecID mov_video_list[] = {
-+      CODEC_ID_SVQ1, CODEC_ID_SVQ3, CODEC_ID_MPEG4,
-+      CODEC_ID_H263, CODEC_ID_H263P,
-+      CODEC_ID_H264, CODEC_ID_DVVIDEO,
-+      CODEC_ID_MJPEG,
-+      CODEC_ID_NONE
-+    };
-+    static enum CodecID mov_audio_list[] = {
-+      CODEC_ID_PCM_MULAW, CODEC_ID_PCM_ALAW, CODEC_ID_ADPCM_IMA_QT,
-+      CODEC_ID_MACE3, CODEC_ID_MACE6, CODEC_ID_AAC,
-+      CODEC_ID_AMR_NB, CODEC_ID_AMR_WB,
-+      CODEC_ID_PCM_S16BE, CODEC_ID_PCM_S16LE,
-+      CODEC_ID_MP3, CODEC_ID_NONE
-+    };
-+
-+    *video_codec_list = mov_video_list;
-+    *audio_codec_list = mov_audio_list;
-+  } else if ((!strcmp (format_name, "3gp") || !strcmp (format_name, "3g2"))) {
-+    static enum CodecID tgp_video_list[] = {
-+      CODEC_ID_MPEG4, CODEC_ID_H263, CODEC_ID_H263P, CODEC_ID_H264,
-+      CODEC_ID_NONE
-+    };
-+    static enum CodecID tgp_audio_list[] = {
-+      CODEC_ID_AMR_NB, CODEC_ID_AMR_WB,
-+      CODEC_ID_AAC,
-+      CODEC_ID_NONE
-+    };
-+
-+    *video_codec_list = tgp_video_list;
-+    *audio_codec_list = tgp_audio_list;
-+  } else if (!strcmp (format_name, "mmf")) {
-+    static enum CodecID mmf_audio_list[] = {
-+      CODEC_ID_ADPCM_YAMAHA, CODEC_ID_NONE
-+    };
-+    *video_codec_list = NULL;
-+    *audio_codec_list = mmf_audio_list;
-+  } else if (!strcmp (format_name, "amr")) {
-+    static enum CodecID amr_audio_list[] = {
-+      CODEC_ID_AMR_NB, CODEC_ID_AMR_WB,
-+      CODEC_ID_NONE
-+    };
-+    *video_codec_list = NULL;
-+    *audio_codec_list = amr_audio_list;
-+  } else if (!strcmp (format_name, "gif")) {
-+    static enum CodecID gif_image_list[] = {
-+      CODEC_ID_RAWVIDEO, CODEC_ID_NONE
-+    };
-+    *video_codec_list = gif_image_list;
-+    *audio_codec_list = NULL;
-+  } else if ((plugin->audio_codec != CODEC_ID_NONE) ||
-+      (plugin->video_codec != CODEC_ID_NONE)) {
-+    tmp_vlist[0] = plugin->video_codec;
-+    tmp_alist[0] = plugin->audio_codec;
-+
-+    *video_codec_list = tmp_vlist;
-+    *audio_codec_list = tmp_alist;
-+  } else {
-+    GST_LOG ("Format %s not found", format_name);
-+    return FALSE;
-+  }
-+
-+  return TRUE;
-+}
-+
-+/* Convert a GstCaps to a FFMPEG codec ID. Size et all
-+ * are omitted, that can be queried by the user itself,
-+ * we're not eating the GstCaps or anything
-+ * A pointer to an allocated context is also needed for
-+ * optional extra info
-+ */
-+
-+enum CodecID
-+gst_ffmpeg_caps_to_codecid (const GstCaps * caps, AVCodecContext * context)
-+{
-+  enum CodecID id = CODEC_ID_NONE;
-+  const gchar *mimetype;
-+  const GstStructure *structure;
-+  gboolean video = FALSE, audio = FALSE;        /* we want to be sure! */
-+
-+  g_return_val_if_fail (caps != NULL, CODEC_ID_NONE);
-+  g_return_val_if_fail (gst_caps_get_size (caps) == 1, CODEC_ID_NONE);
-+  structure = gst_caps_get_structure (caps, 0);
-+
-+  mimetype = gst_structure_get_name (structure);
-+
-+  if (!strcmp (mimetype, "video/x-raw-rgb") ||
-+      !strcmp (mimetype, "video/x-raw-yuv")) {
-+    id = CODEC_ID_RAWVIDEO;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-raw-int")) {
-+    gint depth, width, endianness;
-+    gboolean signedness;
-+
-+    if (gst_structure_get_int (structure, "endianness", &endianness) &&
-+        gst_structure_get_boolean (structure, "signed", &signedness) &&
-+        gst_structure_get_int (structure, "width", &width) &&
-+        gst_structure_get_int (structure, "depth", &depth) && depth == width) {
-+      switch (depth) {
-+        case 8:
-+          if (signedness) {
-+            id = CODEC_ID_PCM_S8;
-+          } else {
-+            id = CODEC_ID_PCM_U8;
-+          }
-+          break;
-+        case 16:
-+          switch (endianness) {
-+            case G_BIG_ENDIAN:
-+              if (signedness) {
-+                id = CODEC_ID_PCM_S16BE;
-+              } else {
-+                id = CODEC_ID_PCM_U16BE;
-+              }
-+              break;
-+            case G_LITTLE_ENDIAN:
-+              if (signedness) {
-+                id = CODEC_ID_PCM_S16LE;
-+              } else {
-+                id = CODEC_ID_PCM_U16LE;
-+              }
-+              break;
-+          }
-+          break;
-+      }
-+      if (id != CODEC_ID_NONE)
-+        audio = TRUE;
-+    }
-+  } else if (!strcmp (mimetype, "audio/x-mulaw")) {
-+    id = CODEC_ID_PCM_MULAW;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-alaw")) {
-+    id = CODEC_ID_PCM_ALAW;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-dv")) {
-+    gboolean sys_strm;
-+
-+    if (gst_structure_get_boolean (structure, "systemstream", &sys_strm) &&
-+        !sys_strm) {
-+      id = CODEC_ID_DVVIDEO;
-+      video = TRUE;
-+    }
-+  } else if (!strcmp (mimetype, "audio/x-dv")) {        /* ??? */
-+    id = CODEC_ID_DVAUDIO;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-h263")) {
-+    const gchar *h263version =
-+        gst_structure_get_string (structure, "h263version");
-+    if (h263version && !strcmp (h263version, "h263p"))
-+      id = CODEC_ID_H263P;
-+    else
-+      id = CODEC_ID_H263;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-intel-h263")) {
-+    id = CODEC_ID_H263I;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-h261")) {
-+    id = CODEC_ID_H261;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/mpeg")) {
-+    gboolean sys_strm;
-+    gint mpegversion;
-+
-+    if (gst_structure_get_boolean (structure, "systemstream", &sys_strm) &&
-+        gst_structure_get_int (structure, "mpegversion", &mpegversion) &&
-+        !sys_strm) {
-+      switch (mpegversion) {
-+        case 1:
-+          id = CODEC_ID_MPEG1VIDEO;
-+          break;
-+        case 2:
-+          id = CODEC_ID_MPEG2VIDEO;
-+          break;
-+        case 4:
-+          id = CODEC_ID_MPEG4;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      video = TRUE;
-+  } else if (!strcmp (mimetype, "image/jpeg")) {
-+    id = CODEC_ID_MJPEG;        /* A... B... */
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-jpeg-b")) {
-+    id = CODEC_ID_MJPEGB;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-wmv")) {
-+    gint wmvversion = 0;
-+
-+    if (gst_structure_get_int (structure, "wmvversion", &wmvversion)) {
-+      switch (wmvversion) {
-+        case 1:
-+          id = CODEC_ID_WMV1;
-+          break;
-+        case 2:
-+          id = CODEC_ID_WMV2;
-+          break;
-+        case 3:
-+        {
-+          guint32 fourcc;
-+
-+          /* WMV3 unless the fourcc exists and says otherwise */
-+          id = CODEC_ID_WMV3;
-+
-+          if (gst_structure_get_fourcc (structure, "format", &fourcc)) {
-+            if ((fourcc == GST_MAKE_FOURCC ('W', 'V', 'C', '1')) ||
-+                (fourcc == GST_MAKE_FOURCC ('W', 'M', 'V', 'A'))) {
-+              id = CODEC_ID_VC1;
-+            }
-+          }
-+        }
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      video = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-vorbis")) {
-+    id = CODEC_ID_VORBIS;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-qdm2")) {
-+    id = CODEC_ID_QDM2;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/mpeg")) {
-+    gint layer = 0;
-+    gint mpegversion = 0;
-+
-+    if (gst_structure_get_int (structure, "mpegversion", &mpegversion)) {
-+      switch (mpegversion) {
-+        case 2:                /* ffmpeg uses faad for both... */
-+        case 4:
-+          id = CODEC_ID_AAC;
-+          break;
-+        case 1:
-+          if (gst_structure_get_int (structure, "layer", &layer)) {
-+            switch (layer) {
-+              case 1:
-+                id = CODEC_ID_MP1;
-+                break;
-+              case 2:
-+                id = CODEC_ID_MP2;
-+                break;
-+              case 3:
-+                id = CODEC_ID_MP3;
-+                break;
-+            }
-+          }
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-musepack")) {
-+    gint streamversion = -1;
-+
-+    if (gst_structure_get_int (structure, "streamversion", &streamversion)) {
-+      if (streamversion == 7)
-+        id = CODEC_ID_MUSEPACK7;
-+    } else {
-+      id = CODEC_ID_MUSEPACK7;
-+    }
-+  } else if (!strcmp (mimetype, "audio/x-wma")) {
-+    gint wmaversion = 0;
-+
-+    if (gst_structure_get_int (structure, "wmaversion", &wmaversion)) {
-+      switch (wmaversion) {
-+        case 1:
-+          id = CODEC_ID_WMAV1;
-+          break;
-+        case 2:
-+          id = CODEC_ID_WMAV2;
-+          break;
-+        case 3:
-+          id = CODEC_ID_WMAPRO;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-wms")) {
-+    id = CODEC_ID_WMAVOICE;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-ac3")) {
-+    id = CODEC_ID_AC3;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-eac3")) {
-+    id = CODEC_ID_EAC3;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-vnd.sony.atrac3") ||
-+      !strcmp (mimetype, "audio/atrac3")) {
-+    id = CODEC_ID_ATRAC3;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-dts")) {
-+    id = CODEC_ID_DTS;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "application/x-ape")) {
-+    id = CODEC_ID_APE;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-msmpeg")) {
-+    gint msmpegversion = 0;
-+
-+    if (gst_structure_get_int (structure, "msmpegversion", &msmpegversion)) {
-+      switch (msmpegversion) {
-+        case 41:
-+          id = CODEC_ID_MSMPEG4V1;
-+          break;
-+        case 42:
-+          id = CODEC_ID_MSMPEG4V2;
-+          break;
-+        case 43:
-+          id = CODEC_ID_MSMPEG4V3;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-svq")) {
-+    gint svqversion = 0;
-+
-+    if (gst_structure_get_int (structure, "svqversion", &svqversion)) {
-+      switch (svqversion) {
-+        case 1:
-+          id = CODEC_ID_SVQ1;
-+          break;
-+        case 3:
-+          id = CODEC_ID_SVQ3;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-huffyuv")) {
-+    id = CODEC_ID_HUFFYUV;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-mace")) {
-+    gint maceversion = 0;
-+
-+    if (gst_structure_get_int (structure, "maceversion", &maceversion)) {
-+      switch (maceversion) {
-+        case 3:
-+          id = CODEC_ID_MACE3;
-+          break;
-+        case 6:
-+          id = CODEC_ID_MACE6;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-theora")) {
-+    id = CODEC_ID_THEORA;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-vp3")) {
-+    id = CODEC_ID_VP3;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-vp5")) {
-+    id = CODEC_ID_VP5;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-vp6")) {
-+    id = CODEC_ID_VP6;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-vp6-flash")) {
-+    id = CODEC_ID_VP6F;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-vp6-alpha")) {
-+    id = CODEC_ID_VP6A;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-vp8")) {
-+    id = CODEC_ID_VP8;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-flash-screen")) {
-+    id = CODEC_ID_FLASHSV;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-indeo")) {
-+    gint indeoversion = 0;
-+
-+    if (gst_structure_get_int (structure, "indeoversion", &indeoversion)) {
-+      switch (indeoversion) {
-+        case 5:
-+          id = CODEC_ID_INDEO5;
-+          break;
-+        case 3:
-+          id = CODEC_ID_INDEO3;
-+          break;
-+        case 2:
-+          id = CODEC_ID_INDEO2;
-+          break;
-+      }
-+      if (id != CODEC_ID_NONE)
-+        video = TRUE;
-+    }
-+  } else if (!strcmp (mimetype, "video/x-divx")) {
-+    gint divxversion = 0;
-+
-+    if (gst_structure_get_int (structure, "divxversion", &divxversion)) {
-+      switch (divxversion) {
-+        case 3:
-+          id = CODEC_ID_MSMPEG4V3;
-+          break;
-+        case 4:
-+        case 5:
-+          id = CODEC_ID_MPEG4;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-3ivx")) {
-+    id = CODEC_ID_MPEG4;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-xvid")) {
-+    id = CODEC_ID_MPEG4;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-ffv")) {
-+    gint ffvversion = 0;
-+
-+    if (gst_structure_get_int (structure, "ffvversion", &ffvversion) &&
-+        ffvversion == 1) {
-+      id = CODEC_ID_FFV1;
-+      video = TRUE;
-+    }
-+  } else if (!strcmp (mimetype, "audio/x-adpcm")) {
-+    const gchar *layout;
-+
-+    layout = gst_structure_get_string (structure, "layout");
-+    if (layout == NULL) {
-+      /* break */
-+    } else if (!strcmp (layout, "quicktime")) {
-+      id = CODEC_ID_ADPCM_IMA_QT;
-+    } else if (!strcmp (layout, "microsoft")) {
-+      id = CODEC_ID_ADPCM_MS;
-+    } else if (!strcmp (layout, "dvi")) {
-+      id = CODEC_ID_ADPCM_IMA_WAV;
-+    } else if (!strcmp (layout, "4xm")) {
-+      id = CODEC_ID_ADPCM_4XM;
-+    } else if (!strcmp (layout, "smjpeg")) {
-+      id = CODEC_ID_ADPCM_IMA_SMJPEG;
-+    } else if (!strcmp (layout, "dk3")) {
-+      id = CODEC_ID_ADPCM_IMA_DK3;
-+    } else if (!strcmp (layout, "dk4")) {
-+      id = CODEC_ID_ADPCM_IMA_DK4;
-+    } else if (!strcmp (layout, "westwood")) {
-+      id = CODEC_ID_ADPCM_IMA_WS;
-+    } else if (!strcmp (layout, "iss")) {
-+      id = CODEC_ID_ADPCM_IMA_ISS;
-+    } else if (!strcmp (layout, "xa")) {
-+      id = CODEC_ID_ADPCM_XA;
-+    } else if (!strcmp (layout, "adx")) {
-+      id = CODEC_ID_ADPCM_ADX;
-+    } else if (!strcmp (layout, "ea")) {
-+      id = CODEC_ID_ADPCM_EA;
-+    } else if (!strcmp (layout, "g726")) {
-+      id = CODEC_ID_ADPCM_G726;
-+    } else if (!strcmp (layout, "g721")) {
-+      id = CODEC_ID_ADPCM_G726;
-+    } else if (!strcmp (layout, "ct")) {
-+      id = CODEC_ID_ADPCM_CT;
-+    } else if (!strcmp (layout, "swf")) {
-+      id = CODEC_ID_ADPCM_SWF;
-+    } else if (!strcmp (layout, "yamaha")) {
-+      id = CODEC_ID_ADPCM_YAMAHA;
-+    } else if (!strcmp (layout, "sbpro2")) {
-+      id = CODEC_ID_ADPCM_SBPRO_2;
-+    } else if (!strcmp (layout, "sbpro3")) {
-+      id = CODEC_ID_ADPCM_SBPRO_3;
-+    } else if (!strcmp (layout, "sbpro4")) {
-+      id = CODEC_ID_ADPCM_SBPRO_4;
-+    }
-+    if (id != CODEC_ID_NONE)
-+      audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-4xm")) {
-+    id = CODEC_ID_4XM;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-dpcm")) {
-+    const gchar *layout;
-+
-+    layout = gst_structure_get_string (structure, "layout");
-+    if (!layout) {
-+      /* .. */
-+    } else if (!strcmp (layout, "roq")) {
-+      id = CODEC_ID_ROQ_DPCM;
-+    } else if (!strcmp (layout, "interplay")) {
-+      id = CODEC_ID_INTERPLAY_DPCM;
-+    } else if (!strcmp (layout, "xan")) {
-+      id = CODEC_ID_XAN_DPCM;
-+    } else if (!strcmp (layout, "sol")) {
-+      id = CODEC_ID_SOL_DPCM;
-+    }
-+    if (id != CODEC_ID_NONE)
-+      audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-flac")) {
-+    id = CODEC_ID_FLAC;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-shorten")) {
-+    id = CODEC_ID_SHORTEN;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-alac")) {
-+    id = CODEC_ID_ALAC;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-cinepak")) {
-+    id = CODEC_ID_CINEPAK;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-pn-realvideo")) {
-+    gint rmversion;
-+
-+    if (gst_structure_get_int (structure, "rmversion", &rmversion)) {
-+      switch (rmversion) {
-+        case 1:
-+          id = CODEC_ID_RV10;
-+          break;
-+        case 2:
-+          id = CODEC_ID_RV20;
-+          break;
-+        case 3:
-+          id = CODEC_ID_RV30;
-+          break;
-+        case 4:
-+          id = CODEC_ID_RV40;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      video = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-sipro")) {
-+    id = CODEC_ID_SIPR;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/x-pn-realaudio")) {
-+    gint raversion;
-+
-+    if (gst_structure_get_int (structure, "raversion", &raversion)) {
-+      switch (raversion) {
-+        case 1:
-+          id = CODEC_ID_RA_144;
-+          break;
-+        case 2:
-+          id = CODEC_ID_RA_288;
-+          break;
-+        case 8:
-+          id = CODEC_ID_COOK;
-+          break;
-+      }
-+    }
-+    if (id != CODEC_ID_NONE)
-+      audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-rle")) {
-+    const gchar *layout;
-+
-+    if ((layout = gst_structure_get_string (structure, "layout"))) {
-+      if (!strcmp (layout, "microsoft")) {
-+        id = CODEC_ID_MSRLE;
-+        video = TRUE;
-+      }
-+    }
-+  } else if (!strcmp (mimetype, "video/x-xan")) {
-+    gint wcversion = 0;
-+
-+    if ((gst_structure_get_int (structure, "wcversion", &wcversion))) {
-+      switch (wcversion) {
-+        case 3:
-+          id = CODEC_ID_XAN_WC3;
-+          video = TRUE;
-+          break;
-+        case 4:
-+          id = CODEC_ID_XAN_WC4;
-+          video = TRUE;
-+          break;
-+        default:
-+          break;
-+      }
-+    }
-+  } else if (!strcmp (mimetype, "audio/AMR")) {
-+    audio = TRUE;
-+    id = CODEC_ID_AMR_NB;
-+  } else if (!strcmp (mimetype, "audio/AMR-WB")) {
-+    id = CODEC_ID_AMR_WB;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "audio/qcelp")) {
-+    id = CODEC_ID_QCELP;
-+    audio = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-h264")) {
-+    id = CODEC_ID_H264;
-+    video = TRUE;
-+  } else if (!strcmp (mimetype, "video/x-flash-video")) {
-+    gint flvversion = 0;
-+
-+    if ((gst_structure_get_int (structure, "flvversion", &flvversion))) {
-+      switch (flvversion) {
-+        case 1:
-+          id = CODEC_ID_FLV1;
-+          video = TRUE;
-+          break;
-+        default:
-+          break;
-+      }
-+    }
-+
-+  } else if (!strcmp (mimetype, "audio/x-nellymoser")) {
-+    id = CODEC_ID_NELLYMOSER;
-+    audio = TRUE;
-+  } else if (!strncmp (mimetype, "audio/x-gst_ff-", 15)) {
-+    gchar ext[16];
-+    AVCodec *codec;
-+
-+    if (strlen (mimetype) <= 30 &&
-+        sscanf (mimetype, "audio/x-gst_ff-%s", ext) == 1) {
-+      if ((codec = avcodec_find_decoder_by_name (ext)) ||
-+          (codec = avcodec_find_encoder_by_name (ext))) {
-+        id = codec->id;
-+        audio = TRUE;
-+      }
-+    }
-+  } else if (!strncmp (mimetype, "video/x-gst_ff-", 15)) {
-+    gchar ext[16];
-+    AVCodec *codec;
-+
-+    if (strlen (mimetype) <= 30 &&
-+        sscanf (mimetype, "video/x-gst_ff-%s", ext) == 1) {
-+      if ((codec = avcodec_find_decoder_by_name (ext)) ||
-+          (codec = avcodec_find_encoder_by_name (ext))) {
-+        id = codec->id;
-+        video = TRUE;
-+      }
-+    }
-+  }
-+
-+  if (context != NULL) {
-+    if (video == TRUE) {
-+      context->codec_type = AVMEDIA_TYPE_VIDEO;
-+    } else if (audio == TRUE) {
-+      context->codec_type = AVMEDIA_TYPE_AUDIO;
-+    } else {
-+      context->codec_type = AVMEDIA_TYPE_UNKNOWN;
-+    }
-+    context->codec_id = id;
-+    gst_ffmpeg_caps_with_codecid (id, context->codec_type, caps, context);
-+  }
-+
-+  if (id != CODEC_ID_NONE) {
-+    GST_DEBUG ("The id=%d belongs to the caps %" GST_PTR_FORMAT, id, caps);
-+  } else {
-+    GST_WARNING ("Couldn't figure out the id for caps %" GST_PTR_FORMAT, caps);
-+  }
-+
-+  return id;
-+}
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcodecmap.c.rej gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcodecmap.c.rej
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegcodecmap.c.rej	1970-01-01 01:00:00.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegcodecmap.c.rej	2014-08-08 15:31:06.055868246 +0200
-@@ -0,0 +1,12 @@
-+--- ext/ffmpeg/gstffmpegcodecmap.c
-++++ ext/ffmpeg/gstffmpegcodecmap.c
-+@@ -1884,9 +1842,6 @@
-+             gst_ff_vid_caps_new (context, codec_id, encode, "video/x-raw-rgb",
-+             "bpp", G_TYPE_INT, bpp, "depth", G_TYPE_INT, depth, "endianness",
-+             G_TYPE_INT, endianness, NULL);
-+-        if (caps && context) {
-+-          gst_ffmpeg_set_palette (caps, context);
-+-        }
-+       }
-+     } else if (fmt) {
-+       caps = gst_ff_vid_caps_new (context, codec_id, encode, "video/x-raw-yuv",
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdec.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdec.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdec.c	2014-08-08 14:46:31.462772351 +0200
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdec.c	2014-08-08 15:32:18.608870847 +0200
-@@ -88,7 +88,6 @@
-       gint depth;
-     } audio;
-   } format;
--  gboolean waiting_for_key;
-   gboolean discont;
-   gboolean clear_ts;
- 
-@@ -438,7 +437,6 @@
-   ffmpegdec->pcache = NULL;
-   ffmpegdec->par = NULL;
-   ffmpegdec->opened = FALSE;
--  ffmpegdec->waiting_for_key = TRUE;
-   ffmpegdec->skip_frame = ffmpegdec->lowres = 0;
-   ffmpegdec->direct_rendering = DEFAULT_DIRECT_RENDERING;
-   ffmpegdec->do_padding = DEFAULT_DO_PADDING;
-@@ -608,11 +606,6 @@
-     gst_ffmpeg_avcodec_close (ffmpegdec->context);
-   ffmpegdec->opened = FALSE;
- 
--  if (ffmpegdec->context->palctrl) {
--    av_free (ffmpegdec->context->palctrl);
--    ffmpegdec->context->palctrl = NULL;
--  }
--
-   if (ffmpegdec->context->extradata) {
-     av_free (ffmpegdec->context->extradata);
-     ffmpegdec->context->extradata = NULL;
-@@ -864,7 +857,7 @@
- 
-   /* workaround encoder bugs */
-   ffmpegdec->context->workaround_bugs |= FF_BUG_AUTODETECT;
--  ffmpegdec->context->error_recognition = 1;
-+  ffmpegdec->context->err_recognition = 1;
- 
-   /* for slow cpus */
-   ffmpegdec->context->lowres = ffmpegdec->lowres;
-@@ -944,7 +937,7 @@
-   fsize = gst_ffmpeg_avpicture_get_size (ffmpegdec->context->pix_fmt,
-       width, height);
- 
--  if (!ffmpegdec->context->palctrl && ffmpegdec->can_allocate_aligned) {
-+  if (ffmpegdec->can_allocate_aligned) {
-     GST_LOG_OBJECT (ffmpegdec, "calling pad_alloc");
-     /* no pallete, we can use the buffer size to alloc */
-     ret = gst_pad_alloc_buffer_and_set_caps (ffmpegdec->srcpad,
-@@ -1083,7 +1076,6 @@
-   /* tell ffmpeg we own this buffer, tranfer the ref we have on the buffer to
-    * the opaque data. */
-   picture->type = FF_BUFFER_TYPE_USER;
--  picture->age = 256 * 256 * 256 * 64;
-   picture->opaque = buf;
- 
- #ifdef EXTRA_REF
-@@ -1414,10 +1406,6 @@
-   } else {
-     if (diff >= 0) {
-       /* we're too slow, try to speed up */
--      if (ffmpegdec->waiting_for_key) {
--        /* we were waiting for a keyframe, that's ok */
--        goto skipping;
--      }
-       /* switch to skip_frame mode */
-       goto skip_frame;
-     }
-@@ -1427,11 +1415,6 @@
-   ffmpegdec->processed++;
-   return TRUE;
- 
--skipping:
--  {
--    res = FALSE;
--    goto drop_qos;
--  }
- normal_mode:
-   {
-     if (ffmpegdec->context->skip_frame != AVDISCARD_DEFAULT) {
-@@ -1528,43 +1511,6 @@
- }
- 
- 
--/* figure out if the current picture is a keyframe, return TRUE if that is
-- * the case. */
--static gboolean
--check_keyframe (GstFFMpegDec * ffmpegdec)
--{
--  GstFFMpegDecClass *oclass;
--  gboolean is_itype = FALSE;
--  gboolean is_reference = FALSE;
--  gboolean iskeyframe;
--
--  /* figure out if we are dealing with a keyframe */
--  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
--
--  /* remember that we have B frames, we need this for the DTS -> PTS conversion
--   * code */
--  if (!ffmpegdec->has_b_frames && ffmpegdec->picture->pict_type == FF_B_TYPE) {
--    GST_DEBUG_OBJECT (ffmpegdec, "we have B frames");
--    ffmpegdec->has_b_frames = TRUE;
--  }
--
--  is_itype = (ffmpegdec->picture->pict_type == FF_I_TYPE);
--  is_reference = (ffmpegdec->picture->reference == 1);
--
--  iskeyframe = (is_itype || is_reference || ffmpegdec->picture->key_frame)
--      || (oclass->in_plugin->id == CODEC_ID_INDEO3)
--      || (oclass->in_plugin->id == CODEC_ID_MSZH)
--      || (oclass->in_plugin->id == CODEC_ID_ZLIB)
--      || (oclass->in_plugin->id == CODEC_ID_VP3)
--      || (oclass->in_plugin->id == CODEC_ID_HUFFYUV);
--
--  GST_LOG_OBJECT (ffmpegdec,
--      "current picture: type: %d, is_keyframe:%d, is_itype:%d, is_reference:%d",
--      ffmpegdec->picture->pict_type, iskeyframe, is_itype, is_reference);
--
--  return iskeyframe;
--}
--
- /* get an outbuf buffer with the current picture */
- static GstFlowReturn
- get_output_buffer (GstFFMpegDec * ffmpegdec, GstBuffer ** outbuf)
-@@ -1694,7 +1640,6 @@
- {
-   gint len = -1;
-   gint have_data;
--  gboolean iskeyframe;
-   gboolean mode_switch;
-   gboolean decode;
-   gint skip_frame = AVDISCARD_DEFAULT;
-@@ -1809,7 +1754,6 @@
-     gst_ffmpegdec_negotiate (ffmpegdec, TRUE);
-   }
- 
--
-   /* Whether a frame is interlaced or not is unknown at the time of
-      buffer allocation, so caps on the buffer in opaque will have
-      the previous frame's interlaced flag set. So if interlacedness
-@@ -1831,10 +1775,6 @@
-     }
-   }
- 
--  /* check if we are dealing with a keyframe here, this will also check if we
--   * are dealing with B frames. */
--  iskeyframe = check_keyframe (ffmpegdec);
--
-   /* check that the timestamps go upwards */
-   if (ffmpegdec->last_out != -1 && ffmpegdec->last_out > out_pts) {
-     /* timestamps go backwards, this means frames were reordered and we must
-@@ -1865,7 +1805,7 @@
-    * timestamps */
-   if (!ffmpegdec->reordered_in && ffmpegdec->reordered_out) {
-     /* PTS and DTS are the same for keyframes */
--    if (!iskeyframe && ffmpegdec->next_out != -1) {
-+    if (ffmpegdec->next_out != -1) {
-       /* interpolate all timestamps except for keyframes, FIXME, this is
-        * wrong when QoS is active. */
-       GST_DEBUG_OBJECT (ffmpegdec, "interpolate timestamps");
-@@ -1874,16 +1814,6 @@
-     }
-   }
- 
--  /* when we're waiting for a keyframe, see if we have one or drop the current
--   * non-keyframe */
--  if (G_UNLIKELY (ffmpegdec->waiting_for_key)) {
--    if (G_LIKELY (!iskeyframe))
--      goto drop_non_keyframe;
--
--    /* we have a keyframe, we can stop waiting for one */
--    ffmpegdec->waiting_for_key = FALSE;
--  }
--
-   /* get a handle to the output buffer */
-   *ret = get_output_buffer (ffmpegdec, outbuf);
-   if (G_UNLIKELY (*ret != GST_FLOW_OK))
-@@ -2000,20 +1930,11 @@
-   else
-     ffmpegdec->next_out = -1;
- 
--  /* palette is not part of raw video frame in gst and the size
--   * of the outgoing buffer needs to be adjusted accordingly */
--  if (ffmpegdec->context->palctrl != NULL)
--    GST_BUFFER_SIZE (*outbuf) -= AVPALETTE_SIZE;
--
-   /* now see if we need to clip the buffer against the segment boundaries. */
-   if (G_UNLIKELY (!clip_video_buffer (ffmpegdec, *outbuf, out_timestamp,
-               out_duration)))
-     goto clipped;
- 
--  /* mark as keyframe or delta unit */
--  if (!iskeyframe)
--    GST_BUFFER_FLAG_SET (*outbuf, GST_BUFFER_FLAG_DELTA_UNIT);
--
-   if (ffmpegdec->picture->top_field_first)
-     GST_BUFFER_FLAG_SET (*outbuf, GST_VIDEO_BUFFER_TFF);
- 
-@@ -2024,11 +1945,6 @@
-   return len;
- 
-   /* special cases */
--drop_non_keyframe:
--  {
--    GST_WARNING_OBJECT (ffmpegdec, "Dropping non-keyframe (seek/init)");
--    goto beach;
--  }
- no_output:
-   {
-     GST_DEBUG_OBJECT (ffmpegdec, "no output buffer");
-@@ -2422,7 +2338,6 @@
-       gst_ffmpegdec_reset_ts (ffmpegdec);
-       gst_ffmpegdec_reset_qos (ffmpegdec);
-       gst_ffmpegdec_flush_pcache (ffmpegdec);
--      ffmpegdec->waiting_for_key = TRUE;
-       gst_segment_init (&ffmpegdec->segment, GST_FORMAT_TIME);
-       clear_queued (ffmpegdec);
-       break;
-@@ -2560,17 +2475,6 @@
- 
-   oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
- 
--  /* do early keyframe check pretty bad to rely on the keyframe flag in the
--   * source for this as it might not even be parsed (UDP/file/..).  */
--  if (G_UNLIKELY (ffmpegdec->waiting_for_key)) {
--    GST_DEBUG_OBJECT (ffmpegdec, "waiting for keyframe");
--    if (GST_BUFFER_FLAG_IS_SET (inbuf, GST_BUFFER_FLAG_DELTA_UNIT) &&
--        oclass->in_plugin->type != AVMEDIA_TYPE_AUDIO)
--      goto skip_keyframe;
--
--    GST_DEBUG_OBJECT (ffmpegdec, "got keyframe");
--    ffmpegdec->waiting_for_key = FALSE;
--  }
-   /* parse cache joining. If there is cached data */
-   if (ffmpegdec->pcache) {
-     /* join with previous data */
-@@ -2805,12 +2709,6 @@
-     gst_buffer_unref (inbuf);
-     return GST_FLOW_NOT_NEGOTIATED;
-   }
--skip_keyframe:
--  {
--    GST_DEBUG_OBJECT (ffmpegdec, "skipping non keyframe");
--    gst_buffer_unref (inbuf);
--    return GST_FLOW_OK;
--  }
- }
- 
- static GstStateChangeReturn
-@@ -2936,7 +2834,7 @@
-     gchar *plugin_name;
- 
-     /* only decoders */
--    if (!in_plugin->decode) {
-+    if (!av_codec_is_decoder (in_plugin)) {
-       goto next;
-     }
- 
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdec.c.orig gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdec.c.orig
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdec.c.orig	1970-01-01 01:00:00.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdec.c.orig	2014-08-08 15:31:06.057868246 +0200
-@@ -0,0 +1,2973 @@
-+/* GStreamer
-+ * Copyright (C) <1999> Erik Walthinsen <omega at cse.ogi.edu>
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Library General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Library General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Library General Public
-+ * License along with this library; if not, write to the
-+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+ * Boston, MA 02111-1307, USA.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
-+#include <assert.h>
-+#include <string.h>
-+
-+#ifdef HAVE_FFMPEG_UNINSTALLED
-+#include <avcodec.h>
-+#else
-+#include <libavcodec/avcodec.h>
-+#endif
-+
-+#include <gst/gst.h>
-+#include <gst/video/video.h>
-+
-+#include "gstffmpeg.h"
-+#include "gstffmpegcodecmap.h"
-+#include "gstffmpegutils.h"
-+
-+/* define to enable alternative buffer refcounting algorithm */
-+#undef EXTRA_REF
-+
-+typedef struct _GstFFMpegDec GstFFMpegDec;
-+
-+#define MAX_TS_MASK 0xff
-+
-+/* for each incomming buffer we keep all timing info in a structure like this.
-+ * We keep a circular array of these structures around to store the timing info.
-+ * The index in the array is what we pass as opaque data (to pictures) and
-+ * pts (to parsers) so that ffmpeg can remember them for us. */
-+typedef struct
-+{
-+  gint idx;
-+  GstClockTime timestamp;
-+  GstClockTime duration;
-+  gint64 offset;
-+} GstTSInfo;
-+
-+struct _GstFFMpegDec
-+{
-+  GstElement element;
-+
-+  /* We need to keep track of our pads, so we do so here. */
-+  GstPad *srcpad;
-+  GstPad *sinkpad;
-+
-+  /* decoding */
-+  AVCodecContext *context;
-+  AVFrame *picture;
-+  gboolean opened;
-+  union
-+  {
-+    struct
-+    {
-+      gint width, height;
-+      gint clip_width, clip_height;
-+      gint par_n, par_d;
-+      gint fps_n, fps_d;
-+      gint old_fps_n, old_fps_d;
-+      gboolean interlaced;
-+
-+      enum PixelFormat pix_fmt;
-+    } video;
-+    struct
-+    {
-+      gint channels;
-+      gint samplerate;
-+      gint depth;
-+    } audio;
-+  } format;
-+  gboolean discont;
-+  gboolean clear_ts;
-+
-+  /* for tracking DTS/PTS */
-+  gboolean has_b_frames;
-+  gboolean reordered_in;
-+  GstClockTime last_in;
-+  GstClockTime last_diff;
-+  guint last_frames;
-+  gboolean reordered_out;
-+  GstClockTime last_out;
-+  GstClockTime next_out;
-+
-+  /* parsing */
-+  gboolean turnoff_parser;      /* used for turning off aac raw parsing
-+                                 * See bug #566250 */
-+  AVCodecParserContext *pctx;
-+  GstBuffer *pcache;
-+  guint8 *padded;
-+  guint padded_size;
-+
-+  GValue *par;                  /* pixel aspect ratio of incoming data */
-+  gboolean current_dr;          /* if direct rendering is enabled */
-+  gboolean extra_ref;           /* keep extra ref around in get/release */
-+
-+  /* some properties */
-+  enum AVDiscard skip_frame;
-+  gint lowres;
-+  gboolean direct_rendering;
-+  gboolean do_padding;
-+  gboolean debug_mv;
-+  gboolean crop;
-+  int max_threads;
-+
-+  /* QoS stuff *//* with LOCK */
-+  gdouble proportion;
-+  GstClockTime earliest_time;
-+  gint64 processed;
-+  gint64 dropped;
-+
-+  /* clipping segment */
-+  GstSegment segment;
-+
-+  gboolean is_realvideo;
-+
-+  GstTSInfo ts_info[MAX_TS_MASK + 1];
-+  gint ts_idx;
-+
-+  /* reverse playback queue */
-+  GList *queued;
-+
-+  /* Can downstream allocate 16bytes aligned data. */
-+  gboolean can_allocate_aligned;
-+};
-+
-+typedef struct _GstFFMpegDecClass GstFFMpegDecClass;
-+
-+struct _GstFFMpegDecClass
-+{
-+  GstElementClass parent_class;
-+
-+  AVCodec *in_plugin;
-+  GstPadTemplate *srctempl, *sinktempl;
-+};
-+
-+#define GST_TS_INFO_NONE &ts_info_none
-+static const GstTSInfo ts_info_none = { -1, -1, -1, -1 };
-+
-+static const GstTSInfo *
-+gst_ts_info_store (GstFFMpegDec * dec, GstClockTime timestamp,
-+    GstClockTime duration, gint64 offset)
-+{
-+  gint idx = dec->ts_idx;
-+  dec->ts_info[idx].idx = idx;
-+  dec->ts_info[idx].timestamp = timestamp;
-+  dec->ts_info[idx].duration = duration;
-+  dec->ts_info[idx].offset = offset;
-+  dec->ts_idx = (idx + 1) & MAX_TS_MASK;
-+
-+  return &dec->ts_info[idx];
-+}
-+
-+static const GstTSInfo *
-+gst_ts_info_get (GstFFMpegDec * dec, gint idx)
-+{
-+  if (G_UNLIKELY (idx < 0 || idx > MAX_TS_MASK))
-+    return GST_TS_INFO_NONE;
-+
-+  return &dec->ts_info[idx];
-+}
-+
-+#define GST_TYPE_FFMPEGDEC \
-+  (gst_ffmpegdec_get_type())
-+#define GST_FFMPEGDEC(obj) \
-+  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FFMPEGDEC,GstFFMpegDec))
-+#define GST_FFMPEGDEC_CLASS(klass) \
-+  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FFMPEGDEC,GstFFMpegDecClass))
-+#define GST_IS_FFMPEGDEC(obj) \
-+  (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FFMPEGDEC))
-+#define GST_IS_FFMPEGDEC_CLASS(klass) \
-+  (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FFMPEGDEC))
-+
-+#define DEFAULT_LOWRES			0
-+#define DEFAULT_SKIPFRAME		0
-+#define DEFAULT_DIRECT_RENDERING	TRUE
-+#define DEFAULT_DO_PADDING		TRUE
-+#define DEFAULT_DEBUG_MV		FALSE
-+#define DEFAULT_CROP			TRUE
-+#define DEFAULT_MAX_THREADS		1
-+
-+enum
-+{
-+  PROP_0,
-+  PROP_LOWRES,
-+  PROP_SKIPFRAME,
-+  PROP_DIRECT_RENDERING,
-+  PROP_DO_PADDING,
-+  PROP_DEBUG_MV,
-+  PROP_CROP,
-+  PROP_MAX_THREADS,
-+  PROP_LAST
-+};
-+
-+/* A number of function prototypes are given so we can refer to them later. */
-+static void gst_ffmpegdec_base_init (GstFFMpegDecClass * klass);
-+static void gst_ffmpegdec_class_init (GstFFMpegDecClass * klass);
-+static void gst_ffmpegdec_init (GstFFMpegDec * ffmpegdec);
-+static void gst_ffmpegdec_finalize (GObject * object);
-+
-+static gboolean gst_ffmpegdec_query (GstPad * pad, GstQuery * query);
-+static gboolean gst_ffmpegdec_src_event (GstPad * pad, GstEvent * event);
-+
-+static gboolean gst_ffmpegdec_setcaps (GstPad * pad, GstCaps * caps);
-+static gboolean gst_ffmpegdec_sink_event (GstPad * pad, GstEvent * event);
-+static GstFlowReturn gst_ffmpegdec_chain (GstPad * pad, GstBuffer * buf);
-+
-+static GstStateChangeReturn gst_ffmpegdec_change_state (GstElement * element,
-+    GstStateChange transition);
-+
-+static void gst_ffmpegdec_set_property (GObject * object,
-+    guint prop_id, const GValue * value, GParamSpec * pspec);
-+static void gst_ffmpegdec_get_property (GObject * object,
-+    guint prop_id, GValue * value, GParamSpec * pspec);
-+
-+static gboolean gst_ffmpegdec_negotiate (GstFFMpegDec * ffmpegdec,
-+    gboolean force);
-+
-+/* some sort of bufferpool handling, but different */
-+static int gst_ffmpegdec_get_buffer (AVCodecContext * context,
-+    AVFrame * picture);
-+static void gst_ffmpegdec_release_buffer (AVCodecContext * context,
-+    AVFrame * picture);
-+
-+static void gst_ffmpegdec_drain (GstFFMpegDec * ffmpegdec);
-+
-+#define GST_FFDEC_PARAMS_QDATA g_quark_from_static_string("ffdec-params")
-+
-+static GstElementClass *parent_class = NULL;
-+
-+#define GST_FFMPEGDEC_TYPE_LOWRES (gst_ffmpegdec_lowres_get_type())
-+static GType
-+gst_ffmpegdec_lowres_get_type (void)
-+{
-+  static GType ffmpegdec_lowres_type = 0;
-+
-+  if (!ffmpegdec_lowres_type) {
-+    static const GEnumValue ffmpegdec_lowres[] = {
-+      {0, "0", "full"},
-+      {1, "1", "1/2-size"},
-+      {2, "2", "1/4-size"},
-+      {0, NULL, NULL},
-+    };
-+
-+    ffmpegdec_lowres_type =
-+        g_enum_register_static ("GstFFMpegDecLowres", ffmpegdec_lowres);
-+  }
-+
-+  return ffmpegdec_lowres_type;
-+}
-+
-+#define GST_FFMPEGDEC_TYPE_SKIPFRAME (gst_ffmpegdec_skipframe_get_type())
-+static GType
-+gst_ffmpegdec_skipframe_get_type (void)
-+{
-+  static GType ffmpegdec_skipframe_type = 0;
-+
-+  if (!ffmpegdec_skipframe_type) {
-+    static const GEnumValue ffmpegdec_skipframe[] = {
-+      {0, "0", "Skip nothing"},
-+      {1, "1", "Skip B-frames"},
-+      {2, "2", "Skip IDCT/Dequantization"},
-+      {5, "5", "Skip everything"},
-+      {0, NULL, NULL},
-+    };
-+
-+    ffmpegdec_skipframe_type =
-+        g_enum_register_static ("GstFFMpegDecSkipFrame", ffmpegdec_skipframe);
-+  }
-+
-+  return ffmpegdec_skipframe_type;
-+}
-+
-+static void
-+gst_ffmpegdec_base_init (GstFFMpegDecClass * klass)
-+{
-+  GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
-+  GstPadTemplate *sinktempl, *srctempl;
-+  GstCaps *sinkcaps, *srccaps;
-+  AVCodec *in_plugin;
-+  gchar *longname, *classification, *description;
-+
-+  in_plugin =
-+      (AVCodec *) g_type_get_qdata (G_OBJECT_CLASS_TYPE (klass),
-+      GST_FFDEC_PARAMS_QDATA);
-+  g_assert (in_plugin != NULL);
-+
-+  /* construct the element details struct */
-+  longname = g_strdup_printf ("FFmpeg %s decoder", in_plugin->long_name);
-+  classification = g_strdup_printf ("Codec/Decoder/%s",
-+      (in_plugin->type == AVMEDIA_TYPE_VIDEO) ? "Video" : "Audio");
-+  description = g_strdup_printf ("FFmpeg %s decoder", in_plugin->name);
-+  gst_element_class_set_details_simple (element_class, longname, classification,
-+      description,
-+      "Wim Taymans <wim.taymans at gmail.com>, "
-+      "Ronald Bultje <rbultje at ronald.bitfreak.net>, "
-+      "Edward Hervey <bilboed at bilboed.com>");
-+  g_free (longname);
-+  g_free (classification);
-+  g_free (description);
-+
-+  /* get the caps */
-+  sinkcaps = gst_ffmpeg_codecid_to_caps (in_plugin->id, NULL, FALSE);
-+  if (!sinkcaps) {
-+    GST_DEBUG ("Couldn't get sink caps for decoder '%s'", in_plugin->name);
-+    sinkcaps = gst_caps_from_string ("unknown/unknown");
-+  }
-+  if (in_plugin->type == AVMEDIA_TYPE_VIDEO) {
-+    srccaps = gst_caps_from_string ("video/x-raw-rgb; video/x-raw-yuv");
-+  } else {
-+    srccaps = gst_ffmpeg_codectype_to_audio_caps (NULL,
-+        in_plugin->id, FALSE, in_plugin);
-+  }
-+  if (!srccaps) {
-+    GST_DEBUG ("Couldn't get source caps for decoder '%s'", in_plugin->name);
-+    srccaps = gst_caps_from_string ("unknown/unknown");
-+  }
-+
-+  /* pad templates */
-+  sinktempl = gst_pad_template_new ("sink", GST_PAD_SINK,
-+      GST_PAD_ALWAYS, sinkcaps);
-+  srctempl = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, srccaps);
-+
-+  gst_element_class_add_pad_template (element_class, srctempl);
-+  gst_element_class_add_pad_template (element_class, sinktempl);
-+
-+  klass->in_plugin = in_plugin;
-+  klass->srctempl = srctempl;
-+  klass->sinktempl = sinktempl;
-+}
-+
-+static void
-+gst_ffmpegdec_class_init (GstFFMpegDecClass * klass)
-+{
-+  GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
-+  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
-+
-+  parent_class = g_type_class_peek_parent (klass);
-+
-+  gobject_class->finalize = gst_ffmpegdec_finalize;
-+
-+  gobject_class->set_property = gst_ffmpegdec_set_property;
-+  gobject_class->get_property = gst_ffmpegdec_get_property;
-+
-+  if (klass->in_plugin->type == AVMEDIA_TYPE_VIDEO) {
-+    int caps;
-+
-+    g_object_class_install_property (gobject_class, PROP_SKIPFRAME,
-+        g_param_spec_enum ("skip-frame", "Skip frames",
-+            "Which types of frames to skip during decoding",
-+            GST_FFMPEGDEC_TYPE_SKIPFRAME, 0,
-+            G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+    g_object_class_install_property (gobject_class, PROP_LOWRES,
-+        g_param_spec_enum ("lowres", "Low resolution",
-+            "At which resolution to decode images", GST_FFMPEGDEC_TYPE_LOWRES,
-+            0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+    g_object_class_install_property (gobject_class, PROP_DIRECT_RENDERING,
-+        g_param_spec_boolean ("direct-rendering", "Direct Rendering",
-+            "Enable direct rendering", DEFAULT_DIRECT_RENDERING,
-+            G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+    g_object_class_install_property (gobject_class, PROP_DO_PADDING,
-+        g_param_spec_boolean ("do-padding", "Do Padding",
-+            "Add 0 padding before decoding data", DEFAULT_DO_PADDING,
-+            G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+    g_object_class_install_property (gobject_class, PROP_DEBUG_MV,
-+        g_param_spec_boolean ("debug-mv", "Debug motion vectors",
-+            "Whether ffmpeg should print motion vectors on top of the image",
-+            DEFAULT_DEBUG_MV, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+#if 0
-+    g_object_class_install_property (gobject_class, PROP_CROP,
-+        g_param_spec_boolean ("crop", "Crop",
-+            "Crop images to the display region",
-+            DEFAULT_CROP, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+#endif
-+
-+    caps = klass->in_plugin->capabilities;
-+    if (caps & (CODEC_CAP_FRAME_THREADS | CODEC_CAP_SLICE_THREADS)) {
-+      g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_MAX_THREADS,
-+          g_param_spec_int ("max-threads", "Maximum decode threads",
-+              "Maximum number of worker threads to spawn. (0 = auto)",
-+              0, G_MAXINT, DEFAULT_MAX_THREADS,
-+              G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+    }
-+  }
-+
-+  gstelement_class->change_state = gst_ffmpegdec_change_state;
-+}
-+
-+static void
-+gst_ffmpegdec_init (GstFFMpegDec * ffmpegdec)
-+{
-+  GstFFMpegDecClass *oclass;
-+
-+  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+
-+  /* setup pads */
-+  ffmpegdec->sinkpad = gst_pad_new_from_template (oclass->sinktempl, "sink");
-+  gst_pad_set_setcaps_function (ffmpegdec->sinkpad,
-+      GST_DEBUG_FUNCPTR (gst_ffmpegdec_setcaps));
-+  gst_pad_set_event_function (ffmpegdec->sinkpad,
-+      GST_DEBUG_FUNCPTR (gst_ffmpegdec_sink_event));
-+  gst_pad_set_chain_function (ffmpegdec->sinkpad,
-+      GST_DEBUG_FUNCPTR (gst_ffmpegdec_chain));
-+  gst_element_add_pad (GST_ELEMENT (ffmpegdec), ffmpegdec->sinkpad);
-+
-+  ffmpegdec->srcpad = gst_pad_new_from_template (oclass->srctempl, "src");
-+  gst_pad_use_fixed_caps (ffmpegdec->srcpad);
-+  gst_pad_set_event_function (ffmpegdec->srcpad,
-+      GST_DEBUG_FUNCPTR (gst_ffmpegdec_src_event));
-+  gst_pad_set_query_function (ffmpegdec->srcpad,
-+      GST_DEBUG_FUNCPTR (gst_ffmpegdec_query));
-+  gst_element_add_pad (GST_ELEMENT (ffmpegdec), ffmpegdec->srcpad);
-+
-+  /* some ffmpeg data */
-+  ffmpegdec->context = avcodec_alloc_context ();
-+  ffmpegdec->picture = avcodec_alloc_frame ();
-+  ffmpegdec->pctx = NULL;
-+  ffmpegdec->pcache = NULL;
-+  ffmpegdec->par = NULL;
-+  ffmpegdec->opened = FALSE;
-+  ffmpegdec->skip_frame = ffmpegdec->lowres = 0;
-+  ffmpegdec->direct_rendering = DEFAULT_DIRECT_RENDERING;
-+  ffmpegdec->do_padding = DEFAULT_DO_PADDING;
-+  ffmpegdec->debug_mv = DEFAULT_DEBUG_MV;
-+  ffmpegdec->crop = DEFAULT_CROP;
-+  ffmpegdec->max_threads = DEFAULT_MAX_THREADS;
-+
-+  ffmpegdec->format.video.par_n = -1;
-+  ffmpegdec->format.video.fps_n = -1;
-+  ffmpegdec->format.video.old_fps_n = -1;
-+  gst_segment_init (&ffmpegdec->segment, GST_FORMAT_TIME);
-+
-+  /* We initially assume downstream can allocate 16 bytes aligned buffers */
-+  ffmpegdec->can_allocate_aligned = TRUE;
-+}
-+
-+static void
-+gst_ffmpegdec_finalize (GObject * object)
-+{
-+  GstFFMpegDec *ffmpegdec = (GstFFMpegDec *) object;
-+
-+  if (ffmpegdec->context != NULL) {
-+    av_free (ffmpegdec->context);
-+    ffmpegdec->context = NULL;
-+  }
-+
-+  if (ffmpegdec->picture != NULL) {
-+    av_free (ffmpegdec->picture);
-+    ffmpegdec->picture = NULL;
-+  }
-+
-+  G_OBJECT_CLASS (parent_class)->finalize (object);
-+}
-+
-+static gboolean
-+gst_ffmpegdec_query (GstPad * pad, GstQuery * query)
-+{
-+  GstFFMpegDec *ffmpegdec;
-+  GstPad *peer;
-+  gboolean res;
-+
-+  ffmpegdec = (GstFFMpegDec *) gst_pad_get_parent (pad);
-+
-+  res = FALSE;
-+
-+  if ((peer = gst_pad_get_peer (ffmpegdec->sinkpad))) {
-+    /* just forward to peer */
-+    res = gst_pad_query (peer, query);
-+    gst_object_unref (peer);
-+  }
-+#if 0
-+  {
-+    GstFormat bfmt;
-+
-+    bfmt = GST_FORMAT_BYTES;
-+
-+    /* ok, do bitrate calc... */
-+    if ((type != GST_QUERY_POSITION && type != GST_QUERY_TOTAL) ||
-+        *fmt != GST_FORMAT_TIME || ffmpegdec->context->bit_rate == 0 ||
-+        !gst_pad_query (peer, type, &bfmt, value))
-+      return FALSE;
-+
-+    if (ffmpegdec->pcache && type == GST_QUERY_POSITION)
-+      *value -= GST_BUFFER_SIZE (ffmpegdec->pcache);
-+    *value *= GST_SECOND / ffmpegdec->context->bit_rate;
-+  }
-+#endif
-+
-+  gst_object_unref (ffmpegdec);
-+
-+  return res;
-+}
-+
-+static void
-+gst_ffmpegdec_reset_ts (GstFFMpegDec * ffmpegdec)
-+{
-+  ffmpegdec->last_in = GST_CLOCK_TIME_NONE;
-+  ffmpegdec->last_diff = GST_CLOCK_TIME_NONE;
-+  ffmpegdec->last_frames = 0;
-+  ffmpegdec->last_out = GST_CLOCK_TIME_NONE;
-+  ffmpegdec->next_out = GST_CLOCK_TIME_NONE;
-+  ffmpegdec->reordered_in = FALSE;
-+  ffmpegdec->reordered_out = FALSE;
-+}
-+
-+static void
-+gst_ffmpegdec_update_qos (GstFFMpegDec * ffmpegdec, gdouble proportion,
-+    GstClockTime timestamp)
-+{
-+  GST_LOG_OBJECT (ffmpegdec, "update QOS: %f, %" GST_TIME_FORMAT,
-+      proportion, GST_TIME_ARGS (timestamp));
-+
-+  GST_OBJECT_LOCK (ffmpegdec);
-+  ffmpegdec->proportion = proportion;
-+  ffmpegdec->earliest_time = timestamp;
-+  GST_OBJECT_UNLOCK (ffmpegdec);
-+}
-+
-+static void
-+gst_ffmpegdec_reset_qos (GstFFMpegDec * ffmpegdec)
-+{
-+  gst_ffmpegdec_update_qos (ffmpegdec, 0.5, GST_CLOCK_TIME_NONE);
-+  ffmpegdec->processed = 0;
-+  ffmpegdec->dropped = 0;
-+}
-+
-+static void
-+gst_ffmpegdec_read_qos (GstFFMpegDec * ffmpegdec, gdouble * proportion,
-+    GstClockTime * timestamp)
-+{
-+  GST_OBJECT_LOCK (ffmpegdec);
-+  *proportion = ffmpegdec->proportion;
-+  *timestamp = ffmpegdec->earliest_time;
-+  GST_OBJECT_UNLOCK (ffmpegdec);
-+}
-+
-+static gboolean
-+gst_ffmpegdec_src_event (GstPad * pad, GstEvent * event)
-+{
-+  GstFFMpegDec *ffmpegdec;
-+  gboolean res;
-+
-+  ffmpegdec = (GstFFMpegDec *) gst_pad_get_parent (pad);
-+
-+  switch (GST_EVENT_TYPE (event)) {
-+    case GST_EVENT_QOS:
-+    {
-+      gdouble proportion;
-+      GstClockTimeDiff diff;
-+      GstClockTime timestamp;
-+
-+      gst_event_parse_qos (event, &proportion, &diff, &timestamp);
-+
-+      /* update our QoS values */
-+      gst_ffmpegdec_update_qos (ffmpegdec, proportion, timestamp + diff);
-+
-+      /* forward upstream */
-+      res = gst_pad_push_event (ffmpegdec->sinkpad, event);
-+      break;
-+    }
-+    default:
-+      /* forward upstream */
-+      res = gst_pad_push_event (ffmpegdec->sinkpad, event);
-+      break;
-+  }
-+
-+  gst_object_unref (ffmpegdec);
-+
-+  return res;
-+}
-+
-+/* with LOCK */
-+static void
-+gst_ffmpegdec_close (GstFFMpegDec * ffmpegdec)
-+{
-+  if (!ffmpegdec->opened)
-+    return;
-+
-+  GST_LOG_OBJECT (ffmpegdec, "closing ffmpeg codec");
-+
-+  if (ffmpegdec->par) {
-+    g_free (ffmpegdec->par);
-+    ffmpegdec->par = NULL;
-+  }
-+
-+  if (ffmpegdec->context->priv_data)
-+    gst_ffmpeg_avcodec_close (ffmpegdec->context);
-+  ffmpegdec->opened = FALSE;
-+
-+  if (ffmpegdec->context->extradata) {
-+    av_free (ffmpegdec->context->extradata);
-+    ffmpegdec->context->extradata = NULL;
-+  }
-+
-+  if (ffmpegdec->pctx) {
-+    if (ffmpegdec->pcache) {
-+      gst_buffer_unref (ffmpegdec->pcache);
-+      ffmpegdec->pcache = NULL;
-+    }
-+    av_parser_close (ffmpegdec->pctx);
-+    ffmpegdec->pctx = NULL;
-+  }
-+
-+  ffmpegdec->format.video.par_n = -1;
-+  ffmpegdec->format.video.fps_n = -1;
-+  ffmpegdec->format.video.old_fps_n = -1;
-+  ffmpegdec->format.video.interlaced = FALSE;
-+}
-+
-+/* with LOCK */
-+static gboolean
-+gst_ffmpegdec_open (GstFFMpegDec * ffmpegdec)
-+{
-+  GstFFMpegDecClass *oclass;
-+
-+  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+
-+  if (gst_ffmpeg_avcodec_open (ffmpegdec->context, oclass->in_plugin) < 0)
-+    goto could_not_open;
-+
-+  ffmpegdec->opened = TRUE;
-+  ffmpegdec->is_realvideo = FALSE;
-+
-+  GST_LOG_OBJECT (ffmpegdec, "Opened ffmpeg codec %s, id %d",
-+      oclass->in_plugin->name, oclass->in_plugin->id);
-+
-+  /* open a parser if we can */
-+  switch (oclass->in_plugin->id) {
-+    case CODEC_ID_MPEG4:
-+    case CODEC_ID_MJPEG:
-+    case CODEC_ID_VC1:
-+      GST_LOG_OBJECT (ffmpegdec, "not using parser, blacklisted codec");
-+      ffmpegdec->pctx = NULL;
-+      break;
-+    case CODEC_ID_H264:
-+      /* For H264, only use a parser if there is no context data, if there is, 
-+       * we're talking AVC */
-+      if (ffmpegdec->context->extradata_size == 0) {
-+        GST_LOG_OBJECT (ffmpegdec, "H264 with no extradata, creating parser");
-+        ffmpegdec->pctx = av_parser_init (oclass->in_plugin->id);
-+      } else {
-+        GST_LOG_OBJECT (ffmpegdec,
-+            "H264 with extradata implies framed data - not using parser");
-+        ffmpegdec->pctx = NULL;
-+      }
-+      break;
-+    case CODEC_ID_RV10:
-+    case CODEC_ID_RV30:
-+    case CODEC_ID_RV20:
-+    case CODEC_ID_RV40:
-+      ffmpegdec->is_realvideo = TRUE;
-+      break;
-+    default:
-+      if (!ffmpegdec->turnoff_parser) {
-+        ffmpegdec->pctx = av_parser_init (oclass->in_plugin->id);
-+        if (ffmpegdec->pctx)
-+          GST_LOG_OBJECT (ffmpegdec, "Using parser %p", ffmpegdec->pctx);
-+        else
-+          GST_LOG_OBJECT (ffmpegdec, "No parser for codec");
-+      } else {
-+        GST_LOG_OBJECT (ffmpegdec, "Parser deactivated for format");
-+      }
-+      break;
-+  }
-+
-+  switch (oclass->in_plugin->type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+      ffmpegdec->format.video.width = 0;
-+      ffmpegdec->format.video.height = 0;
-+      ffmpegdec->format.video.clip_width = -1;
-+      ffmpegdec->format.video.clip_height = -1;
-+      ffmpegdec->format.video.pix_fmt = PIX_FMT_NB;
-+      ffmpegdec->format.video.interlaced = FALSE;
-+      break;
-+    case AVMEDIA_TYPE_AUDIO:
-+      ffmpegdec->format.audio.samplerate = 0;
-+      ffmpegdec->format.audio.channels = 0;
-+      ffmpegdec->format.audio.depth = 0;
-+      break;
-+    default:
-+      break;
-+  }
-+
-+  gst_ffmpegdec_reset_ts (ffmpegdec);
-+  /* FIXME, reset_qos holds the LOCK */
-+  ffmpegdec->proportion = 0.0;
-+  ffmpegdec->earliest_time = -1;
-+
-+  return TRUE;
-+
-+  /* ERRORS */
-+could_not_open:
-+  {
-+    gst_ffmpegdec_close (ffmpegdec);
-+    GST_DEBUG_OBJECT (ffmpegdec, "ffdec_%s: Failed to open FFMPEG codec",
-+        oclass->in_plugin->name);
-+    return FALSE;
-+  }
-+}
-+
-+static gboolean
-+gst_ffmpegdec_setcaps (GstPad * pad, GstCaps * caps)
-+{
-+  GstFFMpegDec *ffmpegdec;
-+  GstFFMpegDecClass *oclass;
-+  GstStructure *structure;
-+  const GValue *par;
-+  const GValue *fps;
-+  gboolean ret = TRUE;
-+
-+  ffmpegdec = (GstFFMpegDec *) (gst_pad_get_parent (pad));
-+  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+
-+  GST_DEBUG_OBJECT (pad, "setcaps called");
-+
-+  GST_OBJECT_LOCK (ffmpegdec);
-+
-+  /* stupid check for VC1 */
-+  if ((oclass->in_plugin->id == CODEC_ID_WMV3) ||
-+      (oclass->in_plugin->id == CODEC_ID_VC1))
-+    oclass->in_plugin->id = gst_ffmpeg_caps_to_codecid (caps, NULL);
-+
-+  /* close old session */
-+  if (ffmpegdec->opened) {
-+    GST_OBJECT_UNLOCK (ffmpegdec);
-+    gst_ffmpegdec_drain (ffmpegdec);
-+    GST_OBJECT_LOCK (ffmpegdec);
-+    gst_ffmpegdec_close (ffmpegdec);
-+
-+    /* and reset the defaults that were set when a context is created */
-+    avcodec_get_context_defaults (ffmpegdec->context);
-+  }
-+
-+  /* set buffer functions */
-+  ffmpegdec->context->get_buffer = gst_ffmpegdec_get_buffer;
-+  ffmpegdec->context->release_buffer = gst_ffmpegdec_release_buffer;
-+  ffmpegdec->context->draw_horiz_band = NULL;
-+
-+  /* default is to let format decide if it needs a parser */
-+  ffmpegdec->turnoff_parser = FALSE;
-+
-+  ffmpegdec->has_b_frames = FALSE;
-+
-+  GST_LOG_OBJECT (ffmpegdec, "size %dx%d", ffmpegdec->context->width,
-+      ffmpegdec->context->height);
-+
-+  /* get size and so */
-+  gst_ffmpeg_caps_with_codecid (oclass->in_plugin->id,
-+      oclass->in_plugin->type, caps, ffmpegdec->context);
-+
-+  GST_LOG_OBJECT (ffmpegdec, "size after %dx%d", ffmpegdec->context->width,
-+      ffmpegdec->context->height);
-+
-+  if (!ffmpegdec->context->time_base.den || !ffmpegdec->context->time_base.num) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "forcing 25/1 framerate");
-+    ffmpegdec->context->time_base.num = 1;
-+    ffmpegdec->context->time_base.den = 25;
-+  }
-+
-+  /* get pixel aspect ratio if it's set */
-+  structure = gst_caps_get_structure (caps, 0);
-+
-+  par = gst_structure_get_value (structure, "pixel-aspect-ratio");
-+  if (par) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "sink caps have pixel-aspect-ratio of %d:%d",
-+        gst_value_get_fraction_numerator (par),
-+        gst_value_get_fraction_denominator (par));
-+    /* should be NULL */
-+    if (ffmpegdec->par)
-+      g_free (ffmpegdec->par);
-+    ffmpegdec->par = g_new0 (GValue, 1);
-+    gst_value_init_and_copy (ffmpegdec->par, par);
-+  }
-+
-+  /* get the framerate from incoming caps. fps_n is set to -1 when
-+   * there is no valid framerate */
-+  fps = gst_structure_get_value (structure, "framerate");
-+  if (fps != NULL && GST_VALUE_HOLDS_FRACTION (fps)) {
-+    ffmpegdec->format.video.fps_n = gst_value_get_fraction_numerator (fps);
-+    ffmpegdec->format.video.fps_d = gst_value_get_fraction_denominator (fps);
-+    GST_DEBUG_OBJECT (ffmpegdec, "Using framerate %d/%d from incoming caps",
-+        ffmpegdec->format.video.fps_n, ffmpegdec->format.video.fps_d);
-+  } else {
-+    ffmpegdec->format.video.fps_n = -1;
-+    GST_DEBUG_OBJECT (ffmpegdec, "Using framerate from codec");
-+  }
-+
-+  /* figure out if we can use direct rendering */
-+  ffmpegdec->current_dr = FALSE;
-+  ffmpegdec->extra_ref = FALSE;
-+  if (ffmpegdec->direct_rendering) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "trying to enable direct rendering");
-+    if (oclass->in_plugin->capabilities & CODEC_CAP_DR1) {
-+      if (oclass->in_plugin->id == CODEC_ID_H264) {
-+        GST_DEBUG_OBJECT (ffmpegdec, "disable direct rendering setup for H264");
-+        /* does not work, many stuff reads outside of the planes */
-+        ffmpegdec->current_dr = FALSE;
-+        ffmpegdec->extra_ref = TRUE;
-+      } else if ((oclass->in_plugin->id == CODEC_ID_SVQ1) ||
-+          (oclass->in_plugin->id == CODEC_ID_VP5) ||
-+          (oclass->in_plugin->id == CODEC_ID_VP6) ||
-+          (oclass->in_plugin->id == CODEC_ID_VP6F) ||
-+          (oclass->in_plugin->id == CODEC_ID_VP6A)) {
-+        GST_DEBUG_OBJECT (ffmpegdec,
-+            "disable direct rendering setup for broken stride support");
-+        /* does not work, uses a incompatible stride. See #610613 */
-+        ffmpegdec->current_dr = FALSE;
-+        ffmpegdec->extra_ref = TRUE;
-+      } else {
-+        GST_DEBUG_OBJECT (ffmpegdec, "enabled direct rendering");
-+        ffmpegdec->current_dr = TRUE;
-+      }
-+    } else {
-+      GST_DEBUG_OBJECT (ffmpegdec, "direct rendering not supported");
-+    }
-+  }
-+  if (ffmpegdec->current_dr) {
-+    /* do *not* draw edges when in direct rendering, for some reason it draws
-+     * outside of the memory. */
-+    ffmpegdec->context->flags |= CODEC_FLAG_EMU_EDGE;
-+  }
-+
-+  /* for AAC we only use av_parse if not on stream-format==raw or ==loas */
-+  if (oclass->in_plugin->id == CODEC_ID_AAC
-+      || oclass->in_plugin->id == CODEC_ID_AAC_LATM) {
-+    const gchar *format = gst_structure_get_string (structure, "stream-format");
-+
-+    if (format == NULL || strcmp (format, "raw") == 0) {
-+      ffmpegdec->turnoff_parser = TRUE;
-+    }
-+  }
-+
-+  /* for FLAC, don't parse if it's already parsed */
-+  if (oclass->in_plugin->id == CODEC_ID_FLAC) {
-+    if (gst_structure_has_field (structure, "streamheader"))
-+      ffmpegdec->turnoff_parser = TRUE;
-+  }
-+
-+  /* workaround encoder bugs */
-+  ffmpegdec->context->workaround_bugs |= FF_BUG_AUTODETECT;
-+  ffmpegdec->context->err_recognition = 1;
-+
-+  /* for slow cpus */
-+  ffmpegdec->context->lowres = ffmpegdec->lowres;
-+  ffmpegdec->context->skip_frame = ffmpegdec->skip_frame;
-+
-+  /* ffmpeg can draw motion vectors on top of the image (not every decoder
-+   * supports it) */
-+  ffmpegdec->context->debug_mv = ffmpegdec->debug_mv;
-+
-+  if (ffmpegdec->max_threads == 0)
-+    ffmpegdec->context->thread_count = gst_ffmpeg_auto_max_threads ();
-+  else
-+    ffmpegdec->context->thread_count = ffmpegdec->max_threads;
-+
-+  /* open codec - we don't select an output pix_fmt yet,
-+   * simply because we don't know! We only get it
-+   * during playback... */
-+  if (!gst_ffmpegdec_open (ffmpegdec))
-+    goto open_failed;
-+
-+  /* clipping region */
-+  gst_structure_get_int (structure, "width",
-+      &ffmpegdec->format.video.clip_width);
-+  gst_structure_get_int (structure, "height",
-+      &ffmpegdec->format.video.clip_height);
-+
-+  GST_DEBUG_OBJECT (pad, "clipping to %dx%d",
-+      ffmpegdec->format.video.clip_width, ffmpegdec->format.video.clip_height);
-+
-+  /* take into account the lowres property */
-+  if (ffmpegdec->format.video.clip_width != -1)
-+    ffmpegdec->format.video.clip_width >>= ffmpegdec->lowres;
-+  if (ffmpegdec->format.video.clip_height != -1)
-+    ffmpegdec->format.video.clip_height >>= ffmpegdec->lowres;
-+
-+  GST_DEBUG_OBJECT (pad, "final clipping to %dx%d",
-+      ffmpegdec->format.video.clip_width, ffmpegdec->format.video.clip_height);
-+
-+done:
-+  GST_OBJECT_UNLOCK (ffmpegdec);
-+
-+  gst_object_unref (ffmpegdec);
-+
-+  return ret;
-+
-+  /* ERRORS */
-+open_failed:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec, "Failed to open");
-+    if (ffmpegdec->par) {
-+      g_free (ffmpegdec->par);
-+      ffmpegdec->par = NULL;
-+    }
-+    ret = FALSE;
-+    goto done;
-+  }
-+}
-+
-+static GstFlowReturn
-+alloc_output_buffer (GstFFMpegDec * ffmpegdec, GstBuffer ** outbuf,
-+    gint width, gint height)
-+{
-+  GstFlowReturn ret;
-+  gint fsize;
-+
-+  ret = GST_FLOW_ERROR;
-+  *outbuf = NULL;
-+
-+  GST_LOG_OBJECT (ffmpegdec, "alloc output buffer");
-+
-+  /* see if we need renegotiation */
-+  if (G_UNLIKELY (!gst_ffmpegdec_negotiate (ffmpegdec, FALSE)))
-+    goto negotiate_failed;
-+
-+  /* get the size of the gstreamer output buffer given a
-+   * width/height/format */
-+  fsize = gst_ffmpeg_avpicture_get_size (ffmpegdec->context->pix_fmt,
-+      width, height);
-+
-+  if (ffmpegdec->can_allocate_aligned) {
-+    GST_LOG_OBJECT (ffmpegdec, "calling pad_alloc");
-+    /* no pallete, we can use the buffer size to alloc */
-+    ret = gst_pad_alloc_buffer_and_set_caps (ffmpegdec->srcpad,
-+        GST_BUFFER_OFFSET_NONE, fsize,
-+        GST_PAD_CAPS (ffmpegdec->srcpad), outbuf);
-+    if (G_UNLIKELY (ret != GST_FLOW_OK))
-+      goto alloc_failed;
-+
-+    /* If buffer isn't 128-bit aligned, create a memaligned one ourselves */
-+    if (((uintptr_t) GST_BUFFER_DATA (*outbuf)) % 16) {
-+      GST_DEBUG_OBJECT (ffmpegdec,
-+          "Downstream can't allocate aligned buffers.");
-+      ffmpegdec->can_allocate_aligned = FALSE;
-+      gst_buffer_unref (*outbuf);
-+      *outbuf = new_aligned_buffer (fsize, GST_PAD_CAPS (ffmpegdec->srcpad));
-+    }
-+  } else {
-+    GST_LOG_OBJECT (ffmpegdec,
-+        "not calling pad_alloc, we have a pallete or downstream can't give 16 byte aligned buffers.");
-+    /* for paletted data we can't use pad_alloc_buffer(), because
-+     * fsize contains the size of the palette, so the overall size
-+     * is bigger than ffmpegcolorspace's unit size, which will
-+     * prompt GstBaseTransform to complain endlessly ... */
-+    *outbuf = new_aligned_buffer (fsize, GST_PAD_CAPS (ffmpegdec->srcpad));
-+    ret = GST_FLOW_OK;
-+  }
-+  /* set caps, we do this here because the buffer is still writable here and we
-+   * are sure to be negotiated */
-+  gst_buffer_set_caps (*outbuf, GST_PAD_CAPS (ffmpegdec->srcpad));
-+
-+  return ret;
-+
-+  /* special cases */
-+negotiate_failed:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec, "negotiate failed");
-+    return GST_FLOW_NOT_NEGOTIATED;
-+  }
-+alloc_failed:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec, "pad_alloc failed %d (%s)", ret,
-+        gst_flow_get_name (ret));
-+    return ret;
-+  }
-+}
-+
-+static int
-+gst_ffmpegdec_get_buffer (AVCodecContext * context, AVFrame * picture)
-+{
-+  GstBuffer *buf = NULL;
-+  GstFFMpegDec *ffmpegdec;
-+  gint width, height;
-+  gint coded_width, coded_height;
-+  gint res;
-+
-+  ffmpegdec = (GstFFMpegDec *) context->opaque;
-+
-+  GST_DEBUG_OBJECT (ffmpegdec, "getting buffer");
-+
-+  /* apply the last info we have seen to this picture, when we get the
-+   * picture back from ffmpeg we can use this to correctly timestamp the output
-+   * buffer */
-+  picture->reordered_opaque = context->reordered_opaque;
-+  /* make sure we don't free the buffer when it's not ours */
-+  picture->opaque = NULL;
-+
-+  /* take width and height before clipping */
-+  width = context->width;
-+  height = context->height;
-+  coded_width = context->coded_width;
-+  coded_height = context->coded_height;
-+
-+  GST_LOG_OBJECT (ffmpegdec, "dimension %dx%d, coded %dx%d", width, height,
-+      coded_width, coded_height);
-+  if (!ffmpegdec->current_dr) {
-+    GST_LOG_OBJECT (ffmpegdec, "direct rendering disabled, fallback alloc");
-+    res = avcodec_default_get_buffer (context, picture);
-+
-+    GST_LOG_OBJECT (ffmpegdec, "linsize %d %d %d", picture->linesize[0],
-+        picture->linesize[1], picture->linesize[2]);
-+    GST_LOG_OBJECT (ffmpegdec, "data %u %u %u", 0,
-+        (guint) (picture->data[1] - picture->data[0]),
-+        (guint) (picture->data[2] - picture->data[0]));
-+    return res;
-+  }
-+
-+  switch (context->codec_type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+      /* some ffmpeg video plugins don't see the point in setting codec_type ... */
-+    case AVMEDIA_TYPE_UNKNOWN:
-+    {
-+      GstFlowReturn ret;
-+      gint clip_width, clip_height;
-+
-+      /* take final clipped output size */
-+      if ((clip_width = ffmpegdec->format.video.clip_width) == -1)
-+        clip_width = width;
-+      if ((clip_height = ffmpegdec->format.video.clip_height) == -1)
-+        clip_height = height;
-+
-+      GST_LOG_OBJECT (ffmpegdec, "raw outsize %d/%d", width, height);
-+
-+      /* this is the size ffmpeg needs for the buffer */
-+      avcodec_align_dimensions (context, &width, &height);
-+
-+      GST_LOG_OBJECT (ffmpegdec, "aligned outsize %d/%d, clip %d/%d",
-+          width, height, clip_width, clip_height);
-+
-+      if (width != clip_width || height != clip_height) {
-+        /* We can't alloc if we need to clip the output buffer later */
-+        GST_LOG_OBJECT (ffmpegdec, "we need clipping, fallback alloc");
-+        return avcodec_default_get_buffer (context, picture);
-+      }
-+
-+      /* alloc with aligned dimensions for ffmpeg */
-+      ret = alloc_output_buffer (ffmpegdec, &buf, width, height);
-+      if (G_UNLIKELY (ret != GST_FLOW_OK)) {
-+        /* alloc default buffer when we can't get one from downstream */
-+        GST_LOG_OBJECT (ffmpegdec, "alloc failed, fallback alloc");
-+        return avcodec_default_get_buffer (context, picture);
-+      }
-+
-+      /* copy the right pointers and strides in the picture object */
-+      gst_ffmpeg_avpicture_fill ((AVPicture *) picture,
-+          GST_BUFFER_DATA (buf), context->pix_fmt, width, height);
-+      break;
-+    }
-+    case AVMEDIA_TYPE_AUDIO:
-+    default:
-+      GST_ERROR_OBJECT (ffmpegdec,
-+          "_get_buffer() should never get called for non-video buffers !");
-+      g_assert_not_reached ();
-+      break;
-+  }
-+
-+  /* tell ffmpeg we own this buffer, tranfer the ref we have on the buffer to
-+   * the opaque data. */
-+  picture->type = FF_BUFFER_TYPE_USER;
-+  picture->opaque = buf;
-+
-+#ifdef EXTRA_REF
-+  if (picture->reference != 0 || ffmpegdec->extra_ref) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "adding extra ref");
-+    gst_buffer_ref (buf);
-+  }
-+#endif
-+
-+  GST_LOG_OBJECT (ffmpegdec, "returned buffer %p", buf);
-+
-+  return 0;
-+}
-+
-+static void
-+gst_ffmpegdec_release_buffer (AVCodecContext * context, AVFrame * picture)
-+{
-+  gint i;
-+  GstBuffer *buf;
-+  GstFFMpegDec *ffmpegdec;
-+
-+  ffmpegdec = (GstFFMpegDec *) context->opaque;
-+
-+  /* check if it was our buffer */
-+  if (picture->opaque == NULL) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "default release buffer");
-+    avcodec_default_release_buffer (context, picture);
-+    return;
-+  }
-+
-+  /* we remove the opaque data now */
-+  buf = GST_BUFFER_CAST (picture->opaque);
-+  GST_DEBUG_OBJECT (ffmpegdec, "release buffer %p", buf);
-+  picture->opaque = NULL;
-+
-+#ifdef EXTRA_REF
-+  if (picture->reference != 0 || ffmpegdec->extra_ref) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "remove extra ref");
-+    gst_buffer_unref (buf);
-+  }
-+#else
-+  gst_buffer_unref (buf);
-+#endif
-+
-+  /* zero out the reference in ffmpeg */
-+  for (i = 0; i < 4; i++) {
-+    picture->data[i] = NULL;
-+    picture->linesize[i] = 0;
-+  }
-+}
-+
-+static void
-+gst_ffmpegdec_add_pixel_aspect_ratio (GstFFMpegDec * ffmpegdec,
-+    GstStructure * s)
-+{
-+  gboolean demuxer_par_set = FALSE;
-+  gboolean decoder_par_set = FALSE;
-+  gint demuxer_num = 1, demuxer_denom = 1;
-+  gint decoder_num = 1, decoder_denom = 1;
-+
-+  GST_OBJECT_LOCK (ffmpegdec);
-+
-+  if (ffmpegdec->par) {
-+    demuxer_num = gst_value_get_fraction_numerator (ffmpegdec->par);
-+    demuxer_denom = gst_value_get_fraction_denominator (ffmpegdec->par);
-+    demuxer_par_set = TRUE;
-+    GST_DEBUG_OBJECT (ffmpegdec, "Demuxer PAR: %d:%d", demuxer_num,
-+        demuxer_denom);
-+  }
-+
-+  if (ffmpegdec->context->sample_aspect_ratio.num &&
-+      ffmpegdec->context->sample_aspect_ratio.den) {
-+    decoder_num = ffmpegdec->context->sample_aspect_ratio.num;
-+    decoder_denom = ffmpegdec->context->sample_aspect_ratio.den;
-+    decoder_par_set = TRUE;
-+    GST_DEBUG_OBJECT (ffmpegdec, "Decoder PAR: %d:%d", decoder_num,
-+        decoder_denom);
-+  }
-+
-+  GST_OBJECT_UNLOCK (ffmpegdec);
-+
-+  if (!demuxer_par_set && !decoder_par_set)
-+    goto no_par;
-+
-+  if (demuxer_par_set && !decoder_par_set)
-+    goto use_demuxer_par;
-+
-+  if (decoder_par_set && !demuxer_par_set)
-+    goto use_decoder_par;
-+
-+  /* Both the demuxer and the decoder provide a PAR. If one of
-+   * the two PARs is 1:1 and the other one is not, use the one
-+   * that is not 1:1. */
-+  if (demuxer_num == demuxer_denom && decoder_num != decoder_denom)
-+    goto use_decoder_par;
-+
-+  if (decoder_num == decoder_denom && demuxer_num != demuxer_denom)
-+    goto use_demuxer_par;
-+
-+  /* Both PARs are non-1:1, so use the PAR provided by the demuxer */
-+  goto use_demuxer_par;
-+
-+use_decoder_par:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec,
-+        "Setting decoder provided pixel-aspect-ratio of %u:%u", decoder_num,
-+        decoder_denom);
-+    gst_structure_set (s, "pixel-aspect-ratio", GST_TYPE_FRACTION, decoder_num,
-+        decoder_denom, NULL);
-+    return;
-+  }
-+
-+use_demuxer_par:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec,
-+        "Setting demuxer provided pixel-aspect-ratio of %u:%u", demuxer_num,
-+        demuxer_denom);
-+    gst_structure_set (s, "pixel-aspect-ratio", GST_TYPE_FRACTION, demuxer_num,
-+        demuxer_denom, NULL);
-+    return;
-+  }
-+no_par:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec,
-+        "Neither demuxer nor codec provide a pixel-aspect-ratio");
-+    return;
-+  }
-+}
-+
-+static gboolean
-+gst_ffmpegdec_negotiate (GstFFMpegDec * ffmpegdec, gboolean force)
-+{
-+  GstFFMpegDecClass *oclass;
-+  GstCaps *caps;
-+
-+  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+
-+  switch (oclass->in_plugin->type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+      if (!force && ffmpegdec->format.video.width == ffmpegdec->context->width
-+          && ffmpegdec->format.video.height == ffmpegdec->context->height
-+          && ffmpegdec->format.video.fps_n == ffmpegdec->format.video.old_fps_n
-+          && ffmpegdec->format.video.fps_d == ffmpegdec->format.video.old_fps_d
-+          && ffmpegdec->format.video.pix_fmt == ffmpegdec->context->pix_fmt
-+          && ffmpegdec->format.video.par_n ==
-+          ffmpegdec->context->sample_aspect_ratio.num
-+          && ffmpegdec->format.video.par_d ==
-+          ffmpegdec->context->sample_aspect_ratio.den)
-+        return TRUE;
-+      GST_DEBUG_OBJECT (ffmpegdec,
-+          "Renegotiating video from %dx%d@ %d:%d PAR %d/%d fps to %dx%d@ %d:%d PAR %d/%d fps",
-+          ffmpegdec->format.video.width, ffmpegdec->format.video.height,
-+          ffmpegdec->format.video.par_n, ffmpegdec->format.video.par_d,
-+          ffmpegdec->format.video.old_fps_n, ffmpegdec->format.video.old_fps_n,
-+          ffmpegdec->context->width, ffmpegdec->context->height,
-+          ffmpegdec->context->sample_aspect_ratio.num,
-+          ffmpegdec->context->sample_aspect_ratio.den,
-+          ffmpegdec->format.video.fps_n, ffmpegdec->format.video.fps_d);
-+      ffmpegdec->format.video.width = ffmpegdec->context->width;
-+      ffmpegdec->format.video.height = ffmpegdec->context->height;
-+      ffmpegdec->format.video.old_fps_n = ffmpegdec->format.video.fps_n;
-+      ffmpegdec->format.video.old_fps_d = ffmpegdec->format.video.fps_d;
-+      ffmpegdec->format.video.pix_fmt = ffmpegdec->context->pix_fmt;
-+      ffmpegdec->format.video.par_n =
-+          ffmpegdec->context->sample_aspect_ratio.num;
-+      ffmpegdec->format.video.par_d =
-+          ffmpegdec->context->sample_aspect_ratio.den;
-+      break;
-+    case AVMEDIA_TYPE_AUDIO:
-+    {
-+      gint depth = av_smp_format_depth (ffmpegdec->context->sample_fmt);
-+      if (!force && ffmpegdec->format.audio.samplerate ==
-+          ffmpegdec->context->sample_rate &&
-+          ffmpegdec->format.audio.channels == ffmpegdec->context->channels &&
-+          ffmpegdec->format.audio.depth == depth)
-+        return TRUE;
-+      GST_DEBUG_OBJECT (ffmpegdec,
-+          "Renegotiating audio from %dHz@%dchannels (%d) to %dHz@%dchannels (%d)",
-+          ffmpegdec->format.audio.samplerate, ffmpegdec->format.audio.channels,
-+          ffmpegdec->format.audio.depth,
-+          ffmpegdec->context->sample_rate, ffmpegdec->context->channels, depth);
-+      ffmpegdec->format.audio.samplerate = ffmpegdec->context->sample_rate;
-+      ffmpegdec->format.audio.channels = ffmpegdec->context->channels;
-+      ffmpegdec->format.audio.depth = depth;
-+    }
-+      break;
-+    default:
-+      break;
-+  }
-+
-+  caps = gst_ffmpeg_codectype_to_caps (oclass->in_plugin->type,
-+      ffmpegdec->context, oclass->in_plugin->id, FALSE);
-+
-+  if (caps == NULL)
-+    goto no_caps;
-+
-+  switch (oclass->in_plugin->type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+    {
-+      gint width, height;
-+      gboolean interlaced;
-+
-+      width = ffmpegdec->format.video.clip_width;
-+      height = ffmpegdec->format.video.clip_height;
-+      interlaced = ffmpegdec->format.video.interlaced;
-+
-+      if (width != -1 && height != -1) {
-+        /* overwrite the output size with the dimension of the
-+         * clipping region but only if they are smaller. */
-+        if (width < ffmpegdec->context->width)
-+          gst_caps_set_simple (caps, "width", G_TYPE_INT, width, NULL);
-+        if (height < ffmpegdec->context->height)
-+          gst_caps_set_simple (caps, "height", G_TYPE_INT, height, NULL);
-+      }
-+      gst_caps_set_simple (caps, "interlaced", G_TYPE_BOOLEAN, interlaced,
-+          NULL);
-+
-+      /* If a demuxer provided a framerate then use it (#313970) */
-+      if (ffmpegdec->format.video.fps_n != -1) {
-+        gst_caps_set_simple (caps, "framerate",
-+            GST_TYPE_FRACTION, ffmpegdec->format.video.fps_n,
-+            ffmpegdec->format.video.fps_d, NULL);
-+      }
-+      gst_ffmpegdec_add_pixel_aspect_ratio (ffmpegdec,
-+          gst_caps_get_structure (caps, 0));
-+      break;
-+    }
-+    case AVMEDIA_TYPE_AUDIO:
-+    {
-+      break;
-+    }
-+    default:
-+      break;
-+  }
-+
-+  if (!gst_pad_set_caps (ffmpegdec->srcpad, caps))
-+    goto caps_failed;
-+
-+  gst_caps_unref (caps);
-+
-+  return TRUE;
-+
-+  /* ERRORS */
-+no_caps:
-+  {
-+#ifdef HAVE_FFMPEG_UNINSTALLED
-+    /* using internal ffmpeg snapshot */
-+    GST_ELEMENT_ERROR (ffmpegdec, CORE, NEGOTIATION,
-+        ("Could not find GStreamer caps mapping for FFmpeg codec '%s'.",
-+            oclass->in_plugin->name), (NULL));
-+#else
-+    /* using external ffmpeg */
-+    GST_ELEMENT_ERROR (ffmpegdec, CORE, NEGOTIATION,
-+        ("Could not find GStreamer caps mapping for FFmpeg codec '%s', and "
-+            "you are using an external libavcodec. This is most likely due to "
-+            "a packaging problem and/or libavcodec having been upgraded to a "
-+            "version that is not compatible with this version of "
-+            "gstreamer-ffmpeg. Make sure your gstreamer-ffmpeg and libavcodec "
-+            "packages come from the same source/repository.",
-+            oclass->in_plugin->name), (NULL));
-+#endif
-+    return FALSE;
-+  }
-+caps_failed:
-+  {
-+    GST_ELEMENT_ERROR (ffmpegdec, CORE, NEGOTIATION, (NULL),
-+        ("Could not set caps for ffmpeg decoder (%s), not fixed?",
-+            oclass->in_plugin->name));
-+    gst_caps_unref (caps);
-+
-+    return FALSE;
-+  }
-+}
-+
-+/* perform qos calculations before decoding the next frame.
-+ *
-+ * Sets the skip_frame flag and if things are really bad, skips to the next
-+ * keyframe.
-+ * 
-+ * Returns TRUE if the frame should be decoded, FALSE if the frame can be dropped
-+ * entirely.
-+ */
-+static gboolean
-+gst_ffmpegdec_do_qos (GstFFMpegDec * ffmpegdec, GstClockTime timestamp,
-+    gboolean * mode_switch)
-+{
-+  GstClockTimeDiff diff;
-+  gdouble proportion;
-+  GstClockTime qostime, earliest_time;
-+  gboolean res = TRUE;
-+
-+  *mode_switch = FALSE;
-+
-+  /* no timestamp, can't do QoS */
-+  if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (timestamp)))
-+    goto no_qos;
-+
-+  /* get latest QoS observation values */
-+  gst_ffmpegdec_read_qos (ffmpegdec, &proportion, &earliest_time);
-+
-+  /* skip qos if we have no observation (yet) */
-+  if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (earliest_time))) {
-+    /* no skip_frame initialy */
-+    ffmpegdec->context->skip_frame = AVDISCARD_DEFAULT;
-+    goto no_qos;
-+  }
-+
-+  /* qos is done on running time of the timestamp */
-+  qostime = gst_segment_to_running_time (&ffmpegdec->segment, GST_FORMAT_TIME,
-+      timestamp);
-+
-+  /* timestamp can be out of segment, then we don't do QoS */
-+  if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (qostime)))
-+    goto no_qos;
-+
-+  /* see how our next timestamp relates to the latest qos timestamp. negative
-+   * values mean we are early, positive values mean we are too late. */
-+  diff = GST_CLOCK_DIFF (qostime, earliest_time);
-+
-+  GST_DEBUG_OBJECT (ffmpegdec, "QOS: qostime %" GST_TIME_FORMAT
-+      ", earliest %" GST_TIME_FORMAT, GST_TIME_ARGS (qostime),
-+      GST_TIME_ARGS (earliest_time));
-+
-+  /* if we using less than 40% of the available time, we can try to
-+   * speed up again when we were slow. */
-+  if (proportion < 0.4 && diff < 0) {
-+    goto normal_mode;
-+  } else {
-+    if (diff >= 0) {
-+      /* we're too slow, try to speed up */
-+      /* switch to skip_frame mode */
-+      goto skip_frame;
-+    }
-+  }
-+
-+no_qos:
-+  ffmpegdec->processed++;
-+  return TRUE;
-+
-+normal_mode:
-+  {
-+    if (ffmpegdec->context->skip_frame != AVDISCARD_DEFAULT) {
-+      ffmpegdec->context->skip_frame = AVDISCARD_DEFAULT;
-+      *mode_switch = TRUE;
-+      GST_DEBUG_OBJECT (ffmpegdec, "QOS: normal mode %g < 0.4", proportion);
-+    }
-+    ffmpegdec->processed++;
-+    return TRUE;
-+  }
-+skip_frame:
-+  {
-+    if (ffmpegdec->context->skip_frame != AVDISCARD_NONREF) {
-+      ffmpegdec->context->skip_frame = AVDISCARD_NONREF;
-+      *mode_switch = TRUE;
-+      GST_DEBUG_OBJECT (ffmpegdec,
-+          "QOS: hurry up, diff %" G_GINT64_FORMAT " >= 0", diff);
-+    }
-+    goto drop_qos;
-+  }
-+drop_qos:
-+  {
-+    GstClockTime stream_time, jitter;
-+    GstMessage *qos_msg;
-+
-+    ffmpegdec->dropped++;
-+    stream_time =
-+        gst_segment_to_stream_time (&ffmpegdec->segment, GST_FORMAT_TIME,
-+        timestamp);
-+    jitter = GST_CLOCK_DIFF (qostime, earliest_time);
-+    qos_msg =
-+        gst_message_new_qos (GST_OBJECT_CAST (ffmpegdec), FALSE, qostime,
-+        stream_time, timestamp, GST_CLOCK_TIME_NONE);
-+    gst_message_set_qos_values (qos_msg, jitter, proportion, 1000000);
-+    gst_message_set_qos_stats (qos_msg, GST_FORMAT_BUFFERS,
-+        ffmpegdec->processed, ffmpegdec->dropped);
-+    gst_element_post_message (GST_ELEMENT_CAST (ffmpegdec), qos_msg);
-+
-+    return res;
-+  }
-+}
-+
-+/* returns TRUE if buffer is within segment, else FALSE.
-+ * if Buffer is on segment border, it's timestamp and duration will be clipped */
-+static gboolean
-+clip_video_buffer (GstFFMpegDec * dec, GstBuffer * buf, GstClockTime in_ts,
-+    GstClockTime in_dur)
-+{
-+  gboolean res = TRUE;
-+  gint64 cstart, cstop;
-+  GstClockTime stop;
-+
-+  GST_LOG_OBJECT (dec,
-+      "timestamp:%" GST_TIME_FORMAT " , duration:%" GST_TIME_FORMAT,
-+      GST_TIME_ARGS (in_ts), GST_TIME_ARGS (in_dur));
-+
-+  /* can't clip without TIME segment */
-+  if (G_UNLIKELY (dec->segment.format != GST_FORMAT_TIME))
-+    goto beach;
-+
-+  /* we need a start time */
-+  if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (in_ts)))
-+    goto beach;
-+
-+  /* generate valid stop, if duration unknown, we have unknown stop */
-+  stop =
-+      GST_CLOCK_TIME_IS_VALID (in_dur) ? (in_ts + in_dur) : GST_CLOCK_TIME_NONE;
-+
-+  /* now clip */
-+  res =
-+      gst_segment_clip (&dec->segment, GST_FORMAT_TIME, in_ts, stop, &cstart,
-+      &cstop);
-+  if (G_UNLIKELY (!res))
-+    goto beach;
-+
-+  /* we're pretty sure the duration of this buffer is not till the end of this
-+   * segment (which _clip will assume when the stop is -1) */
-+  if (stop == GST_CLOCK_TIME_NONE)
-+    cstop = GST_CLOCK_TIME_NONE;
-+
-+  /* update timestamp and possibly duration if the clipped stop time is
-+   * valid */
-+  GST_BUFFER_TIMESTAMP (buf) = cstart;
-+  if (GST_CLOCK_TIME_IS_VALID (cstop))
-+    GST_BUFFER_DURATION (buf) = cstop - cstart;
-+
-+  GST_LOG_OBJECT (dec,
-+      "clipped timestamp:%" GST_TIME_FORMAT " , duration:%" GST_TIME_FORMAT,
-+      GST_TIME_ARGS (cstart), GST_TIME_ARGS (GST_BUFFER_DURATION (buf)));
-+
-+beach:
-+  GST_LOG_OBJECT (dec, "%sdropping", (res ? "not " : ""));
-+  return res;
-+}
-+
-+
-+/* get an outbuf buffer with the current picture */
-+static GstFlowReturn
-+get_output_buffer (GstFFMpegDec * ffmpegdec, GstBuffer ** outbuf)
-+{
-+  GstFlowReturn ret;
-+
-+  ret = GST_FLOW_OK;
-+  *outbuf = NULL;
-+
-+  if (ffmpegdec->picture->opaque != NULL) {
-+    /* we allocated a picture already for ffmpeg to decode into, let's pick it
-+     * up and use it now. */
-+    *outbuf = (GstBuffer *) ffmpegdec->picture->opaque;
-+    GST_LOG_OBJECT (ffmpegdec, "using opaque buffer %p", *outbuf);
-+#ifndef EXTRA_REF
-+    gst_buffer_ref (*outbuf);
-+#endif
-+  } else {
-+    AVPicture pic, *outpic;
-+    gint width, height;
-+
-+    GST_LOG_OBJECT (ffmpegdec, "get output buffer");
-+
-+    /* figure out size of output buffer, this is the clipped output size because
-+     * we will copy the picture into it but only when the clipping region is
-+     * smaller than the actual picture size. */
-+    if ((width = ffmpegdec->format.video.clip_width) == -1)
-+      width = ffmpegdec->context->width;
-+    else if (width > ffmpegdec->context->width)
-+      width = ffmpegdec->context->width;
-+
-+    if ((height = ffmpegdec->format.video.clip_height) == -1)
-+      height = ffmpegdec->context->height;
-+    else if (height > ffmpegdec->context->height)
-+      height = ffmpegdec->context->height;
-+
-+    GST_LOG_OBJECT (ffmpegdec, "clip width %d/height %d", width, height);
-+
-+    ret = alloc_output_buffer (ffmpegdec, outbuf, width, height);
-+    if (G_UNLIKELY (ret != GST_FLOW_OK))
-+      goto alloc_failed;
-+
-+    /* original ffmpeg code does not handle odd sizes correctly.
-+     * This patched up version does */
-+    gst_ffmpeg_avpicture_fill (&pic, GST_BUFFER_DATA (*outbuf),
-+        ffmpegdec->context->pix_fmt, width, height);
-+
-+    outpic = (AVPicture *) ffmpegdec->picture;
-+
-+    GST_LOG_OBJECT (ffmpegdec, "linsize %d %d %d", outpic->linesize[0],
-+        outpic->linesize[1], outpic->linesize[2]);
-+    GST_LOG_OBJECT (ffmpegdec, "data %u %u %u", 0,
-+        (guint) (outpic->data[1] - outpic->data[0]),
-+        (guint) (outpic->data[2] - outpic->data[0]));
-+
-+    av_picture_copy (&pic, outpic, ffmpegdec->context->pix_fmt, width, height);
-+  }
-+  ffmpegdec->picture->reordered_opaque = -1;
-+
-+  return ret;
-+
-+  /* special cases */
-+alloc_failed:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec, "pad_alloc failed");
-+    return ret;
-+  }
-+}
-+
-+static void
-+clear_queued (GstFFMpegDec * ffmpegdec)
-+{
-+  g_list_foreach (ffmpegdec->queued, (GFunc) gst_mini_object_unref, NULL);
-+  g_list_free (ffmpegdec->queued);
-+  ffmpegdec->queued = NULL;
-+}
-+
-+static GstFlowReturn
-+flush_queued (GstFFMpegDec * ffmpegdec)
-+{
-+  GstFlowReturn res = GST_FLOW_OK;
-+
-+  while (ffmpegdec->queued) {
-+    GstBuffer *buf = GST_BUFFER_CAST (ffmpegdec->queued->data);
-+
-+    GST_LOG_OBJECT (ffmpegdec, "pushing buffer %p, offset %"
-+        G_GUINT64_FORMAT ", timestamp %"
-+        GST_TIME_FORMAT ", duration %" GST_TIME_FORMAT, buf,
-+        GST_BUFFER_OFFSET (buf),
-+        GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (buf)),
-+        GST_TIME_ARGS (GST_BUFFER_DURATION (buf)));
-+
-+    /* iterate ouput queue an push downstream */
-+    res = gst_pad_push (ffmpegdec->srcpad, buf);
-+
-+    ffmpegdec->queued =
-+        g_list_delete_link (ffmpegdec->queued, ffmpegdec->queued);
-+  }
-+  return res;
-+}
-+
-+static void
-+gst_avpacket_init (AVPacket * packet, guint8 * data, guint size)
-+{
-+  memset (packet, 0, sizeof (AVPacket));
-+  packet->data = data;
-+  packet->size = size;
-+}
-+
-+/* gst_ffmpegdec_[video|audio]_frame:
-+ * ffmpegdec:
-+ * data: pointer to the data to decode
-+ * size: size of data in bytes
-+ * in_timestamp: incoming timestamp.
-+ * in_duration: incoming duration.
-+ * in_offset: incoming offset (frame number).
-+ * outbuf: outgoing buffer. Different from NULL ONLY if it contains decoded data.
-+ * ret: Return flow.
-+ *
-+ * Returns: number of bytes used in decoding. The check for successful decode is
-+ *   outbuf being non-NULL.
-+ */
-+static gint
-+gst_ffmpegdec_video_frame (GstFFMpegDec * ffmpegdec,
-+    guint8 * data, guint size,
-+    const GstTSInfo * dec_info, GstBuffer ** outbuf, GstFlowReturn * ret)
-+{
-+  gint len = -1;
-+  gint have_data;
-+  gboolean mode_switch;
-+  gboolean decode;
-+  gint skip_frame = AVDISCARD_DEFAULT;
-+  GstClockTime out_timestamp, out_duration, out_pts;
-+  gint64 out_offset;
-+  const GstTSInfo *out_info;
-+  AVPacket packet;
-+
-+  *ret = GST_FLOW_OK;
-+  *outbuf = NULL;
-+
-+  ffmpegdec->context->opaque = ffmpegdec;
-+
-+  /* in case we skip frames */
-+  ffmpegdec->picture->pict_type = -1;
-+
-+  /* run QoS code, we don't stop decoding the frame when we are late because
-+   * else we might skip a reference frame */
-+  decode = gst_ffmpegdec_do_qos (ffmpegdec, dec_info->timestamp, &mode_switch);
-+
-+  if (ffmpegdec->is_realvideo && data != NULL) {
-+    gint slice_count;
-+    gint i;
-+
-+    /* setup the slice table for realvideo */
-+    if (ffmpegdec->context->slice_offset == NULL)
-+      ffmpegdec->context->slice_offset = g_malloc (sizeof (guint32) * 1000);
-+
-+    slice_count = (*data++) + 1;
-+    ffmpegdec->context->slice_count = slice_count;
-+
-+    for (i = 0; i < slice_count; i++) {
-+      data += 4;
-+      ffmpegdec->context->slice_offset[i] = GST_READ_UINT32_LE (data);
-+      data += 4;
-+    }
-+  }
-+
-+  if (!decode) {
-+    /* no decoding needed, save previous skip_frame value and brutely skip
-+     * decoding everything */
-+    skip_frame = ffmpegdec->context->skip_frame;
-+    ffmpegdec->context->skip_frame = AVDISCARD_NONREF;
-+  }
-+
-+  /* save reference to the timing info */
-+  ffmpegdec->context->reordered_opaque = (gint64) dec_info->idx;
-+  ffmpegdec->picture->reordered_opaque = (gint64) dec_info->idx;
-+
-+  GST_DEBUG_OBJECT (ffmpegdec, "stored opaque values idx %d", dec_info->idx);
-+
-+  /* now decode the frame */
-+  gst_avpacket_init (&packet, data, size);
-+  len = avcodec_decode_video2 (ffmpegdec->context,
-+      ffmpegdec->picture, &have_data, &packet);
-+
-+  /* restore previous state */
-+  if (!decode)
-+    ffmpegdec->context->skip_frame = skip_frame;
-+
-+  GST_DEBUG_OBJECT (ffmpegdec, "after decode: len %d, have_data %d",
-+      len, have_data);
-+
-+  /* when we are in skip_frame mode, don't complain when ffmpeg returned
-+   * no data because we told it to skip stuff. */
-+  if (len < 0 && (mode_switch || ffmpegdec->context->skip_frame))
-+    len = 0;
-+
-+  if (len > 0 && have_data <= 0 && (mode_switch
-+          || ffmpegdec->context->skip_frame)) {
-+    /* we consumed some bytes but nothing decoded and we are skipping frames,
-+     * disable the interpollation of DTS timestamps */
-+    ffmpegdec->last_out = -1;
-+  }
-+
-+  /* no data, we're done */
-+  if (len < 0 || have_data <= 0)
-+    goto beach;
-+
-+  /* get the output picture timing info again */
-+  out_info = gst_ts_info_get (ffmpegdec, ffmpegdec->picture->reordered_opaque);
-+  out_pts = out_info->timestamp;
-+  out_duration = out_info->duration;
-+  out_offset = out_info->offset;
-+
-+  GST_DEBUG_OBJECT (ffmpegdec,
-+      "pts %" G_GUINT64_FORMAT " duration %" G_GUINT64_FORMAT " offset %"
-+      G_GINT64_FORMAT, out_pts, out_duration, out_offset);
-+  GST_DEBUG_OBJECT (ffmpegdec, "picture: pts %" G_GUINT64_FORMAT,
-+      (guint64) ffmpegdec->picture->pts);
-+  GST_DEBUG_OBJECT (ffmpegdec, "picture: num %d",
-+      ffmpegdec->picture->coded_picture_number);
-+  GST_DEBUG_OBJECT (ffmpegdec, "picture: ref %d",
-+      ffmpegdec->picture->reference);
-+  GST_DEBUG_OBJECT (ffmpegdec, "picture: display %d",
-+      ffmpegdec->picture->display_picture_number);
-+  GST_DEBUG_OBJECT (ffmpegdec, "picture: opaque %p",
-+      ffmpegdec->picture->opaque);
-+  GST_DEBUG_OBJECT (ffmpegdec, "picture: reordered opaque %" G_GUINT64_FORMAT,
-+      (guint64) ffmpegdec->picture->reordered_opaque);
-+  GST_DEBUG_OBJECT (ffmpegdec, "repeat_pict:%d",
-+      ffmpegdec->picture->repeat_pict);
-+  GST_DEBUG_OBJECT (ffmpegdec, "interlaced_frame:%d",
-+      ffmpegdec->picture->interlaced_frame);
-+
-+  if (G_UNLIKELY (ffmpegdec->picture->interlaced_frame !=
-+          ffmpegdec->format.video.interlaced)) {
-+    GST_WARNING ("Change in interlacing ! picture:%d, recorded:%d",
-+        ffmpegdec->picture->interlaced_frame,
-+        ffmpegdec->format.video.interlaced);
-+    ffmpegdec->format.video.interlaced = ffmpegdec->picture->interlaced_frame;
-+    gst_ffmpegdec_negotiate (ffmpegdec, TRUE);
-+  }
-+
-+  /* Whether a frame is interlaced or not is unknown at the time of
-+     buffer allocation, so caps on the buffer in opaque will have
-+     the previous frame's interlaced flag set. So if interlacedness
-+     has changed since allocation, we update the buffer (if any)
-+     caps now with the correct interlaced flag. */
-+  if (ffmpegdec->picture->opaque != NULL) {
-+    GstBuffer *buffer = ffmpegdec->picture->opaque;
-+    if (GST_BUFFER_CAPS (buffer) && GST_PAD_CAPS (ffmpegdec->srcpad)) {
-+      GstStructure *s = gst_caps_get_structure (GST_BUFFER_CAPS (buffer), 0);
-+      gboolean interlaced;
-+      gboolean found = gst_structure_get_boolean (s, "interlaced", &interlaced);
-+      if (!found || (!!interlaced != !!ffmpegdec->format.video.interlaced)) {
-+        GST_DEBUG_OBJECT (ffmpegdec,
-+            "Buffer interlacing does not match pad, updating");
-+        buffer = gst_buffer_make_metadata_writable (buffer);
-+        gst_buffer_set_caps (buffer, GST_PAD_CAPS (ffmpegdec->srcpad));
-+        ffmpegdec->picture->opaque = buffer;
-+      }
-+    }
-+  }
-+
-+  /* check that the timestamps go upwards */
-+  if (ffmpegdec->last_out != -1 && ffmpegdec->last_out > out_pts) {
-+    /* timestamps go backwards, this means frames were reordered and we must
-+     * be dealing with DTS as the buffer timestamps */
-+    if (!ffmpegdec->reordered_out) {
-+      GST_DEBUG_OBJECT (ffmpegdec, "detected reordered out timestamps");
-+      ffmpegdec->reordered_out = TRUE;
-+    }
-+    if (ffmpegdec->reordered_in) {
-+      /* we reset the input reordering here because we want to recover from an
-+       * occasionally wrong reordered input timestamp */
-+      GST_DEBUG_OBJECT (ffmpegdec, "assuming DTS input timestamps");
-+      ffmpegdec->reordered_in = FALSE;
-+    }
-+  }
-+
-+  if (out_pts == 0 && out_pts == ffmpegdec->last_out) {
-+    GST_LOG_OBJECT (ffmpegdec, "ffmpeg returns 0 timestamps, ignoring");
-+    /* some codecs only output 0 timestamps, when that happens, make us select an
-+     * output timestamp based on the input timestamp. We do this by making the
-+     * ffmpeg timestamp and the interpollated next timestamp invalid. */
-+    out_pts = -1;
-+    ffmpegdec->next_out = -1;
-+  } else
-+    ffmpegdec->last_out = out_pts;
-+
-+  /* we assume DTS as input timestamps unless we see reordered input
-+   * timestamps */
-+  if (!ffmpegdec->reordered_in && ffmpegdec->reordered_out) {
-+    /* PTS and DTS are the same for keyframes */
-+    if (ffmpegdec->next_out != -1) {
-+      /* interpolate all timestamps except for keyframes, FIXME, this is
-+       * wrong when QoS is active. */
-+      GST_DEBUG_OBJECT (ffmpegdec, "interpolate timestamps");
-+      out_pts = -1;
-+      out_offset = -1;
-+    }
-+  }
-+
-+  /* get a handle to the output buffer */
-+  *ret = get_output_buffer (ffmpegdec, outbuf);
-+  if (G_UNLIKELY (*ret != GST_FLOW_OK))
-+    goto no_output;
-+
-+  /*
-+   * Timestamps:
-+   *
-+   *  1) Copy picture timestamp if valid
-+   *  2) else interpolate from previous output timestamp
-+   *  3) else copy input timestamp
-+   */
-+  out_timestamp = -1;
-+  if (out_pts != -1) {
-+    /* Get (interpolated) timestamp from FFMPEG */
-+    out_timestamp = (GstClockTime) out_pts;
-+    GST_LOG_OBJECT (ffmpegdec, "using timestamp %" GST_TIME_FORMAT
-+        " returned by ffmpeg", GST_TIME_ARGS (out_timestamp));
-+  }
-+  if (!GST_CLOCK_TIME_IS_VALID (out_timestamp) && ffmpegdec->next_out != -1) {
-+    out_timestamp = ffmpegdec->next_out;
-+    GST_LOG_OBJECT (ffmpegdec, "using next timestamp %" GST_TIME_FORMAT,
-+        GST_TIME_ARGS (out_timestamp));
-+  }
-+  if (!GST_CLOCK_TIME_IS_VALID (out_timestamp)) {
-+    out_timestamp = dec_info->timestamp;
-+    GST_LOG_OBJECT (ffmpegdec, "using in timestamp %" GST_TIME_FORMAT,
-+        GST_TIME_ARGS (out_timestamp));
-+  }
-+  GST_BUFFER_TIMESTAMP (*outbuf) = out_timestamp;
-+
-+  /*
-+   * Offset:
-+   *  0) Use stored input offset (from opaque)
-+   *  1) Use value converted from timestamp if valid
-+   *  2) Use input offset if valid
-+   */
-+  if (out_offset != GST_BUFFER_OFFSET_NONE) {
-+    /* out_offset already contains the offset from ts_info */
-+    GST_LOG_OBJECT (ffmpegdec, "Using offset returned by ffmpeg");
-+  } else if (out_timestamp != GST_CLOCK_TIME_NONE) {
-+    GstFormat out_fmt = GST_FORMAT_DEFAULT;
-+    GST_LOG_OBJECT (ffmpegdec, "Using offset converted from timestamp");
-+    /* FIXME, we should really remove this as it's not nice at all to do
-+     * upstream queries for each frame to get the frame offset. We also can't
-+     * really remove this because it is the only way of setting frame offsets
-+     * on outgoing buffers. We should have metadata so that the upstream peer
-+     * can set a frame number on the encoded data. */
-+    gst_pad_query_peer_convert (ffmpegdec->sinkpad,
-+        GST_FORMAT_TIME, out_timestamp, &out_fmt, &out_offset);
-+  } else if (dec_info->offset != GST_BUFFER_OFFSET_NONE) {
-+    /* FIXME, the input offset is input media specific and might not
-+     * be the same for the output media. (byte offset as input, frame number
-+     * as output, for example) */
-+    GST_LOG_OBJECT (ffmpegdec, "using in_offset %" G_GINT64_FORMAT,
-+        dec_info->offset);
-+    out_offset = dec_info->offset;
-+  } else {
-+    GST_LOG_OBJECT (ffmpegdec, "no valid offset found");
-+    out_offset = GST_BUFFER_OFFSET_NONE;
-+  }
-+  GST_BUFFER_OFFSET (*outbuf) = out_offset;
-+
-+  /*
-+   * Duration:
-+   *
-+   *  1) Use reordered input duration if valid
-+   *  2) Else use input duration
-+   *  3) else use input framerate
-+   *  4) else use ffmpeg framerate
-+   */
-+  if (GST_CLOCK_TIME_IS_VALID (out_duration)) {
-+    /* We have a valid (reordered) duration */
-+    GST_LOG_OBJECT (ffmpegdec, "Using duration returned by ffmpeg");
-+  } else if (GST_CLOCK_TIME_IS_VALID (dec_info->duration)) {
-+    GST_LOG_OBJECT (ffmpegdec, "using in_duration");
-+    out_duration = dec_info->duration;
-+  } else if (GST_CLOCK_TIME_IS_VALID (ffmpegdec->last_diff)) {
-+    GST_LOG_OBJECT (ffmpegdec, "using last-diff");
-+    out_duration = ffmpegdec->last_diff;
-+  } else {
-+    /* if we have an input framerate, use that */
-+    if (ffmpegdec->format.video.fps_n != -1 &&
-+        (ffmpegdec->format.video.fps_n != 1000 &&
-+            ffmpegdec->format.video.fps_d != 1)) {
-+      GST_LOG_OBJECT (ffmpegdec, "using input framerate for duration");
-+      out_duration = gst_util_uint64_scale_int (GST_SECOND,
-+          ffmpegdec->format.video.fps_d, ffmpegdec->format.video.fps_n);
-+    } else {
-+      /* don't try to use the decoder's framerate when it seems a bit abnormal,
-+       * which we assume when den >= 1000... */
-+      if (ffmpegdec->context->time_base.num != 0 &&
-+          (ffmpegdec->context->time_base.den > 0 &&
-+              ffmpegdec->context->time_base.den < 1000)) {
-+        GST_LOG_OBJECT (ffmpegdec, "using decoder's framerate for duration");
-+        out_duration = gst_util_uint64_scale_int (GST_SECOND,
-+            ffmpegdec->context->time_base.num *
-+            ffmpegdec->context->ticks_per_frame,
-+            ffmpegdec->context->time_base.den);
-+      } else {
-+        GST_LOG_OBJECT (ffmpegdec, "no valid duration found");
-+      }
-+    }
-+  }
-+
-+  /* Take repeat_pict into account */
-+  if (GST_CLOCK_TIME_IS_VALID (out_duration)) {
-+    out_duration += out_duration * ffmpegdec->picture->repeat_pict / 2;
-+  }
-+  GST_BUFFER_DURATION (*outbuf) = out_duration;
-+
-+  if (out_timestamp != -1 && out_duration != -1 && out_duration != 0)
-+    ffmpegdec->next_out = out_timestamp + out_duration;
-+  else
-+    ffmpegdec->next_out = -1;
-+
-+  /* now see if we need to clip the buffer against the segment boundaries. */
-+  if (G_UNLIKELY (!clip_video_buffer (ffmpegdec, *outbuf, out_timestamp,
-+              out_duration)))
-+    goto clipped;
-+
-+  if (ffmpegdec->picture->top_field_first)
-+    GST_BUFFER_FLAG_SET (*outbuf, GST_VIDEO_BUFFER_TFF);
-+
-+
-+beach:
-+  GST_DEBUG_OBJECT (ffmpegdec, "return flow %d, out %p, len %d",
-+      *ret, *outbuf, len);
-+  return len;
-+
-+  /* special cases */
-+no_output:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec, "no output buffer");
-+    len = -1;
-+    goto beach;
-+  }
-+clipped:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec, "buffer clipped");
-+    gst_buffer_unref (*outbuf);
-+    *outbuf = NULL;
-+    goto beach;
-+  }
-+}
-+
-+/* returns TRUE if buffer is within segment, else FALSE.
-+ * if Buffer is on segment border, it's timestamp and duration will be clipped */
-+static gboolean
-+clip_audio_buffer (GstFFMpegDec * dec, GstBuffer * buf, GstClockTime in_ts,
-+    GstClockTime in_dur)
-+{
-+  GstClockTime stop;
-+  gint64 diff, ctime, cstop;
-+  gboolean res = TRUE;
-+
-+  GST_LOG_OBJECT (dec,
-+      "timestamp:%" GST_TIME_FORMAT ", duration:%" GST_TIME_FORMAT
-+      ", size %u", GST_TIME_ARGS (in_ts), GST_TIME_ARGS (in_dur),
-+      GST_BUFFER_SIZE (buf));
-+
-+  /* can't clip without TIME segment */
-+  if (G_UNLIKELY (dec->segment.format != GST_FORMAT_TIME))
-+    goto beach;
-+
-+  /* we need a start time */
-+  if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (in_ts)))
-+    goto beach;
-+
-+  /* trust duration */
-+  stop = in_ts + in_dur;
-+
-+  res = gst_segment_clip (&dec->segment, GST_FORMAT_TIME, in_ts, stop, &ctime,
-+      &cstop);
-+  if (G_UNLIKELY (!res))
-+    goto out_of_segment;
-+
-+  /* see if some clipping happened */
-+  if (G_UNLIKELY ((diff = ctime - in_ts) > 0)) {
-+    /* bring clipped time to bytes */
-+    diff =
-+        gst_util_uint64_scale_int (diff, dec->format.audio.samplerate,
-+        GST_SECOND) * (dec->format.audio.depth * dec->format.audio.channels);
-+
-+    GST_DEBUG_OBJECT (dec, "clipping start to %" GST_TIME_FORMAT " %"
-+        G_GINT64_FORMAT " bytes", GST_TIME_ARGS (ctime), diff);
-+
-+    GST_BUFFER_SIZE (buf) -= diff;
-+    GST_BUFFER_DATA (buf) += diff;
-+  }
-+  if (G_UNLIKELY ((diff = stop - cstop) > 0)) {
-+    /* bring clipped time to bytes */
-+    diff =
-+        gst_util_uint64_scale_int (diff, dec->format.audio.samplerate,
-+        GST_SECOND) * (dec->format.audio.depth * dec->format.audio.channels);
-+
-+    GST_DEBUG_OBJECT (dec, "clipping stop to %" GST_TIME_FORMAT " %"
-+        G_GINT64_FORMAT " bytes", GST_TIME_ARGS (cstop), diff);
-+
-+    GST_BUFFER_SIZE (buf) -= diff;
-+  }
-+  GST_BUFFER_TIMESTAMP (buf) = ctime;
-+  GST_BUFFER_DURATION (buf) = cstop - ctime;
-+
-+beach:
-+  GST_LOG_OBJECT (dec, "%sdropping", (res ? "not " : ""));
-+  return res;
-+
-+  /* ERRORS */
-+out_of_segment:
-+  {
-+    GST_LOG_OBJECT (dec, "out of segment");
-+    goto beach;
-+  }
-+}
-+
-+static gint
-+gst_ffmpegdec_audio_frame (GstFFMpegDec * ffmpegdec,
-+    AVCodec * in_plugin, guint8 * data, guint size,
-+    const GstTSInfo * dec_info, GstBuffer ** outbuf, GstFlowReturn * ret)
-+{
-+  gint len = -1;
-+  gint have_data = AVCODEC_MAX_AUDIO_FRAME_SIZE;
-+  GstClockTime out_timestamp, out_duration;
-+  gint64 out_offset;
-+  AVPacket packet;
-+
-+  GST_DEBUG_OBJECT (ffmpegdec,
-+      "size:%d, offset:%" G_GINT64_FORMAT ", ts:%" GST_TIME_FORMAT ", dur:%"
-+      GST_TIME_FORMAT ", ffmpegdec->next_out:%" GST_TIME_FORMAT, size,
-+      dec_info->offset, GST_TIME_ARGS (dec_info->timestamp),
-+      GST_TIME_ARGS (dec_info->duration), GST_TIME_ARGS (ffmpegdec->next_out));
-+
-+  *outbuf =
-+      new_aligned_buffer (AVCODEC_MAX_AUDIO_FRAME_SIZE,
-+      GST_PAD_CAPS (ffmpegdec->srcpad));
-+
-+  gst_avpacket_init (&packet, data, size);
-+  len = avcodec_decode_audio3 (ffmpegdec->context,
-+      (int16_t *) GST_BUFFER_DATA (*outbuf), &have_data, &packet);
-+  GST_DEBUG_OBJECT (ffmpegdec,
-+      "Decode audio: len=%d, have_data=%d", len, have_data);
-+
-+  if (len >= 0 && have_data > 0) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "Creating output buffer");
-+    if (!gst_ffmpegdec_negotiate (ffmpegdec, FALSE)) {
-+      gst_buffer_unref (*outbuf);
-+      *outbuf = NULL;
-+      len = -1;
-+      goto beach;
-+    }
-+
-+    /* Buffer size */
-+    GST_BUFFER_SIZE (*outbuf) = have_data;
-+
-+    /*
-+     * Timestamps:
-+     *
-+     *  1) Copy input timestamp if valid
-+     *  2) else interpolate from previous input timestamp
-+     */
-+    /* always take timestamps from the input buffer if any */
-+    if (GST_CLOCK_TIME_IS_VALID (dec_info->timestamp)) {
-+      out_timestamp = dec_info->timestamp;
-+    } else {
-+      out_timestamp = ffmpegdec->next_out;
-+    }
-+
-+    /*
-+     * Duration:
-+     *
-+     *  1) calculate based on number of samples
-+     */
-+    out_duration = gst_util_uint64_scale (have_data, GST_SECOND,
-+        ffmpegdec->format.audio.depth * ffmpegdec->format.audio.channels *
-+        ffmpegdec->format.audio.samplerate);
-+
-+    /* offset:
-+     *
-+     * Just copy
-+     */
-+    out_offset = dec_info->offset;
-+
-+    GST_DEBUG_OBJECT (ffmpegdec,
-+        "Buffer created. Size:%d , timestamp:%" GST_TIME_FORMAT " , duration:%"
-+        GST_TIME_FORMAT, have_data,
-+        GST_TIME_ARGS (out_timestamp), GST_TIME_ARGS (out_duration));
-+
-+    GST_BUFFER_TIMESTAMP (*outbuf) = out_timestamp;
-+    GST_BUFFER_DURATION (*outbuf) = out_duration;
-+    GST_BUFFER_OFFSET (*outbuf) = out_offset;
-+    gst_buffer_set_caps (*outbuf, GST_PAD_CAPS (ffmpegdec->srcpad));
-+
-+    /* the next timestamp we'll use when interpolating */
-+    if (GST_CLOCK_TIME_IS_VALID (out_timestamp))
-+      ffmpegdec->next_out = out_timestamp + out_duration;
-+
-+    /* now see if we need to clip the buffer against the segment boundaries. */
-+    if (G_UNLIKELY (!clip_audio_buffer (ffmpegdec, *outbuf, out_timestamp,
-+                out_duration)))
-+      goto clipped;
-+
-+  } else {
-+    gst_buffer_unref (*outbuf);
-+    *outbuf = NULL;
-+  }
-+
-+  /* If we don't error out after the first failed read with the AAC decoder,
-+   * we must *not* carry on pushing data, else we'll cause segfaults... */
-+  if (len == -1 && (in_plugin->id == CODEC_ID_AAC
-+          || in_plugin->id == CODEC_ID_AAC_LATM)) {
-+    GST_ELEMENT_ERROR (ffmpegdec, STREAM, DECODE, (NULL),
-+        ("Decoding of AAC stream by FFMPEG failed."));
-+    *ret = GST_FLOW_ERROR;
-+  }
-+
-+beach:
-+  GST_DEBUG_OBJECT (ffmpegdec, "return flow %d, out %p, len %d",
-+      *ret, *outbuf, len);
-+  return len;
-+
-+  /* ERRORS */
-+clipped:
-+  {
-+    GST_DEBUG_OBJECT (ffmpegdec, "buffer clipped");
-+    gst_buffer_unref (*outbuf);
-+    *outbuf = NULL;
-+    goto beach;
-+  }
-+}
-+
-+/* gst_ffmpegdec_frame:
-+ * ffmpegdec:
-+ * data: pointer to the data to decode
-+ * size: size of data in bytes
-+ * got_data: 0 if no data was decoded, != 0 otherwise.
-+ * in_time: timestamp of data
-+ * in_duration: duration of data
-+ * ret: GstFlowReturn to return in the chain function
-+ *
-+ * Decode the given frame and pushes it downstream.
-+ *
-+ * Returns: Number of bytes used in decoding, -1 on error/failure.
-+ */
-+
-+static gint
-+gst_ffmpegdec_frame (GstFFMpegDec * ffmpegdec,
-+    guint8 * data, guint size, gint * got_data, const GstTSInfo * dec_info,
-+    GstFlowReturn * ret)
-+{
-+  GstFFMpegDecClass *oclass;
-+  GstBuffer *outbuf = NULL;
-+  gint have_data = 0, len = 0;
-+
-+  if (G_UNLIKELY (ffmpegdec->context->codec == NULL))
-+    goto no_codec;
-+
-+  GST_LOG_OBJECT (ffmpegdec, "data:%p, size:%d, id:%d", data, size,
-+      dec_info->idx);
-+
-+  *ret = GST_FLOW_OK;
-+  ffmpegdec->context->frame_number++;
-+
-+  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+
-+  switch (oclass->in_plugin->type) {
-+    case AVMEDIA_TYPE_VIDEO:
-+      len =
-+          gst_ffmpegdec_video_frame (ffmpegdec, data, size, dec_info, &outbuf,
-+          ret);
-+      break;
-+    case AVMEDIA_TYPE_AUDIO:
-+      len =
-+          gst_ffmpegdec_audio_frame (ffmpegdec, oclass->in_plugin, data, size,
-+          dec_info, &outbuf, ret);
-+
-+      /* if we did not get an output buffer and we have a pending discont, don't
-+       * clear the input timestamps, we will put them on the next buffer because
-+       * else we might create the first buffer with a very big timestamp gap. */
-+      if (outbuf == NULL && ffmpegdec->discont) {
-+        GST_DEBUG_OBJECT (ffmpegdec, "no buffer but keeping timestamp");
-+        ffmpegdec->clear_ts = FALSE;
-+      }
-+      break;
-+    default:
-+      GST_ERROR_OBJECT (ffmpegdec, "Asked to decode non-audio/video frame !");
-+      g_assert_not_reached ();
-+      break;
-+  }
-+
-+  if (outbuf)
-+    have_data = 1;
-+
-+  if (len < 0 || have_data < 0) {
-+    GST_WARNING_OBJECT (ffmpegdec,
-+        "ffdec_%s: decoding error (len: %d, have_data: %d)",
-+        oclass->in_plugin->name, len, have_data);
-+    *got_data = 0;
-+    goto beach;
-+  } else if (len == 0 && have_data == 0) {
-+    *got_data = 0;
-+    goto beach;
-+  } else {
-+    /* this is where I lost my last clue on ffmpeg... */
-+    *got_data = 1;
-+  }
-+
-+  if (outbuf) {
-+    GST_LOG_OBJECT (ffmpegdec,
-+        "Decoded data, now pushing buffer %p with offset %" G_GINT64_FORMAT
-+        ", timestamp %" GST_TIME_FORMAT " and duration %" GST_TIME_FORMAT,
-+        outbuf, GST_BUFFER_OFFSET (outbuf),
-+        GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (outbuf)),
-+        GST_TIME_ARGS (GST_BUFFER_DURATION (outbuf)));
-+
-+    /* mark pending discont */
-+    if (ffmpegdec->discont) {
-+      GST_BUFFER_FLAG_SET (outbuf, GST_BUFFER_FLAG_DISCONT);
-+      ffmpegdec->discont = FALSE;
-+    }
-+
-+    if (ffmpegdec->segment.rate > 0.0) {
-+      /* and off we go */
-+      *ret = gst_pad_push (ffmpegdec->srcpad, outbuf);
-+    } else {
-+      /* reverse playback, queue frame till later when we get a discont. */
-+      GST_DEBUG_OBJECT (ffmpegdec, "queued frame");
-+      ffmpegdec->queued = g_list_prepend (ffmpegdec->queued, outbuf);
-+      *ret = GST_FLOW_OK;
-+    }
-+  } else {
-+    GST_DEBUG_OBJECT (ffmpegdec, "We didn't get a decoded buffer");
-+  }
-+
-+beach:
-+  return len;
-+
-+  /* ERRORS */
-+no_codec:
-+  {
-+    GST_ERROR_OBJECT (ffmpegdec, "no codec context");
-+    return -1;
-+  }
-+}
-+
-+static void
-+gst_ffmpegdec_drain (GstFFMpegDec * ffmpegdec)
-+{
-+  GstFFMpegDecClass *oclass;
-+
-+  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+
-+  if (oclass->in_plugin->capabilities & CODEC_CAP_DELAY) {
-+    gint have_data, len, try = 0;
-+
-+    GST_LOG_OBJECT (ffmpegdec,
-+        "codec has delay capabilities, calling until ffmpeg has drained everything");
-+
-+    do {
-+      GstFlowReturn ret;
-+
-+      len =
-+          gst_ffmpegdec_frame (ffmpegdec, NULL, 0, &have_data, &ts_info_none,
-+          &ret);
-+      if (len < 0 || have_data == 0)
-+        break;
-+    } while (try++ < 10);
-+  }
-+  if (ffmpegdec->segment.rate < 0.0) {
-+    /* if we have some queued frames for reverse playback, flush them now */
-+    flush_queued (ffmpegdec);
-+  }
-+}
-+
-+static void
-+gst_ffmpegdec_flush_pcache (GstFFMpegDec * ffmpegdec)
-+{
-+  if (ffmpegdec->pctx) {
-+    gint size, bsize;
-+    guint8 *data;
-+    guint8 bdata[FF_INPUT_BUFFER_PADDING_SIZE];
-+
-+    bsize = FF_INPUT_BUFFER_PADDING_SIZE;
-+    memset (bdata, 0, bsize);
-+
-+    /* parse some dummy data to work around some ffmpeg weirdness where it keeps
-+     * the previous pts around */
-+    av_parser_parse2 (ffmpegdec->pctx, ffmpegdec->context,
-+        &data, &size, bdata, bsize, -1, -1, -1);
-+    ffmpegdec->pctx->pts = -1;
-+    ffmpegdec->pctx->dts = -1;
-+  }
-+
-+  if (ffmpegdec->pcache) {
-+    gst_buffer_unref (ffmpegdec->pcache);
-+    ffmpegdec->pcache = NULL;
-+  }
-+}
-+
-+static gboolean
-+gst_ffmpegdec_sink_event (GstPad * pad, GstEvent * event)
-+{
-+  GstFFMpegDec *ffmpegdec;
-+  gboolean ret = FALSE;
-+
-+  ffmpegdec = (GstFFMpegDec *) gst_pad_get_parent (pad);
-+
-+  GST_DEBUG_OBJECT (ffmpegdec, "Handling %s event",
-+      GST_EVENT_TYPE_NAME (event));
-+
-+  switch (GST_EVENT_TYPE (event)) {
-+    case GST_EVENT_EOS:
-+    {
-+      gst_ffmpegdec_drain (ffmpegdec);
-+      break;
-+    }
-+    case GST_EVENT_FLUSH_STOP:
-+    {
-+      if (ffmpegdec->opened) {
-+        avcodec_flush_buffers (ffmpegdec->context);
-+      }
-+      gst_ffmpegdec_reset_ts (ffmpegdec);
-+      gst_ffmpegdec_reset_qos (ffmpegdec);
-+      gst_ffmpegdec_flush_pcache (ffmpegdec);
-+      gst_segment_init (&ffmpegdec->segment, GST_FORMAT_TIME);
-+      clear_queued (ffmpegdec);
-+      break;
-+    }
-+    case GST_EVENT_NEWSEGMENT:
-+    {
-+      gboolean update;
-+      GstFormat fmt;
-+      gint64 start, stop, time;
-+      gdouble rate, arate;
-+
-+      gst_event_parse_new_segment_full (event, &update, &rate, &arate, &fmt,
-+          &start, &stop, &time);
-+
-+      switch (fmt) {
-+        case GST_FORMAT_TIME:
-+          /* fine, our native segment format */
-+          break;
-+        case GST_FORMAT_BYTES:
-+        {
-+          gint bit_rate;
-+
-+          bit_rate = ffmpegdec->context->bit_rate;
-+
-+          /* convert to time or fail */
-+          if (!bit_rate)
-+            goto no_bitrate;
-+
-+          GST_DEBUG_OBJECT (ffmpegdec, "bitrate: %d", bit_rate);
-+
-+          /* convert values to TIME */
-+          if (start != -1)
-+            start = gst_util_uint64_scale_int (start, GST_SECOND, bit_rate);
-+          if (stop != -1)
-+            stop = gst_util_uint64_scale_int (stop, GST_SECOND, bit_rate);
-+          if (time != -1)
-+            time = gst_util_uint64_scale_int (time, GST_SECOND, bit_rate);
-+
-+          /* unref old event */
-+          gst_event_unref (event);
-+
-+          /* create new converted time segment */
-+          fmt = GST_FORMAT_TIME;
-+          /* FIXME, bitrate is not good enough too find a good stop, let's
-+           * hope start and time were 0... meh. */
-+          stop = -1;
-+          event = gst_event_new_new_segment (update, rate, fmt,
-+              start, stop, time);
-+          break;
-+        }
-+        default:
-+          /* invalid format */
-+          goto invalid_format;
-+      }
-+
-+      /* drain pending frames before trying to use the new segment, queued
-+       * buffers belonged to the previous segment. */
-+      if (ffmpegdec->context->codec)
-+        gst_ffmpegdec_drain (ffmpegdec);
-+
-+      GST_DEBUG_OBJECT (ffmpegdec,
-+          "NEWSEGMENT in time start %" GST_TIME_FORMAT " -- stop %"
-+          GST_TIME_FORMAT, GST_TIME_ARGS (start), GST_TIME_ARGS (stop));
-+
-+      /* and store the values */
-+      gst_segment_set_newsegment_full (&ffmpegdec->segment, update,
-+          rate, arate, fmt, start, stop, time);
-+      break;
-+    }
-+    default:
-+      break;
-+  }
-+
-+  /* and push segment downstream */
-+  ret = gst_pad_push_event (ffmpegdec->srcpad, event);
-+
-+done:
-+  gst_object_unref (ffmpegdec);
-+
-+  return ret;
-+
-+  /* ERRORS */
-+no_bitrate:
-+  {
-+    GST_WARNING_OBJECT (ffmpegdec, "no bitrate to convert BYTES to TIME");
-+    gst_event_unref (event);
-+    goto done;
-+  }
-+invalid_format:
-+  {
-+    GST_WARNING_OBJECT (ffmpegdec, "unknown format received in NEWSEGMENT");
-+    gst_event_unref (event);
-+    goto done;
-+  }
-+}
-+
-+static GstFlowReturn
-+gst_ffmpegdec_chain (GstPad * pad, GstBuffer * inbuf)
-+{
-+  GstFFMpegDec *ffmpegdec;
-+  GstFFMpegDecClass *oclass;
-+  guint8 *data, *bdata;
-+  gint size, bsize, len, have_data;
-+  GstFlowReturn ret = GST_FLOW_OK;
-+  GstClockTime in_timestamp;
-+  GstClockTime in_duration;
-+  gboolean discont;
-+  gint64 in_offset;
-+  const GstTSInfo *in_info;
-+  const GstTSInfo *dec_info;
-+
-+  ffmpegdec = (GstFFMpegDec *) (GST_PAD_PARENT (pad));
-+
-+  if (G_UNLIKELY (!ffmpegdec->opened))
-+    goto not_negotiated;
-+
-+  discont = GST_BUFFER_IS_DISCONT (inbuf);
-+
-+  /* The discont flags marks a buffer that is not continuous with the previous
-+   * buffer. This means we need to clear whatever data we currently have. We
-+   * currently also wait for a new keyframe, which might be suboptimal in the
-+   * case of a network error, better show the errors than to drop all data.. */
-+  if (G_UNLIKELY (discont)) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "received DISCONT");
-+    /* drain what we have queued */
-+    gst_ffmpegdec_drain (ffmpegdec);
-+    gst_ffmpegdec_flush_pcache (ffmpegdec);
-+    avcodec_flush_buffers (ffmpegdec->context);
-+    ffmpegdec->discont = TRUE;
-+    gst_ffmpegdec_reset_ts (ffmpegdec);
-+  }
-+  /* by default we clear the input timestamp after decoding each frame so that
-+   * interpollation can work. */
-+  ffmpegdec->clear_ts = TRUE;
-+
-+  oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+
-+  /* parse cache joining. If there is cached data */
-+  if (ffmpegdec->pcache) {
-+    /* join with previous data */
-+    GST_LOG_OBJECT (ffmpegdec, "join parse cache");
-+    inbuf = gst_buffer_join (ffmpegdec->pcache, inbuf);
-+    /* no more cached data, we assume we can consume the complete cache */
-+    ffmpegdec->pcache = NULL;
-+  }
-+
-+  in_timestamp = GST_BUFFER_TIMESTAMP (inbuf);
-+  in_duration = GST_BUFFER_DURATION (inbuf);
-+  in_offset = GST_BUFFER_OFFSET (inbuf);
-+
-+  /* get handle to timestamp info, we can pass this around to ffmpeg */
-+  in_info = gst_ts_info_store (ffmpegdec, in_timestamp, in_duration, in_offset);
-+
-+  if (in_timestamp != -1) {
-+    /* check for increasing timestamps if they are jumping backwards, we
-+     * probably are dealing with PTS as timestamps */
-+    if (!ffmpegdec->reordered_in && ffmpegdec->last_in != -1) {
-+      if (in_timestamp < ffmpegdec->last_in) {
-+        GST_LOG_OBJECT (ffmpegdec, "detected reordered input timestamps");
-+        ffmpegdec->reordered_in = TRUE;
-+        ffmpegdec->last_diff = GST_CLOCK_TIME_NONE;
-+      } else if (in_timestamp > ffmpegdec->last_in) {
-+        GstClockTime diff;
-+        /* keep track of timestamp diff to estimate duration */
-+        diff = in_timestamp - ffmpegdec->last_in;
-+        /* need to scale with amount of frames in the interval */
-+        if (ffmpegdec->last_frames)
-+          diff /= ffmpegdec->last_frames;
-+
-+        GST_LOG_OBJECT (ffmpegdec, "estimated duration %" GST_TIME_FORMAT " %u",
-+            GST_TIME_ARGS (diff), ffmpegdec->last_frames);
-+
-+        ffmpegdec->last_diff = diff;
-+      }
-+    }
-+    ffmpegdec->last_in = in_timestamp;
-+    ffmpegdec->last_frames = 0;
-+  }
-+
-+  GST_LOG_OBJECT (ffmpegdec,
-+      "Received new data of size %u, offset:%" G_GUINT64_FORMAT ", ts:%"
-+      GST_TIME_FORMAT ", dur:%" GST_TIME_FORMAT ", info %d",
-+      GST_BUFFER_SIZE (inbuf), GST_BUFFER_OFFSET (inbuf),
-+      GST_TIME_ARGS (in_timestamp), GST_TIME_ARGS (in_duration), in_info->idx);
-+
-+  /* workarounds, functions write to buffers:
-+   *  libavcodec/svq1.c:svq1_decode_frame writes to the given buffer.
-+   *  libavcodec/svq3.c:svq3_decode_slice_header too.
-+   * ffmpeg devs know about it and will fix it (they said). */
-+  if (oclass->in_plugin->id == CODEC_ID_SVQ1 ||
-+      oclass->in_plugin->id == CODEC_ID_SVQ3) {
-+    inbuf = gst_buffer_make_writable (inbuf);
-+  }
-+
-+  bdata = GST_BUFFER_DATA (inbuf);
-+  bsize = GST_BUFFER_SIZE (inbuf);
-+
-+  if (ffmpegdec->do_padding) {
-+    /* add padding */
-+    if (ffmpegdec->padded_size < bsize + FF_INPUT_BUFFER_PADDING_SIZE) {
-+      ffmpegdec->padded_size = bsize + FF_INPUT_BUFFER_PADDING_SIZE;
-+      ffmpegdec->padded = g_realloc (ffmpegdec->padded, ffmpegdec->padded_size);
-+      GST_LOG_OBJECT (ffmpegdec, "resized padding buffer to %d",
-+          ffmpegdec->padded_size);
-+    }
-+    memcpy (ffmpegdec->padded, bdata, bsize);
-+    memset (ffmpegdec->padded + bsize, 0, FF_INPUT_BUFFER_PADDING_SIZE);
-+
-+    bdata = ffmpegdec->padded;
-+  }
-+
-+  do {
-+    guint8 tmp_padding[FF_INPUT_BUFFER_PADDING_SIZE];
-+
-+    /* parse, if at all possible */
-+    if (ffmpegdec->pctx) {
-+      gint res;
-+
-+      GST_LOG_OBJECT (ffmpegdec,
-+          "Calling av_parser_parse2 with offset %" G_GINT64_FORMAT ", ts:%"
-+          GST_TIME_FORMAT " size %d", in_offset, GST_TIME_ARGS (in_timestamp),
-+          bsize);
-+
-+      /* feed the parser. We pass the timestamp info so that we can recover all
-+       * info again later */
-+      res = av_parser_parse2 (ffmpegdec->pctx, ffmpegdec->context,
-+          &data, &size, bdata, bsize, in_info->idx, in_info->idx, in_offset);
-+
-+      GST_LOG_OBJECT (ffmpegdec,
-+          "parser returned res %d and size %d, id %" G_GINT64_FORMAT, res, size,
-+          ffmpegdec->pctx->pts);
-+
-+      /* store pts for decoding */
-+      if (ffmpegdec->pctx->pts != AV_NOPTS_VALUE && ffmpegdec->pctx->pts != -1)
-+        dec_info = gst_ts_info_get (ffmpegdec, ffmpegdec->pctx->pts);
-+      else {
-+        /* ffmpeg sometimes loses track after a flush, help it by feeding a
-+         * valid start time */
-+        ffmpegdec->pctx->pts = in_info->idx;
-+        ffmpegdec->pctx->dts = in_info->idx;
-+        dec_info = in_info;
-+      }
-+
-+      GST_LOG_OBJECT (ffmpegdec, "consuming %d bytes. id %d", size,
-+          dec_info->idx);
-+
-+      if (res) {
-+        /* there is output, set pointers for next round. */
-+        bsize -= res;
-+        bdata += res;
-+      } else {
-+        /* Parser did not consume any data, make sure we don't clear the
-+         * timestamp for the next round */
-+        ffmpegdec->clear_ts = FALSE;
-+      }
-+
-+      /* if there is no output, we must break and wait for more data. also the
-+       * timestamp in the context is not updated. */
-+      if (size == 0) {
-+        if (bsize > 0)
-+          continue;
-+        else
-+          break;
-+      }
-+    } else {
-+      data = bdata;
-+      size = bsize;
-+
-+      dec_info = in_info;
-+    }
-+
-+    if (ffmpegdec->do_padding) {
-+      /* add temporary padding */
-+      memcpy (tmp_padding, data + size, FF_INPUT_BUFFER_PADDING_SIZE);
-+      memset (data + size, 0, FF_INPUT_BUFFER_PADDING_SIZE);
-+    }
-+
-+    /* decode a frame of audio/video now */
-+    len =
-+        gst_ffmpegdec_frame (ffmpegdec, data, size, &have_data, dec_info, &ret);
-+
-+    if (ffmpegdec->do_padding) {
-+      memcpy (data + size, tmp_padding, FF_INPUT_BUFFER_PADDING_SIZE);
-+    }
-+
-+    if (ret != GST_FLOW_OK) {
-+      GST_LOG_OBJECT (ffmpegdec, "breaking because of flow ret %s",
-+          gst_flow_get_name (ret));
-+      /* bad flow retun, make sure we discard all data and exit */
-+      bsize = 0;
-+      break;
-+    }
-+    if (!ffmpegdec->pctx) {
-+      if (len == 0 && !have_data) {
-+        /* nothing was decoded, this could be because no data was available or
-+         * because we were skipping frames.
-+         * If we have no context we must exit and wait for more data, we keep the
-+         * data we tried. */
-+        GST_LOG_OBJECT (ffmpegdec, "Decoding didn't return any data, breaking");
-+        break;
-+      } else if (len < 0) {
-+        /* a decoding error happened, we must break and try again with next data. */
-+        GST_LOG_OBJECT (ffmpegdec, "Decoding error, breaking");
-+        bsize = 0;
-+        break;
-+      }
-+      /* prepare for the next round, for codecs with a context we did this
-+       * already when using the parser. */
-+      bsize -= len;
-+      bdata += len;
-+    } else {
-+      if (len == 0) {
-+        /* nothing was decoded, this could be because no data was available or
-+         * because we were skipping frames. Since we have a parser we can
-+         * continue with the next frame */
-+        GST_LOG_OBJECT (ffmpegdec,
-+            "Decoding didn't return any data, trying next");
-+      } else if (len < 0) {
-+        /* we have a context that will bring us to the next frame */
-+        GST_LOG_OBJECT (ffmpegdec, "Decoding error, trying next");
-+      }
-+    }
-+
-+    /* make sure we don't use the same old timestamp for the next frame and let
-+     * the interpollation take care of it. */
-+    if (ffmpegdec->clear_ts) {
-+      in_timestamp = GST_CLOCK_TIME_NONE;
-+      in_duration = GST_CLOCK_TIME_NONE;
-+      in_offset = GST_BUFFER_OFFSET_NONE;
-+      in_info = GST_TS_INFO_NONE;
-+    } else {
-+      ffmpegdec->clear_ts = TRUE;
-+    }
-+    ffmpegdec->last_frames++;
-+
-+    GST_LOG_OBJECT (ffmpegdec, "Before (while bsize>0).  bsize:%d , bdata:%p",
-+        bsize, bdata);
-+  } while (bsize > 0);
-+
-+  /* keep left-over */
-+  if (ffmpegdec->pctx && bsize > 0) {
-+    in_timestamp = GST_BUFFER_TIMESTAMP (inbuf);
-+    in_offset = GST_BUFFER_OFFSET (inbuf);
-+
-+    GST_LOG_OBJECT (ffmpegdec,
-+        "Keeping %d bytes of data with offset %" G_GINT64_FORMAT ", timestamp %"
-+        GST_TIME_FORMAT, bsize, in_offset, GST_TIME_ARGS (in_timestamp));
-+
-+    ffmpegdec->pcache = gst_buffer_create_sub (inbuf,
-+        GST_BUFFER_SIZE (inbuf) - bsize, bsize);
-+    /* we keep timestamp, even though all we really know is that the correct
-+     * timestamp is not below the one from inbuf */
-+    GST_BUFFER_TIMESTAMP (ffmpegdec->pcache) = in_timestamp;
-+    GST_BUFFER_OFFSET (ffmpegdec->pcache) = in_offset;
-+  } else if (bsize > 0) {
-+    GST_DEBUG_OBJECT (ffmpegdec, "Dropping %d bytes of data", bsize);
-+  }
-+  gst_buffer_unref (inbuf);
-+
-+  return ret;
-+
-+  /* ERRORS */
-+not_negotiated:
-+  {
-+    oclass = (GstFFMpegDecClass *) (G_OBJECT_GET_CLASS (ffmpegdec));
-+    GST_ELEMENT_ERROR (ffmpegdec, CORE, NEGOTIATION, (NULL),
-+        ("ffdec_%s: input format was not set before data start",
-+            oclass->in_plugin->name));
-+    gst_buffer_unref (inbuf);
-+    return GST_FLOW_NOT_NEGOTIATED;
-+  }
-+}
-+
-+static GstStateChangeReturn
-+gst_ffmpegdec_change_state (GstElement * element, GstStateChange transition)
-+{
-+  GstFFMpegDec *ffmpegdec = (GstFFMpegDec *) element;
-+  GstStateChangeReturn ret;
-+
-+  ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
-+
-+  switch (transition) {
-+    case GST_STATE_CHANGE_PAUSED_TO_READY:
-+      GST_OBJECT_LOCK (ffmpegdec);
-+      gst_ffmpegdec_close (ffmpegdec);
-+      GST_OBJECT_UNLOCK (ffmpegdec);
-+      clear_queued (ffmpegdec);
-+      g_free (ffmpegdec->padded);
-+      ffmpegdec->padded = NULL;
-+      ffmpegdec->padded_size = 0;
-+      ffmpegdec->can_allocate_aligned = TRUE;
-+      break;
-+    default:
-+      break;
-+  }
-+
-+  return ret;
-+}
-+
-+static void
-+gst_ffmpegdec_set_property (GObject * object,
-+    guint prop_id, const GValue * value, GParamSpec * pspec)
-+{
-+  GstFFMpegDec *ffmpegdec = (GstFFMpegDec *) object;
-+
-+  switch (prop_id) {
-+    case PROP_LOWRES:
-+      ffmpegdec->lowres = ffmpegdec->context->lowres = g_value_get_enum (value);
-+      break;
-+    case PROP_SKIPFRAME:
-+      ffmpegdec->skip_frame = ffmpegdec->context->skip_frame =
-+          g_value_get_enum (value);
-+      break;
-+    case PROP_DIRECT_RENDERING:
-+      ffmpegdec->direct_rendering = g_value_get_boolean (value);
-+      break;
-+    case PROP_DO_PADDING:
-+      ffmpegdec->do_padding = g_value_get_boolean (value);
-+      break;
-+    case PROP_DEBUG_MV:
-+      ffmpegdec->debug_mv = ffmpegdec->context->debug_mv =
-+          g_value_get_boolean (value);
-+      break;
-+    case PROP_CROP:
-+      ffmpegdec->crop = g_value_get_boolean (value);
-+      break;
-+    case PROP_MAX_THREADS:
-+      ffmpegdec->max_threads = g_value_get_int (value);
-+      break;
-+    default:
-+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-+      break;
-+  }
-+}
-+
-+static void
-+gst_ffmpegdec_get_property (GObject * object,
-+    guint prop_id, GValue * value, GParamSpec * pspec)
-+{
-+  GstFFMpegDec *ffmpegdec = (GstFFMpegDec *) object;
-+
-+  switch (prop_id) {
-+    case PROP_LOWRES:
-+      g_value_set_enum (value, ffmpegdec->context->lowres);
-+      break;
-+    case PROP_SKIPFRAME:
-+      g_value_set_enum (value, ffmpegdec->context->skip_frame);
-+      break;
-+    case PROP_DIRECT_RENDERING:
-+      g_value_set_boolean (value, ffmpegdec->direct_rendering);
-+      break;
-+    case PROP_DO_PADDING:
-+      g_value_set_boolean (value, ffmpegdec->do_padding);
-+      break;
-+    case PROP_DEBUG_MV:
-+      g_value_set_boolean (value, ffmpegdec->context->debug_mv);
-+      break;
-+    case PROP_CROP:
-+      g_value_set_boolean (value, ffmpegdec->crop);
-+      break;
-+    case PROP_MAX_THREADS:
-+      g_value_set_int (value, ffmpegdec->max_threads);
-+      break;
-+    default:
-+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-+      break;
-+  }
-+}
-+
-+gboolean
-+gst_ffmpegdec_register (GstPlugin * plugin)
-+{
-+  GTypeInfo typeinfo = {
-+    sizeof (GstFFMpegDecClass),
-+    (GBaseInitFunc) gst_ffmpegdec_base_init,
-+    NULL,
-+    (GClassInitFunc) gst_ffmpegdec_class_init,
-+    NULL,
-+    NULL,
-+    sizeof (GstFFMpegDec),
-+    0,
-+    (GInstanceInitFunc) gst_ffmpegdec_init,
-+  };
-+  GType type;
-+  AVCodec *in_plugin;
-+  gint rank;
-+
-+  in_plugin = av_codec_next (NULL);
-+
-+  GST_LOG ("Registering decoders");
-+
-+  while (in_plugin) {
-+    gchar *type_name;
-+    gchar *plugin_name;
-+
-+    /* only decoders */
-+    if (!in_plugin->decode) {
-+      goto next;
-+    }
-+
-+    /* no quasi-codecs, please */
-+    if (in_plugin->id == CODEC_ID_RAWVIDEO ||
-+        in_plugin->id == CODEC_ID_V210 ||
-+        in_plugin->id == CODEC_ID_V210X ||
-+        in_plugin->id == CODEC_ID_R210 ||
-+        (in_plugin->id >= CODEC_ID_PCM_S16LE &&
-+            in_plugin->id <= CODEC_ID_PCM_BLURAY)) {
-+      goto next;
-+    }
-+
-+    /* No decoders depending on external libraries (we don't build them, but
-+     * people who build against an external ffmpeg might have them.
-+     * We have native gstreamer plugins for all of those libraries anyway. */
-+    if (!strncmp (in_plugin->name, "lib", 3)) {
-+      GST_DEBUG
-+          ("Not using external library decoder %s. Use the gstreamer-native ones instead.",
-+          in_plugin->name);
-+      goto next;
-+    }
-+
-+    /* No vdpau plugins until we can figure out how to properly use them
-+     * outside of ffmpeg. */
-+    if (g_str_has_suffix (in_plugin->name, "_vdpau")) {
-+      GST_DEBUG
-+          ("Ignoring VDPAU decoder %s. We can't handle this outside of ffmpeg",
-+          in_plugin->name);
-+      goto next;
-+    }
-+
-+    if (g_str_has_suffix (in_plugin->name, "_xvmc")) {
-+      GST_DEBUG
-+          ("Ignoring XVMC decoder %s. We can't handle this outside of ffmpeg",
-+          in_plugin->name);
-+      goto next;
-+    }
-+
-+    GST_DEBUG ("Trying plugin %s [%s]", in_plugin->name, in_plugin->long_name);
-+
-+    /* no codecs for which we're GUARANTEED to have better alternatives */
-+    /* MPEG1VIDEO : the mpeg2video decoder is preferred */
-+    /* MP1 : Use MP3 for decoding */
-+    /* MP2 : Use MP3 for decoding */
-+    /* Theora: Use libtheora based theoradec */
-+    if (!strcmp (in_plugin->name, "gif") ||
-+        !strcmp (in_plugin->name, "vorbis") ||
-+        !strcmp (in_plugin->name, "theora") ||
-+        !strcmp (in_plugin->name, "mpeg1video") ||
-+        !strcmp (in_plugin->name, "wavpack") ||
-+        !strcmp (in_plugin->name, "mp1") ||
-+        !strcmp (in_plugin->name, "mp2") ||
-+        !strcmp (in_plugin->name, "libfaad") ||
-+        !strcmp (in_plugin->name, "mpeg4aac") ||
-+        !strcmp (in_plugin->name, "ass") ||
-+        !strcmp (in_plugin->name, "srt") ||
-+        !strcmp (in_plugin->name, "pgssub") ||
-+        !strcmp (in_plugin->name, "dvdsub") ||
-+        !strcmp (in_plugin->name, "dvbsub")) {
-+      GST_LOG ("Ignoring decoder %s", in_plugin->name);
-+      goto next;
-+    }
-+
-+    /* construct the type */
-+    plugin_name = g_strdup ((gchar *) in_plugin->name);
-+    g_strdelimit (plugin_name, NULL, '_');
-+    type_name = g_strdup_printf ("ffdec_%s", plugin_name);
-+    g_free (plugin_name);
-+
-+    type = g_type_from_name (type_name);
-+
-+    if (!type) {
-+      /* create the gtype now */
-+      type = g_type_register_static (GST_TYPE_ELEMENT, type_name, &typeinfo, 0);
-+      g_type_set_qdata (type, GST_FFDEC_PARAMS_QDATA, (gpointer) in_plugin);
-+    }
-+
-+    /* (Ronald) MPEG-4 gets a higher priority because it has been well-
-+     * tested and by far outperforms divxdec/xviddec - so we prefer it.
-+     * msmpeg4v3 same, as it outperforms divxdec for divx3 playback.
-+     * VC1/WMV3 are not working and thus unpreferred for now. */
-+    switch (in_plugin->id) {
-+      case CODEC_ID_MPEG4:
-+      case CODEC_ID_MSMPEG4V3:
-+      case CODEC_ID_H264:
-+      case CODEC_ID_RA_144:
-+      case CODEC_ID_RA_288:
-+      case CODEC_ID_RV10:
-+      case CODEC_ID_RV20:
-+      case CODEC_ID_RV30:
-+      case CODEC_ID_RV40:
-+      case CODEC_ID_COOK:
-+        rank = GST_RANK_SECONDARY;
-+        break;
-+        /* DVVIDEO: we have a good dv decoder, fast on both ppc as well as x86.
-+         * They say libdv's quality is better though. leave as secondary.
-+         * note: if you change this, see the code in gstdv.c in good/ext/dv.
-+         *
-+         * SIPR: decoder should have a higher rank than realaudiodec.
-+         */
-+      case CODEC_ID_DVVIDEO:
-+      case CODEC_ID_SIPR:
-+        rank = GST_RANK_SECONDARY;
-+        break;
-+      case CODEC_ID_MP3:
-+        rank = GST_RANK_NONE;
-+        break;
-+        /* TEMPORARILY DISABLING AC3/EAC3/DTS for 0.10.12 release
-+         * due to downmixing failure.
-+         * See Bug #608892 for more details */
-+      case CODEC_ID_EAC3:
-+      case CODEC_ID_AC3:
-+      case CODEC_ID_DTS:
-+        rank = GST_RANK_NONE;
-+        break;
-+      default:
-+        rank = GST_RANK_MARGINAL;
-+        break;
-+    }
-+    if (!gst_element_register (plugin, type_name, rank, type)) {
-+      g_warning ("Failed to register %s", type_name);
-+      g_free (type_name);
-+      return FALSE;
-+    }
-+
-+    g_free (type_name);
-+
-+  next:
-+    in_plugin = av_codec_next (in_plugin);
-+  }
-+
-+  GST_LOG ("Finished Registering decoders");
-+
-+  return TRUE;
-+}
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdec.c.rej gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdec.c.rej
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdec.c.rej	1970-01-01 01:00:00.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdec.c.rej	2014-08-08 15:26:38.471858652 +0200
-@@ -0,0 +1,11 @@
-+--- ext/ffmpeg/gstffmpegdec.c
-++++ ext/ffmpeg/gstffmpegdec.c
-+@@ -1565,7 +1564,7 @@
-+         gst_message_new_latency (GST_OBJECT_CAST (ffmpegdec)));
-+   }
-+ 
-+-  is_itype = (ffmpegdec->picture->pict_type == FF_I_TYPE);
-++  is_itype = (ffmpegdec->picture->pict_type == AV_PICTURE_TYPE_I);
-+   is_reference = (ffmpegdec->picture->reference == 1);
-+ 
-+   iskeyframe = (is_itype || is_reference || ffmpegdec->picture->key_frame)
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdemux.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdemux.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegdemux.c	2011-07-13 11:07:28.000000000 +0200
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegdemux.c	2014-08-08 15:26:07.874857555 +0200
-@@ -343,8 +343,11 @@
-   demux->audiopads = 0;
- 
-   /* close demuxer context from ffmpeg */
--  av_close_input_file (demux->context);
--  demux->context = NULL;
-+  if (demux->seekable)
-+    gst_ffmpegdata_close (demux->context->pb);
-+  else
-+    gst_ffmpeg_pipe_close (demux->context->pb);
-+  avformat_close_input (&demux->context);
- 
-   GST_OBJECT_LOCK (demux);
-   demux->opened = FALSE;
-@@ -1146,9 +1149,9 @@
- static gboolean
- gst_ffmpegdemux_open (GstFFMpegDemux * demux)
- {
-+  AVIOContext *iocontext = NULL;
-   GstFFMpegDemuxClass *oclass =
-       (GstFFMpegDemuxClass *) G_OBJECT_GET_CLASS (demux);
--  gchar *location;
-   gint res, n_streams, i;
- #if 0
-   /* Re-enable once converted to new AVMetaData API
-@@ -1164,15 +1167,14 @@
- 
-   /* open via our input protocol hack */
-   if (demux->seekable)
--    location = g_strdup_printf ("gstreamer://%p", demux->sinkpad);
-+    res = gst_ffmpegdata_open (demux->sinkpad, AVIO_FLAG_READ, &iocontext);
-   else
--    location = g_strdup_printf ("gstpipe://%p", &demux->ffpipe);
--  GST_DEBUG_OBJECT (demux, "about to call av_open_input_file %s", location);
-+    res = gst_ffmpeg_pipe_open (&demux->ffpipe, AVIO_FLAG_READ, &iocontext);
- 
--  res = av_open_input_file (&demux->context, location,
--      oclass->in_plugin, 0, NULL);
-+  demux->context = avformat_alloc_context ();
-+  demux->context->pb = iocontext;
-+  res = avformat_open_input (&demux->context, NULL, oclass->in_plugin, NULL);
- 
--  g_free (location);
-   GST_DEBUG_OBJECT (demux, "av_open_input returned %d", res);
-   if (res < 0)
-     goto open_failed;
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegenc.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegenc.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegenc.c	2011-10-31 11:14:03.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegenc.c	2014-08-08 15:32:18.608870847 +0200
-@@ -770,7 +770,7 @@
-   GST_OBJECT_UNLOCK (ffmpegenc);
- 
-   if (force_keyframe)
--    ffmpegenc->picture->pict_type = FF_I_TYPE;
-+    ffmpegenc->picture->pict_type = AV_PICTURE_TYPE_I;
- 
-   frame_size = gst_ffmpeg_avpicture_fill ((AVPicture *) ffmpegenc->picture,
-       GST_BUFFER_DATA (inbuf),
-@@ -1136,7 +1136,7 @@
-       const GstStructure *s;
-       s = gst_event_get_structure (event);
-       if (gst_structure_has_name (s, "GstForceKeyUnit")) {
--        ffmpegenc->picture->pict_type = FF_I_TYPE;
-+        ffmpegenc->picture->pict_type = AV_PICTURE_TYPE_I;
-       }
-       break;
-     }
-@@ -1339,7 +1339,7 @@
-     }
- 
-     /* only encoders */
--    if (!in_plugin->encode) {
-+    if (!av_codec_is_encoder (in_plugin)) {
-       goto next;
-     }
- 
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegmux.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegmux.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegmux.c	2011-07-13 11:07:28.000000000 +0200
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegmux.c	2014-08-08 15:26:07.874857555 +0200
-@@ -24,8 +24,10 @@
- #include <string.h>
- #ifdef HAVE_FFMPEG_UNINSTALLED
- #include <avformat.h>
-+#include <opt.h>
- #else
- #include <libavformat/avformat.h>
-+#include <libavutil/opt.h>
- #endif
- 
- #include <gst/gst.h>
-@@ -336,9 +338,6 @@
-   ffmpegmux->context = g_new0 (AVFormatContext, 1);
-   ffmpegmux->context->oformat = oclass->in_plugin;
-   ffmpegmux->context->nb_streams = 0;
--  g_snprintf (ffmpegmux->context->filename,
--      sizeof (ffmpegmux->context->filename),
--      "gstreamer://%p", ffmpegmux->srcpad);
-   ffmpegmux->opened = FALSE;
- 
-   ffmpegmux->videopads = 0;
-@@ -450,10 +449,10 @@
-   gst_element_add_pad (element, pad);
- 
-   /* AVStream needs to be created */
--  st = av_new_stream (ffmpegmux->context, collect_pad->padnum);
-+  st = avformat_new_stream (ffmpegmux->context, NULL);
-+  st->id = collect_pad->padnum;
-   st->codec->codec_type = type;
-   st->codec->codec_id = CODEC_ID_NONE;  /* this is a check afterwards */
--  st->stream_copy = 1;          /* we're not the actual encoder */
-   st->codec->bit_rate = bitrate;
-   st->codec->frame_size = framesize;
-   /* we fill in codec during capsnego */
-@@ -485,7 +484,7 @@
-   collect_pad = (GstFFMpegMuxPad *) gst_pad_get_element_private (pad);
- 
-   st = ffmpegmux->context->streams[collect_pad->padnum];
--  ffmpegmux->context->preload = ffmpegmux->preload;
-+  av_opt_set_int (&ffmpegmux->context, "preload", ffmpegmux->preload, 0);
-   ffmpegmux->context->max_delay = ffmpegmux->max_delay;
- 
-   /* for the format-specific guesses, we'll go to
-@@ -552,7 +551,7 @@
- 
-   /* open "file" (gstreamer protocol to next element) */
-   if (!ffmpegmux->opened) {
--    int open_flags = URL_WRONLY;
-+    int open_flags = AVIO_FLAG_WRITE;
- 
-     /* we do need all streams to have started capsnego,
-      * or things will go horribly wrong */
-@@ -646,19 +645,13 @@
-       open_flags |= GST_FFMPEG_URL_STREAMHEADER;
-     }
- 
--    if (url_fopen (&ffmpegmux->context->pb,
--            ffmpegmux->context->filename, open_flags) < 0) {
-+    if (gst_ffmpegdata_open (ffmpegmux->srcpad, open_flags,
-+            &ffmpegmux->context->pb) < 0) {
-       GST_ELEMENT_ERROR (ffmpegmux, LIBRARY, TOO_LAZY, (NULL),
-           ("Failed to open stream context in ffmux"));
-       return GST_FLOW_ERROR;
-     }
- 
--    if (av_set_parameters (ffmpegmux->context, NULL) < 0) {
--      GST_ELEMENT_ERROR (ffmpegmux, LIBRARY, INIT, (NULL),
--          ("Failed to initialize muxer"));
--      return GST_FLOW_ERROR;
--    }
--
-     /* now open the mux format */
-     if (av_write_header (ffmpegmux->context) < 0) {
-       GST_ELEMENT_ERROR (ffmpegmux, LIBRARY, SETTINGS, (NULL),
-@@ -670,7 +663,7 @@
-     ffmpegmux->opened = TRUE;
- 
-     /* flush the header so it will be used as streamheader */
--    put_flush_packet (ffmpegmux->context->pb);
-+    avio_flush (ffmpegmux->context->pb);
-   }
- 
-   /* take the one with earliest timestamp,
-@@ -770,8 +763,8 @@
-     /* close down */
-     av_write_trailer (ffmpegmux->context);
-     ffmpegmux->opened = FALSE;
--    put_flush_packet (ffmpegmux->context->pb);
--    url_fclose (ffmpegmux->context->pb);
-+    avio_flush (ffmpegmux->context->pb);
-+    gst_ffmpegdata_close (ffmpegmux->context->pb);
-     gst_pad_push_event (ffmpegmux->srcpad, gst_event_new_eos ());
-     return GST_FLOW_UNEXPECTED;
-   }
-@@ -795,6 +788,10 @@
-       break;
-     case GST_STATE_CHANGE_PAUSED_TO_READY:
-       gst_collect_pads_stop (ffmpegmux->collect);
-+      if (ffmpegmux->opened) {
-+        ffmpegmux->opened = FALSE;
-+        gst_ffmpegdata_close (ffmpegmux->context->pb);
-+      }
-       break;
-     default:
-       break;
-@@ -809,7 +806,7 @@
-       gst_tag_setter_reset_tags (GST_TAG_SETTER (ffmpegmux));
-       if (ffmpegmux->opened) {
-         ffmpegmux->opened = FALSE;
--        url_fclose (ffmpegmux->context->pb);
-+        avio_close (ffmpegmux->context->pb);
-       }
-       break;
-     case GST_STATE_CHANGE_READY_TO_NULL:
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegmux.c.orig gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegmux.c.orig
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegmux.c.orig	1970-01-01 01:00:00.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegmux.c.orig	2011-07-13 11:07:28.000000000 +0200
-@@ -0,0 +1,970 @@
-+/* GStreamer
-+ * Copyright (C) <1999> Erik Walthinsen <omega at cse.ogi.edu>
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Library General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Library General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Library General Public
-+ * License along with this library; if not, write to the
-+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+ * Boston, MA 02111-1307, USA.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
-+#include <string.h>
-+#ifdef HAVE_FFMPEG_UNINSTALLED
-+#include <avformat.h>
-+#else
-+#include <libavformat/avformat.h>
-+#endif
-+
-+#include <gst/gst.h>
-+#include <gst/base/gstcollectpads.h>
-+
-+#include "gstffmpeg.h"
-+#include "gstffmpegcodecmap.h"
-+#include "gstffmpegutils.h"
-+
-+typedef struct _GstFFMpegMux GstFFMpegMux;
-+typedef struct _GstFFMpegMuxPad GstFFMpegMuxPad;
-+
-+struct _GstFFMpegMuxPad
-+{
-+  GstCollectData collect;       /* we extend the CollectData */
-+
-+  gint padnum;
-+};
-+
-+struct _GstFFMpegMux
-+{
-+  GstElement element;
-+
-+  GstCollectPads *collect;
-+  /* We need to keep track of our pads, so we do so here. */
-+  GstPad *srcpad;
-+
-+  AVFormatContext *context;
-+  gboolean opened;
-+
-+  gint videopads, audiopads;
-+
-+  /*< private > */
-+  /* event_function is the collectpads default eventfunction */
-+  GstPadEventFunction event_function;
-+  int preload;
-+  int max_delay;
-+};
-+
-+typedef struct _GstFFMpegMuxClass GstFFMpegMuxClass;
-+
-+struct _GstFFMpegMuxClass
-+{
-+  GstElementClass parent_class;
-+
-+  AVOutputFormat *in_plugin;
-+};
-+
-+#define GST_TYPE_FFMPEGMUX \
-+  (gst_ffmpegdec_get_type())
-+#define GST_FFMPEGMUX(obj) \
-+  (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_FFMPEGMUX,GstFFMpegMux))
-+#define GST_FFMPEGMUX_CLASS(klass) \
-+  (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_FFMPEGMUX,GstFFMpegMuxClass))
-+#define GST_IS_FFMPEGMUX(obj) \
-+  (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_FFMPEGMUX))
-+#define GST_IS_FFMPEGMUX_CLASS(klass) \
-+  (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_FFMPEGMUX))
-+
-+enum
-+{
-+  /* FILL ME */
-+  LAST_SIGNAL
-+};
-+
-+enum
-+{
-+  ARG_0,
-+  /* FILL ME */
-+};
-+
-+enum
-+{
-+  PROP_0,
-+  PROP_PRELOAD,
-+  PROP_MAXDELAY
-+};
-+
-+/* A number of function prototypes are given so we can refer to them later. */
-+static void gst_ffmpegmux_class_init (GstFFMpegMuxClass * klass);
-+static void gst_ffmpegmux_base_init (gpointer g_class);
-+static void gst_ffmpegmux_init (GstFFMpegMux * ffmpegmux,
-+    GstFFMpegMuxClass * g_class);
-+static void gst_ffmpegmux_finalize (GObject * object);
-+
-+static gboolean gst_ffmpegmux_setcaps (GstPad * pad, GstCaps * caps);
-+static GstPad *gst_ffmpegmux_request_new_pad (GstElement * element,
-+    GstPadTemplate * templ, const gchar * name);
-+static GstFlowReturn gst_ffmpegmux_collected (GstCollectPads * pads,
-+    gpointer user_data);
-+
-+static gboolean gst_ffmpegmux_sink_event (GstPad * pad, GstEvent * event);
-+
-+static GstStateChangeReturn gst_ffmpegmux_change_state (GstElement * element,
-+    GstStateChange transition);
-+
-+static void gst_ffmpegmux_set_property (GObject * object, guint prop_id,
-+    const GValue * value, GParamSpec * pspec);
-+static void gst_ffmpegmux_get_property (GObject * object, guint prop_id,
-+    GValue * value, GParamSpec * pspec);
-+
-+static GstCaps *gst_ffmpegmux_get_id_caps (enum CodecID *id_list);
-+static void gst_ffmpeg_mux_simple_caps_set_int_list (GstCaps * caps,
-+    const gchar * field, guint num, const gint * values);
-+
-+#define GST_FFMUX_PARAMS_QDATA g_quark_from_static_string("ffmux-params")
-+
-+static GstElementClass *parent_class = NULL;
-+
-+/*static guint gst_ffmpegmux_signals[LAST_SIGNAL] = { 0 }; */
-+
-+typedef struct
-+{
-+  const char *name;
-+  const char *replacement;
-+} GstFFMpegMuxReplacement;
-+
-+static const char *
-+gst_ffmpegmux_get_replacement (const char *name)
-+{
-+  static const GstFFMpegMuxReplacement blacklist[] = {
-+    {"avi", "avimux"},
-+    {"matroska", "matroskamux"},
-+    {"mov", "qtmux"},
-+    {"mpegts", "mpegtsmux"},
-+    {"mp4", "mp4mux"},
-+    {"mpjpeg", "multipartmux"},
-+    {"ogg", "oggmux"},
-+    {"wav", "wavenc"},
-+    {"webm", "webmmux"},
-+    {"mxf", "mxfmux"},
-+    {"3gp", "gppmux"},
-+    {"yuv4mpegpipe", "y4menc"},
-+    {"aiff", "aiffmux"},
-+    {"adts", "aacparse"},
-+    {"asf", "asfmux"},
-+    {"asf_stream", "asfmux"},
-+    {"flv", "flvmux"},
-+    {"mp3", "id3v2mux"},
-+    {"mp2", "id3v2mux"}
-+  };
-+  int i;
-+
-+  for (i = 0; i < sizeof (blacklist) / sizeof (blacklist[0]); i++) {
-+    if (strcmp (blacklist[i].name, name) == 0) {
-+      return blacklist[i].replacement;
-+    }
-+  }
-+
-+  return NULL;
-+}
-+
-+static gboolean
-+gst_ffmpegmux_is_formatter (const char *name)
-+{
-+  static const char *replace[] = {
-+    "mp2", "mp3", NULL
-+  };
-+  int i;
-+
-+  for (i = 0; replace[i]; i++)
-+    if (strcmp (replace[i], name) == 0)
-+      return TRUE;
-+  return FALSE;
-+}
-+
-+static void
-+gst_ffmpegmux_base_init (gpointer g_class)
-+{
-+  GstFFMpegMuxClass *klass = (GstFFMpegMuxClass *) g_class;
-+  GstElementClass *element_class = GST_ELEMENT_CLASS (g_class);
-+  GstPadTemplate *videosinktempl, *audiosinktempl, *srctempl;
-+  AVOutputFormat *in_plugin;
-+  GstCaps *srccaps, *audiosinkcaps, *videosinkcaps;
-+  enum CodecID *video_ids = NULL, *audio_ids = NULL;
-+  gchar *longname, *description;
-+  const char *replacement;
-+  gboolean is_formatter;
-+
-+  in_plugin =
-+      (AVOutputFormat *) g_type_get_qdata (G_OBJECT_CLASS_TYPE (klass),
-+      GST_FFMUX_PARAMS_QDATA);
-+  g_assert (in_plugin != NULL);
-+
-+  /* construct the element details struct */
-+  replacement = gst_ffmpegmux_get_replacement (in_plugin->name);
-+  is_formatter = gst_ffmpegmux_is_formatter (in_plugin->name);
-+  if (replacement != NULL) {
-+    longname =
-+        g_strdup_printf ("FFmpeg %s %s (not recommended, use %s instead)",
-+        in_plugin->long_name, is_formatter ? "formatter" : "muxer",
-+        replacement);
-+    description =
-+        g_strdup_printf ("FFmpeg %s %s (not recommended, use %s instead)",
-+        in_plugin->long_name, is_formatter ? "formatter" : "muxer",
-+        replacement);
-+  } else {
-+    longname = g_strdup_printf ("FFmpeg %s %s", in_plugin->long_name,
-+        is_formatter ? "formatter" : "muxer");
-+    description = g_strdup_printf ("FFmpeg %s %s", in_plugin->long_name,
-+        is_formatter ? "formatter" : "muxer");
-+  }
-+  gst_element_class_set_details_simple (element_class, longname,
-+      is_formatter ? "Formatter/Metadata" : "Codec/Muxer", description,
-+      "Wim Taymans <wim.taymans at chello.be>, "
-+      "Ronald Bultje <rbultje at ronald.bitfreak.net>");
-+  g_free (longname);
-+  g_free (description);
-+
-+  /* Try to find the caps that belongs here */
-+  srccaps = gst_ffmpeg_formatid_to_caps (in_plugin->name);
-+  if (!srccaps) {
-+    GST_DEBUG ("Couldn't get source caps for muxer '%s', skipping format",
-+        in_plugin->name);
-+    goto beach;
-+  }
-+
-+  if (!gst_ffmpeg_formatid_get_codecids (in_plugin->name,
-+          &video_ids, &audio_ids, in_plugin)) {
-+    gst_caps_unref (srccaps);
-+    GST_DEBUG
-+        ("Couldn't get sink caps for muxer '%s'. Most likely because no input format mapping exists.",
-+        in_plugin->name);
-+    goto beach;
-+  }
-+
-+  videosinkcaps = video_ids ? gst_ffmpegmux_get_id_caps (video_ids) : NULL;
-+  audiosinkcaps = audio_ids ? gst_ffmpegmux_get_id_caps (audio_ids) : NULL;
-+
-+  /* fix up allowed caps for some muxers */
-+  /* FIXME : This should be in gstffmpegcodecmap.c ! */
-+  if (strcmp (in_plugin->name, "flv") == 0) {
-+    const gint rates[] = { 44100, 22050, 11025 };
-+
-+    gst_ffmpeg_mux_simple_caps_set_int_list (audiosinkcaps, "rate", 3, rates);
-+  } else if (strcmp (in_plugin->name, "gif") == 0) {
-+    if (videosinkcaps)
-+      gst_caps_unref (videosinkcaps);
-+
-+    videosinkcaps =
-+        gst_caps_from_string ("video/x-raw-rgb, bpp=(int)24, depth=(int)24");
-+  }
-+
-+  /* pad templates */
-+  srctempl = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, srccaps);
-+  gst_element_class_add_pad_template (element_class, srctempl);
-+
-+  if (audiosinkcaps) {
-+    audiosinktempl = gst_pad_template_new ("audio_%d",
-+        GST_PAD_SINK, GST_PAD_REQUEST, audiosinkcaps);
-+    gst_element_class_add_pad_template (element_class, audiosinktempl);
-+  }
-+
-+  if (videosinkcaps) {
-+    videosinktempl = gst_pad_template_new ("video_%d",
-+        GST_PAD_SINK, GST_PAD_REQUEST, videosinkcaps);
-+    gst_element_class_add_pad_template (element_class, videosinktempl);
-+  }
-+
-+beach:
-+  klass->in_plugin = in_plugin;
-+}
-+
-+static void
-+gst_ffmpegmux_class_init (GstFFMpegMuxClass * klass)
-+{
-+  GObjectClass *gobject_class;
-+  GstElementClass *gstelement_class;
-+
-+  gobject_class = (GObjectClass *) klass;
-+  gstelement_class = (GstElementClass *) klass;
-+
-+  parent_class = g_type_class_peek_parent (klass);
-+
-+  gobject_class->set_property = GST_DEBUG_FUNCPTR (gst_ffmpegmux_set_property);
-+  gobject_class->get_property = GST_DEBUG_FUNCPTR (gst_ffmpegmux_get_property);
-+
-+  g_object_class_install_property (gobject_class, PROP_PRELOAD,
-+      g_param_spec_int ("preload", "preload",
-+          "Set the initial demux-decode delay (in microseconds)", 0, G_MAXINT,
-+          0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+
-+  g_object_class_install_property (gobject_class, PROP_MAXDELAY,
-+      g_param_spec_int ("maxdelay", "maxdelay",
-+          "Set the maximum demux-decode delay (in microseconds)", 0, G_MAXINT,
-+          0, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS));
-+
-+  gstelement_class->request_new_pad = gst_ffmpegmux_request_new_pad;
-+  gstelement_class->change_state = gst_ffmpegmux_change_state;
-+  gobject_class->finalize = gst_ffmpegmux_finalize;
-+}
-+
-+static void
-+gst_ffmpegmux_init (GstFFMpegMux * ffmpegmux, GstFFMpegMuxClass * g_class)
-+{
-+  GstElementClass *klass = GST_ELEMENT_CLASS (g_class);
-+  GstFFMpegMuxClass *oclass = (GstFFMpegMuxClass *) klass;
-+  GstPadTemplate *templ = gst_element_class_get_pad_template (klass, "src");
-+
-+  ffmpegmux->srcpad = gst_pad_new_from_template (templ, "src");
-+  gst_pad_set_caps (ffmpegmux->srcpad, gst_pad_template_get_caps (templ));
-+  gst_element_add_pad (GST_ELEMENT (ffmpegmux), ffmpegmux->srcpad);
-+
-+  ffmpegmux->collect = gst_collect_pads_new ();
-+  gst_collect_pads_set_function (ffmpegmux->collect,
-+      (GstCollectPadsFunction) gst_ffmpegmux_collected, ffmpegmux);
-+
-+  ffmpegmux->context = g_new0 (AVFormatContext, 1);
-+  ffmpegmux->context->oformat = oclass->in_plugin;
-+  ffmpegmux->context->nb_streams = 0;
-+  g_snprintf (ffmpegmux->context->filename,
-+      sizeof (ffmpegmux->context->filename),
-+      "gstreamer://%p", ffmpegmux->srcpad);
-+  ffmpegmux->opened = FALSE;
-+
-+  ffmpegmux->videopads = 0;
-+  ffmpegmux->audiopads = 0;
-+  ffmpegmux->preload = 0;
-+  ffmpegmux->max_delay = 0;
-+}
-+
-+static void
-+gst_ffmpegmux_set_property (GObject * object, guint prop_id,
-+    const GValue * value, GParamSpec * pspec)
-+{
-+  GstFFMpegMux *src;
-+
-+  src = (GstFFMpegMux *) object;
-+
-+  switch (prop_id) {
-+    case PROP_PRELOAD:
-+      src->preload = g_value_get_int (value);
-+      break;
-+    case PROP_MAXDELAY:
-+      src->max_delay = g_value_get_int (value);
-+      break;
-+    default:
-+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-+      break;
-+  }
-+}
-+
-+static void
-+gst_ffmpegmux_get_property (GObject * object, guint prop_id, GValue * value,
-+    GParamSpec * pspec)
-+{
-+  GstFFMpegMux *src;
-+
-+  src = (GstFFMpegMux *) object;
-+
-+  switch (prop_id) {
-+    case PROP_PRELOAD:
-+      g_value_set_int (value, src->preload);
-+      break;
-+    case PROP_MAXDELAY:
-+      g_value_set_int (value, src->max_delay);
-+      break;
-+    default:
-+      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-+      break;
-+  }
-+}
-+
-+
-+static void
-+gst_ffmpegmux_finalize (GObject * object)
-+{
-+  GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) object;
-+
-+  g_free (ffmpegmux->context);
-+  gst_object_unref (ffmpegmux->collect);
-+
-+  if (G_OBJECT_CLASS (parent_class)->finalize)
-+    G_OBJECT_CLASS (parent_class)->finalize (object);
-+}
-+
-+static GstPad *
-+gst_ffmpegmux_request_new_pad (GstElement * element,
-+    GstPadTemplate * templ, const gchar * name)
-+{
-+  GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) element;
-+  GstElementClass *klass = GST_ELEMENT_GET_CLASS (element);
-+  GstFFMpegMuxPad *collect_pad;
-+  gchar *padname;
-+  GstPad *pad;
-+  AVStream *st;
-+  enum AVMediaType type;
-+  gint bitrate = 0, framesize = 0;
-+
-+  g_return_val_if_fail (templ != NULL, NULL);
-+  g_return_val_if_fail (templ->direction == GST_PAD_SINK, NULL);
-+  g_return_val_if_fail (ffmpegmux->opened == FALSE, NULL);
-+
-+  /* figure out a name that *we* like */
-+  if (templ == gst_element_class_get_pad_template (klass, "video_%d")) {
-+    padname = g_strdup_printf ("video_%d", ffmpegmux->videopads++);
-+    type = AVMEDIA_TYPE_VIDEO;
-+    bitrate = 64 * 1024;
-+    framesize = 1152;
-+  } else if (templ == gst_element_class_get_pad_template (klass, "audio_%d")) {
-+    padname = g_strdup_printf ("audio_%d", ffmpegmux->audiopads++);
-+    type = AVMEDIA_TYPE_AUDIO;
-+    bitrate = 285 * 1024;
-+  } else {
-+    g_warning ("ffmux: unknown pad template!");
-+    return NULL;
-+  }
-+
-+  /* create pad */
-+  pad = gst_pad_new_from_template (templ, padname);
-+  collect_pad = (GstFFMpegMuxPad *)
-+      gst_collect_pads_add_pad (ffmpegmux->collect, pad,
-+      sizeof (GstFFMpegMuxPad));
-+  collect_pad->padnum = ffmpegmux->context->nb_streams;
-+
-+  /* small hack to put our own event pad function and chain up to collect pad */
-+  ffmpegmux->event_function = GST_PAD_EVENTFUNC (pad);
-+  gst_pad_set_event_function (pad,
-+      GST_DEBUG_FUNCPTR (gst_ffmpegmux_sink_event));
-+
-+  gst_pad_set_setcaps_function (pad, GST_DEBUG_FUNCPTR (gst_ffmpegmux_setcaps));
-+  gst_element_add_pad (element, pad);
-+
-+  /* AVStream needs to be created */
-+  st = av_new_stream (ffmpegmux->context, collect_pad->padnum);
-+  st->codec->codec_type = type;
-+  st->codec->codec_id = CODEC_ID_NONE;  /* this is a check afterwards */
-+  st->stream_copy = 1;          /* we're not the actual encoder */
-+  st->codec->bit_rate = bitrate;
-+  st->codec->frame_size = framesize;
-+  /* we fill in codec during capsnego */
-+
-+  /* we love debug output (c) (tm) (r) */
-+  GST_DEBUG ("Created %s pad for ffmux_%s element",
-+      padname, ((GstFFMpegMuxClass *) klass)->in_plugin->name);
-+  g_free (padname);
-+
-+  return pad;
-+}
-+
-+/**
-+ * gst_ffmpegmux_setcaps
-+ * @pad: #GstPad
-+ * @caps: New caps.
-+ *
-+ * Set caps to pad.
-+ *
-+ * Returns: #TRUE on success.
-+ */
-+static gboolean
-+gst_ffmpegmux_setcaps (GstPad * pad, GstCaps * caps)
-+{
-+  GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) (gst_pad_get_parent (pad));
-+  GstFFMpegMuxPad *collect_pad;
-+  AVStream *st;
-+
-+  collect_pad = (GstFFMpegMuxPad *) gst_pad_get_element_private (pad);
-+
-+  st = ffmpegmux->context->streams[collect_pad->padnum];
-+  ffmpegmux->context->preload = ffmpegmux->preload;
-+  ffmpegmux->context->max_delay = ffmpegmux->max_delay;
-+
-+  /* for the format-specific guesses, we'll go to
-+   * our famous codec mapper */
-+  if (gst_ffmpeg_caps_to_codecid (caps, st->codec) == CODEC_ID_NONE)
-+    goto not_accepted;
-+
-+  /* copy over the aspect ratios, ffmpeg expects the stream aspect to match the
-+   * codec aspect. */
-+  st->sample_aspect_ratio = st->codec->sample_aspect_ratio;
-+
-+  GST_LOG_OBJECT (pad, "accepted caps %" GST_PTR_FORMAT, caps);
-+  return TRUE;
-+
-+  /* ERRORS */
-+not_accepted:
-+  {
-+    GST_LOG_OBJECT (pad, "rejecting caps %" GST_PTR_FORMAT, caps);
-+    return FALSE;
-+  }
-+}
-+
-+
-+static gboolean
-+gst_ffmpegmux_sink_event (GstPad * pad, GstEvent * event)
-+{
-+  GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) gst_pad_get_parent (pad);
-+  gboolean res = TRUE;
-+
-+  switch (GST_EVENT_TYPE (event)) {
-+    case GST_EVENT_TAG:{
-+      GstTagList *taglist;
-+      GstTagSetter *setter = GST_TAG_SETTER (ffmpegmux);
-+      const GstTagMergeMode mode = gst_tag_setter_get_tag_merge_mode (setter);
-+
-+      gst_event_parse_tag (event, &taglist);
-+      gst_tag_setter_merge_tags (setter, taglist, mode);
-+      break;
-+    }
-+    default:
-+      break;
-+  }
-+
-+  /* chaining up to collectpads default event function */
-+  res = ffmpegmux->event_function (pad, event);
-+
-+  gst_object_unref (ffmpegmux);
-+  return res;
-+}
-+
-+static GstFlowReturn
-+gst_ffmpegmux_collected (GstCollectPads * pads, gpointer user_data)
-+{
-+  GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) user_data;
-+  GSList *collected;
-+  GstFFMpegMuxPad *best_pad;
-+  GstClockTime best_time;
-+#if 0
-+  /* Re-enable once converted to new AVMetaData API
-+   * See #566605
-+   */
-+  const GstTagList *tags;
-+#endif
-+
-+  /* open "file" (gstreamer protocol to next element) */
-+  if (!ffmpegmux->opened) {
-+    int open_flags = URL_WRONLY;
-+
-+    /* we do need all streams to have started capsnego,
-+     * or things will go horribly wrong */
-+    for (collected = ffmpegmux->collect->data; collected;
-+        collected = g_slist_next (collected)) {
-+      GstFFMpegMuxPad *collect_pad = (GstFFMpegMuxPad *) collected->data;
-+      AVStream *st = ffmpegmux->context->streams[collect_pad->padnum];
-+
-+      /* check whether the pad has successfully completed capsnego */
-+      if (st->codec->codec_id == CODEC_ID_NONE) {
-+        GST_ELEMENT_ERROR (ffmpegmux, CORE, NEGOTIATION, (NULL),
-+            ("no caps set on stream %d (%s)", collect_pad->padnum,
-+                (st->codec->codec_type == AVMEDIA_TYPE_VIDEO) ?
-+                "video" : "audio"));
-+        return GST_FLOW_ERROR;
-+      }
-+      /* set framerate for audio */
-+      if (st->codec->codec_type == AVMEDIA_TYPE_AUDIO) {
-+        switch (st->codec->codec_id) {
-+          case CODEC_ID_PCM_S16LE:
-+          case CODEC_ID_PCM_S16BE:
-+          case CODEC_ID_PCM_U16LE:
-+          case CODEC_ID_PCM_U16BE:
-+          case CODEC_ID_PCM_S8:
-+          case CODEC_ID_PCM_U8:
-+            st->codec->frame_size = 1;
-+            break;
-+          default:
-+          {
-+            GstBuffer *buffer;
-+
-+            /* FIXME : This doesn't work for RAW AUDIO...
-+             * in fact I'm wondering if it even works for any kind of audio... */
-+            buffer = gst_collect_pads_peek (ffmpegmux->collect,
-+                (GstCollectData *) collect_pad);
-+            if (buffer) {
-+              st->codec->frame_size =
-+                  st->codec->sample_rate *
-+                  GST_BUFFER_DURATION (buffer) / GST_SECOND;
-+              gst_buffer_unref (buffer);
-+            }
-+          }
-+        }
-+      }
-+    }
-+
-+#if 0
-+    /* Re-enable once converted to new AVMetaData API
-+     * See #566605
-+     */
-+
-+    /* tags */
-+    tags = gst_tag_setter_get_tag_list (GST_TAG_SETTER (ffmpegmux));
-+    if (tags) {
-+      gint i;
-+      gchar *s;
-+
-+      /* get the interesting ones */
-+      if (gst_tag_list_get_string (tags, GST_TAG_TITLE, &s)) {
-+        strncpy (ffmpegmux->context->title, s,
-+            sizeof (ffmpegmux->context->title));
-+      }
-+      if (gst_tag_list_get_string (tags, GST_TAG_ARTIST, &s)) {
-+        strncpy (ffmpegmux->context->author, s,
-+            sizeof (ffmpegmux->context->author));
-+      }
-+      if (gst_tag_list_get_string (tags, GST_TAG_COPYRIGHT, &s)) {
-+        strncpy (ffmpegmux->context->copyright, s,
-+            sizeof (ffmpegmux->context->copyright));
-+      }
-+      if (gst_tag_list_get_string (tags, GST_TAG_COMMENT, &s)) {
-+        strncpy (ffmpegmux->context->comment, s,
-+            sizeof (ffmpegmux->context->comment));
-+      }
-+      if (gst_tag_list_get_string (tags, GST_TAG_ALBUM, &s)) {
-+        strncpy (ffmpegmux->context->album, s,
-+            sizeof (ffmpegmux->context->album));
-+      }
-+      if (gst_tag_list_get_string (tags, GST_TAG_GENRE, &s)) {
-+        strncpy (ffmpegmux->context->genre, s,
-+            sizeof (ffmpegmux->context->genre));
-+      }
-+      if (gst_tag_list_get_int (tags, GST_TAG_TRACK_NUMBER, &i)) {
-+        ffmpegmux->context->track = i;
-+      }
-+    }
-+#endif
-+
-+    /* set the streamheader flag for gstffmpegprotocol if codec supports it */
-+    if (!strcmp (ffmpegmux->context->oformat->name, "flv")) {
-+      open_flags |= GST_FFMPEG_URL_STREAMHEADER;
-+    }
-+
-+    if (url_fopen (&ffmpegmux->context->pb,
-+            ffmpegmux->context->filename, open_flags) < 0) {
-+      GST_ELEMENT_ERROR (ffmpegmux, LIBRARY, TOO_LAZY, (NULL),
-+          ("Failed to open stream context in ffmux"));
-+      return GST_FLOW_ERROR;
-+    }
-+
-+    if (av_set_parameters (ffmpegmux->context, NULL) < 0) {
-+      GST_ELEMENT_ERROR (ffmpegmux, LIBRARY, INIT, (NULL),
-+          ("Failed to initialize muxer"));
-+      return GST_FLOW_ERROR;
-+    }
-+
-+    /* now open the mux format */
-+    if (av_write_header (ffmpegmux->context) < 0) {
-+      GST_ELEMENT_ERROR (ffmpegmux, LIBRARY, SETTINGS, (NULL),
-+          ("Failed to write file header - check codec settings"));
-+      return GST_FLOW_ERROR;
-+    }
-+
-+    /* we're now opened */
-+    ffmpegmux->opened = TRUE;
-+
-+    /* flush the header so it will be used as streamheader */
-+    put_flush_packet (ffmpegmux->context->pb);
-+  }
-+
-+  /* take the one with earliest timestamp,
-+   * and push it forward */
-+  best_pad = NULL;
-+  best_time = GST_CLOCK_TIME_NONE;
-+  for (collected = ffmpegmux->collect->data; collected;
-+      collected = g_slist_next (collected)) {
-+    GstFFMpegMuxPad *collect_pad = (GstFFMpegMuxPad *) collected->data;
-+    GstBuffer *buffer = gst_collect_pads_peek (ffmpegmux->collect,
-+        (GstCollectData *) collect_pad);
-+
-+    /* if there's no buffer, just continue */
-+    if (buffer == NULL) {
-+      continue;
-+    }
-+
-+    /* if we have no buffer yet, just use the first one */
-+    if (best_pad == NULL) {
-+      best_pad = collect_pad;
-+      best_time = GST_BUFFER_TIMESTAMP (buffer);
-+      goto next_pad;
-+    }
-+
-+    /* if we do have one, only use this one if it's older */
-+    if (GST_BUFFER_TIMESTAMP (buffer) < best_time) {
-+      best_time = GST_BUFFER_TIMESTAMP (buffer);
-+      best_pad = collect_pad;
-+    }
-+
-+  next_pad:
-+    gst_buffer_unref (buffer);
-+
-+    /* Mux buffers with invalid timestamp first */
-+    if (!GST_CLOCK_TIME_IS_VALID (best_time))
-+      break;
-+  }
-+
-+  /* now handle the buffer, or signal EOS if we have
-+   * no buffers left */
-+  if (best_pad != NULL) {
-+    GstBuffer *buf;
-+    AVPacket pkt;
-+    gboolean need_free = FALSE;
-+
-+    /* push out current buffer */
-+    buf = gst_collect_pads_pop (ffmpegmux->collect,
-+        (GstCollectData *) best_pad);
-+
-+    ffmpegmux->context->streams[best_pad->padnum]->codec->frame_number++;
-+
-+    /* set time */
-+    pkt.pts = gst_ffmpeg_time_gst_to_ff (GST_BUFFER_TIMESTAMP (buf),
-+        ffmpegmux->context->streams[best_pad->padnum]->time_base);
-+    pkt.dts = pkt.pts;
-+
-+    if (strcmp (ffmpegmux->context->oformat->name, "gif") == 0) {
-+      AVStream *st = ffmpegmux->context->streams[best_pad->padnum];
-+      AVPicture src, dst;
-+
-+      need_free = TRUE;
-+      pkt.size = st->codec->width * st->codec->height * 3;
-+      pkt.data = g_malloc (pkt.size);
-+
-+      dst.data[0] = pkt.data;
-+      dst.data[1] = NULL;
-+      dst.data[2] = NULL;
-+      dst.linesize[0] = st->codec->width * 3;
-+
-+      gst_ffmpeg_avpicture_fill (&src, GST_BUFFER_DATA (buf),
-+          PIX_FMT_RGB24, st->codec->width, st->codec->height);
-+
-+      av_picture_copy (&dst, &src, PIX_FMT_RGB24,
-+          st->codec->width, st->codec->height);
-+    } else {
-+      pkt.data = GST_BUFFER_DATA (buf);
-+      pkt.size = GST_BUFFER_SIZE (buf);
-+    }
-+
-+    pkt.stream_index = best_pad->padnum;
-+    pkt.flags = 0;
-+
-+    if (!GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_DELTA_UNIT))
-+      pkt.flags |= AV_PKT_FLAG_KEY;
-+
-+    if (GST_BUFFER_DURATION_IS_VALID (buf))
-+      pkt.duration =
-+          gst_ffmpeg_time_gst_to_ff (GST_BUFFER_DURATION (buf),
-+          ffmpegmux->context->streams[best_pad->padnum]->time_base);
-+    else
-+      pkt.duration = 0;
-+    av_write_frame (ffmpegmux->context, &pkt);
-+    gst_buffer_unref (buf);
-+    if (need_free)
-+      g_free (pkt.data);
-+  } else {
-+    /* close down */
-+    av_write_trailer (ffmpegmux->context);
-+    ffmpegmux->opened = FALSE;
-+    put_flush_packet (ffmpegmux->context->pb);
-+    url_fclose (ffmpegmux->context->pb);
-+    gst_pad_push_event (ffmpegmux->srcpad, gst_event_new_eos ());
-+    return GST_FLOW_UNEXPECTED;
-+  }
-+
-+  return GST_FLOW_OK;
-+}
-+
-+static GstStateChangeReturn
-+gst_ffmpegmux_change_state (GstElement * element, GstStateChange transition)
-+{
-+  GstFlowReturn ret;
-+  GstFFMpegMux *ffmpegmux = (GstFFMpegMux *) (element);
-+
-+  switch (transition) {
-+    case GST_STATE_CHANGE_NULL_TO_READY:
-+      break;
-+    case GST_STATE_CHANGE_READY_TO_PAUSED:
-+      gst_collect_pads_start (ffmpegmux->collect);
-+      break;
-+    case GST_STATE_CHANGE_PAUSED_TO_PLAYING:
-+      break;
-+    case GST_STATE_CHANGE_PAUSED_TO_READY:
-+      gst_collect_pads_stop (ffmpegmux->collect);
-+      break;
-+    default:
-+      break;
-+  }
-+
-+  ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
-+
-+  switch (transition) {
-+    case GST_STATE_CHANGE_PLAYING_TO_PAUSED:
-+      break;
-+    case GST_STATE_CHANGE_PAUSED_TO_READY:
-+      gst_tag_setter_reset_tags (GST_TAG_SETTER (ffmpegmux));
-+      if (ffmpegmux->opened) {
-+        ffmpegmux->opened = FALSE;
-+        url_fclose (ffmpegmux->context->pb);
-+      }
-+      break;
-+    case GST_STATE_CHANGE_READY_TO_NULL:
-+      break;
-+    default:
-+      break;
-+  }
-+
-+  return ret;
-+}
-+
-+static GstCaps *
-+gst_ffmpegmux_get_id_caps (enum CodecID *id_list)
-+{
-+  GstCaps *caps, *t;
-+  gint i;
-+
-+  caps = gst_caps_new_empty ();
-+  for (i = 0; id_list[i] != CODEC_ID_NONE; i++) {
-+    if ((t = gst_ffmpeg_codecid_to_caps (id_list[i], NULL, TRUE)))
-+      gst_caps_append (caps, t);
-+  }
-+  if (gst_caps_is_empty (caps)) {
-+    gst_caps_unref (caps);
-+    return NULL;
-+  }
-+
-+  return caps;
-+}
-+
-+/* set a list of integer values on the caps, e.g. for sample rates */
-+static void
-+gst_ffmpeg_mux_simple_caps_set_int_list (GstCaps * caps, const gchar * field,
-+    guint num, const gint * values)
-+{
-+  GValue list = { 0, };
-+  GValue val = { 0, };
-+  gint i;
-+
-+  g_return_if_fail (GST_CAPS_IS_SIMPLE (caps));
-+
-+  g_value_init (&list, GST_TYPE_LIST);
-+  g_value_init (&val, G_TYPE_INT);
-+
-+  for (i = 0; i < num; ++i) {
-+    g_value_set_int (&val, values[i]);
-+    gst_value_list_append_value (&list, &val);
-+  }
-+
-+  gst_structure_set_value (gst_caps_get_structure (caps, 0), field, &list);
-+
-+  g_value_unset (&val);
-+  g_value_unset (&list);
-+}
-+
-+gboolean
-+gst_ffmpegmux_register (GstPlugin * plugin)
-+{
-+  GTypeInfo typeinfo = {
-+    sizeof (GstFFMpegMuxClass),
-+    (GBaseInitFunc) gst_ffmpegmux_base_init,
-+    NULL,
-+    (GClassInitFunc) gst_ffmpegmux_class_init,
-+    NULL,
-+    NULL,
-+    sizeof (GstFFMpegMux),
-+    0,
-+    (GInstanceInitFunc) gst_ffmpegmux_init,
-+  };
-+  static const GInterfaceInfo tag_setter_info = {
-+    NULL, NULL, NULL
-+  };
-+  GType type;
-+  AVOutputFormat *in_plugin;
-+
-+  in_plugin = av_oformat_next (NULL);
-+
-+  GST_LOG ("Registering muxers");
-+
-+  while (in_plugin) {
-+    gchar *type_name;
-+    gchar *p;
-+    GstRank rank = GST_RANK_MARGINAL;
-+
-+    if ((!strncmp (in_plugin->name, "u16", 3)) ||
-+        (!strncmp (in_plugin->name, "s16", 3)) ||
-+        (!strncmp (in_plugin->name, "u24", 3)) ||
-+        (!strncmp (in_plugin->name, "s24", 3)) ||
-+        (!strncmp (in_plugin->name, "u8", 2)) ||
-+        (!strncmp (in_plugin->name, "s8", 2)) ||
-+        (!strncmp (in_plugin->name, "u32", 3)) ||
-+        (!strncmp (in_plugin->name, "s32", 3)) ||
-+        (!strncmp (in_plugin->name, "f32", 3)) ||
-+        (!strncmp (in_plugin->name, "f64", 3)) ||
-+        (!strncmp (in_plugin->name, "raw", 3)) ||
-+        (!strncmp (in_plugin->name, "crc", 3)) ||
-+        (!strncmp (in_plugin->name, "null", 4)) ||
-+        (!strncmp (in_plugin->name, "gif", 3)) ||
-+        (!strncmp (in_plugin->name, "frame", 5)) ||
-+        (!strncmp (in_plugin->name, "image", 5)) ||
-+        (!strncmp (in_plugin->name, "mulaw", 5)) ||
-+        (!strncmp (in_plugin->name, "alaw", 4)) ||
-+        (!strncmp (in_plugin->name, "h26", 3)) ||
-+        (!strncmp (in_plugin->name, "rtp", 3)) ||
-+        (!strncmp (in_plugin->name, "ass", 3)) ||
-+        (!strncmp (in_plugin->name, "ffmetadata", 10)) ||
-+        (!strncmp (in_plugin->name, "srt", 3))
-+        ) {
-+      GST_LOG ("Ignoring muxer %s", in_plugin->name);
-+      goto next;
-+    }
-+
-+    if ((!strncmp (in_plugin->long_name, "raw ", 4))) {
-+      GST_LOG ("Ignoring raw muxer %s", in_plugin->name);
-+      goto next;
-+    }
-+
-+    if (gst_ffmpegmux_get_replacement (in_plugin->name))
-+      rank = GST_RANK_NONE;
-+
-+    /* FIXME : We need a fast way to know whether we have mappings for this
-+     * muxer type. */
-+
-+    /* construct the type */
-+    type_name = g_strdup_printf ("ffmux_%s", in_plugin->name);
-+
-+    p = type_name;
-+
-+    while (*p) {
-+      if (*p == '.')
-+        *p = '_';
-+      p++;
-+    }
-+
-+    type = g_type_from_name (type_name);
-+
-+    if (!type) {
-+      /* create the type now */
-+      type = g_type_register_static (GST_TYPE_ELEMENT, type_name, &typeinfo, 0);
-+      g_type_set_qdata (type, GST_FFMUX_PARAMS_QDATA, (gpointer) in_plugin);
-+      g_type_add_interface_static (type, GST_TYPE_TAG_SETTER, &tag_setter_info);
-+    }
-+
-+    if (!gst_element_register (plugin, type_name, rank, type)) {
-+      g_free (type_name);
-+      return FALSE;
-+    }
-+
-+    g_free (type_name);
-+
-+  next:
-+    in_plugin = av_oformat_next (in_plugin);
-+  }
-+
-+  GST_LOG ("Finished registering muxers");
-+
-+  return TRUE;
-+}
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegprotocol.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegprotocol.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegprotocol.c	2011-07-12 16:35:28.000000000 +0200
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegprotocol.c	2014-08-08 15:26:07.875857555 +0200
-@@ -46,63 +46,14 @@
- };
- 
- static int
--gst_ffmpegdata_open (URLContext * h, const char *filename, int flags)
--{
--  GstProtocolInfo *info;
--  GstPad *pad;
--
--  GST_LOG ("Opening %s", filename);
--
--  info = g_new0 (GstProtocolInfo, 1);
--
--  info->set_streamheader = flags & GST_FFMPEG_URL_STREAMHEADER;
--  flags &= ~GST_FFMPEG_URL_STREAMHEADER;
--  h->flags &= ~GST_FFMPEG_URL_STREAMHEADER;
--
--  /* we don't support R/W together */
--  if (flags != URL_RDONLY && flags != URL_WRONLY) {
--    GST_WARNING ("Only read-only or write-only are supported");
--    return -EINVAL;
--  }
--
--  if (sscanf (&filename[12], "%p", &pad) != 1) {
--    GST_WARNING ("could not decode pad from %s", filename);
--    return -EIO;
--  }
--
--  /* make sure we're a pad and that we're of the right type */
--  g_return_val_if_fail (GST_IS_PAD (pad), -EINVAL);
--
--  switch (flags) {
--    case URL_RDONLY:
--      g_return_val_if_fail (GST_PAD_IS_SINK (pad), -EINVAL);
--      break;
--    case URL_WRONLY:
--      g_return_val_if_fail (GST_PAD_IS_SRC (pad), -EINVAL);
--      break;
--  }
--
--  info->eos = FALSE;
--  info->pad = pad;
--  info->offset = 0;
--
--  h->priv_data = (void *) info;
--  h->is_streamed = FALSE;
--  h->max_packet_size = 0;
--
--  return 0;
--}
--
--static int
--gst_ffmpegdata_peek (URLContext * h, unsigned char *buf, int size)
-+gst_ffmpegdata_peek (void *priv_data, unsigned char *buf, int size)
- {
-   GstProtocolInfo *info;
-   GstBuffer *inbuf = NULL;
-   GstFlowReturn ret;
-   int total = 0;
- 
--  g_return_val_if_fail (h->flags == URL_RDONLY, AVERROR (EIO));
--  info = (GstProtocolInfo *) h->priv_data;
-+  info = (GstProtocolInfo *) priv_data;
- 
-   GST_DEBUG ("Pulling %d bytes at position %" G_GUINT64_FORMAT, size,
-       info->offset);
-@@ -134,17 +85,17 @@
- }
- 
- static int
--gst_ffmpegdata_read (URLContext * h, unsigned char *buf, int size)
-+gst_ffmpegdata_read (void *priv_data, unsigned char *buf, int size)
- {
-   gint res;
-   GstProtocolInfo *info;
- 
--  info = (GstProtocolInfo *) h->priv_data;
-+  info = (GstProtocolInfo *) priv_data;
- 
-   GST_DEBUG ("Reading %d bytes of data at position %" G_GUINT64_FORMAT, size,
-       info->offset);
- 
--  res = gst_ffmpegdata_peek (h, buf, size);
-+  res = gst_ffmpegdata_peek (priv_data, buf, size);
-   if (res >= 0)
-     info->offset += res;
- 
-@@ -154,15 +105,13 @@
- }
- 
- static int
--gst_ffmpegdata_write (URLContext * h, const unsigned char *buf, int size)
-+gst_ffmpegdata_write (void *priv_data, const unsigned char *buf, int size)
- {
-   GstProtocolInfo *info;
-   GstBuffer *outbuf;
- 
-   GST_DEBUG ("Writing %d bytes", size);
--  info = (GstProtocolInfo *) h->priv_data;
--
--  g_return_val_if_fail (h->flags != URL_RDONLY, -EIO);
-+  info = (GstProtocolInfo *) priv_data;
- 
-   /* create buffer and push data further */
-   if (gst_pad_alloc_buffer_and_set_caps (info->pad,
-@@ -179,7 +128,7 @@
- }
- 
- static int64_t
--gst_ffmpegdata_seek (URLContext * h, int64_t pos, int whence)
-+gst_ffmpegdata_seek (void *priv_data, int64_t pos, int whence)
- {
-   GstProtocolInfo *info;
-   guint64 newpos = 0;
-@@ -187,70 +136,62 @@
-   GST_DEBUG ("Seeking to %" G_GINT64_FORMAT ", whence=%d",
-       (gint64) pos, whence);
- 
--  info = (GstProtocolInfo *) h->priv_data;
-+  info = (GstProtocolInfo *) priv_data;
- 
-   /* TODO : if we are push-based, we need to return sensible info */
- 
--  switch (h->flags) {
--    case URL_RDONLY:
--    {
--      /* sinkpad */
--      switch (whence) {
--        case SEEK_SET:
--          newpos = (guint64) pos;
--          break;
--        case SEEK_CUR:
--          newpos = info->offset + pos;
--          break;
--        case SEEK_END:
--        case AVSEEK_SIZE:
--          /* ffmpeg wants to know the current end position in bytes ! */
--        {
--          GstFormat format = GST_FORMAT_BYTES;
--          gint64 duration;
--
--          GST_DEBUG ("Seek end");
--
--          if (gst_pad_is_linked (info->pad))
--            if (gst_pad_query_duration (GST_PAD_PEER (info->pad), &format,
--                    &duration))
--              newpos = ((guint64) duration) + pos;
--        }
--          break;
--        default:
--          g_assert (0);
--          break;
-+  if (GST_PAD_IS_SINK (info->pad)) {
-+    /* sinkpad */
-+    switch (whence) {
-+      case SEEK_SET:
-+        newpos = (guint64) pos;
-+        break;
-+      case SEEK_CUR:
-+        newpos = info->offset + pos;
-+        break;
-+      case SEEK_END:
-+      case AVSEEK_SIZE:
-+        /* ffmpeg wants to know the current end position in bytes ! */
-+      {
-+        GstFormat format = GST_FORMAT_BYTES;
-+        gint64 duration;
-+
-+        GST_DEBUG ("Seek end");
-+
-+        if (gst_pad_is_linked (info->pad))
-+          if (gst_pad_query_duration (GST_PAD_PEER (info->pad), &format,
-+                  &duration))
-+            newpos = ((guint64) duration) + pos;
-       }
--      /* FIXME : implement case for push-based behaviour */
--      if (whence != AVSEEK_SIZE)
--        info->offset = newpos;
-+        break;
-+      default:
-+        g_assert (0);
-+        break;
-     }
--      break;
--    case URL_WRONLY:
--    {
--      /* srcpad */
--      switch (whence) {
--        case SEEK_SET:
--          info->offset = (guint64) pos;
--          gst_pad_push_event (info->pad, gst_event_new_new_segment
--              (TRUE, 1.0, GST_FORMAT_BYTES, info->offset,
--                  GST_CLOCK_TIME_NONE, info->offset));
--          break;
--        case SEEK_CUR:
--          info->offset += pos;
--          gst_pad_push_event (info->pad, gst_event_new_new_segment
--              (TRUE, 1.0, GST_FORMAT_BYTES, info->offset,
--                  GST_CLOCK_TIME_NONE, info->offset));
--          break;
--        default:
--          break;
--      }
--      newpos = info->offset;
-+    /* FIXME : implement case for push-based behaviour */
-+    if (whence != AVSEEK_SIZE)
-+      info->offset = newpos;
-+  } else if (GST_PAD_IS_SRC (info->pad)) {
-+    /* srcpad */
-+    switch (whence) {
-+      case SEEK_SET:
-+        info->offset = (guint64) pos;
-+        gst_pad_push_event (info->pad, gst_event_new_new_segment
-+            (TRUE, 1.0, GST_FORMAT_BYTES, info->offset,
-+                GST_CLOCK_TIME_NONE, info->offset));
-+        break;
-+      case SEEK_CUR:
-+        info->offset += pos;
-+        gst_pad_push_event (info->pad, gst_event_new_new_segment
-+            (TRUE, 1.0, GST_FORMAT_BYTES, info->offset,
-+                GST_CLOCK_TIME_NONE, info->offset));
-+        break;
-+      default:
-+        break;
-     }
--      break;
--    default:
--      g_assert (0);
--      break;
-+    newpos = info->offset;
-+  } else {
-+    g_assert_not_reached ();
-   }
- 
-   GST_DEBUG ("Now at offset %" G_GUINT64_FORMAT " (returning %" G_GUINT64_FORMAT
-@@ -258,85 +199,91 @@
-   return newpos;
- }
- 
--static int
--gst_ffmpegdata_close (URLContext * h)
-+int
-+gst_ffmpegdata_close (AVIOContext * h)
- {
-   GstProtocolInfo *info;
- 
--  info = (GstProtocolInfo *) h->priv_data;
-+  info = (GstProtocolInfo *) h->opaque;
-   if (info == NULL)
-     return 0;
- 
-   GST_LOG ("Closing file");
- 
--  switch (h->flags) {
--    case URL_WRONLY:
--    {
--      /* send EOS - that closes down the stream */
--      gst_pad_push_event (info->pad, gst_event_new_eos ());
--      break;
--    }
--    default:
--      break;
-+  if (GST_PAD_IS_SRC (info->pad)) {
-+    /* send EOS - that closes down the stream */
-+    gst_pad_push_event (info->pad, gst_event_new_eos ());
-   }
- 
-   /* clean up data */
-   g_free (info);
--  h->priv_data = NULL;
-+  h->opaque = NULL;
-+
-+  av_freep (&h->buffer);
-+  av_free (h);
- 
-   return 0;
- }
- 
-+int
-+gst_ffmpegdata_open (GstPad * pad, int flags, AVIOContext ** context)
-+{
-+  GstProtocolInfo *info;
-+  static const int buffer_size = 4096;
-+  unsigned char *buffer = NULL;
- 
--URLProtocol gstreamer_protocol = {
--  /*.name = */ "gstreamer",
--  /*.url_open = */ gst_ffmpegdata_open,
--  /*.url_read = */ gst_ffmpegdata_read,
--  /*.url_write = */ gst_ffmpegdata_write,
--  /*.url_seek = */ gst_ffmpegdata_seek,
--  /*.url_close = */ gst_ffmpegdata_close,
--};
-+  info = g_new0 (GstProtocolInfo, 1);
- 
-+  info->set_streamheader = flags & GST_FFMPEG_URL_STREAMHEADER;
-+  flags &= ~GST_FFMPEG_URL_STREAMHEADER;
- 
--/* specialized protocol for cross-thread pushing,
-- * based on ffmpeg's pipe protocol */
-+  /* we don't support R/W together */
-+  if ((flags & AVIO_FLAG_WRITE) && (flags & AVIO_FLAG_READ)) {
-+    GST_WARNING ("Only read-only or write-only are supported");
-+    return -EINVAL;
-+  }
- 
--static int
--gst_ffmpeg_pipe_open (URLContext * h, const char *filename, int flags)
--{
--  GstFFMpegPipe *ffpipe;
-+  /* make sure we're a pad and that we're of the right type */
-+  g_return_val_if_fail (GST_IS_PAD (pad), -EINVAL);
- 
--  GST_LOG ("Opening %s", filename);
-+  if ((flags & AVIO_FLAG_READ))
-+    g_return_val_if_fail (GST_PAD_IS_SINK (pad), -EINVAL);
-+  if ((flags & AVIO_FLAG_WRITE))
-+    g_return_val_if_fail (GST_PAD_IS_SRC (pad), -EINVAL);
- 
--  /* we don't support W together */
--  if (flags != URL_RDONLY) {
--    GST_WARNING ("Only read-only is supported");
--    return -EINVAL;
--  }
-+  info->eos = FALSE;
-+  info->pad = pad;
-+  info->offset = 0;
- 
--  if (sscanf (&filename[10], "%p", &ffpipe) != 1) {
--    GST_WARNING ("could not decode pipe info from %s", filename);
--    return -EIO;
-+  buffer = av_malloc (buffer_size);
-+  if (buffer == NULL) {
-+    GST_WARNING ("Failed to allocate buffer");
-+    return -ENOMEM;
-   }
- 
--  /* sanity check */
--  g_return_val_if_fail (GST_IS_ADAPTER (ffpipe->adapter), -EINVAL);
--
--  h->priv_data = (void *) ffpipe;
--  h->is_streamed = TRUE;
--  h->max_packet_size = 0;
-+  *context =
-+      avio_alloc_context (buffer, buffer_size, flags, (void *) info,
-+      gst_ffmpegdata_read, gst_ffmpegdata_write, gst_ffmpegdata_seek);
-+  (*context)->seekable = AVIO_SEEKABLE_NORMAL;
-+  if (!(flags & AVIO_FLAG_WRITE)) {
-+    (*context)->buf_ptr = (*context)->buf_end;
-+    (*context)->write_flag = 0;
-+  }
- 
-   return 0;
- }
- 
-+/* specialized protocol for cross-thread pushing,
-+ * based on ffmpeg's pipe protocol */
-+
- static int
--gst_ffmpeg_pipe_read (URLContext * h, unsigned char *buf, int size)
-+gst_ffmpeg_pipe_read (void *priv_data, unsigned char *buf, int size)
- {
-   GstFFMpegPipe *ffpipe;
-   const guint8 *data;
-   guint available;
- 
--  ffpipe = (GstFFMpegPipe *) h->priv_data;
-+  ffpipe = (GstFFMpegPipe *) priv_data;
- 
-   GST_LOG ("requested size %d", size);
- 
-@@ -367,21 +314,38 @@
-   return size;
- }
- 
--static int
--gst_ffmpeg_pipe_close (URLContext * h)
-+int
-+gst_ffmpeg_pipe_close (AVIOContext * h)
- {
-   GST_LOG ("Closing pipe");
- 
--  h->priv_data = NULL;
-+  h->opaque = NULL;
-+  av_freep (&h->buffer);
-+  av_free (h);
- 
-   return 0;
- }
- 
--URLProtocol gstpipe_protocol = {
--  "gstpipe",
--  gst_ffmpeg_pipe_open,
--  gst_ffmpeg_pipe_read,
--  NULL,
--  NULL,
--  gst_ffmpeg_pipe_close,
--};
-+int
-+gst_ffmpeg_pipe_open (GstFFMpegPipe * ffpipe, int flags, AVIOContext ** context)
-+{
-+  static const int buffer_size = 4096;
-+  unsigned char *buffer = NULL;
-+
-+  /* sanity check */
-+  g_return_val_if_fail (GST_IS_ADAPTER (ffpipe->adapter), -EINVAL);
-+
-+  buffer = av_malloc (buffer_size);
-+  if (buffer == NULL) {
-+    GST_WARNING ("Failed to allocate buffer");
-+    return -ENOMEM;
-+  }
-+
-+  *context =
-+      avio_alloc_context (buffer, buffer_size, 0, (void *) ffpipe,
-+      gst_ffmpeg_pipe_read, NULL, NULL);
-+  (*context)->seekable = 0;
-+  (*context)->buf_ptr = (*context)->buf_end;
-+
-+  return 0;
-+}
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.c gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.c
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.c	2011-07-13 11:07:28.000000000 +0200
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.c	2014-08-08 15:34:04.007874626 +0200
-@@ -25,6 +25,11 @@
- #ifdef __APPLE__
- #include <sys/sysctl.h>
- #endif
-+#ifdef HAVE_FFMPEG_UNINSTALLED
-+#include <avformat.h>
-+#else
-+#include <libavformat/avformat.h>
-+#endif
- 
- G_CONST_RETURN gchar *
- gst_ffmpeg_get_codecid_longname (enum CodecID codec_id)
-@@ -39,21 +44,21 @@
- }
- 
- gint
--av_smp_format_depth (enum SampleFormat smp_fmt)
-+av_smp_format_depth (enum AVSampleFormat smp_fmt)
- {
-   gint depth = -1;
-   switch (smp_fmt) {
--    case SAMPLE_FMT_U8:
-+    case AV_SAMPLE_FMT_U8:
-       depth = 1;
-       break;
--    case SAMPLE_FMT_S16:
-+    case AV_SAMPLE_FMT_S16:
-       depth = 2;
-       break;
--    case SAMPLE_FMT_S32:
--    case SAMPLE_FMT_FLT:
-+    case AV_SAMPLE_FMT_S32:
-+    case AV_SAMPLE_FMT_FLT:
-       depth = 4;
-       break;
--    case SAMPLE_FMT_DBL:
-+    case AV_SAMPLE_FMT_DBL:
-       depth = 8;
-       break;
-     default:
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.c.orig gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.c.orig
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.c.orig	1970-01-01 01:00:00.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.c.orig	2011-07-13 11:07:28.000000000 +0200
-@@ -0,0 +1,483 @@
-+/* GStreamer
-+ * Copyright (c) 2009 Edward Hervey <bilboed at bilboed.com>
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Library General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Library General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Library General Public
-+ * License along with this library; if not, write to the
-+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+ * Boston, MA 02111-1307, USA.
-+ */
-+
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+#include "gstffmpegutils.h"
-+#include <unistd.h>
-+#ifdef __APPLE__
-+#include <sys/sysctl.h>
-+#endif
-+
-+G_CONST_RETURN gchar *
-+gst_ffmpeg_get_codecid_longname (enum CodecID codec_id)
-+{
-+  AVCodec *codec;
-+  /* Let's use what ffmpeg can provide us */
-+
-+  if ((codec = avcodec_find_decoder (codec_id)) ||
-+      (codec = avcodec_find_encoder (codec_id)))
-+    return codec->long_name;
-+  return NULL;
-+}
-+
-+gint
-+av_smp_format_depth (enum SampleFormat smp_fmt)
-+{
-+  gint depth = -1;
-+  switch (smp_fmt) {
-+    case SAMPLE_FMT_U8:
-+      depth = 1;
-+      break;
-+    case SAMPLE_FMT_S16:
-+      depth = 2;
-+      break;
-+    case SAMPLE_FMT_S32:
-+    case SAMPLE_FMT_FLT:
-+      depth = 4;
-+      break;
-+    case SAMPLE_FMT_DBL:
-+      depth = 8;
-+      break;
-+    default:
-+      GST_ERROR ("UNHANDLED SAMPLE FORMAT !");
-+      break;
-+  }
-+  return depth;
-+}
-+
-+
-+/*
-+ * Fill in pointers to memory in a AVPicture, where
-+ * everything is aligned by 4 (as required by X).
-+ * This is mostly a copy from imgconvert.c with some
-+ * small changes.
-+ */
-+
-+#define FF_COLOR_RGB      0     /* RGB color space */
-+#define FF_COLOR_GRAY     1     /* gray color space */
-+#define FF_COLOR_YUV      2     /* YUV color space. 16 <= Y <= 235, 16 <= U, V <= 240 */
-+#define FF_COLOR_YUV_JPEG 3     /* YUV color space. 0 <= Y <= 255, 0 <= U, V <= 255 */
-+
-+#define FF_PIXEL_PLANAR   0     /* each channel has one component in AVPicture */
-+#define FF_PIXEL_PACKED   1     /* only one components containing all the channels */
-+#define FF_PIXEL_PALETTE  2     /* one components containing indexes for a palette */
-+
-+typedef struct PixFmtInfo
-+{
-+  const char *name;
-+  uint8_t nb_channels;          /* number of channels (including alpha) */
-+  uint8_t color_type;           /* color type (see FF_COLOR_xxx constants) */
-+  uint8_t pixel_type;           /* pixel storage type (see FF_PIXEL_xxx constants) */
-+  uint8_t is_alpha:1;           /* true if alpha can be specified */
-+  uint8_t x_chroma_shift;       /* X chroma subsampling factor is 2 ^ shift */
-+  uint8_t y_chroma_shift;       /* Y chroma subsampling factor is 2 ^ shift */
-+  uint8_t depth;                /* bit depth of the color components */
-+} PixFmtInfo;
-+
-+
-+/* this table gives more information about formats */
-+static PixFmtInfo pix_fmt_info[PIX_FMT_NB];
-+void
-+gst_ffmpeg_init_pix_fmt_info (void)
-+{
-+  /* YUV formats */
-+  pix_fmt_info[PIX_FMT_YUV420P].name = g_strdup ("yuv420p");
-+  pix_fmt_info[PIX_FMT_YUV420P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUV420P].color_type = FF_COLOR_YUV;
-+  pix_fmt_info[PIX_FMT_YUV420P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUV420P].depth = 8,
-+      pix_fmt_info[PIX_FMT_YUV420P].x_chroma_shift = 1,
-+      pix_fmt_info[PIX_FMT_YUV420P].y_chroma_shift = 1;
-+
-+  pix_fmt_info[PIX_FMT_YUV422P].name = g_strdup ("yuv422p");
-+  pix_fmt_info[PIX_FMT_YUV422P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUV422P].color_type = FF_COLOR_YUV;
-+  pix_fmt_info[PIX_FMT_YUV422P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUV422P].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUV422P].x_chroma_shift = 1;
-+  pix_fmt_info[PIX_FMT_YUV422P].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_YUV444P].name = g_strdup ("yuv444p");
-+  pix_fmt_info[PIX_FMT_YUV444P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUV444P].color_type = FF_COLOR_YUV;
-+  pix_fmt_info[PIX_FMT_YUV444P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUV444P].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUV444P].x_chroma_shift = 0;
-+  pix_fmt_info[PIX_FMT_YUV444P].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_YUYV422].name = g_strdup ("yuv422");
-+  pix_fmt_info[PIX_FMT_YUYV422].nb_channels = 1;
-+  pix_fmt_info[PIX_FMT_YUYV422].color_type = FF_COLOR_YUV;
-+  pix_fmt_info[PIX_FMT_YUYV422].pixel_type = FF_PIXEL_PACKED;
-+  pix_fmt_info[PIX_FMT_YUYV422].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUYV422].x_chroma_shift = 1;
-+  pix_fmt_info[PIX_FMT_YUYV422].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_YUV410P].name = g_strdup ("yuv410p");
-+  pix_fmt_info[PIX_FMT_YUV410P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUV410P].color_type = FF_COLOR_YUV;
-+  pix_fmt_info[PIX_FMT_YUV410P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUV410P].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUV410P].x_chroma_shift = 2;
-+  pix_fmt_info[PIX_FMT_YUV410P].y_chroma_shift = 2;
-+
-+  pix_fmt_info[PIX_FMT_YUV411P].name = g_strdup ("yuv411p");
-+  pix_fmt_info[PIX_FMT_YUV411P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUV411P].color_type = FF_COLOR_YUV;
-+  pix_fmt_info[PIX_FMT_YUV411P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUV411P].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUV411P].x_chroma_shift = 2;
-+  pix_fmt_info[PIX_FMT_YUV411P].y_chroma_shift = 0;
-+
-+  /* JPEG YUV */
-+  pix_fmt_info[PIX_FMT_YUVJ420P].name = g_strdup ("yuvj420p");
-+  pix_fmt_info[PIX_FMT_YUVJ420P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUVJ420P].color_type = FF_COLOR_YUV_JPEG;
-+  pix_fmt_info[PIX_FMT_YUVJ420P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUVJ420P].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUVJ420P].x_chroma_shift = 1;
-+  pix_fmt_info[PIX_FMT_YUVJ420P].y_chroma_shift = 1;
-+
-+  pix_fmt_info[PIX_FMT_YUVJ422P].name = g_strdup ("yuvj422p");
-+  pix_fmt_info[PIX_FMT_YUVJ422P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUVJ422P].color_type = FF_COLOR_YUV_JPEG;
-+  pix_fmt_info[PIX_FMT_YUVJ422P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUVJ422P].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUVJ422P].x_chroma_shift = 1;
-+  pix_fmt_info[PIX_FMT_YUVJ422P].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_YUVJ444P].name = g_strdup ("yuvj444p");
-+  pix_fmt_info[PIX_FMT_YUVJ444P].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_YUVJ444P].color_type = FF_COLOR_YUV_JPEG;
-+  pix_fmt_info[PIX_FMT_YUVJ444P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUVJ444P].depth = 8;
-+  pix_fmt_info[PIX_FMT_YUVJ444P].x_chroma_shift = 0;
-+  pix_fmt_info[PIX_FMT_YUVJ444P].y_chroma_shift = 0;
-+
-+  /* RGB formats */
-+  pix_fmt_info[PIX_FMT_RGB24].name = g_strdup ("rgb24");
-+  pix_fmt_info[PIX_FMT_RGB24].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_RGB24].color_type = FF_COLOR_RGB;
-+  pix_fmt_info[PIX_FMT_RGB24].pixel_type = FF_PIXEL_PACKED;
-+  pix_fmt_info[PIX_FMT_RGB24].depth = 8;
-+  pix_fmt_info[PIX_FMT_RGB24].x_chroma_shift = 0;
-+  pix_fmt_info[PIX_FMT_RGB24].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_BGR24].name = g_strdup ("bgr24");
-+  pix_fmt_info[PIX_FMT_BGR24].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_BGR24].color_type = FF_COLOR_RGB;
-+  pix_fmt_info[PIX_FMT_BGR24].pixel_type = FF_PIXEL_PACKED;
-+  pix_fmt_info[PIX_FMT_BGR24].depth = 8;
-+  pix_fmt_info[PIX_FMT_BGR24].x_chroma_shift = 0;
-+  pix_fmt_info[PIX_FMT_BGR24].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_RGB32].name = g_strdup ("rgba32");
-+  pix_fmt_info[PIX_FMT_RGB32].nb_channels = 4;
-+  pix_fmt_info[PIX_FMT_RGB32].is_alpha = 1;
-+  pix_fmt_info[PIX_FMT_RGB32].color_type = FF_COLOR_RGB;
-+  pix_fmt_info[PIX_FMT_RGB32].pixel_type = FF_PIXEL_PACKED;
-+  pix_fmt_info[PIX_FMT_RGB32].depth = 8;
-+  pix_fmt_info[PIX_FMT_RGB32].x_chroma_shift = 0;
-+  pix_fmt_info[PIX_FMT_RGB32].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_RGB565].name = g_strdup ("rgb565");
-+  pix_fmt_info[PIX_FMT_RGB565].nb_channels = 3;
-+  pix_fmt_info[PIX_FMT_RGB565].color_type = FF_COLOR_RGB;
-+  pix_fmt_info[PIX_FMT_RGB565].pixel_type = FF_PIXEL_PACKED;
-+  pix_fmt_info[PIX_FMT_RGB565].depth = 5;
-+  pix_fmt_info[PIX_FMT_RGB565].x_chroma_shift = 0;
-+  pix_fmt_info[PIX_FMT_RGB565].y_chroma_shift = 0;
-+
-+  pix_fmt_info[PIX_FMT_RGB555].name = g_strdup ("rgb555");
-+  pix_fmt_info[PIX_FMT_RGB555].nb_channels = 4;
-+  pix_fmt_info[PIX_FMT_RGB555].is_alpha = 1;
-+  pix_fmt_info[PIX_FMT_RGB555].color_type = FF_COLOR_RGB;
-+  pix_fmt_info[PIX_FMT_RGB555].pixel_type = FF_PIXEL_PACKED;
-+  pix_fmt_info[PIX_FMT_RGB555].depth = 5;
-+  pix_fmt_info[PIX_FMT_RGB555].x_chroma_shift = 0;
-+  pix_fmt_info[PIX_FMT_RGB555].y_chroma_shift = 0;
-+
-+  /* gray / mono formats */
-+  pix_fmt_info[PIX_FMT_GRAY8].name = g_strdup ("gray");
-+  pix_fmt_info[PIX_FMT_GRAY8].nb_channels = 1;
-+  pix_fmt_info[PIX_FMT_GRAY8].color_type = FF_COLOR_GRAY;
-+  pix_fmt_info[PIX_FMT_GRAY8].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_GRAY8].depth = 8;
-+
-+  pix_fmt_info[PIX_FMT_MONOWHITE].name = g_strdup ("monow");
-+  pix_fmt_info[PIX_FMT_MONOWHITE].nb_channels = 1;
-+  pix_fmt_info[PIX_FMT_MONOWHITE].color_type = FF_COLOR_GRAY;
-+  pix_fmt_info[PIX_FMT_MONOWHITE].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_MONOWHITE].depth = 1;
-+
-+  pix_fmt_info[PIX_FMT_MONOBLACK].name = g_strdup ("monob");
-+  pix_fmt_info[PIX_FMT_MONOBLACK].nb_channels = 1;
-+  pix_fmt_info[PIX_FMT_MONOBLACK].color_type = FF_COLOR_GRAY;
-+  pix_fmt_info[PIX_FMT_MONOBLACK].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_MONOBLACK].depth = 1;
-+
-+  /* paletted formats */
-+  pix_fmt_info[PIX_FMT_PAL8].name = g_strdup ("pal8");
-+  pix_fmt_info[PIX_FMT_PAL8].nb_channels = 4;
-+  pix_fmt_info[PIX_FMT_PAL8].is_alpha = 1;
-+  pix_fmt_info[PIX_FMT_PAL8].color_type = FF_COLOR_RGB;
-+  pix_fmt_info[PIX_FMT_PAL8].pixel_type = FF_PIXEL_PALETTE;
-+  pix_fmt_info[PIX_FMT_PAL8].depth = 8;
-+
-+  pix_fmt_info[PIX_FMT_YUVA420P].name = g_strdup ("yuva420p");
-+  pix_fmt_info[PIX_FMT_YUVA420P].nb_channels = 4;
-+  pix_fmt_info[PIX_FMT_YUVA420P].is_alpha = 1;
-+  pix_fmt_info[PIX_FMT_YUVA420P].color_type = FF_COLOR_YUV;
-+  pix_fmt_info[PIX_FMT_YUVA420P].pixel_type = FF_PIXEL_PLANAR;
-+  pix_fmt_info[PIX_FMT_YUVA420P].depth = 8,
-+      pix_fmt_info[PIX_FMT_YUVA420P].x_chroma_shift = 1,
-+      pix_fmt_info[PIX_FMT_YUVA420P].y_chroma_shift = 1;
-+};
-+
-+int
-+gst_ffmpeg_avpicture_get_size (int pix_fmt, int width, int height)
-+{
-+  AVPicture dummy_pict;
-+
-+  return gst_ffmpeg_avpicture_fill (&dummy_pict, NULL, pix_fmt, width, height);
-+}
-+
-+#define GEN_MASK(x) ((1<<(x))-1)
-+#define ROUND_UP_X(v,x) (((v) + GEN_MASK(x)) & ~GEN_MASK(x))
-+#define ROUND_UP_2(x) ROUND_UP_X (x, 1)
-+#define ROUND_UP_4(x) ROUND_UP_X (x, 2)
-+#define ROUND_UP_8(x) ROUND_UP_X (x, 3)
-+#define DIV_ROUND_UP_X(v,x) (((v) + GEN_MASK(x)) >> (x))
-+
-+int
-+gst_ffmpeg_avpicture_fill (AVPicture * picture,
-+    uint8_t * ptr, enum PixelFormat pix_fmt, int width, int height)
-+{
-+  int size, w2, h2, size2;
-+  int stride, stride2;
-+  PixFmtInfo *pinfo;
-+
-+  pinfo = &pix_fmt_info[pix_fmt];
-+
-+  switch (pix_fmt) {
-+    case PIX_FMT_YUV420P:
-+    case PIX_FMT_YUV422P:
-+    case PIX_FMT_YUV444P:
-+    case PIX_FMT_YUV410P:
-+    case PIX_FMT_YUV411P:
-+    case PIX_FMT_YUVJ420P:
-+    case PIX_FMT_YUVJ422P:
-+    case PIX_FMT_YUVJ444P:
-+      stride = ROUND_UP_4 (width);
-+      h2 = ROUND_UP_X (height, pinfo->y_chroma_shift);
-+      size = stride * h2;
-+      w2 = DIV_ROUND_UP_X (width, pinfo->x_chroma_shift);
-+      stride2 = ROUND_UP_4 (w2);
-+      h2 = DIV_ROUND_UP_X (height, pinfo->y_chroma_shift);
-+      size2 = stride2 * h2;
-+      picture->data[0] = ptr;
-+      picture->data[1] = picture->data[0] + size;
-+      picture->data[2] = picture->data[1] + size2;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = stride2;
-+      picture->linesize[2] = stride2;
-+      picture->linesize[3] = 0;
-+      GST_DEBUG ("planes %d %d %d", 0, size, size + size2);
-+      GST_DEBUG ("strides %d %d %d", stride, stride2, stride2);
-+      return size + 2 * size2;
-+    case PIX_FMT_YUVA420P:
-+      stride = ROUND_UP_4 (width);
-+      h2 = ROUND_UP_X (height, pinfo->y_chroma_shift);
-+      size = stride * h2;
-+      w2 = DIV_ROUND_UP_X (width, pinfo->x_chroma_shift);
-+      stride2 = ROUND_UP_4 (w2);
-+      h2 = DIV_ROUND_UP_X (height, pinfo->y_chroma_shift);
-+      size2 = stride2 * h2;
-+      picture->data[0] = ptr;
-+      picture->data[1] = picture->data[0] + size;
-+      picture->data[2] = picture->data[1] + size2;
-+      picture->data[3] = picture->data[2] + size2;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = stride2;
-+      picture->linesize[2] = stride2;
-+      picture->linesize[3] = stride;
-+      GST_DEBUG ("planes %d %d %d %d", 0, size, size + size2, size + 2 * size2);
-+      GST_DEBUG ("strides %d %d %d %d", stride, stride2, stride2, stride);
-+      return 2 * size + 2 * size2;
-+    case PIX_FMT_RGB24:
-+    case PIX_FMT_BGR24:
-+      stride = ROUND_UP_4 (width * 3);
-+      size = stride * height;
-+      picture->data[0] = ptr;
-+      picture->data[1] = NULL;
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = 0;
-+      picture->linesize[2] = 0;
-+      picture->linesize[3] = 0;
-+      return size;
-+      /*case PIX_FMT_AYUV4444:
-+         case PIX_FMT_BGR32:
-+         case PIX_FMT_BGRA32:
-+         case PIX_FMT_RGB32: */
-+    case PIX_FMT_RGB32:
-+      stride = width * 4;
-+      size = stride * height;
-+      picture->data[0] = ptr;
-+      picture->data[1] = NULL;
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = 0;
-+      picture->linesize[2] = 0;
-+      picture->linesize[3] = 0;
-+      return size;
-+    case PIX_FMT_RGB555:
-+    case PIX_FMT_RGB565:
-+    case PIX_FMT_YUYV422:
-+    case PIX_FMT_UYVY422:
-+      stride = ROUND_UP_4 (width * 2);
-+      size = stride * height;
-+      picture->data[0] = ptr;
-+      picture->data[1] = NULL;
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = 0;
-+      picture->linesize[2] = 0;
-+      picture->linesize[3] = 0;
-+      return size;
-+    case PIX_FMT_UYYVYY411:
-+      /* FIXME, probably not the right stride */
-+      stride = ROUND_UP_4 (width);
-+      size = stride * height;
-+      picture->data[0] = ptr;
-+      picture->data[1] = NULL;
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = width + width / 2;
-+      picture->linesize[1] = 0;
-+      picture->linesize[2] = 0;
-+      picture->linesize[3] = 0;
-+      return size + size / 2;
-+    case PIX_FMT_GRAY8:
-+      stride = ROUND_UP_4 (width);
-+      size = stride * height;
-+      picture->data[0] = ptr;
-+      picture->data[1] = NULL;
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = 0;
-+      picture->linesize[2] = 0;
-+      picture->linesize[3] = 0;
-+      return size;
-+    case PIX_FMT_MONOWHITE:
-+    case PIX_FMT_MONOBLACK:
-+      stride = ROUND_UP_4 ((width + 7) >> 3);
-+      size = stride * height;
-+      picture->data[0] = ptr;
-+      picture->data[1] = NULL;
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = 0;
-+      picture->linesize[2] = 0;
-+      picture->linesize[3] = 0;
-+      return size;
-+    case PIX_FMT_PAL8:
-+      /* already forced to be with stride, so same result as other function */
-+      stride = ROUND_UP_4 (width);
-+      size = stride * height;
-+      picture->data[0] = ptr;
-+      picture->data[1] = ptr + size;    /* palette is stored here as 256 32 bit words */
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      picture->linesize[0] = stride;
-+      picture->linesize[1] = 4;
-+      picture->linesize[2] = 0;
-+      picture->linesize[3] = 0;
-+      return size + 256 * 4;
-+    default:
-+      picture->data[0] = NULL;
-+      picture->data[1] = NULL;
-+      picture->data[2] = NULL;
-+      picture->data[3] = NULL;
-+      return -1;
-+  }
-+
-+  return 0;
-+}
-+
-+/* Create a GstBuffer of the requested size and caps.
-+ * The memory will be allocated by ffmpeg, making sure it's properly aligned
-+ * for any processing. */
-+
-+GstBuffer *
-+new_aligned_buffer (gint size, GstCaps * caps)
-+{
-+  GstBuffer *buf;
-+
-+  buf = gst_buffer_new ();
-+  GST_BUFFER_DATA (buf) = GST_BUFFER_MALLOCDATA (buf) = av_malloc (size);
-+  GST_BUFFER_SIZE (buf) = size;
-+  GST_BUFFER_FREE_FUNC (buf) = av_free;
-+  if (caps)
-+    gst_buffer_set_caps (buf, caps);
-+
-+  return buf;
-+}
-+
-+int
-+gst_ffmpeg_auto_max_threads (void)
-+{
-+  static gsize n_threads = 0;
-+  if (g_once_init_enter (&n_threads)) {
-+    int n = 1;
-+#if defined(_WIN32)
-+    {
-+      const char *s = getenv ("NUMBER_OF_PROCESSORS");
-+      if (s) {
-+        n = atoi (s);
-+      }
-+    }
-+#elif defined(__APPLE__)
-+    {
-+      int mib[] = { CTL_HW, HW_NCPU };
-+      size_t dataSize = sizeof (int);
-+
-+      if (sysctl (mib, 2, &n_threads, &dataSize, NULL, 0)) {
-+        n = 1;
-+      }
-+    }
-+#else
-+    n = sysconf (_SC_NPROCESSORS_CONF);
-+#endif
-+    if (n < 1)
-+      n = 1;
-+
-+    g_once_init_leave (&n_threads, n);
-+  }
-+
-+  return (int) (n_threads);
-+}
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.h gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.h
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.h	2011-11-02 14:04:05.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.h	2014-08-08 15:34:04.007874626 +0200
-@@ -23,6 +23,7 @@
- #ifdef HAVE_FFMPEG_UNINSTALLED
- #include <avcodec.h>
- #else
-+#include <libavutil/mathematics.h>
- #include <libavcodec/avcodec.h>
- #endif
- #include <gst/gst.h>
-@@ -87,7 +88,7 @@
- gst_ffmpeg_get_codecid_longname (enum CodecID codec_id);
- 
- gint
--av_smp_format_depth(enum SampleFormat smp_fmt);
-+av_smp_format_depth(enum AVSampleFormat smp_fmt);
- 
- GstBuffer *
- new_aligned_buffer (gint size, GstCaps * caps);
-diff -uNr gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.h.orig gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.h.orig
---- gst-ffmpeg-0.10.13.orig/ext/ffmpeg/gstffmpegutils.h.orig	1970-01-01 01:00:00.000000000 +0100
-+++ gst-ffmpeg-0.10.13/ext/ffmpeg/gstffmpegutils.h.orig	2014-08-08 15:26:38.473858652 +0200
-@@ -0,0 +1,95 @@
-+/* GStreamer
-+ * Copyright (C) <2009> Edward Hervey <bilboed at bilboed.com>
-+ *
-+ * This library is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU Library General Public
-+ * License as published by the Free Software Foundation; either
-+ * version 2 of the License, or (at your option) any later version.
-+ *
-+ * This library is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-+ * Library General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU Library General Public
-+ * License along with this library; if not, write to the
-+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+ * Boston, MA 02111-1307, USA.
-+ */
-+
-+#ifndef __GST_FFMPEG_UTILS_H__
-+#define __GST_FFMPEG_UTILS_H__
-+
-+#ifdef HAVE_FFMPEG_UNINSTALLED
-+#include <avcodec.h>
-+#else
-+#include <libavcodec/avcodec.h>
-+#endif
-+#include <gst/gst.h>
-+
-+/*
-+ *Get the size of an picture
-+ */
-+int
-+gst_ffmpeg_avpicture_get_size (int pix_fmt, int width, int height);
-+
-+/*
-+ * Fill in pointers in an AVPicture, aligned by 4 (required by X).
-+ */
-+
-+int
-+gst_ffmpeg_avpicture_fill (AVPicture * picture,
-+                           uint8_t *   ptr,
-+                           enum PixelFormat pix_fmt,
-+                           int         width,
-+                           int         height);
-+
-+/*
-+ * Convert from/to a GStreamer <-> FFMpeg timestamp.
-+ */
-+static inline guint64
-+gst_ffmpeg_time_ff_to_gst (gint64 pts, AVRational base)
-+{
-+  guint64 out;
-+
-+  if (pts == AV_NOPTS_VALUE){
-+    out = GST_CLOCK_TIME_NONE;
-+  } else {
-+    AVRational bq = { 1, GST_SECOND };
-+    out = av_rescale_q (pts, base, bq);
-+  }
-+
-+  return out;
-+}
-+
-+static inline gint64
-+gst_ffmpeg_time_gst_to_ff (guint64 time, AVRational base)
-+{
-+  gint64 out;
-+
-+  if (!GST_CLOCK_TIME_IS_VALID (time) || base.num == 0) {
-+    out = AV_NOPTS_VALUE;
-+  } else {
-+    AVRational bq = { 1, GST_SECOND };
-+    out = av_rescale_q (time, bq, base);
-+  }
-+
-+  return out;
-+}
-+
-+void 
-+gst_ffmpeg_init_pix_fmt_info(void);
-+
-+int
-+gst_ffmpeg_auto_max_threads(void);
-+
-+G_CONST_RETURN gchar *
-+gst_ffmpeg_get_codecid_longname (enum CodecID codec_id);
-+
-+gint
-+av_smp_format_depth(enum AVSampleFormat smp_fmt);
-+
-+GstBuffer *
-+new_aligned_buffer (gint size, GstCaps * caps);
-+
-+#endif /* __GST_FFMPEG_UTILS_H__ */
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav_e500mc.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav_e500mc.patch
deleted file mode 100644
index eba4988..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav_e500mc.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/gst-libs/ext/libav/configure b/gst-libs/ext/libav/configure
-index 8473069..4f74952 100755
---- a/gst-libs/ext/libav/configure
-+++ b/gst-libs/ext/libav/configure
-Fix gst-ffmpeg build issues for libav on e500mc (fsl-p4080)
-
-Upstream-Status: Backport
-
-Signed-off-by: Yao Zhao <yao.zhao at windriver.com>
-
-@@ -2210,6 +2210,10 @@ elif enabled ppc; then
-             cpuflags="-mcpu=cell"
-             enable ldbrx
-         ;;
-+        e500mc)
-+            cpuflags="-mcpu=e500mc"
-+            disable altivec
-+        ;;
-         e500v2)
-             cpuflags="-mcpu=8548 -mhard-float -mfloat-gprs=double"
-             disable altivec
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav_e5500.patch b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav_e5500.patch
deleted file mode 100644
index d9ea2c2..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg-0.10.13/libav_e5500.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-libav: Add configs for ppc e5500
-
-Upstream-Status: Pending
-
-Signed-off-by: Jesse Zhang <sen.zhang at windriver.com>
-
---- gst-ffmpeg-0.10.13/gst-libs/ext/libav/configure	2013-06-20 05:18:36.073104964 -0400
-+++ gst-ffmpeg-0.10.13/gst-libs/ext/libav/configure	2013-06-20 05:18:38.269104150 -0400
-@@ -2222,6 +2222,10 @@
-             cpuflags="-mcpu=8540 -mhard-float"
-             disable altivec
-         ;;
-+        e5500)
-+            cpuflags="-mcpu=e5500 -mhard-float"
-+            disable altivec
-+        ;;
-     esac
- 
- elif enabled x86; then
diff --git a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg_0.10.13.bb b/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg_0.10.13.bb
deleted file mode 100644
index ca19fd6..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer-0.10/gst-ffmpeg_0.10.13.bb
+++ /dev/null
@@ -1,103 +0,0 @@
-SUMMARY = "FFmpeg-based GStreamer plug-in"
-SECTION = "multimedia"
-LICENSE = "GPLv2+ & LGPLv2+ & ( (GPLv2+ & LGPLv2.1+) | (GPLv3+ & LGPLv3+) )"
-LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://ext/libpostproc/gstpostproc.c;beginline=1;endline=18;md5=5896e445e41681324381f5869ee33d38 \
-                    file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \
-                    file://ext/ffmpeg/gstffmpeg.h;beginline=1;endline=18;md5=ff65467b0c53cdfa98d0684c1bc240a9 \
-                    file://gst-libs/ext/libav/LICENSE;md5=abc3b8cb02856aa7823bbbd162d16232 \
-                    file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
-                    file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \
-                    file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79d7bd3a379 \
-                    file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02"
-LICENSE_FLAGS = "commercial"
-HOMEPAGE = "http://www.gstreamer.net/"
-DEPENDS = "gstreamer gst-plugins-base zlib bzip2 yasm-native libpostproc"
-
-inherit autotools-brokensep pkgconfig
-
-SRC_URI = "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \
-           file://lower-rank.diff \
-           file://configure-fix.patch \
-           file://h264_qpel_mmx.patch \
-           file://libav_e500mc.patch \
-           file://libav_e5500.patch \
-           file://gst-ffmpeg-CVE-2013-3674.patch \
-           file://0001-avformat-mpegtsenc-Check-data-array-size-in-mpegts_w.patch \
-           file://0001-vqavideo-check-chunk-sizes-before-reading-chunks.patch \
-           file://0001-avcodec-msrle-use-av_image_get_linesize-to-calculate.patch \
-           file://0001-huffyuvdec-Skip-len-0-cases.patch \
-           file://0001-huffyuvdec-Check-init_vlc-return-codes.patch \
-           file://0001-alsdec-check-block-length.patch \
-           file://0001-pgssubdec-check-RLE-size-before-copying.-Fix-out-of-.patch \
-           file://0001-atrac3dec-Check-coding-mode-against-channels.patch \
-           file://0001-eamad-fix-out-of-array-accesses.patch \
-           file://0001-mjpegdec-check-SE.patch \
-           file://0001-alac-fix-nb_samples-order-case.patch \
-           file://0001-h264-correct-ref-count-check-and-limit-fix-out-of-ar.patch \
-           file://0001-roqvideodec-check-dimensions-validity.patch \
-           file://0001-aacdec-check-channel-count.patch \
-           file://0001-pngdec-filter-dont-access-out-of-array-elements-at-t.patch \
-           file://0001-error_concealment-Check-that-the-picture-is-not-in-a.patch \
-           file://0001-vp3-fix-oob-read-for-negative-tokens-and-memleaks-on.patch \
-           file://0001-vp3-Copy-all-3-frames-for-thread-updates.patch \
-           file://0001-h264_sei-Fix-infinite-loop.patch \
-           file://0001-avcodec-parser-reset-indexes-on-realloc-failure.patch \
-           file://0001-avcodec-rpza-Perform-pointer-advance-and-checks-befo.patch \
-           file://gst-ffmpeg-CVE-2013-0855.patch \
-           file://0001-qdm2dec-fix-buffer-overflow.patch \
-           file://0001-smackerdec-Check-that-the-last-indexes-are-within-th.patch \
-           file://0001-avcodec-dsputil-fix-signedness-in-sizeof-comparissio.patch \
-           file://0001-error-concealment-initialize-block-index.patch \
-           file://0001-qdm2-check-array-index-before-use-fix-out-of-array-a.patch \
-           file://0001-lavf-compute-probe-buffer-size-more-reliably.patch \
-           file://0001-ffserver-set-oformat.patch \
-           file://0001-h264-set-parameters-from-SPS-whenever-it-changes.patch \
-           file://0001-h264-skip-error-concealment-when-SPS-and-slices-are-.patch \
-           file://0001-avcodec-smc-fix-off-by-1-error.patch \
-           file://0002-avcodec-mjpegdec-check-bits-per-pixel-for-changes-si.patch \
-           file://libav-9.patch \
-           file://gst-ffmpeg-fix-CVE-2011-4352.patch \
-           file://gst-ffmpeg-fix-CVE-2014-7933.patch \
-           file://gst-ffmpeg-fix-CVE-2014-8542.patch \
-           file://gst-ffmpeg-fix-CVE-2014-8543.patch \
-           file://gst-ffmpeg-fix-CVE-2014-8544.patch \
-           file://gst-ffmpeg-fix-CVE-2014-8545.patch \
-           file://gst-ffmpeg-fix-CVE-2014-8546.patch \
-           file://gst-ffmpeg-fix-CVE-2014-8547.patch \
-           file://gst-ffmpeg-fix-CVE-2014-9318.patch \
-           file://gst-ffmpeg-fix-CVE-2014-9603.patch \
-"
-
-SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4"
-SRC_URI[sha256sum] = "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb62"
-
-PR = "r8"
-
-GSTREAMER_DEBUG ?= "--disable-debug"
-
-FFMPEG_EXTRA_CONFIGURE = "--with-ffmpeg-extra-configure"
-# pass --cpu for powerpc. get cpu name by stripping "ppc" or "ppc64"
-# from DEFAULTTUNE
-FFMPEG_CPU_powerpc = "--cpu=${@d.getVar('DEFAULTTUNE', False)[3:]}"
-FFMPEG_CPU_powerpc64 = "--cpu=${@d.getVar('DEFAULTTUNE', False)[5:]}"
-FFMPEG_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux ${FFMPEG_CPU} \
-  --cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \
-  --ranlib='${RANLIB}' \
-  ${GSTREAMER_DEBUG}"
-FFMPEG_EXTRA_CONFIGURE_COMMON = \
-'${FFMPEG_EXTRA_CONFIGURE}="${FFMPEG_EXTRA_CONFIGURE_COMMON_ARG}"'
-
-EXTRA_OECONF = "${FFMPEG_EXTRA_CONFIGURE_COMMON}"
-
-PACKAGECONFIG ??= "external-libav"
-PACKAGECONFIG[external-libav] = "--with-system-ffmpeg,,libav"
-PACKAGECONFIG[orc] = "--enable-orc,--disable-orc,orc"
-
-FILES_${PN} += "${libdir}/gstreamer-0.10/*.so"
-FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
-FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.la"
-FILES_${PN}-staticdev += "${libdir}/gstreamer-0.10/*.a"
-
-# http://errors.yoctoproject.org/Errors/Details/40736/
-PNBLACKLIST[gst-ffmpeg] ?= "Not compatible with currently used ffmpeg 3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-multimedia/recipes-multimedia/gstreamer/files/display.patch b/meta-multimedia/recipes-multimedia/gstreamer/files/display.patch
deleted file mode 100644
index 61b0e6c..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer/files/display.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton at intel.com>
-
-From 3e46d2e501da68d929bb5f26900a292a5fc04a1f Mon Sep 17 00:00:00 2001
-From: Stefan Westerfeld <stefan at space.twc.de>
-Date: Mon, 23 Apr 2012 03:10:22 +0200
-Subject: [PATCH] Fix time display updates (broken by introduction of quiet
- mode).
-
----
- src/gst123.cc |    1 +
- src/msg.cc    |    7 +++++++
- src/msg.h     |    1 +
- 3 files changed, 9 insertions(+)
-
-diff --git a/src/gst123.cc b/src/gst123.cc
-index 20e91e5..ce5876d 100644
---- a/src/gst123.cc
-+++ b/src/gst123.cc
-@@ -640,6 +640,7 @@ cb_print_position (gpointer *data)
-       else
-         blanks += "         ";
-       Msg::print ("%s%s\r", status.c_str(), blanks.c_str());
-+      Msg::flush();
-     }
- 
-   /* call me again */
-diff --git a/src/msg.cc b/src/msg.cc
-index 547cd90..33cada2 100644
---- a/src/msg.cc
-+++ b/src/msg.cc
-@@ -41,6 +41,13 @@ print (const char *format, ...)
-     }
- }
- 
-+void
-+flush()
-+{
-+  if (!Options::the().quiet)
-+    fflush (stdout);
-+}
-+
- }
- 
- }
-diff --git a/src/msg.h b/src/msg.h
-index e0ced24..5bebac0 100644
---- a/src/msg.h
-+++ b/src/msg.h
-@@ -27,6 +27,7 @@ namespace Msg
- {
- 
- void print (const char *format, ...);
-+void flush();
- 
- }
- 
--- 
-1.7.9.5
-
diff --git a/meta-multimedia/recipes-multimedia/gstreamer/gst123_0.3.1.bb b/meta-multimedia/recipes-multimedia/gstreamer/gst123_0.3.1.bb
deleted file mode 100644
index 9fe1bc6..0000000
--- a/meta-multimedia/recipes-multimedia/gstreamer/gst123_0.3.1.bb
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "Flexible CLI player in the spirit of mpg123, based on GStreamer"
-HOMEPAGE = "http://space.twc.de/~stefan/gst123.php"
-LICENSE = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
-                    file://src/gst123.cc;beginline=1;endline=19;md5=05d2f5d54b985b986c26af931d2084f8"
-
-DEPENDS = "libx11 gstreamer gst-plugins-base gtk+ ncurses"
-
-SRC_URI = "http://space.twc.de/~stefan/gst123/${BPN}-${PV}.tar.bz2 \
-           file://display.patch"
-
-SRC_URI[md5sum] = "1e77767c9d6fecee5641f95804f160fe"
-SRC_URI[sha256sum] = "89d1de025eca0466c125dcd6a11b64341bdf98ee4c03c3e5a12321d77cb8b0ce"
-
-inherit autotools
-
-PNBLACKLIST[gst123] ?= "gst123 is still "sometimes" using wrong sysroot - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb b/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb
deleted file mode 100644
index 2da29d9..0000000
--- a/meta-networking/recipes-daemons/dnrd/dnrd_2.20.3.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "A caching, forwarding DNS proxy server"
-DESCRIPTION = "\
-dnrd is a proxying nameserver. It forwards DNS queries to the appropriate \
-nameserver, but can also act as the primary nameserver for a subnet behind \
-a firewall. It also has features such as caching DNS requests, support for \
-DNS servers, cache poisoning prevention, TCP support, etc.."
-HOMEPAGE = "http://dnrd.sourceforge.net/"
-SECTION = "net"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0be67017f1c770313ad7b40e18d568f1"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.gz \
-           file://dnrd.service \
-           file://dnrd.conf.sample \
-           file://dnrd.init"
-SRC_URI[md5sum] = "41c9b070aae8ed403fc8c2aac7ab157c"
-SRC_URI[sha256sum] = "aa46e7f8736b88c1d752cf606b3990041221ce91d014e955c6b02eb2167db015"
-
-PNBLACKLIST[dnrd] ?= "BROKEN: dnrd-2.20.3-r0 do_package: QA Issue: dnrd: Files/directories were installed but not shipped in any package: - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SYSTEMD_SERVICE_${PN} = "dnrd.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-
-inherit autotools
-inherit ${@bb.utils.filter('VIRTUAL-RUNTIME_init_manager', 'systemd', d)}
-
-do_install() {
-    oe_runmake install DESTDIR=${D} INSTALL="install -p"
-
-    sed -i -e 's:/etc/rc.d/init.d/functions:/etc/init.d/functions:g' \
-        ${WORKDIR}/dnrd.init
-    install -d -m 0755 ${D}${sysconfdir}/init.d
-    install -d -m 0755 ${D}${sysconfdir}/dnrd
-    install -p -m 0644 ${WORKDIR}/dnrd.conf.sample ${D}${sysconfdir}/dnrd/dnrd.conf
-    install -p -m 0755 ${WORKDIR}/dnrd.init ${D}${sysconfdir}/init.d/dnrd
-
-    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
-        install -d -m 0755 ${D}${systemd_unitdir}/system
-        install -m 644 ${WORKDIR}/dnrd.service ${D}${systemd_unitdir}/system
-    fi
-}
diff --git a/meta-networking/recipes-filter/libnftnl/libnftnl/snprintf_shadow.patch b/meta-networking/recipes-filter/libnftnl/libnftnl/snprintf_shadow.patch
deleted file mode 100644
index 0453b1b..0000000
--- a/meta-networking/recipes-filter/libnftnl/libnftnl/snprintf_shadow.patch
+++ /dev/null
@@ -1,224 +0,0 @@
-Taken from 
-https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=755956
-
---- ./src/expr_ops.h	2014-06-24 17:07:05.574784704 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr_ops.h	2014-07-25 00:19:28.367694613 +0400
-@@ -28,7 +28,7 @@
- 	const void *(*get)(const struct nft_rule_expr *e, uint16_t type, uint32_t *data_len);
- 	int 	(*parse)(struct nft_rule_expr *e, struct nlattr *attr);
- 	void	(*build)(struct nlmsghdr *nlh, struct nft_rule_expr *e);
--	int	(*snprintf)(char *buf, size_t len, uint32_t type, uint32_t flags, struct nft_rule_expr *e);
-+    int	(*snprintf_)(char *buf, size_t len, uint32_t type, uint32_t flags, struct nft_rule_expr *e);
- 	int	(*xml_parse)(struct nft_rule_expr *e, mxml_node_t *tree,
- 			     struct nft_parse_err *err);
- 	int	(*json_parse)(struct nft_rule_expr *e, json_t *data,
---- ./src/rule.c	2014-06-24 17:07:05.574784704 +0400
-+++ ../libnftnl-1.0.2-my/./src/rule.c	2014-07-25 00:19:28.355694880 +0400
-@@ -813,7 +813,7 @@
- 			       "{\"type\":\"%s\",", expr->ops->name);
- 		SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
- 
--		ret = expr->ops->snprintf(buf+offset, len, type, flags, expr);
-+        ret = expr->ops->snprintf_(buf+offset, len, type, flags, expr);
- 		SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
- 
- 		/*
---- ./src/expr.c	2014-06-24 17:07:05.574784704 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr.c	2014-07-25 00:19:27.367716863 +0400
-@@ -227,7 +227,7 @@
- 	int ret;
- 	unsigned int offset = 0, len = size;
- 
--	ret = expr->ops->snprintf(buf+offset, len, type, flags, expr);
-+	ret = expr->ops->snprintf_(buf+offset, len, type, flags, expr);
- 	SNPRINTF_BUFFER_SIZE(ret, size, len, offset);
- 
- 	return offset;
---- ./src/expr/exthdr.c	2014-06-25 18:34:08.174284719 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/exthdr.c	2014-07-25 00:21:48.192583628 +0400
-@@ -362,7 +362,7 @@
- 	.get		= nft_rule_expr_exthdr_get,
- 	.parse		= nft_rule_expr_exthdr_parse,
- 	.build		= nft_rule_expr_exthdr_build,
--	.snprintf	= nft_rule_expr_exthdr_snprintf,
-+	.snprintf_	= nft_rule_expr_exthdr_snprintf,
- 	.xml_parse	= nft_rule_expr_exthdr_xml_parse,
- 	.json_parse	= nft_rule_expr_exthdr_json_parse,
- };
---- ./src/expr/log.c	2014-06-25 18:34:08.178284810 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/log.c	2014-07-25 00:21:48.160584340 +0400
-@@ -332,7 +332,7 @@
- 	.get		= nft_rule_expr_log_get,
- 	.parse		= nft_rule_expr_log_parse,
- 	.build		= nft_rule_expr_log_build,
--	.snprintf	= nft_rule_expr_log_snprintf,
-+	.snprintf_	= nft_rule_expr_log_snprintf,
- 	.xml_parse	= nft_rule_expr_log_xml_parse,
- 	.json_parse	= nft_rule_expr_log_json_parse,
- };
---- ./src/expr/limit.c	2014-06-25 18:34:08.178284810 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/limit.c	2014-07-25 00:21:48.108585496 +0400
-@@ -250,7 +250,7 @@
- 	.get		= nft_rule_expr_limit_get,
- 	.parse		= nft_rule_expr_limit_parse,
- 	.build		= nft_rule_expr_limit_build,
--	.snprintf	= nft_rule_expr_limit_snprintf,
-+	.snprintf_	= nft_rule_expr_limit_snprintf,
- 	.xml_parse	= nft_rule_expr_limit_xml_parse,
- 	.json_parse	= nft_rule_expr_limit_json_parse,
- };
---- ./src/expr/cmp.c	2014-06-25 18:34:08.174284719 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/cmp.c	2014-07-25 00:21:48.172584073 +0400
-@@ -331,7 +331,7 @@
- 	.get		= nft_rule_expr_cmp_get,
- 	.parse		= nft_rule_expr_cmp_parse,
- 	.build		= nft_rule_expr_cmp_build,
--	.snprintf	= nft_rule_expr_cmp_snprintf,
-+	.snprintf_	= nft_rule_expr_cmp_snprintf,
- 	.xml_parse	= nft_rule_expr_cmp_xml_parse,
- 	.json_parse	= nft_rule_expr_cmp_json_parse,
- };
---- ./src/expr/target.c	2014-06-25 18:34:08.182284901 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/target.c	2014-07-25 00:21:48.184583806 +0400
-@@ -274,7 +274,7 @@
- 	.get		= nft_rule_expr_target_get,
- 	.parse		= nft_rule_expr_target_parse,
- 	.build		= nft_rule_expr_target_build,
--	.snprintf	= nft_rule_expr_target_snprintf,
-+	.snprintf_	= nft_rule_expr_target_snprintf,
- 	.xml_parse	= nft_rule_expr_target_xml_parse,
- 	.json_parse	= nft_rule_expr_target_json_parse,
- };
---- ./src/expr/byteorder.c	2014-06-25 18:34:08.158284356 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/byteorder.c	2014-07-25 00:21:48.148584607 +0400
-@@ -384,7 +384,7 @@
- 	.get		= nft_rule_expr_byteorder_get,
- 	.parse		= nft_rule_expr_byteorder_parse,
- 	.build		= nft_rule_expr_byteorder_build,
--	.snprintf	= nft_rule_expr_byteorder_snprintf,
-+	.snprintf_	= nft_rule_expr_byteorder_snprintf,
- 	.xml_parse	= nft_rule_expr_byteorder_xml_parse,
- 	.json_parse	= nft_rule_expr_byteorder_json_parse,
- };
---- ./src/expr/lookup.c	2014-06-25 18:34:08.178284810 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/lookup.c	2014-07-25 00:21:48.136584874 +0400
-@@ -305,7 +305,7 @@
- 	.get		= nft_rule_expr_lookup_get,
- 	.parse		= nft_rule_expr_lookup_parse,
- 	.build		= nft_rule_expr_lookup_build,
--	.snprintf	= nft_rule_expr_lookup_snprintf,
-+	.snprintf_	= nft_rule_expr_lookup_snprintf,
- 	.xml_parse	= nft_rule_expr_lookup_xml_parse,
- 	.json_parse	= nft_rule_expr_lookup_json_parse,
- };
---- ./src/expr/immediate.c	2014-06-25 18:34:08.178284810 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/immediate.c	2014-07-25 00:21:48.124585141 +0400
-@@ -365,7 +365,7 @@
- 	.get		= nft_rule_expr_immediate_get,
- 	.parse		= nft_rule_expr_immediate_parse,
- 	.build		= nft_rule_expr_immediate_build,
--	.snprintf	= nft_rule_expr_immediate_snprintf,
-+	.snprintf_	= nft_rule_expr_immediate_snprintf,
- 	.xml_parse	= nft_rule_expr_immediate_xml_parse,
- 	.json_parse	= nft_rule_expr_immediate_json_parse,
- };
---- ./src/expr/meta.c	2014-06-25 18:34:08.178284810 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/meta.c	2014-07-25 00:21:48.040587008 +0400
-@@ -340,7 +340,7 @@
- 	.get		= nft_rule_expr_meta_get,
- 	.parse		= nft_rule_expr_meta_parse,
- 	.build		= nft_rule_expr_meta_build,
--	.snprintf	= nft_rule_expr_meta_snprintf,
-+	.snprintf_	= nft_rule_expr_meta_snprintf,
- 	.xml_parse 	= nft_rule_expr_meta_xml_parse,
- 	.json_parse 	= nft_rule_expr_meta_json_parse,
- };
---- ./src/expr/queue.c	2014-06-25 18:34:08.182284901 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/queue.c	2014-07-25 00:21:48.208583272 +0400
-@@ -294,7 +294,7 @@
- 	.get		= nft_rule_expr_queue_get,
- 	.parse		= nft_rule_expr_queue_parse,
- 	.build		= nft_rule_expr_queue_build,
--	.snprintf	= nft_rule_expr_queue_snprintf,
-+	.snprintf_	= nft_rule_expr_queue_snprintf,
- 	.xml_parse	= nft_rule_expr_queue_xml_parse,
- 	.json_parse	= nft_rule_expr_queue_json_parse,
- };
---- ./src/expr/nat.c	2014-06-25 18:34:08.182284901 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/nat.c	2014-07-25 00:21:48.084586030 +0400
-@@ -430,7 +430,7 @@
- 	.get		= nft_rule_expr_nat_get,
- 	.parse		= nft_rule_expr_nat_parse,
- 	.build		= nft_rule_expr_nat_build,
--	.snprintf	= nft_rule_expr_nat_snprintf,
-+	.snprintf_	= nft_rule_expr_nat_snprintf,
- 	.xml_parse	= nft_rule_expr_nat_xml_parse,
- 	.json_parse	= nft_rule_expr_nat_json_parse,
- };
---- ./src/expr/payload.c	2014-06-25 18:34:08.182284901 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/payload.c	2014-07-25 00:21:48.200583450 +0400
-@@ -337,7 +337,7 @@
- 	.get		= nft_rule_expr_payload_get,
- 	.parse		= nft_rule_expr_payload_parse,
- 	.build		= nft_rule_expr_payload_build,
--	.snprintf	= nft_rule_expr_payload_snprintf,
-+	.snprintf_	= nft_rule_expr_payload_snprintf,
- 	.xml_parse	= nft_rule_expr_payload_xml_parse,
- 	.json_parse	= nft_rule_expr_payload_json_parse,
- };
---- ./src/expr/reject.c	2014-06-25 18:34:08.182284901 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/reject.c	2014-07-25 00:21:48.096585762 +0400
-@@ -242,7 +242,7 @@
- 	.get		= nft_rule_expr_reject_get,
- 	.parse		= nft_rule_expr_reject_parse,
- 	.build		= nft_rule_expr_reject_build,
--	.snprintf	= nft_rule_expr_reject_snprintf,
-+	.snprintf_	= nft_rule_expr_reject_snprintf,
- 	.xml_parse	= nft_rule_expr_reject_xml_parse,
- 	.json_parse	= nft_rule_expr_reject_json_parse,
- };
---- ./src/expr/counter.c	2014-06-25 18:34:08.174284719 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/counter.c	2014-07-25 00:21:48.056586652 +0400
-@@ -236,7 +236,7 @@
- 	.get		= nft_rule_expr_counter_get,
- 	.parse		= nft_rule_expr_counter_parse,
- 	.build		= nft_rule_expr_counter_build,
--	.snprintf	= nft_rule_expr_counter_snprintf,
-+	.snprintf_	= nft_rule_expr_counter_snprintf,
- 	.xml_parse	= nft_rule_expr_counter_xml_parse,
- 	.json_parse	= nft_rule_expr_counter_json_parse,
- };
---- ./src/expr/ct.c	2014-06-25 18:34:08.174284719 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/ct.c	2014-07-25 00:21:48.068586385 +0400
-@@ -428,7 +428,7 @@
- 	.get		= nft_rule_expr_ct_get,
- 	.parse		= nft_rule_expr_ct_parse,
- 	.build		= nft_rule_expr_ct_build,
--	.snprintf	= nft_rule_expr_ct_snprintf,
-+	.snprintf_	= nft_rule_expr_ct_snprintf,
- 	.xml_parse	= nft_rule_expr_ct_xml_parse,
- 	.json_parse	= nft_rule_expr_ct_json_parse,
- };
---- ./src/expr/bitwise.c	2014-06-25 18:34:08.158284356 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/bitwise.c	2014-07-25 00:21:49.272559599 +0400
-@@ -403,7 +403,7 @@
- 	.get		= nft_rule_expr_bitwise_get,
- 	.parse		= nft_rule_expr_bitwise_parse,
- 	.build		= nft_rule_expr_bitwise_build,
--	.snprintf	= nft_rule_expr_bitwise_snprintf,
-+    .snprintf_	= nft_rule_expr_bitwise_snprintf,
- 	.xml_parse	= nft_rule_expr_bitwise_xml_parse,
- 	.json_parse	= nft_rule_expr_bitwise_json_parse,
- };
---- ./src/expr/match.c	2014-06-25 18:34:08.178284810 +0400
-+++ ../libnftnl-1.0.2-my/./src/expr/match.c	2014-07-25 00:21:48.032587186 +0400
-@@ -273,7 +273,7 @@
- 	.get		= nft_rule_expr_match_get,
- 	.parse		= nft_rule_expr_match_parse,
- 	.build		= nft_rule_expr_match_build,
--	.snprintf	= nft_rule_expr_match_snprintf,
-+	.snprintf_	= nft_rule_expr_match_snprintf,
- 	.xml_parse 	= nft_rule_expr_match_xml_parse,
- 	.json_parse 	= nft_rule_expr_match_json_parse,
- };
-
diff --git a/meta-networking/recipes-kernel/netmap/files/0001-testmmap-fix-compile-issue-with-gcc-5.x.patch b/meta-networking/recipes-kernel/netmap/files/0001-testmmap-fix-compile-issue-with-gcc-5.x.patch
deleted file mode 100644
index ea36b1c..0000000
--- a/meta-networking/recipes-kernel/netmap/files/0001-testmmap-fix-compile-issue-with-gcc-5.x.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Upstream-Status: Pending
-
-From c81bf54d6eb870286662a11d3b4a994717c47696 Mon Sep 17 00:00:00 2001
-From: Armin Kuster <akuster808 at gmail.com>
-Date: Tue, 8 Sep 2015 05:36:27 -0700
-Subject: [PATCH] testmmap: fix compile issue with gcc 5.x
-
-this fixes:
-examples/testmmap.c:540:10: error: format '%ld' expects argument of type 'long int', but argument 3 has type 'ssize_t {aka const int}' [-Werror=format=]
-|    printf("ring_ofs[%d] %ld\n", i, nifp->ring_ofs[i]);
-|           ^
-
-Signed-off-by: Armin Kuster <akuster808 at gmail.com>
----
- examples/testmmap.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/examples/testmmap.c b/examples/testmmap.c
-index d7f6acc..934489a 100644
---- a/examples/testmmap.c
-+++ b/examples/testmmap.c
-@@ -537,7 +537,7 @@ do_if()
- 	for (i = 0; i < 5; i++)
- 		printf("spare1[%d]  %u\n", i, nifp->ni_spare1[i]);
- 	for (i = 0; i < (nifp->ni_tx_rings + nifp->ni_rx_rings + 2); i++)
--		printf("ring_ofs[%d] %ld\n", i, nifp->ring_ofs[i]);
-+		printf("ring_ofs[%d] %zd\n", i, nifp->ring_ofs[i]);
- }
- 
- struct netmap_ring *
--- 
-2.3.5
-
diff --git a/meta-networking/recipes-kernel/netmap/files/makefile_fixup.patch b/meta-networking/recipes-kernel/netmap/files/makefile_fixup.patch
deleted file mode 100644
index b050bf0..0000000
--- a/meta-networking/recipes-kernel/netmap/files/makefile_fixup.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-The makefile assumes building locally.
-
-Upstream Status: Inappropriate [Native]
-
-The configure is not auto-make based
-
-Signed-of-by: Armin Kuster <akuster at mvista.com>
-
-Index: LINUX/netmap.mak.in
-===================================================================
---- a/LINUX/netmap.mak.in
-+++ b/LINUX/netmap.mak.in
-@@ -12,10 +12,9 @@ SRCDIR:=@SRCDIR@
- # The following commands are needed to build the modules as out-of-tree,
- # in fact the kernel sources path must be specified.
- 
--PWD ?= $(CURDIR)
- 
- # Additional compile flags (e.g. header location)
--EXTRA_CFLAGS := -I$(PWD) -I$(SRCDIR) -I$(SRCDIR)/../sys -I$(SRCDIR)/../sys/dev -DCONFIG_NETMAP
-+EXTRA_CFLAGS := -I$(SRCDIR) -I$(SRCDIR)/../sys -I$(SRCDIR)/../sys/dev -DCONFIG_NETMAP
- EXTRA_CFLAGS += -Wno-unused-but-set-variable
- EXTRA_CFLAGS += $(foreach s,$(SUBSYS),-DCONFIG_NETMAP_$(shell echo $s|tr a-z- A-Z_))
- 
-Index: LINUX/configure
-===================================================================
---- a/LINUX/configure
-+++ b/LINUX/configure
-@@ -349,52 +349,6 @@ reset_tests() {
- 	EOF
- }
- 
--# run_tests: run all accumulated tests and exec the pertinent
--#   success/failure actions for each one.
--run_tests() {
--	local t= 	# prevent -EOF to eat the make TAB
--	cat > $TMPDIR/Makefile <<-EOF
--		ifneq (\$(KERNELRELEASE),)
--		obj-m := $TESTOBJS
--		else
--		S_DRIVERS := $(drv print)
--		all: \$(S_DRIVERS:%=get-%)
--		$t	\$(MAKE) -C $ksrc M=\$\$PWD $kopts
--
--		-include $TOPDIR/drivers.mak
--	EOF
--	for d in $(drv print); do
--		cat >> $TMPDIR/Makefile <<-EOF
--			get-$d:
--			$t	[ -z "\$($d-src)" ] || cp -Rp \$($d-src) \$(if \$($d-dst),\$($d-dst),.)
--			$t	touch get-$d
--		EOF
--	done
--	echo endif >> $TMPDIR/Makefile
--	{
--		cat <<-EOF
--##############################################################################
--## BEGIN RUNNING TESTS: $(date)
--##############################################################################
--## Makefile:
--		EOF
--		cat $TMPDIR/Makefile
--		cat <<-EOF
--##############################################################################
--		EOF
--	} >> config.log
--	(
--		cd $TMPDIR
--		make -k -j $(grep -c processor /proc/cpuinfo)
--	) >> config.log
--	eval "$TESTPOSTPROC"
--	cat >> config.log <<-EOF
--##############################################################################
--## END RUNNING TESTS: $(date)
--##############################################################################
--	EOF
--}
--
- configh=netmap_linux_config.h
- # succes/failure actions are expected to write some macros
- # in netma_linux_config.h. The following functions can be
-@@ -619,7 +573,6 @@ configuration. Please check 'config.log'
- reset_tests
- rm -f drivers.mak
- add_test true broken_buildsystem < /dev/null
--run_tests
- 
- drvname2config() {
- 	local name=$1
-@@ -1280,7 +1233,6 @@ cat > $configh <<-EOF
- EOF
- 
- # the TESTPOSTPROC script will add macros to $configh
--run_tests
- 
- define DRIVER_SUFFIX \"$drvsuffix\"
- 
diff --git a/meta-networking/recipes-kernel/netmap/netmap-modules_git.bb b/meta-networking/recipes-kernel/netmap/netmap-modules_git.bb
deleted file mode 100644
index 192ece0..0000000
--- a/meta-networking/recipes-kernel/netmap/netmap-modules_git.bb
+++ /dev/null
@@ -1,92 +0,0 @@
-require netmap.inc
-
-DEPENDS = "virtual/kernel"
-do_configure[depends] += "virtual/kernel:do_shared_workdir"
-
-inherit module
-
-CLEANBROKEN = "1"
-
-export INSTALL_MOD_DIR="kernel/netmap-modules"
-
-EXTRA_OECONF = "--kernel-dir=${STAGING_KERNEL_BUILDDIR} \
-                --kernel-sources=${STAGING_KERNEL_DIR} \
-                --install-mod-path=${D} \
-                --driver-suffix="-netmap" \
-                "
-
-# The driver builds are optional, but for deterministic builds,
-# we should be able to explicitly enable/disable the builds
-# for them in a proper place (maybe in BSP).
-# But we can't use PACKAGECONFIG since there is no option for
-# each driver, and the options are:
-#  --no-drivers    do not compile any driver
-#  --no-drivers=   do not compile the given drivers (comma sep.)
-#  --drivers=      only compile the given drivers (comma sep.)
-#
-# So use NETMAP_DRIVERS and the following python code to add proper
-# configs to EXTRA_OECONF.
-#
-# The default is no-drivers, and all supported drivers are listed
-# in NETMAP_ALL_DRIVERS.
-NETMAP_DRIVERS ??= ""
-NETMAP_ALL_DRIVERS = "ixgbe igb e1000e e1000 veth.c forcedeth.c virtio_net.c r8169.c"
-
-python __anonymous () {
-    drivers_list = d.getVar("NETMAP_DRIVERS").split()
-    all_drivers_list = d.getVar("NETMAP_ALL_DRIVERS").split()
-    config_drivers = "--drivers=" + ",".join(drivers_list)
-
-    extra_oeconf_drivers = bb.utils.contains_any('NETMAP_DRIVERS', all_drivers_list, config_drivers, '--no-drivers', d)
-    d.appendVar("EXTRA_OECONF", extra_oeconf_drivers)
-}
-
-LDFLAGS := "${@'${LDFLAGS}'.replace('-Wl,-O1', '')}"
-LDFLAGS := "${@'${LDFLAGS}'.replace('-Wl,--as-needed', '')}"
-
-do_configure () {
-    cd ${S}/LINUX
-    ./configure ${EXTRA_OECONF}
-}
-
-do_configure_append () {
-    cat >>  ${S}/LINUX/netmap_linux_config.h <<EOF
-#define NETMAP_LINUX_HAVE_HRTIMER_MODE_REL
-#define NETMAP_LINUX_HAVE_HRTIMER_FORWARD_NOW
-#define NETMAP_LINUX_HAVE_PHYS_ADDR_T
-#define NETMAP_LINUX_HAVE_ACCESS_ONCE
-#define NETMAP_LINUX_HAVE_NETDEV_OPS
-#define NETMAP_LINUX_HAVE_INIT_NET
-#define NETMAP_LINUX_HAVE_LIVE_ADDR_CHANGE
-#define NETMAP_LINUX_HAVE_TX_SKB_SHARING
-#define NETMAP_LINUX_HAVE_UNLOCKED_IOCTL
-#define NETMAP_LINUX_HAVE_PERNET_OPS_ID
-#define NETMAP_LINUX_VIRTIO_FUNCTIONS
-#define NETMAP_LINUX_VIRTIO_FREE_PAGES
-#define NETMAP_LINUX_VIRTIO_GET_VRSIZE
-#define NETMAP_LINUX_TIMER_RTYPE enum hrtimer_restart
-#define NETMAP_LINUX_VIRTIO_MULTI_QUEUE
-#define NETMAP_LINUX_HAVE_E1000E_EXT_RXDESC
-#define NETMAP_LINUX_HAVE_E1000E_DOWN2
-EOF
-
-if ${@ 'false' if (bb.utils.vercmp_string(d.getVar('KERNEL_VERSION') or "0", '3.17') < 0) else 'true' } ; then
-    echo OK
-    cat >>  ${S}/LINUX/netmap_linux_config.h <<EOF
-#define NETMAP_LINUX_ALLOC_NETDEV_4ARGS
-EOF
-fi
-}
-
-do_compile () {
-    cd ${S}/LINUX
-    oe_runmake
-}
-
-do_install () {
-    cd ${S}/LINUX
-    oe_runmake install
-}
-
-# http://errors.yoctoproject.org/Errors/Details/83335/
-PNBLACKLIST[netmap-modules] ?= "BROKEN: not compatible with default kernel version 4.8 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-networking/recipes-kernel/netmap/netmap.inc b/meta-networking/recipes-kernel/netmap/netmap.inc
deleted file mode 100644
index ab33e76..0000000
--- a/meta-networking/recipes-kernel/netmap/netmap.inc
+++ /dev/null
@@ -1,17 +0,0 @@
-SUMMARY = "netmap and VALE - very fast packet I/O from userspace (FreeBSD/Linux)"
-DESCRIPTION= "NETMAP is a framework for very fast packet I/O from userspace.  VALE is an equally fast in-kernel software switch using the netmap API.  Both are implemented as a single kernel module for FreeBSD and Linux, and can deal with line rate on real or emulated 10 Gbit ports."
-SECTION = "networking"
-HOMEPAGE = "http://code.google.com/p/netmap/"
-LICENSE = "GPLv2+"
-
-LIC_FILES_CHKSUM = "file://README;beginline=13;endline=14;md5=56ae0b9c7ba0476ab9098de94c2714d6"
-
-SRCREV = "da9e19e69b84e4f6f8ae125f8d01b42a4abade6a"
-PV = "master+git${SRCPV}"
-
-SRC_URI = "git://github.com/luigirizzo/netmap.git"
-SRC_URI += "file://makefile_fixup.patch"
-
-S = "${WORKDIR}/git"
-
-COMPATIBLE_HOST = '(x86_64|i.86|mips|arm).*-linux'
diff --git a/meta-networking/recipes-kernel/netmap/netmap_git.bb b/meta-networking/recipes-kernel/netmap/netmap_git.bb
deleted file mode 100644
index 2d8509c..0000000
--- a/meta-networking/recipes-kernel/netmap/netmap_git.bb
+++ /dev/null
@@ -1,37 +0,0 @@
-require netmap.inc
-
-DEPENDS = "netmap-modules"
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-EXTRA_OECONF = "--kernel-dir=${STAGING_KERNEL_BUILDDIR} \
-                --kernel-sources=${STAGING_KERNEL_DIR} \
-                --no-drivers \
-                --disable-generic \
-                --prefix=${prefix} \
-                --destdir=${D} \
-                --cc='${CC}' \
-                --ld='${LD}' \
-                "
-SRC_URI += "file://0001-testmmap-fix-compile-issue-with-gcc-5.x.patch"
-
-do_configure () {
-    cd ${S}/LINUX
-    ./configure ${EXTRA_OECONF}
-}
-
-do_compile () {
-    cd ${S}/LINUX
-    make apps
-}
-
-do_install () {
-    cd ${S}/LINUX
-    make install-apps DESTDIR=${D}
-}
-
-FILES_${PN} += "${bindir}"
-RDEPENDS_${PN} = "kernel-module-netmap"
-RRECOMMENDS_${PN} = "kernel-module-netmap"
-
-# http://errors.yoctoproject.org/Errors/Details/69733/
-PNBLACKLIST[netmap] ?= "BROKEN: Tries to build kernel module and fails, either it should be disabled or there should be dependency on kernel like in netmap-modules - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-networking/recipes-protocols/accel-ppp/accel-ppp_git.bb b/meta-networking/recipes-protocols/accel-ppp/accel-ppp_git.bb
deleted file mode 100644
index 0a86504..0000000
--- a/meta-networking/recipes-protocols/accel-ppp/accel-ppp_git.bb
+++ /dev/null
@@ -1,45 +0,0 @@
-SUMMARY = "ACCEL-PPP is a high performance VPN server application for linux"
-HOMEPAGE = "http://sourceforge.net/apps/trac/accel-ppp/wiki"
-SECTION = "net"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
-
-DEPENDS = "openssl libpcre"
-
-inherit cmake
-
-PR = "r1"
-PV = "1.7.3+git"
-
-SRCREV = "4acfa46c321a344b9a6ce4128e72d1e02828d8a0"
-SRC_URI = "git://accel-ppp.git.sourceforge.net/gitroot/accel-ppp/accel-ppp;branch=1.7"
-
-S = "${WORKDIR}/git"
-
-EXTRA_OECMAKE = " \
-                 -DBUILD_DRIVER=FALSE \
-                 -DCMAKE_INSTALL_PREFIX=${prefix} \
-                 -DCMAKE_BUILD_TYPE=Release \
-                 -DLOG_PGSQL=FALSE \
-                 -DRADIUS=FALSE \
-                 -DNETSNMP=FALSE \
-"
-FILES_${PN}-dbg += "/usr/lib/${BPN}/.debug/*"
-
-PACKAGES =+ "${PN}-libs"
-FILES_${PN}-libs = "${libdir}/${BPN}/*.so /usr/lib/${BPN}/*.so"
-INSANE_SKIP_${PN}-libs = "dev-so"
-RDEPENDS_${PN} += "${PN}-libs"
-
-do_install_prepend() {
-    cmlist=`find ${S} -name CMakeLists.txt`
-    for file in $cmlist; do
-        sed -i -e "s:LIBRARY DESTINATION lib/accel-ppp:LIBRARY DESTINATION ${baselib}/accel-ppp:g" \
-               -e "s:\${CMAKE_INSTALL_PREFIX}/lib/accel-ppp:\${CMAKE_INSTALL_PREFIX}/${baselib}/accel-ppp:g" \
-               $cmlist
-    done
-}
-
-# http://errors.yoctoproject.org/Errors/Details/81003/
-PNBLACKLIST[accel-ppp] ?= "BROKEN: fails to build with new binutils-2.27 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-networking/recipes-support/curlpp/curlpp/example21.cpp-remove-deprecated-code.patch b/meta-networking/recipes-support/curlpp/curlpp/example21.cpp-remove-deprecated-code.patch
deleted file mode 100644
index dae583d..0000000
--- a/meta-networking/recipes-support/curlpp/curlpp/example21.cpp-remove-deprecated-code.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-example21.cpp: remove deprecated code
-
-The deprecated code was no longer used, so remove it to avoid
-compiling failure with -Werror=unused-function
-...
-| example21.cpp:51:8: error: 'size_t {anonymous}::readData(char*,
-size_t, size_t)' defined but not used [-Werror=unused-function]
-|  size_t readData(char *buffer, size_t size, size_t nitems)
-...
-
-Upstream-Status: Pending
-
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- examples/example21.cpp | 17 -----------------
- 1 file changed, 17 deletions(-)
-
-diff --git a/examples/example21.cpp b/examples/example21.cpp
---- a/examples/example21.cpp
-+++ b/examples/example21.cpp
-@@ -39,23 +39,6 @@
- #include <curlpp/Options.hpp>
- #include <curlpp/Exception.hpp>
-  
--/*
--   anonymous namespace to prevent name clash in case other examples using the same global entities
--   would be compiled in the same project
--*/
--namespace
--{
--
--char *data = NULL;
--
--size_t readData(char *buffer, size_t size, size_t nitems)
--{
--  strncpy(buffer, data, size * nitems);
--  return size * nitems;
--}
--
--} // namespace
--
- int main(int argc, char *argv[])
- {
-   if(argc != 3) {
--- 
-1.9.1
-
diff --git a/meta-networking/recipes-support/libtevent/libtevent/do-not-check-xsltproc-manpages.patch b/meta-networking/recipes-support/libtevent/libtevent/do-not-check-xsltproc-manpages.patch
deleted file mode 100644
index 1ce4dda..0000000
--- a/meta-networking/recipes-support/libtevent/libtevent/do-not-check-xsltproc-manpages.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Don't check manpages for xsltproc.
-
-Signed-off-by: Bian Naimeng <biannm at cn.fujitsu.com>
-
-diff -Nurp tevent-0.9.21.orig/lib/talloc/wscript tevent-0.9.21/lib/talloc/wscript
---- tevent-0.9.21.orig/lib/talloc/wscript	2013-09-08 21:24:14.000000000 +0900
-+++ tevent-0.9.21/lib/talloc/wscript	2015-04-24 16:28:04.085000230 +0900
-@@ -55,7 +55,7 @@ def configure(conf):
-     if conf.env.standalone_talloc:
-         conf.env.TALLOC_COMPAT1 = Options.options.TALLOC_COMPAT1
- 
--    conf.CHECK_XSLTPROC_MANPAGES()
-+    conf.find_program('xsltproc', var='XSLTPROC')
- 
-     if not conf.env.disable_python:
-         # also disable if we don't have the python libs installed
diff --git a/meta-networking/recipes-support/nis/ypbind-mt_2.2.bb b/meta-networking/recipes-support/nis/ypbind-mt_2.2.bb
deleted file mode 100644
index 0b7e504..0000000
--- a/meta-networking/recipes-support/nis/ypbind-mt_2.2.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-# This package builds the NIS ypbind daemon
-# The source package is utils/net/NIS/ypbind-mt
-#
-require nis.inc
-
-DESCRIPTION = " \
-Multithreaded NIS bind service (ypbind-mt).  \
-ypbind-mt is a complete new implementation of a NIS \
-binding daemon for Linux. It has the following \
-features.  Supports ypbind protocol V1 and V2.  \
-Uses threads for better response.  Supports multiple \
-domain bindings.  Supports /var/yp/binding/* file \
-for Linux libc 4/5 and glibc 2.x.  Supports a list \
-of known secure NIS server (/etc/yp.conf) Binds to \
-the server which answered as first. \
-"
-HOMEPAGE = "http://www.linux-nis.org/nis/ypbind-mt/index.html"
-DEPENDS = "yp-tools ${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
-PROVIDES += "ypbind"
-
-PNBLACKLIST[ypbind-mt] ?= "BROKEN: Depends on broken yp-tools - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "http://www.linux-nis.org/download/ypbind-mt/${BP}.tar.bz2 \
-           file://ypbind.init \
-           file://ypbind.service \
-"
-SRC_URI[md5sum] = "54e2040d8266ae7d302d081ca310c8a8"
-SRC_URI[sha256sum] = "dc2f7d97c94dcab0acfdcd115cd8b464eb8c427e4bb0fe68404ae7465f517cd3"
-
-inherit systemd update-rc.d
-
-SYSTEMD_SERVICE_${PN} = "ypbind.service"
-INITSCRIPT_NAME = "ypbind"
-INITSCRIPT_PARAMS = "start 44 3 5 . stop 70 0 1 2 6 ."
-
-CACHED_CONFIGUREVARS = "ac_cv_prog_STRIP=/bin/true"
-
-EXTRA_OECONF = "PKG_CONFIG_PATH='${STAGING_LIBDIR}/yp-nis/pkgconfig/'"
-
-do_install_append () {
-    install -d ${D}${sysconfdir}/init.d
-    install -d ${D}${sysconfdir}/rcS.d
-
-    install -m 0755 ${WORKDIR}/ypbind.init ${D}${sysconfdir}/init.d/ypbind
-
-    install -d ${D}${systemd_unitdir}/system
-    install -m 0644 ${WORKDIR}/ypbind.service ${D}${systemd_unitdir}/system
-}
-
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
diff --git a/meta-oe/recipes-benchmark/libhugetlbfs/files/fix-lib64-can-not-be-shiped-in-64bit-target.patch b/meta-oe/recipes-benchmark/libhugetlbfs/files/fix-lib64-can-not-be-shiped-in-64bit-target.patch
deleted file mode 100644
index 676fa8a..0000000
--- a/meta-oe/recipes-benchmark/libhugetlbfs/files/fix-lib64-can-not-be-shiped-in-64bit-target.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-Upstream-Status: Inappropriate [oe-core specific]
-
-
-fix the below error:
-  ERROR: QA Issue: libhugetlbfs: Files/directories were installed but not shipped
-  /usr/lib64
-  /usr/lib64/libhugetlbfs.so
-  /usr/lib64/libhugetlbfs.a
-  /usr/lib64/libhugetlbfs_privutils.so
-  /usr/lib64/perl5
-  /usr/lib64/perl5/TLBC
-  /usr/lib64/perl5/TLBC/PerfCollect.pm
-  /usr/lib64/perl5/TLBC/Report.pm
-  /usr/lib64/perl5/TLBC/DataCollect.pm
-  /usr/lib64/perl5/TLBC/OpCollect.pm
-$<50>ERROR: QA run found fatal errors. Please consider fixing them.
-
-
-Signed-off-by: Guo Chunrong <B40290 at freescale.com>
-
---- a/Makefile	2013-09-23 02:28:57.340566998 -0500
-+++ b/Makefile	2013-09-23 02:31:05.344569896 -0500
-@@ -33,7 +33,6 @@
- CPPFLAGS += -D__LIBHUGETLBFS__ -DPPC_NO_SEGMENTS
- 
- ARCH = $(shell uname -m | sed -e s/i.86/i386/)
--CC = gcc
- 
- CUSTOM_LDSCRIPTS = yes
- 
-@@ -59,9 +58,9 @@
- CUSTOM_LDSCRIPTS = no
- else
- ifeq ($(ARCH),aarch64)
--CC64 = gcc
-+CC64 = $(CC)
- ELF64 = aarch64elf
--TMPLIB64 = lib64
-+TMPLIB64 = lib
- CUSTOM_LDSCRIPTS = no
- else
- ifeq ($(ARCH),i386)
-@@ -72,7 +71,7 @@
- ifeq ($(ARCH),x86_64)
- CC64 = $(CC) -m64
- ELF64 = elf_x86_64
--TMPLIB64 = lib64
-+TMPLIB64 = lib
- TMPLIB32 = lib
- ifneq ($(BUILDTYPE),NATIVEONLY)
- CC32 = $(CC) -m32
-@@ -172,11 +171,23 @@
- BINDIR = $(PREFIX)/share/libhugetlbfs
- EXEDIR = $(PREFIX)/bin
- DOCDIR = $(PREFIX)/share/doc/libhugetlbfs
-+
- ifdef CC32
- PMDIR = $(PREFIX)/lib/perl5/TLBC
-+endif
-+
-+ifdef CC64
-+ifeq ($(ARCH),x86_64)
-+PMDIR = $(PREFIX)/lib/perl5/TLBC
-+else
-+ifeq ($(ARCH),aarch64)
-+PMDIR = $(PREFIX)/lib/perl5/TLBC
- else
- PMDIR = $(PREFIX)/lib64/perl5/TLBC
- endif
-+endif
-+endif
-+
- MANDIR1 = $(PREFIX)/share/man/man1
- MANDIR3 = $(PREFIX)/share/man/man3
- MANDIR7 = $(PREFIX)/share/man/man7
diff --git a/meta-oe/recipes-benchmark/pmbw/pmbw_git.bb b/meta-oe/recipes-benchmark/pmbw/pmbw_git.bb
deleted file mode 100644
index 8113da7..0000000
--- a/meta-oe/recipes-benchmark/pmbw/pmbw_git.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMERY = "Parallel Memory Bandwidth Measurement / Benchmark"
-DESCRIPTION = "\
-The tool pmbw is a set of assembler routines to measure the parallel memory \
-(cache and RAM) bandwidth of modern multi-core machines."
-HOMEPAGE = "http://panthema.net/2013/pmbw/"
-SECTION = "benchmark/tests"
-AUTHOR = "Timo Bingmann"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-SRC_URI = "git://github.com/bingmann/pmbw;protocol=https"
-
-PV = "0.6.2+git${SRCPV}"
-SRCREV = "4a3b37728060a8aba06fc83f157a1965088d79d6"
-
-S = "${WORKDIR}/git"
-
-inherit autotools
-
-# the hand coded asm uses r11, which therefore cannot be used for storing
-# the frame pointer when debugging on arm
-SELECTED_OPTIMIZATION_remove_arm = "-fno-omit-frame-pointer"
-
-PACKAGES =+ "${PN}-stats2gnuplot"
-
-FILES_${PN}-stats2gnuplot = "${bindir}/stats2gnuplot"
-
-RRECOMMENDS_${PN} = "${PN}-stats2gnuplot"
-
-PNBLACKLIST[pmbw] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130568/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch b/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
deleted file mode 100644
index 0c77f1a..0000000
--- a/meta-oe/recipes-connectivity/bluez/bluez-hcidump-2.5/obsolete_automake_macros.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Upstream-Status: Pending [package obsolete/not maintained by upstream]
-
-Signed-off-by: Marko Lindqvist <cazfi74 at gmail.com>
-diff -Nurd bluez-hcidump-2.5/configure.ac bluez-hcidump-2.5/configure.ac
---- bluez-hcidump-2.5/configure.ac	2012-11-30 10:29:41.000000000 +0200
-+++ bluez-hcidump-2.5/configure.ac	2013-01-12 10:02:10.609511463 +0200
-@@ -2,7 +2,7 @@
- AC_INIT(bluez-hcidump, 2.5)
-
- AM_INIT_AUTOMAKE([foreign subdir-objects])
--AM_CONFIG_HEADER(config.h)
-+AC_CONFIG_HEADERS(config.h)
-
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
diff --git a/meta-oe/recipes-connectivity/bluez/bluez4.inc b/meta-oe/recipes-connectivity/bluez/bluez4.inc
deleted file mode 100644
index 5240ccf..0000000
--- a/meta-oe/recipes-connectivity/bluez/bluez4.inc
+++ /dev/null
@@ -1,47 +0,0 @@
-SUMMARY = "Linux Bluetooth Stack Userland V4"
-DESCRIPTION = "Linux Bluetooth stack V4 userland components.  These include a system configurations, daemons, tools and system libraries."
-HOMEPAGE = "http://www.bluez.org"
-SECTION = "libs"
-LICENSE = "GPLv2+ & LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
-                    file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
-                    file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e \
-                    file://sbc/sbc.c;beginline=1;endline=25;md5=1a40781ed30d50d8639323a184aeb191"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-
-DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck readline libsndfile1"
-RDEPENDS_${PN}-dev = "bluez-hcidump"
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa pie systemd', d)}"
-PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
-PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,"
-PACKAGECONFIG[systemd] = "--with-systemdunitdir=${systemd_unitdir}/system/,--with-systemdunitdir="
-
-ASNEEDED = ""
-
-SRC_URI = "${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.gz"
-S = "${WORKDIR}/bluez-${PV}"
-
-inherit autotools-brokensep pkgconfig systemd
-
-EXTRA_OECONF = "\
-    --disable-gstreamer \
-    --enable-usb \
-    --enable-tools \
-    --enable-bccmd \
-    --enable-hid2hci \
-    --enable-dfutool \
-    --disable-hidd \
-    --disable-pand \
-    --disable-dund \
-    --disable-cups \
-    --enable-test \
-    --enable-datafiles \
-    --with-udevdir=`pkg-config --variable=udevdir udev` \
-    --with-udevrulesdir=`pkg-config --variable=udevdir udev`/rules.d \
-"
-
-EXCLUDE_FROM_WORLD = "1"
diff --git a/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb b/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb
deleted file mode 100644
index b6098d8..0000000
--- a/meta-oe/recipes-connectivity/gnokii/gnokii_0.6.31.bb
+++ /dev/null
@@ -1,36 +0,0 @@
-SUMMARY = "Cellphone tools and driver software"
-SECTION = "console/network"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
-
-SRC_URI = "http://www.gnokii.org/download/gnokii/gnokii-${PV}.tar.bz2"
-
-DEPENDS = "glib-2.0 intltool-native"
-X11DEPENDS = " libxpm gtk+"
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
-PACKAGECONFIG[bluez4] = "--enable-bluetooth,--disable-bluetooth,bluez4"
-PACKAGECONFIG[libical] = "--enable-libical,--disable-libical,libical"
-PACKAGECONFIG[pcsc-lite] = "--enable-libpcsclite,--disable-libpcsclite,pcsc-lite"
-PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline"
-PACKAGECONFIG[usb] = "--enable-libusb,--disable-libusb,virtual/libusb0"
-PACKAGECONFIG[x11] = ",--without-x,${X11DEPENDS}"
-
-inherit autotools pkgconfig
-
-PACKAGES += "libgnokii libgnokii-dev"
-
-EXTRA_OECONF = "--disable-smsd"
-
-FILES_${PN} = "${bindir} ${sbindir}"
-FILES_libgnokii-dev = "${includedir} ${libdir}/lib*.so ${libdir}/*.la \
-    ${libdir}/*.a ${libdir}/*.o ${libdir}/pkgconfig \
-    /lib/*.a /lib/*.o ${datadir}/aclocal \
-"
-FILES_${PN}-dev = ""
-FILES_libgnokii = "${libdir}/libgnokii.so.*"
-
-SRC_URI[md5sum] = "d9627f4a1152d3ea7806df4532850d5f"
-SRC_URI[sha256sum] = "8f5a083b05c1a66a3402ca5cd80084e14c2c0632c991bb53b03c78e9adb02501"
-
-PNBLACKLIST[gnokii] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130662/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-connectivity/soft66/files/fix-ar.patch b/meta-oe/recipes-connectivity/soft66/files/fix-ar.patch
deleted file mode 100644
index bf1ffdf..0000000
--- a/meta-oe/recipes-connectivity/soft66/files/fix-ar.patch
+++ /dev/null
@@ -1,13 +0,0 @@
----
- configure.ac |    1 +
- 1 file changed, 1 insertion(+)
-
---- git.orig/configure.ac
-+++ git/configure.ac
-@@ -7,5 +7,6 @@ AC_PROG_CC
- AC_CONFIG_HEADERS([config.h])
- AC_CONFIG_FILES([Makefile lib/Makefile tools/Makefile])
- PKG_CHECK_MODULES([FTDI], [libftdi >= 0.13])
- AC_OUTPUT
- AM_PROG_CC_C_O
-+AM_PROG_AR
diff --git a/meta-oe/recipes-connectivity/soft66/soft66_git.bb b/meta-oe/recipes-connectivity/soft66/soft66_git.bb
deleted file mode 100644
index 816f583..0000000
--- a/meta-oe/recipes-connectivity/soft66/soft66_git.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "Library and tools for Soft66ADD and related SDR radio receivers"
-LICENSE = "GPLv3 & LGPLv3+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \
-                    file://COPYING.LESSER;md5=e6a600fd5e1d9cbde2d983680233ad02 "
-
-PNBLACKLIST[soft66] ?= "BROKEN: depends on broken libftdi - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-DEPENDS = "libftdi"
-
-PV = "0.1.3+gitr${SRCPV}"
-PR = "r1"
-
-SRCREV = "a1dab25e73896c90c98227ac8055f227b830d512"
-SRC_URI = "git://home.horsten.com/soft66 \
-file://fix-ar.patch"
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
-
diff --git a/meta-oe/recipes-connectivity/telepathy/libtelepathy/doublefix.patch b/meta-oe/recipes-connectivity/telepathy/libtelepathy/doublefix.patch
deleted file mode 100644
index a7737fb..0000000
--- a/meta-oe/recipes-connectivity/telepathy/libtelepathy/doublefix.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Fix double reference to this file to work with recent autoconf+automake
-
-RP 1/2/10
-
-Upstream-Status: Inappropriate [configuration]
-
-Index: libtelepathy-0.3.3/src/Makefile.am
-===================================================================
---- libtelepathy-0.3.3.orig/src/Makefile.am	2010-02-01 13:13:50.869038984 +0000
-+++ libtelepathy-0.3.3/src/Makefile.am	2010-02-01 13:14:23.267789456 +0000
-@@ -27,7 +27,6 @@
-     tp-chan-type-text-gen.h \
-     tp-chan-type-tubes-gen.h \
-     tp-conn-iface-aliasing-gen.h \
--    tp-conn-iface-avatars-gen.h \
-     tp-conn-iface-capabilities-gen.h \
-     tp-conn-iface-contact-info-gen.h \
-     tp-conn-iface-forwarding-gen.h \
diff --git a/meta-oe/recipes-connectivity/telepathy/libtelepathy/prefer_python_2.5.patch b/meta-oe/recipes-connectivity/telepathy/libtelepathy/prefer_python_2.5.patch
deleted file mode 100644
index 37679ab..0000000
--- a/meta-oe/recipes-connectivity/telepathy/libtelepathy/prefer_python_2.5.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-
-Index: libtelepathy-0.3.1/configure.ac
-===================================================================
---- libtelepathy-0.3.1.orig/configure.ac	2007-11-22 19:05:56.000000000 +0000
-+++ libtelepathy-0.3.1/configure.ac	2008-01-04 12:07:28.000000000 +0000
-@@ -51,7 +51,7 @@
-   AC_MSG_ERROR([xsltproc (from the libxslt source package) is required])
- fi
- 
--AC_CHECK_PROGS([PYTHON], [python2.3 python2.4 python2.5 python])
-+AC_CHECK_PROGS([PYTHON], [python2.5 python2.4 python2.3 python])
- if test -z "$PYTHON"; then
-   AC_MSG_ERROR([Python is required to compile this package])
- fi
diff --git a/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb b/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb
deleted file mode 100644
index 783bd5d..0000000
--- a/meta-oe/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-SUMMARY = "Telepathy framework"
-DESCRIPTION = "Telepathy is a D-Bus framework for unifying real time \
-communication, including instant messaging, voice calls and video calls.  It \
-abstracts differences between protocols to provide a unified interface for \
-applications."
-HOMEPAGE = "http://telepathy.freedesktop.org/wiki/"
-DEPENDS = "glib-2.0 dbus dbus-glib telepathy-glib libxslt-native"
-LICENSE = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \
-                    file://src/tp-conn.c;beginline=1;endline=19;md5=4c58069f77d601cc59200bce5396c7cb"
-PR = "r5"
-
-SRC_URI = "http://telepathy.freedesktop.org/releases/libtelepathy/libtelepathy-${PV}.tar.gz \
-    file://prefer_python_2.5.patch \
-    file://doublefix.patch \
-"
-
-SRC_URI[md5sum] = "490ca1a0c614d4466394b72d43bf7370"
-SRC_URI[sha256sum] = "e0d230be855125163579743418203c6f6be2f10f98c4f065735c1dc9ed115878"
-
-inherit autotools pkgconfig pythonnative
-
-FILES_${PN} += "${datadir}/telepathy \
-    ${datadir}/dbus-1"
-
-PNBLACKLIST[libtelepathy] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130609/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch b/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch
deleted file mode 100644
index ece1da6..0000000
--- a/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control/tmc-Makefile-fix-race.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From: Robert Yang <liezhi.yang at windriver.com>
-Date: Sun, 22 Sep 2013 23:21:01 -0400
-Subject: [PATCH] src/Makefile.am: fix race issue for _gen/gtypes.h and _gen/gtypes-body.h
-
-There might be an error when parallel build:
-
-[snip]
-Traceback (most recent call last):
-  File "/path/to/tools/glib-gtypes-generator.py", line 304, in <module>
-    GTypesGenerator(dom, argv[1], argv[2])()
-  File "/path/to/tools/glib-gtypes-generator.py", line 295, in __call__
-    file_set_contents(self.output + '.h', ''.join(self.header))
-  File "/path/to/tools/libtpcodegen.py", line 42, in file_set_contents
-    os.rename(filename + '.tmp', filename)
-OSError: [Errno 2] No such file or directory
-[snip]
-
-This is a race issue, the _gen/gtypes.h and _gen/gtypes-body.h may
-write(remove/rename) _gen/gtypes.tmp at the same time, then there would
-be the error.
-
-There was a similar bug in telepathy-glib which was already fixed, we use the
-similar patch to fix it.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
----
- src/Makefile.am |   18 +++++++++++++++---
- 1 file changed, 15 insertions(+), 3 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -288,7 +288,11 @@ _gen/interfaces-body.h: _gen/mcd.xml \
- 		$(tools_dir)/glib-interfaces-body-generator.xsl \
- 		$< > $@
- 
--_gen/gtypes.h _gen/gtypes-body.h: _gen/mcd.xml \
-+# do nothing, output as a side-effect
-+_gen/gtypes.h: _gen/gtypes-body.h
-+	@:
-+
-+_gen/gtypes-body.h: _gen/mcd.xml \
- 	$(top_srcdir)/tools/glib-gtypes-generator.py
- 	$(AM_V_GEN)$(PYTHON) $(top_srcdir)/tools/glib-gtypes-generator.py \
- 		$< _gen/gtypes mc
-@@ -309,7 +313,11 @@ _gen/%.xml: %.xml $(wildcard $(top_srcdir)/xml/*.xml) Makefile.am
- 	$(AM_V_GEN)$(XSLTPROC) $(XSLTPROCFLAGS) --xinclude $(tools_dir)/identity.xsl \
- 		$< > $@
- 
--_gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \
-+# do nothing, output as a side-effect
-+_gen/cli-%.h: _gen/cli-%-body.h
-+	@:
-+
-+_gen/cli-%-body.h: _gen/%.xml \
- 	$(tools_dir)/glib-client-gen.py Makefile.am
- 	$(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-client-gen.py \
- 		--group=`echo $* | tr x- x_` \
-@@ -317,7 +325,11 @@ _gen/cli-%-body.h _gen/cli-%.h: _gen/%.xml \
- 		--tp-proxy-api=0.7.6 \
- 		$< Mc_Cli _gen/cli-$*
- 
--_gen/svc-%.c _gen/svc-%.h: _gen/%.xml \
-+# do nothing, output as a side-effect
-+_gen/svc-%.h: _gen/svc-%.c
-+	@:
-+
-+_gen/svc-%.c: _gen/%.xml \
- 	$(tools_dir)/glib-ginterface-gen.py Makefile.am
- 	$(AM_V_GEN)$(PYTHON) $(tools_dir)/glib-ginterface-gen.py \
- 		--filename=_gen/svc-$* \
--- 
-1.7.10.4
-
diff --git a/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb b/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb
deleted file mode 100644
index 6a4d5d0..0000000
--- a/meta-oe/recipes-connectivity/telepathy/telepathy-mission-control_5.16.1.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-SUMMARY = "Central control for Telepathy IM connection managers"
-HOMEPAGE = "http://telepathy.freedesktop.org/wiki/Mission_Control/"
-LICENSE = "LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499 \
-                    file://src/request.h;beginline=1;endline=21;md5=f80534d9af1c33291b3b79609f196eb2"
-SECTION = "libs"
-DEPENDS = "libtelepathy dbus-glib gconf libxslt-native"
-
-SRC_URI = "http://telepathy.freedesktop.org/releases/telepathy-mission-control/${BP}.tar.gz \
-           file://tmc-Makefile-fix-race.patch \
-          "
-SRC_URI[md5sum] = "421115a35b9e427807326877f86e7f43"
-SRC_URI[sha256sum] = "14ceb7d53535b43d44b8271ad11319d1d0fe6d193d154636b9e62b42799b9723"
-
-inherit autotools-brokensep pkgconfig pythonnative
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[upower] = "--enable-upower,--disable-upower,upower"
-
-# to select connman or nm you need to use "connectivity" and "connman" or "nm", default is to disable both
-PACKAGECONFIG[connectivity] = ",--with-connectivity=no"
-PACKAGECONFIG[connman] = "--with-connectivity=connman,,connman"
-PACKAGECONFIG[nm] = "--with-connectivity=nm,,networkmanager"
-
-PACKAGES =+ " \
-    libmissioncontrol \
-    libmissioncontrol-config \
-    libmissioncontrol-server \
-    libmissioncontrol-dev \
-    libmissioncontrol-config-dev \
-    libmissioncontrol-server-dev \
-    libmissioncontrol-dbg \
-    libmissioncontrol-config-dbg \
-    libmissioncontrol-server-dbg \
-"
-
-FILES_${PN} += "${datadir}/dbus* ${datadir}/glib-2.0/schemas"
-
-FILES_libmissioncontrol = "${libdir}/libmissioncontrol.so.*"
-FILES_libmissioncontrol-config = "${libdir}/libmissioncontrol-config.so.*"
-FILES_libmissioncontrol-server = "${libdir}/libmissioncontrol-server.so.*"
-
-FILES_libmissioncontrol-dev = "${libdir}/libmissioncontrol.* \
-                               ${includedir}/libmissioncontrol/ \
-                               ${libdir}/pkgconfig/libmissioncontrol.pc"
-FILES_libmissioncontrol-config-dev = "${libdir}/libmissioncontrol-config.*"
-FILES_libmissioncontrol-server-dev = "${libdir}/libmissioncontrol-server.*"
-
-FILES_libmissioncontrol-dbg = "${libdir}/.debug/libmissioncontrol.so.*"
-FILES_libmissioncontrol-config-dbg = "${libdir}/.debug/libmissioncontrol-config.so.*"
-FILES_libmissioncontrol-server-dbg = "${libdir}/.debug/libmissioncontrol-server.so.*"
-
-PNBLACKLIST[telepathy-mission-control] ?= "Depends on blacklisted libtelepathy - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice-3.5.1/0002-Modify-Makefile-for-cross-compile.patch b/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice-3.5.1/0002-Modify-Makefile-for-cross-compile.patch
deleted file mode 100644
index 43096d2..0000000
--- a/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice-3.5.1/0002-Modify-Makefile-for-cross-compile.patch
+++ /dev/null
@@ -1,292 +0,0 @@
-Upstream-Status: Inappropriate
-
-This patch lets you build Ice with OpenEmbedded. I doubt you could do
-a regular build after applying this patch.
-
-From bc622ce74fa03a935278d21736a5a251466e1798 Mon Sep 17 00:00:00 2001
-From: Tom Rondeau <tom at trondeau.com>
-Date: Wed, 16 Apr 2014 14:34:51 -0400
-Subject: [PATCH] Modify Makefiles for cross compile
-
----
- config/Make.common.rules           |   20 +++++++------
- cpp/Makefile                       |    9 +++---
- cpp/config/Make.rules              |   32 ++++++++++++--------
- cpp/config/Make.rules.Linux        |   18 ++---------
- cpp/src/IceStorm/FreezeDB/Makefile |    2 +-
- py/config/Make.rules               |   58 +++++++++++++++++++-----------------
- 6 files changed, 70 insertions(+), 69 deletions(-)
-
-diff --git a/config/Make.common.rules b/config/Make.common.rules
-index d7b1d59..a3fb17e 100644
---- a/config/Make.common.rules
-+++ b/config/Make.common.rules
-@@ -65,9 +65,9 @@ ifeq ($(UNAME),Linux)
-       #
-       # Some Linux distributions like Debian/Ubuntu don't use /usr/lib64.
-       #
--      ifeq ($(shell test -d /usr/lib64 && echo 0),0)
--          lp64suffix	= 64
--      endif
-+      #ifeq ($(shell test -d /usr/lib64 && echo 0),0)
-+      #    lp64suffix	= 64
-+      #endif
-       ifeq ($(LP64),)
-           LP64      	= yes
-       endif
-@@ -244,12 +244,13 @@ else
-     slicedir = $(ice_dir)/slice
- endif
- 
--ifeq ($(prefix), /usr)
--    install_slicedir = /usr/share/Ice-$(VERSION)/slice
--else
--    install_slicedir = $(prefix)/slice
--endif
-+#ifeq ($(prefix), /usr)
-+#    install_slicedir = /usr/share/Ice-$(VERSION)/slice
-+#else
-+#    install_slicedir = $(prefix)/slice
-+#endif
- 
-+install_slicedir = $(prefix)/slice
- #
- # Set environment variables for the Slice translator.
- #
-@@ -265,7 +266,8 @@ ifneq ($(ice_dir), /usr)
-     endif
- 
-     ifeq ($(UNAME),Linux)
--        export LD_LIBRARY_PATH := $(ice_lib_dir):$(LD_LIBRARY_PATH)
-+        #export LD_LIBRARY_PATH := $(ice_lib_dir):$(LD_LIBRARY_PATH)
-+        export LD_LIBRARY_PATH := $(ICE_HOME)/lib:$(LD_LIBRARY_PATH)
-     endif
- 
-     ifeq ($(UNAME),SunOS)
-diff --git a/cpp/Makefile b/cpp/Makefile
-index a68f113..1f44f57 100644
---- a/cpp/Makefile
-+++ b/cpp/Makefile
-@@ -11,11 +11,12 @@ top_srcdir	= .
- 
- include $(top_srcdir)/config/Make.rules
- 
--SUBDIRS		= config src include test
-+#SUBDIRS		= config src include test
-+SUBDIRS		= config src include
- 
--ifeq ($(shell uname | grep MINGW),)
--SUBDIRS		:= $(SUBDIRS) demo
--endif
-+#ifeq ($(shell uname | grep MINGW),)
-+#SUBDIRS		:= $(SUBDIRS) demo
-+#endif
- 
- INSTALL_SUBDIRS	= $(install_bindir) $(install_libdir) $(install_includedir) \
- 	$(install_configdir) $(install_mandir)
-diff --git a/cpp/config/Make.rules b/cpp/config/Make.rules
-index 37461ae..197c5e8 100644
---- a/cpp/config/Make.rules
-+++ b/cpp/config/Make.rules
-@@ -175,11 +175,12 @@ headerdir		= $(top_srcdir)/include
- # includedir is not handled the same as bindir and libdir
- # because it is used in the .depend files
- #
--ifdef ice_src_dist
--    includedir		= $(top_srcdir)/include
--else
--    includedir		= $(ice_dir)/include
--endif
-+#ifdef ice_src_dist
-+#    includedir		= $(top_srcdir)/include
-+#else
-+#    includedir		= $(ice_dir)/include
-+#endif
-+includedir		= $(top_srcdir)/include
- 
- #
- # Platform specific definitions
-@@ -277,14 +278,17 @@ ICECPPFLAGS		= -I$(slicedir)
- SLICE2CPPFLAGS		= $(ICECPPFLAGS)
- 
- ifeq ($(ice_dir), /usr) 
--    LDFLAGS		= $(LDPLATFORMFLAGS) $(CXXFLAGS)
-+    LDFLAGS		+= $(LDPLATFORMFLAGS) $(CXXFLAGS)
- else
-     CPPFLAGS	+= -I$(includedir)
--    ifdef ice_src_dist
--	LDFLAGS	= $(LDPLATFORMFLAGS) $(CXXFLAGS) -L$(libdir)
--    else
--	LDFLAGS	= $(LDPLATFORMFLAGS) $(CXXFLAGS) -L$(ice_dir)/$(libsubdir)$(cpp11suffix)
--    endif
-+# We must always build using the libraries in the source tree, the host's are obviously
-+# not what we want for the target
-+    LDFLAGS	+= $(LDPLATFORMFLAGS) $(CXXFLAGS) -L$(libdir) $(call rpathlink,$(libdir))
-+#    ifdef ice_src_dist
-+#        LDFLAGS	= $(LDPLATFORMFLAGS) $(CXXFLAGS) -L$(libdir)
-+#    else
-+#	LDFLAGS	= $(LDPLATFORMFLAGS) $(CXXFLAGS) -L$(ice_dir)/$(libsubdir)$(cpp11suffix)
-+#    endif
- endif
- 
- ifeq ($(FLEX_NOLINE),yes)
-@@ -313,8 +317,10 @@ endif
- 
- ifdef ice_src_dist
-     SLICEPARSERLIB	= $(libdir)/$(call mklibfilename,Slice,$(VERSION))
--    SLICE2CPP		= $(bindir)/slice2cpp
--    SLICE2FREEZE	= $(bindir)/slice2freeze
-+#    SLICE2CPP		= $(bindir)/slice2cpp
-+#    SLICE2FREEZE	= $(bindir)/slice2freeze
-+    SLICE2CPP		= $(ICE_HOME)/bin/slice2cpp
-+    SLICE2FREEZE	= $(ICE_HOME)/bin/slice2freeze
- else
-     SLICEPARSERLIB	= $(ice_dir)/$(libsubdir)$(cpp11suffix)/$(call mklibfilename,Slice,$(VERSION))
-     SLICE2CPP		= $(ice_dir)/$(binsubdir)$(cpp11suffix)/slice2cpp
-diff --git a/cpp/config/Make.rules.Linux b/cpp/config/Make.rules.Linux
-index 5d5717c..8363c6e 100644
---- a/cpp/config/Make.rules.Linux
-+++ b/cpp/config/Make.rules.Linux
-@@ -31,7 +31,7 @@ ifeq ($(CXX),c++)
-    CXX			= g++
- endif
- 
--ifeq ($(CXX),g++)
-+#ifeq ($(CXX),g++)
- 
-     ifneq ($(SUSE_i586),)
-         CXXARCHFLAGS	+= -march=i586
-@@ -71,14 +71,6 @@ ifeq ($(CXX),g++)
-       CXXARCHFLAGS	+= -mtune=v8 -pipe -Wno-deprecated -DICE_USE_MUTEX_SHARED
-    endif
- 
--   ifeq ($(MACHINE),x86_64)
--      ifeq ($(LP64),yes)
--         CXXARCHFLAGS	+= -m64
--      else
--         CXXARCHFLAGS	+= -m32
--      endif
--   endif
--
-    CXXFLAGS		= $(CXXARCHFLAGS) -Wall -Werror -pthread
- 
-    ifneq ($(GENPIC),no)
-@@ -102,15 +94,11 @@ ifeq ($(CXX),g++)
- 
-    rpathlink            = -Wl,-rpath-link,$(1) 
- 
--   ifneq ($(embedded_runpath_prefix),)
--      LDPLATFORMFLAGS      = -Wl,--enable-new-dtags -Wl,-rpath,$(runpath_libdir)
--   else
--      LDPLATFORMFLAGS      = -Wl,--enable-new-dtags
--   endif
-+   LDPLATFORMFLAGS      = -Wl,--enable-new-dtags -Wl,-rpath,../../../lib
- 
-    LDPLATFORMFLAGS	+= -rdynamic
- 
--endif
-+#endif
- 
- ifeq ($(CXX),icpc)
-    $(warning ===================================================================) 
-diff --git a/cpp/src/IceStorm/FreezeDB/Makefile b/cpp/src/IceStorm/FreezeDB/Makefile
-index 7c844b7..cf15cb1 100644
---- a/cpp/src/IceStorm/FreezeDB/Makefile
-+++ b/cpp/src/IceStorm/FreezeDB/Makefile
-@@ -66,7 +66,7 @@ $(libdir)/$(LIBNAME): $(libdir)/$(SONAME)
- 
- $(MIGRATE): $(MOBJS)
- 	rm -f $@
--	$(CXX) $(LDFLAGS) -o $@ $(MOBJS) $(DB_RPATH_LINK) -lIceStormService -lIceStorm -lFreeze $(LIBS)
-+	$(CXX) $(LDFLAGS) -o $@ $(MOBJS) $(DB_RPATH_LINK) -lIceStormService -lIceStorm -lFreeze $(LIBS) -ldb_cxx
- 
- # The slice2freeze rules are structured like this to avoid issues with
- # parallel make.
-diff --git a/py/config/Make.rules b/py/config/Make.rules
-index 43ce01b..1349342 100644
---- a/py/config/Make.rules
-+++ b/py/config/Make.rules
-@@ -92,21 +92,23 @@ ifeq ($(shell test -f $(top_srcdir)/config/Make.rules.$(UNAME) && echo 0),0)
-     include $(top_srcdir)/config/Make.rules.$(UNAME)
- else
-     include $(top_srcdir)/../cpp/config/Make.rules.$(UNAME)
--endif 
-+endif
- 
- libdir                  = $(top_srcdir)/python
--ifneq ($(prefix), /usr)
--install_pythondir       = $(prefix)/python
--install_libdir          = $(prefix)/python
--else
--    ifeq ($(shell test -d $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/dist-packages && echo 0),0)
--        install_pythondir       = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/dist-packages
--        install_libdir          = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/dist-packages
--    else
--        install_pythondir       = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/site-packages
--        install_libdir          = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/site-packages
--    endif
--endif
-+#ifneq ($(prefix), /usr)
-+#install_pythondir       = $(prefix)/python
-+#install_libdir          = $(prefix)/python
-+#else
-+#    ifeq ($(shell test -d $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/dist-packages && echo 0),0)
-+#        install_pythondir       = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/dist-packages
-+#        install_libdir          = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/dist-packages
-+#    else
-+#        install_pythondir       = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/site-packages
-+#        install_libdir          = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/site-packages
-+#    endif
-+#endif
-+install_pythondir       = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/site-packages
-+install_libdir          = $(prefix)/$(libsubdir)/$(PYTHON_VERSION)/site-packages
- 
- ifeq ($(UNAME),SunOS)
-    ifeq ($(LP64),yes)
-@@ -115,19 +117,21 @@ ifeq ($(UNAME),SunOS)
-    endif
- endif
- 
--ifdef ice_src_dist
--    ifeq ($(ice_cpp_dir), $(ice_dir)/cpp)
--        ICE_LIB_DIR = -L$(ice_cpp_dir)/lib
--    else
--        ICE_LIB_DIR = -L$(ice_cpp_dir)/$(libsubdir)
--    endif
--    ICE_LIB_DIR = -L$(ice_cpp_dir)/lib
--    ICE_FLAGS 	= -I$(ice_cpp_dir)/include
--endif
--ifdef ice_bin_dist
--    ICE_LIB_DIR = -L$(ice_dir)/$(libsubdir)
--    ICE_FLAGS	= -I$(ice_dir)/include
--endif
-+#ifdef ice_src_dist
-+#    ifeq ($(ice_cpp_dir), $(ice_dir)/cpp)
-+#        ICE_LIB_DIR = -L$(ice_cpp_dir)/lib
-+#    else
-+#        ICE_LIB_DIR = -L$(ice_cpp_dir)/$(libsubdir)
-+#    endif
-+#    ICE_LIB_DIR = -L$(ice_cpp_dir)/lib
-+#    ICE_FLAGS 	= -I$(ice_cpp_dir)/include
-+#endif
-+#ifdef ice_bin_dist
-+#    ICE_LIB_DIR = -L$(ice_dir)/$(libsubdir)
-+#    ICE_FLAGS	= -I$(ice_dir)/include
-+#endif
-+ICE_LIB_DIR = -L$(top_srcdir)/../cpp/lib
-+ICE_FLAGS = -I$(ice_cpp_dir)/include
- ICE_LIBS = $(ICE_LIB_DIR) -lIce -lSlice -lIceUtil
- 
- ifneq ($(embedded_runpath_prefix),)
-@@ -137,7 +141,7 @@ endif
- CPPFLAGS		=
- ICECPPFLAGS		= -I$(slicedir)
- SLICE2PYFLAGS		= $(ICECPPFLAGS)
--LDFLAGS			= $(LDPLATFORMFLAGS) $(CXXFLAGS) -L$(libdir)
-+LDFLAGS			+= $(LDPLATFORMFLAGS) $(CXXFLAGS) -L$(libdir)
- 
- ifdef ice_src_dist
-     ifeq ($(ice_cpp_dir), $(ice_dir)/cpp)
--- 
-1.7.9.5
-
diff --git a/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb b/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb
deleted file mode 100644
index 7c833b0..0000000
--- a/meta-oe/recipes-connectivity/zeroc-ice/zeroc-ice_3.5.1.bb
+++ /dev/null
@@ -1,87 +0,0 @@
-DESCRIPTION = "The Internet Communications Engine"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://ICE_LICENSE;md5=3dc3037023cc2ae6b2c5b995da529515"
-DEPENDS = "bzip2 expat openssl python db mcpp"
-DEPENDS_prepend_class-target = "zeroc-ice-native "
-
-SRC_URI = "http://www.zeroc.com/download/Ice/3.5/Ice-${PV}.tar.gz \
-           file://0002-Modify-Makefile-for-cross-compile.patch \
-          "
-SRC_URI[md5sum] = "f00c59983cc904bca977133c0a9b3e80"
-SRC_URI[sha256sum] = "989e51194c6adadbd156da3288e37bad847b93b3b876502e83033b70493af392"
-
-#| MapDb.cpp: In constructor 'Freeze::MapDb::MapDb(const ConnectionIPtr&, const string&, const string&, const string&, const KeyCompareBasePtr&, const std::vector<IceUtil::Handle<Freeze::MapIndexBase> >&, bool)':
-#| MapDb.cpp:138:46: error: call of overloaded 'set_bt_compare(int (*)(DB*, const DBT*, const DBT*))' is ambiguous
-#| MapDb.cpp:138:46: note: candidates are:
-#| /home/jenkins/oe/world/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/db_cxx.h:272:14: note: virtual int Db::set_bt_compare(bt_compare_fcn_type) <near match>
-#| /home/jenkins/oe/world/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/db_cxx.h:272:14: note:   no known conversion for argument 1 from 'int (*)(DB*, const DBT*, const DBT*) {aka int (*)(__db*, const __db_dbt*, const __db_dbt*)}' to 'bt_compare_fcn_type {aka int (*)(__db*, const __db_dbt*, const __db_dbt*, long unsigned int*)}'
-#| /home/jenkins/oe/world/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/db_cxx.h:273:14: note: virtual int Db::set_bt_compare(int (*)(Db*, const Dbt*, const Dbt*, size_t*)) <near match>
-#| /home/jenkins/oe/world/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/include/db_cxx.h:273:14: note:   no known conversion for argument 1 from 'int (*)(DB*, const DBT*, const DBT*) {aka int (*)(__db*, const __db_dbt*, const __db_dbt*)}' to 'int (*)(Db*, const Dbt*, const Dbt*, size_t*) {aka int (*)(Db*, const Dbt*, const Dbt*, long unsigned int*)}'
-#| make[3]: *** [MapDb.o] Error 1
-PNBLACKLIST[zeroc-ice] ?= "BROKEN: not compatible with default db version - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-S = "${WORKDIR}/Ice-${PV}"
-
-inherit python-dir pkgconfig
-
-export PYTHON_VERSION = "python2.7"
-
-do_configure() {
-    :
-}
-
-do_compile_prepend_class-target () {
-    export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}"
-    export PYTHON_LIB_DIR="${STAGING_LIBDIR}/${PYTHON_DIR}"
-    export ICE_HOME="${STAGING_DIR_NATIVE}/usr"
-}
-
-do_compile_prepend_class-nativesdk () {
-    export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}"
-    export PYTHON_LIB_DIR="${STAGING_LIBDIR}/${PYTHON_DIR}"
-    export ICE_HOME="${STAGING_DIR_NATIVE}/usr"
-}
-
-do_compile_prepend_class-native () {
-    export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}"
-    export PYTHON_LIB_DIR="${STAGING_LIBDIR}/${PYTHON_DIR}"
-    export ICE_HOME="${S}/cpp"
-}
-
-do_compile() {
-    oe_runmake -C ${S} cpp
-    oe_runmake -C ${S} py
-}
-
-do_install_prepend_class-target () {
-    export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}"
-    export PYTHON_LIB_DIR="${STAGING_LIBDIR}/${PYTHON_DIR}"
-    export ICE_HOME="${STAGING_DIR_NATIVE}/usr"
-}
-
-do_install_prepend_class-nativesdk () {
-    export PYTHON_INCLUDE_DIR="${STAGING_INCDIR}/${PYTHON_DIR}"
-    export PYTHON_LIB_DIR="${STAGING_LIBDIR}/${PYTHON_DIR}"
-    export ICE_HOME="${STAGING_DIR_NATIVE}/usr"
-}
-
-do_install_prepend_class-native () {
-    export ICE_HOME="${S}/cpp"
-}
-
-do_install() {
-    oe_runmake -C ${S}/cpp prefix=${D}${prefix} install install-common
-    oe_runmake -C ${S}/py prefix=${D}${prefix} install
-}
-
-PACKAGES += "${PN}-python ${PN}-python-dev ${PN}-python-dbg"
-
-FILES_${PN}-doc += "${prefix}/man/man1"
-FILES_${PN} += "${prefix}/*LICENSE ${libdir}/ImportKey.class ${prefix}/RELEASE_NOTES ${prefix}/CHANGES"
-FILES_${PN}-dev += "${includedir} ${prefix}/slice ${prefix}/config"
-FILES_${PN}-python-dev = "${PYTHON_SITEPACKAGES_DIR}/IcePy.so"
-FILES_${PN}-python = "${PYTHON_SITEPACKAGES_DIR}/*.py ${PYTHON_SITEPACKAGES_DIR}/IcePy.so.* ${PYTHON_SITEPACKAGES_DIR}/Ice*/*.py"
-FILES_${PN}-python-dbg = "${PYTHON_SITEPACKAGES_DIR}/.debug"
-FILES_${PN}-dev += "${bindir}/slice* ${datadir}/Ice-${PV}/slice/*"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb b/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb
deleted file mode 100644
index 9d50ea4..0000000
--- a/meta-oe/recipes-core/fakeroot/fakeroot-native_1.18.4.bb
+++ /dev/null
@@ -1,15 +0,0 @@
-require fakeroot_${PV}.bb
-
-S = "${WORKDIR}/fakeroot-${PV}"
-
-inherit native
-
-EXTRA_OECONF = "--program-prefix="
-
-# Compatability for the rare systems not using or having SYSV
-python () {
-    if d.getVar('HOST_NONSYSV') and d.getVar('HOST_NONSYSV') != '0':
-        d.setVar('EXTRA_OECONF', ' --with-ipc=tcp --program-prefix= ')
-}
-
-RDEPENDS_${PN} = "util-linux-native"
diff --git a/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb b/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb
deleted file mode 100644
index 0a787e3..0000000
--- a/meta-oe/recipes-core/fakeroot/fakeroot_1.18.4.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "Gives a fake root environment"
-HOMEPAGE = "http://fakeroot.alioth.debian.org"
-SECTION = "base"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949"
-
-SRC_URI = "\
-    ${DEBIAN_MIRROR}/main/f/fakeroot/fakeroot_${PV}.orig.tar.bz2 \
-"
-
-inherit autotools
-
-do_configure_prepend() {
-    mkdir -p ${S}/build-aux
-}
-
-do_install_append() {
-    install -d ${D}${includedir}/fakeroot
-    install -m 644 *.h ${D}${includedir}/fakeroot
-}
-
-# fakeroot needs getopt which is provided by the util-linux package
-RDEPENDS_${PN} = "util-linux"
-
-
-SRC_URI[md5sum] = "706171d8d520b1ca1576ac73f2ceb4f3"
-SRC_URI[sha256sum] = "0a359efa3e9496c33234b3e9c89306a09bb4da9d33de43c261f1d8447e6ebea2"
-
-# http://errors.yoctoproject.org/Errors/Details/35143/
-PNBLACKLIST[fakeroot] ?= "BROKEN: QA Issue: -dev package contains non-symlink .so - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb b/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb
deleted file mode 100644
index 697f9bf..0000000
--- a/meta-oe/recipes-core/packagegroups/packagegroup-cli-tools.bb
+++ /dev/null
@@ -1,49 +0,0 @@
-SUMMARY = "A set of useful command line tools"
-SUMMARY_${PN}-debug = "A set of command line tools useful for debugging"
-SECTION = "console"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PV = "1.0"
-PR = "r21"
-
-inherit packagegroup allarch
-
-PACKAGES += "${PN}-debug"
-
-RDEPENDS_${PN} = "\
-    dbus-daemon-proxy \
-    dosfstools \
-    htop \
-    iptables \
-    lsof \
-    mbuffer \
-    mtd-utils \
-    nano \
-    nfs-utils-client \
-    nmon \
-    powertop \
-    screen \
-    socat \
-    sysstat \
-"
-
-RDEPENDS_${PN}-debug = "\
-    evtest \
-    devmem2 \
-    i2c-tools \
-    gdb \
-    procps \
-    pxaregs \
-    s3c24xx-gpio \
-    s3c64xx-gpio \
-    serial-forward \
-    strace \
-"
-
-RRECOMMENDS_${PN}-debug = "\
-    ltrace \
-"
-
-PNBLACKLIST[packagegroup-cli-tools] ?= "Runtime depends on blacklisted dbus-daemon-proxy - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PNBLACKLIST[packagegroup-cli-tools] ?= "Runtime depends on blacklisted packagegroup-cli-tools - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/soname.patch b/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/soname.patch
deleted file mode 100644
index 0df232d..0000000
--- a/meta-oe/recipes-core/proxy-libintl/proxy-libintl-20100902/soname.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: proxy-libintl-20080418-r6/src/proxy-libintl/Makefile
-===================================================================
---- proxy-libintl-20080418-r6.orig/src/proxy-libintl/Makefile	2010-07-25 08:40:22.893620001 -0700
-+++ proxy-libintl-20080418-r6/src/proxy-libintl/Makefile	2010-07-25 10:51:29.573620000 -0700
-@@ -6,16 +6,13 @@ CFLAGS = -Wall -I ../../include
- 
- all : ../../lib/libintl.so ../../lib/intl.lib
- 
--../../lib/libintl.so : libintl.o
--	$(CC) -shared -o $@ libintl.o
-+../../lib/libintl.so : libintl.c
-+	$(CC) $(CFLAGS) -shared -Wl,-soname -Wl,libintl.so -o $@ $<
- 
- ../../lib/intl.lib : ../../lib/libintl.so
- 	cp ../../lib/libintl.so $@
- 	$(STRIP) --strip-unneeded $@
- 
--libintl.o : libintl.c
--	$(CC) $(CFLAGS) -c libintl.c
--
- clean :
- 	rm -f *.o ../../lib/libintl.so ../../$(ZIPFILE)
- 
diff --git a/meta-oe/recipes-devtools/cloud9/cloud9/0001-ide-use-node-as-interpreter-for-sketches-instead-of-.patch b/meta-oe/recipes-devtools/cloud9/cloud9/0001-ide-use-node-as-interpreter-for-sketches-instead-of-.patch
deleted file mode 100644
index b32311a..0000000
--- a/meta-oe/recipes-devtools/cloud9/cloud9/0001-ide-use-node-as-interpreter-for-sketches-instead-of-.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From ac1953d04f3f26d6aa5d8f53a9397d3ba0e96fa3 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <koen at circuitco.com>
-Date: Fri, 11 May 2012 15:23:02 +0000
-Subject: [PATCH] ide: use 'node' as interpreter for sketches instead of
- argv[0]
-
-This enables running scripts with node 0.6.x instead of 0.4.x
-
-Signed-off-by: root <root at beaglebone.(none)>
----
- server/cloud9/ide.js |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/server/cloud9/ide.js b/server/cloud9/ide.js
-index ce782f5..6c4e0f7 100644
---- a/server/cloud9/ide.js
-+++ b/server/cloud9/ide.js
-@@ -53,7 +53,7 @@ var Ide = module.exports = function(options, httpServer, exts, socket) {
-     };
- 
-     this.$users = {};
--    this.nodeCmd = process.argv[0];
-+    this.nodeCmd = "node";
- 
-     var davOptions = {
-         node: this.options.mountDir,
--- 
-1.7.7
-
diff --git a/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb b/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb
deleted file mode 100644
index c6d7890..0000000
--- a/meta-oe/recipes-devtools/cloud9/cloud9_0.6.bb
+++ /dev/null
@@ -1,118 +0,0 @@
-SUMMARY = "Meet Cloud9, development-as-a-service for Javascripters and other developers"
-HOMEPAGE = "http://c9.io"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=4784c3bcff601fd8f9515f52a11e7018"
-
-PR = "r5"
-
-# Nodejs-native for node-waf, nodejs4-native for the headers
-DEPENDS = "libxml2 nodejs-native nodejs4-native"
-
-PNBLACKLIST[cloud9] ?= "Not comatible with current nodejs 0.12, but upstream is working on it for v3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-inherit systemd
-
-SRC_URI = "git://github.com/ajaxorg/cloud9.git;name=cloud9ide \
-           git://github.com/ajaxorg/o3;destsuffix=o3;name=o3 \
-           git://github.com/ajaxorg/ace.git;destsuffix=git/support/ace;name=ace \
-           git://github.com/ajaxorg/ace.wiki.git;destsuffix=git/support/ace/doc/wiki;name=acewiki \
-           git://github.com/ajaxorg/apf.git;destsuffix=git/support/apf;name=apf \
-           git://github.com/ajaxorg/async.js.git;destsuffix=git/support/asyncjs;name=asyncjs \
-           git://github.com/ajaxorg/connect.git;destsuffix=git/support/connect;name=connect;branch=ajaxorg \
-           git://github.com/jashkenas/coffee-script.git;destsuffix=git/support/connect/support/coffee-script;name=coffee-script \
-           git://github.com/visionmedia/expresso.git;destsuffix=git/support/connect/support/expresso;name=expresso \
-           git://github.com/visionmedia/node-jscoverage.git;destsuffix=git/support/connect/support/expresso/deps/jscoverage;name=jscoverage \
-           git://github.com/cloudhead/less.js.git;destsuffix=git/support/connect/support/less;name=less \
-           git://github.com/matehat/sass.js.git;destsuffix=git/support/connect/support/sass;name=sass \
-           git://github.com/ajaxorg/jsDAV.git;destsuffix=git/support/jsdav;name=jsdav \
-           git://github.com/fjakobs/async.js.git;destsuffix=git/support/jsdav/support/async.js;name=async-js \
-           git://github.com/felixge/node-formidable.git;destsuffix=git/support/jsdav/support/formidable;name=formidable \
-           git://github.com/ajaxorg/jsftp.git;destsuffix=git/support/jsdav/support/jsftp;name=jsftp \
-           git://github.com/Gozala/streamer.git;destsuffix=git/support/jsdav/support/jsftp/support/streamer;name=streamer \
-           git://github.com/ajaxorg/node-sftp.git;destsuffix=git/support/jsdav/support/node-sftp;name=sftp \
-           git://github.com/ajaxorg/lib-v8debug.git;destsuffix=git/support/lib-v8debug;name=lib-v8debug \
-           git://github.com/ajaxorg/socket.io.git;destsuffix=git/support/socket.io;name=socketio;branch=cadorn-upstream \
-           git://github.com/LearnBoost/socket.io-client.git;destsuffix=git/support/socket.io-client;name=socketio-client \
-           git://github.com/ajaxorg/treehugger.git;destsuffix=git/support/treehugger;name=treehugger \
-           git://github.com/ajaxorg/UglifyJS.git;destsuffix=git/support/uglify-js;name=uglify-js \
-           file://index.js \
-           file://cloud9-avahi.service \
-           file://cloud9.service \
-           file://0001-ide-use-node-as-interpreter-for-sketches-instead-of-.patch \
-"
-
-SRCREV_cloud9ide = "c4e2574896a22bb749f0500b25f41c888d346bed"
-SRCREV_o3 = "d66d4e3252e505f44ada6804c8cab39915ce8afd"
-SRCREV_ace = "0fc5392cbe46fb134052c3065a238ad8e3b31cfd"
-SRCREV_acewiki = "d2a65d0addc2e5ab922bbff9cb6022a4652b4f13"
-SRCREV_apf = "2560b762b2b0e5a8b46f8a4062f927a9a9d239f4"
-SRCREV_asyncjs = "d36ead408e2959b1e99572114ef3a1b6a48c1072"
-SRCREV_connect = "6bec95b51f2286b942bc7f340d62d816bcdc13d4"
-SRCREV_coffee-script = "a53c104db16d3ac9d13cf9f16834edec250b9749"
-SRCREV_expresso = "7f10ab7fa655299b4e2f519065b0495e6ac34ef2"
-SRCREV_jscoverage = "0d4608a6b4275b020ba665389aa75897d5d4a584"
-SRCREV_less = "a2807288008587b95c6c2f8ba5cac16f1bcab98f"
-SRCREV_sass = "4dfd4c699e7a8baf226215ab044854c4507f4420"
-SRCREV_jsdav = "f04ebf3d012cc8aeabfcfb2b8fab8966d52929e9"
-SRCREV_async-js = "92fb710a70efd3cdc2376ebfba71a7fb3a4f1651"
-SRCREV_formidable = "a37292d4b7d6d76a38909ed670334c9068d40871"
-SRCREV_jsftp = "e3f10c8927347c170cdd0150ef38e18272acf942"
-SRCREV_streamer = "1a7f75d4065819171ac91a09974199b932dbe17d"
-SRCREV_sftp = "a0539345134970d7535a19cb2608e3d1bc119d71"
-SRCREV_lib-v8debug = "7c11897f4bc77c7275c2b6dff5becc72ac018662"
-SRCREV_socketio = "735d5239b325df2ba67d2b9bb4ec32442283bc06"
-SRCREV_socketio-client = "4375ef1344ecb8ad75a3848a00af6b391822f86b"
-SRCREV_treehugger = "436d0d6dd0ce43782e6be08ad12c356730626996"
-SRCREV_uglify-js = "941c845c4a01e4e47a158458fe846eb36d0828ad"
-
-SRCREV_FORMAT = "cloud9ide"
-
-S = "${WORKDIR}/git"
-
-do_configure () {
-    cd ${WORKDIR}/o3
-    node-waf -vv configure
-}
-
-EXTRA_CXXFLAGS = "-Idefault/include -I../include -Idefault/hosts -I../hosts -Idefault/modules -I../modules -Idefault/deps -I../deps -I${STAGING_DIR_NATIVE}/usr/include/node4 -fPIC -DPIC"
-
-do_compile () {
-    cd ${WORKDIR}/o3
-    node4 tools/gluegen.js
-    cd hosts
-    ${CXX} ${TARGET_CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o sh_node.o node-o3/sh_node.cc
-    ${CXX} ${TARGET_CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o sh_node_libs.o node-o3/sh_node_libs.cc
-    cd ..
-    ${CXX} ${TARGET_LDFLAGS} hosts/sh_node.o hosts/sh_node_libs.o -o o3.node -shared -Wl,-Bdynamic -lxml2
-}
-
-do_install () {
-    install -m 0755 -d ${D}${datadir}/cloud9 ${D}${bindir} ${D}/var/lib/cloud9
-    rsync -r --exclude=".*" ${S}/* ${D}${datadir}/cloud9
-
-    touch ${D}${bindir}/cloud9
-    echo "#!/bin/sh" > ${D}${bindir}/cloud9
-    echo "node4 ${datadir}/cloud9/bin/cloud9.js -l 0.0.0.0 -w /var/lib/cloud9 -p 3000" >> ${D}${bindir}/cloud9
-    chmod 0755 ${D}${bindir}/cloud9
-
-    install -m 0755 -d ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml
-    install -m 0644 ${WORKDIR}/index.js ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/index.js
-    install -m 0644 ${WORKDIR}/o3/modules/o3.js ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/o3.js
-    install -m 0755 ${WORKDIR}/o3/o3.node ${D}${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/o3.node
-
-     install -m 0755 -d ${D}${sysconfdir}/avahi/services/
-     install -m 0644 ${WORKDIR}/cloud9-avahi.service ${D}${sysconfdir}/avahi/services/
-
-     install -d ${D}${systemd_unitdir}/system
-     install -m 0644 ${WORKDIR}/cloud9.service ${D}${systemd_unitdir}/system
-}
-
-FILES_${PN}-dbg += "${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/.debug \
-                    ${datadir}/cloud9/support/jsdav/support/node-o3-xml-v4/lib/.debug \
-"
-
-RDEPENDS_${PN} = "nodejs4 nodejs gzip"
-
-RPROVIDES_${PN} += "${PN}-systemd"
-RREPLACES_${PN} += "${PN}-systemd"
-RCONFLICTS_${PN} += "${PN}-systemd"
-SYSTEMD_SERVICE_${PN} = "cloud9.service"
diff --git a/meta-oe/recipes-devtools/dt/dt/Stop-using-relative-path-for-scsilib.c-link.patch b/meta-oe/recipes-devtools/dt/dt/Stop-using-relative-path-for-scsilib.c-link.patch
deleted file mode 100644
index ccb9a02..0000000
--- a/meta-oe/recipes-devtools/dt/dt/Stop-using-relative-path-for-scsilib.c-link.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 4cf7e16fe9b773e2e7763d4b773854eefe2aa9ab Mon Sep 17 00:00:00 2001
-From: Otavio Salvador <otavio at ossystems.com.br>
-Date: Tue, 12 Jan 2016 09:59:55 -0200
-Subject: [PATCH] Stop using relative path for scsilib.c link
-Organization: O.S. Systems Software LTDA.
-
-Upstream-Status: Pending
-
-Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
----
- Makefile.linux | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.linux b/Makefile.linux
-index 78333ff..e210564 100644
---- a/Makefile.linux
-+++ b/Makefile.linux
-@@ -129,7 +129,7 @@ scsilib.c:
- 	    echo "Please specify OS={aix,linux,hpux,solaris,windows}"; \
- 	    exit 1; \
- 	fi; \
--	ln -sf ../scsilib-$(OS).c scsilib.c
-+	ln -sf scsilib-$(OS).c scsilib.c
- 
- print:;
- 		@$(PRINTER) $(PRINTFLAGS) $(ALL_CFILES)
--- 
-2.1.4
-
diff --git a/meta-oe/recipes-devtools/dt/dt/Use-tcsh-shell.patch b/meta-oe/recipes-devtools/dt/dt/Use-tcsh-shell.patch
deleted file mode 100644
index 0c00fdf..0000000
--- a/meta-oe/recipes-devtools/dt/dt/Use-tcsh-shell.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From e3c6eb8776f659eb9e6eeccf90d785eff18ecf74 Mon Sep 17 00:00:00 2001
-From: Otavio Salvador <otavio at ossystems.com.br>
-Date: Mon, 15 Feb 2016 18:00:05 -0200
-Subject: [PATCH] Use 'tcsh' shell
-Organization: O.S. Systems Software LTDA.
-
-Upstream-Status: Pending
-
-Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
----
- Scripts/dta | 2 +-
- Scripts/dtc | 2 +-
- Scripts/dtf | 2 +-
- Scripts/dtr | 2 +-
- Scripts/dts | 2 +-
- Scripts/dtt | 2 +-
- Scripts/dtw | 2 +-
- 7 files changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/Scripts/dta b/Scripts/dta
-index ebc7072..4f90247 100755
---- a/Scripts/dta
-+++ b/Scripts/dta
-@@ -1,4 +1,4 @@
--#!/bin/csh
-+#!/bin/tcsh
- #
- #	Script file to test asynchronous communication lines.
- #
-diff --git a/Scripts/dtc b/Scripts/dtc
-index da69c2e..89d48c2 100755
---- a/Scripts/dtc
-+++ b/Scripts/dtc
-@@ -1,4 +1,4 @@
--#!/bin/csh
-+#!/bin/tcsh
- #	%Z%%M% %I% %E%
- #
- #	Date:	August 7, 1990
-diff --git a/Scripts/dtf b/Scripts/dtf
-index 9f8cd87..321d261 100755
---- a/Scripts/dtf
-+++ b/Scripts/dtf
-@@ -1,4 +1,4 @@
--#! /bin/csh
-+#! /bin/tcsh
- #
- #	Script file to gather floppy disk performance data.
- #
-diff --git a/Scripts/dtr b/Scripts/dtr
-index ddb7947..1ff5a0b 100755
---- a/Scripts/dtr
-+++ b/Scripts/dtr
-@@ -1,4 +1,4 @@
--#!/bin/csh
-+#!/bin/tcsh
- #	%Z%%M% %I% %E%
- #
- #	Date:	August 21, 1990
-diff --git a/Scripts/dts b/Scripts/dts
-index 6b8a167..42d2312 100755
---- a/Scripts/dts
-+++ b/Scripts/dts
-@@ -1,4 +1,4 @@
--#!/bin/csh
-+#!/bin/tcsh
- #	%Z%%M% %I% %E%
- #
- #	Date:	August 7, 1990
-diff --git a/Scripts/dtt b/Scripts/dtt
-index 36cc6bd..df19d2f 100755
---- a/Scripts/dtt
-+++ b/Scripts/dtt
-@@ -1,4 +1,4 @@
--#! /bin/csh
-+#! /bin/tcsh
- #	%Z%%M% %I% %E%
- #
- #	Date:	August 7, 1990
-diff --git a/Scripts/dtw b/Scripts/dtw
-index 8a4ac39..c58e304 100755
---- a/Scripts/dtw
-+++ b/Scripts/dtw
-@@ -1,4 +1,4 @@
--#!/bin/csh
-+#!/bin/tcsh
- #	%Z%%M% %I% %E%
- #
- #	Date:	August 21, 1990
--- 
-2.1.4
-
diff --git a/meta-oe/recipes-devtools/dt/dt/dt-default-source-define.patch b/meta-oe/recipes-devtools/dt/dt/dt-default-source-define.patch
deleted file mode 100644
index 87016ed..0000000
--- a/meta-oe/recipes-devtools/dt/dt/dt-default-source-define.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Patch from http://pkgs.fedoraproject.org/git/rpms/dt.git
-
-Upstream-Status: Pending
-
-Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
-
-diff -rupN dt.v18.32.old/common.h dt.v18.32/common.h
---- dt.v18.32.old/common.h	2013-03-01 23:52:30.000000000 +0100
-+++ dt.v18.32/common.h	2014-09-24 17:41:40.777604710 +0200
-@@ -127,7 +127,7 @@ typedef volatile slarge_t	v_slarge;
- 
- #endif /* defined(_WIN64) */
- 
--#elif defined(__GNUC__) && defined(_BSD_SOURCE) || defined(SCO) || defined(__QNXNTO__) || defined(SOLARIS) || defined(HP_UX) || defined(AIX) || defined(_NT_SOURCE) 
-+#elif defined(__GNUC__) && defined(_BSD_SOURCE) || defined (_DEFAULT_SOURCE) ||  defined(SCO) || defined(__QNXNTO__) || defined(SOLARIS) || defined(HP_UX) || defined(AIX) || defined(_NT_SOURCE) 
- 
- #define QuadIsLongLong
- typedef unsigned long long int	large_t;
diff --git a/meta-oe/recipes-devtools/dt/dt/dt-wformat-security.patch b/meta-oe/recipes-devtools/dt/dt/dt-wformat-security.patch
deleted file mode 100644
index b6780c1..0000000
--- a/meta-oe/recipes-devtools/dt/dt/dt-wformat-security.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Patch from http://pkgs.fedoraproject.org/git/rpms/dt.git
-
-Upstream-Status: Pending
-
-Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
-
-diff -rupN dt.v18.32.old/dt.c dt.v18.32/dt.c
---- dt.v18.32.old/dt.c	2014-08-18 14:45:53.242351115 +0200
-+++ dt.v18.32/dt.c	2014-08-18 15:11:36.367719880 +0200
-@@ -4378,7 +4378,7 @@ report_error(
- 	    (void)sprintf(dip->di_msg_buffer, "(%d): '%s', errno = %d - %s\n",
- 			  dip->di_process_id, error_info, errno, emsg);
- 	}
--	syslog(LOG_ERR, dip->di_msg_buffer);
-+	syslog(LOG_ERR, "%s", dip->di_msg_buffer);
-     }
- #endif /* defined(SYSLOG) */
- 
-diff -rupN dt.v18.32.old/dtutil.c dt.v18.32/dtutil.c
---- dt.v18.32.old/dtutil.c	2014-08-18 14:45:53.354350779 +0200
-+++ dt.v18.32/dtutil.c	2014-08-18 15:13:53.835307311 +0200
-@@ -5180,7 +5180,7 @@ ReportDeviceInfo (
- 	    bp += Sprintf(bp,
- 			  "(%d) Device name: %s\n",
- 			   dip->di_process_id, dip->di_dname);
--	    syslog(LOG_ERR, dip->di_msg_buffer);
-+	    syslog(LOG_ERR, "%s", dip->di_msg_buffer);
- 	    bp = dip->di_msg_buffer;
- # if defined(SCSI)
- 	    if (dip->di_serial_number) {
-@@ -5193,7 +5193,7 @@ ReportDeviceInfo (
- 			      dip->di_process_id, dip->di_device_id);
- 	    }
- # endif /* defined(SCSI) */
--	    syslog(LOG_ERR, dip->di_msg_buffer);
-+	    syslog(LOG_ERR, "%s", dip->di_msg_buffer);
- 	    bp = dip->di_msg_buffer;
- 	    bp += Sprintf(bp,
- 		  "(%d) Relative block number where the error occurred is " LUF ","
-@@ -5203,7 +5203,7 @@ ReportDeviceInfo (
-   	    } else {
-                 bp += Sprintf(bp, "\n");
-             }
--	    syslog(LOG_ERR, dip->di_msg_buffer);
-+	    syslog(LOG_ERR, "%s", dip->di_msg_buffer);
- 	}
- #endif /* defined(SYSLOG) */
- 
diff --git a/meta-oe/recipes-devtools/dt/dt_18.32.bb b/meta-oe/recipes-devtools/dt/dt_18.32.bb
deleted file mode 100644
index 0234f76..0000000
--- a/meta-oe/recipes-devtools/dt/dt_18.32.bb
+++ /dev/null
@@ -1,49 +0,0 @@
-SUMMARY = "Generic data test program"
-DESCRIPTION = "The Data Test Program (dt) is a generic data test program used to verify proper \
-operation of peripherals, file systems, device drivers, or any data stream supported by the \
-operating system."
-HOMEPAGE = "http://www.scsifaq.org/RMiller_Tools/dt.html"
-
-SECTION = "console/tests"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=be8bb25bbcfaa0725710d188e5152668"
-
-# Source URI taken from Fedora RPM spec file at:
-#  http://pkgs.fedoraproject.org/git/rpms/dt.git
-SRC_URI = "http://dl.dropboxusercontent.com/u/32363629/Datatest/dt-source-v${PV}.tar.gz \
-           file://dt-default-source-define.patch \
-           file://dt-wformat-security.patch \
-           file://Stop-using-relative-path-for-scsilib.c-link.patch \
-           file://Use-tcsh-shell.patch \
-"
-
-SRC_URI[md5sum] = "3054aeaaba047a1dbe90c2132a382ee2"
-SRC_URI[sha256sum] = "10d164676e918a4d07f233bcd11e4cb6bfd1052c996182cd1827ccd0c063fcc6"
-
-S = "${WORKDIR}/dt.v${PV}"
-
-TARGET_CC_ARCH += "${LDFLAGS}"
-
-EXTRA_OEMAKE += "-f Makefile.linux \
-                 OS=linux \
-                 CFLAGS="-I.. -DAIO -DFIFO -DMMAP -D__linux__ -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DTHREADS -DSCSI""
-
-do_compile() {
-    oe_runmake
-}
-
-do_install() {
-    install -Dm755 dt ${D}${sbindir}/dt
-    install -Dm644 Documentation/dt.man ${D}${mandir}/man8/dt.8
-
-    install -d ${D}${datadir}/dt/
-    install -d ${D}${docdir}/dt/html/
-    install -m755 Scripts/dt? ${D}${datadir}/dt/
-    install -m644 data/pattern_* ${D}${datadir}/dt/
-    install -m644 html/* ${D}${docdir}/dt/html/
-}
-
-RDEPENDS_${PN} += "tcsh"
-
-PNBLACKLIST[dt] ?= "Rdepends on blacklisted tcsh - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt/ltp-Do-not-link-against-libfl.patch b/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt/ltp-Do-not-link-against-libfl.patch
deleted file mode 100644
index 3e4aa73..0000000
--- a/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt/ltp-Do-not-link-against-libfl.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 5bda9c0af56869c6ff2c25d38ea087179c946bc6 Mon Sep 17 00:00:00 2001
-From: Chong Lu <Chong.Lu at windriver.com>
-Date: Tue, 11 Mar 2014 14:47:22 +0800
-Subject: [PATCH] ltp: Don't link against libfl
-
-We have already defined yywrap function in scan.l file. After this, we no longer need to
-link against libfl and so no longer get errors about undefined references to yylex.
-
-Upstream-status: Pending
-
-Signed-off-by: Chong Lu <Chong.Lu at windriver.com>
----
- pan/Makefile |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pan/Makefile b/pan/Makefile
-index 4cc6466..a4b575b 100644
---- a/pan/Makefile
-+++ b/pan/Makefile
-@@ -31,7 +31,7 @@ CPPFLAGS		+= -Wno-error
- 
- CPPFLAGS		+= -I$(abs_srcdir)
- 
--LDLIBS			+= -lm $(LEXLIB)
-+LDLIBS			+= -lm
- 
- LFLAGS			+= -l
- 
--- 
-1.7.9.5
-
diff --git a/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb b/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb
deleted file mode 100644
index b13bd7b..0000000
--- a/meta-oe/recipes-devtools/ltp-ddt/ltp-ddt_1.0.0.bb
+++ /dev/null
@@ -1,97 +0,0 @@
-SUMMARY = "Embedded Linux Device Driver Tests based on Linux Test Project"
-HOMEPAGE = "http://arago-project.org/git/projects/test-automation/ltp-ddt.git"
-SECTION = "console/utils"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
-
-PROVIDES += "ltp"
-DEPENDS += "zip-native virtual/kernel alsa-lib"
-
-RDEPENDS_${PN} += "pm-qa serialcheck"
-
-inherit autotools module-base kernel-module-split
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-SRCREV = "f086bed6cc88bf102eaad0e96cb7ebe79944a8ad"
-BRANCH ?= "master"
-
-SRC_URI = "git://arago-project.org/git/projects/test-automation/ltp-ddt.git;branch=${BRANCH} \
-    file://ltp-Do-not-link-against-libfl.patch \
-"
-
-S = "${WORKDIR}/git"
-
-LTPROOT = "/opt/ltp"
-
-EXTRA_OEMAKE_append = " \
-    prefix=${LTPROOT} \
-    CROSS_COMPILE=${HOST_PREFIX} \
-    SKIP_IDCHECK=1 \
-    KERNEL_PATH=${STAGING_KERNEL_DIR} \
-    KERNEL_INC=${STAGING_KERNEL_DIR} \
-    KERNEL_USR_INC=${STAGING_INCDIR} \
-    ALSA_INCPATH=${STAGING_INCDIR} \
-    ALSA_LIBPATH=${STAGING_LIBDIR} \
-    PLATFORM=${MACHINE} \
-    RANLIB=${RANLIB} \
-    DESTDIR=${D} \
-    CC='${CC}' \
-    KERNEL_CC='${KERNEL_CC}' \
-"
-
-TARGET_CC_ARCH += "${LDFLAGS}"
-
-FILES_${PN}-dbg += " \
-    ${LTPROOT}/.debug \
-    ${LTPROOT}/bin/.debug \
-    ${LTPROOT}/runtest/.debug \
-    ${LTPROOT}/testcases/bin/.debug \
-    ${LTPROOT}/testcases/bin/*/bin/.debug \
-    ${LTPROOT}/testcases/bin/*/test/.debug \
-    ${LTPROOT}/testcases/bin/ddt/.debug \
-    ${LTPROOT}/testcases/bin/ddt/*/bin/.debug \
-    ${LTPROOT}/testcases/bin/ddt/*/test/.debug \
-    ${LTPROOT}/testcases/realtime/*/*/.debug \
-"
-
-FILES_${PN}-staticdev += "${LTPROOT}/lib"
-FILES_${PN} += "${LTPROOT}/*"
-
-KERNEL_MODULES_META_PACKAGE = "${PN}"
-
-kmoddir = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/ddt"
-
-# ltp doesn't regenerate ffsb-6.0-rc2 configure and hardcode configure call.
-# we explicitly force regeneration of that directory and pass configure options.
-do_configure_append() {
-    (cd utils/ffsb-6.0-rc2; autoreconf -fvi; ./configure ${CONFIGUREOPTS})
-}
-
-# The makefiles make excessive use of make -C and several include testcases.mk
-# which triggers a build of the syscall header. To reproduce, build ltp,
-# then delete the header, then "make -j XX" and watch regen.sh run multiple
-# times. Its easier to generate this once here instead.
-do_compile_prepend () {
-    ( make -C ${B}/testcases/kernel include/linux_syscall_numbers.h )
-}
-
-do_compile_append () {
-    unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
-    oe_runmake modules
-}
-
-do_install() {
-    oe_runmake install
-    install -d ${D}${datadir}
-    install -d ${D}${kmoddir}
-    mv ${D}${LTPROOT}/testcases/bin/ddt/*.ko ${D}${kmoddir}
-}
-
-# do_make_scripts should be a separate task for the lock to work
-addtask make_scripts before do_compile
-do_make_scripts[lockfiles] = "${TMPDIR}/kernel-scripts.lock"
-do_make_scripts[deptask] = "do_populate_sysroot"
-
-# http://errors.yoctoproject.org/Errors/Details/56327/
-PNBLACKLIST[ltp-ddt] ?= "BROKEN: fails since last autotools.bbclass changes - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/0001-Don-t-call-deprecated-glib-functions-and-use-the-new.patch b/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/0001-Don-t-call-deprecated-glib-functions-and-use-the-new.patch
deleted file mode 100644
index ecf8e74..0000000
--- a/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/0001-Don-t-call-deprecated-glib-functions-and-use-the-new.patch
+++ /dev/null
@@ -1,166 +0,0 @@
-From 869e52a9055c72970fed036a1510f676e6ce0824 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem at gmail.com>
-Date: Thu, 13 Jun 2013 01:24:19 -0700
-Subject: [PATCH] Don't call deprecated glib functions and use the new gthread
- API.
-
-Signed-off-by: Khem Raj <raj.khem at gmail.com>
-
-Upstream-Status: Inappropriate[version Unmaintained Upstream]
----
- client/pk-console.c                              |    3 ++-
- client/pk-generate-pack.c                        |    3 ++-
- client/pk-monitor.c                              |    3 ++-
- contrib/command-not-found/PackageKit.sh          |    2 +-
- contrib/command-not-found/pk-command-not-found.c |    4 ++--
- contrib/debuginfo-install/pk-debuginfo-install.c |    4 ++--
- src/pk-backend.c                                 |    7 +++++++
- src/pk-main.c                                    |    4 ++--
- 10 files changed, 20 insertions(+), 10 deletions(-)
-
-diff --git a/client/pk-console.c b/client/pk-console.c
-index de927e1..2435f27 100644
---- a/client/pk-console.c
-+++ b/client/pk-console.c
-@@ -1264,11 +1264,12 @@ main (int argc, char *argv[])
- 	bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
- 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- 	textdomain (GETTEXT_PACKAGE);
--
-+#if !GLIB_CHECK_VERSION(2,32,0)
- 	if (! g_thread_supported ())
- 		g_thread_init (NULL);
- 	g_type_init ();
- 	dbus_g_thread_init ();
-+#endif
- 
- 	/* do stuff on ctrl-c */
- 	signal (SIGINT, pk_console_sigint_cb);
-diff --git a/client/pk-generate-pack.c b/client/pk-generate-pack.c
-index 0b2b40f..20d7e8d 100644
---- a/client/pk-generate-pack.c
-+++ b/client/pk-generate-pack.c
-@@ -251,12 +251,13 @@ main (int argc, char *argv[])
- 	bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
- 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- 	textdomain (GETTEXT_PACKAGE);
--
-+#if !GLIB_CHECK_VERSION(2,32,0)
- 	if (! g_thread_supported ())
- 		g_thread_init (NULL);
- 
- 	g_type_init ();
- 	dbus_g_thread_init ();
-+#endif
- 
- 	/* do stuff on ctrl-c */
- 	signal (SIGINT, pk_generate_pack_sigint_cb);
-diff --git a/client/pk-monitor.c b/client/pk-monitor.c
-index f230f7a..d43007f 100644
---- a/client/pk-monitor.c
-+++ b/client/pk-monitor.c
-@@ -285,11 +285,12 @@ main (int argc, char *argv[])
- 	bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
- 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- 	textdomain (GETTEXT_PACKAGE);
--
-+#if !GLIB_CHECK_VERSION(2,32,0)
- 	if (! g_thread_supported ())
- 		g_thread_init (NULL);
- 	g_type_init ();
- 	dbus_g_thread_init ();
-+#endif
- 
- 	context = g_option_context_new (NULL);
- 	/* TRANSLATORS: this is a program that monitors PackageKit */
-diff --git a/contrib/command-not-found/PackageKit.sh b/contrib/command-not-found/PackageKit.sh
-index d08989c..d708fff 100644
---- a/contrib/command-not-found/PackageKit.sh
-+++ b/contrib/command-not-found/PackageKit.sh
-@@ -18,7 +18,7 @@ command_not_found_handle () {
- 
- 	# run the command, or just print a warning
- 	if [ $runcnf -eq 1 ]; then
--		/home/hughsie/.root/libexec/pk-command-not-found $1
-+		/usr/lib/packagekit/pk-command-not-found $1
- 		retval=$?
- 	else
- 		echo "bash: $1: command not found"
-diff --git a/contrib/command-not-found/pk-command-not-found.c b/contrib/command-not-found/pk-command-not-found.c
-index 70679c0..9f81ce4 100644
---- a/contrib/command-not-found/pk-command-not-found.c
-+++ b/contrib/command-not-found/pk-command-not-found.c
-@@ -659,12 +659,12 @@ main (int argc, char *argv[])
- 	bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
- 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- 	textdomain (GETTEXT_PACKAGE);
--
-+#if !GLIB_CHECK_VERSION(2,32,0)
- 	if (! g_thread_supported ())
- 		g_thread_init (NULL);
- 	dbus_g_thread_init ();
- 	g_type_init ();
--
-+#endif
- 	context = g_option_context_new (NULL);
- 	/* TRANSLATORS: tool that gets called when the command is not found */
- 	g_option_context_set_summary (context, _("PackageKit Command Not Found"));
-diff --git a/contrib/debuginfo-install/pk-debuginfo-install.c b/contrib/debuginfo-install/pk-debuginfo-install.c
-index c12aca5..b0e1e7c 100644
---- a/contrib/debuginfo-install/pk-debuginfo-install.c
-+++ b/contrib/debuginfo-install/pk-debuginfo-install.c
-@@ -532,11 +532,11 @@ main (int argc, char *argv[])
- 	bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
- 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- 	textdomain (GETTEXT_PACKAGE);
--
-+#if !GLIB_CHECK_VERSION(2,32,0)
- 	if (! g_thread_supported ())
- 		g_thread_init (NULL);
- 	g_type_init ();
--
-+#endif
- 	context = g_option_context_new (NULL);
- 	/* TRANSLATORS: tool that gets called when the command is not found */
- 	g_option_context_set_summary (context, _("PackageKit Debuginfo Installer"));
-diff --git a/src/pk-backend.c b/src/pk-backend.c
-index 5216b63..5b83ae4 100644
---- a/src/pk-backend.c
-+++ b/src/pk-backend.c
-@@ -2103,7 +2103,14 @@ pk_backend_thread_create (PkBackend *backend, PkBackendThreadFunc func)
- 		egg_warning ("already has thread");
- 		return FALSE;
- 	}
-+#if !GLIB_CHECK_VERSION(2,32,0)
- 	backend->priv->thread = g_thread_create ((GThreadFunc) func, backend, FALSE, NULL);
-+#else
-+	backend->priv->thread = g_thread_try_new ("daemon thread", (GThreadFunc) func, backend, NULL);
-+	if (backend->priv->thread != NULL) {
-+		g_thread_unref(backend->priv->thread);
-+	}
-+#endif
- 	if (backend->priv->thread == NULL) {
- 		egg_warning ("failed to create thread");
- 		return FALSE;
-diff --git a/src/pk-main.c b/src/pk-main.c
-index 4c758cd..8fa2482 100644
---- a/src/pk-main.c
-+++ b/src/pk-main.c
-@@ -219,12 +219,12 @@ main (int argc, char *argv[])
- 	bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
- 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
- 	textdomain (GETTEXT_PACKAGE);
--
-+#if !GLIB_CHECK_VERSION(2,32,0)
- 	if (! g_thread_supported ())
- 		g_thread_init (NULL);
- 	dbus_g_thread_init ();
- 	g_type_init ();
--
-+#endif
- 	/* TRANSLATORS: describing the service that is running */
- 	context = g_option_context_new (_("PackageKit service"));
- 	g_option_context_add_main_entries (context, options, NULL);
--- 
-1.7.9.5
-
diff --git a/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/configurefix.patch b/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/configurefix.patch
deleted file mode 100644
index 48f9591..0000000
--- a/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/configurefix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: PackageKit-0.6.0/configure.ac
-===================================================================
---- PackageKit-0.6.0.orig/configure.ac	2010-01-04 16:32:18.000000000 +0000
-+++ PackageKit-0.6.0/configure.ac	2010-01-29 11:33:48.000000000 +0000
-@@ -90,7 +90,7 @@
- 							enable_strict=$default_strict)
- if test x$enable_strict != xno; then
- 	if test "$GCC" = "yes"; then
--		WARNINGFLAGS_CPP="$WARNINGFLAGS_CPP -Werror"
-+		:
- 	fi
- fi
- 
diff --git a/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/opkgfixes.patch b/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/opkgfixes.patch
deleted file mode 100644
index 5a73a19..0000000
--- a/meta-oe/recipes-devtools/packagekit/packagekit-0.5.6/opkgfixes.patch
+++ /dev/null
@@ -1,422 +0,0 @@
-Index: PackageKit-0.6.0/backends/opkg/pk-backend-opkg.c
-===================================================================
---- PackageKit-0.6.0.orig/backends/opkg/pk-backend-opkg.c	2010-01-29 09:39:33.000000000 +0000
-+++ PackageKit-0.6.0/backends/opkg/pk-backend-opkg.c	2010-01-29 11:30:51.000000000 +0000
-@@ -29,8 +29,7 @@
- 
-+#include <stdio.h>
- #include <libopkg/opkg.h>
- 
--static opkg_t *opkg;
--
- enum {
- 	SEARCH_NAME,
- 	SEARCH_DESCRIPTION,
-@@ -62,7 +60,7 @@
-  * check an opkg package for known GUI dependancies
-  */
- static gboolean
--opkg_is_gui_pkg (opkg_package_t *pkg)
-+opkg_is_gui_pkg (pkg_t *pkg)
- {
- 
-   /* TODO: check appropriate tag */
-@@ -84,7 +82,7 @@
-  * check an opkg package to determine if it is a development package
-  */
- static gboolean
--opkg_is_devel_pkg (opkg_package_t *pkg)
-+opkg_is_devel_pkg (pkg_t *pkg)
- {
-   if (g_strrstr (pkg->name, "-dev"))
-       return TRUE;
-@@ -105,7 +103,7 @@
-  * returns true if the tag is present
-  */
- static gboolean 
--opkg_check_tag (opkg_package_t *pkg, const gchar *tag)
-+opkg_check_tag (pkg_t *pkg, const gchar *tag)
- {
- 	if (pkg->tags && tag)
- 		return (g_strrstr (pkg->tags, tag) != NULL);
-@@ -118,7 +116,7 @@
- {
- 	switch (err)
- 	{
--	case OPKG_NO_ERROR:
-+/*	case OPKG_NO_ERROR:
- 		break;
- 	case OPKG_PACKAGE_NOT_INSTALLED:
- 		pk_backend_error_code (backend, PK_ERROR_ENUM_PACKAGE_NOT_INSTALLED, NULL);
-@@ -140,7 +138,7 @@
- 		break;
- 	case OPKG_PACKAGE_NOT_AVAILABLE:
- 		pk_backend_error_code (backend, PK_ERROR_ENUM_PACKAGE_NOT_FOUND, NULL);
--		break;
-+		break;*/
- 	default:
- 		opkg_unknown_error (backend, err, "Update package");
- 	}
-@@ -152,7 +150,7 @@
- static void
- backend_initialize (PkBackend *backend)
- {
--	opkg = opkg_new ();
-+	int opkg = opkg_new ();
- 
- 	if (!opkg) {
- 		pk_backend_error_code (backend,
-@@ -162,8 +160,8 @@
- 	}
- 
- #ifdef OPKG_OFFLINE_ROOT
--	opkg_set_option (opkg, (char *) "offline_root", OPKG_OFFLINE_ROOT);
--	opkg_re_read_config_files (opkg);
-+	opkg_set_option ((char *) "offline_root", OPKG_OFFLINE_ROOT);
-+	opkg_re_read_config_files ();
- #endif
- 
- }
-@@ -174,22 +172,22 @@
- static void
- backend_destroy (PkBackend *backend)
- {
--	opkg_free (opkg);
-+	opkg_free ();
- }
- 
- 
- static void
--pk_opkg_progress_cb (opkg_t *_opkg, const opkg_progress_data_t *pdata, void *data)
-+pk_opkg_progress_cb (const opkg_progress_data_t *pdata, void *data)
- {
--	PkBackend *backend = PK_BACKEND (data);
-+	PkBackend *backend = (PkBackend*) data;
- 	if (!backend)
- 		return;
- 
- 	pk_backend_set_percentage (backend, pdata->percentage);
--	if (pdata->package)
-+	if (pdata->pkg)
- 	{
- 		gchar *uid;
--		opkg_package_t *pkg = pdata->package;
-+		pkg_t *pkg = pdata->pkg;
- 		gint status = PK_INFO_ENUM_UNKNOWN;
- 
- 		uid = g_strdup_printf ("%s;%s;%s;",
-@@ -225,12 +223,12 @@
- {
- 	int ret;
- 
--	ret = opkg_update_package_lists (opkg, pk_opkg_progress_cb, backend);
-+	ret = opkg_update_package_lists (pk_opkg_progress_cb, backend);
- 
- 	if (ret) {
--		if (ret == OPKG_DOWNLOAD_FAILED)
--			pk_backend_error_code (backend, PK_ERROR_ENUM_REPO_NOT_AVAILABLE, NULL);
--		else
-+//		if (ret == OPKG_DOWNLOAD_FAILED)
-+//			pk_backend_error_code (backend, PK_ERROR_ENUM_REPO_NOT_AVAILABLE, NULL);
-+//		else
- 			opkg_unknown_error (backend, ret, "Refreshing cache");
- 	}
- 	pk_backend_finished (backend);
-@@ -256,7 +254,7 @@
-  */
- 
- static void
--pk_opkg_package_list_cb (opkg_t *_opkg, opkg_package_t *pkg, void *data)
-+pk_opkg_package_list_cb (pkg_t *pkg, void *data)
- {
- 	SearchParams *params = (SearchParams*) data;
- 	gchar *uid;
-@@ -298,7 +296,7 @@
- 	uid = g_strdup_printf ("%s;%s;%s;",
- 		pkg->name, pkg->version, pkg->architecture);
- 
--	if (pkg->installed)
-+	if (pkg->state_status == SS_INSTALLED)
- 		status = PK_INFO_ENUM_INSTALLED;
- 	else
- 		status = PK_INFO_ENUM_AVAILABLE;
-@@ -318,10 +316,10 @@
-                 opkg_is_gui_pkg (pkg))
- 		goto end_handle;
- 	if (pk_bitfield_contain(filters, PK_FILTER_ENUM_INSTALLED) && 
--                (!pkg->installed))
-+                (pkg->state_status != SS_INSTALLED))
- 		goto end_handle;
- 	if (pk_bitfield_contain(filters, PK_FILTER_ENUM_NOT_INSTALLED) && 
--                (pkg->installed))
-+                (pkg->state_status == SS_INSTALLED))
- 		goto end_handle;
- 
- 	pk_backend_package (params->backend, status, uid, pkg->description);
-@@ -338,7 +336,7 @@
- 
- 	params = pk_backend_get_pointer (backend, "search-params");
- 
--	opkg_list_packages (opkg, pk_opkg_package_list_cb, params);
-+	opkg_list_packages (pk_opkg_package_list_cb, params);
- 
- 	pk_backend_finished (params->backend);
- 
-@@ -349,7 +347,7 @@
- }
- 
- static void
--backend_search_name (PkBackend *backend, PkBitfield filters, const gchar *search)
-+backend_search_name (PkBackend *backend, PkBitfield filters, gchar **search)
- {
- 	SearchParams *params;
- 
-@@ -360,7 +358,7 @@
- 	params = g_new0 (SearchParams, 1);
- 	params->filters = filters;
- 	params->search_type = SEARCH_NAME;
--	params->needle = g_utf8_strdown (search, -1);
-+	params->needle = g_utf8_strdown (search[0], -1);
- 	params->backend = backend;
- 
- 	pk_backend_set_pointer (backend, "search-params", params);
-@@ -371,7 +369,7 @@
-  * backend_search_description:
-  */
- static void
--backend_search_description (PkBackend *backend, PkBitfield filters, const gchar *search)
-+backend_search_description (PkBackend *backend, PkBitfield filters, gchar **search)
- {
- 	SearchParams *params;
- 
-@@ -382,7 +380,7 @@
- 	params = g_new0 (SearchParams, 1);
- 	params->filters = filters;
- 	params->search_type = SEARCH_DESCRIPTION;
--	params->needle = g_utf8_strdown (search, -1);
-+	params->needle = g_utf8_strdown (search[0], -1);
- 	params->backend = backend;
- 
- 	pk_backend_set_pointer (backend, "search-params", params);
-@@ -390,7 +388,7 @@
- }
- 
- static void
--backend_search_group (PkBackend *backend, PkBitfield filters, const gchar *search)
-+backend_search_group (PkBackend *backend, PkBitfield filters, gchar **search)
- {
- 	SearchParams *params;
- 
-@@ -401,7 +399,7 @@
- 	params = g_new0 (SearchParams, 1);
- 	params->filters = filters;
- 	params->search_type = SEARCH_TAG;
--	params->needle = g_strdup_printf ("group::%s", search);
-+	params->needle = g_strdup_printf ("group::%s", search[0]);
- 	params->backend = backend;
- 
- 	pk_backend_set_pointer (backend, "search-params", params);
-@@ -412,9 +410,9 @@
- static gboolean
- backend_install_packages_thread (PkBackend *backend)
- {
--	PkPackageId *pi;
- 	gint err, i;
- 	gchar **package_ids;
-+	gchar **parts;
- 
- 	package_ids = pk_backend_get_strv (backend, "pkids");
- 
-@@ -424,13 +422,13 @@
- 	{
- 		pk_backend_package (backend, PK_INFO_ENUM_INSTALLING, package_ids[i], NULL);
- 
--		pi = pk_package_id_new_from_string (package_ids[i]);
-+		parts = pk_package_id_split (package_ids[i]);
- 
--		err = opkg_install_package (opkg, pi->name, pk_opkg_progress_cb, backend);
-+		err = opkg_install_package (parts[PK_PACKAGE_ID_NAME], pk_opkg_progress_cb, backend);
- 		if (err)
- 			handle_install_error (backend, err);
- 
--		pk_package_id_free (pi);
-+		g_strfreev (parts);
- 		if (err != 0)
- 			break;
- 	}
-@@ -453,9 +451,9 @@
- static gboolean
- backend_remove_packages_thread (PkBackend *backend)
- {
--	PkPackageId *pi;
- 	gint err, i;
- 	gchar **package_ids;
-+	gchar **parts;
- 	gboolean allow_deps;
- 	gboolean autoremove;
- 	gpointer *data;
-@@ -467,29 +465,30 @@
- 	autoremove = GPOINTER_TO_INT (data[2]);
- 	g_free (data);
- 
--	opkg_set_option (opkg, (char *)"autoremove", &autoremove);
--	opkg_set_option (opkg, (char *)"force_removal_of_dependent_packages", &allow_deps);
-+	opkg_set_option ((char *)"autoremove", &autoremove);
-+	opkg_set_option ((char *)"force_removal_of_dependent_packages", &allow_deps);
- 
- 	err = 0;
- 
- 	for (i = 0; package_ids[i]; i++)
- 	{
--		pi = pk_package_id_new_from_string (package_ids[i]);
- 		pk_backend_package (backend, PK_INFO_ENUM_REMOVING, package_ids[i], NULL);
- 
--		err = opkg_remove_package (opkg, pi->name, pk_opkg_progress_cb, backend);
-+		parts = pk_package_id_split (package_ids[i]);
-+
-+		err = opkg_remove_package (parts[PK_PACKAGE_ID_NAME], pk_opkg_progress_cb, backend);
- 
- 		switch (err)
- 		{
--		case OPKG_NO_ERROR:
--			break;
--		case OPKG_PACKAGE_NOT_INSTALLED:
--			pk_backend_error_code (backend, PK_ERROR_ENUM_PACKAGE_NOT_INSTALLED, NULL);
--			break;
-+		//case OPKG_NO_ERROR:
-+		//	break;
-+		//case OPKG_PACKAGE_NOT_INSTALLED:
-+		//	pk_backend_error_code (backend, PK_ERROR_ENUM_PACKAGE_NOT_INSTALLED, NULL);
-+		//	break;
- 		default:
- 			opkg_unknown_error (backend, err, "Remove");
- 		}
--		pk_package_id_free (pi);
-+		g_strfreev (parts);
- 
- 		if (err != 0)
- 			break;
-@@ -540,7 +539,7 @@
- 	gint err;
- 
- 	/* FIXME: support only_trusted */
--	err = opkg_upgrade_all (opkg, pk_opkg_progress_cb, backend);
-+	err = opkg_upgrade_all (pk_opkg_progress_cb, backend);
- 
- 	if (err)
- 		opkg_unknown_error (backend, err, "Upgrading system");
-@@ -564,29 +563,28 @@
- static gboolean
- backend_update_package_thread (PkBackend *backend)
- {
--	PkPackageId *pi;
-+        gchar **parts;
- 	gint err = 0;
- 	const gchar *package_id;
- 
- 	/* FIXME: support only_trusted */
- 	package_id = pk_backend_get_string (backend, "pkgid");
--	pi = pk_package_id_new_from_string (package_id);
-+	parts = pk_package_id_split (package_id);
- 
--	if (!pi->name || !pi->version)
-+	if (!parts)
- 	{
- 		pk_backend_error_code (backend, PK_ERROR_ENUM_PACKAGE_NOT_FOUND,
- 				"Package not found");
--		pk_package_id_free (pi);
- 		pk_backend_finished (backend);
- 		return FALSE;
- 	}
- 
--	err = opkg_upgrade_package (opkg, pi->name, pk_opkg_progress_cb, backend);
-+	err = opkg_upgrade_package (parts[PK_PACKAGE_ID_NAME], pk_opkg_progress_cb, backend);
- 	if (err)
- 		handle_install_error (backend, err);
- 
- 
--	pk_package_id_free (pi);
-+	g_strfreev (parts);
- 	pk_backend_finished (backend);
- 	return (err != 0);
- }
-@@ -610,13 +608,13 @@
-  */
- 
- static void
--pk_opkg_list_upgradable_cb (opkg_t *_opkg, opkg_package_t *pkg, void *data)
-+pk_opkg_list_upgradable_cb (pkg_t *pkg, void *data)
- {
--	PkBackend *backend = PK_BACKEND (data);
-+	PkBackend *backend = (PkBackend*) data;
- 	gchar *uid;
- 	gint status;
- 
--	if (pkg->installed)
-+	if (pkg->state_status == SS_INSTALLED)
- 		status = PK_INFO_ENUM_INSTALLED;
- 	else
- 		status = PK_INFO_ENUM_AVAILABLE;
-@@ -631,7 +629,7 @@
- static gboolean
- backend_get_updates_thread (PkBackend *backend)
- {
--	opkg_list_upgradable_packages (opkg, pk_opkg_list_upgradable_cb, backend);
-+	opkg_list_upgradable_packages (pk_opkg_list_upgradable_cb, backend);
- 	pk_backend_finished (backend);
- 	return TRUE;
- }
-@@ -668,16 +666,18 @@
- static gboolean
- backend_get_details_thread (PkBackend *backend)
- {
--	PkPackageId *pi;
- 	gchar **package_ids;
-+        gchar **parts;
- 	int group_index;
- 	PkGroupEnum group = 0;
--	opkg_package_t *pkg;
-+	pkg_t *pkg;
- 	gchar *newid;
- 
-         package_ids = pk_backend_get_strv(backend, "package_ids");
--	pi = pk_package_id_new_from_string (package_ids[0]);
--	if (pi == NULL)
-+	parts = pk_package_id_split (package_ids[0]);
-+
-+
-+	if (!parts)
- 	{
- 		pk_backend_error_code (backend, PK_ERROR_ENUM_PACKAGE_ID_INVALID, "invalid package id");
- 		pk_backend_finished (backend);
-@@ -685,8 +685,8 @@
- 	}
- 
- 
--	pkg = opkg_find_package (opkg, pi->name, pi->version, pi->arch, pi->data);
--	pk_package_id_free (pi);
-+	pkg = opkg_find_package (parts[PK_PACKAGE_ID_NAME], parts[PK_PACKAGE_ID_VERSION], parts[PK_PACKAGE_ID_ARCH], parts[PK_PACKAGE_ID_DATA]);
-+	g_strfreev (parts);
- 
- 	if (!pkg)
- 	{
-@@ -695,7 +695,7 @@
- 		return FALSE;
- 	}
- 
--	newid = g_strdup_printf ("%s;%s;%s;%s", pkg->name, pkg->version, pkg->architecture, pkg->repository);
-+	newid = g_strdup_printf ("%s;%s;%s;%s", pkg->name, pkg->version, pkg->architecture, pkg->src->name);
- 
- 	if (pkg->tags) {
- 		for (group_index = 0; group < PK_GROUP_ENUM_LAST; group_index++) {
-@@ -706,9 +706,8 @@
- 		}
- 	}
- 
--	pk_backend_details (backend, newid, NULL, group, pkg->description, pkg->url, pkg->size);
-+	pk_backend_details (backend, newid, NULL, group, pkg->description, NULL, pkg->size);
- 	g_free (newid);
--	opkg_package_free(pkg);
- 	pk_backend_finished (backend);
- 	return TRUE;
- }
diff --git a/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb b/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb
deleted file mode 100644
index 1b60c47..0000000
--- a/meta-oe/recipes-devtools/packagekit/packagekit_0.5.6.bb
+++ /dev/null
@@ -1,65 +0,0 @@
-SUMMARY = "PackageKit package management abstraction"
-SECTION = "libs"
-LICENSE = "GPL-2.0+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-DEPENDS = "gtk+ python polkit dbus dbus-glib glib-2.0 sqlite3 opkg intltool intltool-native"
-RDEPENDS_${PN} = "opkg bash"
-
-inherit gnome pythonnative
-
-SRC_URI = "http://www.freedesktop.org/software/PackageKit/releases/PackageKit-${PV}.tar.bz2;name=archive \
-           file://configurefix.patch \
-           file://opkgfixes.patch \
-           file://0001-Don-t-call-deprecated-glib-functions-and-use-the-new.patch \
-          "
-
-SRC_URI[archive.md5sum] = "33a3127e9ed41e26671786aee9fe56ff"
-SRC_URI[archive.sha256sum] = "8dae41493dfb011442746d252b3435bf3204e17bf7c47e396f90fbd215260e14"
-
-S = "${WORKDIR}/PackageKit-${PV}"
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[service-packs] = "--enable-service-packs,--disable-service-packs,libarchive"
-
-EXTRA_OECONF = "--with-security-framework=dummy \
-                --with-default-backend=opkg \
-                --enable-opkg \
-                --disable-tests \
-                --disable-ruck \
-                --disable-qt \
-                --disable-gstreamer-plugin \
-                --disable-local  \
-                --disable-networkmanager \
-                --disable-device-rebind \
-                ac_cv_path_XMLTO=no \
-"
-
-#do_configure_prepend() {
-#    mkdir -p m4
-#    echo "EXTRA_DIST=" > gtk-doc.make
-#}
-
-do_configure_append() {
-    for i in $(find . -name Makefile) ; do
-        sed -i -e s:${STAGING_DIR_NATIVE}::g \
-               -e s:/usr/bin/intltool-merge:${STAGING_BINDIR_NATIVE}/intltool-merge:g \
-               $i
-    done
-}
-
-PACKAGES =+ "${PN}-website"
-FILES_${PN}-website = "${datadir}/PackageKit/website"
-
-PACKAGES =+ "${PN}-python"
-FILES_${PN}-python = "${libdir}/python*"
-
-PACKAGES =+ "${PN}-gtkmodule"
-FILES_${PN}-gtkmodule = "${libdir}/gtk-2.0/*/*.so"
-
-FILES_${PN} += "${libdir}/packagekit-backend/*.so ${libdir}/pm-utils ${datadir}/dbus-1/system-services/ ${datadir}/PolicyKit ${datadir}/PackageKit"
-FILES_${PN}-dbg += "${libdir}/packagekit-backend/.debug/*.so ${libdir}/gtk-2.0/*/.debug"
-FILES_${PN}-dev += "${libdir}/packagekit-backend/*.la ${libdir}/gtk-2.0/*/*.la"
-FILES_${PN}-staticdev += "${libdir}/packagekit-backend/*.a ${libdir}/gtk-2.0/*/*.a"
-
-# PackageKit-0.5.6/backends/opkg/pk-backend-opkg.c:31:26: fatal error: libopkg/opkg.h: No such file or directory
-PNBLACKLIST[packagekit] ?= "BROKEN: depends on old deprecated libopkg which is currently disabled and will be removed soon - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
deleted file mode 100644
index f7d480f..0000000
--- a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool.inc
+++ /dev/null
@@ -1,16 +0,0 @@
-DESCRIPTION = "Vala DBus Binding Tool"
-SECTION = "devel"
-DEPENDS = "vala libgee libxml2"
-HOMEPAGE = "http://wiki.freesmartphone.org/index.php/Implementations/vala-dbus-binding-tool"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-PE = "1"
-INC_PR = "r3"
-
-export XDG_DATA_DIRS = "${STAGING_DATADIR}"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/freesmartphone/sources/${BP}.tar.bz2"
-
-inherit autotools perlnative pkgconfig
-
-BBCLASSEXTEND = "native"
diff --git a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool/0001-configure.ac-don-t-use-dash-in-m4-macro-names.patch b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool/0001-configure.ac-don-t-use-dash-in-m4-macro-names.patch
deleted file mode 100644
index 14d84ae..0000000
--- a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool/0001-configure.ac-don-t-use-dash-in-m4-macro-names.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 8abed2e5bf8e7815b11df6d22042d5f0ac8efcb0 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Tue, 5 May 2015 13:43:35 +0200
-Subject: [PATCH] configure.ac: don't use dash in m4 macro names
-
-* otherwise it doesn't get expanded and vala-dbus-binding-tool ends with version 'vala-dbus-binding-tool_version'
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- configure.ac | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 48f007c..18d0bde 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1,9 +1,9 @@
--m4_define([vala-dbus-binding-tool_released], [0])
--m4_define([vala-dbus-binding-tool_base_version], [1.0])
--m4_define([vala-dbus-binding-tool_maybe_gitrev], m4_if(vala-dbus-binding-tool_released, [1], [], [m4_esyscmd([git show-ref --hash=5 HEAD | tr -d '\n\r'])]))
--m4_define([vala-dbus-binding-tool_version], m4_if(vala-dbus-binding-tool_released, [1], [vala-dbus-binding-tool_base_version], [vala-dbus-binding-tool_base_version-vala-dbus-binding-tool_maybe_gitrev]))
-+m4_define([vala_dbus_binding_tool_released], [0])
-+m4_define([vala_dbus_binding_tool_base_version], [1.0])
-+m4_define([vala_dbus_binding_tool_maybe_gitrev], m4_if(vala_dbus_binding_tool_released, [1], [], [m4_esyscmd([git show-ref --hash=5 HEAD | tr -d '\n\r'])]))
-+m4_define([vala_dbus_binding_tool_version], m4_if(vala_dbus_binding_tool_released, [1], [vala_dbus_binding_tool_base_version], [vala_dbus_binding_tool_base_version-vala_dbus_binding_tool_maybe_gitrev]))
- 
--AC_INIT([vala-dbus-binding-tool], [vala-dbus-binding-tool_version], [fso at openphoenux.org], [vala-dbus-binding-tool])
-+AC_INIT([vala-dbus-binding-tool], [vala_dbus_binding_tool_version], [fso at openphoenux.org], [vala-dbus-binding-tool])
- AC_CONFIG_SRCDIR([src/Makefile.am])
- AC_CONFIG_HEADERS(config.h)
- AM_INIT_AUTOMAKE([dist-bzip2])
--- 
-2.3.5
-
diff --git a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb
deleted file mode 100644
index 19e3dce..0000000
--- a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_0.4.0.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require vala-dbus-binding-tool.inc
-
-SRC_URI[md5sum] = "59eab7abf38f35355d3786803bd2441f"
-SRC_URI[sha256sum] = "1e37ab2e6238eaef9f573560ea7379e6955570f7c9503083e50c4c185c1956df"
-
-PNBLACKLIST[vala-dbus-binding-tool] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/131628/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb b/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
deleted file mode 100644
index 32f3455..0000000
--- a/meta-oe/recipes-devtools/vala-dbus-binding-tool/vala-dbus-binding-tool_git.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-require vala-dbus-binding-tool.inc
-
-# Temporary remove negative preference, because there are 2 versions of 0.4.0 archives:
-# the original one depending on libgee1.0 from
-# http://downloads.freesmartphone.org/sources/${BPN}/${BP}.tar.bz2
-# and new one depending on libgee0.8 from
-# http://sourceforge.net/projects/freesmartphone/files/sources/
-# The original one can be already deployed on various premirrors,
-# so prefer the git recipe which doesn't suffer from this issue
-# DEFAULT_PREFERENCE = "-1"
-
-SRCREV = "742c04c2bb0743891904522ce47e50f9e5c99b12"
-PV = "0.4.0+gitr${SRCPV}"
-
-SRC_URI = "git://github.com/freesmartphone/vala-dbus-binding-tool.git;protocol=https \
-    file://0001-configure.ac-don-t-use-dash-in-m4-macro-names.patch \
-"
-S = "${WORKDIR}/git"
-
-PNBLACKLIST[vala-dbus-binding-tool] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130581/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-extended/openlmi/openlmi-networking/0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch b/meta-oe/recipes-extended/openlmi/openlmi-networking/0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch
deleted file mode 100644
index c238200..0000000
--- a/meta-oe/recipes-extended/openlmi/openlmi-networking/0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 336bb5a031077461ec6b2e5438738bf100f0dd2f Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui at cn.fujitsu.com>
-Date: Mon, 3 Aug 2015 02:37:46 +0900
-Subject: [PATCH] fix lib64 can not be shiped in 64bit target
-
-Signed-off-by: Lei Maohui <leimaohui at cn.fujitsu.com>
----
- CMakeLists.txt | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 1ba3cd3..2411745 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -35,13 +35,6 @@ if (DEBUG)
-     add_definitions("-DDEBUG_ENABLED")
- endif (DEBUG)
- 
--# Set LIB_SUFFIX to 64 on 64bit architectures
--if(CMAKE_SIZEOF_VOID_P EQUAL 4)
--    set(LIB_SUFFIX "")
--else(CMAKE_SIZEOF_VOID_P EQUAL 4)
--    SET(LIB_SUFFIX 64)
--endif(CMAKE_SIZEOF_VOID_P EQUAL 4)
--
- # Find OpenLMIMacros when installed in other prefix than /usr (e.g. /usr/local)
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_INSTALL_PREFIX})
- include(OpenLMIMacros RESULT_VARIABLE LMIMACROS)
--- 
-1.8.4.2
-
diff --git a/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb b/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb
deleted file mode 100644
index 081bd3b..0000000
--- a/meta-oe/recipes-extended/openlmi/openlmi-networking_0.3.1.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "CIM providers for network management"
-DESCRIPTION = "\
-openlmi-networking is set of CMPI providers for network management using \
-Common Information Model (CIM)."
-HOMEPAGE = "http://www.openlmi.org/"
-LICENSE = "LGPL-2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7c13b3376cea0ce68d2d2da0a1b3a72c"
-SECTION = "System/Management"
-DEPENDS = "openlmi-providers konkretcmpi konkretcmpi-native sblim-cmpi-devel cim-schema-exper networkmanager dbus libcheck glib-2.0"
-
-SRC_URI = "http://fedorahosted.org/released/${BPN}/${BP}.tar.gz \
-           file://0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch \
-          "
-SRC_URI[md5sum] = "f20de8c76fb6a80001b14c1eb035953e"
-SRC_URI[sha256sum] = "578eaa5c65fe924b5d7aeb635509dd46443166cd6a88b019bc42646e3518a460"
-
-inherit cmake
-
-EXTRA_OECMAKE = "${@base_conditional("libdir", "/usr/lib64", "-DLIB_SUFFIX=64", "", d)} \
-                 ${@base_conditional("libdir", "/usr/lib32", "-DLIB_SUFFIX=32", "", d)} \
-                "
-
-
-do_configure_prepend() {
-     export CMAKE_INSTALL_DATDIR="${STAGING_DATADIR}"
-}
-
-
-FILES_${PN} =+ "${libdir}/cmpi/libcmpiLMI_Networking.so ${prefix}/libexec*"
-FILES_${PN}-dbg =+ "${libdir}/cmpi/.debug*"
-
-PNBLACKLIST[openlmi-networking] ?= "Depends on blacklisted openlmi-providers - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-extended/openlmi/openlmi-providers/0001-fix-error.patch b/meta-oe/recipes-extended/openlmi/openlmi-providers/0001-fix-error.patch
deleted file mode 100644
index 4bcd1c4..0000000
--- a/meta-oe/recipes-extended/openlmi/openlmi-providers/0001-fix-error.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 764171866b84e0198b67538f63022abde3e628ad Mon Sep 17 00:00:00 2001
-From: Qian Lei <qianl.fnst at cn.fujitsu.com>
-Date: Fri, 16 Jan 2015 14:15:25 +0800
-Subject: [PATCH] fix error
-
-Signed-off-by: Qian Lei <qianl.fnst at cn.fujitsu.com>
----
- cmake/modules/OpenLMIMacros.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/cmake/modules/OpenLMIMacros.cmake b/cmake/modules/OpenLMIMacros.cmake
-index d55f983..dbc32ec 100644
---- a/cmake/modules/OpenLMIMacros.cmake
-+++ b/cmake/modules/OpenLMIMacros.cmake
-@@ -89,7 +89,7 @@ macro(konkretcmpi_generate MOFS CIM_PROVIDERS CIM_HEADERS CIM_CLASSES)
-         endforeach(CLASS ${CIM_CLASS_NAMES})
- 
-         # Generate headers for CIM classes
--        set(ENV{KONKRET_SCHEMA_DIR} "/usr/share/mof/cim-current")
-+        set(ENV{KONKRET_SCHEMA_DIR} "$ENV{CMAKE_INSTALL_DATDIR}/mof/cim-current")
-         execute_process(COMMAND ${KONKRETCMPI_KONKRET}
-                                 ${KONKRET_MOF_FILES}
-                                 ${GENERATE_PROVIDERS}
--- 
-1.8.3.1
-
diff --git a/meta-oe/recipes-extended/openlmi/openlmi-providers/0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch b/meta-oe/recipes-extended/openlmi/openlmi-providers/0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch
deleted file mode 100644
index 9c8ebe4..0000000
--- a/meta-oe/recipes-extended/openlmi/openlmi-providers/0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 7cecfa95f033b33a1c3260c214b2d0e5e81b4fd3 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui at cn.fujitsu.com>
-Date: Mon, 3 Aug 2015 02:05:56 +0900
-Subject: [PATCH] fix lib64 can not be shiped in 64bit target
-
-Signed-off-by: Lei Maohui <leimaohui at cn.fujitsu.com>
----
- CMakeLists.txt | 7 -------
- 1 file changed, 7 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 48ae206..3ead9c6 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -21,13 +21,6 @@ else(HAS_STACK_PROTECTOR_STRONG)
-     set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fstack-protector")
- endif()
- 
--# Set LIB_SUFFIX to 64 on 64bit architectures
--if(CMAKE_SIZEOF_VOID_P EQUAL 4)
--    set(LIB_SUFFIX "")
--else(CMAKE_SIZEOF_VOID_P EQUAL 4)
--    SET(LIB_SUFFIX 64)
--endif(CMAKE_SIZEOF_VOID_P EQUAL 4)
--
- if(NOT SYSCONF_INSTALL_DIR)
-     set(SYSCONF_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/etc)
- endif(NOT SYSCONF_INSTALL_DIR)
--- 
-1.8.4.2
-
diff --git a/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb b/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb
deleted file mode 100644
index 2eda653..0000000
--- a/meta-oe/recipes-extended/openlmi/openlmi-providers_0.6.0.bb
+++ /dev/null
@@ -1,56 +0,0 @@
-SUMMARY = "Set of basic CIM providers"
-DESCRIPTION = "\
-openlmi-providers is set of (usually) small CMPI providers (agents) for \
-basic monitoring and management of host system using Common Information \
-Model (CIM)."
-HOMEPAGE = "http://www.openlmi.org/"
-LICENSE = "LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7c13b3376cea0ce68d2d2da0a1b3a72c"
-SECTION = "System/Management"
-DEPENDS = "konkretcmpi-native konkretcmpi sblim-sfcb sblim-cmpi-devel cim-schema-exper lmsensors libuser swig swig-native dbus udev systemd-systemctl-native pciutils"
-
-SRC_URI = "http://fedorahosted.org/released/${BPN}/${BP}.tar.gz \
-           file://0001-fix-error.patch \
-           file://0001-fix-lib64-can-not-be-shiped-in-64bit-target.patch \
-          "
-SRC_URI[md5sum] = "5904f23cf494946237cfbbdbe644a3cd"
-SRC_URI[sha256sum] = "e2b2fbeaec45a83905d0da3b87da83904d9cd94c1b86312f844587b3fff11f56"
-
-inherit cmake
-LDFLAGS_append = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
-EXTRA_OECMAKE = " \
-                 -DWITH-DEVASSISTANT=OFF \
-                 -DWITH-JOURNALD=OFF \
-                 -DWITH-SERVICE=OFF \
-                 -DWITH-SERVICE-LEGACY=ON \
-                 -DWITH-ACCOUNT=OFF \
-                 -DWITH-PCP=OFF \
-                 -DWITH-REALMD=OFF \
-                 -DWITH-FAN=OFF \
-                 -DWITH-LOCALE=OFF \
-                 -DWITH-INDSENDER=OFF \
-                 -DWITH-JOBMANAGER=OFF \
-                 -DWITH-SSSD=OFF \
-                 -DWITH-SELINUX=OFF \
-                 -DWITH-SOFTWARE-DBUS=ON \
-                 ${@base_conditional("libdir", "/usr/lib64", "-DLIB_SUFFIX=64", "", d)} \
-                 ${@base_conditional("libdir", "/usr/lib32", "-DLIB_SUFFIX=32", "", d)} \
-               "
-
-do_configure_prepend() {
-    export CMAKE_INSTALL_DATDIR="${STAGING_DATADIR}"
-}
-
-do_install_append() {
-    if [ -d ${D}${prefix}${sysconfidr} ]; then
-        mv ${D}${prefix}${sysconfdir} ${D}${sysconfdir}
-    fi
-}
-
-FILES_${PN} =+ "${libdir}/cmpi/libcmpiLMI* ${prefix}/libexec*"
-FILES_${PN}-dev =+ "${datadir}/cmake*"
-FILES_${PN}-dbg =+ "${libdir}/cmpi/.debug*"
-
-RDEPENDS_${PN} = "python"
-
-PNBLACKLIST[openlmi-providers] ?= "Depends on blacklisted lmsensors - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb b/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb
deleted file mode 100644
index f99b77c..0000000
--- a/meta-oe/recipes-extended/openlmi/openlmi-storage_0.8.1.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-SUMMARY = "CIM providers for storage management"
-DESCRIPTION = "\
-The openlmi-storage package contains CMPI providers for management of storage \
-using Common Information Managemen (CIM) protocol. \
-\
-The providers can be registered in any CMPI-aware CIMOM, both OpenPegasus and \
-SFCB were tested."
-HOMEPAGE = "http://www.openlmi.org/"
-LICENSE = "LGPL-2.1+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-SECTION = "System/Management"
-DEPENDS = "openlmi-providers pywbem cmpi-bindings"
-RDEPENDS_${PN} += "bash"
-
-SRC_URI = "http://fedorahosted.org/released/${BPN}/${BP}.tar.gz"
-SRC_URI[md5sum] = "898cf0d8c03b8ad6b45d65f335ddee0d"
-SRC_URI[sha256sum] = "4a1ba9957750f94ea58a89cea28985564f38d7cc9aa00fcae20c51e7b32bd0a8"
-
-inherit setuptools
-
-do_install_append() {
-    install -m 755 -d ${D}${datadir}/${BPN}
-    install -m 644 ${S}/mof/* ${D}${datadir}/${BPN}/
-
-    install -m 755 -d ${D}${sysconfdir}/openlmi/storage
-    install -m 644 storage.conf ${D}${sysconfdir}/openlmi/storage/storage.conf
-
-    install -m 755 -d ${D}${libexecdir}/pegasus
-    install -m 755 pycmpiLMI_Storage-cimprovagt ${D}${libexecdir}/pegasus/
-}
-
-FILES_${PN} =+ "${sysconfdir}/openlmi/storage/storage.conf ${datadir}/${BPN}/*"
-
-PNBLACKLIST[openlmi-storage] ?= "Depends on blacklisted pywbem - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-extended/subsurface/subsurface_git.bb b/meta-oe/recipes-extended/subsurface/subsurface_git.bb
deleted file mode 100644
index 90adaf4..0000000
--- a/meta-oe/recipes-extended/subsurface/subsurface_git.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "Subsurface is an open source dive log program"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-
-DEPENDS = "libdivecomputer gtk+ libxml2 glib-2.0 gconf"
-
-PNBLACKLIST[subsurface] ?= "Needs to be upgraded for compatibility with new libdivecomputer - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-inherit gtk-icon-cache cmake
-
-inherit gitpkgv
-PKGV = "${GITPKGVTAG}"
-PV = "4.2"
-
-SRCREV = "f61ee20ba356ecfc4c5b247f548f52d588179c94"
-SRC_URI = "git://subsurface.hohndel.org/subsurface.git"
-S = "${WORKDIR}/git"
-
-#FILES_${PN} += "${datadir}/icons/hicolor/scalable/apps/subsurface.svg"
-RRECOMMENDS_${PN}_append_libc-glibc = " glibc-gconv-iso8859-15"
-
diff --git a/meta-oe/recipes-gnome/gtkextra/files/remove-tutorial.patch b/meta-oe/recipes-gnome/gtkextra/files/remove-tutorial.patch
deleted file mode 100644
index da4f3f4..0000000
--- a/meta-oe/recipes-gnome/gtkextra/files/remove-tutorial.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Upstream-Status: Inappropriate [configuration]
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index f5375f5..c306f23 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -1,4 +1,4 @@
--SUBDIRS = reference tutorial
-+SUBDIRS = reference
- 
- EXTRA_DIST = \
- 	COPYING \
diff --git a/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb b/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb
deleted file mode 100644
index 34b7aa6..0000000
--- a/meta-oe/recipes-gnome/gtkextra/gtkextra_3.0.5.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Gtk+Extra is a set of custom widget for plots and images"
-HOMEPAGE = "http://gtkextra.sourceforge.net/"
-
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/gtkextra/${BP}.tar.gz \
-           file://remove-tutorial.patch \
-"
-
-SRC_URI[md5sum] = "486cea93666020f85f101ed8341baf41"
-SRC_URI[sha256sum] = "9cab6c5d6b792eb828d17cec2b9c1baba2ef57f789a290464afab80b53969e65"
-
-DEPENDS = "gtk+"
-
-inherit autotools pkgconfig gobject-introspection
-
-# | ./.libs/libgtkextra-x11-3.0.so: error: undefined reference to 'roundint'
-PNBLACKLIST[gtkextra] ?= "BROKEN: Fails to build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-gnome/gtkhtml2/files/0001-tests-main.c-fix-build-with-glib-2.36.patch b/meta-oe/recipes-gnome/gtkhtml2/files/0001-tests-main.c-fix-build-with-glib-2.36.patch
deleted file mode 100644
index b3eb396..0000000
--- a/meta-oe/recipes-gnome/gtkhtml2/files/0001-tests-main.c-fix-build-with-glib-2.36.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 4b17eed4b8588569d11ec4bd2b6fa3c063830e6e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony at googlemail.com>
-Date: Thu, 16 May 2013 18:44:50 +0200
-Subject: [PATCH] tests/main.c: fix build with glib 2.36
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Upstream-Status: project seems dead
-
-Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
----
- tests/main.c |    2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/tests/main.c b/tests/main.c
-index 61cce82..18165ed 100644
---- a/tests/main.c
-+++ b/tests/main.c
-@@ -30,7 +30,9 @@ main (gint argc, gchar **argv)
- {
- 	GtkWidget *browser;
- 
-+#if !GLIB_CHECK_VERSION (2, 36, 0)
- 	g_thread_init(NULL);
-+#endif
- 
- 	gtk_init (&argc, &argv);
- 
--- 
-1.7.6.5
-
diff --git a/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb b/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb
deleted file mode 100644
index 021b077..0000000
--- a/meta-oe/recipes-gnome/gtkhtml2/gtkhtml2_svn.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SECTION = "libs"
-DEPENDS = "gtk+ glib-2.0 libxml2"
-SUMMARY = "A GTK+ HTML rendering library"
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605"
-
-SRCREV = "1161"
-PV = "2.11.0+svnr${SRCPV}"
-PR = "r5"
-
-SRC_URI = "svn://svn.gnome.org/svn/gtkhtml2/;module=trunk;protocol=http \
-           http://git.yoctoproject.org/cgit/cgit.cgi/web-patches/plain/css-stylesheet-user.patch;striplevel=0;name=patch2 \
-           http://git.yoctoproject.org/cgit/cgit.cgi/web-patches/plain/css-media.patch;striplevel=0;name=patch3 \
-           http://git.yoctoproject.org/cgit/cgit.cgi/web-patches/plain/add-end-element-signal.patch;striplevel=0;name=patch4 \
-           http://git.yoctoproject.org/cgit/cgit.cgi/web-patches/plain/add-dom-functions.patch;striplevel=0;name=patch5 \
-           http://git.yoctoproject.org/cgit/cgit.cgi/web-patches/plain/iain-mem-leak.patch;striplevel=0;name=patch6 \
-           file://0001-tests-main.c-fix-build-with-glib-2.36.patch \
-"
-
-SRC_URI[patch2.md5sum] = "05fc3627ca364095702dc804f41c8391"
-SRC_URI[patch2.sha256sum] = "df5cca50a8f95333505d7920929fea251daea3be25be6834a1c50a742d9eb674"
-
-SRC_URI[patch3.md5sum] = "d3fe4cda3545f3e4718f1acc186608ab"
-SRC_URI[patch3.sha256sum] = "3aefaa17ffa38143bf5df1161c51ab402d35bfbee41ab4643c313edf569165d5"
-
-SRC_URI[patch4.md5sum] = "651b1601d8a1b21c8a3040fadb729043"
-SRC_URI[patch4.sha256sum] = "d067e8331bf9c6851f1c6067d991a7f54327f532900b405ebdf8e149c071f381"
-
-SRC_URI[patch5.md5sum] = "041be9711a16e629d01487664ba97152"
-SRC_URI[patch5.sha256sum] = "42956fb41341cf82ae8bce18b4cf96a7e2aa631b1b60657afb6d7e9be7cd138c"
-
-SRC_URI[patch6.md5sum] = "4e11dc7899d68f2be2e06ccee01d296d"
-SRC_URI[patch6.sha256sum] = "1e2cc080e654c1839c5cb4b4adf4c62a23e7da208427f3ba0b16cfed9e5cfa98"
-
-S = "${WORKDIR}/trunk"
-
-inherit pkgconfig autotools
-
-EXTRA_OECONF = " --disable-accessibility"
-
-PNBLACKLIST[gtkhtml2] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130633/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-graphics/clutter/clutter-box2d.inc b/meta-oe/recipes-graphics/clutter/clutter-box2d.inc
deleted file mode 100644
index 646b785..0000000
--- a/meta-oe/recipes-graphics/clutter/clutter-box2d.inc
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "Clutter Box2D"
-HOMEPAGE = "http://www.clutter-project.org/"
-LICENSE = "LGPLv2.1+"
-
-# The main clutter lib is machine specific so we need to be too
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-inherit autotools pkgconfig gtk-doc
-
-do_install_append () {
-    install -d ${D}${bindir}
-    install ${S}/examples/.libs/blockbox ${D}${bindir}
-}
-
-FILESPATH = "${FILE_DIRNAME}/clutter-box2d"
diff --git a/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb b/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb
deleted file mode 100644
index d73e2f1..0000000
--- a/meta-oe/recipes-graphics/clutter/clutter-box2d_git.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-require clutter-box2d.inc
-
-LIC_FILES_CHKSUM = "file://box2d/License.txt;md5=e5d39ad91f7dc4692dcdb1d85139ec6b"
-
-# 0.12.1+gitAUTOINC+de5452e56b-r1/git/clutter-box2d/clutter-box2d.h:226:47:
-#  fatal error: clutter-box2d/clutter-box2d-child.h: No such file or directory
-# |  #include <clutter-box2d/clutter-box2d-child.h>
-PNBLACKLIST[clutter-box2d] ?= "BROKEN: doesn't build with B!=S - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRCREV = "de5452e56b537a11fd7f9453d048ff4b4793b5a2"
-PV = "0.12.1+git${SRCPV}"
-PR = "r1"
-
-SRC_URI = "git://git.gnome.org/clutter-box2d.git"
-
-S = "${WORKDIR}/git"
-
-DEPENDS += "clutter-1.0"
-PROVIDES = "clutter-box2d-1.6"
diff --git a/meta-oe/recipes-graphics/fim/files/cross_cc.patch b/meta-oe/recipes-graphics/fim/files/cross_cc.patch
deleted file mode 100644
index 85ab1ef..0000000
--- a/meta-oe/recipes-graphics/fim/files/cross_cc.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 9b0b322d86c7b2d2cddaa62f7dab4aa669739a48 Mon Sep 17 00:00:00 2001
-From: Matthieu Crapet <Matthieu.Crapet at ingenico.com>
-Date: Wed, 19 Mar 2014 13:18:21 +0100
-Subject: [PATCH] Upstream-Status: Pending
-
-b2ba should be built by BUILD_CC in cross environment
-This is only used when configured with --enable-hardcoded-font
-
-Signed-off-by: Matthieu Crapet <Matthieu.Crapet at ingenico.com>
----
- src/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index a1d4330..a8150b9 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -63,7 +63,7 @@ help-acm.cpp: fim.h
- 	$(ECHO) '//#endif' >> $@
- 
- b2ba:
--	$(CC) -o b2ba b2ba.c
-+	$(BUILD_CC) -o b2ba b2ba.c
- 
- if FIM_WANT_CUSTOM_HARDCODED_CONSOLEFONT
- default_font_byte_array.h: $(FIM_CUSTOM_HARDCODED_CONSOLEFONT) b2ba
--- 
-1.8.5.4
-
diff --git a/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb b/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb
deleted file mode 100644
index 7d1a3aa..0000000
--- a/meta-oe/recipes-graphics/fim/fim_0.4-rc1.bb
+++ /dev/null
@@ -1,52 +0,0 @@
-SUMMARY = "Framebuffer (scriptable) image viewer"
-DESCRIPTION = "FIM (Fbi IMproved) aims to be a highly customizable and scriptable \
-               image viewer targeted at users who are comfortable with software \
-               like the Vim text editor or the Mutt mail user agent."
-SECTION = "utils"
-HOMEPAGE = "http://www.autistici.org/dezperado/fim/"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fa01bff138cc98a62b8840a157951c88"
-
-PNBLACKLIST[fim] ?= "BROKEN: doesn't build with B!=S (flex: can't open lex.lex) - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-# flex with provide /usr/include/FlexLexer.h
-DEPENDS = "flex-native bison-native flex"
-
-SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/fbi-improved/${BPN}-${PV}.tar.gz \
-           file://cross_cc.patch"
-SRC_URI[md5sum] = "d7362dde5541c2b6439c35c6e2bd5046"
-SRC_URI[sha256sum] = "3f6bf2de2952b9adcbeb3db12c2a979e999a81dd1e314a03bc58e24f1ea9f686"
-
-PARALLEL_MAKE = ""
-
-inherit autotools pkgconfig
-
-# Don't use provided regex.c
-EXTRA_OECONF = "fim_cv_regex=no fim_cv_regex_broken=no \
-    --enable-framebuffer \
-    --disable-djvu \
-    --disable-ps \
-    --disable-xcftopnm \
-    --disable-convert \
-    --disable-inkscape \
-    --disable-xfig \
-    --disable-dia \
-    --disable-aa \
-    --disable-sdl \
-    --enable-read-dirs \
-    --enable-recursive-dirs \
-    --enable-custom-status-bar \
-"
-
-# Note: imlib2 is located in meta-efl layer.
-PACKAGECONFIG ?= "jpeg rl hf"
-PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
-PACKAGECONFIG[jpeg] = "--enable-jpeg,--disable-jpeg,jpeg"
-PACKAGECONFIG[tiff] = "--enable-tiff,--disable-tiff,tiff"
-PACKAGECONFIG[gif] = "--enable-gif,--disable-gif,giflib"
-PACKAGECONFIG[pdf] = "--enable-poppler,--disable-poppler,poppler"
-PACKAGECONFIG[magick] = "--enable-graphicsmagick,--disable-graphicsmagick,imagemagick"
-PACKAGECONFIG[imlib2] = "--enable-imlib2,--disable-imlib2,imlib2"
-PACKAGECONFIG[rl] = "--enable-readline,--disable-readline,readline"
-PACKAGECONFIG[hf] = "--enable-hardcoded-font,--disable-hardcoded-font"
diff --git a/meta-oe/recipes-graphics/libsexy/libsexy.inc b/meta-oe/recipes-graphics/libsexy/libsexy.inc
deleted file mode 100644
index 5a11ca0..0000000
--- a/meta-oe/recipes-graphics/libsexy/libsexy.inc
+++ /dev/null
@@ -1,15 +0,0 @@
-DESCRIPTION = "Libsexy is a collection of GTK+ widgets that extend the functionality of such standard widgets as GtkEntry and GtkLabel"
-HOMEPAGE = "http://wiki.chipx86.com/wiki/Libsexy"
-AUTHOR = "Christian Hammond <chipx86 at chipx86.com>"
-SECTION = "x11/libs"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34"
-
-DEPENDS = "gtk+ enchant libxml2"
-
-SRC_URI = "http://releases.chipx86.com/libsexy/${BPN}/${BP}.tar.gz \
-           file://libsexy-pkgconfig-fixes.patch"
-
-inherit autotools pkgconfig
-
diff --git a/meta-oe/recipes-graphics/libsexy/libsexy/libsexy-pkgconfig-fixes.patch b/meta-oe/recipes-graphics/libsexy/libsexy/libsexy-pkgconfig-fixes.patch
deleted file mode 100644
index 61da947..0000000
--- a/meta-oe/recipes-graphics/libsexy/libsexy/libsexy-pkgconfig-fixes.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: libsexy-0.1.11/libsexy.pc.in
-===================================================================
---- libsexy-0.1.11.orig/libsexy.pc.in	2005-11-10 10:21:18.000000000 +0000
-+++ libsexy-0.1.11/libsexy.pc.in	2008-03-05 14:36:39.000000000 +0000
-@@ -6,7 +6,8 @@
- Name: libsexy
- Description: Doing naughty things to good widgets
- Version: @VERSION@
--Libs: -L${libdir} -lsexy @PACKAGE_LIBS@
--Cflags: -I${includedir} @PACKAGE_CFLAGS@
- 
-+Requires: pango glib-2.0 gtk+-2.0 libxml-2.0
-+Libs: -L${libdir} -lsexy 
-+Cflags: -I${includedir}
- 
diff --git a/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb b/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb
deleted file mode 100644
index 2ba1ebb..0000000
--- a/meta-oe/recipes-graphics/libsexy/libsexy_0.1.11.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require libsexy.inc
-
-PR = "r2"
-
-SRC_URI[md5sum] = "33c079a253270ec8bfb9508e4bb30754"
-SRC_URI[sha256sum] = "8c4101a8cda5fccbba85ba1a15f46f2cf75deaa8b3c525ce5b135b9e1a8fe49e"
-
-PNBLACKLIST[libsexy] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130607/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-graphics/libvncserver/libvncserver/0002-format_string.patch b/meta-oe/recipes-graphics/libvncserver/libvncserver/0002-format_string.patch
deleted file mode 100644
index 566a208..0000000
--- a/meta-oe/recipes-graphics/libvncserver/libvncserver/0002-format_string.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From: Luca Falavigna <dktrkranz at debian.org>
-Date: Tue, 27 Jan 2015 01:26:04 +0000
-Subject: format_string
-
----
- client_examples/gtkvncviewer.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/client_examples/gtkvncviewer.c b/client_examples/gtkvncviewer.c
-index 261b2da..861e4e3 100644
---- a/client_examples/gtkvncviewer.c
-+++ b/client_examples/gtkvncviewer.c
-@@ -588,7 +588,7 @@ static void GtkDefaultLog (const char *format, ...)
- 
- 	time (&log_clock);
- 	strftime (buf, 255, "%d/%m/%Y %X ", localtime (&log_clock));
--	fprintf (stdout, buf);
-+	fprintf (stdout, "%s", buf);
- 
- 	vfprintf (stdout, format, args);
- 	fflush (stdout);
diff --git a/meta-oe/recipes-graphics/slim/slim/0002-Fix-image-handling-integer-overflows.patch b/meta-oe/recipes-graphics/slim/slim/0002-Fix-image-handling-integer-overflows.patch
deleted file mode 100644
index de82d63..0000000
--- a/meta-oe/recipes-graphics/slim/slim/0002-Fix-image-handling-integer-overflows.patch
+++ /dev/null
@@ -1,343 +0,0 @@
-From 24e548a222f0aab4313d5ba8b04f0840b173000f Mon Sep 17 00:00:00 2001
-From: iwamatsu <iwamatsu at 7c53e7cc-98ea-0310-8f1f-a0b24da60408>
-Date: Mon, 30 Aug 2010 01:24:54 +0000
-Subject: [PATCH 2/8] Fix image handling integer overflows
-
-Image loading memory allocation is based on the image width and height:
- malloc(heigth * width * 3).  Providing an image with large height and
-width values can cause the result of this calculation to exceed the
-maximum value of an unsigned int and thus causes an integer overflow.
-The result: too little memory is allocated and an heap overflow occurs.
-
-This patch was based by Niels Heinen <niels at freebsd.org>
-Thanks!
-
-Signed-off-by: Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-
-git-svn-id: svn://svn.berlios.de/slim/trunk@176 7c53e7cc-98ea-0310-8f1f-a0b24da60408
----
- const.h |    3 ++
- jpeg.c  |   51 +++++++++++++++-----------
- png.c   |  122 ++++++++++++++++++++++++++++++++------------------------------
- 3 files changed, 96 insertions(+), 80 deletions(-)
-
-diff --git a/const.h b/const.h
-index df0989c..a18c6f3 100644
---- a/const.h
-+++ b/const.h
-@@ -42,4 +42,7 @@
- // variables replaced in pre-session_cmd and post-session_cmd
- #define USER_VAR       "%user"
- 
-+// max height/width for images
-+#define MAX_DIMENSION 10000
-+
- #endif
-diff --git a/jpeg.c b/jpeg.c
-index 1cf106c..e1f8352 100644
---- a/jpeg.c
-+++ b/jpeg.c
-@@ -22,16 +22,22 @@
- #include <string.h>
- 
- #include <jpeglib.h>
-+#include "const.h"
- 
- int
- read_jpeg(const char *filename, int *width, int *height, unsigned char **rgb)
- {
-+    int ret = 0;
-     struct jpeg_decompress_struct cinfo;
-     struct jpeg_error_mgr jerr;
-     unsigned char *ptr = NULL;
-     unsigned int i, ipos;
- 
-     FILE *infile = fopen(filename, "rb");
-+    if (infile == NULL) {
-+        fprintf(stderr, "Can not fopen file: %s\n",filename);
-+        return ret;
-+    }
- 
-     cinfo.err = jpeg_std_error(&jerr);
-     jpeg_create_decompress(&cinfo);
-@@ -39,43 +45,39 @@ read_jpeg(const char *filename, int *width, int *height, unsigned char **rgb)
-     jpeg_read_header(&cinfo, TRUE);
-     jpeg_start_decompress(&cinfo);
- 
-+    /* Prevent against integer overflow */
-+    if(cinfo.output_width >= MAX_DIMENSION || cinfo.output_height >= MAX_DIMENSION) {
-+        fprintf(stderr, "Unreasonable dimension found in file: %s\n",filename);
-+        goto close_file;
-+    }
-+
-     *width = cinfo.output_width;
-     *height = cinfo.output_height;
- 
-     rgb[0] = malloc(3 * cinfo.output_width * cinfo.output_height);
--    if (rgb[0] == NULL)
--    {
-+    if (rgb[0] == NULL) {
-         fprintf(stderr, "Can't allocate memory for JPEG file.\n");
--    fclose(infile);
--        return(0);
-+        goto close_file;
-     }
- 
--    if (cinfo.output_components == 3)
--    {
-+    if (cinfo.output_components == 3) {
-         ptr = rgb[0];
--        while (cinfo.output_scanline < cinfo.output_height) 
--        {
-+        while (cinfo.output_scanline < cinfo.output_height) {
-             jpeg_read_scanlines(&cinfo, &ptr, 1);
-             ptr += 3 * cinfo.output_width;
-         }
--    }
--    else if (cinfo.output_components == 1)
--    {
-+    } else if (cinfo.output_components == 1) {
-         ptr = malloc(cinfo.output_width);
--        if (ptr == NULL)
--        {
-+        if (ptr == NULL) {
-             fprintf(stderr, "Can't allocate memory for JPEG file.\n");
--        fclose(infile);
--            return(0);
-+            goto rgb_free;
-         }
- 
-         ipos = 0;
--        while (cinfo.output_scanline < cinfo.output_height) 
--        {
-+        while (cinfo.output_scanline < cinfo.output_height) {
-             jpeg_read_scanlines(&cinfo, &ptr, 1);
- 
--            for (i = 0; i < cinfo.output_width; i++)
--            {
-+            for (i = 0; i < cinfo.output_width; i++) {
-                 memset(rgb[0] + ipos, ptr[i], 3);
-                 ipos += 3;
-             }
-@@ -85,9 +87,16 @@ read_jpeg(const char *filename, int *width, int *height, unsigned char **rgb)
-     }
- 
-     jpeg_finish_decompress(&cinfo);
--    jpeg_destroy_decompress(&cinfo);
- 
-+    ret = 1;
-+    goto close_file;
-+
-+rgb_free:
-+    free(rgb[0]);
-+
-+close_file:
-+    jpeg_destroy_decompress(&cinfo);
-     fclose(infile);
- 
--    return(1);
-+    return(ret);
- }
-diff --git a/png.c b/png.c
-index a2661c6..5c086c6 100644
---- a/png.c
-+++ b/png.c
-@@ -22,12 +22,13 @@
- #include <stdlib.h>
- 
- #include <png.h>
-+#include "const.h"
- 
- int
- read_png(const char *filename, int *width, int *height, unsigned char **rgb, 
-      unsigned char **alpha)
- {
--    FILE *infile = fopen(filename, "rb");
-+    int ret = 0;
- 
-     png_structp png_ptr;
-     png_infop info_ptr;
-@@ -38,31 +39,27 @@ read_png(const char *filename, int *width, int *height, unsigned char **rgb,
-     int bit_depth, color_type, interlace_type;
-     int i;
- 
-+    FILE *infile = fopen(filename, "rb");
-+    if (infile == NULL) {
-+        fprintf(stderr, "Can not fopen file: %s\n",filename);
-+        return ret;
-+    }
-+
-     png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, 
-                                      (png_voidp) NULL, 
-                                      (png_error_ptr) NULL, 
-                                      (png_error_ptr) NULL);
--    if (!png_ptr) 
--    {
--        fclose(infile);
--        return(0);
--    }
-+    if (!png_ptr)
-+        goto file_close;
-   
-     info_ptr = png_create_info_struct(png_ptr);
--    if (!info_ptr)
--    {
-+    if (!info_ptr) {
-         png_destroy_read_struct(&png_ptr, (png_infopp) NULL, 
-                                 (png_infopp) NULL);
--        fclose(infile);
--        return(0);
-     }
-   
-     if (setjmp(png_ptr->jmpbuf))
--    {
--        png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp) NULL);
--        fclose(infile);
--        return(0);
--    }
-+        goto png_destroy;
-   
-     png_init_io(png_ptr, infile);
-     png_read_info(png_ptr, info_ptr);
-@@ -70,18 +67,23 @@ read_png(const char *filename, int *width, int *height, unsigned char **rgb,
-     png_get_IHDR(png_ptr, info_ptr, &w, &h, &bit_depth, &color_type,
-                  &interlace_type, (int *) NULL, (int *) NULL);
- 
-+    /* Prevent against integer overflow */
-+    if(w >= MAX_DIMENSION || h >= MAX_DIMENSION) {
-+        fprintf(stderr, "Unreasonable dimension found in file: %s\n",filename);
-+        goto png_destroy;
-+    }
-+
-     *width = (int) w;
-     *height = (int) h;
-     
-     if (color_type == PNG_COLOR_TYPE_RGB_ALPHA
--    || color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
--    {
--    alpha[0] = malloc(*width * *height);
--    if (alpha[0] == NULL)
--    {
--        fprintf(stderr, "Can't allocate memory for alpha channel in PNG file.\n");
--        return(0); 
--    }
-+        || color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
-+        alpha[0] = malloc(*width * *height);
-+        if (alpha[0] == NULL)
-+        {
-+            fprintf(stderr, "Can't allocate memory for alpha channel in PNG file.\n");
-+            goto png_destroy;
-+        }
-     }
- 
-     /* Change a paletted/grayscale image to RGB */
-@@ -94,68 +96,70 @@ read_png(const char *filename, int *width, int *height, unsigned char **rgb,
-         png_set_gray_to_rgb(png_ptr);
- 
-     /* If the PNG file has 16 bits per channel, strip them down to 8 */
--    if (bit_depth == 16) png_set_strip_16(png_ptr);
-+    if (bit_depth == 16)
-+        png_set_strip_16(png_ptr);
- 
-     /* use 1 byte per pixel */
-     png_set_packing(png_ptr);
- 
-     row_pointers = malloc(*height * sizeof(png_bytep));
--    if (row_pointers == NULL)
--    {
-+    if (row_pointers == NULL) {
-         fprintf(stderr, "Can't allocate memory for PNG file.\n");
--        return(0);
-+        goto png_destroy;
-     }
- 
--    for (i = 0; i < *height; i++)
--    {
-+    for (i = 0; i < *height; i++) {
-         row_pointers[i] = malloc(4 * *width);
--        if (row_pointers == NULL)
--        {
-+        if (row_pointers == NULL) {
-             fprintf(stderr, "Can't allocate memory for PNG line.\n");
--            return(0);
-+            goto rows_free;
-         }
-     }
- 
-     png_read_image(png_ptr, row_pointers);
- 
-     rgb[0] = malloc(3 * *width * *height);
--    if (rgb[0] == NULL)
--    {
-+    if (rgb[0] == NULL) {
-         fprintf(stderr, "Can't allocate memory for PNG file.\n");
--        return(0);
-+        goto rows_free;
-     }
- 
-     if (alpha[0] == NULL)
-     {
--    ptr = rgb[0];
--    for (i = 0; i < *height; i++)
--    {
--        memcpy(ptr, row_pointers[i], 3 * *width);
--        ptr += 3 * *width;
--    }
--    }
--    else
--    {
--    int j;
--    ptr = rgb[0];
--    for (i = 0; i < *height; i++)
--    {
--        int ipos = 0;
--        for (j = 0; j < *width; j++)
--        {
--        *ptr++ = row_pointers[i][ipos++];
--        *ptr++ = row_pointers[i][ipos++];
--        *ptr++ = row_pointers[i][ipos++];
--        alpha[0][i * *width + j] = row_pointers[i][ipos++];
-+        ptr = rgb[0];
-+        for (i = 0; i < *height; i++) {
-+            memcpy(ptr, row_pointers[i], 3 * *width);
-+            ptr += 3 * *width;
-+        }
-+    } else {
-+        int j;
-+        ptr = rgb[0];
-+        for (i = 0; i < *height; i++) {
-+            int ipos = 0;
-+            for (j = 0; j < *width; j++) {
-+                *ptr++ = row_pointers[i][ipos++];
-+                *ptr++ = row_pointers[i][ipos++];
-+                *ptr++ = row_pointers[i][ipos++];
-+                alpha[0][i * *width + j] = row_pointers[i][ipos++];
-+            }
-         }
--    }
-     }
- 
--    png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp) NULL);
-+    ret = 1; /* data reading is OK */
-+
-+rows_free:
-+    for (i = 0; i < *height; i++) {
-+        if (row_pointers[i] != NULL ) {
-+            free(row_pointers[i]);
-+        }
-+    }
- 
--    for (i = 0; i < *height; i++) free(row_pointers[i]);
-     free(row_pointers);
- 
-+png_destroy:
-+    png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp) NULL);
-+
-+file_close:
-     fclose(infile);
--    return(1);
-+    return(ret);
- }
--- 
-1.6.6.1
-
diff --git a/meta-oe/recipes-graphics/slim/slim/0003-Fix-build-failure-with-ld-as-needed.patch b/meta-oe/recipes-graphics/slim/slim/0003-Fix-build-failure-with-ld-as-needed.patch
deleted file mode 100644
index 471c4f5..0000000
--- a/meta-oe/recipes-graphics/slim/slim/0003-Fix-build-failure-with-ld-as-needed.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 6aad913ddd5cdb473db9fa21a5e8ecec58de172b Mon Sep 17 00:00:00 2001
-From: iwamatsu <iwamatsu at 7c53e7cc-98ea-0310-8f1f-a0b24da60408>
-Date: Wed, 12 Jan 2011 04:41:02 +0000
-Subject: [PATCH 3/8] Fix build failure with ld --as-needed.
-
-Signed-off-by: Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-
-git-svn-id: svn://svn.berlios.de/slim/trunk@177 7c53e7cc-98ea-0310-8f1f-a0b24da60408
----
- Makefile |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 1219de4..fafa0ef 100644
---- a/Makefile
-+++ b/Makefile
-@@ -4,7 +4,7 @@
- # to fit into your operating system / distribution
- #######################################################
- CXX=/usr/bin/g++
--CC=/usr/bin/gcc
-+CC=/usr/bin/gcc-4.5
- CFLAGS=-Wall -I. -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/libpng12 -I/usr/include
- CXXFLAGS=$(CFLAGS)
- LDFLAGS=-lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng12 -lz -lm -lcrypt -lXmu -lpng -ljpeg -lrt
-@@ -33,7 +33,7 @@ endif
- all: slim
- 
- slim: $(OBJECTS)
--	$(CXX) $(LDFLAGS) $(OBJECTS) -o $(NAME)
-+	$(CXX) $(OBJECTS) $(LDFLAGS) -o $(NAME)
- 
- .cpp.o:
- 	$(CXX) $(CXXFLAGS) $(DEFINES) $(CUSTOM) -c $< -o $@
--- 
-1.6.6.1
-
diff --git a/meta-oe/recipes-graphics/slim/slim/0004-Add-support-libpng15.patch b/meta-oe/recipes-graphics/slim/slim/0004-Add-support-libpng15.patch
deleted file mode 100644
index f2087c0..0000000
--- a/meta-oe/recipes-graphics/slim/slim/0004-Add-support-libpng15.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From c2067e8c16bfb721d339718ae0c99c70a994936b Mon Sep 17 00:00:00 2001
-From: iwamatsu <iwamatsu at 7c53e7cc-98ea-0310-8f1f-a0b24da60408>
-Date: Fri, 17 Jun 2011 20:35:07 +0000
-Subject: [PATCH 4/8] Add support libpng15
-
-Signed-off-by: Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-
-git-svn-id: svn://svn.berlios.de/slim/trunk@178 7c53e7cc-98ea-0310-8f1f-a0b24da60408
----
- Makefile |    4 ++--
- png.c    |    6 +++++-
- 2 files changed, 7 insertions(+), 3 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index fafa0ef..1202614 100644
---- a/Makefile
-+++ b/Makefile
-@@ -5,9 +5,9 @@
- #######################################################
- CXX=/usr/bin/g++
- CC=/usr/bin/gcc-4.5
--CFLAGS=-Wall -I. -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/libpng12 -I/usr/include
-+CFLAGS=-Wall -I. -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include
- CXXFLAGS=$(CFLAGS)
--LDFLAGS=-lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng12 -lz -lm -lcrypt -lXmu -lpng -ljpeg -lrt
-+LDFLAGS=-lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng -lz -lm -lcrypt -lXmu -lpng -ljpeg -lrt
- CUSTOM=-DHAVE_SHADOW
- ifdef USE_PAM
- LDFLAGS+= -lpam
-diff --git a/png.c b/png.c
-index 5c086c6..aa0f5e5 100644
---- a/png.c
-+++ b/png.c
-@@ -57,8 +57,12 @@ read_png(const char *filename, int *width, int *height, unsigned char **rgb,
-         png_destroy_read_struct(&png_ptr, (png_infopp) NULL, 
-                                 (png_infopp) NULL);
-     }
--  
-+
-+#if PNG_LIBPNG_VER_MAJOR >= 1 && PNG_LIBPNG_VER_MINOR >= 4
-+	if (setjmp(png_jmpbuf((data->png_ptr))))
-+#else
-     if (setjmp(png_ptr->jmpbuf))
-+#endif
-         goto png_destroy;
-   
-     png_init_io(png_ptr, infile);
--- 
-1.6.6.1
-
diff --git a/meta-oe/recipes-graphics/slim/slim/0005-Remove-path-of-gcc-amd-g-and-version-of-g.patch b/meta-oe/recipes-graphics/slim/slim/0005-Remove-path-of-gcc-amd-g-and-version-of-g.patch
deleted file mode 100644
index 566ae35..0000000
--- a/meta-oe/recipes-graphics/slim/slim/0005-Remove-path-of-gcc-amd-g-and-version-of-g.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 4f69eb1aa85fbb395a0474b1f376505fab81ee22 Mon Sep 17 00:00:00 2001
-From: iwamatsu <iwamatsu at 7c53e7cc-98ea-0310-8f1f-a0b24da60408>
-Date: Fri, 17 Jun 2011 20:35:10 +0000
-Subject: [PATCH 5/8] Remove path of gcc amd g++, and version of g++
-
-Signed-off-by: Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-
-git-svn-id: svn://svn.berlios.de/slim/trunk@179 7c53e7cc-98ea-0310-8f1f-a0b24da60408
----
- Makefile |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 1202614..5c5fde1 100644
---- a/Makefile
-+++ b/Makefile
-@@ -3,8 +3,8 @@
- # Edit the following section to adjust the options
- # to fit into your operating system / distribution
- #######################################################
--CXX=/usr/bin/g++
--CC=/usr/bin/gcc-4.5
-+CXX=g++
-+CC=gcc
- CFLAGS=-Wall -I. -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include
- CXXFLAGS=$(CFLAGS)
- LDFLAGS=-lXft -lX11 -lfreetype -lXrender -lfontconfig -lpng -lz -lm -lcrypt -lXmu -lpng -ljpeg -lrt
--- 
-1.6.6.1
-
diff --git a/meta-oe/recipes-graphics/slim/slim/0006-Remove-localhost-from-Authenticator-of-pam.patch b/meta-oe/recipes-graphics/slim/slim/0006-Remove-localhost-from-Authenticator-of-pam.patch
deleted file mode 100644
index a5b8125..0000000
--- a/meta-oe/recipes-graphics/slim/slim/0006-Remove-localhost-from-Authenticator-of-pam.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From e188d5fd3e3c0e40c3e35729fd8b81b138191a75 Mon Sep 17 00:00:00 2001
-From: iwamatsu <iwamatsu at 7c53e7cc-98ea-0310-8f1f-a0b24da60408>
-Date: Fri, 17 Jun 2011 20:35:13 +0000
-Subject: [PATCH 6/8] Remove localhost from Authenticator of pam
-
-http://bugs.gentoo.org/346037
-https://developer.berlios.de/bugs/?func=detailbug&bug_id=17757&group_id=2663
-http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-misc/slim/files/346037-stop_setting_host_for_pam_ck_connector_so.patch?view=log
-
-Signed-off-by: Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-
-git-svn-id: svn://svn.berlios.de/slim/trunk@180 7c53e7cc-98ea-0310-8f1f-a0b24da60408
----
- app.cpp |    2 --
- 1 files changed, 0 insertions(+), 2 deletions(-)
-
-diff --git a/app.cpp b/app.cpp
-index c80a73e..7177363 100644
---- a/app.cpp
-+++ b/app.cpp
-@@ -236,8 +236,6 @@ void App::Run() {
-         pam.start("slim");
-         pam.set_item(PAM::Authenticator::TTY, DisplayName);
-         pam.set_item(PAM::Authenticator::Requestor, "root");
--        pam.set_item(PAM::Authenticator::Host, "localhost");
--
-     }
-     catch(PAM::Exception& e){
-         cerr << APPNAME << ": " << e << endl;
--- 
-1.6.6.1
-
diff --git a/meta-oe/recipes-graphics/slim/slim/0007-Fix-tty-slowness.patch b/meta-oe/recipes-graphics/slim/slim/0007-Fix-tty-slowness.patch
deleted file mode 100644
index fa2502b..0000000
--- a/meta-oe/recipes-graphics/slim/slim/0007-Fix-tty-slowness.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From da172fd6234b3b2b487ab36d63da72758829cb1d Mon Sep 17 00:00:00 2001
-From: iwamatsu <iwamatsu at 7c53e7cc-98ea-0310-8f1f-a0b24da60408>
-Date: Fri, 17 Jun 2011 20:35:15 +0000
-Subject: [PATCH 7/8] Fix tty slowness
-
-Signed-off-by: Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-
-git-svn-id: svn://svn.berlios.de/slim/trunk@181 7c53e7cc-98ea-0310-8f1f-a0b24da60408
----
- app.cpp |   10 ++++++----
- 1 files changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/app.cpp b/app.cpp
-index 7177363..44ab099 100644
---- a/app.cpp
-+++ b/app.cpp
-@@ -278,21 +278,23 @@ void App::Run() {
-         signal(SIGALRM, AlarmSignal);
- 
- #ifndef XNEST_DEBUG
--        OpenLog();
--        
-         if (!force_nodaemon && cfg->getOption("daemon") == "yes") {
-             daemonmode = true;
-         }
- 
-         // Daemonize
-         if (daemonmode) {
--            if (daemon(0, 1) == -1) {
-+            if (daemon(0, 0) == -1) {
-                 cerr << APPNAME << ": " << strerror(errno) << endl;
-                 exit(ERR_EXIT);
-             }
--            UpdatePid();
-         }
- 
-+        OpenLog();
-+
-+        if (daemonmode)
-+            UpdatePid();
-+
-         CreateServerAuth();
-         StartServer();
-         alarm(2);
--- 
-1.6.6.1
-
diff --git a/meta-oe/recipes-graphics/slim/slim/0008-restart-Xserver-if-killed.patch b/meta-oe/recipes-graphics/slim/slim/0008-restart-Xserver-if-killed.patch
deleted file mode 100644
index 0c5cfb7..0000000
--- a/meta-oe/recipes-graphics/slim/slim/0008-restart-Xserver-if-killed.patch
+++ /dev/null
@@ -1,161 +0,0 @@
-From ee77a3d154443d2823ecbf2141daa1b5924f629f Mon Sep 17 00:00:00 2001
-From: iwamatsu <iwamatsu at 7c53e7cc-98ea-0310-8f1f-a0b24da60408>
-Date: Fri, 17 Jun 2011 20:38:34 +0000
-Subject: [PATCH 8/8] restart Xserver if killed
-
-Patch from http://developer.berlios.de/patch/?func=detailpatch&patch_id=2378&group_id=2663.
-
-Signed-off-by: Nobuhiro Iwamatsu <iwamatsu at nigauri.org>
-
-git-svn-id: svn://svn.berlios.de/slim/trunk@182 7c53e7cc-98ea-0310-8f1f-a0b24da60408
----
- app.cpp |   36 +++++++++---------------------------
- app.h   |    2 +-
- 2 files changed, 10 insertions(+), 28 deletions(-)
-
-diff --git a/app.cpp b/app.cpp
-index 44ab099..358a98f 100644
---- a/app.cpp
-+++ b/app.cpp
-@@ -104,6 +104,11 @@ int conv(int num_msg, const struct pam_message **msg,
- 
- extern App* LoginApp;
- 
-+int xioerror(Display *disp) {
-+	LoginApp->RestartServer();
-+    return 0;
-+}
-+
- void CatchSignal(int sig) {
-     cerr << APPNAME << ": unexpected signal " << sig << endl;
- 
-@@ -114,19 +119,6 @@ void CatchSignal(int sig) {
-     exit(ERR_EXIT);
- }
- 
--
--void AlarmSignal(int sig) {
--    int pid = LoginApp->GetServerPID();
--    if(waitpid(pid, NULL, WNOHANG) == pid) {
--        LoginApp->StopServer();
--        LoginApp->RemoveLock();
--        exit(OK_EXIT);
--    }
--    signal(sig, AlarmSignal);
--    alarm(2);
--}
--
--
- void User1Signal(int sig) {
-     signal(sig, User1Signal);
- }
-@@ -275,7 +267,6 @@ void App::Run() {
-         signal(SIGHUP, CatchSignal);
-         signal(SIGPIPE, CatchSignal);
-         signal(SIGUSR1, User1Signal);
--        signal(SIGALRM, AlarmSignal);
- 
- #ifndef XNEST_DEBUG
-         if (!force_nodaemon && cfg->getOption("daemon") == "yes") {
-@@ -297,7 +288,6 @@ void App::Run() {
- 
-         CreateServerAuth();
-         StartServer();
--        alarm(2);
- #endif
- 
-     }
-@@ -613,6 +603,8 @@ void App::Login() {
-     int status;
-     while (wpid != pid) {
-         wpid = wait(&status);
-+		if (wpid == ServerPID)
-+			xioerror(Dpy);	// Server died, simulate IO error
-     }
-     if (WIFEXITED(status) && WEXITSTATUS(status)) {
-         LoginPanel->Message("Failed to execute login command");
-@@ -658,9 +650,6 @@ void App::Login() {
- 
- 
- void App::Reboot() {
--    // Stop alarm clock
--    alarm(0);
--
- #ifdef USE_PAM
-     try{
-         pam.end();
-@@ -683,9 +672,6 @@ void App::Reboot() {
- 
- 
- void App::Halt() {
--    // Stop alarm clock
--    alarm(0);
--
- #ifdef USE_PAM
-     try{
-         pam.end();
-@@ -771,6 +757,7 @@ void App::RestartServer() {
- 
-     StopServer(); 
-     RemoveLock();
-+	while (waitpid(-1, NULL, WNOHANG) > 0); // Collects all dead childrens
-     Run();
- } 
- 
-@@ -841,6 +828,7 @@ int App::WaitForServer() {
- 
-     for(cycles = 0; cycles < ncycles; cycles++) {
-         if((Dpy = XOpenDisplay(DisplayName))) {
-+            XSetIOErrorHandler(xioerror);
-             return 1;
-         } else {
-             if(!ServerTimeout(1, (char *) "X server to begin accepting connections"))
-@@ -925,9 +913,6 @@ int App::StartServer() {
-             ServerPID = -1;
-             break;
-         }
--        alarm(15);
--        pause();
--        alarm(0);
- 
-         // Wait for server to start up
-         if(WaitForServer() == 0) {
-@@ -962,15 +947,12 @@ int IgnoreXIO(Display *d) {
- 
- 
- void App::StopServer() {
--    // Stop alars clock and ignore signals
--    alarm(0);
-     signal(SIGQUIT, SIG_IGN);
-     signal(SIGINT, SIG_IGN);
-     signal(SIGHUP, SIG_IGN);
-     signal(SIGPIPE, SIG_IGN);
-     signal(SIGTERM, SIG_DFL);
-     signal(SIGKILL, SIG_DFL);
--    signal(SIGALRM, SIG_DFL);
- 
-     // Catch X error
-     XSetIOErrorHandler(IgnoreXIO);
-diff --git a/app.h b/app.h
-index dd7c281..2db1038 100644
---- a/app.h
-+++ b/app.h
-@@ -34,6 +34,7 @@ public:
-     ~App();
-     void Run();
-     int GetServerPID();
-+    void RestartServer();
-     void StopServer();
- 
- 	bool serverStarted;
-@@ -49,7 +50,6 @@ private:
-     void Console();
-     void Exit();
-     void KillAllClients(Bool top);
--    void RestartServer();
-     void ReadConfig();
-     void OpenLog();
-     void CloseLog();
--- 
-1.6.6.1
-
diff --git a/meta-oe/recipes-graphics/slim/slim_1.3.2.bb b/meta-oe/recipes-graphics/slim/slim_1.3.2.bb
deleted file mode 100644
index 2fbdcab..0000000
--- a/meta-oe/recipes-graphics/slim/slim_1.3.2.bb
+++ /dev/null
@@ -1,82 +0,0 @@
-DESCRIPTION="Simple Login Manager"
-HOMEPAGE="http://slim.berlios.de"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
-
-PR = "r1"
-
-DEPENDS = "virtual/libx11 libxmu libpng jpeg freetype sessreg ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
-
-SRC_URI = " \
-    http://download.berlios.de/${BPN}/${BP}.tar.gz \
-    file://0002-Fix-image-handling-integer-overflows.patch \
-    file://0003-Fix-build-failure-with-ld-as-needed.patch \
-    file://0004-Add-support-libpng15.patch \
-    file://0005-Remove-path-of-gcc-amd-g-and-version-of-g.patch \
-    file://0006-Remove-localhost-from-Authenticator-of-pam.patch \
-    file://0007-Fix-tty-slowness.patch \
-    file://0008-restart-Xserver-if-killed.patch \
-    file://slim-dynwm \
-    file://update_slim_wmlist \
-    file://Makefile.oe \
-    file://slim.pamd \
-    file://slim.service \
-"
-
-SRC_URI[md5sum] = "ca1ae6120e6f4b4969f2d6cf94f47b42"
-SRC_URI[sha256sum] = "f1560125005f253b9b88220598fed7a9575ef405716862c6ca3fcc72dbd482b8"
-
-
-EXTRA_OEMAKE += " \
-    USE_PAM=${@bb.utils.contains('DISTRO_FEATURES', 'pam', '1', '0', d)} \
-    PREFIX=${prefix} \
-    CFGDIR=${sysconfdir} \
-    MANDIR=${mandir} \
-    DESTDIR=${D} \
-    CFLAGS+=-I${STAGING_INCDIR}/freetype2 \
-    CXXFLAGS+=-I${STAGING_INCDIR}/freetype2 \
-"
-
-do_compile_prepend() {
-    cp -pP ${WORKDIR}/Makefile.oe ${S}/Makefile
-}
-
-do_install() {
-    oe_runmake install
-    install -d ${D}${bindir}
-    install -m 0755 ${WORKDIR}/slim-dynwm ${D}${bindir}/
-    install -m 0755 ${WORKDIR}/update_slim_wmlist ${D}${bindir}/
-    install -d ${D}${sysconfdir}/pam.d/
-    install -m 0644 ${WORKDIR}/slim.pamd ${D}${sysconfdir}/pam.d/slim
-
-    install -d ${D}${systemd_unitdir}/system/
-    install -m 0644 ${WORKDIR}/*.service ${D}${systemd_unitdir}/system/
-
-    echo 'sessionstart_cmd    /usr/bin/sessreg -a -l $DISPLAY %user' >> ${D}${sysconfdir}/slim.conf
-    echo 'sessionstop_cmd     /usr/bin/sessreg -d -l $DISPLAY %user' >> ${D}${sysconfdir}/slim.conf
-}
-
-
-RDEPENDS_${PN} = "perl xauth freetype sessreg "
-FILES_${PN} += "${systemd_unitdir}/system/"
-
-pkg_postinst_${PN} () {
-if test "x$D" != "x"; then
-    exit 1
-fi
-systemctl enable slim.service
-
-# Register SLiM as default DM
-mkdir -p ${sysconfdir}/X11/
-echo "${bindir}/slim" > ${sysconfdir}/X11/default-display-manager
-}
-
-pkg_postrm_${PN} () {
-if test "x$D" != "x"; then
-    exit 1
-fi
-systemctl disable slim.service
-sed -i /slim/d $D${sysconfdir}/X11/default-display-manager || true
-}
-
-PNBLACKLIST[slim] ?= "does not build with distroless qemuarm as reported in 'State of bitbake world' thread, nobody volunteered to fix them - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb b/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb
deleted file mode 100755
index 2af6697..0000000
--- a/meta-oe/recipes-graphics/wayland/wayland-fits_git.bb
+++ /dev/null
@@ -1,35 +0,0 @@
-SUMMARY = "Wayland-fits, the Wayland Functional Integration Test Suite"
-DESCRIPTION = "Wayland-fits is a fully automated functional integration \
-test suite. Its main purpose is to test the functionality and integration of \
-client-side (i.e. toolkit) and server-side (compositor) implementations of \
-the Wayland protocol."
-HOMEPAGE = "https://github.com/01org/wayland-fits"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://COPYING;md5=f8d34cadaf891753c0f00c6cd48f08f5 \
-                    file://src/extensions/weston/weston-wfits.cpp;endline=21;md5=848c81e55cf3a30a9f6ed75f0dba7a97"
-
-SRC_URI = "git://github.com/01org/wayland-fits.git"
-SRCREV = "f108335e374772ae2818a30ae37fe6fcda81980f"
-
-S = "${WORKDIR}/git"
-
-inherit autotools pkgconfig
-
-DEPENDS = "libcheck boost wayland weston"
-RDEPENDS_${PN} = "weston"
-
-EXTRA_OECONF += "--enable-shared --disable-static --with-boost-libdir=${STAGING_LIBDIR}"
-
-PACKAGECONFIG ?= "gtk+3"
-
-PACKAGECONFIG[elementary] = "--enable-efl-tests,--disable-efl-tests,elementary"
-PACKAGECONFIG[gtk+3] = "--enable-gtk-tests,--disable-gtk-tests,gtk+3"
-
-do_install_append() {
-    rm -f ${D}/${libdir}/weston/*.la
-}
-
-FILES_${PN} += "${bindir}/wfits ${libdir}/weston/*.so"
-FILES_${PN}-dbg += "${bindir}/.debug ${libdir}/weston/.debug ${prefix}/src"
-
-PNBLACKLIST[wayland-fits] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130632/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev/fix-it.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev/fix-it.patch
deleted file mode 100644
index 771a2a8..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev/fix-it.patch
+++ /dev/null
@@ -1,153 +0,0 @@
-diff --git a/src/multitouch.c b/src/multitouch.c
-index c55d742..4a8192d 100644
---- a/src/multitouch.c
-+++ b/src/multitouch.c
-@@ -114,7 +114,7 @@ static int init_properties(DeviceIntPtr dev)
- 	return Success;
- }
- 
--static int device_init(DeviceIntPtr dev, LocalDevicePtr local)
-+static int device_init(DeviceIntPtr dev, InputInfoPtr local)
- {
- 	struct mtev_mtouch *mt = local->private;
- 	Atom atom;
-@@ -222,7 +222,7 @@ static int device_init(DeviceIntPtr dev, LocalDevicePtr local)
- 			xf86InitValuatorAxisStruct(dev, val, axes_labels[val],
- 						   min,
- 						   max,
--						   1, 0, 1);
-+						   1, 0, 1,Absolute);
- 			xf86InitValuatorDefaults(dev, val);
- 		}
- 	}
-@@ -232,7 +232,7 @@ static int device_init(DeviceIntPtr dev, LocalDevicePtr local)
- 	return Success;
- }
- 
--static int device_on(LocalDevicePtr local)
-+static int device_on(InputInfoPtr local)
- {
- 	struct mtev_mtouch *mt = local->private;
- 	local->fd = xf86OpenSerial(local->options);
-@@ -248,7 +248,7 @@ static int device_on(LocalDevicePtr local)
- 	return Success;
- }
- 
--static int device_off(LocalDevicePtr local)
-+static int device_off(InputInfoPtr local)
- {
- 	struct mtev_mtouch *mt = local->private;
- 	xf86RemoveEnabledDevice(local);
-@@ -259,12 +259,12 @@ static int device_off(LocalDevicePtr local)
- 	return Success;
- }
- 
--static int device_close(LocalDevicePtr local)
-+static int device_close(InputInfoPtr local)
- {
- 	return Success;
- }
- 
--static void process_state(LocalDevicePtr local,
-+static void process_state(InputInfoPtr local,
- 			  const struct mtev_mtouch *mt)
- {
- 
-@@ -321,22 +321,22 @@ static void process_state(LocalDevicePtr local,
- 	}
- 
- 	/* Some x-clients assume they get motion events before button down */
-+	xf86Msg(X_INFO,"down %d|pdown %d\n", down, pdown);
- 	if (down)
- 		xf86PostMotionEventP(local->dev, TRUE,
- 				     0, down * MT_AXIS_PER_FINGER, valuators);
--
- 	if(down && pdown == 0)
- 		xf86PostButtonEventP(local->dev, TRUE,
- 				     1, 1,
- 				     0, down * MT_AXIS_PER_FINGER, valuators);
--	else if (down == 0 && pdown)
--		xf86PostButtonEvent(local->dev, TRUE, 1, 0, 0, 0);
--
-+	else if (down == 0 && pdown){
-+		xf86PostButtonEvent(local->dev, TRUE, 1, 1, 0, 0);
-+	}
- 	pdown = !!down;
- }
- 
- /* called for each full received packet from the touchpad */
--static void read_input(LocalDevicePtr local)
-+static void read_input(InputInfoPtr local)
- {
- 	struct mtev_mtouch *mt = local->private;
- 	while (mtouch_read_synchronized_event(mt, local->fd)) {
-@@ -346,7 +346,7 @@ static void read_input(LocalDevicePtr local)
- 
- static Bool device_control(DeviceIntPtr dev, int mode)
- {
--	LocalDevicePtr local = dev->public.devicePrivate;
-+	InputInfoPtr local = dev->public.devicePrivate;
- 	switch (mode) {
- 	case DEVICE_INIT:
- 		xf86Msg(X_INFO, "device control: init\n");
-@@ -366,39 +366,29 @@ static Bool device_control(DeviceIntPtr dev, int mode)
- 	}
- }
- 
--static InputInfoPtr preinit(InputDriverPtr drv, IDevPtr dev, int flags)
-+static InputInfoPtr preinit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
- {
- 	struct mtev_mtouch *mt;
--	InputInfoPtr local = xf86AllocateInput(drv, 0);
--	if (!local)
--		goto error;
-+	int rc;
-+
- 	mt = calloc(1, sizeof(struct mtev_mtouch));
-+
- 	if (!mt)
- 		goto error;
- 
--	local->name = dev->identifier;
--	local->type_name = XI_TOUCHSCREEN;
--	local->device_control = device_control;
--	local->read_input = read_input;
--	local->private = mt;
--	local->flags = XI86_POINTER_CAPABLE |
--		XI86_SEND_DRAG_EVENTS;
--
--	local->conf_idev = dev;
--
--	xf86CollectInputOptions(local, NULL, NULL);
--	//xf86OptionListReport(local->options);
--	xf86ProcessCommonOptions(local, local->options);
-+	pInfo->private = mt;
-+	pInfo->type_name = "UNKNOWN";
-+	pInfo->device_control = device_control;
-+	pInfo->read_input = read_input;
- 
-+	mt->swap_xy = xf86SetBoolOption(pInfo->options, "SwapAxes", FALSE);
-+	mt->invert_x = xf86SetBoolOption(pInfo->options, "InvertX", FALSE);
-+	mt->invert_y = xf86SetBoolOption(pInfo->options, "InvertY", FALSE);
- 
--	mt->swap_xy = xf86SetBoolOption(local->options, "SwapAxes", FALSE);
--	mt->invert_x = xf86SetBoolOption(local->options, "InvertX", FALSE);
--	mt->invert_y = xf86SetBoolOption(local->options, "InvertY", FALSE);
--
--	local->flags |= XI86_CONFIGURED;
-+	return Success;
- 
- error:
--	return local;
-+	return !Success;
- }
- 
- static void uninit(InputDriverPtr drv, InputInfoPtr local, int flags)
-@@ -415,7 +405,6 @@ static InputDriverRec MTEV = {
- 	.PreInit = preinit,
- 	.UnInit = uninit,
- 	.module = NULL,
--	.refCount = 0
- };
- 
- static XF86ModuleVersionInfo VERSION = {
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb
deleted file mode 100644
index 5f2adec..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-input-mtev_git.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-require recipes-graphics/xorg-driver/xorg-driver-input.inc
-SUMMARY = "X.Org X server -- multitouch input driver"
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=8a71d0475d08eee76d8b6d0c6dbec543"
-
-DEPENDS += "pixman"
-
-PNBLACKLIST[xf86-input-mtev] ?= "BROKEN: doesn't build with B!=S (Makefile without ${S} in sed call) - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "git://gitorious.org/xorg/xf86-input-mtev.git file://fix-it.patch"
-SRCREV = "1eb469166ffc095c5801475f057f911f97a6e641"
-S = "${WORKDIR}/git"
-PV = "1.0.0+gitr${SRCPV}"
-PR = "${INC_PR}.0"
-
-EXTRA_OEMAKE = "'INCLUDE=-I${STAGING_INCDIR}/xorg -I${STAGING_INCDIR}/pixman-1'"
-
-#skip xorg-driver-common.inc AC_CHECK_FILE mangling
-do_configure_prepend () {
-    sed 's#gcc#${CC}#g' -i Makefile
-    return
-}
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode/0001-Add-config.h-include-to-src-lx_memory.c.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode/0001-Add-config.h-include-to-src-lx_memory.c.patch
deleted file mode 100644
index fcd2f68..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode/0001-Add-config.h-include-to-src-lx_memory.c.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 621d946e56efac2c779b83b1a5c6b645169c4ebd Mon Sep 17 00:00:00 2001
-From: "Brian A. Lloyd" <brian.lloyd at familyhonor.net>
-Date: Wed, 1 Oct 2014 12:35:18 +0300
-Subject: [PATCH] Add config.h include to src/lx_memory.c
-
-The src/lx_memory.c file uses the xf86.h header file.  This file must have
-HAVE_STRNDUP defined before calling it when the building platform has a strndup
-function.  When using config.h, this file doesn't have that define and so fails
-to compile.
-
-The attached patch adds the conditional config.h to this file so it may compile
-on the affected platforms.
-
-The patch is trivial and may be included and used under whatever licensing
-desired.
-
-Closes: Free Desktop Bug #84541
-
-Signed-off-by: Brian A. Lloyd <brian.lloyd at familyhonor.net>
-Upstream-Status: Backport
----
- src/lx_memory.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/src/lx_memory.c b/src/lx_memory.c
-index f26d280..992446f 100644
---- a/src/lx_memory.c
-+++ b/src/lx_memory.c
-@@ -22,6 +22,9 @@
-  * contributors may be used to endorse or promote products derived from this
-  * software without specific prior written permission.
-  */
-+#if HAVE_CONFIG_H
-+#include "config.h"
-+#endif
- 
- #include "xf86.h"
- #include "geode.h"
--- 
-2.1.1
-
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb
deleted file mode 100644
index e543413..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-geode_2.11.16.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require recipes-graphics/xorg-driver/xorg-driver-video.inc
-LIC_FILES_CHKSUM = "file://COPYING;md5=e7f3e39474aeea5af381a8e103dafc36"
-
-SUMMARY = "X.org server -- Geode GX2/LX display driver"
-PR = "${INC_PR}.0"
-
-SRC_URI += "file://0001-Add-config.h-include-to-src-lx_memory.c.patch"
-SRC_URI[md5sum] = "35fa387f6a33f6b22a56ce4bda424392"
-SRC_URI[sha256sum] = "38fc1f55e29fb7985b90c9021a4b7e5295d42888bd669174f42f3b7f681fc1a7"
-
-COMPATIBLE_HOST = "i.86.*-linux"
-
-RDEPENDS_${PN} += "xserver-xorg-module-exa"
-
-# 2_2.11.16-r21.0/xf86-video-geode-2.11.16/src/gx_driver.c:376:20: error: implicit declaration of function 'xf86MapVidMem' [-Werror=implicit-function-declaration]
-PNBLACKLIST[xf86-video-geode] ?= "BROKEN, fails to build - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-fix-build-with-KMS-disabled.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-fix-build-with-KMS-disabled.patch
deleted file mode 100644
index 25e8320..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-fix-build-with-KMS-disabled.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From f485e878bc8bb0e381a38a30009308c82fa8d672 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Thu, 16 Aug 2012 08:18:56 +0200
-Subject: [PATCH] fix build with KMS disabled
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- src/glamo.h |    3 +++
- 1 files changed, 3 insertions(+), 0 deletions(-)
-
-diff --git a/src/glamo.h b/src/glamo.h
-index d4a2f19..5fd5c04 100644
---- a/src/glamo.h
-+++ b/src/glamo.h
-@@ -37,8 +37,11 @@
- #include "xf86.h"
- #include "exa.h"
- #include <linux/fb.h>
-+
-+#ifdef HAVE_KMS
- #include <libdrm/drm.h>
- #include <libdrm/glamo_bo.h>
-+#endif
- 
- #define GLAMO_REG_BASE(c)		((c)->attr.address[0])
- #define GLAMO_REG_SIZE(c)		(0x2400)
--- 
-1.7.8.6
-
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-driver-remove-references-to-mibstore.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-driver-remove-references-to-mibstore.patch
deleted file mode 100644
index fab0b23..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-driver-remove-references-to-mibstore.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 040ade8bb86a771fa4e71b41d2080254830ca9f3 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Sat, 16 Mar 2013 17:44:37 +0100
-Subject: [PATCH] glamo*driver: remove references to mibstore
-
-* fix build with xserver-1.14
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- src/glamo-driver.c     | 2 --
- src/glamo-kms-driver.c | 1 -
- 2 files changed, 3 deletions(-)
-
-diff --git a/src/glamo-driver.c b/src/glamo-driver.c
-index 10b7762..22f57d7 100644
---- a/src/glamo-driver.c
-+++ b/src/glamo-driver.c
-@@ -14,7 +14,6 @@
- #include "xf86_OSproc.h"
- 
- #include "mipointer.h"
--#include "mibstore.h"
- #include "micmap.h"
- #include "colormapst.h"
- #include "xf86cmap.h"
-@@ -612,7 +611,6 @@ GlamoScreenInit(SCREEN_INIT_ARGS_DECL)
-     }
- 
-     xf86SetBlackWhitePixels(pScreen);
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
- 
-     /* software cursor */
-diff --git a/src/glamo-kms-driver.c b/src/glamo-kms-driver.c
-index c5c7a00..f192398 100644
---- a/src/glamo-kms-driver.c
-+++ b/src/glamo-kms-driver.c
-@@ -415,7 +415,6 @@ Bool GlamoKMSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc,
- 
- 	GlamoKMSExaInit(pScrn);
- 
--	miInitializeBackingStore(pScreen);
- 	xf86SetBackingStore(pScreen);
- 	xf86SetSilkenMouse(pScreen);
- 	miDCInitialize(pScreen, xf86GetPointerScreenFuncs());
--- 
-1.8.1.5
-
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-kms-driver-drop-unused-xf86_config.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-kms-driver-drop-unused-xf86_config.patch
deleted file mode 100644
index 0d63743..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0001-glamo-kms-driver-drop-unused-xf86_config.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 963c221aa01be2ea99d39578d91e4aa08ec3ab0a Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Mon, 23 May 2011 14:29:38 +0200
-Subject: [PATCH] glamo-kms-driver: drop unused xf86_config
-
-* gcc-4.6 doesn't like unused variables which are only set and never read
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- src/glamo-kms-driver.c |    2 --
- 1 files changed, 0 insertions(+), 2 deletions(-)
-
-diff --git a/src/glamo-kms-driver.c b/src/glamo-kms-driver.c
-index ce87caa..c5c7a00 100644
---- a/src/glamo-kms-driver.c
-+++ b/src/glamo-kms-driver.c
-@@ -208,7 +208,6 @@ static const xf86CrtcConfigFuncsRec crtc_config_funcs = {
- 
- Bool GlamoKMSPreInit(ScrnInfoPtr pScrn, int flags)
- {
--	xf86CrtcConfigPtr xf86_config;
- 	GlamoPtr pGlamo;
- 	rgb defaultWeight = { 0, 0, 0 };
- 	int max_width, max_height;
-@@ -254,7 +253,6 @@ Bool GlamoKMSPreInit(ScrnInfoPtr pScrn, int flags)
- 
- 	/* Allocate an xf86CrtcConfig */
- 	xf86CrtcConfigInit(pScrn, &crtc_config_funcs);
--	xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
- 
- 	max_width = 480;
- 	max_height = 640;
--- 
-1.7.5.rc3
-
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0003-glamo-driver-adapt-to-xserver-0.13-video-API.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0003-glamo-driver-adapt-to-xserver-0.13-video-API.patch
deleted file mode 100644
index cbdc6e7..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0003-glamo-driver-adapt-to-xserver-0.13-video-API.patch
+++ /dev/null
@@ -1,279 +0,0 @@
-From 57e8944e3cced03b9526bd075649d74d97c24899 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Tue, 20 Nov 2012 22:18:23 +0100
-Subject: [PATCH 3/3] glamo-driver: adapt to xserver-0.13 video API
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- src/compat-api.h   | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
- src/glamo-driver.c | 43 ++++++++++++------------
- 2 files changed, 118 insertions(+), 21 deletions(-)
- create mode 100644 src/compat-api.h
-
-diff --git a/src/compat-api.h b/src/compat-api.h
-new file mode 100644
-index 0000000..b1591b1
---- /dev/null
-+++ b/src/compat-api.h
-@@ -0,0 +1,96 @@
-+/*
-+ * Copyright 2012 Red Hat, Inc.
-+ *
-+ * Permission is hereby granted, free of charge, to any person obtaining a
-+ * copy of this software and associated documentation files (the "Software"),
-+ * to deal in the Software without restriction, including without limitation
-+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
-+ * and/or sell copies of the Software, and to permit persons to whom the
-+ * Software is furnished to do so, subject to the following conditions:
-+ *
-+ * The above copyright notice and this permission notice (including the next
-+ * paragraph) shall be included in all copies or substantial portions of the
-+ * Software.
-+ *
-+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
-+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-+ * DEALINGS IN THE SOFTWARE.
-+ *
-+ * Author: Dave Airlie <airlied at redhat.com>
-+ */
-+
-+/* this file provides API compat between server post 1.13 and pre it,
-+   it should be reused inside as many drivers as possible */
-+#ifndef COMPAT_API_H
-+#define COMPAT_API_H
-+
-+#ifndef GLYPH_HAS_GLYPH_PICTURE_ACCESSOR
-+#define GetGlyphPicture(g, s) GlyphPicture((g))[(s)->myNum]
-+#define SetGlyphPicture(g, s, p) GlyphPicture((g))[(s)->myNum] = p
-+#endif
-+
-+#ifndef XF86_HAS_SCRN_CONV
-+#define xf86ScreenToScrn(s) xf86Screens[(s)->myNum]
-+#define xf86ScrnToScreen(s) screenInfo.screens[(s)->scrnIndex]
-+#endif
-+
-+#ifndef XF86_SCRN_INTERFACE
-+
-+#define SCRN_ARG_TYPE int
-+#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = xf86Screens[(arg1)]
-+
-+#define SCREEN_ARG_TYPE int
-+#define SCREEN_PTR(arg1) ScreenPtr pScreen = screenInfo.screens[(arg1)]
-+
-+#define SCREEN_INIT_ARGS_DECL int index, ScreenPtr pScreen, int argc, char **argv
-+
-+#define BLOCKHANDLER_ARGS_DECL int arg, pointer blockData, pointer pTimeout, pointer pReadmask
-+#define BLOCKHANDLER_ARGS arg, blockData, pTimeout, pReadmask
-+
-+#define CLOSE_SCREEN_ARGS_DECL int scrnIndex, ScreenPtr pScreen
-+#define CLOSE_SCREEN_ARGS scrnIndex, pScreen
-+
-+#define ADJUST_FRAME_ARGS_DECL int arg, int x, int y, int flags
-+
-+#define SWITCH_MODE_ARGS_DECL int arg, DisplayModePtr mode, int flags
-+
-+#define FREE_SCREEN_ARGS_DECL int arg, int flags
-+#define FREE_SCREEN_ARGS(x) (x)->scrnIndex, 0
-+
-+#define VT_FUNC_ARGS_DECL int arg, int flags
-+#define VT_FUNC_ARGS(flags) pScrn->scrnIndex, (flags)
-+
-+#define XF86_ENABLEDISABLEFB_ARG(x) ((x)->scrnIndex)
-+#else
-+#define SCRN_ARG_TYPE ScrnInfoPtr
-+#define SCRN_INFO_PTR(arg1) ScrnInfoPtr pScrn = (arg1)
-+
-+#define SCREEN_ARG_TYPE ScreenPtr
-+#define SCREEN_PTR(arg1) ScreenPtr pScreen = (arg1)
-+
-+#define SCREEN_INIT_ARGS_DECL ScreenPtr pScreen, int argc, char **argv
-+
-+#define BLOCKHANDLER_ARGS_DECL ScreenPtr arg, pointer pTimeout, pointer pReadmask
-+#define BLOCKHANDLER_ARGS arg, pTimeout, pReadmask
-+
-+#define CLOSE_SCREEN_ARGS_DECL ScreenPtr pScreen
-+#define CLOSE_SCREEN_ARGS pScreen
-+
-+#define ADJUST_FRAME_ARGS_DECL ScrnInfoPtr arg, int x, int y
-+#define SWITCH_MODE_ARGS_DECL ScrnInfoPtr arg, DisplayModePtr mode
-+
-+#define FREE_SCREEN_ARGS_DECL ScrnInfoPtr arg
-+#define FREE_SCREEN_ARGS(x) (x)
-+
-+#define VT_FUNC_ARGS_DECL ScrnInfoPtr arg
-+#define VT_FUNC_ARGS(flags) pScrn
-+
-+#define XF86_ENABLEDISABLEFB_ARG(x) (x)
-+
-+#endif
-+
-+#endif
-diff --git a/src/glamo-driver.c b/src/glamo-driver.c
-index b13caae..10b7762 100644
---- a/src/glamo-driver.c
-+++ b/src/glamo-driver.c
-@@ -43,6 +43,7 @@
- 
- #include <sys/mman.h>
- 
-+#include "compat-api.h"
- 
- static Bool debug = 0;
- 
-@@ -68,10 +69,10 @@ static Bool
- GlamoPreInit(ScrnInfoPtr pScrn, int flags);
- 
- static Bool
--GlamoScreenInit(int Index, ScreenPtr pScreen, int argc, char **argv);
-+GlamoScreenInit(SCREEN_INIT_ARGS_DECL);
- 
- static Bool
--GlamoCloseScreen(int scrnIndex, ScreenPtr pScreen);
-+GlamoCloseScreen(CLOSE_SCREEN_ARGS_DECL);
- 
- static Bool
- GlamoCrtcResize(ScrnInfoPtr scrn, int width, int height);
-@@ -86,10 +87,10 @@ static void
- GlamoRestoreHW(ScrnInfoPtr pScren);
- 
- static Bool
--GlamoEnterVT(int scrnIndex, int flags);
-+GlamoEnterVT(VT_FUNC_ARGS_DECL);
- 
- static void
--GlamoLeaveVT(int scrnIndex, int flags);
-+GlamoLeaveVT(VT_FUNC_ARGS_DECL);
- 
- static void
- GlamoLoadColormap(ScrnInfoPtr pScrn, int numColors, int *indices,
-@@ -248,8 +249,8 @@ GlamoUnmapMMIO(ScrnInfoPtr pScrn) {
- }
- 
- static Bool
--GlamoSwitchMode(int scrnIndex, DisplayModePtr mode, int flags) {
--    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
-+GlamoSwitchMode(SWITCH_MODE_ARGS_DECL) {
-+    SCRN_INFO_PTR(arg);
-     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR (pScrn);
-     xf86OutputPtr output = config->output[config->compat_output];
-     Rotation rotation;
-@@ -286,7 +287,7 @@ GlamoFbdevProbe(DriverPtr drv, GDevPtr *devSections, int numDevSections)
- 
- 	for (i = 0; i < numDevSections; i++) {
- 
--		dev = xf86FindOptionValue(devSections[i]->options, "Device");
-+		dev = (char *) xf86FindOptionValue(devSections[i]->options, "Device");
- 		if (fbdevHWProbe(NULL, dev, NULL)) {
- 			int entity;
- 			pScrn = NULL;
-@@ -430,7 +431,7 @@ GlamoPreInit(ScrnInfoPtr pScrn, int flags)
- 
-     pGlamo->pEnt = xf86GetEntityInfo(pScrn->entityList[0]);
- 
--    fb_device = xf86FindOptionValue(pGlamo->pEnt->device->options, "Device");
-+    fb_device = (char *) xf86FindOptionValue(pGlamo->pEnt->device->options, "Device");
- 
-     /* open device */
-     if (!fbdevHWInit(pScrn, NULL, fb_device))
-@@ -523,7 +524,7 @@ GlamoPreInit(ScrnInfoPtr pScrn, int flags)
- 
- 
- static Bool
--GlamoScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
-+GlamoScreenInit(SCREEN_INIT_ARGS_DECL)
- {
-     ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
-     GlamoPtr pGlamo = GlamoPTR(pScrn);
-@@ -545,7 +546,7 @@ GlamoScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- #endif
- 
-     if (NULL == (pGlamo->fbmem = fbdevHWMapVidmem(pScrn))) {
--        xf86DrvMsg(scrnIndex, X_ERROR, "mapping of video memory failed\n");
-+        xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "mapping of video memory failed\n");
-         return FALSE;
-     }
- 
-@@ -556,13 +557,13 @@ GlamoScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
-     /* mi layer */
-     miClearVisualTypes();
-     if (!miSetVisualTypes(pScrn->depth, TrueColorMask, pScrn->rgbBits, TrueColor)) {
--        xf86DrvMsg(scrnIndex, X_ERROR,
-+        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
-                    "visual type setup failed for %d bits per pixel [1]\n",
-                    pScrn->bitsPerPixel);
-         return FALSE;
-     }
-     if (!miSetPixmapDepths()) {
--      xf86DrvMsg(scrnIndex, X_ERROR, "pixmap depth setup failed\n");
-+      xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "pixmap depth setup failed\n");
-       return FALSE;
-     }
- 
-@@ -617,7 +618,7 @@ GlamoScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
-     /* software cursor */
-     miDCInitialize(pScreen, xf86GetPointerScreenFuncs());
- 
--    GlamoEnterVT(scrnIndex, 0);
-+    GlamoEnterVT(VT_FUNC_ARGS(0));
- 
-     xf86CrtcScreenInit(pScreen);
- #if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,5,0,0,0)
-@@ -627,7 +628,7 @@ GlamoScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
-     /* colormap */
-     pGlamo->colormap = NULL;
-     if (!miCreateDefColormap(pScreen)) {
--        xf86DrvMsg(scrnIndex, X_ERROR,
-+        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
-                    "internal error: miCreateDefColormap failed "
-                    "in GlamoScreenInit()\n");
-         return FALSE;
-@@ -652,9 +653,9 @@ GlamoScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
- }
- 
- static Bool
--GlamoCloseScreen(int scrnIndex, ScreenPtr pScreen)
-+GlamoCloseScreen(CLOSE_SCREEN_ARGS_DECL)
- {
--    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
-+    ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
-     GlamoPtr pGlamo = GlamoPTR(pScrn);
- 
-     if (pGlamo->accel)
-@@ -675,7 +676,7 @@ GlamoCloseScreen(int scrnIndex, ScreenPtr pScreen)
- 
-     pScreen->CreateScreenResources = pGlamo->CreateScreenResources;
-     pScreen->CloseScreen = pGlamo->CloseScreen;
--    return (*pScreen->CloseScreen)(scrnIndex, pScreen);
-+    return (*pScreen->CloseScreen)(CLOSE_SCREEN_ARGS);
- }
- 
- static Bool
-@@ -826,8 +827,8 @@ GlamoRestoreHW(ScrnInfoPtr pScrn) {
- }
- 
- static Bool
--GlamoEnterVT(int scrnIndex, int flags) {
--    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
-+GlamoEnterVT(VT_FUNC_ARGS_DECL) {
-+    SCRN_INFO_PTR(arg);
-     GlamoPtr pGlamo = GlamoPTR(pScrn);
- 
-     GlamoSaveHW(pScrn);
-@@ -842,8 +843,8 @@ GlamoEnterVT(int scrnIndex, int flags) {
- }
- 
- static void
--GlamoLeaveVT(int scrnIndex, int flags) {
--    ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
-+GlamoLeaveVT(VT_FUNC_ARGS_DECL) {
-+    SCRN_INFO_PTR(arg);
-     GlamoPtr pGlamo = GlamoPTR(pScrn);
- 
-     if (pGlamo->accel)
--- 
-1.8.0
-
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0004-glamo.h-use-const-for-jbt6k74_state_path.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0004-glamo.h-use-const-for-jbt6k74_state_path.patch
deleted file mode 100644
index a820371..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo/0004-glamo.h-use-const-for-jbt6k74_state_path.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 180a00634f351a09ceabc5695d8e1acc3e585501 Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Fri, 12 Dec 2014 12:00:10 +0100
-Subject: [PATCH] glamo.h: use const for jbt6k74_state_path
-
-* fix build issue with xserver 1.16:
-  glamo-driver.c:501:32: error: assignment discards 'const' qualifier from pointer target type [-Werror]
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- src/glamo.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/glamo.h b/src/glamo.h
-index 5fd5c04..5e072be 100644
---- a/src/glamo.h
-+++ b/src/glamo.h
-@@ -148,7 +148,7 @@ typedef struct {
- #endif
- 
- #ifdef JBT6K74_SET_STATE
--    char *jbt6k74_state_path;
-+    const char *jbt6k74_state_path;
-     char saved_jbt6k74_state[14];
- #endif
- 
--- 
-2.1.3
-
diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
deleted file mode 100644
index 5818d0c..0000000
--- a/meta-oe/recipes-graphics/xorg-driver/xf86-video-glamo_git.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-require recipes-graphics/xorg-driver/xorg-driver-video.inc
-SUMMARY = "X.Org X server -- Glamo display driver with KMS support"
-DEPENDS += "libdrm"
-RDEPENDS_${PN} += "xserver-xorg-module-exa"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=d8cbd99fff773f92e844948f74ef0df8"
-
-PE = "2"
-PV = "1.0.0+gitr${SRCPV}"
-PR = "${INC_PR}.4"
-
-SRC_URI = "git://git.openmoko.org/git/xf86-video-glamo.git;branch=master \
-           file://0001-glamo-kms-driver-drop-unused-xf86_config.patch \
-           file://0001-fix-build-with-KMS-disabled.patch \
-           file://0003-glamo-driver-adapt-to-xserver-0.13-video-API.patch \
-           file://0001-glamo-driver-remove-references-to-mibstore.patch \
-           file://0004-glamo.h-use-const-for-jbt6k74_state_path.patch \
-"
-
-S = "${WORKDIR}/git"
-SRCREV = "cb9ed17035a79e49dde26a1e7e2bc5f10fd8144b"
-
-EXTRA_OECONF = " --disable-kms "
-
-PNBLACKLIST[xf86-video-glamo] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130629/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-kernel/ktap/ktap-module_git.bb b/meta-oe/recipes-kernel/ktap/ktap-module_git.bb
deleted file mode 100644
index 1119d4c..0000000
--- a/meta-oe/recipes-kernel/ktap/ktap-module_git.bb
+++ /dev/null
@@ -1,22 +0,0 @@
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require ktap.inc
-
-SUMMARY = "KTAP is a scripting dynamic tracing tool for Linux"
-
-inherit module
-
-# See https://github.com/ktap/ktap/issues/80
-PNBLACKLIST[ktap-module] ?= "Not compatible with 3.19 kernel - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-# Only build the module
-MAKE_TARGETS = "mod"
-
-# Kernel module packages MUST begin with 'kernel-module-', otherwise
-# multilib image generation can fail.
-#
-# The following line is only necessary if the recipe name does not begin
-# with kernel-module-.
-#
-PKG_${PN} = "kernel-module-${PN}"
-
diff --git a/meta-oe/recipes-kernel/ktap/ktap.inc b/meta-oe/recipes-kernel/ktap/ktap.inc
deleted file mode 100644
index c214a02..0000000
--- a/meta-oe/recipes-kernel/ktap/ktap.inc
+++ /dev/null
@@ -1,26 +0,0 @@
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-HOMEPAGE = "http://www.ktap.org"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://LICENSE-GPL;md5=eb723b61539feef013de476e68b5c50a"
-
-PV = "0.4+gitr${SRCPV}"
-SRCREV = "c8401e07c89cdec9a5f673da4ddb12b7982b522b"
-SRC_URI = "git://github.com/ktap/ktap.git"
-
-S = "${WORKDIR}/git"
-
-# Package config is abused as a general compile time configuration tool.
-
-# Only supports x86_64 for now!. Needs to be enabled for ktap-module too.
-PACKAGECONFIG[ffi] = ""
-
-# Needed to resolve symbols in DSO and for sdt
-PACKAGECONFIG[libelf] = ",,elfutils"
-
-PACKAGECONFIG ?= "libelf"
-
-EXTRA_OEMAKE = " \
-    ${@bb.utils.contains('PACKAGECONFIG', 'libelf', '', 'NO_LIBELF=1', d)} \
-    ${@bb.utils.contains('PACKAGECONFIG', 'ffi', 'FFI=1', '', d)} \
-"
diff --git a/meta-oe/recipes-kernel/ktap/ktap_git.bb b/meta-oe/recipes-kernel/ktap/ktap_git.bb
deleted file mode 100644
index a947b7f..0000000
--- a/meta-oe/recipes-kernel/ktap/ktap_git.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-# Released under the MIT license (see COPYING.MIT for the terms)
-
-require ktap.inc
-
-SUMMARY = "KTAP is a scripting dynamic tracing tool for Linux"
-DEPENDS = "ktap-module"
-
-PNBLACKLIST[ktap] ?= "Depends on blacklisted kernel-module-ktapvm - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-# Only build the userspace app
-EXTRA_OEMAKE += "ktap"
-
-do_install() {
-    install -d ${D}${bindir}
-    install -m 0755 ${S}/ktap ${D}${bindir}/
-}
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-RRECOMMENDS_${PN} = "kernel-module-ktapvm"
diff --git a/meta-oe/recipes-multimedia/minidlna/minidlna.inc b/meta-oe/recipes-multimedia/minidlna/minidlna.inc
deleted file mode 100644
index b333fce..0000000
--- a/meta-oe/recipes-multimedia/minidlna/minidlna.inc
+++ /dev/null
@@ -1,39 +0,0 @@
-DESCRIPTION = "MiniDLNA (aka ReadyDLNA) is server software with the aim of \
-being fully compliant with DLNA/UPnP-AV clients."
-LICENSE = "GPL-2.0|BSD"
-DEPENDS = "ffmpeg flac libav jpeg sqlite3 libexif libogg libid3tag libvorbis"
-
-# because it depends on libav which has commercial flag
-LICENSE_FLAGS = "commercial"
-
-inherit gettext autotools-brokensep update-rc.d systemd
-
-SRC_URI = "git://git.code.sf.net/p/minidlna/git;branch=master;module=git \
-           file://minidlna-daemon.init.d \
-           file://minidlna.service "
-
-S = "${WORKDIR}/git"
-
-# This remove "--exclude=autopoint" option from autoreconf argument to avoid
-# configure.ac:30: error: required file './ABOUT-NLS' not found
-EXTRA_AUTORECONF = ""
-
-do_install_append(){
-    install -d ${D}${sysconfdir}
-    install -m 0755 minidlna.conf ${D}${sysconfdir}
-
-# Systemd script
-    install -d ${D}${nonarch_base_libdir}/systemd/system
-    install -m 0755 ${WORKDIR}/minidlna.service ${D}${nonarch_base_libdir}/systemd/system
-
-# Sysvinit script
-    install -d ${D}${sysconfdir}/init.d
-    install -m 0755 ${WORKDIR}/minidlna-daemon.init.d ${D}${sysconfdir}/init.d/minidlna
-
-}
-
-SYSTEMD_SERVICE_${PN} = "minidlna.service"
-
-INITSCRIPT_NAME = "minidlna"
-INITSCRIPT_PARAMS = "defaults 90"
-
diff --git a/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb b/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb
deleted file mode 100644
index 81d700a..0000000
--- a/meta-oe/recipes-multimedia/minidlna/minidlna_1.1.5.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require ${BPN}.inc
-
-SRCREV = "v1_1_5"
-LIC_FILES_CHKSUM = "file://LICENCE.miniupnpd;md5=b0dabf9d8e0f871554e309d62ead8d2b"
-
-PNBLACKLIST[minidlna] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130630/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-multimedia/mplayer/mplayer2/0001-configure-don-t-disable-ASS-support-when-explicitly-.patch b/meta-oe/recipes-multimedia/mplayer/mplayer2/0001-configure-don-t-disable-ASS-support-when-explicitly-.patch
deleted file mode 100644
index e232595..0000000
--- a/meta-oe/recipes-multimedia/mplayer/mplayer2/0001-configure-don-t-disable-ASS-support-when-explicitly-.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 3541649b711a773aa2e42ac80d9b4c1b36fce23f Mon Sep 17 00:00:00 2001
-From: Martin Jansa <Martin.Jansa at gmail.com>
-Date: Thu, 27 Mar 2014 00:08:54 +0100
-Subject: [PATCH] configure: don't disable ASS support when explicitly enabled
-
-Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
----
- configure | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index 60fd308..2f7df3b 100755
---- a/configure
-+++ b/configure
-@@ -4346,7 +4346,7 @@ fi
- 
- 
- echocheck "SSA/ASS support"
--if test "$_ass" = auto ; then
-+if test "$_ass" = auto -o "$_ass" = yes ; then
-     if pkg_config_add libass ; then
-         _ass=yes
-         def_ass='#define CONFIG_ASS 1'
--- 
-1.9.1
-
diff --git a/meta-oe/recipes-multimedia/mplayer/mplayer2/0001-demux_ogg-partially-port-libtheora-glue-code-to-Theo.patch b/meta-oe/recipes-multimedia/mplayer/mplayer2/0001-demux_ogg-partially-port-libtheora-glue-code-to-Theo.patch
deleted file mode 100644
index b4d9841..0000000
--- a/meta-oe/recipes-multimedia/mplayer/mplayer2/0001-demux_ogg-partially-port-libtheora-glue-code-to-Theo.patch
+++ /dev/null
@@ -1,136 +0,0 @@
-From 0571bb4f1a6e1934ee7e093ce7aa517b9bac8e6a Mon Sep 17 00:00:00 2001
-From: Awais Belal <awais_belal at mentor.com>
-Date: Sun, 17 Jan 2016 14:46:10 +0500
-Subject: [PATCH] demux_ogg: partially port libtheora glue code to Theora 1.0
- API
-
-This partially backports the following commit to allow building
-with gcc-5.x and otherwise fails to find the definition of
-the _ilog function the way it is used.
-
-https://github.com/pigoz/mplayer-svn/commit/85e51408cd00979fc209da8e3a39b6f0e7f325bc
-
-Signed-off-by: Awais Belal <awais_belal at mentor.com>
----
- libmpdemux/demux_ogg.c | 52 ++++++++++++++++++++++++++------------------------
- 1 file changed, 27 insertions(+), 25 deletions(-)
-
-diff --git a/libmpdemux/demux_ogg.c b/libmpdemux/demux_ogg.c
-index 9eea061..9144426 100644
---- a/libmpdemux/demux_ogg.c
-+++ b/libmpdemux/demux_ogg.c
-@@ -50,8 +50,7 @@
- #endif
- 
- #ifdef CONFIG_OGGTHEORA
--#include <theora/theora.h>
--int _ilog (unsigned int); /* defined in many places in theora/lib/ */
-+#include <theora/theoradec.h>
- #endif
- 
- #define BLOCK_SIZE 4096
-@@ -62,9 +61,10 @@ int _ilog (unsigned int); /* defined in many places in theora/lib/ */
-  */
- #ifdef CONFIG_OGGTHEORA
- typedef struct theora_struct_st {
--    theora_state   st;
--    theora_comment cc;
--    theora_info    inf;
-+    th_setup_info *tsi;
-+    th_dec_ctx    *tctx;
-+    th_comment     tc;
-+    th_info        ti;
- } theora_struct_t;
- #endif
- 
-@@ -117,7 +117,7 @@ typedef struct ogg_stream {
-     float   samplerate; /// granulpos 2 time
-     int64_t lastpos;
-     int32_t lastsize;
--    int     keyframe_frequency_force;
-+    int     keyframe_granule_shift;
- 
-     // Logical stream state
-     ogg_stream_state stream;
-@@ -300,11 +300,10 @@ static unsigned char *demux_ogg_read_packet(ogg_stream_t *os, ogg_packet *pack,
-            have theora_state st, until all header packets were passed to the
-            decoder. */
-         if (!pack->bytes || !(*data&0x80)) {
--            int keyframe_granule_shift = _ilog(os->keyframe_frequency_force - 1);
--            int64_t iframemask = (1 << keyframe_granule_shift) - 1;
-+            int64_t iframemask = iframemask = (1 << os->keyframe_granule_shift) - 1;
- 
-             if (pack->granulepos >= 0) {
--                os->lastpos  = pack->granulepos >> keyframe_granule_shift;
-+                os->lastpos  = pack->granulepos >> os->keyframe_granule_shift;
-                 os->lastpos += pack->granulepos & iframemask;
-                 *keyframe = (pack->granulepos & iframemask) == 0;
-             } else {
-@@ -888,14 +887,15 @@ int demux_ogg_open(demuxer_t *demuxer)
- #ifdef CONFIG_OGGTHEORA
-         } else if (pack.bytes >= 7 && !strncmp (&pack.packet[1], "theora", 6)) {
-             int errorCode = 0;
--            theora_info inf;
--            theora_comment cc;
-+            th_info ti;
-+            th_comment tc;
-+            th_setup_info *tsi = NULL;
- 
--            theora_info_init (&inf);
--            theora_comment_init (&cc);
-+            th_info_init (&ti);
-+            th_comment_init (&tc);
- 
--            errorCode = theora_decode_header (&inf, &cc, &pack);
--            if (errorCode) {
-+            errorCode = th_decode_headerin(&ti, &tc, &tsi, &pack);
-+            if (errorCode < 0) {
-                 mp_msg(MSGT_DEMUX, MSGL_ERR,
-                        "Theora header parsing failed: %i \n", errorCode);
-             } else {
-@@ -904,30 +904,32 @@ int demux_ogg_open(demuxer_t *demuxer)
-                 sh_v->bih = calloc(1, sizeof(*sh_v->bih));
-                 sh_v->bih->biSize        = sizeof(*sh_v->bih);
-                 sh_v->bih->biCompression = sh_v->format = FOURCC_THEORA;
--                sh_v->fps = ((double)inf.fps_numerator) / (double)inf.fps_denominator;
--                sh_v->frametime = ((double)inf.fps_denominator) / (double)inf.fps_numerator;
--                sh_v->disp_w = sh_v->bih->biWidth  = inf.frame_width;
--                sh_v->disp_h = sh_v->bih->biHeight = inf.frame_height;
-+                sh_v->fps = ((double)ti.fps_numerator) / (double)ti.fps_denominator;
-+                sh_v->frametime = ((double)ti.fps_denominator) / (double)ti.fps_numerator;
-+                sh_v->i_bps  = ti.target_bitrate / 8;
-+                sh_v->disp_w = sh_v->bih->biWidth  = ti.frame_width;
-+                sh_v->disp_h = sh_v->bih->biHeight = ti.frame_height;
-                 sh_v->bih->biBitCount  = 24;
-                 sh_v->bih->biPlanes    = 3;
-                 sh_v->bih->biSizeImage = ((sh_v->bih->biBitCount / 8) * sh_v->bih->biWidth * sh_v->bih->biHeight);
-                 ogg_d->subs[ogg_d->num_sub].samplerate               = sh_v->fps;
-                 ogg_d->subs[ogg_d->num_sub].theora                   = 1;
--                ogg_d->subs[ogg_d->num_sub].keyframe_frequency_force = inf.keyframe_frequency_force;
-+                ogg_d->subs[ogg_d->num_sub].keyframe_granule_shift   = ti.keyframe_granule_shift;
-                 ogg_d->subs[ogg_d->num_sub].id                       = n_video;
-                 n_video++;
-                 mp_msg(MSGT_DEMUX, MSGL_INFO,
-                        "[Ogg] stream %d: video (Theora v%d.%d.%d), -vid %d\n",
-                        ogg_d->num_sub,
--                       (int)inf.version_major,
--                       (int)inf.version_minor,
--                       (int)inf.version_subminor,
-+                       (int)ti.version_major,
-+                       (int)ti.version_minor,
-+                       (int)ti.version_subminor,
-                        n_video - 1);
-                 if (mp_msg_test(MSGT_HEADER, MSGL_V))
-                     print_video_header(sh_v->bih, MSGL_V);
-             }
--            theora_comment_clear(&cc);
--            theora_info_clear(&inf);
-+            th_comment_clear(&tc);
-+            th_info_clear(&ti);
-+            th_setup_free(tsi);
- #endif /* CONFIG_OGGTHEORA */
-         } else if (pack.bytes >= 4 && !strncmp (&pack.packet[0], "fLaC", 4)) {
-             sh_a = new_sh_audio_aid(demuxer, ogg_d->num_sub, n_audio);
--- 
-1.9.1
-
diff --git a/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb b/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb
deleted file mode 100644
index 1a4ae27..0000000
--- a/meta-oe/recipes-multimedia/mplayer/mplayer2_git.bb
+++ /dev/null
@@ -1,159 +0,0 @@
-SUMMARY = "Open Source multimedia player"
-SECTION = "multimedia"
-HOMEPAGE = "http://www.mplayerhq.hu/"
-DEPENDS = "libvpx libdvdread libtheora virtual/libsdl ffmpeg xsp zlib \
-           libpng jpeg liba52 freetype fontconfig alsa-lib lzo ncurses \
-           libxv virtual/libx11 libass speex faad2 libxscrnsaver"
-
-RDEPENDS_${PN} = "mplayer-common"
-PROVIDES = "mplayer"
-RPROVIDES_${PN} = "mplayer"
-RCONFLICTS_${PN} = "mplayer"
-
-# Depends on xsp, libxv, virtual/libx11, libxscrnsaver
-REQUIRED_DISTRO_FEATURES = "x11"
-
-# because it depends on libpostproc/libav which has commercial flag
-LICENSE_FLAGS = "${@bb.utils.contains('PACKAGECONFIG', 'postproc', 'commercial', '', d)}"
-
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d32239bcb673463ab874e80d47fae504"
-
-SRC_URI = "git://repo.or.cz/mplayer.git \
-    file://0001-configure-don-t-disable-ASS-support-when-explicitly-.patch \
-    file://0001-demux_ogg-partially-port-libtheora-glue-code-to-Theo.patch \
-"
-
-SRCREV = "2c378c71a4d9b1df382db9aa787b646628b4e3f9"
-
-ARM_INSTRUCTION_SET = "arm"
-
-PV = "2.0+gitr${SRCPV}"
-PR = "r13"
-
-PARALLEL_MAKE = ""
-
-S = "${WORKDIR}/git"
-
-FILES_${PN} = "${bindir}/mplayer ${libdir} /usr/etc/mplayer/"
-CONFFILES_${PN} += "/usr/etc/mplayer/input.conf \
-                    /usr/etc/mplayer/example.conf \
-                    /usr/etc/mplayer/codecs.conf \
-"
-
-inherit autotools-brokensep pkgconfig python3native
-
-EXTRA_OECONF = " \
-    --prefix=/usr \
-    --mandir=${mandir} \
-    --target=${SIMPLE_TARGET_SYS} \
-    \
-    --disable-lirc \
-    --disable-lircc \
-    --disable-joystick \
-    --disable-vm \
-    --disable-xf86keysym \
-    --enable-tv \
-    --enable-tv-v4l2 \
-    --disable-tv-bsdbt848 \
-    --enable-rtc \
-    --enable-networking \
-    --disable-smb \
-    --disable-dvdnav \
-    --enable-dvdread \
-    --disable-dvdread-internal \
-    --disable-libdvdcss-internal \
-    --disable-enca \
-    --disable-ftp \
-    --disable-vstream \
-    \
-    --disable-gif \
-    --enable-png \
-    --enable-jpeg \
-    --disable-libcdio \
-    --disable-qtx \
-    --disable-xanim \
-    --disable-real \
-    --disable-xvid \
-    \
-    --enable-speex \
-    --enable-theora \
-    --disable-ladspa \
-    --disable-libdv \
-    --enable-mad \
-    --disable-xmms \
-    --disable-musepack \
-    \
-    --disable-gl \
-    --enable-sdl \
-    --disable-caca \
-    --disable-directx \
-    --disable-dvb \
-    --enable-xv \
-    --disable-vm \
-    --disable-xinerama \
-    --enable-x11 \
-    --disable-directfb \
-    --disable-tga \
-    --disable-pnm \
-    --disable-md5sum \
-    \
-    --enable-alsa \
-    --enable-ossaudio \
-    --disable-pulse \
-    --disable-jack \
-    --disable-openal \
-    --enable-select \
-    --enable-libass \
-    \
-    --extra-libs=' -lXext -lX11 -lvorbis -ltheoradec -lasound ' \
-"
-# -ltheoradec is missing in:
-# libmpcodecs/vd_theora.o: undefined reference to symbol 'theora_decode_init@@libtheora.so.1.0'
-
-EXTRA_OECONF_append_armv6 = " --enable-armv6"
-EXTRA_OECONF_append_armv7a = " --enable-armv6 --enable-neon"
-
-PACKAGECONFIG ??= "vorbis postproc"
-PACKAGECONFIG[mad] = "--enable-mad,--disable-mad,libmad"
-PACKAGECONFIG[a52] = "--enable-liba52,--disable-liba52,liba52"
-PACKAGECONFIG[lame] = ",,lame"
-PACKAGECONFIG[postproc] = ",--disable-libpostproc,libpostproc"
-PACKAGECONFIG[vorbis] = ",--disable-libvorbis,libvorbis"
-PACKAGECONFIG[portaudio] = ",--disable-portaudio,portaudio-v19"
-PACKAGECONFIG[mpg123] = ",--disable-mpg123,mpg123"
-PACKAGECONFIG[directfb] = "--enable-directfb,--disable-directfb,directfb"
-
-FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O4 -ffast-math"
-BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
-
-CFLAGS_append = " -I${S}/libdvdread4 "
-
-do_configure() {
-    sed -i 's|/usr/include|${STAGING_INCDIR}|g' ${S}/configure
-    sed -i 's|/usr/lib|${STAGING_LIBDIR}|g' ${S}/configure
-    sed -i 's|/usr/\S*include[\w/]*||g' ${S}/configure
-    sed -i 's|/usr/\S*lib[\w/]*||g' ${S}/configure
-    sed -i 's|_install_strip="-s"|_install_strip=""|g' ${S}/configure
-    sed -i 's|HOST_CC|BUILD_CC|' ${S}/Makefile
-    sed -i 's|extra_cflags="-I. $extra_cflags"|extra_cflags="-I. -I${STAGING_INCDIR}/directfb $extra_cflags"|g' ${S}/configure
-    export SIMPLE_TARGET_SYS="$(echo ${TARGET_SYS} | sed s:${TARGET_VENDOR}::g)"
-    ./configure ${EXTRA_OECONF}
-
-}
-
-do_compile () {
-    oe_runmake
-}
-
-do_install() {
-    oe_runmake 'DESTDIR=${D}' install-no-man
-    install -d ${D}/usr/etc/mplayer
-    install ${S}/etc/input.conf ${D}/usr/etc/mplayer/
-    install ${S}/etc/example.conf ${D}/usr/etc/mplayer/
-    install ${S}/etc/codecs.conf ${D}/usr/etc/mplayer/
-    [ -e ${D}/usr/lib ] && rmdir ${D}/usr/lib
-}
-
-# http://errors.yoctoproject.org/Errors/Details/40734/
-PNBLACKLIST[mplayer2] ?= "Not compatible with currently used ffmpeg 3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb b/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb
deleted file mode 100644
index 4e821be..0000000
--- a/meta-oe/recipes-navigation/gdal/gdal_1.11.1.bb
+++ /dev/null
@@ -1,114 +0,0 @@
-SUMMARY = "GDAL is a translator library for raster geospatial data formats"
-HOMEPAGE = "http://www.gdal.org/"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=0952e17969fab12227096b5228f23149"
-
-DEPENDS = "proj sqlite3 tiff json-c"
-
-SRC_URI = "ftp://download.osgeo.org/gdal/${PV}/${BP}.tar.xz"
-
-SRC_URI[md5sum] = "2e126d7c6605691d38f3e71b945f5c73"
-SRC_URI[sha256sum] = "20e1042cff15a71038459a299732fb342428aea9912f32df30c85790fcab6302"
-
-inherit autotools-brokensep lib_package binconfig
-
-EXTRA_OECONF = "--without-perl \
-                --without-php \
-                --without-ruby \
-                --without-python \
-                \
-                --without-grass \
-                --without-libgrass \
-                --without-cfitsio \
-                --without-dds \
-                --without-gta \
-                --without-pcidsk \
-                --without-ogdi \
-                --without-fme \
-                --without-hdf4 \
-                --without-hdf5 \
-                --without-pg \
-                --without-jpeg12 \
-                --without-ogdi \
-                --without-netcdf \
-                --without-openjpeg \
-                --without-fgdb \
-                --without-ecw \
-                --without-kakadu \
-                --without-mrsid \
-                --without-jp2mrsid \
-                --without-mrsid_lidar \
-                --without-msg \
-                --without-bsb \
-                --without-grib \
-                --without-mysql \
-                --without-ingres \
-                --without-odbc \
-                --without-dods_root \
-                --without-xml2 \
-                --without-spatialite \
-                --without-pcre \
-                --without-dwgdirect \
-                --without-dwgdirect \
-                --without-idb \
-                --without-sde \
-                --without-sde-version \
-                --without-epsilon \
-                --without-webp \
-                --without-opencl \
-                --without-opencl-include \
-                --without-opencl-lib \
-                --without-freexl \
-                --without-pam \
-                --without-poppler \
-                --without-podofo \
-                --without-podofo-lib \
-                --without-podofo-extra-lib-for-test \
-                --without-static_proj4 \
-                --without-perl \
-                --without-php \
-                --without-ruby \
-                --without-python \
-                --without-java \
-                --without-mdb \
-                --without-jvm-lib \
-                --without-jvm-lib-add-rpath \
-                --without-rasdaman \
-                --without-armadillo \
-                \
-                --with-pcraster=internal \
-                --with-geotiff=internal \
-                \
-                --with-sqlite3=${STAGING_EXECPREFIXDIR} \
-                --with-libtiff=${STAGING_EXECPREFIXDIR} \
-                --with-libjson-c=${STAGING_EXECPREFIXDIR} \
-                --with-expat=${STAGING_EXECPREFIXDIR} \
-"
-
-EXTRA_OEMAKE += "INST_DATA="${datadir}/gdal""
-
-PACKAGECONFIG ?= "geos png jasper"
-PACKAGECONFIG[geos] = "--with-geos,--without-geos,geos"
-PACKAGECONFIG[lzma] = "--with-liblzma,--without-liblzma,xz"
-PACKAGECONFIG[png] = "--with-png,--without-png,libpng"
-PACKAGECONFIG[gif] = "--with-gif,--without-gif,giflib"
-PACKAGECONFIG[jpeg] = "--with-jpeg,--without-jpeg,jpeg"
-PACKAGECONFIG[z] = "--with-libz,--without-libz,zlib"
-PACKAGECONFIG[jasper] = "--with-jasper,--without-jasper,jasper"
-PACKAGECONFIG[curl] = "--with-curl,--without-curl,curl"
-
-do_configure_prepend () {
-    # The configure script has many hardcoded paths to search
-    # for the library headers when using external libraries,
-    # workaround it.
-    sed -e 's,/usr/include,NON_EXISTENT_DIR,g' \
-        -e 's,/usr/lib,NON_EXISTENT_DIR,g' \
-        -i ${S}/configure.in
-}
-
-FILES_${PN} += "${libdir}/gdalplugins"
-
-# | gdalserver.c:124:21: error: storage size of 'sHints' isn't known
-# |      struct addrinfo sHints;
-# |                      ^
-PNBLACKLIST[gdal] ?= "BROKEN: fails to build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb b/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb
deleted file mode 100644
index 534ba3b..0000000
--- a/meta-oe/recipes-sato/claws-mail/claws-mail_3.9.0.bb
+++ /dev/null
@@ -1,56 +0,0 @@
-SECTION = "x11/network"
-SUMMARY = "Mail user agent"
-DEPENDS = "gtk+ libetpan openssl aspell curl libgcrypt"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e059bde2972c1790af786f3e86bac22e"
-
-PNBLACKLIST[claws-mail] ?= "depends on blacklisted libetpan - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-inherit autotools pkgconfig gettext
-
-# translation patch: http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=1774
-SRC_URI = "\
-        ${SOURCEFORGE_MIRROR}/project/claws-mail/Claws%20Mail/${PV}/claws-mail-${PV}.tar.bz2;name=archive "
-SRC_URI[archive.md5sum] = "4c5ac7b21f0ed17d0f6404124c2229a4"
-SRC_URI[archive.sha256sum] = "ed70975a5056b3ffc4fe6e977f0d9606febc1499763c090241b029a73ff24e65"
-
-do_configure_append() {
-    cd ${S}/po ; for PO in *.po ; do MO=`echo $PO | sed s/\\.po//`.gmo ; if ! test -f $MO ; then msgfmt $PO -o $MO ; fi ; done; cd ${B}
-}
-
-PACKAGECONFIG ??= "startup-notification dbus"
-PACKAGECONFIG[enchant] = "--enable-enchant,--disable-enchant,enchant"
-PACKAGECONFIG[startup-notification] = "--enable-startup-notification,--disable-startup-notification,startup-notification"
-PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus dbus-glib"
-PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap,openldap"
-
-# FIXME: maemo builds may want --enable-maemo
-# FIXME: some platforms may want --enable-generic-umpc
-EXTRA_OECONF = " \
-    --disable-manual \
-    --disable-crash-dialog \
-    --disable-jpilot \
-    --disable-trayicon-plugin \
-    --disable-spamassassin-plugin \
-    --disable-bogofilter-plugin \
-    --disable-pgpcore-plugin \
-    --disable-pgpmime-plugin \
-    --disable-pgpinline-plugin \
-    --disable-dillo-viewer-plugin \
-    --disable-valgrind \
-"
-
-# Remove enchant references:
-do_install_prepend() {
-    sed -i -e 's:${STAGING_INCDIR}:${includedir}:g;s:${STAGING_LIBDIR}:${libdir}:g' claws-mail.pc
-}
-
-# Work-around broken GPE icon lookup:
-do_install_append() {
-    rm -r ${D}${datadir}/icons
-    install -d ${D}${datadir}/pixmaps
-    install -m 0644 ${S}/claws-mail.png ${D}${datadir}/pixmaps/
-    sed -i 's/Icon=[^.]*$/&.png/' ${D}${datadir}/applications/claws-mail.desktop
-}
-
-RSUGGESTS_${PN} = "claws-plugin-gtkhtml2-viewer claws-plugin-mailmbox claws-plugin-rssyl"
diff --git a/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer/configure.patch b/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer/configure.patch
deleted file mode 100644
index 222a796..0000000
--- a/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer/configure.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-Index: gtkhtml2_viewer-0.31/configure.ac
-===================================================================
---- gtkhtml2_viewer-0.31.orig/configure.ac	2011-08-27 08:08:55.000000000 +0000
-+++ gtkhtml2_viewer-0.31/configure.ac	2014-07-18 07:28:42.769518618 +0000
-@@ -1,33 +1,27 @@
- AC_PREREQ(2.60)
--AC_INIT(src/gtkhtml2_viewer.c)
-+
-+dnl plugin version
-+m4_define([plugin_major_version],[0])
-+m4_define([plugin_minor_version],[31])
-+m4_define([plugin_micro_version],[0])
-+m4_define([plugin_version], [plugin_major_version.plugin_minor_version.plugin_micro_version])
-+
-+AC_INIT(gtkhml2_viewer, plugin_version)
-+AC_CONFIG_SRCDIR(src/gtkhtml2_viewer.c)
- AC_CONFIG_AUX_DIR(config)
- AM_MAINTAINER_MODE
- 
- PACKAGE=gtkhtml2_viewer
- 
--dnl plugin version
--MAJOR_VERSION=0
--MINOR_VERSION=31
--MICRO_VERSION=0
-+MAJOR_VERSION=plugin_major_version
-+MINOR_VERSION=plugin_minor_version
-+MICRO_VERSION=plugin_micro_version
- EXTRA_VERSION=0
--
--if test \( $EXTRA_VERSION -eq 0 \); then
--    if test \( $MICRO_VERSION -eq 0 \); then
--        VERSION=${MAJOR_VERSION}.${MINOR_VERSION} 
--    else
--		VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}
--    fi
--else
--    if test \( $MICRO_VERSION -eq 0 \); then
--        VERSION=${MAJOR_VERSION}.${MINOR_VERSION}cvs${EXTRA_VERSION}
--    else
--		VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}cvs${EXTRA_VERSION}
--    fi
--fi
-+VERSION=plugin_version
- 
- AC_CANONICAL_SYSTEM
- 
--AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
-+AM_INIT_AUTOMAKE([foreign no-define])
- AC_CONFIG_HEADERS(config.h)
- AC_DEFINE_UNQUOTED(PLUGINVERSION, "$VERSION", [plugin version])
- 
diff --git a/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb b/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb
deleted file mode 100644
index 29b41be..0000000
--- a/meta-oe/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.31.bb
+++ /dev/null
@@ -1,24 +0,0 @@
-SECTION = "x11/network"
-SUMMARY = "Mail user agent plugins"
-DEPENDS = "claws-mail gtkhtml2 curl"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=977f04a8048c04684e521c06e2844a94"
-
-PNBLACKLIST[claws-plugin-gtkhtml2-viewer] ?= "depends on blacklisted claws-mail - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-PR = "r1"
-
-SRC_URI = "http://www.claws-mail.org/downloads/plugins_obsolete/gtkhtml2_viewer-${PV}.tar.gz \
-           file://configure.patch"
-SRC_URI[md5sum] = "a6c9dfa6f969ccd844796a5724b52167"
-SRC_URI[sha256sum] = "4d41f6d961efaac0f51705e5052bac732bc0bdafee2ef2082a9cf9d89f183ae5"
-
-inherit autotools pkgconfig gettext
-
-S = "${WORKDIR}/gtkhtml2_viewer-${PV}"
-
-FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
-FILES_${PN}-dbg += "${libdir}/claws-mail/plugins/.debug"
-FILES_${PN}-dev += "${libdir}/claws-mail/plugins/*.la"
-FILES_${PN}-staticdev = "${libdir}/claws-mail/plugins/*.a"
-
diff --git a/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb b/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb
deleted file mode 100644
index 986b5d4..0000000
--- a/meta-oe/recipes-sato/claws-mail/claws-plugin-mailmbox_1.15.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SECTION = "x11/network"
-SUMMARY = "Mail user agent plugins"
-DEPENDS = "claws-mail"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-
-PNBLACKLIST[claws-plugin-mailmbox] ?= "depends on blacklisted claws-mail - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "http://www.claws-mail.org/downloads/plugins_obsolete/mailmbox-${PV}.tar.gz"
-SRC_URI[md5sum] = "7f72c68e6e1a8768f1247f455fd20b62"
-SRC_URI[sha256sum] = "633f7835261c88a0aa06de38553ac935a1799a7128120963a7fa87ace01dac18"
-
-inherit autotools pkgconfig
-
-S = "${WORKDIR}/mailmbox-${PV}"
-
-FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
-FILES_${PN}-dbg += "${libdir}/claws-mail/plugins/.debug"
-FILES_${PN}-dev += "${libdir}/claws-mail/plugins/*.la"
-FILES_${PN}-staticdev = "${libdir}/claws-mail/plugins/*.a"
diff --git a/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl/configure.patch b/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl/configure.patch
deleted file mode 100644
index a7a38f3..0000000
--- a/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl/configure.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-Index: rssyl-0.34/configure.ac
-===================================================================
---- rssyl-0.34.orig/configure.ac	2014-07-18 07:37:28.981532959 +0000
-+++ rssyl-0.34/configure.ac	2014-07-18 07:39:45.881536690 +0000
-@@ -1,5 +1,13 @@
-+
-+dnl plugin version
-+m4_define([plugin_major_version],[0])
-+m4_define([plugin_minor_version],[34])
-+m4_define([plugin_micro_version],[0])
-+m4_define([plugin_version], [plugin_major_version.plugin_minor_version.plugin_micro_version])
-+
- AC_PREREQ(2.60)
--AC_INIT(src/plugin.c)
-+AC_INIT(rssyl, plugin_version)
-+AC_CONFIG_SRCDIR(src/plugin.c)
- AC_CONFIG_AUX_DIR(config)
- AM_MAINTAINER_MODE
- AC_CONFIG_HEADERS(config.h)
-@@ -7,28 +15,15 @@
- PACKAGE=rssyl
- 
- dnl plugin version
--MAJOR_VERSION=0
--MINOR_VERSION=34
--MICRO_VERSION=0
-+MAJOR_VERSION=plugin_major_version
-+MINOR_VERSION=plugin_minor_version
-+MICRO_VERSION=plugin_micro_version
- EXTRA_VERSION=0
--
--if test \( $EXTRA_VERSION -eq 0 \); then
--    if test \( $MICRO_VERSION -eq 0 \); then
--        VERSION=${MAJOR_VERSION}.${MINOR_VERSION} 
--    else
--		VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}
--    fi
--else
--    if test \( $MICRO_VERSION -eq 0 \); then
--        VERSION=${MAJOR_VERSION}.${MINOR_VERSION}cvs${EXTRA_VERSION}
--    else
--		VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}cvs${EXTRA_VERSION}
--    fi
--fi
-+VERSION=plugin_version
- 
- AC_CANONICAL_SYSTEM
- 
--AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
-+AM_INIT_AUTOMAKE([foreign no-define])
- AC_DEFINE_UNQUOTED(PLUGINVERSION, "$VERSION", [plugin version])
- 
- AC_PROG_CC
diff --git a/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb b/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb
deleted file mode 100644
index eec9a2d..0000000
--- a/meta-oe/recipes-sato/claws-mail/claws-plugin-rssyl_0.34.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SECTION = "x11/network"
-SUMMARY = "Mail user agent plugins"
-DEPENDS = "claws-mail libxml2 curl glib-2.0 gtk+"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=0c2348e0a084e573f0220f5e45d8097e"
-
-PNBLACKLIST[claws-plugin-rssyl] ?= "depends on blacklisted claws-mail - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "http://www.claws-mail.org/downloads/plugins_obsolete/rssyl-${PV}.tar.gz \
-           file://configure.patch"
-SRC_URI[md5sum] = "49b45608e8d160b3625d3d50016ec2ca"
-SRC_URI[sha256sum] = "2e96a1cd6a1a5bb7f86cd2eb48f6e174665957fafe1f3b1e8361aac3bb967f79"
-inherit autotools pkgconfig gettext
-
-S = "${WORKDIR}/rssyl-${PV}"
-
-FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
-FILES_${PN}-dbg += "${libdir}/claws-mail/plugins/.debug"
-FILES_${PN}-dev += "${libdir}/claws-mail/plugins/*.la"
-FILES_${PN}-staticdev = "${libdir}/claws-mail/plugins/*.a"
diff --git a/meta-oe/recipes-sato/claws-mail/sylpheed/glib-2.32.patch b/meta-oe/recipes-sato/claws-mail/sylpheed/glib-2.32.patch
deleted file mode 100644
index 1520e57..0000000
--- a/meta-oe/recipes-sato/claws-mail/sylpheed/glib-2.32.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- sylpheed-2.7.1.orig/libsylph/defs.h	2009-06-10 09:55:46.000000000 +0200
-+++ sylpheed-2.7.1/libsylph/defs.h	2012-05-06 08:28:27.514746256 +0200
-@@ -24,8 +24,6 @@
- #  include "config.h"
- #endif
- 
--#include <glibconfig.h>
--
- #ifdef G_OS_WIN32
- #  include <glib/gwin32.h>
- #endif
diff --git a/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb b/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb
deleted file mode 100644
index 978d777..0000000
--- a/meta-oe/recipes-sato/claws-mail/sylpheed_2.7.1.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SECTION = "x11/network"
-SUMMARY = "Mail user agent"
-DEPENDS = "gtk+ gpgme gnutls"
-LICENSE = "GPLv2 & LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4 \
-                    file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1"
-
-PR = "r2"
-
-SRC_URI = "http://sylpheed.sraoss.jp/sylpheed/v2.7/sylpheed-${PV}.tar.bz2 \
-    file://glib-2.32.patch \
-"
-SRC_URI[md5sum] = "1f470525c1fbe53253813a0978c18228"
-SRC_URI[sha256sum] = "8bb6457db4e2eea1877b487d9ac8513546372db9a6a2e4271d11229f4af84e23"
-
-FILES_${PN} += "${datadir}/pixmaps ${datadir}/applications"
-FILES_${PN}-doc += "${datadir}"
-
-EXTRA_OECONF = "--disable-ssl"
-
-CFLAGS += "-D_GNU_SOURCE"
-
-do_configure_prepend() {
-    mkdir -p m4
-    for i in $(find ${S} -name "Makefile.am") ; do
-        sed -i s:'-I$(includedir)'::g $i
-    done
-}
-
-inherit autotools pkgconfig
-
-
-PNBLACKLIST[sylpheed] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130651/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb b/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb
deleted file mode 100644
index c8c54a4..0000000
--- a/meta-oe/recipes-support/apcupsd/apcupsd_3.14.10.bb
+++ /dev/null
@@ -1,42 +0,0 @@
-SUMMARY = "Apcupsd a daemon for controlling APC UPSes"
-
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=c12853cc7fdf20d17b4fddefd26b7802"
-
-SRC_URI = "http://garr.dl.sourceforge.net/project/apcupsd/apcupsd%20-%20Stable/3.14.10/apcupsd-${PV}.tar.gz"
-SRC_URI[md5sum] = "5928822d855c5cf7ac29655e3e0b8c23"
-SRC_URI[sha256sum] = "0707b5ec9916fbde9e44eb8d18037c8d8f75dfd6aeef51aba5487e189eef2032"
-
-PNBLACKLIST[apcupsd] ?= "BROKEN: doesn't build with B!=S - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-inherit autotools
-
-LD = "${CXX}"
-
-EXTRA_OECONF = "--without-x \
-                --enable-usb \
-                --with-distname=${DISTRO}"
-
-do_configure() {
-    export topdir=${S}
-    cp -R --no-dereference --preserve=mode,links -v ${S}/autoconf/configure.in ${S}
-
-    if ! [ -d ${S}/platforms/${DISTRO} ] ; then
-        cp -R --no-dereference --preserve=mode,links -v ${S}/platforms/unknown ${S}/platforms/${DISTRO}
-    fi
-
-    gnu-configize --force
-    # install --help says '-c' is an ignored option, but it turns out that the argument to -c isn't ignored, so drop the complete '-c path/to/strip' line
-    sed -i -e 's:$(INSTALL_PROGRAM) $(STRIP):$(INSTALL_PROGRAM):g' ${S}/autoconf/targets.mak
-    # Searching in host dirs triggers the QA checks
-    sed -i -e 's:-I/usr/local/include::g' -e 's:-L/usr/local/lib64::g' -e 's:-L/usr/local/lib::g' ${S}/configure
-
-    # m4 macros are missing, using autotools_do_configure leads to linking errors with gethostname_re
-    oe_runconf
-}
-
-do_install_append() {
-    rm ${D}${datadir}/hal -rf
-}
-
-
diff --git a/meta-oe/recipes-support/emacs/emacs-23.4/nostdlib-unwind.patch b/meta-oe/recipes-support/emacs/emacs-23.4/nostdlib-unwind.patch
deleted file mode 100644
index 4200301..0000000
--- a/meta-oe/recipes-support/emacs/emacs-23.4/nostdlib-unwind.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix linking problem:
-undefined reference to `__aeabi_unwind_cpp_pr0'
-undefined reference to `__aeabi_unwind_cpp_pr1'
-Index: emacs/src/Makefile.in
-===================================================================
---- emacs.orig/src/Makefile.in	2008-08-16 14:20:18.000000000 +0000
-+++ emacs/src/Makefile.in	2008-08-16 14:51:25.000000000 +0000
-@@ -443,7 +443,7 @@
-    ask GCC explicitly where to find libgcc.a.  */
- 
- #ifndef LINKER
--#define LINKER $(CC) -nostdlib
-+#define LINKER $(CC) -nostdlib -lgcc_s
- #endif
- 
- #ifndef LIB_GCC
diff --git a/meta-oe/recipes-support/emacs/emacs-23.4/use-qemu.patch b/meta-oe/recipes-support/emacs/emacs-23.4/use-qemu.patch
deleted file mode 100644
index c15207a..0000000
--- a/meta-oe/recipes-support/emacs/emacs-23.4/use-qemu.patch
+++ /dev/null
@@ -1,104 +0,0 @@
-Upstream-Status: Inappropriate [embedded specific]
-
-diff -uNr emacs-23.4/Makefile.in emacs-23.4.new/Makefile.in
---- emacs-23.4/Makefile.in	2012-01-11 13:35:01.000000000 +0100
-+++ emacs-23.4.new/Makefile.in	2012-07-31 00:54:07.223590866 +0200
-@@ -336,7 +336,7 @@
- # all preloaded elisp files, and only then dump the actual src/emacs, which
- # is not wrong, but is overkill in 99.99% of the cases.
- src: Makefile FRC
--	boot=bootstrap-emacs$(EXEEXT);                         \
-+	boot=${QEMU} bootstrap-emacs$(EXEEXT);                         \
- 	if [ ! -x "src/$$boot" ]; then                                     \
- 	    cd $@; $(MAKE) all $(MFLAGS)                                   \
- 	      CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}'         \
-diff -uNr emacs-23.4/leim/Makefile.in emacs-23.4.new/leim/Makefile.in
---- emacs-23.4/leim/Makefile.in	2012-01-11 13:35:01.000000000 +0100
-+++ emacs-23.4.new/leim/Makefile.in	2012-07-31 00:54:07.179590866 +0200
-@@ -51,7 +51,7 @@
- 
- # How to run Emacs.
- RUN-EMACS = EMACSLOADPATH=$(buildlisppath) LC_ALL=C \
--	${BUILT-EMACS} -batch --no-init-file --no-site-file --multibyte
-+	${QEMU} ${BUILT-EMACS} -batch --no-init-file --no-site-file --multibyte
- 
- # Subdirectories to be made if ${srcdir} is different from the current
- # directory.
-diff -uNr emacs-23.4/lib-src/Makefile.in emacs-23.4.new/lib-src/Makefile.in
---- emacs-23.4/lib-src/Makefile.in	2012-01-11 13:35:01.000000000 +0100
-+++ emacs-23.4.new/lib-src/Makefile.in	2012-07-31 00:54:07.180590866 +0200
-@@ -23,7 +23,7 @@
- SHELL = /bin/sh
- 
- # Following ../lisp/Makefile.in.
--EMACS = ../src/emacs
-+EMACS = ${QEMU} ../src/emacs
- EMACSOPT = -batch --no-site-file --multibyte
- 
- # ==================== Things `configure' will edit ====================
-@@ -372,7 +372,7 @@
-    clobbered too.  */
- test-distrib${EXEEXT}: ${srcdir}/test-distrib.c
- 	$(CC) ${ALL_CFLAGS} -o test-distrib ${srcdir}/test-distrib.c
--	./test-distrib ${srcdir}/testfile
-+	${QEMU} ./test-distrib ${srcdir}/testfile
- 
- /* We need the following in order to create a <getopt.h> when the system
-    does not have one that works with the given compiler.  */
-diff -uNr emacs-23.4/lisp/Makefile.in emacs-23.4.new/lisp/Makefile.in
---- emacs-23.4/lisp/Makefile.in	2012-01-11 13:35:01.000000000 +0100
-+++ emacs-23.4.new/lisp/Makefile.in	2012-07-31 00:54:07.195590866 +0200
-@@ -26,8 +26,7 @@
- # You can specify a different executable on the make command line,
- # e.g. "make EMACS=../src/emacs ...".
- 
--EMACS = ../src/emacs
--
-+EMACS = "${QEMU} ../src/emacs"
- # Command line flags for Emacs.  This must include --multibyte,
- # otherwise some files will not compile.
- 
-diff -uNr emacs-23.4/src/Makefile.in emacs-23.4.new/src/Makefile.in
---- emacs-23.4/src/Makefile.in	2012-01-12 11:27:54.000000000 +0100
-+++ emacs-23.4.new/src/Makefile.in	2012-07-31 00:55:30.344593847 +0200
-@@ -482,7 +482,7 @@
-    this with the shell''s ``for'' construct.
-    Note that some people do not have '.'  in their paths, so we must
-    use ./prefix-args.  */
--#define YMF_PASS_LDFLAGS(flags) `./prefix-args -Xlinker flags`
-+#define YMF_PASS_LDFLAGS(flags) `${QEMU} ./prefix-args -Xlinker flags`
- #else
- #define YMF_PASS_LDFLAGS(flags) flags
- #endif
-@@ -919,9 +919,9 @@
-    $(GNULIB_VAR) LIB_MATH LIB_STANDARD $(GNULIB_VAR)
- 
- #ifdef HAVE_SHM
--RUN_TEMACS = `/bin/pwd`/temacs -nl
-+RUN_TEMACS = ${QEMU} temacs -nl
- #else
--RUN_TEMACS = `/bin/pwd`/temacs
-+RUN_TEMACS = ${QEMU} temacs
- #endif
- 
- all: emacs${EXEEXT} $(OTHER_FILES)
-@@ -936,7 +936,7 @@
- 	@: This new Emacs is as functional and more efficient then
- 	@: bootstrap-emacs, so let us replace it.
- 	-ln -f emacs${EXEEXT} bootstrap-emacs${EXEEXT}
--	-./emacs -q -batch -f list-load-path-shadows
-+	-${QEMU} ./emacs -q -batch -f list-load-path-shadows
- #endif /* ! defined (CANNOT_DUMP) */
- 
- /* We run make-docfile twice because the command line may get too long
-@@ -954,8 +954,8 @@
-    only in order to reduce the command line length.  --Stef  */
- ${etc}DOC: ${libsrc}make-docfile${EXEEXT} ${obj} ${lisp} ${SOME_MACHINE_LISP}
- 	-rm -f ${etc}DOC
--	${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC
--	${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp}
-+	${QEMU}${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC
-+	${QEMU} ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp}
- 
- ${libsrc}make-docfile${EXEEXT}:
- 	cd ${libsrc}; ${MAKE} ${MFLAGS} make-docfile${EXEEXT}
diff --git a/meta-oe/recipes-support/emacs/emacs.inc b/meta-oe/recipes-support/emacs/emacs.inc
deleted file mode 100644
index 5b905f9..0000000
--- a/meta-oe/recipes-support/emacs/emacs.inc
+++ /dev/null
@@ -1,147 +0,0 @@
-DESCRIPTION = "Emacs"
-HOMEPAGE = "http://www.gnu.org/software/emacs/"
-LICENSE = "GPLv3"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
-SECTION = "editor"
-# and it needs to run some generated binaries..
-DEPENDS += "qemu-native"
-
-DEPENDS +=" liblockfile"
-
-X11DEPENDS = " \
-    libice libsm atk cairo dbus expat libffi fontconfig freetype gconf giflib \
-    jpeg xz pixman libpng librsvg tiff libcroco \
-    libx11 libxau libxcomposite libxcursor libxdamage libxdmcp libxext libxfixes \
-    libxft libxpm libxrandr libxrender \
-    gdk-pixbuf glib-2.0 gtk+ pango libxcb harfbuzz icu \
-"
-
-EXTRA_OECONF =  "--without-sound --with-crt-dir=${STAGING_LIBDIR} "
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
-PACKAGECONFIG[x11] = "--with-x-toolkit=gtk,--without-x --without-dbus,${X11DEPENDS}"
-
-
-inherit autotools
-
-PACKAGES =+ "${PN}-el"
-
-FILES_${PN}-el = "${datadir}/emacs/*/*/*.el.gz \
-                  ${datadir}/emacs/*/*/*/*.el.gz"
-
-FILES_${PN} += "${datadir}/emacs ${datadir}/icons"
-
-FILES_${PN}-dbg += "${libexecdir}/emacs/*/*/.debug ${datadir}/emacs/*/*/.debug"
-
-TREEDIR = "${WORKDIR}/qemu-treedir"
-
-QEMUARCH= "${TARGET_ARCH}"
-QEMUARCH_x86 = "i386"
-
-# Large stack is required at least on x86_64 host, otherwise random segfaults appear:
-QEMU = "qemu-${QEMUARCH} ${QEMU_OPTIONS} -s 1048576 -L ${TREEDIR} "
-
-export LOGNAME = "$(whoami)"
-
-do_compile_prepend() {
-    sed -i ':1;s:\(START.* \|LIB_STANDARD.* \|LIBES.* \)/usr/lib:\1${STAGING_LIBDIR}:;t1' ${S}/src/s/gnu-linux.h `find "${S}" -name Makefile`
-    export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:${TOOLCHAIN_PATH}/${TARGET_SYS}/lib"
-# Ugly hack, see files/use-qemu.patch for more:
-    ln -sf ../src/emacs lisp/emacs
-    ln -sf ../src/emacs lib-src/emacs
-    ln -sf ../src/emacs leim/emacs
-#copy STAGING_DIR_TARGET and libgcc_s.so* to WORKDIR/qemu-treedir #copied code from glibc-package.bbclass
-    treedir=${TREEDIR}
-    if [ -e $treedir ];then
-        rm -rf $treedir
-    fi
-
-    mkdir -p $treedir/${base_libdir}
-
-    if [ -f ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so ]; then
-        cp -pPR ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so $treedir/${base_libdir}
-    fi
-    if [ -f ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so.* ]; then
-        cp -pPR ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so.* $treedir/${base_libdir}
-    fi
-    # stupid hack, but without it, it tries to use /usr/lib/libc.so from host and fails
-    # temacs: error while loading shared libraries: /usr/lib/libc.so: ELF file version does not match current one
-    if [ ! -f $treedir/${base_libdir}/libc.so ]; then
-        ln -s libc.so.6 $treedir/${base_libdir}/libc.so
-    fi
-
-    # copy only as much stuff as we need
-    # before: 5.5G   ../../qemu-treedir/
-    # after:   17M   ../../qemu-treedir/
-    cp -pPR \
-    ${STAGING_DIR_TARGET}/${base_libdir}/ld-* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libc.* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libc-* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libm-* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libm.* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libtinfo.so.* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libresolv* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libdl* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/librt* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libgcc_s.so.* \
-    ${STAGING_DIR_TARGET}/${base_libdir}/libpthread* $treedir/${base_libdir}/
-
-    if [ ! -z "${@bb.utils.filter('PACKAGECONFIG', 'x11', d)}" ]; then
-        echo "X11 build enabled"
-        # copy only as much stuff as we need
-        # before: 5.5G   ../../qemu-treedir/
-        # after:   86M   ../../qemu-treedir/
-        cp -pPR \
-        ${STAGING_DIR_TARGET}/${base_libdir}/libuuid.so.* \
-        ${STAGING_DIR_TARGET}/${base_libdir}/libz.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libICE.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libSM.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libatk-1.0.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libcairo.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libdbus-1.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libdbus-glib-1.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libexpat.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libffi.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libfontconfig.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libfreetype.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libgconf-2.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libgif.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libjpeg.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/liblzma.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libpixman-1.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libpng1*.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/librsvg-2.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libstdc++.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libtiff.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libxml2.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libcroco-0.6.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libharfbuzz.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libicule.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libicuuc.so.* \
-        ${STAGING_DIR_TARGET}/${libdir}/libicudata.so.* $treedir/${base_libdir}/
-
-        # X11 Xau Xcomposite Xcursor Xdamage Xdmcp Xext Xfixes Xft Xpm Xrandr Xrender
-        cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libX*.so.* $treedir/${base_libdir}/
-
-        # gdk-x11 gdk_pixbuf gio glib gmodule gobject gthread gtk-x11
-        cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libg*-2.0.so.* $treedir/${base_libdir}/
-
-        # pango pangocairo pangoft2
-        cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libpango*-1.0.so.* $treedir/${base_libdir}/
-
-        # xcb-render xcb-shm xcb
-        cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libxcb*.so.* $treedir/${base_libdir}/
-    fi
-}
-
-do_install_append() {
-    # freaks package.bbclass and whole bitbake call returns error code
-    # ERROR: runstrip: ''arm-oe-linux-gnueabi-strip'  '/var/lib/jenkins/jobs/shr-core-branches/workspace/shr-core/tmp-eglibc/work/armv4t-oe-linux-gnueabi/emacs-23.4-r0/package/usr/share/emacs/23.4/etc/tutorials/TUTORIAL.ko'' strip command failed
-    mv ${D}${datadir}/${BPN}/${PV}/etc/tutorials/TUTORIAL.ko ${D}${datadir}/${BPN}/${PV}/etc/tutorials/TUTORIAL.KO
-    # Info dir listing isn't interesting at this point so remove it if it exists.
-    if [ -e "${D}${infodir}/dir" ]; then
-        rm -f ${D}${infodir}/dir
-    fi
-}
-
-EXTRA_OEMAKE += 'QEMU="${QEMU}"'
diff --git a/meta-oe/recipes-support/emacs/emacs_23.4.bb b/meta-oe/recipes-support/emacs/emacs_23.4.bb
deleted file mode 100644
index 3388ff0..0000000
--- a/meta-oe/recipes-support/emacs/emacs_23.4.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require emacs.inc
-
-PR = "r4"
-
-PNBLACKLIST[emacs] ?= "qemu: uncaught target signal 11 (Segmentation fault) - core dumped - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "${GNU_MIRROR}/emacs/emacs-${PV}.tar.gz;name=tarball \
-           file://use-qemu.patch \
-           file://nostdlib-unwind.patch \
-"
-SRC_URI[tarball.md5sum] = "34405165fcd978fbc8b304cbd99ccf4f"
-SRC_URI[tarball.sha256sum] = "b9a2b8434052771f797d2032772eba862ff9aa143029efc72295170607289c18"
diff --git a/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb b/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
deleted file mode 100644
index 14ce57a..0000000
--- a/meta-oe/recipes-support/farsight/farsight2_0.0.22.bb
+++ /dev/null
@@ -1,34 +0,0 @@
-DESCRIPTION = "FarSight is an audio/video conferencing framework specifically designed for Instant Messengers."
-HOMEPAGE = "http://farsight.sf.net"
-SRC_URI = "http://farsight.freedesktop.org/releases/farsight2/${BP}.tar.gz"
-
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24"
-
-PR = "r3"
-
-DEPENDS = "libnice glib-2.0 libxml2 zlib dbus gstreamer gst-plugins-base"
-
-inherit autotools pkgconfig
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[gupnp] = "--enable-gupnp,--disable-gupnp,gupnp-igd"
-
-EXTRA_OECONF = " \
-    --disable-debug \
-    --disable-gtk-doc \
-    --disable-python \
-"
-
-FILES_${PN} += "${libdir}/*/*.so"
-FILES_${PN}-dev += "${libdir}/*/*.la"
-FILES_${PN}-staticdev += "${libdir}/*/*.a"
-FILES_${PN}-dbg += "${libdir}/*/.debug"
-
-
-SRC_URI[md5sum] = "e1f540cf3ebab06c3d7db1f46b44ac88"
-SRC_URI[sha256sum] = "3ae59aa61a8071c9fad111e5fd606aabc27961eb4192f8729987a27dae6b3974"
-
-PNBLACKLIST[farsight2] ?= "Depends on blacklisted gstreamer - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-PNBLACKLIST[farsight2] ?= "Depends on blacklisted libnice - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-PNBLACKLIST[farsight2] ?= "Depends on blacklisted gst-plugins-base - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/fftw/benchfft_3.1.bb b/meta-oe/recipes-support/fftw/benchfft_3.1.bb
deleted file mode 100644
index 49cc270..0000000
--- a/meta-oe/recipes-support/fftw/benchfft_3.1.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "FFTW benchmarks"
-SECTION = "libs"
-LICENSE = "GPLv2"
-
-# single precision fftw is called fftwf
-DEPENDS = "virtual/fftw"
-
-SRC_URI = "http://www.fftw.org/benchfft/benchfft-${PV}.tar.gz"
-
-EXTRA_OECONF = "--disable-fortran --enable-single --enable-shared"
-
-inherit autotools pkgconfig
-
-do_compile_prepend() {
-    sed -i -e 's:all-recursive:$(RECURSIVE_TARGETS):g' ${S}/Makefile
-}
-
-SRC_URI[md5sum] = "9356e5e9dcb3f1481977009720a2ccf8"
-SRC_URI[sha256sum] = "1b4a5b5e48ad5e61a21586b7b59d5c0a88691a981e73e2c6dc5868197461791b"
-
-PNBLACKLIST[benchfft] ?= "does not build with distroless qemuarm as reported in 'State of bitbake world' thread, nobody volunteered to fix them - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/flite/flite-alsa-1.3/flite-alsa-1.3-configure-with-audio.patch b/meta-oe/recipes-support/flite/flite-alsa-1.3/flite-alsa-1.3-configure-with-audio.patch
deleted file mode 100644
index e1e7aed..0000000
--- a/meta-oe/recipes-support/flite/flite-alsa-1.3/flite-alsa-1.3-configure-with-audio.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- flite-1.3-release/configure.in.old	2008-01-06 02:17:47.000000000 -0600
-+++ flite-1.3-release/configure.in	2008-01-06 02:19:56.000000000 -0600
-@@ -220,7 +220,8 @@ dnl allow the user to override the one d
- dnl
- AC_ARG_WITH( audio,
- 	[  --with-audio          with specific audio support (none linux freebsd etc) ],
--        AUDIODRIVER=$with_audio )
-+        [AUDIODRIVER=$with_audio
-+         AUDIODEFS=])
- 
- if test "x$AUDIODEFS" = x; then
-     case "$AUDIODRIVER" in
diff --git a/meta-oe/recipes-support/flite/flite-alsa_1.3.bb b/meta-oe/recipes-support/flite/flite-alsa_1.3.bb
deleted file mode 100644
index 0883c1a..0000000
--- a/meta-oe/recipes-support/flite/flite-alsa_1.3.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-require flite.inc
-
-PR = "r1"
-
-EXTRA_OECONF = "--with-audio=alsa --enable-shared"
-
-SRC_URI = "http://www.speech.cs.cmu.edu/flite/packed/flite-${PV}/flite-${PV}-release.tar.gz \
-           file://flite-1.3-alsa_support-1.2.diff \
-           file://flite-alsa-1.3-configure-with-audio.patch"
-
-SRC_URI[md5sum] = "ae0aca1cb7b4801f4372f3a75a9e52b5"
-SRC_URI[sha256sum] = "922225f7001e57a0fbace8833b0a48790a68f6c7b491f2d47c78ad537ab78a8b"
-
-# Looks like caused by flite-1.3-alsa_support-1.2.diff
-# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/armv5te-oe-linux-gnueabi/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox16/usr/lib/libflite_cmu_us_kal16.so.1.3' [ldflags]
-# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/armv5te-oe-linux-gnueabi/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox8/usr/lib/libflite_cmu_us_kal.so.1.3' [ldflags]
-# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/core2-64-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox16/usr/lib/libflite_cmu_us_kal16.so.1.3' [ldflags]
-# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/core2-64-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox8/usr/lib/libflite_cmu_us_kal.so.1.3' [ldflags]
-# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/i586-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox16/usr/lib/libflite_cmu_us_kal16.so.1.3' [ldflags]
-# flite-alsa-1.3: No GNU_HASH in the elf binary: '/tmp/work/i586-oe-linux/flite-alsa/1.3-r1/packages-split/libflite-alsa-vox8/usr/lib/libflite_cmu_us_kal.so.1.3' [ldflags]
-PNBLACKLIST[flite-alsa] ?= "OLD: wasn't updated in over 6 years, only navit was RSUGGESTing it and doesn't respect LDFLAGS - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/flite/flite.inc b/meta-oe/recipes-support/flite/flite.inc
deleted file mode 100644
index 0ef82c0..0000000
--- a/meta-oe/recipes-support/flite/flite.inc
+++ /dev/null
@@ -1,33 +0,0 @@
-DESCRIPTION = "flite - the festival light speech synthesizer"
-HOMEPAGE = "http://www.speech.cs.cmu.edu/flite/"
-SECTION = "console/utils"
-LICENSE = "flite"
-LIC_FILES_CHKSUM = "file://COPYING;md5=68a16b1ee49c96c36f232ccdcd287650"
-DEPENDS = "alsa-oss"
-
-PARALLEL_MAKE = ""
-
-S = "${WORKDIR}/flite-${PV}-release"
-
-CFLAGS += " -lasound "
-
-inherit autotools-brokensep
-
-PACKAGES += "lib${PN} lib${PN}-vox8 lib${PN}-vox16"
-
-FILES_${PN} = "${bindir}"
-
-FILES_lib${PN} ="${libdir}/libflite.so.* \
-    ${libdir}/libflite_cmu_time_awb.so.* \
-    ${libdir}/libflite_cmulex.so.* \
-    ${libdir}/libflite_usenglish.so.*"
-
-FILES_lib${PN}-vox8 = "${libdir}/libflite_cmu_us_kal.so.*"
-
-FILES_lib${PN}-vox16 = "${libdir}/libflite_cmu_us_kal16.so.*"
-
-LEAD_SONAME = "libflite.so"
-
-do_install() {
-    oe_runmake INSTALLBINDIR="${D}${bindir}" INSTALLLIBDIR="${D}${libdir}" INSTALLINCDIR="${D}${includedir}" install
-}
diff --git a/meta-oe/recipes-support/iksemel/iksemel_1.4.bb b/meta-oe/recipes-support/iksemel/iksemel_1.4.bb
deleted file mode 100644
index 3dc22c5..0000000
--- a/meta-oe/recipes-support/iksemel/iksemel_1.4.bb
+++ /dev/null
@@ -1,19 +0,0 @@
-SUMMARY = "Fast and portable XML parser and Jabber protocol library"
-AUTHOR = "Gurer Ozen <meduketto at gmail.com>"
-HOMEPAGE = "http://iksemel.googlecode.com"
-SECTION = "libs"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499"
-DEPENDS = "gnutls"
-
-PR = "r1"
-
-# http://errors.yoctoproject.org/Errors/Details/25825/
-PNBLACKLIST[iksemel] ?= "Not compatible with gnutls version 3.4 currently in oe-core - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "http://iksemel.googlecode.com/files/${BP}.tar.gz;name=archive \
-           file://r25.diff"
-SRC_URI[archive.md5sum] = "532e77181694f87ad5eb59435d11c1ca"
-SRC_URI[archive.sha256sum] = "458c1b8fb3349076a6cecf26c29db1d561315d84e16bfcfba419f327f502e244"
-
-inherit autotools pkgconfig
diff --git a/meta-oe/recipes-support/libdbi/libdbi-drivers.inc b/meta-oe/recipes-support/libdbi/libdbi-drivers.inc
deleted file mode 100644
index b509532..0000000
--- a/meta-oe/recipes-support/libdbi/libdbi-drivers.inc
+++ /dev/null
@@ -1,51 +0,0 @@
-# libdbi-drivers OE build file
-# Copyright (C) 2005, Koninklijke Philips Electronics NV.  All Rights Reserved
-# Released under the MIT license (see packages/COPYING)
-
-DESCRIPTION = "Database Drivers for libdbi"
-HOMEPAGE = "http://libdbi-drivers.sourceforge.net/"
-LICENSE = "LGPLv2.1"
-LIC_FILES_CHKSUM = "file://COPYING;md5=d8045f3b8f929c1cb29a1e3fd737b499"
-SECTION = "libs"
-
-PROVIDES = "libdbd-sqlite"
-DEPENDS = "libdbi sqlite sqlite3 mysql5 postgresql"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/libdbi-drivers/libdbi-drivers-${PV}.tar.gz"
-
-inherit autotools
-
-PACKAGES += "libdbd-sqlite3 libdbd-sqlite libdbd-pgsql libdbd-mysql"
-
-EXTRA_OECONF = "--with-dbi-incdir=${STAGING_INCDIR} \
-                --with-dbi-libdir=${STAGING_LIBDIR} \
-                --with-sqlite \
-                --with-sqlite3 \
-                --with-pgsql \
-                --with-mysql \
-                --with-sqlite-libdir=${STAGING_LIBDIR} \
-                --with-sqlite-incdir=${STAGING_INCDIR} \
-                --with-sqlite3-incdir=${STAGING_INCDIR} \
-                --with-sqlite3-libdir=${STAGING_LIBDIR} \
-                --with-mysql-incdir=${STAGING_INCDIR} \
-                --with-mysql-libdir=${STAGING_LIBDIR} \
-                --with-pgsql-incdir=${STAGING_INCDIR} \
-                --with-pgsql-libdir=${STAGING_LIBDIR} \
-                --disable-docs"
-
-FILES_${PN}-dbg += " ${libdir}/dbd/.debug/*.so"
-FILES_${PN}-dev += " ${libdir}/dbd/*.la"
-FILES_${PN}-staticdev += " ${libdir}/dbd/*.a"
-
-DESCRIPTION_libdbd-sqlite = "SQLite database driver for libdbi"
-FILES_libdbd-sqlite = "${libdir}/dbd/libdbdsqlite.so"
-
-DESCRIPTION_libdbd-sqlite3 =  "SQLite3 database driver for libdbi"
-FILES_libdbd-sqlite3 = "${libdir}/dbd/libdbdsqlite3.so"
-
-DESCRIPTION_libdbd-mysql = "MySQL4 database driver for libdbi"
-FILES_libdbd-mysql = "${libdir}/dbd/libdbdmysql.so"
-
-DESCRIPTION_libdbd-psql = "Postgres SQL database driver for libdbi"
-FILES_libdbd-pgsql = "${libdir}/dbd/libdbdpgsql.so"
-
diff --git a/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb b/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb
deleted file mode 100644
index 8d2c505..0000000
--- a/meta-oe/recipes-support/libdbi/libdbi-drivers_0.8.3-1.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require ${PN}.inc
-
-
-SRC_URI[md5sum] = "4de79b323162a5a7652b65b608eca6cd"
-SRC_URI[sha256sum] = "4ab9944398ce769c0deeb64d2f73555c67bc25ccd2ade1ccf552226c7b2acf72"
-
-# libdbi-drivers-0.8.3-1/drivers/mysql/dbd_mysql.c:232:5: error: conflicting types for 'dbd_goto_row'
-PNBLACKLIST[libdbi-drivers] ?= "BROKEN: fails to build with gcc-5 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/libetpan/libetpan-0.57/libetpan-autoreconf.patch b/meta-oe/recipes-support/libetpan/libetpan-0.57/libetpan-autoreconf.patch
deleted file mode 100644
index d05967d..0000000
--- a/meta-oe/recipes-support/libetpan/libetpan-0.57/libetpan-autoreconf.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: libetpan-0.57/configure.ac
-===================================================================
---- libetpan-0.57.orig/configure.ac	2008-10-08 19:54:20.000000000 +0000
-+++ libetpan-0.57/configure.ac	2008-11-11 16:34:33.000000000 +0000
-@@ -106,6 +106,7 @@
- 
- # Check the C compiler.
- AC_PROG_CC
-+AC_PROG_CXX
- 
- # Compiler flags.
- AC_ARG_ENABLE(debug,   [  --enable-debug          setup flags (gcc) for debugging (default=no)],
diff --git a/meta-oe/recipes-support/libetpan/libetpan-0.57/libetpan-ldflags.patch b/meta-oe/recipes-support/libetpan/libetpan-0.57/libetpan-ldflags.patch
deleted file mode 100644
index 438f44f..0000000
--- a/meta-oe/recipes-support/libetpan/libetpan-0.57/libetpan-ldflags.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- libetpan-0.57/configure.ac~	2009-09-21 23:31:42.000000000 +0200
-+++ libetpan-0.57/configure.ac	2009-09-21 23:31:42.000000000 +0200
-@@ -457,7 +457,7 @@
-       LDFLAGS="-$flag $LDFLAGS"
-       AC_TRY_LINK([], [pthread_create();], 
-                       [pthflag=yes; checkpthread=no], 
--                      [pthflag=no; LDFLAGS="$OLDCFLAGS"])
-+                      [pthflag=no; LDFLAGS="$OLDFLAGS"])
-       AC_MSG_RESULT($pthflag)
-     fi
-   done
diff --git a/meta-oe/recipes-support/libetpan/libetpan-0.57/sepbuild.patch b/meta-oe/recipes-support/libetpan/libetpan-0.57/sepbuild.patch
deleted file mode 100644
index 4f01617..0000000
--- a/meta-oe/recipes-support/libetpan/libetpan-0.57/sepbuild.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Index: libetpan-0.57/rules.mk
-===================================================================
---- libetpan-0.57.orig/rules.mk
-+++ libetpan-0.57/rules.mk
-@@ -134,9 +134,9 @@ prepare-am: prepare-local
- 	         if test -e ../../$(subdir)/$${hdr}; then \
- 	           echo "$(LN_S) -f ../../$(subdir)/$${hdr} ."; \
- 	           $(LN_S) -f ../../$(subdir)/$${hdr} .; \
-              else \
--	           echo "$(LN_S) -f ../../$(subdir)/$(srcdir)/$${hdr} ."; \
--	           $(LN_S) -f ../../$(subdir)/$(srcdir)/$${hdr} .; \
-+	           echo "$(LN_S) -f $(srcdir)/$${hdr} ."; \
-+	           $(LN_S) -f $(srcdir)/$${hdr} .; \
-              fi; \
-            fi; \
- 	     done; \
diff --git a/meta-oe/recipes-support/libetpan/libetpan_0.57.bb b/meta-oe/recipes-support/libetpan/libetpan_0.57.bb
deleted file mode 100644
index 5cadf16..0000000
--- a/meta-oe/recipes-support/libetpan/libetpan_0.57.bb
+++ /dev/null
@@ -1,30 +0,0 @@
-DESCRIPTION = "libetpan is a library for communicating with mail and news servers. \
-It supports the protocols SMTP, POP3, IMAP and NNTP."
-HOMEPAGE = "http://www.etpan.org"
-SECTION = "libs"
-DEPENDS = "gnutls liblockfile curl"
-LICENSE = "BSD"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=f18ebe7e452708c26f83954f81062ba7"
-
-PR = "r1"
-
-# http://errors.yoctoproject.org/Errors/Details/25823/
-PNBLACKLIST[libetpan] ?= "Not compatible with gnutls version 3.4 currently in oe-core - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/libetpan/libetpan-${PV}.tar.gz \
-           file://libetpan-autoreconf.patch \
-           file://libetpan-ldflags.patch \
-           file://sepbuild.patch"
-
-inherit autotools pkgconfig gettext binconfig
-
-EXTRA_OECONF = "--without-openssl --without-sasl --with-gnutls --disable-db"
-
-PARALLEL_MAKE = ""
-
-FILES_${PN} = "${libdir}/lib*.so.*"
-FILES_${PN}-dev = "${bindir} ${includedir} ${libdir}/lib*.so ${libdir}/*.la ${libdir}/*.a ${libdir}/pkgconfig"
-
-
-SRC_URI[md5sum] = "8ce8c6c071e81884a475b12b7f9a9cc0"
-SRC_URI[sha256sum] = "1f3fda5c9e2961d1a6298dc8aadae321493d37727d8db45bc2e8d58f20547011"
diff --git a/meta-oe/recipes-support/ode/ode/configure.patch b/meta-oe/recipes-support/ode/ode/configure.patch
deleted file mode 100644
index 246b2e2..0000000
--- a/meta-oe/recipes-support/ode/ode/configure.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: ode-0.13/libccd/configure.ac
-===================================================================
---- ode-0.13.orig/libccd/configure.ac	2013-08-19 17:48:03.000000000 +0000
-+++ ode-0.13/libccd/configure.ac	2014-07-17 22:04:16.580595690 +0000
-@@ -5,7 +5,7 @@
- AC_INIT([libccd], [1.0], [danfis at danfis.cz])
- AC_CONFIG_SRCDIR([src/ccd.c])
- AC_CONFIG_HEADERS([src/config.h])
--AM_INIT_AUTOMAKE
-+AM_INIT_AUTOMAKE([foreign])
- 
- # Checks for programs.
- AC_PROG_CXX
diff --git a/meta-oe/recipes-support/ode/ode_0.13.bb b/meta-oe/recipes-support/ode/ode_0.13.bb
deleted file mode 100644
index c90c819..0000000
--- a/meta-oe/recipes-support/ode/ode_0.13.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-SUMMARY = "ODE is an Open Source Physics Engine"
-SECTION = "libs"
-HOMEPAGE = "http://www.ode.org"
-LICENSE = "LGPLv2.1 & BSD"
-LIC_FILES_CHKSUM = " \
-    file://COPYING;md5=1de906ee96808d9776dd72a5f9a79a22 \
-    file://LICENSE.TXT;md5=771782cb6245c7fbbe74bc0ec059beff \
-"
-# LICENSE-BSD.TXT is missing in 0.13 tarball, but COPYING still says it's dual licensed
-# and svn repo still contains LICENSE-BSD.TXT so maybe it will return in next tarball
-# file://LICENSE-BSD.TXT;md5=c74e6304a772117e059458fb9763a928
-
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/opende/ode-${PV}.tar.bz2 \
-           file://configure.patch"
-SRC_URI[md5sum] = "04b32c9645c147e18caff7a597a19f84"
-SRC_URI[sha256sum] = "34ce3e236e313bf109a0cb5546d2fca462aed99f29a42e62bc1463b803c31ef9"
-
-inherit autotools binconfig
-
-EXTRA_OECONF = "--disable-demos --enable-soname"
-
-FILES_${PN} = "${libdir}/lib*${SOLIBS}"
-
-PACKAGECONFIG ?= ""
-# if it isn't explicitly selected and "$build_os" == "$target_os", then configure will run
-# series of AC_TRY_RUN which won't work for cross-compilation and configure fails
-PACKAGECONFIG[double-precision] = "--enable-double-precision,--disable-double-precision"
-
-PNBLACKLIST[ode] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130599/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-PNBLACKLIST[ode] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130620/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb b/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb
deleted file mode 100644
index d3f2e78..0000000
--- a/meta-oe/recipes-support/open-vcdiff/open-vcdiff_0.8.4.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-SUMMARY = "An encoder/decoder for the VCDIFF (RFC3284) format"
-DESCRIPTION = "A library with a simple API is included, as well as a \
-               command-line executable that can apply the encoder and \
-               decoder to source, target, and delta files. \
-               A slight variation from the draft standard is defined \
-               to allow chunk-by-chunk decoding when only a partial \
-               delta file window is available."
-HOMEPAGE = "http://code.google.com/p/open-vcdiff/"
-SECTION = "console/utils"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=ff820d4ddc1ba05b6fd37b41a21506f9"
-
-SRC_URI = "https://drive.google.com/uc?id=0B5WpIi2fQU1aNGJwVE9hUjU5clU&export=download;downloadfilename=${BP}.tar.gz"
-SRC_URI[md5sum] = "5c0d378d907bebc38b51c3d7e4117011"
-SRC_URI[sha256sum] = "2b142b1027fb0a62c41347600e01a53fa274dad15445a7da48083c830c3138b3"
-
-inherit autotools
-
-# http://errors.yoctoproject.org/Errors/Details/68667/
-PNBLACKLIST[open-vcdiff] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb b/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb
deleted file mode 100644
index 107184b..0000000
--- a/meta-oe/recipes-support/opencv/opencv-samples_2.4.bb
+++ /dev/null
@@ -1,41 +0,0 @@
-SUMMARY = "Opencv : The Open Computer Vision Library"
-HOMEPAGE = "http://opencv.willowgarage.com/wiki/"
-SECTION = "libs"
-LICENSE = "BSD"
-
-DEPENDS = "opencv"
-
-LIC_FILES_CHKSUM = "file://include/opencv2/opencv.hpp;endline=41;md5=6d690d8488a6fca7a2c192932466bb14 \
-"
-SRCREV = "6fae07ba8867b8fd2c53344a774aab669afa7c5e"
-SRC_URI = "git://github.com/Itseez/opencv.git;branch=2.4 \
-          "
-PV = "2.4.3+git${SRCPV}"
-
-S = "${WORKDIR}/git"
-
-do_install() {
-    cd samples/c
-    install -d ${D}/${bindir}
-    install -d ${D}/${datadir}/opencv/samples
-
-    cp * ${D}/${datadir}/opencv/samples || true
-
-    for i in *.c; do
-        echo "compiling $i"
-        ${CXX} ${CFLAGS} ${LDFLAGS} -ggdb `pkg-config --cflags opencv` -o `basename $i .c` $i `pkg-config --libs opencv` || true
-        install -m 0755 `basename $i .c` ${D}/${bindir} || true
-        rm ${D}/${datadir}/opencv/samples/`basename $i .c` || true
-    done
-    for i in *.cpp; do
-        echo "compiling $i"
-        ${CXX} ${CFLAGS} ${LDFLAGS} -ggdb `pkg-config --cflags opencv` -o `basename $i .cpp` $i `pkg-config --libs opencv` || true
-        install -m 0755 `basename $i .cpp` ${D}/${bindir} || true
-        rm ${D}/${datadir}/opencv/samples/`basename $i .cpp` || true
-    done
-}
-
-FILES_${PN}-dev += "${datadir}/opencv/samples/*.c* ${datadir}/opencv/samples/*.vcp* ${datadir}/opencv/samples/build*"
-FILES_${PN} += "${bindir} ${datadir}/opencv"
-
-PNBLACKLIST[opencv-samples] ?= "Depends on blacklisted opencv - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/opencv/opencv/0001-Use-__vector-instead-of-vector-as-suggests-Eigen.patch b/meta-oe/recipes-support/opencv/opencv/0001-Use-__vector-instead-of-vector-as-suggests-Eigen.patch
deleted file mode 100644
index 7f809bc..0000000
--- a/meta-oe/recipes-support/opencv/opencv/0001-Use-__vector-instead-of-vector-as-suggests-Eigen.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 711f07a34ceb504e8f75e978692201efa58268ca Mon Sep 17 00:00:00 2001
-From: Dinar Valeev <dvaleev at suse.com>
-Date: Thu, 16 Jan 2014 21:53:49 +0100
-Subject: [PATCH] Use __vector instead of vector as suggests Eigen
-
-This fixes build on PowerPC where Eigen unsets vector, bool and pixel
-
-Signed-off-by: Dinar Valeev <dvaleev at suse.com>
-
-This patch is already part of OpenCV v3.0. The patch can be obtained
-from:
-
-  https://github.com/Itseez/opencv/commit/711f07a34ceb504e8f75e978692201efa58268ca.patch
-
-Upstream-Status: Backport [commit 711f07a34c, part of version 3.0]
-
-Signed-off-by: Lukas Bulwahn <lukas.bulwahn at oss.bmw-carit.de>
----
- 3rdparty/include/opencl/1.2/CL/cl_platform.h | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/3rdparty/include/opencl/1.2/CL/cl_platform.h b/3rdparty/include/opencl/1.2/CL/cl_platform.h
-index e94949a..42c35d5 100644
---- a/3rdparty/include/opencl/1.2/CL/cl_platform.h
-+++ b/3rdparty/include/opencl/1.2/CL/cl_platform.h
-@@ -332,13 +332,13 @@ typedef unsigned int cl_GLenum;
- /* Define basic vector types */
- #if defined( __VEC__ )
-    #include <altivec.h>   /* may be omitted depending on compiler. AltiVec spec provides no way to detect whether the header is required. */
--   typedef vector unsigned char     __cl_uchar16;
--   typedef vector signed char       __cl_char16;
--   typedef vector unsigned short    __cl_ushort8;
--   typedef vector signed short      __cl_short8;
--   typedef vector unsigned int      __cl_uint4;
--   typedef vector signed int        __cl_int4;
--   typedef vector float             __cl_float4;
-+   typedef __vector unsigned char     __cl_uchar16;
-+   typedef __vector signed char       __cl_char16;
-+   typedef __vector unsigned short    __cl_ushort8;
-+   typedef __vector signed short      __cl_short8;
-+   typedef __vector unsigned int      __cl_uint4;
-+   typedef __vector signed int        __cl_int4;
-+   typedef __vector float             __cl_float4;
-    #define  __CL_UCHAR16__  1
-    #define  __CL_CHAR16__   1
-    #define  __CL_USHORT8__  1
--- 
-1.9.3
-
diff --git a/meta-oe/recipes-support/opencv/opencv_2.4.bb b/meta-oe/recipes-support/opencv/opencv_2.4.bb
deleted file mode 100644
index d17c640..0000000
--- a/meta-oe/recipes-support/opencv/opencv_2.4.bb
+++ /dev/null
@@ -1,106 +0,0 @@
-SUMMARY = "Opencv : The Open Computer Vision Library"
-HOMEPAGE = "http://opencv.org/"
-SECTION = "libs"
-
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://include/opencv2/opencv.hpp;endline=41;md5=6d690d8488a6fca7a2c192932466bb14"
-
-ARM_INSTRUCTION_SET_armv4 = "arm"
-ARM_INSTRUCTION_SET_armv5 = "arm"
-
-DEPENDS = "python-numpy libtool swig swig-native python bzip2 zlib glib-2.0"
-
-SRCREV = "2c9547e3147779001811d01936aed38f560929fc"
-SRC_URI = "git://github.com/Itseez/opencv.git;branch=2.4 \
-  file://0001-Use-__vector-instead-of-vector-as-suggests-Eigen.patch"
-
-PV = "2.4.11+git${SRCPV}"
-
-S = "${WORKDIR}/git"
-
-# Do an out-of-tree build
-OECMAKE_SOURCEPATH = "${S}"
-OECMAKE_BUILDPATH = "${WORKDIR}/build-${TARGET_ARCH}"
-
-EXTRA_OECMAKE = "-DPYTHON_NUMPY_INCLUDE_DIR:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/include \
-                 -DBUILD_PYTHON_SUPPORT=ON \
-                 -DWITH_GSTREAMER=OFF \
-                 -DWITH_1394=OFF \
-                 -DCMAKE_SKIP_RPATH=ON \
-                 ${@bb.utils.contains("TARGET_CC_ARCH", "-msse3", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1", "", d)} \
-                 ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1", "", d)} \
-                 ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1 -DENABLE_SSE42=1", "", d)} \
-                 ${@base_conditional("libdir", "/usr/lib64", "-DLIB_SUFFIX=64", "", d)} \
-                 ${@base_conditional("libdir", "/usr/lib32", "-DLIB_SUFFIX=32", "", d)} \
-"
-
-PACKAGECONFIG ??= "eigen jpeg png tiff v4l libv4l \
-                   ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \
-                   ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libav", "", d)}"
-
-PACKAGECONFIG[eigen] = "-DWITH_EIGEN=ON,-DWITH_EIGEN=OFF,libeigen,"
-PACKAGECONFIG[gtk] = "-DWITH_GTK=ON,-DWITH_GTK=OFF,gtk+,"
-PACKAGECONFIG[jasper] = "-DWITH_JASPER=ON,-DWITH_JASPER=OFF,jasper,"
-PACKAGECONFIG[jpeg] = "-DWITH_JPEG=ON,-DWITH_JPEG=OFF,jpeg,"
-PACKAGECONFIG[libav] = "-DWITH_FFMPEG=ON,-DWITH_FFMPEG=OFF,libav,"
-PACKAGECONFIG[libv4l] = "-DWITH_LIBV4L=ON,-DWITH_LIBV4L=OFF,v4l-utils,"
-PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng,"
-PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff,"
-PACKAGECONFIG[v4l] = "-DWITH_V4L=ON,-DWITH_V4L=OFF,v4l-utils,"
-
-inherit distutils-base pkgconfig cmake
-
-export PYTHON_CSPEC="-I${STAGING_INCDIR}/${PYTHON_DIR}"
-export PYTHON="${STAGING_BINDIR_NATIVE}/python"
-
-TARGET_CC_ARCH += "-I${S}/include "
-
-PACKAGES += "${PN}-apps python-opencv"
-
-python populate_packages_prepend () {
-    cv_libdir = d.expand('${libdir}')
-    cv_libdir_dbg = d.expand('${libdir}/.debug')
-    do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev', allow_links=True)
-    do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
-    do_split_packages(d, cv_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev')
-    do_split_packages(d, cv_libdir, '^lib(.*)\.so\.*', 'lib%s', 'OpenCV %s library', extra_depends='', allow_links=True)
-
-    pn = d.getVar('PN')
-    metapkg =  pn + '-dev'
-    d.setVar('ALLOW_EMPTY_' + metapkg, "1")
-    blacklist = [ metapkg ]
-    metapkg_rdepends = [ ]
-    packages = d.getVar('PACKAGES').split()
-    for pkg in packages[1:]:
-        if not pkg in blacklist and not pkg in metapkg_rdepends and pkg.endswith('-dev'):
-            metapkg_rdepends.append(pkg)
-    d.setVar('RRECOMMENDS_' + metapkg, ' '.join(metapkg_rdepends))
-}
-
-PACKAGES_DYNAMIC += "^libopencv-.*"
-
-FILES_${PN} = ""
-FILES_${PN}-apps = "${bindir}/* ${datadir}/OpenCV"
-FILES_${PN}-dbg += "${libdir}/.debug"
-FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig"
-FILES_${PN}-doc = "${datadir}/OpenCV/doc"
-
-ALLOW_EMPTY_${PN} = "1"
-
-SUMMARY_python-opencv = "Python bindings to opencv"
-FILES_python-opencv = "${PYTHON_SITEPACKAGES_DIR}/*"
-RDEPENDS_python-opencv = "python-core python-numpy"
-
-do_install_append() {
-    cp ${S}/include/opencv/*.h ${D}${includedir}/opencv/
-    sed -i '/blobtrack/d' ${D}${includedir}/opencv/cvaux.h
-
-    # Move Python files into correct library folder (for multilib build)
-    if [ "$libdir" != "/usr/lib" ]; then
-        mv ${D}/usr/lib/* ${D}/${libdir}/
-        rm -rf ${D}/usr/lib
-    fi
-}
-
-# http://errors.yoctoproject.org/Errors/Details/40660/
-PNBLACKLIST[opencv] ?= "Not compatible with currently used ffmpeg 3 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/openmotif/openmotif/configure.patch b/meta-oe/recipes-support/openmotif/openmotif/configure.patch
deleted file mode 100644
index 8868e80..0000000
--- a/meta-oe/recipes-support/openmotif/openmotif/configure.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/configure.ac~	2009-10-27 14:10:23.000000000 -0200
-+++ b/configure.ac	2011-05-31 10:51:00.207232036 -0300
-@@ -3,12 +3,6 @@
- AC_CONFIG_SRCDIR([lib/Xm/Form.c])
- AC_PREREQ(2.52)
- AC_CONFIG_AUX_DIR(.)
--AC_CHECK_FILE(/usr/X/include/X11/X.h,
--  AC_PREFIX_DEFAULT(/usr/X),
--  AC_PREFIX_DEFAULT(/usr))
--AC_CHECK_FILE(/usr/X11R6/include/X11/X.h,
--  AC_PREFIX_DEFAULT(/usr/X11R6),
--  AC_PREFIX_DEFAULT(/usr))
- 
- dnl AM_MAINTAINER_MODE
- AC_CANONICAL_TARGET
diff --git a/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb b/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb
deleted file mode 100644
index 35c39cb..0000000
--- a/meta-oe/recipes-support/openmotif/openmotif_2.3.3.bb
+++ /dev/null
@@ -1,48 +0,0 @@
-SECTION = "libs"
-SUMMARY = "OSM/Motif implementation"
-LICENSE = "OGPL"
-DEPENDS = "xbitmaps virtual/libx11 libxt libxft xproto"
-
-LIC_FILES_CHKSUM = "file://LICENSE;md5=14f692c82491db3d52419929d2f3b343"
-
-PR = "r3"
-
-PNBLACKLIST[openmotif] ?= "BROKEN: doesn't build with B!=S - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-SRC_URI = "http://motif.ics.com/sites/default/files/openmotif-2.3.3.tar.gz \
-           file://configure.patch;patch=1"
-
-SRC_URI[md5sum] = "fd27cd3369d6c7d5ef79eccba524f7be"
-SRC_URI[sha256sum] = "c85f5545e218fa0c59a3789192132d472fc5a33e914a221a568eee4fc10cd103"
-
-inherit autotools
-
-PACKAGECONFIG ??= ""
-PACKAGECONFIG[jpeg] = "--enable-jpeg,--disable-jpeg,jpeg"
-PACKAGECONFIG[png] = "--enable-png,--disable-png,libpng"
-
-EXTRA_OECONF = "X_CFLAGS=-I${STAGING_INCDIR} --disable-printing"
-
-PACKAGES += "${PN}-bin"
-
-FILES_${PN}-bin = "${bindir}"
-
-do_compile() {
-    (
-        # HACK: build a native binaries need during the build
-        unset CC LD CXX CCLD CFLAGS
-        oe_runmake -C config/util CC="${BUILD_CC}" LD="${BUILD_LD}" CXX="${BUILD_CXX}" LIBS="" makestrs
-    )
-    if [ "$?" != "0" ]; then
-        exit 1
-    fi
-    oe_runmake -C lib
-    oe_runmake -C include
-}
-
-do_install() {
-    oe_runmake DESTDIR=${D} -C lib install
-    oe_runmake DESTDIR=${D} -C include install
-}
-
-LEAD_SONAME = "libXm.so.4"
diff --git a/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb b/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb
deleted file mode 100644
index e914238..0000000
--- a/meta-oe/recipes-support/openwbem/openwbem_3.2.3.bb
+++ /dev/null
@@ -1,115 +0,0 @@
-SUMMARY = "Web Based Enterprise Management (WBEM) Implementation"
-DESCRIPTION = "OpenWBEM is a set of software components that help facilitate \
-deployment of the Common Information Model (CIM) and Web-Based \
-Enterprise Management (WBEM) technologies of the Distributed Management \
-Task Force (DMTF). \
- \
-Web-Based Enterprise Management (WBEM) is a set of management and \
-Internet standard technologies developed to unify the management of \
-distributed computing environments. WBEM provides the ability for the \
-industry to deliver a well-integrated set of standards-based management \
-tools, facilitating the exchange of data across otherwise disparate \
-technologies and platforms. \
- \
-For more information about DMTF and its technologies, visit \
-http://www.dmtf.org/standards. "
-SECTION = "System/Management"
-HOMEPAGE = "http://openwbem.sourceforge.net/"
-
-inherit autotools-brokensep pkgconfig
-
-SOURCE1="novell-openwbem-root-acl.mof"
-SOURCE2="loadmof.sh"
-SOURCE3="rmmof.sh"
-SOURCE4="openwbem-owcimomd.init"
-SOURCE5="openwbem-etc_pam.d_openwbem"
-SOURCE6="openwbem-rpmlintrc"
-
-SRC_URI = " \
-   git://github.com/kkaempf/openwbem.git \
-   file://${SOURCE1} \
-   file://${SOURCE2} \
-   file://${SOURCE3} \
-   file://${SOURCE4} \
-   file://${SOURCE5} \
-   file://${SOURCE6} \
-   file://checkserverkey \
-   file://owcimomd.service \
-"
-SRCREV = "5c688eefc1f8e35a4b1c58529aae5f114c25c2a8"
-S = "${WORKDIR}/git"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM += "file://COPYING;md5=0504a2eb85e01aa92c9efd4125a34660"
-INSANE_SKIP_${PN} = "dev-so"
-DEPENDS += "openssl libpam bash"
-RDEPENDS_${PN} += "bash"
-EXTRA_OECONF = " \
-    --prefix=/usr \
-    --sysconfdir=/etc \
-    --libdir=${libdir} \
-    --localstatedir=/var/lib \
-    --libexecdir=${libdir}/openwbem/bin \
-    --mandir=/usr/share/man \
-    --enable-threads-run-as-user \
-"
-do_configure_prepend() {
-    autoreconf --force --install
-}
-
-do_install() {
-    oe_runmake DESTDIR=${D} install
-    install -d ${D}/etc/openwbem/openwbem.conf.d
-    install -d ${D}/var/adm/fillup-templates
-    install -m 644 etc/sysconfig/daemons/owcimomd ${D}/var/adm/fillup-templates/sysconfig.owcimomd
-
-    # fix up hardcoded paths
-    sed -i -e 's,/usr/sbin/,${sbindir}/,' ${WORKDIR}/owcimomd.service
-    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
-        install -d ${D}/${systemd_unitdir}/system
-        install -m 644 ${WORKDIR}/owcimomd.service ${D}/${systemd_unitdir}/system
-        install -m 755 ${WORKDIR}/checkserverkey ${D}${sysconfdir}/openwbem/
-    fi
-
-    install -d ${D}/etc/init.d
-    ln -sf ../../etc/init.d/owcimomd ${D}/usr/sbin/rcowcimomd
-    install -m 755 ${WORKDIR}/${SOURCE4} ${D}/etc/init.d/owcimomd
-    install -d ${D}${sbindir}
-    install -d ${D}/usr/bin
-    install -d ${D}/etc/pam.d
-    install -d ${D}/${libdir}/openwbem/cmpiproviders
-    install -m 644 etc/pam.d/openwbem ${D}/etc/pam.d
-    install -d ${D}/${libdir}/openwbem/c++providers
-    install -d ${D}/var/lib/openwbem
-    install -m 755 ${WORKDIR}/${SOURCE2} ${D}/usr/bin/ow-loadmof.sh
-    install -m 755 ${WORKDIR}/${SOURCE3} ${D}/usr/bin/ow-rmmof.sh
-    install -m 644 ${WORKDIR}/${SOURCE5} ${D}/etc/pam.d/openwbem
-
-    MOFPATH=${D}/usr/share/mof/openwbem
-    install -d $MOFPATH
-    mv ${D}/usr/share/openwbem/* $MOFPATH/
-    rmdir ${D}/usr/share/openwbem
-    install -m 644 ${WORKDIR}/${SOURCE1} $MOFPATH/
-
-    touch ${D}/var/lib/openwbem/{classassociation,instances,instassociation,namespaces,schema}.{dat,ndx,lock}
-}
-
-inherit ${@bb.utils.filter('VIRTUAL-RUNTIME_init_manager', 'systemd', d)}
-SYSTEMD_SERVICE_${PN} = "owcimomd.service"
-SYSTEMD_AUTO_ENABLE = "disable"
-FILES_${PN} += " \
-    ${libdir} \
-    ${datadir}/mof \
-    ${systemd_unitdir} \
-"
-FILES_${PN}-dbg += " \
-    ${libdir}/openwbem/c++providers/.debug \
-    ${libdir}/openwbem/provifcs/.debug \
-    ${libdir}/openwbem/bin/openwbem/.debug \
-"
-FILES_${PN}-dev = " \
-    ${includedir} \
-    ${datadir}/aclocal/openwbem.m4 \
-"
-
-# http://errors.yoctoproject.org/Errors/Details/68630/
-PNBLACKLIST[openwbem] ?= "BROKEN: fails to build with gcc-6 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/psqlodbc/files/psqlodbc-donot-use-the-hardcode-libdir.patch b/meta-oe/recipes-support/psqlodbc/files/psqlodbc-donot-use-the-hardcode-libdir.patch
deleted file mode 100644
index 7eda038..0000000
--- a/meta-oe/recipes-support/psqlodbc/files/psqlodbc-donot-use-the-hardcode-libdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-[PATCH] do not use the hardcode libdir
-
-Upstream-status: Pending
-
-Signed-off-by: Roy.Li <rongqing.li at windriver.com>
-Signed-off-by: Jackie Huang <jackie.huang at windriver.com>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 9b88d4c..df5ad7a 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -140,7 +140,7 @@ if test "$with_libpq" != yes; then
- 	if test -d "$with_libpq"; then
- 		PATH="$PATH:$with_libpq/bin"
- 		CPPFLAGS="$CPPFLAGS -I$with_libpq/include"
--		LDFLAGS="$LDFLAGS -L$with_libpq/lib"
-+		LDFLAGS="$LDFLAGS -L$with_libpq/${base_libdir}"
- 	else
- 		if test -x "$with_libpq"; then
- 			PG_CONFIG=$with_libpq
--- 
-2.8.1
-
diff --git a/meta-oe/recipes-support/psqlodbc/files/psqlodbc-fix-for-ptest-support.patch b/meta-oe/recipes-support/psqlodbc/files/psqlodbc-fix-for-ptest-support.patch
deleted file mode 100644
index a8f14e7..0000000
--- a/meta-oe/recipes-support/psqlodbc/files/psqlodbc-fix-for-ptest-support.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-Subject: [PATCH] psqlodbc: fixes for ptest support
-
-* Fix the LIBODBC since we don't use ODBC_CONFIG.
-* Fix the path for driver.
-* Add the default info of postgresql server.
-* Fix the output format for ptest.
-* Fix the results and exe dir.
-
-Upstream-Status: Inappropriate [OE ptest specific]
-
-Signed-off-by: Jackie Huang <jackie.huang at windriver.com>
----
- test/Makefile.in    |  2 +-
- test/odbcini-gen.sh |  8 ++++----
- test/runsuite.c     | 26 +++++++++++++-------------
- 3 files changed, 18 insertions(+), 18 deletions(-)
-
-diff --git a/test/Makefile.in b/test/Makefile.in
-index 8710616..fcb470e 100644
---- a/test/Makefile.in
-+++ b/test/Makefile.in
-@@ -18,7 +18,7 @@ CFLAGS = @CFLAGS@
- ODBC_CONFIG = @ODBC_CONFIG@
- PROVE = @PROVE@
- 
--LIBODBC := $(shell $(ODBC_CONFIG) --libs)
-+LIBODBC = -lodbc
- 
- all: $(TESTBINS) runsuite reset-db
- 
-diff --git a/test/odbcini-gen.sh b/test/odbcini-gen.sh
-index d2c2c87..6068d9d 100755
---- a/test/odbcini-gen.sh
-+++ b/test/odbcini-gen.sh
-@@ -6,7 +6,7 @@
- outini=odbc.ini
- outinstini=odbcinst.ini
- 
--drvr=../.libs/psqlodbcw
-+drvr=@LIBDIR@/psqlodbca
- driver=${drvr}.so
- if test ! -e $driver ; then
- 	driver=${drvr}.dll
-@@ -33,10 +33,10 @@ Driver          = psqlodbc test driver
- Trace           = No
- TraceFile               =
- Database                = contrib_regression
--Servername              =
--Username                =
-+Servername              = localhost
-+Username                = postgres
- Password                =
--Port                    =
-+Port                    = 5432
- ReadOnly                = No
- RowVersioning           = No
- ShowSystemTables                = No
-diff --git a/test/runsuite.c b/test/runsuite.c
-index 583cf35..fd2a90e 100644
---- a/test/runsuite.c
-+++ b/test/runsuite.c
-@@ -51,7 +51,7 @@ bailout(const char *fmt, ...)
- 
- /* Given a test program's name, get the test name */
- void
--parse_argument(const char *in, char *testname, char *binname)
-+parse_argument(const char *in, char *testname, char *binname, const char *inputdir)
- {
- 	const char *basename;
- #ifdef WIN32
-@@ -65,7 +65,7 @@ parse_argument(const char *in, char *testname, char *binname)
- 	if (strchr(in, DIR_SEP) == NULL)
- 	{
- 		strcpy(testname, in);
--		sprintf(binname, "exe%c%s-test", DIR_SEP, in);
-+		sprintf(binname, "%s%cexe%c%s-test", inputdir, DIR_SEP, DIR_SEP, in);
- 		return;
- 	}
- 
-@@ -127,7 +127,7 @@ int main(int argc, char **argv)
- 	failures = 0;
- 	for (i = 1, j = 1; i <= numtests; i++, j++)
- 	{
--		parse_argument(argv[j], testname, binname);
-+		parse_argument(argv[j], testname, binname, inputdir);
- 		if (runtest(binname, testname, i, inputdir) != 0)
- 			failures++;
- 	}
-@@ -157,29 +157,29 @@ runtest(const char *binname, const char *testname, int testno, const char *input
- #ifndef WIN32
- 	snprintf(cmdline, sizeof(cmdline),
- 			 "ODBCSYSINI=. ODBCINSTINI=./odbcinst.ini ODBCINI=./odbc.ini "
--			 "%s > results/%s.out",
--			 binname, testname);
-+			 "%s > %s/results/%s.out",
-+			 binname, inputdir, testname);
- #else
- 	snprintf(cmdline, sizeof(cmdline),
--			 "%s > results\\%s.out",
--			 binname, testname);
-+			 "%s > %s/results\\%s.out",
-+			 binname, inputdir, testname);
- #endif
- 	rc = system(cmdline);
- 
- 	diff = rundiff(testname, inputdir);
- 	if (rc != 0)
- 	{
--		printf("not ok %d - %s test returned %d\n", testno, testname, rc);
-+		printf("FAIL: %d - %s\n\ttest returned %d\n", testno, testname, rc);
- 		ret = 1;
- 	}
- 	else if (diff != 0)
- 	{
--		printf("not ok %d - %s test output differs\n", testno, testname);
-+		printf("FAIL: %d - %s\n\ttest output differs\n", testno, testname);
- 		ret = 1;
- 	}
- 	else
- 	{
--		printf("ok %d - %s\n", testno, testname);
-+		printf("PASS: %d - %s\n", testno, testname);
- 		ret = 0;
- 	}
- 	fflush(stdout);
-@@ -196,7 +196,7 @@ rundiff(const char *testname, const char *inputdir)
- 	char	   *result;
- 	size_t		result_len;
- 
--	snprintf(filename, sizeof(filename), "results/%s.out", testname);
-+	snprintf(filename, sizeof(filename), "%s/results/%s.out", inputdir, testname);
- 	result = slurpfile(filename, &result_len);
- 
- 	outputno = 0;
-@@ -244,8 +244,8 @@ rundiff(const char *testname, const char *inputdir)
- 	 * files and print the smallest diff?
- 	 */
- 	snprintf(cmdline, sizeof(cmdline),
--			 "diff -c %s/expected/%s.out results/%s.out >> regression.diffs",
--			 inputdir, testname, testname);
-+			 "diff -c %s/expected/%s.out %s/results/%s.out >> regression.diffs",
-+			 inputdir, testname, inputdir, testname);
- 	if (system(cmdline) == -1)
- 		printf("# diff failed\n");
- 
--- 
-2.8.2
-
diff --git a/meta-oe/recipes-support/psqlodbc/files/psqlodbc-remove-some-checks-for-cross-compiling.patch b/meta-oe/recipes-support/psqlodbc/files/psqlodbc-remove-some-checks-for-cross-compiling.patch
deleted file mode 100644
index 1d98818..0000000
--- a/meta-oe/recipes-support/psqlodbc/files/psqlodbc-remove-some-checks-for-cross-compiling.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-Subject: [PATCH] remove some checks for cross-compiling
-
-some lib check is not suitable for
-cross-compiling, so remove them.
-
-Upstream-Status: Inappropriate [not a real bug,just for cross-compiling]
-
-Signed-off-by: Song.Li <Song.Li at windriver.com>
-Signed-off-by: Kai Kang <kai.kang at windriver.com>
-Signed-off-by: Jackie Huang <jackie.huang at windriver.com>
----
- configure.ac | 66 +++++++-----------------------------------------------------
- 1 file changed, 7 insertions(+), 59 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index df5ad7a..b72bd4c 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -46,57 +46,19 @@ AC_ARG_WITH(iodbc, [  --with-iodbc[[=DIR]]	  [[default=no]] DIR is the iODBC bas
- if test "$with_iodbc" != no; then
- 	with_unixodbc=no
- 	AC_DEFINE(WITH_IODBC, 1, [Define to 1 to build with iODBC support])
--	if test "$with_iodbc" = yes; then
--		AC_PATH_PROGS(ODBC_CONFIG, iodbc-config)
--	else
--		ODBC_CONFIG=$with_iodbc
--	fi
--	if test ! -x "${ODBC_CONFIG}/bin/iodbc-config"; then
--		if test ! -x "${ODBC_CONFIG}"; then
--			AC_MSG_ERROR([iodbc-config not found (required for iODBC build)])
--		fi
--	else
--		ODBC_CONFIG=${ODBC_CONFIG}/bin/iodbc-config
--	fi
- fi
- 
- if test "$with_unixodbc" != no; then
- 	AC_DEFINE(WITH_UNIXODBC, 1,
-             [Define to 1 to build with unixODBC support])
--	if test "$with_unixodbc" = yes; then
--		AC_PATH_PROGS(ODBC_CONFIG, odbc_config)
--	else
--		ODBC_CONFIG=$with_unixodbc
--	fi
--	if test ! -x "${ODBC_CONFIG}/bin/odbc_config"; then
--		if test ! -x "${ODBC_CONFIG}"; then
--			AC_MSG_ERROR([odbc_config not found (required for unixODBC build)])
--		fi
--	else
--		ODBC_CONFIG=${ODBC_CONFIG}/bin/odbc_config
--	fi
- fi
- 
- #
- # ODBC include and library
- #
--
--if test "$ODBC_CONFIG" != ""; then
--	if test "$with_iodbc" != no; then
--		ODBC_INCLUDE=`${ODBC_CONFIG} --cflags`
--		CPPFLAGS="$CPPFLAGS ${ODBC_INCLUDE}"
--		# Linking libiodoc is rather problematic
--		[ODBC_LIBDIR=`${ODBC_CONFIG} --libs | sed -e "s/^\(-L\|.*[ \t]-L\)\([^ \n\r\f\t]*\).*$/-L\2/"`]
--		LDFLAGS="$LDFLAGS ${ODBC_LIBDIR}"
--	else
--		ODBC_INCLUDE=`${ODBC_CONFIG} --include-prefix`
--		CPPFLAGS="$CPPFLAGS -I${ODBC_INCLUDE}"
--		# Linking libodoc is rather problematic
--		ODBC_LIBDIR=`${ODBC_CONFIG} --lib-prefix`
--		LDFLAGS="$LDFLAGS -L${ODBC_LIBDIR}"
--	fi
--	AC_MSG_NOTICE([using $ODBC_INCLUDE $ODBC_LIBDIR])
--fi
-+ODBC_LIBS="-lodbcinst"
-+LIBS="$LIBS ${ODBC_LIBS}"
-+AC_MSG_NOTICE([using $ODBC_INCLUDE $ODBC_LIBS])
- 
- #
- # SQLCOLATTRIBUTE_SQLLEN check
-@@ -176,18 +138,10 @@ PGAC_ARG_BOOL(enable, pthreads, yes,
- # Find libpq headers and libraries
- #
- 
--if test -z "$PG_CONFIG"; then
--  AC_PATH_PROGS(PG_CONFIG, pg_config)
--fi
--
--if test -n "$PG_CONFIG"; then
--  pg_includedir=`"$PG_CONFIG" --includedir`
--  pg_libdir=`"$PG_CONFIG" --libdir`
--  CPPFLAGS="$CPPFLAGS -I$pg_includedir"
--  LDFLAGS="$LDFLAGS -L$pg_libdir"
--fi
--
--
-+pg_includedir=""
-+pg_libdir=""
-+CPPFLAGS="$CPPFLAGS"
-+LDFLAGS="$LDFLAGS"
- 
- # 1. Programs
- 
-@@ -211,12 +165,6 @@ if test "$with_iodbc" != no; then
-                  [AC_MSG_ERROR([iODBC library "iodbcinst" not found])])
- fi
- 
--if test "$enable_pthreads" = yes; then
--  AC_CHECK_LIB(pthreads, pthread_create,
--               [],
--	       [AC_CHECK_LIB(pthread, pthread_create)])
--fi
--
- AC_CHECK_LIB(pq, PQsetSingleRowMode, [],
- 	      [AC_MSG_ERROR([libpq library version >= 9.2 is required])])
- 
--- 
-2.8.1
-
diff --git a/meta-oe/recipes-support/psqlodbc/psqlodbc.inc b/meta-oe/recipes-support/psqlodbc/psqlodbc.inc
deleted file mode 100644
index 5337b45..0000000
--- a/meta-oe/recipes-support/psqlodbc/psqlodbc.inc
+++ /dev/null
@@ -1,50 +0,0 @@
-SUMMARY = "ODBC driver for PostgreSQL"
-DESCRIPTION = "\
- This package provides a driver that allows ODBC-enabled applications to \
- access PostgreSQL databases.  ODBC is an abstraction layer that allows \
- applications written for that layer to access databases in a manner \
- that is relatively independent of the particular database management \
- system. \
- . \
- You need to install this package if you want to use an application that \
- provides database access through ODBC and you want that application to \
- access a PostgreSQL database.  This package would need to be installed \
- on the same machine as that client application; the PostgreSQL database \
- server can be on a different machine and does not need any additional \
- software to accept ODBC clients. \
-"
-SECTION = "libs"
-HOMEPAGE = "http://psqlodbc.projects.postgresql.org/"
-
-DEPENDS += "postgresql unixodbc"
-
-EXTRA_OECONF = "\
-    ac_cv_lib_ltdl_lt_dlopen=no \
-    ac_cv_lib_pq_PQconnectdb=yes \
-    --with-unixodbc=yes \
-    --with-libpq=${STAGING_LIBDIR}/.. \
-    --enable-pthreads \
-    --disable-unicode \
-    LIBS="-lpthread" \
-"
-
-inherit autotools pkgconfig ptest
-
-do_compile_ptest() {
-    oe_runmake -C ${B}/test
-}
-
-do_install_ptest() {
-    install -d ${D}${PTEST_PATH}
-    cp -a --no-preserve=ownership ${B}/test/exe ${S}/test/expected ${D}${PTEST_PATH}
-    install -m 0755 ${B}/test/reset-db ${D}${PTEST_PATH}
-    install -m 0755 ${B}/test/runsuite ${D}${PTEST_PATH}
-    install -m 0755 ${S}/test/odbcini-gen.sh ${D}${PTEST_PATH}
-    install -m 0755 ${S}/test/sampletables.sql ${D}${PTEST_PATH}
-    sed -i -e 's|@LIBDIR@|${libdir}|' ${D}${PTEST_PATH}/odbcini-gen.sh
-}
-
-FILES_${PN} += "${libdir}"
-
-# The tests need a local PostgreSQL server running
-RDEPENDS_${PN}-ptest = "postgresql"
diff --git a/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb b/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb
deleted file mode 100644
index 97326a2..0000000
--- a/meta-oe/recipes-support/psqlodbc/psqlodbc_09.05.0300.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-require ${PN}.inc
-
-LICENSE = "LGPLv2"
-LIC_FILES_CHKSUM = "file://license.txt;md5=6db3822fc7512e83087ba798da013692"
-
-SRC_URI = "http://ftp.postgresql.org/pub/odbc/versions/src/${BPN}-${PV}.tar.gz \
-    file://psqlodbc-remove-some-checks-for-cross-compiling.patch \
-    file://psqlodbc-donot-use-the-hardcode-libdir.patch \
-    file://psqlodbc-fix-for-ptest-support.patch \
-    file://run-ptest \
-"
-
-SRC_URI[md5sum] = "4c6e0b22187d7bb1c998ffac89e50f6b"
-SRC_URI[sha256sum] = "9521f328bf28aaaf5c8488dc89792b614f9d6271742c0baf9bb41c97537764a8"
-
-PNBLACKLIST[psqlodbc] ?= "Depends on blacklisted postgresql - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb b/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
deleted file mode 100644
index 1219cb8..0000000
--- a/meta-oe/recipes-support/vala-terminal/vala-terminal_git.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "A lightweight Terminal Emulator based on libvte, written in Vala"
-SECTION = "x11/applications"
-DEPENDS = "vte9 intltool-native"
-SRCREV = "0fefa38087581f85fa0631b40500b9428369c146"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
-PV = "1.3+gitr${SRCPV}"
-PE = "1"
-PR = "r1"
-
-PNBLACKLIST[vala-terminal] ?= "BROKEN: Doesn't work with B!=S, touch: cannot touch `src/.stamp': No such file or directory - the recipe will be removed on 2017-09-01 unless the issue is fixed"
-
-inherit autotools perlnative vala
-
-SRC_URI = "${FREESMARTPHONE_GIT}/vala-terminal.git;branch=master"
-S = "${WORKDIR}/git"
-
-RDEPENDS_${PN} = "ttf-liberation-mono"
-RREPLACES_${PN} = "openmoko-terminal2"
-RPROVIDES_${PN} = "openmoko-terminal2"
diff --git a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb b/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb
deleted file mode 100644
index c7bae1c..0000000
--- a/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_4.3.36.bb
+++ /dev/null
@@ -1,72 +0,0 @@
-SUMMARY = "VirtualBox Linux Guest Drivers"
-SECTION = "core"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/${VBOX_NAME}/COPYING;md5=e197d5641bb35b29d46ca8c4bf7f2660"
-
-DEPENDS = "virtual/kernel"
-
-inherit module kernel-module-split
-
-COMPATIBLE_MACHINE = "(qemux86|qemux86-64)"
-
-VBOX_NAME = "VirtualBox-${PV}"
-
-SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
-           file://Makefile.utils \
-"
-SRC_URI[md5sum] = "8635387dec6cbfd576ba453355d4dc0c"
-SRC_URI[sha256sum] = "af0776df6d03b2709cb76a69f055487bf12bdb3b4163e2a82959860300283046"
-
-S = "${WORKDIR}/vbox_module"
-
-export BUILD_TARGET_ARCH="${ARCH}"
-export BUILD_TARGET_ARCH_x86-64="amd64"
-export KERN_DIR="${STAGING_KERNEL_DIR}"
-
-addtask export_sources before do_patch after do_unpack
-
-do_export_sources() {
-    mkdir -p "${S}"
-    ${WORKDIR}/${VBOX_NAME}/src/VBox/Additions/linux/export_modules ${T}/vbox_modules.tar.gz
-    tar -C "${S}" -xzf ${T}/vbox_modules.tar.gz
-
-    # add a mount utility to use shared folder from VBox Addition Source Code
-    mkdir -p "${S}/utils"
-    install ${WORKDIR}/${VBOX_NAME}/src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c ${S}/utils
-    install ${WORKDIR}/${VBOX_NAME}/src/VBox/Additions/linux/sharedfolders/vbsfmount.c ${S}/utils
-    install ${S}/../Makefile.utils ${S}/utils/Makefile
-
-}
-
-# compile and install mount utility
-do_compile_append() {
-    oe_runmake 'LD=${CC}' 'LDFLAGS=${LDFLAGS}' -C ${S}/utils
-    if ! [ -e vboxguest.ko -a -e vboxsf.ko -a -e vboxvideo.ko ] ; then
-        echo "ERROR: One of vbox*.ko modules wasn't built"
-        exit 1
-    fi
-}
-
-module_do_install() {
-    MODULE_DIR=${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel/misc
-    install -d $MODULE_DIR
-    install -m 644 vboxguest.ko $MODULE_DIR
-    install -m 644 vboxsf.ko $MODULE_DIR
-    install -m 644 vboxvideo.ko $MODULE_DIR
-}
-
-do_install_append() {
-    install -d ${D}${base_sbindir}
-    install -m 755 ${S}/utils/mount.vboxsf ${D}${base_sbindir}
-}
-
-PACKAGES += "kernel-module-vboxguest kernel-module-vboxsf kernel-module-vboxvideo"
-RRECOMMENDS_${PN} += "kernel-module-vboxguest kernel-module-vboxsf kernel-module-vboxvideo"
-
-FILES_${PN} = "${base_sbindir}"
-
-# autoload if installed
-KERNEL_MODULE_AUTOLOAD += "vboxguest vboxsf vboxvideo"
-
-# http://errors.yoctoproject.org/Errors/Details/83333/
-PNBLACKLIST[vboxguestdrivers] ?= "BROKEN: not compatible with default kernel version 4.8 - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-oe/recipes-support/xchat/xchat-2.8.8/automake-foreign.patch b/meta-oe/recipes-support/xchat/xchat-2.8.8/automake-foreign.patch
deleted file mode 100644
index cfa2f6c..0000000
--- a/meta-oe/recipes-support/xchat/xchat-2.8.8/automake-foreign.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/configure.in	2014-08-18 01:25:43.911597023 -0700
-+++ b/configure.in	2014-08-18 01:26:27.763786629 -0700
-@@ -8,7 +8,7 @@
- AC_CONFIG_HEADERS([config.h])
- AC_CONFIG_SRCDIR([configure.in])
- 
--AM_INIT_AUTOMAKE([1.9 dist-bzip2 subdir-objects no-define])
-+AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 subdir-objects no-define])
- 
- AM_MAINTAINER_MODE
- AC_PROG_CC
diff --git a/meta-oe/recipes-support/xchat/xchat-2.8.8/fix-includes-for-separate-build.patch b/meta-oe/recipes-support/xchat/xchat-2.8.8/fix-includes-for-separate-build.patch
deleted file mode 100644
index 4394e52..0000000
--- a/meta-oe/recipes-support/xchat/xchat-2.8.8/fix-includes-for-separate-build.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-diff -ur xchat-2.8.8-orig/plugins/perl/perl.c xchat-2.8.8/plugins/perl/perl.c
---- xchat-2.8.8-orig/plugins/perl/perl.c	2014-08-30 14:09:05.125116286 -0700
-+++ xchat-2.8.8/plugins/perl/perl.c	2014-08-30 14:09:45.281106532 -0700
-@@ -31,7 +31,7 @@
- #endif
- 
- #undef PACKAGE
--#include "../../config.h"		  /* for #define OLD_PERL */
-+#include <config.h>		  /* for #define OLD_PERL */
- #include "xchat-plugin.h"
- 
- static xchat_plugin *ph;		  /* plugin handle */
-diff -ur xchat-2.8.8-orig/src/common/network.c xchat-2.8.8/src/common/network.c
---- xchat-2.8.8-orig/src/common/network.c	2014-08-30 14:09:05.137116222 -0700
-+++ xchat-2.8.8/src/common/network.c	2014-08-30 14:13:52.729116323 -0700
-@@ -24,7 +24,7 @@
- #include <unistd.h>
- #include <glib.h>
- 
--#include "../../config.h"				  /* grab USE_IPV6 and LOOKUPD defines */
-+#include <config.h>				  /* grab USE_IPV6 and LOOKUPD defines */
- 
- #define WANTSOCKET
- #define WANTARPA
-diff -ur xchat-2.8.8-orig/src/common/ssl.c xchat-2.8.8/src/common/ssl.c
---- xchat-2.8.8-orig/src/common/ssl.c	2014-08-30 14:09:05.137116222 -0700
-+++ xchat-2.8.8/src/common/ssl.c	2014-08-30 14:14:08.449133899 -0700
-@@ -23,7 +23,7 @@
- #include <string.h>				  /* strncpy() */
- #include "ssl.h"					  /* struct cert_info */
- #include "inet.h"
--#include "../../config.h"		  /* HAVE_SNPRINTF */
-+#include <config.h>		  /* HAVE_SNPRINTF */
- 
- #ifndef HAVE_SNPRINTF
- #define snprintf g_snprintf
-diff -ur xchat-2.8.8-orig/src/common/util.c xchat-2.8.8/src/common/util.c
---- xchat-2.8.8-orig/src/common/util.c	2014-08-30 14:09:05.133116243 -0700
-+++ xchat-2.8.8/src/common/util.c	2014-08-30 14:10:23.633116070 -0700
-@@ -41,7 +41,7 @@
- #include "xchatc.h"
- #include <ctype.h>
- #include "util.h"
--#include "../../config.h"
-+#include <config.h>
- 
- #define WANTSOCKET
- #include "inet.h"
-diff -ur xchat-2.8.8-orig/src/common/xchat.h xchat-2.8.8/src/common/xchat.h
---- xchat-2.8.8-orig/src/common/xchat.h	2014-08-30 14:09:05.133116243 -0700
-+++ xchat-2.8.8/src/common/xchat.h	2014-08-30 14:13:42.797116472 -0700
-@@ -1,4 +1,4 @@
--#include "../../config.h"
-+#include <config.h>
- 
- #include <glib.h>
- #include <time.h>			/* need time_t */
-diff -ur xchat-2.8.8-orig/src/fe-gtk/fe-gtk.h xchat-2.8.8/src/fe-gtk/fe-gtk.h
---- xchat-2.8.8-orig/src/fe-gtk/fe-gtk.h	2014-08-30 14:09:05.129116272 -0700
-+++ xchat-2.8.8/src/fe-gtk/fe-gtk.h	2014-08-30 14:10:13.309115951 -0700
-@@ -1,4 +1,4 @@
--#include "../../config.h"
-+#include <config.h>
- 
- #ifdef WIN32
- /* If you're compiling this for Windows, your release is un-official
-diff -ur xchat-2.8.8-orig/src/fe-gtk/xtext.c xchat-2.8.8/src/fe-gtk/xtext.c
---- xchat-2.8.8-orig/src/fe-gtk/xtext.c	2014-08-30 14:09:05.129116272 -0700
-+++ xchat-2.8.8/src/fe-gtk/xtext.c	2014-08-30 14:10:00.313138254 -0700
-@@ -51,7 +51,7 @@
- #include <gtk/gtkwindow.h>
- 
- #ifdef XCHAT
--#include "../../config.h"			/* can define USE_XLIB here */
-+#include <config.h>			/* can define USE_XLIB here */
- #else
- #define USE_XLIB
- #endif
diff --git a/meta-oe/recipes-support/xchat/xchat-2.8.8/glib-2.32.patch b/meta-oe/recipes-support/xchat/xchat-2.8.8/glib-2.32.patch
deleted file mode 100644
index c9bce6a..0000000
--- a/meta-oe/recipes-support/xchat/xchat-2.8.8/glib-2.32.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- xchat-2.8.8.orig/src/common/xchat.h	2009-08-16 11:40:16.000000000 +0200
-+++ xchat-2.8.8/src/common/xchat.h	2012-05-06 08:30:16.125755497 +0200
-@@ -1,10 +1,6 @@
- #include "../../config.h"
- 
--#include <glib/gslist.h>
--#include <glib/glist.h>
--#include <glib/gutils.h>
--#include <glib/giochannel.h>
--#include <glib/gstrfuncs.h>
-+#include <glib.h>
- #include <time.h>			/* need time_t */
- 
- #ifndef XCHAT_H
---- xchat-2.8.8.orig/src/common/servlist.c	2010-05-16 09:24:26.000000000 +0200
-+++ xchat-2.8.8/src/common/servlist.c	2012-05-06 08:30:45.681758019 +0200
-@@ -24,7 +24,6 @@
- #include <unistd.h>
- 
- #include "xchat.h"
--#include <glib/ghash.h>
- 
- #include "cfgfiles.h"
- #include "fe.h"
---- xchat-2.8.8.orig/src/common/util.c	2009-08-16 11:40:16.000000000 +0200
-+++ xchat-2.8.8/src/common/util.c	2012-05-06 08:31:10.389760122 +0200
-@@ -39,7 +39,6 @@
- #include <errno.h>
- #include "xchat.h"
- #include "xchatc.h"
--#include <glib/gmarkup.h>
- #include <ctype.h>
- #include "util.h"
- #include "../../config.h"
---- xchat-2.8.8.orig/src/common/text.c	2010-05-30 04:14:41.000000000 +0200
-+++ xchat-2.8.8/src/common/text.c	2012-05-06 08:31:22.300761137 +0200
-@@ -28,7 +28,6 @@
- #include <sys/mman.h>
- 
- #include "xchat.h"
--#include <glib/ghash.h>
- #include "cfgfiles.h"
- #include "chanopt.h"
- #include "plugin.h"
diff --git a/meta-oe/recipes-support/xchat/xchat_2.8.8.bb b/meta-oe/recipes-support/xchat/xchat_2.8.8.bb
deleted file mode 100644
index 408c700..0000000
--- a/meta-oe/recipes-support/xchat/xchat_2.8.8.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-SUMMARY = "Full-featured IRC chat client with scripting support"
-LICENSE = "GPLv2+"
-HOMEPAGE = "http://www.xchat.org"
-SECTION = "x11/network"
-
-DEPENDS = "libgcrypt zlib gtk+ libsexy"
-DEPENDS += "gdk-pixbuf-native"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
-
-PR = "r2"
-
-SRC_URI = "http://xchat.org/files/source/2.8/xchat-${PV}.tar.bz2 \
-    file://glib-2.32.patch \
-    file://automake-foreign.patch \
-    file://fix-includes-for-separate-build.patch \
-"
-
-inherit autotools gettext pkgconfig
-
-PACKAGECONFIG ??= "dbus"
-PACKAGECONFIG[dbus] = "--enable-dbus,--disable-dbus,dbus-glib"
-PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
-PACKAGECONFIG[python] = "--enable-python,--disable-python,python"
-
-EXTRA_OECONF = "\
-    --enable-maintainer-mode \
-    --disable-perl \
-    --disable-tcl \
-"
-
-RDEPENDS_${PN} += "dbus"
-FILES_${PN} += "${datadir}/dbus-1"
-FILES_${PN}-dbg += "${libdir}/xchat/plugins/.debug"
-
-SRC_URI[md5sum] = "6775c44f38e84d06c06c336b32c4a452"
-SRC_URI[sha256sum] = "0d6d69437b5e1e45f3e66270fe369344943de8a1190e498fafa5296315a27db0"
-
-PNBLACKLIST[xchat] ?= "Depends on blacklisted libsexy - the recipe will be removed on 2017-09-01 unless the issue is fixed"
diff --git a/meta-python/recipes-extended/python-meh/files/tweak-native-language-support.patch b/meta-python/recipes-extended/python-meh/files/tweak-native-language-support.patch
deleted file mode 100644
index 41cfadd..0000000
--- a/meta-python/recipes-extended/python-meh/files/tweak-native-language-support.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 6e7689bced8ef56cfb5969560d23706f8e039807 Mon Sep 17 00:00:00 2001
-From: Hongxu Jia <hongxu.jia at windriver.com>
-Date: Mon, 11 Apr 2016 23:01:19 -0400
-Subject: [PATCH] tweak native language support
-
-- Only support en_GB only.
-
-Upstream-Status: Inappropriate [oe specific]
-
-Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
----
- Makefile | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index d0a9784..db152c4 100644
---- a/Makefile
-+++ b/Makefile
-@@ -24,7 +24,7 @@ test:
- 	PYTHONPATH=. python $(TESTSUITE) -v
- 
- install:
--	python setup.py install --root=$(DESTDIR)
-+	python setup.py install --root=$(DESTDIR) --install-lib=${PYTHON_SITEPACKAGES_DIR} --prefix=${prefix}
- 	$(MAKE) -C po install
- 
- ChangeLog:
-@@ -61,6 +61,13 @@ rpmlog:
- 	@git log --pretty="format:- %s (%ae)" $(TAG).. |sed -e 's/@.*)/)/'
- 	@echo
- 
-+po-empty:
-+	for lingua in "en_GB" ; do \
-+		[ -f po/$$lingua.po ] || \
-+		msginit -i po/$(PKGNAME).pot -o po/$$lingua.po -l $$lingua --no-translator || \
-+		exit 1 ; \
-+	done
-+
- potfile:
- 	$(MAKE) -C po potfile
- 
--- 
-1.9.1
-
diff --git a/meta-ruby/recipes-devtools/ruby/bundler_git.bb b/meta-ruby/recipes-devtools/ruby/bundler_git.bb
deleted file mode 100644
index df89520..0000000
--- a/meta-ruby/recipes-devtools/ruby/bundler_git.bb
+++ /dev/null
@@ -1,33 +0,0 @@
-SUMMARY = "Makes sure Ruby applications run the same code on every machine."
-DESCRIPTION = "Bundler makes sure Ruby applications run the same code \
-on every machine. It does this by managing the gems that the \
-application depends on. Given a list of gems, it can automatically \
-download and install those gems, as well as any other gems needed by \
-the gems that are listed. Before installing gems, it checks the \
-versions of every gem to make sure that they are compatible, and can \
-all be loaded at the same time. After the gems have been installed, \
-Bundler can help you update some or all of them when new versions \
-become available. Finally, it records the exact versions that have \
-been installed, so that others can install the exact same gems."
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.md;md5=196bb963e601609817d7e9ac9a64a867"
-
-SRCREV = "06dc8472b9142fd6aaefff780d6d252c20dc2a04"
-
-BRANCH = "1-9-stable"
-PV = "1.9.4"
-
-S = "${WORKDIR}/git"
-
-SRC_URI = " \
-    git://github.com/bundler/bundler.git;branch=${BRANCH} \
-    "
-
-inherit ruby
-
-RDEPENDS_${PN} = "git"
-
-BBCLASSEXTEND = "native"
-
-PNBLACKLIST[bundler] ?= "Fails to build with RSS http://errors.yoctoproject.org/Errors/Details/130640/ - the recipe will be removed on 2017-09-01 unless the issue is fixed"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list