ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/doc/html/export.html
Revision: 1.1.2.4
Committed: Fri Apr 7 09:27:07 2000 UTC (25 years, 1 month ago) by williamc
Content type: text/html
Branch: V0_9branch
CVS Tags: V0_12_11, V0_12_9b, V0_12_10, V0_12_9, V0_12_8, V0_12_7, V0_12_6, V0_12_5, V0_12_4, V0_12_3, V0_12_2, V0_12_1, V0_12_0, V0_11_4, V0_11_3, V0_11_2, V0_11_1, V0_11_0
Changes since 1.1.2.3: +16 -3 lines
Log Message:
prettied up a bit

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.1.2.4 <body bgcolor=beige>
6 williamc 1.1 <! End Style Sheet Header -----------Insert Text Here --------------------->
7 williamc 1.1.2.4 <center>
8 williamc 1.1 <h1>Exporting Software Units</h1>
9 williamc 1.1.2.4 <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     This section describes how to configure a software unit for use by other
15     software units. This interface then provides functionality to the
16 williamc 1.1.2.4 &lt;Use name=unit_name> tag specified elsewhere in the project. They can
17     also be accessed from other projects with the <em>use=</em> qualifier of
18     the <a href=external.html>&lt;External> tag</a>
19     <p>
20 williamc 1.1 <h2>Defining the Interface</h2>
21     The interface is defined in the BuildFile in the software unit. Anything
22     between <b>&lt;export></b> and <b>&lt;/export></b> tags will be
23     taken as defining the interface.<p>
24     <p>
25     e.g A BuildFile in a SubSystem called CARF.
26     <font color=green>
27     <pre>
28     &lt;export>
29     &lt;lib name=G3Main>
30     &lt;lib name=G3Event>
31     &lt;lib name=Reco>
32     &lt;lib name=G3SimEvent>
33     &lt;lib name=G3Interface>
34 williamc 1.1.2.4 &lt;use name=SomeOtherSubsystem>
35 williamc 1.1 &lt;/export>
36     </pre>
37     </font>
38     <p>
39     Any file that then wishes to use the subsytem CARF simply has to add the
40 williamc 1.1.2.4 following line to their BuildFile.
41    
42 williamc 1.1 <font color=green>
43     <pre>
44     &lt;Use name=CARF>
45     </pre>
46     </font>
47     <p>
48     to get all the apporpriate CARF libraries.<p>
49 williamc 1.1.2.4 As can be seen in the above example, the use tag can be used
50     within &lt;export> tags to refer to other subsystems.
51     <p>
52 williamc 1.1.2.1 <h2>Package Application</h2>
53     By default the specifications between the &lt;export> tags do not propogate
54     down into the package. Thus a package will have to use a &lt;Use> tag to
55     get its own libraries. <p>
56     An alternative model (and the default before version 0_10_0) is to automatically
57     propogate the appropriate interface to each of its corresponding packages.
58 williamc 1.1.2.2 This can be done in the following ways
59     <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 williamc 1.1.2.3 </font>
66 williamc 1.1.2.2 <li>If this is to be the default behaviour then set
67 williamc 1.1.2.1 <pre>
68     scram_autoexport=true
69     </pre>
70 williamc 1.1.2.3 in the project level BuildFile. This default can be overridden
71 williamc 1.1.2.2 with <font color=green>
72     <pre>
73     &lt;export autoexport=false>
74     </pre>
75 williamc 1.1.2.3 </ol>
76 williamc 1.1 <! Style Sheet Footer ---------------Do not change anything after this line-->
77     <hr>
78     <table border=1 width=100%>
79     <td align=left>
80     <a href=mailto:Christopher.Williams@cern.ch
81     >Chris Williams</a>
82     </td>
83     <td align=center>
84     <script language="JavaScript">
85     <!---//hide script from old browsers
86     document.write( "<br>Last updated "+ document.lastModified
87     );
88     //end hiding contents --->
89     </script>
90     </td>
91     <td align=right>Show <a href=/cgi-cmc/pagestat>Stats</a>
92     </td>
93     </table>
94     </body> </html>
95     <! End Style Sheet Footer>