All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master
@ 2011-04-22  7:24 Saul Wold
  2011-04-22  7:24 ` [PATCH 01/33] slang: Fix host contamination issue Saul Wold
                   ` (32 more replies)
  0 siblings, 33 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Saul Wold <sgw@linux.intel.com>

Richard

Here is a batch of Update from the Community and the Yotco Metadata team,
I have tested these on x86 and ARM full and incremental builds.

These patches address both Updates, CVEs and build related issues.


Pull URL: git://git.openembedded.org/openembedded-core-contrib
  Branch: sgw/stage
  Browse: http://git.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=sgw/stage

Thanks,
    Saul Wold <sgw@linux.intel.com>
---


Dexuan Cui (9):
  libxfixes: upgrade from 4.0.5 to the latest version 5.0
  util-macros: upgrade from 1.11.0 to 1.13.0
  preferred-xorg-versions.inc: update libxfixes, util-macros,
    xorg-cf-files
  mdadm: upgrade from 3.1.4 to the latest version 3.2.1
  liburcu: upgrade from 0.5.2 to 0.5.4
  lttng-ust: upgrade from 0.11 to the latest version 0.12
  task-poky-tools.bb, task-sdk-gmae.inc: enable lttng-ust for ARM
  lttng-viewer: upgrade from 0.12.36 to the latest version 0.12.38
  distro_tracking_fields.inc: update the info for the following recipes

Gary Thomas (1):
  Control over when package init scripts are run

Khem Raj (2):
  gcc: Add recipes for 4.6.0
  pcmciautils: Upgrade 017 -> 018

Nitin A Kamble (8):
  mpfr: upgrade from 3.0.0 to 3.0.1
  python-gst: upgrade from 0.10.19 to 0.10.21
  git: upgrade from 1.7.3.4 to 1.7.4.3
  python-pycairo: fix installation path of __init__.py
  perl-5.12.2: use of PERLHOSTLIB var fix
  cpan.bbclass: export PERLHOSTLIB for perl modules
  libxml-parser-perl: upgrade from 2.36 to 2.40
  distro_tracking: recipe information update

Petr Štetiar (1):
  modutils-initscripts: fix wrong order of module loading happening in
    udev

Saul Wold (4):
  slang: Fix host contamination issue
  qemu: disable sdl for target build
  ofono: add bluze to DEPENDS list
  qemu-helper-nativesdk: Update LIC_FILE_CHKSUM for renamed helper

Scott Garman (1):
  cdrtools: upgrade to v3.00

Tom Zanussi (1):
  linux-tools.inc: turn off newt and dwarf for perf

Zhai Edwin (6):
  tasks: Upgrade to 0.19 (from 0.18)
  avahi: Upgrade to 0.6.30 (from 0.6.28)
  consolekit: Upgrade to 0.4.4 (from 0.4.3)
  libgpg-error: Upgrade to 1.10 (from 1.9)
  jpeg: Upgrade to 8c (from 8b)
  puzzles: Upgrade to svn r9151 (from r9084)

 meta/classes/cpan.bbclass                          |    1 +
 meta/classes/rootfs_rpm.bbclass                    |   11 +-
 .../conf/distro/include/distro_tracking_fields.inc |   72 +-
 .../distro/include/preferred-xorg-versions.inc     |    8 +-
 .../pcmciautils-017/version_workaround.patch       |   16 -
 .../makefile_fix.patch                             |   58 +-
 meta/recipes-bsp/pcmciautils/pcmciautils.inc       |    1 +
 meta/recipes-bsp/pcmciautils/pcmciautils_017.bb    |   12 -
 meta/recipes-bsp/pcmciautils/pcmciautils_018.bb    |   11 +
 meta/recipes-connectivity/avahi/avahi.inc          |    2 +-
 .../avahi/{avahi_0.6.28.bb => avahi_0.6.30.bb}     |    6 +-
 .../avahi/files/initscript.patch                   |    2 +
 meta/recipes-connectivity/ofono/ofono.inc          |    2 +-
 .../{jpeg-8b => jpeg-8c}/debian-libjpeg7_7-1.diff  |    4 +
 meta/recipes-core/jpeg/{jpeg_8b.bb => jpeg_8c.bb}  |    8 +-
 meta/recipes-core/tasks/task-core-tools.bb         |    8 +-
 .../cdrtools-native/glibc-conflict-rename.patch    |  228 --
 .../cdrtools/cdrtools-native/no_usr_src.patch      |   26 -
 .../cdrtools/cdrtools-native_2.01.bb               |   26 -
 .../cdrtools/cdrtools-native_3.00.bb               |   24 +
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |   82 +
 .../gcc/gcc-4.6.0/100-uclibc-conf.patch            |   37 +
 .../gcc/gcc-4.6.0/103-uclibc-conf-noupstream.patch |   15 +
 .../gcc/gcc-4.6.0/200-uclibc-locale.patch          | 2840 ++++++++++++++++++++
 .../gcc/gcc-4.6.0/203-uclibc-locale-no__x.patch    |  233 ++
 .../gcc-4.6.0/204-uclibc-locale-wchar_fix.patch    |   52 +
 .../gcc/gcc-4.6.0/205-uclibc-locale-update.patch   |  519 ++++
 .../gcc/gcc-4.6.0/301-missing-execinfo_h.patch     |   13 +
 .../gcc/gcc-4.6.0/302-c99-snprintf.patch           |   13 +
 .../gcc/gcc-4.6.0/303-c99-complex-ugly-hack.patch  |   14 +
 .../gcc/gcc-4.6.0/304-index_macro.patch            |   28 +
 .../gcc-4.6.0/305-libmudflap-susv3-legacy.patch    |   49 +
 .../gcc/gcc-4.6.0/306-libstdc++-namespace.patch    |   38 +
 .../gcc/gcc-4.6.0/307-locale_facets.patch          |   19 +
 .../gcc/gcc-4.6.0/602-sdk-libstdc++-includes.patch |   20 +
 .../recipes-devtools/gcc/gcc-4.6.0/64bithack.patch |   33 +
 .../gcc/gcc-4.6.0/740-sh-pr24836.patch             |   29 +
 .../gcc/gcc-4.6.0/800-arm-bigendian.patch          |   34 +
 .../gcc/gcc-4.6.0/904-flatten-switch-stmt-00.patch |   74 +
 .../gcc/gcc-4.6.0/COLLECT_GCC_OPTIONS.patch        |   23 +
 .../GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch       |   33 +
 .../gcc/gcc-4.6.0/arm-bswapsi2.patch               |   13 +
 .../gcc/gcc-4.6.0/arm-nolibfloat.patch             |   24 +
 .../gcc/gcc-4.6.0/arm-softfloat.patch              |   16 +
 .../gcc/gcc-4.6.0/arm-unbreak-eabi-armv4t.dpatch   |   36 +
 .../gcc/gcc-4.6.0/cache-amnesia.patch              |   31 +
 .../gcc-4.6.0/disable_relax_pic_calls_flag.patch   |   46 +
 .../gcc/gcc-4.6.0/fortran-cross-compile-hack.patch |   30 +
 .../gcc/gcc-4.6.0/gcc-4.0.2-e300c2c3.patch         |  319 +++
 .../gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch          |   31 +
 .../gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch      |  114 +
 .../gcc/gcc-4.6.0/gcc-arm-frename-registers.patch  |   25 +
 .../gcc/gcc-4.6.0/gcc-flags-for-build.patch        |  178 ++
 .../gcc/gcc-4.6.0/gcc-ice-hack.dpatch              |  331 +++
 .../gcc/gcc-4.6.0/gcc-poison-dir-extend.patch      |   25 +
 .../gcc/gcc-4.6.0/gcc-poison-parameters.patch      |   74 +
 .../gcc-4.6.0/gcc-poison-system-directories.patch  |  221 ++
 .../gcc-uclibc-locale-ctype_touplow_t.patch        |   70 +
 .../gcc/gcc-4.6.0/libstdc++-pic.dpatch             |   71 +
 .../gcc/gcc-4.6.0/optional_libstdc.patch           |   84 +
 meta/recipes-devtools/gcc/gcc-4.6.0/pr30961.dpatch |  179 ++
 meta/recipes-devtools/gcc/gcc-4.6.0/pr35942.patch  |   38 +
 .../gcc/gcc-4.6.0/zecke-xgcc-cpp.patch             |   28 +
 .../gcc/gcc-cross-initial_4.6.0.bb                 |    2 +
 .../gcc/gcc-cross-intermediate_4.6.0.bb            |    3 +
 meta/recipes-devtools/gcc/gcc-cross_4.6.0.bb       |    8 +
 .../gcc/gcc-crosssdk-initial_4.6.0.bb              |    4 +
 .../gcc/gcc-crosssdk-intermediate_4.6.0.bb         |    4 +
 meta/recipes-devtools/gcc/gcc-runtime_4.6.0.bb     |   10 +
 meta/recipes-devtools/gcc/gcc_4.6.0.bb             |    7 +
 meta/recipes-devtools/gcc/libgcc_4.6.0.bb          |   46 +
 meta/recipes-devtools/git/files/autotools.patch    |    2 +
 .../git/{git_1.7.3.4.bb => git_1.7.4.3.bb}         |    4 +-
 meta/recipes-devtools/opkg/opkg.inc                |    4 +
 meta/recipes-devtools/opkg/opkg_0.1.8.bb           |   13 +-
 meta/recipes-devtools/opkg/opkg_svn.bb             |   13 +-
 .../libperl-5.8.3-create-libperl-soname.patch      |   11 -
 ...e_2.36.bb => libxml-parser-perl-native_2.40.bb} |    0
 ...ser-perl_2.36.bb => libxml-parser-perl_2.40.bb} |    8 +-
 .../perl/perl-5.12.2/09_fix_installperl.patch      |    2 +
 .../Configure-multilib.patch                       |    2 +
 .../perl/perl-5.12.2/Makefile.SH.patch             |    2 +
 .../perl/perl-5.12.2/Makefile.patch                |    2 +
 .../perl/perl-5.12.2/asm-pageh-fix.patch           |    2 +
 .../perl/perl-5.12.2/cross-generate_uudmap.patch   |    2 +
 .../perl/perl-5.12.2/debian/arm_optim.diff         |    2 +
 .../debian/arm_thread_stress_timeout.diff          |    2 +
 .../perl/perl-5.12.2/debian/cpan_config_path.diff  |    2 +
 .../perl-5.12.2/debian/cpan_definstalldirs.diff    |    2 +
 .../perl-5.12.2/debian/cpanplus_config_path.diff   |    2 +
 .../debian/cpanplus_definstalldirs.diff            |    2 +
 .../perl/perl-5.12.2/debian/db_file_ver.diff       |    2 +
 .../perl-5.12.2/debian/deprecate-with-apt.diff     |    2 +
 .../debian/devel-ppport-ia64-optim.diff            |    2 +
 .../perl-5.12.2/debian/disable-zlib-bundling.diff  |    2 +
 .../perl/perl-5.12.2/debian/doc_info.diff          |    2 +
 .../perl/perl-5.12.2/debian/enc2xs_inc.diff        |    2 +
 .../perl/perl-5.12.2/debian/errno_ver.diff         |    2 +
 .../perl/perl-5.12.2/debian/extutils_hacks.diff    |    2 +
 .../perl/perl-5.12.2/debian/fakeroot.diff          |    2 +
 .../perl-5.12.2/debian/fixes/autodie-flock.diff    |    2 +
 .../debian/fixes/concat-stack-corruption.diff      |    2 +
 .../debian/fixes/cpanplus-without-home.diff        |    2 +
 .../perl-5.12.2/debian/fixes/h2ph-gcc-4.5.diff     |    2 +
 .../perl-5.12.2/debian/fixes/hurd-ccflags.diff     |    2 +
 .../perl-5.12.2/debian/fixes/lc-numeric-docs.diff  |    2 +
 .../debian/fixes/lc-numeric-sprintf.diff           |    2 +
 .../perl-5.12.2/debian/fixes/net_smtp_docs.diff    |    2 +
 .../perl/perl-5.12.2/debian/fixes/processPL.diff   |    2 +
 .../perl/perl-5.12.2/debian/instmodsh_doc.diff     |    2 +
 .../perl/perl-5.12.2/debian/ld_run_path.diff       |    2 +
 .../perl-5.12.2/debian/libnet_config_path.diff     |    2 +
 .../perl-5.12.2/debian/m68k_thread_stress.diff     |    2 +
 .../perl/perl-5.12.2/debian/mod_paths.diff         |    2 +
 .../debian/module_build_man_extensions.diff        |    2 +
 .../perl/perl-5.12.2/debian/perlivp.diff           |    2 +
 .../perl/perl-5.12.2/debian/prune_libs.diff        |    2 +
 .../debian/squelch-locale-warnings.diff            |    2 +
 .../perl/perl-5.12.2/generate-sh.patch             |    2 +
 .../perl/perl-5.12.2/installperl.patch             |    2 +
 .../{files => perl-5.12.2}/letgcc-find-errno.patch |    2 +
 .../perl/perl-5.12.2/native-nopacklist.patch       |    2 +
 .../perl/perl-5.12.2/native-perlinc.patch          |    2 +
 .../perl/perl-5.12.2/native-ssp.patch              |    2 +
 .../perl/perl-5.12.2/parallel_build_fix_1.patch    |    2 +
 .../perl/perl-5.12.2/parallel_build_fix_2.patch    |    2 +
 .../perl/perl-5.12.2/parallel_build_fix_3.patch    |    2 +
 .../perl/perl-5.12.2/parallel_build_fix_4.patch    |    2 +
 .../perl/perl-5.12.2/parallel_build_fix_5.patch    |    2 +
 .../perl/perl-5.12.2/parallel_build_fix_6.patch    |    2 +
 .../perl/perl-5.12.2/perl-configpm-switch.patch    |    2 +
 .../perl/perl-5.12.2/perl-dynloader.patch          |   12 +-
 .../perl/perl-5.12.2/perl-enable-gdbm.patch        |    2 +
 .../perl/perl-5.12.2/perl-moreconfig.patch         |    2 +
 meta/recipes-devtools/perl/perl_5.12.2.bb          |    2 +-
 .../python/python-gst/python-path.patch            |    2 +
 ...python-gst_0.10.19.bb => python-gst_0.10.21.bb} |    6 +-
 .../python/python-pycairo_1.8.10.bb                |    8 +-
 .../qemu/qemu-helper-nativesdk_1.0.bb              |    2 +-
 meta/recipes-devtools/qemu/qemu.inc                |    8 +-
 meta/recipes-extended/mdadm/files/fix-z-now.patch  |   15 -
 .../mdadm/{mdadm_3.1.4.bb => mdadm_3.2.1.bb}       |    9 +-
 meta/recipes-extended/slang/slang_2.2.4.bb         |    3 +-
 meta/recipes-gnome/tasks/task-core-sdk-gmae.bb     |    4 +-
 .../tasks/task-core-standalone-gmae-sdk-target.bb  |    4 +-
 meta/recipes-gnome/tasks/task-sdk-gmae.inc         |    1 +
 .../{libxfixes_4.0.5.bb => libxfixes_5.0.bb}       |    4 +-
 ...util-macros_1.11.0.bb => util-macros_1.13.0.bb} |    4 +-
 meta/recipes-kernel/linux/linux-tools.inc          |    4 +-
 ...remove_ppc_specific_time_reading_function.patch |   85 -
 meta/recipes-kernel/lttng/lttng-ust_0.11.bb        |   32 -
 meta/recipes-kernel/lttng/lttng-ust_0.12.bb        |   28 +
 ...g-viewer_0.12.36.bb => lttng-viewer_0.12.38.bb} |    6 +-
 .../modutils/modutils-initscripts.bb               |    4 +-
 meta/recipes-sato/pimlico/tasks/tasks-owl.diff     |    5 +
 .../pimlico/{tasks_0.18.bb => tasks_0.19.bb}       |    4 +-
 .../puzzles/files/oh-puzzles-owl-menu.patch        |    5 +
 .../puzzles/{puzzles_r9084.bb => puzzles_r9151.bb} |    2 +-
 .../{consolekit_0.4.3.bb => consolekit_0.4.4.bb}   |   10 +-
 .../consolekit/files/nopolkit.patch                |    2 +
 .../pkgconfig.patch                                |    2 +
 .../{libgpg-error_1.9.bb => libgpg-error_1.10.bb}  |    6 +-
 .../liburcu/{liburcu_0.5.2.bb => liburcu_0.5.4.bb} |   11 +-
 .../mpfr/{mpfr_3.0.0.bb => mpfr_3.0.1.bb}          |    4 +-
 164 files changed, 6659 insertions(+), 590 deletions(-)
 delete mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch
 rename meta/recipes-bsp/pcmciautils/{pcmciautils-017 => pcmciautils-018}/makefile_fix.patch (63%)
 delete mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils_017.bb
 create mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils_018.bb
 rename meta/recipes-connectivity/avahi/{avahi_0.6.28.bb => avahi_0.6.30.bb} (82%)
 rename meta/recipes-core/jpeg/{jpeg-8b => jpeg-8c}/debian-libjpeg7_7-1.diff (98%)
 rename meta/recipes-core/jpeg/{jpeg_8b.bb => jpeg_8c.bb} (85%)
 delete mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch
 delete mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
 delete mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb
 create mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native_3.00.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0.inc
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/100-uclibc-conf.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/103-uclibc-conf-noupstream.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/200-uclibc-locale.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/203-uclibc-locale-no__x.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/204-uclibc-locale-wchar_fix.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/205-uclibc-locale-update.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/301-missing-execinfo_h.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/302-c99-snprintf.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/303-c99-complex-ugly-hack.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/304-index_macro.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/305-libmudflap-susv3-legacy.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/306-libstdc++-namespace.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/307-locale_facets.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/602-sdk-libstdc++-includes.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/64bithack.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/740-sh-pr24836.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/800-arm-bigendian.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/904-flatten-switch-stmt-00.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/COLLECT_GCC_OPTIONS.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-bswapsi2.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-nolibfloat.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-softfloat.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-unbreak-eabi-armv4t.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/cache-amnesia.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/disable_relax_pic_calls_flag.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/fortran-cross-compile-hack.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.0.2-e300c2c3.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-arm-frename-registers.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-flags-for-build.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-ice-hack.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-dir-extend.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-parameters.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-system-directories.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-uclibc-locale-ctype_touplow_t.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/libstdc++-pic.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/optional_libstdc.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/pr30961.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/pr35942.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/zecke-xgcc-cpp.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-cross-initial_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-cross-intermediate_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-cross_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-runtime_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/libgcc_4.6.0.bb
 rename meta/recipes-devtools/git/{git_1.7.3.4.bb => git_1.7.4.3.bb} (59%)
 delete mode 100644 meta/recipes-devtools/perl/files/libperl-5.8.3-create-libperl-soname.patch
 rename meta/recipes-devtools/perl/{libxml-parser-perl-native_2.36.bb => libxml-parser-perl-native_2.40.bb} (100%)
 rename meta/recipes-devtools/perl/{libxml-parser-perl_2.36.bb => libxml-parser-perl_2.40.bb} (61%)
 rename meta/recipes-devtools/perl/{files => perl-5.12.2}/Configure-multilib.patch (96%)
 rename meta/recipes-devtools/perl/{files => perl-5.12.2}/letgcc-find-errno.patch (96%)
 rename meta/recipes-devtools/python/{python-gst_0.10.19.bb => python-gst_0.10.21.bb} (82%)
 delete mode 100644 meta/recipes-extended/mdadm/files/fix-z-now.patch
 rename meta/recipes-extended/mdadm/{mdadm_3.1.4.bb => mdadm_3.2.1.bb} (78%)
 rename meta/recipes-graphics/xorg-lib/{libxfixes_4.0.5.bb => libxfixes_5.0.bb} (79%)
 rename meta/recipes-graphics/xorg-util/{util-macros_1.11.0.bb => util-macros_1.13.0.bb} (79%)
 delete mode 100644 meta/recipes-kernel/lttng/lttng-ust-0.11/remove_ppc_specific_time_reading_function.patch
 delete mode 100644 meta/recipes-kernel/lttng/lttng-ust_0.11.bb
 create mode 100644 meta/recipes-kernel/lttng/lttng-ust_0.12.bb
 rename meta/recipes-kernel/lttng/{lttng-viewer_0.12.36.bb => lttng-viewer_0.12.38.bb} (85%)
 rename meta/recipes-sato/pimlico/{tasks_0.18.bb => tasks_0.19.bb} (78%)
 rename meta/recipes-sato/puzzles/{puzzles_r9084.bb => puzzles_r9151.bb} (94%)
 rename meta/recipes-support/consolekit/{consolekit_0.4.3.bb => consolekit_0.4.4.bb} (75%)
 rename meta/recipes-support/libgpg-error/{libgpg-error-1.9 => libgpg-error-1.10}/pkgconfig.patch (98%)
 rename meta/recipes-support/libgpg-error/{libgpg-error_1.9.bb => libgpg-error_1.10.bb} (82%)
 rename meta/recipes-support/liburcu/{liburcu_0.5.2.bb => liburcu_0.5.4.bb} (61%)
 rename meta/recipes-support/mpfr/{mpfr_3.0.0.bb => mpfr_3.0.1.bb} (70%)




^ permalink raw reply	[flat|nested] 47+ messages in thread

* [PATCH 01/33] slang: Fix host contamination issue
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 02/33] cdrtools: upgrade to v3.00 Saul Wold
                   ` (31 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Saul Wold <sgw@linux.intel.com>

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-extended/slang/slang_2.2.4.bb |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-extended/slang/slang_2.2.4.bb b/meta/recipes-extended/slang/slang_2.2.4.bb
index 2b000a4..4257b05 100644
--- a/meta/recipes-extended/slang/slang_2.2.4.bb
+++ b/meta/recipes-extended/slang/slang_2.2.4.bb
@@ -24,7 +24,8 @@ inherit autotools
 SRC_URI[md5sum] = "7fcfd447e378f07dd0c0bae671fe6487"
 SRC_URI[sha256sum] = "9a8257a9a2a55099af858b13338dc8f3a06dd2069f46f0df2c9c3bb84a01d5db"
 
-EXTRA_OECONF += " --without-png"
+EXTRA_OECONF += " --without-z --without-png --x-includes=${STAGING_DIR_HOST}/usr/include/X11 --x-libraries=${STAGING_DIR_HOST}/usr/lib"
+
 do_install() {
 	oe_runmake install DESTDIR=${D} -e 'INST_LIB_DIR=${STAGING_DIR_HOST}/usr/lib'
 }
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 02/33] cdrtools: upgrade to v3.00
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
  2011-04-22  7:24 ` [PATCH 01/33] slang: Fix host contamination issue Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22 10:00   ` Scott Garman
  2011-04-22  7:24 ` [PATCH 03/33] tasks: Upgrade to 0.19 (from 0.18) Saul Wold
                   ` (30 subsequent siblings)
  32 siblings, 1 reply; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Scott Garman <scott.a.garman@intel.com>

* Addresses CVE-2003-0655
* Fixes [YOCTO #976]

Note that the license has changed to the CDDL for most utilities.

Note the following discussion of distribution issues with mixing GPL
and CDDL licenses:

http://lwn.net/Articles/195167/

This should not impact us at this is a -native recipe only.

Recipe changes derived from OpenEmbedded.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
---
 .../cdrtools-native/glibc-conflict-rename.patch    |  228 --------------------
 .../cdrtools/cdrtools-native/no_usr_src.patch      |   26 ---
 .../cdrtools/cdrtools-native_2.01.bb               |   26 ---
 .../cdrtools/cdrtools-native_3.00.bb               |   24 ++
 4 files changed, 24 insertions(+), 280 deletions(-)
 delete mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch
 delete mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
 delete mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb
 create mode 100644 meta/recipes-devtools/cdrtools/cdrtools-native_3.00.bb

diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch b/meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch
deleted file mode 100644
index 0b9b892..0000000
--- a/meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch
+++ /dev/null
@@ -1,228 +0,0 @@
-Index: cdrtools-2.01/include/schily.h
-===================================================================
---- cdrtools-2.01.orig/include/schily.h	2009-06-18 11:30:45.000000000 +0100
-+++ cdrtools-2.01/include/schily.h	2009-06-18 11:31:22.000000000 +0100
-@@ -108,7 +108,7 @@
- 		/* 6th arg not const, fexecv forces av[ac] = NULL */
- extern	int	fexecv __PR((const char *, FILE *, FILE *, FILE *, int,
- 							char **));
--extern	int	fexecve __PR((const char *, FILE *, FILE *, FILE *,
-+extern	int	fexecve_schily __PR((const char *, FILE *, FILE *, FILE *,
- 					char * const *, char * const *));
- extern	int	fspawnv __PR((FILE *, FILE *, FILE *, int, char * const *));
- extern	int	fspawnl __PR((FILE *, FILE *, FILE *,
-@@ -187,7 +187,7 @@
- extern	char	*findbytes __PR((const void *, int, char));
- extern	int	findline __PR((const char *, char, const char *,
- 							int, char **, int));
--extern	int	getline __PR((char *, int));
-+extern	int	getline_schily __PR((char *, int));
- extern	int	getstr __PR((char *, int));
- extern	int	breakline __PR((char *, char, char **, int));
- extern	int	getallargs __PR((int *, char * const**, const char *, ...));
-Index: cdrtools-2.01/libscg/scsitransp.c
-===================================================================
---- cdrtools-2.01.orig/libscg/scsitransp.c	2009-06-18 11:33:57.000000000 +0100
-+++ cdrtools-2.01/libscg/scsitransp.c	2009-06-18 11:34:24.000000000 +0100
-@@ -323,7 +323,7 @@
- 
- 	js_printf("%s", msg);
- 	flush();
--	if (getline(okbuf, sizeof (okbuf)) == EOF)
-+	if (getline_schily(okbuf, sizeof (okbuf)) == EOF)
- 		exit(EX_BAD);
- 	if (streql(okbuf, "y") || streql(okbuf, "yes") ||
- 	    streql(okbuf, "Y") || streql(okbuf, "YES"))
-Index: cdrtools-2.01/libschily/fexec.c
-===================================================================
---- cdrtools-2.01.orig/libschily/fexec.c	2009-06-18 11:29:29.000000000 +0100
-+++ cdrtools-2.01/libschily/fexec.c	2009-06-18 11:30:36.000000000 +0100
-@@ -159,7 +159,7 @@
- 	} while (p != NULL);
- 	va_end(args);
- 
--	ret = fexecve(name, in, out, err, av, env);
-+	ret = fexecve_schily(name, in, out, err, av, env);
- 	if (av != xav)
- 		free(av);
- 	return (ret);
-@@ -173,11 +173,11 @@
- 	char *av[];
- {
- 	av[ac] = NULL;			/*  force list to be null terminated */
--	return (fexecve(name, in, out, err, av, environ));
-+	return (fexecve_schily(name, in, out, err, av, environ));
- }
- 
- EXPORT int
--fexecve(name, in, out, err, av, env)
-+fexecve_schily(name, in, out, err, av, env)
- 	const char *name;
- 	FILE *in, *out, *err;
- 	char * const av[], * const env[];
-Index: cdrtools-2.01/libschily/stdio/fgetline.c
-===================================================================
---- cdrtools-2.01.orig/libschily/stdio/fgetline.c	2009-06-18 11:28:14.000000000 +0100
-+++ cdrtools-2.01/libschily/stdio/fgetline.c	2009-06-18 11:28:55.000000000 +0100
-@@ -64,7 +64,7 @@
- }
- 
- EXPORT int
--getline(buf, len)
-+getline_schily(buf, len)
- 	char	*buf;
- 	int	len;
- {
-Index: cdrtools-2.01/readcd/io.c
-===================================================================
---- cdrtools-2.01.orig/readcd/io.c	2009-06-18 11:33:57.000000000 +0100
-+++ cdrtools-2.01/readcd/io.c	2009-06-18 11:34:38.000000000 +0100
-@@ -138,7 +138,7 @@
- 		(*prt)(s, *lp, mini, maxi, dp);
- 		flush();
- 		line[0] = '\0';
--		if (getline(line, 80) == EOF)
-+		if (getline_schily(line, 80) == EOF)
- 			exit(EX_BAD);
- 
- 		linep = skipwhite(line);
-@@ -205,7 +205,7 @@
- 	printf("%r", form, args);
- 	va_end(args);
- 	flush();
--	if (getline(okbuf, sizeof(okbuf)) == EOF)
-+	if (getline_schily(okbuf, sizeof(okbuf)) == EOF)
- 		exit(EX_BAD);
- 	if (okbuf[0] == '?') {
- 		printf("Enter 'y', 'Y', 'yes' or 'YES' if you agree with the previous asked question.\n");
-Index: cdrtools-2.01/readcd/readcd.c
-===================================================================
---- cdrtools-2.01.orig/readcd/readcd.c	2009-06-18 11:33:58.000000000 +0100
-+++ cdrtools-2.01/readcd/readcd.c	2009-06-18 11:35:03.000000000 +0100
-@@ -1651,7 +1651,7 @@
- 		error("Copy from SCSI (%d,%d,%d) disk to file\n",
- 					scg_scsibus(scgp), scg_target(scgp), scg_lun(scgp));
- 		error("Enter filename [%s]: ", defname); flush();
--		(void) getline(filename, sizeof (filename));
-+		(void) getline_schily(filename, sizeof (filename));
- 	}
- 
- 	if (askrange) {
-@@ -1820,7 +1820,7 @@
- 		error("Copy from file to SCSI (%d,%d,%d) disk\n",
- 					scg_scsibus(scgp), scg_target(scgp), scg_lun(scgp));
- 		error("Enter filename [%s]: ", defname); flush();
--		(void) getline(filename, sizeof (filename));
-+		(void) getline_schily(filename, sizeof (filename));
- 		error("Notice: reading from file always starts at file offset 0.\n");
- 
- 		getlong("Enter starting sector for copy:", &addr, 0L, end-1);
-Index: cdrtools-2.01/scgcheck/dmaresid.c
-===================================================================
---- cdrtools-2.01.orig/scgcheck/dmaresid.c	2009-06-18 11:33:59.000000000 +0100
-+++ cdrtools-2.01/scgcheck/dmaresid.c	2009-06-18 11:35:43.000000000 +0100
-@@ -64,7 +64,7 @@
- 	printf("Ready to start test for working DMA residual count? Enter <CR> to continue: ");
- 	fprintf(logfile, "**********> Testing for working DMA residual count.\n");
- 	flushit();
--	(void) getline(abuf, sizeof (abuf));
-+	(void) getline_schily(abuf, sizeof (abuf));
- 
- 	printf("**********> Testing for working DMA residual count == 0.\n");
- 	fprintf(logfile, "**********> Testing for working DMA residual count == 0.\n");
-@@ -95,7 +95,7 @@
- 	printf("Ready to start test for working DMA residual count == DMA count? Enter <CR> to continue: ");
- 	fprintf(logfile, "**********> Testing for working DMA residual count == DMA count.\n");
- 	flushit();
--	(void) getline(abuf, sizeof (abuf));
-+	(void) getline_schily(abuf, sizeof (abuf));
- 	passed = TRUE;
- 	dmacnt = cnt;
- 	ret = xtinquiry(scgp, 0, dmacnt);
-@@ -130,7 +130,7 @@
- 	printf("Ready to start test for working DMA residual count == 1? Enter <CR> to continue: ");
- 	fprintf(logfile, "**********> Testing for working DMA residual count == 1.\n");
- 	flushit();
--	(void) getline(abuf, sizeof (abuf));
-+	(void) getline_schily(abuf, sizeof (abuf));
- 	passed = TRUE;
- 	dmacnt = cnt+1;
- 	ret = xtinquiry(scgp, cnt, dmacnt);
-Index: cdrtools-2.01/scgcheck/scgcheck.c
-===================================================================
---- cdrtools-2.01.orig/scgcheck/scgcheck.c	2009-06-18 11:33:59.000000000 +0100
-+++ cdrtools-2.01/scgcheck/scgcheck.c	2009-06-18 11:35:31.000000000 +0100
-@@ -189,7 +189,7 @@
- 			break;
- 		error("Enter SCSI device name for bus scanning [%s]: ", device);
- 		flushit();
--		(void) getline(device, sizeof (device));
-+		(void) getline_schily(device, sizeof (device));
- 		if (device[0] == '\0')
- 			strcpy(device, "0,6,0");
- 
-@@ -227,7 +227,7 @@
- 	do {
- 		error("Enter SCSI device name [%s]: ", device);
- 		flushit();
--		(void) getline(device, sizeof (device));
-+		(void) getline_schily(device, sizeof (device));
- 		if (device[0] == '\0')
- 			strcpy(device, "0,6,0");
- 
-@@ -256,7 +256,7 @@
- 
- 	printf("Ready to start test for second SCSI open? Enter <CR> to continue: ");
- 	flushit();
--	(void) getline(abuf, sizeof (abuf));
-+	(void) getline_schily(abuf, sizeof (abuf));
- #define	CHECK_SECOND_OPEN
- #ifdef	CHECK_SECOND_OPEN
- 	if (!streql(abuf, "n")) {
-@@ -344,7 +344,7 @@
- 
- 	printf("Ready to start test for succeeded command? Enter <CR> to continue: ");
- 	flushit();
--	(void) getline(abuf, sizeof (abuf));
-+	(void) getline_schily(abuf, sizeof (abuf));
- 	scgp->verbose++;
- 	ret = inquiry(scgp, buf, sizeof (struct scsi_inquiry));
- 	scg_vsetup(scgp);
-Index: cdrtools-2.01/scgcheck/sense.c
-===================================================================
---- cdrtools-2.01.orig/scgcheck/sense.c	2009-06-18 11:33:58.000000000 +0100
-+++ cdrtools-2.01/scgcheck/sense.c	2009-06-18 11:35:54.000000000 +0100
-@@ -66,7 +66,7 @@
- 	printf("Ready to start test for failing command? Enter <CR> to continue: ");
- 	fprintf(logfile, "**********> Testing for failed SCSI command.\n");
- 	flushit();
--	(void)getline(abuf, sizeof(abuf));
-+	(void)getline_schily(abuf, sizeof(abuf));
- /*	scgp->verbose++;*/
- 	fillbytes(buf, sizeof(struct scsi_inquiry), '\0');
- 	fillbytes((caddr_t)scgp->scmd, sizeof(*scgp->scmd), '\0');
-@@ -82,13 +82,13 @@
- 		printf("the test utility. Otherwise remove any medium from the drive.\n");
- 		printf("Ready to start test for failing command? Enter <CR> to continue: ");
- 		flushit();
--		(void)getline(abuf, sizeof(abuf));
-+		(void)getline_schily(abuf, sizeof(abuf));
- 		ret = test_unit_ready(scgp);
- 		if (ret >= 0 || !scg_cmd_err(scgp)) {
- 			printf("Test Unit Ready did not fail.\n");
- 			printf("Ready to eject tray? Enter <CR> to continue: ");
- 			flushit();
--			(void)getline(abuf, sizeof(abuf));
-+			(void)getline_schily(abuf, sizeof(abuf));
- 			scsi_unload(scgp, (cdr_t *)0);
- 			ret = test_unit_ready(scgp);
- 		}
-@@ -127,7 +127,7 @@
- 	printf("Ready to start test for sense data count? Enter <CR> to continue: ");
- 	fprintf(logfile, "**********> Testing for SCSI sense data count.\n");
- 	flushit();
--	(void)getline(abuf, sizeof(abuf));
-+	(void)getline_schily(abuf, sizeof(abuf));
- 	printf("Testing if at least CCS_SENSE_LEN (%d) is supported...\n", CCS_SENSE_LEN);
- 	fprintf(logfile, "**********> Testing if at least CCS_SENSE_LEN (%d) is supported...\n", CCS_SENSE_LEN);
- 	ret = sensecount(scgp, CCS_SENSE_LEN);
diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch b/meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
deleted file mode 100644
index 0318d31..0000000
--- a/meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: cdrtools-2.01/DEFAULTS/Defaults.gnu
-===================================================================
---- cdrtools-2.01.orig/DEFAULTS/Defaults.gnu	2008-09-22 12:42:12.000000000 +0100
-+++ cdrtools-2.01/DEFAULTS/Defaults.gnu	2008-09-22 12:42:27.000000000 +0100
-@@ -18,7 +18,7 @@
- ###########################################################################
- CWARNOPTS=
- 
--DEFINCDIRS=	$(SRCROOT)/include /usr/src/linux/include
-+DEFINCDIRS=	$(SRCROOT)/include
- LDPATH=		-L/opt/schily/lib
- RUNPATH=	-R $(INS_BASE)/lib -R /opt/schily/lib -R $(OLIBSDIR)
- 
-Index: cdrtools-2.01/DEFAULTS/Defaults.linux
-===================================================================
---- cdrtools-2.01.orig/DEFAULTS/Defaults.linux	2008-09-22 12:42:08.000000000 +0100
-+++ cdrtools-2.01/DEFAULTS/Defaults.linux	2008-09-22 12:42:37.000000000 +0100
-@@ -18,7 +18,7 @@
- ###########################################################################
- CWARNOPTS=
- 
--DEFINCDIRS=	$(SRCROOT)/include /usr/src/linux/include
-+DEFINCDIRS=	$(SRCROOT)/include
- LDPATH=		-L/opt/schily/lib
- RUNPATH=	-R $(INS_BASE)/lib -R /opt/schily/lib -R $(OLIBSDIR)
- 
diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb b/meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb
deleted file mode 100644
index 769e5e2..0000000
--- a/meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb
+++ /dev/null
@@ -1,26 +0,0 @@
-# cdrtools-native OE build file
-# Copyright (C) 2004-2006, Advanced Micro Devices, Inc.  All Rights Reserved
-# Released under the MIT license (see packages/COPYING)
-
-LICENSE="GPL"
-DESCRIPTION="A set of tools for CD recording, including cdrecord"
-HOMEPAGE="http://cdrecord.berlios.de/old/private/cdrecord.html"
-PR = "r2"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-SRC_URI="ftp://ftp.berlios.de/pub/cdrecord/cdrtools-${PV}.tar.bz2 \
-         file://no_usr_src.patch;patch=1 \
-         file://glibc-conflict-rename.patch;patch=1"
-
-inherit native
-
-STAGE_TEMP="${WORKDIR}/image-temp"
-
-do_install() {
-	install -d ${STAGE_TEMP}
-	make install INS_BASE=${STAGE_TEMP}
-
-	install -d ${D}${bindir}/
-	install ${STAGE_TEMP}/bin/* ${D}${bindir}/
-}
diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native_3.00.bb b/meta/recipes-devtools/cdrtools/cdrtools-native_3.00.bb
new file mode 100644
index 0000000..9927cc9
--- /dev/null
+++ b/meta/recipes-devtools/cdrtools/cdrtools-native_3.00.bb
@@ -0,0 +1,24 @@
+SUMMARY = "A set of tools for CD recording, including cdrecord"
+DESCRIPTION = "A set of tools for CD recording, including cdrecord"
+HOMEPAGE = "http://cdrecord.berlios.de/private/cdrecord.html"
+SECTION = "utils"
+PRIORITY = "optional"
+# This package includes many utilities under different licenses
+LICENSE = "GPLv2+ & LGPLv2.1 & BSD & CDDL"
+# The top-level COPYING file lists all licenses of included utilities
+LIC_FILES_CHKSUM = "file://COPYING;md5=8d16123ffd39e649a5e4a6bc1de60e6d \
+                    file://cdrecord/LICENSE;md5=7f1cc1a48802a2ea3bf6febbb4c3b55e"
+
+PR = "r0"
+
+SRC_URI="ftp://ftp.berlios.de/pub/cdrecord/cdrtools-3.00.tar.gz"
+SRC_URI[md5sum] = "bb21cefefcfbb76cf249120e8978ffdd"
+SRC_URI[sha256sum] = "6326762da8b8281c9a910c66fe698cd4d1bc5f33c37b59e8f1c83343c25f3e98"
+
+S="${WORKDIR}/cdrtools-${PV}"
+
+inherit native
+
+do_install() {
+	make install INS_BASE=${D}/${exec_prefix}
+}
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 03/33] tasks: Upgrade to 0.19 (from 0.18)
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
  2011-04-22  7:24 ` [PATCH 01/33] slang: Fix host contamination issue Saul Wold
  2011-04-22  7:24 ` [PATCH 02/33] cdrtools: upgrade to v3.00 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 04/33] avahi: Upgrade to 0.6.30 (from 0.6.28) Saul Wold
                   ` (29 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Zhai Edwin <edwin.zhai@intel.com>

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
---
 meta/recipes-sato/pimlico/tasks/tasks-owl.diff     |    5 +++++
 .../pimlico/{tasks_0.18.bb => tasks_0.19.bb}       |    4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)
 rename meta/recipes-sato/pimlico/{tasks_0.18.bb => tasks_0.19.bb} (78%)

diff --git a/meta/recipes-sato/pimlico/tasks/tasks-owl.diff b/meta/recipes-sato/pimlico/tasks/tasks-owl.diff
index e407806..aab23ff 100644
--- a/meta/recipes-sato/pimlico/tasks/tasks-owl.diff
+++ b/meta/recipes-sato/pimlico/tasks/tasks-owl.diff
@@ -1,3 +1,8 @@
+This patch enable owl menu, which is hidden in the title bar to save space on
+small screen. It has not been used for a long time, rebase needed.
+
+Upstream-Status: Inappropriate [enable feature]
+
 Index: src/gtk/tasks-ui.xml
 ===================================================================
 --- src/gtk/tasks-ui.xml	(revision 338)
diff --git a/meta/recipes-sato/pimlico/tasks_0.18.bb b/meta/recipes-sato/pimlico/tasks_0.19.bb
similarity index 78%
rename from meta/recipes-sato/pimlico/tasks_0.18.bb
rename to meta/recipes-sato/pimlico/tasks_0.19.bb
index fd7edb3..8326643 100644
--- a/meta/recipes-sato/pimlico/tasks_0.18.bb
+++ b/meta/recipes-sato/pimlico/tasks_0.19.bb
@@ -7,8 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
 
 SRC_URI = "http://pimlico-project.org/sources/${BPN}/${BPN}-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "d40c0227e496b51be6fde10f387215ed"
-SRC_URI[sha256sum] = "08802003da2517c6e0b2defd66bcaf466edd0ce7188373f564d629af6b93cc91"
+SRC_URI[md5sum] = "0afd969758561599fd782e1effb39c08"
+SRC_URI[sha256sum] = "1a7fdc5f95a2193a1a25fdb13f071867fb7e42245ce19ccee4bcccb69e557f2e"
 
 OWL_poky = "--with-owl"
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 04/33] avahi: Upgrade to 0.6.30 (from 0.6.28)
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (2 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 03/33] tasks: Upgrade to 0.19 (from 0.18) Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 05/33] consolekit: Upgrade to 0.4.4 (from 0.4.3) Saul Wold
                   ` (28 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Zhai Edwin <edwin.zhai@intel.com>

This upgrade fix the one security issue:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2011-1002
[YOCTO #975] fixed.

This should be included in the Bernard point-release.

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
---
 meta/recipes-connectivity/avahi/avahi.inc          |    2 +-
 .../avahi/{avahi_0.6.28.bb => avahi_0.6.30.bb}     |    6 +++---
 .../avahi/files/initscript.patch                   |    2 ++
 3 files changed, 6 insertions(+), 4 deletions(-)
 rename meta/recipes-connectivity/avahi/{avahi_0.6.28.bb => avahi_0.6.30.bb} (82%)

diff --git a/meta/recipes-connectivity/avahi/avahi.inc b/meta/recipes-connectivity/avahi/avahi.inc
index 6d4b830..b2fa8ca 100644
--- a/meta/recipes-connectivity/avahi/avahi.inc
+++ b/meta/recipes-connectivity/avahi/avahi.inc
@@ -24,7 +24,7 @@ RRECOMMENDS_${PN}_append_libc-glibc = "libnss-mdns"
 SRC_URI = "http://avahi.org/download/avahi-${PV}.tar.gz \
         file://00avahi-autoipd \
         file://99avahi-autoipd \
-        file://initscript.patch;patch=1"
+        file://initscript.patch"
 
 inherit autotools pkgconfig update-rc.d gettext
 
diff --git a/meta/recipes-connectivity/avahi/avahi_0.6.28.bb b/meta/recipes-connectivity/avahi/avahi_0.6.30.bb
similarity index 82%
rename from meta/recipes-connectivity/avahi/avahi_0.6.28.bb
rename to meta/recipes-connectivity/avahi/avahi_0.6.30.bb
index 6e034b0..1084c04 100644
--- a/meta/recipes-connectivity/avahi/avahi_0.6.28.bb
+++ b/meta/recipes-connectivity/avahi/avahi_0.6.30.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
                     file://avahi-client/client.h;endline=23;md5=f4ac741a25c4f434039ba3e18c8674cf"
 
 RDEPENDS_avahi-daemon = "sysvinit-pidof"
-PR = "r2"
+PR = "r0"
 
 EXTRA_OECONF += "--disable-gtk3"
 
@@ -15,5 +15,5 @@ FILES_avahi-autoipd = "${sbindir}/avahi-autoipd \
                        ${sysconfdir}/avahi/avahi-autoipd.action \
 		       ${sysconfdir}/dhcp3/*/avahi-autoipd"
 
-SRC_URI[md5sum] = "d0143a5aa3265019072e53ab497818d0"
-SRC_URI[sha256sum] = "a0d80aac88212b9f9d5331c248091d3c9c9209f0e41985421636ebd14230fc91"
+SRC_URI[md5sum] = "e4db89a2a403ff4c47d66ac66fad1f43"
+SRC_URI[sha256sum] = "f9e4316c2339d0020726edd846d01bee0c39980906db0c247479e5807457ff1f"
diff --git a/meta/recipes-connectivity/avahi/files/initscript.patch b/meta/recipes-connectivity/avahi/files/initscript.patch
index f76a965..193889e 100644
--- a/meta/recipes-connectivity/avahi/files/initscript.patch
+++ b/meta/recipes-connectivity/avahi/files/initscript.patch
@@ -1,3 +1,5 @@
+Upstream-Status: Pending
+
 diff --git a/initscript/debian/avahi-daemon.in b/initscript/debian/avahi-daemon.in
 index 30a2c2f..b5848a8 100755
 --- a/initscript/debian/avahi-daemon.in
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 06/33] libgpg-error: Upgrade to 1.10 (from 1.9)
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (4 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 05/33] consolekit: Upgrade to 0.4.4 (from 0.4.3) Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 07/33] jpeg: Upgrade to 8c (from 8b) Saul Wold
                   ` (26 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Zhai Edwin <edwin.zhai@intel.com>

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
---
 .../pkgconfig.patch                                |    2 ++
 .../{libgpg-error_1.9.bb => libgpg-error_1.10.bb}  |    6 +++---
 2 files changed, 5 insertions(+), 3 deletions(-)
 rename meta/recipes-support/libgpg-error/{libgpg-error-1.9 => libgpg-error-1.10}/pkgconfig.patch (98%)
 rename meta/recipes-support/libgpg-error/{libgpg-error_1.9.bb => libgpg-error_1.10.bb} (82%)

diff --git a/meta/recipes-support/libgpg-error/libgpg-error-1.9/pkgconfig.patch b/meta/recipes-support/libgpg-error/libgpg-error-1.10/pkgconfig.patch
similarity index 98%
rename from meta/recipes-support/libgpg-error/libgpg-error-1.9/pkgconfig.patch
rename to meta/recipes-support/libgpg-error/libgpg-error-1.10/pkgconfig.patch
index 49e47d8..2764012 100644
--- a/meta/recipes-support/libgpg-error/libgpg-error-1.9/pkgconfig.patch
+++ b/meta/recipes-support/libgpg-error/libgpg-error-1.10/pkgconfig.patch
@@ -3,6 +3,8 @@
 # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
 #
 
+Upstream-Status: Pending
+
 Index: libgpg-error-1.8/configure.ac
 ===================================================================
 --- libgpg-error-1.8.orig/configure.ac	2010-05-06 06:01:08.000000000 -0700
diff --git a/meta/recipes-support/libgpg-error/libgpg-error_1.9.bb b/meta/recipes-support/libgpg-error/libgpg-error_1.10.bb
similarity index 82%
rename from meta/recipes-support/libgpg-error/libgpg-error_1.9.bb
rename to meta/recipes-support/libgpg-error/libgpg-error_1.10.bb
index 560340b..6dea084 100644
--- a/meta/recipes-support/libgpg-error/libgpg-error_1.9.bb
+++ b/meta/recipes-support/libgpg-error/libgpg-error_1.10.bb
@@ -13,10 +13,10 @@ SECTION = "libs"
 PR = "r0"
 
 SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-${PV}.tar.bz2 \
-           file://pkgconfig.patch;"
+           file://pkgconfig.patch"
 
-SRC_URI[md5sum] = "521b98aa9395e7eaf0ef2236233a0796"
-SRC_URI[sha256sum] = "54d9326bfbd46c705963c507953f65a40576d04b374e131008dc5b732ff1e3c3"
+SRC_URI[md5sum] = "736a03daa9dc5873047d4eb4a9c22a16"
+SRC_URI[sha256sum] = "520629b4568b5c29b1991c8ffc267c8bdee5f223c7333c42a651b56f9b1c5431"
 
 # move libgpg-error-config into -dev package
 FILES_${PN} = "${libdir}/lib*.so.*"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 05/33] consolekit: Upgrade to 0.4.4 (from 0.4.3)
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (3 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 04/33] avahi: Upgrade to 0.6.30 (from 0.6.28) Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 06/33] libgpg-error: Upgrade to 1.10 (from 1.9) Saul Wold
                   ` (27 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Zhai Edwin <edwin.zhai@intel.com>

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
---
 .../{consolekit_0.4.3.bb => consolekit_0.4.4.bb}   |   10 ++++++----
 .../consolekit/files/nopolkit.patch                |    2 ++
 2 files changed, 8 insertions(+), 4 deletions(-)
 rename meta/recipes-support/consolekit/{consolekit_0.4.3.bb => consolekit_0.4.4.bb} (75%)

diff --git a/meta/recipes-support/consolekit/consolekit_0.4.3.bb b/meta/recipes-support/consolekit/consolekit_0.4.4.bb
similarity index 75%
rename from meta/recipes-support/consolekit/consolekit_0.4.3.bb
rename to meta/recipes-support/consolekit/consolekit_0.4.4.bb
index 5bf4c52..0aec639 100644
--- a/meta/recipes-support/consolekit/consolekit_0.4.3.bb
+++ b/meta/recipes-support/consolekit/consolekit_0.4.4.bb
@@ -8,13 +8,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
 
 DEPENDS = "dbus"
 
+PR = "r0"
+
 inherit gnome
 
-SRC_URI = "http://www.freedesktop.org/software/ConsoleKit/dist/ConsoleKit-0.4.3.tar.bz2 \
-           file://nopolkit.patch;patch=1"
+SRC_URI = "http://www.freedesktop.org/software/ConsoleKit/dist/ConsoleKit-${PV}.tar.bz2 \
+           file://nopolkit.patch"
 
-SRC_URI[md5sum] = "4c39c6eacc75334b890f21eead1d2945"
-SRC_URI[sha256sum] = "fe02aca2b4c21df59aa5fbe6f28ea3ea4b3c9dd64c48c50634e9a53cf9c0dcc5"
+SRC_URI[md5sum] = "b57eb18eae8c4d3631d5f4f030218a29"
+SRC_URI[sha256sum] = "f0c00969fb6fe7d628071f0f43ac0d411982a5e798d7dc31747caa772c9716ae"
 S = "${WORKDIR}/ConsoleKit-${PV}"
 
 FILES_${PN} += "${libdir}/ConsoleKit ${datadir}/dbus-1 ${datadir}/PolicyKit"
diff --git a/meta/recipes-support/consolekit/files/nopolkit.patch b/meta/recipes-support/consolekit/files/nopolkit.patch
index 7a1f02a..a0d9d06 100644
--- a/meta/recipes-support/consolekit/files/nopolkit.patch
+++ b/meta/recipes-support/consolekit/files/nopolkit.patch
@@ -1,3 +1,5 @@
+Upstream-Status: Inappropriate [configuration]
+
 Index: ConsoleKit-0.4.3/configure.ac
 ===================================================================
 --- ConsoleKit-0.4.3.orig/configure.ac	2010-10-26 22:34:03.000000000 +0800
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 07/33] jpeg: Upgrade to 8c (from 8b)
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (5 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 06/33] libgpg-error: Upgrade to 1.10 (from 1.9) Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 08/33] modutils-initscripts: fix wrong order of module loading happening in udev Saul Wold
                   ` (25 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Zhai Edwin <edwin.zhai@intel.com>

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
---
 .../{jpeg-8b => jpeg-8c}/debian-libjpeg7_7-1.diff  |    4 ++++
 meta/recipes-core/jpeg/{jpeg_8b.bb => jpeg_8c.bb}  |    8 ++++----
 2 files changed, 8 insertions(+), 4 deletions(-)
 rename meta/recipes-core/jpeg/{jpeg-8b => jpeg-8c}/debian-libjpeg7_7-1.diff (98%)
 rename meta/recipes-core/jpeg/{jpeg_8b.bb => jpeg_8c.bb} (85%)

diff --git a/meta/recipes-core/jpeg/jpeg-8b/debian-libjpeg7_7-1.diff b/meta/recipes-core/jpeg/jpeg-8c/debian-libjpeg7_7-1.diff
similarity index 98%
rename from meta/recipes-core/jpeg/jpeg-8b/debian-libjpeg7_7-1.diff
rename to meta/recipes-core/jpeg/jpeg-8c/debian-libjpeg7_7-1.diff
index 2e4867a..3b8fa69 100755
--- a/meta/recipes-core/jpeg/jpeg-8b/debian-libjpeg7_7-1.diff
+++ b/meta/recipes-core/jpeg/jpeg-8c/debian-libjpeg7_7-1.diff
@@ -1,3 +1,7 @@
+This is a well-known debian patch used by many Linux distribution, but not
+accepted by upstream yet.
+Upstream-Status: Pending
+
 --- libjpeg7-7.orig/config.sub
 +++ libjpeg7-7/config.sub
 @@ -1,4 +1,10 @@
diff --git a/meta/recipes-core/jpeg/jpeg_8b.bb b/meta/recipes-core/jpeg/jpeg_8c.bb
similarity index 85%
rename from meta/recipes-core/jpeg/jpeg_8b.bb
rename to meta/recipes-core/jpeg/jpeg_8c.bb
index 93aa7be..ac00275 100644
--- a/meta/recipes-core/jpeg/jpeg_8b.bb
+++ b/meta/recipes-core/jpeg/jpeg_8c.bb
@@ -5,7 +5,7 @@ BUGTRACKER = ""
 
 LICENSE ="jpeg"
 LIC_FILES_CHKSUM = "file://cdjpeg.h;endline=12;md5=78fa8dbac547bb5b2a0e6457a6cfe21d \
-                    file://jpeglib.h;endline=14;md5=dd06b5575519f735ec2565ed36ce62e7 \
+                    file://jpeglib.h;endline=14;md5=22f1e0f8fc71f6f7563146d3b210dbe5 \
                     file://djpeg.c;endline=13;md5=ca89254925da06fef47e4b6468233432"
 
 SECTION = "libs"
@@ -17,10 +17,10 @@ DEPENDS_virtclass-native = "libtool-native"
 PR = "r1"
 
 SRC_URI = "http://www.ijg.org/files/jpegsrc.v${PV}.tar.gz \
-	   file://debian-libjpeg7_7-1.diff;patch=1"
+	   file://debian-libjpeg7_7-1.diff;"
 
-SRC_URI[md5sum] = "e022acbc5b36cd2cb70785f5b575661e"
-SRC_URI[sha256sum] = "36e6208edec591bae8f2fc370ea4f991447badb6377a125c211ffa7b503174a7"
+SRC_URI[md5sum] = "a2c10c04f396a9ce72894beb18b4e1f9"
+SRC_URI[sha256sum] = "edfc0b3e004b2fe58ffeeec89f96e3a3c28972c46725ec127d01edf8a1cc7c9a"
 
 inherit autotools 
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 08/33] modutils-initscripts: fix wrong order of module loading happening in udev
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (6 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 07/33] jpeg: Upgrade to 8c (from 8b) Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 09/33] Control over when package init scripts are run Saul Wold
                   ` (24 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: =?UTF-8?q?Petr=20=C5=A0tetiar?= <ynezz@true.cz>

In the current state, udev init script is loaded as 3rd and modutils.sh as
20th, so udevadm called in udev init script loads all kernel modules in some
unpredictable order, not honoring in any way specified order of modules in
/etc/modules. This causes some troubles mainly in the first boot. So to fix
this we now move loading of the kernel modules just before we exec udev init
script. Example of the current state:

	Starting udev
	rtc-m48t86 rtc-m48t86: rtc core: registered m48t86 as rtc0
	rtc-m48t86 rtc-m48t86: battery ok
	ep93xx-rtc ep93xx-rtc: rtc core: registered ep93xx-rtc as rtc1

	root@ts72xx:~# cat /etc/modules
	rtc-ep93xx
	ohci-hcd
	ts72xx_sbcinfo
	rtc-m48t86

As you can guess, this is really wrong behaviour, because I've rtc1 as the
main time source for my system.

	root@ts72xx:~# cat /etc/default/hwclock
	HWCLOCKACCESS=yes
	HWCLOCKDEVICE=/dev/rtc1

Expected behaviour with this patch applied:

	Please wait: booting...
	ep93xx-rtc ep93xx-rtc: rtc core: registered ep93xx-rtc as rtc0
	usbcore: registered new device driver usb
	ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
	...
	rtc-m48t86 rtc-m48t86: rtc core: registered m48t86 as rtc1
	rtc-m48t86 rtc-m48t86: battery ok
	Starting udev

Signed-off-by: Petr Štetiar <ynezz@true.cz>

(based on http://patches.openembedded.org/patch/1917/)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../modutils/modutils-initscripts.bb               |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-kernel/modutils/modutils-initscripts.bb b/meta/recipes-kernel/modutils/modutils-initscripts.bb
index 1665955..5ae34b4 100644
--- a/meta/recipes-kernel/modutils/modutils-initscripts.bb
+++ b/meta/recipes-kernel/modutils/modutils-initscripts.bb
@@ -4,10 +4,10 @@ LICENSE = "PD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=7bf87fc37976e93ec66ad84fac58c098"
 SRC_URI = "file://modutils.sh \
 	   file://PD.patch"
-PR = "r4"
+PR = "r5"
 
 INITSCRIPT_NAME = "modutils.sh"
-INITSCRIPT_PARAMS = "start 20 S ."
+INITSCRIPT_PARAMS = "start 2 S ."
 
 inherit update-rc.d
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 09/33] Control over when package init scripts are run
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (7 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 08/33] modutils-initscripts: fix wrong order of module loading happening in udev Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 10/33] qemu: disable sdl for target build Saul Wold
                   ` (23 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Gary Thomas <gary@mlbassoc.com>

When a package is built, some installation scripts must be
performed on the target.  In the case of a complete image,
these scripts are run by a separate step at init time, but
only during the first boot (other package install scripts
can just be run when the package is installed on the target).

This patch lets the distribution (or user) decide when these
postponed install scripts should run.  The default is normally
near the end of init, but there may be times when it's beneficial
to run them earlier so the "when" can be overridden.

Signed-off-by: Gary Thomas <gary@mlbassoc.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/classes/rootfs_rpm.bbclass          |   11 ++++++++---
 meta/recipes-devtools/opkg/opkg.inc      |    4 ++++
 meta/recipes-devtools/opkg/opkg_0.1.8.bb |   13 ++++---------
 meta/recipes-devtools/opkg/opkg_svn.bb   |   13 ++++---------
 4 files changed, 20 insertions(+), 21 deletions(-)

diff --git a/meta/classes/rootfs_rpm.bbclass b/meta/classes/rootfs_rpm.bbclass
index aa1b339..3a11858 100644
--- a/meta/classes/rootfs_rpm.bbclass
+++ b/meta/classes/rootfs_rpm.bbclass
@@ -26,6 +26,11 @@ RPM_POSTPROCESS_COMMANDS = ""
 #
 #IMAGE_LOCALES="en-gb"
 
+# 
+# Allow distributions to alter when [postponed] package install scripts are run
+#
+POSTINSTALL_INITPOSITION ?= "98"
+
 rpmlibdir = "/var/lib/rpm"
 opkglibdir = "${localstatedir}/lib/opkg"
 
@@ -116,7 +121,7 @@ EOF
 	install -d ${IMAGE_ROOTFS}/${sysconfdir}/rcS.d
 	# Stop $i getting expanded below...
 	i=\$i
-	cat > ${IMAGE_ROOTFS}${sysconfdir}/rcS.d/S98configure << EOF
+	cat > ${IMAGE_ROOTFS}${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure << EOF
 #!/bin/sh
 for i in /etc/rpm-postinsts/*.sh; do
 	echo "Running postinst $i..."
@@ -127,9 +132,9 @@ for i in /etc/rpm-postinsts/*.sh; do
 		echo "ERROR: postinst $i failed."
 	fi
 done
-rm -f ${sysconfdir}/rcS.d/S98configure
+rm -f ${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
 EOF
-	chmod 0755 ${IMAGE_ROOTFS}${sysconfdir}/rcS.d/S98configure
+	chmod 0755 ${IMAGE_ROOTFS}${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
 
 	install -d ${IMAGE_ROOTFS}/${sysconfdir}
 	echo ${BUILDNAME} > ${IMAGE_ROOTFS}/${sysconfdir}/version
diff --git a/meta/recipes-devtools/opkg/opkg.inc b/meta/recipes-devtools/opkg/opkg.inc
index c317491..50f1afc 100644
--- a/meta/recipes-devtools/opkg/opkg.inc
+++ b/meta/recipes-devtools/opkg/opkg.inc
@@ -34,3 +34,7 @@ BBCLASSEXTEND = "native nativesdk"
 
 PKGSUFFIX = ""
 PKGSUFFIX_virtclass-nativesdk = "-nativesdk"
+
+# Define a variable to allow distros to run configure earlier.
+# (for example, to enable loading of ethernet kernel modules before networking starts)
+POSTINSTALL_INITPOSITION ?= "98"
diff --git a/meta/recipes-devtools/opkg/opkg_0.1.8.bb b/meta/recipes-devtools/opkg/opkg_0.1.8.bb
index 6815474..18cf042 100644
--- a/meta/recipes-devtools/opkg/opkg_0.1.8.bb
+++ b/meta/recipes-devtools/opkg/opkg_0.1.8.bb
@@ -13,7 +13,7 @@ SRC_URI = "http://opkg.googlecode.com/files/opkg-${PV}.tar.gz \
            file://headerfix.patch \
 "
 
-PR = "r3"
+PR = "r4"
 
 PACKAGES =+ "libopkg${PKGSUFFIX}-dev libopkg${PKGSUFFIX} update-alternatives-cworth${PKGSUFFIX}"
 
@@ -26,11 +26,6 @@ do_install_append() {
 	install -d ${D}${localstatedir}/lib/opkg
 }
 
-# Define a variable to allow distros to run configure earlier.
-# (for example, to enable loading of ethernet kernel modules before networking starts)
-OPKG_INIT_POSITION = "98"
-OPKG_INIT_POSITION_slugos = "41"
-
 pkg_postinst_${PN} () {
 #!/bin/sh
 if [ "x$D" != "x" ]; then
@@ -38,9 +33,9 @@ if [ "x$D" != "x" ]; then
 	# this happens at S98 where our good 'ole packages script used to run
 	echo "#!/bin/sh
 opkg-cl configure
-rm -f /${sysconfdir}/rcS.d/S${OPKG_INIT_POSITION}configure
-" > $D${sysconfdir}/rcS.d/S${OPKG_INIT_POSITION}configure
-	chmod 0755 $D${sysconfdir}/rcS.d/S${OPKG_INIT_POSITION}configure
+rm -f /${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
+" > $D${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
+	chmod 0755 $D${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
 fi
 
 update-alternatives --install ${bindir}/opkg opkg ${bindir}/opkg-cl 100
diff --git a/meta/recipes-devtools/opkg/opkg_svn.bb b/meta/recipes-devtools/opkg/opkg_svn.bb
index 76ec838..d8af823 100644
--- a/meta/recipes-devtools/opkg/opkg_svn.bb
+++ b/meta/recipes-devtools/opkg/opkg_svn.bb
@@ -16,7 +16,7 @@ SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \
 S = "${WORKDIR}/trunk"
 
 PV = "0.1.8+svnr${SRCPV}"
-PR = "r1"
+PR = "r2"
 
 PACKAGES =+ "libopkg${PKGSUFFIX}-dev libopkg${PKGSUFFIX} update-alternatives-cworth${PKGSUFFIX}"
 
@@ -29,11 +29,6 @@ do_install_append() {
 	install -d ${D}${localstatedir}/lib/opkg
 }
 
-# Define a variable to allow distros to run configure earlier.
-# (for example, to enable loading of ethernet kernel modules before networking starts)
-OPKG_INIT_POSITION = "98"
-OPKG_INIT_POSITION_slugos = "41"
-
 pkg_postinst_${PN} () {
 #!/bin/sh
 if [ "x$D" != "x" ]; then
@@ -41,9 +36,9 @@ if [ "x$D" != "x" ]; then
 	# this happens at S98 where our good 'ole packages script used to run
 	echo "#!/bin/sh
 opkg-cl configure
-rm -f /${sysconfdir}/rcS.d/S${OPKG_INIT_POSITION}configure
-" > $D${sysconfdir}/rcS.d/S${OPKG_INIT_POSITION}configure
-	chmod 0755 $D${sysconfdir}/rcS.d/S${OPKG_INIT_POSITION}configure
+rm -f /${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
+" > $D${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
+	chmod 0755 $D${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}configure
 fi
 
 update-alternatives --install ${bindir}/opkg opkg ${bindir}/opkg-cl 100
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 10/33] qemu: disable sdl for target build
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (8 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 09/33] Control over when package init scripts are run Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 11/33] libxfixes: upgrade from 4.0.5 to the latest version 5.0 Saul Wold
                   ` (22 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Saul Wold <sgw@linux.intel.com>

This allows qemu  to build for the target in the world build.
Not sure this would make sense to run on the target.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-devtools/qemu/qemu.inc |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
index 412bdfd..362e9f3 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -8,9 +8,13 @@ QEMU_TARGETS ?= "arm i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
 
 require qemu-targets.inc
 
-EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --enable-kvm --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370"
+SDL ?= "--disable-sdl"
+SDL_virtclass-native ?= ""
+SDL_virtclass-nativesdk ?= ""
 
-#EXTRA_OECOF += "--disable-sdl"
+EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --enable-kvm --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370 ${SDL}"
+
+#EXTRA_OECONF += "--disable-sdl"
 
 inherit autotools
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 11/33] libxfixes: upgrade from 4.0.5 to the latest version 5.0
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (9 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 10/33] qemu: disable sdl for target build Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 12/33] util-macros: upgrade from 1.11.0 to 1.13.0 Saul Wold
                   ` (21 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 .../{libxfixes_4.0.5.bb => libxfixes_5.0.bb}       |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-graphics/xorg-lib/{libxfixes_4.0.5.bb => libxfixes_5.0.bb} (79%)

diff --git a/meta/recipes-graphics/xorg-lib/libxfixes_4.0.5.bb b/meta/recipes-graphics/xorg-lib/libxfixes_5.0.bb
similarity index 79%
rename from meta/recipes-graphics/xorg-lib/libxfixes_4.0.5.bb
rename to meta/recipes-graphics/xorg-lib/libxfixes_5.0.bb
index a69d5fd..0883cd1 100644
--- a/meta/recipes-graphics/xorg-lib/libxfixes_4.0.5.bb
+++ b/meta/recipes-graphics/xorg-lib/libxfixes_5.0.bb
@@ -19,5 +19,5 @@ XORG_PN = "libXfixes"
 
 BBCLASSEXTEND = "nativesdk"
 
-SRC_URI[md5sum] = "1b4b8386bd5d1751b2c7177223ad4629"
-SRC_URI[sha256sum] = "2e6cd020460e4ef5d5a1d9b5d21143e9f5e580036a79c7de26ae539d7bcb8d74"
+SRC_URI[md5sum] = "678071bd7f9f7467e2fc712d81022318"
+SRC_URI[sha256sum] = "537a2446129242737a35db40081be4bbcc126e56c03bf5f2b142b10a79cda2e3"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 12/33] util-macros: upgrade from 1.11.0 to 1.13.0
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (10 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 11/33] libxfixes: upgrade from 4.0.5 to the latest version 5.0 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22 15:27   ` Cui, Dexuan
  2011-04-22  7:24 ` [PATCH 13/33] preferred-xorg-versions.inc: update libxfixes, util-macros, xorg-cf-files Saul Wold
                   ` (20 subsequent siblings)
  32 siblings, 1 reply; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 ...util-macros_1.11.0.bb => util-macros_1.13.0.bb} |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-graphics/xorg-util/{util-macros_1.11.0.bb => util-macros_1.13.0.bb} (79%)

diff --git a/meta/recipes-graphics/xorg-util/util-macros_1.11.0.bb b/meta/recipes-graphics/xorg-util/util-macros_1.13.0.bb
similarity index 79%
rename from meta/recipes-graphics/xorg-util/util-macros_1.11.0.bb
rename to meta/recipes-graphics/xorg-util/util-macros_1.13.0.bb
index 765a577..a708ed0 100644
--- a/meta/recipes-graphics/xorg-util/util-macros_1.11.0.bb
+++ b/meta/recipes-graphics/xorg-util/util-macros_1.13.0.bb
@@ -20,5 +20,5 @@ RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})"
 
 BBCLASSEXTEND = "native nativesdk"
 
-SRC_URI[md5sum] = "8580021f3a9e242ab09d23d62e475d53"
-SRC_URI[sha256sum] = "212c3d14474d7cffdbc22437d4896211a5dce6b99b02b96229c9be7d963c90cf"
+SRC_URI[md5sum] = "31e9ddcbc1d8bc8c09ab180443974dd1"
+SRC_URI[sha256sum] = "7bff944fb120192e7fe1706e9c0b7e41666e7983ce3e2bdef0b7734392d9e695"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 13/33] preferred-xorg-versions.inc: update libxfixes, util-macros, xorg-cf-files
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (11 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 12/33] util-macros: upgrade from 1.11.0 to 1.13.0 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 14/33] mdadm: upgrade from 3.1.4 to the latest version 3.2.1 Saul Wold
                   ` (19 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 .../distro/include/preferred-xorg-versions.inc     |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/meta/conf/distro/include/preferred-xorg-versions.inc b/meta/conf/distro/include/preferred-xorg-versions.inc
index 23eaace..da730e6 100644
--- a/meta/conf/distro/include/preferred-xorg-versions.inc
+++ b/meta/conf/distro/include/preferred-xorg-versions.inc
@@ -51,7 +51,7 @@ PREFERRED_VERSION_libxdmcp-nativesdk ?= "1.1.0"
 PREFERRED_VERSION_libxevie ?= "1.0.2"
 PREFERRED_VERSION_libxext ?= "1.2.0"
 PREFERRED_VERSION_libxext-nativesdk ?= "1.2.0"
-PREFERRED_VERSION_libxfixes ?= "4.0.5"
+PREFERRED_VERSION_libxfixes ?= "5.0"
 PREFERRED_VERSION_libxfont ?= "1.4.3"
 PREFERRED_VERSION_libxfont-native ?= "1.4.3"
 PREFERRED_VERSION_libxfontcache ?= "1.0.5"
@@ -92,8 +92,8 @@ PREFERRED_VERSION_renderproto-nativesdk ?= "0.11.1"
 PREFERRED_VERSION_resourceproto ?= "1.1.1"
 PREFERRED_VERSION_scrnsaverproto ?= "1.2.1"
 PREFERRED_VERSION_trapproto ?= "3.4.3"
-PREFERRED_VERSION_util-macros ?= "1.11.0"
-PREFERRED_VERSION_util-macros-native ?= "1.11.0"
+PREFERRED_VERSION_util-macros ?= "1.13.0"
+PREFERRED_VERSION_util-macros-native ?= "1.13.0"
 PREFERRED_VERSION_videoproto ?= "2.3.1"
 PREFERRED_VERSION_windowswmproto ?= "1.0.4"
 PREFERRED_VERSION_x11perf ?= "1.5.3"
@@ -119,7 +119,7 @@ PREFERRED_VERSION_xhost ?= "1.0.4"
 PREFERRED_VERSION_xinit ?= "1.3.0"
 PREFERRED_VERSION_xineramaproto ?= "1.2.1"
 PREFERRED_VERSION_xmodmap ?= "1.0.5"
-PREFERRED_VERSION_xorg-cf-files ?= "1.0.3"
+PREFERRED_VERSION_xorg-cf-files ?= "1.0.4"
 PREFERRED_VERSION_xprop ?= "1.2.0"
 PREFERRED_VERSION_xproto ?= "7.0.21"
 PREFERRED_VERSION_xproto-native ?= "7.0.21"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 14/33] mdadm: upgrade from 3.1.4 to the latest version 3.2.1
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (12 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 13/33] preferred-xorg-versions.inc: update libxfixes, util-macros, xorg-cf-files Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 15/33] liburcu: upgrade from 0.5.2 to 0.5.4 Saul Wold
                   ` (18 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

removed fix-z-now.patch since 3.2.1 has integrated it.

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 meta/recipes-extended/mdadm/files/fix-z-now.patch  |   15 ---------------
 .../mdadm/{mdadm_3.1.4.bb => mdadm_3.2.1.bb}       |    9 ++++-----
 2 files changed, 4 insertions(+), 20 deletions(-)
 delete mode 100644 meta/recipes-extended/mdadm/files/fix-z-now.patch
 rename meta/recipes-extended/mdadm/{mdadm_3.1.4.bb => mdadm_3.2.1.bb} (78%)

diff --git a/meta/recipes-extended/mdadm/files/fix-z-now.patch b/meta/recipes-extended/mdadm/files/fix-z-now.patch
deleted file mode 100644
index 3cd606b..0000000
--- a/meta/recipes-extended/mdadm/files/fix-z-now.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Fix -z now is really a LD option, not a gcc option so use -Wl to pass it to LD
-
-Created-by: Saul Wold <saul.wold@intel.com>
-
---- Makefile.orig	2010-08-31 13:52:46.277764099 -0700
-+++ Makefile	2010-08-31 14:02:28.218014078 -0700
-@@ -167,7 +167,7 @@
- 
- # use '-z now' to guarantee no dynamic linker interactions with the monitor thread
- mdmon : $(MON_OBJS)
--	$(CC) $(LDFLAGS) $(MON_LDFLAGS) -z now -o mdmon $(MON_OBJS) $(LDLIBS)
-+	$(CC) $(LDFLAGS) $(MON_LDFLAGS) -Wl,-z,now -o mdmon $(MON_OBJS) $(LDLIBS)
- msg.o: msg.c msg.h
- 
- test_stripe : restripe.c mdadm.h
diff --git a/meta/recipes-extended/mdadm/mdadm_3.1.4.bb b/meta/recipes-extended/mdadm/mdadm_3.2.1.bb
similarity index 78%
rename from meta/recipes-extended/mdadm/mdadm_3.1.4.bb
rename to meta/recipes-extended/mdadm/mdadm_3.2.1.bb
index ef62a3f..937abad 100644
--- a/meta/recipes-extended/mdadm/mdadm_3.1.4.bb
+++ b/meta/recipes-extended/mdadm/mdadm_3.2.1.bb
@@ -8,13 +8,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
                     file://mdmon.c;beginline=4;endline=18;md5=af7d8444d9c4d3e5c7caac0d9d34039d \
                     file://mdadm.h;beglinlne=4;endline=22;md5=462bc9936ac0d3da110191a3f9994161"
 
-PR = "r1"
+PR = "r0"
 
-SRC_URI = "${KERNELORG_MIRROR}/linux/utils/raid/mdadm/${BPN}-${PV}.tar.bz2 \
-	   file://fix-z-now.patch;striplevel=0"
+SRC_URI = "${KERNELORG_MIRROR}/linux/utils/raid/mdadm/${BPN}-${PV}.tar.bz2"
 
-SRC_URI[md5sum] = "0e7dcb5cc4192ae3abd9956bac475576"
-SRC_URI[sha256sum] = "849ad0ad4ad3c1d2d8806a16b30e1f59ab2daf313cb103807207f7cba889ea63"
+SRC_URI[md5sum] = "d1e2549202bd79d9e99f1498d1109530"
+SRC_URI[sha256sum] = "7f68f149c6c0e8893d0b9220ac255b46af08e6a6b81223cab57ed54d628ae125"
 
 CFLAGS += "-fno-strict-aliasing"
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 15/33] liburcu: upgrade from 0.5.2 to 0.5.4
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (13 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 14/33] mdadm: upgrade from 3.1.4 to the latest version 3.2.1 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 16/33] lttng-ust: upgrade from 0.11 to the latest version 0.12 Saul Wold
                   ` (17 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

Add arm into COMPATIBLE_HOST since liburcu started to support
pre-ARMv7 from 0.5.3 on.

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 .../liburcu/{liburcu_0.5.2.bb => liburcu_0.5.4.bb} |   11 ++++-------
 1 files changed, 4 insertions(+), 7 deletions(-)
 rename meta/recipes-support/liburcu/{liburcu_0.5.2.bb => liburcu_0.5.4.bb} (61%)

diff --git a/meta/recipes-support/liburcu/liburcu_0.5.2.bb b/meta/recipes-support/liburcu/liburcu_0.5.4.bb
similarity index 61%
rename from meta/recipes-support/liburcu/liburcu_0.5.2.bb
rename to meta/recipes-support/liburcu/liburcu_0.5.4.bb
index fa9ddb3..8e17e5d 100644
--- a/meta/recipes-support/liburcu/liburcu_0.5.2.bb
+++ b/meta/recipes-support/liburcu/liburcu_0.5.4.bb
@@ -11,17 +11,14 @@ PR = "r0"
 
 SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2"
 
-SRC_URI[md5sum] = "a2978395806eed5d9a2de1e22efe70e0"
-SRC_URI[sha256sum] = "2f22966fe4b00ef547976a31c1c6a7c7bea3449ffa838806d9610e7424e184dd"
+SRC_URI[md5sum] = "04147d24749be75200173859839207f7"
+SRC_URI[sha256sum] = "02aedbb16c16bd034e246d5c9637a9232be559c66fc2fe4eb28948e234bd89f1"
 
 S = "${WORKDIR}/userspace-rcu-${PV}"
 
 inherit autotools
 
 # liburcu, which is only used by lttng-ust, may not build on other
-# platforms, e.g., on ARM, liburcu is only supported on ARMv7l while poky
-# only supports armv4/armv4t/armv5te. 1 more example: liburcu doesn't support
-# MIPS now.
-# So here let us first suppport x86/powerpc platforms now.
-COMPATIBLE_HOST = '(x86_64.*|i.86.*|powerpc.*)-linux'
+# platforms, like MIPS.
+COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|powerpc.*)-linux'
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 16/33] lttng-ust: upgrade from 0.11 to the latest version 0.12
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (14 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 15/33] liburcu: upgrade from 0.5.2 to 0.5.4 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 17/33] task-poky-tools.bb, task-sdk-gmae.inc: enable lttng-ust for ARM Saul Wold
                   ` (16 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

Updated LIC_FILES_CHKSUM as a new Copyright holder was added.
Removed the patch since 0.12 has integrated that.
Added arm into COMPATIBLE_HOST as 0.12 can build on arm now.

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 ...remove_ppc_specific_time_reading_function.patch |   85 --------------------
 meta/recipes-kernel/lttng/lttng-ust_0.11.bb        |   32 --------
 meta/recipes-kernel/lttng/lttng-ust_0.12.bb        |   28 +++++++
 3 files changed, 28 insertions(+), 117 deletions(-)
 delete mode 100644 meta/recipes-kernel/lttng/lttng-ust-0.11/remove_ppc_specific_time_reading_function.patch
 delete mode 100644 meta/recipes-kernel/lttng/lttng-ust_0.11.bb
 create mode 100644 meta/recipes-kernel/lttng/lttng-ust_0.12.bb

diff --git a/meta/recipes-kernel/lttng/lttng-ust-0.11/remove_ppc_specific_time_reading_function.patch b/meta/recipes-kernel/lttng/lttng-ust-0.11/remove_ppc_specific_time_reading_function.patch
deleted file mode 100644
index c5487fd..0000000
--- a/meta/recipes-kernel/lttng/lttng-ust-0.11/remove_ppc_specific_time_reading_function.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-Dexuan Cui <dexuan.cui@intel.com>: I got the following patch from lttng dev
-mailing list:
-http://lists.casi.polymtl.ca/pipermail/ltt-dev/2011-February/003903.html
-The patch looks good and I think it would be in next release. At present,
-let's add it into SRC_URI.
-
------------------------------------------------------------------
-The PPC version of the trace_clock_read64 was using the TB register
-which is not constant accross implementations. The currently
-measured time base on PPC was not accurate.
-So, for now, we rely on the CLOCK_MONOTONIC.
-
-This patch remove a bunch of #ifdef for x86 and PPC, since we now rely on
-the same base clock. It also fix the build on PPC that was currently broken
-
-Signed-off-by: Yannick Brosseau <yannick.brosseau@gmail.com>
------------------------------------------------------------------
-
---- a/include/ust/clock.h
-+++ b/include/ust/clock.h
-@@ -39,7 +39,6 @@
-    precision and monotonicity.
- */
- 
--#if __i386__ || __x86_64__
- /* Only available for x86 arch */
- #define CLOCK_TRACE_FREQ  14
- #define CLOCK_TRACE  15
-@@ -47,36 +46,10 @@
- 	struct timespec ts;
- 	u64 lttng_ts;
- };
--#endif /* __i386__ || __x86_64__ */
- 
- extern int ust_clock_source;
- 
- /* Choosing correct trace clock */
--#if __PPC__
--static __inline__ u64 trace_clock_read64(void)
--{
--	unsigned long tb_l;
--	unsigned long tb_h;
--	unsigned long tb_h2;
--	u64 tb;
--
--	__asm__ (
--		"1:\n\t"
--		"mftbu %[rhigh]\n\t"
--		"mftb %[rlow]\n\t"
--		"mftbu %[rhigh2]\n\t"
--		"cmpw %[rhigh],%[rhigh2]\n\t"
--		"bne 1b\n\t"
--		: [rhigh] "=r" (tb_h), [rhigh2] "=r" (tb_h2), [rlow] "=r" (tb_l));
--
--	tb = tb_h;
--	tb <<= 32;
--	tb |= tb_l;
--
--	return tb;
--}
--
--#else	/* !__PPC__ */
- 
- static __inline__ u64 trace_clock_read64(void)
- {
-@@ -101,17 +74,17 @@
- 	return retval;
- }
- 
--#endif /* __PPC__ */
--
- static __inline__ u64 trace_clock_frequency(void)
- {
- 	struct timespec ts;
- 	union lttng_timespec *lts = (union lttng_timespec *) &ts;
- 
-+#if __i386__ || __x86_64__
- 	if (likely(ust_clock_source == CLOCK_TRACE)) {
- 		clock_gettime(CLOCK_TRACE_FREQ, &ts);
- 		return lts->lttng_ts;
- 	}
-+#endif
- 	return 1000000000LL;
- }
- 
diff --git a/meta/recipes-kernel/lttng/lttng-ust_0.11.bb b/meta/recipes-kernel/lttng/lttng-ust_0.11.bb
deleted file mode 100644
index 9d2063a..0000000
--- a/meta/recipes-kernel/lttng/lttng-ust_0.11.bb
+++ /dev/null
@@ -1,32 +0,0 @@
-SUMMARY = "Linux Trace Toolkit Userspace Tracer"
-DESCRIPTION = "The LTTng Userspace Tracer (UST) is a library accompanied by a set of tools to trace userspace code"
-HOMEPAGE = "http://lttng.org/ust"
-BUGTRACKER = "n/a"
-
-LICENSE = "LGPLv2.1+ & BSD"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e647752e045a8c45b6f583771bd561ef \
-                    file://ustctl/ustctl.c;endline=16;md5=eceeaab8a5574f24d62f7950b9d1adf4 \
-                    file://snprintf/various.h;endline=31;md5=89f2509b6b4682c4fc95255eec4abe44"
-
-DEPENDS = "liburcu"
-
-PR = "r1"
-
-SRC_URI = "http://lttng.org/files/ust/releases/ust-${PV}.tar.gz \
-           file://remove_ppc_specific_time_reading_function.patch \
-           "
-
-SRC_URI[md5sum] = "0a23fa60df4da3fb5188e314001eb49c"
-SRC_URI[sha256sum] = "af8f699019ae260103bb401b6738d5e417e79732a509859b42a52e9a0f5edb35"
-
-S = "${WORKDIR}/ust-${PV}"
-
-inherit autotools
-
-# Due to liburcu not building on ARM or MIPS currently this recipe needs to
-# be limited also.
-# So here let us first suppport x86/powerpc platforms now.
-COMPATIBLE_HOST = '(x86_64.*|i.86.*|powerpc.*)-linux'
-
-
-
diff --git a/meta/recipes-kernel/lttng/lttng-ust_0.12.bb b/meta/recipes-kernel/lttng/lttng-ust_0.12.bb
new file mode 100644
index 0000000..7dadc04
--- /dev/null
+++ b/meta/recipes-kernel/lttng/lttng-ust_0.12.bb
@@ -0,0 +1,28 @@
+SUMMARY = "Linux Trace Toolkit Userspace Tracer"
+DESCRIPTION = "The LTTng Userspace Tracer (UST) is a library accompanied by a set of tools to trace userspace code"
+HOMEPAGE = "http://lttng.org/ust"
+BUGTRACKER = "n/a"
+
+LICENSE = "LGPLv2.1+ & BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e647752e045a8c45b6f583771bd561ef \
+                    file://ustctl/ustctl.c;endline=16;md5=b50c6fa0307175bb1ce0db49d752c03b \
+                    file://snprintf/various.h;endline=31;md5=89f2509b6b4682c4fc95255eec4abe44"
+
+DEPENDS = "liburcu"
+
+PR = "r0"
+
+SRC_URI = "http://lttng.org/files/ust/releases/ust-${PV}.tar.gz"
+
+SRC_URI[md5sum] = "fae6e324a56016658c5b83ec14ba0043"
+SRC_URI[sha256sum] = "215b05f47d0c9e3a2934926a7d14fa9c67025db917c3a1f641df40b08314ab0c"
+
+S = "${WORKDIR}/ust-${PV}"
+
+inherit autotools
+
+# Due to liburcu not building on MIPS currently this recipe needs to
+# be limited also.
+# So here let us first suppport x86/arm/powerpc platforms now.
+COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|powerpc.*)-linux'
+
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 17/33] task-poky-tools.bb, task-sdk-gmae.inc: enable lttng-ust for ARM
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (15 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 16/33] lttng-ust: upgrade from 0.11 to the latest version 0.12 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 18/33] lttng-viewer: upgrade from 0.12.36 to the latest version 0.12.38 Saul Wold
                   ` (15 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

lttng-ust can build on ARM from 0.12 on.
Merged with rebranding

Fixes [YOCTO #856]

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-core/tasks/task-core-tools.bb         |    8 ++++----
 meta/recipes-gnome/tasks/task-core-sdk-gmae.bb     |    4 ++--
 .../tasks/task-core-standalone-gmae-sdk-target.bb  |    4 ++--
 meta/recipes-gnome/tasks/task-sdk-gmae.inc         |    1 +
 4 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/meta/recipes-core/tasks/task-core-tools.bb b/meta/recipes-core/tasks/task-core-tools.bb
index 958dff1..9b2a4ce 100644
--- a/meta/recipes-core/tasks/task-core-tools.bb
+++ b/meta/recipes-core/tasks/task-core-tools.bb
@@ -2,11 +2,11 @@
 # Copyright (C) 2008 OpenedHand Ltd.
 #
 
-DESCRIPTION = "Tools tasks for Poky"
+DESCRIPTION = "Tools tasks for OE-Core"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
                     file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PR = "r8"
+PR = "r9"
 
 PACKAGES = "\
     task-core-tools-debug \
@@ -57,9 +57,9 @@ RRECOMMENDS_task-core-tools-profile = "\
 #    exmap-server
 
 # At present we only build lttng-ust on
-# qemux86/qemux86-64/qemuppc/emenlow/atom-pc since upstream liburcu
+# qemux86/qemux86-64/qemuppc/qemuarm/emenlow/atom-pc since upstream liburcu
 # (which is required by lttng-ust) may not build on other platforms, like
-# MIPS and qemu ARMv5te that poky uses now.
+# MIPS.
 RDEPENDS_task-core-tools-profile_append_qemux86 = " valgrind lttng-ust systemtap"
 RDEPENDS_task-core-tools-profile_append_qemux86-64 = " lttng-ust systemtap"
 RDEPENDS_task-core-tools-profile_append_qemuppc = " lttng-ust systemtap"
diff --git a/meta/recipes-gnome/tasks/task-core-sdk-gmae.bb b/meta/recipes-gnome/tasks/task-core-sdk-gmae.bb
index 6cb1410..d56aa07 100644
--- a/meta/recipes-gnome/tasks/task-core-sdk-gmae.bb
+++ b/meta/recipes-gnome/tasks/task-core-sdk-gmae.bb
@@ -2,11 +2,11 @@
 # Copyright (C) 2007 OpenedHand Ltd.
 #
 
-DESCRIPTION = "Gnome Mobile And Embedded Software Development Kit for OpenedHand Poky"
+DESCRIPTION = "Gnome Mobile And Embedded Software Development Kit for OE-Core"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
                     file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PR = "r10"
+PR = "r11"
 
 ALLOW_EMPTY = "1"
 
diff --git a/meta/recipes-gnome/tasks/task-core-standalone-gmae-sdk-target.bb b/meta/recipes-gnome/tasks/task-core-standalone-gmae-sdk-target.bb
index 32e60a8..42d4148 100644
--- a/meta/recipes-gnome/tasks/task-core-standalone-gmae-sdk-target.bb
+++ b/meta/recipes-gnome/tasks/task-core-standalone-gmae-sdk-target.bb
@@ -2,11 +2,11 @@
 # Copyright (C) 2007 OpenedHand Ltd.
 #
 
-DESCRIPTION = "Gnome Mobile And Embedded Software Development Kit for OpenedHand Poky"
+DESCRIPTION = "Gnome Mobile And Embedded Software Development Kit for OE-Core"
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
                     file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
-PR = "r12"
+PR = "r13"
 
 ALLOW_EMPTY = "1"
 
diff --git a/meta/recipes-gnome/tasks/task-sdk-gmae.inc b/meta/recipes-gnome/tasks/task-sdk-gmae.inc
index 0ab0b6e..2071089 100644
--- a/meta/recipes-gnome/tasks/task-sdk-gmae.inc
+++ b/meta/recipes-gnome/tasks/task-sdk-gmae.inc
@@ -35,5 +35,6 @@ 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"
 SDK-EXTRAS_emenlow ?= " lttng-ust-dev"
 SDK-EXTRAS_atom-pc ?= " lttng-ust-dev"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 18/33] lttng-viewer: upgrade from 0.12.36 to the latest version 0.12.38
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (16 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 17/33] task-poky-tools.bb, task-sdk-gmae.inc: enable lttng-ust for ARM Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 19/33] distro_tracking_fields.inc: update the info for the following recipes Saul Wold
                   ` (14 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 ...g-viewer_0.12.36.bb => lttng-viewer_0.12.38.bb} |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
 rename meta/recipes-kernel/lttng/{lttng-viewer_0.12.36.bb => lttng-viewer_0.12.38.bb} (85%)

diff --git a/meta/recipes-kernel/lttng/lttng-viewer_0.12.36.bb b/meta/recipes-kernel/lttng/lttng-viewer_0.12.38.bb
similarity index 85%
rename from meta/recipes-kernel/lttng/lttng-viewer_0.12.36.bb
rename to meta/recipes-kernel/lttng/lttng-viewer_0.12.38.bb
index fc13210..b8f2f2c 100644
--- a/meta/recipes-kernel/lttng/lttng-viewer_0.12.36.bb
+++ b/meta/recipes-kernel/lttng/lttng-viewer_0.12.38.bb
@@ -14,12 +14,12 @@ DEPENDS = "gtk+ pango popt"
 
 SECTION = "devel"
 
-ALTNAME = "lttv-${PV}-18112010"
+ALTNAME = "lttv-${PV}-21032011"
 
 SRC_URI = "http://lttng.org/files/packages/${ALTNAME}.tar.gz"
 
-SRC_URI[md5sum] = "967f7c9c843a43e2ec2ef9216edabc70"
-SRC_URI[sha256sum] = "a7d14ae84f9bb123298840922730d3121fa073dc036dccac63083d9686adeacd"
+SRC_URI[md5sum] = "071bf3dd13e7562c08ee8f8971cfc76d"
+SRC_URI[sha256sum] = "cf87ffcf5d266b18979418e610a180a0b4214de41677f0be867885e15b2f7647"
 S = "${WORKDIR}/${ALTNAME}"
 
 inherit autotools
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 19/33] distro_tracking_fields.inc: update the info for the following recipes
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (17 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 18/33] lttng-viewer: upgrade from 0.12.36 to the latest version 0.12.38 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 20/33] gcc: Add recipes for 4.6.0 Saul Wold
                   ` (13 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Dexuan Cui <dexuan.cui@intel.com>

powertop
latencytop
libxfixes
util-macros
mdadm
lttng-control
liburcu
lttng-ust
lttng-viewer

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
---
 .../conf/distro/include/distro_tracking_fields.inc |   65 ++++++++++----------
 1 files changed, 33 insertions(+), 32 deletions(-)

diff --git a/meta/conf/distro/include/distro_tracking_fields.inc b/meta/conf/distro/include/distro_tracking_fields.inc
index 7663ffa..4598f3c 100644
--- a/meta/conf/distro/include/distro_tracking_fields.inc
+++ b/meta/conf/distro/include/distro_tracking_fields.inc
@@ -976,13 +976,13 @@ RECIPE_MAINTAINER_pn-quota = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-mdadm = "green"
 RECIPE_DEPENDENCY_CHECK_pn-mdadm = "not done"
-RECIPE_LATEST_VERSION_pn-mdadm = "3.1.4"
+RECIPE_LATEST_VERSION_pn-mdadm = "3.2.1"
 RECIPE_NO_OF_PATCHES_pn-mdadm = "0"
 RECIPE_INTEL_SECTION_pn-mdadm = "base utils"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-mdadm = "25 days"
-RECIPE_LATEST_RELEASE_DATE_pn-mdadm = "Aug 31, 2010"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-mdadm = "1+ months"
+RECIPE_LATEST_RELEASE_DATE_pn-mdadm = "Mar 28, 2011"
 RECIPE_COMMENTS_pn-mdadm = ""
-RECIPE_LAST_UPDATE_pn-mdadm = "Aug 31, 2010"
+RECIPE_LAST_UPDATE_pn-mdadm = "Apr 20, 2011"
 RECIPE_MAINTAINER_pn-mdadm = "Dexuan Cui <dexuan.cui@intel.com>"
 
 RECIPE_STATUS_pn-screen = "green"
@@ -2710,13 +2710,14 @@ RECIPE_MAINTAINER_pn-oprofile = "Dexuan Cui <dexuan.cui@intel.com>"
 RECIPE_STATUS_pn-powertop = "green"
 DISTRO_PN_ALIAS_pn-powertop ="Meego=powertop Fedora=powertop Debian=powertop OpenSuSE=powertop Mandriva=powertop"
 RECIPE_DEPENDENCY_CHECK_pn-powertop = "not done"
-RECIPE_LATEST_VERSION_pn-powertop = "1.13"
-RECIPE_MANUAL_CHECK_DATE_pn-powertop = "Jan 28, 2011"
+RECIPE_LATEST_VERSION_pn-powertop = "1.97"
+RECIPE_MANUAL_CHECK_DATE_pn-powertop = "Apr 20, 2011"
+RECIPE_NO_UPDATE_REASON_pn-powertop = "Do not upgrade to version 1.97 since it's a beta release of the comming PowerTOP 2.0"
 RECIPE_NO_OF_PATCHES_pn-powertop = "1"
 RECIPE_PATCH_pn-powertop+stub_out_the_ncurses_calls_in_dump_mode = "stub out the ncurses calls in dump mode; this fixes a segfault"
 RECIPE_INTEL_SECTION_pn-powertop = "sdk-tools"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-powertop = "11 months"
-RECIPE_LATEST_RELEASE_DATE_pn-powertop = "07/2010"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-powertop = "3 days"
+RECIPE_LATEST_RELEASE_DATE_pn-powertop = "Jan 5, 2011"
 RECIPE_COMMENTS_pn-powertop = ""
 RECIPE_LAST_UPDATE_pn-powertop = "Aug 27, 2010"
 RECIPE_MAINTAINER_pn-powertop = "Dexuan Cui <dexuan.cui@intel.com>"
@@ -2725,12 +2726,12 @@ RECIPE_STATUS_pn-latencytop = "green"
 DISTRO_PN_ALIAS_pn-latencytop = "Meego=latencytop Fedora=latencytop Debian=latencytop OpenSuSE=latencytop"
 RECIPE_DEPENDENCY_CHECK_pn-latencytop = "not done"
 RECIPE_LATEST_VERSION_pn-latencytop = "0.5"
-RECIPE_MANUAL_CHECK_DATE_pn-latencytop = "Jan 28, 2011"
+RECIPE_MANUAL_CHECK_DATE_pn-latencytop = "Apr 20, 2011"
 RECIPE_NO_OF_PATCHES_pn-latencytop = "1"
 RECIPE_PATCH_pn-latencytop+latencytop-makefile = "-lncursesw ==> -lncurses; gcc ==> CC ?= gcc, and use $(CC); install:mkdir -p $(DESTDIR)/$(SBINDIR)"
 RECIPE_INTEL_SECTION_pn-latencytop = "sdk-tools"
 RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-latencytop = "1 year"
-RECIPE_LATEST_RELEASE_DATE_pn-latencytop = "04/2009"
+RECIPE_LATEST_RELEASE_DATE_pn-latencytop = "Apr 28, 2009"
 RECIPE_COMMENTS_pn-latencytop = ""
 RECIPE_LAST_UPDATE_pn-latencytop = "Jul 22, 2010"
 RECIPE_MAINTAINER_pn-latencytop = "Dexuan Cui <dexuan.cui@intel.com>"
@@ -2754,31 +2755,32 @@ RECIPE_MAINTAINER_pn-tcf-agent = "Dexuan Cui <dexuan.cui@intel.com>"
 RECIPE_STATUS_pn-liburcu = "green"
 DISTRO_PN_ALIAS_pn-liburcu = "Fedora=userspace-rcu Ubuntu=liburcu0"
 RECIPE_DEPENDENCY_CHECK_pn-liburcu = "not done"
-RECIPE_LATEST_VERSION_pn-liburcu = "0.5.2"
+RECIPE_LATEST_VERSION_pn-liburcu = "0.5.4"
 RECIPE_NO_OF_PATCHES_pn-liburcu = "0"
 RECIPE_INTEL_SECTION_pn-liburcu = "libs"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-liburcu = "29 minutes"
-RECIPE_LATEST_RELEASE_DATE_pn-liburcu = "Nov 18, 2010"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-liburcu = "20 hours"
+RECIPE_LATEST_RELEASE_DATE_pn-liburcu = "Mar 4, 2011"
 RECIPE_COMMENTS_pn-liburcu = ""
-RECIPE_LAST_UPDATE_pn-liburcu = "Jan 28, 2011"
+RECIPE_LAST_UPDATE_pn-liburcu = "Apr 20, 2011"
 RECIPE_MAINTAINER_pn-liburcu = "Dexuan Cui <dexuan.cui@intel.com>"
 
 RECIPE_STATUS_pn-lttng-ust = "green"
 DISTRO_PN_ALIAS_pn-lttng-ust = "OSPDT upstream=http://lttng.org/"
 RECIPE_DEPENDENCY_CHECK_pn-lttng-ust = "not done"
-RECIPE_LATEST_VERSION_pn-lttng-ust = "0.11"
+RECIPE_LATEST_VERSION_pn-lttng-ust = "0.12"
 RECIPE_NO_OF_PATCHES_pn-lttng-ust = "0"
 RECIPE_INTEL_SECTION_pn-lttng-ust = "sdk-tools"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-lttng-ust = "12+ hours"
-RECIPE_LATEST_RELEASE_DATE_pn-lttng-ust = "Jan 14, 2011"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-lttng-ust = "2 months"
+RECIPE_LATEST_RELEASE_DATE_pn-lttng-ust = "Mar 15, 2011"
 RECIPE_COMMENTS_pn-lttng-ust = ""
-RECIPE_LAST_UPDATE_pn-lttng-ust = "Jan 28, 2011"
+RECIPE_LAST_UPDATE_pn-lttng-ust = "Apr 20, 2011"
 RECIPE_MAINTAINER_pn-lttng-ust = "Dexuan Cui <dexuan.cui@intel.com>"
 
 RECIPE_STATUS_pn-lttng-control = "green"
 DISTRO_PN_ALIAS_pn-lttng-control = "OSPDT upstream=http://lttng.org/"
 RECIPE_DEPENDENCY_CHECK_pn-lttng-control = "not done"
 RECIPE_LATEST_VERSION_pn-lttng-control = "0.88-09242010"
+RECIPE_NO_UPDATE_REASON_pn-lttng-control = "0.88-09242010 has been the latest version."
 RECIPE_NO_OF_PATCHES_pn-lttng-control = "0"
 RECIPE_INTEL_SECTION_pn-lttng-control = "sdk-tools"
 RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-lttng-control = "3 months"
@@ -2790,13 +2792,14 @@ RECIPE_MAINTAINER_pn-lttng-control = "Dexuan Cui <dexuan.cui@intel.com>"
 RECIPE_STATUS_pn-lttng-viewer = "green"
 DISTRO_PN_ALIAS_pn-lttng-viewer = "OSPDT upstream=http://lttng.org/"
 RECIPE_DEPENDENCY_CHECK_pn-lttng-viewer = "not done"
-RECIPE_LATEST_VERSION_pn-lttng-viewer = "0.12.36-18112010"
+RECIPE_LATEST_VERSION_pn-lttng-viewer = "0.12.38-21032011"
+RECIPE_NO_UPDATE_REASON_pn-lttng-viewer = "0.12.38-21032011 has been the latest version."
 RECIPE_NO_OF_PATCHES_pn-lttng-viewer = "0"
 RECIPE_INTEL_SECTION_pn-lttng-viewer = "sdk-tools"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-lttng-viewer = "3 months"
-RECIPE_LATEST_RELEASE_DATE_pn-lttng-viewer = "Nov 18, 2010"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-lttng-viewer = "1 month"
+RECIPE_LATEST_RELEASE_DATE_pn-lttng-viewer = "Mar 21, 2011"
 RECIPE_COMMENTS_pn-lttng-viewer = ""
-RECIPE_LAST_UPDATE_pn-lttng-viewer = "Jan 28, 2011"
+RECIPE_LAST_UPDATE_pn-lttng-viewer = "Apr 20, 2011"
 RECIPE_MAINTAINER_pn-lttng-viewer = "Dexuan Cui <dexuan.cui@intel.com>"
 
 RECIPE_STATUS_pn-blktrace = "red"
@@ -4340,13 +4343,13 @@ RECIPE_MAINTAINER_pn-libxext = "Dexuan Cui <dexuan.cui@intel.com>"
 
 RECIPE_STATUS_pn-libxfixes = "green"
 RECIPE_DEPENDENCY_CHECK_pn-libxfixes = "not done"
-RECIPE_LATEST_VERSION_pn-libxfixes = "4.0.4"
+RECIPE_LATEST_VERSION_pn-libxfixes = "5.0"
 RECIPE_NO_OF_PATCHES_pn-libxfixes = "0"
 RECIPE_INTEL_SECTION_pn-libxfixes = "x11/libs"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-libxfixes = "3 years"
-RECIPE_LATEST_RELEASE_DATE_pn-libxfixes = "10/2009"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-libxfixes = "9 months"
+RECIPE_LATEST_RELEASE_DATE_pn-libxfixes = "Mar 8, 2011"
 RECIPE_COMMENTS_pn-libxfixes = ""
-RECIPE_LAST_UPDATE_pn-libxfixes = "Nov 24, 2010"
+RECIPE_LAST_UPDATE_pn-libxfixes = "Apr 20, 2011"
 RECIPE_MAINTAINER_pn-libxfixes = "Dexuan Cui <dexuan.cui@intel.com>"
 
 RECIPE_STATUS_pn-libxft = "green"
@@ -4431,14 +4434,12 @@ RECIPE_MAINTAINER_pn-xkeyboard-config = "Dexuan Cui <dexuan.cui@intel.com>"
 RECIPE_STATUS_pn-util-macros = "green"
 DISTRO_PN_ALIAS_pn-util-macros = "Meego=xorg-x11-util-macros Fedora=xorg-x11-util-macros Mandriva=x11-util-macros"
 RECIPE_DEPENDENCY_CHECK_pn-util-macros = "not done"
-RECIPE_LATEST_VERSION_pn-util-macros = "1.10.0"
-RECIPE_NO_OF_PATCHES_pn-util-macros = "1"
-RECIPE_PATCH_pn-util-macros+unbreak_cross_compile = "the patch isn't needed any longer since the upstream has fixed the cross-compile issue, so is removed from the recipe file"
+RECIPE_LATEST_VERSION_pn-util-macros = "1.13.0"
 RECIPE_INTEL_SECTION_pn-util-macros = "x11/utils"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-util-macros = "2 days"
-RECIPE_LATEST_RELEASE_DATE_pn-util-macros = "06/2010"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-util-macros = "17 days"
+RECIPE_LATEST_RELEASE_DATE_pn-util-macros = "Mar 14, 2011"
 RECIPE_COMMENTS_pn-util-macros = ""
-RECIPE_LAST_UPDATE_pn-util-macros = "Nov 24, 2010"
+RECIPE_LAST_UPDATE_pn-util-macros = "Apr 20, 2011"
 RECIPE_MAINTAINER_pn-util-macros = "Dexuan Cui <dexuan.cui@intel.com>"
 
 RECIPE_STATUS_pn-fontconfig = "green"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 20/33] gcc: Add recipes for 4.6.0
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (18 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 19/33] distro_tracking_fields.inc: update the info for the following recipes Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 21/33] puzzles: Upgrade to svn r9151 (from r9084) Saul Wold
                   ` (12 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Khem Raj <raj.khem@gmail.com>

Hi

This is initial set of patches for testing them out
The patches need documentation is pending
Some patches especially uclibc related are not
needed they must be dropped.

This is not the final version yet. But I would like
folks to help trying them out and report issues

I have tried to boot uclibc/arm on it but qemu
died on me. so please boot the images you build
and I would be interested to know the results.

-Khem

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-devtools/gcc/gcc-4.6.0.inc            |   82 +
 .../gcc/gcc-4.6.0/100-uclibc-conf.patch            |   37 +
 .../gcc/gcc-4.6.0/103-uclibc-conf-noupstream.patch |   15 +
 .../gcc/gcc-4.6.0/200-uclibc-locale.patch          | 2840 ++++++++++++++++++++
 .../gcc/gcc-4.6.0/203-uclibc-locale-no__x.patch    |  233 ++
 .../gcc-4.6.0/204-uclibc-locale-wchar_fix.patch    |   52 +
 .../gcc/gcc-4.6.0/205-uclibc-locale-update.patch   |  519 ++++
 .../gcc/gcc-4.6.0/301-missing-execinfo_h.patch     |   13 +
 .../gcc/gcc-4.6.0/302-c99-snprintf.patch           |   13 +
 .../gcc/gcc-4.6.0/303-c99-complex-ugly-hack.patch  |   14 +
 .../gcc/gcc-4.6.0/304-index_macro.patch            |   28 +
 .../gcc-4.6.0/305-libmudflap-susv3-legacy.patch    |   49 +
 .../gcc/gcc-4.6.0/306-libstdc++-namespace.patch    |   38 +
 .../gcc/gcc-4.6.0/307-locale_facets.patch          |   19 +
 .../gcc/gcc-4.6.0/602-sdk-libstdc++-includes.patch |   20 +
 .../recipes-devtools/gcc/gcc-4.6.0/64bithack.patch |   33 +
 .../gcc/gcc-4.6.0/740-sh-pr24836.patch             |   29 +
 .../gcc/gcc-4.6.0/800-arm-bigendian.patch          |   34 +
 .../gcc/gcc-4.6.0/904-flatten-switch-stmt-00.patch |   74 +
 .../gcc/gcc-4.6.0/COLLECT_GCC_OPTIONS.patch        |   23 +
 .../GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch       |   33 +
 .../gcc/gcc-4.6.0/arm-bswapsi2.patch               |   13 +
 .../gcc/gcc-4.6.0/arm-nolibfloat.patch             |   24 +
 .../gcc/gcc-4.6.0/arm-softfloat.patch              |   16 +
 .../gcc/gcc-4.6.0/arm-unbreak-eabi-armv4t.dpatch   |   36 +
 .../gcc/gcc-4.6.0/cache-amnesia.patch              |   31 +
 .../gcc-4.6.0/disable_relax_pic_calls_flag.patch   |   46 +
 .../gcc/gcc-4.6.0/fortran-cross-compile-hack.patch |   30 +
 .../gcc/gcc-4.6.0/gcc-4.0.2-e300c2c3.patch         |  319 +++
 .../gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch          |   31 +
 .../gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch      |  114 +
 .../gcc/gcc-4.6.0/gcc-arm-frename-registers.patch  |   25 +
 .../gcc/gcc-4.6.0/gcc-flags-for-build.patch        |  178 ++
 .../gcc/gcc-4.6.0/gcc-ice-hack.dpatch              |  331 +++
 .../gcc/gcc-4.6.0/gcc-poison-dir-extend.patch      |   25 +
 .../gcc/gcc-4.6.0/gcc-poison-parameters.patch      |   74 +
 .../gcc-4.6.0/gcc-poison-system-directories.patch  |  221 ++
 .../gcc-uclibc-locale-ctype_touplow_t.patch        |   70 +
 .../gcc/gcc-4.6.0/libstdc++-pic.dpatch             |   71 +
 .../gcc/gcc-4.6.0/optional_libstdc.patch           |   84 +
 meta/recipes-devtools/gcc/gcc-4.6.0/pr30961.dpatch |  179 ++
 meta/recipes-devtools/gcc/gcc-4.6.0/pr35942.patch  |   38 +
 .../gcc/gcc-4.6.0/zecke-xgcc-cpp.patch             |   28 +
 .../gcc/gcc-cross-initial_4.6.0.bb                 |    2 +
 .../gcc/gcc-cross-intermediate_4.6.0.bb            |    3 +
 meta/recipes-devtools/gcc/gcc-cross_4.6.0.bb       |    8 +
 .../gcc/gcc-crosssdk-initial_4.6.0.bb              |    4 +
 .../gcc/gcc-crosssdk-intermediate_4.6.0.bb         |    4 +
 meta/recipes-devtools/gcc/gcc-runtime_4.6.0.bb     |   10 +
 meta/recipes-devtools/gcc/gcc_4.6.0.bb             |    7 +
 meta/recipes-devtools/gcc/libgcc_4.6.0.bb          |   46 +
 51 files changed, 6266 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0.inc
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/100-uclibc-conf.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/103-uclibc-conf-noupstream.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/200-uclibc-locale.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/203-uclibc-locale-no__x.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/204-uclibc-locale-wchar_fix.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/205-uclibc-locale-update.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/301-missing-execinfo_h.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/302-c99-snprintf.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/303-c99-complex-ugly-hack.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/304-index_macro.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/305-libmudflap-susv3-legacy.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/306-libstdc++-namespace.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/307-locale_facets.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/602-sdk-libstdc++-includes.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/64bithack.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/740-sh-pr24836.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/800-arm-bigendian.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/904-flatten-switch-stmt-00.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/COLLECT_GCC_OPTIONS.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-bswapsi2.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-nolibfloat.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-softfloat.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/arm-unbreak-eabi-armv4t.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/cache-amnesia.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/disable_relax_pic_calls_flag.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/fortran-cross-compile-hack.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.0.2-e300c2c3.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-arm-frename-registers.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-flags-for-build.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-ice-hack.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-dir-extend.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-parameters.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-system-directories.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/gcc-uclibc-locale-ctype_touplow_t.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/libstdc++-pic.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/optional_libstdc.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/pr30961.dpatch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/pr35942.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-4.6.0/zecke-xgcc-cpp.patch
 create mode 100644 meta/recipes-devtools/gcc/gcc-cross-initial_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-cross-intermediate_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-cross_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc-runtime_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/gcc_4.6.0.bb
 create mode 100644 meta/recipes-devtools/gcc/libgcc_4.6.0.bb

diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0.inc b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
new file mode 100644
index 0000000..6f319d4
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0.inc
@@ -0,0 +1,82 @@
+require gcc-common.inc
+
+DEPENDS =+ "mpfr gmp libmpc"
+NATIVEDEPS = "mpfr-native gmp-native gettext-native libmpc-native"
+
+LICENSE="GCC RUNTIME LIBRARY EXCEPTION & GPLv3"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
+                   file://COPYING3;md5=d32239bcb673463ab874e80d47fae504 \
+                   file://COPYING3.LIB;md5=6a6a8e020838b23406c81b19c1d46df6 \
+                   file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
+		   file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8"
+
+SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
+	   file://gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
+	   file://100-uclibc-conf.patch \
+           file://gcc-uclibc-locale-ctype_touplow_t.patch \
+	   file://cache-amnesia.patch \
+	   file://gcc-flags-for-build.patch \
+           file://103-uclibc-conf-noupstream.patch  \
+           file://200-uclibc-locale.patch  \
+           file://203-uclibc-locale-no__x.patch;striplevel=1 \
+           file://204-uclibc-locale-wchar_fix.patch;striplevel=1 \
+           file://205-uclibc-locale-update.patch;striplevel=1 \
+           file://301-missing-execinfo_h.patch  \
+           file://302-c99-snprintf.patch  \
+           file://303-c99-complex-ugly-hack.patch  \
+           file://304-index_macro.patch  \
+           file://305-libmudflap-susv3-legacy.patch  \
+           file://306-libstdc++-namespace.patch  \
+           file://740-sh-pr24836.patch  \
+           file://800-arm-bigendian.patch  \
+           file://904-flatten-switch-stmt-00.patch  \
+           file://arm-nolibfloat.patch  \
+           file://arm-softfloat.patch \
+           file://zecke-xgcc-cpp.patch \
+           file://gcc-poison-system-directories.patch \
+           file://gcc-poison-dir-extend.patch \
+           file://gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \
+	   file://64bithack.patch \
+	   file://optional_libstdc.patch \
+	   file://disable_relax_pic_calls_flag.patch \
+	   file://gcc-poison-parameters.patch \
+	   file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
+	   file://COLLECT_GCC_OPTIONS.patch \
+	  "
+SRC_URI_append_sh3  = " file://sh3-installfix-fixheaders.patch;patch=1 "
+
+SRC_URI[md5sum] = "93d1c436bf991564524701259b6285a2"
+SRC_URI[sha256sum] = "23bd0013d76ac6fb4537e5e8f4e5947129362dcc32f0d08563b7d4d9e44c0e17"
+
+
+# Language Overrides
+FORTRAN = ""
+JAVA = ""
+
+#EXTRA_OECONF_BASE = "  --enable-cheaders=c_std \
+#			--enable-libssp \
+#			--disable-bootstrap \
+#			--disable-libgomp \
+#			--disable-libmudflap"
+EXTRA_OECONF_BASE = " --enable-lto \
+			--enable-libssp \
+			--disable-bootstrap \
+			--disable-libgomp \
+			--disable-libmudflap \
+			--enable-cheaders=c_global "
+
+EXTRA_OECONF_INITIAL = "--disable-libmudflap \
+			--disable-libgomp \
+			--disable-libssp \
+			--disable-libquadmath \
+			--enable-decimal-float=no"
+
+EXTRA_OECONF_INTERMEDIATE = "--disable-libmudflap \
+				--disable-libgomp \
+				--disable-libquadmath \
+				--disable-libssp"
+
+EXTRA_OECONF_append_linux-uclibc = " --disable-decimal-float "
+EXTRA_OECONF_append_linux-uclibceabi = " --disable-decimal-float "
+EXTRA_OECONF_append_linux-uclibcspe = " --disable-decimal-float "
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/100-uclibc-conf.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/100-uclibc-conf.patch
new file mode 100644
index 0000000..313b828
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/100-uclibc-conf.patch
@@ -0,0 +1,37 @@
+Index: gcc-4.6.0/contrib/regression/objs-gcc.sh
+===================================================================
+--- gcc-4.6.0.orig/contrib/regression/objs-gcc.sh
++++ gcc-4.6.0/contrib/regression/objs-gcc.sh
+@@ -106,6 +106,10 @@ if [ $H_REAL_TARGET = $H_REAL_HOST -a $H
+  then
+   make all-gdb all-dejagnu all-ld || exit 1
+   make install-gdb install-dejagnu install-ld || exit 1
++elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ]
++ then
++  make all-gdb all-dejagnu all-ld || exit 1
++  make install-gdb install-dejagnu install-ld || exit 1
+ elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then
+   make bootstrap || exit 1
+   make install || exit 1
+Index: gcc-4.6.0/libjava/classpath/ltconfig
+===================================================================
+--- gcc-4.6.0.orig/libjava/classpath/ltconfig
++++ gcc-4.6.0/libjava/classpath/ltconfig
+@@ -603,7 +603,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-
+ 
+ # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
+ case $host_os in
+-linux-gnu*) ;;
++linux-gnu*|linux-uclibc*) ;;
+ linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
+ esac
+ 
+@@ -1247,7 +1247,7 @@ linux-gnuoldld* | linux-gnuaout* | linux
+   ;;
+ 
+ # This must be Linux ELF.
+-linux-gnu*)
++linux*)
+   version_type=linux
+   need_lib_prefix=no
+   need_version=no
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/103-uclibc-conf-noupstream.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/103-uclibc-conf-noupstream.patch
new file mode 100644
index 0000000..b28fac2
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/103-uclibc-conf-noupstream.patch
@@ -0,0 +1,15 @@
+Corrects sub machine arch corectly
+
+Index: gcc-4.6.0/gcc/config.gcc
+===================================================================
+--- gcc-4.6.0.orig/gcc/config.gcc
++++ gcc-4.6.0/gcc/config.gcc
+@@ -2316,7 +2316,7 @@ score-*-elf)
+         ;;
+ sh-*-elf* | sh[12346l]*-*-elf* | \
+ sh-*-symbianelf* | sh[12346l]*-*-symbianelf* | \
+-  sh-*-linux* | sh[2346lbe]*-*-linux* | \
++  sh*-*-linux* | sh[2346lbe]*-*-linux* | \
+   sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
+    sh64-*-netbsd* | sh64l*-*-netbsd*)
+ 	tmake_file="${tmake_file} sh/t-sh sh/t-elf"
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/200-uclibc-locale.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/200-uclibc-locale.patch
new file mode 100644
index 0000000..0f2caff
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/200-uclibc-locale.patch
@@ -0,0 +1,2840 @@
+Index: gcc-4.6.0/libstdc++-v3/acinclude.m4
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/acinclude.m4
++++ gcc-4.6.0/libstdc++-v3/acinclude.m4
+@@ -1753,7 +1753,7 @@ dnl
+ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
+   GLIBCXX_ENABLE(clocale,auto,[[[=MODEL]]],
+     [use MODEL for target locale package],
+-    [permit generic|gnu|ieee_1003.1-2001|yes|no|auto])
++    [permit generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto])
+ 
+   # Deal with gettext issues.  Default to not using it (=no) until we detect
+   # support for it later.  Let the user turn it off via --e/d, but let that
+@@ -1774,6 +1774,9 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
+   # Default to "generic".
+   if test $enable_clocale_flag = auto; then
+     case ${target_os} in
++      *-uclibc*)
++        enable_clocale_flag=uclibc
++        ;;
+       linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
+ 	enable_clocale_flag=gnu
+ 	;;
+@@ -1915,6 +1918,40 @@ AC_DEFUN([GLIBCXX_ENABLE_CLOCALE], [
+       CTIME_CC=config/locale/generic/time_members.cc
+       CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
+       ;;
++    uclibc)
++      AC_MSG_RESULT(uclibc)
++
++      # Declare intention to use gettext, and add support for specific
++      # languages.
++      # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT
++      ALL_LINGUAS="de fr"
++
++      # Don't call AM-GNU-GETTEXT here. Instead, assume glibc.
++      AC_CHECK_PROG(check_msgfmt, msgfmt, yes, no)
++      if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then
++        USE_NLS=yes
++      fi
++      # Export the build objects.
++      for ling in $ALL_LINGUAS; do \
++        glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \
++        glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \
++      done
++      AC_SUBST(glibcxx_MOFILES)
++      AC_SUBST(glibcxx_POFILES)
++
++      CLOCALE_H=config/locale/uclibc/c_locale.h
++      CLOCALE_CC=config/locale/uclibc/c_locale.cc
++      CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
++      CCOLLATE_CC=config/locale/uclibc/collate_members.cc
++      CCTYPE_CC=config/locale/uclibc/ctype_members.cc
++      CMESSAGES_H=config/locale/uclibc/messages_members.h
++      CMESSAGES_CC=config/locale/uclibc/messages_members.cc
++      CMONEY_CC=config/locale/uclibc/monetary_members.cc
++      CNUMERIC_CC=config/locale/uclibc/numeric_members.cc
++      CTIME_H=config/locale/uclibc/time_members.h
++      CTIME_CC=config/locale/uclibc/time_members.cc
++      CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h
++      ;;
+   esac
+ 
+   # This is where the testsuite looks for locale catalogs, using the
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+@@ -0,0 +1,63 @@
++// Prototypes for GLIBC thread locale __-prefixed functions -*- C++ -*-
++
++// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++// Written by Jakub Jelinek <jakub@redhat.com>
++
++#include <bits/c++config.h>
++#include <clocale>
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning clean this up
++#endif
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++
++extern "C" __typeof(nl_langinfo_l) __nl_langinfo_l;
++extern "C" __typeof(strcoll_l) __strcoll_l;
++extern "C" __typeof(strftime_l) __strftime_l;
++extern "C" __typeof(strtod_l) __strtod_l;
++extern "C" __typeof(strtof_l) __strtof_l;
++extern "C" __typeof(strtold_l) __strtold_l;
++extern "C" __typeof(strxfrm_l) __strxfrm_l;
++extern "C" __typeof(newlocale) __newlocale;
++extern "C" __typeof(freelocale) __freelocale;
++extern "C" __typeof(duplocale) __duplocale;
++extern "C" __typeof(uselocale) __uselocale;
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++extern "C" __typeof(iswctype_l) __iswctype_l;
++extern "C" __typeof(towlower_l) __towlower_l;
++extern "C" __typeof(towupper_l) __towupper_l;
++extern "C" __typeof(wcscoll_l) __wcscoll_l;
++extern "C" __typeof(wcsftime_l) __wcsftime_l;
++extern "C" __typeof(wcsxfrm_l) __wcsxfrm_l;
++extern "C" __typeof(wctype_l) __wctype_l;
++#endif
++
++#endif // GLIBC 2.3 and later
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.cc
+@@ -0,0 +1,160 @@
++// Wrapper for underlying C-language localization -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.8  Standard locale categories.
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#include <cerrno>  // For errno
++#include <locale>
++#include <stdexcept>
++#include <langinfo.h>
++#include <bits/c++locale_internal.h>
++
++#ifndef __UCLIBC_HAS_XLOCALE__
++#define __strtol_l(S, E, B, L)      strtol((S), (E), (B))
++#define __strtoul_l(S, E, B, L)     strtoul((S), (E), (B))
++#define __strtoll_l(S, E, B, L)     strtoll((S), (E), (B))
++#define __strtoull_l(S, E, B, L)    strtoull((S), (E), (B))
++#define __strtof_l(S, E, L)         strtof((S), (E))
++#define __strtod_l(S, E, L)         strtod((S), (E))
++#define __strtold_l(S, E, L)        strtold((S), (E))
++#warning should dummy __newlocale check for C|POSIX ?
++#define __newlocale(a, b, c)        NULL
++#define __freelocale(a)             ((void)0)
++#define __duplocale(a)              __c_locale()
++#endif
++
++namespace std
++{
++  template<>
++    void
++    __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err,
++		   const __c_locale& __cloc)
++    {
++      if (!(__err & ios_base::failbit))
++	{
++	  char* __sanity;
++	  errno = 0;
++	  float __f = __strtof_l(__s, &__sanity, __cloc);
++          if (__sanity != __s && errno != ERANGE)
++	    __v = __f;
++	  else
++	    __err |= ios_base::failbit;
++	}
++    }
++
++  template<>
++    void
++    __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err,
++		   const __c_locale& __cloc)
++    {
++      if (!(__err & ios_base::failbit))
++	{
++	  char* __sanity;
++	  errno = 0;
++	  double __d = __strtod_l(__s, &__sanity, __cloc);
++          if (__sanity != __s && errno != ERANGE)
++	    __v = __d;
++	  else
++	    __err |= ios_base::failbit;
++	}
++    }
++
++  template<>
++    void
++    __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err,
++		   const __c_locale& __cloc)
++    {
++      if (!(__err & ios_base::failbit))
++	{
++	  char* __sanity;
++	  errno = 0;
++	  long double __ld = __strtold_l(__s, &__sanity, __cloc);
++          if (__sanity != __s && errno != ERANGE)
++	    __v = __ld;
++	  else
++	    __err |= ios_base::failbit;
++	}
++    }
++
++  void
++  locale::facet::_S_create_c_locale(__c_locale& __cloc, const char* __s,
++				    __c_locale __old)
++  {
++    __cloc = __newlocale(1 << LC_ALL, __s, __old);
++#ifdef __UCLIBC_HAS_XLOCALE__
++    if (!__cloc)
++      {
++	// This named locale is not supported by the underlying OS.
++	__throw_runtime_error(__N("locale::facet::_S_create_c_locale "
++			      "name not valid"));
++      }
++#endif
++  }
++
++  void
++  locale::facet::_S_destroy_c_locale(__c_locale& __cloc)
++  {
++    if (_S_get_c_locale() != __cloc)
++      __freelocale(__cloc);
++  }
++
++  __c_locale
++  locale::facet::_S_clone_c_locale(__c_locale& __cloc)
++  { return __duplocale(__cloc); }
++} // namespace std
++
++namespace __gnu_cxx
++{
++  const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
++    {
++      "LC_CTYPE",
++      "LC_NUMERIC",
++      "LC_TIME",
++      "LC_COLLATE",
++      "LC_MONETARY",
++      "LC_MESSAGES",
++#if _GLIBCXX_NUM_CATEGORIES != 0
++      "LC_PAPER",
++      "LC_NAME",
++      "LC_ADDRESS",
++      "LC_TELEPHONE",
++      "LC_MEASUREMENT",
++      "LC_IDENTIFICATION"
++#endif
++    };
++}
++
++namespace std
++{
++  const char* const* const locale::_S_categories = __gnu_cxx::category_names;
++}  // namespace std
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.h
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.h
+@@ -0,0 +1,117 @@
++// Wrapper for underlying C-language localization -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.8  Standard locale categories.
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#ifndef _C_LOCALE_H
++#define _C_LOCALE_H 1
++
++#pragma GCC system_header
++
++#include <cstring>              // get std::strlen
++#include <cstdio>               // get std::snprintf or std::sprintf
++#include <clocale>
++#include <langinfo.h>		// For codecvt
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning fix this
++#endif
++#ifdef __UCLIBC_HAS_LOCALE__
++#include <iconv.h>		// For codecvt using iconv, iconv_t
++#endif
++#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__
++#include <libintl.h> 		// For messages
++#endif
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning what is _GLIBCXX_C_LOCALE_GNU for
++#endif
++#define _GLIBCXX_C_LOCALE_GNU 1
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning fix categories
++#endif
++// #define _GLIBCXX_NUM_CATEGORIES 6
++#define _GLIBCXX_NUM_CATEGORIES 0
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++namespace __gnu_cxx
++{
++  extern "C" __typeof(uselocale) __uselocale;
++}
++#endif
++
++namespace std
++{
++#ifdef __UCLIBC_HAS_XLOCALE__
++  typedef __locale_t		__c_locale;
++#else
++  typedef int*			__c_locale;
++#endif
++
++  // Convert numeric value of type _Tv to string and return length of
++  // string.  If snprintf is available use it, otherwise fall back to
++  // the unsafe sprintf which, in general, can be dangerous and should
++  // be avoided.
++  template<typename _Tv>
++    int
++    __convert_from_v(char* __out,
++		     const int __size __attribute__ ((__unused__)),
++		     const char* __fmt,
++#ifdef __UCLIBC_HAS_XCLOCALE__
++		     _Tv __v, const __c_locale& __cloc, int __prec)
++    {
++      __c_locale __old = __gnu_cxx::__uselocale(__cloc);
++#else
++		     _Tv __v, const __c_locale&, int __prec)
++    {
++# ifdef __UCLIBC_HAS_LOCALE__
++      char* __old = std::setlocale(LC_ALL, NULL);
++      char* __sav = new char[std::strlen(__old) + 1];
++      std::strcpy(__sav, __old);
++      std::setlocale(LC_ALL, "C");
++# endif
++#endif
++
++      const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v);
++
++#ifdef __UCLIBC_HAS_XCLOCALE__
++      __gnu_cxx::__uselocale(__old);
++#elif defined __UCLIBC_HAS_LOCALE__
++      std::setlocale(LC_ALL, __sav);
++      delete [] __sav;
++#endif
++      return __ret;
++    }
++}
++
++#endif
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/codecvt_members.cc
+@@ -0,0 +1,308 @@
++// std::codecvt implementation details, GNU version -*- C++ -*-
++
++// Copyright (C) 2002, 2003 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.1.5 - Template class codecvt
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#include <locale>
++#include <cstdlib>  // For MB_CUR_MAX
++#include <climits>  // For MB_LEN_MAX
++#include <bits/c++locale_internal.h>
++
++namespace std
++{
++  // Specializations.
++#ifdef _GLIBCXX_USE_WCHAR_T
++  codecvt_base::result
++  codecvt<wchar_t, char, mbstate_t>::
++  do_out(state_type& __state, const intern_type* __from,
++	 const intern_type* __from_end, const intern_type*& __from_next,
++	 extern_type* __to, extern_type* __to_end,
++	 extern_type*& __to_next) const
++  {
++    result __ret = ok;
++    state_type __tmp_state(__state);
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_codecvt);
++#endif
++
++    // wcsnrtombs is *very* fast but stops if encounters NUL characters:
++    // in case we fall back to wcrtomb and then continue, in a loop.
++    // NB: wcsnrtombs is a GNU extension
++    for (__from_next = __from, __to_next = __to;
++	 __from_next < __from_end && __to_next < __to_end
++	 && __ret == ok;)
++      {
++	const intern_type* __from_chunk_end = wmemchr(__from_next, L'\0',
++						      __from_end - __from_next);
++	if (!__from_chunk_end)
++	  __from_chunk_end = __from_end;
++
++	__from = __from_next;
++	const size_t __conv = wcsnrtombs(__to_next, &__from_next,
++					 __from_chunk_end - __from_next,
++					 __to_end - __to_next, &__state);
++	if (__conv == static_cast<size_t>(-1))
++	  {
++	    // In case of error, in order to stop at the exact place we
++	    // have to start again from the beginning with a series of
++	    // wcrtomb.
++	    for (; __from < __from_next; ++__from)
++	      __to_next += wcrtomb(__to_next, *__from, &__tmp_state);
++	    __state = __tmp_state;
++	    __ret = error;
++	  }
++	else if (__from_next && __from_next < __from_chunk_end)
++	  {
++	    __to_next += __conv;
++	    __ret = partial;
++	  }
++	else
++	  {
++	    __from_next = __from_chunk_end;
++	    __to_next += __conv;
++	  }
++
++	if (__from_next < __from_end && __ret == ok)
++	  {
++	    extern_type __buf[MB_LEN_MAX];
++	    __tmp_state = __state;
++	    const size_t __conv = wcrtomb(__buf, *__from_next, &__tmp_state);
++	    if (__conv > static_cast<size_t>(__to_end - __to_next))
++	      __ret = partial;
++	    else
++	      {
++		memcpy(__to_next, __buf, __conv);
++		__state = __tmp_state;
++		__to_next += __conv;
++		++__from_next;
++	      }
++	  }
++      }
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++
++    return __ret;
++  }
++
++  codecvt_base::result
++  codecvt<wchar_t, char, mbstate_t>::
++  do_in(state_type& __state, const extern_type* __from,
++	const extern_type* __from_end, const extern_type*& __from_next,
++	intern_type* __to, intern_type* __to_end,
++	intern_type*& __to_next) const
++  {
++    result __ret = ok;
++    state_type __tmp_state(__state);
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_codecvt);
++#endif
++
++    // mbsnrtowcs is *very* fast but stops if encounters NUL characters:
++    // in case we store a L'\0' and then continue, in a loop.
++    // NB: mbsnrtowcs is a GNU extension
++    for (__from_next = __from, __to_next = __to;
++	 __from_next < __from_end && __to_next < __to_end
++	 && __ret == ok;)
++      {
++	const extern_type* __from_chunk_end;
++	__from_chunk_end = static_cast<const extern_type*>(memchr(__from_next, '\0',
++								  __from_end
++								  - __from_next));
++	if (!__from_chunk_end)
++	  __from_chunk_end = __from_end;
++
++	__from = __from_next;
++	size_t __conv = mbsnrtowcs(__to_next, &__from_next,
++				   __from_chunk_end - __from_next,
++				   __to_end - __to_next, &__state);
++	if (__conv == static_cast<size_t>(-1))
++	  {
++	    // In case of error, in order to stop at the exact place we
++	    // have to start again from the beginning with a series of
++	    // mbrtowc.
++	    for (;; ++__to_next, __from += __conv)
++	      {
++		__conv = mbrtowc(__to_next, __from, __from_end - __from,
++				 &__tmp_state);
++		if (__conv == static_cast<size_t>(-1)
++		    || __conv == static_cast<size_t>(-2))
++		  break;
++	      }
++	    __from_next = __from;
++	    __state = __tmp_state;
++	    __ret = error;
++	  }
++	else if (__from_next && __from_next < __from_chunk_end)
++	  {
++	    // It is unclear what to return in this case (see DR 382).
++	    __to_next += __conv;
++	    __ret = partial;
++	  }
++	else
++	  {
++	    __from_next = __from_chunk_end;
++	    __to_next += __conv;
++	  }
++
++	if (__from_next < __from_end && __ret == ok)
++	  {
++	    if (__to_next < __to_end)
++	      {
++		// XXX Probably wrong for stateful encodings
++		__tmp_state = __state;
++		++__from_next;
++		*__to_next++ = L'\0';
++	      }
++	    else
++	      __ret = partial;
++	  }
++      }
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++
++    return __ret;
++  }
++
++  int
++  codecvt<wchar_t, char, mbstate_t>::
++  do_encoding() const throw()
++  {
++    // XXX This implementation assumes that the encoding is
++    // stateless and is either single-byte or variable-width.
++    int __ret = 0;
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_codecvt);
++#endif
++    if (MB_CUR_MAX == 1)
++      __ret = 1;
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++    return __ret;
++  }
++
++  int
++  codecvt<wchar_t, char, mbstate_t>::
++  do_max_length() const throw()
++  {
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_codecvt);
++#endif
++    // XXX Probably wrong for stateful encodings.
++    int __ret = MB_CUR_MAX;
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++    return __ret;
++  }
++
++  int
++  codecvt<wchar_t, char, mbstate_t>::
++  do_length(state_type& __state, const extern_type* __from,
++	    const extern_type* __end, size_t __max) const
++  {
++    int __ret = 0;
++    state_type __tmp_state(__state);
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_codecvt);
++#endif
++
++    // mbsnrtowcs is *very* fast but stops if encounters NUL characters:
++    // in case we advance past it and then continue, in a loop.
++    // NB: mbsnrtowcs is a GNU extension
++
++    // A dummy internal buffer is needed in order for mbsnrtocws to consider
++    // its fourth parameter (it wouldn't with NULL as first parameter).
++    wchar_t* __to = static_cast<wchar_t*>(__builtin_alloca(sizeof(wchar_t)
++							   * __max));
++    while (__from < __end && __max)
++      {
++	const extern_type* __from_chunk_end;
++	__from_chunk_end = static_cast<const extern_type*>(memchr(__from, '\0',
++								  __end
++								  - __from));
++	if (!__from_chunk_end)
++	  __from_chunk_end = __end;
++
++	const extern_type* __tmp_from = __from;
++	size_t __conv = mbsnrtowcs(__to, &__from,
++				   __from_chunk_end - __from,
++				   __max, &__state);
++	if (__conv == static_cast<size_t>(-1))
++	  {
++	    // In case of error, in order to stop at the exact place we
++	    // have to start again from the beginning with a series of
++	    // mbrtowc.
++	    for (__from = __tmp_from;; __from += __conv)
++	      {
++		__conv = mbrtowc(NULL, __from, __end - __from,
++				 &__tmp_state);
++		if (__conv == static_cast<size_t>(-1)
++		    || __conv == static_cast<size_t>(-2))
++		  break;
++	      }
++	    __state = __tmp_state;
++	    __ret += __from - __tmp_from;
++	    break;
++	  }
++	if (!__from)
++	  __from = __from_chunk_end;
++
++	__ret += __from - __tmp_from;
++	__max -= __conv;
++
++	if (__from < __end && __max)
++	  {
++	    // XXX Probably wrong for stateful encodings
++	    __tmp_state = __state;
++	    ++__from;
++	    ++__ret;
++	    --__max;
++	  }
++      }
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++
++    return __ret;
++  }
++#endif
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/collate_members.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/collate_members.cc
+@@ -0,0 +1,80 @@
++// std::collate implementation details, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.4.1.2  collate virtual functions
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#include <locale>
++#include <bits/c++locale_internal.h>
++
++#ifndef __UCLIBC_HAS_XLOCALE__
++#define __strcoll_l(S1, S2, L)      strcoll((S1), (S2))
++#define __strxfrm_l(S1, S2, N, L)   strxfrm((S1), (S2), (N))
++#define __wcscoll_l(S1, S2, L)      wcscoll((S1), (S2))
++#define __wcsxfrm_l(S1, S2, N, L)   wcsxfrm((S1), (S2), (N))
++#endif
++
++namespace std
++{
++  // These are basically extensions to char_traits, and perhaps should
++  // be put there instead of here.
++  template<>
++    int
++    collate<char>::_M_compare(const char* __one, const char* __two) const
++    {
++      int __cmp = __strcoll_l(__one, __two, _M_c_locale_collate);
++      return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0);
++    }
++
++  template<>
++    size_t
++    collate<char>::_M_transform(char* __to, const char* __from,
++				size_t __n) const
++    { return __strxfrm_l(__to, __from, __n, _M_c_locale_collate); }
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++  template<>
++    int
++    collate<wchar_t>::_M_compare(const wchar_t* __one,
++				 const wchar_t* __two) const
++    {
++      int __cmp = __wcscoll_l(__one, __two, _M_c_locale_collate);
++      return (__cmp >> (8 * sizeof (int) - 2)) | (__cmp != 0);
++    }
++
++  template<>
++    size_t
++    collate<wchar_t>::_M_transform(wchar_t* __to, const wchar_t* __from,
++				   size_t __n) const
++    { return __wcsxfrm_l(__to, __from, __n, _M_c_locale_collate); }
++#endif
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+@@ -0,0 +1,300 @@
++// std::ctype implementation details, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.1.1.2  ctype virtual functions.
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#define _LIBC
++#include <locale>
++#undef _LIBC
++#include <bits/c++locale_internal.h>
++
++#ifndef __UCLIBC_HAS_XLOCALE__
++#define __wctype_l(S, L)           wctype((S))
++#define __towupper_l(C, L)         towupper((C))
++#define __towlower_l(C, L)         towlower((C))
++#define __iswctype_l(C, M, L)      iswctype((C), (M))
++#endif
++
++namespace std
++{
++  // NB: The other ctype<char> specializations are in src/locale.cc and
++  // various /config/os/* files.
++  template<>
++    ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
++    : ctype<char>(0, false, __refs)
++    {
++      if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
++	{
++	  this->_S_destroy_c_locale(this->_M_c_locale_ctype);
++	  this->_S_create_c_locale(this->_M_c_locale_ctype, __s);
++#ifdef __UCLIBC_HAS_XLOCALE__
++	  this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper;
++	  this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower;
++	  this->_M_table = this->_M_c_locale_ctype->__ctype_b;
++#endif
++	}
++    }
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++  ctype<wchar_t>::__wmask_type
++  ctype<wchar_t>::_M_convert_to_wmask(const mask __m) const
++  {
++    __wmask_type __ret;
++    switch (__m)
++      {
++      case space:
++	__ret = __wctype_l("space", _M_c_locale_ctype);
++	break;
++      case print:
++	__ret = __wctype_l("print", _M_c_locale_ctype);
++	break;
++      case cntrl:
++	__ret = __wctype_l("cntrl", _M_c_locale_ctype);
++	break;
++      case upper:
++	__ret = __wctype_l("upper", _M_c_locale_ctype);
++	break;
++      case lower:
++	__ret = __wctype_l("lower", _M_c_locale_ctype);
++	break;
++      case alpha:
++	__ret = __wctype_l("alpha", _M_c_locale_ctype);
++	break;
++      case digit:
++	__ret = __wctype_l("digit", _M_c_locale_ctype);
++	break;
++      case punct:
++	__ret = __wctype_l("punct", _M_c_locale_ctype);
++	break;
++      case xdigit:
++	__ret = __wctype_l("xdigit", _M_c_locale_ctype);
++	break;
++      case alnum:
++	__ret = __wctype_l("alnum", _M_c_locale_ctype);
++	break;
++      case graph:
++	__ret = __wctype_l("graph", _M_c_locale_ctype);
++	break;
++      default:
++	__ret = __wmask_type();
++      }
++    return __ret;
++  }
++
++  wchar_t
++  ctype<wchar_t>::do_toupper(wchar_t __c) const
++  { return __towupper_l(__c, _M_c_locale_ctype); }
++
++  const wchar_t*
++  ctype<wchar_t>::do_toupper(wchar_t* __lo, const wchar_t* __hi) const
++  {
++    while (__lo < __hi)
++      {
++        *__lo = __towupper_l(*__lo, _M_c_locale_ctype);
++        ++__lo;
++      }
++    return __hi;
++  }
++
++  wchar_t
++  ctype<wchar_t>::do_tolower(wchar_t __c) const
++  { return __towlower_l(__c, _M_c_locale_ctype); }
++
++  const wchar_t*
++  ctype<wchar_t>::do_tolower(wchar_t* __lo, const wchar_t* __hi) const
++  {
++    while (__lo < __hi)
++      {
++        *__lo = __towlower_l(*__lo, _M_c_locale_ctype);
++        ++__lo;
++      }
++    return __hi;
++  }
++
++  bool
++  ctype<wchar_t>::
++  do_is(mask __m, wchar_t __c) const
++  {
++    // Highest bitmask in ctype_base == 10, but extra in "C"
++    // library for blank.
++    bool __ret = false;
++    const size_t __bitmasksize = 11;
++    for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur)
++      if (__m & _M_bit[__bitcur]
++	  && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype))
++	{
++	  __ret = true;
++	  break;
++	}
++    return __ret;
++  }
++
++  const wchar_t*
++  ctype<wchar_t>::
++  do_is(const wchar_t* __lo, const wchar_t* __hi, mask* __vec) const
++  {
++    for (; __lo < __hi; ++__vec, ++__lo)
++      {
++	// Highest bitmask in ctype_base == 10, but extra in "C"
++	// library for blank.
++	const size_t __bitmasksize = 11;
++	mask __m = 0;
++	for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur)
++	  if (__iswctype_l(*__lo, _M_wmask[__bitcur], _M_c_locale_ctype))
++	    __m |= _M_bit[__bitcur];
++	*__vec = __m;
++      }
++    return __hi;
++  }
++
++  const wchar_t*
++  ctype<wchar_t>::
++  do_scan_is(mask __m, const wchar_t* __lo, const wchar_t* __hi) const
++  {
++    while (__lo < __hi && !this->do_is(__m, *__lo))
++      ++__lo;
++    return __lo;
++  }
++
++  const wchar_t*
++  ctype<wchar_t>::
++  do_scan_not(mask __m, const char_type* __lo, const char_type* __hi) const
++  {
++    while (__lo < __hi && this->do_is(__m, *__lo) != 0)
++      ++__lo;
++    return __lo;
++  }
++
++  wchar_t
++  ctype<wchar_t>::
++  do_widen(char __c) const
++  { return _M_widen[static_cast<unsigned char>(__c)]; }
++
++  const char*
++  ctype<wchar_t>::
++  do_widen(const char* __lo, const char* __hi, wchar_t* __dest) const
++  {
++    while (__lo < __hi)
++      {
++	*__dest = _M_widen[static_cast<unsigned char>(*__lo)];
++	++__lo;
++	++__dest;
++      }
++    return __hi;
++  }
++
++  char
++  ctype<wchar_t>::
++  do_narrow(wchar_t __wc, char __dfault) const
++  {
++    if (__wc >= 0 && __wc < 128 && _M_narrow_ok)
++      return _M_narrow[__wc];
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_ctype);
++#endif
++    const int __c = wctob(__wc);
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++    return (__c == EOF ? __dfault : static_cast<char>(__c));
++  }
++
++  const wchar_t*
++  ctype<wchar_t>::
++  do_narrow(const wchar_t* __lo, const wchar_t* __hi, char __dfault,
++	    char* __dest) const
++  {
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_ctype);
++#endif
++    if (_M_narrow_ok)
++      while (__lo < __hi)
++	{
++	  if (*__lo >= 0 && *__lo < 128)
++	    *__dest = _M_narrow[*__lo];
++	  else
++	    {
++	      const int __c = wctob(*__lo);
++	      *__dest = (__c == EOF ? __dfault : static_cast<char>(__c));
++	    }
++	  ++__lo;
++	  ++__dest;
++	}
++    else
++      while (__lo < __hi)
++	{
++	  const int __c = wctob(*__lo);
++	  *__dest = (__c == EOF ? __dfault : static_cast<char>(__c));
++	  ++__lo;
++	  ++__dest;
++	}
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++    return __hi;
++  }
++
++  void
++  ctype<wchar_t>::_M_initialize_ctype()
++  {
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __c_locale __old = __uselocale(_M_c_locale_ctype);
++#endif
++    wint_t __i;
++    for (__i = 0; __i < 128; ++__i)
++      {
++	const int __c = wctob(__i);
++	if (__c == EOF)
++	  break;
++	else
++	  _M_narrow[__i] = static_cast<char>(__c);
++      }
++    if (__i == 128)
++      _M_narrow_ok = true;
++    else
++      _M_narrow_ok = false;
++    for (size_t __j = 0;
++	 __j < sizeof(_M_widen) / sizeof(wint_t); ++__j)
++      _M_widen[__j] = btowc(__j);
++
++    for (size_t __k = 0; __k <= 11; ++__k)
++      {
++	_M_bit[__k] = static_cast<mask>(_ISbit(__k));
++	_M_wmask[__k] = _M_convert_to_wmask(_M_bit[__k]);
++      }
++#ifdef __UCLIBC_HAS_XLOCALE__
++    __uselocale(__old);
++#endif
++  }
++#endif //  _GLIBCXX_USE_WCHAR_T
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.cc
+@@ -0,0 +1,100 @@
++// std::messages implementation details, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.7.1.2  messages virtual functions
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#include <locale>
++#include <bits/c++locale_internal.h>
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning fix gettext stuff
++#endif
++#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__
++extern "C" char *__dcgettext(const char *domainname,
++			     const char *msgid, int category);
++#undef gettext
++#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES)
++#else
++#undef gettext
++#define gettext(msgid) (msgid)
++#endif
++
++namespace std
++{
++  // Specializations.
++  template<>
++    string
++    messages<char>::do_get(catalog, int, int, const string& __dfault) const
++    {
++#ifdef __UCLIBC_HAS_XLOCALE__
++      __c_locale __old = __uselocale(_M_c_locale_messages);
++      const char* __msg = const_cast<const char*>(gettext(__dfault.c_str()));
++      __uselocale(__old);
++      return string(__msg);
++#elif defined __UCLIBC_HAS_LOCALE__
++      char* __old = strdup(setlocale(LC_ALL, NULL));
++      setlocale(LC_ALL, _M_name_messages);
++      const char* __msg = gettext(__dfault.c_str());
++      setlocale(LC_ALL, __old);
++      free(__old);
++      return string(__msg);
++#else
++      const char* __msg = gettext(__dfault.c_str());
++      return string(__msg);
++#endif
++    }
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++  template<>
++    wstring
++    messages<wchar_t>::do_get(catalog, int, int, const wstring& __dfault) const
++    {
++# ifdef __UCLIBC_HAS_XLOCALE__
++      __c_locale __old = __uselocale(_M_c_locale_messages);
++      char* __msg = gettext(_M_convert_to_char(__dfault));
++      __uselocale(__old);
++      return _M_convert_from_char(__msg);
++# elif defined __UCLIBC_HAS_LOCALE__
++      char* __old = strdup(setlocale(LC_ALL, NULL));
++      setlocale(LC_ALL, _M_name_messages);
++      char* __msg = gettext(_M_convert_to_char(__dfault));
++      setlocale(LC_ALL, __old);
++      free(__old);
++      return _M_convert_from_char(__msg);
++# else
++      char* __msg = gettext(_M_convert_to_char(__dfault));
++      return _M_convert_from_char(__msg);
++# endif
++    }
++#endif
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+@@ -0,0 +1,118 @@
++// std::messages implementation details, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.7.1.2  messages functions
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning fix prototypes for *textdomain funcs
++#endif
++#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__
++extern "C" char *__textdomain(const char *domainname);
++extern "C" char *__bindtextdomain(const char *domainname,
++				  const char *dirname);
++#else
++#undef __textdomain
++#undef __bindtextdomain
++#define __textdomain(D)           ((void)0)
++#define __bindtextdomain(D,P)     ((void)0)
++#endif
++
++  // Non-virtual member functions.
++  template<typename _CharT>
++     messages<_CharT>::messages(size_t __refs)
++     : facet(__refs), _M_c_locale_messages(_S_get_c_locale()),
++     _M_name_messages(_S_get_c_name())
++     { }
++
++  template<typename _CharT>
++     messages<_CharT>::messages(__c_locale __cloc, const char* __s,
++				size_t __refs)
++     : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)),
++     _M_name_messages(__s)
++     {
++       char* __tmp = new char[std::strlen(__s) + 1];
++       std::strcpy(__tmp, __s);
++       _M_name_messages = __tmp;
++     }
++
++  template<typename _CharT>
++    typename messages<_CharT>::catalog
++    messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc,
++			   const char* __dir) const
++    {
++      __bindtextdomain(__s.c_str(), __dir);
++      return this->do_open(__s, __loc);
++    }
++
++  // Virtual member functions.
++  template<typename _CharT>
++    messages<_CharT>::~messages()
++    {
++      if (_M_name_messages != _S_get_c_name())
++	delete [] _M_name_messages;
++      _S_destroy_c_locale(_M_c_locale_messages);
++    }
++
++  template<typename _CharT>
++    typename messages<_CharT>::catalog
++    messages<_CharT>::do_open(const basic_string<char>& __s,
++			      const locale&) const
++    {
++      // No error checking is done, assume the catalog exists and can
++      // be used.
++      __textdomain(__s.c_str());
++      return 0;
++    }
++
++  template<typename _CharT>
++    void
++    messages<_CharT>::do_close(catalog) const
++    { }
++
++   // messages_byname
++   template<typename _CharT>
++     messages_byname<_CharT>::messages_byname(const char* __s, size_t __refs)
++     : messages<_CharT>(__refs)
++     {
++       if (this->_M_name_messages != locale::facet::_S_get_c_name())
++	 delete [] this->_M_name_messages;
++       char* __tmp = new char[std::strlen(__s) + 1];
++       std::strcpy(__tmp, __s);
++       this->_M_name_messages = __tmp;
++
++       if (std::strcmp(__s, "C") != 0 && std::strcmp(__s, "POSIX") != 0)
++	 {
++	   this->_S_destroy_c_locale(this->_M_c_locale_messages);
++	   this->_S_create_c_locale(this->_M_c_locale_messages, __s);
++	 }
++     }
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+@@ -0,0 +1,692 @@
++// std::moneypunct implementation details, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.6.3.2  moneypunct virtual functions
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#define _LIBC
++#include <locale>
++#undef _LIBC
++#include <bits/c++locale_internal.h>
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning optimize this for uclibc
++#warning tailor for stub locale support
++#endif
++
++#ifndef __UCLIBC_HAS_XLOCALE__
++#define __nl_langinfo_l(N, L)         nl_langinfo((N))
++#endif
++
++namespace std
++{
++  // Construct and return valid pattern consisting of some combination of:
++  // space none symbol sign value
++  money_base::pattern
++  money_base::_S_construct_pattern(char __precedes, char __space, char __posn)
++  {
++    pattern __ret;
++
++    // This insanely complicated routine attempts to construct a valid
++    // pattern for use with monyepunct. A couple of invariants:
++
++    // if (__precedes) symbol -> value
++    // else value -> symbol
++
++    // if (__space) space
++    // else none
++
++    // none == never first
++    // space never first or last
++
++    // Any elegant implementations of this are welcome.
++    switch (__posn)
++      {
++      case 0:
++      case 1:
++	// 1 The sign precedes the value and symbol.
++	__ret.field[0] = sign;
++	if (__space)
++	  {
++	    // Pattern starts with sign.
++	    if (__precedes)
++	      {
++		__ret.field[1] = symbol;
++		__ret.field[3] = value;
++	      }
++	    else
++	      {
++		__ret.field[1] = value;
++		__ret.field[3] = symbol;
++	      }
++	    __ret.field[2] = space;
++	  }
++	else
++	  {
++	    // Pattern starts with sign and ends with none.
++	    if (__precedes)
++	      {
++		__ret.field[1] = symbol;
++		__ret.field[2] = value;
++	      }
++	    else
++	      {
++		__ret.field[1] = value;
++		__ret.field[2] = symbol;
++	      }
++	    __ret.field[3] = none;
++	  }
++	break;
++      case 2:
++	// 2 The sign follows the value and symbol.
++	if (__space)
++	  {
++	    // Pattern either ends with sign.
++	    if (__precedes)
++	      {
++		__ret.field[0] = symbol;
++		__ret.field[2] = value;
++	      }
++	    else
++	      {
++		__ret.field[0] = value;
++		__ret.field[2] = symbol;
++	      }
++	    __ret.field[1] = space;
++	    __ret.field[3] = sign;
++	  }
++	else
++	  {
++	    // Pattern ends with sign then none.
++	    if (__precedes)
++	      {
++		__ret.field[0] = symbol;
++		__ret.field[1] = value;
++	      }
++	    else
++	      {
++		__ret.field[0] = value;
++		__ret.field[1] = symbol;
++	      }
++	    __ret.field[2] = sign;
++	    __ret.field[3] = none;
++	  }
++	break;
++      case 3:
++	// 3 The sign immediately precedes the symbol.
++	if (__precedes)
++	  {
++	    __ret.field[0] = sign;
++	    __ret.field[1] = symbol;
++	    if (__space)
++	      {
++		__ret.field[2] = space;
++		__ret.field[3] = value;
++	      }
++	    else
++	      {
++		__ret.field[2] = value;
++		__ret.field[3] = none;
++	      }
++	  }
++	else
++	  {
++	    __ret.field[0] = value;
++	    if (__space)
++	      {
++		__ret.field[1] = space;
++		__ret.field[2] = sign;
++		__ret.field[3] = symbol;
++	      }
++	    else
++	      {
++		__ret.field[1] = sign;
++		__ret.field[2] = symbol;
++		__ret.field[3] = none;
++	      }
++	  }
++	break;
++      case 4:
++	// 4 The sign immediately follows the symbol.
++	if (__precedes)
++	  {
++	    __ret.field[0] = symbol;
++	    __ret.field[1] = sign;
++	    if (__space)
++	      {
++		__ret.field[2] = space;
++		__ret.field[3] = value;
++	      }
++	    else
++	      {
++		__ret.field[2] = value;
++		__ret.field[3] = none;
++	      }
++	  }
++	else
++	  {
++	    __ret.field[0] = value;
++	    if (__space)
++	      {
++		__ret.field[1] = space;
++		__ret.field[2] = symbol;
++		__ret.field[3] = sign;
++	      }
++	    else
++	      {
++		__ret.field[1] = symbol;
++		__ret.field[2] = sign;
++		__ret.field[3] = none;
++	      }
++	  }
++	break;
++      default:
++	;
++      }
++    return __ret;
++  }
++
++  template<>
++    void
++    moneypunct<char, true>::_M_initialize_moneypunct(__c_locale __cloc,
++						     const char*)
++    {
++      if (!_M_data)
++	_M_data = new __moneypunct_cache<char, true>;
++
++      if (!__cloc)
++	{
++	  // "C" locale
++	  _M_data->_M_decimal_point = '.';
++	  _M_data->_M_thousands_sep = ',';
++	  _M_data->_M_grouping = "";
++	  _M_data->_M_grouping_size = 0;
++	  _M_data->_M_curr_symbol = "";
++	  _M_data->_M_curr_symbol_size = 0;
++	  _M_data->_M_positive_sign = "";
++	  _M_data->_M_positive_sign_size = 0;
++	  _M_data->_M_negative_sign = "";
++	  _M_data->_M_negative_sign_size = 0;
++	  _M_data->_M_frac_digits = 0;
++	  _M_data->_M_pos_format = money_base::_S_default_pattern;
++	  _M_data->_M_neg_format = money_base::_S_default_pattern;
++
++	  for (size_t __i = 0; __i < money_base::_S_end; ++__i)
++	    _M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
++	}
++      else
++	{
++	  // Named locale.
++	  _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT,
++							__cloc));
++	  _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP,
++							__cloc));
++	  _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc);
++	  _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
++	  _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
++	  _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign);
++
++	  char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc));
++	  if (!__nposn)
++	    _M_data->_M_negative_sign = "()";
++	  else
++	    _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN,
++							__cloc);
++	  _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign);
++
++	  // _Intl == true
++	  _M_data->_M_curr_symbol = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc);
++	  _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol);
++	  _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS,
++						      __cloc));
++	  char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc));
++	  char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc));
++	  char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc));
++	  _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace,
++							__pposn);
++	  char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc));
++	  char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc));
++	  _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace,
++							__nposn);
++	}
++    }
++
++  template<>
++    void
++    moneypunct<char, false>::_M_initialize_moneypunct(__c_locale __cloc,
++						      const char*)
++    {
++      if (!_M_data)
++	_M_data = new __moneypunct_cache<char, false>;
++
++      if (!__cloc)
++	{
++	  // "C" locale
++	  _M_data->_M_decimal_point = '.';
++	  _M_data->_M_thousands_sep = ',';
++	  _M_data->_M_grouping = "";
++	  _M_data->_M_grouping_size = 0;
++	  _M_data->_M_curr_symbol = "";
++	  _M_data->_M_curr_symbol_size = 0;
++	  _M_data->_M_positive_sign = "";
++	  _M_data->_M_positive_sign_size = 0;
++	  _M_data->_M_negative_sign = "";
++	  _M_data->_M_negative_sign_size = 0;
++	  _M_data->_M_frac_digits = 0;
++	  _M_data->_M_pos_format = money_base::_S_default_pattern;
++	  _M_data->_M_neg_format = money_base::_S_default_pattern;
++
++	  for (size_t __i = 0; __i < money_base::_S_end; ++__i)
++	    _M_data->_M_atoms[__i] = money_base::_S_atoms[__i];
++	}
++      else
++	{
++	  // Named locale.
++	  _M_data->_M_decimal_point = *(__nl_langinfo_l(__MON_DECIMAL_POINT,
++							__cloc));
++	  _M_data->_M_thousands_sep = *(__nl_langinfo_l(__MON_THOUSANDS_SEP,
++							__cloc));
++	  _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc);
++	  _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
++	  _M_data->_M_positive_sign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
++	  _M_data->_M_positive_sign_size = strlen(_M_data->_M_positive_sign);
++
++	  char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc));
++	  if (!__nposn)
++	    _M_data->_M_negative_sign = "()";
++	  else
++	    _M_data->_M_negative_sign = __nl_langinfo_l(__NEGATIVE_SIGN,
++							__cloc);
++	  _M_data->_M_negative_sign_size = strlen(_M_data->_M_negative_sign);
++
++	  // _Intl == false
++	  _M_data->_M_curr_symbol = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc);
++	  _M_data->_M_curr_symbol_size = strlen(_M_data->_M_curr_symbol);
++	  _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc));
++	  char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc));
++	  char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc));
++	  char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc));
++	  _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace,
++							__pposn);
++	  char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc));
++	  char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc));
++	  _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace,
++							__nposn);
++	}
++    }
++
++  template<>
++    moneypunct<char, true>::~moneypunct()
++    { delete _M_data; }
++
++  template<>
++    moneypunct<char, false>::~moneypunct()
++    { delete _M_data; }
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++  template<>
++    void
++    moneypunct<wchar_t, true>::_M_initialize_moneypunct(__c_locale __cloc,
++#ifdef __UCLIBC_HAS_XLOCALE__
++							const char*)
++#else
++							const char* __name)
++#endif
++    {
++      if (!_M_data)
++	_M_data = new __moneypunct_cache<wchar_t, true>;
++
++      if (!__cloc)
++	{
++	  // "C" locale
++	  _M_data->_M_decimal_point = L'.';
++	  _M_data->_M_thousands_sep = L',';
++	  _M_data->_M_grouping = "";
++	  _M_data->_M_grouping_size = 0;
++	  _M_data->_M_curr_symbol = L"";
++	  _M_data->_M_curr_symbol_size = 0;
++	  _M_data->_M_positive_sign = L"";
++	  _M_data->_M_positive_sign_size = 0;
++	  _M_data->_M_negative_sign = L"";
++	  _M_data->_M_negative_sign_size = 0;
++	  _M_data->_M_frac_digits = 0;
++	  _M_data->_M_pos_format = money_base::_S_default_pattern;
++	  _M_data->_M_neg_format = money_base::_S_default_pattern;
++
++	  // Use ctype::widen code without the facet...
++	  for (size_t __i = 0; __i < money_base::_S_end; ++__i)
++	    _M_data->_M_atoms[__i] =
++	      static_cast<wchar_t>(money_base::_S_atoms[__i]);
++	}
++      else
++	{
++	  // Named locale.
++#ifdef __UCLIBC_HAS_XLOCALE__
++	  __c_locale __old = __uselocale(__cloc);
++#else
++	  // Switch to named locale so that mbsrtowcs will work.
++	  char* __old = strdup(setlocale(LC_ALL, NULL));
++	  setlocale(LC_ALL, __name);
++#endif
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning fix this... should be monetary
++#endif
++#ifdef __UCLIBC__
++# ifdef __UCLIBC_HAS_XLOCALE__
++	  _M_data->_M_decimal_point = __cloc->decimal_point_wc;
++	  _M_data->_M_thousands_sep = __cloc->thousands_sep_wc;
++# else
++	  _M_data->_M_decimal_point = __global_locale->decimal_point_wc;
++	  _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc;
++# endif
++#else
++	  union { char *__s; wchar_t __w; } __u;
++	  __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc);
++	  _M_data->_M_decimal_point = __u.__w;
++
++	  __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc);
++	  _M_data->_M_thousands_sep = __u.__w;
++#endif
++	  _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc);
++	  _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
++
++	  const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
++	  const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc);
++	  const char* __ccurr = __nl_langinfo_l(__INT_CURR_SYMBOL, __cloc);
++
++	  wchar_t* __wcs_ps = 0;
++	  wchar_t* __wcs_ns = 0;
++	  const char __nposn = *(__nl_langinfo_l(__INT_N_SIGN_POSN, __cloc));
++	  try
++	    {
++	      mbstate_t __state;
++	      size_t __len = strlen(__cpossign);
++	      if (__len)
++		{
++		  ++__len;
++		  memset(&__state, 0, sizeof(mbstate_t));
++		  __wcs_ps = new wchar_t[__len];
++		  mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state);
++		  _M_data->_M_positive_sign = __wcs_ps;
++		}
++	      else
++		_M_data->_M_positive_sign = L"";
++	      _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign);
++
++	      __len = strlen(__cnegsign);
++	      if (!__nposn)
++		_M_data->_M_negative_sign = L"()";
++	      else if (__len)
++		{
++		  ++__len;
++		  memset(&__state, 0, sizeof(mbstate_t));
++		  __wcs_ns = new wchar_t[__len];
++		  mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state);
++		  _M_data->_M_negative_sign = __wcs_ns;
++		}
++	      else
++		_M_data->_M_negative_sign = L"";
++	      _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign);
++
++	      // _Intl == true.
++	      __len = strlen(__ccurr);
++	      if (__len)
++		{
++		  ++__len;
++		  memset(&__state, 0, sizeof(mbstate_t));
++		  wchar_t* __wcs = new wchar_t[__len];
++		  mbsrtowcs(__wcs, &__ccurr, __len, &__state);
++		  _M_data->_M_curr_symbol = __wcs;
++		}
++	      else
++		_M_data->_M_curr_symbol = L"";
++	      _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol);
++	    }
++	  catch (...)
++	    {
++	      delete _M_data;
++	      _M_data = 0;
++	      delete __wcs_ps;
++	      delete __wcs_ns;
++#ifdef __UCLIBC_HAS_XLOCALE__
++	      __uselocale(__old);
++#else
++	      setlocale(LC_ALL, __old);
++	      free(__old);
++#endif
++	      __throw_exception_again;
++	    }
++
++	  _M_data->_M_frac_digits = *(__nl_langinfo_l(__INT_FRAC_DIGITS,
++						      __cloc));
++	  char __pprecedes = *(__nl_langinfo_l(__INT_P_CS_PRECEDES, __cloc));
++	  char __pspace = *(__nl_langinfo_l(__INT_P_SEP_BY_SPACE, __cloc));
++	  char __pposn = *(__nl_langinfo_l(__INT_P_SIGN_POSN, __cloc));
++	  _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace,
++							__pposn);
++	  char __nprecedes = *(__nl_langinfo_l(__INT_N_CS_PRECEDES, __cloc));
++	  char __nspace = *(__nl_langinfo_l(__INT_N_SEP_BY_SPACE, __cloc));
++	  _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace,
++							__nposn);
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++	  __uselocale(__old);
++#else
++	  setlocale(LC_ALL, __old);
++	  free(__old);
++#endif
++	}
++    }
++
++  template<>
++  void
++  moneypunct<wchar_t, false>::_M_initialize_moneypunct(__c_locale __cloc,
++#ifdef __UCLIBC_HAS_XLOCALE__
++						       const char*)
++#else
++                                                       const char* __name)
++#endif
++  {
++    if (!_M_data)
++      _M_data = new __moneypunct_cache<wchar_t, false>;
++
++    if (!__cloc)
++	{
++	  // "C" locale
++	  _M_data->_M_decimal_point = L'.';
++	  _M_data->_M_thousands_sep = L',';
++	  _M_data->_M_grouping = "";
++          _M_data->_M_grouping_size = 0;
++	  _M_data->_M_curr_symbol = L"";
++	  _M_data->_M_curr_symbol_size = 0;
++	  _M_data->_M_positive_sign = L"";
++	  _M_data->_M_positive_sign_size = 0;
++	  _M_data->_M_negative_sign = L"";
++	  _M_data->_M_negative_sign_size = 0;
++	  _M_data->_M_frac_digits = 0;
++	  _M_data->_M_pos_format = money_base::_S_default_pattern;
++	  _M_data->_M_neg_format = money_base::_S_default_pattern;
++
++	  // Use ctype::widen code without the facet...
++	  for (size_t __i = 0; __i < money_base::_S_end; ++__i)
++	    _M_data->_M_atoms[__i] =
++	      static_cast<wchar_t>(money_base::_S_atoms[__i]);
++	}
++      else
++	{
++	  // Named locale.
++#ifdef __UCLIBC_HAS_XLOCALE__
++	  __c_locale __old = __uselocale(__cloc);
++#else
++	  // Switch to named locale so that mbsrtowcs will work.
++	  char* __old = strdup(setlocale(LC_ALL, NULL));
++	  setlocale(LC_ALL, __name);
++#endif
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning fix this... should be monetary
++#endif
++#ifdef __UCLIBC__
++# ifdef __UCLIBC_HAS_XLOCALE__
++	  _M_data->_M_decimal_point = __cloc->decimal_point_wc;
++	  _M_data->_M_thousands_sep = __cloc->thousands_sep_wc;
++# else
++	  _M_data->_M_decimal_point = __global_locale->decimal_point_wc;
++	  _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc;
++# endif
++#else
++          union { char *__s; wchar_t __w; } __u;
++	  __u.__s = __nl_langinfo_l(_NL_MONETARY_DECIMAL_POINT_WC, __cloc);
++	  _M_data->_M_decimal_point = __u.__w;
++
++	  __u.__s = __nl_langinfo_l(_NL_MONETARY_THOUSANDS_SEP_WC, __cloc);
++	  _M_data->_M_thousands_sep = __u.__w;
++#endif
++	  _M_data->_M_grouping = __nl_langinfo_l(__MON_GROUPING, __cloc);
++          _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
++
++	  const char* __cpossign = __nl_langinfo_l(__POSITIVE_SIGN, __cloc);
++	  const char* __cnegsign = __nl_langinfo_l(__NEGATIVE_SIGN, __cloc);
++	  const char* __ccurr = __nl_langinfo_l(__CURRENCY_SYMBOL, __cloc);
++
++	  wchar_t* __wcs_ps = 0;
++	  wchar_t* __wcs_ns = 0;
++	  const char __nposn = *(__nl_langinfo_l(__N_SIGN_POSN, __cloc));
++	  try
++            {
++              mbstate_t __state;
++              size_t __len;
++              __len = strlen(__cpossign);
++              if (__len)
++                {
++		  ++__len;
++		  memset(&__state, 0, sizeof(mbstate_t));
++		  __wcs_ps = new wchar_t[__len];
++		  mbsrtowcs(__wcs_ps, &__cpossign, __len, &__state);
++		  _M_data->_M_positive_sign = __wcs_ps;
++		}
++	      else
++		_M_data->_M_positive_sign = L"";
++              _M_data->_M_positive_sign_size = wcslen(_M_data->_M_positive_sign);
++
++	      __len = strlen(__cnegsign);
++	      if (!__nposn)
++		_M_data->_M_negative_sign = L"()";
++	      else if (__len)
++		{
++		  ++__len;
++		  memset(&__state, 0, sizeof(mbstate_t));
++		  __wcs_ns = new wchar_t[__len];
++		  mbsrtowcs(__wcs_ns, &__cnegsign, __len, &__state);
++		  _M_data->_M_negative_sign = __wcs_ns;
++		}
++	      else
++		_M_data->_M_negative_sign = L"";
++              _M_data->_M_negative_sign_size = wcslen(_M_data->_M_negative_sign);
++
++	      // _Intl == true.
++	      __len = strlen(__ccurr);
++	      if (__len)
++		{
++		  ++__len;
++		  memset(&__state, 0, sizeof(mbstate_t));
++		  wchar_t* __wcs = new wchar_t[__len];
++		  mbsrtowcs(__wcs, &__ccurr, __len, &__state);
++		  _M_data->_M_curr_symbol = __wcs;
++		}
++	      else
++		_M_data->_M_curr_symbol = L"";
++              _M_data->_M_curr_symbol_size = wcslen(_M_data->_M_curr_symbol);
++	    }
++          catch (...)
++	    {
++	      delete _M_data;
++              _M_data = 0;
++	      delete __wcs_ps;
++	      delete __wcs_ns;
++#ifdef __UCLIBC_HAS_XLOCALE__
++	      __uselocale(__old);
++#else
++	      setlocale(LC_ALL, __old);
++	      free(__old);
++#endif
++              __throw_exception_again;
++	    }
++
++	  _M_data->_M_frac_digits = *(__nl_langinfo_l(__FRAC_DIGITS, __cloc));
++	  char __pprecedes = *(__nl_langinfo_l(__P_CS_PRECEDES, __cloc));
++	  char __pspace = *(__nl_langinfo_l(__P_SEP_BY_SPACE, __cloc));
++	  char __pposn = *(__nl_langinfo_l(__P_SIGN_POSN, __cloc));
++	  _M_data->_M_pos_format = _S_construct_pattern(__pprecedes, __pspace,
++	                                                __pposn);
++	  char __nprecedes = *(__nl_langinfo_l(__N_CS_PRECEDES, __cloc));
++	  char __nspace = *(__nl_langinfo_l(__N_SEP_BY_SPACE, __cloc));
++	  _M_data->_M_neg_format = _S_construct_pattern(__nprecedes, __nspace,
++	                                                __nposn);
++
++#ifdef __UCLIBC_HAS_XLOCALE__
++	  __uselocale(__old);
++#else
++	  setlocale(LC_ALL, __old);
++	  free(__old);
++#endif
++	}
++    }
++
++  template<>
++    moneypunct<wchar_t, true>::~moneypunct()
++    {
++      if (_M_data->_M_positive_sign_size)
++	delete [] _M_data->_M_positive_sign;
++      if (_M_data->_M_negative_sign_size
++          && wcscmp(_M_data->_M_negative_sign, L"()") != 0)
++	delete [] _M_data->_M_negative_sign;
++      if (_M_data->_M_curr_symbol_size)
++	delete [] _M_data->_M_curr_symbol;
++      delete _M_data;
++    }
++
++  template<>
++    moneypunct<wchar_t, false>::~moneypunct()
++    {
++      if (_M_data->_M_positive_sign_size)
++	delete [] _M_data->_M_positive_sign;
++      if (_M_data->_M_negative_sign_size
++          && wcscmp(_M_data->_M_negative_sign, L"()") != 0)
++	delete [] _M_data->_M_negative_sign;
++      if (_M_data->_M_curr_symbol_size)
++	delete [] _M_data->_M_curr_symbol;
++      delete _M_data;
++    }
++#endif
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+@@ -0,0 +1,160 @@
++// std::numpunct implementation details, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.3.1.2  numpunct virtual functions
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#define _LIBC
++#include <locale>
++#undef _LIBC
++#include <bits/c++locale_internal.h>
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning tailor for stub locale support
++#endif
++#ifndef __UCLIBC_HAS_XLOCALE__
++#define __nl_langinfo_l(N, L)         nl_langinfo((N))
++#endif
++
++namespace std
++{
++  template<>
++    void
++    numpunct<char>::_M_initialize_numpunct(__c_locale __cloc)
++    {
++      if (!_M_data)
++	_M_data = new __numpunct_cache<char>;
++
++      if (!__cloc)
++	{
++	  // "C" locale
++	  _M_data->_M_grouping = "";
++	  _M_data->_M_grouping_size = 0;
++	  _M_data->_M_use_grouping = false;
++
++	  _M_data->_M_decimal_point = '.';
++	  _M_data->_M_thousands_sep = ',';
++
++	  for (size_t __i = 0; __i < __num_base::_S_oend; ++__i)
++	    _M_data->_M_atoms_out[__i] = __num_base::_S_atoms_out[__i];
++
++	  for (size_t __j = 0; __j < __num_base::_S_iend; ++__j)
++	    _M_data->_M_atoms_in[__j] = __num_base::_S_atoms_in[__j];
++	}
++      else
++	{
++	  // Named locale.
++	  _M_data->_M_decimal_point = *(__nl_langinfo_l(DECIMAL_POINT,
++							__cloc));
++	  _M_data->_M_thousands_sep = *(__nl_langinfo_l(THOUSANDS_SEP,
++							__cloc));
++
++	  // Check for NULL, which implies no grouping.
++	  if (_M_data->_M_thousands_sep == '\0')
++	    _M_data->_M_grouping = "";
++	  else
++	    _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc);
++	  _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
++	}
++
++      // NB: There is no way to extact this info from posix locales.
++      // _M_truename = __nl_langinfo_l(YESSTR, __cloc);
++      _M_data->_M_truename = "true";
++      _M_data->_M_truename_size = 4;
++      // _M_falsename = __nl_langinfo_l(NOSTR, __cloc);
++      _M_data->_M_falsename = "false";
++      _M_data->_M_falsename_size = 5;
++    }
++
++  template<>
++    numpunct<char>::~numpunct()
++    { delete _M_data; }
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++  template<>
++    void
++    numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc)
++    {
++      if (!_M_data)
++	_M_data = new __numpunct_cache<wchar_t>;
++
++      if (!__cloc)
++	{
++	  // "C" locale
++	  _M_data->_M_grouping = "";
++	  _M_data->_M_grouping_size = 0;
++	  _M_data->_M_use_grouping = false;
++
++	  _M_data->_M_decimal_point = L'.';
++	  _M_data->_M_thousands_sep = L',';
++
++	  // Use ctype::widen code without the facet...
++	  for (size_t __i = 0; __i < __num_base::_S_oend; ++__i)
++	    _M_data->_M_atoms_out[__i] =
++	      static_cast<wchar_t>(__num_base::_S_atoms_out[__i]);
++
++	  for (size_t __j = 0; __j < __num_base::_S_iend; ++__j)
++	    _M_data->_M_atoms_in[__j] =
++	      static_cast<wchar_t>(__num_base::_S_atoms_in[__j]);
++	}
++      else
++	{
++	  // Named locale.
++	  // NB: In the GNU model wchar_t is always 32 bit wide.
++	  union { char *__s; wchar_t __w; } __u;
++	  __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc);
++	  _M_data->_M_decimal_point = __u.__w;
++
++	  __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc);
++	  _M_data->_M_thousands_sep = __u.__w;
++
++	  if (_M_data->_M_thousands_sep == L'\0')
++	    _M_data->_M_grouping = "";
++	  else
++	    _M_data->_M_grouping = __nl_langinfo_l(GROUPING, __cloc);
++	  _M_data->_M_grouping_size = strlen(_M_data->_M_grouping);
++	}
++
++      // NB: There is no way to extact this info from posix locales.
++      // _M_truename = __nl_langinfo_l(YESSTR, __cloc);
++      _M_data->_M_truename = L"true";
++      _M_data->_M_truename_size = 4;
++      // _M_falsename = __nl_langinfo_l(NOSTR, __cloc);
++      _M_data->_M_falsename = L"false";
++      _M_data->_M_falsename_size = 5;
++    }
++
++  template<>
++    numpunct<wchar_t>::~numpunct()
++    { delete _M_data; }
++ #endif
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.cc
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.cc
+@@ -0,0 +1,406 @@
++// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.5.1.2 - time_get virtual functions
++// ISO C++ 14882: 22.2.5.3.2 - time_put virtual functions
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++#include <locale>
++#include <bits/c++locale_internal.h>
++
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning tailor for stub locale support
++#endif
++#ifndef __UCLIBC_HAS_XLOCALE__
++#define __nl_langinfo_l(N, L)         nl_langinfo((N))
++#endif
++
++namespace std
++{
++  template<>
++    void
++    __timepunct<char>::
++    _M_put(char* __s, size_t __maxlen, const char* __format,
++	   const tm* __tm) const
++    {
++#ifdef __UCLIBC_HAS_XLOCALE__
++      const size_t __len = __strftime_l(__s, __maxlen, __format, __tm,
++					_M_c_locale_timepunct);
++#else
++      char* __old = strdup(setlocale(LC_ALL, NULL));
++      setlocale(LC_ALL, _M_name_timepunct);
++      const size_t __len = strftime(__s, __maxlen, __format, __tm);
++      setlocale(LC_ALL, __old);
++      free(__old);
++#endif
++      // Make sure __s is null terminated.
++      if (__len == 0)
++	__s[0] = '\0';
++    }
++
++  template<>
++    void
++    __timepunct<char>::_M_initialize_timepunct(__c_locale __cloc)
++    {
++      if (!_M_data)
++	_M_data = new __timepunct_cache<char>;
++
++      if (!__cloc)
++	{
++	  // "C" locale
++	  _M_c_locale_timepunct = _S_get_c_locale();
++
++	  _M_data->_M_date_format = "%m/%d/%y";
++	  _M_data->_M_date_era_format = "%m/%d/%y";
++	  _M_data->_M_time_format = "%H:%M:%S";
++	  _M_data->_M_time_era_format = "%H:%M:%S";
++	  _M_data->_M_date_time_format = "";
++	  _M_data->_M_date_time_era_format = "";
++	  _M_data->_M_am = "AM";
++	  _M_data->_M_pm = "PM";
++	  _M_data->_M_am_pm_format = "";
++
++	  // Day names, starting with "C"'s Sunday.
++	  _M_data->_M_day1 = "Sunday";
++	  _M_data->_M_day2 = "Monday";
++	  _M_data->_M_day3 = "Tuesday";
++	  _M_data->_M_day4 = "Wednesday";
++	  _M_data->_M_day5 = "Thursday";
++	  _M_data->_M_day6 = "Friday";
++	  _M_data->_M_day7 = "Saturday";
++
++	  // Abbreviated day names, starting with "C"'s Sun.
++	  _M_data->_M_aday1 = "Sun";
++	  _M_data->_M_aday2 = "Mon";
++	  _M_data->_M_aday3 = "Tue";
++	  _M_data->_M_aday4 = "Wed";
++	  _M_data->_M_aday5 = "Thu";
++	  _M_data->_M_aday6 = "Fri";
++	  _M_data->_M_aday7 = "Sat";
++
++	  // Month names, starting with "C"'s January.
++	  _M_data->_M_month01 = "January";
++	  _M_data->_M_month02 = "February";
++	  _M_data->_M_month03 = "March";
++	  _M_data->_M_month04 = "April";
++	  _M_data->_M_month05 = "May";
++	  _M_data->_M_month06 = "June";
++	  _M_data->_M_month07 = "July";
++	  _M_data->_M_month08 = "August";
++	  _M_data->_M_month09 = "September";
++	  _M_data->_M_month10 = "October";
++	  _M_data->_M_month11 = "November";
++	  _M_data->_M_month12 = "December";
++
++	  // Abbreviated month names, starting with "C"'s Jan.
++	  _M_data->_M_amonth01 = "Jan";
++	  _M_data->_M_amonth02 = "Feb";
++	  _M_data->_M_amonth03 = "Mar";
++	  _M_data->_M_amonth04 = "Apr";
++	  _M_data->_M_amonth05 = "May";
++	  _M_data->_M_amonth06 = "Jun";
++	  _M_data->_M_amonth07 = "Jul";
++	  _M_data->_M_amonth08 = "Aug";
++	  _M_data->_M_amonth09 = "Sep";
++	  _M_data->_M_amonth10 = "Oct";
++	  _M_data->_M_amonth11 = "Nov";
++	  _M_data->_M_amonth12 = "Dec";
++	}
++      else
++	{
++	  _M_c_locale_timepunct = _S_clone_c_locale(__cloc);
++
++	  _M_data->_M_date_format = __nl_langinfo_l(D_FMT, __cloc);
++	  _M_data->_M_date_era_format = __nl_langinfo_l(ERA_D_FMT, __cloc);
++	  _M_data->_M_time_format = __nl_langinfo_l(T_FMT, __cloc);
++	  _M_data->_M_time_era_format = __nl_langinfo_l(ERA_T_FMT, __cloc);
++	  _M_data->_M_date_time_format = __nl_langinfo_l(D_T_FMT, __cloc);
++	  _M_data->_M_date_time_era_format = __nl_langinfo_l(ERA_D_T_FMT,
++							     __cloc);
++	  _M_data->_M_am = __nl_langinfo_l(AM_STR, __cloc);
++	  _M_data->_M_pm = __nl_langinfo_l(PM_STR, __cloc);
++	  _M_data->_M_am_pm_format = __nl_langinfo_l(T_FMT_AMPM, __cloc);
++
++	  // Day names, starting with "C"'s Sunday.
++	  _M_data->_M_day1 = __nl_langinfo_l(DAY_1, __cloc);
++	  _M_data->_M_day2 = __nl_langinfo_l(DAY_2, __cloc);
++	  _M_data->_M_day3 = __nl_langinfo_l(DAY_3, __cloc);
++	  _M_data->_M_day4 = __nl_langinfo_l(DAY_4, __cloc);
++	  _M_data->_M_day5 = __nl_langinfo_l(DAY_5, __cloc);
++	  _M_data->_M_day6 = __nl_langinfo_l(DAY_6, __cloc);
++	  _M_data->_M_day7 = __nl_langinfo_l(DAY_7, __cloc);
++
++	  // Abbreviated day names, starting with "C"'s Sun.
++	  _M_data->_M_aday1 = __nl_langinfo_l(ABDAY_1, __cloc);
++	  _M_data->_M_aday2 = __nl_langinfo_l(ABDAY_2, __cloc);
++	  _M_data->_M_aday3 = __nl_langinfo_l(ABDAY_3, __cloc);
++	  _M_data->_M_aday4 = __nl_langinfo_l(ABDAY_4, __cloc);
++	  _M_data->_M_aday5 = __nl_langinfo_l(ABDAY_5, __cloc);
++	  _M_data->_M_aday6 = __nl_langinfo_l(ABDAY_6, __cloc);
++	  _M_data->_M_aday7 = __nl_langinfo_l(ABDAY_7, __cloc);
++
++	  // Month names, starting with "C"'s January.
++	  _M_data->_M_month01 = __nl_langinfo_l(MON_1, __cloc);
++	  _M_data->_M_month02 = __nl_langinfo_l(MON_2, __cloc);
++	  _M_data->_M_month03 = __nl_langinfo_l(MON_3, __cloc);
++	  _M_data->_M_month04 = __nl_langinfo_l(MON_4, __cloc);
++	  _M_data->_M_month05 = __nl_langinfo_l(MON_5, __cloc);
++	  _M_data->_M_month06 = __nl_langinfo_l(MON_6, __cloc);
++	  _M_data->_M_month07 = __nl_langinfo_l(MON_7, __cloc);
++	  _M_data->_M_month08 = __nl_langinfo_l(MON_8, __cloc);
++	  _M_data->_M_month09 = __nl_langinfo_l(MON_9, __cloc);
++	  _M_data->_M_month10 = __nl_langinfo_l(MON_10, __cloc);
++	  _M_data->_M_month11 = __nl_langinfo_l(MON_11, __cloc);
++	  _M_data->_M_month12 = __nl_langinfo_l(MON_12, __cloc);
++
++	  // Abbreviated month names, starting with "C"'s Jan.
++	  _M_data->_M_amonth01 = __nl_langinfo_l(ABMON_1, __cloc);
++	  _M_data->_M_amonth02 = __nl_langinfo_l(ABMON_2, __cloc);
++	  _M_data->_M_amonth03 = __nl_langinfo_l(ABMON_3, __cloc);
++	  _M_data->_M_amonth04 = __nl_langinfo_l(ABMON_4, __cloc);
++	  _M_data->_M_amonth05 = __nl_langinfo_l(ABMON_5, __cloc);
++	  _M_data->_M_amonth06 = __nl_langinfo_l(ABMON_6, __cloc);
++	  _M_data->_M_amonth07 = __nl_langinfo_l(ABMON_7, __cloc);
++	  _M_data->_M_amonth08 = __nl_langinfo_l(ABMON_8, __cloc);
++	  _M_data->_M_amonth09 = __nl_langinfo_l(ABMON_9, __cloc);
++	  _M_data->_M_amonth10 = __nl_langinfo_l(ABMON_10, __cloc);
++	  _M_data->_M_amonth11 = __nl_langinfo_l(ABMON_11, __cloc);
++	  _M_data->_M_amonth12 = __nl_langinfo_l(ABMON_12, __cloc);
++	}
++    }
++
++#ifdef _GLIBCXX_USE_WCHAR_T
++  template<>
++    void
++    __timepunct<wchar_t>::
++    _M_put(wchar_t* __s, size_t __maxlen, const wchar_t* __format,
++	   const tm* __tm) const
++    {
++#ifdef __UCLIBC_HAS_XLOCALE__
++      __wcsftime_l(__s, __maxlen, __format, __tm, _M_c_locale_timepunct);
++      const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm,
++					_M_c_locale_timepunct);
++#else
++      char* __old = strdup(setlocale(LC_ALL, NULL));
++      setlocale(LC_ALL, _M_name_timepunct);
++      const size_t __len = wcsftime(__s, __maxlen, __format, __tm);
++      setlocale(LC_ALL, __old);
++      free(__old);
++#endif
++      // Make sure __s is null terminated.
++      if (__len == 0)
++	__s[0] = L'\0';
++    }
++
++  template<>
++    void
++    __timepunct<wchar_t>::_M_initialize_timepunct(__c_locale __cloc)
++    {
++      if (!_M_data)
++	_M_data = new __timepunct_cache<wchar_t>;
++
++#warning wide time stuff
++//       if (!__cloc)
++	{
++	  // "C" locale
++	  _M_c_locale_timepunct = _S_get_c_locale();
++
++	  _M_data->_M_date_format = L"%m/%d/%y";
++	  _M_data->_M_date_era_format = L"%m/%d/%y";
++	  _M_data->_M_time_format = L"%H:%M:%S";
++	  _M_data->_M_time_era_format = L"%H:%M:%S";
++	  _M_data->_M_date_time_format = L"";
++	  _M_data->_M_date_time_era_format = L"";
++	  _M_data->_M_am = L"AM";
++	  _M_data->_M_pm = L"PM";
++	  _M_data->_M_am_pm_format = L"";
++
++	  // Day names, starting with "C"'s Sunday.
++	  _M_data->_M_day1 = L"Sunday";
++	  _M_data->_M_day2 = L"Monday";
++	  _M_data->_M_day3 = L"Tuesday";
++	  _M_data->_M_day4 = L"Wednesday";
++	  _M_data->_M_day5 = L"Thursday";
++	  _M_data->_M_day6 = L"Friday";
++	  _M_data->_M_day7 = L"Saturday";
++
++	  // Abbreviated day names, starting with "C"'s Sun.
++	  _M_data->_M_aday1 = L"Sun";
++	  _M_data->_M_aday2 = L"Mon";
++	  _M_data->_M_aday3 = L"Tue";
++	  _M_data->_M_aday4 = L"Wed";
++	  _M_data->_M_aday5 = L"Thu";
++	  _M_data->_M_aday6 = L"Fri";
++	  _M_data->_M_aday7 = L"Sat";
++
++	  // Month names, starting with "C"'s January.
++	  _M_data->_M_month01 = L"January";
++	  _M_data->_M_month02 = L"February";
++	  _M_data->_M_month03 = L"March";
++	  _M_data->_M_month04 = L"April";
++	  _M_data->_M_month05 = L"May";
++	  _M_data->_M_month06 = L"June";
++	  _M_data->_M_month07 = L"July";
++	  _M_data->_M_month08 = L"August";
++	  _M_data->_M_month09 = L"September";
++	  _M_data->_M_month10 = L"October";
++	  _M_data->_M_month11 = L"November";
++	  _M_data->_M_month12 = L"December";
++
++	  // Abbreviated month names, starting with "C"'s Jan.
++	  _M_data->_M_amonth01 = L"Jan";
++	  _M_data->_M_amonth02 = L"Feb";
++	  _M_data->_M_amonth03 = L"Mar";
++	  _M_data->_M_amonth04 = L"Apr";
++	  _M_data->_M_amonth05 = L"May";
++	  _M_data->_M_amonth06 = L"Jun";
++	  _M_data->_M_amonth07 = L"Jul";
++	  _M_data->_M_amonth08 = L"Aug";
++	  _M_data->_M_amonth09 = L"Sep";
++	  _M_data->_M_amonth10 = L"Oct";
++	  _M_data->_M_amonth11 = L"Nov";
++	  _M_data->_M_amonth12 = L"Dec";
++	}
++#if 0
++      else
++	{
++	  _M_c_locale_timepunct = _S_clone_c_locale(__cloc);
++
++	  union { char *__s; wchar_t *__w; } __u;
++
++	  __u.__s = __nl_langinfo_l(_NL_WD_FMT, __cloc);
++	  _M_data->_M_date_format = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WERA_D_FMT, __cloc);
++	  _M_data->_M_date_era_format = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WT_FMT, __cloc);
++	  _M_data->_M_time_format = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WERA_T_FMT, __cloc);
++	  _M_data->_M_time_era_format = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WD_T_FMT, __cloc);
++	  _M_data->_M_date_time_format = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WERA_D_T_FMT, __cloc);
++	  _M_data->_M_date_time_era_format = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WAM_STR, __cloc);
++	  _M_data->_M_am = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WPM_STR, __cloc);
++	  _M_data->_M_pm = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WT_FMT_AMPM, __cloc);
++	  _M_data->_M_am_pm_format = __u.__w;
++
++	  // Day names, starting with "C"'s Sunday.
++	  __u.__s = __nl_langinfo_l(_NL_WDAY_1, __cloc);
++	  _M_data->_M_day1 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WDAY_2, __cloc);
++	  _M_data->_M_day2 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WDAY_3, __cloc);
++	  _M_data->_M_day3 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WDAY_4, __cloc);
++	  _M_data->_M_day4 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WDAY_5, __cloc);
++	  _M_data->_M_day5 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WDAY_6, __cloc);
++	  _M_data->_M_day6 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WDAY_7, __cloc);
++	  _M_data->_M_day7 = __u.__w;
++
++	  // Abbreviated day names, starting with "C"'s Sun.
++	  __u.__s = __nl_langinfo_l(_NL_WABDAY_1, __cloc);
++	  _M_data->_M_aday1 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABDAY_2, __cloc);
++	  _M_data->_M_aday2 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABDAY_3, __cloc);
++	  _M_data->_M_aday3 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABDAY_4, __cloc);
++	  _M_data->_M_aday4 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABDAY_5, __cloc);
++	  _M_data->_M_aday5 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABDAY_6, __cloc);
++	  _M_data->_M_aday6 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABDAY_7, __cloc);
++	  _M_data->_M_aday7 = __u.__w;
++
++	  // Month names, starting with "C"'s January.
++	  __u.__s = __nl_langinfo_l(_NL_WMON_1, __cloc);
++	  _M_data->_M_month01 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_2, __cloc);
++	  _M_data->_M_month02 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_3, __cloc);
++	  _M_data->_M_month03 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_4, __cloc);
++	  _M_data->_M_month04 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_5, __cloc);
++	  _M_data->_M_month05 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_6, __cloc);
++	  _M_data->_M_month06 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_7, __cloc);
++	  _M_data->_M_month07 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_8, __cloc);
++	  _M_data->_M_month08 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_9, __cloc);
++	  _M_data->_M_month09 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_10, __cloc);
++	  _M_data->_M_month10 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_11, __cloc);
++	  _M_data->_M_month11 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WMON_12, __cloc);
++	  _M_data->_M_month12 = __u.__w;
++
++	  // Abbreviated month names, starting with "C"'s Jan.
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_1, __cloc);
++	  _M_data->_M_amonth01 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_2, __cloc);
++	  _M_data->_M_amonth02 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_3, __cloc);
++	  _M_data->_M_amonth03 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_4, __cloc);
++	  _M_data->_M_amonth04 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_5, __cloc);
++	  _M_data->_M_amonth05 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_6, __cloc);
++	  _M_data->_M_amonth06 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_7, __cloc);
++	  _M_data->_M_amonth07 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_8, __cloc);
++	  _M_data->_M_amonth08 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_9, __cloc);
++	  _M_data->_M_amonth09 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_10, __cloc);
++	  _M_data->_M_amonth10 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_11, __cloc);
++	  _M_data->_M_amonth11 = __u.__w;
++	  __u.__s = __nl_langinfo_l(_NL_WABMON_12, __cloc);
++	  _M_data->_M_amonth12 = __u.__w;
++	}
++#endif // 0
++    }
++#endif
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.h
+===================================================================
+--- /dev/null
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.h
+@@ -0,0 +1,68 @@
++// std::time_get, std::time_put implementation, GNU version -*- C++ -*-
++
++// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library.  This library 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, 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 General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING.  If not, write to the Free
++// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
++// USA.
++
++// As a special exception, you may use this file as part of a free software
++// library without restriction.  Specifically, if other files instantiate
++// templates or use macros or inline functions from this file, or you compile
++// this file and link it with other files to produce an executable, this
++// file does not by itself cause the resulting executable to be covered by
++// the GNU General Public License.  This exception does not however
++// invalidate any other reasons why the executable file might be covered by
++// the GNU General Public License.
++
++//
++// ISO C++ 14882: 22.2.5.1.2 - time_get functions
++// ISO C++ 14882: 22.2.5.3.2 - time_put functions
++//
++
++// Written by Benjamin Kosnik <bkoz@redhat.com>
++
++  template<typename _CharT>
++    __timepunct<_CharT>::__timepunct(size_t __refs)
++    : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL),
++    _M_name_timepunct(_S_get_c_name())
++    { _M_initialize_timepunct(); }
++
++  template<typename _CharT>
++    __timepunct<_CharT>::__timepunct(__cache_type* __cache, size_t __refs)
++    : facet(__refs), _M_data(__cache), _M_c_locale_timepunct(NULL),
++    _M_name_timepunct(_S_get_c_name())
++    { _M_initialize_timepunct(); }
++
++  template<typename _CharT>
++    __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s,
++				     size_t __refs)
++    : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL),
++    _M_name_timepunct(__s)
++    {
++      char* __tmp = new char[std::strlen(__s) + 1];
++      std::strcpy(__tmp, __s);
++      _M_name_timepunct = __tmp;
++      _M_initialize_timepunct(__cloc);
++    }
++
++  template<typename _CharT>
++    __timepunct<_CharT>::~__timepunct()
++    {
++      if (_M_name_timepunct != _S_get_c_name())
++	delete [] _M_name_timepunct;
++      delete _M_data;
++      _S_destroy_c_locale(_M_c_locale_timepunct);
++    }
+Index: gcc-4.6.0/libstdc++-v3/configure
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/configure
++++ gcc-4.6.0/libstdc++-v3/configure
+@@ -15642,7 +15642,7 @@ $as_echo "stdio" >&6; }
+ if test "${enable_clocale+set}" = set; then :
+   enableval=$enable_clocale;
+       case "$enableval" in
+-       generic|gnu|ieee_1003.1-2001|yes|no|auto) ;;
++       generic|gnu|ieee_1003.1-2001|uclibc|yes|no|auto) ;;
+        *) as_fn_error "Unknown argument to enable/disable clocale" "$LINENO" 5 ;;
+ 	  	        esac
+ 
+@@ -15674,6 +15674,9 @@ fi
+   # Default to "generic".
+   if test $enable_clocale_flag = auto; then
+     case ${target_os} in
++      *-uclibc*)
++        enable_clocale_flag=uclibc
++        ;;
+       linux* | gnu* | kfreebsd*-gnu | knetbsd*-gnu)
+ 	enable_clocale_flag=gnu
+ 	;;
+@@ -15907,6 +15910,76 @@ $as_echo "IEEE 1003.1" >&6; }
+       CTIME_CC=config/locale/generic/time_members.cc
+       CLOCALE_INTERNAL_H=config/locale/generic/c++locale_internal.h
+       ;;
++    uclibc)
++      echo "$as_me:$LINENO: result: uclibc" >&5
++echo "${ECHO_T}uclibc" >&6
++
++      # Declare intention to use gettext, and add support for specific
++      # languages.
++      # For some reason, ALL_LINGUAS has to be before AM-GNU-GETTEXT
++      ALL_LINGUAS="de fr"
++
++      # Don't call AM-GNU-GETTEXT here. Instead, assume glibc.
++      # Extract the first word of "msgfmt", so it can be a program name with args.
++set dummy msgfmt; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_check_msgfmt+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$check_msgfmt"; then
++  ac_cv_prog_check_msgfmt="$check_msgfmt" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_check_msgfmt="yes"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++  test -z "$ac_cv_prog_check_msgfmt" && ac_cv_prog_check_msgfmt="no"
++fi
++fi
++check_msgfmt=$ac_cv_prog_check_msgfmt
++if test -n "$check_msgfmt"; then
++  echo "$as_me:$LINENO: result: $check_msgfmt" >&5
++echo "${ECHO_T}$check_msgfmt" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++      if test x"$check_msgfmt" = x"yes" && test x"$enable_nls" = x"yes"; then
++        USE_NLS=yes
++      fi
++      # Export the build objects.
++      for ling in $ALL_LINGUAS; do \
++        glibcxx_MOFILES="$glibcxx_MOFILES $ling.mo"; \
++        glibcxx_POFILES="$glibcxx_POFILES $ling.po"; \
++      done
++
++
++
++      CLOCALE_H=config/locale/uclibc/c_locale.h
++      CLOCALE_CC=config/locale/uclibc/c_locale.cc
++      CCODECVT_CC=config/locale/uclibc/codecvt_members.cc
++      CCOLLATE_CC=config/locale/uclibc/collate_members.cc
++      CCTYPE_CC=config/locale/uclibc/ctype_members.cc
++      CMESSAGES_H=config/locale/uclibc/messages_members.h
++      CMESSAGES_CC=config/locale/uclibc/messages_members.cc
++      CMONEY_CC=config/locale/uclibc/monetary_members.cc
++      CNUMERIC_CC=config/locale/uclibc/numeric_members.cc
++      CTIME_H=config/locale/uclibc/time_members.h
++      CTIME_CC=config/locale/uclibc/time_members.cc
++      CLOCALE_INTERNAL_H=config/locale/uclibc/c++locale_internal.h
++      ;;
+   esac
+ 
+   # This is where the testsuite looks for locale catalogs, using the
+@@ -16957,6 +17030,7 @@ rm -f core conftest.err conftest.$ac_obj
+ 
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
++#line 17016 "configure"
+ #include <wctype.h>
+ int
+ main ()
+@@ -64172,7 +64246,6 @@ $as_echo_n "checking for shared libgcc..
+ fi
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+-
+ int
+ main ()
+ {
+Index: gcc-4.6.0/libstdc++-v3/include/c_compatibility/wchar.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/include/c_compatibility/wchar.h
++++ gcc-4.6.0/libstdc++-v3/include/c_compatibility/wchar.h
+@@ -101,7 +101,9 @@ using std::wmemcmp;
+ using std::wmemcpy;
+ using std::wmemmove;
+ using std::wmemset;
++#if _GLIBCXX_HAVE_WCSFTIME
+ using std::wcsftime;
++#endif
+ 
+ #if _GLIBCXX_USE_C99
+ using std::wcstold;
+Index: gcc-4.6.0/libstdc++-v3/include/c_std/cwchar
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/include/c_std/cwchar
++++ gcc-4.6.0/libstdc++-v3/include/c_std/cwchar
+@@ -177,7 +177,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+   using ::wcscoll;
+   using ::wcscpy;
+   using ::wcscspn;
++#if _GLIBCXX_HAVE_WCSFTIME
+   using ::wcsftime;
++#endif
+   using ::wcslen;
+   using ::wcsncat;
+   using ::wcsncmp;
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/203-uclibc-locale-no__x.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/203-uclibc-locale-no__x.patch
new file mode 100644
index 0000000..78743c6
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/203-uclibc-locale-no__x.patch
@@ -0,0 +1,233 @@
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+@@ -60,4 +60,49 @@ extern "C" __typeof(wcsxfrm_l) __wcsxfrm
+ extern "C" __typeof(wctype_l) __wctype_l;
+ #endif
+ 
++# define __nl_langinfo_l nl_langinfo_l
++# define __strcoll_l strcoll_l
++# define __strftime_l strftime_l
++# define __strtod_l strtod_l
++# define __strtof_l strtof_l
++# define __strtold_l strtold_l
++# define __strxfrm_l strxfrm_l
++# define __newlocale newlocale
++# define __freelocale freelocale
++# define __duplocale duplocale
++# define __uselocale uselocale
++
++# ifdef _GLIBCXX_USE_WCHAR_T
++#  define __iswctype_l iswctype_l
++#  define __towlower_l towlower_l
++#  define __towupper_l towupper_l
++#  define __wcscoll_l wcscoll_l
++#  define __wcsftime_l wcsftime_l
++#  define __wcsxfrm_l wcsxfrm_l
++#  define __wctype_l wctype_l
++# endif
++
++#else
++# define __nl_langinfo_l(N, L)       nl_langinfo((N))
++# define __strcoll_l(S1, S2, L)      strcoll((S1), (S2))
++# define __strtod_l(S, E, L)         strtod((S), (E))
++# define __strtof_l(S, E, L)         strtof((S), (E))
++# define __strtold_l(S, E, L)        strtold((S), (E))
++# define __strxfrm_l(S1, S2, N, L)   strxfrm((S1), (S2), (N))
++# warning should dummy __newlocale check for C|POSIX ?
++# define __newlocale(a, b, c)        NULL
++# define __freelocale(a)             ((void)0)
++# define __duplocale(a)              __c_locale()
++//# define __uselocale ?
++//
++# ifdef _GLIBCXX_USE_WCHAR_T
++#  define __iswctype_l(C, M, L)       iswctype((C), (M))
++#  define __towlower_l(C, L)          towlower((C))
++#  define __towupper_l(C, L)          towupper((C))
++#  define __wcscoll_l(S1, S2, L)      wcscoll((S1), (S2))
++//#  define __wcsftime_l(S, M, F, T, L)  wcsftime((S), (M), (F), (T))
++#  define __wcsxfrm_l(S1, S2, N, L)   wcsxfrm((S1), (S2), (N))
++#  define __wctype_l(S, L)            wctype((S))
++# endif
++
+ #endif // GLIBC 2.3 and later
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/c_locale.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.cc
+@@ -39,20 +39,6 @@
+ #include <langinfo.h>
+ #include <bits/c++locale_internal.h>
+ 
+-#ifndef __UCLIBC_HAS_XLOCALE__
+-#define __strtol_l(S, E, B, L)      strtol((S), (E), (B))
+-#define __strtoul_l(S, E, B, L)     strtoul((S), (E), (B))
+-#define __strtoll_l(S, E, B, L)     strtoll((S), (E), (B))
+-#define __strtoull_l(S, E, B, L)    strtoull((S), (E), (B))
+-#define __strtof_l(S, E, L)         strtof((S), (E))
+-#define __strtod_l(S, E, L)         strtod((S), (E))
+-#define __strtold_l(S, E, L)        strtold((S), (E))
+-#warning should dummy __newlocale check for C|POSIX ?
+-#define __newlocale(a, b, c)        NULL
+-#define __freelocale(a)             ((void)0)
+-#define __duplocale(a)              __c_locale()
+-#endif
+-
+ namespace std
+ {
+   template<>
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/collate_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/collate_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/collate_members.cc
+@@ -36,13 +36,6 @@
+ #include <locale>
+ #include <bits/c++locale_internal.h>
+ 
+-#ifndef __UCLIBC_HAS_XLOCALE__
+-#define __strcoll_l(S1, S2, L)      strcoll((S1), (S2))
+-#define __strxfrm_l(S1, S2, N, L)   strxfrm((S1), (S2), (N))
+-#define __wcscoll_l(S1, S2, L)      wcscoll((S1), (S2))
+-#define __wcsxfrm_l(S1, S2, N, L)   wcsxfrm((S1), (S2), (N))
+-#endif
+-
+ namespace std
+ {
+   // These are basically extensions to char_traits, and perhaps should
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/monetary_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+@@ -43,10 +43,6 @@
+ #warning tailor for stub locale support
+ #endif
+ 
+-#ifndef __UCLIBC_HAS_XLOCALE__
+-#define __nl_langinfo_l(N, L)         nl_langinfo((N))
+-#endif
+-
+ namespace std
+ {
+   // Construct and return valid pattern consisting of some combination of:
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/numeric_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+@@ -41,9 +41,6 @@
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning tailor for stub locale support
+ #endif
+-#ifndef __UCLIBC_HAS_XLOCALE__
+-#define __nl_langinfo_l(N, L)         nl_langinfo((N))
+-#endif
+ 
+ namespace std
+ {
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/time_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.cc
+@@ -40,9 +40,6 @@
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning tailor for stub locale support
+ #endif
+-#ifndef __UCLIBC_HAS_XLOCALE__
+-#define __nl_langinfo_l(N, L)         nl_langinfo((N))
+-#endif
+ 
+ namespace std
+ {
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/ctype_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+@@ -38,13 +38,6 @@
+ #undef _LIBC
+ #include <bits/c++locale_internal.h>
+ 
+-#ifndef __UCLIBC_HAS_XLOCALE__
+-#define __wctype_l(S, L)           wctype((S))
+-#define __towupper_l(C, L)         towupper((C))
+-#define __towlower_l(C, L)         towlower((C))
+-#define __iswctype_l(C, M, L)      iswctype((C), (M))
+-#endif
+-
+ namespace std
+ {
+   // NB: The other ctype<char> specializations are in src/locale.cc and
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/messages_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.cc
+@@ -39,13 +39,10 @@
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning fix gettext stuff
+ #endif
+-#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__
+-extern "C" char *__dcgettext(const char *domainname,
+-			     const char *msgid, int category);
+ #undef gettext
+-#define gettext(msgid) __dcgettext(NULL, msgid, LC_MESSAGES)
++#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__
++#define gettext(msgid) dcgettext(NULL, msgid, LC_MESSAGES)
+ #else
+-#undef gettext
+ #define gettext(msgid) (msgid)
+ #endif
+ 
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/messages_members.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+@@ -36,15 +36,11 @@
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning fix prototypes for *textdomain funcs
+ #endif
+-#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__
+-extern "C" char *__textdomain(const char *domainname);
+-extern "C" char *__bindtextdomain(const char *domainname,
+-				  const char *dirname);
+-#else
+-#undef __textdomain
+-#undef __bindtextdomain
+-#define __textdomain(D)           ((void)0)
+-#define __bindtextdomain(D,P)     ((void)0)
++#ifndef __UCLIBC_HAS_GETTEXT_AWARENESS__
++#undef textdomain
++#undef bindtextdomain
++#define textdomain(D)           ((void)0)
++#define bindtextdomain(D,P)     ((void)0)
+ #endif
+ 
+   // Non-virtual member functions.
+@@ -70,7 +66,7 @@ extern "C" char *__bindtextdomain(const
+     messages<_CharT>::open(const basic_string<char>& __s, const locale& __loc,
+ 			   const char* __dir) const
+     {
+-      __bindtextdomain(__s.c_str(), __dir);
++      bindtextdomain(__s.c_str(), __dir);
+       return this->do_open(__s, __loc);
+     }
+ 
+@@ -90,7 +86,7 @@ extern "C" char *__bindtextdomain(const
+     {
+       // No error checking is done, assume the catalog exists and can
+       // be used.
+-      __textdomain(__s.c_str());
++      textdomain(__s.c_str());
+       return 0;
+     }
+ 
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/c_locale.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.h
+@@ -68,6 +68,7 @@ namespace __gnu_cxx
+ {
+   extern "C" __typeof(uselocale) __uselocale;
+ }
++#define __uselocale uselocale
+ #endif
+ 
+ namespace std
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/204-uclibc-locale-wchar_fix.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/204-uclibc-locale-wchar_fix.patch
new file mode 100644
index 0000000..2d8d70a
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/204-uclibc-locale-wchar_fix.patch
@@ -0,0 +1,52 @@
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/monetary_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+@@ -401,7 +401,7 @@ namespace std
+ # ifdef __UCLIBC_HAS_XLOCALE__
+ 	  _M_data->_M_decimal_point = __cloc->decimal_point_wc;
+ 	  _M_data->_M_thousands_sep = __cloc->thousands_sep_wc;
+-# else
++# elif defined __UCLIBC_HAS_LOCALE__
+ 	  _M_data->_M_decimal_point = __global_locale->decimal_point_wc;
+ 	  _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc;
+ # endif
+@@ -556,7 +556,7 @@ namespace std
+ # ifdef __UCLIBC_HAS_XLOCALE__
+ 	  _M_data->_M_decimal_point = __cloc->decimal_point_wc;
+ 	  _M_data->_M_thousands_sep = __cloc->thousands_sep_wc;
+-# else
++# elif defined __UCLIBC_HAS_LOCALE__
+ 	  _M_data->_M_decimal_point = __global_locale->decimal_point_wc;
+ 	  _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc;
+ # endif
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/numeric_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+@@ -127,12 +127,25 @@ namespace std
+ 	{
+ 	  // Named locale.
+ 	  // NB: In the GNU model wchar_t is always 32 bit wide.
++#ifdef __UCLIBC_MJN3_ONLY__
++#warning fix this... should be numeric
++#endif
++#ifdef __UCLIBC__
++# ifdef __UCLIBC_HAS_XLOCALE__
++	  _M_data->_M_decimal_point = __cloc->decimal_point_wc;
++	  _M_data->_M_thousands_sep = __cloc->thousands_sep_wc;
++# elif defined __UCLIBC_HAS_LOCALE__
++	  _M_data->_M_decimal_point = __global_locale->decimal_point_wc;
++	  _M_data->_M_thousands_sep = __global_locale->thousands_sep_wc;
++# endif
++#else
+ 	  union { char *__s; wchar_t __w; } __u;
+ 	  __u.__s = __nl_langinfo_l(_NL_NUMERIC_DECIMAL_POINT_WC, __cloc);
+ 	  _M_data->_M_decimal_point = __u.__w;
+ 
+ 	  __u.__s = __nl_langinfo_l(_NL_NUMERIC_THOUSANDS_SEP_WC, __cloc);
+ 	  _M_data->_M_thousands_sep = __u.__w;
++#endif
+ 
+ 	  if (_M_data->_M_thousands_sep == L'\0')
+ 	    _M_data->_M_grouping = "";
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/205-uclibc-locale-update.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/205-uclibc-locale-update.patch
new file mode 100644
index 0000000..911ad51
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/205-uclibc-locale-update.patch
@@ -0,0 +1,519 @@
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/c_locale.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.cc
+@@ -39,23 +39,20 @@
+ #include <langinfo.h>
+ #include <bits/c++locale_internal.h>
+ 
+-namespace std
+-{
++_GLIBCXX_BEGIN_NAMESPACE(std)
++
+   template<>
+     void
+     __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err,
+ 		   const __c_locale& __cloc)
+     {
+-      if (!(__err & ios_base::failbit))
+-	{
+-	  char* __sanity;
+-	  errno = 0;
+-	  float __f = __strtof_l(__s, &__sanity, __cloc);
+-          if (__sanity != __s && errno != ERANGE)
+-	    __v = __f;
+-	  else
+-	    __err |= ios_base::failbit;
+-	}
++      char* __sanity;
++      errno = 0;
++      float __f = __strtof_l(__s, &__sanity, __cloc);
++      if (__sanity != __s && errno != ERANGE)
++	__v = __f;
++      else
++	__err |= ios_base::failbit;
+     }
+ 
+   template<>
+@@ -63,16 +60,13 @@ namespace std
+     __convert_to_v(const char* __s, double& __v, ios_base::iostate& __err,
+ 		   const __c_locale& __cloc)
+     {
+-      if (!(__err & ios_base::failbit))
+-	{
+-	  char* __sanity;
+-	  errno = 0;
+-	  double __d = __strtod_l(__s, &__sanity, __cloc);
+-          if (__sanity != __s && errno != ERANGE)
+-	    __v = __d;
+-	  else
+-	    __err |= ios_base::failbit;
+-	}
++      char* __sanity;
++      errno = 0;
++      double __d = __strtod_l(__s, &__sanity, __cloc);
++      if (__sanity != __s && errno != ERANGE)
++	__v = __d;
++      else
++	__err |= ios_base::failbit;
+     }
+ 
+   template<>
+@@ -80,16 +74,13 @@ namespace std
+     __convert_to_v(const char* __s, long double& __v, ios_base::iostate& __err,
+ 		   const __c_locale& __cloc)
+     {
+-      if (!(__err & ios_base::failbit))
+-	{
+-	  char* __sanity;
+-	  errno = 0;
+-	  long double __ld = __strtold_l(__s, &__sanity, __cloc);
+-          if (__sanity != __s && errno != ERANGE)
+-	    __v = __ld;
+-	  else
+-	    __err |= ios_base::failbit;
+-	}
++      char* __sanity;
++      errno = 0;
++      long double __ld = __strtold_l(__s, &__sanity, __cloc);
++      if (__sanity != __s && errno != ERANGE)
++	__v = __ld;
++      else
++	__err |= ios_base::failbit;
+     }
+ 
+   void
+@@ -110,17 +101,18 @@ namespace std
+   void
+   locale::facet::_S_destroy_c_locale(__c_locale& __cloc)
+   {
+-    if (_S_get_c_locale() != __cloc)
++    if (__cloc && _S_get_c_locale() != __cloc)
+       __freelocale(__cloc);
+   }
+ 
+   __c_locale
+   locale::facet::_S_clone_c_locale(__c_locale& __cloc)
+   { return __duplocale(__cloc); }
+-} // namespace std
+ 
+-namespace __gnu_cxx
+-{
++_GLIBCXX_END_NAMESPACE
++
++_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
++
+   const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] =
+     {
+       "LC_CTYPE",
+@@ -138,9 +130,11 @@ namespace __gnu_cxx
+       "LC_IDENTIFICATION"
+ #endif
+     };
+-}
+ 
+-namespace std
+-{
++_GLIBCXX_END_NAMESPACE
++
++_GLIBCXX_BEGIN_NAMESPACE(std)
++
+   const char* const* const locale::_S_categories = __gnu_cxx::category_names;
+-}  // namespace std
++
++_GLIBCXX_END_NAMESPACE
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/ctype_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/ctype_members.cc
+@@ -33,16 +33,20 @@
+ 
+ // Written by Benjamin Kosnik <bkoz@redhat.com>
+ 
++#include <features.h>
++#ifdef __UCLIBC_HAS_LOCALE__
+ #define _LIBC
+ #include <locale>
+ #undef _LIBC
++#else
++#include <locale>
++#endif
+ #include <bits/c++locale_internal.h>
+ 
+-namespace std
+-{
++_GLIBCXX_BEGIN_NAMESPACE(std)
++
+   // NB: The other ctype<char> specializations are in src/locale.cc and
+   // various /config/os/* files.
+-  template<>
+     ctype_byname<char>::ctype_byname(const char* __s, size_t __refs)
+     : ctype<char>(0, false, __refs)
+     {
+@@ -57,6 +61,8 @@ namespace std
+ #endif
+ 	}
+     }
++    ctype_byname<char>::~ctype_byname()
++    { }
+ 
+ #ifdef _GLIBCXX_USE_WCHAR_T
+   ctype<wchar_t>::__wmask_type
+@@ -138,17 +144,33 @@ namespace std
+   ctype<wchar_t>::
+   do_is(mask __m, wchar_t __c) const
+   {
+-    // Highest bitmask in ctype_base == 10, but extra in "C"
+-    // library for blank.
++    // The case of __m == ctype_base::space is particularly important,
++    // due to its use in many istream functions.  Therefore we deal with
++    // it first, exploiting the knowledge that on GNU systems _M_bit[5]
++    // is the mask corresponding to ctype_base::space.  NB: an encoding
++    // change would not affect correctness!
++
+     bool __ret = false;
+-    const size_t __bitmasksize = 11;
+-    for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur)
+-      if (__m & _M_bit[__bitcur]
+-	  && __iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype))
+-	{
+-	  __ret = true;
+-	  break;
+-	}
++    if (__m == _M_bit[5])
++      __ret = __iswctype_l(__c, _M_wmask[5], _M_c_locale_ctype);
++    else
++      {
++	// Highest bitmask in ctype_base == 10, but extra in "C"
++	// library for blank.
++	const size_t __bitmasksize = 11;
++	for (size_t __bitcur = 0; __bitcur <= __bitmasksize; ++__bitcur)
++	  if (__m & _M_bit[__bitcur])
++	    {
++	      if (__iswctype_l(__c, _M_wmask[__bitcur], _M_c_locale_ctype))
++		{
++		  __ret = true;
++		  break;
++		}
++	      else if (__m == _M_bit[__bitcur])
++		break;
++	    }
++      }
++
+     return __ret;
+   }
+ 
+@@ -290,4 +312,5 @@ namespace std
+ #endif
+   }
+ #endif //  _GLIBCXX_USE_WCHAR_T
+-}
++
++_GLIBCXX_END_NAMESPACE
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/messages_members.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+@@ -53,12 +53,16 @@
+   template<typename _CharT>
+      messages<_CharT>::messages(__c_locale __cloc, const char* __s,
+ 				size_t __refs)
+-     : facet(__refs), _M_c_locale_messages(_S_clone_c_locale(__cloc)),
+-     _M_name_messages(__s)
++     : facet(__refs), _M_c_locale_messages(NULL),
++     _M_name_messages(NULL)
+      {
+-       char* __tmp = new char[std::strlen(__s) + 1];
+-       std::strcpy(__tmp, __s);
++       const size_t __len = std::strlen(__s) + 1;
++       char* __tmp = new char[__len];
++       std::memcpy(__tmp, __s, __len);
+        _M_name_messages = __tmp;
++
++       // Last to avoid leaking memory if new throws.
++       _M_c_locale_messages = _S_clone_c_locale(__cloc);
+      }
+ 
+   template<typename _CharT>
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/monetary_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/monetary_members.cc
+@@ -33,9 +33,14 @@
+ 
+ // Written by Benjamin Kosnik <bkoz@redhat.com>
+ 
++#include <features.h>
++#ifdef __UCLIBC_HAS_LOCALE__
+ #define _LIBC
+ #include <locale>
+ #undef _LIBC
++#else
++#include <locale>
++#endif
+ #include <bits/c++locale_internal.h>
+ 
+ #ifdef __UCLIBC_MJN3_ONLY__
+@@ -206,7 +211,7 @@ namespace std
+ 	  }
+ 	break;
+       default:
+-	;
++	__ret = pattern();
+       }
+     return __ret;
+   }
+@@ -390,7 +395,9 @@ namespace std
+ 	  __c_locale __old = __uselocale(__cloc);
+ #else
+ 	  // Switch to named locale so that mbsrtowcs will work.
+-	  char* __old = strdup(setlocale(LC_ALL, NULL));
++  	  char* __old = setlocale(LC_ALL, NULL);
++          const size_t __llen = strlen(__old) + 1;
++          char* __sav = new char[__llen];
+ 	  setlocale(LC_ALL, __name);
+ #endif
+ 
+@@ -477,8 +484,8 @@ namespace std
+ #ifdef __UCLIBC_HAS_XLOCALE__
+ 	      __uselocale(__old);
+ #else
+-	      setlocale(LC_ALL, __old);
+-	      free(__old);
++	      setlocale(LC_ALL, __sav);
++	      delete [] __sav;
+ #endif
+ 	      __throw_exception_again;
+ 	    }
+@@ -498,8 +505,8 @@ namespace std
+ #ifdef __UCLIBC_HAS_XLOCALE__
+ 	  __uselocale(__old);
+ #else
+-	  setlocale(LC_ALL, __old);
+-	  free(__old);
++	  setlocale(LC_ALL, __sav);
++	  delete [] __sav;
+ #endif
+ 	}
+     }
+@@ -545,8 +552,11 @@ namespace std
+ 	  __c_locale __old = __uselocale(__cloc);
+ #else
+ 	  // Switch to named locale so that mbsrtowcs will work.
+-	  char* __old = strdup(setlocale(LC_ALL, NULL));
+-	  setlocale(LC_ALL, __name);
++          char* __old = setlocale(LC_ALL, NULL);
++          const size_t __llen = strlen(__old) + 1;
++          char* __sav = new char[__llen];
++          memcpy(__sav, __old, __llen);
++          setlocale(LC_ALL, __name);
+ #endif
+ 
+ #ifdef __UCLIBC_MJN3_ONLY__
+@@ -633,8 +643,8 @@ namespace std
+ #ifdef __UCLIBC_HAS_XLOCALE__
+ 	      __uselocale(__old);
+ #else
+-	      setlocale(LC_ALL, __old);
+-	      free(__old);
++	      setlocale(LC_ALL, __sav);
++	      delete [] __sav;
+ #endif
+               __throw_exception_again;
+ 	    }
+@@ -653,8 +663,8 @@ namespace std
+ #ifdef __UCLIBC_HAS_XLOCALE__
+ 	  __uselocale(__old);
+ #else
+-	  setlocale(LC_ALL, __old);
+-	  free(__old);
++	  setlocale(LC_ALL, __sav);
++	  delete [] __sav;
+ #endif
+ 	}
+     }
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/numeric_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/numeric_members.cc
+@@ -33,9 +33,14 @@
+ 
+ // Written by Benjamin Kosnik <bkoz@redhat.com>
+ 
++#include <features.h>
++#ifdef __UCLIBC_HAS_LOCALE__
+ #define _LIBC
+ #include <locale>
+ #undef _LIBC
++#else
++#include <locale>
++#endif
+ #include <bits/c++locale_internal.h>
+ 
+ #ifdef __UCLIBC_MJN3_ONLY__
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/time_members.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.h
+@@ -50,12 +50,21 @@
+     __timepunct<_CharT>::__timepunct(__c_locale __cloc, const char* __s,
+ 				     size_t __refs)
+     : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL),
+-    _M_name_timepunct(__s)
++    _M_name_timepunct(NULL)
+     {
+-      char* __tmp = new char[std::strlen(__s) + 1];
+-      std::strcpy(__tmp, __s);
++      const size_t __len = std::strlen(__s) + 1;
++      char* __tmp = new char[__len];
++      std::memcpy(__tmp, __s, __len);
+       _M_name_timepunct = __tmp;
+-      _M_initialize_timepunct(__cloc);
++
++      try
++	{ _M_initialize_timepunct(__cloc); }
++      catch(...)
++	{
++	  delete [] _M_name_timepunct;
++	  __throw_exception_again;
++	}
++
+     }
+ 
+   template<typename _CharT>
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/c_locale.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c_locale.h
+@@ -39,21 +39,23 @@
+ #pragma GCC system_header
+ 
+ #include <cstring>              // get std::strlen
+-#include <cstdio>               // get std::snprintf or std::sprintf
++#include <cstdio>               // get std::vsnprintf or std::vsprintf
+ #include <clocale>
+ #include <langinfo.h>		// For codecvt
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning fix this
+ #endif
+-#ifdef __UCLIBC_HAS_LOCALE__
++#ifdef _GLIBCXX_USE_ICONV
+ #include <iconv.h>		// For codecvt using iconv, iconv_t
+ #endif
+-#ifdef __UCLIBC_HAS_GETTEXT_AWARENESS__
+-#include <libintl.h> 		// For messages
++#ifdef HAVE_LIBINTL_H
++#include <libintl.h>		// For messages
+ #endif
++#include <cstdarg>
+ 
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning what is _GLIBCXX_C_LOCALE_GNU for
++// psm: used in os/gnu-linux/ctype_noninline.h
+ #endif
+ #define _GLIBCXX_C_LOCALE_GNU 1
+ 
+@@ -78,23 +80,25 @@ namespace std
+ #else
+   typedef int*			__c_locale;
+ #endif
+-
+-  // Convert numeric value of type _Tv to string and return length of
+-  // string.  If snprintf is available use it, otherwise fall back to
+-  // the unsafe sprintf which, in general, can be dangerous and should
++  // Convert numeric value of type double to string and return length of
++  // string.  If vsnprintf is available use it, otherwise fall back to
++  // the unsafe vsprintf which, in general, can be dangerous and should
+   // be avoided.
+-  template<typename _Tv>
+-    int
+-    __convert_from_v(char* __out,
+-		     const int __size __attribute__ ((__unused__)),
+-		     const char* __fmt,
+-#ifdef __UCLIBC_HAS_XCLOCALE__
+-		     _Tv __v, const __c_locale& __cloc, int __prec)
++    inline int
++    __convert_from_v(const __c_locale&
++#ifndef __UCLIBC_HAS_XCLOCALE__
++	__cloc __attribute__ ((__unused__))
++#endif
++		     ,
++		     char* __out,
++		     const int __size,
++		     const char* __fmt, ...)
+     {
++      va_list __args;
++#ifdef __UCLIBC_HAS_XCLOCALE__
++
+       __c_locale __old = __gnu_cxx::__uselocale(__cloc);
+ #else
+-		     _Tv __v, const __c_locale&, int __prec)
+-    {
+ # ifdef __UCLIBC_HAS_LOCALE__
+       char* __old = std::setlocale(LC_ALL, NULL);
+       char* __sav = new char[std::strlen(__old) + 1];
+@@ -103,7 +107,9 @@ namespace std
+ # endif
+ #endif
+ 
+-      const int __ret = std::snprintf(__out, __size, __fmt, __prec, __v);
++      va_start(__args, __fmt);
++      const int __ret = std::vsnprintf(__out, __size, __fmt, __args);
++      va_end(__args);
+ 
+ #ifdef __UCLIBC_HAS_XCLOCALE__
+       __gnu_cxx::__uselocale(__old);
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/time_members.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.cc
+@@ -53,11 +53,14 @@ namespace std
+       const size_t __len = __strftime_l(__s, __maxlen, __format, __tm,
+ 					_M_c_locale_timepunct);
+ #else
+-      char* __old = strdup(setlocale(LC_ALL, NULL));
++      char* __old = setlocale(LC_ALL, NULL);
++      const size_t __llen = strlen(__old) + 1;
++      char* __sav = new char[__llen];
++      memcpy(__sav, __old, __llen);
+       setlocale(LC_ALL, _M_name_timepunct);
+       const size_t __len = strftime(__s, __maxlen, __format, __tm);
+-      setlocale(LC_ALL, __old);
+-      free(__old);
++      setlocale(LC_ALL, __sav);
++      delete [] __sav;
+ #endif
+       // Make sure __s is null terminated.
+       if (__len == 0)
+@@ -207,11 +210,14 @@ namespace std
+       const size_t __len = __wcsftime_l(__s, __maxlen, __format, __tm,
+ 					_M_c_locale_timepunct);
+ #else
+-      char* __old = strdup(setlocale(LC_ALL, NULL));
++      char* __old = setlocale(LC_ALL, NULL);
++      const size_t __llen = strlen(__old) + 1;
++      char* __sav = new char[__llen];
++      memcpy(__sav, __old, __llen);
+       setlocale(LC_ALL, _M_name_timepunct);
+       const size_t __len = wcsftime(__s, __maxlen, __format, __tm);
+-      setlocale(LC_ALL, __old);
+-      free(__old);
++      setlocale(LC_ALL, __sav);
++      delete [] __sav;
+ #endif
+       // Make sure __s is null terminated.
+       if (__len == 0)
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/c++locale_internal.h
+@@ -31,6 +31,9 @@
+ 
+ #include <bits/c++config.h>
+ #include <clocale>
++#include <cstdlib>
++#include <cstring>
++#include <cstddef>
+ 
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning clean this up
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/301-missing-execinfo_h.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/301-missing-execinfo_h.patch
new file mode 100644
index 0000000..99bd229
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/301-missing-execinfo_h.patch
@@ -0,0 +1,13 @@
+Index: gcc-4.6.0/boehm-gc/include/gc.h
+===================================================================
+--- gcc-4.6.0.orig/boehm-gc/include/gc.h
++++ gcc-4.6.0/boehm-gc/include/gc.h
+@@ -503,7 +503,7 @@ GC_API GC_PTR GC_malloc_atomic_ignore_of
+ #if defined(__linux__) || defined(__GLIBC__)
+ # include <features.h>
+ # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
+-     && !defined(__ia64__)
++     && !defined(__ia64__) && !defined(__UCLIBC__)
+ #   ifndef GC_HAVE_BUILTIN_BACKTRACE
+ #     define GC_HAVE_BUILTIN_BACKTRACE
+ #   endif
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/302-c99-snprintf.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/302-c99-snprintf.patch
new file mode 100644
index 0000000..9f841ae
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/302-c99-snprintf.patch
@@ -0,0 +1,13 @@
+Index: gcc-4.6.0/libstdc++-v3/include/c_std/cstdio
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/include/c_std/cstdio
++++ gcc-4.6.0/libstdc++-v3/include/c_std/cstdio
+@@ -136,7 +136,7 @@ namespace std
+   using ::vsprintf;
+ } // namespace std
+ 
+-#if _GLIBCXX_USE_C99
++#if _GLIBCXX_USE_C99 || defined(__UCLIBC__)
+ 
+ #undef snprintf
+ #undef vfscanf
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/303-c99-complex-ugly-hack.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/303-c99-complex-ugly-hack.patch
new file mode 100644
index 0000000..47ae88e
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/303-c99-complex-ugly-hack.patch
@@ -0,0 +1,14 @@
+Index: gcc-4.6.0/libstdc++-v3/configure
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/configure
++++ gcc-4.6.0/libstdc++-v3/configure
+@@ -18302,6 +18302,9 @@ $as_echo_n "checking for ISO C99 support
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ #include <complex.h>
++#ifdef __UCLIBC__
++#error ugly hack to make sure configure test fails here for cross until uClibc supports the complex funcs
++#endif
+ int
+ main ()
+ {
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/304-index_macro.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/304-index_macro.patch
new file mode 100644
index 0000000..f6eedb3
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/304-index_macro.patch
@@ -0,0 +1,28 @@
+Index: gcc-4.6.0/libstdc++-v3/include/ext/rope
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/include/ext/rope
++++ gcc-4.6.0/libstdc++-v3/include/ext/rope
+@@ -54,6 +54,9 @@
+ #include <bits/gthr.h>
+ #include <tr1/functional>
+ 
++/* cope w/ index defined as macro, SuSv3 proposal */
++#undef index
++
+ # ifdef __GC
+ #   define __GC_CONST const
+ # else
+Index: gcc-4.6.0/libstdc++-v3/include/ext/ropeimpl.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/include/ext/ropeimpl.h
++++ gcc-4.6.0/libstdc++-v3/include/ext/ropeimpl.h
+@@ -49,6 +49,9 @@
+ #include <ext/memory> // For uninitialized_copy_n
+ #include <ext/numeric> // For power
+ 
++/* cope w/ index defined as macro, SuSv3 proposal */
++#undef index
++
+ namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
+ {
+ _GLIBCXX_BEGIN_NAMESPACE_VERSION
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/305-libmudflap-susv3-legacy.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/305-libmudflap-susv3-legacy.patch
new file mode 100644
index 0000000..4cabb36
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/305-libmudflap-susv3-legacy.patch
@@ -0,0 +1,49 @@
+Index: gcc-4.6.0/libmudflap/mf-hooks2.c
+===================================================================
+--- gcc-4.6.0.orig/libmudflap/mf-hooks2.c
++++ gcc-4.6.0/libmudflap/mf-hooks2.c
+@@ -421,7 +421,7 @@ WRAPPER2(void, bzero, void *s, size_t n)
+ {
+   TRACE ("%s\n", __PRETTY_FUNCTION__);
+   MF_VALIDATE_EXTENT(s, n, __MF_CHECK_WRITE, "bzero region");
+-  bzero (s, n);
++  memset (s, 0, n);
+ }
+ 
+ 
+@@ -431,7 +431,7 @@ WRAPPER2(void, bcopy, const void *src, v
+   TRACE ("%s\n", __PRETTY_FUNCTION__);
+   MF_VALIDATE_EXTENT(src, n, __MF_CHECK_READ, "bcopy src");
+   MF_VALIDATE_EXTENT(dest, n, __MF_CHECK_WRITE, "bcopy dest");
+-  bcopy (src, dest, n);
++  memmove (dest, src, n);
+ }
+ 
+ 
+@@ -441,7 +441,7 @@ WRAPPER2(int, bcmp, const void *s1, cons
+   TRACE ("%s\n", __PRETTY_FUNCTION__);
+   MF_VALIDATE_EXTENT(s1, n, __MF_CHECK_READ, "bcmp 1st arg");
+   MF_VALIDATE_EXTENT(s2, n, __MF_CHECK_READ, "bcmp 2nd arg");
+-  return bcmp (s1, s2, n);
++  return n == 0 ? 0 : memcmp (s1, s2, n);
+ }
+ 
+ 
+@@ -450,7 +450,7 @@ WRAPPER2(char *, index, const char *s, i
+   size_t n = strlen (s);
+   TRACE ("%s\n", __PRETTY_FUNCTION__);
+   MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "index region");
+-  return index (s, c);
++  return strchr (s, c);
+ }
+ 
+ 
+@@ -459,7 +459,7 @@ WRAPPER2(char *, rindex, const char *s,
+   size_t n = strlen (s);
+   TRACE ("%s\n", __PRETTY_FUNCTION__);
+   MF_VALIDATE_EXTENT(s, CLAMPADD(n, 1), __MF_CHECK_READ, "rindex region");
+-  return rindex (s, c);
++  return strrchr (s, c);
+ }
+ 
+ /* XXX:  stpcpy, memccpy */
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/306-libstdc++-namespace.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/306-libstdc++-namespace.patch
new file mode 100644
index 0000000..1fbf043
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/306-libstdc++-namespace.patch
@@ -0,0 +1,38 @@
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/messages_members.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/messages_members.h
+@@ -32,7 +32,8 @@
+ //
+ 
+ // Written by Benjamin Kosnik <bkoz@redhat.com>
+-
++namespace std
++{
+ #ifdef __UCLIBC_MJN3_ONLY__
+ #warning fix prototypes for *textdomain funcs
+ #endif
+@@ -116,3 +117,4 @@
+ 	   this->_S_create_c_locale(this->_M_c_locale_messages, __s);
+ 	 }
+      }
++}
+Index: gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/uclibc/time_members.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/uclibc/time_members.h
+@@ -33,7 +33,8 @@
+ //
+ 
+ // Written by Benjamin Kosnik <bkoz@redhat.com>
+-
++namespace std
++{
+   template<typename _CharT>
+     __timepunct<_CharT>::__timepunct(size_t __refs)
+     : facet(__refs), _M_data(NULL), _M_c_locale_timepunct(NULL),
+@@ -75,3 +76,4 @@
+       delete _M_data;
+       _S_destroy_c_locale(_M_c_locale_timepunct);
+     }
++}
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/307-locale_facets.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/307-locale_facets.patch
new file mode 100644
index 0000000..774fcfa
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/307-locale_facets.patch
@@ -0,0 +1,19 @@
+This patch fixes a bug into ostream::operator<<(double) due to the wrong size
+passed into the __convert_from_v method. The wrong size is then passed to
+std::snprintf function, that, on uClibc, doens't handle sized 0 buffer.
+
+Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
+
+Index: gcc-4.3.1/libstdc++-v3/include/bits/locale_facets.tcc
+===================================================================
+--- gcc-4.3.1.orig/libstdc++-v3/include/bits/locale_facets.tcc	2007-11-26 17:59:41.000000000 -0800
++++ gcc-4.3.1/libstdc++-v3/include/bits/locale_facets.tcc	2008-08-16 02:14:48.000000000 -0700
+@@ -1004,7 +1004,7 @@
+ 	const int __cs_size = __fixed ? __max_exp + __prec + 4
+ 	                              : __max_digits * 2 + __prec;
+ 	char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
+-	__len = std::__convert_from_v(_S_get_c_locale(), __cs, 0, __fbuf, 
++	__len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size, __fbuf,
+ 				      __prec, __v);
+ #endif
+ 
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/602-sdk-libstdc++-includes.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/602-sdk-libstdc++-includes.patch
new file mode 100644
index 0000000..23fce75
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/602-sdk-libstdc++-includes.patch
@@ -0,0 +1,20 @@
+--- gcc-4.1.0/libstdc++-v3/fragment.am	2005-03-21 11:40:14.000000000 -0600
++++ gcc-4.1.0-patched/libstdc++-v3/fragment.am	2005-04-25 20:14:39.856251785 -0500
+@@ -21,5 +21,5 @@
+ 	$(WARN_FLAGS) $(WERROR) -fdiagnostics-show-location=once
+ 
+ # -I/-D flags to pass when compiling.
+-AM_CPPFLAGS = $(GLIBCXX_INCLUDES)
++AM_CPPFLAGS = $(GLIBCXX_INCLUDES) -I$(toplevel_srcdir)/include
+ 
+--- gcc-4.1.0/libstdc++-v3/libmath/Makefile.am	2005-03-21 11:40:18.000000000 -0600
++++ gcc-4.1.0-patched/libstdc++-v3/libmath/Makefile.am	2005-04-25 20:14:39.682280735 -0500
+@@ -35,7 +35,7 @@
+ 
+ libmath_la_SOURCES = stubs.c
+ 
+-AM_CPPFLAGS = $(CANADIAN_INCLUDES)
++AM_CPPFLAGS = $(CANADIAN_INCLUDES) -I$(toplevel_srcdir)/include
+ 
+ # Only compiling "C" sources in this directory.
+ LIBTOOL = @LIBTOOL@ --tag CC
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/64bithack.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/64bithack.patch
new file mode 100644
index 0000000..11cbbed
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/64bithack.patch
@@ -0,0 +1,33 @@
+By default gcc places 64 bit libs in a lib64 directory. This makes it use 
+"lib" instead.
+
+RP 25/7/10
+
+Index: gcc-4.6.0/gcc/config/i386/t-linux64
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/i386/t-linux64
++++ gcc-4.6.0/gcc/config/i386/t-linux64
+@@ -24,8 +24,8 @@
+ # MULTILIB_OSDIRNAMES according to what is found on the target.
+ 
+ MULTILIB_OPTIONS = m64/m32
+-MULTILIB_DIRNAMES = 64 32 
+-MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
++MULTILIB_DIRNAMES = . 32
++MULTILIB_OSDIRNAMES = . $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
+ 
+ LIBGCC = stmp-multilib
+ INSTALL_LIBGCC = install-multilib
+Index: gcc-4.6.0/gcc/config/i386/linux64.h
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/i386/linux64.h
++++ gcc-4.6.0/gcc/config/i386/linux64.h
+@@ -63,7 +63,7 @@ see the files COPYING3 and COPYING.RUNTI
+    done.  */
+ 
+ #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2"
+ 
+ #if TARGET_64BIT_DEFAULT
+ #define SPEC_32 "m32"
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/740-sh-pr24836.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/740-sh-pr24836.patch
new file mode 100644
index 0000000..89a3934
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/740-sh-pr24836.patch
@@ -0,0 +1,29 @@
+http://sourceforge.net/mailarchive/forum.php?thread_id=8959304&forum_id=5348
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24836
+
+Index: gcc-4.6.0/gcc/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure.ac
++++ gcc-4.6.0/gcc/configure.ac
+@@ -2926,7 +2926,7 @@ foo:	.long	25
+ 	tls_first_minor=14
+ 	tls_as_opt="-m64 -Aesame --fatal-warnings"
+ 	;;
+-  sh-*-* | sh[34]-*-*)
++  sh-*-* | sh[34]*-*-*)
+     conftest_s='
+ 	.section ".tdata","awT",@progbits
+ foo:	.long	25
+Index: gcc-4.6.0/gcc/configure
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure
++++ gcc-4.6.0/gcc/configure
+@@ -22756,7 +22756,7 @@ foo:	.long	25
+ 	tls_first_minor=14
+ 	tls_as_opt="-m64 -Aesame --fatal-warnings"
+ 	;;
+-  sh-*-* | sh[34]-*-*)
++  sh-*-* | sh[34]*-*-*)
+     conftest_s='
+ 	.section ".tdata","awT",@progbits
+ foo:	.long	25
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/800-arm-bigendian.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/800-arm-bigendian.patch
new file mode 100644
index 0000000..50088cf
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/800-arm-bigendian.patch
@@ -0,0 +1,34 @@
+By Lennert Buytenhek <buytenh@wantstofly.org>
+Adds support for arm*b-linux* big-endian ARM targets
+
+See http://gcc.gnu.org/PR16350
+
+Index: gcc-4.6.0/gcc/config/arm/linux-elf.h
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/linux-elf.h
++++ gcc-4.6.0/gcc/config/arm/linux-elf.h
+@@ -51,7 +51,7 @@
+ 
+ #undef  MULTILIB_DEFAULTS
+ #define MULTILIB_DEFAULTS \
+-	{ "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" }
++	{ "marm", TARGET_ENDIAN_OPTION, "mhard-float", "mno-thumb-interwork" }
+ 
+ /* Now we define the strings used to build the spec file.  */
+ #undef  LIB_SPEC
+Index: gcc-4.6.0/gcc/config.gcc
+===================================================================
+--- gcc-4.6.0.orig/gcc/config.gcc
++++ gcc-4.6.0/gcc/config.gcc
+@@ -822,6 +822,11 @@ arm*-*-linux*)			# ARM GNU/Linux with EL
+ 	esac
+ 	tmake_file="${tmake_file} t-linux arm/t-arm"
+ 	case ${target} in
++	arm*b-*)
++		tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1"
++		;;
++	esac
++	case ${target} in
+ 	arm*-*-linux-*eabi)
+ 	    tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h"
+ 	    tm_file="$tm_file ../../libgcc/config/arm/bpabi-lib.h"
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/904-flatten-switch-stmt-00.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/904-flatten-switch-stmt-00.patch
new file mode 100644
index 0000000..2623313
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/904-flatten-switch-stmt-00.patch
@@ -0,0 +1,74 @@
+Hi,
+
+The attached patch makes sure that we create smaller object code for
+simple switch statements. We just make sure to flatten the switch
+statement into an if-else chain, basically.
+
+This fixes a size-regression as compared to gcc-3.4, as can be seen
+below.
+
+2007-04-15  Bernhard Fischer  <..>
+
+	* stmt.c (expand_case): Do not create a complex binary tree when
+	optimizing for size but rather use the simple ordered list.
+	(emit_case_nodes): do not emit jumps to the default_label when
+	optimizing for size.
+
+Not regtested so far.
+Comments?
+
+Attached is the test switch.c mentioned below.
+
+$ for i in 2.95 3.3 3.4 4.0 4.1 4.2.orig-HEAD 4.3.orig-HEAD 4.3-HEAD;do
+gcc-$i  -DCHAIN -Os -o switch-CHAIN-$i.o -c switch.c ;done
+$ for i in 2.95 3.3 3.4 4.0 4.1 4.2.orig-HEAD 4.3.orig-HEAD 4.3-HEAD;do
+gcc-$i  -UCHAIN -Os -o switch-$i.o -c switch.c ;done
+
+$ size switch-*.o
+   text	   data	    bss	    dec	    hex	filename
+    169	      0	      0	    169	     a9	switch-2.95.o
+    115	      0	      0	    115	     73	switch-3.3.o
+    103	      0	      0	    103	     67	switch-3.4.o
+    124	      0	      0	    124	     7c	switch-4.0.o
+    124	      0	      0	    124	     7c	switch-4.1.o
+    124	      0	      0	    124	     7c	switch-4.2.orig-HEAD.o
+     95	      0	      0	     95	     5f	switch-4.3-HEAD.o
+    124	      0	      0	    124	     7c	switch-4.3.orig-HEAD.o
+    166	      0	      0	    166	     a6	switch-CHAIN-2.95.o
+    111	      0	      0	    111	     6f	switch-CHAIN-3.3.o
+     95	      0	      0	     95	     5f	switch-CHAIN-3.4.o
+     95	      0	      0	     95	     5f	switch-CHAIN-4.0.o
+     95	      0	      0	     95	     5f	switch-CHAIN-4.1.o
+     95	      0	      0	     95	     5f	switch-CHAIN-4.2.orig-HEAD.o
+     95	      0	      0	     95	     5f	switch-CHAIN-4.3-HEAD.o
+     95	      0	      0	     95	     5f	switch-CHAIN-4.3.orig-HEAD.o
+
+
+Content-Type: text/x-diff; charset=us-ascii
+Content-Disposition: attachment; filename="gcc-4.3.gcc-flatten-switch-stmt.00.diff"
+
+Index: gcc-4.6.0/gcc/stmt.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/stmt.c
++++ gcc-4.6.0/gcc/stmt.c
+@@ -2478,7 +2478,11 @@ expand_case (gimple stmt)
+ 	     default code is emitted.  */
+ 
+ 	  use_cost_table = estimate_case_costs (case_list);
+-	  balance_case_nodes (&case_list, NULL);
++	  /* When optimizing for size, we want a straight list to avoid
++	     jumps as much as possible. This basically creates an if-else
++	     chain.  */
++	  if (!optimize_size)
++	    balance_case_nodes (&case_list, NULL);
+ 	  emit_case_nodes (index, case_list, default_label, index_type);
+ 	  if (default_label)
+ 	    emit_jump (default_label);
+@@ -3046,6 +3050,7 @@ emit_case_nodes (rtx index, case_node_pt
+ 	    {
+ 	      if (!node_has_low_bound (node, index_type))
+ 		{
++		  if (!optimize_size) /* don't jl to the .default_label. */
+ 		  emit_cmp_and_jump_insns (index,
+ 					   convert_modes
+ 					   (mode, imode,
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/COLLECT_GCC_OPTIONS.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/COLLECT_GCC_OPTIONS.patch
new file mode 100644
index 0000000..8b53b83
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/COLLECT_GCC_OPTIONS.patch
@@ -0,0 +1,23 @@
+#This patck added --sysroot into COLLECT_GCC_OPTIONS which is used to
+#invoke collect2.
+
+Index: gcc-4.6.0/gcc/gcc.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/gcc.c
++++ gcc-4.6.0/gcc/gcc.c
+@@ -3948,6 +3948,15 @@ set_collect_gcc_options (void)
+ 		sizeof ("COLLECT_GCC_OPTIONS=") - 1);
+ 
+   first_time = TRUE;
++#ifdef HAVE_LD_SYSROOT
++  if (target_system_root_changed && target_system_root)
++    {
++      obstack_grow (&collect_obstack, "'--sysroot=", sizeof("'--sysroot=")-1);
++      obstack_grow (&collect_obstack, target_system_root,strlen(target_system_root));
++      obstack_grow (&collect_obstack, "'", 1);
++      first_time = FALSE;
++    }
++#endif
+   for (i = 0; (int) i < n_switches; i++)
+     {
+       const char *const *args;
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch
new file mode 100644
index 0000000..ffb2267
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch
@@ -0,0 +1,33 @@
+# by default c++ include directories are not relative to "--sysroot"
+# which brings one trouble when using the toolchain in an environment
+# where the build directory generating that toolchain doesn't exist,
+# e.g. in sstate, machine specific sysroot and relocatable SDK
+# toolchain. This patch now enables c++ include paths under sysroot.
+# This way it's enough as long as "--sysroot" is correctly enabled
+# in the new environment.
+#
+# Signed-off-by Kevin Tian <kevin.tian@intel.com>, 2010-12-30
+
+Index: gcc-4.6.0/gcc/cppdefault.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/cppdefault.c
++++ gcc-4.6.0/gcc/cppdefault.c
+@@ -48,15 +48,15 @@ const struct default_include cpp_include
+ = {
+ #ifdef GPLUSPLUS_INCLUDE_DIR
+     /* Pick up GNU C++ generic include files.  */
+-    { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, 0, 0 },
++    { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, 1, 0 },
+ #endif
+ #ifdef GPLUSPLUS_TOOL_INCLUDE_DIR
+     /* Pick up GNU C++ target-dependent include files.  */
+-    { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, 0, 1 },
++    { GPLUSPLUS_TOOL_INCLUDE_DIR, "G++", 1, 1, 1, 1 },
+ #endif
+ #ifdef GPLUSPLUS_BACKWARD_INCLUDE_DIR
+     /* Pick up GNU C++ backward and deprecated include files.  */
+-    { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, 0, 0 },
++    { GPLUSPLUS_BACKWARD_INCLUDE_DIR, "G++", 1, 1, 1, 0 },
+ #endif
+ #ifdef GCC_INCLUDE_DIR
+     /* This is the dir for gcc's private headers.  */
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/arm-bswapsi2.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-bswapsi2.patch
new file mode 100644
index 0000000..7ac61a6
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-bswapsi2.patch
@@ -0,0 +1,13 @@
+Index: gcc-4.5/gcc/config/arm/arm.md
+===================================================================
+--- gcc-4.5.orig/gcc/config/arm/arm.md	2010-06-17 09:13:07.000000000 -0700
++++ gcc-4.5/gcc/config/arm/arm.md	2010-06-22 08:08:45.397212002 -0700
+@@ -11267,7 +11267,7 @@
+ (define_expand "bswapsi2"
+   [(set (match_operand:SI 0 "s_register_operand" "=r")
+   	(bswap:SI (match_operand:SI 1 "s_register_operand" "r")))]
+-"TARGET_EITHER"
++"TARGET_EITHER && (arm_arch6 && !optimize_size)"
+ "
+   if (!arm_arch6)
+     {
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/arm-nolibfloat.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-nolibfloat.patch
new file mode 100644
index 0000000..2175519
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-nolibfloat.patch
@@ -0,0 +1,24 @@
+# Dimitry Andric <dimitry@andric.com>, 2004-05-01
+#
+# * Removed the extra -lfloat option from LIBGCC_SPEC, since it isn't needed
+#   anymore.  (The required functions are now in libgcc.)
+# 
+# Fixes errors like
+# arm-softfloat-linux-gnu/3.4.0/../../../../arm-softfloat-linux-gnu/bin/ld: cannot find -lfloat
+# collect2: ld returned 1 exit status
+# make[2]: *** [arm-softfloat-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/iconvdata/ISO8859-1.so] Error 1
+# when building glibc-2.3.3 with gcc-3.4.0 for arm-softfloat
+
+Index: gcc-4.6.0/gcc/config/arm/linux-elf.h
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/linux-elf.h
++++ gcc-4.6.0/gcc/config/arm/linux-elf.h
+@@ -60,7 +60,7 @@
+    %{shared:-lc} \
+    %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
+ 
+-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
++#define LIBGCC_SPEC "-lgcc"
+ 
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
+ 
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/arm-softfloat.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-softfloat.patch
new file mode 100644
index 0000000..908e2d8
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-softfloat.patch
@@ -0,0 +1,16 @@
+Index: gcc-4.6.0/gcc/config/arm/t-linux
+===================================================================
+--- gcc-4.6.0.orig/gcc/config/arm/t-linux
++++ gcc-4.6.0/gcc/config/arm/t-linux
+@@ -23,7 +23,10 @@ TARGET_LIBGCC2_CFLAGS = -fomit-frame-poi
+ 
+ LIB1ASMSRC = arm/lib1funcs.asm
+ LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \
+-	_arm_addsubdf3 _arm_addsubsf3
++    _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
++    _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
++    _fixsfsi _fixunssfsi _floatdidf _floatdisf _floatundisf _floatundidf
++#	_arm_addsubdf3 _arm_addsubsf3
+ 
+ # MULTILIB_OPTIONS = mhard-float/msoft-float
+ # MULTILIB_DIRNAMES = hard-float soft-float
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/arm-unbreak-eabi-armv4t.dpatch b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-unbreak-eabi-armv4t.dpatch
new file mode 100644
index 0000000..7bb8887
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/arm-unbreak-eabi-armv4t.dpatch
@@ -0,0 +1,36 @@
+#! /bin/sh -e
+
+# DP: Fix armv4t build on ARM
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- src/gcc/config/arm/linux-eabi.h.orig	2007-11-24 12:37:38.000000000 +0000
++++ src/gcc/config/arm/linux-eabi.h	2007-11-24 12:39:41.000000000 +0000
+@@ -44,7 +44,7 @@
+    The ARM10TDMI core is the default for armv5t, so set
+    SUBTARGET_CPU_DEFAULT to achieve this.  */
+ #undef  SUBTARGET_CPU_DEFAULT
+-#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi
++#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi
+ 
+ /* TARGET_BIG_ENDIAN_DEFAULT is set in
+    config.gcc for big endian configurations.  */
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/cache-amnesia.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/cache-amnesia.patch
new file mode 100644
index 0000000..3a98b02
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/cache-amnesia.patch
@@ -0,0 +1,31 @@
+---
+ gcc/configure    |    2 +-
+ gcc/configure.ac |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+Index: gcc-4.6.0/gcc/configure
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure
++++ gcc-4.6.0/gcc/configure
+@@ -10898,7 +10898,7 @@ else
+ 	saved_CFLAGS="${CFLAGS}"
+ 	CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
+ 	LDFLAGS="${LDFLAGS_FOR_BUILD}" \
+-	${realsrcdir}/configure \
++	CONFIG_SITE= ${realsrcdir}/configure --cache-file=./other.cache \
+ 		--enable-languages=${enable_languages-all} \
+ 		--target=$target_alias --host=$build_alias --build=$build_alias
+ 	CFLAGS="${saved_CFLAGS}"
+Index: gcc-4.6.0/gcc/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure.ac
++++ gcc-4.6.0/gcc/configure.ac
+@@ -1435,7 +1435,7 @@ else
+ 	saved_CFLAGS="${CFLAGS}"
+ 	CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
+ 	LDFLAGS="${LDFLAGS_FOR_BUILD}" \
+-	${realsrcdir}/configure \
++	CONFIG_SITE= ${realsrcdir}/configure --cache-file=./other.cache \
+ 		--enable-languages=${enable_languages-all} \
+ 		--target=$target_alias --host=$build_alias --build=$build_alias
+ 	CFLAGS="${saved_CFLAGS}"
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/disable_relax_pic_calls_flag.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/disable_relax_pic_calls_flag.patch
new file mode 100644
index 0000000..4f73cc8
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/disable_relax_pic_calls_flag.patch
@@ -0,0 +1,46 @@
+GCC: disable MASK_RELAX_PIC_CALLS bit
+
+The new feature added after 4.3.3
+"http://www.pubbs.net/200909/gcc/94048-patch-add-support-for-rmipsjalr.html"
+will cause cc1plus eat up all the system memory when build webkit-gtk.
+The function mips_get_pic_call_symbol keeps on recursively calling itself.
+Disable this feature to walk aside the bug.
+
+Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
+
+Index: gcc-4.6.0/gcc/configure
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure
++++ gcc-4.6.0/gcc/configure
+@@ -24887,13 +24887,6 @@ $as_echo_n "checking assembler and linke
+         rm -f conftest.*
+       fi
+     fi
+-    if test $gcc_cv_as_ld_jalr_reloc = yes; then
+-      if test x$target_cpu_default = x; then
+-        target_cpu_default=MASK_RELAX_PIC_CALLS
+-      else
+-        target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+-      fi
+-    fi
+     { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ld_jalr_reloc" >&5
+ $as_echo "$gcc_cv_as_ld_jalr_reloc" >&6; }
+ 
+Index: gcc-4.6.0/gcc/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure.ac
++++ gcc-4.6.0/gcc/configure.ac
+@@ -3764,13 +3764,6 @@ x:
+         rm -f conftest.*
+       fi
+     fi
+-    if test $gcc_cv_as_ld_jalr_reloc = yes; then
+-      if test x$target_cpu_default = x; then
+-        target_cpu_default=MASK_RELAX_PIC_CALLS
+-      else
+-        target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+-      fi
+-    fi
+     AC_MSG_RESULT($gcc_cv_as_ld_jalr_reloc)
+ 
+     AC_CACHE_CHECK([linker for .eh_frame personality relaxation],
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/fortran-cross-compile-hack.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/fortran-cross-compile-hack.patch
new file mode 100644
index 0000000..348c770
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/fortran-cross-compile-hack.patch
@@ -0,0 +1,30 @@
+* Fortran would have searched for arm-angstrom-gnueabi-gfortran but would have used
+  used gfortan. For gcc_4.2.2.bb we want to use the gfortran compiler from our cross
+  directory.
+
+Index: gcc-4.5+svnr155514/libgfortran/configure
+===================================================================
+--- gcc-4.5+svnr155514.orig/libgfortran/configure	2009-12-29 22:02:01.000000000 -0800
++++ gcc-4.5+svnr155514/libgfortran/configure	2009-12-30 08:12:40.889091657 -0800
+@@ -11655,7 +11655,7 @@ CC="$lt_save_CC"
+ 
+ # We need gfortran to compile parts of the library
+ #AC_PROG_FC(gfortran)
+-FC="$GFORTRAN"
++#FC="$GFORTRAN"
+ ac_ext=${ac_fc_srcext-f}
+ ac_compile='$FC -c $FCFLAGS $ac_fcflags_srcext conftest.$ac_ext >&5'
+ ac_link='$FC -o conftest$ac_exeext $FCFLAGS $LDFLAGS $ac_fcflags_srcext conftest.$ac_ext $LIBS >&5'
+Index: gcc-4.5+svnr155514/libgfortran/configure.ac
+===================================================================
+--- gcc-4.5+svnr155514.orig/libgfortran/configure.ac	2009-12-29 22:02:01.000000000 -0800
++++ gcc-4.5+svnr155514/libgfortran/configure.ac	2009-12-30 08:12:13.453094218 -0800
+@@ -187,7 +187,7 @@ AC_SUBST(enable_static)
+ 
+ # We need gfortran to compile parts of the library
+ #AC_PROG_FC(gfortran)
+-FC="$GFORTRAN"
++#FC="$GFORTRAN"
+ AC_PROG_FC(gfortran)
+ 
+ # extra LD Flags which are required for targets
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.0.2-e300c2c3.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.0.2-e300c2c3.patch
new file mode 100644
index 0000000..d1df8b2
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.0.2-e300c2c3.patch
@@ -0,0 +1,319 @@
+Adds support for Freescale Power architecture e300c2 and e300c3 cores.
+http://www.bitshrine.org/gpp/tc-fsl-x86lnx-e300c3-nptl-4.0.2-2.src.rpm
+
+Leon Woestenberg <leonw@mailcan.com>
+
+---
+ gcc/config.gcc                |    2 
+ gcc/config/rs6000/e300c2c3.md |  189 ++++++++++++++++++++++++++++++++++++++++++
+ gcc/config/rs6000/rs6000.c    |   24 +++++
+ gcc/config/rs6000/rs6000.h    |    4 
+ gcc/config/rs6000/rs6000.md   |    3 
+ 5 files changed, 220 insertions(+), 2 deletions(-)
+
+Index: gcc-4.3.1/gcc/config/rs6000/e300c2c3.md
+===================================================================
+--- /dev/null	1970-01-01 00:00:00.000000000 +0000
++++ gcc-4.3.1/gcc/config/rs6000/e300c2c3.md	2008-08-23 16:51:33.000000000 -0700
+@@ -0,0 +1,189 @@
++;; Pipeline description for Motorola PowerPC e300c3 core.
++;;   Copyright (C) 2003 Free Software Foundation, Inc.
++;;
++;; This file is part of GCC.
++
++;; GCC 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, or (at your
++;; option) any later version.
++
++;; GCC 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 GCC; see the file COPYING.  If not, write to the
++;; Free Software Foundation, 59 Temple Place - Suite 330, Boston,
++;; MA 02111-1307, USA.
++
++(define_automaton "ppce300c3_most,ppce300c3_long,ppce300c3_retire")
++(define_cpu_unit "ppce300c3_decode_0,ppce300c3_decode_1" "ppce300c3_most")
++
++;; We don't simulate general issue queue (GIC).  If we have SU insn
++;; and then SU1 insn, they can not be issued on the same cycle
++;; (although SU1 insn and then SU insn can be issued) because the SU
++;; insn will go to SU1 from GIC0 entry.  Fortunately, the first cycle
++;; multipass insn scheduling will find the situation and issue the SU1
++;; insn and then the SU insn.
++(define_cpu_unit "ppce300c3_issue_0,ppce300c3_issue_1"   "ppce300c3_most")
++
++;; We could describe completion buffers slots in combination with the
++;; retirement units and the order of completion but the result
++;; automaton would behave in the same way because we can not describe
++;; real latency time with taking in order completion into account.
++;; Actually we could define the real latency time by querying reserved
++;; automaton units but the current scheduler uses latency time before
++;; issuing insns and making any reservations.
++;;
++;; So our description is aimed to achieve a insn schedule in which the
++;; insns would not wait in the completion buffer.
++(define_cpu_unit "ppce300c3_retire_0,ppce300c3_retire_1" "ppce300c3_retire")
++
++;; Branch unit:
++(define_cpu_unit "ppce300c3_bu" "ppce300c3_most")
++
++;; IU:
++(define_cpu_unit "ppce300c3_iu0_stage0,ppce300c3_iu1_stage0" "ppce300c3_most")
++
++;; IU: This used to describe non-pipelined division.
++(define_cpu_unit "ppce300c3_mu_div" "ppce300c3_long")
++
++;; SRU:
++(define_cpu_unit "ppce300c3_sru_stage0" "ppce300c3_most")
++
++;; Here we simplified LSU unit description not describing the stages.
++(define_cpu_unit "ppce300c3_lsu" "ppce300c3_most")
++
++;; FPU:
++(define_cpu_unit "ppce300c3_fpu" "ppce300c3_most")
++
++;; The following units are used to make automata deterministic
++(define_cpu_unit "present_ppce300c3_decode_0" "ppce300c3_most")
++(define_cpu_unit "present_ppce300c3_issue_0" "ppce300c3_most")
++(define_cpu_unit "present_ppce300c3_retire_0" "ppce300c3_retire")
++(define_cpu_unit "present_ppce300c3_iu0_stage0" "ppce300c3_most")
++
++;; The following sets to make automata deterministic when option ndfa is used.
++(presence_set "present_ppce300c3_decode_0" "ppce300c3_decode_0")
++(presence_set "present_ppce300c3_issue_0" "ppce300c3_issue_0")
++(presence_set "present_ppce300c3_retire_0" "ppce300c3_retire_0")
++(presence_set "present_ppce300c3_iu0_stage0" "ppce300c3_iu0_stage0")
++
++;; Some useful abbreviations.
++(define_reservation "ppce300c3_decode"
++    "ppce300c3_decode_0|ppce300c3_decode_1+present_ppce300c3_decode_0")
++(define_reservation "ppce300c3_issue"
++    "ppce300c3_issue_0|ppce300c3_issue_1+present_ppce300c3_issue_0")
++(define_reservation "ppce300c3_retire"
++   "ppce300c3_retire_0|ppce300c3_retire_1+present_ppce300c3_retire_0")
++(define_reservation "ppce300c3_iu_stage0"
++   "ppce300c3_iu0_stage0|ppce300c3_iu1_stage0+present_ppce300c3_iu0_stage0")
++
++;; Compares can be executed either one of the IU or SRU
++(define_insn_reservation "ppce300c3_cmp" 1
++  (and (eq_attr "type" "cmp,compare,delayed_compare,fast_compare")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+(ppce300c3_iu_stage0|ppce300c3_sru_stage0) \
++        +ppce300c3_retire")
++
++;; Other one cycle IU insns
++(define_insn_reservation "ppce300c3_iu" 1
++  (and (eq_attr "type" "integer,insert_word")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_iu_stage0+ppce300c3_retire")
++
++;; Branch.  Actually this latency time is not used by the scheduler.
++(define_insn_reservation "ppce300c3_branch" 1
++  (and (eq_attr "type" "jmpreg,branch")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_bu,ppce300c3_retire")
++
++;; Multiply is non-pipelined but can be executed in any IU
++(define_insn_reservation "ppce300c3_multiply" 2
++  (and (eq_attr "type" "imul,imul2,imul3,imul_compare")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_iu_stage0, \
++   ppce300c3_iu_stage0+ppce300c3_retire")
++
++;; Divide.  We use the average latency time here.  We omit reserving a
++;; retire unit because of the result automata will be huge.
++(define_insn_reservation "ppce300c3_divide" 20
++  (and (eq_attr "type" "idiv")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_iu_stage0+ppce300c3_mu_div,\
++   ppce300c3_mu_div*19")
++
++;; CR logical
++(define_insn_reservation "ppce300c3_cr_logical" 1
++  (and (eq_attr "type" "cr_logical,delayed_cr")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_sru_stage0+ppce300c3_retire")
++
++;; Mfcr
++(define_insn_reservation "ppce300c3_mfcr" 1
++  (and (eq_attr "type" "mfcr")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_sru_stage0+ppce300c3_retire")
++
++;; Mtcrf
++(define_insn_reservation "ppce300c3_mtcrf" 1
++  (and (eq_attr "type" "mtcr")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_sru_stage0+ppce300c3_retire")
++
++;; Mtjmpr
++(define_insn_reservation "ppce300c3_mtjmpr" 1
++  (and (eq_attr "type" "mtjmpr,mfjmpr")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_sru_stage0+ppce300c3_retire")
++
++;; Float point instructions
++(define_insn_reservation "ppce300c3_fpcompare" 3
++  (and (eq_attr "type" "fpcompare")
++       (eq_attr "cpu" "ppce300c3"))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_fpu,nothing,ppce300c3_retire")
++
++(define_insn_reservation "ppce300c3_fp" 3
++  (and (eq_attr "type" "fp")
++       (eq_attr "cpu" "ppce300c3"))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_fpu,nothing,ppce300c3_retire")
++
++(define_insn_reservation "ppce300c3_dmul" 4
++  (and (eq_attr "type" "dmul")
++       (eq_attr "cpu" "ppce300c3"))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_fpu,ppce300c3_fpu,nothing,ppce300c3_retire")
++
++; Divides are not pipelined
++(define_insn_reservation "ppce300c3_sdiv" 18
++  (and (eq_attr "type" "sdiv")
++       (eq_attr "cpu" "ppce300c3"))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_fpu,ppce300c3_fpu*17")
++
++(define_insn_reservation "ppce300c3_ddiv" 33
++  (and (eq_attr "type" "ddiv")
++       (eq_attr "cpu" "ppce300c3"))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_fpu,ppce300c3_fpu*32")
++
++;; Loads
++(define_insn_reservation "ppce300c3_load" 2
++  (and (eq_attr "type" "load,load_ext,load_ext_u,load_ext_ux,load_ux,load_u")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_lsu,ppce300c3_retire")
++
++(define_insn_reservation "ppce300c3_fpload" 2
++  (and (eq_attr "type" "fpload,fpload_ux,fpload_u")
++       (eq_attr "cpu" "ppce300c3"))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_lsu,ppce300c3_retire")
++
++;; Stores.
++(define_insn_reservation "ppce300c3_store" 2
++  (and (eq_attr "type" "store,store_ux,store_u")
++       (ior (eq_attr "cpu" "ppce300c2") (eq_attr "cpu" "ppce300c3")))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_lsu,ppce300c3_retire")
++
++(define_insn_reservation "ppce300c3_fpstore" 2
++  (and (eq_attr "type" "fpstore,fpstore_ux,fpstore_u")
++       (eq_attr "cpu" "ppce300c3"))
++  "ppce300c3_decode,ppce300c3_issue+ppce300c3_lsu,ppce300c3_retire")
+Index: gcc-4.3.1/gcc/config/rs6000/rs6000.c
+===================================================================
+--- gcc-4.3.1.orig/gcc/config/rs6000/rs6000.c	2008-08-23 16:49:39.000000000 -0700
++++ gcc-4.3.1/gcc/config/rs6000/rs6000.c	2008-08-23 16:54:25.000000000 -0700
+@@ -669,6 +669,21 @@ struct processor_costs ppc8540_cost = {
+   1,			/* prefetch streams /*/
+ };
+ 
++/* Instruction costs on E300C2 and E300C3 cores.  */
++static const
++struct processor_costs ppce300c2c3_cost = {
++  COSTS_N_INSNS (4),    /* mulsi */
++  COSTS_N_INSNS (4),    /* mulsi_const */
++  COSTS_N_INSNS (4),    /* mulsi_const9 */
++  COSTS_N_INSNS (4),    /* muldi */
++  COSTS_N_INSNS (19),   /* divsi */
++  COSTS_N_INSNS (19),   /* divdi */
++  COSTS_N_INSNS (3),    /* fp */
++  COSTS_N_INSNS (4),    /* dmul */
++  COSTS_N_INSNS (18),   /* sdiv */
++  COSTS_N_INSNS (33),   /* ddiv */
++};
++
+ /* Instruction costs on POWER4 and POWER5 processors.  */
+ static const
+ struct processor_costs power4_cost = {
+@@ -1420,6 +1435,8 @@ rs6000_override_options (const char *def
+ 	 {"8540", PROCESSOR_PPC8540, POWERPC_BASE_MASK | MASK_STRICT_ALIGN},
+ 	 /* 8548 has a dummy entry for now.  */
+ 	 {"8548", PROCESSOR_PPC8540, POWERPC_BASE_MASK | MASK_STRICT_ALIGN},
++	 {"e300c2", PROCESSOR_PPCE300C2, POWERPC_BASE_MASK | MASK_SOFT_FLOAT},
++	 {"e300c3", PROCESSOR_PPCE300C3, POWERPC_BASE_MASK},
+ 	 {"860", PROCESSOR_MPCCORE, POWERPC_BASE_MASK | MASK_SOFT_FLOAT},
+ 	 {"970", PROCESSOR_POWER4,
+ 	  POWERPC_7400_MASK | MASK_PPC_GPOPT | MASK_MFCRF | MASK_POWERPC64},
+@@ -1845,6 +1862,11 @@ rs6000_override_options (const char *def
+ 	rs6000_cost = &ppc8540_cost;
+ 	break;
+ 
++      case PROCESSOR_PPCE300C2:
++      case PROCESSOR_PPCE300C3:
++	rs6000_cost = &ppce300c2c3_cost;
++	break;
++
+       case PROCESSOR_POWER4:
+       case PROCESSOR_POWER5:
+ 	rs6000_cost = &power4_cost;
+@@ -18606,6 +18628,8 @@ rs6000_issue_rate (void)
+   case CPU_PPC7400:
+   case CPU_PPC8540:
+   case CPU_CELL:
++  case CPU_PPCE300C2:
++  case CPU_PPCE300C3:
+     return 2;
+   case CPU_RIOS2:
+   case CPU_PPC604:
+Index: gcc-4.3.1/gcc/config/rs6000/rs6000.h
+===================================================================
+--- gcc-4.3.1.orig/gcc/config/rs6000/rs6000.h	2008-01-26 09:18:35.000000000 -0800
++++ gcc-4.3.1/gcc/config/rs6000/rs6000.h	2008-08-23 16:55:30.000000000 -0700
+@@ -117,6 +117,8 @@
+ %{mcpu=G5: -mpower4 -maltivec} \
+ %{mcpu=8540: -me500} \
+ %{mcpu=8548: -me500} \
++%{mcpu=e300c2: -mppc} \
++%{mcpu=e300c3: -mppc -mpmr} \
+ %{maltivec: -maltivec} \
+ -many"
+ 
+@@ -262,6 +264,8 @@ enum processor_type
+    PROCESSOR_PPC7400,
+    PROCESSOR_PPC7450,
+    PROCESSOR_PPC8540,
++   PROCESSOR_PPCE300C2,
++   PROCESSOR_PPCE300C3,
+    PROCESSOR_POWER4,
+    PROCESSOR_POWER5,
+    PROCESSOR_POWER6,
+Index: gcc-4.3.1/gcc/config/rs6000/rs6000.md
+===================================================================
+--- gcc-4.3.1.orig/gcc/config/rs6000/rs6000.md	2008-02-13 16:14:45.000000000 -0800
++++ gcc-4.3.1/gcc/config/rs6000/rs6000.md	2008-08-23 16:57:29.000000000 -0700
+@@ -133,7 +133,7 @@
+ ;; Processor type -- this attribute must exactly match the processor_type
+ ;; enumeration in rs6000.h.
+ 
+-(define_attr "cpu" "rios1,rios2,rs64a,mpccore,ppc403,ppc405,ppc440,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630,ppc750,ppc7400,ppc7450,ppc8540,power4,power5,power6,cell"
++(define_attr "cpu" "rios1,rios2,rs64a,mpccore,ppc403,ppc405,ppc440,ppc601,ppc603,ppc604,ppc604e,ppc620,ppc630,ppc750,ppc7400,ppc7450,ppc8540,power4,power5,power6,cell,ppce300c2,ppce300c3"
+   (const (symbol_ref "rs6000_cpu_attr")))
+ 
+ 
+@@ -166,6 +166,7 @@
+ (include "7xx.md")
+ (include "7450.md")
+ (include "8540.md")
++(include "e300c2c3.md")
+ (include "power4.md")
+ (include "power5.md")
+ (include "power6.md")
+Index: gcc-4.3.1/gcc/config.gcc
+===================================================================
+--- gcc-4.3.1.orig/gcc/config.gcc	2008-08-23 16:49:43.000000000 -0700
++++ gcc-4.3.1/gcc/config.gcc	2008-08-23 17:03:55.000000000 -0700
+@@ -3144,7 +3144,7 @@ case "${target}" in
+ 			| rios | rios1 | rios2 | rsc | rsc1 | rs64a \
+ 			| 401 | 403 | 405 | 405fp | 440 | 440fp | 505 \
+ 			| 601 | 602 | 603 | 603e | ec603e | 604 \
+-			| 604e | 620 | 630 | 740 | 750 | 7400 | 7450 \
++			| 604e | 620 | 630 | 740 | 750 | 7400 | 7450 | e300c[23] \
+ 			| 854[08] | 801 | 821 | 823 | 860 | 970 | G3 | G4 | G5 | cell)
+ 				# OK
+ 				;;
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
new file mode 100644
index 0000000..d249c1c
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
@@ -0,0 +1,31 @@
+---
+ configure    |    2 +-
+ configure.ac |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+Index: gcc-4.6.0/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/configure.ac
++++ gcc-4.6.0/configure.ac
+@@ -3073,7 +3073,7 @@ fi
+ # for target_alias and gcc doesn't manage it consistently.
+ target_configargs="--cache-file=./config.cache ${target_configargs}"
+ 
+-FLAGS_FOR_TARGET=
++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
+ case " $target_configdirs " in
+  *" newlib "*)
+   case " $target_configargs " in
+Index: gcc-4.6.0/configure
+===================================================================
+--- gcc-4.6.0.orig/configure
++++ gcc-4.6.0/configure
+@@ -7594,7 +7594,7 @@ fi
+ # for target_alias and gcc doesn't manage it consistently.
+ target_configargs="--cache-file=./config.cache ${target_configargs}"
+ 
+-FLAGS_FOR_TARGET=
++FLAGS_FOR_TARGET="$ARCH_FLAGS_FOR_TARGET"
+ case " $target_configdirs " in
+  *" newlib "*)
+   case " $target_configargs " in
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
new file mode 100644
index 0000000..428dd08
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch
@@ -0,0 +1,114 @@
+Before committing, I noticed that PR/32161 was marked as a dup of PR/32009, but my previous patch did not fix it.
+
+This alternative patch is better because it lets you just use CFLAGS_FOR_TARGET to set the compilation flags for libgcc. Since bootstrapped target libraries are never compiled with the native compiler, it makes little sense to use different flags for stage1 and later stages. And it also makes little sense to use a different variable than CFLAGS_FOR_TARGET.
+
+Other changes I had to do include:
+
+- moving the creation of default CFLAGS_FOR_TARGET from Makefile.am to configure.ac, because otherwise the BOOT_CFLAGS are substituted into CFLAGS_FOR_TARGET (which is "-O2 -g $(CFLAGS)") via $(CFLAGS). It is also cleaner this way though.
+
+- passing the right CFLAGS to configure scripts as exported environment variables
+
+I also stopped passing LIBCFLAGS to configure scripts since they are unused in the whole src tree. And I updated the documentation as H-P reminded me to do.
+
+Bootstrapped/regtested i686-pc-linux-gnu, will commit to 4.4 shortly. Ok for 4.3?
+
+Paolo
+
+2008-02-19  Paolo Bonzini  <bonzini@gnu.org>
+
+        PR bootstrap/32009
+        PR bootstrap/32161
+
+	* configure.ac (CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Compute here.
+	* configure: Regenerate.
+
+	* Makefile.def: Define stage_libcflags for all bootstrap stages.
+	* Makefile.tpl (BOOT_LIBCFLAGS, STAGE2_LIBCFLAGS, STAGE3_LIBCFLAGS,
+	STAGE4_LIBCFLAGS): New.
+	(CFLAGS_FOR_TARGET, CXXFLAGS_FOR_TARGET): Subst from autoconf, without
+	$(SYSROOT_CFLAGS_FOR_TARGET) and $(DEBUG_PREFIX_CFLAGS_FOR_TARGET).
+	(BASE_TARGET_EXPORTS): Append them here to C{,XX}FLAGS.
+	(EXTRA_TARGET_FLAGS): Append them here to {LIB,}C{,XX}FLAGS.
+	(configure-stage[+id+]-[+prefix+][+module+]): Pass stage_libcflags
+	for target modules.  Don't export LIBCFLAGS.
+	(all-stage[+id+]-[+prefix+][+module+]): Pass stage_libcflags; pass
+	$(BASE_FLAGS_TO_PASS) where [+args+] was passed, and [+args+] after
+	the overridden CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET.
+	(invocations of `all'): Replace $(TARGET_FLAGS_TO_PASS) with
+	$(EXTRA_TARGET_FLAGS), $(FLAGS_TO_PASS) with $(EXTRA_HOST_FLAGS).
+	* Makefile.in: Regenerate.
+
+config:
+2008-02-19  Paolo Bonzini  <bonzini@gnu.org>
+
+	PR bootstrap/32009
+	* mh-ppc-darwin (BOOT_CFLAGS): Reenable.
+
+gcc:
+2008-02-19  Paolo Bonzini  <bonzini@gnu.org>
+
+	PR bootstrap/32009
+	* doc/install.texi: Correct references to CFLAGS, replacing them
+	with BOOT_CFLAGS.  Document flags used during bootstrap for
+	target libraries.
+
+
+---
+ Makefile.def           |   25 
+ Makefile.in            | 1845 ++++++++++++++++++++++++++++++-------------------
+ Makefile.tpl           |   91 +-
+ config/mh-ppc-darwin   |    3 
+ configure              |   36 
+ configure.ac           |   32 
+ gcc/Makefile.in        |    2 
+ gcc/configure          |    6 
+ gcc/configure.ac       |    3 
+ gcc/doc/install.texi   |   56 -
+ libiberty/Makefile.in  |  162 ++--
+ libiberty/configure    |   46 -
+ libiberty/configure.ac |   43 -
+ 13 files changed, 1454 insertions(+), 896 deletions(-)
+
+Index: gcc-4.6.0/configure
+===================================================================
+--- gcc-4.6.0.orig/configure
++++ gcc-4.6.0/configure
+@@ -6785,6 +6785,38 @@ if test "x$CXXFLAGS_FOR_TARGET" = x; the
+ fi
+ 
+ 
++# During gcc bootstrap, if we use some random cc for stage1 then CFLAGS
++# might be empty or "-g".  We don't require a C++ compiler, so CXXFLAGS
++# might also be empty (or "-g", if a non-GCC C++ compiler is in the path).
++# We want to ensure that TARGET libraries (which we know are built with
++# gcc) are built with "-O2 -g", so include those options when setting
++# CFLAGS_FOR_TARGET and CXXFLAGS_FOR_TARGET.
++if test "x$CFLAGS_FOR_TARGET" = x; then
++  CFLAGS_FOR_TARGET=$CFLAGS
++  case " $CFLAGS " in
++    *" -O2 "*) ;;
++    *) CFLAGS_FOR_TARGET="-O2 $CFLAGS" ;;
++  esac
++  case " $CFLAGS " in
++    *" -g "* | *" -g3 "*) ;;
++    *) CFLAGS_FOR_TARGET="-g $CFLAGS" ;;
++  esac
++fi
++
++
++if test "x$CXXFLAGS_FOR_TARGET" = x; then
++  CXXFLAGS_FOR_TARGET=$CXXFLAGS
++  case " $CXXFLAGS " in
++    *" -O2 "*) ;;
++    *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS" ;;
++  esac
++  case " $CXXFLAGS " in
++    *" -g "* | *" -g3 "*) ;;
++    *) CXXFLAGS_FOR_TARGET="-g $CXXFLAGS" ;;
++  esac
++fi
++
++
+ # Handle --with-headers=XXX.  If the value is not "yes", the contents of
+ # the named directory are copied to $(tooldir)/sys-include.
+ if test x"${with_headers}" != x && test x"${with_headers}" != xno ; then
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-arm-frename-registers.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-arm-frename-registers.patch
new file mode 100644
index 0000000..280b903
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-arm-frename-registers.patch
@@ -0,0 +1,25 @@
+http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35964
+Index: gcc-4.3.0/gcc/regrename.c
+===================================================================
+--- gcc-4.3.0.orig/gcc/regrename.c	2008-05-28 08:31:15.000000000 -0700
++++ gcc-4.3.0/gcc/regrename.c	2008-05-28 08:34:00.000000000 -0700
+@@ -782,6 +782,10 @@
+ 	          || (predicated && recog_data.operand_type[i] == OP_OUT))
+ 		recog_data.operand_type[i] = OP_INOUT;
+ 	    }
++	  /* Unshare dup_loc RTL */
++	  for (i = 0; i < recog_data.n_dups; i++)
++	    *recog_data.dup_loc[i] = copy_rtx(*recog_data.dup_loc[i]);
++
+ 
+ 	  /* Step 1: Close chains for which we have overlapping reads.  */
+ 	  for (i = 0; i < n_ops; i++)
+@@ -813,7 +817,7 @@
+ 		    OP_IN, 0);
+ 
+ 	  for (i = 0; i < recog_data.n_dups; i++)
+-	    *recog_data.dup_loc[i] = copy_rtx (old_dups[i]);
++	    *recog_data.dup_loc[i] = old_dups[i];
+ 	  for (i = 0; i < n_ops; i++)
+ 	    *recog_data.operand_loc[i] = old_operands[i];
+ 	  if (recog_data.n_dups)
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-flags-for-build.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-flags-for-build.patch
new file mode 100644
index 0000000..f7beb78
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-flags-for-build.patch
@@ -0,0 +1,178 @@
+Index: gcc-4.6.0/Makefile.def
+===================================================================
+--- gcc-4.6.0.orig/Makefile.def
++++ gcc-4.6.0/Makefile.def
+@@ -243,6 +243,7 @@ flags_to_pass = { flag= AWK ; };
+ flags_to_pass = { flag= BISON ; };
+ flags_to_pass = { flag= CC_FOR_BUILD ; };
+ flags_to_pass = { flag= CFLAGS_FOR_BUILD ; };
++flags_to_pass = { flag= CPPFLAGS_FOR_BUILD ; };
+ flags_to_pass = { flag= CXX_FOR_BUILD ; };
+ flags_to_pass = { flag= EXPECT ; };
+ flags_to_pass = { flag= FLEX ; };
+Index: gcc-4.6.0/gcc/Makefile.in
+===================================================================
+--- gcc-4.6.0.orig/gcc/Makefile.in
++++ gcc-4.6.0/gcc/Makefile.in
+@@ -770,7 +770,7 @@ BUILD_LINKERFLAGS = $(BUILD_CFLAGS)
+ 
+ # Native linker and preprocessor flags.  For x-fragment overrides.
+ BUILD_LDFLAGS=@BUILD_LDFLAGS@
+-BUILD_CPPFLAGS=$(ALL_CPPFLAGS)
++BUILD_CPPFLAGS=$(INCLUDES) @BUILD_CPPFLAGS@ $(X_CPPFLAGS)
+ 
+ # Actual name to use when installing a native compiler.
+ GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)')
+Index: gcc-4.6.0/gcc/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure.ac
++++ gcc-4.6.0/gcc/configure.ac
+@@ -1784,16 +1784,18 @@ AC_SUBST(inhibit_libc)
+ # Also, we cannot run fixincludes.
+ 
+ # These are the normal (build=host) settings:
+-CC_FOR_BUILD='$(CC)'		AC_SUBST(CC_FOR_BUILD)
+-BUILD_CFLAGS='$(ALL_CFLAGS)'	AC_SUBST(BUILD_CFLAGS)
+-BUILD_LDFLAGS='$(LDFLAGS)'	AC_SUBST(BUILD_LDFLAGS)
+-STMP_FIXINC=stmp-fixinc		AC_SUBST(STMP_FIXINC)
++CC_FOR_BUILD='$(CC)'			AC_SUBST(CC_FOR_BUILD)
++BUILD_CFLAGS='$(ALL_CFLAGS)'		AC_SUBST(BUILD_CFLAGS)
++BUILD_LDFLAGS='$(LDFLAGS)'		AC_SUBST(BUILD_LDFLAGS)
++BUILD_CPPFLAGS='$(ALL_CPPFLAGS)'	AC_SUBST(BUILD_CPPFLAGS)
++STMP_FIXINC=stmp-fixinc			AC_SUBST(STMP_FIXINC)
+ 
+ # And these apply if build != host, or we are generating coverage data
+ if test x$build != x$host || test "x$coverage_flags" != x
+ then
+     BUILD_CFLAGS='$(INTERNAL_CFLAGS) $(T_CFLAGS) $(CFLAGS_FOR_BUILD)'
+     BUILD_LDFLAGS='$(LDFLAGS_FOR_BUILD)'
++    BUILD_CPPFLAGS='$(CPPFLAGS_FOR_BUILD)'
+ fi
+ 
+ # Expand extra_headers to include complete path.
+Index: gcc-4.6.0/Makefile.in
+===================================================================
+--- gcc-4.6.0.orig/Makefile.in
++++ gcc-4.6.0/Makefile.in
+@@ -338,6 +338,7 @@ AR_FOR_BUILD = @AR_FOR_BUILD@
+ AS_FOR_BUILD = @AS_FOR_BUILD@
+ CC_FOR_BUILD = @CC_FOR_BUILD@
+ CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
++CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
+ CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
+ CXX_FOR_BUILD = @CXX_FOR_BUILD@
+ DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
+@@ -691,6 +692,7 @@ BASE_FLAGS_TO_PASS = \
+ 	"BISON=$(BISON)" \
+ 	"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
+ 	"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
++	"CPPFLAGS_FOR_BUILD=$(CPPFLAGS_FOR_BUILD)" \
+ 	"CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
+ 	"EXPECT=$(EXPECT)" \
+ 	"FLEX=$(FLEX)" \
+Index: gcc-4.6.0/gcc/configure
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure
++++ gcc-4.6.0/gcc/configure
+@@ -703,6 +703,7 @@ SED
+ LIBTOOL
+ collect2
+ STMP_FIXINC
++BUILD_CPPFLAGS
+ BUILD_LDFLAGS
+ BUILD_CFLAGS
+ CC_FOR_BUILD
+@@ -11382,6 +11383,7 @@ fi
+ CC_FOR_BUILD='$(CC)'
+ BUILD_CFLAGS='$(ALL_CFLAGS)'
+ BUILD_LDFLAGS='$(LDFLAGS)'
++BUILD_CPPFLAGS='$(ALL_CPPFLAGS)'
+ STMP_FIXINC=stmp-fixinc
+ 
+ # And these apply if build != host, or we are generating coverage data
+@@ -11389,6 +11391,7 @@ if test x$build != x$host || test "x$cov
+ then
+     BUILD_CFLAGS='$(INTERNAL_CFLAGS) $(T_CFLAGS) $(CFLAGS_FOR_BUILD)'
+     BUILD_LDFLAGS='$(LDFLAGS_FOR_BUILD)'
++    BUILD_CPPFLAGS='$(CPPFLAGS_FOR_BUILD)'
+ fi
+ 
+ # Expand extra_headers to include complete path.
+@@ -17505,7 +17508,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 17508 "configure"
++#line 17511 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -17611,7 +17614,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 17614 "configure"
++#line 17617 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+Index: gcc-4.6.0/Makefile.tpl
+===================================================================
+--- gcc-4.6.0.orig/Makefile.tpl
++++ gcc-4.6.0/Makefile.tpl
+@@ -341,6 +341,7 @@ AR_FOR_BUILD = @AR_FOR_BUILD@
+ AS_FOR_BUILD = @AS_FOR_BUILD@
+ CC_FOR_BUILD = @CC_FOR_BUILD@
+ CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
++CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
+ CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
+ CXX_FOR_BUILD = @CXX_FOR_BUILD@
+ DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
+Index: gcc-4.6.0/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/configure.ac
++++ gcc-4.6.0/configure.ac
+@@ -3154,6 +3154,7 @@ esac
+ # our build compiler if desired.
+ if test x"${build}" = x"${host}" ; then
+   CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
++  CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
+   CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
+   LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
+ fi
+@@ -3220,6 +3221,7 @@ AC_SUBST(AR_FOR_BUILD)
+ AC_SUBST(AS_FOR_BUILD)
+ AC_SUBST(CC_FOR_BUILD)
+ AC_SUBST(CFLAGS_FOR_BUILD)
++AC_SUBST(CPPFLAGS_FOR_BUILD)
+ AC_SUBST(CXXFLAGS_FOR_BUILD)
+ AC_SUBST(CXX_FOR_BUILD)
+ AC_SUBST(DLLTOOL_FOR_BUILD)
+Index: gcc-4.6.0/configure
+===================================================================
+--- gcc-4.6.0.orig/configure
++++ gcc-4.6.0/configure
+@@ -617,6 +617,7 @@ GCJ_FOR_BUILD
+ DLLTOOL_FOR_BUILD
+ CXX_FOR_BUILD
+ CXXFLAGS_FOR_BUILD
++CPPFLAGS_FOR_BUILD
+ CFLAGS_FOR_BUILD
+ CC_FOR_BUILD
+ AS_FOR_BUILD
+@@ -7675,6 +7676,7 @@ esac
+ # our build compiler if desired.
+ if test x"${build}" = x"${host}" ; then
+   CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
++  CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
+   CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
+   LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
+ fi
+@@ -7740,6 +7742,7 @@ done
+ 
+ 
+ 
++
+ 
+ 
+ 
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-ice-hack.dpatch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-ice-hack.dpatch
new file mode 100644
index 0000000..84c5ef2
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-ice-hack.dpatch
@@ -0,0 +1,331 @@
+#! /bin/sh -e
+
+# DP: Retry the build on an ice, save the calling options and preprocessed
+# DP: source when the ice is reproducible.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2004-01-23  Jakub Jelinek  <jakub@redhat.com>
+
+	* system.h (ICE_EXIT_CODE): Define.
+	* gcc.c (execute): Don't free first string early, but at the end
+	of the function.  Call retry_ice if compiler exited with
+	ICE_EXIT_CODE.
+	(retry_ice): New function.
+	* diagnostic.c (diagnostic_count_diagnostic,
+	diagnostic_action_after_output, error_recursion): Exit with
+	ICE_EXIT_CODE instead of FATAL_EXIT_CODE.
+
+--- gcc/diagnostic.c.orig	2007-09-30 10:48:13.000000000 +0000
++++ gcc/diagnostic.c	2007-09-30 10:49:57.000000000 +0000
+@@ -244,7 +244,7 @@
+       fnotice (stderr, "Please submit a full bug report,\n"
+ 	       "with preprocessed source if appropriate.\n"
+ 	       "See %s for instructions.\n", bug_report_url);
+-      exit (ICE_EXIT_CODE);
++      exit (FATAL_EXIT_CODE);
+ 
+     case DK_FATAL:
+       if (context->abort_on_error)
+--- gcc/gcc.c.orig	2007-09-30 10:48:13.000000000 +0000
++++ gcc/gcc.c	2007-09-30 10:48:39.000000000 +0000
+@@ -357,6 +357,9 @@
+ #if defined(HAVE_TARGET_OBJECT_SUFFIX) || defined(HAVE_TARGET_EXECUTABLE_SUFFIX)
+ static const char *convert_filename (const char *, int, int);
+ #endif
++#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS))
++static void retry_ice (const char *prog, const char **argv);
++#endif
+ 
+ static const char *getenv_spec_function (int, const char **);
+ static const char *if_exists_spec_function (int, const char **);
+@@ -2999,7 +3002,7 @@
+ 	    }
+ 	}
+ 
+-      if (string != commands[i].prog)
++      if (i && string != commands[i].prog)
+ 	free (CONST_CAST (char *, string));
+     }
+ 
+@@ -3056,6 +3059,16 @@
+ 	else if (WIFEXITED (status)
+ 		 && WEXITSTATUS (status) >= MIN_FATAL_STATUS)
+ 	  {
++#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS))
++	    /* For ICEs in cc1, cc1obj, cc1plus see if it is
++	       reproducible or not.  */
++	    char *p;
++	    if (WEXITSTATUS (status) == ICE_EXIT_CODE
++		&& i == 0
++		&& (p = strrchr (commands[0].argv[0], DIR_SEPARATOR))
++		&& ! strncmp (p + 1, "cc1", 3))
++	      retry_ice (commands[0].prog, commands[0].argv);
++#endif
+ 	    if (WEXITSTATUS (status) > greatest_status)
+ 	      greatest_status = WEXITSTATUS (status);
+ 	    ret_code = -1;
+@@ -3076,6 +3089,9 @@
+ 	  }
+       }
+ 
++    if (commands[0].argv[0] != commands[0].prog)
++      free ((PTR) commands[0].argv[0]);
++
+     return ret_code;
+   }
+ }
+@@ -6016,6 +6032,224 @@
+   switches[switchnum].validated = 1;
+ }
+ \f
++#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS))
++#define RETRY_ICE_ATTEMPTS 2
++
++static void
++retry_ice (const char *prog, const char **argv)
++{
++  int nargs, out_arg = -1, quiet = 0, attempt;
++  int pid, retries, sleep_interval;
++  const char **new_argv;
++  char *temp_filenames[RETRY_ICE_ATTEMPTS * 2 + 2];
++
++  if (input_filename == NULL || ! strcmp (input_filename, "-"))
++    return;
++
++  for (nargs = 0; argv[nargs] != NULL; ++nargs)
++    /* Only retry compiler ICEs, not preprocessor ones.  */
++    if (! strcmp (argv[nargs], "-E"))
++      return;
++    else if (argv[nargs][0] == '-' && argv[nargs][1] == 'o')
++      {
++	if (out_arg == -1)
++	  out_arg = nargs;
++	else
++	  return;
++      }
++    /* If the compiler is going to output any time information,
++       it might vary between invocations.  */
++    else if (! strcmp (argv[nargs], "-quiet"))
++      quiet = 1;
++    else if (! strcmp (argv[nargs], "-ftime-report"))
++      return;
++
++  if (out_arg == -1 || !quiet)
++    return;
++
++  memset (temp_filenames, '\0', sizeof (temp_filenames));
++  new_argv = alloca ((nargs + 3) * sizeof (const char *));
++  memcpy (new_argv, argv, (nargs + 1) * sizeof (const char *));
++  new_argv[nargs++] = "-frandom-seed=0";
++  new_argv[nargs] = NULL;
++  if (new_argv[out_arg][2] == '\0')
++    new_argv[out_arg + 1] = "-";
++  else
++    new_argv[out_arg] = "-o-";
++
++  for (attempt = 0; attempt < RETRY_ICE_ATTEMPTS + 1; ++attempt)
++    {
++      int fd = -1;
++      int status;
++
++      temp_filenames[attempt * 2] = make_temp_file (".out");
++      temp_filenames[attempt * 2 + 1] = make_temp_file (".err");
++
++      if (attempt == RETRY_ICE_ATTEMPTS)
++        {
++	  int i;
++	  int fd1, fd2;
++	  struct stat st1, st2;
++	  size_t n, len;
++	  char *buf;
++
++	  buf = xmalloc (8192);
++
++	  for (i = 0; i < 2; ++i)
++	    {
++	      fd1 = open (temp_filenames[i], O_RDONLY);
++	      fd2 = open (temp_filenames[2 + i], O_RDONLY);
++
++	      if (fd1 < 0 || fd2 < 0)
++		{
++		  i = -1;
++		  close (fd1);
++		  close (fd2);
++		  break;
++		}
++
++	      if (fstat (fd1, &st1) < 0 || fstat (fd2, &st2) < 0)
++		{
++		  i = -1;
++		  close (fd1);
++		  close (fd2);
++		  break;
++		}
++
++	      if (st1.st_size != st2.st_size)
++		{
++		  close (fd1);
++		  close (fd2);
++		  break;
++		}
++
++	      len = 0;
++	      for (n = st1.st_size; n; n -= len)
++		{
++		  len = n;
++		  if (len > 4096)
++		    len = 4096;
++
++		  if (read (fd1, buf, len) != (int) len
++		      || read (fd2, buf + 4096, len) != (int) len)
++		    {
++		      i = -1;
++		      break;
++		    }
++
++		  if (memcmp (buf, buf + 4096, len) != 0)
++		    break;
++		}
++
++	      close (fd1);
++	      close (fd2);
++
++	      if (n)
++		break;
++	    }
++
++	  free (buf);
++	  if (i == -1)
++	    break;
++
++	  if (i != 2)
++	    {
++	      notice ("The bug is not reproducible, so it is likely a hardware or OS problem.\n");
++	      break;
++	    }
++
++          fd = open (temp_filenames[attempt * 2], O_RDWR);
++	  if (fd < 0)
++	    break;
++	  write (fd, "//", 2);
++	  for (i = 0; i < nargs; i++)
++	    {
++	      write (fd, " ", 1);
++	      write (fd, new_argv[i], strlen (new_argv[i]));
++	    }
++	  write (fd, "\n", 1);
++	  new_argv[nargs] = "-E";
++	  new_argv[nargs + 1] = NULL;
++        }
++
++      /* Fork a subprocess; wait and retry if it fails.  */
++      sleep_interval = 1;
++      pid = -1;
++      for (retries = 0; retries < 4; retries++)
++	{
++	  pid = fork ();
++	  if (pid >= 0)
++	    break;
++	  sleep (sleep_interval);
++	  sleep_interval *= 2;
++	}
++
++      if (pid < 0)
++	break;
++      else if (pid == 0)
++	{
++	  if (attempt != RETRY_ICE_ATTEMPTS)
++	    fd = open (temp_filenames[attempt * 2], O_RDWR);
++	  if (fd < 0)
++	    exit (-1);
++	  if (fd != 1)
++	    {
++	      close (1);
++	      dup (fd);
++	      close (fd);
++	    }
++
++	  fd = open (temp_filenames[attempt * 2 + 1], O_RDWR);
++	  if (fd < 0)
++	    exit (-1);
++	  if (fd != 2)
++	    {
++	      close (2);
++	      dup (fd);
++	      close (fd);
++	    }
++
++	  if (prog == new_argv[0])
++	    execvp (prog, (char *const *) new_argv);
++	  else
++	    execv (new_argv[0], (char *const *) new_argv);
++	  exit (-1);
++	}
++
++      if (waitpid (pid, &status, 0) < 0)
++	break;
++
++      if (attempt < RETRY_ICE_ATTEMPTS
++	  && (! WIFEXITED (status) || WEXITSTATUS (status) != ICE_EXIT_CODE))
++	{
++	  notice ("The bug is not reproducible, so it is likely a hardware or OS problem.\n");
++	  break;
++	}
++      else if (attempt == RETRY_ICE_ATTEMPTS)
++	{
++	  close (fd);
++	  if (WIFEXITED (status)
++	      && WEXITSTATUS (status) == SUCCESS_EXIT_CODE)
++	    {
++	      notice ("Preprocessed source stored into %s file, please attach this to your bugreport.\n",
++		      temp_filenames[attempt * 2]);
++	      /* Make sure it is not deleted.  */
++	      free (temp_filenames[attempt * 2]);
++	      temp_filenames[attempt * 2] = NULL;
++	      break;
++	    }
++	}
++    }
++
++  for (attempt = 0; attempt < RETRY_ICE_ATTEMPTS * 2 + 2; attempt++)
++    if (temp_filenames[attempt])
++      {
++	unlink (temp_filenames[attempt]);
++	free (temp_filenames[attempt]);
++      }
++}
++#endif
++\f
+ /* Search for a file named NAME trying various prefixes including the
+    user's -B prefix and some standard ones.
+    Return the absolute file name found.  If nothing is found, return NAME.  */
+--- gcc/Makefile.in.orig	2007-09-30 10:48:13.000000000 +0000
++++ gcc/Makefile.in	2007-09-30 10:48:39.000000000 +0000
+@@ -192,6 +192,7 @@
+ build/gengtype-lex.o-warn = -Wno-error
+ # SYSCALLS.c misses prototypes
+ SYSCALLS.c.X-warn = -Wno-strict-prototypes -Wno-error
++build/gcc.o-warn = -Wno-error
+ 
+ # All warnings have to be shut off in stage1 if the compiler used then
+ # isn't gcc; configure determines that.  WARN_CFLAGS will be either
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-dir-extend.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-dir-extend.patch
new file mode 100644
index 0000000..d477105
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-dir-extend.patch
@@ -0,0 +1,25 @@
+Add /sw/include and /opt/include based on the original
+zecke-no-host-includes.patch patch.  The original patch checked for
+/usr/include, /sw/include and /opt/include and then triggered a failure and
+aborted.
+
+Instead, we add the two missing items to the current scan.  If the user
+wants this to be a failure, they can add "-Werror=poison-system-directories".
+
+Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+
+Index: gcc-4.6.0/gcc/incpath.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/incpath.c
++++ gcc-4.6.0/gcc/incpath.c
+@@ -363,7 +363,9 @@ merge_include_chains (const char *sysroo
+          {
+           if ((!strncmp (p->name, "/usr/include", 12))
+               || (!strncmp (p->name, "/usr/local/include", 18))
+-              || (!strncmp (p->name, "/usr/X11R6/include", 18)))
++              || (!strncmp (p->name, "/usr/X11R6/include", 18))
++              || (!strncmp (p->name, "/sw/include", 11))
++              || (!strncmp (p->name, "/opt/include", 12)))
+             warning (OPT_Wpoison_system_directories,
+                      "include location \"%s\" is unsafe for "
+                      "cross-compilation",
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-parameters.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-parameters.patch
new file mode 100644
index 0000000..f36fa81
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-parameters.patch
@@ -0,0 +1,74 @@
+gcc: add poison parameters detection
+
+Add the logic that, if not configured with "--enable-target-optspace",
+gcc will meet error when build target app with "-Os" option.
+This could avoid potential binary crash.
+
+Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
+
+Index: gcc-4.6.0/gcc/config.in
+===================================================================
+--- gcc-4.6.0.orig/gcc/config.in
++++ gcc-4.6.0/gcc/config.in
+@@ -150,6 +150,12 @@
+ #endif
+ 
+ 
++/* Define to enable target optspace support. */
++#ifndef USED_FOR_TARGET
++#undef ENABLE_TARGET_OPTSPACE
++#endif
++
++
+ /* Define if you want all operations on RTL (the basic data structure of the
+    optimizer and back end) to be checked for dynamic type safety at runtime.
+    This is quite expensive. */
+Index: gcc-4.6.0/gcc/configure
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure
++++ gcc-4.6.0/gcc/configure
+@@ -26434,6 +26434,13 @@ $as_echo "#define ENABLE_LIBQUADMATH_SUP
+ fi
+ 
+ 
++if test x"$enable_target_optspace" != x; then :
++
++$as_echo "#define ENABLE_TARGET_OPTSPACE 1" >>confdefs.h
++
++fi
++
++
+ # Configure the subdirectories
+ # AC_CONFIG_SUBDIRS($subdirs)
+ 
+Index: gcc-4.6.0/gcc/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure.ac
++++ gcc-4.6.0/gcc/configure.ac
+@@ -4907,6 +4907,11 @@ if test "${ENABLE_LIBQUADMATH_SUPPORT}"
+ fi
+ 
+ 
++AC_SUBST(enable_target_optspace)
++if test x"$enable_target_optspace" != x; then
++  AC_DEFINE(ENABLE_TARGET_OPTSPACE, 1, [Define to enable target optspace support.])
++fi
++
+ # Configure the subdirectories
+ # AC_CONFIG_SUBDIRS($subdirs)
+ 
+Index: gcc-4.6.0/gcc/opts.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/opts.c
++++ gcc-4.6.0/gcc/opts.c
+@@ -605,6 +605,10 @@ default_options_optimization (struct gcc
+     maybe_set_param_value (PARAM_MIN_CROSSJUMP_INSNS,
+ 			   default_param_value (PARAM_MIN_CROSSJUMP_INSNS),
+ 			   opts->x_param_values, opts_set->x_param_values);
++#ifndef ENABLE_TARGET_OPTSPACE
++  if (optimize_size == 1)
++    error ("Do not use -Os option if --enable-target-optspace is not set.");
++#endif
+ 
+   /* Allow default optimizations to be specified on a per-machine basis.  */
+   maybe_default_options (opts, opts_set,
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-system-directories.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-system-directories.patch
new file mode 100644
index 0000000..e1b7131
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-poison-system-directories.patch
@@ -0,0 +1,221 @@
+       gcc/
+       2008-07-02  Joseph Myers  <joseph@codesourcery.com>
+       * c-incpath.c: Include toplev.h.
+       (merge_include_chains): Use warning instead of cpp_error for
+       system directory poisoning diagnostic.
+       * Makefile.in (c-incpath.o): Depend on toplev.h.
+       * gcc.c (LINK_COMMAND_SPEC): Pass
+       --error-poison-system-directories if
+       -Werror=poison-system-directories.
+
+       2007-06-13  Joseph Myers  <joseph@codesourcery.com>
+       * common.opt (--Wno-poison-system-directories): New.
+       * doc/invoke.texi (-Wno-poison-system-directories): Document.
+       * c-incpath.c: Include flags.h.
+       (merge_include_chains): Check flag_poison_system_directories.
+       * gcc.c (LINK_COMMAND_SPEC): Pass --no-poison-system-directories
+       to linker if -Wno-poison-system-directories.
+       * Makefile.in (c-incpath.o): Depend on $(FLAGS_H).
+
+       2007-03-20  Daniel Jacobowitz  <dan@codesourcery.com>
+                   Joseph Myers  <joseph@codesourcery.com>
+       * configure.ac (--enable-poison-system-directories): New option.
+       * configure, config.in: Regenerate.
+       * c-incpath.c (merge_include_chains): If
+       ENABLE_POISON_SYSTEM_DIRECTORIES defined, warn for use of
+       /usr/include, /usr/local/include or /usr/X11R6/include.
+
+Index: gcc-4.6.0/gcc/common.opt
+===================================================================
+--- gcc-4.6.0.orig/gcc/common.opt
++++ gcc-4.6.0/gcc/common.opt
+@@ -558,6 +558,10 @@ Wpadded
+ Common Var(warn_padded) Warning
+ Warn when padding is required to align structure members
+ 
++Wpoison-system-directories
++Common Var(flag_poison_system_directories) Init(1) Warning
++Warn for -I and -L options using system directories if cross compiling
++
+ Wshadow
+ Common Var(warn_shadow) Warning
+ Warn when one local variable shadows another
+Index: gcc-4.6.0/gcc/config.in
+===================================================================
+--- gcc-4.6.0.orig/gcc/config.in
++++ gcc-4.6.0/gcc/config.in
+@@ -144,6 +144,12 @@
+ #endif
+ 
+ 
++/* Define to warn for use of native system header directories */
++#ifndef USED_FOR_TARGET
++#undef ENABLE_POISON_SYSTEM_DIRECTORIES
++#endif
++
++
+ /* Define if you want all operations on RTL (the basic data structure of the
+    optimizer and back end) to be checked for dynamic type safety at runtime.
+    This is quite expensive. */
+Index: gcc-4.6.0/gcc/configure.ac
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure.ac
++++ gcc-4.6.0/gcc/configure.ac
+@@ -4694,6 +4694,16 @@ else
+ fi)
+ AC_SUBST(slibdir)
+ 
++AC_ARG_ENABLE([poison-system-directories],
++             AS_HELP_STRING([--enable-poison-system-directories],
++                            [warn for use of native system header directories]),,
++             [enable_poison_system_directories=no])
++if test "x${enable_poison_system_directories}" = "xyes"; then
++  AC_DEFINE([ENABLE_POISON_SYSTEM_DIRECTORIES],
++           [1],
++           [Define to warn for use of native system header directories])
++fi
++
+ # Substitute configuration variables
+ AC_SUBST(subdirs)
+ AC_SUBST(srcdir)
+Index: gcc-4.6.0/gcc/doc/invoke.texi
+===================================================================
+--- gcc-4.6.0.orig/gcc/doc/invoke.texi
++++ gcc-4.6.0/gcc/doc/invoke.texi
+@@ -257,6 +257,7 @@ Objective-C and Objective-C++ Dialects}.
+ -Woverlength-strings  -Wpacked  -Wpacked-bitfield-compat  -Wpadded @gol
+ -Wparentheses  -Wpedantic-ms-format -Wno-pedantic-ms-format @gol
+ -Wpointer-arith  -Wno-pointer-to-int-cast @gol
++-Wno-poison-system-directories @gol
+ -Wredundant-decls @gol
+ -Wreturn-type  -Wsequence-point  -Wshadow @gol
+ -Wsign-compare  -Wsign-conversion  -Wstack-protector @gol
+@@ -3773,6 +3774,14 @@ headers---for that, @option{-Wunknown-pr
+  for most targets, it is made up of code and thus requires the stack
+  to be made executable in order for the program to work properly.
+ 
++@item -Wno-poison-system-directories
++@opindex Wno-poison-system-directories
++Do not warn for @option{-I} or @option{-L} options using system
++directories such as @file{/usr/include} when cross compiling.  This
++option is intended for use in chroot environments when such
++directories contain the correct headers and libraries for the target
++system rather than the host.
++
+ @item -Wfloat-equal
+ @opindex Wfloat-equal
+ @opindex Wno-float-equal
+Index: gcc-4.6.0/gcc/gcc.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/gcc.c
++++ gcc-4.6.0/gcc/gcc.c
+@@ -659,6 +659,8 @@ proper position among the other output f
+     %{flto} %{flto=*} %l " LINK_PIE_SPEC \
+    "%X %{o*} %{e*} %{N} %{n} %{r}\
+     %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}}\
++    %{Wno-poison-system-directories:--no-poison-system-directories}\
++    %{Werror=poison-system-directories:--error-poison-system-directories}\
+     %{static:} %{L*} %(mfwrap) %(link_libgcc) %o\
+     %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)}\
+     %(mflib) " STACK_SPLIT_SPEC "\
+Index: gcc-4.6.0/gcc/incpath.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/incpath.c
++++ gcc-4.6.0/gcc/incpath.c
+@@ -353,6 +353,24 @@ merge_include_chains (const char *sysroo
+ 	}
+       fprintf (stderr, _("End of search list.\n"));
+     }
++
++#ifdef ENABLE_POISON_SYSTEM_DIRECTORIES
++  if (flag_poison_system_directories)
++    {
++       struct cpp_dir *p;
++
++       for (p = heads[QUOTE]; p; p = p->next)
++         {
++          if ((!strncmp (p->name, "/usr/include", 12))
++              || (!strncmp (p->name, "/usr/local/include", 18))
++              || (!strncmp (p->name, "/usr/X11R6/include", 18)))
++            warning (OPT_Wpoison_system_directories,
++                     "include location \"%s\" is unsafe for "
++                     "cross-compilation",
++                     p->name);
++         }
++    }
++#endif
+ }
+ 
+ /* Use given -I paths for #include "..." but not #include <...>, and
+Index: gcc-4.6.0/gcc/Makefile.in
+===================================================================
+--- gcc-4.6.0.orig/gcc/Makefile.in
++++ gcc-4.6.0/gcc/Makefile.in
+@@ -2179,7 +2179,7 @@ attribs.o : attribs.c $(CONFIG_H) $(SYST
+ 
+ incpath.o: incpath.c incpath.h $(CONFIG_H) $(SYSTEM_H) $(CPPLIB_H) \
+ 		intl.h prefix.h coretypes.h $(TM_H) cppdefault.h $(TARGET_H) \
+-		$(MACHMODE_H)
++		$(MACHMODE_H) $(FLAGS_H) toplev.h
+ 
+ prefix.o: prefix.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) prefix.h \
+ 	Makefile $(BASEVER)
+Index: gcc-4.6.0/gcc/configure
+===================================================================
+--- gcc-4.6.0.orig/gcc/configure
++++ gcc-4.6.0/gcc/configure
+@@ -912,6 +912,7 @@ with_system_zlib
+ enable_maintainer_mode
+ enable_version_specific_runtime_libs
+ with_slibdir
++enable_poison_system_directories
+ enable_plugin
+ enable_libquadmath_support
+ '
+@@ -1623,6 +1624,8 @@ Optional Features:
+   --enable-version-specific-runtime-libs
+                           specify that runtime libraries should be
+                           installed in a compiler-specific directory
++  --enable-poison-system-directories
++                          warn for use of native system header directories
+   --enable-plugin         enable plugin support
+   --disable-libquadmath-support
+                           disable libquadmath support for Fortran
+@@ -17508,7 +17511,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 17511 "configure"
++#line 17514 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -17614,7 +17617,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 17617 "configure"
++#line 17620 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -26127,6 +26130,19 @@ fi
+ 
+ 
+ 
++# Check whether --enable-poison-system-directories was given.
++if test "${enable_poison_system_directories+set}" = set; then :
++  enableval=$enable_poison_system_directories;
++else
++  enable_poison_system_directories=no
++fi
++
++if test "x${enable_poison_system_directories}" = "xyes"; then
++
++$as_echo "#define ENABLE_POISON_SYSTEM_DIRECTORIES 1" >>confdefs.h
++
++fi
++
+ # Substitute configuration variables
+ 
+ 
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-uclibc-locale-ctype_touplow_t.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-uclibc-locale-ctype_touplow_t.patch
new file mode 100644
index 0000000..8b71e31
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-uclibc-locale-ctype_touplow_t.patch
@@ -0,0 +1,70 @@
+Index: gcc-4.6.0/libstdc++-v3/config/locale/generic/c_locale.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/generic/c_locale.h
++++ gcc-4.6.0/libstdc++-v3/config/locale/generic/c_locale.h
+@@ -41,13 +41,22 @@
+ 
+ #include <clocale>
+ 
++#ifdef __UCLIBC__
++#include <features.h>
++#include <ctype.h>
++#endif
++
+ #define _GLIBCXX_NUM_CATEGORIES 0
+ 
+ namespace std _GLIBCXX_VISIBILITY(default)
+ {
+ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+ 
++#ifdef __UCLIBC__
++  typedef __ctype_touplow_t*	__c_locale;
++#else
+   typedef int*			__c_locale;
++#endif
+ 
+   // Convert numeric value of type double and long double to string and
+   // return length of string.  If vsnprintf is available use it, otherwise
+Index: gcc-4.6.0/libstdc++-v3/config/os/gnu-linux/ctype_base.h
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/os/gnu-linux/ctype_base.h
++++ gcc-4.6.0/libstdc++-v3/config/os/gnu-linux/ctype_base.h
+@@ -34,6 +34,11 @@
+ 
+ // Information as gleaned from /usr/include/ctype.h
+ 
++#ifdef __UCLIBC__
++#include <features.h>
++#include <ctype.h>
++#endif
++
+ namespace std _GLIBCXX_VISIBILITY(default)
+ {
+ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+@@ -42,7 +47,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
+   struct ctype_base
+   {
+     // Non-standard typedefs.
++#ifdef __UCLIBC__
++    typedef const __ctype_touplow_t*	__to_type;
++#else
+     typedef const int* 		__to_type;
++#endif
+ 
+     // NB: Offsets into ctype<char>::_M_table force a particular size
+     // on the mask type. Because of this, we don't use an enum.
+Index: gcc-4.6.0/libstdc++-v3/config/locale/generic/c_locale.cc
+===================================================================
+--- gcc-4.6.0.orig/libstdc++-v3/config/locale/generic/c_locale.cc
++++ gcc-4.6.0/libstdc++-v3/config/locale/generic/c_locale.cc
+@@ -264,5 +264,10 @@ _GLIBCXX_END_NAMESPACE_VERSION
+ #ifdef _GLIBCXX_LONG_DOUBLE_COMPAT
+ #define _GLIBCXX_LDBL_COMPAT(dbl, ldbl) \
+   extern "C" void ldbl (void) __attribute__ ((alias (#dbl)))
++#ifdef __UCLIBC__
++// This is because __c_locale is of type __ctype_touplow_t* which is short on uclibc. for glibc its int*
++_GLIBCXX_LDBL_COMPAT(_ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKPs, _ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKPs);
++#else
+ _GLIBCXX_LDBL_COMPAT(_ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKPi, _ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKPi);
++#endif
+ #endif // _GLIBCXX_LONG_DOUBLE_COMPAT
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/libstdc++-pic.dpatch b/meta/recipes-devtools/gcc/gcc-4.6.0/libstdc++-pic.dpatch
new file mode 100644
index 0000000..70c9e81
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/libstdc++-pic.dpatch
@@ -0,0 +1,71 @@
+#! /bin/sh -e
+
+# DP: Build and install libstdc++_pic.a library.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -ur libstdc++-v3/src/Makefile.am libstdc++-v3/src/Makefile.am
+--- libstdc++-v3/src/Makefile.am~	2004-04-16 21:04:05.000000000 +0200
++++ libstdc++-v3/src/Makefile.am	2004-07-03 20:22:43.000000000 +0200
+@@ -210,6 +210,10 @@
+ 	  $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LDFLAGS) -o $@
+ 
+ 
++install-exec-local:
++	$(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o || touch libstdc++_pic.a
++	$(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir)
++
+ # Added bits to build debug library.
+ if GLIBCXX_BUILD_DEBUG
+ all-local: build_debug
+diff -ur libstdc++-v3/src/Makefile.in libstdc++-v3/src/Makefile.in
+--- libstdc++-v3/src/Makefile.in	2004-07-03 06:41:13.000000000 +0200
++++ libstdc++-v3/src/Makefile.in	2004-07-03 20:25:05.000000000 +0200
+@@ -611,7 +611,7 @@
+ 
+ install-data-am: install-data-local
+ 
+-install-exec-am: install-toolexeclibLTLIBRARIES
++install-exec-am: install-toolexeclibLTLIBRARIES install-exec-local
+ 
+ install-info: install-info-am
+ 
+@@ -644,6 +644,7 @@
+ 	distclean-libtool distclean-tags distdir dvi dvi-am html \
+ 	html-am info info-am install install-am install-data \
+ 	install-data-am install-data-local install-exec \
++	install-exec-local \
+ 	install-exec-am install-info install-info-am install-man \
+ 	install-strip install-toolexeclibLTLIBRARIES installcheck \
+ 	installcheck-am installdirs maintainer-clean \
+@@ -729,6 +730,11 @@
+ install_debug:
+ 	(cd ${debugdir} && $(MAKE) \
+ 	toolexeclibdir=$(glibcxx_toolexeclibdir)/debug install)
++
++install-exec-local:
++	$(AR) cru libstdc++_pic.a .libs/*.o $(top_builddir)/libsupc++/*.o || touch libstdc++_pic.a
++	$(INSTALL_DATA) libstdc++_pic.a $(DESTDIR)$(toolexeclibdir)
++
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/optional_libstdc.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/optional_libstdc.patch
new file mode 100644
index 0000000..f132fbf
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/optional_libstdc.patch
@@ -0,0 +1,84 @@
+gcc-runtime builds libstdc++ separately from gcc-cross-*. Its configure tests using g++ 
+will not run correctly since by default the linker will try to link against libstdc++
+which shouldn't exist yet. We need an option to disable -lstdc++
+option whilst leaving -lc, -lgcc and other automatic library dependencies added by gcc 
+driver. This patch adds such an option which only disables the -lstdc++.
+
+A "standard" gcc build uses xgcc and hence avoids this. We should ask upstream how to 
+do this officially, the likely answer is don't build libstdc++ separately.
+
+RP 29/6/10
+
+Index: gcc-4.6.0/gcc/cp/g++spec.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/cp/g++spec.c
++++ gcc-4.6.0/gcc/cp/g++spec.c
+@@ -127,6 +127,7 @@ lang_specific_driver (struct cl_decoded_
+       switch (decoded_options[i].opt_index)
+ 	{
+ 	case OPT_nostdlib:
++	case OPT_nostdlib__:
+ 	case OPT_nodefaultlibs:
+ 	  library = -1;
+ 	  break;
+Index: gcc-4.6.0/gcc/doc/invoke.texi
+===================================================================
+--- gcc-4.6.0.orig/gcc/doc/invoke.texi
++++ gcc-4.6.0/gcc/doc/invoke.texi
+@@ -193,7 +193,7 @@ in the following sections.
+ -fno-pretty-templates @gol
+ -frepo  -fno-rtti  -fstats  -ftemplate-depth=@var{n} @gol
+ -fno-threadsafe-statics -fuse-cxa-atexit  -fno-weak  -nostdinc++ @gol
+--fno-default-inline  -fvisibility-inlines-hidden @gol
++-nostdlib++ -fno-default-inline  -fvisibility-inlines-hidden @gol
+ -fvisibility-ms-compat @gol
+ -Wabi  -Wconversion-null  -Wctor-dtor-privacy @gol
+ -Wnoexcept -Wnon-virtual-dtor  -Wreorder @gol
+@@ -431,7 +431,7 @@ Objective-C and Objective-C++ Dialects}.
+ @gccoptlist{@var{object-file-name}  -l@var{library} @gol
+ -nostartfiles  -nodefaultlibs  -nostdlib -pie -rdynamic @gol
+ -s  -static  -static-libgcc  -static-libstdc++ -shared  @gol
+--shared-libgcc  -symbolic @gol
++-shared-libgcc  -symbolic -nostdlib++ @gol
+ -T @var{script}  -Wl,@var{option}  -Xlinker @var{option} @gol
+ -u @var{symbol}}
+ 
+@@ -9069,6 +9069,11 @@ These entries are usually resolved by en
+ libc.  These entry points should be supplied through some other
+ mechanism when this option is specified.
+ 
++@item -nostdlib++
++@opindex nostdlib++
++Do not use the standard system C++ runtime libraries when linking.
++Only the libraries you specify will be passed to the linker.
++
+ @cindex @option{-lgcc}, use with @option{-nostdlib}
+ @cindex @option{-nostdlib} and unresolved references
+ @cindex unresolved references and @option{-nostdlib}
+Index: gcc-4.6.0/gcc/c-family/c.opt
+===================================================================
+--- gcc-4.6.0.orig/gcc/c-family/c.opt
++++ gcc-4.6.0/gcc/c-family/c.opt
+@@ -1111,6 +1111,10 @@ nostdinc++
+ C++ ObjC++
+ Do not search standard system include directories for C++
+ 
++nostdlib++
++Driver
++Do not link standard C++ runtime library
++
+ o
+ C ObjC C++ ObjC++ Joined Separate
+ ; Documented in common.opt
+Index: gcc-4.6.0/gcc/gcc.c
+===================================================================
+--- gcc-4.6.0.orig/gcc/gcc.c
++++ gcc-4.6.0/gcc/gcc.c
+@@ -666,6 +666,7 @@ proper position among the other output f
+     %(mflib) " STACK_SPLIT_SPEC "\
+     %{fprofile-arcs|fprofile-generate*|coverage:-lgcov}\
+     %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}}\
++    %{!nostdlib++:}\
+     %{!nostdlib:%{!nostartfiles:%E}} %{T*} }}}}}}"
+ #endif
+ 
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/pr30961.dpatch b/meta/recipes-devtools/gcc/gcc-4.6.0/pr30961.dpatch
new file mode 100644
index 0000000..b20fdf5
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/pr30961.dpatch
@@ -0,0 +1,179 @@
+#! /bin/sh -e
+
+# DP: <your description>
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+From: "H.J. Lu" <hjl@lucon.org>
+Sender: gcc-patches-owner@gcc.gnu.org
+To: gcc-patches@gcc.gnu.org
+Subject: PATCH: PR target/30961: [4.1/4.2/4.3 regression] redundant reg/mem 	stores/moves
+Date: Mon, 27 Aug 2007 11:34:12 -0700
+
+We start with
+
+(note:HI 3 4 22 2 NOTE_INSN_FUNCTION_BEG)
+
+(insn:HI 6 3 10 2 c.c:3 (set (reg:DF 58 [ <result> ])
+        (subreg:DF (reg/v:DI 59 [ in ]) 0)) 102 {*movdf_integer_rex64} (expr_list:REG_DEAD (reg/v:DI 59 [ in ])
+        (nil)))
+
+(insn:HI 10 6 16 2 c.c:7 (set (reg/i:DF 21 xmm0 [ <result> ])
+        (reg:DF 58 [ <result> ])) 102 {*movdf_integer_rex64} (expr_list:REG_DEAD (reg:DF 58 [ <result> ])
+        (nil)))
+
+(insn:HI 16 10 0 2 c.c:7 (use (reg/i:DF 21 xmm0 [ <result> ])) -1 (nil))
+
+we are trying to allocate registers for insn 6 and we allocate
+xmm0 for the return value. Reload doesn't check if xmm0 can be used for
+DF 59, it allocates xmm1 for DF 59 and generates:
+
+Reloads for insn # 6
+Reload 0: reload_in (DF) = (reg:DF 5 di)
+        SSE_REGS, RELOAD_FOR_INPUT (opnum = 1), can't combine
+        reload_in_reg: (subreg:DF (reg/v:DI 5 di [orig:59 in ] [59]) 0)
+        reload_reg_rtx: (reg:DF 22 xmm1)
+...
+
+(note:HI 4 1 3 2 [bb 2] NOTE_INSN_BASIC_BLOCK)
+
+(note:HI 3 4 22 2 NOTE_INSN_FUNCTION_BEG)
+
+(insn 22 3 23 2 c.c:3 (set (mem/c:DF (plus:DI (reg/f:DI 7 sp)
+                (const_int -8 [0xfffffffffffffff8])) [0 S8 A8])
+        (reg:DF 5 di)) 102 {*movdf_integer_rex64} (nil))
+
+(insn 23 22 6 2 c.c:3 (set (reg:DF 22 xmm1)
+        (mem/c:DF (plus:DI (reg/f:DI 7 sp)
+                (const_int -8 [0xfffffffffffffff8])) [0 S8 A8])) 102 {*movdf_integer_rex64} (nil))
+
+(insn:HI 6 23 16 2 c.c:3 (set (reg:DF 21 xmm0 [orig:58 <result> ] [58])
+        (reg:DF 22 xmm1)) 102 {*movdf_integer_rex64} (nil))
+
+(insn 16 6 21 2 c.c:7 (use (reg/i:DF 21 xmm0 [ <result> ])) -1 (nil))
+
+This patch tries to use the destination register when reloading for input. It
+generates
+
+Reloads for insn # 6
+Reload 0: reload_in (DF) = (reg:DF 5 di)
+        SSE_REGS, RELOAD_FOR_INPUT (opnum = 1), can't combine
+        reload_in_reg: (subreg:DF (reg/v:DI 5 di [orig:59 in ] [59]) 0)
+        reload_reg_rtx: (reg:DF 21 xmm0)
+...
+(note:HI 4 1 3 2 [bb 2] NOTE_INSN_BASIC_BLOCK)
+
+(note:HI 3 4 22 2 NOTE_INSN_FUNCTION_BEG)
+
+(insn 22 3 23 2 c.c:3 (set (mem/c:DF (plus:DI (reg/f:DI 7 sp)
+                (const_int -8 [0xfffffffffffffff8])) [0 S8 A8])
+        (reg:DF 5 di)) 102 {*movdf_integer_rex64} (nil))
+
+(insn 23 22 6 2 c.c:3 (set (reg:DF 21 xmm0)
+        (mem/c:DF (plus:DI (reg/f:DI 7 sp)
+                (const_int -8 [0xfffffffffffffff8])) [0 S8 A8])) 102 {*movdf_integer_rex64} (nil))
+
+(insn:HI 6 23 10 2 c.c:3 (set (reg:DF 22 xmm1 [orig:58 <result> ] [58])
+        (reg:DF 21 xmm0)) 102 {*movdf_integer_rex64} (nil))
+
+(insn:HI 10 6 16 2 c.c:7 (set (reg/i:DF 21 xmm0 [ <result> ])
+        (reg:DF 22 xmm1 [orig:58 <result> ] [58])) 102 {*movdf_integer_rex64} (nil))
+
+(insn 16 10 21 2 c.c:7 (use (reg/i:DF 21 xmm0 [ <result> ])) -1 (nil))
+
+
+H.J.
+----
+gcc/
+
+2007-08-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR target/30961
+	* reload1.c (find_reg): Favor the hard register in destination
+	if it is usable and a memory location is needed for reload
+	input.
+
+gcc/testsuite/
+
+2007-08-27  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR target/30961
+	* gcc.target/i386/pr30961-1.c: New.
+
+--- gcc/reload1.c.second	2007-08-27 09:35:08.000000000 -0700
++++ gcc/reload1.c	2007-08-27 09:36:33.000000000 -0700
+@@ -1781,6 +1781,20 @@ find_reg (struct insn_chain *chain, int 
+   HARD_REG_SET not_usable;
+   HARD_REG_SET used_by_other_reload;
+   reg_set_iterator rsi;
++#ifdef SECONDARY_MEMORY_NEEDED
++  rtx body = PATTERN (chain->insn);
++  unsigned int dest_reg = FIRST_PSEUDO_REGISTER;
++
++  if (GET_CODE (body) == SET)
++    {
++      rtx dest = SET_DEST (body);
++
++      if ((REG_P (dest)
++	   || (GET_CODE (dest) == SUBREG
++	       && REG_P (SUBREG_REG (dest)))))
++	dest_reg = reg_or_subregno (dest);
++    }
++#endif
+ 
+   COPY_HARD_REG_SET (not_usable, bad_spill_regs);
+   IOR_HARD_REG_SET (not_usable, bad_spill_regs_global);
+@@ -1821,6 +1835,18 @@ find_reg (struct insn_chain *chain, int 
+ 	    this_cost--;
+ 	  if (rl->out && REG_P (rl->out) && REGNO (rl->out) == regno)
+ 	    this_cost--;
++#ifdef SECONDARY_MEMORY_NEEDED
++	  /* If a memory location is needed for rl->in and dest_reg
++	     is usable, we will favor it.  */
++	  else if (dest_reg == regno
++		   && rl->in
++		   && REG_P (rl->in)
++		   && REGNO (rl->in) < FIRST_PSEUDO_REGISTER
++		   && SECONDARY_MEMORY_NEEDED (REGNO_REG_CLASS (REGNO (rl->in)),
++					       rl->class,
++					       rl->mode))
++	    this_cost = 0;
++#endif
+ 	  if (this_cost < best_cost
+ 	      /* Among registers with equal cost, prefer caller-saved ones, or
+ 		 use REG_ALLOC_ORDER if it is defined.  */
+--- gcc/testsuite/gcc.target/i386/pr30961-1.c.second	2007-08-27 11:01:59.000000000 -0700
++++ gcc/testsuite/gcc.target/i386/pr30961-1.c	2007-08-27 11:02:51.000000000 -0700
+@@ -0,0 +1,13 @@
++/* { dg-do compile } */
++/* { dg-require-effective-target lp64 } */
++/* { dg-options "-O2" } */
++
++double
++convert (long long in)
++{
++  double f;
++  __builtin_memcpy( &f, &in, sizeof( in ) );
++  return f;
++}
++
++/* { dg-final { scan-assembler-not "movapd" } } */
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/pr35942.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/pr35942.patch
new file mode 100644
index 0000000..da610f5
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/pr35942.patch
@@ -0,0 +1,38 @@
+Fix PR 35942: remove -lstdc++ from libtool postdeps for CXX.
+
+libstdc++-v3/ChangeLog:
+2010-01-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+	PR libstdc++/35942
+	* configure.ac: Remove -lstdc++ from libtool's postdeps_CXX.
+	* configure: Regenerate.
+
+
+Index: gcc-4.3.3/libstdc++-v3/configure
+===================================================================
+--- gcc-4.3.3.orig/libstdc++-v3/configure	2010-03-26 17:57:51.000000000 +0000
++++ gcc-4.3.3/libstdc++-v3/configure	2010-03-26 17:57:58.000000000 +0000
+@@ -13759,6 +13759,9 @@
+ 
+ 
+ 
++# Eliminate -lstdc++ addition to postdeps for cross compiles.
++postdeps_CXX=`echo " $postdeps_CXX " | sed 's, -lstdc++ ,,g'`
++
+ # Possibly disable most of the library.
+ ## TODO: Consider skipping unncessary tests altogether in this case, rather
+ ## than just ignoring the results.  Faster /and/ more correct, win win.
+Index: gcc-4.3.3/libstdc++-v3/configure.ac
+===================================================================
+--- gcc-4.3.3.orig/libstdc++-v3/configure.ac	2010-03-26 17:57:54.000000000 +0000
++++ gcc-4.3.3/libstdc++-v3/configure.ac	2010-03-26 17:57:58.000000000 +0000
+@@ -89,6 +89,9 @@
+ AC_SUBST(enable_shared)
+ AC_SUBST(enable_static)
+ 
++# Eliminate -lstdc++ addition to postdeps for cross compiles.
++postdeps_CXX=`echo " $postdeps_CXX " | sed 's, -lstdc++ ,,g'`
++
+ # Possibly disable most of the library.
+ ## TODO: Consider skipping unncessary tests altogether in this case, rather
+ ## than just ignoring the results.  Faster /and/ more correct, win win.
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/zecke-xgcc-cpp.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/zecke-xgcc-cpp.patch
new file mode 100644
index 0000000..b3f02dc
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.6.0/zecke-xgcc-cpp.patch
@@ -0,0 +1,28 @@
+upstream: n/a
+comment: Use the preprocessor we have just compiled instead the one of
+the system. There might be incompabilities between us and them.
+
+Index: gcc-4.6.0/Makefile.in
+===================================================================
+--- gcc-4.6.0.orig/Makefile.in
++++ gcc-4.6.0/Makefile.in
+@@ -270,6 +270,7 @@ BASE_TARGET_EXPORTS = \
+ 	AR="$(AR_FOR_TARGET)"; export AR; \
+ 	AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
+ 	CC="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CC; \
++	CPP="$(CC_FOR_TARGET) -E"; export CPP; \
+ 	CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+ 	CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
+Index: gcc-4.6.0/Makefile.tpl
+===================================================================
+--- gcc-4.6.0.orig/Makefile.tpl
++++ gcc-4.6.0/Makefile.tpl
+@@ -273,6 +273,7 @@ BASE_TARGET_EXPORTS = \
+ 	AR="$(AR_FOR_TARGET)"; export AR; \
+ 	AS="$(COMPILER_AS_FOR_TARGET)"; export AS; \
+ 	CC="$(CC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET) $$TFLAGS"; export CC; \
++	CPP="$(CC_FOR_TARGET) -E"; export CPP; \
+ 	CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+ 	CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+ 	CPPFLAGS="$(CPPFLAGS_FOR_TARGET)"; export CPPFLAGS; \
diff --git a/meta/recipes-devtools/gcc/gcc-cross-initial_4.6.0.bb b/meta/recipes-devtools/gcc/gcc-cross-initial_4.6.0.bb
new file mode 100644
index 0000000..1639511
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-cross-initial_4.6.0.bb
@@ -0,0 +1,2 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-initial.inc
diff --git a/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.6.0.bb b/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.6.0.bb
new file mode 100644
index 0000000..42fd0f0
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-cross-intermediate_4.6.0.bb
@@ -0,0 +1,3 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-intermediate.inc
+
diff --git a/meta/recipes-devtools/gcc/gcc-cross_4.6.0.bb b/meta/recipes-devtools/gcc/gcc-cross_4.6.0.bb
new file mode 100644
index 0000000..97a0c81
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-cross_4.6.0.bb
@@ -0,0 +1,8 @@
+require gcc-${PV}.inc
+require gcc-cross4.inc
+
+EXTRA_OECONF += "--disable-libunwind-exceptions \
+                 --with-mpfr=${STAGING_DIR_NATIVE}${prefix_native} \
+                 --with-system-zlib "
+
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_DIR_TARGET}${target_includedir}"
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.6.0.bb b/meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.6.0.bb
new file mode 100644
index 0000000..9708248
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk-initial_4.6.0.bb
@@ -0,0 +1,4 @@
+require gcc-cross-initial_${PV}.bb
+require gcc-crosssdk-initial.inc
+
+PR = "r4"
diff --git a/meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.6.0.bb b/meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.6.0.bb
new file mode 100644
index 0000000..d235969
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-crosssdk-intermediate_4.6.0.bb
@@ -0,0 +1,4 @@
+require gcc-cross-intermediate_${PV}.bb
+require gcc-crosssdk-intermediate.inc
+
+PR = "r4"
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_4.6.0.bb b/meta/recipes-devtools/gcc/gcc-runtime_4.6.0.bb
new file mode 100644
index 0000000..568b5af
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-runtime_4.6.0.bb
@@ -0,0 +1,10 @@
+require gcc-${PV}.inc
+require gcc-configure-runtime.inc
+require gcc-package-runtime.inc
+
+SRC_URI_append = "file://fortran-cross-compile-hack.patch"
+
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
+
+EXTRA_OECONF += "--disable-libunwind-exceptions"
+EXTRA_OECONF_append_poky-lsb = " --enable-clocale=gnu"
diff --git a/meta/recipes-devtools/gcc/gcc_4.6.0.bb b/meta/recipes-devtools/gcc/gcc_4.6.0.bb
new file mode 100644
index 0000000..bfaec86
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc_4.6.0.bb
@@ -0,0 +1,7 @@
+require gcc-${PV}.inc
+require gcc-configure-target.inc
+require gcc-package-target.inc
+
+SRC_URI_append = "file://fortran-cross-compile-hack.patch"
+
+ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
diff --git a/meta/recipes-devtools/gcc/libgcc_4.6.0.bb b/meta/recipes-devtools/gcc/libgcc_4.6.0.bb
new file mode 100644
index 0000000..b6cf268
--- /dev/null
+++ b/meta/recipes-devtools/gcc/libgcc_4.6.0.bb
@@ -0,0 +1,46 @@
+require gcc-${PV}.inc
+
+PR = "r0"
+
+INHIBIT_DEFAULT_DEPS = "1"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
+
+PACKAGES = "\
+  ${PN} \
+  ${PN}-dev \
+  "
+
+FILES_${PN} = "${base_libdir}/libgcc*.so.*"
+FILES_${PN}-dev = " \
+  ${base_libdir}/libgcc*.so \
+  ${libdir}/${TARGET_SYS}/${BINV}/crt* \
+  ${libdir}/${TARGET_SYS}/${BINV}/libgcc*"
+
+do_fetch[noexec] = "1"
+do_unpack[noexec] = "1"
+do_patch[noexec] = "1"
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+
+do_install () {
+	target=`echo ${MULTIMACH_TARGET_SYS} | sed -e s#-nativesdk##`
+
+	# Install libgcc from our gcc-cross saved data
+	install -d ${D}${base_libdir} ${D}${libdir}
+	cp -fpPR ${STAGING_INCDIR_NATIVE}/gcc-build-internal-$target/* ${D}
+
+	# Move libgcc_s into /lib
+	mkdir -p ${D}${base_libdir}
+	if [ -f ${D}${libdir}/nof/libgcc_s.so ]; then
+		mv ${D}${libdir}/nof/libgcc* ${D}${base_libdir}
+	else
+		mv ${D}${libdir}/libgcc* ${D}${base_libdir} || true
+	fi
+}
+
+do_package_write_ipk[depends] += "virtual/libc:do_package"
+do_package_write_deb[depends] += "virtual/libc:do_package"
+do_package_write_rpm[depends] += "virtual/libc:do_package"
+
+BBCLASSEXTEND = "nativesdk"
+
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 21/33] puzzles: Upgrade to svn r9151 (from r9084)
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (19 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 20/33] gcc: Add recipes for 4.6.0 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 22/33] linux-tools.inc: turn off newt and dwarf for perf Saul Wold
                   ` (11 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Zhai Edwin <edwin.zhai@intel.com>

Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
---
 .../puzzles/files/oh-puzzles-owl-menu.patch        |    5 +++++
 .../puzzles/{puzzles_r9084.bb => puzzles_r9151.bb} |    2 +-
 2 files changed, 6 insertions(+), 1 deletions(-)
 rename meta/recipes-sato/puzzles/{puzzles_r9084.bb => puzzles_r9151.bb} (94%)

diff --git a/meta/recipes-sato/puzzles/files/oh-puzzles-owl-menu.patch b/meta/recipes-sato/puzzles/files/oh-puzzles-owl-menu.patch
index 61da919..7e2c3ab 100644
--- a/meta/recipes-sato/puzzles/files/oh-puzzles-owl-menu.patch
+++ b/meta/recipes-sato/puzzles/files/oh-puzzles-owl-menu.patch
@@ -1,3 +1,8 @@
+This patch enable owl menu, which is hidden in the title bar to save space on
+small screen. It has not been used for a long time, rebase needed.
+
+Upstream-Status: Inappropriate [enable feature]
+
 Index: src/gtk.c
 ===================================================================
 --- src/gtk.c	(revision 22)
diff --git a/meta/recipes-sato/puzzles/puzzles_r9084.bb b/meta/recipes-sato/puzzles/puzzles_r9151.bb
similarity index 94%
rename from meta/recipes-sato/puzzles/puzzles_r9084.bb
rename to meta/recipes-sato/puzzles/puzzles_r9151.bb
index fbd0e37..5cd8bb9 100644
--- a/meta/recipes-sato/puzzles/puzzles_r9084.bb
+++ b/meta/recipes-sato/puzzles/puzzles_r9151.bb
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENCE;md5=9928b60f3b78be315b7ab699c1b03ff5"
 
 SRC_URI = "http://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-${PV}.tar.gz"
 
-# Checksums seem to be changing regularly right now, need to verify with upstream
+# Upstream updates puzzles.tar.gz for the new release, so checksums seem to be changing regularly right now
 #SRC_URI[md5sum] = "e8b4c7e2341264789f3cd6733857bf1c"
 #SRC_URI[sha256sum] = "69f37e497e63b2f7ab44e7bbd50aee078269c16dbc2d78ec1b00257678f2cbd2"
 #SRC_URI = "svn://ixion.tartarus.org/main;module=puzzles;rev=${MOD_PV}"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 22/33] linux-tools.inc: turn off newt and dwarf for perf
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (20 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 21/33] puzzles: Upgrade to svn r9151 (from r9084) Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 23/33] ofono: add bluze to DEPENDS list Saul Wold
                   ` (10 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Tom Zanussi <tom.zanussi@intel.com>

Turn these off for now to avoid the host infection issues for perf.

Fixes yocto [BUGID #994].

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
---
 meta/recipes-kernel/linux/linux-tools.inc |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-kernel/linux/linux-tools.inc b/meta/recipes-kernel/linux/linux-tools.inc
index 2ac74a5..d64c9be 100644
--- a/meta/recipes-kernel/linux/linux-tools.inc
+++ b/meta/recipes-kernel/linux/linux-tools.inc
@@ -2,11 +2,11 @@
 # perf functionality from their tree.
 
 do_compile_perf() {
-	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix}
+	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1
 }
 
 do_install_perf() {
-	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} DESTDIR=${D} install
+	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} DESTDIR=${D} install NO_NEWT=1 NO_DWARF=1
 }
 
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 23/33] ofono: add bluze to DEPENDS list
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (21 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 22/33] linux-tools.inc: turn off newt and dwarf for perf Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22 16:53   ` Khem Raj
  2011-04-22  7:24 ` [PATCH 24/33] pcmciautils: Upgrade 017 -> 018 Saul Wold
                   ` (9 subsequent siblings)
  32 siblings, 1 reply; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Saul Wold <sgw@linux.intel.com>

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-connectivity/ofono/ofono.inc |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-connectivity/ofono/ofono.inc b/meta/recipes-connectivity/ofono/ofono.inc
index 9089670..ee3bc3e 100644
--- a/meta/recipes-connectivity/ofono/ofono.inc
+++ b/meta/recipes-connectivity/ofono/ofono.inc
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
 
 inherit autotools pkgconfig update-rc.d
 
-DEPENDS  = "dbus glib-2.0 udev"
+DEPENDS  = "dbus glib-2.0 udev bluez4"
 
 INITSCRIPT_NAME = "ofono"
 INITSCRIPT_PARAMS = "defaults 22"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 24/33] pcmciautils: Upgrade 017 -> 018
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (22 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 23/33] ofono: add bluze to DEPENDS list Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22 16:54   ` Khem Raj
  2011-04-22  7:24 ` [PATCH 25/33] mpfr: upgrade from 3.0.0 to 3.0.1 Saul Wold
                   ` (8 subsequent siblings)
  32 siblings, 1 reply; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Khem Raj <raj.khem@gmail.com>

version workaround is done in recipe itself
by adding PV to CFLAGS

Since we define LIBC and pcmciutils use it too
which hinders build when we define LIBC in
environment. Its not used in the builds anyway
so we get rid of depending on it

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../pcmciautils-017/version_workaround.patch       |   16 ------
 .../makefile_fix.patch                             |   58 ++++++++++++++++----
 meta/recipes-bsp/pcmciautils/pcmciautils.inc       |    1 +
 meta/recipes-bsp/pcmciautils/pcmciautils_017.bb    |   12 ----
 meta/recipes-bsp/pcmciautils/pcmciautils_018.bb    |   11 ++++
 5 files changed, 59 insertions(+), 39 deletions(-)
 delete mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch
 rename meta/recipes-bsp/pcmciautils/{pcmciautils-017 => pcmciautils-018}/makefile_fix.patch (63%)
 delete mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils_017.bb
 create mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils_018.bb

diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch b/meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch
deleted file mode 100644
index 57efa68..0000000
--- a/meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-PCMCIAUTILS_VERSION is specified on the commandline but doesn't compile properly 
-under arm gcc 3.4.x so we work around it.
-
-Index: pcmciautils-013/src/pccardctl.c
-===================================================================
---- pcmciautils-013.orig/src/pccardctl.c	2006-03-26 11:56:41.000000000 +0100
-+++ pcmciautils-013/src/pccardctl.c	2006-05-09 22:11:09.000000000 +0100
-@@ -350,7 +350,7 @@
- }
- 
- static void print_header(void) {
--	printf("pcmciautils %s\n", PCMCIAUTILS_VERSION);
-+	printf("pcmciautils 017\n");
- 	printf("Copyright (C) 2004-2005 Dominik Brodowski, (C) 1999 David A. Hinds\n");
- 	printf("Report errors and bugs to <linux-pcmcia@lists.infradead.org>, please.\n");
- }
diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils-017/makefile_fix.patch b/meta/recipes-bsp/pcmciautils/pcmciautils-018/makefile_fix.patch
similarity index 63%
rename from meta/recipes-bsp/pcmciautils/pcmciautils-017/makefile_fix.patch
rename to meta/recipes-bsp/pcmciautils/pcmciautils-018/makefile_fix.patch
index 82dbfa8..295c810 100644
--- a/meta/recipes-bsp/pcmciautils/pcmciautils-017/makefile_fix.patch
+++ b/meta/recipes-bsp/pcmciautils/pcmciautils-018/makefile_fix.patch
@@ -1,16 +1,19 @@
-rebase the patch to 017, removing hardcoded path for true
+Hardcoded paths are bad...
+This lets us use the install from OE's native sysroot
+rebase the patch to 018, removing hardcoded path for true
 as well. Removing of -D in install invocation is a little
 questionable, is it some GNU extention?
+Also remove LIBC from makefiles. We do not need it
+since we link against staged libc correctly.
 
-07/14/2010 - qhe, original patch note follows
+-Khem Raj <raj.khem@gmail.com>
 
-Hardcoded paths are bad...
 
-diff --git a/Makefile b/Makefile
-index 26f3e4b..31f0cdf 100644
---- a/Makefile
-+++ b/Makefile
-@@ -69,7 +69,7 @@ sbindir =	${exec_prefix}/sbin
+Index: pcmciautils-018/Makefile
+===================================================================
+--- pcmciautils-018.orig/Makefile
++++ pcmciautils-018/Makefile
+@@ -76,7 +76,7 @@ sbindir =	${exec_prefix}/sbin
  mandir =	${prefix}/usr/share/man
  udevdir =	${prefix}/lib/udev
  
@@ -19,7 +22,7 @@ index 26f3e4b..31f0cdf 100644
  INSTALL_PROGRAM = ${INSTALL}
  INSTALL_DATA  = ${INSTALL} -m 644
  INSTALL_SCRIPT = ${INSTALL_PROGRAM}
-@@ -171,7 +171,7 @@ endif
+@@ -180,7 +180,7 @@ endif
  # if DEBUG is enabled, then we do not strip or optimize
  ifeq ($(strip $(DEBUG)),true)
  	CFLAGS  += -O1 -g -DDEBUG -D_GNU_SOURCE
@@ -28,7 +31,40 @@ index 26f3e4b..31f0cdf 100644
  else
  	CFLAGS  += $(OPTIMIZATION) -fomit-frame-pointer -D_GNU_SOURCE
  	STRIPCMD = $(STRIP) -s --remove-section=.note --remove-section=.comment
-@@ -264,30 +264,32 @@ clean:
+@@ -234,15 +234,15 @@ build/ccdv: build/ccdv.c
+ 	mv y.tab.c $*.c
+ 	mv y.tab.h $*.h
+ 
+-$(PCCARDCTL): $(LIBC) src/$(PCCARDCTL).o src/$(PCCARDCTL).c $(OBJS) $(HEADERS)
++$(PCCARDCTL): src/$(PCCARDCTL).o src/$(PCCARDCTL).c $(OBJS) $(HEADERS)
+ 	$(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) src/$(PCCARDCTL).o $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ 	$(QUIET) $(STRIPCMD) $@
+ 
+-$(PCMCIA_CHECK_BROKEN_CIS): $(LIBC) src/$(PCMCIA_CHECK_BROKEN_CIS).o src/read-cis.o $(OBJS) $(HEADERS)
++$(PCMCIA_CHECK_BROKEN_CIS): src/$(PCMCIA_CHECK_BROKEN_CIS).o src/read-cis.o $(OBJS) $(HEADERS)
+ 	$(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) src/$(PCMCIA_CHECK_BROKEN_CIS).o src/read-cis.o $(LIB_PLAIN_OBJS) $(ARCH_LIB_OBJS)
+ 	$(QUIET) $(STRIPCMD) $@
+ 
+-$(PCMCIA_SOCKET_STARTUP): $(LIBC) src/startup.o src/yacc_config.o src/lex_config.o $(OBJS) $(HEADERS)
++$(PCMCIA_SOCKET_STARTUP): src/startup.o src/yacc_config.o src/lex_config.o $(OBJS) $(HEADERS)
+ 	$(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) src/startup.o src/yacc_config.o src/lex_config.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ 	$(QUIET) $(STRIPCMD) $@
+ 
+@@ -251,11 +251,11 @@ yacc_config.o lex_config.o: %.o: %.c
+ 
+ debugtools: ccdv $(CBDUMP) $(CISDUMP)
+ 
+-$(CBDUMP): $(LIBC) debug/cbdump.o
++$(CBDUMP): debug/cbdump.o
+ 	$(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) debug/$(CBDUMP).o $(LIB_PCI_OBJS) $(ARCH_LIB_OBJS)
+ 	$(QUIET) $(STRIPCMD) $@
+ 
+-$(CISDUMP): $(LIBC) src/read-cis.o debug/parse_cis.o debug/dump_cis.o
++$(CISDUMP): src/read-cis.o debug/parse_cis.o debug/dump_cis.o
+ 	$(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) debug/$(CISDUMP).o src/read-cis.o debug/parse_cis.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
+ 	$(QUIET) $(STRIPCMD) $@
+ 
+@@ -273,30 +273,32 @@ clean:
  
  install-hotplug:
  	$(INSTALL) -d $(DESTDIR)$(hotplugdir)
@@ -68,7 +104,7 @@ index 26f3e4b..31f0cdf 100644
  
  uninstall-tools:
  	- rm -f $(DESTDIR)$(sbindir)/$(PCCARDCTL)
-@@ -296,22 +298,24 @@ uninstall-tools:
+@@ -305,22 +307,24 @@ uninstall-tools:
  
  install-config:
  	$(INSTALL) -d $(DESTDIR)$(pcmciaconfdir)
diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils.inc b/meta/recipes-bsp/pcmciautils/pcmciautils.inc
index 260cccb..410fa5d 100644
--- a/meta/recipes-bsp/pcmciautils/pcmciautils.inc
+++ b/meta/recipes-bsp/pcmciautils/pcmciautils.inc
@@ -22,6 +22,7 @@ export udevrulesdir = "${sysconfdir}/udev/rules.d"
 export UDEV = "1"
 LD = "${CC}"
 CFLAGS =+ "-I${S}/src"
+CFLAGS =+ -DPCMCIAUTILS_VERSION=\'${PV}\'
 
 PARALLEL_MAKE = ""
 EXTRA_OEMAKE = "-e 'STRIP=echo' 'LIB_OBJS=-lc -lsysfs' 'LEX=flex'"
diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils_017.bb b/meta/recipes-bsp/pcmciautils/pcmciautils_017.bb
deleted file mode 100644
index ff67f7b..0000000
--- a/meta/recipes-bsp/pcmciautils/pcmciautils_017.bb
+++ /dev/null
@@ -1,12 +0,0 @@
-require pcmciautils.inc
-
-PR = "r0"
-
-SRC_URI += "file://makefile_fix.patch \
-            file://version_workaround.patch"
-
-SRC_URI[md5sum] = "5245af28eeba57ec0606a874d44d10f7"
-SRC_URI[sha256sum] = "2045f0e8f837f44aed72ac91c1a8cf3b899caf098a25d04f47982be6386bd4e1"
-
-FILES_${PN}-dbg += "${libdir}/udev/.debug"
-FILES_${PN} += "${libdir}/udev"
diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils_018.bb b/meta/recipes-bsp/pcmciautils/pcmciautils_018.bb
new file mode 100644
index 0000000..202437a
--- /dev/null
+++ b/meta/recipes-bsp/pcmciautils/pcmciautils_018.bb
@@ -0,0 +1,11 @@
+require pcmciautils.inc
+
+SRC_URI += "file://makefile_fix.patch"
+
+SRC_URI[md5sum] = "5d85669b3440baa4532363da6caaf1b4"
+SRC_URI[sha256sum] = "79e6ae441278e178c07501d492394ed2c0326fdb66894f6d040ec811b0dc8ed5"
+
+PR = "r0"
+
+FILES_${PN}-dbg += "${libdir}/udev/.debug"
+FILES_${PN} += "${libdir}/udev"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 26/33] python-gst: upgrade from 0.10.19 to 0.10.21
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (24 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 25/33] mpfr: upgrade from 3.0.0 to 3.0.1 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 27/33] git: upgrade from 1.7.3.4 to 1.7.4.3 Saul Wold
                   ` (6 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../python/python-gst/python-path.patch            |    2 ++
 ...python-gst_0.10.19.bb => python-gst_0.10.21.bb} |    6 +++---
 2 files changed, 5 insertions(+), 3 deletions(-)
 rename meta/recipes-devtools/python/{python-gst_0.10.19.bb => python-gst_0.10.21.bb} (82%)

diff --git a/meta/recipes-devtools/python/python-gst/python-path.patch b/meta/recipes-devtools/python/python-gst/python-path.patch
index 00bab2c..21b5bbf 100644
--- a/meta/recipes-devtools/python/python-gst/python-path.patch
+++ b/meta/recipes-devtools/python/python-gst/python-path.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Pending
+
 Index: gst-python-0.10.19/acinclude.m4
 ===================================================================
 --- gst-python-0.10.19.orig/acinclude.m4	2010-04-21 15:23:44.000000000 -0700
diff --git a/meta/recipes-devtools/python/python-gst_0.10.19.bb b/meta/recipes-devtools/python/python-gst_0.10.21.bb
similarity index 82%
rename from meta/recipes-devtools/python/python-gst_0.10.19.bb
rename to meta/recipes-devtools/python/python-gst_0.10.21.bb
index 22d6339..dd1ad5f 100644
--- a/meta/recipes-devtools/python/python-gst_0.10.19.bb
+++ b/meta/recipes-devtools/python/python-gst_0.10.21.bb
@@ -3,13 +3,13 @@ SECTION = "devel/python"
 LICENSE = "LGPLv2.1"
 DEPENDS = "gstreamer gst-plugins-base python-pygobject"
 RDEPENDS_${PN} += "python-pygtk"
-PR = "r1"
+PR = "r0"
 
 SRC_URI = "http://gstreamer.freedesktop.org/src/gst-python/gst-python-${PV}.tar.bz2 \
            file://python-path.patch"
 
-SRC_URI[md5sum] = "ddcef7d00bd88b0591cd6d910c36ec4b"
-SRC_URI[sha256sum] = "956f81a8c15daa3f17e688a0dc5a5d18a3118141066952d3b201a6ac0c52b415"
+SRC_URI[md5sum] = "31340ae3e877797a10d088a226d74b16"
+SRC_URI[sha256sum] = "d5962132c84b88b54d0f63832b8dfcc383a7805827da5abc2d1d215ba86a6f92"
 S = "${WORKDIR}/gst-python-${PV}"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=39ff67e932b7bdfa9b78bad67151690b"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 25/33] mpfr: upgrade from 3.0.0 to 3.0.1
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (23 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 24/33] pcmciautils: Upgrade 017 -> 018 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 26/33] python-gst: upgrade from 0.10.19 to 0.10.21 Saul Wold
                   ` (7 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../mpfr/{mpfr_3.0.0.bb => mpfr_3.0.1.bb}          |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-support/mpfr/{mpfr_3.0.0.bb => mpfr_3.0.1.bb} (70%)

diff --git a/meta/recipes-support/mpfr/mpfr_3.0.0.bb b/meta/recipes-support/mpfr/mpfr_3.0.1.bb
similarity index 70%
rename from meta/recipes-support/mpfr/mpfr_3.0.0.bb
rename to meta/recipes-support/mpfr/mpfr_3.0.1.bb
index 846cdc0..9079e4b 100644
--- a/meta/recipes-support/mpfr/mpfr_3.0.0.bb
+++ b/meta/recipes-support/mpfr/mpfr_3.0.1.bb
@@ -7,8 +7,8 @@ PR = "r0"
 
 SRC_URI = "http://www.mpfr.org/mpfr-${PV}/mpfr-${PV}.tar.bz2"
 
-SRC_URI[md5sum] = "f45bac3584922c8004a10060ab1a8f9f"
-SRC_URI[sha256sum] = "8f4e5f9c53536cb798a30455ac429b1f9fc75a0f8af32d6e0ac31ebf1024821f"
+SRC_URI[md5sum] = "bfbecb2eacb6d48432ead5cfc3f7390a"
+SRC_URI[sha256sum] = "e1977099bb494319c0f0c1f85759050c418a56884e9c6cef1c540b9b13e38e7f"
 S = "${WORKDIR}/mpfr-${PV}"
 
 BBCLASSEXTEND = "native nativesdk"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 27/33] git: upgrade from 1.7.3.4 to 1.7.4.3
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (25 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 26/33] python-gst: upgrade from 0.10.19 to 0.10.21 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22  7:24 ` [PATCH 28/33] python-pycairo: fix installation path of __init__.py Saul Wold
                   ` (5 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/recipes-devtools/git/files/autotools.patch    |    2 ++
 .../git/{git_1.7.3.4.bb => git_1.7.4.3.bb}         |    4 ++--
 2 files changed, 4 insertions(+), 2 deletions(-)
 rename meta/recipes-devtools/git/{git_1.7.3.4.bb => git_1.7.4.3.bb} (59%)

diff --git a/meta/recipes-devtools/git/files/autotools.patch b/meta/recipes-devtools/git/files/autotools.patch
index 1c69c22..cb21193 100644
--- a/meta/recipes-devtools/git/files/autotools.patch
+++ b/meta/recipes-devtools/git/files/autotools.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [configuration]
+
 Index: git-1.7.2.1/configure.ac
 ===================================================================
 --- git-1.7.2.1.orig/configure.ac	2010-07-28 18:03:43.000000000 +0100
diff --git a/meta/recipes-devtools/git/git_1.7.3.4.bb b/meta/recipes-devtools/git/git_1.7.4.3.bb
similarity index 59%
rename from meta/recipes-devtools/git/git_1.7.3.4.bb
rename to meta/recipes-devtools/git/git_1.7.4.3.bb
index 2765ef7..603d2fd 100644
--- a/meta/recipes-devtools/git/git_1.7.3.4.bb
+++ b/meta/recipes-devtools/git/git_1.7.4.3.bb
@@ -6,5 +6,5 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no ac_cv_c_c99_format=yes \
                  ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \
                  "
 
-SRC_URI[md5sum] = "3a2602016f98c529cda7b9fad1a6e216"
-SRC_URI[sha256sum] = "3e5e2b6547ee4aae82b4c5f589ff084996e9e6e0e2b52c92365e6baa1e4a0171"
+SRC_URI[md5sum] = "da6c8f4967393342a4397b955db72cb1"
+SRC_URI[sha256sum] = "44b3ebc87d83b34468718fb6fa424420877e1f66c190389d693d090662a3556d"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (26 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 27/33] git: upgrade from 1.7.3.4 to 1.7.4.3 Saul Wold
@ 2011-04-22  7:24 ` Saul Wold
  2011-04-22 17:16   ` Khem Raj
  2011-04-22  7:25 ` [PATCH 29/33] perl-5.12.2: use of PERLHOSTLIB var fix Saul Wold
                   ` (4 subsequent siblings)
  32 siblings, 1 reply; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:24 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

This fixes Bug [YOCTO #477]

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../python/python-pycairo_1.8.10.bb                |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
index 7d73dc2..24b3ff2 100644
--- a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
+++ b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
@@ -6,7 +6,7 @@ LICENSE = "LGPLv2.1 & MPLv1.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=f2e071ab72978431b294a0d696327421"
 # cairo >= 1.8.8
 DEPENDS = "cairo"
-PR = "ml0"
+PR = "r1"
 
 SRC_URI = "http://cairographics.org/releases/py2cairo-${PV}.tar.gz"
 
@@ -16,6 +16,12 @@ S = "${WORKDIR}/pycairo-${PV}"
 
 inherit distutils pkgconfig
 
+do_compile_prepend() {
+#fix the installation path of __init__.py
+#It was going in the sysroot instead of target install location
+	sed -i -e "s#dsy.get_python_lib()#'${D}${PYTHON_SITEPACKAGES_DIR}'#" ${S}/setup.py
+}
+
 do_install_append () {
 	install -d ${D}${includedir}
 	install -d ${D}${libdir}
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 29/33] perl-5.12.2: use of PERLHOSTLIB var fix
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (27 preceding siblings ...)
  2011-04-22  7:24 ` [PATCH 28/33] python-pycairo: fix installation path of __init__.py Saul Wold
@ 2011-04-22  7:25 ` Saul Wold
  2011-04-22  7:25 ` [PATCH 30/33] cpan.bbclass: export PERLHOSTLIB for perl modules Saul Wold
                   ` (3 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

PERLHOSTLIB var is used to build target perl. It let perl use the native
perl .so module files at the time of compilation of target perl.

These changes to perl make the PERLHOSTLIB variable also useful for
building perl modules to use native .so perl module.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../libperl-5.8.3-create-libperl-soname.patch      |   11 -----------
 .../perl/perl-5.12.2/09_fix_installperl.patch      |    2 ++
 .../Configure-multilib.patch                       |    2 ++
 .../perl/perl-5.12.2/Makefile.SH.patch             |    2 ++
 .../perl/perl-5.12.2/Makefile.patch                |    2 ++
 .../perl/perl-5.12.2/asm-pageh-fix.patch           |    2 ++
 .../perl/perl-5.12.2/cross-generate_uudmap.patch   |    2 ++
 .../perl/perl-5.12.2/debian/arm_optim.diff         |    2 ++
 .../debian/arm_thread_stress_timeout.diff          |    2 ++
 .../perl/perl-5.12.2/debian/cpan_config_path.diff  |    2 ++
 .../perl-5.12.2/debian/cpan_definstalldirs.diff    |    2 ++
 .../perl-5.12.2/debian/cpanplus_config_path.diff   |    2 ++
 .../debian/cpanplus_definstalldirs.diff            |    2 ++
 .../perl/perl-5.12.2/debian/db_file_ver.diff       |    2 ++
 .../perl-5.12.2/debian/deprecate-with-apt.diff     |    2 ++
 .../debian/devel-ppport-ia64-optim.diff            |    2 ++
 .../perl-5.12.2/debian/disable-zlib-bundling.diff  |    2 ++
 .../perl/perl-5.12.2/debian/doc_info.diff          |    2 ++
 .../perl/perl-5.12.2/debian/enc2xs_inc.diff        |    2 ++
 .../perl/perl-5.12.2/debian/errno_ver.diff         |    2 ++
 .../perl/perl-5.12.2/debian/extutils_hacks.diff    |    2 ++
 .../perl/perl-5.12.2/debian/fakeroot.diff          |    2 ++
 .../perl-5.12.2/debian/fixes/autodie-flock.diff    |    2 ++
 .../debian/fixes/concat-stack-corruption.diff      |    2 ++
 .../debian/fixes/cpanplus-without-home.diff        |    2 ++
 .../perl-5.12.2/debian/fixes/h2ph-gcc-4.5.diff     |    2 ++
 .../perl-5.12.2/debian/fixes/hurd-ccflags.diff     |    2 ++
 .../perl-5.12.2/debian/fixes/lc-numeric-docs.diff  |    2 ++
 .../debian/fixes/lc-numeric-sprintf.diff           |    2 ++
 .../perl-5.12.2/debian/fixes/net_smtp_docs.diff    |    2 ++
 .../perl/perl-5.12.2/debian/fixes/processPL.diff   |    2 ++
 .../perl/perl-5.12.2/debian/instmodsh_doc.diff     |    2 ++
 .../perl/perl-5.12.2/debian/ld_run_path.diff       |    2 ++
 .../perl-5.12.2/debian/libnet_config_path.diff     |    2 ++
 .../perl-5.12.2/debian/m68k_thread_stress.diff     |    2 ++
 .../perl/perl-5.12.2/debian/mod_paths.diff         |    2 ++
 .../debian/module_build_man_extensions.diff        |    2 ++
 .../perl/perl-5.12.2/debian/perlivp.diff           |    2 ++
 .../perl/perl-5.12.2/debian/prune_libs.diff        |    2 ++
 .../debian/squelch-locale-warnings.diff            |    2 ++
 .../perl/perl-5.12.2/generate-sh.patch             |    2 ++
 .../perl/perl-5.12.2/installperl.patch             |    2 ++
 .../{files => perl-5.12.2}/letgcc-find-errno.patch |    2 ++
 .../perl/perl-5.12.2/native-nopacklist.patch       |    2 ++
 .../perl/perl-5.12.2/native-perlinc.patch          |    2 ++
 .../perl/perl-5.12.2/native-ssp.patch              |    2 ++
 .../perl/perl-5.12.2/parallel_build_fix_1.patch    |    2 ++
 .../perl/perl-5.12.2/parallel_build_fix_2.patch    |    2 ++
 .../perl/perl-5.12.2/parallel_build_fix_3.patch    |    2 ++
 .../perl/perl-5.12.2/parallel_build_fix_4.patch    |    2 ++
 .../perl/perl-5.12.2/parallel_build_fix_5.patch    |    2 ++
 .../perl/perl-5.12.2/parallel_build_fix_6.patch    |    2 ++
 .../perl/perl-5.12.2/perl-configpm-switch.patch    |    2 ++
 .../perl/perl-5.12.2/perl-dynloader.patch          |   12 ++++++++++--
 .../perl/perl-5.12.2/perl-enable-gdbm.patch        |    2 ++
 .../perl/perl-5.12.2/perl-moreconfig.patch         |    2 ++
 meta/recipes-devtools/perl/perl_5.12.2.bb          |    2 +-
 57 files changed, 119 insertions(+), 14 deletions(-)
 delete mode 100644 meta/recipes-devtools/perl/files/libperl-5.8.3-create-libperl-soname.patch
 rename meta/recipes-devtools/perl/{files => perl-5.12.2}/Configure-multilib.patch (96%)
 rename meta/recipes-devtools/perl/{files => perl-5.12.2}/letgcc-find-errno.patch (96%)

diff --git a/meta/recipes-devtools/perl/files/libperl-5.8.3-create-libperl-soname.patch b/meta/recipes-devtools/perl/files/libperl-5.8.3-create-libperl-soname.patch
deleted file mode 100644
index 6b34ec2..0000000
--- a/meta/recipes-devtools/perl/files/libperl-5.8.3-create-libperl-soname.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- Makefile.SH.orig	2003-07-10 14:59:04.000000000 -0700
-+++ Makefile.SH	2003-07-10 15:14:08.000000000 -0700
-@@ -494,7 +494,7 @@
- 	case "$useshrplib" in
- 	true)
- 		$spitshell >>Makefile <<'!NO!SUBS!'
--	$(LD) -o $@ $(SHRPLDFLAGS) perl$(OBJ_EXT) $(obj) $(libs)
-+	$(LD) -o $@ $(SHRPLDFLAGS) perl$(OBJ_EXT) $(obj) $(libs) -soname libperl.so.5
- !NO!SUBS!
- 		case "$osname" in
- 		aix)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/09_fix_installperl.patch b/meta/recipes-devtools/perl/perl-5.12.2/09_fix_installperl.patch
index 6f2531b..cfe0047 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/09_fix_installperl.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/09_fix_installperl.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Correctly identify arch-specific modules in ext/ where the .pm files
 are under lib.
 
diff --git a/meta/recipes-devtools/perl/files/Configure-multilib.patch b/meta/recipes-devtools/perl/perl-5.12.2/Configure-multilib.patch
similarity index 96%
rename from meta/recipes-devtools/perl/files/Configure-multilib.patch
rename to meta/recipes-devtools/perl/perl-5.12.2/Configure-multilib.patch
index b561b6a..6a4125b 100644
--- a/meta/recipes-devtools/perl/files/Configure-multilib.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/Configure-multilib.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Pending
+
 Index: perl-5.12.2/Configure
 ===================================================================
 --- perl-5.12.2.orig/Configure
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.SH.patch b/meta/recipes-devtools/perl/perl-5.12.2/Makefile.SH.patch
index 39e5fee..72f1b8f 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.SH.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/Makefile.SH.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Index: perl-5.12.2/Makefile.SH
 ===================================================================
 --- perl-5.12.2.orig/Makefile.SH
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.patch b/meta/recipes-devtools/perl/perl-5.12.2/Makefile.patch
index e7226ff..2c374ed 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/Makefile.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Index: perl-5.12.2/Cross/Makefile
 ===================================================================
 --- perl-5.12.2.orig/Cross/Makefile
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/asm-pageh-fix.patch b/meta/recipes-devtools/perl/perl-5.12.2/asm-pageh-fix.patch
index c972108..251beb9 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/asm-pageh-fix.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/asm-pageh-fix.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Pending
+
 Perl inclues asm/page.h in order to get the definition for getpagesize which
 has been definied in unistd.h since glibc 2.1. Some recent version of linux
 libc headers removed the asm/page.h resulting in failures here for some
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/cross-generate_uudmap.patch b/meta/recipes-devtools/perl/perl-5.12.2/cross-generate_uudmap.patch
index f6218c1..d59ad8d 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/cross-generate_uudmap.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/cross-generate_uudmap.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Index: perl-5.10.1/Makefile.SH
 ===================================================================
 --- perl-5.10.1.orig/Makefile.SH	2010-02-12 19:06:17.000000000 +0300
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_optim.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_optim.diff
index 383df6b..c86ddc9 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_optim.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_optim.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Description: Downgrade the optimization of sv.c on arm due to a gcc-4.4 bug
 Bug-Debian: http://bugs.debian.org/580334
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_thread_stress_timeout.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_thread_stress_timeout.diff
index 34b8a2c..c4b4c13 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_thread_stress_timeout.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_thread_stress_timeout.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Raise the timeout of ext/threads/shared/t/stress.t to accommodate slower build hosts
 Bug-Debian: http://bugs.debian.org/501970
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_config_path.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_config_path.diff
index 799d15e..4a349b4 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_config_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_config_path.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Set location of CPAN::Config to /etc/perl as /usr may not be writable.
 
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_definstalldirs.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_definstalldirs.diff
index f64af15..3e3e53f 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_definstalldirs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_definstalldirs.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Provide a sensible INSTALLDIRS default for modules installed from CPAN.
 
 Some modules which are included in core set INSTALLDIRS => 'perl'
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_config_path.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_config_path.diff
index 6956218..6510119 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_config_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_config_path.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Save local versions of CPANPLUS::Config::System into /etc/perl.
     
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_definstalldirs.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_definstalldirs.diff
index 3a1e209..2ec063c 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_definstalldirs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_definstalldirs.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Configure CPANPLUS to use the site directories by default.
 Closes: 533707
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/db_file_ver.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/db_file_ver.diff
index 8d0e61b..a974d08 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/db_file_ver.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/db_file_ver.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Remove overly restrictive DB_File version check.
 Bug-Debian: http://bugs.debian.org/340047
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/deprecate-with-apt.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/deprecate-with-apt.diff
index a515035..e580466 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/deprecate-with-apt.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/deprecate-with-apt.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Point users to Debian packages of deprecated core modules
 Bug-Debian: http://bugs.debian.org/580034
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/devel-ppport-ia64-optim.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/devel-ppport-ia64-optim.diff
index 9e4d9cf..c656010 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/devel-ppport-ia64-optim.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/devel-ppport-ia64-optim.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Work around an ICE on ia64
 Closes: 548943
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/disable-zlib-bundling.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/disable-zlib-bundling.diff
index f540067..e036dc5 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/disable-zlib-bundling.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/disable-zlib-bundling.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Disable zlib bundling in Compress::Raw::Zlib
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/doc_info.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/doc_info.diff
index ec7eba9..2f5d9a4 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/doc_info.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/doc_info.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Replace generic man(1) instructions with Debian-specific information.
 
 Indicate that the user needs to install the perl-doc package.
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/enc2xs_inc.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/enc2xs_inc.diff
index 227dc10..e96d53d 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/enc2xs_inc.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/enc2xs_inc.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Tweak enc2xs to follow symlinks and ignore missing @INC directories.
 Bug-Debian: http://bugs.debian.org/290336
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/errno_ver.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/errno_ver.diff
index f437008..b28b4bc 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/errno_ver.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/errno_ver.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Remove Errno version check due to upgrade problems with long-running processes.
 Bug-Debian: http://bugs.debian.org/343351
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/extutils_hacks.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/extutils_hacks.diff
index 9134cac..1fb635d 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/extutils_hacks.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/extutils_hacks.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Various debian-specific ExtUtils changes
 
  * Respect umask during installation, and set as appropriate for each of
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fakeroot.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fakeroot.diff
index e3430ce..380955b 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fakeroot.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fakeroot.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Postpone LD_LIBRARY_PATH evaluation to the binary targets.
 
 Modify the setting of LD_LIBRARY_PATH to append pre-existing values at the
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/autodie-flock.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/autodie-flock.diff
index f8908ac..1e2c1ad 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/autodie-flock.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/autodie-flock.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Allow for flock returning EAGAIN instead of EWOULDBLOCK on linux/parisc
 Bug-Debian: http://bugs.debian.org/543731
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/concat-stack-corruption.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/concat-stack-corruption.diff
index 6feb840..ef21261 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/concat-stack-corruption.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/concat-stack-corruption.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Fix stack pointer corruption in pp_concat() with 'use encoding'
 Bug-Debian: http://bugs.debian.org/596105
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/cpanplus-without-home.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/cpanplus-without-home.diff
index 5f85894..798b7c2 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/cpanplus-without-home.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/cpanplus-without-home.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Fix CPANPLUS test failures when HOME doesn't exist
 Bug: http://rt.cpan.org/Public/Bug/Display.html?id=52988
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/h2ph-gcc-4.5.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/h2ph-gcc-4.5.diff
index c2baf2f..49d797c 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/h2ph-gcc-4.5.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/h2ph-gcc-4.5.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Author: Robin Barker <rmbarker@cpan.org>
 Subject: h2ph fix for gcc 4.5
 Bug-Debian: http://bugs.debian.org/599933
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/hurd-ccflags.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/hurd-ccflags.diff
index b9ea677..d7b43e9 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/hurd-ccflags.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/hurd-ccflags.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Author: Samuel Thibault <sthibault@debian.org>
 Subject: Make hints/gnu.sh append to $ccflags rather than overriding them
 Bug-Debian: http://bugs.debian.org/587901
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-docs.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-docs.diff
index bb5c0e8..ece4989 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-docs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-docs.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: LC_NUMERIC documentation fixes
 Bug-Debian: http://bugs.debian.org/379329
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-sprintf.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-sprintf.diff
index 6a39820..b150e72 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-sprintf.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-sprintf.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Fix sprintf not to ignore LC_NUMERIC with constants
 Bug-Debian: http://bugs.debian.org/601549
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/net_smtp_docs.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/net_smtp_docs.diff
index 6dc9712..f7b5e42 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/net_smtp_docs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/net_smtp_docs.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Document the Net::SMTP 'Port' option
 Bug-Debian: http://bugs.debian.org/100195
 Bug: http://rt.cpan.org/Public/Bug/Display.html?id=36038
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/processPL.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/processPL.diff
index 5a444e3..3b645d1 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/processPL.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/processPL.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Always use PERLRUNINST when building perl modules.
 Bug-Debian: http://bugs.debian.org/357264
 Bug: http://rt.cpan.org/Public/Bug/Display.html?id=17224
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/instmodsh_doc.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/instmodsh_doc.diff
index 5670863..cfc57fa 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/instmodsh_doc.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/instmodsh_doc.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Debian policy doesn't install .packlist files for core or vendor.
 
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/ld_run_path.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/ld_run_path.diff
index ffcfab9..ced1e8f 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/ld_run_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/ld_run_path.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Remove standard libs from LD_RUN_PATH as per Debian policy.
 
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/libnet_config_path.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/libnet_config_path.diff
index 41bca97..ef0f369 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/libnet_config_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/libnet_config_path.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Set location of libnet.cfg to /etc/perl/Net as /usr may not be writable.
 
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/m68k_thread_stress.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/m68k_thread_stress.diff
index cda6089..d27a677 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/m68k_thread_stress.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/m68k_thread_stress.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Disable some threads tests on m68k for now due to missing TLS.
 Closes: #495826, #517938
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff
index bfa4721..96fe4df 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Tweak @INC ordering for Debian
 
 Our order is:
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/module_build_man_extensions.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/module_build_man_extensions.diff
index 320a90d..bc7fd9e 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/module_build_man_extensions.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/module_build_man_extensions.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Adjust Module::Build manual page extensions for the Debian Perl policy
 Bug-Debian: http://bugs.debian.org/479460
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/perlivp.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/perlivp.diff
index c63c1e8..ebe942c 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/perlivp.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/perlivp.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Make perlivp skip include directories in /usr/local
 Closes: 510895
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/prune_libs.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/prune_libs.diff
index 4d73717..0f49895 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/prune_libs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/prune_libs.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Subject: Prune the list of libraries wanted to what we actually need.
 Bug-Debian: http://bugs.debian.org/128355
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/squelch-locale-warnings.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/squelch-locale-warnings.diff
index 091dec4..68c1a35 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/squelch-locale-warnings.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/squelch-locale-warnings.diff
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 From: Niko Tyni <ntyni@debian.org>
 Subject: Squelch locale warnings in Debian package maintainer scripts
 Bug-Debian: http://bugs.debian.org/508764
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/generate-sh.patch b/meta/recipes-devtools/perl/perl-5.12.2/generate-sh.patch
index ceb7419..47f91c5 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/generate-sh.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/generate-sh.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Use the ld flags from the supplied configuration file. For sh we need the
 flags that specify to build PIC code so that the shared libraries work.
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/installperl.patch b/meta/recipes-devtools/perl/perl-5.12.2/installperl.patch
index d20961c..276eb3d 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/installperl.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/installperl.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Index: perl-5.12.2/installperl
 ===================================================================
 --- perl-5.12.2.orig/installperl
diff --git a/meta/recipes-devtools/perl/files/letgcc-find-errno.patch b/meta/recipes-devtools/perl/perl-5.12.2/letgcc-find-errno.patch
similarity index 96%
rename from meta/recipes-devtools/perl/files/letgcc-find-errno.patch
rename to meta/recipes-devtools/perl/perl-5.12.2/letgcc-find-errno.patch
index 47f972d..268cb53 100644
--- a/meta/recipes-devtools/perl/files/letgcc-find-errno.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/letgcc-find-errno.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 This removes all the logic that perl uses to locate an appropriate
 errno.h for the target. Instead we simple create a file that does
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/native-nopacklist.patch b/meta/recipes-devtools/perl/perl-5.12.2/native-nopacklist.patch
index 92b02d4..8d5b819 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/native-nopacklist.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/native-nopacklist.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [debian patch]
+
 Part of 52_debian_extutils_hacks.patch just to exclude the installation of .packlist files
 
 Index: perl-5.12.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/native-perlinc.patch b/meta/recipes-devtools/perl/perl-5.12.2/native-perlinc.patch
index bf145ba..ffaf326 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/native-perlinc.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/native-perlinc.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Index: perl-5.8.8/lib/ExtUtils/MM_Unix.pm
 ===================================================================
 --- perl-5.12.2.orig/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm	2008-10-31 22:01:35.000000000 +0000
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch b/meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch
index 1c825f5..e1e6f08 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Fix for compiling with ssp enabled gcc:
 See http://bugs.openembedded.net/show_bug.cgi?id=1980
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_1.patch b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_1.patch
index 63e6410..d5a6295 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_1.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_1.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [Backport]
+
 Imported from perl git tree by Nitin A Kamble <nitin.a.kamble@intel.com>
 2011-02-23
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_2.patch b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_2.patch
index 6c536dd..a3432ab 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_2.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_2.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [Backport]
+
 Imported from perl git tree by Nitin A Kamble <nitin.a.kamble@intel.com>
 2011-02-23
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_3.patch b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_3.patch
index a74a45d..26af1f1 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_3.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_3.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [Backport]
+
 Imported from perl git tree by Nitin A Kamble <nitin.a.kamble@intel.com>
 2011-02-23
 
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_4.patch b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_4.patch
index 1a047bc..98bf074 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_4.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_4.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [Backport]
+
 commit 43c0c913165d6abe1bc0cb45a784eb1c32c3700b
 Author: Nicholas Clark <nick@ccl4.org>
 Date:   Mon Feb 14 09:06:42 2011 +0000
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_5.patch b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_5.patch
index abc1922..70f7104 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_5.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_5.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [Backport]
+
 Rebased by Nitin A Kamble <nitin.a.kamble@intel.com> on 3/11/2011
 
 commit 5e4c4c91bd52a48de59520d5e9b4e3478e49c613
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_6.patch b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_6.patch
index 0520c30..cacf9fa 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_6.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_6.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [Backport]
+
 Rebased by Nitin A Kamble <nitin.a.kamble@intel.com> on 3/11/2011
 
 commit 7353f64c5bca6e7102582a1e0017c850930249c3
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-configpm-switch.patch b/meta/recipes-devtools/perl/perl-5.12.2/perl-configpm-switch.patch
index ac519a0..9e9f342 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/perl-configpm-switch.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/perl-configpm-switch.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [native]
+
 This patch is used for perl-native only. It enables the switching of
 configuration files between Config_heavy.pl and
 Config_heavy-target.pl by setting the environment variables
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-dynloader.patch b/meta/recipes-devtools/perl/perl-5.12.2/perl-dynloader.patch
index 061a823..21d8bb9 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/perl-dynloader.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/perl-dynloader.patch
@@ -1,11 +1,15 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Allow the location that .so files are searched for for dynamic
 loading to be changed via an environment variable. This is to allow
 us to load .so's from the host system while building for the target
 system.
 
+Update by Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/21
+
 --- perl-5.12.2/dist/XSLoader/XSLoader_pm.PL	2007/04/20 09:03:08	1.1
 +++ perl-5.12.2/dist/XSLoader/XSLoader_pm.PL	2007/04/20 09:03:08
-@@ -65,6 +65,15 @@
+@@ -65,6 +65,19 @@
  print OUT <<'EOT';
      my $modpname = join('/',@modparts);
      my $modlibname = (caller())[1];
@@ -15,7 +19,11 @@ system.
 +    {
 +        my $hostlib = $ENV{PERLHOSTLIB};
 +        print STDERR "*** Module name IN: $modlibname\n";
-+        $modlibname =~ s#(?<!/)(\.\./)*lib/#$hostlib#g;
++        ($p1, $p2, $p3, $p4, $p5) = $modlibname =~ m/(^(.*lib\/)?)((perl\/[0-9\.]*\/)?)(.*)$/;
++        print STDERR "*** p1: $p1  p3: $p3  p5: $p5\n";
++        if ( $p1 ne "" ) {
++            $modlibname = $hostlib.$p5;
++        }
 +        print STDERR "*** Module name OUT: $modlibname\n";
 +    }
      my $c = @modparts;
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-enable-gdbm.patch b/meta/recipes-devtools/perl/perl-5.12.2/perl-enable-gdbm.patch
index c0874c3..aa83fca 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/perl-enable-gdbm.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/perl-enable-gdbm.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 Index: perl-5.8.8/config_h.SH
 ===================================================================
 --- perl-5.8.8.orig/config_h.SH	2005-11-01 02:13:05.000000000 +0800
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-moreconfig.patch b/meta/recipes-devtools/perl/perl-5.12.2/perl-moreconfig.patch
index 590c725..59ce85a 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/perl-moreconfig.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.2/perl-moreconfig.patch
@@ -1,3 +1,5 @@
+Upstream-Status:Inappropriate [embedded specific]
+
 We need ld in the fake config library, but it's not included by default. So
 expand the number of items included. While this works it indicates that the
 rest of the config items are not being picked up and/or are being picked up
diff --git a/meta/recipes-devtools/perl/perl_5.12.2.bb b/meta/recipes-devtools/perl/perl_5.12.2.bb
index 184e1e7..9ce8156 100644
--- a/meta/recipes-devtools/perl/perl_5.12.2.bb
+++ b/meta/recipes-devtools/perl/perl_5.12.2.bb
@@ -8,7 +8,7 @@ PRIORITY = "optional"
 # We need gnugrep (for -I)
 DEPENDS = "virtual/db perl-native-${PV} grep-native"
 DEPENDS += "gdbm zlib"
-PR = "r3"
+PR = "r4"
 
 # 5.10.1 has Module::Build built-in
 PROVIDES += "libmodule-build-perl"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 30/33] cpan.bbclass: export PERLHOSTLIB for perl modules
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (28 preceding siblings ...)
  2011-04-22  7:25 ` [PATCH 29/33] perl-5.12.2: use of PERLHOSTLIB var fix Saul Wold
@ 2011-04-22  7:25 ` Saul Wold
  2011-04-22  7:25 ` [PATCH 31/33] libxml-parser-perl: upgrade from 2.36 to 2.40 Saul Wold
                   ` (2 subsequent siblings)
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

This makes sure that native perl .so can get loaded at the buildtime, and
avoids following kind of errors while building perl modules:

Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/20

+ perl Makefile.PL
EXPATLIBPATH=/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib
EXPATINCPATH=/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/include
*** Module name IN:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Cwd.pm
*** Module name OUT:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Cwd.pm
*** Module name IN:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
*** Module name OUT:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
Can't load
'/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/auto/Fcntl/Fcntl.so'
for module Fcntl:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/auto/Fcntl/Fcntl.so:
wrong ELF class: ELFCLASS32 at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/XSLoader.pm
line 79.
 at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
line 215
BEGIN failed--compilation aborted at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
line 216.
Compilation failed in require at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/File/Temp.pm
line 146.
BEGIN failed--compilation aborted at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/File/Temp.pm
line 146.
Compilation failed in require at inc/Devel/CheckLib.pm line 12.
BEGIN failed--compilation aborted at inc/Devel/CheckLib.pm line 12.
Compilation failed in require at Makefile.PL line 5.
BEGIN failed--compilation aborted at Makefile.PL line 5.
ERROR: Function 'do_configure' failed (see
/disk0/pokybuild/build0/tmp/work/i586-poky-linux/libxml-parser-perl-2.40-r0/temp/log.do_configure.16956
for further information)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/classes/cpan.bbclass |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/meta/classes/cpan.bbclass b/meta/classes/cpan.bbclass
index 1cfd022..9b8431b 100644
--- a/meta/classes/cpan.bbclass
+++ b/meta/classes/cpan.bbclass
@@ -13,6 +13,7 @@ export PERLCONFIGTARGET = "${@is_target(d)}"
 export PERL_INC = "${STAGING_LIBDIR}/perl/${@get_perl_version(d)}/CORE"
 export PERL_LIB = "${STAGING_LIBDIR}/perl/${@get_perl_version(d)}"
 export PERL_ARCHLIB = "${STAGING_LIBDIR}/perl/${@get_perl_version(d)}"
+export PERLHOSTLIB = "${STAGING_LIBDIR_NATIVE}/perl/${@get_perl_version(d)}/"
 
 cpan_do_configure () {
 	export PERL5LIB="${PERL_ARCHLIB}"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 31/33] libxml-parser-perl: upgrade from 2.36 to 2.40
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (29 preceding siblings ...)
  2011-04-22  7:25 ` [PATCH 30/33] cpan.bbclass: export PERLHOSTLIB for perl modules Saul Wold
@ 2011-04-22  7:25 ` Saul Wold
  2011-04-22  7:25 ` [PATCH 32/33] distro_tracking: recipe information update Saul Wold
  2011-04-22  7:25 ` [PATCH 33/33] qemu-helper-nativesdk: Update LIC_FILE_CHKSUM for renamed helper Saul Wold
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

---
 ...e_2.36.bb => libxml-parser-perl-native_2.40.bb} |    0
 ...ser-perl_2.36.bb => libxml-parser-perl_2.40.bb} |    8 ++++----
 2 files changed, 4 insertions(+), 4 deletions(-)
 rename meta/recipes-devtools/perl/{libxml-parser-perl-native_2.36.bb => libxml-parser-perl-native_2.40.bb} (100%)
 rename meta/recipes-devtools/perl/{libxml-parser-perl_2.36.bb => libxml-parser-perl_2.40.bb} (61%)

diff --git a/meta/recipes-devtools/perl/libxml-parser-perl-native_2.36.bb b/meta/recipes-devtools/perl/libxml-parser-perl-native_2.40.bb
similarity index 100%
rename from meta/recipes-devtools/perl/libxml-parser-perl-native_2.36.bb
rename to meta/recipes-devtools/perl/libxml-parser-perl-native_2.40.bb
diff --git a/meta/recipes-devtools/perl/libxml-parser-perl_2.36.bb b/meta/recipes-devtools/perl/libxml-parser-perl_2.40.bb
similarity index 61%
rename from meta/recipes-devtools/perl/libxml-parser-perl_2.36.bb
rename to meta/recipes-devtools/perl/libxml-parser-perl_2.40.bb
index 3287d26..c2d1bdb 100644
--- a/meta/recipes-devtools/perl/libxml-parser-perl_2.36.bb
+++ b/meta/recipes-devtools/perl/libxml-parser-perl_2.40.bb
@@ -1,14 +1,14 @@
 SECTION = "libs"
 LICENSE = "Artistic"
-LIC_FILES_CHKSUM = "file://README;endline=6;md5=fa7bbbd54d37d6ecf4ef33b7c98b9cd7"
+LIC_FILES_CHKSUM = "file://README;beginline=2;endline=6;md5=c8767d7516229f07b26e42d1cf8b51f1"
 DEPENDS += "expat expat-native"
 
-PR = "r1"
+PR = "r0"
 
 SRC_URI = "http://www.cpan.org/modules/by-module/XML/XML-Parser-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "1b868962b658bd87e1563ecd56498ded"
-SRC_URI[sha256sum] = "9fd529867402456bd826fe0e5588d35b3a2e27e586a2fd838d1352b71c2ed73f"
+SRC_URI[md5sum] = "c66e9adba003d0667cc40115ccd837a5"
+SRC_URI[sha256sum] = "e5e433684e799ef7b6b852c0ca31b71054717628555444d3dc9fceac0df71512"
 
 S = "${WORKDIR}/XML-Parser-${PV}"
 
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 32/33] distro_tracking: recipe information update
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (30 preceding siblings ...)
  2011-04-22  7:25 ` [PATCH 31/33] libxml-parser-perl: upgrade from 2.36 to 2.40 Saul Wold
@ 2011-04-22  7:25 ` Saul Wold
  2011-04-22  7:25 ` [PATCH 33/33] qemu-helper-nativesdk: Update LIC_FILE_CHKSUM for renamed helper Saul Wold
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../conf/distro/include/distro_tracking_fields.inc |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/meta/conf/distro/include/distro_tracking_fields.inc b/meta/conf/distro/include/distro_tracking_fields.inc
index 4598f3c..e7201b0 100644
--- a/meta/conf/distro/include/distro_tracking_fields.inc
+++ b/meta/conf/distro/include/distro_tracking_fields.inc
@@ -91,6 +91,7 @@ RECIPE_MAINTAINER_pn-minicom = "Dongxiao Xu <dongxiao.xu@intel.com>"
 RECIPE_STATUS_pn-patch = "green"
 RECIPE_LATEST_VERIONS_pn-patch = "2.6.1"
 RECIPE_LAST_UPDATE_pn-patch = "Dec 7, 2010"
+RECIPE_MANUAL_CHECK_DATE_pn-patch = "Apr 7, 2011" 
 RECIPE_MAINTAINER_pn-patch = "Nitin A Kamble <nitin.a.kamble@intel.com>"
 
 RECIPE_STATUS_pn-python-imaging = "green"
@@ -2876,11 +2877,13 @@ RECIPE_STATUS_pn-fstests="green"
 RECIPE_LATEST_VERSION_pn-fstests="0.0+svnr426"
 DISTRO_PN_ALIAS_pn-fstests = "OpenedHand"
 RECIPE_LAST_UPDATE_pn-fstests = "Dec 7, 2010"
+RECIPE_MANUAL_CHECK_DATE_pn-fstests = "Apr 7, 2011" 
 RECIPE_MAINTAINER_pn-fstests = "Nitin A Kamble <nitin.a.kamble@intel.com>"
 
 RECIPE_STATUS_pn-gdb="green" 
 RECIPE_LATEST_VERSION_pn-gdb="7.2"
 RECIPE_LAST_UPDATE_pn-gdb = "Nov 8, 2010"
+RECIPE_MANUAL_CHECK_DATE_pn-gdb = "Apr 7, 2011" 
 RECIPE_MAINTAINER_pn-gdb = "Nitin A Kamble <nitin.a.kamble@intel.com>"
 
 RECIPE_STATUS_pn-intltool="green" 
@@ -2914,7 +2917,7 @@ RECIPE_MAINTAINER_pn-postinsts = "Nitin A Kamble <nitin.a.kamble@intel.com>"
 
 RECIPE_STATUS_pn-nasm="green" 
 RECIPE_LATEST_VERSION_pn-nasm="2.07"
-RECIPE_MANUAL_CHECK_DATE_pn-nasm = "Jan 25, 2011" 
+RECIPE_MANUAL_CHECK_DATE_pn-nasm = "Apr 7, 2011" 
 RECIPE_MAINTAINER_pn-nasm = "Nitin A Kamble <nitin.a.kamble@intel.com>"
 
 RECIPE_STATUS_pn-perl="red" # upgrade needed
@@ -3000,7 +3003,7 @@ RECIPE_MAINTAINER_pn-gnu-config = "Nitin A Kamble <nitin.a.kamble@intel.com>"
 
 RECIPE_STATUS_pn-mpfr="green"
 RECIPE_LATEST_VERSION_pn-mpfr="3.0.0"
-RECIPE_MANUAL_CHECK_DATE_pn-mpfr = "Jan 25, 2011" 
+RECIPE_MANUAL_CHECK_DATE_pn-mpfr = "Apr 7, 2011" 
 RECIPE_MAINTAINER_pn-mpfr = "Nitin A Kamble <nitin.a.kamble@intel.com>"
 
 RECIPE_STATUS_pn-gmp="green"
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* [PATCH 33/33] qemu-helper-nativesdk: Update LIC_FILE_CHKSUM for renamed helper
  2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
                   ` (31 preceding siblings ...)
  2011-04-22  7:25 ` [PATCH 32/33] distro_tracking: recipe information update Saul Wold
@ 2011-04-22  7:25 ` Saul Wold
  32 siblings, 0 replies; 47+ messages in thread
From: Saul Wold @ 2011-04-22  7:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: Koen Kooi

From: Saul Wold <sgw@linux.intel.com>

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../qemu/qemu-helper-nativesdk_1.0.bb              |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-devtools/qemu/qemu-helper-nativesdk_1.0.bb b/meta/recipes-devtools/qemu/qemu-helper-nativesdk_1.0.bb
index 15f872b..a3dca3d 100644
--- a/meta/recipes-devtools/qemu/qemu-helper-nativesdk_1.0.bb
+++ b/meta/recipes-devtools/qemu/qemu-helper-nativesdk_1.0.bb
@@ -6,7 +6,7 @@ PR = "r9"
 FILESPATH = "${FILE_DIRNAME}/qemu-helper"
 
 LIC_FILES_CHKSUM = "file://${WORKDIR}/tunctl.c;endline=4;md5=ff3a09996bc5fff6bc5d4e0b4c28f999 \
-                    file://${COREBASE}/scripts/runqemu;endline=18;md5=ce52af3dd295e20ad1d849611b83690b"
+                    file://${COREBASE}/scripts/runqemu;endline=18;md5=77fbe442a88b1bcdc29c3ba67733b21b"
 
 
 SRC_URI = "file://${COREBASE}/scripts/runqemu \
-- 
1.7.1




^ permalink raw reply related	[flat|nested] 47+ messages in thread

* Re: [PATCH 02/33] cdrtools: upgrade to v3.00
  2011-04-22  7:24 ` [PATCH 02/33] cdrtools: upgrade to v3.00 Saul Wold
@ 2011-04-22 10:00   ` Scott Garman
  2011-04-22 10:57     ` Koen Kooi
  0 siblings, 1 reply; 47+ messages in thread
From: Scott Garman @ 2011-04-22 10:00 UTC (permalink / raw)
  To: Saul Wold; +Cc: Koen Kooi, openembedded-core

On 04/22/2011 12:24 AM, Saul Wold wrote:
> From: Scott Garman<scott.a.garman@intel.com>
>
> * Addresses CVE-2003-0655
> * Fixes [YOCTO #976]
>
> Note that the license has changed to the CDDL for most utilities.
>
> Note the following discussion of distribution issues with mixing GPL
> and CDDL licenses:
>
> http://lwn.net/Articles/195167/
>
> This should not impact us at this is a -native recipe only.
>
> Recipe changes derived from OpenEmbedded.
>
> Signed-off-by: Scott Garman<scott.a.garman@intel.com>

Please skip this patch - the CDDL is a weird license and may pose 
problems for us to distribute its sstate-cache.

The problem reported in the CVE is in a particular utility within 
cdrtools that we don't need, so I'm going to resolve the security 
advisory by not packaging that file, and stick with the GPL version we 
were previously using.

Sorry for the confusion.

Scott

-- 
Scott Garman
Embedded Linux Engineer - Yocto Project
Intel Open Source Technology Center



^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 02/33] cdrtools: upgrade to v3.00
  2011-04-22 10:00   ` Scott Garman
@ 2011-04-22 10:57     ` Koen Kooi
  0 siblings, 0 replies; 47+ messages in thread
From: Koen Kooi @ 2011-04-22 10:57 UTC (permalink / raw)
  To: Scott Garman; +Cc: Patches and discussions about the oe-core layer


Op 22 apr 2011, om 12:00 heeft Scott Garman het volgende geschreven:

> On 04/22/2011 12:24 AM, Saul Wold wrote:
>> From: Scott Garman<scott.a.garman@intel.com>
>> 
>> * Addresses CVE-2003-0655
>> * Fixes [YOCTO #976]
>> 
>> Note that the license has changed to the CDDL for most utilities.
>> 
>> Note the following discussion of distribution issues with mixing GPL
>> and CDDL licenses:
>> 
>> http://lwn.net/Articles/195167/
>> 
>> This should not impact us at this is a -native recipe only.
>> 
>> Recipe changes derived from OpenEmbedded.
>> 
>> Signed-off-by: Scott Garman<scott.a.garman@intel.com>
> 
> Please skip this patch - the CDDL is a weird license and may pose problems for us to distribute its sstate-cache.
> 
> The problem reported in the CVE is in a particular utility within cdrtools that we don't need, so I'm going to resolve the security advisory by not packaging that file, and stick with the GPL version we were previously using.

In OE.dev we switched to cdrkit to get rid of the Schilly factor, maybe oe-core can do something similar.

regards,

Koen


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 12/33] util-macros: upgrade from 1.11.0 to 1.13.0
  2011-04-22  7:24 ` [PATCH 12/33] util-macros: upgrade from 1.11.0 to 1.13.0 Saul Wold
@ 2011-04-22 15:27   ` Cui, Dexuan
  0 siblings, 0 replies; 47+ messages in thread
From: Cui, Dexuan @ 2011-04-22 15:27 UTC (permalink / raw)
  To: 'Saul Wold', openembedded-core

Saul Wold wrote:
> From: Dexuan Cui <dexuan.cui@intel.com>
> 
> Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
> ---
>  ...util-macros_1.11.0.bb => util-macros_1.13.0.bb} |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
>  rename meta/recipes-graphics/xorg-util/{util-macros_1.11.0.bb =>
> util-macros_1.13.0.bb} (79%) 
> 
> diff --git a/meta/recipes-graphics/xorg-util/util-macros_1.11.0.bb
> b/meta/recipes-graphics/xorg-util/util-macros_1.13.0.bb similarity
> index 79% 
> rename from meta/recipes-graphics/xorg-util/util-macros_1.11.0.bb
> rename to meta/recipes-graphics/xorg-util/util-macros_1.13.0.bb
> index 765a577..a708ed0 100644
> --- a/meta/recipes-graphics/xorg-util/util-macros_1.11.0.bb
> +++ b/meta/recipes-graphics/xorg-util/util-macros_1.13.0.bb
> @@ -20,5 +20,5 @@ RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPV})"
> 
>  BBCLASSEXTEND = "native nativesdk"
> 
> -SRC_URI[md5sum] = "8580021f3a9e242ab09d23d62e475d53"
> -SRC_URI[sha256sum] =
> "212c3d14474d7cffdbc22437d4896211a5dce6b99b02b96229c9be7d963c90cf"
> +SRC_URI[md5sum] = "31e9ddcbc1d8bc8c09ab180443974dd1"
> +SRC_URI[sha256sum] =
> "7bff944fb120192e7fe1706e9c0b7e41666e7983ce3e2bdef0b7734392d9e695"  

Hi Saul,
As you reminded me before,   the file xaw.patch is not needed now since no recipe uses it.
I made a new commit for the upgrading of util-macros:
http://git.pokylinux.org/cgit/cgit.cgi/poky-contrib/commit/?h=dcui/master_util_macros&id=3cfb9f508b11c4a33aace97d306956f36b137992

Please use this new commit (the commit is in a new branch dcui/master_util_macros)

Thanks!

-- Dexuan


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 23/33] ofono: add bluze to DEPENDS list
  2011-04-22  7:24 ` [PATCH 23/33] ofono: add bluze to DEPENDS list Saul Wold
@ 2011-04-22 16:53   ` Khem Raj
  0 siblings, 0 replies; 47+ messages in thread
From: Khem Raj @ 2011-04-22 16:53 UTC (permalink / raw)
  To: Saul Wold; +Cc: Koen Kooi, openembedded-core

On Fri, Apr 22, 2011 at 12:24 AM, Saul Wold <sgw@linux.intel.com> wrote:
> From: Saul Wold <sgw@linux.intel.com>
>
> Signed-off-by: Saul Wold <sgw@linux.intel.com>

there is a typo in commit message

> ---
>  meta/recipes-connectivity/ofono/ofono.inc |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/meta/recipes-connectivity/ofono/ofono.inc b/meta/recipes-connectivity/ofono/ofono.inc
> index 9089670..ee3bc3e 100644
> --- a/meta/recipes-connectivity/ofono/ofono.inc
> +++ b/meta/recipes-connectivity/ofono/ofono.inc
> @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
>
>  inherit autotools pkgconfig update-rc.d
>
> -DEPENDS  = "dbus glib-2.0 udev"
> +DEPENDS  = "dbus glib-2.0 udev bluez4"
>
>  INITSCRIPT_NAME = "ofono"
>  INITSCRIPT_PARAMS = "defaults 22"
> --
> 1.7.1
>
>



^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 24/33] pcmciautils: Upgrade 017 -> 018
  2011-04-22  7:24 ` [PATCH 24/33] pcmciautils: Upgrade 017 -> 018 Saul Wold
@ 2011-04-22 16:54   ` Khem Raj
  0 siblings, 0 replies; 47+ messages in thread
From: Khem Raj @ 2011-04-22 16:54 UTC (permalink / raw)
  To: Saul Wold; +Cc: Koen Kooi, openembedded-core

On Fri, Apr 22, 2011 at 12:24 AM, Saul Wold <sgw@linux.intel.com> wrote:
> From: Khem Raj <raj.khem@gmail.com>
>
> version workaround is done in recipe itself
> by adding PV to CFLAGS
>
> Since we define LIBC and pcmciutils use it too
> which hinders build when we define LIBC in
> environment. Its not used in the builds anyway
> so we get rid of depending on it
>
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  .../pcmciautils-017/version_workaround.patch       |   16 ------
>  .../makefile_fix.patch                             |   58 ++++++++++++++++----
>  meta/recipes-bsp/pcmciautils/pcmciautils.inc       |    1 +
>  meta/recipes-bsp/pcmciautils/pcmciautils_017.bb    |   12 ----
>  meta/recipes-bsp/pcmciautils/pcmciautils_018.bb    |   11 ++++
>  5 files changed, 59 insertions(+), 39 deletions(-)
>  delete mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch
>  rename meta/recipes-bsp/pcmciautils/{pcmciautils-017 => pcmciautils-018}/makefile_fix.patch (63%)
>  delete mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils_017.bb
>  create mode 100644 meta/recipes-bsp/pcmciautils/pcmciautils_018.bb
>
> diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch b/meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch
> deleted file mode 100644
> index 57efa68..0000000
> --- a/meta/recipes-bsp/pcmciautils/pcmciautils-017/version_workaround.patch
> +++ /dev/null
> @@ -1,16 +0,0 @@
> -PCMCIAUTILS_VERSION is specified on the commandline but doesn't compile properly
> -under arm gcc 3.4.x so we work around it.
> -
> -Index: pcmciautils-013/src/pccardctl.c
> -===================================================================
> ---- pcmciautils-013.orig/src/pccardctl.c       2006-03-26 11:56:41.000000000 +0100
> -+++ pcmciautils-013/src/pccardctl.c    2006-05-09 22:11:09.000000000 +0100
> -@@ -350,7 +350,7 @@
> - }
> -
> - static void print_header(void) {
> --      printf("pcmciautils %s\n", PCMCIAUTILS_VERSION);
> -+      printf("pcmciautils 017\n");
> -       printf("Copyright (C) 2004-2005 Dominik Brodowski, (C) 1999 David A. Hinds\n");
> -       printf("Report errors and bugs to <linux-pcmcia@lists.infradead.org>, please.\n");
> - }
> diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils-017/makefile_fix.patch b/meta/recipes-bsp/pcmciautils/pcmciautils-018/makefile_fix.patch
> similarity index 63%
> rename from meta/recipes-bsp/pcmciautils/pcmciautils-017/makefile_fix.patch
> rename to meta/recipes-bsp/pcmciautils/pcmciautils-018/makefile_fix.patch
> index 82dbfa8..295c810 100644
> --- a/meta/recipes-bsp/pcmciautils/pcmciautils-017/makefile_fix.patch
> +++ b/meta/recipes-bsp/pcmciautils/pcmciautils-018/makefile_fix.patch
> @@ -1,16 +1,19 @@
> -rebase the patch to 017, removing hardcoded path for true
> +Hardcoded paths are bad...
> +This lets us use the install from OE's native sysroot
> +rebase the patch to 018, removing hardcoded path for true
>  as well. Removing of -D in install invocation is a little
>  questionable, is it some GNU extention?
> +Also remove LIBC from makefiles. We do not need it
> +since we link against staged libc correctly.
>

the above two lines are no longer valid. They should be removed
I have latest patch with this corrected in the branch I published for pull

> -07/14/2010 - qhe, original patch note follows
> +-Khem Raj <raj.khem@gmail.com>
>
> -Hardcoded paths are bad...
>
> -diff --git a/Makefile b/Makefile
> -index 26f3e4b..31f0cdf 100644
> ---- a/Makefile
> -+++ b/Makefile
> -@@ -69,7 +69,7 @@ sbindir =    ${exec_prefix}/sbin
> +Index: pcmciautils-018/Makefile
> +===================================================================
> +--- pcmciautils-018.orig/Makefile
> ++++ pcmciautils-018/Makefile
> +@@ -76,7 +76,7 @@ sbindir =    ${exec_prefix}/sbin
>  mandir =      ${prefix}/usr/share/man
>  udevdir =     ${prefix}/lib/udev
>
> @@ -19,7 +22,7 @@ index 26f3e4b..31f0cdf 100644
>  INSTALL_PROGRAM = ${INSTALL}
>  INSTALL_DATA  = ${INSTALL} -m 644
>  INSTALL_SCRIPT = ${INSTALL_PROGRAM}
> -@@ -171,7 +171,7 @@ endif
> +@@ -180,7 +180,7 @@ endif
>  # if DEBUG is enabled, then we do not strip or optimize
>  ifeq ($(strip $(DEBUG)),true)
>        CFLAGS  += -O1 -g -DDEBUG -D_GNU_SOURCE
> @@ -28,7 +31,40 @@ index 26f3e4b..31f0cdf 100644
>  else
>        CFLAGS  += $(OPTIMIZATION) -fomit-frame-pointer -D_GNU_SOURCE
>        STRIPCMD = $(STRIP) -s --remove-section=.note --remove-section=.comment
> -@@ -264,30 +264,32 @@ clean:
> +@@ -234,15 +234,15 @@ build/ccdv: build/ccdv.c
> +       mv y.tab.c $*.c
> +       mv y.tab.h $*.h
> +
> +-$(PCCARDCTL): $(LIBC) src/$(PCCARDCTL).o src/$(PCCARDCTL).c $(OBJS) $(HEADERS)
> ++$(PCCARDCTL): src/$(PCCARDCTL).o src/$(PCCARDCTL).c $(OBJS) $(HEADERS)
> +       $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) src/$(PCCARDCTL).o $(LIB_OBJS) $(ARCH_LIB_OBJS)
> +       $(QUIET) $(STRIPCMD) $@
> +
> +-$(PCMCIA_CHECK_BROKEN_CIS): $(LIBC) src/$(PCMCIA_CHECK_BROKEN_CIS).o src/read-cis.o $(OBJS) $(HEADERS)
> ++$(PCMCIA_CHECK_BROKEN_CIS): src/$(PCMCIA_CHECK_BROKEN_CIS).o src/read-cis.o $(OBJS) $(HEADERS)
> +       $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) src/$(PCMCIA_CHECK_BROKEN_CIS).o src/read-cis.o $(LIB_PLAIN_OBJS) $(ARCH_LIB_OBJS)
> +       $(QUIET) $(STRIPCMD) $@
> +
> +-$(PCMCIA_SOCKET_STARTUP): $(LIBC) src/startup.o src/yacc_config.o src/lex_config.o $(OBJS) $(HEADERS)
> ++$(PCMCIA_SOCKET_STARTUP): src/startup.o src/yacc_config.o src/lex_config.o $(OBJS) $(HEADERS)
> +       $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) src/startup.o src/yacc_config.o src/lex_config.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
> +       $(QUIET) $(STRIPCMD) $@
> +
> +@@ -251,11 +251,11 @@ yacc_config.o lex_config.o: %.o: %.c
> +
> + debugtools: ccdv $(CBDUMP) $(CISDUMP)
> +
> +-$(CBDUMP): $(LIBC) debug/cbdump.o
> ++$(CBDUMP): debug/cbdump.o
> +       $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) debug/$(CBDUMP).o $(LIB_PCI_OBJS) $(ARCH_LIB_OBJS)
> +       $(QUIET) $(STRIPCMD) $@
> +
> +-$(CISDUMP): $(LIBC) src/read-cis.o debug/parse_cis.o debug/dump_cis.o
> ++$(CISDUMP): src/read-cis.o debug/parse_cis.o debug/dump_cis.o
> +       $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) debug/$(CISDUMP).o src/read-cis.o debug/parse_cis.o $(LIB_OBJS) $(ARCH_LIB_OBJS)
> +       $(QUIET) $(STRIPCMD) $@
> +
> +@@ -273,30 +273,32 @@ clean:
>
>  install-hotplug:
>        $(INSTALL) -d $(DESTDIR)$(hotplugdir)
> @@ -68,7 +104,7 @@ index 26f3e4b..31f0cdf 100644
>
>  uninstall-tools:
>        - rm -f $(DESTDIR)$(sbindir)/$(PCCARDCTL)
> -@@ -296,22 +298,24 @@ uninstall-tools:
> +@@ -305,22 +307,24 @@ uninstall-tools:
>
>  install-config:
>        $(INSTALL) -d $(DESTDIR)$(pcmciaconfdir)
> diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils.inc b/meta/recipes-bsp/pcmciautils/pcmciautils.inc
> index 260cccb..410fa5d 100644
> --- a/meta/recipes-bsp/pcmciautils/pcmciautils.inc
> +++ b/meta/recipes-bsp/pcmciautils/pcmciautils.inc
> @@ -22,6 +22,7 @@ export udevrulesdir = "${sysconfdir}/udev/rules.d"
>  export UDEV = "1"
>  LD = "${CC}"
>  CFLAGS =+ "-I${S}/src"
> +CFLAGS =+ -DPCMCIAUTILS_VERSION=\'${PV}\'
>
>  PARALLEL_MAKE = ""
>  EXTRA_OEMAKE = "-e 'STRIP=echo' 'LIB_OBJS=-lc -lsysfs' 'LEX=flex'"
> diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils_017.bb b/meta/recipes-bsp/pcmciautils/pcmciautils_017.bb
> deleted file mode 100644
> index ff67f7b..0000000
> --- a/meta/recipes-bsp/pcmciautils/pcmciautils_017.bb
> +++ /dev/null
> @@ -1,12 +0,0 @@
> -require pcmciautils.inc
> -
> -PR = "r0"
> -
> -SRC_URI += "file://makefile_fix.patch \
> -            file://version_workaround.patch"
> -
> -SRC_URI[md5sum] = "5245af28eeba57ec0606a874d44d10f7"
> -SRC_URI[sha256sum] = "2045f0e8f837f44aed72ac91c1a8cf3b899caf098a25d04f47982be6386bd4e1"
> -
> -FILES_${PN}-dbg += "${libdir}/udev/.debug"
> -FILES_${PN} += "${libdir}/udev"
> diff --git a/meta/recipes-bsp/pcmciautils/pcmciautils_018.bb b/meta/recipes-bsp/pcmciautils/pcmciautils_018.bb
> new file mode 100644
> index 0000000..202437a
> --- /dev/null
> +++ b/meta/recipes-bsp/pcmciautils/pcmciautils_018.bb
> @@ -0,0 +1,11 @@
> +require pcmciautils.inc
> +
> +SRC_URI += "file://makefile_fix.patch"
> +
> +SRC_URI[md5sum] = "5d85669b3440baa4532363da6caaf1b4"
> +SRC_URI[sha256sum] = "79e6ae441278e178c07501d492394ed2c0326fdb66894f6d040ec811b0dc8ed5"
> +
> +PR = "r0"
> +
> +FILES_${PN}-dbg += "${libdir}/udev/.debug"
> +FILES_${PN} += "${libdir}/udev"
> --
> 1.7.1
>
>



^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22  7:24 ` [PATCH 28/33] python-pycairo: fix installation path of __init__.py Saul Wold
@ 2011-04-22 17:16   ` Khem Raj
  2011-04-22 17:25     ` Koen Kooi
  2011-04-22 22:28     ` Kamble, Nitin A
  0 siblings, 2 replies; 47+ messages in thread
From: Khem Raj @ 2011-04-22 17:16 UTC (permalink / raw)
  To: Saul Wold; +Cc: Koen Kooi, openembedded-core

On Fri, Apr 22, 2011 at 12:24 AM, Saul Wold <sgw@linux.intel.com> wrote:
> From: Nitin A Kamble <nitin.a.kamble@intel.com>
>
> This fixes Bug [YOCTO #477]
>
> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
> ---
>  .../python/python-pycairo_1.8.10.bb                |    8 +++++++-
>  1 files changed, 7 insertions(+), 1 deletions(-)
>
> diff --git a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
> index 7d73dc2..24b3ff2 100644
> --- a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
> +++ b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
> @@ -6,7 +6,7 @@ LICENSE = "LGPLv2.1 & MPLv1.1"
>  LIC_FILES_CHKSUM = "file://COPYING;md5=f2e071ab72978431b294a0d696327421"
>  # cairo >= 1.8.8
>  DEPENDS = "cairo"
> -PR = "ml0"
> +PR = "r1"

any reason not to use mlX
>
>  SRC_URI = "http://cairographics.org/releases/py2cairo-${PV}.tar.gz"
>
> @@ -16,6 +16,12 @@ S = "${WORKDIR}/pycairo-${PV}"
>
>  inherit distutils pkgconfig
>
> +do_compile_prepend() {
> +#fix the installation path of __init__.py
> +#It was going in the sysroot instead of target install location
> +       sed -i -e "s#dsy.get_python_lib()#'${D}${PYTHON_SITEPACKAGES_DIR}'#" ${S}/setup.py
> +}
> +
>  do_install_append () {
>        install -d ${D}${includedir}
>        install -d ${D}${libdir}
> --
> 1.7.1
>
>



^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22 17:16   ` Khem Raj
@ 2011-04-22 17:25     ` Koen Kooi
  2011-04-22 17:27       ` Khem Raj
  2011-04-22 22:28     ` Kamble, Nitin A
  1 sibling, 1 reply; 47+ messages in thread
From: Koen Kooi @ 2011-04-22 17:25 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer


Op 22 apr 2011, om 19:16 heeft Khem Raj het volgende geschreven:

> On Fri, Apr 22, 2011 at 12:24 AM, Saul Wold <sgw@linux.intel.com> wrote:
>> From: Nitin A Kamble <nitin.a.kamble@intel.com>
>> 
>> This fixes Bug [YOCTO #477]
>> 
>> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
>> ---
>>  .../python/python-pycairo_1.8.10.bb                |    8 +++++++-
>>  1 files changed, 7 insertions(+), 1 deletions(-)
>> 
>> diff --git a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>> index 7d73dc2..24b3ff2 100644
>> --- a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>> +++ b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>> @@ -6,7 +6,7 @@ LICENSE = "LGPLv2.1 & MPLv1.1"
>>  LIC_FILES_CHKSUM = "file://COPYING;md5=f2e071ab72978431b294a0d696327421"
>>  # cairo >= 1.8.8
>>  DEPENDS = "cairo"
>> -PR = "ml0"
>> +PR = "r1"
> 
> any reason not to use mlX

Because rX is a standard and mlX isn't


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22 17:25     ` Koen Kooi
@ 2011-04-22 17:27       ` Khem Raj
  2011-04-22 17:32         ` Graeme Gregory
  0 siblings, 1 reply; 47+ messages in thread
From: Khem Raj @ 2011-04-22 17:27 UTC (permalink / raw)
  To: Koen Kooi; +Cc: Patches and discussions about the oe-core layer

On Fri, Apr 22, 2011 at 10:25 AM, Koen Kooi <koen@dominion.thruhere.net> wrote:
>
> Op 22 apr 2011, om 19:16 heeft Khem Raj het volgende geschreven:
>
>> On Fri, Apr 22, 2011 at 12:24 AM, Saul Wold <sgw@linux.intel.com> wrote:
>>> From: Nitin A Kamble <nitin.a.kamble@intel.com>
>>>
>>> This fixes Bug [YOCTO #477]
>>>
>>> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
>>> ---
>>>  .../python/python-pycairo_1.8.10.bb                |    8 +++++++-
>>>  1 files changed, 7 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>>> index 7d73dc2..24b3ff2 100644
>>> --- a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>>> +++ b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>>> @@ -6,7 +6,7 @@ LICENSE = "LGPLv2.1 & MPLv1.1"
>>>  LIC_FILES_CHKSUM = "file://COPYING;md5=f2e071ab72978431b294a0d696327421"
>>>  # cairo >= 1.8.8
>>>  DEPENDS = "cairo"
>>> -PR = "ml0"
>>> +PR = "r1"
>>
>> any reason not to use mlX
>
> Because rX is a standard and mlX isn't

why did we use ml to start with then ?



^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22 17:27       ` Khem Raj
@ 2011-04-22 17:32         ` Graeme Gregory
  2011-04-22 23:51           ` Khem Raj
  0 siblings, 1 reply; 47+ messages in thread
From: Graeme Gregory @ 2011-04-22 17:32 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Fri, Apr 22, 2011 at 10:27:31AM -0700, Khem Raj wrote:
> On Fri, Apr 22, 2011 at 10:25 AM, Koen Kooi <koen@dominion.thruhere.net> wrote:
> >
> > Op 22 apr 2011, om 19:16 heeft Khem Raj het volgende geschreven:
> >
> >> On Fri, Apr 22, 2011 at 12:24 AM, Saul Wold <sgw@linux.intel.com> wrote:
> >>> From: Nitin A Kamble <nitin.a.kamble@intel.com>
> >>>
> >>> This fixes Bug [YOCTO #477]
> >>>
> >>> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
> >>> ---
> >>>  .../python/python-pycairo_1.8.10.bb                |    8 +++++++-
> >>>  1 files changed, 7 insertions(+), 1 deletions(-)
> >>>
> >>> diff --git a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
> >>> index 7d73dc2..24b3ff2 100644
> >>> --- a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
> >>> +++ b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
> >>> @@ -6,7 +6,7 @@ LICENSE = "LGPLv2.1 & MPLv1.1"
> >>>  LIC_FILES_CHKSUM = "file://COPYING;md5=f2e071ab72978431b294a0d696327421"
> >>>  # cairo >= 1.8.8
> >>>  DEPENDS = "cairo"
> >>> -PR = "ml0"
> >>> +PR = "r1"
> >>
> >> any reason not to use mlX
> >
> > Because rX is a standard and mlX isn't
> 
> why did we use ml to start with then ?
> 
Its mickeys initials.

G




^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22 17:16   ` Khem Raj
  2011-04-22 17:25     ` Koen Kooi
@ 2011-04-22 22:28     ` Kamble, Nitin A
  2011-04-22 23:53       ` Khem Raj
  1 sibling, 1 reply; 47+ messages in thread
From: Kamble, Nitin A @ 2011-04-22 22:28 UTC (permalink / raw)
  To: Khem Raj, Saul Wold; +Cc: Koen Kooi, openembedded-core

> >  # cairo >= 1.8.8
> >  DEPENDS = "cairo"
> > -PR = "ml0"
> > +PR = "r1"
> 
> any reason not to use mlX

The r1 kind of notation makes it consistent with rest of the recipes.

Thanks,
Nitin


^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22 17:32         ` Graeme Gregory
@ 2011-04-22 23:51           ` Khem Raj
  0 siblings, 0 replies; 47+ messages in thread
From: Khem Raj @ 2011-04-22 23:51 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Fri, Apr 22, 2011 at 10:32 AM, Graeme Gregory <dp@xora.org.uk> wrote:
> On Fri, Apr 22, 2011 at 10:27:31AM -0700, Khem Raj wrote:
>> On Fri, Apr 22, 2011 at 10:25 AM, Koen Kooi <koen@dominion.thruhere.net> wrote:
>> >
>> > Op 22 apr 2011, om 19:16 heeft Khem Raj het volgende geschreven:
>> >
>> >> On Fri, Apr 22, 2011 at 12:24 AM, Saul Wold <sgw@linux.intel.com> wrote:
>> >>> From: Nitin A Kamble <nitin.a.kamble@intel.com>
>> >>>
>> >>> This fixes Bug [YOCTO #477]
>> >>>
>> >>> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
>> >>> ---
>> >>>  .../python/python-pycairo_1.8.10.bb                |    8 +++++++-
>> >>>  1 files changed, 7 insertions(+), 1 deletions(-)
>> >>>
>> >>> diff --git a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>> >>> index 7d73dc2..24b3ff2 100644
>> >>> --- a/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>> >>> +++ b/meta/recipes-devtools/python/python-pycairo_1.8.10.bb
>> >>> @@ -6,7 +6,7 @@ LICENSE = "LGPLv2.1 & MPLv1.1"
>> >>>  LIC_FILES_CHKSUM = "file://COPYING;md5=f2e071ab72978431b294a0d696327421"
>> >>>  # cairo >= 1.8.8
>> >>>  DEPENDS = "cairo"
>> >>> -PR = "ml0"
>> >>> +PR = "r1"
>> >>
>> >> any reason not to use mlX
>> >
>> > Because rX is a standard and mlX isn't
>>
>> why did we use ml to start with then ?
>>
> Its mickeys initials.

heh

>
> G
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>



^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22 22:28     ` Kamble, Nitin A
@ 2011-04-22 23:53       ` Khem Raj
  2011-04-23 10:44         ` Michael 'Mickey' Lauer
  0 siblings, 1 reply; 47+ messages in thread
From: Khem Raj @ 2011-04-22 23:53 UTC (permalink / raw)
  To: Kamble, Nitin A; +Cc: Koen Kooi, openembedded-core

On Fri, Apr 22, 2011 at 3:28 PM, Kamble, Nitin A
<nitin.a.kamble@intel.com> wrote:
>> >  # cairo >= 1.8.8
>> >  DEPENDS = "cairo"
>> > -PR = "ml0"
>> > +PR = "r1"
>>
>> any reason not to use mlX
>
> The r1 kind of notation makes it consistent with rest of the recipes.


It does, I was just curious about 'ml'
>
> Thanks,
> Nitin
>
>



^ permalink raw reply	[flat|nested] 47+ messages in thread

* Re: [PATCH 28/33] python-pycairo: fix installation path of __init__.py
  2011-04-22 23:53       ` Khem Raj
@ 2011-04-23 10:44         ` Michael 'Mickey' Lauer
  0 siblings, 0 replies; 47+ messages in thread
From: Michael 'Mickey' Lauer @ 2011-04-23 10:44 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

Feel free to get rid of the ml revision numbers, when you bump
any versions. The reason for that is historic and goes way back
to when I added Python to OpenZaurus, subsequently to OpenEmbedded,
and had to provide upgrade paths for precompiled feeds.

Nowadays the ml suffix has only sentimental value, so feel free
to kill it off where you see fit.

Cheers,

--
:M:

Dr. Michael Lauer
President, OpenEmbedded e.V.





^ permalink raw reply	[flat|nested] 47+ messages in thread

end of thread, other threads:[~2011-04-23 10:54 UTC | newest]

Thread overview: 47+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-22  7:24 [PATCH 00/33] Consolidated Pull request for OE-Core & Poky/master Saul Wold
2011-04-22  7:24 ` [PATCH 01/33] slang: Fix host contamination issue Saul Wold
2011-04-22  7:24 ` [PATCH 02/33] cdrtools: upgrade to v3.00 Saul Wold
2011-04-22 10:00   ` Scott Garman
2011-04-22 10:57     ` Koen Kooi
2011-04-22  7:24 ` [PATCH 03/33] tasks: Upgrade to 0.19 (from 0.18) Saul Wold
2011-04-22  7:24 ` [PATCH 04/33] avahi: Upgrade to 0.6.30 (from 0.6.28) Saul Wold
2011-04-22  7:24 ` [PATCH 05/33] consolekit: Upgrade to 0.4.4 (from 0.4.3) Saul Wold
2011-04-22  7:24 ` [PATCH 06/33] libgpg-error: Upgrade to 1.10 (from 1.9) Saul Wold
2011-04-22  7:24 ` [PATCH 07/33] jpeg: Upgrade to 8c (from 8b) Saul Wold
2011-04-22  7:24 ` [PATCH 08/33] modutils-initscripts: fix wrong order of module loading happening in udev Saul Wold
2011-04-22  7:24 ` [PATCH 09/33] Control over when package init scripts are run Saul Wold
2011-04-22  7:24 ` [PATCH 10/33] qemu: disable sdl for target build Saul Wold
2011-04-22  7:24 ` [PATCH 11/33] libxfixes: upgrade from 4.0.5 to the latest version 5.0 Saul Wold
2011-04-22  7:24 ` [PATCH 12/33] util-macros: upgrade from 1.11.0 to 1.13.0 Saul Wold
2011-04-22 15:27   ` Cui, Dexuan
2011-04-22  7:24 ` [PATCH 13/33] preferred-xorg-versions.inc: update libxfixes, util-macros, xorg-cf-files Saul Wold
2011-04-22  7:24 ` [PATCH 14/33] mdadm: upgrade from 3.1.4 to the latest version 3.2.1 Saul Wold
2011-04-22  7:24 ` [PATCH 15/33] liburcu: upgrade from 0.5.2 to 0.5.4 Saul Wold
2011-04-22  7:24 ` [PATCH 16/33] lttng-ust: upgrade from 0.11 to the latest version 0.12 Saul Wold
2011-04-22  7:24 ` [PATCH 17/33] task-poky-tools.bb, task-sdk-gmae.inc: enable lttng-ust for ARM Saul Wold
2011-04-22  7:24 ` [PATCH 18/33] lttng-viewer: upgrade from 0.12.36 to the latest version 0.12.38 Saul Wold
2011-04-22  7:24 ` [PATCH 19/33] distro_tracking_fields.inc: update the info for the following recipes Saul Wold
2011-04-22  7:24 ` [PATCH 20/33] gcc: Add recipes for 4.6.0 Saul Wold
2011-04-22  7:24 ` [PATCH 21/33] puzzles: Upgrade to svn r9151 (from r9084) Saul Wold
2011-04-22  7:24 ` [PATCH 22/33] linux-tools.inc: turn off newt and dwarf for perf Saul Wold
2011-04-22  7:24 ` [PATCH 23/33] ofono: add bluze to DEPENDS list Saul Wold
2011-04-22 16:53   ` Khem Raj
2011-04-22  7:24 ` [PATCH 24/33] pcmciautils: Upgrade 017 -> 018 Saul Wold
2011-04-22 16:54   ` Khem Raj
2011-04-22  7:24 ` [PATCH 25/33] mpfr: upgrade from 3.0.0 to 3.0.1 Saul Wold
2011-04-22  7:24 ` [PATCH 26/33] python-gst: upgrade from 0.10.19 to 0.10.21 Saul Wold
2011-04-22  7:24 ` [PATCH 27/33] git: upgrade from 1.7.3.4 to 1.7.4.3 Saul Wold
2011-04-22  7:24 ` [PATCH 28/33] python-pycairo: fix installation path of __init__.py Saul Wold
2011-04-22 17:16   ` Khem Raj
2011-04-22 17:25     ` Koen Kooi
2011-04-22 17:27       ` Khem Raj
2011-04-22 17:32         ` Graeme Gregory
2011-04-22 23:51           ` Khem Raj
2011-04-22 22:28     ` Kamble, Nitin A
2011-04-22 23:53       ` Khem Raj
2011-04-23 10:44         ` Michael 'Mickey' Lauer
2011-04-22  7:25 ` [PATCH 29/33] perl-5.12.2: use of PERLHOSTLIB var fix Saul Wold
2011-04-22  7:25 ` [PATCH 30/33] cpan.bbclass: export PERLHOSTLIB for perl modules Saul Wold
2011-04-22  7:25 ` [PATCH 31/33] libxml-parser-perl: upgrade from 2.36 to 2.40 Saul Wold
2011-04-22  7:25 ` [PATCH 32/33] distro_tracking: recipe information update Saul Wold
2011-04-22  7:25 ` [PATCH 33/33] qemu-helper-nativesdk: Update LIC_FILE_CHKSUM for renamed helper Saul Wold

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.