Patchwork package/crosstool-ng: update to 1.17.0

login
register
mail settings
Submitter Carsten Schoenert
Date Dec. 3, 2012, 7:47 p.m.
Message ID <1354564065-24388-2-git-send-email-c.schoenert@t-online.de>
Download mbox | patch
Permalink /patch/203425/
State Accepted
Commit b855154ee8683e87afa08c6cc50b716d22879922
Headers show

Comments

Carsten Schoenert - Dec. 3, 2012, 7:47 p.m.
From: Carsten Schoenert <c.schoenert@t-online.de>

Updating current crosstool-ng config files to 1.17.0
 crosstool-ng.config-eglibc
 crosstool-ng.config-glibc
 crosstool-ng.config-uClibc

Signed-off-by: Carsten Schoenert <c.schoenert@t-online.de>
---
 package/crosstool-ng/crosstool-ng.mk               |    2 +-
 .../crosstool-ng.config-eglibc                     |   73 ++++++++++++++-----
 .../crosstool-ng.config-glibc                      |   74 +++++++++++++++-----
 .../crosstool-ng.config-uClibc                     |   71 ++++++++++++++-----
 4 files changed, 165 insertions(+), 55 deletions(-)
Thomas Petazzoni - Dec. 4, 2012, 9:12 a.m.
Dear Carsten Schoenert,

On Mon,  3 Dec 2012 20:47:45 +0100, Carsten Schoenert wrote:
> From: Carsten Schoenert <c.schoenert@t-online.de>
> 
> Updating current crosstool-ng config files to 1.17.0
>  crosstool-ng.config-eglibc
>  crosstool-ng.config-glibc
>  crosstool-ng.config-uClibc
> 
> Signed-off-by: Carsten Schoenert <c.schoenert@t-online.de>
> ---
>  package/crosstool-ng/crosstool-ng.mk               |    2 +-
>  .../crosstool-ng.config-eglibc                     |   73 ++++++++++++++-----
>  .../crosstool-ng.config-glibc                      |   74 +++++++++++++++-----
>  .../crosstool-ng.config-uClibc                     |   71 ++++++++++++++-----
>  4 files changed, 165 insertions(+), 55 deletions(-)

Thanks for doing this work. I think ct-ng now supports minimal
defconfig files. Would it make sense to use that instead of
full .config files in order to reduce the amount of churn when updating
between ct-ng versions? Yann?

Thomas
Yann E. MORIN - Dec. 4, 2012, 6:09 p.m.
Thomas, Carsten, All,

On Tuesday 04 December 2012 Thomas Petazzoni wrote:
> On Mon,  3 Dec 2012 20:47:45 +0100, Carsten Schoenert wrote:
> > From: Carsten Schoenert <c.schoenert@t-online.de>
> > 
> > Updating current crosstool-ng config files to 1.17.0
> >  crosstool-ng.config-eglibc
> >  crosstool-ng.config-glibc
> >  crosstool-ng.config-uClibc
> > 
> > Signed-off-by: Carsten Schoenert <c.schoenert@t-online.de>
> > ---
> >  package/crosstool-ng/crosstool-ng.mk               |    2 +-
> >  .../crosstool-ng.config-eglibc                     |   73 ++++++++++++++-----
> >  .../crosstool-ng.config-glibc                      |   74 +++++++++++++++-----
> >  .../crosstool-ng.config-uClibc                     |   71 ++++++++++++++-----
> >  4 files changed, 165 insertions(+), 55 deletions(-)
> 
> Thanks for doing this work. I think ct-ng now supports minimal
> defconfig files. Would it make sense to use that instead of
> full .config files in order to reduce the amount of churn when updating
> between ct-ng versions? Yann?

Indeed, but the defconfig support in crosstool-NG is not perfect yet, so
I think we should keep complete .config files for this release.

The problem with defconfigs in crosstool-NG is that there is no guarantee
about new symbols coming and going between versions, so this can result in
strange behaviors when a new version comes out, and a defconfig from a
previous version is used. Here's what may happen:

In version X, we use the latest stable 3.6 linux kernel, which is 3.6.2.
This is also the absolute latest version of the kernel. So we have this
symbol: LINUX_VER_3_6_2

The user did select this version. As 3.6.3 is the latest version, it is
the first item in the choice, so it does not appear in the defconfig,
being the default of the choice.

Now, version X+1 is out, and the stable 3.6 kernel is updated to 3.6.7,
so we get a new symbol, but the previous one no longer exists. Also,
kernel 3.7 is out, so the 3.6.7 is not the latest version available.

Now, the default symbol in the choice is not 3.6.x, but 3.7.x, which
is probably not what the user expected.

Thus, using the defconfig from the previous version will yield a
completely different .config.

