2
0
mirror of https://gitlab.com/ita1024/waf.git synced 2024-11-22 01:46:15 +01:00

New diagrams

This commit is contained in:
Thomas Nagy 2014-11-16 21:35:01 +01:00
parent 4e0157be02
commit 1145171b62
No known key found for this signature in database
GPG Key ID: 67A565EDFDF90E64
22 changed files with 79 additions and 12640 deletions

View File

@ -50,7 +50,7 @@ class somename(Context):
fun = 'foo'
---------------
image::classes{PIC}["Context classes"{backend@docbook:,width=500:},align="center"]
image::classes{PIC}["Context classes"{backend@docbook:,width=1000:},align="center"]
==== Build classes
@ -62,7 +62,7 @@ The 'Parallel' object encapsulates the iteration over all tasks of the build con
The overall structure is represented on the following diagram:
image::classes_build{PIC}["Build classes"{backend@docbook:,width=500:},align="center"]
image::classes_build{PIC}["Build classes"{backend@docbook:,width=1000:},align="center"]
=== Context objects

View File

@ -181,7 +181,7 @@ Waf: Leaving directory `/tmp/build_lazy_tg/build'
A high level overview of the build process is represented on the following diagram:
image::build_overview{PIC}["Overview of the build phase"{backend@docbook:,width=250:},align="center"]
image::build_overview{PIC}["Overview of the build phase"{backend@docbook:,width=450:},align="center"]
NOTE: The tasks are all created before any of them is executed. New tasks may be created after the build has started, but the dependencies have to be set by using low-level apis.

View File

@ -1,690 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<dia:diagram xmlns:dia="http://www.lysator.liu.se/~alla/dia/">
<dia:diagramdata>
<dia:attribute name="background">
<dia:color val="#ffffff"/>
</dia:attribute>
<dia:attribute name="pagebreak">
<dia:color val="#000099"/>
</dia:attribute>
<dia:attribute name="paper">
<dia:composite type="paper">
<dia:attribute name="name">
<dia:string>#A4#</dia:string>
</dia:attribute>
<dia:attribute name="tmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="bmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="lmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="rmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="is_portrait">
<dia:boolean val="true"/>
</dia:attribute>
<dia:attribute name="scaling">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="fitto">
<dia:boolean val="false"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="grid">
<dia:composite type="grid">
<dia:attribute name="width_x">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="width_y">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="visible_x">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="visible_y">
<dia:int val="1"/>
</dia:attribute>
<dia:composite type="color"/>
</dia:composite>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#d8e5e5"/>
</dia:attribute>
<dia:attribute name="guides">
<dia:composite type="guides">
<dia:attribute name="hguides"/>
<dia:attribute name="vguides"/>
</dia:composite>
</dia:attribute>
</dia:diagramdata>
<dia:layer name="Fondo" visible="true" active="true">
<dia:object type="UML - State Term" version="0" id="O0">
<dia:attribute name="obj_pos">
<dia:point val="21.07,3.15"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="21.02,3.1;22.12,4.2"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="21.07,3.15"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#ffffff"/>
</dia:attribute>
<dia:attribute name="is_final">
<dia:boolean val="false"/>
</dia:attribute>
</dia:object>
<dia:object type="UML - State Term" version="0" id="O1">
<dia:attribute name="obj_pos">
<dia:point val="32.7544,18.45"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="32.7044,18.4;34.3044,20"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="32.7544,18.45"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="1.5"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="1.5"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#ffffff"/>
</dia:attribute>
<dia:attribute name="is_final">
<dia:boolean val="true"/>
</dia:attribute>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O2">
<dia:attribute name="obj_pos">
<dia:point val="16.7,10.3429"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="16.65,10.2929;26.49,12.9929"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="16.7,10.3429"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="9.7400000000000002"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Execute the build functions
from user scripts#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="21.57,11.4379"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O3">
<dia:attribute name="obj_pos">
<dia:point val="16.9962,14.5643"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="16.9462,14.5143;26.1937,17.2143"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="16.9962,14.5643"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="9.1474999999999991"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Have the task generators
generate the tasks#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="21.57,15.6593"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O4">
<dia:attribute name="obj_pos">
<dia:point val="30.007,6.08571"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="29.957,6.03571;37.052,8.73571"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="30.007,6.08571"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="6.9950000000000001"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Set the build order
on the tasks#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="33.5045,7.18071"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O5">
<dia:attribute name="obj_pos">
<dia:point val="29.3707,10.2571"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="29.3207,10.2071;37.6882,12.9071"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="29.3707,10.2571"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="8.2675000000000001"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Execute the tasks
that must be executed#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="33.5044,11.3521"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O6">
<dia:attribute name="obj_pos">
<dia:point val="29.4307,14.2786"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="29.3807,14.2286;37.6282,16.9286"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="29.4307,14.2786"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="8.1474999999999991"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Save the BuildContext
data to the cache#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="33.5044,15.3736"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O7">
<dia:attribute name="obj_pos">
<dia:point val="21.57,4.15"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="21.2082,4.1;21.9318,6.18323"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="21.57,4.15"/>
<dia:point val="21.57,6.07143"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O0" connection="6"/>
<dia:connection handle="1" to="O13" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O8">
<dia:attribute name="obj_pos">
<dia:point val="21.57,12.9429"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="21.2082,12.8929;21.9318,14.6761"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="21.57,12.9429"/>
<dia:point val="21.57,14.5643"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O2" connection="6"/>
<dia:connection handle="1" to="O3" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O9">
<dia:attribute name="obj_pos">
<dia:point val="33.5045,8.68571"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="33.1426,8.63571;33.8662,10.3689"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="33.5045,8.68571"/>
<dia:point val="33.5044,10.2571"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O4" connection="6"/>
<dia:connection handle="1" to="O5" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O10">
<dia:attribute name="obj_pos">
<dia:point val="33.5044,12.8571"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="33.1426,12.8071;33.8662,14.3904"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="33.5044,12.8571"/>
<dia:point val="33.5044,14.2786"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O5" connection="6"/>
<dia:connection handle="1" to="O6" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O11">
<dia:attribute name="obj_pos">
<dia:point val="19.05,3.95"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="19.05,3.355;20.6125,4.1"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Start#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="19.05,3.95"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O12">
<dia:attribute name="obj_pos">
<dia:point val="31.15,19.35"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="31.15,18.755;32.3675,19.5"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#End#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="31.15,19.35"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O13">
<dia:attribute name="obj_pos">
<dia:point val="17.4775,6.07143"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="17.4275,6.02143;25.7125,8.72143"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="17.4775,6.07143"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="8.1849999999999987"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Read the BuildContext
data from the cache#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="21.57,7.16643"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O14">
<dia:attribute name="obj_pos">
<dia:point val="21.57,8.67143"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="21.2082,8.62143;21.9318,10.4547"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="21.57,8.67143"/>
<dia:point val="21.57,10.3429"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O13" connection="6"/>
<dia:connection handle="1" to="O2" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - ZigZagLine" version="1" id="O15">
<dia:attribute name="obj_pos">
<dia:point val="26.1437,15.8643"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="26.0937,4.75;33.8663,15.9143"/>
</dia:attribute>
<dia:attribute name="orth_points">
<dia:point val="26.1437,15.8643"/>
<dia:point val="28.05,15.8643"/>
<dia:point val="28.05,4.8"/>
<dia:point val="33.5045,4.8"/>
<dia:point val="33.5045,6.08571"/>
</dia:attribute>
<dia:attribute name="orth_orient">
<dia:enum val="0"/>
<dia:enum val="1"/>
<dia:enum val="0"/>
<dia:enum val="1"/>
</dia:attribute>
<dia:attribute name="autorouting">
<dia:boolean val="false"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O3" connection="4"/>
<dia:connection handle="1" to="O4" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O16">
<dia:attribute name="obj_pos">
<dia:point val="33.5044,16.8786"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="33.1426,16.8286;33.8662,18.5618"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="33.5044,16.8786"/>
<dia:point val="33.5044,18.45"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O6" connection="6"/>
<dia:connection handle="1" to="O1" connection="1"/>
</dia:connections>
</dia:object>
</dia:layer>
</dia:diagram>

Binary file not shown.

View File

@ -367,5 +367,5 @@ The first step in processing the source file attribute is to convert all file na
The list of nodes is then consumed by regular extension mappings. Extension methods may re-inject the output nodes for further processing by appending them to the the attribute 'source' (hence the name re-entrant provided in declare_chain).
image::source{PIC}["Source attribute processing"{backend@docbook:,width=250:},align="center"]
image::source{PIC}["Source attribute processing"{backend@docbook:,width=450:},align="center"]

File diff suppressed because it is too large Load Diff

BIN
docs/book/classes.semd Normal file

Binary file not shown.

View File

@ -141,12 +141,12 @@ Although the waf library is unpacked automatically from the waf binary file, it
The following diagram represents the process used to find the +waflib+ directory:
image::waflib{PIC}["Waflib discovery"{backend@docbook:,width=220:},align="center"]
image::waflib{PIC}["Waflib discovery"{backend@docbook:,width=450:},align="center"]
==== Portability concerns
By default, the recommended Python interpreter is cPython, for which the supported versions are 2.5 to 3.1. For maximum convenience for the user, a copy of the http://www.jython.org[Jython] interpreter in the version 2.5 could be redistributed along with a copy of the Waf executable.
By default, the recommended Python interpreter is cPython, for which the supported versions are 2.5 to 3.4. For maximum convenience for the user, a copy of the http://www.jython.org[Jython] interpreter (version >= 2.5) could be redistributed along with a copy of the Waf executable.
WARNING: The 'waf' script must reside in a writable folder to unpack its cache files.

File diff suppressed because it is too large Load Diff

BIN
docs/book/posting.semd Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

BIN
docs/book/prodcons.semd Normal file

Binary file not shown.

View File

@ -1,837 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<dia:diagram xmlns:dia="http://www.lysator.liu.se/~alla/dia/">
<dia:diagramdata>
<dia:attribute name="background">
<dia:color val="#ffffff"/>
</dia:attribute>
<dia:attribute name="pagebreak">
<dia:color val="#000099"/>
</dia:attribute>
<dia:attribute name="paper">
<dia:composite type="paper">
<dia:attribute name="name">
<dia:string>#A4#</dia:string>
</dia:attribute>
<dia:attribute name="tmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="bmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="lmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="rmargin">
<dia:real val="2.8222000598907471"/>
</dia:attribute>
<dia:attribute name="is_portrait">
<dia:boolean val="true"/>
</dia:attribute>
<dia:attribute name="scaling">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="fitto">
<dia:boolean val="false"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="grid">
<dia:composite type="grid">
<dia:attribute name="width_x">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="width_y">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="visible_x">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="visible_y">
<dia:int val="1"/>
</dia:attribute>
<dia:composite type="color"/>
</dia:composite>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#d8e5e5"/>
</dia:attribute>
<dia:attribute name="guides">
<dia:composite type="guides">
<dia:attribute name="hguides"/>
<dia:attribute name="vguides"/>
</dia:composite>
</dia:attribute>
</dia:diagramdata>
<dia:layer name="Fondo" visible="true" active="true">
<dia:object type="UML - State Term" version="0" id="O0">
<dia:attribute name="obj_pos">
<dia:point val="15.0649,1.75"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="15.0149,1.7;16.115,2.8"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="15.0649,1.75"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="1"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#ffffff"/>
</dia:attribute>
<dia:attribute name="is_final">
<dia:boolean val="false"/>
</dia:attribute>
</dia:object>
<dia:object type="UML - State Term" version="0" id="O1">
<dia:attribute name="obj_pos">
<dia:point val="21.5,5.775"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="21.45,5.725;23.05,7.325"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="21.5,5.775"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="1.5"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="1.5"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#ffffff"/>
</dia:attribute>
<dia:attribute name="is_final">
<dia:boolean val="true"/>
</dia:attribute>
</dia:object>
<dia:object type="UML - Branch" version="0" id="O2">
<dia:attribute name="obj_pos">
<dia:point val="14.5649,5.525"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="14.4942,5.45429;16.6357,7.59571"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="14.5649,5.525"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="2"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#aef9a5"/>
</dia:attribute>
</dia:object>
<dia:object type="UML - Branch" version="0" id="O3">
<dia:attribute name="obj_pos">
<dia:point val="14.5649,14.6"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="14.4942,14.5293;16.6357,16.6707"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="14.5649,14.6"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="2"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#aef9a5"/>
</dia:attribute>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O4">
<dia:attribute name="obj_pos">
<dia:point val="11.5462,9.85"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="11.4962,9.8;19.6337,12.5"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="11.5462,9.85"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="8.0374999999999996"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Transform the file into
a Node object#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="15.565,10.945"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O5">
<dia:attribute name="obj_pos">
<dia:point val="15.5649,2.75"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="15.2031,2.7;15.9268,5.6368"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="15.5649,2.75"/>
<dia:point val="15.5649,5.525"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O0" connection="6"/>
<dia:connection handle="1" to="O2" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O6">
<dia:attribute name="obj_pos">
<dia:point val="16.5649,6.525"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="16.5149,6.1632;21.6118,6.8868"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="16.5649,6.525"/>
<dia:point val="21.5,6.525"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O2" connection="2"/>
<dia:connection handle="1" to="O1" connection="3"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O7">
<dia:attribute name="obj_pos">
<dia:point val="15.5649,7.525"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="15.2031,7.475;15.9268,9.9618"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="15.5649,7.525"/>
<dia:point val="15.565,9.85"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O2" connection="3"/>
<dia:connection handle="1" to="O4" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O8">
<dia:attribute name="obj_pos">
<dia:point val="2,9.45"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="1.95,9.4;9.8875,12.9"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="2,9.45"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="7.8375000000000004"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="3.4000000000000004"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Execute the mapping
with the node
as parameter#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="5.91875,10.545"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Line" version="0" id="O9">
<dia:attribute name="obj_pos">
<dia:point val="15.565,12.45"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="15.2031,12.4;15.9268,14.7118"/>
</dia:attribute>
<dia:attribute name="conn_endpoints">
<dia:point val="15.565,12.45"/>
<dia:point val="15.5649,14.6"/>
</dia:attribute>
<dia:attribute name="numcp">
<dia:int val="1"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O4" connection="6"/>
<dia:connection handle="1" to="O3" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="UML - Activity" version="0" id="O10">
<dia:attribute name="obj_pos">
<dia:point val="12.9087,19.775"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="12.8587,19.725;18.2712,22.425"/>
</dia:attribute>
<dia:attribute name="meta">
<dia:composite type="dict"/>
</dia:attribute>
<dia:attribute name="elem_corner">
<dia:point val="12.9087,19.775"/>
</dia:attribute>
<dia:attribute name="elem_width">
<dia:real val="5.3125"/>
</dia:attribute>
<dia:attribute name="elem_height">
<dia:real val="2.6000000000000001"/>
</dia:attribute>
<dia:attribute name="line_colour">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="fill_colour">
<dia:color val="#fffea6"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#No mapping
raise an error#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="15.5649,20.87"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="1"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
</dia:object>
<dia:object type="Standard - ZigZagLine" version="1" id="O11">
<dia:attribute name="obj_pos">
<dia:point val="5.91875,9.45"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="5.86875,6.1632;14.6768,9.5"/>
</dia:attribute>
<dia:attribute name="orth_points">
<dia:point val="5.91875,9.45"/>
<dia:point val="5.91875,6.525"/>
<dia:point val="14.5649,6.525"/>
</dia:attribute>
<dia:attribute name="orth_orient">
<dia:enum val="1"/>
<dia:enum val="0"/>
</dia:attribute>
<dia:attribute name="autorouting">
<dia:boolean val="true"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O8" connection="1"/>
<dia:connection handle="1" to="O2" connection="0"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - ZigZagLine" version="1" id="O12">
<dia:attribute name="obj_pos">
<dia:point val="15.5649,16.6"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="14.9531,16.6;15.6768,20.1368"/>
</dia:attribute>
<dia:attribute name="orth_points">
<dia:point val="15.5649,16.6"/>
<dia:point val="15.5649,16.6"/>
<dia:point val="15.5649,19.775"/>
<dia:point val="15.5649,19.775"/>
</dia:attribute>
<dia:attribute name="orth_orient">
<dia:enum val="0"/>
<dia:enum val="1"/>
<dia:enum val="0"/>
</dia:attribute>
<dia:attribute name="autorouting">
<dia:boolean val="true"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O3" connection="3"/>
<dia:connection handle="1" to="O10" connection="1"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - ZigZagLine" version="1" id="O13">
<dia:attribute name="obj_pos">
<dia:point val="14.5649,15.6"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="5.55695,12.7382;14.615,15.65"/>
</dia:attribute>
<dia:attribute name="orth_points">
<dia:point val="14.5649,15.6"/>
<dia:point val="5.91875,15.6"/>
<dia:point val="5.91875,12.85"/>
</dia:attribute>
<dia:attribute name="orth_orient">
<dia:enum val="0"/>
<dia:enum val="1"/>
</dia:attribute>
<dia:attribute name="autorouting">
<dia:boolean val="true"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O3" connection="0"/>
<dia:connection handle="1" to="O8" connection="6"/>
</dia:connections>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O14">
<dia:attribute name="obj_pos">
<dia:point val="16.2,13.85"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="16.2,13.255;19.955,14.8"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Is there
a mapping?#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="16.2,13.85"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O15">
<dia:attribute name="obj_pos">
<dia:point val="21.55,5.3"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="21.55,4.705;22.7675,5.45"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#End#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="21.55,5.3"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O16">
<dia:attribute name="obj_pos">
<dia:point val="12.55,2.5"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="12.55,1.905;14.1125,2.65"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#Start#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="12.55,2.5"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O17">
<dia:attribute name="obj_pos">
<dia:point val="9.5,4.95"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="9.5,4.355;14.035,5.9"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#More entries
in self.source?#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="9.5,4.95"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O18">
<dia:attribute name="obj_pos">
<dia:point val="13.7,8.4"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="13.7,7.805;15.01,8.55"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#yes #</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="13.7,8.4"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O19">
<dia:attribute name="obj_pos">
<dia:point val="16.35,5.95"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="16.35,5.355;17.1475,6.1"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#no#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="16.35,5.95"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O20">
<dia:attribute name="obj_pos">
<dia:point val="12.85,15"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="12.85,14.405;14.16,15.15"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#yes #</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="12.85,15"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - Text" version="1" id="O21">
<dia:attribute name="obj_pos">
<dia:point val="15.7,17.2"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="15.7,16.605;16.4975,17.35"/>
</dia:attribute>
<dia:attribute name="text">
<dia:composite type="text">
<dia:attribute name="string">
<dia:string>#no#</dia:string>
</dia:attribute>
<dia:attribute name="font">
<dia:font family="sans" style="0" name="Helvetica"/>
</dia:attribute>
<dia:attribute name="height">
<dia:real val="0.80000000000000004"/>
</dia:attribute>
<dia:attribute name="pos">
<dia:point val="15.7,17.2"/>
</dia:attribute>
<dia:attribute name="color">
<dia:color val="#000000"/>
</dia:attribute>
<dia:attribute name="alignment">
<dia:enum val="0"/>
</dia:attribute>
</dia:composite>
</dia:attribute>
<dia:attribute name="valign">
<dia:enum val="3"/>
</dia:attribute>
</dia:object>
<dia:object type="Standard - ZigZagLine" version="1" id="O22">
<dia:attribute name="obj_pos">
<dia:point val="18.2212,21.075"/>
</dia:attribute>
<dia:attribute name="obj_bb">
<dia:rectangle val="18.1712,7.1632;22.6118,21.125"/>
</dia:attribute>
<dia:attribute name="orth_points">
<dia:point val="18.2212,21.075"/>
<dia:point val="22.25,21.075"/>
<dia:point val="22.25,7.275"/>
</dia:attribute>
<dia:attribute name="orth_orient">
<dia:enum val="0"/>
<dia:enum val="1"/>
</dia:attribute>
<dia:attribute name="autorouting">
<dia:boolean val="true"/>
</dia:attribute>
<dia:attribute name="end_arrow">
<dia:enum val="22"/>
</dia:attribute>
<dia:attribute name="end_arrow_length">
<dia:real val="0.5"/>
</dia:attribute>
<dia:attribute name="end_arrow_width">
<dia:real val="0.5"/>
</dia:attribute>
<dia:connections>
<dia:connection handle="0" to="O10" connection="4"/>
<dia:connection handle="1" to="O1" connection="6"/>
</dia:connections>
</dia:object>
</dia:layer>
</dia:diagram>

BIN
docs/book/source.semd Normal file

Binary file not shown.

View File

@ -248,7 +248,7 @@ def remove_process_source(self):
The task generator method workflow is represented in the following illustration:
image::posting{PIC}["Task generator workflow"{backend@docbook:,width=320:},align="center"]
image::posting{PIC}["Task generator workflow"{backend@docbook:,width=520:},align="center"]
==== Expressing abstract dependencies between task generators

File diff suppressed because it is too large Load Diff

BIN
docs/book/task_run.semd Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -105,7 +105,6 @@ def build(ctx):
<1> All task generators create their tasks before the build starts (default behaviour)
<2> Groups are processed sequentially: all tasks from previous groups are executed before the task generators from the next group are processed
<3> Combination of the two previous behaviours: task generators created by tasks in the next groups may create tasks
Build groups can be used for <<build_compiler_first,building a compiler to generate more source files>> to process.
@ -119,7 +118,7 @@ The producer uses the an internal list named _outstanding_ to iterate over the t
The following illustrates the relationship between the task producers and consumers as performed during the build:
image::prodcons{PIC}["Parallel execution"{backend@docbook:,width=470:},align="center"]
image::prodcons{PIC}["Parallel execution"{backend@docbook:,width=900:},align="center"]
==== Task states and status
@ -148,7 +147,7 @@ To decide to execute a task or not, the producer uses the value returned by the
The following diagram represents the interaction between the main task methods and the states and status:
image::task_run{PIC}["Task states"{backend@docbook:,width=310:},align="center"]
image::task_run{PIC}["Task states"{backend@docbook:,width=610:},align="center"]
=== Build order constraints
@ -249,7 +248,7 @@ The dependency tracking is based on the use of hashes of the dependencies called
The following diagram describes how 'waflib.Task.Task' instances are processed:
image::task_signature{PIC}["Signatures"{backend@docbook:,height=350:},align="center"]
image::task_signature{PIC}["Signatures"{backend@docbook:,height=580:},align="center"]
The following data is used in the signature computation:

File diff suppressed because it is too large Load Diff

View File

@ -10,6 +10,7 @@ VERSION='0.0.1'
APPNAME='wafdocs'
import os, re, shutil
from waflib import TaskGen
top = '.'
out = 'build'
@ -109,15 +110,15 @@ def build(bld):
tg = bld(rule='${DOT} -Tpng -o${TGT} ${SRC}', source=x, target=x.change_ext('.png'), scan=scansize)
#tg = bld(rule='${CONVERT} ${bld.raw_deps[tsk.uid()]} ${SRC} ${TGT}', source=x.change_ext('.eps'), target=x.change_ext('.png'), scan=scansize)
#for x in bld.path.ant_glob('*.dia'):
# tg = bld(rule='${DIA} -t eps ${SRC} -e ${TGT}', source=x, target=x.change_ext('.eps'))
# tg = bld(rule='${DIA} -t png ${SRC} -e ${TGT}', source=x, target=x.change_ext('.png'), scan=scansize)
# #bld(rule='${CONVERT} ${bld.raw_deps[tsk.uid()]} ${SRC} ${TGT}', source=tg.target, target=tg.target.change_ext('.png'), scan=scansize)
for x in bld.path.ant_glob('*.dia'):
tg = bld(rule='${DIA} -t eps ${SRC} -e ${TGT}', source=x, target=x.change_ext('.eps'))
tg = bld(rule='${DIA} -t png ${SRC} -e ${TGT}', source=x, target=x.change_ext('.png'), scan=scansize)
#bld(rule='${CONVERT} ${bld.raw_deps[tsk.uid()]} ${SRC} ${TGT}', source=tg.target, target=tg.target.change_ext('.png'), scan=scansize)
for x in bld.path.ant_glob('*.semd'):
bld(rule='${SEMANTIK_D} ${SRC[0].abspath()} -o ${TGT[0].abspath()}', source=x, target=x.change_ext('.svg'))
bld(rule='${SEMANTIK_D} ${SRC[0].abspath()} -o ${TGT[0].abspath()}', source=x, target=x.change_ext('.pdf'))
bld(rule='${SEMANTIK_D} ${bld.raw_deps[tsk.uid()]} ${SRC[0].abspath()} -o ${TGT[0].abspath()}', source=x, target=x.change_ext('.png'), scan=scansize)
bld(rule='${SEMANTIK_D} ${SIZEPARAMS} ${SRC[0].abspath()} -o ${TGT[0].abspath()}', source=x, target=x.change_ext('.png'), features="sizer")
for x in bld.path.ant_glob('pics/*.png'):
bld(features='subst', source=x, target=x.name, is_copy=True)
@ -136,10 +137,10 @@ def build(bld):
bld(rule='${ADOC} -a icons=true -a stylesheet=${SRC[1].abspath()} -a iconsdir=. -a toc -d book -o ${TGT} ${SRC[0].abspath()}',
source='waf.txt waf.css', target='single.html', scan=ascii_doc_scan)
bld(rule='${A2X} -L -a toc --icons-dir=. --icons -D ${gen.path.get_bld().abspath()} \
-d book -f pdf --dblatex-opts "-s ${SRC[1].abspath()} -p ${SRC[2].abspath()}" ${SRC[0].bldpath()}',
shell=True,
source='waf.txt asciidoc-dblatex.sty asciidoc-dblatex.xsl', target='waf.pdf', scan=ascii_doc_scan)
#bld(rule='${A2X} -L -a toc --icons-dir=. --icons -D ${gen.path.get_bld().abspath()} \
# -d book -f pdf --dblatex-opts "-s ${SRC[1].abspath()} -p ${SRC[2].abspath()}" ${SRC[0].bldpath()}',
# shell=True,
# source='waf.txt asciidoc-dblatex.sty asciidoc-dblatex.xsl', target='waf.pdf', scan=ascii_doc_scan)
bld(rule='ln -sf single.html index.html', shell=True)
@ -148,6 +149,65 @@ def build(bld):
bld.exec_command('firefox build/single.html')
bld.add_post_fun(exe)
@TaskGen.feature('sizer')
@TaskGen.after_method('process_rule')
def process_sizes(self):
try:
tbl = self.bld.size_table
except AttributeError:
tbl = self.bld.size_table = make_size_table(self)
base, _, ext = self.tasks[0].outputs[0].name.partition('.')
if ext == 'png' and base in tbl:
self.env.SIZEPARAMS = "--%s=%s" % tbl[base]
@TaskGen.taskgen_method
def make_size_table(self):
name = 'image::(.*?)\\{PIC\\}\\[.*,(width|height)=(\\d+)'
re_src = re.compile(name)
tbl = {}
lst = self.path.ant_glob('*.txt')
for x in lst:
for m in re.finditer(re_src, x.read()):
tbl[m.group(1)] = (m.group(2), m.group(3))
return tbl
if 0:
val = str(int(1.6 * int(m.group(2))))
if m.group(1) == 'width':
w = val
h = "800"
else:
w = "800"
h = val
if ext == 'eps':
code = '-geometry %sx%s' % (w, h)
elif ext == 'dia':
if m.group(1) == 'width':
h = ''
else:
w = ''
code = '--size %sx%s' % (w, h)
elif ext == 'semd':
if m.group(1) == 'width':
code = '--width=%s' % w
else:
code = '--height=%s' % h
else:
code = '-Gsize="%s,%s"' % (w, h)
break
else:
return ([], '')
return ([], code)
"""
For vim highlighting:
cp vim/syntax/asciidoc.vim /usr/share/vim/site/syntax/