[Buildroot] svn commit: trunk/buildroot/toolchain: binutils external-toolchain gcc uClibc
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Mon Mar 30 13:32:59 UTC 2009
Hi,
Sorry for coming back to this change so late, but I don't really agree
with the change (or at least don't understand why it was done).
I initially split the BR2_LARGEFILE, BR2_INET_RPC, BR2_INET_IPV6,
BR2_ENABLE_LOCALE options in two files, so that the description would
be different depending on whether you're using a Buildroot toolchain or
an external toolchain.
Currently, users using the external toolchain have to answer the
following misleading options :
[ ] Enable largefile support
[ ] Enable IPV6
[ ] Enable RPC
[ ] Enable locale support
They are misleading because these options cannot be enabled/disabled:
the external toolchain has already been compiled. However, they must
be set *according* to how the external toolchain was compiled.
I'm sure there was an issue with how I solved this problem, but I don't
see which one. Could you explain it again ?
Thanks!
Thomas
Le Fri, 30 Jan 2009 16:28:26 +0000 (UTC),
laird at uclibc.org a écrit :
> Author: laird
> Date: 2009-01-30 16:28:26 +0000 (Fri, 30 Jan 2009)
> New Revision: 25170
>
> Log:
> Extend External Toolchain options (match buildroot built toolchain):
>
> Have added options that mean you can set the same BR2_XXXX variables
> for external toolchain and internal (buildroot built) toolchain.
>
> This means the same set of packages can be built now me as for
> you.....
>
> Signed-off-by: Daniel Laird <daniel.j.laird at nxp.com>
>
>
>
> Modified:
> trunk/buildroot/toolchain/Config.in.2
> trunk/buildroot/toolchain/binutils/Config.in
> trunk/buildroot/toolchain/external-toolchain/Config.in.2
> trunk/buildroot/toolchain/gcc/Config.in
> trunk/buildroot/toolchain/uClibc/Config.in
>
>
> Changeset:
> Modified: trunk/buildroot/toolchain/Config.in.2
> ===================================================================
> --- trunk/buildroot/toolchain/Config.in.2 2009-01-30 14:41:04
> UTC (rev 25169) +++ trunk/buildroot/toolchain/Config.in.2
> 2009-01-30 16:28:26 UTC (rev 25170) @@ -1,35 +1,56 @@
> #
> -
> -if BR2_TOOLCHAIN_SOURCE
> -source "toolchain/elf2flt/Config.in"
> -source "toolchain/mklibs/Config.in"
> -source "toolchain/sstrip/Config.in"
> -
> -config BR2_ENABLE_MULTILIB
> - bool "Enable multilib support?"
> - help
> - Build libraries to support different ABIs.
> -
> config BR2_LARGEFILE
> bool "Enable large file (files > 2 GB) support?"
> depends on !BR2_cris
> help
> - Enable large file (files > 2 GB) support
> + If you are building your own toolchain and you want to
> + support files larger than 2GB then enable this option.
> + If you have an external binary toolchain that has been
> + built with large file support (files > 2GB) then enable
> + this option.
>
> config BR2_INET_IPV6
> bool "Enable IPv6"
> help
> - Enable IPv6.
> + If you are building your own toolchain and you want to
> + enable IPV6 support then enable this option.
> + If you have an external binary toolchain that has been
> + built with IPV6 support then enable this option.
>
> config BR2_INET_RPC
> bool "Enable RPC"
> help
> - Enable RPC. RPC support is needed for nfs.
> + Enable RPC. RPC support is needed for nfs.
> + If you are building your own toolchain and you want to
> + enable RPC support then enable this option.
> + If you have an external binary toolchain that has been
> + built with RPC support then enable this option.
>
> +config BR2_ENABLE_LOCALE
> + bool "Enable locale/gettext/i18n support?"
> + help
> + If you are building your own toolchain and you want to
> + enable locale/gettext/i18n support then enable this option.
> + If you have an external binary toolchain that has been
> + built with locale/gettext/i18n support then enable this
> option. +
> +config BR2_ENABLE_LOCALE_PREGENERATED
> + bool "Use pregenerated locale data?"
> + depends on BR2_ENABLE_LOCALE && BR2_TOOLCHAIN_SOURCE
> + help
> + Instead of generating the locale data locally you can
> optionally
> + download a pregenerated set of locales.
> +
> + Say N here unless your buildhost lacks locale support and
> you
> + desparately want to use internationalization on your
> target. +
> config BR2_USE_WCHAR
> bool "Enable WCHAR support"
> help
> - Enable WCHAR. WCHAR support is needed for several packages
> + If you are building your own toolchain and you want to
> + enable WCHAR support then enable this option.
> + If you have an external binary toolchain that has been
> built
> + with WCHAR support then enable this option.
>
> config BR2_SOFT_FLOAT
> bool "Use software floating point by default"
> @@ -42,6 +63,66 @@
>
> Most people will answer N.
>
> +choice
> + prompt "Thread library implementation"
> + default BR2_PTHREADS_OLD
> + help
> + If you are building your own toolchain then select the
> type of
> + libpthreads you want to use.
> + Not all thread variants work with all versions of uClibc,
> + the "linuxthreads (stable/old)" may be a working fallback
> + if you need threading at all.
> + If you have an external binary toolchain then select the
> type
> + of libpthreads it was built with.
> +
> + config BR2_PTHREADS_NONE
> + bool "none"
> +
> + config BR2_PTHREADS
> + bool "linuxthreads"
> +
> + config BR2_PTHREADS_OLD
> + bool "linuxthreads (stable/old)"
> +
> + config BR2_PTHREADS_NATIVE
> + bool "Native POSIX Threading (NPTL)"
> +endchoice
> +
> +config BR2_GCC_CROSS_CXX
> + bool
> + help
> + If you are building your own toolchain and want to build
> + a C++ cross-compiler this needs to be enabled.
> + If you have an external binary toolchain that has a C++
> compiler
> + and you want to use it then you need to enable this option.
> +
> +config BR2_INSTALL_LIBSTDCPP
> + bool "Build/install c++ compiler and libstdc++?"
> + select BR2_LARGEFILE if (!BR2_GCC_SUPPORTS_SYSROOT &&
> BR2_TOOLCHAIN_SOURCE)
> + select BR2_GCC_CROSS_CXX
> + help
> + If you are building your own toolchain and want to build
> and install
> + the C++ compiler and library then you need to enable this
> option.
> + If you have an external toolchain that has been built with
> C++
> + support and you want to use the compiler / library then
> you need
> + to select this option.
> +
> +config BR2_TARGET_OPTIMIZATION
> + string "Target Optimizations"
> + default "-Os -pipe"
> + help
> + Optimizations to use when building for the target host.
> +
> +if BR2_TOOLCHAIN_SOURCE
> +source "toolchain/elf2flt/Config.in"
> +source "toolchain/mklibs/Config.in"
> +source "toolchain/sstrip/Config.in"
> +
> +config BR2_ENABLE_MULTILIB
> + bool "Enable multilib support?"
> + help
> + Build libraries to support different ABIs.
> +
> config BR2_VFP_FLOAT
> bool "Use ARM Vector Floating Point unit"
> depends on !BR2_SOFT_FLOAT
> @@ -54,12 +135,6 @@
>
> Most people will answer N.
>
> -config BR2_TARGET_OPTIMIZATION
> - string "Target Optimizations"
> - default "-Os -pipe"
> - help
> - Optimizations to use when building for the target host.
> -
> config BR2_CROSS_TOOLCHAIN_TARGET_UTILS
> bool "Include target utils in cross toolchain"
> default y
>
> Modified: trunk/buildroot/toolchain/binutils/Config.in
> ===================================================================
> --- trunk/buildroot/toolchain/binutils/Config.in 2009-01-30
> 14:41:04 UTC (rev 25169) +++
> trunk/buildroot/toolchain/binutils/Config.in 2009-01-30
> 16:28:26 UTC (rev 25170) @@ -13,7 +13,6 @@ depends on BR2_DEPRECATED
> || (BR2_avr32 && BR2_EXT_BINUTILS_VERSION_2_17) bool "binutils 2.17"
>
> -
> config BR2_BINUTILS_VERSION_2_17_50_0_17
> depends on !BR2_avr32 && !BR2_nios2
> depends on BR2_DEPRECATED
>
> Modified: trunk/buildroot/toolchain/external-toolchain/Config.in.2
> ===================================================================
> --- trunk/buildroot/toolchain/external-toolchain/Config.in.2
> 2009-01-30 14:41:04 UTC (rev 25169) +++
> trunk/buildroot/toolchain/external-toolchain/Config.in.2
> 2009-01-30 16:28:26 UTC (rev 25170) @@ -14,64 +14,4 @@ This the the
> external toolchain prefix. For example: armeb-unknown-linux-gnu,
> mipsel-unknown-linux-gnu, etc.
> -choice
> - prompt "Thread library implementation"
> - default BR2_EXT_PTHREADS_OLD
> - help
> - Select the version of libpthreads used in the external
> toolchain. -
> - config BR2_EXT_PTHREADS_NONE
> - bool
> - prompt "none"
> -
> - config BR2_EXT_PTHREADS
> - bool
> - prompt "linuxthreads"
> -
> - config BR2_EXT_PTHREADS_OLD
> - bool
> - prompt "linuxthreads (stable/old)"
> -
> - config BR2_EXT_PTHREADS_NATIVE
> - bool
> - prompt "Native POSIX Threading (NPTL)"
> -endchoice
> -
> -config BR2_LARGEFILE
> - bool "Toolchain supports large files (> 2 GB) ?"
> - depends on !BR2_cris
> - default y
> - help
> - Set this option if the external toolchain supports large
> - files (> 2 GB)
> -
> -
> -config BR2_INET_IPV6
> - bool "Toolchain supports IPv6 ?"
> - help
> - Set this option if the external toolchain supports IPv6.
> -
> -config BR2_INET_RPC
> - bool "Toolchain supports RPC ?"
> - help
> - Set this option if the external toolchain supports RPC.
> -
> -config BR2_SOFT_FLOAT
> - bool "Toolchain supports soft float ?"
> - depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel ||
> BR2_powerpc
> - help
> - Set this option if the external toolchain supports soft
> float. -
> -config BR2_GCC_CROSS_CXX
> - bool "Toolchain has C++ cross-compiler ?"
> - help
> - Set this option if the external toolchain has a C++
> - cross-compiler.
> -
> -config BR2_TARGET_OPTIMIZATION
> - string "Target Optimizations"
> - default "-Os -pipe"
> - help
> - Optimizations to use when building for the target host.
> -
> endif
>
> Modified: trunk/buildroot/toolchain/gcc/Config.in
> ===================================================================
> --- trunk/buildroot/toolchain/gcc/Config.in 2009-01-30
> 14:41:04 UTC (rev 25169) +++
> trunk/buildroot/toolchain/gcc/Config.in 2009-01-30 16:28:26
> UTC (rev 25170) @@ -125,25 +125,12 @@ help
> Any additional gcc configure options you may want to
> include....
> -config BR2_GCC_CROSS_CXX
> - bool "C++ cross-compiler support"
> - help
> - Build a C++ cross-compiler
> -
> config BR2_GCC_CROSS_FORTRAN
> bool "Fortran cross-compiler support"
> depends on !BR2_avr32
> help
> Build a Fortran cross-compiler
>
> -config BR2_INSTALL_LIBSTDCPP
> - bool "Build/install c++ compiler and libstdc++?"
> - # >= 4.2.0 work fine without LARGEFILE
> - select BR2_LARGEFILE if !BR2_GCC_SUPPORTS_SYSROOT
> - select BR2_GCC_CROSS_CXX
> - help
> - Build/install c++ compiler and libstdc++?
> -
> config BR2_INSTALL_LIBGCJ
> bool "Build/install java compiler and libgcj?"
> depends on !BR2_avr32 && BR2_INSTALL_LIBSTDCPP
>
> Modified: trunk/buildroot/toolchain/uClibc/Config.in
> ===================================================================
> --- trunk/buildroot/toolchain/uClibc/Config.in 2009-01-30
> 14:41:04 UTC (rev 25169) +++
> trunk/buildroot/toolchain/uClibc/Config.in 2009-01-30 16:28:26
> UTC (rev 25170) @@ -48,43 +48,6 @@ See also docs/README in this
> package. If unsure, use the default.
>
> -config BR2_ENABLE_LOCALE
> - bool "Enable locale/gettext/i18n support?"
> - help
> - Enable locale/gettext/i18n support?
> -
> -config BR2_ENABLE_LOCALE_PREGENERATED
> - bool "Use pregenerated locale data?"
> - depends on BR2_ENABLE_LOCALE
> - help
> - Instead of generating the locale data locally you can
> optionally
> - download a pregenerated set of locales.
> -
> - Say N here unless your buildhost lacks locale support and
> you
> - desparately want to use internationalization on your
> target. -
> -choice
> - prompt "Thread library implementation"
> - default BR2_PTHREADS_OLD
> - help
> - Select the version of libpthreads you want to use.
> - Not all thread variants work with all versions of uClibc,
> - the "linuxthreads (stable/old)" may be a working fallback
> - if you need threading at all.
> -
> - config BR2_PTHREADS_NONE
> - bool "none"
> -
> - config BR2_PTHREADS
> - bool "linuxthreads"
> -
> - config BR2_PTHREADS_OLD
> - bool "linuxthreads (stable/old)"
> -
> - config BR2_PTHREADS_NATIVE
> - bool "Native POSIX Threading (NPTL)"
> -endchoice
> -
> config BR2_PTHREAD_DEBUG
> bool "Thread library debugging"
> depends on BR2_PTHREADS || BR2_PTHREADS_OLD ||
> BR2_PTHREADS_NATIVE
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
--
Thomas Petazzoni, Free Electrons
Kernel, drivers and embedded Linux development,
consulting, training and support.
http://free-electrons.com
More information about the buildroot
mailing list