mozilla

Revision 142473 of Code source de Mozilla (Mercurial)

  • Raccourci de la révision : Code_source_de_Mozilla_(Mercurial)
  • Titre de la révision : Code source de Mozilla (Mercurial)
  • ID de la révision : 142473
  • Créé :
  • Créateur : BenoitL
  • Version actuelle ? Non
  • Commentaire mise à jour

Contenu de la révision

{{wiki.template(':fr/Build_Documentation/TOC')}}

Mercurial est un outil de gestion de code source permettant aux utilisateurs de suivre les changements faits sur le code localement et de partager ceux-ci avec d'autres. Le projet Mozilla est en cours de transition depuis CVS pour le développement de Firefox 3/Mozilla 1.9 vers Mercurial pour le développement de Firefox 4/Mozilla 2.

{{template.Note("Si vous voulez contribuer en offrant des patches pour le développement de Firefox 3, utilisez <a href=\"fr/Obtenir_le_code_source_de_Mozilla_via_CVS\">CVS</a>.")}}

Paramètres du client

Installation et configuration de Mercurial

Consultez Installation de Mercurial.

Autoconf 2.13

Les sources de Mozilla 2 ne sont pas fournies avec un script de configuration généré. Vous devrez disposer d'une version 2.13 d'autoconf installée.

Sous Mac :
<tt>sudo port install autoconf213</tt>

Sous Fedora/RedHat Linux :
<tt>sudo yum install autoconf213</tt>

Sous Ubuntu Linux :
<tt>sudo apt-get install autoconf2.13</tt>

Sous d'autres distributions Linux (par exemple openSUSE) :
soit un paquetage est fourni, soit vous pouvez l'installer manuellement avec les commandes suivantes (la dernière peut avoir besoin de privilèges root) :
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz
tar -xvzf autoconf-2.13.tar.gz
cd autoconf-2.13/
./configure --program-suffix=-2.13
make
make install

Sous Windows :
autoconf 2.13 est fourni avec MozillaBuild

Note : il peut également être nécessaire de définir la variable « AUTOCONF » dans votre fichier .mozconfig, comme montré dans la section « Compilation » plus bas.

Récupération d'un arbre de sources

Plusieurs dépôts hg sont hébergés sur mozilla.org, consultez http://hg.mozilla.org/ pour la liste complète.

Le dépôt d'intégration pour le développement de Mozilla 2 est mozilla-central. Il contient le code nécessaire pour Firefox et XULRunner, qui sera finalement publié en tant que Mozilla 2.

Pour récupérer le code de mozilla-central (un « clone » du dépôt, selon la terminologie de Mercurial) :

# Récupère le code source de Mozilla dans le dossier src/ - prend un certain temps
# car des centaines de mégaoctets d'historique seront téléchargés vers .hg
hg clone http://hg.mozilla.org/mozilla-central/ src

cd src

python client.py checkout is deprecated - see bug 417635. If you get the error message "No module named subprocess", that's because you didn't install Python 2.4 or later. If you don't run client.py, it won't build. client.py does three things: * Pulls the correct version (by tag) of NSS and NSPR and places them in right locations in your source tree. This is required to build. * Pulls Tamarin code. This is not required (and it's only a pull, so it's harmless). Pass --no-tamarin to client.py to skip this. * Runs a 'hg pull' to pull changes. This is also not required (in fact, you may prefer to pull manually). Pass --hg=echo to client.py to skip this.

Compilation

Configurez et compilez comme d'habitude avec un fichier <tt>.mozconfig</tt> et <tt>make -f client.mk</tt>.

# Générez vous-même un fichier mozconfig, ou utilisez cette version minimale par défaut
echo '. $topsrcdir/browser/config/mozconfig' > .mozconfig

# configure sera automatiquement généré avec la commande 'autoconf-2.13'.
# Si autoconf-2.13 n'est pas le bon nom pour votre système, comme c'est
# le cas sous OS X avec MacPorts et sous Ubuntu Linux, utilisez le vrai
# nom de la commande comme montré ici. (Note : il s'agit d'"autoconf2.13"
# plutôt que "autoconf213", au moins pour Ubuntu 8.04.)
echo 'mk_add_options AUTOCONF=autoconf213' >> .mozconfig

# À présent, lancement de la compilation ; configure sera lancé automatiquement
make -f client.mk build

Voir également

  • La page Mercurial fournit des informations sur la création de diffs, l'application de modifications et la publication de dépôts partagés.
{{ wiki.languages( { "en": "en/Mozilla_Source_Code_(Mercurial)" } ) }}

Source de la révision

