[llvm-commits] CVS: llvm/docs/MakefileGuide.html
Reid Spencer
reid at x10sys.com
Sun Nov 28 23:45:02 PST 2004
Changes in directory llvm/docs:
MakefileGuide.html updated: 1.14 -> 1.15
---
Log message:
* Document how to turn on doxygen documentation generation
* Document the new "LLVMLIBS=JIT" feature to make building JIT programs
super easy.
---
Diffs of the changes: (+51 -4)
Index: llvm/docs/MakefileGuide.html
diff -u llvm/docs/MakefileGuide.html:1.14 llvm/docs/MakefileGuide.html:1.15
--- llvm/docs/MakefileGuide.html:1.14 Thu Nov 25 14:21:53 2004
+++ llvm/docs/MakefileGuide.html Mon Nov 29 01:44:51 2004
@@ -30,6 +30,9 @@
<ol>
<li><a href="#libraries">Libraries</a></li>
<li><a href="#tools">Tools</a></li>
+ <ol>
+ <li><a href="#JIT">JIT Tools</a></li>
+ </ol>
</ol>
</li>
<li><a href="#targets">Targets Supported</a>
@@ -267,6 +270,41 @@
</p>
</div>
+<!-- ======================================================================= -->
+<div class="doc_subsubsection"><a name="JIT">JIT Tools</a></div>
+<div class="doc_text">
+ <p>Many tools will want to use the JIT features of LLVM. However, getting the
+ right set of libraries to link with is tedious, platform specific, and error
+ prone. Additionally, the JIT has special linker switch options that it needs.
+ Consequently, to make it easier to build tools that use the JIT, you can
+ use a special value for the <tt>LLVMLIBS> variable:</p>
+ <pre><tt>
+ TOOLNAME = my_jit_tool
+ USEDLIBS = mylib
+ LLVMLIBS = JIT
+ </tt></pre>
+ <p>Using a value of <tt>JIT</tt> for <tt>LLVMLIBS</tt> tells the makefile
+ system to construct a special value for LLVMLIBS that gives the program all
+ the LLVM libraries needed to run the JIT. Any additional libraries needed can
+ still be specified with <tt>USEDLIBS</tt>. To get a full understanding of how
+ this changes the linker command, it is recommended that you:</p>
+ <pre><tt>
+ cd examples/Fibonacci
+ make VERBOSE=1
+ </tt></pre>
+ <p>By default, using <tt>LLVMLIBS=JIT</tt> will link in enough to support JIT
+ code generation for the architecture on which the tool is linked. If you need
+ additional target architectures linked in, you may specify them on the command
+ line or in your <tt>Makefile</tt>. For example:</p>
+ <pre><tt>
+ ENABLE_X86_JIT=1
+ ENABLE_SPARCV9_JIT=1
+ ENALBE_PPC_JIT=1
+ </tt></pre>
+ <p>will cause the tool to be able to generate code for all three platforms.
+ </p>
+</div>
+
<!-- *********************************************************************** -->
<div class="doc_section"><a name="targets">Targets Supported</a></div>
<!-- *********************************************************************** -->
@@ -411,9 +449,18 @@
<div class="doc_subsection"><a name="install">install</a></div>
<div class="doc_text">
<p>This target finalizes shared objects and executables and copies all
- libraries, headers and executables to the directory given with the
- <tt>--prefix</tt> option to <tt>configure</tt>. When completed, the prefix
- directory will have everything needed to <b>use</b> LLVM. </p>
+ libraries, headers, executables and documentation to the directory given
+ with the <tt>--prefix</tt> option to <tt>configure</tt>. When completed,
+ the prefix directory will have everything needed to <b>use</b> LLVM. </p>
+ <p>The LLVM makefiles can generate complete <b>internal</b> documentation
+ for all the classes by using <tt>doxygen</tt>. By default, this feature is
+ <b>not</b> enabled because it takes a long time and generates a massive
+ amount of data (>100MB). If you want this feature, you must configure LLVM
+ with the --enable-doxygen switch and ensure that a modern version of doxygen
+ (1.3.7 or later) is available in your <tt>PATH</tt>. You can download
+ doxygen from
+ <a href="http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc">
+ here</a>.
</div>
<!-- ======================================================================= -->
@@ -847,7 +894,7 @@
<a href="mailto:rspencer at x10sys.com">Reid Spencer</a><br>
<a href="http://llvm.cs.uiuc.edu">The LLVM Compiler Infrastructure</a><br>
- Last modified: $Date: 2004/11/25 20:21:53 $
+ Last modified: $Date: 2004/11/29 07:44:51 $
</address>
</body>
More information about the llvm-commits
mailing list