This can be even more anoying with the gcc version, as we only have one
linaro release per gcc /generation/ (eg. 4.7). If the user did select
the latest linaro version (eg. 4.7) which was the default of the choice,
qnd the new release has a more recent mainstream version (eg. 4.8), but
no corresponding linaro version, then the gcc version will be bumnped
to 4.8, when the user did in fact want the linaro 4.7.

I have a pending change to fix this issue for all components, but it will
go in only for the next release, and that shall make using defconfigs from
a previous version relatively safe to use with a newer version.

Then, we can switch buildroot to using the ct-ng defconfigs, but until
then I think it is safer to use full .config files.

Regards,
Yann E. MORIN.
Thomas Petazzoni - Dec. 4, 2012, 7:35 p.m.
Dear Yann E. MORIN,

On Tue, 4 Dec 2012 19:09:24 +0100, Yann E. MORIN wrote:

> > Thanks for doing this work. I think ct-ng now supports minimal
> > defconfig files. Would it make sense to use that instead of
> > full .config files in order to reduce the amount of churn when
> > updating between ct-ng versions? Yann?
> 
> Indeed, but the defconfig support in crosstool-NG is not perfect yet,
> so I think we should keep complete .config files for this release.
> 
> The problem with defconfigs in crosstool-NG is that there is no
> guarantee about new symbols coming and going between versions, so
> this can result in strange behaviors when a new version comes out,
> and a defconfig from a previous version is used. Here's what may
> happen:
> 
> In version X, we use the latest stable 3.6 linux kernel, which is
> 3.6.2. This is also the absolute latest version of the kernel. So we
> have this symbol: LINUX_VER_3_6_2
> 
> The user did select this version. As 3.6.3 is the latest version, it
> is the first item in the choice, so it does not appear in the
> defconfig, being the default of the choice.
> 
> Now, version X+1 is out, and the stable 3.6 kernel is updated to
> 3.6.7, so we get a new symbol, but the previous one no longer exists.
> Also, kernel 3.7 is out, so the 3.6.7 is not the latest version
> available.
> 
> Now, the default symbol in the choice is not 3.6.x, but 3.7.x, which
> is probably not what the user expected.
> 
> Thus, using the defconfig from the previous version will yield a
> completely different .config.
> 
> This can be even more anoying with the gcc version, as we only have
> one linaro release per gcc /generation/ (eg. 4.7). If the user did
> select the latest linaro version (eg. 4.7) which was the default of
> the choice, qnd the new release has a more recent mainstream version
> (eg. 4.8), but no corresponding linaro version, then the gcc version
> will be bumnped to 4.8, when the user did in fact want the linaro 4.7.
> 
> I have a pending change to fix this issue for all components, but it
> will go in only for the next release, and that shall make using
> defconfigs from a previous version relatively safe to use with a
> newer version.
> 
> Then, we can switch buildroot to using the ct-ng defconfigs, but until
> then I think it is safer to use full .config files.

To me, it is also the point of using defconfig from the first place: to
benefit from the new default values for configuration options that we
leave undefined.

Note that the crosstool-ng.config-* don't necessarily need to be pure
defconfig files: you can add a few explicit options, whose value is
currently the default one, but since you don't want them to change to
newer default values, you explicit their value in the defconfig. We
have this for a few options in Buildroot defconfig files as well.

defconfig files do not necessarily need to be the direct output of
"savedefconfig", they can be hand-edited to enforce the value of
certain options.

Best regards,

Thomas
Peter Korsgaard - Dec. 5, 2012, 3:30 p.m.
>>>>> "Carsten" == Carsten Schoenert <c.schoenert@gmail.com> writes:

 Carsten> From: Carsten Schoenert <c.schoenert@t-online.de>
 Carsten> Updating current crosstool-ng config files to 1.17.0
 Carsten>  crosstool-ng.config-eglibc
 Carsten>  crosstool-ng.config-glibc
 Carsten>  crosstool-ng.config-uClibc

Committed, thanks.

The change to defconfig can happen later.

 Carsten>  #
 Carsten>  # C compiler
 Carsten> @@ -242,6 +267,7 @@ CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
 Carsten>  CT_CC="gcc"
 Carsten>  CT_CC_VERSION="4.4.6"

It would also be nice to default to gcc 4.6.x to match the internal
toolchain.
Peter Korsgaard - Dec. 9, 2012, 8:02 p.m.
>>>>> "Carsten" == Carsten Schoenert <c.schoenert@gmail.com> writes:

 Carsten> From: Carsten Schoenert <c.schoenert@t-online.de>
 Carsten> Updating current crosstool-ng config files to 1.17.0
 Carsten>  crosstool-ng.config-eglibc
 Carsten>  crosstool-ng.config-glibc
 Carsten>  crosstool-ng.config-uClibc

Unfortunately it doesn't seem to build here (ppl compilation issue):

