<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
<title>OpenOffice.org - Build Environment parameters</title>
</head>
<body>
<H2>Build Environment Parameters</H2>
<P>
The following build environment parameters are in alphabetical order and
not as as they appear in the file that is generated by the
<CODE>configure</CODE>
process. The name of this file depends on the system on which it was generated.
</P>
<P>
Please note the following:
</P>
<ul TYPE=DISC>
<LI>The term <EM>set</EM> means that an environment parameter is set to any
value.</LI>

<LI>The term <EM>not set</EM> means that an environment parameter is blank.</LI>

<LI>For historical reasons the only exception from this rule is the 
variable <CODE>UPDATER</CODE>, which is either set to <CODE>YES</CODE>, or 
is not set.</LI>
</ul>

<P>
The following table lists the environment parameters, and a description
of each parameter. This information is based on the output of the <CODE>configure</CODE>
process for the Linux, Solaris, Windows NT, and Mac OS X environments.
</P>


<table BORDER=0 CELLSPACING=0 CELLPADDING=5>

<tr VALIGN=TOP>
<TH>Build Environment Parameter</TH>

<TH>Description</TH>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>BIG_GOODIES</CODE>
</TD>

<TD>If set, the build process only builds <CODE>libgo<VAR>xxx</VAR></CODE>, where
<VAR>xxx</VAR> signifies the build number.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>BIG_SVX</CODE>
</TD>

<TD>If set, builds the shared libraries or dynamic link libraries as one
library. Using one library may improve performance but this increases the
link time significantly.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>BMP_WRITES_FLAG</CODE>
</TD>

<TD>
Specifies whether the <CODE>bmp</CODE> tool writes a success message to a file when 
the bitmap compiler runs successfully, or whether to use an <CODE>echo</CODE> command in the makefiles 
to write this message. If set, <CODE>bmp</CODE> writes the message to a 
<CODE>.don</CODE> file. By default, this parameter is set.
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>BOTH</CODE>
</TD>

<TD>
If set, links shared libraries (DLLs) in both debug and non-debug
modes on Win32-based platforms. The shared libraries in debug mode are
built with an underscore (_) prefix.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>CLASSPATH</CODE>
</TD>

<TD>This variable is supported by the JDK and JRE. This variable defaults
to the location of the JDK-supported standard <CODE>classes.zip</CODE> file.
This variable is used by the JRE to locate this file or other class files
used by the application. The <CODE>classes.zip</CODE> file is for JDK 1.1 versions
only. This was replaced by <CODE>rt.jar</CODE> runtime jar files for Java SDK
1.2 and higher.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>common_build</CODE>
</TD>

<TD>If set, creates platform independent output, such as resource files,
jar files, and zip files. By default, this parameter is set.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>COMMON_BUILD_TOOLS</CODE>
</TD>

<TD>Used in the <CODE>officecfg</CODE> module. Contains the directory location of the
JAXP-compliant XML parser <CODE>jar</CODE> files. By default, the value of
this parameter is <CODE>$SRC_ROOT/external/common</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>COMMON_OUTDIR</CODE>
</TD>

<TD>
Specifies where to place common files if <CODE>common_build</CODE> is set. 
By default, the value of this parameter is <CODE>COMMON</CODE>. 
No other value is required.
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>COM</CODE>
</TD>

<TD>Specifies the compiler to use in the build process, for example <CODE>gcc</CODE>
on Linux and Mac OS X, <CODE>C50</CODE> on Solaris, or <CODE>MSC</CODE> on Win32.
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>COMEX</CODE>
</TD>

<TD>Specifies the compiler extension value.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>COMPATH</CODE>
</TD>

<TD>Specifies the location of the compiler.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>COMP_ENV</CODE>
</TD>

<TD>This parameter is used on Win32.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>CPU</CODE>
</TD>

<TD>The initial of the CPU name, for example:
<ul TYPE=DISC>
<LI><CODE>I</CODE> for Intel</LI>
<LI><CODE>S</CODE> for Solaris SPARC</LI>
<LI><CODE>P</CODE> for PowerPC</LI>
<LI><CODE>R</CODE> for other RISC architectures</LI>
</ul>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>CPUNAME</CODE>
</TD>

