This file is indexed.

/usr/share/mozart/doc/install/node12.html is in mozart-doc 1.4.0-8ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

1
2
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>7 Configuration Options</TITLE><LINK href="ozdoc.css" rel="stylesheet" type="text/css"></HEAD><BODY><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node6.html#chapter.src.cygwin">&lt;&lt; Prev</A></TD><TD><A href="index.html">- Up -</A></TD><TD><A href="node13.html#appendix.emacsunix">Next &gt;&gt;</A></TD></TR></TABLE><DIV id="chapter.src.configure"><H1><A name="chapter.src.configure">7 Configuration Options</A></H1><P>The <CODE>configure</CODE> script can be parametrized by (1) a site configuration file that provides values for certain shell variables, (2) by command line options which may override these values. We recommend that you create a site configuration file for Mozart since this is much easier than to remember what options to supply on the command line. For example create the file <CODE>~/mozart.config</CODE> and set the environment variable <CODE>CONFIG_SITE</CODE> prior to invoking the configure script: </P><BLOCKQUOTE class="code"><CODE>setenv&nbsp;CONFIG_SITE&nbsp;~/mozart.config</CODE></BLOCKQUOTE><P> Below, we always describe command line options and related configuration variables together. They are always displayed with their default value or implied setting. Other possible values are described in the text. If a default option is <CODE>--enable-foo</CODE> then you can supply <CODE>--disable-foo</CODE> to turn it off (and reciprocally). If the default value for a configuration variable <CODE>oz_enable_foo</CODE> is <CODE>yes</CODE>, then you can set it to <CODE>no</CODE> to turn it off.</P><H2><A name="label12">7.1 General Parameters</A></H2><P></P><DL><DT class="option"><CODE>--prefix=/usr/local/oz</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">prefix</SPAN>=/usr/local/oz</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>You can change the default installation directory to e.&nbsp;g. <CODE>~/mozart-install</CODE> using <CODE>--prefix=$<SPAN class="variablename">HOME</SPAN>/mozart-install</CODE> or <CODE><SPAN class="variablename">prefix</SPAN>=$<SPAN class="variablename">HOME</SPAN>/mozart-install</CODE>. The installation directory can also be overriden when invoking <CODE>make&nbsp;install</CODE> by supplying an overriding setting for the make variable <CODE>PREFIX</CODE> on the command line: </P><BLOCKQUOTE class="code"><CODE>%&nbsp;make&nbsp;install&nbsp;<SPAN class="variablename">PREFIX</SPAN>=$<SPAN class="variablename">HOME</SPAN>/mozart-install</CODE></BLOCKQUOTE><P></P></DD><DT class="option"><CODE>--with-inc-dir=</CODE><I>d1</I><CODE>,...,</CODE><I>dn</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_with_inc_dir</SPAN>=</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>When you configure and attempt to build the Mozart system, you may discover that some library or package is missing, or that the installed version is too old, or that it happens to be installed in a very strange place. In this case, it may be convenient to install up to date versions of such libraries and packages in a location of your own choosing. For example, if you configure and build a missing package using <CODE>--prefix=$<SPAN class="variablename">HOME</SPAN></CODE>, it will normally install its include files into <CODE>$<SPAN class="variablename">HOME</SPAN>/include</CODE> and its libraries into <CODE>$<SPAN class="variablename">HOME</SPAN>/lib</CODE>. In that case, when you configure Mozart, you could supply the argument: </P><BLOCKQUOTE class="code"><CODE>--with-inc-dir=$<SPAN class="variablename">HOME</SPAN>/include</CODE></BLOCKQUOTE><P> to indicate where to look first find additional include files. There are also specific options for specific packages, and they are documented later, but our experience is that putting everything in one <EM>extra</EM> location is much more convenient.</P></DD><DT class="option"><CODE>--with-lib-dir=</CODE><I>d1</I><CODE>,...,</CODE><I>dn</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_with_lib_dir</SPAN>=</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Similar to the above, but for libraries.</P></DD></DL><P></P><DIV id="contrib"><H2><A name="contrib">7.2 Contributions</A></H2><P>The ``contributions'' are not an intrinsic part of the Mozart distribution. Often they require that you install additional packages: for example the <CODE>gdbm</CODE> contribution requires that you install the gdbm package. Some have not yet been ported to Windows. </P><DL><DT class="option"><CODE>--enable-contrib</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_contrib</SPAN>=contrib</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>By default, the contributions are configured and built. You can completely omit them using <CODE>--disable-contrib</CODE> or <CODE><SPAN class="variablename">oz_enable_contrib</SPAN>=</CODE></P></DD><DT class="option"><CODE>--enable-contrib-CONTRIB</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Contributions can be enabled/disabled individually. For example, to enable (or disable) the micq contribution (a Mozart Instant Messenger) you can specify <CODE>--enable-contrib-micq</CODE> (or <CODE>--disable-contrib-micq</CODE>).</P></DD></DL><P></P></DIV><H2><A name="label13">7.3 Documentation</A></H2><P>Processing the documentation requires the contributions (<A href="node12.html#contrib">Section&nbsp;7.2</A>). Also you need additional packages such as LaTeX, netpbm, ghostscript, and a very recent version of nsgmls. </P><DL><DT class="option"><CODE>--enable-doc</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_doc</SPAN>=doc</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>You can omit the documentation using <CODE>--disable-doc</CODE> or <CODE><SPAN class="variablename">oz_enable_doc</SPAN>=</CODE></P></DD><DT class="option"><CODE>--with-documents=D1,...,Dn</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="option"><CODE>--with-documents=all</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_doc_dirs</SPAN>=</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Specify the documents to be automatically processed by recursing into their directories. The special value <CODE>all</CODE> indicates that all documents should be processed.</P></DD><DT class="option"><CODE>--with-java-bin=DIR</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_java_bin</SPAN>=</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>directory where java executables and wrappers reside.</P></DD><DT class="option"><CODE>--with-java-threads</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_java_threads</SPAN>=-green</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>select implementation of java threads.</P></DD><DT class="option"><CODE>--enable-chm</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_chm</SPAN>=no</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Construct CHM table of contents files (for windows)</P></DD></DL><P></P><H2><A name="label14">7.4 Emulator</A></H2><P>The emulator has quite a few configuration parameters. </P><DL><DT class="option"><CODE>--with-cxx=</CODE><I>c++-compiler</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_with_cxx</SPAN>=</CODE><I>c++-compiler</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Overrides the default C++ compiler. Noone has ever needed this option (or lived to tell).</P></DD><DT class="option"><CODE>--enable-warnings</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_warnings</SPAN>=no</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Enabling this option causes the C++ compiler to become frighteningly anal retentive and to print out all sorts of warnings.</P></DD><DT class="option"><CODE>--enable-errors</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_errors</SPAN>=no</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>When this option is enabled, every warning from the C++ compiler will cause the build process to fail. This is only really useful for the developers of the system.</P></DD><DT class="variable"><CODE><SPAN class="variablename">oz_copt_optimize</SPAN>=<SPAN class="string">&quot;-O&quot;</SPAN></CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_copt_profile</SPAN>=-pg</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_copt_debug</SPAN>=<SPAN class="string">&quot;-g&quot;</SPAN></CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Compiler options to use when optimizing, profiling, and debugging respectively. Don't use these! See <A href="node12.html#enable-opt"><CODE>--enable-opt</CODE></A> instead.</P></DD><DT class="option"><CODE>--with-gmp=</CODE><I>DIR</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_gmp_lib_dir</SPAN>=/usr/local/lib</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_gmp_inc_dir</SPAN>=/usr/local/include</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Mozart needs the <EM>GNU Multiple Precision Arithmetic Library</EM> also known as <CODE>gmp</CODE>. You can set the variables to point to the directories where the library and the <CODE>gmp.h</CODE> include file are to be found. The command line option can be used to set both variables to the same directory argument. However, see <CODE>--with-inc-dir</CODE> and <CODE>--with-lib-dir</CODE> for the more general method that we now recommend.</P></DD><DT class="option"><CODE>--with-zlib=</CODE><I>DIR</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_zlib_lib_dir</SPAN>=</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_zlib_inc_dir</SPAN>=</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Mozart needs <CODE>zlib</CODE>, the <EM>General Purpose Compression Library</EM>. The details are as above and we also recommend to use <CODE>--with-inc-dir</CODE> and <CODE>--with-lib-dir</CODE> instead.</P></DD><DT class="option"><CODE>--without-ccmalloc</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Option <CODE>--with-ccmalloc</CODE> enables the use of the debugging malloc library. Only for developers.</P></DD><DT class="option" id="enable-opt"><CODE>--enable-opt=no</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Select the optimization settings: <CODE>--enable-opt=yes</CODE> for maximum optimization, <CODE>--enable-opt=debug</CODE> for debugging the emulator, <CODE>--enable-opt=profile</CODE> for profiling, <CODE>--enable-opt=rsp</CODE> also for profiling, but only if you happen to be Ralf Scheidhauer. </P><P>With <CODE>yes</CODE>, the emulator becomes marginally faster at the expense of greater compilation times (you might want to go out for coffee while compiling <CODE>emulate.cc</CODE>, which contains the bytecode emulation loop). With <CODE>debug</CODE>, the emulator itself becomes much slower as there are no optimizations, no in-lining, and zillions of assertions are constantly being checked. </P></DD><DT class="option"><CODE>--enable-threaded</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_threaded</SPAN>=yes</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>By default, the emulator uses threaded byte code if possible, unless <CODE>--enable-opt=debug</CODE>. Turning this off would be foolish.</P></DD><DT class="option"><CODE>--enable-fastreg</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_fastreg</SPAN>=yes</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>By default, the emulator uses fast register access.</P></DD><DT class="option"><CODE>--enable-regopt</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_regopt</SPAN>=yes</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>By default, the emulator uses register optimization.</P></DD><DT class="option"><CODE>--enable-modules-static=no</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_modules_static</SPAN>=no</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>By default, all boot modules are linked dynamically. Setting this variable to <CODE>yes</CODE> will link them statically. You should only do this if DLLs cannot be made to work on your platform.</P></DD><DT class="option"><CODE>--with-malloc=</CODE><I>FILE</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_malloc_obj</SPAN>=</CODE><I>FILE</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Use this option to link with the malloc function in object file <I>FILE</I>. This can be useful if your system malloc is broken. This option is overriden by <CODE>--with-ccmalloc</CODE>.</P></DD><DT class="option"><CODE>--enable-virtualsites</CODE><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>option</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DT class="variable"><CODE><SPAN class="variablename">oz_enable_virtualsites</SPAN>=</CODE><I>YESORNO</I><SPAN class="entrycategory"><SPAN class="entrycategorybracket">&nbsp;[</SPAN><I>variable</I><SPAN class="entrycategorybracket">]</SPAN></SPAN></DT><DD><P>Whether to enable support for <EM>virtual sites</EM>. The default depends on whether virtual sites can be supported on your platform, i.&nbsp;e. it depends on support for shared memory.</P></DD></DL><P> </P></DIV><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node6.html#chapter.src.cygwin">&lt;&lt; Prev</A></TD><TD><A href="index.html">- Up -</A></TD><TD><A href="node13.html#appendix.emacsunix">Next &gt;&gt;</A></TD></TR></TABLE><HR><ADDRESS><A href="http://www.ps.uni-sb.de/~duchier/">Denys&nbsp;Duchier</A>, <A href="http://www.ps.uni-sb.de/~kornstae/">Leif&nbsp;Kornstaedt</A>, <A href="http://www.ps.uni-sb.de/~scheidhr/">Ralf&nbsp;Scheidhauer</A> and&nbsp;<A href="http://www.ps.uni-sb.de/~schulte/">Christian&nbsp;Schulte</A><BR><SPAN class="version">Version 1.4.0 (20110908185330)</SPAN></ADDRESS></BODY></HTML>