TableGen: Generate an enum for all named Operand types in tblgen'd InstrInfo.
[oota-llvm.git] / docs / Projects.rst
index f62f1bd13fdbaf72419ae9a814f5afb450b67c6a..3246e3ff169b4496571ace6d9457fe8e1e64d824 100644 (file)
@@ -1,5 +1,3 @@
-.. _projects:
-
 ========================
 Creating an LLVM Project
 ========================
@@ -85,10 +83,10 @@ Follow these simple steps to start your project:
    with these commands. (You must be using ``Autoconf`` version 2.59 or later
    and your ``aclocal`` version should be 1.9 or later.)
 
-.. code-block:: bash
+       .. code-block:: bash
 
-   % cd autoconf
-   % ./AutoRegen.sh
+         % cd autoconf
+         % ./AutoRegen.sh
 
 6. Run ``configure`` in the directory in which you want to place object code.
    Use the following options to tell your project where it can find LLVM:
@@ -102,7 +100,7 @@ Follow these simple steps to start your project:
    ``--prefix=<directory>``
        Tell your project where it should get installed.
 
-That's it!  Now all you have to do is type ``gmake`` (or ``make`` if your on a
+That's it!  Now all you have to do is type ``gmake`` (or ``make`` if you're on a
 GNU/Linux system) in the root of your object directory, and your project should
 build.
 
@@ -153,12 +151,10 @@ Underneath your top level directory, you should have the following directories:
     Currently, the LLVM build system provides basic support for tests. The LLVM
     system provides the following:
 
-* LLVM provides a ``tcl`` procedure that is used by ``Dejagnu`` to run tests.
-  It can be found in ``llvm/lib/llvm-dg.exp``.  This test procedure uses ``RUN``
+* LLVM contains regression tests in ``llvm/test``.  These tests are run by the
+  :doc:`Lit <CommandGuide/lit>` testing tool.  This test procedure uses ``RUN``
   lines in the actual test case to determine how to run the test.  See the
-  `TestingGuide <TestingGuide.html>`_ for more details. You can easily write
-  Makefile support similar to the Makefiles in ``llvm/test`` to use ``Dejagnu``
-  to run your project's tests.
+  :doc:`TestingGuide` for more details.
 
 * LLVM contains an optional package called ``llvm-test``, which provides
   benchmarks and programs that are known to compile with the Clang front
@@ -273,16 +269,16 @@ Variables for Building Programs
 
 ``LIBS``
 
-    To link dynamic libraries, add <tt>-l&lt;library base name&gt;</tt> to the
-    ``LIBS`` variable.  The LLVM build system will look in the same places for
-    dynamic libraries as it does for static libraries.
+    To link dynamic libraries, add ``-l<library base name>`` to the ``LIBS``
+    variable.  The LLVM build system will look in the same places for dynamic
+    libraries as it does for static libraries.
 
     For example, to link ``libsample.so``, you would have the following line in
     your ``Makefile``:
 
-.. code-block: Makefile
+        .. code-block:: makefile
 
-  LIBS += -lsample
+          LIBS += -lsample
 
 Note that ``LIBS`` must occur in the Makefile after the inclusion of
 ``Makefile.common``.
@@ -290,8 +286,7 @@ Note that ``LIBS`` must occur in the Makefile after the inclusion of
 Miscellaneous Variables
 -----------------------
 
-``CFLAGS``
-``CPPFLAGS``
+``CFLAGS`` & ``CPPFLAGS``
 
     This variable can be used to add options to the C and C++ compiler,
     respectively.  It is typically used to add options that tell the compiler
@@ -310,14 +305,14 @@ you do a ``Debug``, ``Release``, or ``Profile`` build.
 Libraries
 
     All libraries (static and dynamic) will be stored in
-    ``PROJ_OBJ_ROOT/<type>/lib``, where *``type``* is ``Debug``, ``Release``, or
+    ``PROJ_OBJ_ROOT/<type>/lib``, where *type* is ``Debug``, ``Release``, or
     ``Profile`` for a debug, optimized, or profiled build, respectively.
 
 Executables
 
-    All executables will be stored in ``PROJ_OBJ_ROOT/<type>/bin``, where
-    *``type``* is ``Debug``, ``Release``, or ``Profile`` for a debug, optimized,
-    or profiled build, respectively.
+    All executables will be stored in ``PROJ_OBJ_ROOT/<type>/bin``, where *type*
+    is ``Debug``, ``Release``, or ``Profile`` for a debug, optimized, or
+    profiled build, respectively.
 
 Further Help
 ============
@@ -325,4 +320,4 @@ Further Help
 If you have any questions or need any help creating an LLVM project, the LLVM
 team would be more than happy to help.  You can always post your questions to
 the `LLVM Developers Mailing List
-<http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev>`_.
+<http://lists.cs.uiuc.edu/pipermail/llvmdev/>`_.