mozilla

Revision 280623 of Código fuente de Mozilla (Mercurial)

  • Enlace amigable (slug) de la revisión: Código_fuente_de_Mozilla_(Mercurial)
  • Título de la revisión: Código fuente de Mozilla (Mercurial)
  • Id de la revisión: 280623
  • Creada:
  • Creador: RickieesES
  • ¿Es la revisión actual? No
  • Comentario (Autoconf ya funciona en OSX)

Contenido de la revisión

{{wiki.template(':es/Documentación_para_la_compilación/TOC')}}

Mercurial es una herramienta de gestión de código fuente que permite a los usuarios seguir la pista de los cambios hechos al código fuente localmente y compartir sus cambios con otros. El Proyecto Mozilla está migrando del uso de CVS para el desarrollo de Firefox 3/Mozilla 1.9 a Mercurial para el desarrollo de Firefox 4/Mozilla 2.

{{template.Nota("Si quieres colaborar con parches para el desarrollo de Firefox 3, usa <a href=\"es/C%c3%b3digo_fuente_de_Mozilla_(CVS)\">CVS</a>")}}.

Configuración de clientes

Instalar y configurar Mercurial

Revisa Instalar Mercurial.

Autoconf 2.13

Los fuentes de Mozilla 2 no vienen con un script configure generado. Tendrás que tener instalado autoconf versión 2.13.

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

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

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

