X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=docs%2FCMake.rst;h=988e12b73502887fb5dda1e8e68fa02c824ec0e9;hb=78f173a22d94ec3fbcbd9fe0adf1f2093fb9a95e;hp=8459081fb8b3118b6f736850e317807e51f1ce7b;hpb=ee03c949b85036b68c261dcc27dca064ee7e525d;p=oota-llvm.git diff --git a/docs/CMake.rst b/docs/CMake.rst index 8459081fb8b..988e12b7350 100644 --- a/docs/CMake.rst +++ b/docs/CMake.rst @@ -87,7 +87,7 @@ names are case-sensitive. Example: .. code-block:: console - $ cmake -G "Visual Studio 9 2008" path/to/llvm/source/root + $ cmake -G "Visual Studio 11" path/to/llvm/source/root For a given development platform there can be more than one adequate generator. If you use Visual Studio "NMake Makefiles" is a generator you can use @@ -132,7 +132,7 @@ write the variable and the type on the CMake command line: Frequently-used CMake variables ------------------------------- -Here are listed some of the CMake variables that are used often, along with a +Here are some of the CMake variables that are used often, along with a brief explanation and LLVM-specific notes. For full documentation, check the CMake docs or execute ``cmake --help-variable VARIABLE_NAME``. @@ -157,8 +157,8 @@ CMake docs or execute ``cmake --help-variable VARIABLE_NAME``. Extra flags to use when compiling C++ source files. **BUILD_SHARED_LIBS**:BOOL - Flag indicating is shared libraries will be built. Its default value is - OFF. Shared libraries are not supported on Windows and not recommended in the + Flag indicating if shared libraries will be built. Its default value is + OFF. Shared libraries are not supported on Windows and not recommended on the other OSes. .. _LLVM-specific variables: @@ -211,6 +211,9 @@ LLVM-specific variables **LLVM_ENABLE_THREADS**:BOOL Build with threads support, if available. Defaults to ON. +**LLVM_ENABLE_CXX1Y**:BOOL + Build in C++1y mode, if available. Defaults to OFF. + **LLVM_ENABLE_ASSERTIONS**:BOOL Enables code assertions. Defaults to OFF if and only if ``CMAKE_BUILD_TYPE`` is *Release*. @@ -263,7 +266,7 @@ LLVM-specific variables **LLVM_EXTERNAL_{CLANG,LLD,POLLY}_SOURCE_DIR**:PATH Path to ``{Clang,lld,Polly}``\'s source directory. Defaults to ``tools/{clang,lld,polly}``. ``{Clang,lld,Polly}`` will not be built when it - is empty or it does not point valid path. + is empty or it does not point to a valid path. **LLVM_USE_OPROFILE**:BOOL Enable building OProfile JIT support. Defaults to OFF @@ -275,6 +278,83 @@ LLVM-specific variables Build with zlib to support compression/uncompression in LLVM tools. Defaults to ON. +**LLVM_USE_SANITIZER**:STRING + Define the sanitizer used to build LLVM binaries and tests. Possible values + are ``Address``, ``Memory`` and ``MemoryWithOrigins``. Defaults to empty + string. + +**LLVM_BUILD_DOCS**:BOOL + Enables all enabled documentation targets (i.e. Doxgyen and Sphinx targets) to + be built as part of the normal build. If the ``install`` target is run then + this also enables all built documentation targets to be installed. Defaults to + OFF. + +**LLVM_ENABLE_DOXYGEN**:BOOL + Enables the generation of browsable HTML documentation using doxygen. + Defaults to OFF. + +**LLVM_ENABLE_DOXYGEN_QT_HELP**:BOOL + Enables the generation of a Qt Compressed Help file. Defaults to OFF. + This affects the make target ``doxygen-llvm``. When enabled, apart from + the normal HTML output generated by doxygen, this will produce a QCH file + named ``org.llvm.qch``. You can then load this file into Qt Creator. + This option is only useful in combination with ``-DLLVM_ENABLE_DOXYGEN=ON``; + otherwise this has no effect. + +**LLVM_DOXYGEN_QCH_FILENAME**:STRING + The filename of the Qt Compressed Help file that will be genrated when + ``-DLLVM_ENABLE_DOXYGEN=ON`` and + ``-DLLVM_ENABLE_DOXYGEN_QT_HELP=ON`` are given. Defaults to + ``org.llvm.qch``. + This option is only useful in combination with + ``-DLLVM_ENABLE_DOXYGEN_QT_HELP=ON``; + otherwise this has no effect. + +**LLVM_DOXYGEN_QHP_NAMESPACE**:STRING + Namespace under which the intermediate Qt Help Project file lives. See `Qt + Help Project`_ + for more information. Defaults to "org.llvm". This option is only useful in + combination with ``-DLLVM_ENABLE_DOXYGEN_QT_HELP=ON``; otherwise + this has no effect. + +**LLVM_DOXYGEN_QHP_CUST_FILTER_NAME**:STRING + See `Qt Help Project`_ for + more information. Defaults to the CMake variable ``${PACKAGE_STRING}`` which + is a combination of the package name and version string. This filter can then + be used in Qt Creator to select only documentation from LLVM when browsing + through all the help files that you might have loaded. This option is only + useful in combination with ``-DLLVM_ENABLE_DOXYGEN_QT_HELP=ON``; + otherwise this has no effect. + +.. _Qt Help Project: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-filters + +**LLVM_DOXYGEN_QHELPGENERATOR_PATH**:STRING + The path to the ``qhelpgenerator`` executable. Defaults to whatever CMake's + ``find_program()`` can find. This option is only useful in combination with + ``-DLLVM_ENABLE_DOXYGEN_QT_HELP=ON``; otherwise this has no + effect. + +**LLVM_ENABLE_SPHINX**:BOOL + If enabled CMake will search for the ``sphinx-build`` executable and will make + the ``SPHINX_OUTPUT_HTML`` and ``SPHINX_OUTPUT_MAN`` CMake options available. + Defaults to OFF. + +**SPHINX_EXECUTABLE**:STRING + The path to the ``sphinx-build`` executable detected by CMake. + +**SPHINX_OUTPUT_HTML**:BOOL + If enabled (and ``LLVM_ENABLE_SPHINX`` is enabled) then the targets for + building the documentation as html are added (but not built by default unless + ``LLVM_BUILD_DOCS`` is enabled). There is a target for each project in the + source tree that uses sphinx (e.g. ``docs-llvm-html``, ``docs-clang-html`` + and ``docs-lld-html``). Defaults to ON. + +**SPHINX_OUTPUT_MAN**:BOOL + If enabled (and ``LLVM_ENABLE_SPHINX`` is enabled) the targets for building + the man pages are added (but not built by default unless ``LLVM_BUILD_DOCS`` + is enabled). Currently the only target added is ``docs-llvm-man``. Defaults + to ON. + Executing the test suite ======================== @@ -417,6 +497,5 @@ Microsoft Visual C++ **LLVM_COMPILER_JOBS**:STRING Specifies the maximum number of parallell compiler jobs to use per project - when building with msbuild or Visual Studio. Only supported for Visual Studio - 2008 and Visual Studio 2010 CMake generators. 0 means use all - processors. Default is 0. + when building with msbuild or Visual Studio. Only supported for the Visual + Studio 2010 CMake generator. 0 means use all processors. Default is 0.