[ERROR]    /home/peko/source/buildroot/testctng/build/build-toolchain/.build/src/ppl-0.10.2/src/Interval.defs.hh:451:86: error: 'f_info' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
[ALL  ]    In file included from /home/peko/source/buildroot/testctng/build/build-toolchain/.build/src/ppl-0.10.2/src/Interval.defs.hh:980:0

Yann, Carsten - Any ideas? Googling around seems to suggest that this is
related to a host-gcc 4.7.x issue, but people are quite likely to be
using that nowadays, so what to do? Build with -fpermissive?
Yann E. MORIN - Dec. 9, 2012, 8:37 p.m.
Peter, All,

On Sunday 09 December 2012 Peter Korsgaard wrote:
> >>>>> "Carsten" == Carsten Schoenert <c.schoenert@gmail.com> writes:
> 
>  Carsten> From: Carsten Schoenert <c.schoenert@t-online.de>
>  Carsten> Updating current crosstool-ng config files to 1.17.0
>  Carsten>  crosstool-ng.config-eglibc
>  Carsten>  crosstool-ng.config-glibc
>  Carsten>  crosstool-ng.config-uClibc
> 
> Unfortunately it doesn't seem to build here (ppl compilation issue):
> 
> [ERROR]    /home/peko/source/buildroot/testctng/build/build-toolchain/.build/src/ppl-0.10.2/src/Interval.defs.hh:451:86: error: 'f_info' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
> [ALL  ]    In file included from /home/peko/source/buildroot/testctng/build/build-toolchain/.build/src/ppl-0.10.2/src/Interval.defs.hh:980:0
> 
> Yann, Carsten - Any ideas? Googling around seems to suggest that this is
> related to a host-gcc 4.7.x issue, but people are quite likely to be
> using that nowadays, so what to do? Build with -fpermissive?

Yes, it requires -fpermissive to build with gcc-4.7.

Someone spoke about providing a patch to this effect on the crossgcc ML,
but nothing so far.

I am using a Debian squeeze that has a gcc-4.4, so I can't test it.
I'll try in a wheezy chroot soonish.

Regards,
Yann E. MORIN.
Carsten Schoenert - Dec. 9, 2012, 9:18 p.m.
Hello Yann, Hello Peter,

Am 09.12.2012 21:37, schrieb Yann E. MORIN:
>> Unfortunately it doesn't seem to build here (ppl compilation issue):
>>
>> [ERROR]    /home/peko/source/buildroot/testctng/build/build-toolchain/.build/src/ppl-0.10.2/src/Interval.defs.hh:451:86: error: 'f_info' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
>> [ALL  ]    In file included from /home/peko/source/buildroot/testctng/build/build-toolchain/.build/src/ppl-0.10.2/src/Interval.defs.hh:980:0
>>
>> Yann, Carsten - Any ideas? Googling around seems to suggest that this is
>> related to a host-gcc 4.7.x issue, but people are quite likely to be
>> using that nowadays, so what to do? Build with -fpermissive?

I remember I ran into similar problems with ppl-010.2 while I try to
find a setup for a arm crosscompiler with gcc4.7.1. After choosing
ppl-0.11.2 and setting the switch -fpermissive the build was successful
(but of course with a lot warnings while global settings for LDFLAGS).

> Yes, it requires -fpermissive to build with gcc-4.7.

Right, GCC greater 4.6 are more strict while syntax checking, so without
-fpermissive actual compiler in Debian wheezy will give up. But for me
is setting -fpermisse just a temporaly solution. Newer GCCs will always
give up in such cases and that's correct.

> I am using a Debian squeeze that has a gcc-4.4, so I can't test it.
> I'll try in a wheezy chroot soonish.

No need for that. :-)
Wheezy use the current GCC 4.7.2 and the sources need a patch to correct
the source or the switch -fpermissive.

Because I don't know exactly how to patch the source (I don't have take
a deep look into it) or the Makefile for ppl-0.1x.x inside the
crosstool-ng environment I can't provide some useful right now.

Patch

diff --git a/package/crosstool-ng/crosstool-ng.mk b/package/crosstool-ng/crosstool-ng.mk
index 5bc65e1..3b207a2 100644
--- a/package/crosstool-ng/crosstool-ng.mk
+++ b/package/crosstool-ng/crosstool-ng.mk
@@ -1,4 +1,4 @@ 
-CROSSTOOL_NG_VERSION           = 1.16.0
+CROSSTOOL_NG_VERSION           = 1.17.0
 CROSSTOOL_NG_SOURCE            = crosstool-ng-$(CROSSTOOL_NG_VERSION).tar.bz2
 CROSSTOOL_NG_SITE              = http://crosstool-ng.org/download/crosstool-ng/
 CROSSTOOL_NG_INSTALL_TARGET    = NO