En otras distribuciones Linux (como por ejemplo openSUSE):
O bien revisa si se proporciona un paquete para esto o bien instálalo manualmente con las siguientes órdenes (la última podría necesitar privilegios de 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

En Windows:
autoconf 2.13 viene con MozillaBuild
Nota: puede que también necesites establecer la variable "AUTOCONF" en tu archivo <tt>.mozconfig</tt>, como se demuestra en la sección "Compilar" más abajo.

Obtener un código fuente

Hay múltiples repositorios hg alojados en mozilla.org, revisa http://hg.mozilla.org/ para la lista completa.

El repositorio de integración para el desarrollo de Mozilla 2 es mozilla-central. Contiene el código necesitado por Firefox y XULRunner, lo que en algún momento se publicará como Mozilla 2.

Para descargar desde mozilla-central ("clonar" el repositorio, usando la terminología de Mercurial ):

# Descarga el código de Mozilla en la carpeta src/ - puede tardar un rato
# ya que se descargan cientos de megabytes de historial a .hg
hg clone http://hg.mozilla.org/mozilla-central/ src

cd src

La descarga con python client.py está desaprobada - revisa el bug 417635. Si obtienes el mensaje de error "No module named subprocess", es porque no has instalado Python 2.4 o posterior. Si no ejecutas client.py, no se compilará. client.py hace tres cosas: * Descarga la versión correcta (por etiqueta (tag)) de NSS y NSPR y los coloca en las ubicaciones correctas de tu árbol de código fuente. Esto es obligatorio para compilar. * Descarga el código de Tamarin. Esto no es necesario (y sólo es una descarga, así que no hace daño). Pasa --no-tamarin a client.py para saltártelo. * Ejecuta 'hg pull' para descargar los cambios. Esto tampoco es necesario (de hecho, puede que prefieras descargarlo manualmente). Pasa --hg=echo a client.py para saltártelo.

Compilar

Configura y compila normalmente usando un archivo <tt>.mozconfig</tt> y <tt>make -f client.mk</tt>.

# Genera tú mismo un mozconfig, o usa éste minimalista por defecto
echo '. $topsrcdir/browser/config/mozconfig' > .mozconfig

# configure se generará automáticamente usando la orden 'autoconf-2.13',
# excepto en OS X donde se usará autoconf213. Si autoconf-2.13 no es el
# nombre correcto para tu sistema, como es el caso en Ubuntu Linux, usa
# el nombre real de la orden como se demuestra debajo.
echo 'mk_add_options AUTOCONF=autoconf2.13' >> .mozconfig

# Ahora haz la compilación; configure se ejecutará automáticamente
make -f client.mk build

Ver también

  • La página de Mercurial tiene información sobre cómo crear diffs, confirmar cambios, y publicar repositorios compartidos.
{{ wiki.languages( { "fr": "fr/Code_source_de_Mozilla_(Mercurial)", "en": "en/Mozilla_Source_Code_(Mercurial)" } ) }}

Fuente de la revisión

<p>{{wiki.template(':es/Documentación_para_la_compilación/TOC')}}
</p><p><a href="es/Mercurial">Mercurial</a> es una herramienta de gestión de código fuente que permite a los usuarios seguir la pista de los cambios hechos al código fuente localmente y compartir sus cambios con otros. El Proyecto Mozilla está migrando del uso de <a href="es/C%c3%b3digo_fuente_de_Mozilla_(CVS)">CVS</a> para el desarrollo de Firefox 3/Mozilla 1.9 a Mercurial para el desarrollo de Firefox 4/Mozilla 2.
</p><p>{{template.Nota("Si quieres colaborar con parches para el desarrollo de Firefox 3, usa &lt;a href=\"es/C%c3%b3digo_fuente_de_Mozilla_(CVS)\"&gt;CVS&lt;/a&gt;")}}.
</p>
<h3 name="Configuraci.C3.B3n_de_clientes"> Configuración de clientes </h3>
<h4 name="Instalar_y_configurar_Mercurial"> Instalar y configurar Mercurial </h4>
<p>Revisa <a href="es/Instalar_Mercurial">Instalar Mercurial</a>.
</p>
<h4 name="Autoconf_2.13"> Autoconf 2.13 </h4>
<p>Los fuentes de Mozilla 2 no vienen con un script configure generado. Tendrás que tener instalado autoconf versión 2.13.
</p><p></p><dl>
<dt>En Mac:
</dt><dd><tt>sudo port install autoconf213</tt>
<p></p></dd><dt>En Fedora/RedHat Linux:
</dt><dd><tt>sudo yum install autoconf213</tt>
<p></p></dd><dt>En Ubuntu Linux:
</dt><dd><tt>sudo apt-get install autoconf2.13</tt>
<p></p></dd><dt>En otras distribuciones Linux (como por ejemplo openSUSE):
</dt><dd>O bien revisa si se proporciona un paquete para esto o bien instálalo manualmente con las siguientes órdenes (la última podría necesitar privilegios de 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>En Windows:
</dt><dd>autoconf 2.13 viene con <a href="es/Requerimientos_para_la_compilaci%c3%b3n_en_Windows#MozillaBuild">MozillaBuild</a>
</dd></dl>
Nota: puede que también necesites establecer la variable "AUTOCONF" en tu archivo <tt>.mozconfig</tt>, como se demuestra en la <a href="#Building">sección "Compilar"</a> más abajo.

<h3 name="Obtener_un_c.C3.B3digo_fuente"> Obtener un código fuente </h3>
<p>Hay múltiples repositorios hg alojados en mozilla.org, revisa http://hg.mozilla.org/ para la lista completa.
</p><p>El repositorio de integración para el desarrollo de Mozilla 2 es <a href="es/Mozilla-central">mozilla-central</a>. Contiene el código necesitado por Firefox y XULRunner, lo que en algún momento se publicará como Mozilla 2.
</p><p>Para descargar desde mozilla-central ("clonar" el repositorio, usando la terminología de Mercurial ):
</p>
<pre class="eval"># Descarga el código de Mozilla en la carpeta src/ - puede tardar un rato
# ya que se descargan cientos de megabytes de historial a .hg
hg clone http://hg.mozilla.org/mozilla-central/ src

cd src
</pre>
<p><span class="comment">La descarga con python client.py está desaprobada - revisa el bug 417635.  Si obtienes el mensaje de error "No module named subprocess", es porque no has instalado Python 2.4 o posterior.  Si no ejecutas client.py, no se compilará. client.py hace tres cosas: * Descarga la versión correcta (por etiqueta (tag)) de NSS y NSPR y los coloca en las ubicaciones correctas de tu árbol de código fuente. Esto es obligatorio para compilar. * Descarga el código de Tamarin. Esto no es necesario (y sólo es una descarga, así que no hace daño). Pasa --no-tamarin a client.py para saltártelo. * Ejecuta 'hg pull' para descargar los cambios. Esto tampoco es necesario (de hecho, puede que prefieras descargarlo manualmente). Pasa --hg=echo a client.py para saltártelo.</span>
</p>
<h3 name="Compilar"> Compilar </h3>
<p><a href="es/Configurar_las_opciones_de_compilaci%c3%b3n">Configura</a> y compila normalmente usando un archivo <tt>.mozconfig</tt> y <tt>make -f client.mk</tt>.
</p>
<pre class="eval"># Genera tú mismo un mozconfig, o usa éste minimalista por defecto
echo '. $topsrcdir/browser/config/mozconfig' &gt; .mozconfig

# configure se generará automáticamente usando la orden 'autoconf-2.13',
# excepto en OS X donde se usará autoconf213. Si autoconf-2.13 no es el
# nombre correcto para tu sistema, como es el caso en Ubuntu Linux, usa
# el nombre real de la orden como se demuestra debajo.
echo 'mk_add_options AUTOCONF=autoconf2.13' &gt;&gt; .mozconfig

# Ahora haz la compilación; configure se ejecutará automáticamente
make -f client.mk build
</pre>
<h3 name="Ver_tambi.C3.A9n"> Ver también </h3>
<ul><li> La página de <a href="es/Mercurial">Mercurial</a> tiene información sobre cómo crear diffs, confirmar cambios, y publicar repositorios compartidos.
</li></ul>
<div class="noinclude">
</div>
{{ wiki.languages( { "fr": "fr/Code_source_de_Mozilla_(Mercurial)", "en": "en/Mozilla_Source_Code_(Mercurial)" } ) }}
Revertir a esta revisión