[llvm-commits] CVS: llvm/docs/MakefileGuide.html
Reid Spencer
reid at x10sys.com
Mon Jan 10 21:13:05 PST 2005
Changes in directory llvm/docs:
MakefileGuide.html updated: 1.22 -> 1.23
---
Log message:
* Describe the LOADABLE_MODULE feature
* Get rid of non-compliant <font> elements (how did that get in there?)
---
Diffs of the changes: (+19 -3)
Index: llvm/docs/MakefileGuide.html
diff -u llvm/docs/MakefileGuide.html:1.22 llvm/docs/MakefileGuide.html:1.23
--- llvm/docs/MakefileGuide.html:1.22 Fri Dec 17 01:46:45 2004
+++ llvm/docs/MakefileGuide.html Mon Jan 10 23:12:54 2005
@@ -240,6 +240,16 @@
Note that you normally do not need to specify the sources involved. The LLVM
Makefile system will infer the source files from the contents of the source
directory.</p>
+ <p>The <tt>LOADABLE_MODULE=1</tt> directive can be used in conjunction with
+ <tt>SHARED_LIBRARY=1</tt> to indicate that the resulting shared library should
+ be openable with the <tt>dlopen</tt> function and searchable with the
+ <tt>dlsym</tt> function (or your operating system's equivalents). While this
+ isn't strictly necessary on Linux and a few other platforms, it is required
+ on systems like HP-UX and Darwin. You should use <tt>LOADABLE_MODULE</tt> for
+ any shared library that you intend to be loaded into an tool via the
+ <tt>-load</tt> option. See the
+ <a href="WritingAnLLVMPass.html#makefile">WritingAnLLVMPass.html</a> document
+ for an example of why you might want to do this.
</div>
<!-- ======================================================================= -->
@@ -539,8 +549,8 @@
<tt>$(BUILD_OBJ_ROOT)</tt> directoy by removing its content entirely and
reconfiguring the directory. This returns the <tt>$(BUILD_OBJ_ROOT)</tt>
directory to a completely fresh state. All content in the directory except
- configured files and top-level makefiles will be lost.
- <font color="red">Use with caution.</font></p>
+ configured files and top-level makefiles will be lost.</p>
+ <div class="doc_warning"><p>Use with caution.</p></div>
</div>
<!-- ======================================================================= -->
@@ -652,6 +662,12 @@
<dt><a name="LLVMLIBS"><tt>LLVMLIBS</tt></a></dt>
<dd>Specifies the set of libraries from the LLVM $(ObjDir) that will be
linked into the tool or library.</dd>
+ <dt><a name="LOADABLE_MODULE"><tt>LOADABLE_MODULE</tt></a></dt>
+ <dd>If set to any value, causes the shared library being built to also be
+ a loadable module. Loadable modules can be opened with the dlopen() function
+ and searched with dlsym (or the operating system's equivalent). Note that
+ setting this variable without also setting <tt>SHARED_LIBRARY</tt> will have
+ no effect.</dd>
<dt><a name="MODULE_NAME"><tt>MODULE_NAME</tt></a></dt>
<dd>Specifies the name of a bytecode module to be created. A bytecode
module can be specified in conjunction with other kinds of library builds
@@ -977,7 +993,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/12/17 07:46:45 $
+ Last modified: $Date: 2005/01/11 05:12:54 $
</address>
</body>
More information about the llvm-commits
mailing list