|
@@ -22,6 +22,11 @@ If you want to help, you can find some resources here.
|
|
|
|
|
|
<ul class="toc">
|
|
|
<li><a href="#development">Code Development</a></li>
|
|
|
+ <ul>
|
|
|
+ <li><a href="#prerequisites">Build Prerequisites
|
|
|
+ <li><a href="#source">Get the Source Code</a></li>
|
|
|
+ <li><a href="#building">Building SeaMonkey</a></li>
|
|
|
+ </ul>
|
|
|
<li><a href="#l10n">Localization</a></li>
|
|
|
<li><a href="#testing">Testing</a></li>
|
|
|
<li><a href="#marketing">Marketing And Other Contributions</a></li>
|
|
@@ -43,10 +48,8 @@ Even though we are independent from
|
|
|
<a href="http://www.mozilla.org/">Mozilla</a>, as we're based on the same
|
|
|
framework as Firefox, most of the
|
|
|
<a href="https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide">mozilla.org developer pages</a>
|
|
|
-also apply to SeaMonkey, there's also content there that explains
|
|
|
-<a href="https://developer.mozilla.org/En/Developer_Guide/Source_Code/Getting_comm-central">how
|
|
|
-to get the comm-central source code</a>, which includes the current SeaMonkey
|
|
|
-development code.
|
|
|
+also apply to SeaMonkey. You will need to read the <a href="#source">source
|
|
|
+code</a> section for information on how to download all the relevant code.
|
|
|
</p>
|
|
|
|
|
|
<p>
|
|
@@ -75,6 +78,129 @@ tree status</a> 24 hours a day.
|
|
|
</p>
|
|
|
-->
|
|
|
|
|
|
+<h3 id="prerequisites">Build Prerequisites</h3>
|
|
|
+<p>
|
|
|
+You will need to complete the relevant instructions for preparing your OS for
|
|
|
+building SeaMonkey.
|
|
|
+</p>
|
|
|
+<ul>
|
|
|
+<li>Windows Build Prerequisites</li>
|
|
|
+<li>Linux Build Prerequisites</li>
|
|
|
+The following packages are required:<br>
|
|
|
+autoconf-2.13, python-2.7.18, nasm-2.15.x, rustc-1.47.0 (or 1.38.0 for 2.57), unzip-6.0 and zip-3.0<br><br>
|
|
|
+The following development packages are required:<br>
|
|
|
+alsa-lib, dbus-glib, GConf2, gtk+-2.24.x, gtk+-3.24.x, libXt, pulseaudio-libs and yasm-1.3.0<br><br>
|
|
|
+<li>macOS Build Prerequisites</li>
|
|
|
+</ul>
|
|
|
+
|
|
|
+<h3 id="source">Getting the Source Code</h3>
|
|
|
+<p>There are currently three branches being worked on:</p>
|
|
|
+<ul>
|
|
|
+<li><a href="#stable">2.53.x</a></li>
|
|
|
+<li><a href="#future">2.57</a></li>
|
|
|
+<li><a href="#central">Central</a></li>
|
|
|
+</ul>
|
|
|
+<h4 id="stable">2.53.x Branch</h4>
|
|
|
+<p>
|
|
|
+2.53.x is considered to be the stable branch, Betas and Releases come from
|
|
|
+here. Anything that lands on this branch, either has to be a stability/security
|
|
|
+fix or a backport from one of the other branches. Any new features need to have
|
|
|
+landed on the other two branches.
|
|
|
+</p>
|
|
|
+<p>
|
|
|
+The latest version of the released code can be downloaded using the following
|
|
|
+commands:
|
|
|
+</p>
|
|
|
+<pre><code>
|
|
|
+ git clone https://gitlab.com/seamonkey-project/seamonkey-2.53-mozilla.git mozilla-253
|
|
|
+ cd mozilla-253
|
|
|
+ git clone https://gitlab.com/seamonkey-project/seamonkey-2.53-comm.git comm
|
|
|
+ cd extensions
|
|
|
+ hg clone https://hg.mozilla.org/chatzilla irc
|
|
|
+ hg clone https://hg.mozilla.org/dom-inspector inspector
|
|
|
+</code></pre>
|
|
|
+
|
|
|
+<h4 id="future">2.57 Branch</h4>
|
|
|
+<p>
|
|
|
+2.57 is potentially the next major release. Any new features need to land on
|
|
|
+this branch and not break building or running of SeaMonkey.
|
|
|
+</p>
|
|
|
+<p>
|
|
|
+The latest version of the code from this branch can be downloaded using the
|
|
|
+following commands:
|
|
|
+</p>
|
|
|
+<pre><code>
|
|
|
+ hg clone https://hg.mozilla.org/releases/mozilla-esr60/ mozilla-esr60
|
|
|
+ cd mozilla-esr60
|
|
|
+ hg clone https://hg.mozilla.org/releases/comm-esr60/ comm
|
|
|
+ cd extensions
|
|
|
+ hg clone https://hg.mozilla.org/chatzilla irc
|
|
|
+ hg clone https://hg.mozilla.org/dom-inspector inspector
|
|
|
+</code></pre>
|
|
|
+
|
|
|
+<h4 id="central">Central Branch</h4>
|
|
|
+<p>
|
|
|
+Central is the very latest code. There is frequent build bustage here from
|
|
|
+linked code but we try to keep it building. Work is ongoing to have the built
|
|
|
+code running but needs lots of work. Any new features need to land on this
|
|
|
+branch and not break building.
|
|
|
+</p>
|
|
|
+<p>
|
|
|
+The latest version of the code for the central branch can be downloaded using
|
|
|
+the following commands:
|
|
|
+</p>
|
|
|
+<pre><code>
|
|
|
+ hg clone https://hg.mozilla.org/mozilla-central/ mozilla-central
|
|
|
+ cd mozilla-central
|
|
|
+ hg clone https://hg.mozilla.org/comm-central/ comm
|
|
|
+ cd extensions
|
|
|
+ hg clone https://hg.mozilla.org/chatzilla irc
|
|
|
+ hg clone https://hg.mozilla.org/dom-inspector inspector
|
|
|
+</code></pre>
|
|
|
+
|
|
|
+<h3 id="building">Building SeaMonkey</h3>
|
|
|
+<p>
|
|
|
+Once you have downloaded the source code, you can move onto building SeaMonkey. You will need to create a basic .mozconfig file in the root of your source code
|
|
|
+(e.g. in mozilla-253).
|
|
|
+</p>
|
|
|
+<pre><code>
|
|
|
+export CC=clang
|
|
|
+export CXX=clang++
|
|
|
+ac_add_options --enable-application=comm/suite
|
|
|
+ac_add_options --enable-calendar
|
|
|
+ac_add_options --enable-irc
|
|
|
+ac_add_options --enable-dominspector
|
|
|
+mk_add_options MOZ_OBJDIR=/path/to/objdir-sm253
|
|
|
+ac_add_options --enable-optimize
|
|
|
+ac_add_options --enable-js-shell
|
|
|
+ac_add_options --enable-elf-hack
|
|
|
+ac_add_options --disable-debug-symbols
|
|
|
+ac_add_options --disable-tests
|
|
|
+
|
|
|
+# Disable checking that add-ons are signed by the trusted root
|
|
|
+MOZ_ADDON_SIGNING=0
|
|
|
+# Disable enforcing that add-ons are signed by the trusted root
|
|
|
+MOZ_REQUIRE_SIGNING=0
|
|
|
+
|
|
|
+# Package js shell
|
|
|
+export MOZ_PACKAGE_JSSHELL=1
|
|
|
+</code></pre>
|
|
|
+<p>
|
|
|
+On the Linux platform you can also make use of ccache by adding to your
|
|
|
+.mozconfig file:
|
|
|
+</p>
|
|
|
+<pre><code>
|
|
|
+# Use ccache
|
|
|
+ac_add_options --with-ccache=/usr/bin/ccache
|
|
|
+</code></pre>
|
|
|
+<p>
|
|
|
+The build can then be started by typing the following command in the root of
|
|
|
+your source code:
|
|
|
+</p>
|
|
|
+<pre><code>
|
|
|
+./mach build
|
|
|
+</code></pre>
|
|
|
+
|
|
|
<h2 id="l10n">Localization</h2>
|
|
|
|
|
|
<p>
|