[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