[PATCH] D20838: Add new LLVM_EXTERNAL_PROJECTS option to cmake
Tamas Berghammer via llvm-commits
llvm-commits at lists.llvm.org
Tue May 31 14:35:35 PDT 2016
tberghammer created this revision.
tberghammer added reviewers: chandlerc, beanz.
tberghammer added a subscriber: llvm-commits.
Add new LLVM_EXTERNAL_PROJECTS option to cmake
The new option makes it possible to build external projects as part of
the llvm build without copying (or symlinking) then into llvm/tool with
specifying a few additional cmake variables.
Example usage (2 additional project called foo and bar):
-DLLVM_EXTERNAL_PROJECTS="Foo;Bar"
-DLLVM_EXTERNAL_FOO_SOURCE_DIR=/src/foo
-DLLVM_EXTERNAL_BAR_SOURCE_DIR=/src/bar
Note: This is the extension of the approach we already support for
clang/lldb/poly with adding an option to specify additional supported
projects.
http://reviews.llvm.org/D20838
Files:
docs/CMake.rst
tools/CMakeLists.txt
Index: tools/CMakeLists.txt
===================================================================
--- tools/CMakeLists.txt
+++ tools/CMakeLists.txt
@@ -49,4 +49,9 @@
# file as external projects.
add_llvm_implicit_projects()
+# Add subprojects specified using LLVM_EXTERNAL_PROJECTS
+foreach(p ${LLVM_EXTERNAL_PROJECTS})
+ add_llvm_external_project(${p})
+endforeach(p)
+
set(LLVM_COMMON_DEPENDS ${LLVM_COMMON_DEPENDS} PARENT_SCOPE)
Index: docs/CMake.rst
===================================================================
--- docs/CMake.rst
+++ docs/CMake.rst
@@ -328,6 +328,14 @@
will not be used. If the variable for an external project does not point
to a valid path, then that project will not be built.
+**LLVM_EXTERNAL_PROJECTS**:STRING
+ Semicolon-separated list of additional external projects to build as part of
+ llvm. For each project LLVM_EXTERNAL_<NAME>_SOURCE_DIR have to be specified
+ with the path for the source code of the project. Example:
+ ``-DLLVM_EXTERNAL_PROJECTS="Foo;Bar"
+ -DLLVM_EXTERNAL_FOO_SOURCE_DIR=/src/foo
+ -DLLVM_EXTERNAL_BAR_SOURCE_DIR=/src/bar``.
+
**LLVM_USE_OPROFILE**:BOOL
Enable building OProfile JIT support. Defaults to OFF.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20838.59132.patch
Type: text/x-patch
Size: 1200 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160531/229abc9c/attachment.bin>
More information about the llvm-commits
mailing list