All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [pull request] Pull request for branch for-2011.02/toolchain-improvements
@ 2010-12-05  9:25 Thomas Petazzoni
  2010-12-05  9:25 ` [Buildroot] [PATCH 01/15] toolchain: Improve C library option selection Thomas Petazzoni
                   ` (15 more replies)
  0 siblings, 16 replies; 35+ messages in thread
From: Thomas Petazzoni @ 2010-12-05  9:25 UTC (permalink / raw)
  To: buildroot

Hello,

Here is a set of patches that mainly improves the toolchain
configuration and support, with two majors directions :

 * Turn BR2_LARGEFILE, BR2_INET_RPC, BR2_INET_RPC and similar options
   into hidden options, and let the toolchain backends present them as
   they wish. For example for RPC, xthe Buildroot backend says "Do you
   want RPC ?" while the external toolchain backend doesn't show the
   option when glibc is used, or present an option "Does your
   toolchain has RPC ?" when uclibc is used.

   So really those options should now be called
   BR2_TOOLCHAIN_HAS_LARGEFILE, BR2_TOOLCHAIN_HAS_INET_RPC, etc, but
   we kept the old names in this patch series because changing them
   impacts all packages. This will be done later.

   A first commit handles largefile, rpc, ipv6, locale and program
   invocation options, and some later commits handle the C++ option
   and thread options.

 * Extend external toolchain with "profiles", i.e well-known external
   toolchains. For those toolchains, Buildroot can automatically
   download and install them and will automatically select the
   appropriate configuration options (C library used, RPC, IPv6,
   locale, etc.). So an user can know tell Buildroot to use a
   CodeSourcery toolchain, and Buildroot will do all the job. Such
   toolchains are extracted in $(O)/external-toolchain, but my intent
   is to move it to $(O)/toolchain once Gustavoz's toolchain cleanup
   work is done.

   This work keeps the ability of doing some more manual things with
   external toolchains:

     - For an external toolchain profile, you can tell Buildroot *not*
       to download it, and in that case, you must provide Buildroot
       with the location of the external toolchain.

     - You keep the ability to specify a custom profile, where you
       will have to tell Buildroot everything: location of the
       toolchain, toolchain prefix, C library used, etc.

In my opinion, those two directions really make the external
toolchains easier and simpler to use. One topic left is the gdb
options, but I decided not to change it, in order to not conflict too
much with Gustavoz's work.

The rest of the changes are more minor modifications, related to these
toolchain improvements.

Regards,

Thomas

The following changes since commit 7e9c3a387820154fd1355f23c2669072c0c3a5f7:
  Peter Korsgaard (1):
        docs/news.html: add 2010.11 announce link

are available in the git repository at:

  git://git.busybox.net/~tpetazzoni/git/buildroot for-2011.02/toolchain-improvements

