llvm-build: Add an explicit component type to represent targets.

- Gives us a place to hang target specific metadata (like whether the target has a JIT).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144250 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Daniel Dunbar
2011-11-10 00:49:51 +00:00
parent 1e5b24330b
commit c352caf168
15 changed files with 112 additions and 22 deletions

View File

@@ -134,7 +134,7 @@ $ROOT of project trees for things which can be checked out separately. -->
</div>
<!-- *********************************************************************** -->
<h2><a name="formatref">LLVMBuild Format Reference</a></h2>
<h2><a name="formatreference">LLVMBuild Format Reference</a></h2>
<!-- *********************************************************************** -->
<div>
@@ -151,11 +151,12 @@ $ROOT of project trees for things which can be checked out separately. -->
<i>; Properties are declared using '=' and are contained in the previous section.
;
; We support simple scalar values and list values, where items are separated by
; spaces. There is no support for quoting, and so property values may not contain
; spaces.</i>
; We support simple string and boolean scalar values and list values, where
; items are separated by spaces. There is no support for quoting, and so
; property values may not contain spaces.</i>
property_name = property_value
list_property_name = value_1 value_2 <em>...</em> value_n
boolean_property_name = 1 <em>(or 0)</em>
</pre>
</div>
@@ -281,6 +282,21 @@ required_libraries = Archive BitReader Core Support TransformUtils
</ul>
</li>
<li><i>type = TargetGroup</i>
<p>TargetGroup components are an extension of LibraryGroups, specifically
for defining LLVM targets (which are handled specially in a few
places).</p>
<p>The name of the component should always be the name of the target.</p>
<p>Components with this type use the LibraryGroup properties in addition
to:</p>
<ul>
<li><i>has_jit</i> <b>[optional]</b> <b>[boolean]</b>
<p>Whether this target supports JIT compilation.</p></li>
</ul>
</li>
<li><i>type = Tool</i>
<p>Tool components define standalone command line tools which should be
built from the source code in the component directory and linked.</p>