<div dir="ltr">Looks like the opening <body> tag got lost, but the closing </body> is still around.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 30, 2014 at 4:06 PM, Zachary Turner <span dir="ltr"><<a href="mailto:zturner@google.com" target="_blank">zturner@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: zturner<br>
Date: Tue Dec 30 18:06:41 2014<br>
New Revision: 225022<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=225022&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=225022&view=rev</a><br>
Log:<br>
Fix HTML formatting and non-conformance.<br>
<br>
Modified:<br>
    lldb/trunk/www/build.html<br>
<br>
Modified: lldb/trunk/www/build.html<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lldb/trunk/www/build.html?rev=225022&r1=225021&r2=225022&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lldb/trunk/www/build.html?rev=225022&r1=225021&r2=225022&view=diff</a><br>
==============================================================================<br>
--- lldb/trunk/www/build.html (original)<br>
+++ lldb/trunk/www/build.html Tue Dec 30 18:06:41 2014<br>
@@ -1,112 +1,129 @@<br>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" target="_blank">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>"><br>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" target="_blank">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>"><br>
 <html xmlns="<a href="http://www.w3.org/1999/xhtml" target="_blank">http://www.w3.org/1999/xhtml</a>"><br>
 <head><br>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><br>
-<link href="style.css" rel="stylesheet" type="text/css" /><br>
-<title>Building LLDB</title><br>
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><br>
+  <link href="style.css" rel="stylesheet" type="text/css" /><br>
+  <title>Building LLDB</title><br>
 </head><br>
-<br>
 <body><br>