diff --git a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc
index 6c55921..1b523ec 100644
--- a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc
+++ b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-eglibc
@@ -1,12 +1,10 @@ 
 #
 # Automatically generated make config: don't edit
-# crosstool-NG 1.16.0 Configuration
-# Sun Aug  5 20:02:42 2012
+# crosstool-NG 1.17.0 Configuration
+# Mon Dec  3 20:10:26 2012
 #
 CT_CONFIGURE_has_xz=y
-CT_CONFIGURE_has_cvs=y
 CT_CONFIGURE_has_svn=y
-CT_BACKEND=y
 CT_MODULES=y
 
 #
@@ -18,15 +16,16 @@  CT_MODULES=y
 #
 # CT_OBSOLETE is not set
 # CT_EXPERIMENTAL is not set
+# CT_DEBUG_CT is not set
 
 #
 # Paths
 #
 CT_LOCAL_TARBALLS_DIR=""
-CT_SAVE_TARBALLS=y
 CT_WORK_DIR="${CT_TOP_DIR}/.build"
 CT_PREFIX_DIR=""
 CT_INSTALL_DIR="${CT_PREFIX_DIR}"
+CT_RM_RF_PREFIX_DIR=y
 CT_REMOVE_DOCS=y
 # CT_INSTALL_DIR_RO is not set
 # CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES is not set
@@ -58,16 +57,15 @@  CT_PATCH_ORDER="bundled"
 #
 # Build behavior
 #
-
-#
-# Build options hiden
-#
 CT_PARALLEL_JOBS=0
 CT_LOAD=0
 CT_USE_PIPES=y
 CT_EXTRA_FLAGS_FOR_HOST=""
-CT_CONFIG_SHELL_CUSTOM_PATH="/bin/sh"
-CT_CONFIG_SHELL="/bin/sh"
+# CT_CONFIG_SHELL_SH is not set
+# CT_CONFIG_SHELL_ASH is not set
+CT_CONFIG_SHELL_BASH=y
+# CT_CONFIG_SHELL_CUSTOM is not set
+CT_CONFIG_SHELL="${bash}"
 
 #
 # Logging
@@ -111,8 +109,27 @@  CT_ARCH_BITNESS=32
 CT_ARCH_FLOAT_SW=y
 CT_TARGET_CFLAGS=""
 CT_TARGET_LDFLAGS=""
+# CT_ARCH_alpha is not set
 CT_ARCH_arm=y
+# CT_ARCH_avr32 is not set
+# CT_ARCH_blackfin is not set
+# CT_ARCH_mips is not set
+# CT_ARCH_powerpc is not set
+# CT_ARCH_sh is not set
+# CT_ARCH_sparc is not set
+# CT_ARCH_x86 is not set
+CT_ARCH_alpha_AVAILABLE=y
 CT_ARCH_arm_AVAILABLE=y
+CT_ARCH_avr32_AVAILABLE=y
+CT_ARCH_blackfin_AVAILABLE=y
+CT_ARCH_m68k_AVAILABLE=y
+CT_ARCH_microblaze_AVAILABLE=y
+CT_ARCH_mips_AVAILABLE=y
+CT_ARCH_powerpc_AVAILABLE=y
+CT_ARCH_s390_AVAILABLE=y
+CT_ARCH_sh_AVAILABLE=y
+CT_ARCH_sparc_AVAILABLE=y
+CT_ARCH_x86_AVAILABLE=y
 
 #
 # Generic target options
@@ -178,24 +195,31 @@  CT_BUILD_SUFFIX=""
 #
 CT_KERNEL_SUPPORTS_SHARED_LIBS=y
 CT_KERNEL="linux"
-CT_KERNEL_VERSION="3.5"
+CT_KERNEL_VERSION="3.6.3"
+# CT_KERNEL_bare_metal is not set
 CT_KERNEL_linux=y
+CT_KERNEL_bare_metal_AVAILABLE=y
 CT_KERNEL_linux_AVAILABLE=y
-CT_KERNEL_V_3_5=y
-# CT_KERNEL_V_3_4_7 is not set
+CT_KERNEL_V_3_6_3=y
+# CT_KERNEL_V_3_6_2 is not set
+# CT_KERNEL_V_3_6_1 is not set
+# CT_KERNEL_V_3_6 is not set
+# CT_KERNEL_V_3_5_7 is not set
+# CT_KERNEL_V_3_4_15 is not set
 # CT_KERNEL_V_3_3_8 is not set
-# CT_KERNEL_V_3_2_25 is not set
+# CT_KERNEL_V_3_2_32 is not set
 # CT_KERNEL_V_3_1_10 is not set
