All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/52] Updated Consolidated pull
@ 2011-04-27  7:29 Saul Wold
  2011-04-27  7:29 ` [PATCH 01/52] sat-solver: fix arch=all packages Saul Wold
                   ` (53 more replies)
  0 siblings, 54 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Richard,

This has been reviewed and build on x86 and ARM, I have worked also to build
full world, it's almost there, qemu on the target needs a few more tweaks, it's
closer!

Please consider these changes.

Thanks
   Sau!


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>
---


Darren Hart (3):
  logging: fix oedebug loglevel test
  logging: remove unused BBDEBUG from local.conf.sample
  logging: add bb* logging mechanisms for bash recipe functions

Dongxiao Xu (13):
  rxvt-unicode: upgrade to version 9.10
  valgrind: upgrade to version 3.6.1
  bluez-hcidump: upgrade to version 2.0
  gupnp-av: upgrade to version 0.8.0
  libsndfile1: upgrade to version 1.0.24
  glib-2.0: upgrade to version 2.28.6
  libfm: Remove the flag of G_DISABLE_DEPRECATED
  polkit: upgrade to version 0.101.
  gst-fluendo-mpegdemux: upgrade to version 0.10.67
  libsamplerate0: upgrade to version 0.1.7
  alsa-utils: upgrade to version 1.0.24.2
  cwautomacros: upgrade to version 20110201
  distro_tracking_fields: cwautomacros, valgrind, etc

Khem Raj (19):
  gcc: Add recipes for 4.6.0
  sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak
  libiconv: update from 1.9.2 -> 1.11.1
  elfutils_0.148.bb: Fix compilation issues on uclibc
  perl_5.12.2.bb: Undefine features not found in uclibc
  xorg-lib: inherit gettext class instead of adding gettext to DEPENDS
    directly
  attr: Fix compilation on uclibc
  linux-tools.inc: Dummify do_compile_perf and do_install_perf for
    uclibc
  gettext.bbclass: Use _append instead of =+
  insane.bbclass: Move code to add function to tasks toward the end
  insane.bbclass: Checking for NLS too when checking gettext dependency
  autotools.bbclass: Copy gettext files only if --disable-nls is not
    set
  gettext: Divide packaging into gettext-runtime and rest
  gettext_0.17.bb: PROVIDE virtual/gettext and RCONFLICT with
    proxy-libintl
  poky-default.inc: Weakly assign gettext to provide virtual/gettext
  glib-2.0: Inherit gettext should provide right libintl so remove from
    DEPENDS
  util-linux.inc: remove virtual/libintl from DEPENDS
  perl_5.12.2.bb: Undefine features not found in uclibc
  alsa-utils_1.0.23.bb: Fix compilation for uclibc targets

Nitin A Kamble (3):
  perl: upgrade from 5.12.2 to 5.12.3
  tar-1.17 (GPLv2) bugfix
  cpio-2.8 (GPLv2) bug fix

Qing He (2):
  sat-solver: fix arch=all packages
  quilt: fix test for target build

Saul Wold (10):
  gdb: set --without-ust for EXTRA_OEFLAGS
  web: update svn to 131 to fix build issue
  python: add missing cytpes modules
  libsdl: add SRC_URI Checksums
  clutter-box2d: add DEPENDS for clutter-1.6
  table: move old clutter demo to meta-demoapps
  tidy: move old clutter demo to meta-demoapps
  alsa-tools: Add checksums
  world-broken: add older clutters since we don't want clutter
    confusion
  qemu: Fix non-sdl/opengl build

Scott Garman (2):
  cdrtools: recipe and patch cleanup
  distro_tracking_fields.inc: add cdrtools recipe

 .../recipes-graphics/clutter/table.inc             |    0
 .../recipes-graphics/clutter/table/fixes.patch     |    0
 .../recipes-graphics/clutter/table_git.bb          |    0
 .../recipes-graphics/clutter/tidy.inc              |    0
 .../recipes-graphics/clutter/tidy/autofoo.patch    |    0
 .../clutter/tidy/tidy-enable-tests.patch           |    0
 .../recipes-graphics/clutter/tidy_git.bb           |    0
 meta/classes/autotools.bbclass                     |   19 +-
 meta/classes/base.bbclass                          |    9 +-
 meta/classes/gettext.bbclass                       |   38 +-
 meta/classes/insane.bbclass                        |   24 +-
 meta/classes/logging.bbclass                       |   72 +
 meta/classes/sstate.bbclass                        |    2 +-
 .../conf/distro/include/distro_tracking_fields.inc |   83 +-
 .../conf/distro/include/poky-default-revisions.inc |    2 +-
 meta/conf/distro/include/poky-default.inc          |    1 +
 meta/conf/distro/include/world-broken.inc          |    9 +-
 meta/conf/local.conf.sample                        |    2 -
 ...{bluez-hcidump_1.42.bb => bluez-hcidump_2.0.bb} |    8 +-
 .../gupnp/{gupnp-av_0.7.0.bb => gupnp-av_0.8.0.bb} |    4 +-
 meta/recipes-core/gettext/gettext_0.17.bb          |   39 +-
 .../60_wait-longer-for-threads-to-die.patch        |    2 +
 .../glib-2.0/glib-2.0/configure-libtool.patch      |    2 +
 .../glib-2.0/glib-2.0/g_once_init_enter.patch      |    2 +
 .../glib-2.0/glib-2.0/glib-gettextize-dir.patch    |    2 +
 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch |  104 +
 meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb      |   16 -
 meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb      |    5 +-
 meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb      |   18 +
 meta/recipes-core/glib-2.0/glib.inc                |    4 +-
 meta/recipes-core/util-linux/util-linux.inc        |    6 +-
 .../cdrtools-native/glibc-conflict-rename.patch    |    8 +
 .../cdrtools/cdrtools-native/no_usr_src.patch      |    7 +
 .../cdrtools/cdrtools-native_2.01.bb               |   22 +-
 .../elfutils/elfutils-0.148/mempcpy.patch          |   23 +
 meta/recipes-devtools/elfutils/elfutils_0.148.bb   |    6 +-
 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/gdb/gdb-common.inc           |    5 +-
 .../perl/perl-5.12.2/native-ssp.patch              |   16 -
 .../09_fix_installperl.patch                       |    6 +-
 .../Configure-multilib.patch                       |    6 +-
 .../{perl-5.12.2 => perl-5.12.3}/Makefile.SH.patch |   44 +-
 .../{perl-5.12.2 => perl-5.12.3}/Makefile.patch    |    6 +-
 .../asm-pageh-fix.patch                            |    6 +-
 .../perl/{perl-5.12.2 => perl-5.12.3}/config.sh    |   46 +-
 .../perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32 |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-32-be   |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-32-le   |    0
 .../perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64 |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-64-be   |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-64-le   |    0
 .../cross-generate_uudmap.patch                    |    0
 .../debian/arm_optim.diff                          |    2 +-
 .../debian/arm_thread_stress_timeout.diff          |    2 +-
 .../debian/cpan_config_path.diff                   |    2 +-
 .../debian/cpan_definstalldirs.diff                |    2 +-
 .../debian/cpanplus_config_path.diff               |    2 +-
 .../debian/cpanplus_definstalldirs.diff            |    2 +-
 .../debian/db_file_ver.diff                        |    2 +-
 .../debian/deprecate-with-apt.diff                 |    2 +-
 .../debian/devel-ppport-ia64-optim.diff            |    2 +-
 .../debian/disable-zlib-bundling.diff              |    2 +-
 .../debian/doc_info.diff                           |    6 +-
 .../debian/enc2xs_inc.diff                         |    9 +-
 .../debian/errno_ver.diff                          |    2 +-
 .../debian/extutils_hacks.diff                     |    2 +-
 .../debian/fakeroot.diff                           |    4 +-
 .../debian/fixes/autodie-flock.diff                |    2 +-
 .../debian/fixes/concat-stack-corruption.diff      |    4 +-
 .../debian/fixes/cpanplus-without-home.diff        |    2 +-
 .../debian/fixes/h2ph-gcc-4.5.diff                 |    2 +-
 .../debian/fixes/hurd-ccflags.diff                 |    2 +-
 .../debian/fixes/lc-numeric-docs.diff              |    2 +-
 .../debian/fixes/lc-numeric-sprintf.diff           |    2 +-
 .../debian/fixes/net_smtp_docs.diff                |    2 +-
 .../debian/fixes/processPL.diff                    |    2 +-
 .../debian/instmodsh_doc.diff                      |    2 +-
 .../debian/ld_run_path.diff                        |    2 +-
 .../debian/libnet_config_path.diff                 |    2 +-
 .../debian/m68k_thread_stress.diff                 |    2 +-
 .../debian/mod_paths.diff                          |    2 +-
 .../debian/module_build_man_extensions.diff        |    2 +-
 .../perl/perl-5.12.3/debian/patchlevel             |   45 +
 .../debian/perlivp.diff                            |    2 +-
 .../debian/prune_libs.diff                         |    2 +-
 .../perl/perl-5.12.3/debian/series                 |   34 +
 .../debian/squelch-locale-warnings.diff            |    2 +-
 .../{perl-5.12.2 => perl-5.12.3}/generate-sh.patch |    0
 .../{perl-5.12.2 => perl-5.12.3}/installperl.patch |    6 +-
 .../letgcc-find-errno.patch                        |    6 +-
 .../native-nopacklist.patch                        |    6 +-
 .../native-perlinc.patch                           |    4 +-
 .../parallel_build_fix_1.patch                     |    0
 .../parallel_build_fix_2.patch                     |    0
 .../parallel_build_fix_3.patch                     |    0
 .../parallel_build_fix_4.patch                     |    0
 .../parallel_build_fix_5.patch                     |   52 +-
 .../parallel_build_fix_6.patch                     |   36 +-
 .../perl-configpm-switch.patch                     |    0
 .../{perl-5.12.2 => perl-5.12.3}/perl-configure.sh |    2 +-
 .../perl-dynloader.patch                           |    4 +-
 .../perl-enable-gdbm.patch                         |    0
 .../perl-moreconfig.patch                          |    0
 ...perl-native_5.12.2.bb => perl-native_5.12.3.bb} |    8 +-
 ...depends_5.12.2.inc => perl-rdepends_5.12.3.inc} |    0
 ...ovides_5.12.2.inc => perl-rprovides_5.12.3.inc} |    0
 .../perl/{perl_5.12.2.bb => perl_5.12.3.bb}        |  111 +-
 .../python/06-ctypes-libffi-fix-configure.patch    |   58 +
 meta/recipes-devtools/python/python_2.6.6.bb       |    3 +-
 .../qemu/qemu-0.14.0/opengl-sdl-fix.patch          |   41 +
 meta/recipes-devtools/qemu/qemu.inc                |    2 +
 meta/recipes-devtools/qemu/qemu_0.14.0.bb          |    3 +-
 .../quilt/quilt/gnu_patch_test_fix_target.patch    |   26 +
 meta/recipes-devtools/quilt/quilt_0.48.bb          |    6 +-
 .../fix_issue_caused_by_ccache.patch               |    2 +
 .../fixed-perl-path.patch                          |    2 +
 .../{valgrind_3.6.0.bb => valgrind_3.6.1.bb}       |    4 +-
 .../cpio/cpio-2.8/avoid_heap_overflow.patch        |   25 +
 meta/recipes-extended/cpio/cpio_2.8.bb             |    6 +-
 ...macros_20090610.bb => cwautomacros_20110201.bb} |    4 +-
 .../polkit/polkit-0.101/introspection.patch        |  104 +
 .../polkit/{polkit_0.99.bb => polkit_0.101.bb}     |   11 +-
 ...sat-solver_poky.patch => sat-solver_core.patch} |   27 +-
 meta/recipes-extended/sat-solver/sat-solver_git.bb |   16 +-
 .../tar/tar-1.17/avoid_heap_overflow.patch         |   22 +
 meta/recipes-extended/tar/tar_1.17.bb              |    3 +-
 .../clutter/clutter-box2d-1.6_0.10.0.bb            |    2 +
 .../libsdl/libsdl-nativesdk_1.2.11.bb              |    3 +
 meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb     |    4 +-
 meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb   |    4 +-
 meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb     |    3 +-
 meta/recipes-kernel/linux/linux-tools.inc          |   17 +-
 meta/recipes-multimedia/alsa/alsa-tools_1.0.20.bb  |    8 +-
 .../ncursesfix.patch                               |   22 +-
 ...alsa-utils_1.0.23.bb => alsa-utils_1.0.24.2.bb} |   13 +-
 ...0.10.62.bb => gst-fluendo-mpegdemux_0.10.67.bb} |    4 +-
 .../libsamplerate-0.1.7-macro-quoting.patch        |   22 +
 ...amplerate0_0.1.2.bb => libsamplerate0_0.1.7.bb} |   11 +-
 .../libsndfile/libsndfile1/acincludefix.patch      |   26 -
 .../libsndfile/libsndfile1/add-cxx.patch           |   18 -
 ...libsndfile1_1.0.23.bb => libsndfile1_1.0.24.bb} |    4 +-
 .../recipes-sato/rxvt-unicode/files/makefile.patch |   20 -
 meta/recipes-sato/rxvt-unicode/files/rxvt.desktop  |   11 -
 .../rxvt-unicode/files/signedchar.patch            |   11 -
 meta/recipes-sato/rxvt-unicode/files/xwc.patch     |   28 -
 .../rxvt-unicode/rxvt-unicode-5.6/xwc.patch        |   24 -
 .../rxvt-unicode/rxvt-unicode-9.10/rxvt.desktop    |    9 +
 .../{files => rxvt-unicode-9.10}/rxvt.png          |  Bin 2847 -> 2847 bytes
 .../rxvt-unicode/rxvt-unicode-9.10/xwc.patch       |   26 +
 .../{rxvt-unicode_5.6.bb => rxvt-unicode_9.10.bb}  |   39 +-
 meta/recipes-support/attr/attr.inc                 |    4 +
 meta/recipes-support/attr/ea-acl.inc               |    4 +-
 .../libfm/libfm-0.1.14/use_deprecate_func.patch    |   11 +
 meta/recipes-support/libfm/libfm_0.1.14.bb         |    5 +-
 .../libiconv/libiconv-1.11.1/autoconf.patch        |   48 +
 .../shared_preloadable_libiconv_linux.patch        |   24 +
 meta/recipes-support/libiconv/libiconv_1.11.1.bb   |   30 +
 meta/recipes-support/libiconv/libiconv_1.9.2.bb    |   21 -
 208 files changed, 7583 insertions(+), 593 deletions(-)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/table.inc (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/table/fixes.patch (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/table_git.bb (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy.inc (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy/autofoo.patch (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy/tidy-enable-tests.patch (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy_git.bb (100%)
 create mode 100644 meta/classes/logging.bbclass
 rename meta/recipes-connectivity/bluez/{bluez-hcidump_1.42.bb => bluez-hcidump_2.0.bb} (69%)
 rename meta/recipes-connectivity/gupnp/{gupnp-av_0.7.0.bb => gupnp-av_0.8.0.bb} (77%)
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
 delete mode 100644 meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb
 create mode 100644 meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch
 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
 delete mode 100644 meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/09_fix_installperl.patch (87%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/Configure-multilib.patch (89%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/Makefile.SH.patch (89%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/Makefile.patch (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/asm-pageh-fix.patch (77%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32 (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32-be (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32-le (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64 (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64-be (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64-le (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/cross-generate_uudmap.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/arm_optim.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/arm_thread_stress_timeout.diff (90%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpan_config_path.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpan_definstalldirs.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpanplus_config_path.diff (96%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpanplus_definstalldirs.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/db_file_ver.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/deprecate-with-apt.diff (97%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/devel-ppport-ia64-optim.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/disable-zlib-bundling.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/doc_info.diff (88%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/enc2xs_inc.diff (82%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/errno_ver.diff (94%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/extutils_hacks.diff (99%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fakeroot.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/autodie-flock.diff (98%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/concat-stack-corruption.diff (91%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/cpanplus-without-home.diff (94%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/h2ph-gcc-4.5.diff (98%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/hurd-ccflags.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/lc-numeric-docs.diff (98%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/lc-numeric-sprintf.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/net_smtp_docs.diff (91%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/processPL.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/instmodsh_doc.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/ld_run_path.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/libnet_config_path.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/m68k_thread_stress.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/mod_paths.diff (97%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/module_build_man_extensions.diff (96%)
 create mode 100644 meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/perlivp.diff (96%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/prune_libs.diff (96%)
 create mode 100644 meta/recipes-devtools/perl/perl-5.12.3/debian/series
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/squelch-locale-warnings.diff (96%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/generate-sh.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/installperl.patch (81%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/letgcc-find-errno.patch (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/native-nopacklist.patch (94%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/native-perlinc.patch (88%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_1.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_2.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_3.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_4.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_5.patch (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_6.patch (89%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-configpm-switch.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-configure.sh (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-dynloader.patch (90%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-enable-gdbm.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-moreconfig.patch (100%)
 rename meta/recipes-devtools/perl/{perl-native_5.12.2.bb => perl-native_5.12.3.bb} (94%)
 rename meta/recipes-devtools/perl/{perl-rdepends_5.12.2.inc => perl-rdepends_5.12.3.inc} (100%)
 rename meta/recipes-devtools/perl/{perl-rprovides_5.12.2.inc => perl-rprovides_5.12.3.inc} (100%)
 rename meta/recipes-devtools/perl/{perl_5.12.2.bb => perl_5.12.3.bb} (79%)
 create mode 100644 meta/recipes-devtools/python/python/06-ctypes-libffi-fix-configure.patch
 create mode 100644 meta/recipes-devtools/qemu/qemu-0.14.0/opengl-sdl-fix.patch
 create mode 100644 meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch
 rename meta/recipes-devtools/valgrind/{valgrind-3.6.0 => valgrind-3.6.1}/fix_issue_caused_by_ccache.patch (94%)
 rename meta/recipes-devtools/valgrind/{valgrind-3.6.0 => valgrind-3.6.1}/fixed-perl-path.patch (97%)
 rename meta/recipes-devtools/valgrind/{valgrind_3.6.0.bb => valgrind_3.6.1.bb} (86%)
 create mode 100644 meta/recipes-extended/cpio/cpio-2.8/avoid_heap_overflow.patch
 rename meta/recipes-extended/cwautomacros/{cwautomacros_20090610.bb => cwautomacros_20110201.bb} (74%)
 create mode 100644 meta/recipes-extended/polkit/polkit-0.101/introspection.patch
 rename meta/recipes-extended/polkit/{polkit_0.99.bb => polkit_0.101.bb} (77%)
 rename meta/recipes-extended/sat-solver/sat-solver/{sat-solver_poky.patch => sat-solver_core.patch} (81%)
 create mode 100644 meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch
 rename meta/recipes-multimedia/alsa/{alsa-utils-1.0.23 => alsa-utils-1.0.24.2}/ncursesfix.patch (70%)
 rename meta/recipes-multimedia/alsa/{alsa-utils_1.0.23.bb => alsa-utils_1.0.24.2.bb} (89%)
 rename meta/recipes-multimedia/gstreamer/{gst-fluendo-mpegdemux_0.10.62.bb => gst-fluendo-mpegdemux_0.10.67.bb} (71%)
 create mode 100644 meta/recipes-multimedia/libsamplerate/libsamplerate0-0.1.7/libsamplerate-0.1.7-macro-quoting.patch
 rename meta/recipes-multimedia/libsamplerate/{libsamplerate0_0.1.2.bb => libsamplerate0_0.1.7.bb} (59%)
 delete mode 100644 meta/recipes-multimedia/libsndfile/libsndfile1/acincludefix.patch
 delete mode 100644 meta/recipes-multimedia/libsndfile/libsndfile1/add-cxx.patch
 rename meta/recipes-multimedia/libsndfile/{libsndfile1_1.0.23.bb => libsndfile1_1.0.24.bb} (80%)
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/makefile.patch
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/rxvt.desktop
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/signedchar.patch
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/xwc.patch
 delete mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch
 create mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/rxvt.desktop
 rename meta/recipes-sato/rxvt-unicode/{files => rxvt-unicode-9.10}/rxvt.png (100%)
 create mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/xwc.patch
 rename meta/recipes-sato/rxvt-unicode/{rxvt-unicode_5.6.bb => rxvt-unicode_9.10.bb} (69%)
 create mode 100644 meta/recipes-support/libfm/libfm-0.1.14/use_deprecate_func.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv_1.11.1.bb
 delete mode 100644 meta/recipes-support/libiconv/libiconv_1.9.2.bb




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

* [PATCH 01/52] sat-solver: fix arch=all packages
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  8:24   ` Antonio Ospite
  2011-04-27  7:29 ` [PATCH 02/52] quilt: fix test for target build Saul Wold
                   ` (52 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Qing He <qing.he@intel.com>

add a new options to set noarch archs as all so platform independent
packages can be recognized and installed.

fixes [YOCTO #993]

Signed-off-by: Qing He <qing.he@intel.com>
---
 ...sat-solver_poky.patch => sat-solver_core.patch} |   27 +++++++++++++++++--
 meta/recipes-extended/sat-solver/sat-solver_git.bb |   16 ++++++------
 2 files changed, 32 insertions(+), 11 deletions(-)
 rename meta/recipes-extended/sat-solver/sat-solver/{sat-solver_poky.patch => sat-solver_core.patch} (81%)

diff --git a/meta/recipes-extended/sat-solver/sat-solver/sat-solver_poky.patch b/meta/recipes-extended/sat-solver/sat-solver/sat-solver_core.patch
similarity index 81%
rename from meta/recipes-extended/sat-solver/sat-solver/sat-solver_poky.patch
rename to meta/recipes-extended/sat-solver/sat-solver/sat-solver_core.patch
index b762bac..11bf5b0 100644
--- a/meta/recipes-extended/sat-solver/sat-solver/sat-solver_poky.patch
+++ b/meta/recipes-extended/sat-solver/sat-solver/sat-solver_core.patch
@@ -1,3 +1,5 @@
+Upstream-Status: Inappropriate [distribution]
+
 Fix "arch" integration with Poky.
 
 Add a missing "any" architecture type and update the semantics to use it.
@@ -5,8 +7,27 @@ Add a missing "any" architecture type and update the semantics to use it.
 Disable the built-in archpolicies structure, and replace it with one
 we generate in the recipe.
 
+Also add poky semantics option in CMake.
+
 Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+Signed-off-by: Qing He <qing.he@intel.com>
 
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 443281e..4456a87 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -45,6 +45,11 @@ MESSAGE(STATUS "Building for Debian")
+ ADD_DEFINITIONS( -DDEBIAN -DDEBIAN_SEMANTICS)
+ ENDIF ( DEBIAN )
+ 
++IF ( OE_CORE )
++MESSAGE(STATUS "Building for OE core")
++ADD_DEFINITIONS( -DOE_CORE -DOE_CORE_SEMANTICS)
++ENDIF ( OE_CORE )
++
+ IF ( MULTI_SEMANTICS )
+ MESSAGE(STATUS "Enabling multi dist support")
+ ADD_DEFINITIONS( -DMULTI_SEMANTICS)
 diff --git a/src/knownid.h b/src/knownid.h
 index 7757ae0..4b8bee7 100644
 --- a/src/knownid.h
@@ -27,7 +48,7 @@ index 55c8677..3356ff8 100644
      }
  
    /* we allow changes to/from noarch */
-+#ifdef POKY_SEMANTICS
++#ifdef OE_CORE_SEMANTICS
 +  if (a1 == a2 || 
 +	a1 == ARCH_NOARCH || a2 == ARCH_NOARCH ||
 +	a1 == ARCH_ANY || a2 == ARCH_ANY ||
@@ -86,7 +107,7 @@ index 34a14a3..2d7cd70 100644
 -  0
 -};
 +/* Provide the const char *archpolicies structure */
-+#include "poky-arch.h"
++#include "core-arch.h"
  
  void
  pool_setarch(Pool *pool, const char *arch)
@@ -97,7 +118,7 @@ index 34a14a3..2d7cd70 100644
 -#ifndef DEBIAN_SEMANTICS
 -  id = ARCH_NOARCH;
 -#else
-+#if defined(DEBIAN_SEMANTICS) || defined(POKY_SEMANTICS)
++#if defined(DEBIAN_SEMANTICS) || defined(OE_CORE_SEMANTICS)
    id = ARCH_ALL;
 +#else
 +  id = ARCH_NOARCH;
diff --git a/meta/recipes-extended/sat-solver/sat-solver_git.bb b/meta/recipes-extended/sat-solver/sat-solver_git.bb
index a693776..2d4d299 100644
--- a/meta/recipes-extended/sat-solver/sat-solver_git.bb
+++ b/meta/recipes-extended/sat-solver/sat-solver_git.bb
@@ -7,19 +7,19 @@ LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8"
 DEPENDS = "libcheck rpm zlib expat db"
 
 PV = "0.0-git${SRCPV}"
-PR = "r8"
+PR = "r9"
 
 SRC_URI = "git://gitorious.org/opensuse/sat-solver.git;protocol=git \
            file://sat-solver_rpm5.patch \
            file://sat-solver_obsolete.patch \
            file://cmake.patch \
            file://db5.patch \
-           file://sat-solver_poky.patch \
+           file://sat-solver_core.patch \
           "
 
 S = "${WORKDIR}/git"
 
-EXTRA_OECMAKE += "-DLIB=lib -DRPM5=RPM5"
+EXTRA_OECMAKE += "-DLIB=lib -DRPM5=RPM5 -DOE_CORE=OE_CORE"
 
 inherit cmake pkgconfig
 
@@ -38,18 +38,18 @@ do_archgen () {
 		INSTALL_PLATFORM_ARCHS="$each_arch $INSTALL_PLATFORM_ARCHS"
 	done
 
-	echo "/* Automatically generated by the sat-solver recipe */" > src/poky-arch.h
-	echo "const char *archpolicies[] = {" >> src/poky-arch.h
+	echo "/* Automatically generated by the sat-solver recipe */" > src/core-arch.h
+	echo "const char *archpolicies[] = {" >> src/core-arch.h
 
         set -- $INSTALL_PLATFORM_ARCHS
 
         save_IFS=$IFS
         IFS=:
-        while [ $# -gt 0 ]; do echo "  \"$1\",	"\""$*"\", >> src/poky-arch.h ; shift; done
+        while [ $# -gt 0 ]; do echo "  \"$1\",	"\""$*"\", >> src/core-arch.h ; shift; done
         IFS=$save_IFS
 
-	echo "  0" >> src/poky-arch.h
-	echo "};" >> src/poky-arch.h
+	echo "  0" >> src/core-arch.h
+	echo "};" >> src/core-arch.h
 }
 
 addtask archgen before do_configure after do_patch
-- 
1.7.1.1




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

* [PATCH 02/52] quilt: fix test for target build
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
  2011-04-27  7:29 ` [PATCH 01/52] sat-solver: fix arch=all packages Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 03/52] gcc: Add recipes for 4.6.0 Saul Wold
                   ` (51 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Qing He <qing.he@intel.com>

fixes [YOCTO #969]

Signed-off-by: Qing He <qing.he@intel.com>
---
 .../quilt/quilt/gnu_patch_test_fix_target.patch    |   26 ++++++++++++++++++++
 meta/recipes-devtools/quilt/quilt_0.48.bb          |    6 +++-
 2 files changed, 30 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch

diff --git a/meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch b/meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch
new file mode 100644
index 0000000..672155b
--- /dev/null
+++ b/meta/recipes-devtools/quilt/quilt/gnu_patch_test_fix_target.patch
@@ -0,0 +1,26 @@
+Upstream-Status: Pending
+
+the test should be skipped for cross compiling.
+
+Signed-off-by: Qing He <qing.he@intel.com>
+
+diff --git a/configure.ac b/configure.ac
+index 026a36c..8af591b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -245,6 +245,7 @@ fi
+ QUILT_COMPAT_PROG_PATH(DIFF, diff)
+ QUILT_COMPAT_PROG_PATH(PATCH, patch)
+ 
++if test "x$cross_compiling" != "xyes"; then
+ # Sun diff and others will not work because GNU patch options are used.
+ AC_MSG_CHECKING([the version of $DIFF])
+ if $DIFF --version 2>/dev/null | grep GNU >/dev/null; then
+@@ -293,6 +294,7 @@ current version of patch from ftp.gnu.org, or if you already have GNU patch
+ then you can supply its path with the '--with-patch=' option.
+ ])
+ fi
++fi
+ 
+ QUILT_COMPAT_PROG_PATH(FIND, find)
+ 
diff --git a/meta/recipes-devtools/quilt/quilt_0.48.bb b/meta/recipes-devtools/quilt/quilt_0.48.bb
index 20a708d..124e2cd 100644
--- a/meta/recipes-devtools/quilt/quilt_0.48.bb
+++ b/meta/recipes-devtools/quilt/quilt_0.48.bb
@@ -2,8 +2,10 @@ require quilt.inc
 LICENSE="GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 RDEPENDS_${PN} += "patch diffstat bzip2 util-linux"
-PR = "r0"
-SRC_URI += "file://aclocal.patch"
+PR = "r1"
+SRC_URI += "file://aclocal.patch \
+            file://gnu_patch_test_fix_target.patch \
+           "
 
 SRC_URI[md5sum] = "f77adda60039ffa753f3c584a286f12b"
 SRC_URI[sha256sum] = "73fd760d3b5cbf06417576591dc37d67380d189392db9000c21b7cbebee49ffc"
-- 
1.7.1.1




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

* [PATCH 03/52] gcc: Add recipes for 4.6.0
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
  2011-04-27  7:29 ` [PATCH 01/52] sat-solver: fix arch=all packages Saul Wold
  2011-04-27  7:29 ` [PATCH 02/52] quilt: fix test for target build Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  8:17   ` Antonio Ospite
  2011-04-28  8:53   ` Richard Purdie
  2011-04-27  7:29 ` [PATCH 04/52] perl: upgrade from 5.12.2 to 5.12.3 Saul Wold
                   ` (50 subsequent siblings)
  53 siblings, 2 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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.1




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

* [PATCH 04/52] perl: upgrade from 5.12.2 to 5.12.3
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (2 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 03/52] gcc: Add recipes for 4.6.0 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 05/52] gdb: set --without-ust for EXTRA_OEFLAGS Saul Wold
                   ` (49 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

And changed the perl tarball URL to more stable cpan location.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../09_fix_installperl.patch                       |    6 +-
 .../Configure-multilib.patch                       |    6 +-
 .../{perl-5.12.2 => perl-5.12.3}/Makefile.SH.patch |   44 ++++++------
 .../{perl-5.12.2 => perl-5.12.3}/Makefile.patch    |    6 +-
 .../asm-pageh-fix.patch                            |    6 +-
 .../perl/{perl-5.12.2 => perl-5.12.3}/config.sh    |   46 ++++++------
 .../perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32 |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-32-be   |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-32-le   |    0
 .../perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64 |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-64-be   |    0
 .../{perl-5.12.2 => perl-5.12.3}/config.sh-64-le   |    0
 .../cross-generate_uudmap.patch                    |    0
 .../debian/arm_optim.diff                          |    2 +-
 .../debian/arm_thread_stress_timeout.diff          |    2 +-
 .../debian/cpan_config_path.diff                   |    2 +-
 .../debian/cpan_definstalldirs.diff                |    2 +-
 .../debian/cpanplus_config_path.diff               |    2 +-
 .../debian/cpanplus_definstalldirs.diff            |    2 +-
 .../debian/db_file_ver.diff                        |    2 +-
 .../debian/deprecate-with-apt.diff                 |    2 +-
 .../debian/devel-ppport-ia64-optim.diff            |    2 +-
 .../debian/disable-zlib-bundling.diff              |    2 +-
 .../debian/doc_info.diff                           |    6 +-
 .../debian/enc2xs_inc.diff                         |    9 +-
 .../debian/errno_ver.diff                          |    2 +-
 .../debian/extutils_hacks.diff                     |    2 +-
 .../debian/fakeroot.diff                           |    4 +-
 .../debian/fixes/autodie-flock.diff                |    2 +-
 .../debian/fixes/concat-stack-corruption.diff      |    4 +-
 .../debian/fixes/cpanplus-without-home.diff        |    2 +-
 .../debian/fixes/h2ph-gcc-4.5.diff                 |    2 +-
 .../debian/fixes/hurd-ccflags.diff                 |    2 +-
 .../debian/fixes/lc-numeric-docs.diff              |    2 +-
 .../debian/fixes/lc-numeric-sprintf.diff           |    2 +-
 .../debian/fixes/net_smtp_docs.diff                |    2 +-
 .../debian/fixes/processPL.diff                    |    2 +-
 .../debian/instmodsh_doc.diff                      |    2 +-
 .../debian/ld_run_path.diff                        |    2 +-
 .../debian/libnet_config_path.diff                 |    2 +-
 .../debian/m68k_thread_stress.diff                 |    2 +-
 .../debian/mod_paths.diff                          |    2 +-
 .../debian/module_build_man_extensions.diff        |    2 +-
 .../perl/perl-5.12.3/debian/patchlevel             |   45 +++++++++++
 .../debian/perlivp.diff                            |    2 +-
 .../debian/prune_libs.diff                         |    2 +-
 .../perl/perl-5.12.3/debian/series                 |   34 +++++++++
 .../debian/squelch-locale-warnings.diff            |    2 +-
 .../{perl-5.12.2 => perl-5.12.3}/generate-sh.patch |    0
 .../{perl-5.12.2 => perl-5.12.3}/installperl.patch |    6 +-
 .../letgcc-find-errno.patch                        |    6 +-
 .../native-nopacklist.patch                        |    6 +-
 .../native-perlinc.patch                           |    4 +-
 .../{perl-5.12.2 => perl-5.12.3}/native-ssp.patch  |    0
 .../parallel_build_fix_1.patch                     |    0
 .../parallel_build_fix_2.patch                     |    0
 .../parallel_build_fix_3.patch                     |    0
 .../parallel_build_fix_4.patch                     |    0
 .../parallel_build_fix_5.patch                     |   52 +++++++-------
 .../parallel_build_fix_6.patch                     |   36 +++++-----
 .../perl-configpm-switch.patch                     |    0
 .../{perl-5.12.2 => perl-5.12.3}/perl-configure.sh |    2 +-
 .../perl-dynloader.patch                           |    4 +-
 .../perl-enable-gdbm.patch                         |    0
 .../perl-moreconfig.patch                          |    0
 ...perl-native_5.12.2.bb => perl-native_5.12.3.bb} |    8 +-
 ...depends_5.12.2.inc => perl-rdepends_5.12.3.inc} |    0
 ...ovides_5.12.2.inc => perl-rprovides_5.12.3.inc} |    0
 .../perl/{perl_5.12.2.bb => perl_5.12.3.bb}        |   79 ++++++++++----------
 69 files changed, 280 insertions(+), 197 deletions(-)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/09_fix_installperl.patch (87%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/Configure-multilib.patch (89%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/Makefile.SH.patch (89%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/Makefile.patch (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/asm-pageh-fix.patch (77%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32 (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32-be (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-32-le (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64 (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64-be (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/config.sh-64-le (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/cross-generate_uudmap.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/arm_optim.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/arm_thread_stress_timeout.diff (90%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpan_config_path.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpan_definstalldirs.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpanplus_config_path.diff (96%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/cpanplus_definstalldirs.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/db_file_ver.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/deprecate-with-apt.diff (97%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/devel-ppport-ia64-optim.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/disable-zlib-bundling.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/doc_info.diff (88%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/enc2xs_inc.diff (82%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/errno_ver.diff (94%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/extutils_hacks.diff (99%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fakeroot.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/autodie-flock.diff (98%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/concat-stack-corruption.diff (91%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/cpanplus-without-home.diff (94%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/h2ph-gcc-4.5.diff (98%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/hurd-ccflags.diff (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/lc-numeric-docs.diff (98%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/lc-numeric-sprintf.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/net_smtp_docs.diff (91%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/fixes/processPL.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/instmodsh_doc.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/ld_run_path.diff (93%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/libnet_config_path.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/m68k_thread_stress.diff (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/mod_paths.diff (97%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/module_build_man_extensions.diff (96%)
 create mode 100644 meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/perlivp.diff (96%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/prune_libs.diff (96%)
 create mode 100644 meta/recipes-devtools/perl/perl-5.12.3/debian/series
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/debian/squelch-locale-warnings.diff (96%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/generate-sh.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/installperl.patch (81%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/letgcc-find-errno.patch (92%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/native-nopacklist.patch (94%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/native-perlinc.patch (88%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/native-ssp.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_1.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_2.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_3.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_4.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_5.patch (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/parallel_build_fix_6.patch (89%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-configpm-switch.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-configure.sh (95%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-dynloader.patch (90%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-enable-gdbm.patch (100%)
 rename meta/recipes-devtools/perl/{perl-5.12.2 => perl-5.12.3}/perl-moreconfig.patch (100%)
 rename meta/recipes-devtools/perl/{perl-native_5.12.2.bb => perl-native_5.12.3.bb} (94%)
 rename meta/recipes-devtools/perl/{perl-rdepends_5.12.2.inc => perl-rdepends_5.12.3.inc} (100%)
 rename meta/recipes-devtools/perl/{perl-rprovides_5.12.2.inc => perl-rprovides_5.12.3.inc} (100%)
 rename meta/recipes-devtools/perl/{perl_5.12.2.bb => perl_5.12.3.bb} (85%)

diff --git a/meta/recipes-devtools/perl/perl-5.12.2/09_fix_installperl.patch b/meta/recipes-devtools/perl/perl-5.12.3/09_fix_installperl.patch
similarity index 87%
rename from meta/recipes-devtools/perl/perl-5.12.2/09_fix_installperl.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/09_fix_installperl.patch
index cfe0047..a80d17c 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/09_fix_installperl.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/09_fix_installperl.patch
@@ -6,10 +6,10 @@ are under lib.
 Ensure that POSIX/SigAction is kept with the rest of the POSIX module
 under archlib.
 
-Index: perl-5.12.2/installperl
+Index: perl-5.12.3/installperl
 ===================================================================
---- perl-5.12.2.orig/installperl
-+++ perl-5.12.2/installperl
+--- perl-5.12.3.orig/installperl
++++ perl-5.12.3/installperl
 @@ -750,7 +750,7 @@ sub installlib {
      }
  
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/Configure-multilib.patch b/meta/recipes-devtools/perl/perl-5.12.3/Configure-multilib.patch
similarity index 89%
rename from meta/recipes-devtools/perl/perl-5.12.2/Configure-multilib.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/Configure-multilib.patch
index 6a4125b..ef2be3d 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/Configure-multilib.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/Configure-multilib.patch
@@ -1,9 +1,9 @@
 Upstream-Status:Pending
 
-Index: perl-5.12.2/Configure
+Index: perl-5.12.3/Configure
 ===================================================================
---- perl-5.12.2.orig/Configure
-+++ perl-5.12.2/Configure
+--- perl-5.12.3.orig/Configure
++++ perl-5.12.3/Configure
 @@ -1316,8 +1316,9 @@ loclibpth="/usr/local/lib /opt/local/lib
  loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
  
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.SH.patch b/meta/recipes-devtools/perl/perl-5.12.3/Makefile.SH.patch
similarity index 89%
rename from meta/recipes-devtools/perl/perl-5.12.2/Makefile.SH.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/Makefile.SH.patch
index 72f1b8f..6371a3d 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.SH.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/Makefile.SH.patch
@@ -1,9 +1,9 @@
 Upstream-Status:Inappropriate [embedded specific]
 
-Index: perl-5.12.2/Makefile.SH
+Index: perl-5.12.3/Makefile.SH
 ===================================================================
---- perl-5.12.2.orig/Makefile.SH
-+++ perl-5.12.2/Makefile.SH
+--- perl-5.12.3.orig/Makefile.SH
++++ perl-5.12.3/Makefile.SH
 @@ -50,12 +50,12 @@ case "$useshrplib" in
  true)
  	# Prefix all runs of 'miniperl' and 'perl' with
@@ -53,14 +53,14 @@ Index: perl-5.12.2/Makefile.SH
  	    ;;
  	os390)	test -f /bin/env && ldlibpth="/bin/env $ldlibpth"
  		;;
-@@ -553,9 +543,19 @@ splintfiles = $(c1)
+@@ -557,9 +547,19 @@ splintfiles = $(c1)
  .c.s:
  	$(CCCMDSRC) -S $*.c
  
--all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) miniperl $(generated_pods) $(private) $(unidatafiles) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
+-all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) $(generated_pods) $(private) $(unidatafiles) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
 -	@echo " ";
 -	@echo "	Everything is up to date. Type '$(MAKE) test' to run test suite."
-+#all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) miniperl $(generated_pods) $(private) $(unidatafiles) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
++#all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) $(generated_pods) $(private) $(unidatafiles) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
 +#	@echo " ";
 +#	@echo "	Everything is up to date. Type '$(MAKE) test' to run test suite."
 +
@@ -76,7 +76,7 @@ Index: perl-5.12.2/Makefile.SH
  
  .PHONY: all translators utilities
  
-@@ -563,16 +563,16 @@ all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) mi
+@@ -567,16 +567,16 @@ all: $(FIRSTMAKEFILE) $(MINIPERL_EXE) $(
  # by make_patchnum.pl.
  git_version.h: lib/Config_git.pl
  
@@ -96,7 +96,7 @@ Index: perl-5.12.2/Makefile.SH
  	@echo " "; echo "	Making utilities"; cd utils; $(LDLIBPTH) $(MAKE) all
  
  
-@@ -747,7 +747,7 @@ $(LIBPERL): $& $(obj) $(DYNALOADER) $(LI
+@@ -754,7 +754,7 @@ $(LIBPERL): $& $(obj) $(DYNALOADER) $(LI
  	true)
  		$spitshell >>$Makefile <<'!NO!SUBS!'
  	rm -f $@
@@ -105,7 +105,7 @@ Index: perl-5.12.2/Makefile.SH
  !NO!SUBS!
  		case "$osname" in
  		aix)
-@@ -788,7 +788,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
+@@ -795,7 +795,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
  	$(CC) -o $(MINIPERL_EXE) $(CLDFLAGS) \
  	    $(mini_obj) \
  	    miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
@@ -116,7 +116,7 @@ Index: perl-5.12.2/Makefile.SH
  !NO!SUBS!
  		;;
  	next4*)
-@@ -796,7 +798,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
+@@ -803,7 +805,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
  $(MINIPERL_EXE): $& miniperlmain$(OBJ_EXT) $(mini_obj) perlmini$(OBJ_EXT) opmini$(OBJ_EXT)
  	$(CC) -o $(MINIPERL_EXE) $(mini_obj) \
  	    miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
@@ -127,7 +127,7 @@ Index: perl-5.12.2/Makefile.SH
  !NO!SUBS!
  		;;
  	darwin*)
-@@ -818,7 +822,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
+@@ -825,7 +829,9 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
  	$(CC) $(CLDFLAGS) $(NAMESPACEFLAGS) -o $(MINIPERL_EXE) \
  	    $(mini_obj) \
  	    miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
@@ -138,7 +138,7 @@ Index: perl-5.12.2/Makefile.SH
  !NO!SUBS!
  		;;
  	*)
-@@ -828,7 +834,10 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
+@@ -835,7 +841,10 @@ $(MINIPERL_EXE): $& miniperlmain$(OBJ_EX
  	$(LDLIBPTH) $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE) \
  	    $(mini_obj) \
  	    miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
@@ -150,7 +150,7 @@ Index: perl-5.12.2/Makefile.SH
  !NO!SUBS!
  		;;
  	esac
-@@ -950,7 +959,7 @@ case "${osname}" in
+@@ -957,7 +966,7 @@ case "${osname}" in
  catamount)
  $spitshell >>$Makefile <<!GROK!THIS!
  .PHONY: makeppport
@@ -159,7 +159,7 @@ Index: perl-5.12.2/Makefile.SH
  	-@for f in Makefile.PL PPPort_pm.PL PPPort_xs.PL ppport_h.PL; do \
  	(cd ext/Devel-PPPort && `pwd`/run.sh ../../$(MINIPERL_EXE) -I../../lib \$\$f); \
  	done
-@@ -960,7 +969,7 @@ makeppport: \$(MINIPERL_EXE) \$(CONFIGPM
+@@ -967,7 +976,7 @@ makeppport: \$(MINIPERL_EXE) \$(CONFIGPM
  *)
  $spitshell >>$Makefile <<'!NO!SUBS!'
  .PHONY: makeppport
@@ -168,7 +168,7 @@ Index: perl-5.12.2/Makefile.SH
  	$(MINIPERL) $(Icwd) mkppport
  
  !NO!SUBS!
-@@ -970,29 +979,29 @@ esac
+@@ -977,29 +986,29 @@ esac
  $spitshell >>$Makefile <<'!NO!SUBS!'
  
  .PHONY: preplibrary
@@ -205,7 +205,7 @@ Index: perl-5.12.2/Makefile.SH
  	$(MINIPERL) $(Icwd) lib/unicore/mktables -C lib/unicore -P pod -maketest -makelist -p
  #	Commented out so always runs, mktables looks at far more files than we
  #	can in this makefile to decide if needs to run or not
-@@ -1001,21 +1010,21 @@ uni.data: $(MINIPERL_EXE) $(CONFIGPM) li
+@@ -1008,21 +1017,21 @@ uni.data: $(MINIPERL_EXE) $(CONFIGPM) li
  # $(PERL_EXE) and ext because buildtoc uses Text::Wrap uses re
  # But also this ensures that all extensions are built before we try to scan
  # them, which picks up Devel::PPPort's documentation.
@@ -224,15 +224,15 @@ Index: perl-5.12.2/Makefile.SH
 +pod/perlmodlib.pod: pod/perlmodlib.PL MANIFEST
  	$(MINIPERL) $(Icwd) pod/perlmodlib.PL -q
  
- pod/perldelta.pod: pod/perl5122delta.pod
- 	$(LNS) perl5122delta.pod pod/perldelta.pod
+ pod/perldelta.pod: pod/perl5123delta.pod
+ 	$(LNS) perl5123delta.pod pod/perldelta.pod
  
 -extra.pods: $(MINIPERL_EXE)
 +extra.pods:
  	-@test ! -f extra.pods || rm -f `cat extra.pods`
  	-@rm -f extra.pods
  	-@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \
-@@ -1058,11 +1067,7 @@ no-install:
+@@ -1065,11 +1074,7 @@ no-install:
  INSTALL_DEPENDENCE = all
  
  install.perl:	$(INSTALL_DEPENDENCE) installperl
@@ -245,7 +245,7 @@ Index: perl-5.12.2/Makefile.SH
  
  # XXX Experimental. Hardwired values, but useful for testing.
  # Eventually Configure could ask for some of these values.
-@@ -1159,16 +1164,16 @@ manicheck:	FORCE
+@@ -1166,16 +1171,16 @@ manicheck:	FORCE
  #
  # DynaLoader may be needed for extensions that use Makefile.PL.
  
@@ -266,7 +266,7 @@ Index: perl-5.12.2/Makefile.SH
  	$(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
  !NO!SUBS!
  
-@@ -1366,10 +1371,10 @@ _test:
+@@ -1373,10 +1378,10 @@ _test:
  
  test_prep_pre: preplibrary utilities $(nonxs_ext)
  
@@ -279,7 +279,7 @@ Index: perl-5.12.2/Makefile.SH
  	$(MINIPERL) make_ext.pl $(dynamic_ext_re) MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) LINKTYPE=dynamic
  	cd t && (rm -f $(PERL_EXE); $(LNS) ../$(PERL_EXE) $(PERL_EXE))
  
-@@ -1460,7 +1465,7 @@ minitest.prep:
+@@ -1467,7 +1472,7 @@ minitest.prep:
  
  # Can't depend on lib/Config.pm because that might be where miniperl
  # is crashing.
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.patch b/meta/recipes-devtools/perl/perl-5.12.3/Makefile.patch
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/Makefile.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/Makefile.patch
index 2c374ed..8a279a5 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/Makefile.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/Makefile.patch
@@ -1,9 +1,9 @@
 Upstream-Status:Inappropriate [embedded specific]
 
-Index: perl-5.12.2/Cross/Makefile
+Index: perl-5.12.3/Cross/Makefile
 ===================================================================
---- perl-5.12.2.orig/Cross/Makefile
-+++ perl-5.12.2/Cross/Makefile
+--- perl-5.12.3.orig/Cross/Makefile
++++ perl-5.12.3/Cross/Makefile
 @@ -2,7 +2,8 @@
  #
  ## $Id: Makefile,v 1.5 2003/12/12 00:48:19 red Exp red $
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/asm-pageh-fix.patch b/meta/recipes-devtools/perl/perl-5.12.3/asm-pageh-fix.patch
similarity index 77%
rename from meta/recipes-devtools/perl/perl-5.12.2/asm-pageh-fix.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/asm-pageh-fix.patch
index 251beb9..c65b1a1 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/asm-pageh-fix.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/asm-pageh-fix.patch
@@ -5,10 +5,10 @@ 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
 people.
 
-Index: perl-5.12.2/cpan/IPC-SysV/SysV.xs
+Index: perl-5.12.3/cpan/IPC-SysV/SysV.xs
 ===================================================================
---- perl-5.12.2.orig/cpan/IPC-SysV/SysV.xs	2001-07-01 04:46:07.000000000 +1000
-+++ perl-5.12.2/cpan/IPC-SysV/SysV.xs	2001-07-01 04:46:07.000000000 +1000
+--- perl-5.12.3.orig/cpan/IPC-SysV/SysV.xs	2001-07-01 04:46:07.000000000 +1000
++++ perl-5.12.3/cpan/IPC-SysV/SysV.xs	2001-07-01 04:46:07.000000000 +1000
 @@ -3,9 +3,6 @@
  #include "XSUB.h"
  
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh b/meta/recipes-devtools/perl/perl-5.12.3/config.sh
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/config.sh
rename to meta/recipes-devtools/perl/perl-5.12.3/config.sh
index 12d44a8..f1c5001 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/config.sh
+++ b/meta/recipes-devtools/perl/perl-5.12.3/config.sh
@@ -14,7 +14,7 @@
 
 : Configure command line arguments.
 config_arg0='Configure'
-config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@DESTDIR@ -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dotherlibdirs=/usr/lib/perl5/5.12.2 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=/usr/bin/less -isr'
+config_args='-des -Doptimize=-O2 -Dmyhostname=localhost -Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Open Embedded -Dinstallprefix=@DESTDIR@ -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dotherlibdirs=/usr/lib/perl5/5.12.3 -Duseshrplib -Dusethreads -Duseithreads -Duselargefiles -Ud_dosuid -Dd_semctl_semun -Ui_db -Ui_ndbm -Ui_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm -Duseperlio -Dinstallusrbinperl -Ubincompat5005 -Uversiononly -Dpager=/usr/bin/less -isr'
 config_argc=28
 config_arg1='-des'
 config_arg2='-Doptimize=-O2'
@@ -26,7 +26,7 @@ config_arg7='-Dinstallprefix=@DESTDIR@'
 config_arg8='-Dprefix=/usr'
 config_arg9='-Dvendorprefix=/usr'
 config_arg10='-Dsiteprefix=/usr'
-config_arg11='-Dotherlibdirs=/usr/lib/perl5/5.12.2'
+config_arg11='-Dotherlibdirs=/usr/lib/perl5/5.12.3'
 config_arg12='-Duseshrplib'
 config_arg13='-Dusethreads'
 config_arg14='-Duseithreads'
@@ -67,8 +67,8 @@ api_subversion='0'
 api_version='12'
 api_versionstring='5.12.0'
 ar='ar'
-archlib='/usr/lib/perl5/5.12.2/@ARCH@-thread-multi'
-archlibexp='/usr/lib/perl5/5.12.2/@ARCH@-thread-multi'
+archlib='/usr/lib/perl5/5.12.3/@ARCH@-thread-multi'
+archlibexp='/usr/lib/perl5/5.12.3/@ARCH@-thread-multi'
 archname64=''
 archname='@ARCH@-thread-multi'
 archobjs=''
@@ -86,7 +86,7 @@ castflags='0'
 cat='cat'
 cc='gcc'
 cccdlflags='-fPIC'
-ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.12.2/@ARCH@-thread-multi/CORE'
+ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.12.3/@ARCH@-thread-multi/CORE'
 ccflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
 ccflags_uselargefiles='-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
 ccname='gcc'
@@ -746,7 +746,7 @@ inc_version_list_init='0'
 incpath=''
 inews=''
 initialinstalllocation='/usr/bin'
-installarchlib='@DESTDIR@/lib/perl5/5.12.2/@ARCH@-thread-multi'
+installarchlib='@DESTDIR@/lib/perl5/5.12.3/@ARCH@-thread-multi'
 installbin='@DESTDIR@/bin'
 installhtml1dir=''
 installhtml3dir=''
@@ -754,23 +754,23 @@ installman1dir=''
 installman3dir=''
 installprefix='@DESTDIR@'
 installprefixexp='@DESTDIR@'
-installprivlib='@DESTDIR@/lib/perl5/5.12.2'
+installprivlib='@DESTDIR@/lib/perl5/5.12.3'
 installscript='@DESTDIR@/bin'
-installsitearch='@DESTDIR@/lib/perl5/site_perl/5.12.2/@ARCH@-thread-multi'
+installsitearch='@DESTDIR@/lib/perl5/site_perl/5.12.3/@ARCH@-thread-multi'
 installsitebin='@DESTDIR@/bin'
 installsitehtml1dir=''
 installsitehtml3dir=''
-installsitelib='@DESTDIR@/lib/perl5/site_perl/5.12.2'
+installsitelib='@DESTDIR@/lib/perl5/site_perl/5.12.3'
 installsiteman1dir=''
 installsiteman3dir=''
 installsitescript='@DESTDIR@/bin'
 installstyle='lib/perl5'
 installusrbinperl='define'
-installvendorarch='@DESTDIR@/lib/perl5/vendor_perl/5.12.2/@ARCH@-thread-multi'
+installvendorarch='@DESTDIR@/lib/perl5/vendor_perl/5.12.3/@ARCH@-thread-multi'
 installvendorbin='@DESTDIR@/bin'
 installvendorhtml1dir=''
 installvendorhtml3dir=''
-installvendorlib='@DESTDIR@/lib/perl5/vendor_perl/5.12.2'
+installvendorlib='@DESTDIR@/lib/perl5/vendor_perl/5.12.3'
 installvendorman1dir=''
 installvendorman3dir=''
 installvendorscript='@DESTDIR@/bin'
@@ -864,7 +864,7 @@ optimize='-O2'
 orderlib='false'
 osname='linux'
 osvers='2.6.37-rc5-yocto-standard+'
-otherlibdirs='/usr/lib/perl5/5.12.2'
+otherlibdirs='/usr/lib/perl5/5.12.3'
 package='perl5'
 pager='/usr/bin/less -isr'
 passcat='cat /etc/passwd'
@@ -884,8 +884,8 @@ pmake=''
 pr=''
 prefix='/usr'
 prefixexp='/usr'
-privlib='/usr/lib/perl5/5.12.2'
-privlibexp='/usr/lib/perl5/5.12.2'
+privlib='/usr/lib/perl5/5.12.3'
+privlibexp='/usr/lib/perl5/5.12.3'
 procselfexe='"/proc/self/exe"'
 prototype='define'
 randbits='48'
@@ -937,17 +937,17 @@ sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
 sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 6, 17, 29, 31, 0'
 sig_size='69'
 signal_t='void'
-sitearch='/usr/lib/perl5/site_perl/5.12.2/@ARCH@-thread-multi'
-sitearchexp='/usr/lib/perl5/site_perl/5.12.2/@ARCH@-thread-multi'
+sitearch='/usr/lib/perl5/site_perl/5.12.3/@ARCH@-thread-multi'
+sitearchexp='/usr/lib/perl5/site_perl/5.12.3/@ARCH@-thread-multi'
 sitebin='/usr/bin'
 sitebinexp='/usr/bin'
 sitehtml1dir=''
 sitehtml1direxp=''
 sitehtml3dir=''
 sitehtml3direxp=''
-sitelib='/usr/lib/perl5/site_perl/5.12.2'
+sitelib='/usr/lib/perl5/site_perl/5.12.3'
 sitelib_stem='/usr/lib/perl5/site_perl'
-sitelibexp='/usr/lib/perl5/site_perl/5.12.2'
+sitelibexp='/usr/lib/perl5/site_perl/5.12.3'
 siteman1dir=''
 siteman1direxp=''
 siteman3dir=''
@@ -1045,17 +1045,17 @@ uvtype='unsigned long'
 uvuformat='"lu"'
 uvxformat='"lx"'
 vaproto='define'
-vendorarch='/usr/lib/perl5/vendor_perl/5.12.2/@ARCH@-thread-multi'
-vendorarchexp='/usr/lib/perl5/vendor_perl/5.12.2/@ARCH@-thread-multi'
+vendorarch='/usr/lib/perl5/vendor_perl/5.12.3/@ARCH@-thread-multi'
+vendorarchexp='/usr/lib/perl5/vendor_perl/5.12.3/@ARCH@-thread-multi'
 vendorbin='/usr/bin'
 vendorbinexp='/usr/bin'
 vendorhtml1dir=' '
 vendorhtml1direxp=''
 vendorhtml3dir=' '
 vendorhtml3direxp=''
-vendorlib='/usr/lib/perl5/vendor_perl/5.12.2'
+vendorlib='/usr/lib/perl5/vendor_perl/5.12.3'
 vendorlib_stem='/usr/lib/perl5/vendor_perl'
-vendorlibexp='/usr/lib/perl5/vendor_perl/5.12.2'
+vendorlibexp='/usr/lib/perl5/vendor_perl/5.12.3'
 vendorman1dir=' '
 vendorman1direxp=''
 vendorman3dir=' '
@@ -1064,7 +1064,7 @@ vendorprefix='/usr'
 vendorprefixexp='/usr'
 vendorscript='/usr/bin'
 vendorscriptexp='/usr/bin'
-version='5.12.2'
+version='5.12.3'
 version_patchlevel_string='version 12 subversion 2'
 versiononly='undef'
 vi=''
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh-32 b/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/config.sh-32
rename to meta/recipes-devtools/perl/perl-5.12.3/config.sh-32
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh-32-be b/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-be
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/config.sh-32-be
rename to meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-be
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh-32-le b/meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-le
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/config.sh-32-le
rename to meta/recipes-devtools/perl/perl-5.12.3/config.sh-32-le
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh-64 b/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/config.sh-64
rename to meta/recipes-devtools/perl/perl-5.12.3/config.sh-64
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh-64-be b/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-be
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/config.sh-64-be
rename to meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-be
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/config.sh-64-le b/meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-le
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/config.sh-64-le
rename to meta/recipes-devtools/perl/perl-5.12.3/config.sh-64-le
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/cross-generate_uudmap.patch b/meta/recipes-devtools/perl/perl-5.12.3/cross-generate_uudmap.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/cross-generate_uudmap.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/cross-generate_uudmap.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_optim.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_optim.diff
similarity index 92%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/arm_optim.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/arm_optim.diff
index c86ddc9..b5b952e 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_optim.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_optim.diff
@@ -31,4 +31,4 @@ index a5d71b9..6914ba6 100755
      toke) ;;
      universal) ;;
 -- 
-tg: (c823880..) debian/arm_optim (depends on: upstream)
+tg: (a508b62..) debian/arm_optim (depends on: upstream)
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.3/debian/arm_thread_stress_timeout.diff
similarity index 90%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/arm_thread_stress_timeout.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/arm_thread_stress_timeout.diff
index c4b4c13..700b344 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/arm_thread_stress_timeout.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/arm_thread_stress_timeout.diff
@@ -22,4 +22,4 @@ index adfd1ed..652a3e6 100755
      my $mutex = 1;
      share($mutex);
 -- 
-tg: (c823880..) debian/arm_thread_stress_timeout (depends on: upstream)
+tg: (a508b62..) debian/arm_thread_stress_timeout (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_config_path.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_config_path.diff
similarity index 92%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_config_path.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_config_path.diff
index 4a349b4..27b4a45 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_config_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_config_path.diff
@@ -21,4 +21,4 @@ index 76cd81e..65a3b27 100644
          my($configpmtest) = File::Spec->catfile($configpmdir,"Config.pm");
          my $inc_key;
 -- 
-tg: (c823880..) debian/cpan_config_path (depends on: upstream)
+tg: (a508b62..) debian/cpan_config_path (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_definstalldirs.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_definstalldirs.diff
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_definstalldirs.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_definstalldirs.diff
index 3e3e53f..3931c2d 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpan_definstalldirs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpan_definstalldirs.diff
@@ -34,4 +34,4 @@ index 53ffbf1..53976ff 100644
  
      if (exists $CPAN::HandleConfig::keys{mbuild_install_build_command}
 -- 
-tg: (c823880..) debian/cpan_definstalldirs (depends on: upstream)
+tg: (a508b62..) debian/cpan_definstalldirs (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_config_path.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_config_path.diff
similarity index 96%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_config_path.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_config_path.diff
index 6510119..8f2f5d2 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_config_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_config_path.diff
@@ -42,4 +42,4 @@ index 1a38200..6ee0d82 100644
                                      require File::Basename;
                                      my $dir = File::Basename::dirname(
 -- 
-tg: (c823880..) debian/cpanplus_config_path (depends on: upstream)
+tg: (a508b62..) debian/cpanplus_config_path (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_definstalldirs.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_definstalldirs.diff
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_definstalldirs.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_definstalldirs.diff
index 2ec063c..bd5fe80 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/cpanplus_definstalldirs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/cpanplus_definstalldirs.diff
@@ -51,4 +51,4 @@ index 0000000..5e6e11e
 +
 +1;
 -- 
-tg: (c823880..) debian/cpanplus_definstalldirs (depends on: upstream)
+tg: (a508b62..) debian/cpanplus_definstalldirs (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/db_file_ver.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/db_file_ver.diff
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/db_file_ver.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/db_file_ver.diff
index a974d08..e9aa60a 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/db_file_ver.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/db_file_ver.diff
@@ -31,4 +31,4 @@ index 47158d3..67ccdff 100644
      /* check that libdb is recent enough  -- we need 2.3.4 or greater */
      if (Major == 2 && (Minor < 3 || (Minor ==  3 && Patch < 4)))
 -- 
-tg: (c823880..) debian/db_file_ver (depends on: upstream)
+tg: (a508b62..) debian/db_file_ver (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/deprecate-with-apt.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/deprecate-with-apt.diff
similarity index 97%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/deprecate-with-apt.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/deprecate-with-apt.diff
index e580466..ad0b0cf 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/deprecate-with-apt.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/deprecate-with-apt.diff
@@ -58,4 +58,4 @@ index 7b92e0b..9db7330 100644
  	    return;
  	}
 -- 
-tg: (c823880..) debian/deprecate-with-apt (depends on: upstream)
+tg: (a508b62..) debian/deprecate-with-apt (depends on: upstream)
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.3/debian/devel-ppport-ia64-optim.diff
similarity index 93%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/devel-ppport-ia64-optim.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/devel-ppport-ia64-optim.diff
index c656010..e57a315 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/devel-ppport-ia64-optim.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/devel-ppport-ia64-optim.diff
@@ -31,4 +31,4 @@ index 67eebc1..f1ef7a2 100644
      $PL_FILES{'apicheck_c.PL'} = 'apicheck.c';
      push @C_FILES, qw{ apicheck.c };
 -- 
-tg: (c823880..) debian/devel-ppport-ia64-optim (depends on: upstream)
+tg: (a508b62..) debian/devel-ppport-ia64-optim (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/disable-zlib-bundling.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/disable-zlib-bundling.diff
similarity index 92%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/disable-zlib-bundling.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/disable-zlib-bundling.diff
index e036dc5..44349a5 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/disable-zlib-bundling.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/disable-zlib-bundling.diff
@@ -28,4 +28,4 @@ index c56cc03..2c6659b 100644
  OLD_ZLIB        = False
  GZIP_OS_CODE    = AUTO_DETECT
 -- 
-tg: (c823880..) debian/disable-zlib-bundling (depends on: upstream)
+tg: (a508b62..) debian/disable-zlib-bundling (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/doc_info.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/doc_info.diff
similarity index 88%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/doc_info.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/doc_info.diff
index 2f5d9a4..be75f30 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/doc_info.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/doc_info.diff
@@ -10,10 +10,10 @@ Indicate that the user needs to install the perl-doc package.
  1 files changed, 10 insertions(+), 2 deletions(-)
 
 diff --git a/pod/perl.pod b/pod/perl.pod
-index e48e526..3b0bbf6 100644
+index e67f062..3b8ae83 100644
 --- a/pod/perl.pod
 +++ b/pod/perl.pod
-@@ -241,8 +241,16 @@ For ease of access, the Perl manual has been split up into several sections.
+@@ -242,8 +242,16 @@ For ease of access, the Perl manual has been split up into several sections.
      perlwin32		Perl notes for Windows
  
  
@@ -33,4 +33,4 @@ index e48e526..3b0bbf6 100644
  In general, if something strange has gone wrong with your program and you're
  not sure where you should look for help, try the B<-w> switch first.  It will
 -- 
-tg: (c823880..) debian/doc_info (depends on: upstream)
+tg: (a508b62..) debian/doc_info (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/enc2xs_inc.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/enc2xs_inc.diff
similarity index 82%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/enc2xs_inc.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/enc2xs_inc.diff
index e96d53d..4cac4b7 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/enc2xs_inc.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/enc2xs_inc.diff
@@ -5,14 +5,15 @@ Bug-Debian: http://bugs.debian.org/290336
 
 - ignore missing directories,
 - follow symlinks (/usr/share/perl/5.8 -> 5.8.4).
-
+- filter "." out when running "enc2xs -C", it's unnecessary and causes
+  issues with follow => 1 (see #603686 and [rt.cpan.org #64585])
 
 ---
  cpan/Encode/bin/enc2xs |    8 ++++----
  1 files changed, 4 insertions(+), 4 deletions(-)
 
 diff --git a/cpan/Encode/bin/enc2xs b/cpan/Encode/bin/enc2xs
-index 773c0a0..049ecf9 100644
+index 773c0a0..bc1ae1b 100644
 --- a/cpan/Encode/bin/enc2xs
 +++ b/cpan/Encode/bin/enc2xs
 @@ -924,11 +924,11 @@ use vars qw(
@@ -43,9 +44,9 @@ index 773c0a0..049ecf9 100644
  	}
      };
 -    File::Find::find({wanted => $wanted}, @INC);
-+    File::Find::find({wanted => $wanted, follow => 1}, grep -d, @INC);
++    File::Find::find({wanted => $wanted, follow => 1}, grep -d && !/^\./, @INC);
      $_ModLines = "";
      for my $enc ( sort keys %LocalMod ) {
          $_ModLines .=
 -- 
-tg: (c823880..) debian/enc2xs_inc (depends on: upstream)
+tg: (a508b62..) debian/enc2xs_inc (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/errno_ver.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/errno_ver.diff
similarity index 94%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/errno_ver.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/errno_ver.diff
index b28b4bc..de73ed5 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/errno_ver.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/errno_ver.diff
@@ -31,4 +31,4 @@ index 124b8fc..b554cd4 100644
  \$VERSION = eval \$VERSION;
  \@ISA = qw(Exporter);
 -- 
-tg: (c823880..) debian/errno_ver (depends on: upstream)
+tg: (a508b62..) debian/errno_ver (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/extutils_hacks.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/extutils_hacks.diff
similarity index 99%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/extutils_hacks.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/extutils_hacks.diff
index 1fb635d..e1cbdb5 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/extutils_hacks.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/extutils_hacks.diff
@@ -312,4 +312,4 @@ index 24ae909..12d421d 100644
  
  ExtUtils::Embed exports the following functions:
 -- 
-tg: (c823880..) debian/extutils_hacks (depends on: upstream)
+tg: (a508b62..) debian/extutils_hacks (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fakeroot.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fakeroot.diff
similarity index 93%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fakeroot.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fakeroot.diff
index 380955b..2c8def5 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fakeroot.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fakeroot.diff
@@ -15,7 +15,7 @@ rule where the Makefile is created, but is for the clean/binary* targets.
  1 files changed, 2 insertions(+), 7 deletions(-)
 
 diff --git a/Makefile.SH b/Makefile.SH
-index c039938..15184d8 100755
+index fc13b2b..d420229 100755
 --- a/Makefile.SH
 +++ b/Makefile.SH
 @@ -50,12 +50,7 @@ case "$useshrplib" in
@@ -42,4 +42,4 @@ index c039938..15184d8 100755
  	    case "$osname" in
  	    os2)
 -- 
-tg: (c823880..) debian/fakeroot (depends on: upstream)
+tg: (a508b62..) debian/fakeroot (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/autodie-flock.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/autodie-flock.diff
similarity index 98%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/autodie-flock.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/autodie-flock.diff
index 1e2c1ad..375ae41 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/autodie-flock.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/autodie-flock.diff
@@ -97,4 +97,4 @@ index a7550ba..6421a56 100755
  is($@, "", "Non-blocking flock should not fail on EWOULDBLOCK");
  
 -- 
-tg: (c823880..) fixes/autodie-flock (depends on: upstream)
+tg: (a508b62..) fixes/autodie-flock (depends on: upstream)
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.3/debian/fixes/concat-stack-corruption.diff
similarity index 91%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/concat-stack-corruption.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/concat-stack-corruption.diff
index ef21261..40437f3 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/concat-stack-corruption.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/concat-stack-corruption.diff
@@ -15,7 +15,7 @@ and the like.
  1 files changed, 3 insertions(+), 0 deletions(-)
 
 diff --git a/pp_hot.c b/pp_hot.c
-index 3371e88..e9cccf3 100644
+index ee699ef..c5ed14e 100644
 --- a/pp_hot.c
 +++ b/pp_hot.c
 @@ -271,6 +271,8 @@ PP(pp_concat)
@@ -36,4 +36,4 @@ index 3371e88..e9cccf3 100644
      sv_catpvn_nomg(TARG, rpv, rlen);
  
 -- 
-tg: (c823880..) fixes/concat-stack-corruption (depends on: upstream)
+tg: (a508b62..) fixes/concat-stack-corruption (depends on: upstream)
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.3/debian/fixes/cpanplus-without-home.diff
similarity index 94%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/cpanplus-without-home.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/cpanplus-without-home.diff
index 798b7c2..e7ff57c 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/cpanplus-without-home.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/cpanplus-without-home.diff
@@ -29,4 +29,4 @@ index 27d2abc..8475c36 100644
  use Params::Check               qw[check];
  use Module::Load::Conditional   qw[can_load];
 -- 
-tg: (c823880..) fixes/cpanplus-without-home (depends on: upstream)
+tg: (a508b62..) fixes/cpanplus-without-home (depends on: upstream)
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.3/debian/fixes/h2ph-gcc-4.5.diff
similarity index 98%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/h2ph-gcc-4.5.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/h2ph-gcc-4.5.diff
index 49d797c..9faab81 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.3/debian/fixes/h2ph-gcc-4.5.diff
@@ -105,4 +105,4 @@ index 8f56db4..1255807 100644
  		print PREAMBLE
  		    "unless (defined &$_) { sub $_() { \"",
 -- 
-tg: (c823880..) fixes/h2ph-gcc-4.5 (depends on: upstream)
+tg: (a508b62..) fixes/h2ph-gcc-4.5 (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/hurd-ccflags.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/hurd-ccflags.diff
similarity index 92%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/hurd-ccflags.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/hurd-ccflags.diff
index d7b43e9..8868c64 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/hurd-ccflags.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/hurd-ccflags.diff
@@ -25,4 +25,4 @@ index 2cfce54..c1ba2db 100644
  # The following routines are only available as stubs in GNU libc.
  # XXX remove this once metaconf detects the GNU libc stubs.
 -- 
-tg: (c823880..) fixes/hurd-ccflags (depends on: upstream)
+tg: (a508b62..) fixes/hurd-ccflags (depends on: upstream)
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.3/debian/fixes/lc-numeric-docs.diff
similarity index 98%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-docs.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-docs.diff
index ece4989..67a55da 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-docs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-docs.diff
@@ -94,4 +94,4 @@ index 0dbabe7..0bec423 100644
  =head2 Freely available locale definitions
  
 -- 
-tg: (c823880..) fixes/lc-numeric-docs (depends on: upstream)
+tg: (a508b62..) fixes/lc-numeric-docs (depends on: upstream)
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.3/debian/fixes/lc-numeric-sprintf.diff
similarity index 93%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-sprintf.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-sprintf.diff
index b150e72..9fe07eb 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/lc-numeric-sprintf.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/lc-numeric-sprintf.diff
@@ -28,4 +28,4 @@ index e94f158..3c6badb 100644
  	if (PL_hints & HINT_LOCALE)
  	    goto nope;
 -- 
-tg: (c823880..) fixes/lc-numeric-sprintf (depends on: upstream)
+tg: (a508b62..) fixes/lc-numeric-sprintf (depends on: upstream)
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.3/debian/fixes/net_smtp_docs.diff
similarity index 91%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/net_smtp_docs.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/net_smtp_docs.diff
index f7b5e42..2307a09 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/net_smtp_docs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/net_smtp_docs.diff
@@ -22,4 +22,4 @@ index a28496d..07b2498 100644
  Example:
  
 -- 
-tg: (c823880..) fixes/net_smtp_docs (depends on: upstream)
+tg: (a508b62..) fixes/net_smtp_docs (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/processPL.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/processPL.diff
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/processPL.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/processPL.diff
index 3b645d1..fa2d7c3 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/fixes/processPL.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/fixes/processPL.diff
@@ -42,4 +42,4 @@ index 239d6df..294d266 100644
  
  	}
 -- 
-tg: (c823880..) fixes/processPL (depends on: upstream)
+tg: (a508b62..) fixes/processPL (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/instmodsh_doc.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/instmodsh_doc.diff
similarity index 93%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/instmodsh_doc.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/instmodsh_doc.diff
index cfc57fa..5555dfc 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/instmodsh_doc.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/instmodsh_doc.diff
@@ -25,4 +25,4 @@ index 5874aa6..6a2f03e 100644
  
  ExtUtils::Installed
 -- 
-tg: (c823880..) debian/instmodsh_doc (depends on: upstream)
+tg: (a508b62..) debian/instmodsh_doc (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/ld_run_path.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/ld_run_path.diff
similarity index 93%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/ld_run_path.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/ld_run_path.diff
index ced1e8f..02610d3 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/ld_run_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/ld_run_path.diff
@@ -22,4 +22,4 @@ index b807e97..6c955d7 100644
  
  	# Handle possible linker path arguments.
 -- 
-tg: (c823880..) debian/ld_run_path (depends on: upstream)
+tg: (a508b62..) debian/ld_run_path (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/libnet_config_path.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/libnet_config_path.diff
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/libnet_config_path.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/libnet_config_path.diff
index ef0f369..a38e78a 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/libnet_config_path.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/libnet_config_path.diff
@@ -34,4 +34,4 @@ index db51c1f..8404593 100644
  should return a reference to a HASH containing the keys described below.
  For example
 -- 
-tg: (c823880..) debian/libnet_config_path (depends on: upstream)
+tg: (a508b62..) debian/libnet_config_path (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/m68k_thread_stress.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/m68k_thread_stress.diff
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/m68k_thread_stress.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/m68k_thread_stress.diff
index d27a677..675c9aa 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/m68k_thread_stress.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/m68k_thread_stress.diff
@@ -42,4 +42,4 @@ index e3a1086..633374e 100755
  
  use ExtUtils::testlib;
 -- 
-tg: (c823880..) debian/m68k_thread_stress (depends on: upstream)
+tg: (a508b62..) debian/m68k_thread_stress (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/mod_paths.diff
similarity index 97%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/mod_paths.diff
index 96fe4df..26d8ed0 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/mod_paths.diff
@@ -97,4 +97,4 @@ index 05cea40..023d6a0 100644
      S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS),
  		      INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS
 -- 
-tg: (c823880..) debian/mod_paths (depends on: upstream)
+tg: (a508b62..) debian/mod_paths (depends on: upstream)
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.3/debian/module_build_man_extensions.diff
similarity index 96%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/module_build_man_extensions.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/module_build_man_extensions.diff
index bc7fd9e..63c8441 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/module_build_man_extensions.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/module_build_man_extensions.diff
@@ -30,4 +30,4 @@ index 5bd8ec7..b4e606a 100644
  	          $self->config( 'man3ext' );
      my $outfile = File::Spec->catfile( $mandir, $manpage);
 -- 
-tg: (c823880..) debian/module_build_man_extensions (depends on: upstream)
+tg: (a508b62..) debian/module_build_man_extensions (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel b/meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel
new file mode 100644
index 0000000..0839fbd
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/patchlevel
@@ -0,0 +1,45 @@
+Subject: List packaged patches for 5.12.3-2 in patchlevel.h
+Origin: vendor
+Bug-Debian: http://bugs.debian.org/567489
+
+The list can be refreshed from information in debian/patches by running
+'debian/rules refresh-patchlevel'.
+
+
+--- perl/patchlevel.bak
++++ perl/patchlevel.h
+@@ -133,0 +134,34 @@
++	,"DEBPKG:debian/arm_thread_stress_timeout - http://bugs.debian.org/501970 Raise the timeout of ext/threads/shared/t/stress.t to accommodate slower build hosts"
++	,"DEBPKG:debian/cpan_config_path - Set location of CPAN::Config to /etc/perl as /usr may not be writable."
++	,"DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS default for modules installed from CPAN."
++	,"DEBPKG:debian/db_file_ver - http://bugs.debian.org/340047 Remove overly restrictive DB_File version check."
++	,"DEBPKG:debian/doc_info - Replace generic man(1) instructions with Debian-specific information."
++	,"DEBPKG:debian/enc2xs_inc - http://bugs.debian.org/290336 Tweak enc2xs to follow symlinks and ignore missing @INC directories."
++	,"DEBPKG:debian/errno_ver - http://bugs.debian.org/343351 Remove Errno version check due to upgrade problems with long-running processes."
++	,"DEBPKG:debian/extutils_hacks - Various debian-specific ExtUtils changes"
++	,"DEBPKG:debian/fakeroot - Postpone LD_LIBRARY_PATH evaluation to the binary targets."
++	,"DEBPKG:debian/instmodsh_doc - Debian policy doesn't install .packlist files for core or vendor."
++	,"DEBPKG:debian/ld_run_path - Remove standard libs from LD_RUN_PATH as per Debian policy."
++	,"DEBPKG:debian/libnet_config_path - Set location of libnet.cfg to /etc/perl/Net as /usr may not be writable."
++	,"DEBPKG:debian/m68k_thread_stress - http://bugs.debian.org/495826 Disable some threads tests on m68k for now due to missing TLS."
++	,"DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian"
++	,"DEBPKG:debian/module_build_man_extensions - http://bugs.debian.org/479460 Adjust Module::Build manual page extensions for the Debian Perl policy"
++	,"DEBPKG:debian/prune_libs - http://bugs.debian.org/128355 Prune the list of libraries wanted to what we actually need."
++	,"DEBPKG:fixes/net_smtp_docs - http://bugs.debian.org/100195 [rt.cpan.org #36038] Document the Net::SMTP 'Port' option"
++	,"DEBPKG:fixes/processPL - http://bugs.debian.org/357264 [rt.cpan.org #17224] Always use PERLRUNINST when building perl modules."
++	,"DEBPKG:debian/perlivp - http://bugs.debian.org/510895 Make perlivp skip include directories in /usr/local"
++	,"DEBPKG:debian/disable-zlib-bundling - Disable zlib bundling in Compress::Raw::Zlib"
++	,"DEBPKG:debian/cpanplus_definstalldirs - http://bugs.debian.org/533707 Configure CPANPLUS to use the site directories by default."
++	,"DEBPKG:debian/cpanplus_config_path - Save local versions of CPANPLUS::Config::System into /etc/perl."
++	,"DEBPKG:fixes/autodie-flock - http://bugs.debian.org/543731 Allow for flock returning EAGAIN instead of EWOULDBLOCK on linux/parisc"
++	,"DEBPKG:debian/devel-ppport-ia64-optim - http://bugs.debian.org/548943 Work around an ICE on ia64"
++	,"DEBPKG:fixes/cpanplus-without-home - http://bugs.debian.org/577011 [rt.cpan.org #52988] Fix CPANPLUS test failures when HOME doesn't exist"
++	,"DEBPKG:debian/arm_optim - http://bugs.debian.org/580334 Downgrade the optimization of sv.c on arm due to a gcc-4.4 bug"
++	,"DEBPKG:debian/deprecate-with-apt - http://bugs.debian.org/580034 Point users to Debian packages of deprecated core modules"
++	,"DEBPKG:fixes/hurd-ccflags - http://bugs.debian.org/587901 Make hints/gnu.sh append to $ccflags rather than overriding them"
++	,"DEBPKG:debian/squelch-locale-warnings - http://bugs.debian.org/508764 Squelch locale warnings in Debian package maintainer scripts"
++	,"DEBPKG:fixes/lc-numeric-docs - http://bugs.debian.org/379329 [perl #78452] [903eb63] LC_NUMERIC documentation fixes"
++	,"DEBPKG:fixes/lc-numeric-sprintf - http://bugs.debian.org/601549 [perl #78632] [b3fd614] Fix sprintf not to ignore LC_NUMERIC with constants"
++	,"DEBPKG:fixes/concat-stack-corruption - http://bugs.debian.org/596105 [perl #78674] [e3393f5] Fix stack pointer corruption in pp_concat() with 'use encoding'"
++	,"DEBPKG:fixes/h2ph-gcc-4.5 - http://bugs.debian.org/599933 [8d66b3f] h2ph fix for gcc 4.5"
++	,"DEBPKG:patchlevel - http://bugs.debian.org/567489 List packaged patches for 5.12.3-2 in patchlevel.h"
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/perlivp.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/perlivp.diff
similarity index 96%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/perlivp.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/perlivp.diff
index ebe942c..304e4c1 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/perlivp.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/perlivp.diff
@@ -37,4 +37,4 @@ index 9783261..156146f 100644
          next if $_ eq ':'; # skip -d test here
          next if $_ eq 'Dev:Pseudo:'; # why is this in @INC?
 -- 
-tg: (c823880..) debian/perlivp (depends on: upstream)
+tg: (a508b62..) debian/perlivp (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/prune_libs.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/prune_libs.diff
similarity index 96%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/prune_libs.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/prune_libs.diff
index 0f49895..5bb072c 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/prune_libs.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/prune_libs.diff
@@ -35,4 +35,4 @@ index 3a8732b..6013c86 100755
  	    perllibs="$*"
  	    ;;
 -- 
-tg: (c823880..) debian/prune_libs (depends on: upstream)
+tg: (a508b62..) debian/prune_libs (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.3/debian/series b/meta/recipes-devtools/perl/perl-5.12.3/debian/series
new file mode 100644
index 0000000..5425bc6
--- /dev/null
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/series
@@ -0,0 +1,34 @@
+debian/arm_thread_stress_timeout.diff -p1
+debian/cpan_config_path.diff -p1
+debian/cpan_definstalldirs.diff -p1
+debian/db_file_ver.diff -p1
+debian/doc_info.diff -p1
+debian/enc2xs_inc.diff -p1
+debian/errno_ver.diff -p1
+debian/extutils_hacks.diff -p1
+debian/fakeroot.diff -p1
+debian/instmodsh_doc.diff -p1
+debian/ld_run_path.diff -p1
+debian/libnet_config_path.diff -p1
+debian/m68k_thread_stress.diff -p1
+debian/mod_paths.diff -p1
+debian/module_build_man_extensions.diff -p1
+debian/prune_libs.diff -p1
+fixes/net_smtp_docs.diff -p1
+fixes/processPL.diff -p1
+debian/perlivp.diff -p1
+debian/disable-zlib-bundling.diff -p1
+debian/cpanplus_definstalldirs.diff -p1
+debian/cpanplus_config_path.diff -p1
+fixes/autodie-flock.diff -p1
+debian/devel-ppport-ia64-optim.diff -p1
+fixes/cpanplus-without-home.diff -p1
+debian/arm_optim.diff -p1
+debian/deprecate-with-apt.diff -p1
+fixes/hurd-ccflags.diff -p1
+debian/squelch-locale-warnings.diff -p1
+fixes/lc-numeric-docs.diff -p1
+fixes/lc-numeric-sprintf.diff -p1
+fixes/concat-stack-corruption.diff -p1
+fixes/h2ph-gcc-4.5.diff -p1
+patchlevel -p1
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/squelch-locale-warnings.diff b/meta/recipes-devtools/perl/perl-5.12.3/debian/squelch-locale-warnings.diff
similarity index 96%
rename from meta/recipes-devtools/perl/perl-5.12.2/debian/squelch-locale-warnings.diff
rename to meta/recipes-devtools/perl/perl-5.12.3/debian/squelch-locale-warnings.diff
index 68c1a35..eac0fc3 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/debian/squelch-locale-warnings.diff
+++ b/meta/recipes-devtools/perl/perl-5.12.3/debian/squelch-locale-warnings.diff
@@ -52,4 +52,4 @@ index 0dbabe7..60b7bab 100644
  
  The following environment variables are not specific to Perl: They are
 -- 
-tg: (c823880..) debian/squelch-locale-warnings (depends on: upstream)
+tg: (a508b62..) debian/squelch-locale-warnings (depends on: upstream)
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/generate-sh.patch b/meta/recipes-devtools/perl/perl-5.12.3/generate-sh.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/generate-sh.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/generate-sh.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/installperl.patch b/meta/recipes-devtools/perl/perl-5.12.3/installperl.patch
similarity index 81%
rename from meta/recipes-devtools/perl/perl-5.12.2/installperl.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/installperl.patch
index 276eb3d..4560123 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/installperl.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/installperl.patch
@@ -1,9 +1,9 @@
 Upstream-Status:Inappropriate [embedded specific]
 
-Index: perl-5.12.2/installperl
+Index: perl-5.12.3/installperl
 ===================================================================
---- perl-5.12.2.orig/installperl
-+++ perl-5.12.2/installperl
+--- perl-5.12.3.orig/installperl
++++ perl-5.12.3/installperl
 @@ -3,8 +3,8 @@
  BEGIN {
      require 5.004;
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/letgcc-find-errno.patch b/meta/recipes-devtools/perl/perl-5.12.3/letgcc-find-errno.patch
similarity index 92%
rename from meta/recipes-devtools/perl/perl-5.12.2/letgcc-find-errno.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/letgcc-find-errno.patch
index 268cb53..5161e4c 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/letgcc-find-errno.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/letgcc-find-errno.patch
@@ -10,10 +10,10 @@ external toolchain since perl will search in ${STAGING_INCDIR} for
 errno.h (when using gcc) and that isn't where it's located - its
 wherever the external toolchain keeps it's headers.
 
-Index: perl-5.12.2/ext/Errno/Errno_pm.PL
+Index: perl-5.12.3/ext/Errno/Errno_pm.PL
 ===================================================================
---- perl-5.12.2.orig/ext/Errno/Errno_pm.PL
-+++ perl-5.12.2/ext/Errno/Errno_pm.PL
+--- perl-5.12.3.orig/ext/Errno/Errno_pm.PL
++++ perl-5.12.3/ext/Errno/Errno_pm.PL
 @@ -17,8 +17,18 @@ unlink "Errno.tmp" if -f "Errno.tmp";
  open OUT, ">Errno.tmp" or die "Cannot open Errno.tmp: $!";
  select OUT;
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/native-nopacklist.patch b/meta/recipes-devtools/perl/perl-5.12.3/native-nopacklist.patch
similarity index 94%
rename from meta/recipes-devtools/perl/perl-5.12.2/native-nopacklist.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/native-nopacklist.patch
index 8d5b819..389c334 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/native-nopacklist.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/native-nopacklist.patch
@@ -2,10 +2,10 @@ 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
+Index: perl-5.12.3/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
 ===================================================================
---- perl-5.12.2.orig/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
-+++ perl-5.12.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
+--- perl-5.12.3.orig/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
++++ perl-5.12.3/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm
 @@ -2047,8 +2047,6 @@ doc__install : doc_site_install
  
  pure_perl_install :: all
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/native-perlinc.patch b/meta/recipes-devtools/perl/perl-5.12.3/native-perlinc.patch
similarity index 88%
rename from meta/recipes-devtools/perl/perl-5.12.2/native-perlinc.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/native-perlinc.patch
index ffaf326..f0bb1f6 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/native-perlinc.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/native-perlinc.patch
@@ -2,8 +2,8 @@ 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
-+++ perl-5.12.2/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm	2008-10-31 22:01:35.000000000 +0000
+--- perl-5.12.3.orig/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm	2008-10-31 22:01:35.000000000 +0000
++++ perl-5.12.3/cpan/ExtUtils-MakeMaker/lib/ExtUtils/MM_Unix.pm	2008-10-31 22:01:35.000000000 +0000
 @@ -1597,6 +1597,19 @@
  	$self->{PERL_LIB}     ||= $Config{privlibexp};
  	$self->{PERL_ARCHLIB} ||= $Config{archlibexp};
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch b/meta/recipes-devtools/perl/perl-5.12.3/native-ssp.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/native-ssp.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/native-ssp.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_1.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_1.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_1.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_1.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_2.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_2.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_2.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_2.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_3.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_3.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_3.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_3.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_4.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_4.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_4.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_4.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_5.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_5.patch
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_5.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_5.patch
index 70f7104..5891ee6 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_5.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_5.patch
@@ -43,10 +43,10 @@ Date:   Mon Feb 14 10:14:18 2011 +0000
     This approach actually takes advantage of ExtUtils::MakeMaker setting an -I
     option correct for the depth of directory being built.
 
-Index: perl-5.12.2/Cross/Makefile-cross-SH
+Index: perl-5.12.3/Cross/Makefile-cross-SH
 ===================================================================
---- perl-5.12.2.orig/Cross/Makefile-cross-SH
-+++ perl-5.12.2/Cross/Makefile-cross-SH
+--- perl-5.12.3.orig/Cross/Makefile-cross-SH
++++ perl-5.12.3/Cross/Makefile-cross-SH
 @@ -324,7 +324,7 @@ $spitshell >>$Makefile <<'!NO!SUBS!'
  
  CONFIGPM = xlib/$(CROSS_NAME)/Config.pm
@@ -87,10 +87,10 @@ Index: perl-5.12.2/Cross/Makefile-cross-SH
  	@$(LDLIBPTH) $(RUN) ./miniperl$(EXE_EXT) -Ilib make_ext.pl --cross $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
  !NO!SUBS!
  
-Index: perl-5.12.2/MANIFEST
+Index: perl-5.12.3/MANIFEST
 ===================================================================
---- perl-5.12.2.orig/MANIFEST
-+++ perl-5.12.2/MANIFEST
+--- perl-5.12.3.orig/MANIFEST
++++ perl-5.12.3/MANIFEST
 @@ -4747,6 +4747,7 @@ win32/wince.c			WinCE port
  win32/wince.h			WinCE port
  win32/wincesck.c		WinCE port
@@ -99,10 +99,10 @@ Index: perl-5.12.2/MANIFEST
  x2p/a2p.c			Output of a2p.y run through byacc
  x2p/a2p.h			Global declarations
  x2p/a2p.pod			Pod for awk to perl translator
-Index: perl-5.12.2/Makefile.SH
+Index: perl-5.12.3/Makefile.SH
 ===================================================================
---- perl-5.12.2.orig/Makefile.SH
-+++ perl-5.12.2/Makefile.SH
+--- perl-5.12.3.orig/Makefile.SH
++++ perl-5.12.3/Makefile.SH
 @@ -428,7 +428,7 @@ esac
  ## In the following dollars and backticks do not need the extra backslash.
  $spitshell >>$Makefile <<'!NO!SUBS!'
@@ -143,10 +143,10 @@ Index: perl-5.12.2/Makefile.SH
  	$(MINIPERL) make_ext.pl $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
  !NO!SUBS!
  
-Index: perl-5.12.2/installperl
+Index: perl-5.12.3/installperl
 ===================================================================
---- perl-5.12.2.orig/installperl
-+++ perl-5.12.2/installperl
+--- perl-5.12.3.orig/installperl
++++ perl-5.12.3/installperl
 @@ -714,6 +714,8 @@ sub installlib {
      # ignore the test extensions
      return if $dir =~ m{\bXS/(?:APItest|Typemap)\b};
@@ -156,10 +156,10 @@ Index: perl-5.12.2/installperl
      # ignore the demo files
      return if $dir =~ /\b(?:demos?|eg)\b/;
  
-Index: perl-5.12.2/make_ext.pl
+Index: perl-5.12.3/make_ext.pl
 ===================================================================
---- perl-5.12.2.orig/make_ext.pl
-+++ perl-5.12.2/make_ext.pl
+--- perl-5.12.3.orig/make_ext.pl
++++ perl-5.12.3/make_ext.pl
 @@ -4,11 +4,9 @@ use warnings;
  use Config;
  BEGIN {
@@ -228,10 +228,10 @@ Index: perl-5.12.2/make_ext.pl
  	if ($is_VMS) {
  	    my $libd = VMS::Filespec::vmspath($lib_dir);
  	    push @args, "INST_LIB=$libd", "INST_ARCHLIB=$libd";
-Index: perl-5.12.2/vms/descrip_mms.template
+Index: perl-5.12.3/vms/descrip_mms.template
 ===================================================================
---- perl-5.12.2.orig/vms/descrip_mms.template
-+++ perl-5.12.2/vms/descrip_mms.template
+--- perl-5.12.3.orig/vms/descrip_mms.template
++++ perl-5.12.3/vms/descrip_mms.template
 @@ -360,7 +360,7 @@ CRTLOPTS =,$(CRTL)/Options
  unidatadirs = lib/unicore/To lib/unicore/lib
  
@@ -268,10 +268,10 @@ Index: perl-5.12.2/vms/descrip_mms.template
  
  clean : tidy cleantest
        	- $(MINIPERL) make_ext.pl "MAKE=$(MMS)" "--all" "--target=clean"
-Index: perl-5.12.2/win32/Makefile
+Index: perl-5.12.3/win32/Makefile
 ===================================================================
---- perl-5.12.2.orig/win32/Makefile
-+++ perl-5.12.2/win32/Makefile
+--- perl-5.12.3.orig/win32/Makefile
++++ perl-5.12.3/win32/Makefile
 @@ -923,6 +923,9 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c
  	-$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)"
  	if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM)
@@ -320,10 +320,10 @@ Index: perl-5.12.2/win32/Makefile
  	-del /f $(DISTDIR)\XSLoader\XSLoader.pm
  	-if exist $(LIBDIR)\App rmdir /s /q $(LIBDIR)\App
  	-if exist $(LIBDIR)\Archive rmdir /s /q $(LIBDIR)\Archive
-Index: perl-5.12.2/win32/makefile.mk
+Index: perl-5.12.3/win32/makefile.mk
 ===================================================================
---- perl-5.12.2.orig/win32/makefile.mk
-+++ perl-5.12.2/win32/makefile.mk
+--- perl-5.12.3.orig/win32/makefile.mk
++++ perl-5.12.3/win32/makefile.mk
 @@ -1215,6 +1215,10 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c
  	$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" \
  	    || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE)
@@ -373,10 +373,10 @@ Index: perl-5.12.2/win32/makefile.mk
  	-del /f $(DISTDIR)\XSLoader\XSLoader.pm
  	-if exist $(LIBDIR)\App rmdir /s /q $(LIBDIR)\App
  	-if exist $(LIBDIR)\Archive rmdir /s /q $(LIBDIR)\Archive
-Index: perl-5.12.2/write_buildcustomize.pl
+Index: perl-5.12.3/write_buildcustomize.pl
 ===================================================================
 --- /dev/null
-+++ perl-5.12.2/write_buildcustomize.pl
++++ perl-5.12.3/write_buildcustomize.pl
 @@ -0,0 +1,50 @@
 +#!./miniperl -w
 +
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_6.patch b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_6.patch
similarity index 89%
rename from meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_6.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_6.patch
index cacf9fa..4267739 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/parallel_build_fix_6.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/parallel_build_fix_6.patch
@@ -13,10 +13,10 @@ Date:   Mon Feb 14 20:36:36 2011 +0000
     simplifies many [Mm]akefile* rules, which previously had a special case to
     copy it early.
 
-Index: perl-5.12.2/Cross/Makefile-cross-SH
+Index: perl-5.12.3/Cross/Makefile-cross-SH
 ===================================================================
---- perl-5.12.2.orig/Cross/Makefile-cross-SH
-+++ perl-5.12.2/Cross/Makefile-cross-SH
+--- perl-5.12.3.orig/Cross/Makefile-cross-SH
++++ perl-5.12.3/Cross/Makefile-cross-SH
 @@ -727,7 +727,7 @@ fi
  $spitshell >>$Makefile <<'!NO!SUBS!'
  
@@ -46,10 +46,10 @@ Index: perl-5.12.2/Cross/Makefile-cross-SH
  	- cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \
  		&& $(LDLIBPTH) ./perl TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t uni/*.t </dev/tty
  
-Index: perl-5.12.2/Makefile.SH
+Index: perl-5.12.3/Makefile.SH
 ===================================================================
---- perl-5.12.2.orig/Makefile.SH
-+++ perl-5.12.2/Makefile.SH
+--- perl-5.12.3.orig/Makefile.SH
++++ perl-5.12.3/Makefile.SH
 @@ -970,7 +970,7 @@ esac
  $spitshell >>$Makefile <<'!NO!SUBS!'
  
@@ -88,10 +88,10 @@ Index: perl-5.12.2/Makefile.SH
  	- cd t && (rm -f $(PERL_EXE); $(LNS) ../$(MINIPERL_EXE) $(PERL_EXE)) \
  		&& $(RUN_PERL) TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t re/*.t op/*.t uni/*.t </dev/tty
  
-Index: perl-5.12.2/vms/descrip_mms.template
+Index: perl-5.12.3/vms/descrip_mms.template
 ===================================================================
---- perl-5.12.2.orig/vms/descrip_mms.template
-+++ perl-5.12.2/vms/descrip_mms.template
+--- perl-5.12.3.orig/vms/descrip_mms.template
++++ perl-5.12.3/vms/descrip_mms.template
 @@ -360,7 +360,7 @@ CRTLOPTS =,$(CRTL)/Options
  unidatadirs = lib/unicore/To lib/unicore/lib
  
@@ -120,10 +120,10 @@ Index: perl-5.12.2/vms/descrip_mms.template
  	@ PERL_TEST_DRIVER == "minitest"
  	- @[.vms]test.com "$(E)" "$(__DEBUG__)"
  
-Index: perl-5.12.2/win32/Makefile
+Index: perl-5.12.3/win32/Makefile
 ===================================================================
---- perl-5.12.2.orig/win32/Makefile
-+++ perl-5.12.2/win32/Makefile
+--- perl-5.12.3.orig/win32/Makefile
++++ perl-5.12.3/win32/Makefile
 @@ -918,7 +918,6 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c
  	if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL)
  	$(XCOPY) ..\*.h $(COREDIR)\*.*
@@ -132,10 +132,10 @@ Index: perl-5.12.2/win32/Makefile
  	$(RCOPY) include $(COREDIR)\*.*
  	-$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)"
  	if errorlevel 1 $(MAKE) /$(MAKEFLAGS) $(CONFIGPM)
-Index: perl-5.12.2/win32/makefile.mk
+Index: perl-5.12.3/win32/makefile.mk
 ===================================================================
---- perl-5.12.2.orig/win32/makefile.mk
-+++ perl-5.12.2/win32/makefile.mk
+--- perl-5.12.3.orig/win32/makefile.mk
++++ perl-5.12.3/win32/makefile.mk
 @@ -1210,7 +1210,6 @@ $(CONFIGPM) : $(MINIPERL) ..\config.sh c
  	if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL)
  	$(XCOPY) ..\*.h $(COREDIR)\*.*
@@ -144,10 +144,10 @@ Index: perl-5.12.2/win32/makefile.mk
  	$(RCOPY) include $(COREDIR)\*.*
  	$(MINIPERL) -I..\lib $(ICWD) config_h.PL "INST_VER=$(INST_VER)" \
  	    || $(MAKE) $(MAKEMACROS) $(CONFIGPM) $(MAKEFILE)
-Index: perl-5.12.2/write_buildcustomize.pl
+Index: perl-5.12.3/write_buildcustomize.pl
 ===================================================================
---- perl-5.12.2.orig/write_buildcustomize.pl
-+++ perl-5.12.2/write_buildcustomize.pl
+--- perl-5.12.3.orig/write_buildcustomize.pl
++++ perl-5.12.3/write_buildcustomize.pl
 @@ -24,6 +24,7 @@ my @toolchain = qw(cpan/AutoLoader/lib
  		   cpan/ExtUtils-MakeMaker/lib
  		   dist/ExtUtils-Manifest/lib
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-configpm-switch.patch b/meta/recipes-devtools/perl/perl-5.12.3/perl-configpm-switch.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/perl-configpm-switch.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/perl-configpm-switch.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-configure.sh b/meta/recipes-devtools/perl/perl-5.12.3/perl-configure.sh
similarity index 95%
rename from meta/recipes-devtools/perl/perl-5.12.2/perl-configure.sh
rename to meta/recipes-devtools/perl/perl-5.12.3/perl-configure.sh
index c29e966..e72ce49 100755
--- a/meta/recipes-devtools/perl/perl-5.12.2/perl-configure.sh
+++ b/meta/recipes-devtools/perl/perl-5.12.3/perl-configure.sh
@@ -15,7 +15,7 @@ echo sh Configure -des \
         -Dprefix=/usr \
         -Dvendorprefix=/usr \
         -Dsiteprefix=/usr \
-        -Dotherlibdirs=/usr/lib/perl5/5.12.2 \
+        -Dotherlibdirs=/usr/lib/perl5/5.12.3 \
         -Duseshrplib \
         -Dusethreads \
         -Duseithreads \
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-dynloader.patch b/meta/recipes-devtools/perl/perl-5.12.3/perl-dynloader.patch
similarity index 90%
rename from meta/recipes-devtools/perl/perl-5.12.2/perl-dynloader.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/perl-dynloader.patch
index 21d8bb9..d5ea00f 100644
--- a/meta/recipes-devtools/perl/perl-5.12.2/perl-dynloader.patch
+++ b/meta/recipes-devtools/perl/perl-5.12.3/perl-dynloader.patch
@@ -7,8 +7,8 @@ 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
+--- perl-5.12.3/dist/XSLoader/XSLoader_pm.PL	2007/04/20 09:03:08	1.1
++++ perl-5.12.3/dist/XSLoader/XSLoader_pm.PL	2007/04/20 09:03:08
 @@ -65,6 +65,19 @@
  print OUT <<'EOT';
      my $modpname = join('/',@modparts);
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-enable-gdbm.patch b/meta/recipes-devtools/perl/perl-5.12.3/perl-enable-gdbm.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/perl-enable-gdbm.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/perl-enable-gdbm.patch
diff --git a/meta/recipes-devtools/perl/perl-5.12.2/perl-moreconfig.patch b/meta/recipes-devtools/perl/perl-5.12.3/perl-moreconfig.patch
similarity index 100%
rename from meta/recipes-devtools/perl/perl-5.12.2/perl-moreconfig.patch
rename to meta/recipes-devtools/perl/perl-5.12.3/perl-moreconfig.patch
diff --git a/meta/recipes-devtools/perl/perl-native_5.12.2.bb b/meta/recipes-devtools/perl/perl-native_5.12.3.bb
similarity index 94%
rename from meta/recipes-devtools/perl/perl-native_5.12.2.bb
rename to meta/recipes-devtools/perl/perl-native_5.12.3.bb
index c9882a9..0b0c949 100644
--- a/meta/recipes-devtools/perl/perl-native_5.12.2.bb
+++ b/meta/recipes-devtools/perl/perl-native_5.12.3.bb
@@ -4,7 +4,7 @@ SECTION = "libs"
 LICENSE = "Artistic|GPL"
 LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \
 		    file://Artistic;md5=f921793d03cc6d63ec4b15e9be8fd3f8"
-PR = "r8"
+PR = "r0"
 
 LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \
                     file://Artistic;md5=f921793d03cc6d63ec4b15e9be8fd3f8"
@@ -21,8 +21,8 @@ SRC_URI = "http://ftp.funet.fi/pub/CPAN/src/perl-${PV}.tar.gz \
            file://native-nopacklist.patch;patch=1 \
            file://native-perlinc.patch;patch=1"
 
-SRC_URI[md5sum] = "af2df531d46b77fdf0d97eecb03eddb2"
-SRC_URI[sha256sum] = "cf888340021d5a2d1238bbd9b8b55aaf420a848d46e4d317cb8567f86ceb1022"
+SRC_URI[md5sum] = "29975a69dce54e47fcd6331c085c6c99"
+SRC_URI[sha256sum] = "5678bfd5c2cd59253a26171bf3e681235433b00c730eea8a8046e1b225c11d2f"
 
 S = "${WORKDIR}/perl-${PV}"
 
@@ -96,7 +96,7 @@ do_install () {
 		install $i ${D}${libdir}/perl/${PV}/CORE
 	done
 
-	create_wrapper ${D}${bindir}/perl PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/5.12.2:${STAGING_LIBDIR}/perl/'
+	create_wrapper ${D}${bindir}/perl PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/${PV}:${STAGING_LIBDIR}/perl/'
 }
 do_install_append_nylon() {
 	# get rid of definitions not supported by the gcc version we use for nylon...
diff --git a/meta/recipes-devtools/perl/perl-rdepends_5.12.2.inc b/meta/recipes-devtools/perl/perl-rdepends_5.12.3.inc
similarity index 100%
rename from meta/recipes-devtools/perl/perl-rdepends_5.12.2.inc
rename to meta/recipes-devtools/perl/perl-rdepends_5.12.3.inc
diff --git a/meta/recipes-devtools/perl/perl-rprovides_5.12.2.inc b/meta/recipes-devtools/perl/perl-rprovides_5.12.3.inc
similarity index 100%
rename from meta/recipes-devtools/perl/perl-rprovides_5.12.2.inc
rename to meta/recipes-devtools/perl/perl-rprovides_5.12.3.inc
diff --git a/meta/recipes-devtools/perl/perl_5.12.2.bb b/meta/recipes-devtools/perl/perl_5.12.3.bb
similarity index 85%
rename from meta/recipes-devtools/perl/perl_5.12.2.bb
rename to meta/recipes-devtools/perl/perl_5.12.3.bb
index 9ce8156..584d643 100644
--- a/meta/recipes-devtools/perl/perl_5.12.2.bb
+++ b/meta/recipes-devtools/perl/perl_5.12.3.bb
@@ -8,15 +8,49 @@ PRIORITY = "optional"
 # We need gnugrep (for -I)
 DEPENDS = "virtual/db perl-native-${PV} grep-native"
 DEPENDS += "gdbm zlib"
-PR = "r4"
+PR = "r0"
 
 # 5.10.1 has Module::Build built-in
 PROVIDES += "libmodule-build-perl"
 
 # Major part of version
-#PVM = "5.12"
-
-SRC_URI = "ftp://ftp.funet.fi/pub/CPAN/src/perl-${PV}.tar.gz \
+#PVM = "5.13"
+
+SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \
+	file://debian/arm_thread_stress_timeout.diff \
+	file://debian/cpan_config_path.diff \
+	file://debian/cpan_definstalldirs.diff \
+	file://debian/db_file_ver.diff \
+	file://debian/doc_info.diff \
+	file://debian/enc2xs_inc.diff \
+	file://debian/errno_ver.diff \
+	file://debian/extutils_hacks.diff \
+	file://debian/instmodsh_doc.diff \
+	file://debian/ld_run_path.diff \
+	file://debian/libnet_config_path.diff \
+	file://debian/m68k_thread_stress.diff \
+	file://debian/mod_paths.diff \
+	file://debian/module_build_man_extensions.diff \
+	file://debian/prune_libs.diff \
+	file://debian/fixes/net_smtp_docs.diff \
+	file://debian/fixes/processPL.diff \
+	file://debian/perlivp.diff \
+	file://debian/disable-zlib-bundling.diff \
+	file://debian/cpanplus_definstalldirs.diff \
+	file://debian/cpanplus_config_path.diff \
+	file://debian/fixes/autodie-flock.diff \
+	file://debian/devel-ppport-ia64-optim.diff \
+	file://debian/fixes/cpanplus-without-home.diff \
+	file://debian/arm_optim.diff \
+	file://debian/deprecate-with-apt.diff \
+	file://debian/fixes/hurd-ccflags.diff \
+	file://debian/squelch-locale-warnings.diff \
+	file://debian/fixes/lc-numeric-docs.diff \
+	file://debian/fixes/lc-numeric-sprintf.diff \
+	file://debian/fixes/concat-stack-corruption.diff \
+	file://debian/fixes/h2ph-gcc-4.5.diff \
+	file://debian/patchlevel \
+	\
         file://Makefile.patch;patch=1 \
         file://parallel_build_fix_1.patch \
         file://parallel_build_fix_2.patch \
@@ -34,38 +68,7 @@ SRC_URI = "ftp://ftp.funet.fi/pub/CPAN/src/perl-${PV}.tar.gz \
         file://native-perlinc.patch \
         file://perl-enable-gdbm.patch \
         file://cross-generate_uudmap.patch \
-        file://debian/arm_thread_stress_timeout.diff \
-        file://debian/cpan_config_path.diff \
-        file://debian/cpan_definstalldirs.diff \
-        file://debian/db_file_ver.diff \
-        file://debian/doc_info.diff \
-        file://debian/enc2xs_inc.diff \
-        file://debian/errno_ver.diff \
-        file://debian/extutils_hacks.diff \
-        file://debian/instmodsh_doc.diff \
-        file://debian/ld_run_path.diff \
-        file://debian/libnet_config_path.diff \
-        file://debian/m68k_thread_stress.diff \
-        file://debian/mod_paths.diff \
-        file://debian/module_build_man_extensions.diff \
-        file://debian/prune_libs.diff \
-        file://debian/fixes/net_smtp_docs.diff \
-        file://debian/fixes/processPL.diff \
-        file://debian/perlivp.diff \
-        file://debian/disable-zlib-bundling.diff \
-        file://debian/cpanplus_definstalldirs.diff \
-        file://debian/cpanplus_config_path.diff \
-        file://debian/fixes/autodie-flock.diff \
-        file://debian/devel-ppport-ia64-optim.diff \
-        file://debian/fixes/cpanplus-without-home.diff \
-        file://debian/arm_optim.diff \
-        file://debian/deprecate-with-apt.diff \
-        file://debian/fixes/hurd-ccflags.diff \
-        file://debian/squelch-locale-warnings.diff \
-        file://debian/fixes/lc-numeric-docs.diff \
-        file://debian/fixes/lc-numeric-sprintf.diff \
-        file://debian/fixes/concat-stack-corruption.diff \
-        file://debian/fixes/h2ph-gcc-4.5.diff \
+	\
         file://config.sh \
         file://config.sh-32 \
         file://config.sh-32-le \
@@ -73,10 +76,10 @@ SRC_URI = "ftp://ftp.funet.fi/pub/CPAN/src/perl-${PV}.tar.gz \
         file://config.sh-64 \
         file://config.sh-64-le \
         file://config.sh-64-be"
-#        file://debian/fakeroot.diff
+#	file://debian/fakeroot.diff
 
-SRC_URI[md5sum] = "af2df531d46b77fdf0d97eecb03eddb2"
-SRC_URI[sha256sum] = "cf888340021d5a2d1238bbd9b8b55aaf420a848d46e4d317cb8567f86ceb1022"
+SRC_URI[md5sum] = "29975a69dce54e47fcd6331c085c6c99"
+SRC_URI[sha256sum] = "5678bfd5c2cd59253a26171bf3e681235433b00c730eea8a8046e1b225c11d2f"
 
 inherit siteinfo
 
-- 
1.7.1.1




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

* [PATCH 06/52] web: update svn to 131 to fix build issue
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (4 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 05/52] gdb: set --without-ust for EXTRA_OEFLAGS Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 07/52] tar-1.17 (GPLv2) bugfix Saul Wold
                   ` (47 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Fixes [YOCTO #974]

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../conf/distro/include/poky-default-revisions.inc |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/meta/conf/distro/include/poky-default-revisions.inc b/meta/conf/distro/include/poky-default-revisions.inc
index 5e7ab66..73494b5 100644
--- a/meta/conf/distro/include/poky-default-revisions.inc
+++ b/meta/conf/distro/include/poky-default-revisions.inc
@@ -182,7 +182,7 @@ SRCREV_pn-u-boot ??= "v2010.12"
 SRCREV_pn-ubootchart ??= "10"
 SRCREV_pn-webkit-gtk ??= "72836"
 SRCREV_pn-web-webkit ??= "130"
-SRCREV_pn-web ??= "129"
+SRCREV_pn-web ??= "131"
 SRCREV_pn-xcb-proto ??= "d81ca233e98be8fa59e8c90d262c0516944c5a66"
 SRCREV_pn-xcb-proto-native ??= "d81ca233e98be8fa59e8c90d262c0516944c5a66"
 SRCREV_pn-xf86-video-intel ??= "87ea531c5dc5b39809395b277c330854aaaaf019"
-- 
1.7.1.1




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

* [PATCH 05/52] gdb: set --without-ust for EXTRA_OEFLAGS
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (3 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 04/52] perl: upgrade from 5.12.2 to 5.12.3 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 06/52] web: update svn to 131 to fix build issue Saul Wold
                   ` (48 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Disable using UST since there are some compiler errors with
the newer version of lttng-ust 0.12, there may be other unknow
problems, so wait for upstream fixes.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-devtools/gdb/gdb-common.inc |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-devtools/gdb/gdb-common.inc b/meta/recipes-devtools/gdb/gdb-common.inc
index 84e36ba..95a38b5 100644
--- a/meta/recipes-devtools/gdb/gdb-common.inc
+++ b/meta/recipes-devtools/gdb/gdb-common.inc
@@ -29,7 +29,10 @@ EXPAT = "--without-expat"
 
 EXTRA_OECONF = "--disable-gdbtk --disable-tui --disable-x \
                 --with-curses --disable-multilib --with-system-readline --disable-sim \
-                ${GDBPROPREFIX} --with-libelf=${STAGING_DIR_TARGET} ${EXPAT}"
+                ${GDBPROPREFIX} --with-libelf=${STAGING_DIR_TARGET} ${EXPAT} \
+                --without-ust \
+               "
+
 GDBPROPREFIX = "--program-prefix=''"
 
 do_configure () {
-- 
1.7.1.1




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

* [PATCH 07/52] tar-1.17 (GPLv2) bugfix
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (5 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 06/52] web: update svn to 131 to fix build issue Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 08/52] cpio-2.8 (GPLv2) bug fix Saul Wold
                   ` (46 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

This fixes bug [YOCTO #982]

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../tar/tar-1.17/avoid_heap_overflow.patch         |   22 ++++++++++++++++++++
 meta/recipes-extended/tar/tar_1.17.bb              |    3 +-
 2 files changed, 24 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch

diff --git a/meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch b/meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch
new file mode 100644
index 0000000..b1b2de6
--- /dev/null
+++ b/meta/recipes-extended/tar/tar-1.17/avoid_heap_overflow.patch
@@ -0,0 +1,22 @@
+Upstream-Status="Inappropriate [bugfix: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-0624]"
+
+This patch avoids heap overflow reported by :
+http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-0624
+
+This is a clean patch for the GPLv2 tar recipe.
+
+Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/25
+
+Index: tar-1.17/lib/rtapelib.c
+===================================================================
+--- tar-1.17.orig/lib/rtapelib.c
++++ tar-1.17/lib/rtapelib.c
+@@ -570,7 +570,7 @@ rmt_read__ (int handle, char *buffer, si
+ 
+   sprintf (command_buffer, "R%lu\n", (unsigned long) length);
+   if (do_command (handle, command_buffer) == -1
+-      || (status = get_status (handle)) == SAFE_READ_ERROR)
++      || ((status = get_status (handle)) == SAFE_READ_ERROR) || (status > length))
+     return SAFE_READ_ERROR;
+ 
+   for (counter = 0; counter < status; counter += rlen, buffer += rlen)
diff --git a/meta/recipes-extended/tar/tar_1.17.bb b/meta/recipes-extended/tar/tar_1.17.bb
index be74542..138ea71 100644
--- a/meta/recipes-extended/tar/tar_1.17.bb
+++ b/meta/recipes-extended/tar/tar_1.17.bb
@@ -3,10 +3,11 @@ require tar.inc
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
 
-PR = "r0"
+PR = "r1"
 
 SRC_URI += "file://m4extensions.patch \
     file://gcc43build.patch \
+    file://avoid_heap_overflow.patch \
     "
 
 SRC_URI[md5sum] = "c6c4f1c075dbf0f75c29737faa58f290"
-- 
1.7.1.1




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

* [PATCH 08/52] cpio-2.8 (GPLv2) bug fix
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (6 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 07/52] tar-1.17 (GPLv2) bugfix Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 09/52] rxvt-unicode: upgrade to version 9.10 Saul Wold
                   ` (45 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

This fixes bug [YOCTO #982]

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../cpio/cpio-2.8/avoid_heap_overflow.patch        |   25 ++++++++++++++++++++
 meta/recipes-extended/cpio/cpio_2.8.bb             |    6 +++-
 2 files changed, 29 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-extended/cpio/cpio-2.8/avoid_heap_overflow.patch

diff --git a/meta/recipes-extended/cpio/cpio-2.8/avoid_heap_overflow.patch b/meta/recipes-extended/cpio/cpio-2.8/avoid_heap_overflow.patch
new file mode 100644
index 0000000..cf068fa
--- /dev/null
+++ b/meta/recipes-extended/cpio/cpio-2.8/avoid_heap_overflow.patch
@@ -0,0 +1,25 @@
+Upstream-Status="Inappropriate [bugfix: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-0624]"
+
+This patch avoids heap overflow reported by :
+http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-0624
+
+This is a clean patch for the GPLv2 tar recipe.
+
+the GPLv2 tar recipe patch is also applicable to this GPLv2 cpio 
+recipe, as they share code.
+
+Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/25
+
+Index: tar-1.17/lib/rtapelib.c
+===================================================================
+--- tar-1.17.orig/lib/rtapelib.c
++++ tar-1.17/lib/rtapelib.c
+@@ -570,7 +570,7 @@ rmt_read__ (int handle, char *buffer, si
+ 
+   sprintf (command_buffer, "R%lu\n", (unsigned long) length);
+   if (do_command (handle, command_buffer) == -1
+-      || (status = get_status (handle)) == SAFE_READ_ERROR)
++      || ((status = get_status (handle)) == SAFE_READ_ERROR) || (status > length))
+     return SAFE_READ_ERROR;
+ 
+   for (counter = 0; counter < status; counter += rlen, buffer += rlen)
diff --git a/meta/recipes-extended/cpio/cpio_2.8.bb b/meta/recipes-extended/cpio/cpio_2.8.bb
index 412d19f..006e4f6 100644
--- a/meta/recipes-extended/cpio/cpio_2.8.bb
+++ b/meta/recipes-extended/cpio/cpio_2.8.bb
@@ -3,9 +3,11 @@ require cpio_v2.inc
 LICENSE = "GPLv2"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b7f772ea3a2489231cb4872656cac34b"
 
-PR = "r0"
+PR = "r1"
 
-SRC_URI += "file://m4extensions.patch"
+SRC_URI += "file://m4extensions.patch \
+    file://avoid_heap_overflow.patch \
+    "
 
 SRC_URI[md5sum] = "0caa356e69e149fb49b76bacc64615a1"
 SRC_URI[sha256sum] = "1b203248874c3b5a728b351f06513e5282f73e0170b7f207fbf8c39f28f6b4ad"
-- 
1.7.1.1




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

* [PATCH 09/52] rxvt-unicode: upgrade to version 9.10
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (7 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 08/52] cpio-2.8 (GPLv2) bug fix Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 10/52] valgrind: upgrade to version 3.6.1 Saul Wold
                   ` (44 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Remove some patches since some logic doesn't exist in upstream.
This upgrades fixes CVE:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2006-0126

Also it fixes [Yocto #980]

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../recipes-sato/rxvt-unicode/files/makefile.patch |   20 ----------
 meta/recipes-sato/rxvt-unicode/files/rxvt.desktop  |   11 ------
 .../rxvt-unicode/files/signedchar.patch            |   11 ------
 meta/recipes-sato/rxvt-unicode/files/xwc.patch     |   28 --------------
 .../rxvt-unicode/rxvt-unicode-5.6/xwc.patch        |   24 ------------
 .../rxvt-unicode/rxvt-unicode-9.10/rxvt.desktop    |    9 +++++
 .../{files => rxvt-unicode-9.10}/rxvt.png          |  Bin 2847 -> 2847 bytes
 .../rxvt-unicode/rxvt-unicode-9.10/xwc.patch       |   26 +++++++++++++
 .../{rxvt-unicode_5.6.bb => rxvt-unicode_9.10.bb}  |   39 ++++++++------------
 9 files changed, 51 insertions(+), 117 deletions(-)
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/makefile.patch
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/rxvt.desktop
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/signedchar.patch
 delete mode 100644 meta/recipes-sato/rxvt-unicode/files/xwc.patch
 delete mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch
 create mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/rxvt.desktop
 rename meta/recipes-sato/rxvt-unicode/{files => rxvt-unicode-9.10}/rxvt.png (100%)
 create mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/xwc.patch
 rename meta/recipes-sato/rxvt-unicode/{rxvt-unicode_5.6.bb => rxvt-unicode_9.10.bb} (69%)

diff --git a/meta/recipes-sato/rxvt-unicode/files/makefile.patch b/meta/recipes-sato/rxvt-unicode/files/makefile.patch
deleted file mode 100644
index 86f82ee..0000000
--- a/meta/recipes-sato/rxvt-unicode/files/makefile.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- ../rxvt-unicode-cvs-r0/rxvt-unicode/Makefile.in	2004-08-12 22:32:40 +01:00
-+++ rxvt-unicode/Makefile.in	2004-12-24 03:09:00 +00:00
-@@ -9,7 +9,7 @@
- first_rule: all
- dummy:
- 
--subdirs = src doc src/test
-+subdirs = src src/test
- allsubdirs = W11 $(subdirs)
- 
- DIST =	INSTALL README.configure configure Makefile Makefile.in ChangeLog
-@@ -24,7 +24,7 @@
- 
- #-------------------------------------------------------------------------
- 
--all allbin alldoc tags:
-+all allbin tags:
- 	@if test x@host_os@ = xcygwin; then (cd W11; ${MAKE} $@) || exit 1; fi
- 	@for I in ${subdirs}; do (cd $$I; ${MAKE} $@) || exit 1; done
- 
diff --git a/meta/recipes-sato/rxvt-unicode/files/rxvt.desktop b/meta/recipes-sato/rxvt-unicode/files/rxvt.desktop
deleted file mode 100644
index a419c98..0000000
--- a/meta/recipes-sato/rxvt-unicode/files/rxvt.desktop
+++ /dev/null
@@ -1,11 +0,0 @@
-[Desktop Entry]
-Encoding=UTF-8
-Name=Terminal
-Comment=When all else fails.
-Exec=/usr/bin/rxvt
-Icon=utilities-terminal.png
-Terminal=false
-Type=Application
-Categories=Utility
-StartupNotify=false
-
diff --git a/meta/recipes-sato/rxvt-unicode/files/signedchar.patch b/meta/recipes-sato/rxvt-unicode/files/signedchar.patch
deleted file mode 100644
index 6faa175..0000000
--- a/meta/recipes-sato/rxvt-unicode/files/signedchar.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ../rxvt-unicode-cvs-r0/rxvt-unicode/src/command.C	2004-12-21 06:43:00 +00:00
-+++ rxvt-unicode/src/command.C	2004-12-24 02:31:36 +00:00
-@@ -1862,7 +1862,7 @@
- #endif				/* NO_SCROLLBAR_REPORT */
- 
-         {
--          char            upordown = 0;
-+          signed char            upordown = 0;
- 
-           if (scrollBar.style == R_SB_NEXT)
-             {
diff --git a/meta/recipes-sato/rxvt-unicode/files/xwc.patch b/meta/recipes-sato/rxvt-unicode/files/xwc.patch
deleted file mode 100644
index 7cf5965..0000000
--- a/meta/recipes-sato/rxvt-unicode/files/xwc.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-
-#
-# Patch managed by http://www.holgerschurig.de/patcher.html
-#
-
---- rxvt-unicode-4.8/src/screen.C~xwc.c
-+++ rxvt-unicode-4.8/src/screen.C
-@@ -3058,7 +3058,7 @@
-   else
-     rxvt_warn ("can't get primary selection, ignoring.\n");
- 
--#if 0
-+#ifdef HAVE_XWC
-   XTextProperty ct;
- 
-   if (XwcTextListToTextProperty (display->display, &selection.text, 1, XStringStyle, &ct) >= 0)
-@@ -3632,9 +3632,11 @@
-         }
-       else
- #endif
-+#ifdef HAVE_XWC
-       if (XwcTextListToTextProperty (display->display, &cl, 1, (XICCEncodingStyle) style, &ct) >= 0)
-         freect = 1;
-       else
-+#endif
-         {
-           /* if we failed to convert then send it raw */
-           ct.value = (unsigned char *)cl;
diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch
deleted file mode 100644
index eb87b84..0000000
--- a/meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -urNd ../rxvt-unicode-5.3-r2/rxvt-unicode-5.3/src/screen.C rxvt-unicode-5.3/src/screen.C
---- ../rxvt-unicode-5.3-r2/rxvt-unicode-5.3/src/screen.C	2005-02-22 21:39:10 +00:00
-+++ rxvt-unicode-5.3/src/screen.C	2005-04-05 22:12:45 +01:00
-@@ -3064,7 +3064,7 @@
-   else
-     rxvt_warn ("can't get primary selection, ignoring.\n");
- 
--#if 0
-+#ifdef HAVE_XWC
-   XTextProperty ct;
- 
-   if (XwcTextListToTextProperty (display->display, &selection.text, 1, XStringStyle, &ct) >= 0)
-@@ -3648,9 +3648,11 @@
-         }
-       else
- #endif
-+#ifdef HAVE_XWC
-       if (XwcTextListToTextProperty (disp, &cl, 1, (XICCEncodingStyle) style, &ct) >= 0)
-         freect = 1;
-       else
-+#endif
-         {
-           /* if we failed to convert then send it raw */
-           ct.value = (unsigned char *)cl;
diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/rxvt.desktop b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/rxvt.desktop
new file mode 100644
index 0000000..882ea41
--- /dev/null
+++ b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/rxvt.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Name=Terminal
+Comment=A unicode capable rxvt clone
+Exec=rxvt
+Icon=terminal
+Terminal=false
+Type=Application
+Categories=Utility;TerminalEmulator;
diff --git a/meta/recipes-sato/rxvt-unicode/files/rxvt.png b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/rxvt.png
similarity index 100%
rename from meta/recipes-sato/rxvt-unicode/files/rxvt.png
rename to meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/rxvt.png
diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/xwc.patch b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/xwc.patch
new file mode 100644
index 0000000..16efeef
--- /dev/null
+++ b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-9.10/xwc.patch
@@ -0,0 +1,26 @@
+Upstream-Status: Pending
+
+diff -ruN rxvt-unicode-9.10-orig//src/screen.C rxvt-unicode-9.10/src/screen.C
+--- rxvt-unicode-9.10-orig//src/screen.C	2011-04-19 13:34:01.327664984 +0800
++++ rxvt-unicode-9.10/src/screen.C	2011-04-19 13:34:47.037665001 +0800
+@@ -3152,7 +3152,7 @@
+       return false;
+     }
+ 
+-#if 0
++#if HAVE_XWC
+   XTextProperty ct;
+ 
+   if (XwcTextListToTextProperty (dpy, &selection.text, 1, XStringStyle, &ct) >= 0)
+@@ -3734,9 +3734,11 @@
+         }
+       else
+ #endif
++#ifdef HAVE_XWC
+       if (XwcTextListToTextProperty (dpy, &cl, 1, (XICCEncodingStyle) style, &ct) >= 0)
+         freect = 1;
+       else
++#endif
+         {
+           /* if we failed to convert then send it raw */
+           ct.value = (unsigned char *)cl;
diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb b/meta/recipes-sato/rxvt-unicode/rxvt-unicode_9.10.bb
similarity index 69%
rename from meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb
rename to meta/recipes-sato/rxvt-unicode/rxvt-unicode_9.10.bb
index d130895..9657e21 100644
--- a/meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb
+++ b/meta/recipes-sato/rxvt-unicode/rxvt-unicode_9.10.bb
@@ -5,13 +5,14 @@ terminal emulator rxvt, modified to store text in Unicode \
 (either UCS-2 or UCS-4) and to use locale-correct input and \
 output. It also supports mixing multiple fonts at the \
 same time, including Xft fonts."
-LICENSE = "GPL"
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
+                    file://src/main.C;beginline=1;endline=31;md5=633e23cdeb89fe980ded9a3af4f335c2"
 SRC_URI = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${PV}.tar.bz2 \
-	   file://xwc.patch;patch=1 \
-	   file://signedchar.patch;patch=1 \
+	   file://xwc.patch \
 	   file://rxvt.desktop \
 	   file://rxvt.png"
-PR = "r5"
+PR = "r0"
 
 inherit autotools update-alternatives
 
@@ -35,29 +36,18 @@ EXTRA_OECONF = "--enable-menubar --enable-xim \
 		--enable-text-blink --enable-rxvt-scroll \
 		--enable-combining --enable-shared \
 		--enable-xgetdefault \
+                --disable-perl \
 		--with-x=${STAGING_DIR_HOST}${prefix}"
-EXTRA_OEMAKE = "'XINC=-I${STAGING_INCDIR}' \
-		'XLIB=-L${STAGING_LIBDIR} -lX11'"
 
-do_configure () {
-	mv autoconf/configure.in . || true
-	rm autoconf/libtool.m4
-	libtoolize --force
-	autotools_do_configure
-	echo '#define RXVT_UTMP_FILE "${localstatedir}/run/utmp"' >> config.h
-	echo '#define RXVT_WTMP_FILE "${localstatedir}/log/wtmp"' >> config.h
-	echo '#define RXVT_LASTLOG_FILE "${localstatedir}/log/lastlog"' >> config.h
-	echo '#define HAVE_XLOCALE 1' >> config.h
+do_configure_prepend () {
+	cp aclocal.m4 acinclude.m4
 }
 
-do_compile () {
-	if test -e ${S}/${HOST_SYS}-libtool; then
-		LIBTOOL=${S}/${HOST_SYS}-libtool
-	else
-		LIBTOOL=${S}/libtool
-	fi
-	# docs need "yodl" and I have no idea what that is
-	oe_runmake -C src "LIBTOOL=$LIBTOOL"
+do_compile_prepend () {
+	echo '#define UTMP_FILE "${localstatedir}/run/utmp"' >> config.h
+	echo '#define WTMP_FILE "${localstatedir}/log/wtmp"' >> config.h
+	echo '#define LASTLOG_FILE "${localstatedir}/log/lastlog"' >> config.h
+	echo '#define HAVE_XLOCALE 1' >> config.h
 }
 
 do_install_append () {
@@ -70,3 +60,6 @@ do_install_append () {
 }
 
 FILES_${PN} += "${datadir}/applications/rxvt.desktop ${datadir}/pixmaps/rxvt.png"
+
+SRC_URI[md5sum] = "a23aa40b31e843878b6f9c44768de430"
+SRC_URI[sha256sum] = "1c238f7e545b1a8da81239b826fb2a7d196c73effbcbd211db7a50995a0a067a"
-- 
1.7.1.1




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

* [PATCH 10/52] valgrind: upgrade to version 3.6.1
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (8 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 09/52] rxvt-unicode: upgrade to version 9.10 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 11/52] bluez-hcidump: upgrade to version 2.0 Saul Wold
                   ` (43 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../fix_issue_caused_by_ccache.patch               |    2 ++
 .../fixed-perl-path.patch                          |    2 ++
 .../{valgrind_3.6.0.bb => valgrind_3.6.1.bb}       |    4 ++--
 3 files changed, 6 insertions(+), 2 deletions(-)
 rename meta/recipes-devtools/valgrind/{valgrind-3.6.0 => valgrind-3.6.1}/fix_issue_caused_by_ccache.patch (94%)
 rename meta/recipes-devtools/valgrind/{valgrind-3.6.0 => valgrind-3.6.1}/fixed-perl-path.patch (97%)
 rename meta/recipes-devtools/valgrind/{valgrind_3.6.0.bb => valgrind_3.6.1.bb} (86%)

diff --git a/meta/recipes-devtools/valgrind/valgrind-3.6.0/fix_issue_caused_by_ccache.patch b/meta/recipes-devtools/valgrind/valgrind-3.6.1/fix_issue_caused_by_ccache.patch
similarity index 94%
rename from meta/recipes-devtools/valgrind/valgrind-3.6.0/fix_issue_caused_by_ccache.patch
rename to meta/recipes-devtools/valgrind/valgrind-3.6.1/fix_issue_caused_by_ccache.patch
index a5c273c..4658567 100644
--- a/meta/recipes-devtools/valgrind/valgrind-3.6.0/fix_issue_caused_by_ccache.patch
+++ b/meta/recipes-devtools/valgrind/valgrind-3.6.1/fix_issue_caused_by_ccache.patch
@@ -3,6 +3,8 @@ The script does not expect use of ccache, hence fix it to recognise it.
 2010/08/17
 Nitin A Kamble <nitin.a.kamble@intel.com>
 
+Upstream-Status: Inappropriate [configuration]
+
 Index: valgrind-3.5.0/coregrind/link_tool_exe_linux.in
 ===================================================================
 --- valgrind-3.5.0.orig/coregrind/link_tool_exe_linux.in
diff --git a/meta/recipes-devtools/valgrind/valgrind-3.6.0/fixed-perl-path.patch b/meta/recipes-devtools/valgrind/valgrind-3.6.1/fixed-perl-path.patch
similarity index 97%
rename from meta/recipes-devtools/valgrind/valgrind-3.6.0/fixed-perl-path.patch
rename to meta/recipes-devtools/valgrind/valgrind-3.6.1/fixed-perl-path.patch
index 2a0440a..b054d05 100644
--- a/meta/recipes-devtools/valgrind/valgrind-3.6.0/fixed-perl-path.patch
+++ b/meta/recipes-devtools/valgrind/valgrind-3.6.1/fixed-perl-path.patch
@@ -9,6 +9,8 @@ a better fix would need:
 
 8/31/2010 - created by Qing He <qing.he@intel.com>
 
+Upstream-Status: Inappropriate [configuration]
+
 diff --git a/cachegrind/cg_annotate.in b/cachegrind/cg_annotate.in
 index 9dc9565..cc4ef05 100644
 --- a/cachegrind/cg_annotate.in
diff --git a/meta/recipes-devtools/valgrind/valgrind_3.6.0.bb b/meta/recipes-devtools/valgrind/valgrind_3.6.1.bb
similarity index 86%
rename from meta/recipes-devtools/valgrind/valgrind_3.6.0.bb
rename to meta/recipes-devtools/valgrind/valgrind_3.6.1.bb
index a33a540..4dbc628 100644
--- a/meta/recipes-devtools/valgrind/valgrind_3.6.0.bb
+++ b/meta/recipes-devtools/valgrind/valgrind_3.6.1.bb
@@ -13,8 +13,8 @@ SRC_URI = "http://www.valgrind.org/downloads/valgrind-${PV}.tar.bz2 \
 	   file://fix_issue_caused_by_ccache.patch \
            file://fixed-perl-path.patch"
 
-SRC_URI[md5sum] = "b289c5f4ab8e39741602445f1dd09b34"
-SRC_URI[sha256sum] = "bc0f0153b5a47b986f1d8efa2c488e0aea85a1cf2c4b11c52be127903080285f"
+SRC_URI[md5sum] = "2c3aa122498baecc9d69194057ca88f5"
+SRC_URI[sha256sum] = "49bdcc4fbcf060049b5f0dcfd8a187a6e90e0b0e57309f633b64e44430726a0e"
 
 COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
 
-- 
1.7.1.1




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

* [PATCH 11/52] bluez-hcidump: upgrade to version 2.0
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (9 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 10/52] valgrind: upgrade to version 3.6.1 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 12/52] gupnp-av: upgrade to version 0.8.0 Saul Wold
                   ` (42 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 ...{bluez-hcidump_1.42.bb => bluez-hcidump_2.0.bb} |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
 rename meta/recipes-connectivity/bluez/{bluez-hcidump_1.42.bb => bluez-hcidump_2.0.bb} (69%)

diff --git a/meta/recipes-connectivity/bluez/bluez-hcidump_1.42.bb b/meta/recipes-connectivity/bluez/bluez-hcidump_2.0.bb
similarity index 69%
rename from meta/recipes-connectivity/bluez/bluez-hcidump_1.42.bb
rename to meta/recipes-connectivity/bluez/bluez-hcidump_2.0.bb
index 7291548..67dd2c6 100644
--- a/meta/recipes-connectivity/bluez/bluez-hcidump_1.42.bb
+++ b/meta/recipes-connectivity/bluez/bluez-hcidump_2.0.bb
@@ -7,13 +7,13 @@ PRIORITY = "optional"
 DEPENDS = "bluez4"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
-                    file://src/hcidump.c;beginline=1;endline=23;md5=22f51010959a0cd483c4d7f0bd77aaa3"
+                    file://src/hcidump.c;beginline=1;endline=23;md5=3bee3a162dff43a5be7470710b99fbcf"
 PR = "r0"
 
-SRC_URI = "http://bluez.sourceforge.net/download/bluez-hcidump-${PV}.tar.gz"
+SRC_URI = "http://www.kernel.org/pub/linux/bluetooth/bluez-hcidump-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "5704737aaf72104eeaf77335218a1827"
-SRC_URI[sha256sum] = "689e39f9432ab90af5f390d86cb46e06c35693d01ea29aec4e41c4f9e315f49f"
+SRC_URI[md5sum] = "5c2e3ef0a68b2845047867ba51ff8ac9"
+SRC_URI[sha256sum] = "b3b64fd0b18301df07d3aaf34c037c1e4808b4aaf702294822d62b5424f617fd"
 S = "${WORKDIR}/bluez-hcidump-${PV}"
 
 EXTRA_OECONF = "--with-bluez-libs=${STAGING_LIBDIR} --with-bluez-includes=${STAGING_INCDIR}"
-- 
1.7.1.1




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

* [PATCH 12/52] gupnp-av: upgrade to version 0.8.0
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (10 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 11/52] bluez-hcidump: upgrade to version 2.0 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 13/52] libsndfile1: upgrade to version 1.0.24 Saul Wold
                   ` (41 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../gupnp/{gupnp-av_0.7.0.bb => gupnp-av_0.8.0.bb} |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-connectivity/gupnp/{gupnp-av_0.7.0.bb => gupnp-av_0.8.0.bb} (77%)

diff --git a/meta/recipes-connectivity/gupnp/gupnp-av_0.7.0.bb b/meta/recipes-connectivity/gupnp/gupnp-av_0.8.0.bb
similarity index 77%
rename from meta/recipes-connectivity/gupnp/gupnp-av_0.7.0.bb
rename to meta/recipes-connectivity/gupnp/gupnp-av_0.8.0.bb
index fef907e..ce9ca30 100644
--- a/meta/recipes-connectivity/gupnp/gupnp-av_0.7.0.bb
+++ b/meta/recipes-connectivity/gupnp/gupnp-av_0.8.0.bb
@@ -11,5 +11,5 @@ PR = "r0"
 
 inherit autotools pkgconfig
 
-SRC_URI[md5sum] = "6eace748e9869cddb27daab46eb50635"
-SRC_URI[sha256sum] = "e13018d24abec9fafd75ef59c365adbb2ea3712fe5e69fff8c7284dc3f13cdeb"
+SRC_URI[md5sum] = "8a41a3bb60b50fceb5ece71c0dc4dcfb"
+SRC_URI[sha256sum] = "e6aa032377488cedc4e347519bd30701c583780b7c54f00bab083f2316a93dc9"
-- 
1.7.1.1




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

* [PATCH 13/52] libsndfile1: upgrade to version 1.0.24
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (11 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 12/52] gupnp-av: upgrade to version 0.8.0 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 14/52] glib-2.0: upgrade to version 2.28.6 Saul Wold
                   ` (40 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../libsndfile/libsndfile1/acincludefix.patch      |   26 --------------------
 .../libsndfile/libsndfile1/add-cxx.patch           |   18 -------------
 ...libsndfile1_1.0.23.bb => libsndfile1_1.0.24.bb} |    4 +-
 3 files changed, 2 insertions(+), 46 deletions(-)
 delete mode 100644 meta/recipes-multimedia/libsndfile/libsndfile1/acincludefix.patch
 delete mode 100644 meta/recipes-multimedia/libsndfile/libsndfile1/add-cxx.patch
 rename meta/recipes-multimedia/libsndfile/{libsndfile1_1.0.23.bb => libsndfile1_1.0.24.bb} (80%)

diff --git a/meta/recipes-multimedia/libsndfile/libsndfile1/acincludefix.patch b/meta/recipes-multimedia/libsndfile/libsndfile1/acincludefix.patch
deleted file mode 100644
index 46a21c1..0000000
--- a/meta/recipes-multimedia/libsndfile/libsndfile1/acincludefix.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Fix m4 quoting to avoid an infinite loop in m4 with recent autoconf/automake
-
-RP 1/2/10
-
-Index: libsndfile-1.0.17/acinclude.m4
-===================================================================
---- libsndfile-1.0.17.orig/acinclude.m4	2010-02-01 14:53:35.517826746 +0000
-+++ libsndfile-1.0.17/acinclude.m4	2010-02-01 14:53:51.409122706 +0000
-@@ -255,7 +255,7 @@
- 
- )
- ]
--
-+[
- if test $ac_cv_c_byte_order = big ; then
- 	ac_cv_c_big_endian=1
- 	ac_cv_c_little_endian=0
-@@ -272,7 +272,7 @@
- 	AC_MSG_WARN([[*** src/config.h may need to be hand editied.                    ]])
- 	AC_MSG_WARN([[*****************************************************************]])
- 	fi
--
-+]
- )# AC_C_FIND_ENDIAN
- 
- 
diff --git a/meta/recipes-multimedia/libsndfile/libsndfile1/add-cxx.patch b/meta/recipes-multimedia/libsndfile/libsndfile1/add-cxx.patch
deleted file mode 100644
index da0c401..0000000
--- a/meta/recipes-multimedia/libsndfile/libsndfile1/add-cxx.patch
+++ /dev/null
@@ -1,18 +0,0 @@
----
- configure.ac |    1 +
- 1 file changed, 1 insertion(+)
-
---- libsndfile-1.0.17.orig/configure.ac
-+++ libsndfile-1.0.17/configure.ac
-@@ -29,10 +29,11 @@ AC_LANG([C])
- #     to 0.
- 
- SHARED_VERSION_INFO="1:17:0"
- 
- AC_PROG_CC
-+AC_PROG_CXX
- AM_PROG_LIBTOOL
- 
- AC_CHECK_PROG(autogen, autogen, yes, no)
- 
- AC_PROG_INSTALL
diff --git a/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.23.bb b/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.24.bb
similarity index 80%
rename from meta/recipes-multimedia/libsndfile/libsndfile1_1.0.23.bb
rename to meta/recipes-multimedia/libsndfile/libsndfile1_1.0.24.bb
index 4d12a42..a547d76 100644
--- a/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.23.bb
+++ b/meta/recipes-multimedia/libsndfile/libsndfile1_1.0.24.bb
@@ -8,8 +8,8 @@ PR = "r0"
 
 SRC_URI = "http://www.mega-nerd.com/libsndfile/files/libsndfile-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "d0e22b5ff2ef945615db33960376d733"
-SRC_URI[sha256sum] = "54c9c375598538263395a691f9b30987a2faa3d8a166d27e6a09ba4700223d4d"
+SRC_URI[md5sum] = "8f823c30c1d8d44830db6ab845d6679e"
+SRC_URI[sha256sum] = "b6050e6fbfbb72c8bfbc895104697a4af1d49077a64e4846e0be7af87c9e56a4"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=e77fe93202736b47c07035910f47974a"
 
-- 
1.7.1.1




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

* [PATCH 14/52] glib-2.0: upgrade to version 2.28.6
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (12 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 13/52] libsndfile1: upgrade to version 1.0.24 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 15/52] libfm: Remove the flag of G_DISABLE_DEPRECATED Saul Wold
                   ` (39 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../60_wait-longer-for-threads-to-die.patch        |    2 ++
 .../glib-2.0/glib-2.0/configure-libtool.patch      |    2 ++
 .../glib-2.0/glib-2.0/g_once_init_enter.patch      |    2 ++
 .../glib-2.0/glib-2.0/glib-gettextize-dir.patch    |    2 ++
 .../{glib-2.0_2.26.1.bb => glib-2.0_2.28.6.bb}     |    6 +++---
 meta/recipes-core/glib-2.0/glib.inc                |    2 +-
 6 files changed, 12 insertions(+), 4 deletions(-)
 rename meta/recipes-core/glib-2.0/{glib-2.0_2.26.1.bb => glib-2.0_2.28.6.bb} (59%)

diff --git a/meta/recipes-core/glib-2.0/glib-2.0/60_wait-longer-for-threads-to-die.patch b/meta/recipes-core/glib-2.0/glib-2.0/60_wait-longer-for-threads-to-die.patch
index 8195bd4..b65a474 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/60_wait-longer-for-threads-to-die.patch
+++ b/meta/recipes-core/glib-2.0/glib-2.0/60_wait-longer-for-threads-to-die.patch
@@ -2,6 +2,8 @@ copy from OE, said to borrow from Ubuntu. Not in glib-2.0 upstream yet. Add for
 Added to poky by Kevin Tian <kevin.tian@intel.com>, 06/25/2010
 Rebased for glib-2.27.3 by Dongxiao Xu <dongxiao.xu@intel.com>, 11/16/2010
 
+Upstream-Status: Inappropriate [patches for test code]
+
 diff -ruN glib-2.27.3-orig/tests/threadpool-test.c glib-2.27.3/tests/threadpool-test.c
 --- glib-2.27.3-orig/tests/threadpool-test.c	2009-04-01 07:04:21.000000000 +0800
 +++ glib-2.27.3/tests/threadpool-test.c	2010-11-16 12:28:09.002172678 +0800
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/configure-libtool.patch b/meta/recipes-core/glib-2.0/glib-2.0/configure-libtool.patch
index 7c170be..c21e378 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/configure-libtool.patch
+++ b/meta/recipes-core/glib-2.0/glib-2.0/configure-libtool.patch
@@ -4,6 +4,8 @@
 # from PATH though
 # Rebased to glib-2.27.3 by Dongxiao Xu <dongxiao.xu@intel.com>
 
+Upstream-Status: Inappropriate [configuration]
+
 diff -ruN glib-2.27.3-orig/configure.ac glib-2.27.3/configure.ac
 --- glib-2.27.3-orig/configure.ac	2010-11-03 11:02:05.000000000 +0800
 +++ glib-2.27.3/configure.ac	2010-11-16 12:38:12.610485990 +0800
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/g_once_init_enter.patch b/meta/recipes-core/glib-2.0/glib-2.0/g_once_init_enter.patch
index a2a506c..2eaa19b 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/g_once_init_enter.patch
+++ b/meta/recipes-core/glib-2.0/glib-2.0/g_once_init_enter.patch
@@ -7,6 +7,8 @@ http://www.mail-archive.com/openembedded-devel@lists.openembedded.org/msg005
 
 Signed-off-by: Darren Hart <dvhart@linux.intel.com>
 
+Upstream-Status: Pending
+
 Index: glib-2.27.5/glib/gthread.h
 ===================================================================
 --- glib-2.27.5.orig/glib/gthread.h
diff --git a/meta/recipes-core/glib-2.0/glib-2.0/glib-gettextize-dir.patch b/meta/recipes-core/glib-2.0/glib-2.0/glib-gettextize-dir.patch
index e54a8e5..ee43511 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0/glib-gettextize-dir.patch
+++ b/meta/recipes-core/glib-2.0/glib-2.0/glib-gettextize-dir.patch
@@ -8,6 +8,8 @@
 # by Kevin Tian <kevin.tian@intel.com>, 06/25/2010
 # Rebased by Dongxiao Xu <dongxiao.xu@intel.com>, 11/16/2010
 
+Upstream-Status: Inappropriate [configuration]
+
 diff -ruN glib-2.27.3-orig/glib-gettextize.in glib-2.27.3/glib-gettextize.in
 --- glib-2.27.3-orig/glib-gettextize.in	2009-04-01 07:04:20.000000000 +0800
 +++ glib-2.27.3/glib-gettextize.in	2010-11-16 12:55:06.874605916 +0800
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb
similarity index 59%
rename from meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb
rename to meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb
index 6a1fb6c..6b6c1f5 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.26.1.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb
@@ -3,14 +3,14 @@ require glib.inc
 PE = "1"
 PR = "r0"
 
-SRC_URI = "${GNOME_MIRROR}/glib/2.26/glib-${PV}.tar.bz2 \
+SRC_URI = "${GNOME_MIRROR}/glib/2.28/glib-${PV}.tar.bz2 \
            file://configure-libtool.patch \
            file://60_wait-longer-for-threads-to-die.patch \
            file://g_once_init_enter.patch \
           "
 
-SRC_URI[md5sum] = "17535accceef55bcb17a74d73f9c2aef"
-SRC_URI[sha256sum] = "7a74ff12b6b9dee1f2d0e520b56b68b621920c4f4250bdf23468e515625c28d5"
+SRC_URI[md5sum] = "7d8fc15ae70d5111c0cf2a79d50ef717"
+SRC_URI[sha256sum] = "557fb7c39d21b9359fbac51fd6b0b883bc97a2561c0166eef993a4078312f578"
 
 SRC_URI_append_virtclass-native = " file://glib-gettextize-dir.patch"
 BBCLASSEXTEND = "native"
diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc
index 5ebff68..9b6e17b 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
                     file://gmodule/COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
                     file://gmodule/gmodule.h;startline=4;endline=17;md5=76ab161b37202cd004073c42fac276ed \
                     file://glib/pcre/COPYING;md5=266ebc3ff74ee9ce6fad65577667c0f4 \
-                    file://glib/pcre/pcre.h;startline=11;endline=35;md5=cc0858840d3c312ec3e45b28077eb0d8 \
+                    file://glib/pcre/pcre.h;startline=11;endline=35;md5=ce867cf87ebbd2bb55e980d90328390d \
                     file://docs/reference/COPYING;md5=f51a5100c17af6bae00735cd791e1fcc"
 BUGTRACKER = "http://bugzilla.gnome.org"
 SECTION = "libs"
-- 
1.7.1.1




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

* [PATCH 15/52] libfm: Remove the flag of G_DISABLE_DEPRECATED
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (13 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 14/52] glib-2.0: upgrade to version 2.28.6 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 16/52] polkit: upgrade to version 0.101 Saul Wold
                   ` (38 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Latest glib-2.0 changes some macros and function definitions to be
deprecated. However libfm still uses them. Therefore the flag
G_DISABLE_DEPRECATED should be removed in libfm's Makefile.

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../libfm/libfm-0.1.14/use_deprecate_func.patch    |   11 +++++++++++
 meta/recipes-support/libfm/libfm_0.1.14.bb         |    5 +++--
 2 files changed, 14 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-support/libfm/libfm-0.1.14/use_deprecate_func.patch

diff --git a/meta/recipes-support/libfm/libfm-0.1.14/use_deprecate_func.patch b/meta/recipes-support/libfm/libfm-0.1.14/use_deprecate_func.patch
new file mode 100644
index 0000000..fade195
--- /dev/null
+++ b/meta/recipes-support/libfm/libfm-0.1.14/use_deprecate_func.patch
@@ -0,0 +1,11 @@
+diff -ruN libfm-0.1.14-orig//src/Makefile.am libfm-0.1.14/src/Makefile.am
+--- libfm-0.1.14-orig//src/Makefile.am	2011-04-26 10:01:44.297664993 +0800
++++ libfm-0.1.14/src/Makefile.am	2011-04-26 10:02:10.637665004 +0800
+@@ -285,7 +285,6 @@
+ 	$(GIO_CFLAGS) \
+ 	-DGIO_MODULE_DIR=\"$(giomodulesdir)\"	\
+ 	-DGVFS_LOCALEDIR=\""$(localedir)"\"	\
+-	-DG_DISABLE_DEPRECATED \
+ 	$(NULL)
+ 
+ libgiofm_la_LDFLAGS = 	\
diff --git a/meta/recipes-support/libfm/libfm_0.1.14.bb b/meta/recipes-support/libfm/libfm_0.1.14.bb
index c56ad33..5c7e95c 100644
--- a/meta/recipes-support/libfm/libfm_0.1.14.bb
+++ b/meta/recipes-support/libfm/libfm_0.1.14.bb
@@ -10,9 +10,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
 SECTION = "x11/libs"
 DEPENDS = "gtk+ menu-cache intltool"
 
-PR = "r2"
+PR = "r3"
 
-SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/libfm-${PV}.tar.gz"
+SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/libfm-${PV}.tar.gz \
+           file://use_deprecate_func.patch"
 
 SRC_URI[md5sum] = "d55e51dced6bb9ef46665243b079761f"
 SRC_URI[sha256sum] = "e97bf3f9ed4f33b9f0be73e67d360b89337cccf816361faacd8422722269806b"
-- 
1.7.1.1




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

* [PATCH 16/52] polkit: upgrade to version 0.101.
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (14 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 15/52] libfm: Remove the flag of G_DISABLE_DEPRECATED Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 17/52] gst-fluendo-mpegdemux: upgrade to version 0.10.67 Saul Wold
                   ` (37 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Derive introspection.patch from gobject to fix autoconf issue.

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../polkit/polkit-0.101/introspection.patch        |  104 ++++++++++++++++++++
 .../polkit/{polkit_0.99.bb => polkit_0.101.bb}     |   11 +-
 2 files changed, 110 insertions(+), 5 deletions(-)
 create mode 100644 meta/recipes-extended/polkit/polkit-0.101/introspection.patch
 rename meta/recipes-extended/polkit/{polkit_0.99.bb => polkit_0.101.bb} (77%)

diff --git a/meta/recipes-extended/polkit/polkit-0.101/introspection.patch b/meta/recipes-extended/polkit/polkit-0.101/introspection.patch
new file mode 100644
index 0000000..58c27ab
--- /dev/null
+++ b/meta/recipes-extended/polkit/polkit-0.101/introspection.patch
@@ -0,0 +1,104 @@
+Copied from gobject-introspection/m4/introspection.m4
+
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-By: Dongxiao Xu <dongxiao.xu@intel.com>
+
+diff -ruN polkit-0.101-orig/m4/introspection.m4 polkit-0.101/m4/introspection.m4
+--- polkit-0.101-orig/m4/introspection.m4	1970-01-01 08:00:00.000000000 +0800
++++ polkit-0.101/m4/introspection.m4	2010-12-06 11:08:16.000000000 +0800
+@@ -0,0 +1,94 @@
++dnl -*- mode: autoconf -*-
++dnl Copyright 2009 Johan Dahlin
++dnl
++dnl This file is free software; the author(s) gives unlimited
++dnl permission to copy and/or distribute it, with or without
++dnl modifications, as long as this notice is preserved.
++dnl
++
++# serial 1
++
++m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL],
++[
++    AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
++    AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
++    AC_BEFORE([LT_INIT],[$0])dnl setup libtool first
++
++    dnl enable/disable introspection
++    m4_if([$2], [require],
++    [dnl
++        enable_introspection=yes
++    ],[dnl
++        AC_ARG_ENABLE(introspection,
++                  AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]],
++                                 [Enable introspection for this build]),, 
++                                 [enable_introspection=auto])
++    ])dnl
++
++    AC_MSG_CHECKING([for gobject-introspection])
++
++    dnl presence/version checking
++    AS_CASE([$enable_introspection],
++    [no], [dnl
++        found_introspection="no (disabled, use --enable-introspection to enable)"
++    ],dnl
++    [yes],[dnl
++        PKG_CHECK_EXISTS([gobject-introspection-1.0],,
++                         AC_MSG_ERROR([gobject-introspection-1.0 is not installed]))
++        PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1],
++                         found_introspection=yes,
++                         AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME]))
++    ],dnl
++    [auto],[dnl
++        PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no)
++    ],dnl
++    [dnl	
++        AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@])
++    ])dnl
++
++    AC_MSG_RESULT([$found_introspection])
++
++    INTROSPECTION_SCANNER=
++    INTROSPECTION_COMPILER=
++    INTROSPECTION_GENERATE=
++    INTROSPECTION_GIRDIR=
++    INTROSPECTION_TYPELIBDIR=
++    if test "x$found_introspection" = "xyes"; then
++       INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
++       INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
++       INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
++       INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
++       INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
++       INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
++       INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
++       INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
++    fi
++    AC_SUBST(INTROSPECTION_SCANNER)
++    AC_SUBST(INTROSPECTION_COMPILER)
++    AC_SUBST(INTROSPECTION_GENERATE)
++    AC_SUBST(INTROSPECTION_GIRDIR)
++    AC_SUBST(INTROSPECTION_TYPELIBDIR)
++    AC_SUBST(INTROSPECTION_CFLAGS)
++    AC_SUBST(INTROSPECTION_LIBS)
++    AC_SUBST(INTROSPECTION_MAKEFILE)
++
++    AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes")
++])
++
++
++dnl Usage:
++dnl   GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version])
++
++AC_DEFUN([GOBJECT_INTROSPECTION_CHECK],
++[
++  _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1])
++])
++
++dnl Usage:
++dnl   GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version])
++
++
++AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE],
++[
++  _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require])
++])
diff --git a/meta/recipes-extended/polkit/polkit_0.99.bb b/meta/recipes-extended/polkit/polkit_0.101.bb
similarity index 77%
rename from meta/recipes-extended/polkit/polkit_0.99.bb
rename to meta/recipes-extended/polkit/polkit_0.101.bb
index 7f96979..6769914 100644
--- a/meta/recipes-extended/polkit/polkit_0.99.bb
+++ b/meta/recipes-extended/polkit/polkit_0.101.bb
@@ -4,10 +4,11 @@ HOMEPAGE = "http://code.google.com/p/polkit/"
 LICENSE = "LGPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \
                     file://src/polkit/polkit.h;beginline=1;endilne=20;md5=9f797b8912dac8a806be820c14e783f8 \
-                    file://docs/polkit/html/license.html;md5=54750ec6ece444c50b823234d445dd99"
+                    file://docs/polkit/html/license.html;md5=07ddbf5f29e44c80c99be19c1690ec1f"
 
-SRC_URI = "http://hal.freedesktop.org/releases/polkit-${PV}.tar.gz"
-PR = "r1"
+SRC_URI = "http://hal.freedesktop.org/releases/polkit-${PV}.tar.gz \
+           file://introspection.patch"
+PR = "r0"
 DEPENDS = "libpam expat dbus-glib eggdbus intltool"
 RDEPENDS_${PN} = "libpam"
 EXTRA_OECONF = "--with-authfw=pam --with-os-type=moblin --disable-man-pages --disable-gtk-doc --disable-introspection"
@@ -19,5 +20,5 @@ FILES_${PN} += "${libdir}/${PN}-1/extensions/*.so \
                 ${datadir}/dbus-1/system-services/*"
 FILES_${PN}-dbg += "${libdir}/${PN}-1/extensions/.debug/*.so"
 
-SRC_URI[md5sum] = "fcc4d7b19c08ad54d3ce0eae0ab12398"
-SRC_URI[sha256sum] = "f612c7c26ec822f67751420057a4ae113fc50ab51070758faacf2ad30bb3583f"
+SRC_URI[md5sum] = "f925ac93aba3c072977370c1e27feb7f"
+SRC_URI[sha256sum] = "927f65760e4fce23d7cdeae90245c22986eb0a39335a344915302158f73f9f1b"
-- 
1.7.1.1




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

* [PATCH 17/52] gst-fluendo-mpegdemux: upgrade to version 0.10.67
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (15 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 16/52] polkit: upgrade to version 0.101 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 18/52] libsamplerate0: upgrade to version 0.1.7 Saul Wold
                   ` (36 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 ...0.10.62.bb => gst-fluendo-mpegdemux_0.10.67.bb} |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-multimedia/gstreamer/{gst-fluendo-mpegdemux_0.10.62.bb => gst-fluendo-mpegdemux_0.10.67.bb} (71%)

diff --git a/meta/recipes-multimedia/gstreamer/gst-fluendo-mpegdemux_0.10.62.bb b/meta/recipes-multimedia/gstreamer/gst-fluendo-mpegdemux_0.10.67.bb
similarity index 71%
rename from meta/recipes-multimedia/gstreamer/gst-fluendo-mpegdemux_0.10.62.bb
rename to meta/recipes-multimedia/gstreamer/gst-fluendo-mpegdemux_0.10.67.bb
index b0b4bc2..85ebb43 100644
--- a/meta/recipes-multimedia/gstreamer/gst-fluendo-mpegdemux_0.10.62.bb
+++ b/meta/recipes-multimedia/gstreamer/gst-fluendo-mpegdemux_0.10.67.bb
@@ -9,5 +9,5 @@ acpaths = "-I ${S}/common/m4 -I ${S}/m4"
 
 PR = "r0"
 
-SRC_URI[md5sum] = "de2a22760f73ba678b7cb51e9f94bc21"
-SRC_URI[sha256sum] = "c4ba24502f59849fc2f3948389213c99e23a0986506111cc22cce3a64a33ac05"
+SRC_URI[md5sum] = "4ee0353eaa386f9b1c5570298d204357"
+SRC_URI[sha256sum] = "410897527f8bd8f007c9915c9450113c9e73c76f89aee3d36da825422a83a621"
-- 
1.7.1.1




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

* [PATCH 18/52] libsamplerate0: upgrade to version 0.1.7
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (16 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 17/52] gst-fluendo-mpegdemux: upgrade to version 0.10.67 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 19/52] alsa-utils: upgrade to version 1.0.24.2 Saul Wold
                   ` (35 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Add libsamplerate-0.1.7-macro-quoting.patch to fix autoreconf issue

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../libsamplerate-0.1.7-macro-quoting.patch        |   22 ++++++++++++++++++++
 ...amplerate0_0.1.2.bb => libsamplerate0_0.1.7.bb} |   11 +++++----
 2 files changed, 28 insertions(+), 5 deletions(-)
 create mode 100644 meta/recipes-multimedia/libsamplerate/libsamplerate0-0.1.7/libsamplerate-0.1.7-macro-quoting.patch
 rename meta/recipes-multimedia/libsamplerate/{libsamplerate0_0.1.2.bb => libsamplerate0_0.1.7.bb} (59%)

diff --git a/meta/recipes-multimedia/libsamplerate/libsamplerate0-0.1.7/libsamplerate-0.1.7-macro-quoting.patch b/meta/recipes-multimedia/libsamplerate/libsamplerate0-0.1.7/libsamplerate-0.1.7-macro-quoting.patch
new file mode 100644
index 0000000..878f969
--- /dev/null
+++ b/meta/recipes-multimedia/libsamplerate/libsamplerate0-0.1.7/libsamplerate-0.1.7-macro-quoting.patch
@@ -0,0 +1,22 @@
+Upstream-Status: Pending
+
+diff -ruN libsamplerate-0.1.7-orig//acinclude.m4 libsamplerate-0.1.7/acinclude.m4
+--- libsamplerate-0.1.7-orig//acinclude.m4	2011-04-20 15:04:25.147664992 +0800
++++ libsamplerate-0.1.7/acinclude.m4	2011-04-20 15:04:45.397665029 +0800
+@@ -135,7 +135,6 @@
+ 	fi
+ 
+ )
+-]
+ 
+ if test $ac_cv_c_byte_order = big ; then
+ 	ac_cv_c_big_endian=1
+@@ -154,7 +153,7 @@
+ 	AC_MSG_WARN([[*****************************************************************]])
+ 	fi
+ 
+-)# AC_C_FIND_ENDIAN
++])# AC_C_FIND_ENDIAN
+ 
+ 
+ 
diff --git a/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.2.bb b/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.7.bb
similarity index 59%
rename from meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.2.bb
rename to meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.7.bb
index 85eb7bc..d08640f 100644
--- a/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.2.bb
+++ b/meta/recipes-multimedia/libsamplerate/libsamplerate0_0.1.7.bb
@@ -2,14 +2,15 @@ DESCRIPTION = "An audio Sample Rate Conversion library"
 SECTION = "libs"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
-                    file://src/samplerate.c;beginline=1;endline=17;md5=2deac26142757e825d957e5ac149b292"
+                    file://src/samplerate.c;beginline=1;endline=17;md5=ed4dfdaa3bdf0f817ebc70cee0cccc88"
 DEPENDS = "flac"
-PR = "r3"
+PR = "r0"
 
-SRC_URI = "http://www.mega-nerd.com/SRC/libsamplerate-${PV}.tar.gz"
+SRC_URI = "http://www.mega-nerd.com/SRC/libsamplerate-${PV}.tar.gz \
+           file://libsamplerate-0.1.7-macro-quoting.patch"
 
-SRC_URI[md5sum] = "06861c2c6b8e5273c9b80cf736b9fd0e"
-SRC_URI[sha256sum] = "98b8766323c78b7b718dfd4ef6b9292bbf0796b742abb2319b8278cbeee731d4"
+SRC_URI[md5sum] = "6731a81cb0c622c483b28c0d7f90867d"
+SRC_URI[sha256sum] = "78ed5d9ff1bf162c4a078f6a3e7432a537dd2f22dc58872b081fb01156027fcc"
 S = "${WORKDIR}/libsamplerate-${PV}"
 
 inherit autotools pkgconfig
-- 
1.7.1.1




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

* [PATCH 19/52] alsa-utils: upgrade to version 1.0.24.2
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (17 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 18/52] libsamplerate0: upgrade to version 0.1.7 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 21/52] distro_tracking_fields: cwautomacros, valgrind, etc Saul Wold
                   ` (34 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../ncursesfix.patch                               |   22 ++++++++++---------
 ...alsa-utils_1.0.23.bb => alsa-utils_1.0.24.2.bb} |    4 +-
 2 files changed, 14 insertions(+), 12 deletions(-)
 rename meta/recipes-multimedia/alsa/{alsa-utils-1.0.23 => alsa-utils-1.0.24.2}/ncursesfix.patch (70%)
 rename meta/recipes-multimedia/alsa/{alsa-utils_1.0.23.bb => alsa-utils_1.0.24.2.bb} (95%)

diff --git a/meta/recipes-multimedia/alsa/alsa-utils-1.0.23/ncursesfix.patch b/meta/recipes-multimedia/alsa/alsa-utils-1.0.24.2/ncursesfix.patch
similarity index 70%
rename from meta/recipes-multimedia/alsa/alsa-utils-1.0.23/ncursesfix.patch
rename to meta/recipes-multimedia/alsa/alsa-utils-1.0.24.2/ncursesfix.patch
index 0009c1a..9936ded 100644
--- a/meta/recipes-multimedia/alsa/alsa-utils-1.0.23/ncursesfix.patch
+++ b/meta/recipes-multimedia/alsa/alsa-utils-1.0.24.2/ncursesfix.patch
@@ -1,11 +1,13 @@
-# alsa-utils: Fix ncurses build failures
-# Richard Purdie <rpurdie@linux.intel.com>
-# Rebased to 1.0.23, Dongxiao Xu <dongxiao.xu@intel.com>
+Rebase the patch to fit 1.0.24.2
 
-diff -ruN alsa-utils-1.0.23-orig/configure.in alsa-utils-1.0.23/configure.in
---- alsa-utils-1.0.23-orig/configure.in	2010-04-16 19:19:12.000000000 +0800
-+++ alsa-utils-1.0.23/configure.in	2010-06-22 15:22:06.731202478 +0800
-@@ -109,34 +109,16 @@
+Upstream-Status: Inappropriate [configuration]
+
+Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
+
+diff -ruN alsa-utils-1.0.24.2-orig//configure.in alsa-utils-1.0.24.2/configure.in
+--- alsa-utils-1.0.24.2-orig//configure.in	2011-04-13 13:51:20.337665010 +0800
++++ alsa-utils-1.0.24.2/configure.in	2011-04-13 13:51:54.437664986 +0800
+@@ -127,34 +127,16 @@
    NCURSESLIBSUFFIX=""
    CURSES_NLS="no"
    if test "$curseslib" = "ncursesw" -o \( "$curseslib" = "auto" -a "$USE_NLS" = "yes" \); then
@@ -17,7 +19,7 @@ diff -ruN alsa-utils-1.0.23-orig/configure.in alsa-utils-1.0.23/configure.in
 -      CURSES_CFLAGS=`ncursesw5-config --cflags`
 -      curseslib="ncursesw"
 -    else
-       AC_CHECK_LIB(ncursesw, initscr, 
+       AC_CHECK_LIB(ncursesw, initscr,
                   [ CURSESINC='<ncurses.h>'; CURSESLIB='-lncursesw'; curseslib="ncursesw"])
 -    fi
      if test -n "$CURSESINC"; then
@@ -34,9 +36,9 @@ diff -ruN alsa-utils-1.0.23-orig/configure.in alsa-utils-1.0.23/configure.in
 -      CURSES_CFLAGS=`ncurses5-config --cflags`
 -      curseslib="ncurses"
 -    else
-       AC_CHECK_LIB(ncurses, initscr, 
+       AC_CHECK_LIB(ncurses, initscr,
                   [ CURSESINC='<ncurses.h>'; CURSESLIB='-lncurses'; curseslib="ncurses"])
 -    fi
    fi
    if test "$curseslib" = "curses" -o "$curseslib" = "auto"; then
-     AC_CHECK_LIB(curses, initscr, 
+     AC_CHECK_LIB(curses, initscr,
diff --git a/meta/recipes-multimedia/alsa/alsa-utils_1.0.23.bb b/meta/recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb
similarity index 95%
rename from meta/recipes-multimedia/alsa/alsa-utils_1.0.23.bb
rename to meta/recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb
index 46283cc..953a3ac 100644
--- a/meta/recipes-multimedia/alsa/alsa-utils_1.0.23.bb
+++ b/meta/recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb
@@ -11,8 +11,8 @@ PR = "r0"
 SRC_URI = "ftp://ftp.alsa-project.org/pub/utils/alsa-utils-${PV}.tar.bz2 \
            file://ncursesfix.patch;patch=1 "
 
-SRC_URI[md5sum] = "cb0cf46029ac9549cf3a31bff6a4f4e1"
-SRC_URI[sha256sum] = "b7d05e915e25f8540ad151c6dd558cf0fc1e9bb0ee23052d531c983666a1f7b0"
+SRC_URI[md5sum] = "8238cd57cb301d1c36bcf0ecb59ce6b2"
+SRC_URI[sha256sum] = "95127f740291086486c06c28118cabca0814bde48fd14dac041a9812a5ac1be2"
 
 # lazy hack. needs proper fixing in gettext.m4, see
 # http://bugs.openembedded.org/show_bug.cgi?id=2348
-- 
1.7.1.1




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

* [PATCH 20/52] cwautomacros: upgrade to version 20110201
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (19 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 21/52] distro_tracking_fields: cwautomacros, valgrind, etc Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 22/52] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak Saul Wold
                   ` (32 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 ...macros_20090610.bb => cwautomacros_20110201.bb} |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
 rename meta/recipes-extended/cwautomacros/{cwautomacros_20090610.bb => cwautomacros_20110201.bb} (74%)

diff --git a/meta/recipes-extended/cwautomacros/cwautomacros_20090610.bb b/meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb
similarity index 74%
rename from meta/recipes-extended/cwautomacros/cwautomacros_20090610.bb
rename to meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb
index bc588d7..18efced 100644
--- a/meta/recipes-extended/cwautomacros/cwautomacros_20090610.bb
+++ b/meta/recipes-extended/cwautomacros/cwautomacros_20110201.bb
@@ -8,8 +8,8 @@ SRC_URI = http://download.berlios.de/cwautomacros/cwautomacros-${PV}.tar.bz2
 
 PR = "r0"
 
-SRC_URI[md5sum] = "352b295897ddb30c0d7d0acdd0b2313a"
-SRC_URI[sha256sum] = "8f683713baa63e6b5c2ea72067f77cbacf0bee7d4efa907951c6bb5ac1ffd6b0"
+SRC_URI[md5sum] = "074afcb50d0a8bff10786a2954b2b02d"
+SRC_URI[sha256sum] = "3115603b891f3a163c0bbb5fea2f3742113a183fa6745ee5e89e5f6d0e9f6121"
 
 do_install() {
 	oe_runmake CWAUTOMACROSPREFIX=${D}${prefix} install
-- 
1.7.1.1




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

* [PATCH 21/52] distro_tracking_fields: cwautomacros, valgrind, etc
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (18 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 19/52] alsa-utils: upgrade to version 1.0.24.2 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  8:20   ` Antonio Ospite
  2011-04-27  7:29 ` [PATCH 20/52] cwautomacros: upgrade to version 20110201 Saul Wold
                   ` (33 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Dongxiao Xu <dongxiao.xu@intel.com>

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
---
 .../conf/distro/include/distro_tracking_fields.inc |   72 ++++++++++---------
 1 files changed, 38 insertions(+), 34 deletions(-)

diff --git a/meta/conf/distro/include/distro_tracking_fields.inc b/meta/conf/distro/include/distro_tracking_fields.inc
index e7201b0..767c05b 100644
--- a/meta/conf/distro/include/distro_tracking_fields.inc
+++ b/meta/conf/distro/include/distro_tracking_fields.inc
@@ -169,16 +169,15 @@ RECIPE_MAINTAINER_pn-libdaemon = "Yu Ke <ke.yu@intel.com>"
 RECIPE_STATUS_pn-glib-2.0 = "green"
 DISTRO_PN_ALIAS_pn-glib-2.0 = "Meego=glib2 Fedora=glib2 OpenSuSE=glib2 Ubuntu=glib2.0 Mandriva=glib2.0 Debian=glib2.0"
 RECIPE_DEPENDENCY_CHECK_pn-glib-2.0 = "not done"
-RECIPE_LATEST_VERSION_pn-glib-2.0 = "2.27.5"
+RECIPE_LATEST_VERSION_pn-glib-2.0 = "2.28.6"
 RECIPE_PATCH_pn-glib-2.0+60_wait-longer-for-threads-to-die = "to be pushed upstream"
 RECIPE_PATCH_pn-glib-2.0+configure-libtool = "local"
 RECIPE_PATCH_pn-glib-2.0+glib-gettextize-dir = "marked as REMOVAL"
 RECIPE_INTEL_SECTION_pn-glib-2.0 = "base libs"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-glib-2.0 = "1 month"
-RECIPE_LATEST_RELEASE_DATE_pn-glib-2.0 = "2010/12/20"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-glib-2.0 = "15 days"
+RECIPE_LATEST_RELEASE_DATE_pn-glib-2.0 = "2011/04/14"
 RECIPE_COMMENTS_pn-glib-2.0 = ""
-RECIPE_LAST_UPDATE_pn-glib-2.0 = "Dec 30, 2010"
-RECIPE_NO_UPDATE_REASON_pn-glib-2.0 ="do not upgrade to 2.27.5 because it is unstable version"
+RECIPE_LAST_UPDATE_pn-glib-2.0 = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-glib-2.0 = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-libpam = "green"
@@ -761,12 +760,12 @@ DISTRO_PN_ALIAS_pn-opkg-utils = "OSPDT upstream=http://svn.openmoko.org/trunk/sr
 
 RECIPE_STATUS_pn-polkit = "green"
 RECIPE_DEPENDENCY_CHECK_pn-polkit = "not done"
-RECIPE_LATEST_VERSION_pn-polkit = "0.99"
+RECIPE_LATEST_VERSION_pn-polkit = "0.101"
 RECIPE_INTEL_SECTION_pn-polkit = "base utils"
 RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-polkit = "1 months"
-RECIPE_LATEST_RELEASE_DATE_pn-polkit = "2010/09/15"
+RECIPE_LATEST_RELEASE_DATE_pn-polkit = "2011/03/03"
 RECIPE_COMMENTS_pn-polkit = ""
-RECIPE_LAST_UPDATE_pn-polkit = "Nov 18, 2010"
+RECIPE_LAST_UPDATE_pn-polkit = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-polkit = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-psplash = "not done"
@@ -916,12 +915,12 @@ RECIPE_MAINTAINER_pn-gperf = "Scott Garman <scott.a.garman@intel.com>"
 
 RECIPE_STATUS_pn-valgrind = "green"
 RECIPE_DEPENDENCY_CHECK_pn-valgrind = "not done"
-RECIPE_LATEST_VERSION_pn-valgrind = "3.6.0"
+RECIPE_LATEST_VERSION_pn-valgrind = "3.6.1"
 RECIPE_INTEL_SECTION_pn-valgrind = "base utils"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-valgrind = "6 months"
-RECIPE_LATEST_RELEASE_DATE_pn-valgrind = "2010/10/21"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-valgrind = "4 months"
+RECIPE_LATEST_RELEASE_DATE_pn-valgrind = "2011/02/16"
 RECIPE_COMMENTS_pn-valgrind = ""
-RECIPE_LAST_UPDATE_pn-valgrind = "Nov 16, 2010"
+RECIPE_LAST_UPDATE_pn-valgrind = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-valgrind = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-formfactor = "green"
@@ -946,12 +945,12 @@ RECIPE_MAINTAINER_pn-makedevs = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-cwautomacros = "green"
 RECIPE_DEPENDENCY_CHECK_pn-cwautomacros = "not done"
-RECIPE_LATEST_VERSION_pn-cwautomacros = "20090610"
+RECIPE_LATEST_VERSION_pn-cwautomacros = "20110201"
 RECIPE_INTEL_SECTION_pn-cwautomacros = "base utils"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-cwautomacros = "6 months"
-RECIPE_LATEST_RELEASE_DATE_pn-cwautomacros = "06/2009"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-cwautomacros = "3 days"
+RECIPE_LATEST_RELEASE_DATE_pn-cwautomacros = "2011/02/01"
 RECIPE_COMMENTS_pn-cwautomacros = ""
-RECIPE_LAST_UPDATE_pn-cwautomacros = "Aug 6, 2010"
+RECIPE_LAST_UPDATE_pn-cwautomacros = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-cwautomacros = "Dongxiao Xu <dongxiao.xu@intel.com>"
 DISTRO_PN_ALIAS_pn-cwautomacros= "OSPDT upstream=http://cwautomacros.berlios.de/"
 
@@ -2093,12 +2092,11 @@ RECIPE_LAST_UPDATE_pn-gupnp = "Apr 15, 2011"
 RECIPE_MAINTAINER_pn-gupnp= "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-gupnp-av = "green"
-RECIPE_LATEST_VERSION_pn-gupnp-av = "0.7.1"
+RECIPE_LATEST_VERSION_pn-gupnp-av = "0.8.0"
 RECIPE_NO_OF_PATCHES_pn-gupnp-av= "0"
-RECIPE_LATEST_RELEASE_DATE_pn-gupnp-av= "2010/11/08"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-gupnp-av= "15 days"
-RECIPE_LAST_UPDATE_pn-gupnp-av = "Nov 25, 2010"
-RECIPE_MANUAL_CHECK_DATE_pn-gupnp-av = "Jan 30, 2011"
+RECIPE_LATEST_RELEASE_DATE_pn-gupnp-av= "2011/04/08"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-gupnp-av= "4 months"
+RECIPE_LAST_UPDATE_pn-gupnp-av = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-gupnp-av = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-gupnp-tools = "green"
@@ -2182,9 +2180,12 @@ RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-telepathy-python="4 months"
 RECIPE_LAST_UPDATE_pn-telepathy-python = "Dec 30, 2010"
 RECIPE_MAINTAINER_pn-telepathy-python = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
-RECIPE_STATUS_pn-bluez-hcidump = "red"
-RECIPE_LATEST_VERSION_pn-bluez-hcidump = "1.42"
-RECIPE_LAST_UPDATE_pn-bluez-hcidump = "Nov 7, 2008"
+RECIPE_STATUS_pn-bluez-hcidump = "green"
+RECIPE_LATEST_VERSION_pn-bluez-hcidump = "2.0"
+RECIPE_NO_OF_PATCHES_pn-bluez-hcidump = "0"
+RECIPE_LATEST_RELEASE_DATE_pn-bluez-hcidump = "2011/01/27"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-bluez-hcidump = "4 months"
+RECIPE_LAST_UPDATE_pn-bluez-hcidump = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-bluez-hcidump = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-ppp-dialin = "red"
@@ -2624,10 +2625,13 @@ RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-gst-ffmpeg = "4 months"
 RECIPE_LAST_UPDATE_pn-gst-ffmpeg = "Dec 14, 2010"
 RECIPE_MAINTAINER_pn-gst-ffmpeg = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
-RECIPE_STATUS_pn-libsndfile1 = "red"
+RECIPE_STATUS_pn-libsndfile1 = "green"
 DISTRO_PN_ALIAS_pn-libsndfile1 = "Meego=libsndfile Fedora=libsndfile OpenSuSE=libsndfile Ubuntu=libsndfile Mandriva=libsndfile Debian=libsndfile"
-RECIPE_LATEST_VERSION_pn-libsndfile1 = "1.0.21 "
-RECIPE_LAST_UPDATE_pn-libsndfile1 = "Nov 11, 2010"
+RECIPE_LATEST_VERSION_pn-libsndfile1 = "1.0.24"
+RECIPE_NO_OF_PATCHES_pn-libsndfile1 = "0"
+RECIPE_LATEST_RELEASE_DATE_pn-libsndfile1 = "2011/03/23"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-libsndfile1 = "5 months"
+RECIPE_LAST_UPDATE_pn-libsndfile1 = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-libsndfile1 = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-pulseaudio = "green"
@@ -2662,11 +2666,11 @@ RECIPE_MAINTAINER_pn-gst-fluendo-mp3 = "Dongxiao Xu <dongxiao.xu@intel.com>"
 DISTRO_PN_ALIAS_pn-gst-fluendo-mp3 = "Debian=gstreamer0.10-fluendo-mp3  Ubuntu=gstreamer0.10-fluendo-mp3"
 
 RECIPE_STATUS_pn-gst-fluendo-mpegdemux = "green"
-RECIPE_LATEST_VERSION_pn-gst-fluendo-mpegdemux = "0.10.20"
+RECIPE_LATEST_VERSION_pn-gst-fluendo-mpegdemux = "0.10.67"
 RECIPE_NO_OF_PATCHES_pn-gst-fluendo-mpegdemux = "0"
-RECIPE_LATEST_RELEASE_DATE_pn-gst-fluendo-mpegdemux = "2010/10/20"
-RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-gst-fluendo-mpegdemux = "1 months"
-RECIPE_LAST_UPDATE_pn-gst-fluendo-mpegdemux = "Dec 7, 2010"
+RECIPE_LATEST_RELEASE_DATE_pn-gst-fluendo-mpegdemux = "2011/03/17"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-gst-fluendo-mpegdemux = "6 days"
+RECIPE_LAST_UPDATE_pn-gst-fluendo-mpegdemux = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-gst-fluendo-mpegdemux = "Dongxiao Xu <dongxiao.xu@intel.com>"
 DISTRO_PN_ALIAS_pn-gst-fluendo-mpegdemux = "Ubuntu=gstreamer0.10-fluendo-mpegdemux Debian=gstreamer0.10-fluendo-mpegdemux"
 
@@ -2676,11 +2680,11 @@ RECIPE_LAST_UPDATE_pn-libomxil = "Jan 11, 2008"
 RECIPE_MAINTAINER_pn-libomxil = "Dongxiao Xu <dongxiao.xu@intel.com>"
 DISTRO_PN_ALIAS_pn-libomxil = "OSPDT upstream=http://omxil.sourceforge.net/"
 
-RECIPE_STATUS_pn-libsamplerate0 = "red"
+RECIPE_STATUS_pn-libsamplerate0 = "green"
 DISTRO_PN_ALIAS_pn-libsamplerate0 = "Meego=libsamplerate Fedora=libsamplerate OpenSuSE=libsamplerate Ubuntu=libsamplerate Mandriva=libsamplerate Debian=libsamplerate"
 RECIPE_LATEST_VERSION_pn-libsamplerate0 = "0.1.7"
-RECIPE_LAST_UPDATE_pn-libsamplerate0 = "Nov 22, 2010"
-RECIPE_MANUAL_CHECK_DATE_pn-libsamplerate0 = "Jan 30, 2011"
+RECIPE_LAST_UPDATE_pn-libsamplerate0 = "Apr 26, 2011"
+RECIPE_MANUAL_CHECK_DATE_pn-libsamplerate0 = "Apr 26, 2011"
 RECIPE_MAINTAINER_pn-libsamplerate0 = "Dongxiao Xu <dongxiao.xu@intel.com>"
 
 RECIPE_STATUS_pn-oprofileui = "green"
-- 
1.7.1.1




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

* [PATCH 22/52] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (20 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 20/52] cwautomacros: upgrade to version 20110201 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 23/52] libiconv: update from 1.9.2 -> 1.11.1 Saul Wold
                   ` (31 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Distributions can then override this variable if needed
useful e.g. when building uclibc/eglibc both using
same tmpdir

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/sstate.bbclass |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index be650c4..553c6a2 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -1,6 +1,6 @@
 SSTATE_VERSION = "2"
 
-SSTATE_MANIFESTS = "${TMPDIR}/sstate-control"
+SSTATE_MANIFESTS ?= "${TMPDIR}/sstate-control"
 SSTATE_MANFILEBASE = "${SSTATE_MANIFESTS}/manifest-${SSTATE_MANMACH}-"
 SSTATE_MANFILEPREFIX = "${SSTATE_MANFILEBASE}${PN}"
 
-- 
1.7.1.1




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

* [PATCH 23/52] libiconv: update from 1.9.2 -> 1.11.1
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (21 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 22/52] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 24/52] elfutils_0.148.bb: Fix compilation issues on uclibc Saul Wold
                   ` (30 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

1.11.1 was the last LGPLv2 release
shared_preloadable_libiconv_linux.patch is needed to make libtool 2.4
happy

Autoconf patch is similarly made to point m4 directory and update to
newer autoconf

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../libiconv/libiconv-1.11.1/autoconf.patch        |   48 ++++++++++++++++++++
 .../shared_preloadable_libiconv_linux.patch        |   24 ++++++++++
 meta/recipes-support/libiconv/libiconv_1.11.1.bb   |   30 ++++++++++++
 meta/recipes-support/libiconv/libiconv_1.9.2.bb    |   21 ---------
 4 files changed, 102 insertions(+), 21 deletions(-)
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch
 create mode 100644 meta/recipes-support/libiconv/libiconv_1.11.1.bb
 delete mode 100644 meta/recipes-support/libiconv/libiconv_1.9.2.bb

diff --git a/meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch b/meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch
new file mode 100644
index 0000000..2b24894
--- /dev/null
+++ b/meta/recipes-support/libiconv/libiconv-1.11.1/autoconf.patch
@@ -0,0 +1,48 @@
+It adds the variables that are needed
+for autoconf 2.65 to reconfigure libiconv and defines the m4 macros 
+directory. Its imported from OE.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: libiconv-1.11.1/configure.ac
+===================================================================
+--- libiconv-1.11.1.orig/configure.ac
++++ libiconv-1.11.1/configure.ac
+@@ -23,7 +23,7 @@ AC_CONFIG_AUX_DIR(build-aux)
+ AM_INIT_AUTOMAKE(libiconv, 1.11)
+ AC_CONFIG_HEADERS(config.h lib/config.h)
+ AC_PROG_MAKE_SET
+-
++AC_CONFIG_MACRO_DIR([m4])
+ dnl           checks for basic programs
+ 
+ AC_PROG_CC
+Index: libiconv-1.11.1/libcharset/configure.ac
+===================================================================
+--- libiconv-1.11.1.orig/libcharset/configure.ac
++++ libiconv-1.11.1/libcharset/configure.ac
+@@ -16,17 +16,17 @@ dnl along with the GNU CHARSET Library;
+ dnl write to the Free Software Foundation, Inc., 51 Franklin Street,
+ dnl Fifth Floor, Boston, MA 02110-1301, USA.
+ 
+-AC_PREREQ(2.13)
++AC_PREREQ(2.61)
++AC_INIT([libcharset],[1.4] )
++AC_CONFIG_SRCDIR([lib/localcharset.c])
+ 
+-PACKAGE=libcharset
+-VERSION=1.4
+-
+-AC_INIT(lib/localcharset.c)
+ AC_CONFIG_AUX_DIR(build-aux)
+ AC_CONFIG_HEADER(config.h)
+ AC_PROG_MAKE_SET
+-AC_SUBST(PACKAGE)
+-AC_SUBST(VERSION)
++dnl AC_SUBST(PACKAGE)
++dnl AC_SUBST(VERSION)
++
++AC_CONFIG_MACRO_DIR([m4])
+ 
+ dnl           checks for basic programs
+ 
diff --git a/meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch b/meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch
new file mode 100644
index 0000000..a913dad
--- /dev/null
+++ b/meta/recipes-support/libiconv/libiconv-1.11.1/shared_preloadable_libiconv_linux.patch
@@ -0,0 +1,24 @@
+With libtool generating shared and static version of libraries needs -fPIC flags
+without this it will not generate the commands to create shared linked library
+Its more enforced by libtool 2.4. I have not checked it with older libtool
+libiconv 1.11.x is relatively old release and libtool 2.4 did not exist when it
+was released these kind of problem are more likely
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: libiconv-1.11.1/lib/Makefile.in
+===================================================================
+--- libiconv-1.11.1.orig/lib/Makefile.in
++++ libiconv-1.11.1/lib/Makefile.in
+@@ -70,9 +70,9 @@ preloadable_libiconv.so : preloadable_li
+ 
+ preloadable_libiconv_linux.so : $(SOURCES)
+ 	if test -n "@GCC@"; then \
+-	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \
++	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -fPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -rpath $(libdir) -o libpreload_iconv.la && cp .libs/libpreload_iconv.so preloadable_libiconv_linux.so; \
+ 	else \
+-	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -shared -o preloadable_libiconv_linux.so; \
++	  $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -KPIC -DPIC -DLIBICONV_PLUG $(SOURCES) -rpath $(libdir) -o libpreload_iconv.la && cp .libs/libpreload_iconv.so preloadable_libiconv_linux.so; \
+ 	fi
+ 
+ preloadable_libiconv_solaris.so : $(SOURCES)
diff --git a/meta/recipes-support/libiconv/libiconv_1.11.1.bb b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
new file mode 100644
index 0000000..28c70c8
--- /dev/null
+++ b/meta/recipes-support/libiconv/libiconv_1.11.1.bb
@@ -0,0 +1,30 @@
+DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \
+multiple character encodings, but that support lacks from your system."
+HOMEPAGE = "http://www.gnu.org/software/libiconv"
+SECTION = "libs"
+PRIORITY = "optional"
+NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8"
+PROVIDES = "virtual/libiconv"
+PR = "r0"
+LICENSE = "LGPL"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674 \
+                    file://libcharset/COPYING.LIB;md5=9f604d8a4f8e74f4f5140845a21b6674"
+SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz \
+           file://autoconf.patch \
+	   file://shared_preloadable_libiconv_linux.patch \
+          "
+
+SRC_URI[md5sum] = "d42b97f6ef5dd0ba4469d520ed732fed"
+SRC_URI[sha256sum] = "e78c347a1a0cb15f2648519e9799151f4b4a934b61ad9ee7424478efe2b8257f"
+
+S = "${WORKDIR}/libiconv-${PV}"
+
+inherit autotools pkgconfig gettext
+
+EXTRA_OECONF += "--enable-shared --enable-static --enable-relocatable"
+
+LEAD_SONAME = "libiconv.so"
+
+do_configure_prepend () {
+	rm -f m4/libtool.m4 libcharset/m4/libtool.m4
+}
diff --git a/meta/recipes-support/libiconv/libiconv_1.9.2.bb b/meta/recipes-support/libiconv/libiconv_1.9.2.bb
deleted file mode 100644
index dac9e3c..0000000
--- a/meta/recipes-support/libiconv/libiconv_1.9.2.bb
+++ /dev/null
@@ -1,21 +0,0 @@
-DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \
-multiple character encodings, but that support lacks from your system."
-HOMEPAGE = "http://www.gnu.org/software/libiconv"
-SECTION = "libs"
-PRIORITY = "optional"
-NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8"
-PROVIDES = "virtual/libiconv"
-PR = "r4"
-LICENSE = "LGPL"
-SRC_URI = "${GNU_MIRROR}/libiconv/libiconv-${PV}.tar.gz"
-
-S = "${WORKDIR}/libiconv-${PV}"
-
-inherit autotools pkgconfig
-
-EXTRA_OECONF += "--enable-shared --enable-static"
-
-do_configure () {
-	rm -f m4/libtool.m4 libcharset/m4/libtool.m4
-	autotools_do_configure
-}
-- 
1.7.1.1




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

* [PATCH 24/52] elfutils_0.148.bb: Fix compilation issues on uclibc
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (22 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 23/52] libiconv: update from 1.9.2 -> 1.11.1 Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 25/52] perl_5.12.2.bb: Undefine features not found in uclibc Saul Wold
                   ` (29 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

* Add -luargp and -lintl to linker flags
* __mempcpy is not there on uclibc so define it to mempcpy

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../elfutils/elfutils-0.148/mempcpy.patch          |   23 ++++++++++++++++++++
 meta/recipes-devtools/elfutils/elfutils_0.148.bb   |    6 +++-
 2 files changed, 27 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch

diff --git a/meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch b/meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch
new file mode 100644
index 0000000..e1e4ad0
--- /dev/null
+++ b/meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch
@@ -0,0 +1,23 @@
+uclibc does not export __mempcpy like glibc so we alias it here.
+This patch may make sense for upstream but elfutils uses more
+glibc specific features like obstack_printf which are missing in
+uclibc they need to be fixed along to make it work all the way
+
+Upstream-status: Inappropriate[Elfutils uses more glibc specific features]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: elfutils-0.148/libelf/elf_begin.c
+===================================================================
+--- elfutils-0.148.orig/libelf/elf_begin.c
++++ elfutils-0.148/libelf/elf_begin.c
+@@ -68,6 +68,9 @@
+ #include "libelfP.h"
+ #include "common.h"
+ 
++#ifdef __UCLIBC__
++#define __mempcpy mempcpy
++#endif
+ 
+ /* Create descriptor for archive in memory.  */
+ static inline Elf *
diff --git a/meta/recipes-devtools/elfutils/elfutils_0.148.bb b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
index a55b98d..df933f6 100644
--- a/meta/recipes-devtools/elfutils/elfutils_0.148.bb
+++ b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
@@ -28,8 +28,8 @@ SRC_URI += "\
         file://elf_additions.diff \
 	file://elfutils-fsize.patch \
 	file://remove-unused.patch \
+	file://mempcpy.patch \
 "
-
 # The buildsystem wants to generate 2 .h files from source using a binary it just built,
 # which can not pass the cross compiling, so let's work around it by adding 2 .h files
 # along with the do_configure_prepend()
@@ -38,7 +38,6 @@ SRC_URI += "\
         file://i386_dis.h \
         file://x86_64_dis.h \
 "
-
 inherit autotools
 
 EXTRA_OECONF = "--program-prefix=eu-"
@@ -49,6 +48,9 @@ do_configure_prepend() {
 	cp ${WORKDIR}/*dis.h ${S}/libcpu
 }
 
+# Only append ldflags for target recipe
+TARGET_LDFLAGS_libc-uclibc += "${@['', '-lintl -luargp']['${PN}' == '${BPN}']}"
+
 BBCLASSEXTEND = "native nativesdk"
 
 # Package utilities separately
-- 
1.7.1.1




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

* [PATCH 25/52] perl_5.12.2.bb: Undefine features not found in uclibc
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (23 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 24/52] elfutils_0.148.bb: Fix compilation issues on uclibc Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 26/52] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly Saul Wold
                   ` (28 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-devtools/perl/perl_5.12.3.bb |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/meta/recipes-devtools/perl/perl_5.12.3.bb b/meta/recipes-devtools/perl/perl_5.12.3.bb
index 584d643..07b8eac 100644
--- a/meta/recipes-devtools/perl/perl_5.12.3.bb
+++ b/meta/recipes-devtools/perl/perl_5.12.3.bb
@@ -134,6 +134,12 @@ do_configure() {
                        -e "s,\(getnetent_r_proto=\)'\w+',\1'0',g" \
                        -e "s,\(d_sockatmark=\)'define',\1'undef',g" \
                        -e "s,\(d_sockatmarkproto=\)'\w+',\1'0',g" \
+                       -e "s,\(d_eaccess=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdio_ptr_lval_sets_cnt=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdiobase=\)'define',\1'undef',g" \
+                       -e "s,\(d_stdstdio=\)'define',\1'undef',g" \
+                       -e "s,-fstack-protector,-fno-stack-protector,g" \
                     config.sh-${TARGET_ARCH}-${TARGET_OS}
         fi
 
@@ -148,6 +154,16 @@ do_configure() {
 	       -e 's,/perl5,/perl,g' \
             config.sh-${TARGET_ARCH}-${TARGET_OS}
 
+	case "${TARGET_ARCH}" in
+		x86_64 | powerpc | s390)
+			sed -i -e "s,\(need_va_copy=\)'undef',\1'define',g" \
+				config.sh-${TARGET_ARCH}-${TARGET_OS}
+			;;
+		arm)
+			sed -i -e "s,\(d_u32align=\)'undef',\1'define',g" \
+				config.sh-${TARGET_ARCH}-${TARGET_OS}
+			;;
+	esac
         # These are strewn all over the source tree
         for foo in `grep -I -m1 \/usr\/include\/.*\\.h ${WORKDIR}/* -r | cut -f 1 -d ":"` ; do
             echo Fixing: $foo
-- 
1.7.1.1




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

* [PATCH 26/52] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (24 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 25/52] perl_5.12.2.bb: Undefine features not found in uclibc Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 27/52] attr: Fix compilation on uclibc Saul Wold
                   ` (27 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb   |    4 +++-
 meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb |    4 ++--
 meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb   |    3 ++-
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb b/meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb
index 79078ef..793008b 100644
--- a/meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb
+++ b/meta/recipes-graphics/xorg-lib/libxau_1.0.6.bb
@@ -6,10 +6,12 @@ both client-side and server-side."
 
 require xorg-lib-common.inc
 
+inherit gettext
+
 LICENSE = "MIT-style"
 LIC_FILES_CHKSUM = "file://COPYING;md5=7908e342491198401321cec1956807ec"
 
-DEPENDS += " xproto gettext"
+DEPENDS += " xproto"
 PROVIDES = "xau"
 
 PR = "r0"
diff --git a/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb b/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb
index d897dab..483dce3 100644
--- a/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb
+++ b/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.0.bb
@@ -8,6 +8,8 @@ autonomous display."
 
 require xorg-lib-common.inc
 
+inherit gettext
+
 LICENSE = "MIT-style"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d559fb26e129626022e052a5e6e0e123"
 
@@ -17,8 +19,6 @@ PROVIDES = "xdmcp"
 PR = "r0"
 PE = "1"
 
-DEPENDS += "gettext"
-
 XORG_PN = "libXdmcp"
 
 BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb b/meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb
index 335f020..19abe5a 100644
--- a/meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb
+++ b/meta/recipes-graphics/xorg-lib/xtrans_1.2.6.bb
@@ -16,7 +16,8 @@ PE = "1"
 PR = "r0"
 
 RDEPENDS_${PN}-dev = ""
-DEPENDS += "gettext"
+
+inherit gettext
 
 BBCLASSEXTEND = "native nativesdk"
 
-- 
1.7.1.1




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

* [PATCH 27/52] attr: Fix compilation on uclibc
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (25 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 26/52] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc Saul Wold
                   ` (26 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

It needs -lintl added to LDFLAGS for uclibc

inherit gettext class instead of adding gettext to DEPENDS directly

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-support/attr/attr.inc   |    4 ++++
 meta/recipes-support/attr/ea-acl.inc |    4 +---
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-support/attr/attr.inc b/meta/recipes-support/attr/attr.inc
index c110340..b2ed9a1 100644
--- a/meta/recipes-support/attr/attr.inc
+++ b/meta/recipes-support/attr/attr.inc
@@ -20,3 +20,7 @@ do_install_append() {
 	sed -i ${D}${libdir}/libattr.la -e \
 	    s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\',
 }
+
+# Only append ldflags for target recipe
+LDFLAGS_libc-uclibc += "${@['', '-lintl']['${PN}' == '${BPN}']}"
+
diff --git a/meta/recipes-support/attr/ea-acl.inc b/meta/recipes-support/attr/ea-acl.inc
index bc93107..a09c31c 100644
--- a/meta/recipes-support/attr/ea-acl.inc
+++ b/meta/recipes-support/attr/ea-acl.inc
@@ -1,11 +1,9 @@
 # this build system is mostly shared by attr and acl
 
-DEPENDS =+ "gettext"
-
 SRC_URI += "file://relative-libdir.patch;striplevel=0 \
             file://no-fixed-prog-path.patch"
 
-inherit autotools
+inherit autotools gettext
 
 # the package comes with a custom config.h.in, it cannot be
 # overwritten by autoheader
-- 
1.7.1.1




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

* [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (26 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 27/52] attr: Fix compilation on uclibc Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27 14:34   ` Darren Hart
  2011-04-27  7:29 ` [PATCH 29/52] python: add missing cytpes modules Saul Wold
                   ` (25 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Perf wants elfutils and elfutils on uclibc does not work due to
its usage of obstack_printf functionality missing from uclibc.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-kernel/linux/linux-tools.inc |   17 +++++++++++++----
 1 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/meta/recipes-kernel/linux/linux-tools.inc b/meta/recipes-kernel/linux/linux-tools.inc
index d64c9be..ef81650 100644
--- a/meta/recipes-kernel/linux/linux-tools.inc
+++ b/meta/recipes-kernel/linux/linux-tools.inc
@@ -1,6 +1,11 @@
 # included by kernel recipes if they want to build/provide
 # perf functionality from their tree.
-
+do_compile_perf_libc-uclibc () {
+	:
+}
+do_install_perf_libc-uclibc () {
+	:
+}
 do_compile_perf() {
 	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1
 }
@@ -14,6 +19,10 @@ do_install_perf() {
 addtask compile_perf after do_compile before do_install
 addtask install_perf after do_install before do_package
 
-do_compile_perf[depends] =  "virtual/libc:do_populate_sysroot"
-do_compile_perf[depends] =+ "elfutils:do_populate_sysroot"
-RDEPENDS_perf += "python perl elfutils"
+
+PERFDEPENDS = "virtual/libc:do_populate_sysroot elfutils:do_populate_sysroot"
+PERFDEPENDS_libc-uclibc = ""
+PERFRDEPENDS = "python perl elfutils"
+PERFRDEPENDS_libc-uclibc = ""
+do_compile_perf[depends] = "${PERFDEPENDS}"
+RDEPENDS_perf += "${PERFRDEPENDS}"
-- 
1.7.1.1




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

* [PATCH 29/52] python: add missing cytpes modules
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (27 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 30/52] cdrtools: recipe and patch cleanup Saul Wold
                   ` (24 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Contributed by Martin Jansa via OE

Fixes [YOCTO #1003]

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../python/06-ctypes-libffi-fix-configure.patch    |   58 ++++++++++++++++++++
 meta/recipes-devtools/python/python_2.6.6.bb       |    3 +-
 2 files changed, 60 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/python/python/06-ctypes-libffi-fix-configure.patch

diff --git a/meta/recipes-devtools/python/python/06-ctypes-libffi-fix-configure.patch b/meta/recipes-devtools/python/python/06-ctypes-libffi-fix-configure.patch
new file mode 100644
index 0000000..8de5694
--- /dev/null
+++ b/meta/recipes-devtools/python/python/06-ctypes-libffi-fix-configure.patch
@@ -0,0 +1,58 @@
+This fixes configure issues with recent autoconf, e.g:
+  autoreconf: Entering directory `Modules/_ctypes/libffi'
+  autoreconf: configure.ac: not using Gettext
+  autoreconf: running: aclocal --force
+  configure.ac:26: error: m4_copy: won't overwrite defined macro: _AC_ARG_VAR_PRECIOUS
+  configure.ac:26: the top level
+
+The problem is still present in python-2.6.5 but fixed in python-svn.
+
+Upstream-Status: Accepted [python-svn]
+
+Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
+Acked-by: Martin Jansa <Martin.Jansa@gmail.com>
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+Signed-off-by: Saul Wold <sgw@linux.intel.com>
+
+diff -pruN Python-2.6.4.orig//Modules/_ctypes/libffi/configure.ac Python-2.6.4/Modules/_ctypes/libffi/configure.ac
+--- Python-2.6.4.orig//Modules/_ctypes/libffi/configure.ac      2009-04-28 22:01:18.000000000 +0200
++++ Python-2.6.4/Modules/_ctypes/libffi/configure.ac    2010-04-20 22:46:02.000000000 +0200
+@@ -23,6 +23,7 @@ AM_INIT_AUTOMAKE
+ m4_rename([_AC_ARG_VAR_PRECIOUS],[real_PRECIOUS])
+ m4_define([_AC_ARG_VAR_PRECIOUS],[])
+ AC_PROG_CC
++m4_undefine([_AC_ARG_VAR_PRECIOUS])
+ m4_rename([real_PRECIOUS],[_AC_ARG_VAR_PRECIOUS])
+ 
+ AC_SUBST(CFLAGS)
+@@ -366,7 +367,7 @@ test -d src/$TARGETDIR || mkdir src/$TAR
+ 
+ AC_CONFIG_LINKS(include/ffitarget.h:src/$TARGETDIR/ffitarget.h)
+ 
+-AC_CONFIG_FILES(include/ffi.h)
++AC_CONFIG_FILES(include/ffi.h include/Makefile Makefile)
+ 
+ AC_CONFIG_LINKS(include/ffi_common.h:include/ffi_common.h)
+ 
+diff -pruN Python-2.6.4.orig//Modules/_ctypes/libffi/Makefile.am Python-2.6.4/Modules/_ctypes/libffi/Makefile.am
+--- Python-2.6.4.orig//Modules/_ctypes/libffi/Makefile.am       2008-03-04 21:09:11.000000000 +0100
++++ Python-2.6.4/Modules/_ctypes/libffi/Makefile.am     2010-04-20 22:54:03.000000000 +0200
+@@ -2,7 +2,7 @@
+ 
+ AUTOMAKE_OPTIONS = foreign subdir-objects
+ 
+-SUBDIRS = include testsuite man
++SUBDIRS = include
+ 
+ EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj configure.host \
+        src/alpha/ffi.c src/alpha/osf.S src/alpha/ffitarget.h \
+@@ -32,8 +32,6 @@ EXTRA_DIST = LICENSE ChangeLog.v1 Change
+        src/frv/ffi.c src/frv/eabi.S src/frv/ffitarget.h src/dlmalloc.c \
+        libtool-version ChangeLog.libffi
+ 
+-info_TEXINFOS = doc/libffi.texi
+-
+ ## ################################################################
+ 
+ ##
+
diff --git a/meta/recipes-devtools/python/python_2.6.6.bb b/meta/recipes-devtools/python/python_2.6.6.bb
index 2939df4..3a0a056 100644
--- a/meta/recipes-devtools/python/python_2.6.6.bb
+++ b/meta/recipes-devtools/python/python_2.6.6.bb
@@ -1,7 +1,7 @@
 require python.inc
 DEPENDS = "python-native db gdbm openssl readline sqlite3 zlib"
 DEPENDS_sharprom = "python-native db readline zlib gdbm openssl"
-PR = "${INC_PR}.1"
+PR = "${INC_PR}.2"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=38fdd546420fab09ac6bd3d8a1c83eb6"
 
 DISTRO_SRC_URI ?= "file://sitecustomize.py"
@@ -13,6 +13,7 @@ SRC_URI = "\
   file://03-fix-tkinter-detection.patch \
   file://04-default-is-optimized.patch \
   file://05-enable-ctypes-cross-build.patch \
+  file://06-ctypes-libffi-fix-configure.patch \
   file://06-avoid_usr_lib_termcap_path_in_linking.patch \
   file://99-ignore-optimization-flag.patch \
   ${DISTRO_SRC_URI} \
-- 
1.7.1.1




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

* [PATCH 30/52] cdrtools: recipe and patch cleanup
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (28 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 29/52] python: add missing cytpes modules Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 31/52] distro_tracking_fields.inc: add cdrtools recipe Saul Wold
                   ` (23 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

* Recipe cleanup, added missing metadata fields and fixed
  whitespace issues
* Added Upstream-Status to patches
* Confirmed that CVE-2003-0655 does not apply to this recipe
  as rscsi is not packaged

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
---
 .../cdrtools-native/glibc-conflict-rename.patch    |    8 +++++++
 .../cdrtools/cdrtools-native/no_usr_src.patch      |    7 ++++++
 .../cdrtools/cdrtools-native_2.01.bb               |   22 +++++++++++--------
 3 files changed, 28 insertions(+), 9 deletions(-)

diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch b/meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch
index 0b9b892..2fd5696 100644
--- a/meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch
+++ b/meta/recipes-devtools/cdrtools/cdrtools-native/glibc-conflict-rename.patch
@@ -1,3 +1,11 @@
+This patch fixes collisions between locally defined functions
+and glibc's fexecve() and getline() functions.
+
+Upstream-Status: Inappropriate [Other]
+Upstream no longer maintains a GPL version of this utility.
+
+Signed-off-by: Scott Garman <scott.a.garman@intel.com>
+
 Index: cdrtools-2.01/include/schily.h
 ===================================================================
 --- cdrtools-2.01.orig/include/schily.h	2009-06-18 11:30:45.000000000 +0100
diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch b/meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
index 0318d31..82e57d1 100644
--- a/meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
+++ b/meta/recipes-devtools/cdrtools/cdrtools-native/no_usr_src.patch
@@ -1,3 +1,10 @@
+Remove hard-coded references to /usr/src/linux/include to avoid
+host contamination.
+
+Upstream-Status: [Other (build-system specific)]
+
+Signed-off-by: Scott Garman <scott.a.garman@intel.com>
+
 Index: cdrtools-2.01/DEFAULTS/Defaults.gnu
 ===================================================================
 --- cdrtools-2.01.orig/DEFAULTS/Defaults.gnu	2008-09-22 12:42:12.000000000 +0100
diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb b/meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb
index 769e5e2..aba6a45 100644
--- a/meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb
+++ b/meta/recipes-devtools/cdrtools/cdrtools-native_2.01.bb
@@ -1,21 +1,25 @@
 # 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"
+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 = "console/utils"
+PRIORITY = "optional"
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
 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 \
+           file://glibc-conflict-rename.patch"
 
-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"
+SRC_URI[md5sum] = "d44a81460e97ae02931c31188fe8d3fd"
+SRC_URI[sha256sum] = "728b6175069a77c4d7d92ae60108cbda81fbbf7bc7aa02e25153ccf2092f6c22"
 
 inherit native
 
-STAGE_TEMP="${WORKDIR}/image-temp"
+STAGE_TEMP = "${WORKDIR}/image-temp"
 
 do_install() {
 	install -d ${STAGE_TEMP}
-- 
1.7.1.1




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

* [PATCH 31/52] distro_tracking_fields.inc: add cdrtools recipe
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (29 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 30/52] cdrtools: recipe and patch cleanup Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 32/52] logging: fix oedebug loglevel test Saul Wold
                   ` (22 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
---
 .../conf/distro/include/distro_tracking_fields.inc |   11 +++++++++++
 1 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/meta/conf/distro/include/distro_tracking_fields.inc b/meta/conf/distro/include/distro_tracking_fields.inc
index 767c05b..d9fe02c 100644
--- a/meta/conf/distro/include/distro_tracking_fields.inc
+++ b/meta/conf/distro/include/distro_tracking_fields.inc
@@ -5676,3 +5676,14 @@ RECIPE_STATUS_pn-createrepo = "green"
 RECIPE_LATEST_VERSION_pn-createrepo = "2.2.3"
 RECIPE_MAINTAINER_pn-createrepo = "Qing He <qing.he@intel.com>"
 RECIPE_LAST_UPDATE_pn-createrepo = "Apr 6, 2011"
+
+RECIPE_STATUS_pn-cdrtools = "green"
+RECIPE_DEPENDENCY_CHECK_pn-cdrtools = "not done"
+RECIPE_LATEST_VERSION_pn-cdrtools = "3.00"
+RECIPE_NO_UPDATE_REASON_pn-cdrtools = "v3.x uses incompatible CDDL license"
+RECIPE_NO_OF_PATCHES_pn-cdrtools = "2"
+RECIPE_LATEST_RELEASE_DATE_pn-cdrtools = "2010/06/02"
+RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES_pn-cdrtools = "6 years 2 months"
+RECIPE_COMMENTS_pn-cdrtools = "This is the last GPL licensed version of cdrtools"
+RECIPE_LAST_UPDATE_pn-cdrtools = "Apr 25, 2011"
+RECIPE_MAINTAINER_pn-cdrtools = "Scott Garman <scott.a.garman@intel.com>"
-- 
1.7.1.1




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

* [PATCH 32/52] logging: fix oedebug loglevel test
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (30 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 31/52] distro_tracking_fields.inc: add cdrtools recipe Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 33/52] logging: remove unused BBDEBUG from local.conf.sample Saul Wold
                   ` (21 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Darren Hart <dvhart@linux.intel.com>

When the existing test for loglevel fails, the syntax used results in the recipe
exiting with a silent failure. Performing any bash command after the test block
resolves the problem, such as "shift" or "echo ''". Rewriting with 'if []; then'
blocks provides a cleaner syntax and also resolves the failure.

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
---
 meta/classes/base.bbclass |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 44fab53..7ca396d 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -53,15 +53,15 @@ oefatal() {
 }
 
 oedebug() {
-	test $# -ge 2 || {
+	if [ $# -lt 2]; then
 		echo "Usage: oedebug level \"message\""
 		exit 1
-	}
+	fi
 
-	test ${OEDEBUG:-0} -ge $1 && {
+	if [ ${OEDEBUG:-0} -ge $1 ]; then
 		shift
 		echo "DEBUG:" $*
-	}
+	fi
 }
 
 oe_runmake() {
-- 
1.7.1.1




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

* [PATCH 33/52] logging: remove unused BBDEBUG from local.conf.sample
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (31 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 32/52] logging: fix oedebug loglevel test Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions Saul Wold
                   ` (20 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Darren Hart <dvhart@linux.intel.com>

The boolean BBDEBUG described in local.conf.sample is no longer
referenced by any other sources. It also conflicts with the OS
environment variable of the same name which maps to the debug
log level also specified by the -D[D[D]] argument.

Remove the boolean BBDEBUG from local.conf.sample.

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Chris Larson <clarson@kergoth.com>
---
 meta/conf/local.conf.sample |    2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/meta/conf/local.conf.sample b/meta/conf/local.conf.sample
index 5ba1b06..ba92df8 100644
--- a/meta/conf/local.conf.sample
+++ b/meta/conf/local.conf.sample
@@ -115,8 +115,6 @@ PACKAGE_DEBUG_SPLIT_STYLE = '.debug'
 # SELECTED_OPTIMIZATION = "${PROFILE_OPTIMIZATION}"
 # LDFLAGS =+ "-pg"
 
-# Uncomment this if you want BitBake to emit debugging output
-# BBDEBUG = "yes"
 # Uncomment this if you want BitBake to emit the log if a build fails.
 BBINCLUDELOGS = "yes"
 
-- 
1.7.1.1




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

* [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (32 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 33/52] logging: remove unused BBDEBUG from local.conf.sample Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-28  9:05   ` Richard Purdie
  2011-04-27  7:29 ` [PATCH 35/52] libsdl: add SRC_URI Checksums Saul Wold
                   ` (19 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

From: Darren Hart <dvhart@linux.intel.com>

The following logging mechanisms are to be used in bash functions of recipes.
They are intended to map one to one in intention and output format with the
python recipe logging functions of a similar naming convention: bb.plain(),
bb.note(), etc.

For the time being, all of these print only to the task logs. Future
enhancements may integrate these calls with the bitbake logging infrastructure,
allowing for printing to the console as appropriate. The interface and intention
statements reflect that future goal. Once it is in place, no changes will be
necessary to recipes using these logging mechanisms.

I opted to write new functions instead of modifying the oe* logging functions
from base.bbclass (and utils.bbclass in oe) for a couple reasons. First, one of
my goals was to generate a uniform logging API between bash and python in
recipes. Second, there are no users of oe* logging in meta (oe-core) or
meta-yocto, while several oe recipes do use them. I wanted to make a clean start
with the freedom to change behavior without forcing the oe recipes to change or
experience unexpected logging changes. Eventually, the oe recipes can be
migrated to the new bb* logging routines and the existing oe* routines can be
retired (deleted).

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Chris Larson <clarson@kergoth.com>
---
 meta/classes/base.bbclass    |    1 +
 meta/classes/logging.bbclass |   72 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 73 insertions(+), 0 deletions(-)
 create mode 100644 meta/classes/logging.bbclass

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 7ca396d..eafad7e 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -8,6 +8,7 @@ inherit utils
 inherit utility-tasks
 inherit metadata_scm
 inherit buildstats
+inherit logging
 
 python sys_path_eh () {
     if isinstance(e, bb.event.ConfigParsed):
diff --git a/meta/classes/logging.bbclass b/meta/classes/logging.bbclass
new file mode 100644
index 0000000..78d65bd
--- /dev/null
+++ b/meta/classes/logging.bbclass
@@ -0,0 +1,72 @@
+# The following logging mechanisms are to be used in bash functions of recipes.
+# They are intended to map one to one in intention and output format with the
+# python recipe logging functions of a similar naming convention: bb.plain(),
+# bb.note(), etc.
+#
+# For the time being, all of these print only to the task logs. Future
+# enhancements may integrate these calls with the bitbake logging
+# infrastructure, allowing for printing to the console as appropriate. The
+# interface and intention statements reflect that future goal. Once it is
+# in place, no changes will be necessary to recipes using these logging
+# mechanisms.
+
+# Print the output exactly as it is passed in. Typically used for output of
+# tasks that should be seen on the console. Use sparingly.
+# Output: logs console
+# NOTE: console output is not currently implemented.
+bbplain() {
+	echo "$*"
+}
+
+# Notify the user of a noteworthy condition. 
+# Output: logs console
+# NOTE: console output is not currently implemented.
+bbnote() {
+	echo "NOTE: $*"
+}
+
+# Print a warning to the log. Warnings are non-fatal, and do not
+# indicate a build failure.
+# Output: logs
+bbwarn() {
+	echo "WARNING: $*"
+}
+
+# Print an error to the log. Errors are non-fatal in that the build can
+# continue, but they do indicate a build failure.
+# Output: logs
+bberror() {
+	echo "ERROR: $*"
+}
+
+# Print a fatal error to the log. Fatal errors indicate build failure
+# and halt the build, exiting with an error code.
+# Output: logs
+bbfatal() {
+	echo "ERROR: $*"
+	exit 1
+}
+
+# Print debug messages. These are appropriate for progress checkpoint
+# messages to the logs. Depending on the debug log level, they may also
+# go to the console.
+# Output: logs console
+# Usage: bbdebug 1 "first level debug message"
+#        bbdebug 2 "second level debug message"
+# NOTE: console output is not currently implemented.
+bbdebug() {
+	USAGE='Usage: bbdebug [123] "message"'
+	if [ $# -lt 2 ]; then
+		bbfatal "$USAGE"
+	fi
+	
+	# Strip off the debug level and ensure it is an integer
+	DBGLVL=$1; shift
+	if ! [[ "$DBGLVL" =~ ^[0-9]+ ]]; then
+		bbfatal "$USAGE"
+	fi
+
+	# All debug output is printed to the logs
+	echo "DEBUG: $*"
+}
+
-- 
1.7.1.1




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

* [PATCH 35/52] libsdl: add SRC_URI Checksums
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (33 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-27  7:29 ` [PATCH 36/52] gettext.bbclass: Use _append instead of =+ Saul Wold
                   ` (18 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

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

diff --git a/meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb b/meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb
index 2ef14b8..e64a62e 100644
--- a/meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb
+++ b/meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb
@@ -14,6 +14,9 @@ SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \
 	   file://kernel-asm-page.patch;patch=1 "
 S = "${WORKDIR}/SDL-${PV}"
 
+SRC_URI[md5sum] = "418b42956b7cd103bfab1b9077ccc149"
+SRC_URI[sha256sum] = "6985823287b224b57390b1c1b6cbc54cc9a7d7757fbf9934ed20754b4cd23730"
+
 inherit autotools binconfig pkgconfig nativesdk
 
 EXTRA_OECONF = "--disable-static --disable-debug --disable-cdrom --enable-threads --enable-timers --enable-endian \
-- 
1.7.1.1




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

* [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (34 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 35/52] libsdl: add SRC_URI Checksums Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-28  9:01   ` Richard Purdie
  2011-04-27  7:29 ` [PATCH 37/52] insane.bbclass: Move code to add function to tasks toward the end Saul Wold
                   ` (17 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Ensure gettext and gettext-native are removed from DEPENDS when
not using NLS

Use append instead of += to get gettext dependecies processed
correctly in all cases

Dont remove gettext-native for native recipes as ENABLE_NLS is
only for target and not for native recipes

Replace using 1 for a boolean type with True

Honor INHIBIT_DEFAULT_DEPS

Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non
null

operate on virtclass overrides individually

virtclass classes are parsed at the end hence
just doing DEPENDS munging is not enough since
it will be overridden

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/gettext.bbclass |   38 ++++++++++++++++++++++++++------------
 1 files changed, 26 insertions(+), 12 deletions(-)

diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
index a40e74f..f7b84ec 100644
--- a/meta/classes/gettext.bbclass
+++ b/meta/classes/gettext.bbclass
@@ -1,17 +1,31 @@
 def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
-
+   # Remove the NLS bits if USE_NLS is no.
+   if bb.data.getVar('USE_NLS', d, True) == 'no':
+       cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
+       cfg += " --disable-nls"
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       depends = oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$', depends, d)
+       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'crosssdk'):
+           depends = oe_filter_out('^(gettext-native)$', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
+       bb.data.setVar('EXTRA_OECONF', cfg, d)
+   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove dependencies
+   # added by this class through DEPENDS_GETTEXT
+   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
+       depends_native = bb.data.getVar('DEPENDS_virtclass-native', d, True) or ""
+       depends_nativesdk = bb.data.getVar('DEPENDS_virtclass-nativesdk', d, True) or ""
+       depends = bb.data.getVar('DEPENDS', d, True) or ""
+       gettext_deps = bb.data.getVar('DEPENDS_GETTEXT', d, True).replace(' ','|')
+       gettext_deps = '^(' + gettext_deps + ')$'
+       depends_native = oe_filter_out(gettext_deps, depends_native, d)
+       depends_nativesdk = oe_filter_out(gettext_deps, depends_nativesdk, d)
+       depends = oe_filter_out(gettext_deps, depends, d)
+       bb.data.setVar('DEPENDS_virtclass-native', depends, d)
+       bb.data.setVar('DEPENDS_virtclass-nativesdk', depends, d)
+       bb.data.setVar('DEPENDS', depends, d)
 python () {
     gettext_after_parse(d)
 }
-
-DEPENDS_GETTEXT = "gettext gettext-native"
-
-DEPENDS =+ "${DEPENDS_GETTEXT}"
 EXTRA_OECONF += "--enable-nls"
+DEPENDS_GETTEXT ?= "virtual/gettext"
+DEPENDS_append = " ${DEPENDS_GETTEXT} "
-- 
1.7.1.1




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

* [PATCH 37/52] insane.bbclass: Move code to add function to tasks toward the end
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (35 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 36/52] gettext.bbclass: Use _append instead of =+ Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-28  8:46   ` Richard Purdie
  2011-04-27  7:29 ` [PATCH 38/52] insane.bbclass: Checking for NLS too when checking gettext dependency Saul Wold
                   ` (16 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Cosmetic change to make syntax highlighters happy

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/insane.bbclass |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 22a5086..98acf7f 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -554,9 +554,6 @@ python do_package_qa () {
 }
 
 
-# The Staging Func, to check all staging
-#addtask qa_staging after do_populate_sysroot before do_build
-do_populate_sysroot[postfuncs] += "do_qa_staging "
 python do_qa_staging() {
     bb.note("QA checking staging")
 
@@ -564,10 +561,6 @@ python do_qa_staging() {
         bb.fatal("QA staging was broken by the package built above")
 }
 
-# Check broken config.log files, for packages requiring Gettext which don't
-# have it in DEPENDS and for correct LIC_FILES_CHKSUM
-#addtask qa_configure after do_configure before do_compile
-do_configure[postfuncs] += "do_qa_configure "
 python do_qa_configure() {
     configs = []
     workdir = bb.data.getVar('WORKDIR', d, True)
@@ -603,3 +596,11 @@ Missing inherit gettext?""" % config)
     if not package_qa_check_license(workdir, d):
         bb.fatal("Licensing Error: LIC_FILES_CHKSUM does not match, please fix")
 }
+# The Staging Func, to check all staging
+#addtask qa_staging after do_populate_sysroot before do_build
+do_populate_sysroot[postfuncs] += "do_qa_staging "
+
+# Check broken config.log files, for packages requiring Gettext which don't
+# have it in DEPENDS and for correct LIC_FILES_CHKSUM
+#addtask qa_configure after do_configure before do_compile
+do_configure[postfuncs] += "do_qa_configure "
-- 
1.7.1.1




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

* [PATCH 38/52] insane.bbclass: Checking for NLS too when checking gettext dependency
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (36 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 37/52] insane.bbclass: Move code to add function to tasks toward the end Saul Wold
@ 2011-04-27  7:29 ` Saul Wold
  2011-04-28  9:02   ` Richard Purdie
  2011-04-27  7:30 ` [PATCH 39/52] autotools.bbclass: Copy gettext files only if --disable-nls is not set Saul Wold
                   ` (15 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:29 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Checking for gettext is not needed when --disable-nls is used

Let user know what variant of gettext is missing e.g. gettext-native,
gettext-nativesdk etc, reveals a bit more for user

Check for virtual/gettext

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/insane.bbclass |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index 98acf7f..742be5e 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -578,20 +578,21 @@ Rerun configure task after fixing this. The path was '%s'""" % root)
         if "configure.in" in files:
             configs.append(os.path.join(root, "configure.in"))
 
-    if "gettext" not in bb.data.getVar('P', d, True) and "gcc-runtime" not in bb.data.getVar('P', d, True):
+    cnf = bb.data.getVar('EXTRA_OECONF', d, True) or ""
+    if "gettext" not in bb.data.getVar('P', d, True) and "gcc-runtime" not in bb.data.getVar('P', d, True) and "--disable-nls" not in cnf:
        if bb.data.inherits_class('native', d) or bb.data.inherits_class('cross', d) or bb.data.inherits_class('crosssdk', d) or bb.data.inherits_class('nativesdk', d):
           gt = "gettext-native"
        elif bb.data.inherits_class('cross-canadian', d):
           gt = "gettext-nativesdk"
        else:
-          gt = "gettext"
+          gt = "virtual/gettext"
        deps = bb.utils.explode_deps(bb.data.getVar('DEPENDS', d, True) or "")
        if gt not in deps:
           for config in configs:
               gnu = "grep \"^[[:space:]]*AM_GNU_GETTEXT\" %s >/dev/null" % config
               if os.system(gnu) == 0:
-                 bb.fatal("""Gettext required but not in DEPENDS for file %s.
-Missing inherit gettext?""" % config)
+                 bb.fatal("""%s required but not in DEPENDS for file %s.
+Missing inherit gettext?""" % (gt, config))
 
     if not package_qa_check_license(workdir, d):
         bb.fatal("Licensing Error: LIC_FILES_CHKSUM does not match, please fix")
-- 
1.7.1.1




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

* [PATCH 39/52] autotools.bbclass: Copy gettext files only if --disable-nls is not set
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (37 preceding siblings ...)
  2011-04-27  7:29 ` [PATCH 38/52] insane.bbclass: Checking for NLS too when checking gettext dependency Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 40/52] gettext: Divide packaging into gettext-runtime and rest Saul Wold
                   ` (14 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/classes/autotools.bbclass |   19 ++++++++++---------
 1 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/meta/classes/autotools.bbclass b/meta/classes/autotools.bbclass
index 7ebf833..cbd2e96 100644
--- a/meta/classes/autotools.bbclass
+++ b/meta/classes/autotools.bbclass
@@ -127,17 +127,18 @@ autotools_do_configure() {
 			else
 			  CONFIGURE_AC=configure.ac
 			fi
-			if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
-			  if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
-			    : do nothing -- we still have an old unmodified configure.ac
-			  else
-			    oenote Executing glib-gettextize --force --copy
-			    echo "no" | glib-gettextize --force --copy
+			if ! echo ${EXTRA_OECONF} | grep -q "\-\-disable-nls"; then
+			  if grep "^[[:space:]]*AM_GLIB_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
+			    if grep "sed.*POTFILES" $CONFIGURE_AC >/dev/null; then
+			      : do nothing -- we still have an old unmodified configure.ac
+			    else
+			      oenote Executing glib-gettextize --force --copy
+			      echo "no" | glib-gettextize --force --copy
+			    fi
+			  else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
+			    cp ${STAGING_DATADIR}/gettext/config.rpath ${S}/
 			  fi
-			else if grep "^[[:space:]]*AM_GNU_GETTEXT" $CONFIGURE_AC >/dev/null; then
-			  cp ${STAGING_DATADIR}/gettext/config.rpath ${S}/
 			fi
-
 			fi
 			mkdir -p m4
 			if grep "^[[:space:]]*[AI][CT]_PROG_INTLTOOL" $CONFIGURE_AC >/dev/null; then
-- 
1.7.1.1




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

* [PATCH 40/52] gettext: Divide packaging into gettext-runtime and rest
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (38 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 39/52] autotools.bbclass: Copy gettext files only if --disable-nls is not set Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 41/52] gettext_0.17.bb: PROVIDE virtual/gettext and RCONFLICT with proxy-libintl Saul Wold
                   ` (13 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

This helps in footprint on space constrained systems e.g.
uclibc based systems where packaging full gettext just for
libintl can be waste of space.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/gettext/gettext_0.17.bb |   35 +++++++++++++++++++++++++---
 1 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/meta/recipes-core/gettext/gettext_0.17.bb b/meta/recipes-core/gettext/gettext_0.17.bb
index b9c4e1c..bfcb5ea 100644
--- a/meta/recipes-core/gettext/gettext_0.17.bb
+++ b/meta/recipes-core/gettext/gettext_0.17.bb
@@ -53,9 +53,36 @@ acpaths = '-I ${S}/autoconf-lib-link/m4/ \
 # 1300    KiB /ep93xx/uclibc-dev_0.9.29-r8_ep93xx.ipk
 # 140     KiB /armv4t/gettext-dev_0.14.1-r6_armv4t.ipk
 # 4       KiB /ep93xx/libgcc-s-dev_4.2.2-r2_ep93xx.ipk
+PACKAGES =+ "gettext-runtime gettext-runtime-dev gettext-runtime-doc"
 
-PACKAGES =+ "libgettextlib libgettextsrc"
-FILES_libgettextlib = "${libdir}/libgettextlib-*.so*"
-FILES_libgettextsrc = "${libdir}/libgettextsrc-*.so*"
-
+FILES_gettext-runtime = "${bindir}/gettext \
+                         ${bindir}/ngettext \
+                         ${bindir}/envsubst \
+                         ${bindir}/gettext.sh \
+                         ${libdir}/libasprintf.so* \
+                         ${libdir}/GNU.Gettext.dll \
+                        "
+FILES_gettext-runtime_append_libc-uclibc = " ${libdir}/libintl.so* \
+                                             ${libdir}/charset.alias \
+                                           "
+FILES_gettext-runtime-dev += "${libdir}/libasprintf.a \
+                      ${includedir}/autosprintf.h \
+                     "
+FILES_gettext-runtime-dev_append_libc-uclibc = " ${libdir}/libintl.a \
+                                                 ${includedir}/libintl.h \
+                                               "
+FILES_gettext-runtime-doc = "${mandir}/man1/gettext.* \
+                             ${mandir}/man1/ngettext.* \
+                             ${mandir}/man1/envsubst.* \
+                             ${mandir}/man1/.* \
+                             ${mandir}/man3/* \
+                             ${docdir}/gettext/gettext.* \
+                             ${docdir}/gettext/ngettext.* \
+                             ${docdir}/gettext/envsubst.* \
+                             ${docdir}/gettext/*.3.html \
+                             ${datadir}/gettext/ABOUT-NLS \
+                             ${docdir}/gettext/csharpdoc/* \
+                             ${docdir}/libasprintf/autosprintf.html \
+                             ${infodir}/autosprintf.info \
+                            "
 BBCLASSEXTEND = "native nativesdk"
-- 
1.7.1.1




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

* [PATCH 41/52] gettext_0.17.bb: PROVIDE virtual/gettext and RCONFLICT with proxy-libintl
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (39 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 40/52] gettext: Divide packaging into gettext-runtime and rest Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 42/52] poky-default.inc: Weakly assign gettext to provide virtual/gettext Saul Wold
                   ` (12 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/gettext/gettext_0.17.bb |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/gettext/gettext_0.17.bb b/meta/recipes-core/gettext/gettext_0.17.bb
index bfcb5ea..ce5fc3e 100644
--- a/meta/recipes-core/gettext/gettext_0.17.bb
+++ b/meta/recipes-core/gettext/gettext_0.17.bb
@@ -8,9 +8,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 PR = "r5"
 DEPENDS = "gettext-native virtual/libiconv ncurses expat"
 DEPENDS_virtclass-native = ""
-PROVIDES = "virtual/libintl"
+PROVIDES = "virtual/libintl virtual/gettext"
 PROVIDES_virtclass-native = ""
-
+CONFLICTS_${PN} = "proxy-libintl"
 SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \
            file://autotools.patch;patch=1 \
            file://wchar-uclibc.patch;patch=1 \
-- 
1.7.1.1




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

* [PATCH 42/52] poky-default.inc: Weakly assign gettext to provide virtual/gettext
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (40 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 41/52] gettext_0.17.bb: PROVIDE virtual/gettext and RCONFLICT with proxy-libintl Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 43/52] glib-2.0: Inherit gettext should provide right libintl so remove from DEPENDS Saul Wold
                   ` (11 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/conf/distro/include/poky-default.inc |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/meta/conf/distro/include/poky-default.inc b/meta/conf/distro/include/poky-default.inc
index 3ec5e1d..91985b3 100644
--- a/meta/conf/distro/include/poky-default.inc
+++ b/meta/conf/distro/include/poky-default.inc
@@ -14,6 +14,7 @@ PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}compilerlibs = "gcc-runtime"
 PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-initial = "${POKYLIBC}-initial"
 PREFERRED_PROVIDER_virtual/${SDK_PREFIX}libc-for-gcc-nativesdk ?= "${POKYLIBC}-nativesdk"
 
+PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
 
 GCCVERSION ?= "4.5.1"
 SDKGCCVERSION ?= "4.5.1"
-- 
1.7.1.1




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

* [PATCH 43/52] glib-2.0: Inherit gettext should provide right libintl so remove from DEPENDS
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (41 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 42/52] poky-default.inc: Weakly assign gettext to provide virtual/gettext Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 45/52] perl_5.12.2.bb: Undefine features not found in uclibc Saul Wold
                   ` (10 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Add no-iconv.patch to provide dummy libiconv in case of uclibc

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch |  104 ++++++++++++++++++++
 meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb      |    5 +-
 meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb      |    4 +-
 meta/recipes-core/glib-2.0/glib.inc                |    2 +-
 4 files changed, 112 insertions(+), 3 deletions(-)
 create mode 100644 meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch

diff --git a/meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch b/meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
new file mode 100644
index 0000000..cca57d4
--- /dev/null
+++ b/meta/recipes-core/glib-2.0/glib-2.0/no-iconv.patch
@@ -0,0 +1,104 @@
+We provide dummy implementation of iconv functionality if it does not find
+iconv which will be case with uclibc. We remove the check for iconv in configure
+
+This is needed when libintl and libiconv is not available. It wont have any
+impact on case when they are available.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+
+Index: glib-2.26.1/glib/gconvert.c
+===================================================================
+--- glib-2.26.1.orig/glib/gconvert.c
++++ glib-2.26.1/glib/gconvert.c
+@@ -23,7 +23,7 @@
+ #include "config.h"
+ #include "glibconfig.h"
+ 
+-#ifndef G_OS_WIN32
++#if !defined G_OS_WIN32 && defined HAVE_ICONV_H
+ #include <iconv.h>
+ #endif
+ #include <errno.h>
+@@ -65,6 +65,28 @@
+ #error GNU libiconv not in use but included iconv.h is from libiconv
+ #endif
+ 
++#ifndef HAVE_ICONV_H
++typedef void *iconv_t;
++
++iconv_t iconv_open(const char *tocode, const char *fromcode)
++{
++	return (iconv_t)(-1);
++}
++
++int iconv_close(iconv_t cd)
++{
++	free(cd);
++
++	return 0;
++}
++size_t iconv (iconv_t __cd, char **__inbuf,
++                     size_t *__inbytesleft,
++                     char **__outbuf,
++                     size_t *__outbytesleft)
++{
++	return 0;
++}
++#endif
+ 
+ /**
+  * SECTION:conversions
+Index: glib-2.26.1/configure.ac
+===================================================================
+--- glib-2.26.1.orig/configure.ac
++++ glib-2.26.1/configure.ac
+@@ -373,46 +373,8 @@ dnl *** Tests for iconv ***
+ dnl ***********************
+ dnl
+ dnl We do this before the gettext checks, to avoid distortion
+-
+-dnl On Windows we use a native implementation
+-
+-if test x"$glib_native_win32" = xyes; then
+-  with_libiconv=native
+-else
+-  AC_ARG_WITH(libiconv,
+-	      [AC_HELP_STRING([--with-libiconv=@<:@no/gnu/native@:>@],
+-			      [use the libiconv library])],,
+-	      [with_libiconv=maybe])
+-
+-  found_iconv=no
+-  case $with_libiconv in
+-    maybe)
+-      # Check in the C library first
+-      AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes])
+-      # Check if we have GNU libiconv
+-      if test $found_iconv = "no"; then
+-	AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes])
+-      fi
+-      # Check if we have a iconv in -liconv, possibly from vendor
+-      if test $found_iconv = "no"; then
+-	AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes])
+-      fi
+-      ;;
+-    no)
+-      AC_CHECK_FUNC(iconv_open, [with_libiconv=no; found_iconv=yes])
+-      ;;
+-    gnu|yes)
+-      AC_CHECK_LIB(iconv, libiconv_open, [with_libiconv=gnu; found_iconv=yes])
+-      ;;
+-    native)
+-      AC_CHECK_LIB(iconv, iconv_open, [with_libiconv=native; found_iconv=yes])
+-      ;;
+-  esac
+-
+-  if test "x$found_iconv" = "xno" ; then
+-     AC_MSG_ERROR([*** No iconv() implementation found in C library or libiconv])
+-  fi
+-fi
++found_iconv=yes
++with_libiconv=no
+ 
+ gl_GLIBC21
+ AC_ARG_ENABLE(iconv-cache, 
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb
index 4014a1b..776284e 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.27.5.bb
@@ -1,6 +1,6 @@
 require glib.inc
 
-PR = "r3"
+PR = "r4"
 
 SRC_URI = "${GNOME_MIRROR}/glib/2.27/glib-${PV}.tar.bz2 \
            file://configure-libtool.patch \
@@ -13,6 +13,9 @@ SRC_URI[sha256sum] = "aad3038db865b762e01b1dc455ffd601b4083c069018d290e5fdfe1a61
 
 SRC_URI_append_virtclass-native = " file://glib-gettextize-dir.patch"
 
+# Only apply this patch for target recipe on uclibc
+SRC_URI_append_libc-uclibc = " ${@['', 'file://no-iconv.patch']['${PN}' == '${BPN}']}"
+
 BBCLASSEXTEND = "native nativesdk"
 
 DEFAULT_PREFERENCE = "-1"
diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb
index 6b6c1f5..ca5f4c8 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.28.6.bb
@@ -1,13 +1,15 @@
 require glib.inc
 
 PE = "1"
-PR = "r0"
+PR = "r1"
 
 SRC_URI = "${GNOME_MIRROR}/glib/2.28/glib-${PV}.tar.bz2 \
            file://configure-libtool.patch \
            file://60_wait-longer-for-threads-to-die.patch \
            file://g_once_init_enter.patch \
           "
+# Only apply this patch for target recipe on uclibc
+SRC_URI_append_libc-uclibc = " ${@['', 'file://no-iconv.patch']['${PN}' == '${BPN}']}"
 
 SRC_URI[md5sum] = "7d8fc15ae70d5111c0cf2a79d50ef717"
 SRC_URI[sha256sum] = "557fb7c39d21b9359fbac51fd6b0b883bc97a2561c0166eef993a4078312f578"
diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc
index 9b6e17b..83f1990 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -15,7 +15,7 @@ SECTION = "libs"
 
 require glib-2.0.inc
 
-DEPENDS = "glib-2.0-native gtk-doc-native virtual/libiconv virtual/libintl zip dbus"
+DEPENDS = "glib-2.0-native gtk-doc-native zip dbus"
 DEPENDS_virtclass-native = "gtk-doc-native pkgconfig-native gettext-native dbus-native"
 DEPENDS_virtclass-nativesdk = "libtool-nativesdk"
 PACKAGES =+ "glib-2.0-utils "
-- 
1.7.1.1




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

* [PATCH 44/52] util-linux.inc: remove virtual/libintl from DEPENDS
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (43 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 45/52] perl_5.12.2.bb: Undefine features not found in uclibc Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-28  9:03   ` Richard Purdie
  2011-04-27  7:30 ` [PATCH 46/52] alsa-utils_1.0.23.bb: Fix compilation for uclibc targets Saul Wold
                   ` (8 subsequent siblings)
  53 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

inherit gettext should do it.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta/recipes-core/util-linux/util-linux.inc |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc
index 913bb1b..447e5b7 100644
--- a/meta/recipes-core/util-linux/util-linux.inc
+++ b/meta/recipes-core/util-linux/util-linux.inc
@@ -13,10 +13,10 @@ LIC_FILES_CHKSUM = "file://README.licensing;md5=1530e36fe1304d4535513de90a290df9
                     file://licenses/COPYING.UCB;md5=263860f8968d8bafa5392cab74285262 \
                     file://getopt/COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
 
-DEPENDS = "zlib ncurses virtual/libintl"
-DEPENDS_virtclass-native = "zlib-native ncurses-native lzo-native gettext-native"
-
 inherit autotools gettext
+DEPENDS = "zlib ncurses"
+DEPENDS_virtclass-native_append = " lzo-native"
+
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux-ng/v${MAJOR_VERSION}/util-linux-ng-${PV}.tar.bz2 \
            file://MCONFIG \
-- 
1.7.1.1




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

* [PATCH 45/52] perl_5.12.2.bb: Undefine features not found in uclibc
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (42 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 43/52] glib-2.0: Inherit gettext should provide right libintl so remove from DEPENDS Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 44/52] util-linux.inc: remove virtual/libintl from DEPENDS Saul Wold
                   ` (9 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

[sgw: cleaned whitespace issue, removed unneeded ;patch=1]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../perl/perl-5.12.3/native-ssp.patch              |   16 ----------------
 meta/recipes-devtools/perl/perl_5.12.3.bb          |   14 +++++++-------
 2 files changed, 7 insertions(+), 23 deletions(-)
 delete mode 100644 meta/recipes-devtools/perl/perl-5.12.3/native-ssp.patch

diff --git a/meta/recipes-devtools/perl/perl-5.12.3/native-ssp.patch b/meta/recipes-devtools/perl/perl-5.12.3/native-ssp.patch
deleted file mode 100644
index e1e6f08..0000000
--- a/meta/recipes-devtools/perl/perl-5.12.3/native-ssp.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Upstream-Status:Inappropriate [embedded specific]
-
-Fix for compiling with ssp enabled gcc:
-See http://bugs.openembedded.net/show_bug.cgi?id=1980
-
-diff -Naur perl-5.8.7.orig/cflags.SH perl-5.8.7/cflags.SH
---- perl-5.8.7.orig/cflags.SH	2002-09-30 10:59:07.000000000 +0000
-+++ perl-5.8.7/cflags.SH	2005-10-02 04:08:39.000000000 +0000
-@@ -165,6 +165,8 @@
- esac
- 
-     : Can we perhaps use $ansi2knr here
-+    [[ $file == regcomp ]] && export ccflags="${ccflags} -fno-stack-protector"
-+    [[ $file == regexec ]] && export ccflags="${ccflags} -fno-stack-protector"
-     echo "$cc -c -DPERL_CORE $ccflags $optimize $warn"
-     eval "$also "'"$cc -DPERL_CORE -c $ccflags $optimize $warn"'
diff --git a/meta/recipes-devtools/perl/perl_5.12.3.bb b/meta/recipes-devtools/perl/perl_5.12.3.bb
index 07b8eac..847ee59 100644
--- a/meta/recipes-devtools/perl/perl_5.12.3.bb
+++ b/meta/recipes-devtools/perl/perl_5.12.3.bb
@@ -58,13 +58,13 @@ SRC_URI = "http://www.cpan.org/src/5.0/perl-${PV}.tar.gz \
         file://parallel_build_fix_4.patch \
         file://parallel_build_fix_5.patch \
         file://parallel_build_fix_6.patch \
-        file://Makefile.SH.patch;patch=1 \
-        file://installperl.patch;patch=1 \
-        file://perl-dynloader.patch;patch=1 \
-        file://perl-moreconfig.patch;patch=1 \
-        file://letgcc-find-errno.patch;patch=1 \
-        file://generate-sh.patch;patch=1 \
-        file://09_fix_installperl.patch;patch=1 \
+        file://Makefile.SH.patch \
+        file://installperl.patch \
+        file://perl-dynloader.patch \
+        file://perl-moreconfig.patch \
+        file://letgcc-find-errno.patch \
+        file://generate-sh.patch \
+        file://09_fix_installperl.patch \
         file://native-perlinc.patch \
         file://perl-enable-gdbm.patch \
         file://cross-generate_uudmap.patch \
-- 
1.7.1.1




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

* [PATCH 46/52] alsa-utils_1.0.23.bb: Fix compilation for uclibc targets
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (44 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 44/52] util-linux.inc: remove virtual/libintl from DEPENDS Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 47/52] clutter-box2d: add DEPENDS for clutter-1.6 Saul Wold
                   ` (7 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Use libc-uclibc override to cover all uclibc cases

inherit gettext class instead of adding gettext to DEPENDS directly

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 .../recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/meta/recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb b/meta/recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb
index 953a3ac..c882bfd 100644
--- a/meta/recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb
+++ b/meta/recipes-multimedia/alsa/alsa-utils_1.0.24.2.bb
@@ -5,11 +5,11 @@ SECTION = "console/utils"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833 \
                     file://alsactl/utils.c;beginline=1;endline=20;md5=fe9526b055e246b5558809a5ae25c0b9"
-DEPENDS = "alsa-lib ncurses gettext"
+DEPENDS = "alsa-lib ncurses"
 PR = "r0"
 
 SRC_URI = "ftp://ftp.alsa-project.org/pub/utils/alsa-utils-${PV}.tar.bz2 \
-           file://ncursesfix.patch;patch=1 "
+           file://ncursesfix.patch"
 
 SRC_URI[md5sum] = "8238cd57cb301d1c36bcf0ecb59ce6b2"
 SRC_URI[sha256sum] = "95127f740291086486c06c28118cabca0814bde48fd14dac041a9812a5ac1be2"
@@ -19,10 +19,9 @@ SRC_URI[sha256sum] = "95127f740291086486c06c28118cabca0814bde48fd14dac041a9812a5
 # please close bug and remove this comment when properly fixed
 #
 EXTRA_OECONF = "--disable-xmlto"
-EXTRA_OECONF_linux-uclibc = "--disable-nls"
-EXTRA_OECONF_linux-uclibcgnueabi = "--disable-nls"
+EXTRA_OECONF_append_libc-uclibc = " --disable-nls"
 
-inherit autotools
+inherit autotools gettext
 
 # This are all packages that we need to make. Also, the now empty alsa-utils
 # ipk depend on them.
-- 
1.7.1.1




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

* [PATCH 47/52] clutter-box2d: add DEPENDS for clutter-1.6
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (45 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 46/52] alsa-utils_1.0.23.bb: Fix compilation for uclibc targets Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 48/52] table: move old clutter demo to meta-demoapps Saul Wold
                   ` (6 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../clutter/clutter-box2d-1.6_0.10.0.bb            |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/meta/recipes-graphics/clutter/clutter-box2d-1.6_0.10.0.bb b/meta/recipes-graphics/clutter/clutter-box2d-1.6_0.10.0.bb
index cad8cfc..ad94aa5 100644
--- a/meta/recipes-graphics/clutter/clutter-box2d-1.6_0.10.0.bb
+++ b/meta/recipes-graphics/clutter/clutter-box2d-1.6_0.10.0.bb
@@ -2,6 +2,8 @@ require clutter-box2d.inc
 
 PR = "r0"
 
+DEPENDS += "clutter-1.6"
+
 SRC_URI = "http://source.clutter-project.org/sources/clutter-box2d/0.10/clutter-box2d-${PV}.tar.bz2 \
            file://fix-disable-introspection.patch"
 
-- 
1.7.1.1




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

* [PATCH 48/52] table: move old clutter demo to meta-demoapps
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (46 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 47/52] clutter-box2d: add DEPENDS for clutter-1.6 Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 49/52] tidy: " Saul Wold
                   ` (5 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../recipes-graphics/clutter/table.inc             |    0
 .../recipes-graphics/clutter/table/fixes.patch     |    0
 .../recipes-graphics/clutter/table_git.bb          |    0
 3 files changed, 0 insertions(+), 0 deletions(-)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/table.inc (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/table/fixes.patch (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/table_git.bb (100%)

diff --git a/meta/recipes-graphics/clutter/table.inc b/meta-demoapps/recipes-graphics/clutter/table.inc
similarity index 100%
rename from meta/recipes-graphics/clutter/table.inc
rename to meta-demoapps/recipes-graphics/clutter/table.inc
diff --git a/meta/recipes-graphics/clutter/table/fixes.patch b/meta-demoapps/recipes-graphics/clutter/table/fixes.patch
similarity index 100%
rename from meta/recipes-graphics/clutter/table/fixes.patch
rename to meta-demoapps/recipes-graphics/clutter/table/fixes.patch
diff --git a/meta/recipes-graphics/clutter/table_git.bb b/meta-demoapps/recipes-graphics/clutter/table_git.bb
similarity index 100%
rename from meta/recipes-graphics/clutter/table_git.bb
rename to meta-demoapps/recipes-graphics/clutter/table_git.bb
-- 
1.7.1.1




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

* [PATCH 49/52] tidy: move old clutter demo to meta-demoapps
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (47 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 48/52] table: move old clutter demo to meta-demoapps Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 50/52] alsa-tools: Add checksums Saul Wold
                   ` (4 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../recipes-graphics/clutter/tidy.inc              |    0
 .../recipes-graphics/clutter/tidy/autofoo.patch    |    0
 .../clutter/tidy/tidy-enable-tests.patch           |    0
 .../recipes-graphics/clutter/tidy_git.bb           |    0
 4 files changed, 0 insertions(+), 0 deletions(-)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy.inc (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy/autofoo.patch (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy/tidy-enable-tests.patch (100%)
 rename {meta => meta-demoapps}/recipes-graphics/clutter/tidy_git.bb (100%)

diff --git a/meta/recipes-graphics/clutter/tidy.inc b/meta-demoapps/recipes-graphics/clutter/tidy.inc
similarity index 100%
rename from meta/recipes-graphics/clutter/tidy.inc
rename to meta-demoapps/recipes-graphics/clutter/tidy.inc
diff --git a/meta/recipes-graphics/clutter/tidy/autofoo.patch b/meta-demoapps/recipes-graphics/clutter/tidy/autofoo.patch
similarity index 100%
rename from meta/recipes-graphics/clutter/tidy/autofoo.patch
rename to meta-demoapps/recipes-graphics/clutter/tidy/autofoo.patch
diff --git a/meta/recipes-graphics/clutter/tidy/tidy-enable-tests.patch b/meta-demoapps/recipes-graphics/clutter/tidy/tidy-enable-tests.patch
similarity index 100%
rename from meta/recipes-graphics/clutter/tidy/tidy-enable-tests.patch
rename to meta-demoapps/recipes-graphics/clutter/tidy/tidy-enable-tests.patch
diff --git a/meta/recipes-graphics/clutter/tidy_git.bb b/meta-demoapps/recipes-graphics/clutter/tidy_git.bb
similarity index 100%
rename from meta/recipes-graphics/clutter/tidy_git.bb
rename to meta-demoapps/recipes-graphics/clutter/tidy_git.bb
-- 
1.7.1.1




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

* [PATCH 50/52] alsa-tools: Add checksums
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (48 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 49/52] tidy: " Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 51/52] world-broken: add older clutters since we don't want clutter confusion Saul Wold
                   ` (3 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-multimedia/alsa/alsa-tools_1.0.20.bb |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/meta/recipes-multimedia/alsa/alsa-tools_1.0.20.bb b/meta/recipes-multimedia/alsa/alsa-tools_1.0.20.bb
index 789b68e..4a65b91 100644
--- a/meta/recipes-multimedia/alsa/alsa-tools_1.0.20.bb
+++ b/meta/recipes-multimedia/alsa/alsa-tools_1.0.20.bb
@@ -2,9 +2,15 @@ BROKEN = "1"
 
 DESCRIPTION = "Alsa Tools"
 SECTION = "console/utils"
-LICENSE = "GPL"
+LICENSE = "GPLv2"
 DEPENDS = "alsa-lib ncurses"
 
+LIC_FILES_CHKSUM = "file://hdsploader/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
+
 SRC_URI = "ftp://ftp.alsa-project.org/pub/tools/alsa-tools-${PV}.tar.bz2"
 
+SRC_URI[md5sum] = "6b9d146af621dd712472b3ebb519c596"
+SRC_URI[sha256sum] = "2a05047363b20f16820f36198ed3b139d1c55f55464750ea11d350e00b09cb86"
+
+
 inherit autotools
-- 
1.7.1.1




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

* [PATCH 51/52] world-broken: add older clutters since we don't want clutter confusion
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (49 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 50/52] alsa-tools: Add checksums Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  7:30 ` [PATCH 52/52] qemu: Fix non-sdl/opengl build Saul Wold
                   ` (2 subsequent siblings)
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/conf/distro/include/world-broken.inc |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/meta/conf/distro/include/world-broken.inc b/meta/conf/distro/include/world-broken.inc
index 2565f87..4ae7650 100644
--- a/meta/conf/distro/include/world-broken.inc
+++ b/meta/conf/distro/include/world-broken.inc
@@ -1,13 +1,16 @@
 #
 # Exclude known broken packages
 #
-EXCLUDE_FROM_WORLD_pn-psb-kernel-source = "1"
 EXCLUDE_FROM_WORLD_pn-gobject-introspection = "1"
 
 # Need bzr
 EXCLUDE_FROM_WORLD_pn-eds-tools = "1"
 
 # Need Updates from Clutter 0.8
-EXCLUDE_FROM_WORLD_pn-tidy = "1"
-EXCLUDE_FROM_WORLD_pn-table = "1"
 EXCLUDE_FROM_WORLD_pn-clutter-box2d = "1"
+
+# Don't build older versions of clutter
+EXCLUDE_FROM_WORLD_pn-clutter = "1"
+EXCLUDE_FROM_WORLD_pn-clutter-1.4 = "1"
+EXCLUDE_FROM_WORLD_pn-clutter-gst-1.4 = "1"
+EXCLUDE_FROM_WORLD_pn-clutter-gtk-1.4 = "1"
-- 
1.7.1.1




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

* [PATCH 52/52] qemu: Fix non-sdl/opengl build
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (50 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 51/52] world-broken: add older clutters since we don't want clutter confusion Saul Wold
@ 2011-04-27  7:30 ` Saul Wold
  2011-04-27  8:17 ` [PATCH 00/52] Updated Consolidated pull Antonio Ospite
  2011-04-28  9:12 ` Richard Purdie
  53 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27  7:30 UTC (permalink / raw)
  To: openembedded-core; +Cc: Darren Hart, Chris Larson, Antonio Ospite

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

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 .../qemu/qemu-0.14.0/opengl-sdl-fix.patch          |   41 ++++++++++++++++++++
 meta/recipes-devtools/qemu/qemu.inc                |    2 +
 meta/recipes-devtools/qemu/qemu_0.14.0.bb          |    3 +-
 3 files changed, 45 insertions(+), 1 deletions(-)
 create mode 100644 meta/recipes-devtools/qemu/qemu-0.14.0/opengl-sdl-fix.patch

diff --git a/meta/recipes-devtools/qemu/qemu-0.14.0/opengl-sdl-fix.patch b/meta/recipes-devtools/qemu/qemu-0.14.0/opengl-sdl-fix.patch
new file mode 100644
index 0000000..1f34f07
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu-0.14.0/opengl-sdl-fix.patch
@@ -0,0 +1,41 @@
+diff -u -r qemu-0.14.0/Makefile.target qemu-0.14.0-fixed/Makefile.target
+--- qemu-0.14.0/Makefile.target 2011-04-26 21:22:17.627637741 -0700
++++ qemu-0.14.0-fixed/Makefile.target   2011-04-26 21:23:02.767637747 -0700
+@@ -82,8 +82,10 @@
+ libobj-$(TARGET_I386) += helper_opengl.o opengl_exec.o
+ libobj-$(TARGET_X86_64) += helper_opengl.o opengl_exec.o
+ else
++ifdef CONFIG_SDL
+ libobj-$(TARGET_I386) += dummygl.o
+ libobj-$(TARGET_X86_64) += dummygl.o
++endif
+ endif #CONFIG_LINUX_USER
+ libobj-$(TARGET_ARM) += dummygl.o
+ libobj-$(TARGET_MIPS) += dummygl.o
+Only in qemu-0.14.0-fixed: config.log
+diff -u -r qemu-0.14.0/target-i386/helper.h qemu-0.14.0-fixed/target-i386/helper.h
+--- qemu-0.14.0/target-i386/helper.h    2011-04-26 21:22:11.418637742 -0700
++++ qemu-0.14.0-fixed/target-i386/helper.h      2011-04-26 21:23:02.539637747 -0700
+@@ -217,6 +217,9 @@
+ DEF_HELPER_2(rcrq, tl, tl, tl)
+ #endif
+ 
++#ifdef CONFIG_SDL
+ DEF_HELPER_0(opengl, void)
++#endif
++
+ 
+ #include "def-helper.h"
+diff -u -r qemu-0.14.0/target-i386/translate.c qemu-0.14.0-fixed/target-i386/translate.c
+--- qemu-0.14.0/target-i386/translate.c 2011-04-26 21:22:21.600637743 -0700
++++ qemu-0.14.0-fixed/target-i386/translate.c   2011-04-26 21:23:02.538637747 -0700
+@@ -2659,7 +2659,7 @@
+ static void gen_interrupt(DisasContext *s, int intno,
+                           target_ulong cur_eip, target_ulong next_eip)
+ {
+-#if !defined(CONFIG_USER_ONLY)
++#if !defined(CONFIG_USER_ONLY) && defined(CONFIG_SDL)
+     if (enable_gl && intno == 0x99) {
+         gen_helper_opengl();
+         return;
+
diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
index 362e9f3..49bcf8e 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -16,6 +16,8 @@ EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --di
 
 #EXTRA_OECONF += "--disable-sdl"
 
+COMPATIBLE_MACHINES = "qemux86 qemuppc"
+
 inherit autotools
 
 # For our gl powered QEMU you need libGL and SDL headers
diff --git a/meta/recipes-devtools/qemu/qemu_0.14.0.bb b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
index e440759..f0a4bea 100644
--- a/meta/recipes-devtools/qemu/qemu_0.14.0.bb
+++ b/meta/recipes-devtools/qemu/qemu_0.14.0.bb
@@ -3,7 +3,7 @@ require qemu.inc
 LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
                     file://COPYING.LIB;endline=24;md5=c04def7ae38850e7d3ef548588159913"
 
-PR = "r0"
+PR = "r1"
 
 FILESPATH = "${FILE_DIRNAME}/qemu-${PV}"
 FILESDIR = "${WORKDIR}"
@@ -25,6 +25,7 @@ SRC_URI = "\
     file://Detect-and-use-GCC-atomic-builtins-for-locking.patch \
     file://larger_default_ram_size.patch \
     file://qemugl-fix.patch \
+    file://opengl-sdl-fix.patch \
     "
 SRC_URI[md5sum] = "f9d145d5c09de9f0984ffe9bd1229970"
 SRC_URI[sha256sum] = "ba21e84d7853217830e167dae9999cdbff481189c6a0bb600ac7fb7201453108"
-- 
1.7.1.1




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

* Re: [PATCH 03/52] gcc: Add recipes for 4.6.0
  2011-04-27  7:29 ` [PATCH 03/52] gcc: Add recipes for 4.6.0 Saul Wold
@ 2011-04-27  8:17   ` Antonio Ospite
  2011-04-27 18:23     ` Saul Wold
  2011-04-28  8:53   ` Richard Purdie
  1 sibling, 1 reply; 84+ messages in thread
From: Antonio Ospite @ 2011-04-27  8:17 UTC (permalink / raw)
  To: Saul Wold; +Cc: Darren Hart, openembedded-core, Chris Larson, Scott, Dongxiao

[-- Attachment #1: Type: text/plain, Size: 1052 bytes --]

On Wed, 27 Apr 2011  0:29:21 -0700
Saul Wold <sgw@linux.intel.com> wrote:

> 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
>

If these changes turned to be the final ones then the commit message
should be updated, shouldn't it?

> 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>
> ---

[...]

-- 
Antonio Ospite
http://ao2.it

PGP public key ID: 0x4553B001

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?

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

* Re: [PATCH 00/52] Updated Consolidated pull
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (51 preceding siblings ...)
  2011-04-27  7:30 ` [PATCH 52/52] qemu: Fix non-sdl/opengl build Saul Wold
@ 2011-04-27  8:17 ` Antonio Ospite
  2011-04-27 17:38   ` Saul Wold
  2011-04-28  9:12 ` Richard Purdie
  53 siblings, 1 reply; 84+ messages in thread
From: Antonio Ospite @ 2011-04-27  8:17 UTC (permalink / raw)
  To: Saul Wold; +Cc: Darren Hart, openembedded-core, Chris Larson, Scott, Dongxiao

[-- Attachment #1: Type: text/plain, Size: 616 bytes --]

On Wed, 27 Apr 2011  0:29:17 -0700
Saul Wold <sgw@linux.intel.com> wrote:

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

Hi Saul, any particular reason I am in CC on this? I mean my
involvement in OE has been quite marginal so far.

Anyhow, since I'm in on this one I do have a couple of minor
comments, see replies to the corresponding messages.

Regards,
   Antonio

-- 
Antonio Ospite
http://ao2.it

PGP public key ID: 0x4553B001

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?

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

* Re: [PATCH 21/52] distro_tracking_fields: cwautomacros, valgrind, etc
  2011-04-27  7:29 ` [PATCH 21/52] distro_tracking_fields: cwautomacros, valgrind, etc Saul Wold
@ 2011-04-27  8:20   ` Antonio Ospite
  0 siblings, 0 replies; 84+ messages in thread
From: Antonio Ospite @ 2011-04-27  8:20 UTC (permalink / raw)
  To: Saul Wold; +Cc: Darren Hart, openembedded-core, Chris Larson, Scott, Dongxiao

[-- Attachment #1: Type: text/plain, Size: 678 bytes --]

On Wed, 27 Apr 2011  0:29:41 -0700
Saul Wold <sgw@linux.intel.com> wrote:

> From: Dongxiao Xu <dongxiao.xu@intel.com>
> 
> Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>

When I see an 'etc' in the short commit message I'd expect it to be
_expanded_ in the full commit message.

> ---
>  .../conf/distro/include/distro_tracking_fields.inc |   72 ++++++++++---------
>  1 files changed, 38 insertions(+), 34 deletions(-)
> 

-- 
Antonio Ospite
http://ao2.it

PGP public key ID: 0x4553B001

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?

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

* Re: [PATCH 01/52] sat-solver: fix arch=all packages
  2011-04-27  7:29 ` [PATCH 01/52] sat-solver: fix arch=all packages Saul Wold
@ 2011-04-27  8:24   ` Antonio Ospite
  2011-04-27 18:24     ` Saul Wold
  0 siblings, 1 reply; 84+ messages in thread
From: Antonio Ospite @ 2011-04-27  8:24 UTC (permalink / raw)
  To: Saul Wold; +Cc: Darren Hart, openembedded-core, Chris Larson, Scott, Dongxiao

[-- Attachment #1: Type: text/plain, Size: 776 bytes --]

On Wed, 27 Apr 2011  0:29:19 -0700
Saul Wold <sgw@linux.intel.com> wrote:

> From: Qing He <qing.he@intel.com>
> 
> add a new options to set noarch archs as all so platform independent
> packages can be recognized and installed.
> 
> fixes [YOCTO #993]
>

This is a question rather than a comment: would it make sense to use an
actual URL for issues? I mean can [YOCTO #993] be found in some
publicly accessible bug tracking system for people to see what it is
about?

> Signed-off-by: Qing He <qing.he@intel.com>
> ---


-- 
Antonio Ospite
http://ao2.it

PGP public key ID: 0x4553B001

A: Because it messes up the order in which people normally read text.
   See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?

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

* Re: [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc
  2011-04-27  7:29 ` [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc Saul Wold
@ 2011-04-27 14:34   ` Darren Hart
  2011-04-27 14:37     ` Darren Hart
  0 siblings, 1 reply; 84+ messages in thread
From: Darren Hart @ 2011-04-27 14:34 UTC (permalink / raw)
  To: Saul Wold; +Cc: Chris Larson, openembedded-core, Antonio Ospite

On 04/27/2011 12:29 AM, Saul Wold wrote:
> From: Khem Raj <raj.khem@gmail.com>
> 
> Perf wants elfutils and elfutils on uclibc does not work due to
> its usage of obstack_printf functionality missing from uclibc.

This appears to silently not build perf when uclibc is being used. Do I
have that right? I don't care for implicit changes in functionality
without any notification to the user (even then...). However, perf is
just automatically built IIRC, and not specified in the image recipe, so
there isn't a lot we can do about it without major changes.

Perhaps a simple warning in the do_compile_perf_libc-uclibc() and
do_install_perf_libc-uclibc() would be sufficient until such time as
perf has a real option to explicitly enable it.

my bash logging.bbclass hasn't been merged yet, so for now:

oe_warn "using uclibc, perf will not be (compiled|installed)"

Thanks,

--
Darren

> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/recipes-kernel/linux/linux-tools.inc |   17 +++++++++++++----
>  1 files changed, 13 insertions(+), 4 deletions(-)
> 
> diff --git a/meta/recipes-kernel/linux/linux-tools.inc b/meta/recipes-kernel/linux/linux-tools.inc
> index d64c9be..ef81650 100644
> --- a/meta/recipes-kernel/linux/linux-tools.inc
> +++ b/meta/recipes-kernel/linux/linux-tools.inc
> @@ -1,6 +1,11 @@
>  # included by kernel recipes if they want to build/provide
>  # perf functionality from their tree.
> -
> +do_compile_perf_libc-uclibc () {
> +	:
> +}
> +do_install_perf_libc-uclibc () {
> +	:
> +}
>  do_compile_perf() {
>  	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1
>  }
> @@ -14,6 +19,10 @@ do_install_perf() {
>  addtask compile_perf after do_compile before do_install
>  addtask install_perf after do_install before do_package
>  
> -do_compile_perf[depends] =  "virtual/libc:do_populate_sysroot"
> -do_compile_perf[depends] =+ "elfutils:do_populate_sysroot"
> -RDEPENDS_perf += "python perl elfutils"
> +
> +PERFDEPENDS = "virtual/libc:do_populate_sysroot elfutils:do_populate_sysroot"
> +PERFDEPENDS_libc-uclibc = ""
> +PERFRDEPENDS = "python perl elfutils"
> +PERFRDEPENDS_libc-uclibc = ""
> +do_compile_perf[depends] = "${PERFDEPENDS}"
> +RDEPENDS_perf += "${PERFRDEPENDS}"

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel



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

* Re: [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc
  2011-04-27 14:34   ` Darren Hart
@ 2011-04-27 14:37     ` Darren Hart
  2011-04-27 16:10       ` Khem Raj
  0 siblings, 1 reply; 84+ messages in thread
From: Darren Hart @ 2011-04-27 14:37 UTC (permalink / raw)
  To: Saul Wold; +Cc: Chris Larson, openembedded-core, Antonio Ospite



On 04/27/2011 07:34 AM, Darren Hart wrote:
> On 04/27/2011 12:29 AM, Saul Wold wrote:
>> From: Khem Raj <raj.khem@gmail.com>
>>
>> Perf wants elfutils and elfutils on uclibc does not work due to
>> its usage of obstack_printf functionality missing from uclibc.
> 
> This appears to silently not build perf when uclibc is being used. Do I
> have that right? I don't care for implicit changes in functionality
> without any notification to the user (even then...). However, perf is
> just automatically built IIRC, and not specified in the image recipe, so
> there isn't a lot we can do about it without major changes.
> 
> Perhaps a simple warning in the do_compile_perf_libc-uclibc() and
> do_install_perf_libc-uclibc() would be sufficient until such time as
> perf has a real option to explicitly enable it.
> 
> my bash logging.bbclass hasn't been merged yet, so for now:
> 
> oe_warn "using uclibc, perf will not be (compiled|installed)"

Actually, I see Saul included the logging patches later in the series.
For the sake of simplicity, I'm fine with this going in as is - if Khem
will submit a follow-on patch to add the warning using the new bash
logging API:

bbwarn "using uclibc, perf cannot be compiled"
bbwarn "using uclibc, perf cannot be installed"

or something to that effect.


>>
>> Signed-off-by: Khem Raj <raj.khem@gmail.com>


Acked-by: Darren Hart <dvhart@linux.intel.com>


>> ---
>>  meta/recipes-kernel/linux/linux-tools.inc |   17 +++++++++++++----
>>  1 files changed, 13 insertions(+), 4 deletions(-)
>>
>> diff --git a/meta/recipes-kernel/linux/linux-tools.inc b/meta/recipes-kernel/linux/linux-tools.inc
>> index d64c9be..ef81650 100644
>> --- a/meta/recipes-kernel/linux/linux-tools.inc
>> +++ b/meta/recipes-kernel/linux/linux-tools.inc
>> @@ -1,6 +1,11 @@
>>  # included by kernel recipes if they want to build/provide
>>  # perf functionality from their tree.
>> -
>> +do_compile_perf_libc-uclibc () {
>> +	:
>> +}
>> +do_install_perf_libc-uclibc () {
>> +	:
>> +}
>>  do_compile_perf() {
>>  	oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1
>>  }
>> @@ -14,6 +19,10 @@ do_install_perf() {
>>  addtask compile_perf after do_compile before do_install
>>  addtask install_perf after do_install before do_package
>>  
>> -do_compile_perf[depends] =  "virtual/libc:do_populate_sysroot"
>> -do_compile_perf[depends] =+ "elfutils:do_populate_sysroot"
>> -RDEPENDS_perf += "python perl elfutils"
>> +
>> +PERFDEPENDS = "virtual/libc:do_populate_sysroot elfutils:do_populate_sysroot"
>> +PERFDEPENDS_libc-uclibc = ""
>> +PERFRDEPENDS = "python perl elfutils"
>> +PERFRDEPENDS_libc-uclibc = ""
>> +do_compile_perf[depends] = "${PERFDEPENDS}"
>> +RDEPENDS_perf += "${PERFRDEPENDS}"
> 

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel



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

* Re: [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc
  2011-04-27 14:37     ` Darren Hart
@ 2011-04-27 16:10       ` Khem Raj
  0 siblings, 0 replies; 84+ messages in thread
From: Khem Raj @ 2011-04-27 16:10 UTC (permalink / raw)
  To: Darren Hart; +Cc: openembedded-core, Chris Larson, Antonio Ospite

On Wed, Apr 27, 2011 at 7:37 AM, Darren Hart <dvhart@linux.intel.com> wrote:
>
>
> On 04/27/2011 07:34 AM, Darren Hart wrote:
>> On 04/27/2011 12:29 AM, Saul Wold wrote:
>>> From: Khem Raj <raj.khem@gmail.com>
>>>
>>> Perf wants elfutils and elfutils on uclibc does not work due to
>>> its usage of obstack_printf functionality missing from uclibc.
>>
>> This appears to silently not build perf when uclibc is being used. Do I
>> have that right? I don't care for implicit changes in functionality
>> without any notification to the user (even then...). However, perf is
>> just automatically built IIRC, and not specified in the image recipe, so
>> there isn't a lot we can do about it without major changes.
>>
>> Perhaps a simple warning in the do_compile_perf_libc-uclibc() and
>> do_install_perf_libc-uclibc() would be sufficient until such time as
>> perf has a real option to explicitly enable it.
>>
>> my bash logging.bbclass hasn't been merged yet, so for now:
>>
>> oe_warn "using uclibc, perf will not be (compiled|installed)"
>
> Actually, I see Saul included the logging patches later in the series.
> For the sake of simplicity, I'm fine with this going in as is - if Khem
> will submit a follow-on patch to add the warning using the new bash
> logging API:
>
> bbwarn "using uclibc, perf cannot be compiled"
> bbwarn "using uclibc, perf cannot be installed"
>
> or something to that effect.


yes that will come with another set of patches.
>
>
>>>
>>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
>
>
> Acked-by: Darren Hart <dvhart@linux.intel.com>
>
>
>>> ---
>>>  meta/recipes-kernel/linux/linux-tools.inc |   17 +++++++++++++----
>>>  1 files changed, 13 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/meta/recipes-kernel/linux/linux-tools.inc b/meta/recipes-kernel/linux/linux-tools.inc
>>> index d64c9be..ef81650 100644
>>> --- a/meta/recipes-kernel/linux/linux-tools.inc
>>> +++ b/meta/recipes-kernel/linux/linux-tools.inc
>>> @@ -1,6 +1,11 @@
>>>  # included by kernel recipes if they want to build/provide
>>>  # perf functionality from their tree.
>>> -
>>> +do_compile_perf_libc-uclibc () {
>>> +    :
>>> +}
>>> +do_install_perf_libc-uclibc () {
>>> +    :
>>> +}
>>>  do_compile_perf() {
>>>      oe_runmake -C ${S}/tools/perf CC="${CC}" LD="${LD}" prefix=${prefix} NO_NEWT=1 NO_DWARF=1
>>>  }
>>> @@ -14,6 +19,10 @@ do_install_perf() {
>>>  addtask compile_perf after do_compile before do_install
>>>  addtask install_perf after do_install before do_package
>>>
>>> -do_compile_perf[depends] =  "virtual/libc:do_populate_sysroot"
>>> -do_compile_perf[depends] =+ "elfutils:do_populate_sysroot"
>>> -RDEPENDS_perf += "python perl elfutils"
>>> +
>>> +PERFDEPENDS = "virtual/libc:do_populate_sysroot elfutils:do_populate_sysroot"
>>> +PERFDEPENDS_libc-uclibc = ""
>>> +PERFRDEPENDS = "python perl elfutils"
>>> +PERFRDEPENDS_libc-uclibc = ""
>>> +do_compile_perf[depends] = "${PERFDEPENDS}"
>>> +RDEPENDS_perf += "${PERFRDEPENDS}"
>>
>
> --
> Darren Hart
> Intel Open Source Technology Center
> Yocto Project - Linux Kernel
>



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

* Re: [PATCH 00/52] Updated Consolidated pull
  2011-04-27  8:17 ` [PATCH 00/52] Updated Consolidated pull Antonio Ospite
@ 2011-04-27 17:38   ` Saul Wold
  0 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27 17:38 UTC (permalink / raw)
  To: Antonio Ospite; +Cc: Darren Hart, Chris Larson, openembedded-core

On 04/27/2011 01:17 AM, Antonio Ospite wrote:
> On Wed, 27 Apr 2011  0:29:17 -0700
> Saul Wold<sgw@linux.intel.com>  wrote:
>
>> From: Saul Wold<sgw@linux.intel.com>
>>
>
> Hi Saul, any particular reason I am in CC on this? I mean my
> involvement in OE has been quite marginal so far.
>
Antonio,

I pulled in a patch of your from OE-Dev and since you had the 
Signed-off-by, it cc'ed you (as it should).

> Anyhow, since I'm in on this one I do have a couple of minor
> comments, see replies to the corresponding messages.
>
Yes, thanks for those comments.

Sau!


> Regards,
>     Antonio
>



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

* Re: [PATCH 03/52] gcc: Add recipes for 4.6.0
  2011-04-27  8:17   ` Antonio Ospite
@ 2011-04-27 18:23     ` Saul Wold
  2011-04-27 18:42       ` Khem Raj
  2011-04-28  9:14       ` Richard Purdie
  0 siblings, 2 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27 18:23 UTC (permalink / raw)
  To: Antonio Ospite; +Cc: Darren Hart, Chris Larson, openembedded-core

On 04/27/2011 01:17 AM, Antonio Ospite wrote:
> On Wed, 27 Apr 2011  0:29:21 -0700
> Saul Wold<sgw@linux.intel.com>  wrote:
>
>> 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
>>
>
> If these changes turned to be the final ones then the commit message
> should be updated, shouldn't it?
>
Not final yet, I am pushing it now so people can set their local 
GCCVERSION and SDKGCCVERSION to test if they would like.

Sau!

>> 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>
>> ---
>
> [...]
>



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

* Re: [PATCH 01/52] sat-solver: fix arch=all packages
  2011-04-27  8:24   ` Antonio Ospite
@ 2011-04-27 18:24     ` Saul Wold
  0 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-27 18:24 UTC (permalink / raw)
  To: Antonio Ospite; +Cc: Darren Hart, Chris Larson, openembedded-core

On 04/27/2011 01:24 AM, Antonio Ospite wrote:
> On Wed, 27 Apr 2011  0:29:19 -0700
> Saul Wold<sgw@linux.intel.com>  wrote:
>
>> From: Qing He<qing.he@intel.com>
>>
>> add a new options to set noarch archs as all so platform independent
>> packages can be recognized and installed.
>>
>> fixes [YOCTO #993]
>>
>
Yes this is the Yocto Project Bugzilla, located at 
http://bugzilla.yoctoproject.org.

> This is a question rather than a comment: would it make sense to use an
> actual URL for issues? I mean can [YOCTO #993] be found in some
> publicly accessible bug tracking system for people to see what it is
> about?
>
>> Signed-off-by: Qing He<qing.he@intel.com>
>> ---
>
>



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

* Re: [PATCH 03/52] gcc: Add recipes for 4.6.0
  2011-04-27 18:23     ` Saul Wold
@ 2011-04-27 18:42       ` Khem Raj
  2011-04-28  9:14       ` Richard Purdie
  1 sibling, 0 replies; 84+ messages in thread
From: Khem Raj @ 2011-04-27 18:42 UTC (permalink / raw)
  To: Saul Wold; +Cc: Darren Hart, Chris Larson, openembedded-core, Antonio Ospite

On Wed, Apr 27, 2011 at 11:23 AM, Saul Wold <sgw@linux.intel.com> wrote:
> On 04/27/2011 01:17 AM, Antonio Ospite wrote:
>>
>> On Wed, 27 Apr 2011  0:29:21 -0700
>> Saul Wold<sgw@linux.intel.com>  wrote:
>>
>>> 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
>>>
>>
>> If these changes turned to be the final ones then the commit message
>> should be updated, shouldn't it?
>>
> Not final yet, I am pushing it now so people can set their local GCCVERSION
> and SDKGCCVERSION to test if they would like.
>

There are some patches which seem redundant. So there will be updates
but for major testing this should do.

> Sau!
>
>>> 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>
>>> ---
>>
>> [...]
>>
>



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

* Re: [PATCH 37/52] insane.bbclass: Move code to add function to tasks toward the end
  2011-04-27  7:29 ` [PATCH 37/52] insane.bbclass: Move code to add function to tasks toward the end Saul Wold
@ 2011-04-28  8:46   ` Richard Purdie
  0 siblings, 0 replies; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  8:46 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
> From: Khem Raj <raj.khem@gmail.com>
> 
> Cosmetic change to make syntax highlighters happy
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>

I'll take the patch but shouldn't someone fix the syntax highlighters as
the syntax is obviously correct and works ;-).

Cheers,

Richard




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

* Re: [PATCH 03/52] gcc: Add recipes for 4.6.0
  2011-04-27  7:29 ` [PATCH 03/52] gcc: Add recipes for 4.6.0 Saul Wold
  2011-04-27  8:17   ` Antonio Ospite
@ 2011-04-28  8:53   ` Richard Purdie
  1 sibling, 0 replies; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  8:53 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
> 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>

I trimmed this commit message a little - I'm hoping Saul did intend to
include this patch but the commit message makes me wonder ;-).

Cheers,

Richard




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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-04-27  7:29 ` [PATCH 36/52] gettext.bbclass: Use _append instead of =+ Saul Wold
@ 2011-04-28  9:01   ` Richard Purdie
  2011-04-29 16:11     ` Khem Raj
  0 siblings, 1 reply; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  9:01 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
> From: Khem Raj <raj.khem@gmail.com>
> 
> Ensure gettext and gettext-native are removed from DEPENDS when
> not using NLS
> 
> Use append instead of += to get gettext dependecies processed
> correctly in all cases
> 
> Dont remove gettext-native for native recipes as ENABLE_NLS is
> only for target and not for native recipes
> 
> Replace using 1 for a boolean type with True
> 
> Honor INHIBIT_DEFAULT_DEPS
> 
> Remove the added dependencies for gettext if INHIBIT_DEFAULT_DEPS is non
> null
> 
> operate on virtclass overrides individually
> 
> virtclass classes are parsed at the end hence
> just doing DEPENDS munging is not enough since
> it will be overridden

This patch is better but I have a couple of things I'd like to see
tweaked.

> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/classes/gettext.bbclass |   38 ++++++++++++++++++++++++++------------
>  1 files changed, 26 insertions(+), 12 deletions(-)
> 
> diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> index a40e74f..f7b84ec 100644
> --- a/meta/classes/gettext.bbclass
> +++ b/meta/classes/gettext.bbclass
> @@ -1,17 +1,31 @@
>  def gettext_after_parse(d):
> -    # Remove the NLS bits if USE_NLS is no.
> -    if bb.data.getVar('USE_NLS', d, 1) == 'no':
> -        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
> -        cfg += " --disable-nls"
> -        depends = bb.data.getVar('DEPENDS', d, 1) or ""
> -        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
> -        bb.data.setVar('EXTRA_OECONF', cfg, d)
> -
> +   # Remove the NLS bits if USE_NLS is no.
> +   if bb.data.getVar('USE_NLS', d, True) == 'no':
> +       cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
> +       cfg += " --disable-nls"
> +       depends = bb.data.getVar('DEPENDS', d, True) or ""

These lines all look the same but the indentation is different. Python
should always be four spaces and indentation changes should always be as
a separate patch from code changes anyway. Please fix :)

> +       depends = oe_filter_out('^(virtual/libiconv|virtual/libintl|virtual/gettext|gettext)$', depends, d)
> +       if not oe.utils.inherits(d, 'native', 'nativesdk', 'cross', 'crosssdk'):
> +           depends = oe_filter_out('^(gettext-native)$', depends, d)
> +       bb.data.setVar('DEPENDS', depends, d)
> +       bb.data.setVar('EXTRA_OECONF', cfg, d)
> +   # check if INHIBIT_DEFAULT_DEPS is 1 then we forcibly remove dependencies
> +   # added by this class through DEPENDS_GETTEXT
> +   if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True):
> +       depends_native = bb.data.getVar('DEPENDS_virtclass-native', d, True) or ""
> +       depends_nativesdk = bb.data.getVar('DEPENDS_virtclass-nativesdk', d, True) or ""
> +       depends = bb.data.getVar('DEPENDS', d, True) or ""
> +       gettext_deps = bb.data.getVar('DEPENDS_GETTEXT', d, True).replace(' ','|')
> +       gettext_deps = '^(' + gettext_deps + ')$'
> +       depends_native = oe_filter_out(gettext_deps, depends_native, d)
> +       depends_nativesdk = oe_filter_out(gettext_deps, depends_nativesdk, d)
> +       depends = oe_filter_out(gettext_deps, depends, d)
> +       bb.data.setVar('DEPENDS_virtclass-native', depends, d)
> +       bb.data.setVar('DEPENDS_virtclass-nativesdk', depends, d)
> +       bb.data.setVar('DEPENDS', depends, d)

We can make this simpler. We should just setVar("DEPENDS_GETTEXT", "")
in the INHIBIT_DEFAULT_DEPS case. If anything is expanding the variables
somewhere, we should fix that.

In fact, rather than all this ugly manipulation can't we just set
DEPENDS_GETTEXT to "" in the INHIBIT_DEFAULT_DEPS or USE_NLS cases? If
that doesn't work, the recipes dependencies are broken and should be
fixed to inherit this class, right? 

>  python () {
>      gettext_after_parse(d)
>  }
> -
> -DEPENDS_GETTEXT = "gettext gettext-native"
> -
> -DEPENDS =+ "${DEPENDS_GETTEXT}"
>  EXTRA_OECONF += "--enable-nls"
> +DEPENDS_GETTEXT ?= "virtual/gettext"
> +DEPENDS_append = " ${DEPENDS_GETTEXT} "

I think this needs to be:

DEPENDS_GETTEXT ?= "virtual/gettext virtual/gettext-native"

as I'm sure we're been bitten by a lack of the native dependency
before :/. Target packages using gettext do definitely need both to be
available.

Cheers,

Richard




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

* Re: [PATCH 38/52] insane.bbclass: Checking for NLS too when checking gettext dependency
  2011-04-27  7:29 ` [PATCH 38/52] insane.bbclass: Checking for NLS too when checking gettext dependency Saul Wold
@ 2011-04-28  9:02   ` Richard Purdie
  0 siblings, 0 replies; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  9:02 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
> From: Khem Raj <raj.khem@gmail.com>
> 
> Checking for gettext is not needed when --disable-nls is used
> 
> Let user know what variant of gettext is missing e.g. gettext-native,
> gettext-nativesdk etc, reveals a bit more for user
> 
> Check for virtual/gettext
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/classes/insane.bbclass |    9 +++++----
>  1 files changed, 5 insertions(+), 4 deletions(-)

This depends on the gettext.bbclass changes so I didn't take this
either.

Cheers,

Richard




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

* Re: [PATCH 44/52] util-linux.inc: remove virtual/libintl from DEPENDS
  2011-04-27  7:30 ` [PATCH 44/52] util-linux.inc: remove virtual/libintl from DEPENDS Saul Wold
@ 2011-04-28  9:03   ` Richard Purdie
  0 siblings, 0 replies; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  9:03 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On Wed, 2011-04-27 at 00:30 -0700, Saul Wold wrote:
> From: Khem Raj <raj.khem@gmail.com>
> 
> inherit gettext should do it.
> 
> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ---
>  meta/recipes-core/util-linux/util-linux.inc |    6 +++---
>  1 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc
> index 913bb1b..447e5b7 100644
> --- a/meta/recipes-core/util-linux/util-linux.inc
> +++ b/meta/recipes-core/util-linux/util-linux.inc
> @@ -13,10 +13,10 @@ LIC_FILES_CHKSUM = "file://README.licensing;md5=1530e36fe1304d4535513de90a290df9
>                      file://licenses/COPYING.UCB;md5=263860f8968d8bafa5392cab74285262 \
>                      file://getopt/COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
>  
> -DEPENDS = "zlib ncurses virtual/libintl"
> -DEPENDS_virtclass-native = "zlib-native ncurses-native lzo-native gettext-native"
> -
>  inherit autotools gettext
> +DEPENDS = "zlib ncurses"
> +DEPENDS_virtclass-native_append = " lzo-native"
> +
>  
>  SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux-ng/v${MAJOR_VERSION}/util-linux-ng-${PV}.tar.bz2 \
>             file://MCONFIG \

I wasn't sure if this depended on the gettext.bbclass changes so again,
I didn't take it.

Cheers,

Richard




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

* Re: [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions
  2011-04-27  7:29 ` [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions Saul Wold
@ 2011-04-28  9:05   ` Richard Purdie
  2011-04-29  4:30     ` Darren Hart
  0 siblings, 1 reply; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  9:05 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

Hi Darren,

On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
> The following logging mechanisms are to be used in bash functions of recipes.
> They are intended to map one to one in intention and output format with the
> python recipe logging functions of a similar naming convention: bb.plain(),
> bb.note(), etc.
> 
> For the time being, all of these print only to the task logs. Future
> enhancements may integrate these calls with the bitbake logging infrastructure,
> allowing for printing to the console as appropriate. The interface and intention
> statements reflect that future goal. Once it is in place, no changes will be
> necessary to recipes using these logging mechanisms.

This looks good but could you do a search and replace of any existing
users of the oe* functions and then remove them from base.bbclass
please? At the very least they should be calling the bb* equivalents.
I'd like to clean up this kind of thing as we go.

Cheers,

Richard





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

* Re: [PATCH 00/52] Updated Consolidated pull
  2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
                   ` (52 preceding siblings ...)
  2011-04-27  8:17 ` [PATCH 00/52] Updated Consolidated pull Antonio Ospite
@ 2011-04-28  9:12 ` Richard Purdie
  53 siblings, 0 replies; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  9:12 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

Hi Saul,

On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
> This has been reviewed and build on x86 and ARM, I have worked also to build
> full world, it's almost there, qemu on the target needs a few more tweaks, it's
> closer!

Thanks, I merged apart from 3 patches which I've replied to with the
details of why not.

Cheers,

Richard






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

* Re: [PATCH 03/52] gcc: Add recipes for 4.6.0
  2011-04-27 18:23     ` Saul Wold
  2011-04-27 18:42       ` Khem Raj
@ 2011-04-28  9:14       ` Richard Purdie
  1 sibling, 0 replies; 84+ messages in thread
From: Richard Purdie @ 2011-04-28  9:14 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On Wed, 2011-04-27 at 11:23 -0700, Saul Wold wrote:
> On 04/27/2011 01:17 AM, Antonio Ospite wrote:
> > On Wed, 27 Apr 2011  0:29:21 -0700
> > Saul Wold<sgw@linux.intel.com>  wrote:
> >
> >> 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
> >>
> >
> > If these changes turned to be the final ones then the commit message
> > should be updated, shouldn't it?
> >
> Not final yet, I am pushing it now so people can set their local 
> GCCVERSION and SDKGCCVERSION to test if they would like.

Independently, I also thought the commit messaged should have been
tweaked, see the other emails ;-).

The original message read like a request for testing but it wasn't ready
for merging into the repo. Now its being submitted, it either is ready
or it was a mistake and it could easily look like the latter.

Cheers,

Richard




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

* Re: [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions
  2011-04-28  9:05   ` Richard Purdie
@ 2011-04-29  4:30     ` Darren Hart
  2011-04-29  4:34       ` Saul Wold
  0 siblings, 1 reply; 84+ messages in thread
From: Darren Hart @ 2011-04-29  4:30 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Chris Larson, Antonio Ospite



On 04/28/2011 02:05 AM, Richard Purdie wrote:
> Hi Darren,
> 
> On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
>> The following logging mechanisms are to be used in bash functions of recipes.
>> They are intended to map one to one in intention and output format with the
>> python recipe logging functions of a similar naming convention: bb.plain(),
>> bb.note(), etc.
>>
>> For the time being, all of these print only to the task logs. Future
>> enhancements may integrate these calls with the bitbake logging infrastructure,
>> allowing for printing to the console as appropriate. The interface and intention
>> statements reflect that future goal. Once it is in place, no changes will be
>> necessary to recipes using these logging mechanisms.
> 
> This looks good but could you do a search and replace of any existing
> users of the oe* functions and then remove them from base.bbclass
> please? At the very least they should be calling the bb* equivalents.
> I'd like to clean up this kind of thing as we go.

Sure thing. Is a follow-up patch acceptable or do you want me to
resubmit these in one series?

--
Darren

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

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel



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

* Re: [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions
  2011-04-29  4:30     ` Darren Hart
@ 2011-04-29  4:34       ` Saul Wold
  0 siblings, 0 replies; 84+ messages in thread
From: Saul Wold @ 2011-04-29  4:34 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On 04/28/2011 09:30 PM, Darren Hart wrote:
>
>
> On 04/28/2011 02:05 AM, Richard Purdie wrote:
>> Hi Darren,
>>
>> On Wed, 2011-04-27 at 00:29 -0700, Saul Wold wrote:
>>> The following logging mechanisms are to be used in bash functions of recipes.
>>> They are intended to map one to one in intention and output format with the
>>> python recipe logging functions of a similar naming convention: bb.plain(),
>>> bb.note(), etc.
>>>
>>> For the time being, all of these print only to the task logs. Future
>>> enhancements may integrate these calls with the bitbake logging infrastructure,
>>> allowing for printing to the console as appropriate. The interface and intention
>>> statements reflect that future goal. Once it is in place, no changes will be
>>> necessary to recipes using these logging mechanisms.
>>
>> This looks good but could you do a search and replace of any existing
>> users of the oe* functions and then remove them from base.bbclass
>> please? At the very least they should be calling the bb* equivalents.
>> I'd like to clean up this kind of thing as we go.
>
> Sure thing. Is a follow-up patch acceptable or do you want me to
> resubmit these in one series?
>
Since we have pulled this set, a follow-up patch would be most excellent!

Thanks
	Sau!
> --
> Darren
>
>>
>> Cheers,
>>
>> Richard
>>
>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>



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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-04-28  9:01   ` Richard Purdie
@ 2011-04-29 16:11     ` Khem Raj
  2011-05-03 12:14       ` Richard Purdie
  0 siblings, 1 reply; 84+ messages in thread
From: Khem Raj @ 2011-04-29 16:11 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer
  Cc: Darren Hart, Antonio Ospite, Chris Larson

On Thu, Apr 28, 2011 at 2:01 AM, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> We can make this simpler. We should just setVar("DEPENDS_GETTEXT", "")
> in the INHIBIT_DEFAULT_DEPS case. If anything is expanding the variables
> somewhere, we should fix that.
>

Infact the virtclass stuff complicates this since they are evaluated
specially and I am not clear weather _append gets
evaluation before that or after and also the anon python function
evaluation as the one we are defining in this class.

I tried to empty out DEPENDS_GETTEXT but it does not work in nativesdk cases.

> In fact, rather than all this ugly manipulation can't we just set
> DEPENDS_GETTEXT to "" in the INHIBIT_DEFAULT_DEPS or USE_NLS cases? If
> that doesn't work, the recipes dependencies are broken and should be
> fixed to inherit this class, right?
>



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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-04-29 16:11     ` Khem Raj
@ 2011-05-03 12:14       ` Richard Purdie
  2011-05-03 18:04         ` Khem Raj
  0 siblings, 1 reply; 84+ messages in thread
From: Richard Purdie @ 2011-05-03 12:14 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Fri, 2011-04-29 at 09:11 -0700, Khem Raj wrote:
> On Thu, Apr 28, 2011 at 2:01 AM, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > We can make this simpler. We should just setVar("DEPENDS_GETTEXT", "")
> > in the INHIBIT_DEFAULT_DEPS case. If anything is expanding the variables
> > somewhere, we should fix that.
> >
> 
> Infact the virtclass stuff complicates this since they are evaluated
> specially and I am not clear weather _append gets
> evaluation before that or after and also the anon python function
> evaluation as the one we are defining in this class.
> 
> I tried to empty out DEPENDS_GETTEXT but it does not work in nativesdk cases.

I still think we can simplify this. Could you try the following patch
please?:

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 4f20bc2..3b83e42 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -89,9 +89,11 @@ def base_dep_prepend(d):
 			deps += " virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc "
 	return deps
 
-DEPENDS_prepend="${@base_dep_prepend(d)} "
-DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
-DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
+BASEDEPENDS = "${@base_dep_prepend(d)}"
+
+DEPENDS_prepend="${BASEDEPENDS} "
+DEPENDS_virtclass-native_prepend="${BASEDEPENDS} "
+DEPENDS_virtclass-nativesdk_prepend="${BASEDEPENDS} "
 
 FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
 # THISDIR only works properly with imediate expansion as it has to run
diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
index a40e74f..57b551e 100644
--- a/meta/classes/gettext.bbclass
+++ b/meta/classes/gettext.bbclass
@@ -1,17 +1,17 @@
 def gettext_after_parse(d):
     # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
+    if bb.data.getVar('USE_NLS', d, True) == 'no':
+        bb.data.setVar('DEPENDS_GETTEXT', "", d)
+        bb.data.setVar('OECONFNLSOPTION', '--disable-nls', d)
+    if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
+        bb.data.setVar('DEPENDS_GETTEXT', "", d)
 
 python () {
     gettext_after_parse(d)
 }
 
-DEPENDS_GETTEXT = "gettext gettext-native"
+DEPENDS_GETTEXT = "virtual/gettext gettext-native"
+OECONFNLSOPTION = "--enable-nls"
 
-DEPENDS =+ "${DEPENDS_GETTEXT}"
-EXTRA_OECONF += "--enable-nls"
+BASEDEPENDS =+ "${DEPENDS_GETTEXT}"
+EXTRA_OECONF += "${OECONFNLSOPTION}"






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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-03 12:14       ` Richard Purdie
@ 2011-05-03 18:04         ` Khem Raj
  2011-05-03 22:39           ` Richard Purdie
  0 siblings, 1 reply; 84+ messages in thread
From: Khem Raj @ 2011-05-03 18:04 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer

On (03/05/11 13:14), Richard Purdie wrote:
> On Fri, 2011-04-29 at 09:11 -0700, Khem Raj wrote:
> > On Thu, Apr 28, 2011 at 2:01 AM, Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > > We can make this simpler. We should just setVar("DEPENDS_GETTEXT", "")
> > > in the INHIBIT_DEFAULT_DEPS case. If anything is expanding the variables
> > > somewhere, we should fix that.
> > >
> > 
> > Infact the virtclass stuff complicates this since they are evaluated
> > specially and I am not clear weather _append gets
> > evaluation before that or after and also the anon python function
> > evaluation as the one we are defining in this class.
> > 
> > I tried to empty out DEPENDS_GETTEXT but it does not work in nativesdk cases.
> 
> I still think we can simplify this. Could you try the following patch
> please?:
> 
> diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
> index 4f20bc2..3b83e42 100644
> --- a/meta/classes/base.bbclass
> +++ b/meta/classes/base.bbclass
> @@ -89,9 +89,11 @@ def base_dep_prepend(d):
>  			deps += " virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc "
>  	return deps
>  
> -DEPENDS_prepend="${@base_dep_prepend(d)} "
> -DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
> -DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
> +BASEDEPENDS = "${@base_dep_prepend(d)}"
> +
> +DEPENDS_prepend="${BASEDEPENDS} "
> +DEPENDS_virtclass-native_prepend="${BASEDEPENDS} "
> +DEPENDS_virtclass-nativesdk_prepend="${BASEDEPENDS} "
>  
>  FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
>  # THISDIR only works properly with imediate expansion as it has to run
> diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> index a40e74f..57b551e 100644
> --- a/meta/classes/gettext.bbclass
> +++ b/meta/classes/gettext.bbclass
> @@ -1,17 +1,17 @@
>  def gettext_after_parse(d):
>      # Remove the NLS bits if USE_NLS is no.
> -    if bb.data.getVar('USE_NLS', d, 1) == 'no':
> -        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
> -        cfg += " --disable-nls"
> -        depends = bb.data.getVar('DEPENDS', d, 1) or ""
> -        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
> -        bb.data.setVar('EXTRA_OECONF', cfg, d)
> +    if bb.data.getVar('USE_NLS', d, True) == 'no':
> +        bb.data.setVar('DEPENDS_GETTEXT', "", d)
> +        bb.data.setVar('OECONFNLSOPTION', '--disable-nls', d)
> +    if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
> +        bb.data.setVar('DEPENDS_GETTEXT', "", d)
>  
>  python () {
>      gettext_after_parse(d)
>  }
>  
> -DEPENDS_GETTEXT = "gettext gettext-native"
> +DEPENDS_GETTEXT = "virtual/gettext gettext-native"
> +OECONFNLSOPTION = "--enable-nls"
>  
> -DEPENDS =+ "${DEPENDS_GETTEXT}"
> -EXTRA_OECONF += "--enable-nls"
> +BASEDEPENDS =+ "${DEPENDS_GETTEXT}"
> +EXTRA_OECONF += "${OECONFNLSOPTION}"
> 
> 
> 

This has the same problem It empties out DEPENDS_GETTEXT after they have
have already been added to DEPENDS via virtclass e.g. when you build
gcc-runtime-nativesdk it will report a dep loop since now it depends on
virtual/gettext-nativesdk (added by gettext class)
and virtual/gettext-nativesdk depends on compilerlibs
provided by gcc-runtime-nativesdk. This was same problem I was trying to
circumvent



-- 
-Khem



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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-03 18:04         ` Khem Raj
@ 2011-05-03 22:39           ` Richard Purdie
  2011-05-05  1:07             ` Khem Raj
  0 siblings, 1 reply; 84+ messages in thread
From: Richard Purdie @ 2011-05-03 22:39 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

On Tue, 2011-05-03 at 11:04 -0700, Khem Raj wrote:
> This has the same problem It empties out DEPENDS_GETTEXT after they have
> have already been added to DEPENDS via virtclass e.g. when you build
> gcc-runtime-nativesdk it will report a dep loop since now it depends on
> virtual/gettext-nativesdk (added by gettext class)
> and virtual/gettext-nativesdk depends on compilerlibs
> provided by gcc-runtime-nativesdk. This was same problem I was trying to
> circumvent

Ok, how about this version:

diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
index 4f20bc2..3b83e42 100644
--- a/meta/classes/base.bbclass
+++ b/meta/classes/base.bbclass
@@ -89,9 +89,11 @@ def base_dep_prepend(d):
 			deps += " virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc "
 	return deps
 
-DEPENDS_prepend="${@base_dep_prepend(d)} "
-DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
-DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
+BASEDEPENDS = "${@base_dep_prepend(d)}"
+
+DEPENDS_prepend="${BASEDEPENDS} "
+DEPENDS_virtclass-native_prepend="${BASEDEPENDS} "
+DEPENDS_virtclass-nativesdk_prepend="${BASEDEPENDS} "
 
 FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
 # THISDIR only works properly with imediate expansion as it has to run
diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
index a40e74f..6f79e5e 100644
--- a/meta/classes/gettext.bbclass
+++ b/meta/classes/gettext.bbclass
@@ -1,17 +1,17 @@
-def gettext_after_parse(d):
-    # Remove the NLS bits if USE_NLS is no.
-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
-        cfg += " --disable-nls"
-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
-        bb.data.setVar('EXTRA_OECONF', cfg, d)
+def gettext_dependencies(d):
+    if d.getVar('USE_NLS', True) == 'no':
+        return ""
+    if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
+        return ""
+    return d.getVar('DEPENDS_GETTEXT', False)
 
-python () {
-    gettext_after_parse(d)
-}
+def gettext_oeconf(d):
+    # Remove the NLS bits if USE_NLS is no.
+    if d.getVar('USE_NLS', True) == 'no':
+        return '--disable-nls'
+    return "--enable-nls"
 
-DEPENDS_GETTEXT = "gettext gettext-native"
+DEPENDS_GETTEXT = "virtual/gettext gettext-native"
 
-DEPENDS =+ "${DEPENDS_GETTEXT}"
-EXTRA_OECONF += "--enable-nls"
+BASEDEPENDS =+ "${@gettext_dependencies(d)}"
+EXTRA_OECONF += "${@gettext_oeconf(d)}"




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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-03 22:39           ` Richard Purdie
@ 2011-05-05  1:07             ` Khem Raj
  2011-05-05  4:19               ` Khem Raj
  2011-05-05  9:41               ` Richard Purdie
  0 siblings, 2 replies; 84+ messages in thread
From: Khem Raj @ 2011-05-05  1:07 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer

On Tue, May 3, 2011 at 3:39 PM, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> On Tue, 2011-05-03 at 11:04 -0700, Khem Raj wrote:
>> This has the same problem It empties out DEPENDS_GETTEXT after they have
>> have already been added to DEPENDS via virtclass e.g. when you build
>> gcc-runtime-nativesdk it will report a dep loop since now it depends on
>> virtual/gettext-nativesdk (added by gettext class)
>> and virtual/gettext-nativesdk depends on compilerlibs
>> provided by gcc-runtime-nativesdk. This was same problem I was trying to
>> circumvent
>
> Ok, how about this version:
>
> diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
> index 4f20bc2..3b83e42 100644
> --- a/meta/classes/base.bbclass
> +++ b/meta/classes/base.bbclass
> @@ -89,9 +89,11 @@ def base_dep_prepend(d):
>                        deps += " virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc "
>        return deps
>
> -DEPENDS_prepend="${@base_dep_prepend(d)} "
> -DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
> -DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
> +BASEDEPENDS = "${@base_dep_prepend(d)}"
> +
> +DEPENDS_prepend="${BASEDEPENDS} "
> +DEPENDS_virtclass-native_prepend="${BASEDEPENDS} "
> +DEPENDS_virtclass-nativesdk_prepend="${BASEDEPENDS} "
>
>  FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
>  # THISDIR only works properly with imediate expansion as it has to run
> diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> index a40e74f..6f79e5e 100644
> --- a/meta/classes/gettext.bbclass
> +++ b/meta/classes/gettext.bbclass
> @@ -1,17 +1,17 @@
> -def gettext_after_parse(d):
> -    # Remove the NLS bits if USE_NLS is no.
> -    if bb.data.getVar('USE_NLS', d, 1) == 'no':
> -        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
> -        cfg += " --disable-nls"
> -        depends = bb.data.getVar('DEPENDS', d, 1) or ""
> -        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
> -        bb.data.setVar('EXTRA_OECONF', cfg, d)
> +def gettext_dependencies(d):
> +    if d.getVar('USE_NLS', True) == 'no':
> +        return ""
> +    if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
> +        return ""
> +    return d.getVar('DEPENDS_GETTEXT', False)
>
> -python () {
> -    gettext_after_parse(d)
> -}
> +def gettext_oeconf(d):
> +    # Remove the NLS bits if USE_NLS is no.
> +    if d.getVar('USE_NLS', True) == 'no':
> +        return '--disable-nls'
> +    return "--enable-nls"
>
> -DEPENDS_GETTEXT = "gettext gettext-native"
> +DEPENDS_GETTEXT = "virtual/gettext gettext-native"
>
> -DEPENDS =+ "${DEPENDS_GETTEXT}"
> -EXTRA_OECONF += "--enable-nls"
> +BASEDEPENDS =+ "${@gettext_dependencies(d)}"
> +EXTRA_OECONF += "${@gettext_oeconf(d)}"
>
>

a build from scratch revealed few more issues with this patch too.

1. We have to only remove gettext from dependencies if its a target
package for all other it still it needed otherwise all native and
cross tools start failing to build
 e.g. binutils-cross this can be easily solved by a patch

iff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
index 6f79e5e..cc39204 100644
--- a/meta/classes/gettext.bbclass
+++ b/meta/classes/gettext.bbclass
@@ -1,5 +1,5 @@
 def gettext_dependencies(d):
-    if d.getVar('USE_NLS', True) == 'no':
+    if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d,
'native', 'nativesdk', 'cross')
         return ""
     if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not
oe.utils.inherits(d, 'cross-canadian')
         return ""


second problem is that EXTRA_OECONF when recipes override it instead
of += or appending etc.
then --enable|--disable-nls that we added via gettext_oeconf() is lost
as a result some packages complain about config.rpath
when USE_NLS is set to no the reason is their configure is missing the
argument --disable-nls this works ok
for eglibc based targets since default is to enable-nls if nothing is
specified but uclibc fails. As a testcase try to preprocess
utils-linux
recipe and check the contents of EXTRA_OECONF



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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-05  1:07             ` Khem Raj
@ 2011-05-05  4:19               ` Khem Raj
  2011-05-05  5:06                 ` Saul Wold
  2011-05-05  9:41               ` Richard Purdie
  1 sibling, 1 reply; 84+ messages in thread
From: Khem Raj @ 2011-05-05  4:19 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer

[-- Attachment #1: Type: text/plain, Size: 5094 bytes --]

On (04/05/11 18:07), Khem Raj wrote:
> On Tue, May 3, 2011 at 3:39 PM, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > On Tue, 2011-05-03 at 11:04 -0700, Khem Raj wrote:
> >> This has the same problem It empties out DEPENDS_GETTEXT after they have
> >> have already been added to DEPENDS via virtclass e.g. when you build
> >> gcc-runtime-nativesdk it will report a dep loop since now it depends on
> >> virtual/gettext-nativesdk (added by gettext class)
> >> and virtual/gettext-nativesdk depends on compilerlibs
> >> provided by gcc-runtime-nativesdk. This was same problem I was trying to
> >> circumvent
> >
> > Ok, how about this version:
> >
> > diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
> > index 4f20bc2..3b83e42 100644
> > --- a/meta/classes/base.bbclass
> > +++ b/meta/classes/base.bbclass
> > @@ -89,9 +89,11 @@ def base_dep_prepend(d):
> >                        deps += " virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc "
> >        return deps
> >
> > -DEPENDS_prepend="${@base_dep_prepend(d)} "
> > -DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
> > -DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
> > +BASEDEPENDS = "${@base_dep_prepend(d)}"
> > +
> > +DEPENDS_prepend="${BASEDEPENDS} "
> > +DEPENDS_virtclass-native_prepend="${BASEDEPENDS} "
> > +DEPENDS_virtclass-nativesdk_prepend="${BASEDEPENDS} "
> >
> >  FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
> >  # THISDIR only works properly with imediate expansion as it has to run
> > diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> > index a40e74f..6f79e5e 100644
> > --- a/meta/classes/gettext.bbclass
> > +++ b/meta/classes/gettext.bbclass
> > @@ -1,17 +1,17 @@
> > -def gettext_after_parse(d):
> > -    # Remove the NLS bits if USE_NLS is no.
> > -    if bb.data.getVar('USE_NLS', d, 1) == 'no':
> > -        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
> > -        cfg += " --disable-nls"
> > -        depends = bb.data.getVar('DEPENDS', d, 1) or ""
> > -        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
> > -        bb.data.setVar('EXTRA_OECONF', cfg, d)
> > +def gettext_dependencies(d):
> > +    if d.getVar('USE_NLS', True) == 'no':
> > +        return ""
> > +    if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
> > +        return ""
> > +    return d.getVar('DEPENDS_GETTEXT', False)
> >
> > -python () {
> > -    gettext_after_parse(d)
> > -}
> > +def gettext_oeconf(d):
> > +    # Remove the NLS bits if USE_NLS is no.
> > +    if d.getVar('USE_NLS', True) == 'no':
> > +        return '--disable-nls'
> > +    return "--enable-nls"
> >
> > -DEPENDS_GETTEXT = "gettext gettext-native"
> > +DEPENDS_GETTEXT = "virtual/gettext gettext-native"
> >
> > -DEPENDS =+ "${DEPENDS_GETTEXT}"
> > -EXTRA_OECONF += "--enable-nls"
> > +BASEDEPENDS =+ "${@gettext_dependencies(d)}"
> > +EXTRA_OECONF += "${@gettext_oeconf(d)}"
> >
> >
> 
> a build from scratch revealed few more issues with this patch too.
> 
> 1. We have to only remove gettext from dependencies if its a target
> package for all other it still it needed otherwise all native and
> cross tools start failing to build
>  e.g. binutils-cross this can be easily solved by a patch
> 
> iff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> index 6f79e5e..cc39204 100644
> --- a/meta/classes/gettext.bbclass
> +++ b/meta/classes/gettext.bbclass
> @@ -1,5 +1,5 @@
>  def gettext_dependencies(d):
> -    if d.getVar('USE_NLS', True) == 'no':
> +    if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d,
> 'native', 'nativesdk', 'cross')
>          return ""
>      if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not
> oe.utils.inherits(d, 'cross-canadian')
>          return ""
> 
> 
> second problem is that EXTRA_OECONF when recipes override it instead
> of += or appending etc.
> then --enable|--disable-nls that we added via gettext_oeconf() is lost
> as a result some packages complain about config.rpath
> when USE_NLS is set to no the reason is their configure is missing the
> argument --disable-nls this works ok
> for eglibc based targets since default is to enable-nls if nothing is
> specified but uclibc fails. As a testcase try to preprocess
> utils-linux
> recipe and check the contents of EXTRA_OECONF

attached is a patch on top of this patch which fixes both the issues I
mentioned. I also thought of defining USE_NLS to yes in
native/cross/nativesdk classes but then I resorted to add the check in
gettext.bbclass

Please review and apply if appropriate

Thanks

-- 
-Khem

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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-05  4:19               ` Khem Raj
@ 2011-05-05  5:06                 ` Saul Wold
  2011-05-05  6:38                   ` Khem Raj
  0 siblings, 1 reply; 84+ messages in thread
From: Saul Wold @ 2011-05-05  5:06 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On 05/04/2011 09:19 PM, Khem Raj wrote:
> On (04/05/11 18:07), Khem Raj wrote:
>> On Tue, May 3, 2011 at 3:39 PM, Richard Purdie
>> <richard.purdie@linuxfoundation.org>  wrote:
>>> On Tue, 2011-05-03 at 11:04 -0700, Khem Raj wrote:
>>>> This has the same problem It empties out DEPENDS_GETTEXT after they have
>>>> have already been added to DEPENDS via virtclass e.g. when you build
>>>> gcc-runtime-nativesdk it will report a dep loop since now it depends on
>>>> virtual/gettext-nativesdk (added by gettext class)
>>>> and virtual/gettext-nativesdk depends on compilerlibs
>>>> provided by gcc-runtime-nativesdk. This was same problem I was trying to
>>>> circumvent
>>>
>>> Ok, how about this version:
>>>
>>> diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
>>> index 4f20bc2..3b83e42 100644
>>> --- a/meta/classes/base.bbclass
>>> +++ b/meta/classes/base.bbclass
>>> @@ -89,9 +89,11 @@ def base_dep_prepend(d):
>>>                         deps += " virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc "
>>>         return deps
>>>
>>> -DEPENDS_prepend="${@base_dep_prepend(d)} "
>>> -DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
>>> -DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
>>> +BASEDEPENDS = "${@base_dep_prepend(d)}"
>>> +
>>> +DEPENDS_prepend="${BASEDEPENDS} "
>>> +DEPENDS_virtclass-native_prepend="${BASEDEPENDS} "
>>> +DEPENDS_virtclass-nativesdk_prepend="${BASEDEPENDS} "
>>>
>>>   FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
>>>   # THISDIR only works properly with imediate expansion as it has to run
>>> diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
>>> index a40e74f..6f79e5e 100644
>>> --- a/meta/classes/gettext.bbclass
>>> +++ b/meta/classes/gettext.bbclass
>>> @@ -1,17 +1,17 @@
>>> -def gettext_after_parse(d):
>>> -    # Remove the NLS bits if USE_NLS is no.
>>> -    if bb.data.getVar('USE_NLS', d, 1) == 'no':
>>> -        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
>>> -        cfg += " --disable-nls"
>>> -        depends = bb.data.getVar('DEPENDS', d, 1) or ""
>>> -        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
>>> -        bb.data.setVar('EXTRA_OECONF', cfg, d)
>>> +def gettext_dependencies(d):
>>> +    if d.getVar('USE_NLS', True) == 'no':
>>> +        return ""
>>> +    if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
>>> +        return ""
>>> +    return d.getVar('DEPENDS_GETTEXT', False)
>>>
>>> -python () {
>>> -    gettext_after_parse(d)
>>> -}
>>> +def gettext_oeconf(d):
>>> +    # Remove the NLS bits if USE_NLS is no.
>>> +    if d.getVar('USE_NLS', True) == 'no':
>>> +        return '--disable-nls'
>>> +    return "--enable-nls"
>>>
>>> -DEPENDS_GETTEXT = "gettext gettext-native"
>>> +DEPENDS_GETTEXT = "virtual/gettext gettext-native"
>>>
>>> -DEPENDS =+ "${DEPENDS_GETTEXT}"
>>> -EXTRA_OECONF += "--enable-nls"
>>> +BASEDEPENDS =+ "${@gettext_dependencies(d)}"
>>> +EXTRA_OECONF += "${@gettext_oeconf(d)}"
>>>
>>>
>>
>> a build from scratch revealed few more issues with this patch too.
>>
>> 1. We have to only remove gettext from dependencies if its a target
>> package for all other it still it needed otherwise all native and
>> cross tools start failing to build
>>   e.g. binutils-cross this can be easily solved by a patch
>>
>> iff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
>> index 6f79e5e..cc39204 100644
>> --- a/meta/classes/gettext.bbclass
>> +++ b/meta/classes/gettext.bbclass
>> @@ -1,5 +1,5 @@
>>   def gettext_dependencies(d):
>> -    if d.getVar('USE_NLS', True) == 'no':
>> +    if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d,
>> 'native', 'nativesdk', 'cross')
>>           return ""
>>       if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not
>> oe.utils.inherits(d, 'cross-canadian')
>>           return ""
>>
>>
>> second problem is that EXTRA_OECONF when recipes override it instead
>> of += or appending etc.
>> then --enable|--disable-nls that we added via gettext_oeconf() is lost
>> as a result some packages complain about config.rpath
>> when USE_NLS is set to no the reason is their configure is missing the
>> argument --disable-nls this works ok
>> for eglibc based targets since default is to enable-nls if nothing is
>> specified but uclibc fails. As a testcase try to preprocess
>> utils-linux
>> recipe and check the contents of EXTRA_OECONF
>
> attached is a patch on top of this patch which fixes both the issues I
> mentioned. I also thought of defining USE_NLS to yes in
> native/cross/nativesdk classes but then I resorted to add the check in
> gettext.bbclass
>
Khem,

Are you refering to the changes above?  If so, it would be better to 
have it in a proper patch email, if you could resend with just the patch 
and comments that would be most appreciated.

Thanks
	Sau!

> Please review and apply if appropriate
>
> Thanks
>
>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core



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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-05  5:06                 ` Saul Wold
@ 2011-05-05  6:38                   ` Khem Raj
  0 siblings, 0 replies; 84+ messages in thread
From: Khem Raj @ 2011-05-05  6:38 UTC (permalink / raw)
  To: Saul Wold; +Cc: Patches and discussions about the oe-core layer

On (04/05/11 22:06), Saul Wold wrote:
> On 05/04/2011 09:19 PM, Khem Raj wrote:
> >On (04/05/11 18:07), Khem Raj wrote:
> >>On Tue, May 3, 2011 at 3:39 PM, Richard Purdie
> >><richard.purdie@linuxfoundation.org>  wrote:
> >>>On Tue, 2011-05-03 at 11:04 -0700, Khem Raj wrote:
> >>>>This has the same problem It empties out DEPENDS_GETTEXT after they have
> >>>>have already been added to DEPENDS via virtclass e.g. when you build
> >>>>gcc-runtime-nativesdk it will report a dep loop since now it depends on
> >>>>virtual/gettext-nativesdk (added by gettext class)
> >>>>and virtual/gettext-nativesdk depends on compilerlibs
> >>>>provided by gcc-runtime-nativesdk. This was same problem I was trying to
> >>>>circumvent
> >>>
> >>>Ok, how about this version:
> >>>
> >>>diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
> >>>index 4f20bc2..3b83e42 100644
> >>>--- a/meta/classes/base.bbclass
> >>>+++ b/meta/classes/base.bbclass
> >>>@@ -89,9 +89,11 @@ def base_dep_prepend(d):
> >>>                        deps += " virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}compilerlibs virtual/libc "
> >>>        return deps
> >>>
> >>>-DEPENDS_prepend="${@base_dep_prepend(d)} "
> >>>-DEPENDS_virtclass-native_prepend="${@base_dep_prepend(d)} "
> >>>-DEPENDS_virtclass-nativesdk_prepend="${@base_dep_prepend(d)} "
> >>>+BASEDEPENDS = "${@base_dep_prepend(d)}"
> >>>+
> >>>+DEPENDS_prepend="${BASEDEPENDS} "
> >>>+DEPENDS_virtclass-native_prepend="${BASEDEPENDS} "
> >>>+DEPENDS_virtclass-nativesdk_prepend="${BASEDEPENDS} "
> >>>
> >>>  FILESPATH = "${@base_set_filespath([ "${FILE_DIRNAME}/${PF}", "${FILE_DIRNAME}/${P}", "${FILE_DIRNAME}/${PN}", "${FILE_DIRNAME}/${BP}", "${FILE_DIRNAME}/${BPN}", "${FILE_DIRNAME}/files", "${FILE_DIRNAME}" ], d)}"
> >>>  # THISDIR only works properly with imediate expansion as it has to run
> >>>diff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> >>>index a40e74f..6f79e5e 100644
> >>>--- a/meta/classes/gettext.bbclass
> >>>+++ b/meta/classes/gettext.bbclass
> >>>@@ -1,17 +1,17 @@
> >>>-def gettext_after_parse(d):
> >>>-    # Remove the NLS bits if USE_NLS is no.
> >>>-    if bb.data.getVar('USE_NLS', d, 1) == 'no':
> >>>-        cfg = oe_filter_out('^--(dis|en)able-nls$', bb.data.getVar('EXTRA_OECONF', d, 1) or "", d)
> >>>-        cfg += " --disable-nls"
> >>>-        depends = bb.data.getVar('DEPENDS', d, 1) or ""
> >>>-        bb.data.setVar('DEPENDS', oe_filter_out('^(virtual/libiconv|virtual/libintl)$', depends, d), d)
> >>>-        bb.data.setVar('EXTRA_OECONF', cfg, d)
> >>>+def gettext_dependencies(d):
> >>>+    if d.getVar('USE_NLS', True) == 'no':
> >>>+        return ""
> >>>+    if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not oe.utils.inherits(d, 'cross-canadian'):
> >>>+        return ""
> >>>+    return d.getVar('DEPENDS_GETTEXT', False)
> >>>
> >>>-python () {
> >>>-    gettext_after_parse(d)
> >>>-}
> >>>+def gettext_oeconf(d):
> >>>+    # Remove the NLS bits if USE_NLS is no.
> >>>+    if d.getVar('USE_NLS', True) == 'no':
> >>>+        return '--disable-nls'
> >>>+    return "--enable-nls"
> >>>
> >>>-DEPENDS_GETTEXT = "gettext gettext-native"
> >>>+DEPENDS_GETTEXT = "virtual/gettext gettext-native"
> >>>
> >>>-DEPENDS =+ "${DEPENDS_GETTEXT}"
> >>>-EXTRA_OECONF += "--enable-nls"
> >>>+BASEDEPENDS =+ "${@gettext_dependencies(d)}"
> >>>+EXTRA_OECONF += "${@gettext_oeconf(d)}"
> >>>
> >>>
> >>
> >>a build from scratch revealed few more issues with this patch too.
> >>
> >>1. We have to only remove gettext from dependencies if its a target
> >>package for all other it still it needed otherwise all native and
> >>cross tools start failing to build
> >>  e.g. binutils-cross this can be easily solved by a patch
> >>
> >>iff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> >>index 6f79e5e..cc39204 100644
> >>--- a/meta/classes/gettext.bbclass
> >>+++ b/meta/classes/gettext.bbclass
> >>@@ -1,5 +1,5 @@
> >>  def gettext_dependencies(d):
> >>-    if d.getVar('USE_NLS', True) == 'no':
> >>+    if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d,
> >>'native', 'nativesdk', 'cross')
> >>          return ""
> >>      if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not
> >>oe.utils.inherits(d, 'cross-canadian')
> >>          return ""
> >>
> >>
> >>second problem is that EXTRA_OECONF when recipes override it instead
> >>of += or appending etc.
> >>then --enable|--disable-nls that we added via gettext_oeconf() is lost
> >>as a result some packages complain about config.rpath
> >>when USE_NLS is set to no the reason is their configure is missing the
> >>argument --disable-nls this works ok
> >>for eglibc based targets since default is to enable-nls if nothing is
> >>specified but uclibc fails. As a testcase try to preprocess
> >>utils-linux
> >>recipe and check the contents of EXTRA_OECONF
> >
> >attached is a patch on top of this patch which fixes both the issues I
> >mentioned. I also thought of defining USE_NLS to yes in
> >native/cross/nativesdk classes but then I resorted to add the check in
> >gettext.bbclass
> >
> Khem,
> 
> Are you refering to the changes above?  If so, it would be better to
> have it in a proper patch email, if you could resend with just the
> patch and comments that would be most appreciated.

As it was untested. I wanted to run through RP and see if he sees any
issues before I put out a pull request

-Khem



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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-05  1:07             ` Khem Raj
  2011-05-05  4:19               ` Khem Raj
@ 2011-05-05  9:41               ` Richard Purdie
  2011-05-05 16:58                 ` Khem Raj
  1 sibling, 1 reply; 84+ messages in thread
From: Richard Purdie @ 2011-05-05  9:41 UTC (permalink / raw)
  To: Khem Raj; +Cc: Patches and discussions about the oe-core layer

On Wed, 2011-05-04 at 18:07 -0700, Khem Raj wrote:
> a build from scratch revealed few more issues with this patch too.
> 
> 1. We have to only remove gettext from dependencies if its a target
> package for all other it still it needed otherwise all native and
> cross tools start failing to build
>  e.g. binutils-cross this can be easily solved by a patch
> 
> iff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
> index 6f79e5e..cc39204 100644
> --- a/meta/classes/gettext.bbclass
> +++ b/meta/classes/gettext.bbclass
> @@ -1,5 +1,5 @@
>  def gettext_dependencies(d):
> -    if d.getVar('USE_NLS', True) == 'no':
> +    if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d,
> 'native', 'nativesdk', 'cross')
>          return ""
>      if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not
> oe.utils.inherits(d, 'cross-canadian')
>          return ""

This looks reasonable, its still much clearer what is happening and why
compared to the original version...

> second problem is that EXTRA_OECONF when recipes override it instead
> of += or appending etc.
> then --enable|--disable-nls that we added via gettext_oeconf() is lost
> as a result some packages complain about config.rpath
> when USE_NLS is set to no the reason is their configure is missing the
> argument --disable-nls this works ok
> for eglibc based targets since default is to enable-nls if nothing is
> specified but uclibc fails. As a testcase try to preprocess
> utils-linux
> recipe and check the contents of EXTRA_OECONF

I suspect we can fix this with:

-EXTRA_OECONF += "${@gettext_oeconf(d)}"
+EXTRA_OECONF_append = " ${@gettext_oeconf(d)}"

?

Cheers,

Richard




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

* Re: [PATCH 36/52] gettext.bbclass: Use _append instead of =+
  2011-05-05  9:41               ` Richard Purdie
@ 2011-05-05 16:58                 ` Khem Raj
  0 siblings, 0 replies; 84+ messages in thread
From: Khem Raj @ 2011-05-05 16:58 UTC (permalink / raw)
  To: Richard Purdie; +Cc: Patches and discussions about the oe-core layer

On Thu, May 5, 2011 at 2:41 AM, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> On Wed, 2011-05-04 at 18:07 -0700, Khem Raj wrote:
>> a build from scratch revealed few more issues with this patch too.
>>
>> 1. We have to only remove gettext from dependencies if its a target
>> package for all other it still it needed otherwise all native and
>> cross tools start failing to build
>>  e.g. binutils-cross this can be easily solved by a patch
>>
>> iff --git a/meta/classes/gettext.bbclass b/meta/classes/gettext.bbclass
>> index 6f79e5e..cc39204 100644
>> --- a/meta/classes/gettext.bbclass
>> +++ b/meta/classes/gettext.bbclass
>> @@ -1,5 +1,5 @@
>>  def gettext_dependencies(d):
>> -    if d.getVar('USE_NLS', True) == 'no':
>> +    if d.getVar('USE_NLS', True) == 'no' and not oe.utils.inherits(d,
>> 'native', 'nativesdk', 'cross')
>>          return ""
>>      if bb.data.getVar('INHIBIT_DEFAULT_DEPS', d, True) and not
>> oe.utils.inherits(d, 'cross-canadian')
>>          return ""
>
> This looks reasonable, its still much clearer what is happening and why
> compared to the original version...
>
>> second problem is that EXTRA_OECONF when recipes override it instead
>> of += or appending etc.
>> then --enable|--disable-nls that we added via gettext_oeconf() is lost
>> as a result some packages complain about config.rpath
>> when USE_NLS is set to no the reason is their configure is missing the
>> argument --disable-nls this works ok
>> for eglibc based targets since default is to enable-nls if nothing is
>> specified but uclibc fails. As a testcase try to preprocess
>> utils-linux
>> recipe and check the contents of EXTRA_OECONF
>
> I suspect we can fix this with:
>
> -EXTRA_OECONF += "${@gettext_oeconf(d)}"
> +EXTRA_OECONF_append = " ${@gettext_oeconf(d)}"
>
> ?
>
yes something like that
somehow the patch I attached did not make it to ml
I have sent it separately now.


> Cheers,
>
> Richard
>
>



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

end of thread, other threads:[~2011-05-05 17:01 UTC | newest]

Thread overview: 84+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-27  7:29 [PATCH 00/52] Updated Consolidated pull Saul Wold
2011-04-27  7:29 ` [PATCH 01/52] sat-solver: fix arch=all packages Saul Wold
2011-04-27  8:24   ` Antonio Ospite
2011-04-27 18:24     ` Saul Wold
2011-04-27  7:29 ` [PATCH 02/52] quilt: fix test for target build Saul Wold
2011-04-27  7:29 ` [PATCH 03/52] gcc: Add recipes for 4.6.0 Saul Wold
2011-04-27  8:17   ` Antonio Ospite
2011-04-27 18:23     ` Saul Wold
2011-04-27 18:42       ` Khem Raj
2011-04-28  9:14       ` Richard Purdie
2011-04-28  8:53   ` Richard Purdie
2011-04-27  7:29 ` [PATCH 04/52] perl: upgrade from 5.12.2 to 5.12.3 Saul Wold
2011-04-27  7:29 ` [PATCH 05/52] gdb: set --without-ust for EXTRA_OEFLAGS Saul Wold
2011-04-27  7:29 ` [PATCH 06/52] web: update svn to 131 to fix build issue Saul Wold
2011-04-27  7:29 ` [PATCH 07/52] tar-1.17 (GPLv2) bugfix Saul Wold
2011-04-27  7:29 ` [PATCH 08/52] cpio-2.8 (GPLv2) bug fix Saul Wold
2011-04-27  7:29 ` [PATCH 09/52] rxvt-unicode: upgrade to version 9.10 Saul Wold
2011-04-27  7:29 ` [PATCH 10/52] valgrind: upgrade to version 3.6.1 Saul Wold
2011-04-27  7:29 ` [PATCH 11/52] bluez-hcidump: upgrade to version 2.0 Saul Wold
2011-04-27  7:29 ` [PATCH 12/52] gupnp-av: upgrade to version 0.8.0 Saul Wold
2011-04-27  7:29 ` [PATCH 13/52] libsndfile1: upgrade to version 1.0.24 Saul Wold
2011-04-27  7:29 ` [PATCH 14/52] glib-2.0: upgrade to version 2.28.6 Saul Wold
2011-04-27  7:29 ` [PATCH 15/52] libfm: Remove the flag of G_DISABLE_DEPRECATED Saul Wold
2011-04-27  7:29 ` [PATCH 16/52] polkit: upgrade to version 0.101 Saul Wold
2011-04-27  7:29 ` [PATCH 17/52] gst-fluendo-mpegdemux: upgrade to version 0.10.67 Saul Wold
2011-04-27  7:29 ` [PATCH 18/52] libsamplerate0: upgrade to version 0.1.7 Saul Wold
2011-04-27  7:29 ` [PATCH 19/52] alsa-utils: upgrade to version 1.0.24.2 Saul Wold
2011-04-27  7:29 ` [PATCH 21/52] distro_tracking_fields: cwautomacros, valgrind, etc Saul Wold
2011-04-27  8:20   ` Antonio Ospite
2011-04-27  7:29 ` [PATCH 20/52] cwautomacros: upgrade to version 20110201 Saul Wold
2011-04-27  7:29 ` [PATCH 22/52] sstate.bbclass: Reduce SSTATE_MANIFESTS assignment to be weak Saul Wold
2011-04-27  7:29 ` [PATCH 23/52] libiconv: update from 1.9.2 -> 1.11.1 Saul Wold
2011-04-27  7:29 ` [PATCH 24/52] elfutils_0.148.bb: Fix compilation issues on uclibc Saul Wold
2011-04-27  7:29 ` [PATCH 25/52] perl_5.12.2.bb: Undefine features not found in uclibc Saul Wold
2011-04-27  7:29 ` [PATCH 26/52] xorg-lib: inherit gettext class instead of adding gettext to DEPENDS directly Saul Wold
2011-04-27  7:29 ` [PATCH 27/52] attr: Fix compilation on uclibc Saul Wold
2011-04-27  7:29 ` [PATCH 28/52] linux-tools.inc: Dummify do_compile_perf and do_install_perf for uclibc Saul Wold
2011-04-27 14:34   ` Darren Hart
2011-04-27 14:37     ` Darren Hart
2011-04-27 16:10       ` Khem Raj
2011-04-27  7:29 ` [PATCH 29/52] python: add missing cytpes modules Saul Wold
2011-04-27  7:29 ` [PATCH 30/52] cdrtools: recipe and patch cleanup Saul Wold
2011-04-27  7:29 ` [PATCH 31/52] distro_tracking_fields.inc: add cdrtools recipe Saul Wold
2011-04-27  7:29 ` [PATCH 32/52] logging: fix oedebug loglevel test Saul Wold
2011-04-27  7:29 ` [PATCH 33/52] logging: remove unused BBDEBUG from local.conf.sample Saul Wold
2011-04-27  7:29 ` [PATCH 34/52] logging: add bb* logging mechanisms for bash recipe functions Saul Wold
2011-04-28  9:05   ` Richard Purdie
2011-04-29  4:30     ` Darren Hart
2011-04-29  4:34       ` Saul Wold
2011-04-27  7:29 ` [PATCH 35/52] libsdl: add SRC_URI Checksums Saul Wold
2011-04-27  7:29 ` [PATCH 36/52] gettext.bbclass: Use _append instead of =+ Saul Wold
2011-04-28  9:01   ` Richard Purdie
2011-04-29 16:11     ` Khem Raj
2011-05-03 12:14       ` Richard Purdie
2011-05-03 18:04         ` Khem Raj
2011-05-03 22:39           ` Richard Purdie
2011-05-05  1:07             ` Khem Raj
2011-05-05  4:19               ` Khem Raj
2011-05-05  5:06                 ` Saul Wold
2011-05-05  6:38                   ` Khem Raj
2011-05-05  9:41               ` Richard Purdie
2011-05-05 16:58                 ` Khem Raj
2011-04-27  7:29 ` [PATCH 37/52] insane.bbclass: Move code to add function to tasks toward the end Saul Wold
2011-04-28  8:46   ` Richard Purdie
2011-04-27  7:29 ` [PATCH 38/52] insane.bbclass: Checking for NLS too when checking gettext dependency Saul Wold
2011-04-28  9:02   ` Richard Purdie
2011-04-27  7:30 ` [PATCH 39/52] autotools.bbclass: Copy gettext files only if --disable-nls is not set Saul Wold
2011-04-27  7:30 ` [PATCH 40/52] gettext: Divide packaging into gettext-runtime and rest Saul Wold
2011-04-27  7:30 ` [PATCH 41/52] gettext_0.17.bb: PROVIDE virtual/gettext and RCONFLICT with proxy-libintl Saul Wold
2011-04-27  7:30 ` [PATCH 42/52] poky-default.inc: Weakly assign gettext to provide virtual/gettext Saul Wold
2011-04-27  7:30 ` [PATCH 43/52] glib-2.0: Inherit gettext should provide right libintl so remove from DEPENDS Saul Wold
2011-04-27  7:30 ` [PATCH 45/52] perl_5.12.2.bb: Undefine features not found in uclibc Saul Wold
2011-04-27  7:30 ` [PATCH 44/52] util-linux.inc: remove virtual/libintl from DEPENDS Saul Wold
2011-04-28  9:03   ` Richard Purdie
2011-04-27  7:30 ` [PATCH 46/52] alsa-utils_1.0.23.bb: Fix compilation for uclibc targets Saul Wold
2011-04-27  7:30 ` [PATCH 47/52] clutter-box2d: add DEPENDS for clutter-1.6 Saul Wold
2011-04-27  7:30 ` [PATCH 48/52] table: move old clutter demo to meta-demoapps Saul Wold
2011-04-27  7:30 ` [PATCH 49/52] tidy: " Saul Wold
2011-04-27  7:30 ` [PATCH 50/52] alsa-tools: Add checksums Saul Wold
2011-04-27  7:30 ` [PATCH 51/52] world-broken: add older clutters since we don't want clutter confusion Saul Wold
2011-04-27  7:30 ` [PATCH 52/52] qemu: Fix non-sdl/opengl build Saul Wold
2011-04-27  8:17 ` [PATCH 00/52] Updated Consolidated pull Antonio Ospite
2011-04-27 17:38   ` Saul Wold
2011-04-28  9:12 ` Richard Purdie

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.