<p>{{wiki.template(':fr/Build_Documentation/TOC')}}
</p><p><a href="fr/Mercurial">Mercurial</a> est un outil de gestion de code source permettant aux utilisateurs de suivre les changements faits sur le code localement et de partager ceux-ci avec d'autres. Le projet Mozilla est en cours de transition depuis <a href="fr/Obtenir_le_code_source_de_Mozilla_via_CVS">CVS</a> pour le développement de Firefox 3/Mozilla 1.9 vers Mercurial pour le développement de Firefox 4/Mozilla 2.
</p><p>{{template.Note("Si vous voulez contribuer en offrant des patches pour le développement de Firefox 3, utilisez &lt;a href=\"fr/Obtenir_le_code_source_de_Mozilla_via_CVS\"&gt;CVS&lt;/a&gt;.")}}
</p>
<h3 name="Param.C3.A8tres_du_client"> Paramètres du client </h3>
<h4 name="Installation_et_configuration_de_Mercurial"> Installation et configuration de Mercurial </h4>
<p>Consultez <a href="fr/Installation_de_Mercurial">Installation de Mercurial</a>.
</p>
<h4 name="Autoconf_2.13"> Autoconf 2.13 </h4>
<p>Les sources de Mozilla 2 ne sont pas fournies avec un script de configuration généré. Vous devrez disposer d'une version 2.13 d'autoconf installée.
</p><p></p><dl>
<dt>Sous Mac :
</dt><dd><tt>sudo port install autoconf213</tt>
<p></p></dd><dt>Sous Fedora/RedHat Linux :
</dt><dd><tt>sudo yum install autoconf213</tt>
<p></p></dd><dt>Sous Ubuntu Linux :
</dt><dd><tt>sudo apt-get install autoconf2.13</tt>
<p></p></dd><dt>Sous d'autres distributions Linux (par exemple openSUSE) :
</dt><dd>soit un paquetage est fourni, soit vous pouvez l'installer manuellement avec les commandes suivantes (la dernière peut avoir besoin de privilèges root) :

<pre class="eval">wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz
tar -xvzf autoconf-2.13.tar.gz
cd autoconf-2.13/
./configure --program-suffix=-2.13
make
make install
</pre>
<p></p></dd><dt>Sous Windows :
</dt><dd>autoconf 2.13 est fourni avec <a href="fr/Pr%c3%a9alables_%c3%a0_la_compilation_sous_Windows#MozillaBuild">MozillaBuild</a>
</dd></dl>
<p>Note : il peut également être nécessaire de définir la variable « AUTOCONF » dans votre fichier <code>.mozconfig</code>, comme montré dans la <a href="#Compilation">section « Compilation »</a> plus bas.
</p>
<h3 name="R.C3.A9cup.C3.A9ration_d.27un_arbre_de_sources"> Récupération d'un arbre de sources </h3>
<p>Plusieurs dépôts hg sont hébergés sur mozilla.org, consultez http://hg.mozilla.org/ pour la liste complète.
</p><p>Le dépôt d'intégration pour le développement de Mozilla 2 est <a href="fr/Mozilla-central">mozilla-central</a>. Il contient le code nécessaire pour Firefox et XULRunner, qui sera finalement publié en tant que Mozilla 2.
</p><p>Pour récupérer le code de mozilla-central (un « clone » du dépôt, selon la terminologie de Mercurial) :
</p>
<pre class="eval"># Récupère le code source de Mozilla dans le dossier src/ - prend un certain temps
# car des centaines de mégaoctets d'historique seront téléchargés vers .hg
hg clone http://hg.mozilla.org/mozilla-central/ src

cd src
</pre>
<p><span class="comment">python client.py checkout is deprecated - see bug 417635.  If you get the error message "No module named subprocess", that's because you didn't install Python 2.4 or later.  If you don't run client.py, it won't build. client.py does three things: * Pulls the correct version (by tag) of NSS and NSPR and places them in right locations in your source tree.  This is required to build. * Pulls Tamarin code.  This is not required (and it's only a pull, so it's harmless).  Pass --no-tamarin to client.py to skip this. * Runs a 'hg pull' to pull changes.  This is also not required (in fact, you may prefer to pull manually).  Pass --hg=echo to client.py to skip this.</span>
</p>
<h3 name="Compilation"> Compilation </h3>
<p><a href="fr/Configuration_des_options_de_compilation">Configurez</a> et compilez comme d'habitude avec un fichier <tt>.mozconfig</tt> et <tt>make -f client.mk</tt>.
</p>
<pre class="eval"># Générez vous-même un fichier mozconfig, ou utilisez cette version minimale par défaut
echo '. $topsrcdir/browser/config/mozconfig' &gt; .mozconfig

# configure sera automatiquement généré avec la commande 'autoconf-2.13'.
# Si autoconf-2.13 n'est pas le bon nom pour votre système, comme c'est
# le cas sous OS X avec MacPorts et sous Ubuntu Linux, utilisez le vrai
# nom de la commande comme montré ici. (Note : il s'agit d'"autoconf2.13"
# plutôt que "autoconf213", au moins pour Ubuntu 8.04.)
echo 'mk_add_options AUTOCONF=autoconf213' &gt;&gt; .mozconfig

# À présent, lancement de la compilation ; configure sera lancé automatiquement
make -f client.mk build
</pre>
<h3 name="Voir_.C3.A9galement"> Voir également </h3>
<ul><li> La page <a href="fr/Mercurial">Mercurial</a> fournit des informations sur la création de diffs, l'application de modifications et la publication de dépôts partagés.
</li></ul>
{{ wiki.languages( { "en": "en/Mozilla_Source_Code_(Mercurial)" } ) }}
Revenir à cette révision