Thomas Petazzoni (15):
      toolchain: Improve C library option selection
      toolchain: remove ending semi-colon in helpers
      toolchain: add support for external toolchain profiles and download
      toolchain: remove toolchain-specific stripping
      toolchain: rework C++ options
      toolchain: move Stack Protection Support option
      ltp-testsuite: bump version and use autotargets
      toolchain: rework thread options
      toolchain: check that the thread option selection is correct
      gcc: disable libgomp when thread support is disabled
      uclibc: add patch for uClibc snapshot to fix build issue
      toolchain: BR2_NEEDS_GETTEXT must be y when uClibc is used
      toolchain: expose thread options in the Crosstool-NG backend
      toolchain: more verbose in crosstool-ng backend
      package: pass TARGET_MAKE_ENV at install/clean/uninstall steps

 Makefile                                           |    3 +-
 package/Makefile.autotools.in                      |   10 +-
 package/Makefile.in                                |   12 +-
 package/dmalloc/dmalloc.mk                         |    6 +-
 package/ltp-testsuite/Config.in                    |   15 +-
 ...tp-testsuite-20101031-disable-controllers.patch |   25 ++
 .../ltp-testsuite-disable-ipv6-tests.patch         |  123 ----------
 .../ltp-testsuite-enable-openposix-for-nptl.patch  |   33 ---
 .../ltp-testsuite-generate-needs-bash.patch        |    8 -
 .../ltp-testsuite-sched-getaffinity.patch          |   11 -
 .../ltp-testsuite-uclibc-syscalls.patch            |   11 -
 package/ltp-testsuite/ltp-testsuite.mk             |   68 +------
 package/lzma/Config.in                             |    4 +-
 package/multimedia/ffmpeg/ffmpeg.mk                |    6 +-
 package/openvpn/openvpn.mk                         |    6 +-
 package/rpm/Config.in                              |    4 +-
 toolchain/Config.in                                |    5 +-
 toolchain/Makefile.in                              |    6 -
 toolchain/gcc/gcc-uclibc-4.x.mk                    |    8 +-
 toolchain/helpers.mk                               |   16 +-
 toolchain/toolchain-buildroot/Config.in.2          |  101 ++++++++
 toolchain/toolchain-common.in                      |  121 ++---------
 toolchain/toolchain-crosstool-ng/Config.in         |   95 ++++++++-
 .../toolchain-crosstool-ng/crosstool-ng.config     |    8 +-
 toolchain/toolchain-crosstool-ng/crosstool-ng.mk   |   25 ++-
 toolchain/toolchain-external/Config.in             |  240 +++++++++++++++++++-
 toolchain/toolchain-external/Config.in.2           |   17 --
 toolchain/toolchain-external/ext-tool.mk           |  212 ++++++++++++------
 ...tconf-only-use-specs-names-when-available.patch |  131 +++++++++++
 toolchain/uClibc/uclibc.mk                         |    2 +-
 30 files changed, 827 insertions(+), 505 deletions(-)
 create mode 100644 package/ltp-testsuite/ltp-testsuite-20101031-disable-controllers.patch
 delete mode 100644 package/ltp-testsuite/ltp-testsuite-disable-ipv6-tests.patch
 delete mode 100644 package/ltp-testsuite/ltp-testsuite-enable-openposix-for-nptl.patch
 delete mode 100644 package/ltp-testsuite/ltp-testsuite-generate-needs-bash.patch
 delete mode 100644 package/ltp-testsuite/ltp-testsuite-sched-getaffinity.patch
 delete mode 100644 package/ltp-testsuite/ltp-testsuite-uclibc-syscalls.patch
 delete mode 100644 toolchain/toolchain-external/Config.in.2
 create mode 100644 toolchain/uClibc/uClibc.snapshot.getconf-only-use-specs-names-when-available.patch

Thanks,
-- 
Thomas Petazzoni

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

end of thread, other threads:[~2010-12-12 22:53 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-05  9:25 [Buildroot] [pull request] Pull request for branch for-2011.02/toolchain-improvements Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 01/15] toolchain: Improve C library option selection Thomas Petazzoni
2010-12-11 22:14   ` Peter Korsgaard
2010-12-12 10:51     ` Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 02/15] toolchain: remove ending semi-colon in helpers Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 03/15] toolchain: add support for external toolchain profiles and download Thomas Petazzoni
2010-12-11 22:26   ` Peter Korsgaard
2010-12-12 11:04     ` Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 04/15] toolchain: remove toolchain-specific stripping Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 05/15] toolchain: rework C++ options Thomas Petazzoni
2010-12-11 22:38   ` Peter Korsgaard
2010-12-12 11:24     ` Thomas Petazzoni
2010-12-12 10:25   ` Yann E. MORIN
2010-12-12 13:33     ` Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 06/15] toolchain: move Stack Protection Support option Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 07/15] ltp-testsuite: bump version and use autotargets Thomas Petazzoni
2010-12-11 22:42   ` Peter Korsgaard
2010-12-12 11:31     ` Thomas Petazzoni
2010-12-12 22:21       ` Peter Korsgaard
2010-12-12 22:46         ` Thomas Petazzoni
2010-12-12 22:53           ` Peter Korsgaard
2010-12-05  9:25 ` [Buildroot] [PATCH 08/15] toolchain: rework thread options Thomas Petazzoni
2010-12-11 22:45   ` Peter Korsgaard
2010-12-12 11:34     ` Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 09/15] toolchain: check that the thread option selection is correct Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 10/15] gcc: disable libgomp when thread support is disabled Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 11/15] uclibc: add patch for uClibc snapshot to fix build issue Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 12/15] toolchain: BR2_NEEDS_GETTEXT must be y when uClibc is used Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 13/15] toolchain: expose thread options in the Crosstool-NG backend Thomas Petazzoni
2010-12-11 22:50   ` Peter Korsgaard
2010-12-12 10:37   ` Yann E. MORIN
2010-12-12 13:35     ` Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 14/15] toolchain: more verbose in crosstool-ng backend Thomas Petazzoni
2010-12-05  9:25 ` [Buildroot] [PATCH 15/15] package: pass TARGET_MAKE_ENV at install/clean/uninstall steps Thomas Petazzoni
2010-12-11 22:55 ` [Buildroot] [pull request] Pull request for branch for-2011.02/toolchain-improvements Peter Korsgaard

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.