<TD>Full name of the CPU value in uppercase, for example:
<ul TYPE=DISC>
<LI><CODE>INTEL</CODE></LI>
<LI><CODE>SPARC</CODE></LI>
<LI><CODE>POWERPC</CODE></LI>
</ul>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>CVER</CODE>
</TD>

<TD>The compiler version, for example:
<ul TYPE=DISC>
<LI><CODE>C300</CODE> for gcc version 3.0 or better</LI>
<LI><CODE>C50</CODE> on Solaris</LI>
<LI><CODE>C62</CODE> on Tru64</LI>
<LI><CODE>C730</CODE> on Irix when using SGI MIPS compiler</LI>
<LI><CODE>M1200</CODE> on Win32</LI>
</ul>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>CVSROOT</CODE>
</TD>

<TD>CVS is a code version control system. The <CODE>CVSROOT</CODE> defines
the server location of the CVS tree.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>deliver</CODE>
</TD>

<TD>If this parameter is set, <CODE>dmake</CODE> automatically delivers the
project deliverables to the <CODE>solver</CODE> tree.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>DLLSUFFIX</CODE>
</TD>

<TD>Identifies the platform that you build on. This parameter can have
values such as:
<ul TYPE=DISC>
<LI><CODE>li</CODE> for Linux, for example <CODE>libsw568li.so</CODE></LI>
<LI><CODE>ss</CODE> for Solaris for example <CODE>libsw568ss.so</CODE></LI>
<LI><CODE>mi</CODE> for Win32, for example <CODE>libsw568mi.dll</CODE></LI>
<LI><CODE>mxp</CODE> for Mac OS X, for example <CODE>libsw568mxp.dylib</CODE></LI>
</ul>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>DMAKEROOT</CODE>
</TD>

<TD>This parameter is set to the <CODE>$SRC_ROOT/solenv/inc/startup</CODE>
directory.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>DYLD_LIBRARY_PATH</CODE>
</TD>
<TD>The directory locations used on Mac OS X to locate the runtime shared libraries.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>DYNAMIC_CRT</CODE>
</TD>

<TD>
If this parameter is set, the build process uses the dynamic version of the C runtime 
libraries, rather than the static version. This implies a compiler define and a 
different set of libraries used for linking.
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>FRAMEWORKSHOME</CODE>
</TD>

<TD>
Used on Mac OS X only. This is set to the location of the standard system frameworks, 
for example, System.framework, AppKit.framework, and so on.
</TD>
</TR>


<tr VALIGN=TOP>
<TD>
<CODE>ENABLEUNICODE</CODE>
</TD>

<TD>If set, uses the UNICODE character set. It is implemented as a compile
line parameter, and is implemented as <CODE>#ifdef</CODE> in code. By default,
this parameter is set.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>give_me_all_languages</CODE>
</TD>

<TD>If set, the build process builds all resource libraries supported by
the build environment. By default, this parameter is not set.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>GLIBC</CODE>
</TD>

<TD>Identifies the distribution version of Linux. This enables the build
process to identify the location of the GNU C library.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>GUI</CODE>
</TD>

<TD>Specifies the category of operating system that you are building on.
This parameter is set to values such as:
<ul TYPE=DISC>
<LI>
<CODE>UNX</CODE> on Linux, Solaris, and Mac OS X</LI>

<LI>
<CODE>WNT</CODE> on Win32</LI>
</ul>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>GUIBASE</CODE>
</TD>

<TD>This parameter is set to the following values:
<ul TYPE=DISC>
<LI><CODE>unx</CODE> on Linux</LI>
<LI><CODE>unx</CODE> on Solaris</LI>
<LI><CODE>WIN</CODE> on Win32</LI>
<LI><CODE>unx</CODE> or <CODE>aqua</CODE> on Mac OS X</LI>
</ul>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>IENV</CODE>
</TD>

<TD>This parameter is obsolete, and is replaced by <CODE>SOLARINC</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>ILIB</CODE>
</TD>

<TD>
Makefiles use the <CODE>ILIB</CODE> parameter to set the value of <CODE>LIB</CODE>.
This is used on Win32 operating systems only. The <CODE>LIB</CODE> parameter
specifies the location where the Microsoft linker gets libraries from.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>INCLUDE</CODE>
</TD>