-    <div class="www_title"><br>
-      The <strong>LLDB</strong> Debugger<br>
-    </div><br>
-<br>
-<div id="container"><br>
-       <div id="content"><br>
-<br>
-  <!--#include virtual="sidebar.incl"--><br>
-<br>
-               <div id="middle"><br>
-                <h1 class ="postheader">Continuous Integraton</h1><br>
-                <div class="postcontent"><br>
-                        <p> The following LLVM buildbots build and test LLDB trunk:<br>
-                        <ul><br>
-                                <li> <a href="<a href="http://lab.llvm.org:8011/builders/lldb-x86_64-debian-clang" target="_blank">http://lab.llvm.org:8011/builders/lldb-x86_64-debian-clang</a>">LLDB Linux x86_64 build with Clang (automake)</a><br>
-                                <li> <a href="<a href="http://lab.llvm.org:8011/builders/lldb-x86_64-linux" target="_blank">http://lab.llvm.org:8011/builders/lldb-x86_64-linux</a>">LLDB Linux x86_64 build with GCC 4.6 (automake)</a><br>
-                                <li> <a href="<a href="http://lab.llvm.org:8011/builders/lldb-x86_64-darwin12" target="_blank">http://lab.llvm.org:8011/builders/lldb-x86_64-darwin12</a>">LLDB Mac OS X x86_64 build with Clang (XCode)</a><br>
-                                <li> <a href="<a href="http://llvm-amd64.freebsd.your.org:8010/builders/lldb-amd64-freebsd" target="_blank">http://llvm-amd64.freebsd.your.org:8010/builders/lldb-amd64-freebsd</a>">LLDB FreeBSD x86_64 (CMake)</a><br>
-                                <li> <a href="<a href="http://llvm-amd64.freebsd.your.org:8010/builders/lldb-i386-freebsd" target="_blank">http://llvm-amd64.freebsd.your.org:8010/builders/lldb-i386-freebsd</a>">LLDB FreeBSD i386</a><br>
-                        </ul><br>
-                </div><br>
-                <div class="postfooter"></div><br>
-               <div class="post"><br>
-                       <h1 class ="postheader">Building LLDB on Mac OS X</h1><br>
-                       <div class="postcontent"><br>
-                           <p>Building on Mac OS X is as easy as downloading the code and building the Xcode project or workspace:</p><br>
-                </div><br>
-                <div class="postcontent"><br>
-                    <h2>Preliminaries</h2><br>
-                    <ul><br>
-                        <li>XCode 4.3 or newer requires the "Command Line Tools" component (XCode->Preferences->Downloads->Components).</li><br>
-                        <li>Mac OS X Lion or newer requires installing <a href="<a href="http://swig.org" target="_blank">http://swig.org</a>">Swig</a>.</li><br>
-                    </ul><br>
-                    <h2>Building LLDB</h2><br>
-                           <ul><br>
-                        <li><a href="download.html">Download</a> the lldb sources.</li><br>
-                        <li>Follow the code signing instructions in <b>lldb/docs/code-signing.txt</b></li><br>
-                        <li>In Xcode 3.x: <b>lldb/lldb.xcodeproj</b>, select the <b>lldb-tool</b> target, and build.</li><br>
-                        <li>In Xcode 4.x: <b>lldb/lldb.xcworkspace</b>, select the <b>lldb-tool</b> scheme, and build.</li><br>
-                           </ul><br>
-                       </div><br>
-               <div class="postfooter"></div><br>
-               </div><br>
-               <div class="post"><br>
-                       <h1 class ="postheader">Building LLDB on Linux and FreeBSD</h1><br>
-                       <div class="postcontent"><br>
-                           <p>This document describes the steps needed to compile LLDB on most Linux systems, and FreeBSD.</a></p><br>
-                       </div><br>
-                       <div class="postcontent"><br>
-                <h2>Preliminaries</h2><br>
-                <p>LLDB relies on many of the technologies developed by the larger LLVM project.<br>
-                In particular, it requires both Clang and LLVM itself in order to build.  Due to<br>
-                this tight integration the <em>Getting Started</em> guides for both of these projects<br>
-                come as prerequisite reading:</p><br>
-                           <ul><br>
-                    <li><a href="<a href="http://llvm.org/docs/GettingStarted.html" target="_blank">http://llvm.org/docs/GettingStarted.html</a>">LLVM</a></li><br>
-                    <li><a href="<a href="http://clang.llvm.org/get_started.html" target="_blank">http://clang.llvm.org/get_started.html</a>">Clang</a></li><br>
-                </ul><br>
-                <p>Supported compilers for building LLDB on Linux include:</p><br>
-                <ul><br>
-                  <li>Clang 3.2</li><br>
-                  <li><a href="<a href="http://gcc.gnu.org" target="_blank">http://gcc.gnu.org</a>">GCC</a> 4.6.2 (later versions should work as well)</li><br>
-                </ul><br>
-                <p>It is recommended to use libstdc++ 4.6 (or higher) to build LLDB on Linux, but using libc++ is also known to work.</p><br>
-                <p>On FreeBSD the base system Clang and libc++ may be used to build LLDB,<br>
-                or the GCC port or package.</p><br>
-                <p>In addition to any dependencies required by LLVM and Clang, LLDB needs a few<br>
-                development packages that may also need to be installed depending on your<br>
-                system.  The current list of dependencies are:</p><br>
-                       <ul><br>
-                    <li><a href="<a href="http://swig.org" target="_blank">http://swig.org</a>">Swig</a></li><br>
-                    <li><a href="<a href="http://www.thrysoee.dk/editline" target="_blank">http://www.thrysoee.dk/editline</a>">libedit</a> (Linux only)</li><br>
-                    <li><a href="<a href="http://www.python.org" target="_blank">http://www.python.org</a>">Python</a></li><br>
-                </ul><br>
-                <p>So for example, on a Fedora system one might run:</p><br>
-                <code>&gt; yum install swig python-devel libedit-devel</code><br>
-                <p>On a Debian or Ubuntu system one might run:</p><br>
-                <code>&gt; sudo apt-get install build-essential subversion swig python2.7-dev libedit-dev libncurses5-dev </code><br>
-                <p>or</p><br>
-                <code>&gt; sudo apt-get build-dep lldb-3.3 # or lldb-3.4</code><br>
-                <p>On FreeBSD one might run:</p><br>
-                <code>&gt; pkg install swig python</code><br>
-                <p>If you wish to build the optional reference documentation, additional dependencies are required:</p><br>
-                <ul><br>
-                  <li> Graphviz (for the 'dot' tool).<br>
-                  <li> doxygen (only if you wish to build the C++ API reference)<br>
-                  <li> epydoc (only if you wish to build the Python API reference)<br>
-                </ul><br>
-                <p>To install the prerequisites for building the documentation (on Debian/Ubuntu) do:</p><br>
-                <code><br>
-                  <br>&gt; sudo apt-get install doxygen graphviz<br>
-                  <br>&gt; sudo pip install epydoc # or install package python-epydoc<br>
-                </code><br>
-                <h2 >Building LLDB</h2><br>
-                <p>We first need to checkout the source trees into the appropriate locations.  Both<br>
-                Clang and LLDB build as subprojects of LLVM.  This means we will be checking out<br>
-                the source for both Clang and LLDB into the <tt>tools</tt> subdirectory of LLVM.  We<br>
-                will be setting up a directory hierarchy looking something like this:</p><br>
-                <p><br>
-                <pre><tt><br>
+  <div class="www_title"><br>
+    The <strong>LLDB</strong> Debugger<br>
+  </div><br>
+<br>
+  <div id="container"><br>
+    <div id="content"><br>
+<br>
+      <!--#include virtual="sidebar.incl"--><br>
+<br>
+      <div id="middle"><br>
+        <h1 class="postheader">Continuous Integraton</h1><br>
+        <div class="postcontent"><br>
+          <p><br>
+            The following LLVM buildbots build and test LLDB trunk:<br>
+            <ul><br>
+              <li> <a href="<a href="http://lab.llvm.org:8011/builders/lldb-x86_64-debian-clang" target="_blank">http://lab.llvm.org:8011/builders/lldb-x86_64-debian-clang</a>">LLDB Linux x86_64 build with Clang (automake)</a><br>
+              </li><br>
+              <li> <a href="<a href="http://lab.llvm.org:8011/builders/lldb-x86_64-linux" target="_blank">http://lab.llvm.org:8011/builders/lldb-x86_64-linux</a>">LLDB Linux x86_64 build with GCC 4.6 (automake)</a><br>
+              </li><br>
+              <li> <a href="<a href="http://lab.llvm.org:8011/builders/lldb-x86_64-darwin12" target="_blank">http://lab.llvm.org:8011/builders/lldb-x86_64-darwin12</a>">LLDB Mac OS X x86_64 build with Clang (XCode)</a><br>
+              </li><br>
+              <li> <a href="<a href="http://llvm-amd64.freebsd.your.org:8010/builders/lldb-amd64-freebsd" target="_blank">http://llvm-amd64.freebsd.your.org:8010/builders/lldb-amd64-freebsd</a>">LLDB FreeBSD x86_64 (CMake)</a><br>
+              </li><br>
+              <li> <a href="<a href="http://llvm-amd64.freebsd.your.org:8010/builders/lldb-i386-freebsd" target="_blank">http://llvm-amd64.freebsd.your.org:8010/builders/lldb-i386-freebsd</a>">LLDB FreeBSD i386</a><br>
+              </li><br>
+            </ul><br>
+          </p><br>
+        </div><br>
+        <div class="postfooter"></div><br>
+        <div class="post"><br>
+          <h1 class="postheader">Building LLDB on Mac OS X</h1><br>
+          <div class="postcontent"><br>
+            <p>Building on Mac OS X is as easy as downloading the code and building the Xcode project or workspace:</p><br>
+          </div><br>
+          <div class="postcontent"><br>
+            <h2>Preliminaries</h2><br>
+            <ul><br>
+              <li>XCode 4.3 or newer requires the "Command Line Tools" component (XCode->Preferences->Downloads->Components).</li><br>
+              <li>Mac OS X Lion or newer requires installing <a href="<a href="http://swig.org" target="_blank">http://swig.org</a>">Swig</a>.</li><br>
+            </ul><br>
+            <h2>Building LLDB</h2><br>
+            <ul><br>
+              <li><a href="download.html">Download</a> the lldb sources.</li><br>
+              <li>Follow the code signing instructions in <b>lldb/docs/code-signing.txt</b></li><br>
+              <li>In Xcode 3.x: <b>lldb/lldb.xcodeproj</b>, select the <b>lldb-tool</b> target, and build.</li><br>
+              <li>In Xcode 4.x: <b>lldb/lldb.xcworkspace</b>, select the <b>lldb-tool</b> scheme, and build.</li><br>
+            </ul><br>
+          </div><br>
+          <div class="postfooter"></div><br>
+        </div><br>
+        <div class="post"><br>
+          <h1 class="postheader">Building LLDB on Linux and FreeBSD</h1><br>
+          <div class="postcontent"><br>
+            <p>This document describes the steps needed to compile LLDB on most Linux systems, and FreeBSD.</a></p><br>
+          </div><br>
+          <div class="postcontent"><br>
+            <h2>Preliminaries</h2><br>
+            <p><br>
+              LLDB relies on many of the technologies developed by the larger LLVM project.<br>
+              In particular, it requires both Clang and LLVM itself in order to build.  Due to<br>
+              this tight integration the <em>Getting Started</em> guides for both of these projects<br>
+              come as prerequisite reading:<br>
+            </p><br>
+            <ul><br>
+              <li><a href="<a href="http://llvm.org/docs/GettingStarted.html" target="_blank">http://llvm.org/docs/GettingStarted.html</a>">LLVM</a></li><br>
+              <li><a href="<a href="http://clang.llvm.org/get_started.html" target="_blank">http://clang.llvm.org/get_started.html</a>">Clang</a></li><br>
+            </ul><br>
+            <p>Supported compilers for building LLDB on Linux include:</p><br>
+            <ul><br>
+              <li>Clang 3.2</li><br>
+              <li><a href="<a href="http://gcc.gnu.org" target="_blank">http://gcc.gnu.org</a>">GCC</a> 4.6.2 (later versions should work as well)</li><br>
+            </ul><br>
+            <p>It is recommended to use libstdc++ 4.6 (or higher) to build LLDB on Linux, but using libc++ is also known to work.</p><br>
+            <p><br>
+              On FreeBSD the base system Clang and libc++ may be used to build LLDB,<br>
+              or the GCC port or package.<br>
+            </p><br>
+            <p><br>
+              In addition to any dependencies required by LLVM and Clang, LLDB needs a few<br>
+              development packages that may also need to be installed depending on your<br>
+              system.  The current list of dependencies are:<br>
+            </p><br>
+            <ul><br>
+              <li><a href="<a href="http://swig.org" target="_blank">http://swig.org</a>">Swig</a></li><br>
+              <li><a href="<a href="http://www.thrysoee.dk/editline" target="_blank">http://www.thrysoee.dk/editline</a>">libedit</a> (Linux only)</li><br>
+              <li><a href="<a href="http://www.python.org" target="_blank">http://www.python.org</a>">Python</a></li><br>
+            </ul><br>
+            <p>So for example, on a Fedora system one might run:</p><br>
+            <code>&gt; yum install swig python-devel libedit-devel</code><br>
+            <p>On a Debian or Ubuntu system one might run:</p><br>
+            <code>&gt; sudo apt-get install build-essential subversion swig python2.7-dev libedit-dev libncurses5-dev </code><br>
+            <p>or</p><br>
+            <code>&gt; sudo apt-get build-dep lldb-3.3 # or lldb-3.4</code><br>
+            <p>On FreeBSD one might run:</p><br>
+            <code>&gt; pkg install swig python</code><br>
+            <p>If you wish to build the optional reference documentation, additional dependencies are required:</p><br>
+            <ul><br>
+              <li> Graphviz (for the 'dot' tool).<br>
+              </li><br>
+              <li> doxygen (only if you wish to build the C++ API reference)<br>
+              </li><br>
+              <li> epydoc (only if you wish to build the Python API reference)<br>
+              </li><br>
+            </ul><br>
+            <p>To install the prerequisites for building the documentation (on Debian/Ubuntu) do:</p><br>
+            <code><br>
+              <br />&gt; sudo apt-get install doxygen graphviz<br>
+              <br />&gt; sudo pip install epydoc # or install package python-epydoc<br>
+            </code><br>
+            <h2>Building LLDB</h2><br>
+            <p><br>
+              We first need to checkout the source trees into the appropriate locations.  Both<br>
+              Clang and LLDB build as subprojects of LLVM.  This means we will be checking out<br>
+              the source for both Clang and LLDB into the <tt>tools</tt> subdirectory of LLVM.  We<br>
+              will be setting up a directory hierarchy looking something like this:<br>
+            </p><br>
+            <p><br>
+              <pre><tt><br>
                   llvm<br>
                   |<br>
                   `-- tools<br>
@@ -115,125 +132,161 @@<br>
                       |<br>
                       `-- lldb<br>
                 </tt></pre><br>
