gecko-dev/embedding/config
2002-08-10 07:55:43 +00:00
..
.cvsignore
basebrowser-mac-cfm Turn on MathML in the Mac build, b=155703, r=peterv, sr=sfraser 2002-07-16 23:25:55 +00:00
basebrowser-mac-cfmDebug Turn on MathML in the Mac build, b=155703, r=peterv, sr=sfraser 2002-07-16 23:25:55 +00:00
basebrowser-mac-macho Fix for bug 153622. Remove macxprefs (no longer used) from the build. r=ccarlen, sr=sfraser. 2002-06-25 20:05:48 +00:00
basebrowser-unix bug 156736 - reorganize basebrowser-* to make it easier for embeddors to pick & choose components 2002-07-12 20:33:12 +00:00
basebrowser-win bug 156736 - reorganize basebrowser-* to make it easier for embeddors to pick & choose components 2002-07-12 20:33:12 +00:00
basebrowser-win-supp Remove MozillaControl.html. b=150618 r=chak@netscape.com sr=rpotts@netscape.com 2002-06-20 21:33:59 +00:00
embed-jar.mn Bug 156979 2002-07-26 17:47:16 +00:00
gen_mn.pl
GenerateManifest.pm
gre.pl Fix for #151574 - Add MRE packaging make target to embedding/config 2002-06-18 21:37:05 +00:00
installed-chrome.txt Bug 156979 2002-07-26 22:20:39 +00:00
Makefile.in fix for bug 156577, r=chak. simple change to check for directory existence 2002-07-26 19:31:06 +00:00
mk_sdk_hdr_lst.pl
mre.pl Fix for #151574 - Add MRE packaging make target to embedding/config 2002-06-18 21:37:05 +00:00
readme.html Support client specific manifests. b=154878 r=chak@netscape.com sr=rpotts@netscape.com a=asa@mozilla.org 2002-07-13 15:09:26 +00:00
xulprefs.mn
xulsecurity.mn fix typo, bug 149283. r=tao/sr=alecf/a=valeski. 2002-06-12 18:19:42 +00:00

