1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<HTML> 3<HEAD> 4<META http-equiv="Content-Type" content="text/html; charset=windows-1252"> 5<META http-equiv="Content-Style-Type" content="text/css"> 6<TITLE>makerel</TITLE> 7<LINK rel="stylesheet" href="../CSS/revolution.css"> 8</HEAD> 9<BODY> 10<H1 align="left">makerel</H1> 11<H2>Description</H2> 12<P><code>makerel</code> is a tool for games that use the <a href="../os/Rel/intro.html">relocatable module system</a>. This tool has the following two purposes:</P> 13<h3>1. Makes valid function lists from partially linked file lists.</h3> 14<p>If you supply a list of partially linked files (PLFs) as arguments, <code>makerel</code> generates a list of functions that must not be dead stripped.</p> 15 16<pre><CODE>% makerel partial-link-file.preplf ...</CODE></pre> 17<P>The list of functions is saved in a file called <code>import.lst</code>.</P> 18<h3>2. Generates relocatable module and module name string table files.</h3> 19<p>If you supply as arguments a PLF list and a file name of an ELF file in the static portion of the program, <code>makerel</code> generates relocatable module files (<code>.rel</code>) and the module name string table file (<code>.str</code>).</p> 20 21<pre><CODE>% makerel exec-type-file.elf partial-link-file.plf ...</CODE></pre> 22<p>The generated relocatable module files (<code>.rel</code>) must be copied to the Game Disc. The module name string table file must also be copied to the Game Disc to use the program debugger. The runtime debug monitor references the module name string table file for locating the original PLFs residing in the host disc drive.</p> 23 24<H2>Using the Library</H2> 25 26<p><code>% makerel [-W] files [@response]</code></p> 27<p>The optional <code>response</code> file can contain the list of PLF and ELF file names if the command prompt environment does not allow a large number of module names in its command line argument. In a response file, a number sign (#) and any following text characters up to the next line are ignored. A backslash (\) is the escape text character. The text character immediately following the backslash is escaped.</p> 28<p>The optional <code>-W</code> command line option lets <code>makerel</code> detect external symbols defined in multiple modules and displays warning messages for those symbols.</p> 29<H2>Location</H2> 30<P><CODE>$REVOLUTION_SDK_ROOT/X86/bin/makerel.exe</CODE></P> 31<H2>See Also</H2> 32<p><a href="../os/Rel/intro.html">Relocatable Module System</a></p> 33<H2>Revision History</H2> 34<P>2006/03/01 Initial version.</p> 35<hr> 36<P>CONFIDENTIAL</p> 37</BODY> 38</HTML>