-                </p><br>
-                <p>For reference, we will call the root of the LLVM project tree <tt>$llvm</tt>, and the<br>
-                roots of the Clang and LLDB source trees <tt>$clang</tt> and <tt>$lldb</tt> respectively.</p><br>
-                <p>Change to the directory where you want to do development work and checkout LLVM:</p><br>
-                <code>&gt; svn co <a href="http://llvm.org/svn/llvm-project/llvm/trunk" target="_blank">http://llvm.org/svn/llvm-project/llvm/trunk</a> llvm</code><br>
-<br>
-                <p>Now switch to LLVM&#8217;s tools subdirectory and checkout both Clang and LLDB:</p><br>
-                <code>&gt; cd $llvm/tools<br>
-                <br>&gt; svn co <a href="http://llvm.org/svn/llvm-project/cfe/trunk" target="_blank">http://llvm.org/svn/llvm-project/cfe/trunk</a> clang<br>
-                <br>&gt; svn co <a href="http://llvm.org/svn/llvm-project/lldb/trunk" target="_blank">http://llvm.org/svn/llvm-project/lldb/trunk</a> lldb<br>
-                </code><br>
-<br>
-                <p>In general, building the LLDB trunk revision requires trunk revisions of both<br>
-                LLVM and Clang.<br>
-                <p>It is highly recommended that you build the system out of tree.  Create a second<br>
-                build directory and configure the LLVM project tree to your specifications as<br>
-                outlined in LLVM&#8217;s <em>Getting Started Guide</em>.  A typical build procedure<br>
-                might be:</p><br>
-                <code>&gt; cd $llvm/..<br>
-                  <br>&gt; mkdir build<br>
-                  <br>&gt; cd build<br>
-                </code><br>
-                <h2>To build with CMake</h2><br>
-                <p>Using CMake is documented on the <a href="<a href="http://llvm.org/docs/CMake.html" target="_blank">http://llvm.org/docs/CMake.html</a>">Building LLVM with CMake</a><br>
-                   page. Building LLDB is possible using one of the following generators:<br>
-                </p><br>
-                <ul><br>
-                  <li> Ninja </li><br>
-                  <li> Unix Makefiles </li><br>
-                </ul><br>
-                <h3>Using CMake + Ninja</h3><br>
-                <p>Ninja is the fastest way to build LLDB! In order to use ninja, you need to have recent versions of CMake and<br>
-                   ninja on your system. To build using ninja:<br>
-                </p><br>
-                <code><br>
-                  &gt; cmake .. -G Ninja<br>
-                  <br>&gt; ninja lldb<br>
-                  <br>&gt; ninja check-lldb<br>
-                </code><br>
-                <h3>Using CMake + Unix Makefiles</h3><br>
-                <p>If you do not have Ninja, you can still use CMake to generate Unix Makefiles that build LLDB:</p><br>
-                <code><br>
-                  &gt; cmake ..<br>
-                  <br>&gt; make<br>
-                  <br>&gt; make check-lldb<br>
-                </code><br>
-                <h2>To build with autoconf</h2><br>
-                <p>If you do not have CMake, it is still possible to build LLDB using the autoconf build system. If you are using<br>
-                   Clang or GCC 4.8+, run:</p><br>
-                <code><br>
-                  &gt; $llvm/configure<br>
-                  <br>&gt; make </code><br>
-                <p>If you are building with a GCC that isn't the default gcc/g++, like gcc-4.9/g++-4.9</p><br>
-                <code><br>
-                  &gt; $llvm/configure CC=gcc-4.9 CXX=g++-4.9<br>
-                  <br>&gt; make CC=gcc-4.9 CXX=g++-4.9</code><br>
-                <p>If you are running in a system that doesn't have a lot of RAM (less than 4GB), you might want to disable<br>
-                    debug symbols by specifying DEBUG_SYMBOLS=0 when running make. You will know if you need to enable this<br>
-                    because you will fail to link clang (the linker will get a SIGKILL and exit with status 9).</p><br>
-                <code><br>
-                    &gt; make DEBUG_SYMBOLS=0</code><br>
-                <p> To run the LLDB test suite, run:</p><br>
-                <code><br>
-                  <br>&gt; make -C tools/lldb/test</code><br>
-                <p>Note that once both LLVM and Clang have been configured and built it is not<br>
-                necessary to perform a top-level <tt>make</tt> to rebuild changes made only to LLDB.<br>
-                You can run <tt>make</tt> from the <tt>build/tools/lldb</tt> subdirectory as well.</p><br>
-                <p> If you wish to build with libc++ instead of libstdc++ (the default), run configure with the<br>
-                <tt>--enable-libcpp</tt> flag.</p><br>
-                <p> If you wish to build a release version of LLDB, run configure with the <tt>--enable-optimized</tt> flag.</p><br>
+            </p><br>
+            <p><br>
+              For reference, we will call the root of the LLVM project tree <tt>$llvm</tt>, and the<br>
+              roots of the Clang and LLDB source trees <tt>$clang</tt> and <tt>$lldb</tt> respectively.<br>
+            </p><br>
+            <p>Change to the directory where you want to do development work and checkout LLVM:</p><br>
+            <code>&gt; svn co <a href="http://llvm.org/svn/llvm-project/llvm/trunk" target="_blank">http://llvm.org/svn/llvm-project/llvm/trunk</a> llvm</code><br>
+<br>
+            <p>Now switch to LLVM&#8217;s tools subdirectory and checkout both Clang and LLDB:</p><br>
+            <code><br>
+              &gt; cd $llvm/tools<br>
+              <br />&gt; svn co <a href="http://llvm.org/svn/llvm-project/cfe/trunk" target="_blank">http://llvm.org/svn/llvm-project/cfe/trunk</a> clang<br>
+              <br />&gt; svn co <a href="http://llvm.org/svn/llvm-project/lldb/trunk" target="_blank">http://llvm.org/svn/llvm-project/lldb/trunk</a> lldb<br>
+            </code><br>
<br>
-                <h2>Testing</h2><br>
-                <p>By default, the <tt>check-lldb</tt> target builds the 64-bit variants of the test programs with the same<br>
-                compiler that was used to build LLDB. It is possible to customize the architecture and compiler by appending -A and<br>
-                -C options respectively to the CMake variable <tt>LLDB_TEST_ARGS</tt>. For example, to test LLDB against 32-bit binaries<br>
-                built with a custom version of clang, do:</p><br>
-                <code><br>
-                  <br>&gt; cmake -DLLDB_TEST_ARGS="-A i386 -C /path/to/custom/clang" -G Ninja<br>
-                  <br>&gt; ninja check-lldb<br>
-                </code><br>
-                <p>Note that multiple -A and -C flags can be specified to <tt>LLDB_TEST_ARGS</tt>.</p><br>
-                <p>In addition to running all the LLDB test suites with the "check-lldb" CMake target above, it is possible to<br>
-                run individual LLDB tests. For example, to run the test cases defined in TestInferiorCrashing.py, run:</p><br>
-                <code><br>
-                  <br>&gt; cd $lldb/test<br>
-                  <br>&gt; python dotest.py --executable &lt;path-to-lldb&gt;  -p TestInferiorCrashing.py<br>
-                </code><br>
-                <p>In addition to running a test by name, it is also possible to specify a directory path to <tt>dotest.py</tt><br>
-                in order to run all the tests under that directory. For example, to run all the tests under the<br>
-                'functionalities/data-formatter' directory, run:</p><br>
-                <code><br>
-                  <br>&gt; python dotest.py --executable &lt;path-to-lldb&gt; functionalities/data-formatter<br>
-                </code><br>
-                <p>To dump additional information to <tt>stdout</tt> about how the test harness is driving LLDB, run<br>
-                <tt>dotest.py</tt> with the <tt>-t</tt> flag. Many more options that are available. To see a list of all of them, run:</p><br>
-                <code><br>
-                  <br>&gt; python dotest.py -h<br>
-                </code><br>
-                <h2>Building API reference documentation</h2><br>
-                <p>LLDB exposes a C++ as well as a Python API. To build the reference documentation for these two APIs, ensure you have<br>
-                the required dependencies installed, and build the <tt>lldb-python-doc</tt> and <tt>lldb-cpp-doc</tt> CMake targets.</p><br>
-                <p> The output HTML reference documentation can be found in <tt>&lt;build-dir&gt;/tools/lldb/docs/</tt>.<p><br>
-                <h2>Additional Notes</h2><br>
-                <p>LLDB has a Python scripting capability and supplies its own Python module named <tt>lldb</tt>.<br>
-                If a script is run inside the command line <tt>lldb</tt> application, the Python module<br>
-                is made available automatically.  However, if a script is to be run by a Python interpreter<br>
-                outside the command line application, the <tt>PYTHONPATH</tt> environment variable can be used<br>
-                to let the Python interpreter find the <tt>lldb</tt> module.<br>
-                <p>The correct path can be obtained by invoking the command line <tt>lldb</tt> tool with the -P flag:</p><br>
-                <code>&gt; export PYTHONPATH=`$llvm/build/Debug+Asserts/bin/lldb -P`</code><br>
-                <p>If you used a different build directory or made a release build, you may need to adjust the<br>
-                above to suit your needs. To test that the lldb Python module<br>
-                is built correctly and is available to the default Python interpreter, run:</p><br>
-                <code>&gt; python -c 'import lldb'</code></p><br>
-                </div><br>
-               <div class="postfooter"></div><br>
-               </div><br>
-       </div><br>
-       </div><br>
-</div><br>
+            <p><br>
+              In general, building the LLDB trunk revision requires trunk revisions of both<br>
+              LLVM and Clang.<br>
+            </p><br>
+            <p><br>
+              It is highly recommended that you build the system out of tree.  Create a second<br>
+              build directory and configure the LLVM project tree to your specifications as<br>
+              outlined in LLVM&#8217;s <em>Getting Started Guide</em>.  A typical build procedure<br>
+              might be:<br>
+            </p><br>
+            <code><br>
+              &gt; cd $llvm/..<br>
+              <br />&gt; mkdir build<br>
+              <br />&gt; cd build<br>
+            </code><br>
+            <h2>To build with CMake</h2><br>
+            <p><br>
+              Using CMake is documented on the <a href="<a href="http://llvm.org/docs/CMake.html" target="_blank">http://llvm.org/docs/CMake.html</a>">Building LLVM with CMake</a><br>
+              page. Building LLDB is possible using one of the following generators:<br>
+            </p><br>
+            <ul><br>
+              <li> Ninja </li><br>
+              <li> Unix Makefiles </li><br>
+            </ul><br>
+            <h3>Using CMake + Ninja</h3><br>
+            <p><br>
+              Ninja is the fastest way to build LLDB! In order to use ninja, you need to have recent versions of CMake and<br>
+              ninja on your system. To build using ninja:<br>
+            </p><br>
+            <code><br>
+              &gt; cmake .. -G Ninja<br>
+              <br />&gt; ninja lldb<br>
+              <br />&gt; ninja check-lldb<br>
+            </code><br>
+            <h3>Using CMake + Unix Makefiles</h3><br>
+            <p>If you do not have Ninja, you can still use CMake to generate Unix Makefiles that build LLDB:</p><br>
+            <code><br>
+              &gt; cmake ..<br>
+              <br />&gt; make<br>
+              <br />&gt; make check-lldb<br>
+            </code><br>
+            <h2>To build with autoconf</h2><br>
+            <p><br>
+              If you do not have CMake, it is still possible to build LLDB using the autoconf build system. If you are using<br>
+              Clang or GCC 4.8+, run:<br>
+            </p><br>
+            <code><br>
+              &gt; $llvm/configure<br>
+              <br />&gt; make<br>
+            </code><br>
+            <p>If you are building with a GCC that isn't the default gcc/g++, like gcc-4.9/g++-4.9</p><br>
+            <code><br>
+              &gt; $llvm/configure CC=gcc-4.9 CXX=g++-4.9<br>
+              <br />&gt; make CC=gcc-4.9 CXX=g++-4.9<br>
+            </code><br>
+            <p><br>
+              If you are running in a system that doesn't have a lot of RAM (less than 4GB), you might want to disable<br>
+              debug symbols by specifying DEBUG_SYMBOLS=0 when running make. You will know if you need to enable this<br>
+              because you will fail to link clang (the linker will get a SIGKILL and exit with status 9).<br>
+            </p><br>
+            <code><br>
+              &gt; make DEBUG_SYMBOLS=0<br>
+            </code><br>
+            <p> To run the LLDB test suite, run:</p><br>
+            <code><br>
+              <br />&gt; make -C tools/lldb/test<br>
+            </code><br>
+            <p><br>
+              Note that once both LLVM and Clang have been configured and built it is not<br>
+              necessary to perform a top-level <tt>make</tt> to rebuild changes made only to LLDB.<br>
+              You can run <tt>make</tt> from the <tt>build/tools/lldb</tt> subdirectory as well.<br>
+            </p><br>
+            <p><br>
+              If you wish to build with libc++ instead of libstdc++ (the default), run configure with the<br>
+              <tt>--enable-libcpp</tt> flag.<br>
+            </p><br>
+            <p> If you wish to build a release version of LLDB, run configure with the <tt>--enable-optimized</tt> flag.</p><br>
+            <h2>Testing</h2><br>
+            <p><br>
+              By default, the <tt>check-lldb</tt> target builds the 64-bit variants of the test programs with the same<br>
+              compiler that was used to build LLDB. It is possible to customize the architecture and compiler by appending -A and<br>
+              -C options respectively to the CMake variable <tt>LLDB_TEST_ARGS</tt>. For example, to test LLDB against 32-bit binaries<br>
+              built with a custom version of clang, do:<br>
+            </p><br>
+            <code><br>
+              <br />&gt; cmake -DLLDB_TEST_ARGS="-A i386 -C /path/to/custom/clang" -G Ninja<br>
+              <br />&gt; ninja check-lldb<br>
+            </code><br>
+            <p>Note that multiple -A and -C flags can be specified to <tt>LLDB_TEST_ARGS</tt>.</p><br>
+            <p><br>
+              In addition to running all the LLDB test suites with the "check-lldb" CMake target above, it is possible to<br>
+              run individual LLDB tests. For example, to run the test cases defined in TestInferiorCrashing.py, run:<br>
+            </p><br>
+            <code><br>
+              <br />&gt; cd $lldb/test<br>
+              <br />&gt; python dotest.py --executable &lt;path-to-lldb&gt;  -p TestInferiorCrashing.py<br>
+            </code><br>
+            <p><br>
+              In addition to running a test by name, it is also possible to specify a directory path to <tt>dotest.py</tt><br>
+              in order to run all the tests under that directory. For example, to run all the tests under the<br>
+              'functionalities/data-formatter' directory, run:<br>
+            </p><br>
+            <code><br>
+              <br />&gt; python dotest.py --executable &lt;path-to-lldb&gt; functionalities/data-formatter<br>
+            </code><br>
+            <p><br>
+              To dump additional information to <tt>stdout</tt> about how the test harness is driving LLDB, run<br>
+              <tt>dotest.py</tt> with the <tt>-t</tt> flag. Many more options that are available. To see a list of all of them, run:<br>
+            </p><br>
+            <code><br>
+              <br />&gt; python dotest.py -h<br>
+            </code><br>
+            <h2>Building API reference documentation</h2><br>
+            <p><br>
+              LLDB exposes a C++ as well as a Python API. To build the reference documentation for these two APIs, ensure you have<br>
+              the required dependencies installed, and build the <tt>lldb-python-doc</tt> and <tt>lldb-cpp-doc</tt> CMake targets.<br>
+            </p><br>
+            <p> The output HTML reference documentation can be found in <tt>&lt;build-dir&gt;/tools/lldb/docs/</tt>.</p><p><br>
+              <h2>Additional Notes</h2><br>
+            </p><br>
+            <p><br>
+              LLDB has a Python scripting capability and supplies its own Python module named <tt>lldb</tt>.<br>
+              If a script is run inside the command line <tt>lldb</tt> application, the Python module<br>
+              is made available automatically.  However, if a script is to be run by a Python interpreter<br>
+              outside the command line application, the <tt>PYTHONPATH</tt> environment variable can be used<br>
+              to let the Python interpreter find the <tt>lldb</tt> module.<br>
+            </p><br>
+            <p>The correct path can be obtained by invoking the command line <tt>lldb</tt> tool with the -P flag:</p><br>
+            <code>&gt; export PYTHONPATH=`$llvm/build/Debug+Asserts/bin/lldb -P`</code><br>
+            <p><br>
+              If you used a different build directory or made a release build, you may need to adjust the<br>
+              above to suit your needs. To test that the lldb Python module<br>
+              is built correctly and is available to the default Python interpreter, run:<br>
+            </p><br>
+            <code>&gt; python -c 'import lldb'</code></p><br>
+          </div><br>
+          <div class="postfooter"></div><br>
+        </div><br>
+      </div><br>
+    </div><br>
+  </div><br>
 </body><br>
 </html><br>
<br>
<br>
_______________________________________________<br>
lldb-commits mailing list<br>
<a href="mailto:lldb-commits@cs.uiuc.edu">lldb-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits</a><br>
</blockquote></div><br></div>