-# CT_KERNEL_V_3_0_39 is not set
+# CT_KERNEL_V_3_0_48 is not set
 # CT_KERNEL_V_2_6_39_4 is not set
 # CT_KERNEL_V_2_6_38_8 is not set
 # CT_KERNEL_V_2_6_37_6 is not set
 # CT_KERNEL_V_2_6_36_4 is not set
 # CT_KERNEL_V_2_6_33_20 is not set
-# CT_KERNEL_V_2_6_32_59 is not set
+# CT_KERNEL_V_2_6_32_60 is not set
 # CT_KERNEL_V_2_6_31_14 is not set
 # CT_KERNEL_V_2_6_27_62 is not set
 # CT_KERNEL_LINUX_CUSTOM is not set
+CT_KERNEL_mingw32_AVAILABLE=y
 
 #
 # Common kernel options
@@ -235,6 +259,7 @@  CT_BINUTILS_LINKER_LD=y
 CT_BINUTILS_LINKERS_LIST="ld"
 CT_BINUTILS_LINKER_DEFAULT="bfd"
 CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
+# CT_BINUTILS_FOR_TARGET is not set
 
 #
 # C compiler
@@ -242,6 +267,7 @@  CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
 CT_CC="gcc"
 CT_CC_VERSION="4.4.6"
 CT_CC_gcc=y
+# CT_CC_V_4_7_2 is not set
 # CT_CC_V_4_6_3 is not set
 # CT_CC_V_4_6_2 is not set
 # CT_CC_V_4_6_1 is not set
@@ -323,6 +349,8 @@  CT_CC_GCC_LDBL_128=m
 CT_LIBC="eglibc"
 CT_LIBC_VERSION="2_12"
 CT_LIBC_eglibc=y
+# CT_LIBC_glibc is not set
+# CT_LIBC_uClibc is not set
 CT_LIBC_eglibc_AVAILABLE=y
 # CT_LIBC_EGLIBC_V_2_16 is not set
 # CT_LIBC_EGLIBC_V_2_15 is not set
@@ -343,6 +371,11 @@  CT_EGLIBC_REVISION="HEAD"
 # CT_EGLIBC_CHECKOUT is not set
 CT_EGLIBC_OPT_SIZE=y
 # CT_EGLIBC_CUSTOM_CONFIG is not set
+CT_LIBC_glibc_AVAILABLE=y
+CT_LIBC_mingw_AVAILABLE=y
+CT_LIBC_newlib_AVAILABLE=y
+CT_LIBC_none_AVAILABLE=y
+CT_LIBC_uClibc_AVAILABLE=y
 CT_LIBC_SUPPORT_THREADS_ANY=y
 CT_LIBC_SUPPORT_NPTL=y
 CT_LIBC_SUPPORT_LINUXTHREADS=y
@@ -393,12 +426,16 @@  CT_LIBC_ADDONS_LIST=""
 # CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set
 CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y
 # CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set
-CT_LIBC_GLIBC_MIN_KERNEL="3.5"
+CT_LIBC_GLIBC_MIN_KERNEL="3.6.3"
 
 #
 # Debug facilities
 #
+# CT_DEBUG_dmalloc is not set
+# CT_DEBUG_duma is not set
 # CT_DEBUG_gdb is not set
+# CT_DEBUG_ltrace is not set
+# CT_DEBUG_strace is not set
 
 #
 # Companion libraries
diff --git a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc
index 3910bdb..026c7fd 100644
--- a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc
+++ b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-glibc
@@ -1,12 +1,10 @@ 
 #
 # Automatically generated make config: don't edit
-# crosstool-NG 1.16.0 Configuration
-# Sun Aug  5 21:39:12 2012
+# crosstool-NG 1.17.0 Configuration
+# Mon Dec  3 20:16:52 2012
 #
 CT_CONFIGURE_has_xz=y
-CT_CONFIGURE_has_cvs=y
 CT_CONFIGURE_has_svn=y
-CT_BACKEND=y
 CT_MODULES=y
 
 #
@@ -18,15 +16,16 @@  CT_MODULES=y
 #
 # CT_OBSOLETE is not set
 # CT_EXPERIMENTAL is not set
+# CT_DEBUG_CT is not set
 
 #
 # Paths
 #
 CT_LOCAL_TARBALLS_DIR=""
-CT_SAVE_TARBALLS=y
 CT_WORK_DIR="${CT_TOP_DIR}/.build"
 CT_PREFIX_DIR=""
 CT_INSTALL_DIR="${CT_PREFIX_DIR}"
+CT_RM_RF_PREFIX_DIR=y
 CT_REMOVE_DOCS=y
 # CT_INSTALL_DIR_RO is not set
 # CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES is not set
@@ -58,16 +57,15 @@  CT_PATCH_ORDER="bundled"
 #
 # Build behavior
 #