<html>
  <head>
    <title>Embedding distribution information</title>
  </head>
  <body>
    <h2>Introduction</h2>
    <p>This is the Embedding distribution of <a href="http://www.mozilla.org/">Mozilla</a>. It
    serves as a reference and smoketest distribution to demonstrate a typical
    subset of Mozilla needed to embed it into another application. The
    distribution contains sample applications for testing and development purposes.</p>
    <p>Please note the phrase<i> typical subset</i>! If you want to use a different
    subset then see the <a href="#cust">customizing the embedding distribution</a>
    section below.</p>
    <h2>Where can I find more information about embedding? </h2>
    <p>Mozilla.org - <a href="http://www.mozilla.org/">http://www.mozilla.org/</a>.</p>
    <p>The Embedding project page - <a href="http://www.mozilla.org/projects/embedding/">http://www.mozilla.org/projects/embedding/</a>.
    This page should serve as your main point of information for learning how to
    embed Mozilla in your own applications.</p>
    <p>The Embedding Frequently Asked Questions (FAQ) page - <a href="http://www.mozilla.org/projects/embedding/faq.html">http://www.mozilla.org/projects/embedding/faq.html</a>.&nbsp;</p>
    <p>The Embedding newsgroup - <a href="news:netscape.public.mozilla.embedding">news:netscape.public.mozilla.embedding</a>.</p>
    <p>The Embedding QA page - <a href="http://www.mozilla.org/quality/embed/">http://www.mozilla.org/quality/embed/</a>.</p>
    <p>Instructions for building Mozilla (including Embedding) - <a href="http://www.mozilla.org/build/">http://www.mozilla.org/build/</a>.</p>
    <p>Instructions for fetching Mozilla source code (including Embedding) - <a href="http://www.mozilla.org/source.html">http://www.mozilla.org/source.html</a>.</p>
    <h2>Contents </h2>
    <p>The distribution contains, libraries, resources and chrome. All of this
    is a subset of Mozilla, repackaged for embedding. The layout follows the
    usual Mozilla directory, i.e. </p>
    <ul>
      <li>./ - Test applications, launch scripts and core libraries (xpcom, nspr
        etc.)</li>
      <li>./components/ - XPCOM components (network, graphics, layout, content,
        etc.).</li>
      <li>./chrome/ - chrome files. In embedding most of the chrome has been
        re-packaged into a single embed.jar file to make it more manageable.</li>
      <li>./res/ - miscellaneous rendering and parser files.</li>
      <li>./defaults/ - default preference settings</li>
    </ul>
    <h3>Unix</h3>
    <h4>TestGtkEmbed</h4>
    <p>A simple browser application built using the GTK+ Browser Widget.</p>
    <h4>GTK+ Browser Widget</h4>
    <p>A GTK+ widget for embedding Mozilla into GTK+/GNOME applications such as <a href="http://galeon.sourceforge.net/">Galeon</a>.
    More information about the widget may be found here <a href="http://www.mozilla.org/unix/gtk-embedding.html">http://www.mozilla.org/unix/gtk-embedding.html</a>. </p>
    <h3>Windows</h3>
    <h4>MFCEmbed</h4>
    <p>A complete browser application written in MFC and the Gecko embedding APIs.
    This application demonstrates and exercises the functionality necessary to
    put together a fully featured browser using Gecko.</p>
    <h4>Mozilla ActiveX Control</h4>
    <p>An ActiveX browser control built with the embedding APIs. You may use the
    control to embed a browser inside applications
    written in VB, Delphi etc. More information about the control including
    installation instructions may be found at <a href="http://www.iol.ie/~locka/mozilla/mozilla.htm">http://www.iol.ie/~locka/mozilla/mozilla.htm</a>.
    </p>
    <h3>Macintosh </h3>
    <p>There is no Macintosh distribution at present, though an embedding test application PPEmbed is built as part of a standard Mac build. Work on <a href="http://www.mozilla.org/ports/fizzilla/Mach.html">Fizilla
    Mach</a> may also yield a Mac embedding distribution in the future. </p>
    <h2>Installation and Usage </h2>
    <h3>Unix</h3>
    <ol>
      <li>Untar the embedding distribution into an empty directory of your
        choice.</li>
      <li>From the command-line, cd into the directory and type
        './run-mozilla.sh ./TestGtkEmbed'</li>
    </ol>
    <h3>Windows </h3>
    <ol>
      <li>Unzip the embedding distribution into an empty directory of your
        choice.</li>
      <li>Double-click on mfcembed.exe</li>
    </ol>
    <h2><a name="cust">Customizing the embedding distribution</a></h2>
    <p>The embedding distribution is produced by first building the full Mozilla
    source and cherry picking files and chrome into a separate embedding directory.
    Basically the steps are:</p>
    <ol>
      <li>Build Mozilla as usual</li>
      <li>cd mozilla/embedding/config</li>
      <li>make</li>
    </ol>
    <p>The embedding distribution will appear in mozilla/dist/Embed.</p>
    <p>The build process works by reading a file called basebrowser-win (or
    basebrowser-unix, basebrowser-mac-macho etc.) and copying the listed files from
    mozilla/dist/bin into mozilla/dist/Embed. It then reads a file called embed-jar.mn
    and repackages the specified chrome files and directories into a single
    embed.jar.</p>
    <p>The build process also also looks for a file called client-win (or client-unix,
    client-mac-macho etc.) and if present copies from there as well. This file
    allows embedders to specify files to be added or removed from the default
    embedding distribution. </p>
    <p>For example if you wanted a distribution containing character converters for
    various character sets, but not the ActiveX control you might define a
    client-win like this:</p>
    <pre>[Embed]
components\ucvja.dll
components\ucvko.dll
components\ucvcn.dll
components\ucvtw.dll
components\ucvtw2.dll
components\ucvibm.dll
-mozctl.dll
-mozctlx.dll</pre>
    <p>When the build process is run, the files from embed-win will be copied first
    and then those in client-win. Minus signs in front of filenames delete the
    files, so the previous example would delete mozctl.dll and mozctlx.dll.</p>
  </body>
</html>