As promised by the time-based release schedule, a new version 2011.08 of Buildroot has just been released. For those just coming in, Buildroot is a utility that automates the process of building an embedded Linux system: generating a cross-compilation toolchain or importing an existing one, cross-compiling multiple user-space libraries or applications, generating a root filesystem image and building the kernel or bootloader images. We use it extensively at Bootlin for various projects and therefore contribute regularly to this project.
The major highlights of this version are :
- An updated version of udev. For a long time, Buildroot has been stuck with an ancient udev release, due to the slightly more complicated dependencies of newer udev versions. Fortunately, Yegor Yefremov and other contributors have done the work to integrate those dependencies and get a modern version of udev to work in Buildroot.
- An updated version of util-linux has been integrated. Here as well, updating it wasn’t completely straightforward, due to utility libraries such as libuuid, which is also present and e2fsprogfs, and used by multiple other packages.
- The conversion of the Linux kernel build process and the bootloaders build process to the GENTARGETS infrastructure of Buildroot. This makes the build process of the kernel and the bootloaders much more similar to regular packages, and allows to provide the capability of fetching kernel sources not only from tarballs over http/ftp, but also from Git or Subversion repositories.
- The kernel build process has been extended to support Linux 3.x versions and also release candidates versions.
- Some improvements for using Buildroot to generate systems for non-MMU targets
- Some new packages have been added: acl, attr, ebtables, gnutls, inotify-tools, ipset, libargtable2, libiqrf, libmnl, libnspr, libnss, libroxml, libyaml, live555, mxml, orc, rsyslog, sredird, statserial, stunnel, ti-utils, uboot-tools, yajl, and many, many packages have been upgraded or fixed.
The amount of patches merged for this release (287) is almost identical to the number of patches for the past release (286), but the number of contributors has increased from 28 to 35. Generally speaking, we are seeing an increasing number of requests and contributions from users :
143 Peter Korsgaard 36 Thomas Petazzoni 21 Sven Neumann 13 Gustavo Zacarias 13 Yegor Yefremov 9 Maxime Ripard 7 Yann E. MORIN 4 Baruch Siach 4 Daniel Mack 4 Luca Ceresoli 3 Jean-Christophe PLAGNIOL-VILLARD 3 Thomas De Schampheleire 2 Allan W. Nielsen 2 Mike Williams 2 Phil Edworthy 2 Will Newton 1 Arnout Vandecappelle (Essensium - Mind) 1 Arnout Vandecappelle (Essensium/Mind) 1 Benoit Mauduit 1 Benoît Mauduit 1 Daniel Hobi 1 Daniel Nyström 1 Danomi Mocelopolis 1 Evgeni Dobrev 1 Francis Mendes 1 Frederic Bassaler 1 Frederik Pasch 1 H Hartley Sweeten 1 Heiko Helmle 1 Marek Belisko 1 Michael J. Hammel 1 Milton Soares Filho 1 Philippe Reynes 1 Robin Holt 1 Tristan Lelong
Two developers from Bootlin have contributed patches for this release: my colleague Maxime Ripard has contributed 9 patches (Python build fixes, toolchain configuration fix, new rsyslog package, rework of the logging init scripts, new stunnel package, /dev/shm fix for the initialization scripts, code cleanup) and I (Thomas Petazzoni) have contributed 36 patches (conversion of the kernel and bootloaders to the GENTARGETS infrastructure, support for Linux 3.x and release candidates, improvements for non-MMU targets, the new scons package, upgrade of valgrind, some other code cleanup and fixes).
For the next release, I expect to contribute a set of patches that has already been reviewed on the list, and which adds the possibility of building packages from an existing source directory instead of letting Buildroot handle the download/extract/patch part of the build process. This feature will make it much much easier to use Buildroot during the development of the kernel, an application or a library for the target embedded system. I have also posted patches that convert the documentation over to the asciidoc format and I intend to do various additions to this documentation.
It is also worth mentioning that the Buildroot developers (Peter Korsgaard and myself) and the Crosstool-NG maintainer Yann E. Morin are organizing a Developer Day on October, 29th in Prague, the day after the Embedded Linux Conference Europe. All developers or users interested in Buildroot and/or Crosstool-NG are invited to join. See http://lists.busybox.net/pipermail/buildroot/2011-August/045066.html for more details.