<TD>An internal <CODE>dmake</CODE> variable that indicates the include path
search directories used by the compiler. For example, in <CODE>target.mk</CODE>
the <CODE>INCLUDE</CODE> internal <CODE>dmake</CODE> variable contains the environment
variable <CODE>SOLARINC</CODE>, some default locations in the source tree such
as <VAR>module-name</VAR><CODE>/inc</CODE>, and the <CODE>inc</CODE> directory of
the output tree.
<P>This parameter is now obsolete, there is no need to change the values
here.
</P></TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>INPATH</CODE>
</TD>

<TD>The location of the delivered input path.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>JAVAHOME</CODE>
</TD>

<TD>This parameter is set on Win32 platforms to the location of the JDK,
for example <CODE>N:\jdk118</CODE>. <CODE>JAVAHOME</CODE> is only set in the Win32
environment.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>LD_LIBRARY_PATH</CODE>
</TD>

<TD>The directory locations used on Linux and Solaris to locate the runtime
shared libraries.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>LIB</CODE>
</TD>

<TD>Specifies the location where the Microsoft linker gets links from.
This parameter is set to the same value as <CODE>ILIB</CODE>. This is used
on Win32 operating systems only.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>mk_tmp</CODE>
</TD>

<TD>If set, the <CODE>build</CODE> tool builds the directories in <CODE>solar$UPD.lst</CODE>,
and ignores the subdirectories specified in the makefiles. If you use the
<CODE>build</CODE> tool, it may set the <CODE>mk_tmp</CODE> variable. This can
cause the following error while running <CODE>dmake</CODE>:

<PRE>
IGNORE SUBDIRS
</PRE>

<P>For <CODE>dmake</CODE> to run correctly, you must reset the value of <CODE>mk_tmp</CODE>,
as follows in csh shells:</P>

<PRE>
% <KBD>unsetenv mk_tmp</KBD>
</PRE>

<P>Alternatively, on Win32 systems or bourne sh (eg bash), use the following command:</P>

<PRE>
C:\> <KBD>unset mk_tmp</KBD>
</PRE>

</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>MK_UNROLL</CODE>
</TD>

<TD>If set, the <CODE>target.mk</CODE> file includes <CODE>.mk</CODE> files preceded
with an underscore (_). The files preceded with an underscore are an expanded version 
of the makefiles. The following IF statement appears in the <CODE>target.mk</CODE>
file:

<PRE>
IF "$(MK_UNROLL)"!=""
.INCLUDE : _tg_def.mk
.ELSE
.INCLUDE : tg_def.mk
.ENDIF
</PRE>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>MULTITHREAD_OBJ</CODE>
</TD>

<TD>
Builds multithreaded static objects (that is, files in 
<CODE>$(OUT)$/obj</CODE>) when set. 
This parameter is accessed in the <CODE>sal</CODE> and <CODE>osl</CODE> source makefiles. 
By default, this parameter is set. 
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>NO_REC_RES</CODE>
</TD>

<TD>
If set, specifies all language-dependent files not to build resources
recursively. When <CODE>NO_REC_RES</CODE> is set, the build process does not
use <CODE>solarlang</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>NOSOLAR_JAVA</CODE>
</TD>

<TD>This variable is obsolete. Use the <CODE>SOLAR_JAVA</CODE> build environment
variable instead.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>OS</CODE>
</TD>

<TD>Specifies the operating system.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>OUTPATH</CODE>
</TD>

<TD>
Specifies the basename of the output tree created during the build. Typical values for this 
parameter are as follows:
<ul TYPE=DISC>
<LI>
<CODE>unxlngi3</CODE> or <CODE>unxlngi4</CODE> for Linux on Intel with
<CODE>gcc</CODE> compiler. This name uses the values of the
<CODE>GUIBASE</CODE>, <CODE>OS</CODE>, and <CODE>COM</CODE>
variables.</LI>

<LI><CODE>unxsols2</CODE> for Solaris on SPARC.</LI>

<LI><CODE>wntmsci3</CODE> for Win32 on Intel, with Microsoft Compiler.</LI>

<LI><CODE>unxmacxp</CODE> for Mac OS X.</LI> 
</ul>

<P>
The number at the end is used to identify the build environment.
</P>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>PATH</CODE>
</TD>

<TD>The path environment variable.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>PATH_SEPARATOR</CODE>
</TD>

<TD>Separator character used in <CODE>$PATH</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>PERL</CODE>
</TD>

<TD>Set to the location of the Perl executable file, in Win32.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>PROEXT</CODE>
</TD>