-
-#
-# Build options hiden
-#
 CT_PARALLEL_JOBS=0
 CT_LOAD=0
 CT_USE_PIPES=y
 CT_EXTRA_FLAGS_FOR_HOST=""
-CT_CONFIG_SHELL_CUSTOM_PATH="/bin/sh"
-CT_CONFIG_SHELL="/bin/sh"
+# CT_CONFIG_SHELL_SH is not set
+# CT_CONFIG_SHELL_ASH is not set
+CT_CONFIG_SHELL_BASH=y
+# CT_CONFIG_SHELL_CUSTOM is not set
+CT_CONFIG_SHELL="${bash}"
 
 #
 # Logging
@@ -111,8 +109,27 @@  CT_ARCH_BITNESS=32
 CT_ARCH_FLOAT_SW=y
 CT_TARGET_CFLAGS=""
 CT_TARGET_LDFLAGS=""
+# CT_ARCH_alpha is not set
 CT_ARCH_arm=y
+# CT_ARCH_avr32 is not set
+# CT_ARCH_blackfin is not set
+# CT_ARCH_mips is not set
+# CT_ARCH_powerpc is not set
+# CT_ARCH_sh is not set
+# CT_ARCH_sparc is not set
+# CT_ARCH_x86 is not set
+CT_ARCH_alpha_AVAILABLE=y
 CT_ARCH_arm_AVAILABLE=y
+CT_ARCH_avr32_AVAILABLE=y
+CT_ARCH_blackfin_AVAILABLE=y
+CT_ARCH_m68k_AVAILABLE=y
+CT_ARCH_microblaze_AVAILABLE=y
+CT_ARCH_mips_AVAILABLE=y
+CT_ARCH_powerpc_AVAILABLE=y
+CT_ARCH_s390_AVAILABLE=y
+CT_ARCH_sh_AVAILABLE=y
+CT_ARCH_sparc_AVAILABLE=y
+CT_ARCH_x86_AVAILABLE=y
 
 #
 # Generic target options
@@ -178,24 +195,31 @@  CT_BUILD_SUFFIX=""
 #
 CT_KERNEL_SUPPORTS_SHARED_LIBS=y
 CT_KERNEL="linux"
-CT_KERNEL_VERSION="3.5"
+CT_KERNEL_VERSION="3.6.3"
+# CT_KERNEL_bare_metal is not set
 CT_KERNEL_linux=y
+CT_KERNEL_bare_metal_AVAILABLE=y
 CT_KERNEL_linux_AVAILABLE=y
-CT_KERNEL_V_3_5=y
-# CT_KERNEL_V_3_4_7 is not set
+CT_KERNEL_V_3_6_3=y
+# CT_KERNEL_V_3_6_2 is not set
+# CT_KERNEL_V_3_6_1 is not set
+# CT_KERNEL_V_3_6 is not set
+# CT_KERNEL_V_3_5_7 is not set
+# CT_KERNEL_V_3_4_15 is not set
 # CT_KERNEL_V_3_3_8 is not set
-# CT_KERNEL_V_3_2_25 is not set
+# CT_KERNEL_V_3_2_32 is not set
 # CT_KERNEL_V_3_1_10 is not set
-# CT_KERNEL_V_3_0_39 is not set
+# CT_KERNEL_V_3_0_48 is not set
 # CT_KERNEL_V_2_6_39_4 is not set
 # CT_KERNEL_V_2_6_38_8 is not set
 # CT_KERNEL_V_2_6_37_6 is not set
 # CT_KERNEL_V_2_6_36_4 is not set
 # CT_KERNEL_V_2_6_33_20 is not set
-# CT_KERNEL_V_2_6_32_59 is not set
+# CT_KERNEL_V_2_6_32_60 is not set
 # CT_KERNEL_V_2_6_31_14 is not set
 # CT_KERNEL_V_2_6_27_62 is not set
 # CT_KERNEL_LINUX_CUSTOM is not set
+CT_KERNEL_mingw32_AVAILABLE=y
 
 #
 # Common kernel options
@@ -235,6 +259,7 @@  CT_BINUTILS_LINKER_LD=y
 CT_BINUTILS_LINKERS_LIST="ld"
 CT_BINUTILS_LINKER_DEFAULT="bfd"
 CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
+# CT_BINUTILS_FOR_TARGET is not set
 
 #
 # C compiler
@@ -242,6 +267,7 @@  CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
 CT_CC="gcc"
 CT_CC_VERSION="4.4.6"
 CT_CC_gcc=y
+# CT_CC_V_4_7_2 is not set
 # CT_CC_V_4_6_3 is not set
 # CT_CC_V_4_6_2 is not set
 # CT_CC_V_4_6_1 is not set
@@ -322,9 +348,11 @@  CT_CC_GCC_LDBL_128=m
 #
 CT_LIBC="glibc"
 CT_LIBC_VERSION="2.9"
