[Lldb-commits] [lldb] r225022 - Fix HTML formatting and non-conformance.

Zachary Turner zturner at google.com
Tue Dec 30 16:51:35 PST 2014


Hmm are you sure? Looking at the patch text, only some empty lines before
and after the opening <body> were removed. Are you seeing this live on the
website?
On Tue, Dec 30, 2014 at 4:49 PM Nico Weber <thakis at chromium.org> wrote:

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


More information about the lldb-commits mailing list