From 44ac659bc5632d93e349389b4ac1a210bd25928a Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 9 Aug 2002 16:14:56 +0000 Subject: [PATCH] * Document the BUILD_ROOT changes and option * Convert directories to like they should be git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3270 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/GettingStarted.html | 73 ++++++++++++++++++++++++---------------- 1 file changed, 44 insertions(+), 29 deletions(-) diff --git a/docs/GettingStarted.html b/docs/GettingStarted.html index c5ea24d5108..96bd877dd0e 100644 --- a/docs/GettingStarted.html +++ b/docs/GettingStarted.html @@ -19,11 +19,12 @@
  • Program layout
    1. CVS directories -
    2. Depend, Debug, & Release directories
    3. -
    4. llvm/include -
    5. llvm/lib -
    6. llvm/test -
    7. llvm/tools +
    8. Depend, Debug, & + Release directories
    9. +
    10. llvm/include +
    11. llvm/lib +
    12. llvm/test +
    13. llvm/tools
  • An example using the LLVM tool chain
  • Links @@ -49,10 +50,11 @@

    First step is to get the actual source code. To do this, all you need to do is check it out from CVS. From your home directory, just enter:

    -

    cvs -d /home/vadve/vadve/Research/DynOpt/CVSRepository checkout llvm

    +

    cvs -d /home/vadve/vadve/Research/DynOpt/CVSRepository checkout + llvm

    -

    This will create an 'llvm' directory in your home directory and fully - populate it with the source code for LLVM.

    +

    This will create an 'llvm' directory in your home directory and + fully populate it with the source code for LLVM.

    @@ -76,8 +78,9 @@

    The C compiler is not included in the CVS tree you just checked out, so we just point to the cannonical location, and access it with the llvmgcc command. The rest of the LLVM tools - will be built into the llvm/tools/Debug directory inside of the sourcebase. - Adding them to your path will make it much easier to use them.

    + will be built into the llvm/tools/Debug directory inside of the + sourcebase. Adding them to your path will make it much easier to use + them.

    @@ -94,45 +97,57 @@ in llvm/tools/Debug. If you want to look at the libraries that were compiled, look in llvm/lib/Debug.

    +

    By default, the LLVM build process sends all temporary (.o, + .so, .a) files into a /shared/[your login + name]/... directory, which is supposed to be on a disk local to the + current machine. If you get an error talking about a /shared + directory, and you find out that it doesn't exist, try enabling the + "BUILD_ROOT = . line in the top level Makefile.common that + will change LLVM to build into the current directory instead of + /shared.

    +

    Program Layout

    -

    One useful source of infomation about the LLVM sourcebase is the LLVM - doxygen documentation, available at One useful source of infomation about the LLVM sourcebase is the LLVM doxygen documentation, available at http://llvm.cs.uiuc.edu/doxygen/. The following is a brief introduction to code layout:

    -

    CVS directories

    +

    CVS directories

    - Every directory checked out of CVS will contain a CVS directory, for the - most part these can just be ignored. + Every directory checked out of CVS will contain a CVS directory, + for the most part these can just be ignored. -

    Depend, Debug, & Release directories

    +

    Depend, Debug, & Release + directories

    - Most source directories contain two directories, Depend and Debug. The - Depend directory contains automatically generated dependance files which are - used during compilation to make sure that source files get rebuilt if a - header file they use is modified. The Debug directory holds the object + If you are building with the "BUILD_ROOT=." option enabled in the + Makefile.common file, most source directories will contain two + directories, Depend and Debug. The Depend + directory contains automatically generated dependance files which are used + during compilation to make sure that source files get rebuilt if a header + file they use is modified. The Debug directory holds the object files, library files and executables that are used for building a debug - enabled build. The Release directory is created to hold the same files when - the ENABLE_OPTIMIZED=1 flag is passed to gmake, causing an - optimized built to be performed. + enabled build. The Release directory is created to hold the same + files when the ENABLE_OPTIMIZED=1 flag is passed to gmake, + causing an optimized built to be performed.

    -

    llvm/include

    +

    llvm/include

    This directory contains public header files exported from the LLVM - library. The two main subdirectories of this directory are: + library. The two main subdirectories of this directory are:

    1. llvm/include/llvm - This directory contains all of the LLVM @@ -147,7 +162,7 @@
    -

    llvm/lib

    +

    llvm/lib

    This directory contains most source files of LLVM system. In LLVM almost all @@ -196,14 +211,14 @@ -

    llvm/test

    +

    llvm/test

    This directory contains regression tests and source code that is used to test the LLVM infrastructure...

    -

    llvm/tools

    +

    llvm/tools

    The tools directory contains the executables built out of the @@ -348,7 +363,7 @@ -Last modified: Wed Jul 24 14:57:57 CDT 2002 +Last modified: Fri Aug 9 11:13:34 CDT 2002