+# CT_LIBC_eglibc is not set
 CT_LIBC_glibc=y
+# CT_LIBC_uClibc is not set
+CT_LIBC_eglibc_AVAILABLE=y
 CT_LIBC_glibc_AVAILABLE=y
-CT_LIBC_GLIBC_TARBALL=y
 # CT_LIBC_GLIBC_V_2_14_1 is not set
 # CT_LIBC_GLIBC_V_2_14 is not set
 # CT_LIBC_GLIBC_V_2_13 is not set
@@ -335,6 +363,10 @@  CT_LIBC_GLIBC_TARBALL=y
 # CT_LIBC_GLIBC_V_2_10_1 is not set
 CT_LIBC_GLIBC_V_2_9=y
 # CT_LIBC_GLIBC_V_2_8 is not set
+CT_LIBC_mingw_AVAILABLE=y
+CT_LIBC_newlib_AVAILABLE=y
+CT_LIBC_none_AVAILABLE=y
+CT_LIBC_uClibc_AVAILABLE=y
 CT_LIBC_SUPPORT_THREADS_ANY=y
 CT_LIBC_SUPPORT_NPTL=y
 CT_THREADS="nptl"
@@ -359,7 +391,7 @@  CT_LIBC_ADDONS_LIST=""
 # CT_LIBC_GLIBC_KERNEL_VERSION_NONE is not set
 CT_LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS=y
 # CT_LIBC_GLIBC_KERNEL_VERSION_CHOSEN is not set
-CT_LIBC_GLIBC_MIN_KERNEL="3.5"
+CT_LIBC_GLIBC_MIN_KERNEL="3.6.3"
 
 #
 # glibc other options
@@ -388,7 +420,11 @@  CT_LIBC_GLIBC_MIN_KERNEL="3.5"
 #
 # Debug facilities
 #
+# CT_DEBUG_dmalloc is not set
+# CT_DEBUG_duma is not set
 # CT_DEBUG_gdb is not set
+# CT_DEBUG_ltrace is not set
+# CT_DEBUG_strace is not set
 
 #
 # Companion libraries
diff --git a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc
index 5155e6c..8ad481f 100644
--- a/toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc
+++ b/toolchain/toolchain-crosstool-ng/crosstool-ng.config-uClibc
@@ -1,12 +1,10 @@ 
 #
 # Automatically generated make config: don't edit
-# crosstool-NG 1.16.0 Configuration
-# Sun Aug  5 17:33:46 2012
+# crosstool-NG 1.17.0 Configuration
+# Mon Dec  3 20:17:58 2012
 #
 CT_CONFIGURE_has_xz=y
-CT_CONFIGURE_has_cvs=y
 CT_CONFIGURE_has_svn=y
-CT_BACKEND=y
 CT_MODULES=y
 
 #
@@ -18,15 +16,16 @@  CT_MODULES=y
 #
 # CT_OBSOLETE is not set
 # CT_EXPERIMENTAL is not set
+# CT_DEBUG_CT is not set
 
 #
 # Paths
 #
 CT_LOCAL_TARBALLS_DIR=""
-CT_SAVE_TARBALLS=y
 CT_WORK_DIR="${CT_TOP_DIR}/.build"
 CT_PREFIX_DIR=""
 CT_INSTALL_DIR="${CT_PREFIX_DIR}"
+CT_RM_RF_PREFIX_DIR=y
 CT_REMOVE_DOCS=y
 # CT_INSTALL_DIR_RO is not set
 # CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES is not set
@@ -58,16 +57,15 @@  CT_PATCH_ORDER="bundled"
 #
 # Build behavior
 #
-
-#
-# Build options hiden
-#
 CT_PARALLEL_JOBS=0
 CT_LOAD=0
 CT_USE_PIPES=y
 CT_EXTRA_FLAGS_FOR_HOST=""
-CT_CONFIG_SHELL_CUSTOM_PATH="/bin/sh"
-CT_CONFIG_SHELL="/bin/sh"
+# CT_CONFIG_SHELL_SH is not set
+# CT_CONFIG_SHELL_ASH is not set
+CT_CONFIG_SHELL_BASH=y
+# CT_CONFIG_SHELL_CUSTOM is not set
+CT_CONFIG_SHELL="${bash}"
 
 #
 # Logging
@@ -111,8 +109,27 @@  CT_ARCH_BITNESS=32
 CT_ARCH_FLOAT_SW=y
 CT_TARGET_CFLAGS=""
 CT_TARGET_LDFLAGS=""
+# CT_ARCH_alpha is not set
 CT_ARCH_arm=y
