Now that packages can provide a list of files to be excluded when extracting their archive, downloaded external toolchains are no longer special in this respect. Still, those toolchains are currently extracted directly into their final location, $(HOST_DIR)/opt/ext-toolchain/ which means we still need a custom extract command. Except, we don't really need it: we can just move the toolchain, after it's been extracted by the generic extract command, with a post-extract hook. This means that: - we now extract the toolchain with the generic extract command, - the toolchain is thus extracted into $(@D) , - fixup commands are run against $(@D), as a post-extract hook, instead of against $(HOST_DIR)/opt/ext-toolchain , - once this is done, we move $(@D)/* into the final location with a new post-extract hook. Note: the blackfin case is special, and will be handled in a follow-up patch. [Thomas: register the TOOLCHAIN_EXTERNAL_FIXUP_CMDS only for the Arago case, add some additional comments in the code about why we're moving the toolchain around.] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Reviewed-by: Romain Naour <romain.naour@openwide.fr> Reviewed-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> |
||
---|---|---|
arch | ||
board | ||
boot | ||
configs | ||
docs | ||
fs | ||
linux | ||
package | ||
support | ||
system | ||
toolchain | ||
.defconfig | ||
.gitignore | ||
CHANGES | ||
Config.in | ||
Config.in.legacy | ||
COPYING | ||
Makefile | ||
Makefile.legacy | ||
README |
Buildroot is a simple, efficient and easy-to-use tool to generate embedded Linux systems through cross-compilation. The documentation can be found in docs/manual. You can generate a text document with 'make manual-text' and read output/docs/manual/manual.text. Online documentation can be found at http://buildroot.org/docs.html To build and use the buildroot stuff, do the following: 1) run 'make menuconfig' 2) select the target architecture and the packages you wish to compile 3) run 'make' 4) wait while it compiles 5) find the kernel, bootloader, root filesystem, etc. in output/images You do not need to be root to build or run buildroot. Have fun! Buildroot comes with a basic configuration for a number of boards. Run 'make list-defconfigs' to view the list of provided configurations. Please feed suggestions, bug reports, insults, and bribes back to the buildroot mailing list: buildroot@buildroot.org You can also find us on #buildroot on Freenode IRC.