Adepte des versions de développement des logiciels de la Fondation Mozilla depuis Mozilla 0.8 (en gros depuis février 2001), j’ai toujours voulu connaître le temps nécessaire à la compilation d’une version « from scratch », en clair, en repartant de zéro.
Ayant récupéré le code source en utilisant les instructions disponibles à l’adresse https://developer.mozilla.org/En/Developer_Guide/Source_Code/Mercurial, en clair en entrant sur une ligne de commande :
hg clone http://hg.mozilla.org/mozilla-central/ src
cd src
Puis en actualisant le code source avec un petit :
hg --verbose pull -u
J’ai ensuite utilisé le fichier .mozconfig suivant :
#
# See http://www.mozilla.org/build/ for build instructions.
#
export AUTOCONF=autoconf-2.13
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-fx
# Options for ‘configure’ (same as command-line options).
ac_add_options –enable-optimize
ac_add_options –disable-debug
ac_add_options –disable-tests
Pour des raisons techniques, il faut installer l’ancienne version d’autoconf, connue sous le nom d’autoconf-compat sur Archlinux.
J’ai divisé la compilation en deux temps : un pour les dépendances, l’autre pour la compilation proprement dite.
Pour les dépendances :
make -f client.mk depend
Pour la compilation :
make -f client.mk build
Et le temps nécessaire ? Il suffit d’ajouter la commande time devant les commandes make.
Pour les dépendances :
real 2m49.202s
user 1m30.977s
sys 0m44.534s
Pour la compilation :
real 43m33.043s
user 39m33.562s
sys 3m38.266s
Pour info, ma configuration :
Acer Aspire 5520, donc :
- AMD Athlon X2 TK 55 (800 à 1800 Mhz)
- 2 GiO de mémoire vive
- 120 GiO de disque dur
- Circuit vidéo GeForce7000M
Sur le plan logiciel :
- Archlinux 2009.02 à jour avec le dépot testing activé
- Gnome 2.28.0
- gcc / g++ 4.4.1
45 minutes, sur un portable acheté en février 2008, ce n’est pas si mal que cela 😉