Glossary of terms used by the Mozilla build system
This document does not cover auxillary build systems such as the ones used by NSPR, NSS or LDAP.
Makefile variables
BUILD_SHARED_LIBS
| Set By: | configure / autoconf.mk |
| Used By: | rules.mk |
| Purpose: | Tells the build system that we want to build shared libraries by default |
| Other: | Mutually exclusive with BUILD_STATIC_LIBS. |
BUILD_STATIC_LIBS
| Set By: | configure / autoconf.mk |
| Used By: | rules.mk |
| Purpose: | Tells the build system that we want to build static libraries by default |
| Other: | Mutually exclusive with BUILD_SHARED_LIBS. |
EXPORT_LIBRARY
| Set By: | Module build makefiles |
| Used By: | config.mk / rules.mk |
| Purpose: | Specifies that the library should be linked directly against the binaries in a static build. |
| Other: | Static build only. |
EXTRA_DSO_LDOPTS
| Set By: | Module build makefiles |
| Used By: | config.mk / rules.mk |
| Purpose: | Extra libraries and linker flags necessary for building shared components. These flags are not used when statically linking a component (a static build or a meta-component). |
| Other: | Dynamic build only. |
EXTRA_DSO_LIBS
| Set By: | Module build makefiles (altered by rules.mk) |
| Used By: | Module build makefiles |
| Purpose: | This is a convenience variable. It is not used by rules.mk directly, but module makefiles may use it to expand library names and then include this variable in EXTRA_DSO_LDOPTS |
| Other: | Dynamic build only. |
FORCE_SHARED_LIB
| Set By: | Module build makefiles |
| Used By: | config.mk / rules.mk |
| Purpose: | Always build the shared library. |
| Other: | If set, the build system will not build static libraries unless FORCE_STATIC_LIB is also set. |
FORCE_STATIC_LIB
| Set By: | Module build makefiles |
| Used By: | config.mk / rules.mk |
| Purpose: | Always build the static library. |
| Other: | If set, the build system will not build static libraries unless FORCE_SHARED_LIB is also set. |
IS_COMPONENT
| Set By: | Module build makefiles |
| Used By: | config.mk / rules.mk |
| Purpose: | Signifies that the library being built is an XPCOM component. |
| Other: | Used to determine additional compile and link flags as well as the installation location of the library. |
LIBRARY_NAME
| Set By: | Module build makefiles |
| Used By: | rules.mk |
| Purpose: | Contains the basename of the library |
MODULE_NAME
| Set By: | Module build makefiles |
| Used By: | config.mk / rules.mk |
| Purpose: | Contains the name of the xpcom module being built. |
| Other: | Used by static builds to generate list of entry points for xpcom components. Must be the same name used by the NS_GETMODULE xpcom macro. |
MODULE_OPTIMIZE_FLAGS
| Set By: | Makefiles |
| Used By: | config.mk |
| Purpose: | The default optimization level used to build the module. |
| Other: | Is overriden by value passed to --enable-optimize. |
REQUIRES
| Set By: | Makefiles |
| Used By: | config.mk |
| Purpose: | Contains the list of modules that the current module has build dependencies upon. |
| Other: | Used to generate the list of include dirs used during compilation. |
RUN_AUTOCONF_LOCALLY
| Set By: | User env / mozconfig |
| Used By: | client.mk |
| Purpose: | Force the regeneration of configure script after a cvs checkout. |