2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-14 00:32:11 +00:00

Document abstract-target and its subclasses.

[SVN r77757]
This commit is contained in:
Steven Watanabe
2012-04-04 16:46:39 +00:00
parent 32640ce526
commit 55c99be4fc
5 changed files with 486 additions and 0 deletions

101
doc/src/basic-target.xml Normal file
View File

@@ -0,0 +1,101 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE section PUBLIC "-//Boost//DTD BoostBook XML V1.0//EN"
"http://www.boost.org/tools/boostbook/dtd/boostbook.dtd">
<section id="bbv2.reference.class.basic-target">
<title>Class basic-target</title>
<indexterm>
<primary>basic-target</primary>
</indexterm>
<para>
Derived from <link linkend="bbv2.reference.class.abstract-target">abstract-target</link>.
</para>
<para>
Implements the most standard way of constructing main target alternative from
sources. Allows sources to be either files or other main targets and handles
generation of those dependency targets.
<!-- FIXME: Better description of sources. The sources can be either target
references or instances of abstract-target. -->
</para>
<orderedlist>
<listitem>
<code language="jam">rule __init__ ( name : project : sources * : requirements * : default-build * : usage-requirements * )</code>
</listitem>
<listitem id="bbv2.reference.class.basic-target.name">
<code language="jam">rule name ( )</code>
<para>
Returns the name of this target. Inherited from
<link linkend="bbv2.reference.class.abstract-target">abstract-target</link>.
</para>
</listitem>
<listitem id="bbv2.reference.class.basic-target.project">
<code language="jam">rule project ( )</code>
<para>
Returns the project for this target. Inherited from
<link linkend="bbv2.reference.class.abstract-target">abstract-target</link>.
</para>
</listitem>
<listitem id="bbv2.reference.class.basic-target.location">
<code language="jam">rule location ( )</code>
<para>
Return the location where the target was declared. Inherited from
<link linkend="bbv2.reference.class.abstract-target">abstract-target</link>.
</para>
</listitem>
<listitem id="bbv2.reference.class.basic-target.full-name">
<code language="jam">rule full-name ( )</code>
<para>
Returns a user-readable name for this target. Inherited from
<link linkend="bbv2.reference.class.abstract-target">abstract-target</link>.
</para>
</listitem>
<listitem id="bbv2.reference.class.basic-target.generate">
<indexterm zone="bbv2.reference.class.basic-target.generate">
<primary>generate</primary>
<secondary>Basic Target Method</secondary>
</indexterm>
<code language="jam">rule generate ( property-set )</code>
<para>
Overrides
<link linkend="bbv2.reference.class.abstract-target.generate">abstract-target.generate</link>.
Determines final build properties, generates sources, and calls
<link linkend="bbv2.reference.class.basic-target.construct">construct</link>.
This method should not be overridden.
</para>
<para>
On success, returns:
<itemizedlist>
<listitem>a property-set with the usage requirements to be applied to dependents</listitem>
<listitem>a list of produced virtual targets, which may be empty.</listitem>
</itemizedlist>
</para>
</listitem>
<listitem id="bbv2.reference.class.basic-target.construct">
<indexterm zone="bbv2.reference.class.basic-target.construct">
<primary>construct</primary>
<secondary>Basic Target Method</secondary>
</indexterm>
<code language="jam">rule construct ( name : source-targets * : properties * )</code>
<para>
Constructs virtual targets for this abstract target and the dependency
graph. Returns a usage-requirements property-set and a list of virtual
targets. Should be overriden in derived classes.
</para>
</listitem>
</orderedlist>
</section>