Skip to content

RFC toolchain/external: use generic extract commands (branch yem/extract-cmds)

Romain Naour buildroot 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest5 of 6 patches 0 repliesNew

5 of 6 patches are in this archive. The cover letter announces 6.

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/6core/pkg-generic: allow packages to exclude files when extracting+0 -00 replies
3/6package/gcc: use generic extract commands+0 -00 replies
4/6toolchain/external: use generic extract commands (!blackfin case)+0 -00 replies
5/6toolchain/external: use generic extract commands (blackfin case)+0 -00 replies
6/6Add support for MIPS Codescape MTI GNU Linux toolchain+0 -00 replies

Reviews trailers per patch

All 5 patches have a Reviewed-by or Acked-by.

PatchRomain Naour
1/6R-b
3/6R-b
4/6R-b
5/6R-b
6/6R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [Buildroot] [PATCH 0/6 RFC] toolchain/external: use generic extract commands (branch yem/extract-cmds)

Hi Yann,

Le 03/09/2015 00:51, Yann E. MORIN a ?crit :

Quoted 26 lines

Hello All!

This series is an attempt at simplifying the way external toolchains are extracted.

Currently, external toolchains use custom extract commands, because they want to exclude a bumch of files during extraction, so as to save a bit of space (locales in some toolchains can account for up to 80% of the size of the toolchain as a whole).

And it turns out, gcc also wants to exclude a bunch of files (java and go, testsuites).

Using custom extract commands means that those packages (and critical ones, at that) can not benefit from the enhancements and fixes made to the generic commands, like the automatic triiping of components.

In this series:

- we first introduce the support for the exclusion list
- we always break/dereference hardlinks
- we make gcc use the exclusion list
- we then make the external toolchains use it (in two passes: one for the non-Blackfin case, one for it, as it is 'seecial')
- finaly, we introduce the Codescape MTI toolchain from Vincent

Quoted 4 lines

Thomas, there is a question for you in the second commit: would you care to explain what your goal was when you added --hard-dereference when extracting the Blackfin toolchains?

What do you think about a new Kconfig option that allow users to define a list of excluded files or directories.
Some toolchains (ie SourceryCodeBench standard) can bundle eclipse or other stuff that are not used in the build process.

Something like:

config BR2_TOOLCHAIN_EXTERNAL_EXCLUDES
string "Exclude unwanted directories from the toolchain archive" default ""
help
If some directories in the toolchain archive are not intended to be used in the build process, this option define a space-separated list of patterns to exclude when extracting the archive.

ifneq ($(BR2_TOOLCHAIN_EXTERNAL_EXCLUDES),) TOOLCHAIN_EXTERNAL_EXCLUDES = $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_EXCLUDES)) endif

Thoughts ?

Best regards,
Romain

Quoted 2 lines

Regards,
Yann E. MORIN.