Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Buildroot. Building embedded Linux systems. Buildroot Developer Day.

Similar presentations


Presentation on theme: "1 Buildroot. Building embedded Linux systems. Buildroot Developer Day."— Presentation transcript:

1 1 Buildroot. Building embedded Linux systems. http://www.buildroot.org Buildroot Developer Day

2 2 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Cleaning targets Proposal from Bernhard make clean, wipe target make realclean, remove generated files, keep.config make distclean, remove generated files, including.config make release, generate a release tarball

3 3 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Keep the toolchain but re-generate the root filesystem, kernel, etc. Do not install the toolchain in staging/ but in another directory (toolchain/ ?) Then use the external toolchain integration mechanism to integrate the toolchain into the staging directory make ???clean would remove staging/, host/, target/ What about stamps files ?

4 4 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Package infrastructure for non-autotools packages Currently, non-autotools packages are handled manually No way of factorizing common things (download, extract, patch) or installation checks/post-operations Proposal to create such an infrastructure, similar to the Makefile.autotools.in one Would allow the package makefile to specify the configure, build and install steps Makefile.autotools.in would be implemented on top of this architecture Would also cleanup the stamps file mess and would give users a understandable way of dealing with packages

5 5 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Host packages What is the limit between Buildroot dependencies and things that Buildroot should build ? Integrate support in the package infrastructure for host packages

6 6 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Testing Setting up Buildbot Regular reports (sent to the list ? Web interface ?) What configurations should be test ? Should we run-test some configurations ? Qemu ?

7 7 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Integration with Crosstool-NG Instead of having to maintain our own set of gcc/binutils/XXlibc, what about relying on Crosstool-NG instead ? Would immediately add support for glibc/eglibc Uses kconfig for the configuration, so Buildroot would have to generate the.config file, as we do for uClibc/Busybox/kernel Could be implemented as another toolchain generation mechanism at first, before replacing our own stuff after a few releases

8 8 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Libtool Is a mess Current mechanism is a patch against libtool generated scripts Only works with packages using libtool < 2.x Breaks with packages using libtool 2.x Should probably import the OpenWRT way

9 9 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Cleanup Cleaning up target/ A mess of filesystem generation code (should be factorized ?), bootloader code, kernel code and device code Cleaning up external source toolchain support Merged into the normal toolchain support ? Connexion with Crosstool-NG integration ? Reorganize stuff ? Common things in an include/ directory Simplification of /Makefile and package/Makefile Reduce the number of options ?

10 10 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Third-party packages and devices Companies might want to keep their stuff separate from the Buildroot main tree Possible in OpenWRT through the « feeds » mechanism Basic proposal sent by Thomas Petazzoni on Buildroot list

11 11 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Package removal Today, removing packages is not possible, the -clean targets are not reliable We need to keep track of which package installed what in host/, target/ and staging/ The common package infrastructure will help us do that Let the package Makefile install its package in a separate directory and then copy to host/, target/ or staging/. This would someday allow ipkg generation Or after package installation diff the list of files with the previous list of files Then, at next execution, remove files from packages not enabled How do we handle reverse dependencies ?

12 12 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics External toolchains Support for multilib, many people want to ease CodeSourcery toolchains Problem of configuration options (naming and usage)

13 13 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Development process MAINTAINERS for the different areas ? Bug-fix releases (2009.08.X) ? Need Target Milestone in the Bugzilla Binary releases (provide ready-to-use demonstrations for well- known boards, Qemu, etc.)

14 14 Buildroot. Building embedded Linux systems. http://www.buildroot.org Topics Top-level parallel make Would speed up the build process Requires proper dependencies

15 15 Buildroot. Building embedded Linux systems. http://www.buildroot.org Buildroot Developer Day http://www.buildroot.net


Download ppt "1 Buildroot. Building embedded Linux systems. Buildroot Developer Day."

Similar presentations


Ads by Google