Depuis la précédente dépêche annonçant la sortie de la version 2010.02, deux nouvelles versions ont été publiées : 2010.05 au mois de mai et 2010.08 tout récemment, à la fin du mois d'août. Nous vous proposons dans l'article une description détaillée des changements qui sont intervenus. Dans la version 2010.05
- Ré-organisation complète des menus de configuration pour la sélection des paquets. Les paquets sont désormais organisés par catégories, les rendant plus simples à trouver ;
- Dans la continuité du travail de nettoyage et consolidation entamé depuis janvier 2009, tout le code de génération des images de système de fichiers a été réécrit. Il est désormais factorisé, plus simple à maintenir, et mieux testé ;
- L'ensemble de X.org a été mis à jour vers X.org 7.5. En effet, même si Buildroot est plutôt tourné vers les systèmes Linux embarqués assez réduits, il supporte tout de même des piles logicielles relativement complexes comme X.org ;
- De nombreux nouveaux paquets ont été ajoutés : cdrkit, cramfs, genext2fs, genromfs, libatomic_ops, librsync, libusb-compat, lmbench, netperf, squashfs, squashfs3, squid, et de très nombreux paquets ont été mis à jour ou corrigés ;
- Du coté des toolchains générés par Buildroot, le support d'uClibc 0.9.31, de GCC 4.4.4, de GDB 7.x et de binutils 2.20.1 a été ajouté ;
- Du côté des toolchains externes (c'est à dire l'utilisation par Buildroot de toolchains préexistantes, comme celles fournies par le vendeur d'un matériel), le support des toolchains multilib a été amélioré. Les toolchains multilib contiennent en une seule toolchain plusieurs variantes de la bibliothèque standard C et du runtime GCC, afin de s'adapter à différentes variantes d'une architecture donnée (par exemple : ARMv4 et ARMv5) ;
- Le support de gettext a été clarifié, afin de fonctionner correctement avec les toolchains externes utilisant la glibc comme bibliothèque standard C ;
- De nombreux bugs ont été corrigés, et plusieurs options de configuration obscures ou non-fonctionnelles ont été supprimées, rendant Buildroot encore plus simple à utiliser ;
- Un script de génération de graphe de dépendances entre paquets a été ajouté.
Dans la version 2010.08
- Toujours dans le travail de nettoyage et consolidation, l'ensemble du code de configuration/construction des bootloaders a été réécrit. Buildroot supporte U-Boot, Barebox, AT91Bootstrap, AT91DataFlashBoot, Grub, Grub 2 et Syslinux ;
- Pour la même raison, le code de configuration/construction du noyau a été réécrit. La configuration est désormais beaucoup plus simple qu'auparavant pour l'utilisateur de Buildroot, et le code plus simple à maintenir ;
- Le fichier de configuration .config (Buildroot utilise le même système de configuration que le noyau) est maintenant localisé dans le répertoire de construction out-of-tree si ce mode est utilisé. Par exemple, on fera maintenant
mkdir ~/myoutput ; make O=~/myoutput menuconfig ; make O=~/myoutput
pour utiliser Buildroot et compiler out-of-tree. C'est très pratique lorsque l'on a plusieurs projets en parallèle ;
- Le support pour les toolchains NPTL avec uClibc, qui est une fonctionnalité expérimentale de la uClibc, une bibliothèque standard C alternative à la glibc ;
- Le support pour gconfig a été ajouté à celui de menuconfig et xconfig ;
- Un effort important a été fait sur la correction de nombreux bugs (le Bugzilla a très sérieusement maigri !) et sur l'amélioration de la fiabilité par des tests de construction aléatoires ;
- Évidemment, de très nombreux paquets ont été mis à jour ou corrigés.
Pour la prochaine version
- Poursuite du travail de nettoyage avec le nettoyage du support des cartes matérielles. Nous ajouterons également le support pour des cartes comme la BeagleBoard ainsi que les cartes émulées par Qemu ;
- Ré-écriture du système de téléchargement des paquets, avec le support de Git et SVN ;
- Ré-écriture du support de libtool, afin de clarifier les hacks douteux qui sont actuellement nécessaires pour permettre la compilation croisée de paquets utilisant libtool ;
- Support de la génération de toolchain en utilisant Crosstool-NG comme backend ;
- Poursuite du travail sur la désinstallation de paquets, de manière à pouvoir supprimer un paquet installé sans avoir à tout reconstruire ;
- Et évidemment plein d'autres choses, notamment de nombreuses mises à jour de paquets.
Aller plus loin
- Site de Buildroot (13 clics)
- Annonce de Buildroot 2010.05 (2 clics)
- Annonce de Buildroot 2010.08 (1 clic)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.