You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.



Warpzilla Build Instructions Part One - Requirements

This document explains what tools are required to build Warpzilla. We have tried to be as detailed as possible with these instructions. This document is designed for someone creating a build environment from scratch. The build environment works best when all the tools are placed on a single drive. For our examples, we will use D:.

What's New?

  • 2005/03/13: Update to new winico version, latest GCC 3.2.2 CSD pack, new .mozconfig selection of compile target
  • 2004/04/21: New tool requirement - WINICO.EXE
  • 2004/03/24: Updated to GCC 3.2.2 Beta 4. Requires updated version of glibidl.
  • 2003/12/10: Updated sample '.mozconfig' file.
  • 2003/11/12: Added download link to ILINK 5.0.
  • 2003/10/15: Updated to GCC 3.2.2 Beta 3. Requires updated version of glibidl.
  • 2003/09/29: Added FIND.EXE and TAR.EXE.
  • 2003/09/24: Updated to GCC 3.2.2 Beta 2. Use ASH.EXE instead of BASH.EXE, which decreases build time by 3x! Requires updated versions of glibidl and setmozenv.cmd.
  • 2003/09/10: Updated to GCC 3.2.2 Beta 1. Requires updated version of glibidl. Also, updated GNU Make to 3.81rc1.

Download the following packages:

  • EMX Runtime
    Unzip EMXRT.ZIP in the root directory. It will create a directory called EMX.
    Add D:\EMX\DLL to your LIBPATH in CONFIG.SYS.
  • autoconf
    Unzip AUTOCONF.ZIP in the root directory. It will create a directory called AUTOCONF.
  • glib and libidl
    Unzip GLIBIDL.ZIP in the root directory. It will create a directory called GLIBIDL.
  • Perl 5.8.0 (bin & core)
    Unzip both zips in the root directory.  It will create a directory called PERL.
    In the file PERL\LIB\5.8.0\OS2\CONFIG.PM,  find the "archlib"  tag (line 120) and change the drive letter to point to where you have installed PERL.

Note:For the following packages, you only need to extract the files we specify from the ZIPs. We recommend putting all of the following EXEs and DLLs in one directory called MOZTOOLS.

GCC 3.2.2

Download GCC 3.2.2 Beta 4 from the Innotek site and install it. Then download the latest update, GCC 3.2.2 Beta 4 CSD 1, and unpack on top of this installation. Then go into the lib directory and run MakeOmfLibs.cmd. The rest of the instructions assume you installed into the directory D:\GCC322. If you installed elsewhere, you will have to make the appropriate changes.

OS/2 Toolkit

Install the Toolkit that comes with your version of Warp.

Part Two - Build it

Step 1:  Setup the environment using the setmozenv.cmd file. Just run:

  • setmozenv gcc

eComStation users might need to add a line 'SET PROGRAMS=' to setmozenv.cmd to delete this environment variable that interferes with some makefile operation.

Step 2:  Prepare pulling the code:

  • cvs co mozilla/client.mk
  • cd mozilla

Step 3:  Generate the .mozconfig file, which is a file you create in the mozilla directory that specifies options for the build. Some of the more common options are creating an obj directory which separates the source code from the built code or enabling security. To create a .mozconfig file, see the Unix Build Configurator

We strongly recommend that you build with an obj directory

Here is what our typical .mozconfig file look like for a debug build of the Mozilla Suite:

# sh
# Build configuration script
#
# See http://www.mozilla.org/build/unix.html for build instructions.
#

# Options for client.mk.
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj
mk_add_options MOZ_CO_PROJECT=suite

# Options for 'configure' (same as command-line options).
ac_add_options --enable-application=suite
#ac_add_options --disable-tests
#ac_add_options --enable-optimize
#ac_add_options --disable-debug
ac_add_options --enable-crypto
If you want to build Firefox or Thunderbird, take a look at the build options page.

Step 4:  Now pull the code from the CVS repository at mozilla.org:

  • make -f client.mk pull_all

Step 5:  Although the pull_all command above should do this automatically, it is sometimes necessary to delete the three configure files so that they can be properly generated on OS/2. This usually happens when there is a CVS conflict when pulling the code. If you encounter errors during the build, you should first try deleting the configure files before asking for help in netscape.public.mozilla.os2:

  • rm mozilla/configure
  • rm mozilla/nsprpub/configure
  • rm mozilla/directory/c-sdk/configure

These will be regenerated automatically from the corresponding configure.in file when you kick off the build in the next step. To generate them manually, go to each directory and run 'bash autoconf'.

Step 6:  Build the code:

  • make -f client.mk build