Skip to content

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

Arnout Vandecappelle buildroot 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest0 of 6 patches 0 repliesNew

Patches in v1 No applies recorded yet

None of the 6 patches the cover letter announces are in this archive.

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [Buildroot] [PATCH 0/6 RFC] toolchain/external: use generic extract commands (branch yem/extract-cmds)
Quoted 50 lines · Romain Naour

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.

Quoted 5 lines

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

Thoughts ?

Sounds good to me. But it's only for the custom external toolchains, so it
should be named BR2_TOOLCHAIN_EXTERNAL_CUSTOM_EXCLUDES (yes, it sounds wrong, as if the excludes are custom, but it is what it is).

Regards,
Arnout

Quoted 12 lines

Best regards,
Romain

Quoted 2 lines

Regards,
Yann E. MORIN.

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF