C’est une idée envisageable, étant donné que le dépot du code source de Shredder et de SeaMonkey pré-2.0 viennent de migrer, abandonnant le vieux dépot CVS vers un dépot mercurial.
Si l’on veut compiler soit-même le code source dit du « tronc » des logiciels de la Fondation Mozilla, que ce soit Shiretoko, Shredder ou SeaMonkey pré-2.0, il faut maintenant passer par des dépots mercurial.
Si le développement de Shiretoko est maintenant bien ancré sur un dépot mercurial, à savoir mozilla-central, c’est loin d’être le cas pour Shredder et SeaMonkey pré-2.0. Voici donc comment compiler Shredder ou SeaMonkey en utilisant le dépôt mercurial comm-central.
Déjà, il faut avoir autoconf 2.13 et mercurial pré-installé. Pour cela, il faut se conférer à la documentation de votre distribution pour savoir comment faire.
Ensuite, il faut récupérer le code source commun à Shredder et SeaMonkey pré-2.0 :
hg clone http://hg.mozilla.org/comm-central/ src
Une fois le code récupéré, il faut récupérer le complément à savoir le code en commun avec Shiretoko :
python client.py checkout
Pour cette partie, l’outil CVS configuré correctement est indispensable. En clair, il faut que la variable CVSROOT soit définie ainsi :
export CVSROOT= »:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot »
Vient le moment stratégique, préparer le .mozconfig pour les options de compilation. Il faut ajouter les deux lignes suivantes :
ac_add_options --enable-application=mail
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb
Et virer un . $topsrcdir/mail/config/mozconfig qui aurait pu s’y trouver si on récupère un vieux fichier .mozconfig
Voici pour information mon .mozconfig pour Shredder :
#
# See http://www.mozilla.org/build/ for build instructions.
#ac_add_options –enable-application=mail
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-tb# Options for ‘configure’ (same as command-line options).
ac_add_options –enable-optimize= »-Os -march=native -w -pipe »
ac_add_options –disable-debug
ac_add_options –disable-tests
ac_add_options –enable-default-toolkit=cairo-gtk2
ac_add_options –enable-static
ac_add_options –disable-shared
Ensuite, il suffit de lancer la compilation et d’attendre.
Et voici ce que donne une boite « about » d’un Shredder compilé avec le code source du dépôt mercurial comm-central.
Les pages qui m’ont aidé pour rédiger cet article :
http://wiki.mozilla.org/SeaMonkey:hg-based_build
http://developer.mozilla.org/en/docs/Mozilla_Source_Code_(Mercurial)
http://developer.mozilla.org/en/docs/Comm-central_source_code_(Mercurial)
http://developer.mozilla.org/en/docs/comm-central