Visit Mozilla.org

NSPR build instructions

From MDC

Contents

[edit] Prerequisites

On Windows, the NSPR build system needs GNU make and a Unix command-line utility suite such as MKS Toolkit, Cygwin, and MSYS. The easiest way to get these tools is to install the MozillaBuild package.

[edit] Introduction

The top level of the NSPR source tree is the mozilla/nsprpub directory. Although nsprpub is a subdirectory under mozilla, NSPR is independent of the Mozilla client source tree.

NSPR build consists of three steps:

  1. run the configure script. You may override the compilers (the CC environment variable) or specify options.
  2. build the libraries
  3. build the test programs

For example,

 # check out the source tree from CVS
 cvs -q -d :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co -r NSPR_4_6_8_RTM mozilla/nsprpub
 # create a build directory
 mkdir target.debug
 cd target.debug
 # run the configure script
 ../mozilla/nsprpub/configure [optional configure options]
 # build the libraries
 gmake
 # build the test programs
 cd pr/tests
 gmake

On Mac OS X, use make, which is GNU make.

[edit] Configure options

Although NSPR uses autoconf, its configure script has two default values that are different from most open source projects.

  1. If the OS vendor provides a compiler (for example, Sun and HP), NSPR uses that compiler instead of GCC by default.
  2. NSPR build generates a debug build by default.

[edit] --disable-debug --enable-optimize

Specify these two options to generate an optimized (release) build.

These two options can actually be used independently, but it's not recommended.

[edit] --enable-64bit

On a dual 32-bit/64-bit platform, NSPR build generates a 32-bit build by default. To generate a 64-bit build, specify the --enable-64bit configure option.

[edit] --enable-win32-target=WIN95

This option is only used on Windows. NSPR build generates a "WINNT" configuration by default on Windows for historical reasons. We recommend most applications use the "WIN95" configuration. The "WIN95" configuration supports all versions of Windows. The "WIN95" name is historical; it should have been named "WIN32".

To generate a "WIN95" configuration, specify the --enable-win32-target=WIN95 configure option.

[edit] --enable-debug-rtl

This option is only used on Windows. NSPR debug build uses the release C run-time library by default. To generate a debug build that uses the debug C run-time library, specify the --enable-debug-rtl configure option.

[edit] Makefile targets

  • all (default)
  • clean
  • realclean
  • distclean
  • install
  • release

[edit] Running the test programs

The tests were built above, in the pr/tests directory.

On Mac OS X, they can be executed with the following:

 /bin/sh:

 $ cd pr/tests
 $ DYLD_LIBRARY_PATH=../../dist/lib ./accept
 PASS
 $
 $ # to run all the NSPR tests...
 $
 $ DYLD_LIBRARY_PATH=../../dist/lib ../../../mozilla/nsprpub/pr/tests/runtests.sh