+# CT_ARCH_avr32 is not set
+# CT_ARCH_blackfin is not set
+# CT_ARCH_mips is not set
+# CT_ARCH_powerpc is not set
+# CT_ARCH_sh is not set
+# CT_ARCH_sparc is not set
+# CT_ARCH_x86 is not set
+CT_ARCH_alpha_AVAILABLE=y
 CT_ARCH_arm_AVAILABLE=y
+CT_ARCH_avr32_AVAILABLE=y
+CT_ARCH_blackfin_AVAILABLE=y
+CT_ARCH_m68k_AVAILABLE=y
+CT_ARCH_microblaze_AVAILABLE=y
+CT_ARCH_mips_AVAILABLE=y
+CT_ARCH_powerpc_AVAILABLE=y
+CT_ARCH_s390_AVAILABLE=y
+CT_ARCH_sh_AVAILABLE=y
+CT_ARCH_sparc_AVAILABLE=y
+CT_ARCH_x86_AVAILABLE=y
 
 #
 # Generic target options
@@ -178,24 +195,31 @@  CT_BUILD_SUFFIX=""
 #
 CT_KERNEL_SUPPORTS_SHARED_LIBS=y
 CT_KERNEL="linux"
-CT_KERNEL_VERSION="3.5"
+CT_KERNEL_VERSION="3.6.3"
+# CT_KERNEL_bare_metal is not set
 CT_KERNEL_linux=y
+CT_KERNEL_bare_metal_AVAILABLE=y
 CT_KERNEL_linux_AVAILABLE=y
-CT_KERNEL_V_3_5=y
-# CT_KERNEL_V_3_4_7 is not set
+CT_KERNEL_V_3_6_3=y
+# CT_KERNEL_V_3_6_2 is not set
+# CT_KERNEL_V_3_6_1 is not set
+# CT_KERNEL_V_3_6 is not set
+# CT_KERNEL_V_3_5_7 is not set
+# CT_KERNEL_V_3_4_15 is not set
 # CT_KERNEL_V_3_3_8 is not set
-# CT_KERNEL_V_3_2_25 is not set
+# CT_KERNEL_V_3_2_32 is not set
 # CT_KERNEL_V_3_1_10 is not set
-# CT_KERNEL_V_3_0_39 is not set
+# CT_KERNEL_V_3_0_48 is not set
 # CT_KERNEL_V_2_6_39_4 is not set
 # CT_KERNEL_V_2_6_38_8 is not set
 # CT_KERNEL_V_2_6_37_6 is not set
 # CT_KERNEL_V_2_6_36_4 is not set
 # CT_KERNEL_V_2_6_33_20 is not set
-# CT_KERNEL_V_2_6_32_59 is not set
+# CT_KERNEL_V_2_6_32_60 is not set
 # CT_KERNEL_V_2_6_31_14 is not set
 # CT_KERNEL_V_2_6_27_62 is not set
 # CT_KERNEL_LINUX_CUSTOM is not set
+CT_KERNEL_mingw32_AVAILABLE=y
 
 #
 # Common kernel options
@@ -234,6 +258,7 @@  CT_BINUTILS_LINKER_LD=y
 CT_BINUTILS_LINKERS_LIST="ld"
 CT_BINUTILS_LINKER_DEFAULT="bfd"
 CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
+# CT_BINUTILS_FOR_TARGET is not set
 
 #
 # C compiler
@@ -241,6 +266,7 @@  CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
 CT_CC="gcc"
 CT_CC_VERSION="4.4.6"
 CT_CC_gcc=y
+# CT_CC_V_4_7_2 is not set
 # CT_CC_V_4_6_3 is not set
 # CT_CC_V_4_6_2 is not set
 # CT_CC_V_4_6_1 is not set
@@ -321,7 +347,14 @@  CT_CC_GCC_LDBL_128=m
 #
 CT_LIBC="uClibc"
 CT_LIBC_VERSION="0.9.33.2"
+# CT_LIBC_eglibc is not set
+# CT_LIBC_glibc is not set
 CT_LIBC_uClibc=y
+CT_LIBC_eglibc_AVAILABLE=y
+CT_LIBC_glibc_AVAILABLE=y
+CT_LIBC_mingw_AVAILABLE=y
+CT_LIBC_newlib_AVAILABLE=y
+CT_LIBC_none_AVAILABLE=y
 CT_LIBC_uClibc_AVAILABLE=y
 CT_LIBC_UCLIBC_V_0_9_33_2=y
 # CT_LIBC_UCLIBC_V_0_9_33_1 is not set
@@ -369,7 +402,11 @@  CT_LIBC_UCLIBC_WCHAR=y
 #
 # Debug facilities
 #
+# CT_DEBUG_dmalloc is not set
+# CT_DEBUG_duma is not set
 # CT_DEBUG_gdb is not set
+# CT_DEBUG_ltrace is not set
+# CT_DEBUG_strace is not set
 
 #
 # Companion libraries