<TD>Specifies the extension that is appended to <CODE>OUTPATH</CODE> to create
the name of the output tree. A typical value for this parameter is <CODE>.pro</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>PROFULLSWITCH</CODE>
</TD>

<TD>Specifies to the <CODE>dmake</CODE> and <CODE>build</CODE> tools to build a
product version of StarOffice or OpenOffice.org. This also passes the value of
<CODE>PROSWITCH</CODE>
to the compiler. This is implemented using aliases.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>PROSWITCH</CODE>
</TD>

<TD>Sets all debugging macros to empty. </TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_ARAB</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Arabic.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_CHINSIM</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Chinese Simplified.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_CHINTRAD</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Chinese Traditional.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_DAN</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Danish.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_DTCH</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Dutch.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_ENUS</CODE>
</TD>

<TD>Specifies to create resource files for US English. By default, this
parameter is set.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_FREN</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for French.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_GREEK</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Greek.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_ITAL</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Italian.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_JAPN</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Japanese.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_KOREAN</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Korean.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_POL</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Polish.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_PORT</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Portuguese.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_RUSS</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Russian.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_SPAN</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Spanish.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_SWED</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Swedish.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RES_TURK</CODE>
</TD>

<TD>If this parameter is set, the build process creates resource files
for Turkish.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>RSCRES</CODE>
</TD>

<TD>Specifies the location of the resource files. This is one of the ways
to find binary resources for the <CODE>rsc</CODE> compiler. This is set to
the value of the <CODE>$SRC_ROOT</CODE> variable.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SHELL</CODE>
</TD>

<TD>Points to the location of the shell binary, for example <CODE>csh</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SO3</CODE>
</TD>

<TD>Specifies to add the compile flag option <CODE>-DSO3</CODE> to the compiler.
The <CODE>so3</CODE> module contains the base of the objects and also a bridge
into the Microsoft OLE objects. By default, this parameter is set.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLAR_JAVA</CODE>
</TD>

<TD>Specifies whether JDK supports Solaris. This parameter is for Solaris
only. By default, this parameter is set. This variable replaces the <CODE>NOSOLAR_JAVA</CODE>
environment variable, which is now obsolete.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLAR_PLUGIN</CODE>
</TD>

<TD>Adds the <CODE>-DSOLAR_PLUGIN</CODE> to both the <CODE>CDEFS</CODE> and <CODE>RCSDEFS</CODE>
compile options. By default, this parameter is set.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLAR_UPD</CODE>
</TD>

<TD>This is the same value as <CODE>$UPD</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARDEF</CODE>
</TD>

<TD>Specifies the compiler defines used on Linux and Solaris.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARENV</CODE>
</TD>

<TD>This parameter is set to the following value: <CODE>$SRC_ROOT/solenv</CODE></TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARENVINC</CODE>
</TD>

<TD>This is the same value as <CODE>$SOLARENV/inc</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLAREXTRALIB</CODE>
</TD>

<TD>Specifies by platform the locations used by the linker to locate libraries.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARINC</CODE>
</TD>

<TD>Specifies the location of the compiler include search directory paths.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARINCLUDES</CODE>
</TD>

<TD>Specifies the location of the compiler include search directory paths,
only used on Win32. It includes the Microsoft Visual C include directories.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARLIB</CODE>
</TD>

<TD>Specifies the location of the linker library search directory paths.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARROOT</CODE>
</TD>

<TD>Set to the following value: <CODE>$SRC_ROOT</CODE></TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARSRC</CODE>
</TD>

<TD>Specifies the directory location of the projects directory.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARVER</CODE>
</TD>

<TD>Set to the following value: <CODE>$SRC_ROOT/solver</CODE></TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SOLARVERSION</CODE>
</TD>

<TD>Specifies the root of the output tree. This parameter is set to the
same value as <CODE>SOLARVER</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SRC_ROOT</CODE>
</TD>

<TD>Specifies the top-level directory of the OpenOffice.org CVS tree.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>SSX_PATH</CODE>
</TD>

<TD>Includes the default path on the development machine, so that after
you run the <CODE>setsolar</CODE> tool with different parameters, this contains
the original path.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>STAR_INIROOT</CODE>
</TD>

<TD>This is the same value as <CODE>$SOLARENV/config</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>STAR_INIROOTOLD</CODE>
</TD>

