diff options
Diffstat (limited to 'documentation/develop.en')
-rw-r--r-- | documentation/develop.en | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/documentation/develop.en b/documentation/develop.en new file mode 100644 index 0000000..9406e3b --- /dev/null +++ b/documentation/develop.en @@ -0,0 +1,150 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" + "http://www.w3.org/TR/html4/strict.dtd"> +<html> +<head> +<title>NetSurf | Developer Documentation</title> +<link rel="stylesheet" type="text/css" href="/netsurf.css"> +<link rel="icon" type="image/png" href="/webimages/favicon.png"> +</head> + +<body> +<p class="banner"><a href="/"><img src="/netsurf.png" alt="NetSurf"></a></p> + +<div class="navigation"> +<div class="navsection"> +<ul> +<li><a href="/about/">About NetSurf</a></li> +<li><a href="/downloads/">Downloads</a></li> +<li><a href="/documentation/">Documentation</a> +<ul> +<li><a href="/documentation/info">User info</a></li> +<li><a href="/documentation/guide">User guide</a></li> +<li><a href="/documentation/progress">Project progress</a></li> +<li><a href="/documentation/develop">Developer info</a></li> +</ul> +</li> +<li><a href="/developers/">Development area</a></li> +<li><a href="/webmasters/">Webmaster area</a></li> +<li><a href="/contact/">Contact</a></li> +</ul> +</div> + +<div class="navsection"> +<ul class="languages"> +<!--<li><a href="index.de">Deutsch</a></li>--> +<li>English</li> +<!--<li><a href="index.fr">Français</a></li>--> +<!--<li><a href="index.nl">Nederlands</a></li>--> +</ul> +</div> + +<div class="navsection"> +<ul class="sitelinks"> +<li><a href="http://wiki.netsurf-browser.org/">Development wiki</a></li> +<li><a href="http://source.netsurf-browser.org/">SVN repository viewer</a></li> +</ul> +</div> + +</div> + +<div class="content"> + +<p class="breadcrumbs"><a href="/">Home</a> » <a href="/documentation/">Documentation</a> » Developer information</p> + +<h1>Developer Information</h1> + +<p>This document contains various information for developers or anyone interested in contributing to NetSurf.</p> + +<ul> +<li><a href="develop#Subversion">Source control</a></li> +<li><a href="develop#Compiling">Compiling</a></li> +<li><a href="develop#SourceDocumentation">Source documentation</a></li> +<li><a href="develop#Communication">Communication</a></li> +<li><a href="develop#Translations">Translations</a></li> +</ul> + +<p class="updated">Last updated 11 November 2007</p> + +<h2 id="Subversion">Source control</h2> + +<p>The source is kept in a Subversion repository. To check the source out use the command:</p> + +<p><code>$ <strong>svn checkout svn://svn.netsurf-browser.org/trunk/netsurf</strong></code></p> + +<p>You can also browse the source via the <a href="http://source.netsurf-browser.org/trunk/netsurf/">web interface</a>.</p> + +<p>Recent changes can be seen on the <a href="/developers/">development page</a>. An an <a href="http://cia.navi.cx/stats/project/NetSurf/.rss">RSS feed</a> of recent changes is also provided by <a href="http://cia.navi.cx/stats/project/NetSurf/">CIA</a>. All checkins are reported on the <a href="/contact/#MailingLists">Commits mailing list</a>.</p> + +<p>Contact <a href="mailto:james@semichrome.net">James</a> to get write access to the SVN repository.</p> + + +<h2 id="Compiling">Compiling</h2> + +<p>The recommended compiler is GCC. A guide to <a href="robuild">building NetSurf on RISC OS</a> is available, as are instructions for <a href="http://source.netsurf-browser.org/*checkout*/trunk/netsurf/Docs/BUILDING-GTK">building the GTK version</a>. NetSurf can also be cross-compiled for RISC OS using <a href="http://gccsdk.riscos.info/">GCCSDK</a>.</p> + +<p>The <a href="http://www.netsurf-browser.org/downloads/riscos/testbuilds">autobuilder</a> compiles NetSurf every 15 minutes if changes have been checked into SVN.</p> + +<p>A debug version of NetSurf can be built. This is command-line only and does not include any GUI code. It runs natively on Linux so can be debugged and checked using gdb, efence, valgrind, etc.</p> + +<h3>Dependencies</h3> + +<p>In addition to the compiler, NetSurf requires a number of additional tools to be available. These are enumerated below. Additionally, the libraries which NetSurf uses are also listed</p> + +<h4>Tools</h4> +<ul> +<li>Lemon parser generator (<a href="http://www.hwaci.com/sw/lemon/">http://www.hwaci.com/sw/lemon/</a>)</li> +<li>re2c lexer (<a href="http://re2c.org/">http://re2c.org/</a>)</li> +</ul> + +<h4>Libraries</h4> +<ul> +<li>cAres & cURL (<a href="http://curl.haxx.se/libcurl/">http://curl.haxx.se/libcurl/</a>)</li> +<li>IJG JPEG library (<a href="http://www.ijg.org/">http://www.ijg.org/</a>)</li> +<li>MNG decoding library (<a href="http://www.libmng.com/">http://www.libmng.com/</a>)</li> +<li>OpenSSL (<a href="http://www.openssl.org/">http://www.openssl.org/</a>)</li> +<li>libXML 2 (<a href="http://www.xmlsoft.org/">http://www.xmlsoft.org/</a>)</li> +<li>Zlib (<a href="http://www.zlib.org/">http://www.zlib.org</a>)</li> +</ul> + +<h5>RISC OS specific libraries</h5> +<ul> +<li>OSLib 6.80 or later (<a href="http://ro-oslib.sourceforge.net/">http://ro-oslib.sourceforge.net/</a>)</li> +<li>Pencil (<a href="http://source.netsurf-browser.org/trunk/pencil/">http://source.netsurf-browser.org/trunk/pencil/</a>)</li> +<li>RUfl (<a href="http://zamez.org/rufl">http://zamez.org/rufl</a>)</li> +</ul> + + +<h2 id="SourceDocumentation">Source documentation</h2> + +<p>See the <a href="http://source.netsurf-browser.org/trunk/netsurf/Docs/">Docs</a> directory for source code documentation. Our pictorial <a href="/developers/StyleGuide.pdf">Style Guide</a> (single-page PDF) shows our code style.</p> + + +<h2 id="Communication">Communication</h2> + +<p>The main method of communication between the developers is the <a href="/contact/#IRCChannel"><code>#netsurf</code> <abbr title="Internet Relay Chat">IRC</abbr> channel</a>.</p> + +<p>The <a href="/contact/#MailingLists">developers' mailing list</a> is also used for less transient communication.</p> + + +<h2 id="Translations">Translations</h2> + +<p>Translations of NetSurf to other languages are welcome. No programming knowledge is required, just the ability to use a template editor and a text editor. Please see the <a href="translations">translations page</a> for more information.</p> + + +<div class="footer"> +<p>Copyright 2003 - 2009 The NetSurf Developers</p> +</div> + +</div> + + +<form method="get" action="http://www.google.co.uk/search"> +<div class="searchbox"> +<input type="hidden" name="q" value="site:netsurf-browser.org"> +<input type="text" name="q" maxlength="255"><br> +<input type="submit" value="Search" name="btnG"> +</div> +</form> + +</body> +</html> |