The Mozilla
Organization
Our Mission
Who We Are
Getting Involved
Community
Editorials
What's New
Development
Roadmap
Module Owners
Blue Sky
Projects
Status
Tools
Products
Source Code
Binaries
Documentation
License Terms
Bug Reports
Search
Feedback


Autoconf for Classic Mozilla
Last updated: 1998/11/13

Classic Mozilla Source is Obsolete

The classic Mozilla source has been obsoleted. The recommended way of building Mozilla is to use the next generation layout engine. The autoconf build instructions for the new source tree is available here. These instructions are provided mainly as a convenience for those who want something that actually renders a page.

See the AUTOCONF_1_0 branch for the list of initial changes.

News

1998/08/19, autoconf support is in the main Mozilla CVS tree.
1998/09/04, the release tarballs include autoconf support.
1998/09/09, NSPR is no longer built with autoconf. Currently, there is a kludge to make it use the old build system.
1998/09/10, there is a MozillaAutoconf Tinderbox. Use it to find out the build state of the tree and who is responsible for it breaking.
1998/09/25, --enable-nspr has been removed. Both QTFE and GNOMEFE are in the main cvs tree and have autoconf support.
1998/10/02, NSPR build kludge has been removed. You must build NSPR separately to use autoconf.
1998/10/05, the MozillaAutoconf tinderbox is more or less defunct. The builds have moved to the Mozilla-External tinderbox.
1998/10/19, some major autoconf interface changes were preannounced.
1998/10/23, the following changes have been applied:
System jpeg & png libraries are used if they are more recent
System zlib library is used by default
Separate variables where added for jpeg, png, zlib & X libs and includes.
1998/10/25, changed --enable-pthreads to --with-pthreads.
1998/10/26, classic Mozilla source moved to MozillaSourceClassic_19981026_BRANCH branch.

Notes:

You will need autoconf 2.12 (which requires GNU m4) or higher to use autoconf with mozilla.
If building under UnixWare, you will need to specify the location of the X headers and libs via --x-includes=/usr/X/include and --x-libraries=/usr/X/lib as autoconf apparently does not check these automatically.

Misc files:

  • patch for pngconf.h Fixes problem with linux and <setjmp.h> in png 1.0.2.

    Building in the srcdir is disallowed as it causes problems if you want to later build in a subdir for a different configuration. You should create a subdirectory, obj-`./config.guess`. This is where you should actually run the build. From this directory, run ../configure.

    Building

    You do NOT need to set the old build's environment variables when using autoconf. In fact, you should unset them to avoid running into problems.

    To build the classic Mozilla source:

    First you will need a local copy of the source tree via

    cvs -z3 -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot \
        co -r MozillaSourceClassic_19981026_BRANCH MozillaSource 
    cd mozilla
    
    or
    tar -xvBpzf ~/mozilla-19980904.tar.gz
    cd mozilla
    

    If NSPR is not already installed on your system, you need to install NSPR. Unfortunately, there is no clean way to do this. Here is an example of the commands used to install NSPR: (YMMV)

    gmake -C nsprpub DIST=/usr/local/nspr NSDISTMODE=copy NS_USE_GCC=1 \
        MOZILLA_CLIENT=1 NO_MDUPDATE=1 NS_USE_NATIVE= USE_PTHREADS= export
    
    If you are installing the NSPR shared libs (on by default), make sure that you add the location of the shared libs to your LD_LIBRARY_PATH before running configure.

    Then you need to build autoconf and tell it where to find NSPR if it is not installed in a standard place.

    autoconf
    mkdir obj-`./build/autoconf/config.guess`
    cd obj-`./build/autoconf/config.guess`
    ../configure --with-nspr=/usr/local/nspr
    gmake depend
    gmake
    

    Options

    Each --with option has a corresponding --without option and vice-versa.
    Each --enable option has a corresponding --disable option and vice-versa.
    The following mozilla options supported by configure:

    --with-jpeg=DIR Look for JPEG headers and libraries under DIR
    --with-png=DIR Look for PNG headers and libraries under DIR
    --with-zlib=DIR Look for ZLIB headers and libraries under DIR
    --with-nspr=DIR Look for NSPR headers and libraries under DIR
    --with-pthreads Use native pthreads support with NSPR
    --enable-fe=FE1,FE2 Use the FE frontends and check dependencies
    --enable-homedir=val Set mozilla user dir to val
    --enable-min-shared Enable use of minimal internal dynamic libs
    --enable-crypto Enable use of SSL for https (untested)
    --enable-netcast Enable use of netcast (untested)
    --enable-java Enable java support (untested)
    --enable-oji Enable use of Open JVM Interface
    --enable-debug Add mozilla debug options to CFLAGS
    --enable-profile Enable mozilla profiling (Solaris only)
    --enable-mailnews Enable mail & news features (broken)
    --enable-editor Enable composer
    --enable-dom Enable Level-1 Document Object Model support
    --enable-mail-compose Enable old Messenger mail composer
    --enable-tests Enable test stubs
    --enable-ldap Enable LDAP support
    --disable-asserts Disable error asserts during debugging
    --disable-async-dns Disable separate dns thread
    --disable-shared Disable building of internal shared libs
    --disable-static Disable building of internal static libs (broken)



  • Copyright © 1998 The Mozilla Organization.