aboutsummaryrefslogtreecommitdiff
path: root/docs/Projects.html
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2011-06-03 02:20:48 +0000
committerAndrew Trick <atrick@apple.com>2011-06-03 02:20:48 +0000
commit21ac25144dce58cbe466a4d9da060fe4e5dcbbce (patch)
tree83ce10c00748f541efdbbd96a17a9538ab66e30f /docs/Projects.html
parent0fb684dae2eba3aa257506dd9662cef7bb86f093 (diff)
Corrections and additional information for "Creating and LLVM Project"
documentation. This should now reflect the current state of LLVM Makefiles. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132527 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/Projects.html')
-rw-r--r--docs/Projects.html40
1 files changed, 34 insertions, 6 deletions
diff --git a/docs/Projects.html b/docs/Projects.html
index 049d199d7e..910ebdb426 100644
--- a/docs/Projects.html
+++ b/docs/Projects.html
@@ -339,16 +339,41 @@ do:</p>
<dt>USEDLIBS
<dd>
- This variable holds a space separated list of libraries that
- should be linked into the program. These libraries must either
- be LLVM libraries or libraries that come from your <b>lib</b>
- directory. The libraries must be specified by their base name.
- For example, to link libsample.a, you would set USEDLIBS to
- <tt>sample</tt>.
+ This variable holds a space separated list of libraries that should
+ be linked into the program. These libraries must be libraries that
+ come from your <b>lib</b> directory. The libraries must be
+ specified without their "lib" prefix. For example, to link
+ libsample.a, you would set USEDLIBS to
+ <tt>sample.a</tt>.
<p>
Note that this works only for statically linked libraries.
<p>
+ <dt>LLVMLIBS
+ <dd>
+ This variable holds a space separated list of libraries that should
+ be linked into the program. These libraries must be LLVM libraries.
+ The libraries must be specified without their "lib" prefix. For
+ example, to link with a driver that performs an IR transformation
+ you might set LLVMLIBS to this minimal set of libraries
+ <tt>LLVMSupport.a LLVMCore.a LLVMBitReader.a LLVMAsmParser.a LLVMAnalysis.a LLVMTransformUtils.a LLVMScalarOpts.a LLVMTarget.a</tt>.
+ <p>
+ Note that this works only for statically linked libraries. LLVM is
+ split into a large number of static libraries, and the list of libraries you
+ require may be much longer than the list above. To see a full list
+ of libraries use:
+ <tt>llvm-config --libs all</tt>.
+ Using LINK_COMPONENTS as described below, obviates the need to set LLVMLIBS.
+ <p>
+
+ <dt>LINK_COMPONENTS
+ <dd>This variable holds a space separated list of components that
+ the LLVM Makefiles pass to the <tt>llvm-config</tt> tool to generate
+ a link line for the program. For example, to link with all LLVM
+ libraries use
+ <tt>LINK_COMPONENTS = all</tt>.
+ <p>
+
<dt>LIBS
<dd>
To link dynamic libraries, add <tt>-l&lt;library base name&gt;</tt> to
@@ -361,6 +386,9 @@ do:</p>
<tt>
LIBS += -lsample
</tt>
+ <p>
+ Note that LIBS must occur in the Makefile after the inclusion of Makefile.common.
+ <p>
</dl>
</div>