summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2005-01-16 02:21:18 +0000
committerReid Spencer <rspencer@reidspencer.com>2005-01-16 02:21:18 +0000
commit39865c052dd161134c7ae5610424c8eb3f6a1be3 (patch)
treea4e6a0df9acd791f16bd7962fd0046036ae1a521
parent11fde54f23e8945966690833b803654fc4fbf156 (diff)
downloadllvm-39865c052dd161134c7ae5610424c8eb3f6a1be3.tar.gz
llvm-39865c052dd161134c7ae5610424c8eb3f6a1be3.tar.bz2
llvm-39865c052dd161134c7ae5610424c8eb3f6a1be3.tar.xz
Update documentation on how to set up a project
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19591 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--docs/Projects.html45
1 files changed, 20 insertions, 25 deletions
diff --git a/docs/Projects.html b/docs/Projects.html
index dafedc91d1..da1bc2ebe3 100644
--- a/docs/Projects.html
+++ b/docs/Projects.html
@@ -40,37 +40,32 @@ projects that use LLVM header files, libraries, and tools. In order to use
these facilities, a Makefile from a project must do the following things:</p>
<ol>
-<li>Set environment variables.There are several environment variables that a
-Makefile needs to set to use the LLVM build system:
-
-<ul>
- <li><tt>LLVM_SRC_ROOT</tt> - The root of the LLVM source tree.</li>
- <li><tt>LLVM_OBJ_ROOT</tt> - The root of the LLVM object tree.</li>
- <li><tt>BUILD_SRC_ROOT</tt> - The root of the project's source tree.</li>
- <li><tt>BUILD_OBJ_ROOT</tt> - The root of the project's object tree.</li>
- <li><tt>BUILD_SRC_DIR</tt> - The directory containing the current source to be
- compiled.</li>
- <li><tt>BUILD_OBJ_DIR</tt> - The directory where the current source will place
- the new object files. This should always be the current directory.</li>
- <li><tt>LEVEL</tt> - The relative path from the current directory to the root
- of the object tree.</li>
-</ul></li>
-<li>Include <tt>Makefile.config</tt> from <tt>$(LLVM_OBJ_ROOT)</tt>.</li>
-<li>Include <tt>Makefile.rules</tt> from <tt>$(LLVM_SRC_ROOT)</tt>.</li>
+ <li>Set <tt>make</tt> variables. There are several variables that a Makefile
+ needs to set to use the LLVM build system:
+ <ul>
+ <li><tt>PROJECT_NAME</tt> - The name by which your project is known.</li>
+ <li><tt>LLVM_SRC_ROOT</tt> - The root of the LLVM source tree.</li>
+ <li><tt>LLVM_OBJ_ROOT</tt> - The root of the LLVM object tree.</li>
+ <li><tt>PROJ_SRC_ROOT</tt> - The root of the project's source tree.</li>
+ <li><tt>PROJ_OBJ_ROOT</tt> - The root of the project's object tree.</li>
+ <li><tt>PROJ_INSTALL_ROOT</tt> - The root installation directory.</li>
+ <li><tt>LEVEL</tt> - The relative path from the current directory to the
+ project's root ($PROJ_OBJ_ROOT).</li>
+ </ul></li>
+ <li>Include <tt>Makefile.config</tt> from <tt>$(LLVM_OBJ_ROOT)</tt>.</li>
+ <li>Include <tt>Makefile.rules</tt> from <tt>$(LLVM_SRC_ROOT)</tt>.</li>
</ol>
<p>There are two ways that you can set all of these variables:</p>
-
<ol>
-<li>You can write your own Makefiles which hard-code these values.</li>
-
-<li> You can use the pre-made LLVM sample project. This sample project includes
-Makefiles, a configure script that can be used to configure the location of
-LLVM, and the ability to support multiple object directories from a single
-source directory.</li>
+ <li>You can write your own Makefiles which hard-code these values.</li>
+ <li>You can use the pre-made LLVM sample project. This sample project
+ includes Makefiles, a configure script that can be used to configure the
+ location of LLVM, and the ability to support multiple object directories
+ from a single source directory.</li>
</ol>
-<p>This document assumes that you will base your project off of the LLVM sample
+<p>This document assumes that you will base your project on the LLVM sample
project found in <tt>llvm/projects/sample</tt>. If you want to devise your own
build system, studying the sample project and LLVM Makefiles will probably
provide enough information on how to write your own Makefiles.</p>