<TD>This is the same value as <CODE>$SOLARENV/config</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>STAR_REGISTRY</CODE>
</TD>

<TD>Specifies the location of the registry database <CODE>applicat.rdb</CODE>.
This is built in the <CODE>api</CODE> module.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>STAR_RESOURCEPATH</CODE>
</TD>

<TD>Specifies the location of the delivered resource files.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>STAR_STANDLST</CODE>
</TD>

<TD>This is the same value as <CODE>$SOLARENV/config/stand.lst</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>STAR_SSCOMON</CODE>
</TD>

<TD>This is the same value as <CODE>$SOLARENV/config/ssolar.cmn</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>STAR_SSOLARINI</CODE>
</TD>

<TD>This is the same value as <CODE>$SOLARENV/config/ssolar.ini</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>TEMP</CODE>
</TD>

<TD>This parameter is set to <CODE>/tmp</CODE> on Linux and Solaris, and should
be set to an existing directory on Win32, usually <CODE>C:\temp</CODE>.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>TF_XXX</CODE>
</TD>

<TD>The build process uses this parameter for parallel integration of new
features into the current build. This allows developers to introduce new
features and set additional macros. If this feature then becomes accepted
into the build then all references to it are deleted after a period of
time.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>TF_PACKAGES</CODE>
</TD>

<TD>This parameter defaults to the <CODE>WORK_STAMP</CODE>, for example SRC569.
If set this adds the <CODE>TF_ONE51</CODE> to the <CODE>CDEFS</CODE>, <CODE>UNOIDLDEFS</CODE>,
and so on.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>TF_UCB</CODE>
</TD>

<TD>This parameter is set for Win32.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>TF_ONE51</CODE>
</TD>

<TD>This parameter defaults to the <CODE>WORK_STAMP</CODE>, for example SRC569.
If set this adds the <CODE>TF_ONE51</CODE> to the <CODE>CDEFS</CODE>, <CODE>UNOIDLDEFS</CODE>,
and so on.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>TF_SDBAPI</CODE>
</TD>

<TD>This parameter is set.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>TMP</CODE>
</TD>

<TD>This parameter is set to <CODE>/tmp</CODE> on Linux and Solaris. On Win32,
set this to an existing directory. You must set both the <CODE>TMP</CODE>
and <CODE>TEMP</CODE> parameters. They point to the same location.
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>UPD</CODE>
</TD>

<TD>This parameter is set to the current release build identifier.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>UPDATER</CODE>
</TD>

<TD>Release engineering use this parameter to activate additional targets.
This parameter forces the recompilation of all static libraries needed
for the build. This parameter is set to <CODE>YES</CODE> when doing an initial
build.
<P>If you download the solver tarball, you do not need to change this parameter.
If you are creating the build tools, you must set this parameter to <CODE>YES</CODE>.
</P>
</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>URD_ONLY</CODE>
</TD>

<TD>Defaults to the <CODE>WORK_STAMP</CODE> value. This parameter is used to
differentiate between different formats generated by the UNO IDL compilers.
URD is the binary format.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>USE_NEWCHARSET</CODE>
</TD>

<TD>Specifies to change to a new character set. Release engineering used
this parameter to introduce new functionality.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>USE_NEW_RSC</CODE>
</TD>

<TD>Specifies to change to a new resource compiler. Release engineering
used this parameter to introduce new functionality.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>USE_NAMESPACE</CODE>
</TD>

<TD>If this parameter is set to TRUE, it supports the use of namespaces
in C++. Release engineering used this parameter to introduce new functionality.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>VCL</CODE>
</TD>

<TD>The build process uses this parameter as a compiler define. Release
engineering used this parameter to introduce new functionality.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>WORK_STAMP</CODE>
</TD>

<TD>The build process inserts this parameter in the CVS source tree to
identify the source that corresponds to a particular build, for example
SRC569.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>XCLASSPATH</CODE>
</TD>

<TD>This parameter is set to the location of the JDK <CODE>classes.zip</CODE>
file. This allows you to have a shorter class path for building class files.</TD>
</TR>

<tr VALIGN=TOP>
<TD>
<CODE>XPVERSION</CODE>
</TD>

<TD>Specifies what version of <CODE>xp</CODE> is used.</TD>
</TR>
</table>
</body>
</html>
