ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/doc/html/export.html
Revision: 1.5
Committed: Mon Nov 18 11:31:38 2002 UTC (22 years, 6 months ago) by sashby
Content type: text/html
Branch: MAIN
CVS Tags: V1_pre0, HEAD
Branch point for: SCRAM_V1_BRANCH
Changes since 1.4: +0 -0 lines
State: FILE REMOVED
Log Message:
Removed old documentation.

File Contents

# User Rev Content
1 williamc 1.1 <! Style Sheet Header>
2     <html>
3     <head>
4     <title>SCRAM - Exporting Software Units</title>
5 williamc 1.2 <body bgcolor=beige>
6 williamc 1.1 <! End Style Sheet Header -----------Insert Text Here --------------------->
7 williamc 1.2 <center>
8 williamc 1.1 <h1>Exporting Software Units</h1>
9 williamc 1.2 <font color=red>S</font>oftware <font color=red>C</font>onfiguration,
10     <font color=red>R</font>elease <font color=red>A</font>nd
11     <font color=red>M</font>anagement
12     </center>
13 williamc 1.1 <hr>
14 sashby 1.4 <p>
15 williamc 1.1 This section describes how to configure a software unit for use by other
16     software units. This interface then provides functionality to the
17 williamc 1.2 &lt;Use name=unit_name> tag specified elsewhere in the project. They can
18     also be accessed from other projects with the <em>use=</em> qualifier of
19     the <a href=external.html>&lt;External> tag</a>
20     <p>
21 williamc 1.1 <h2>Defining the Interface</h2>
22     The interface is defined in the BuildFile in the software unit. Anything
23     between <b>&lt;export></b> and <b>&lt;/export></b> tags will be
24     taken as defining the interface.<p>
25     <p>
26     e.g A BuildFile in a SubSystem called CARF.
27     <font color=green>
28     <pre>
29     &lt;export>
30     &lt;lib name=G3Main>
31     &lt;lib name=G3Event>
32     &lt;lib name=Reco>
33     &lt;lib name=G3SimEvent>
34     &lt;lib name=G3Interface>
35 williamc 1.2 &lt;use name=SomeOtherSubsystem>
36 williamc 1.1 &lt;/export>
37     </pre>
38     </font>
39     <p>
40     Any file that then wishes to use the subsytem CARF simply has to add the
41 williamc 1.2 following line to their BuildFile.
42    
43 williamc 1.1 <font color=green>
44     <pre>
45     &lt;Use name=CARF>
46     </pre>
47     </font>
48     <p>
49     to get all the apporpriate CARF libraries.<p>
50 williamc 1.2 As can be seen in the above example, the use tag can be used
51     within &lt;export> tags to refer to other subsystems.
52     <p>
53     <h2>Package Application</h2>
54     By default the specifications between the &lt;export> tags do not propogate
55     down into the package. Thus a package will have to use a &lt;Use> tag to
56     get its own libraries. <p>
57 sashby 1.4 An alternative model is to automatically propagate the appropriate interface to
58     each of its corresponding packages. This can be done in the following ways:<br>
59 williamc 1.2 <ol><li>Specify in the &lt;export> tag. <p>
60     e.g.
61     <font color=green>
62     <pre>
63     &lt;export autoexport=true>
64     </pre>
65     </font>
66     <li>If this is to be the default behaviour then set
67     <pre>
68     scram_autoexport=true
69     </pre>
70     in the <a href=configBuildFile.html>project level BuildFile</a>.
71 sashby 1.4 This default can be overridden with <font color=green>
72 williamc 1.2 <pre>
73     &lt;export autoexport=false>
74     </pre>
75     </ol>
76 sashby 1.4
77 williamc 1.1 <! Style Sheet Footer ---------------Do not change anything after this line-->
78     <hr>
79 sashby 1.4 <p>
80 williamc 1.1 <table border=1 width=100%>
81 sashby 1.4 <td align=left><a href=mailto:Shaun.Ashby@cern.ch>Shaun Ashby</a>
82 williamc 1.1 </td>
83     </td>
84     <td align=right>Show <a href=/cgi-cmc/pagestat>Stats</a>
85     </td>
86     </table>
87     </body> </html>
88     <! End Style Sheet Footer>
89 sashby 1.4