ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/doc/html/BuildFileExamples.html
Revision: 1.4.2.6
Committed: Fri Oct 15 10:08:40 1999 UTC (25 years, 7 months ago) by williamc
Content type: text/html
Branch: V0_9branch
CVS Tags: BuildSystemProto1, V0_18_0, V0_18_0model, V0_17_1, V0_18_0alpha, V0_17_0, V0_16_4, V0_16_3, V0_16_2, V0_16_1, V0_16_0, V0_15_1, V0_15_0, V0_15_0beta, V0_14_0, V0_12_12_4, V0_12_12_3, V0_13_3, V0_13_2, V0_12_12_2, V0_12_12_1, V0_12_12_0, PlayGround_0, V0_13_1, V0_12_12, V0_13_0, 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, V0_10_19, V0_10_18, V0_10_17, V0_10_16, V0_10_15, V0_10_14, V0_10_13, V0_10_12, V0_10_11, V0_10_10, V0_10_9, V0_10_8, V0_10_7, V0_10_6, V0_10_5, V0_10_4, V0_10_3, V0_10_2, V0_10_1, V0_10_0
Branch point for: V0_17branch, V0_16branch, V0_15branch, HPWbranch
Changes since 1.4.2.5: +8 -0 lines
Log Message:
Pretty up

File Contents

# Content
1 <body bgcolor=beige>
2 <center>
3 <h1>BuildFile Examples</h1>
4 <font color=red>S</font>oftware <font color=red>C</font>onfiguration,
5 <font color=red>R</font>elease <font color=red>A</font>nd
6 <font color=red>M</font>anagement
7 </center>
8 <hr>
9 <p>
10 The Default Build is configured at the project level. The default can be
11 overridden or parameters passed to the default build rules through the
12 BuildFile.
13
14
15 <p>
16 Examples of different build files are shown below
17 <ol>
18 <li>The Binary Executable<p>
19 The binary building rules require explicit specification of the binary targets
20 e.g.
21 <p>
22 <font color=green>
23 <pre>
24 &lt;Group name=G3>
25 &lt;External ref=X11>
26
27 &lt;Environment>
28 &lt;Use name=CARF>
29 &lt;Lib name=examplelib></lib>
30 &lt;bin file=example1.cpp>
31 You can write between bin tags some documentation to describe what the binary
32 does. As the bin tag is inside the Environment tags this environment will apply
33 in addition. (i.e example1.cpp will use CARF and the library examplelib as well
34 as X11 and G3)
35 &lt;/bin>
36 &lt;/Environment>
37
38 &lt;bin file=example2.cpp name=mytestexe>
39 Here we call the final binary a different name from the default.
40 &lt;/bin>
41 </pre>
42 </font>
43 This file will build two executables called (example1 and mytestexe) from files example1.cpp and example2.cpp respectively. Both are built in the context of
44 external libraries defined by the group G3 and the external package X11.
45 example1 will in addition be built with CARF and examplelib<p>
46 <em><b>Note: Theres still work to be done here</b></em><br>
47 <ul>
48 <li> Anything Outside of the bin tags will be included in the
49 GNUmakefile. This allows you the full functionality of gmake
50 to make up for any inadequacies. Hopefully as full scram
51 binary functionality is achieved this will be phased out
52 </ul>
53 <p>
54 <li>The library BuildFile
55 You may wish to exclude some files from a
56 build or include external package headers or assign the module to a group.
57 <br>e.g.<p>
58 <font color=green>
59 <pre>
60 &lt;Group name=G3>
61 skip_files := FakeClusterizer.cc SigmaClusterizer.cc
62 </pre>
63 </font>
64
65 <br>
66 It is also possible to override the default type of library that is built
67 <br>e.g.<p>
68 <font color=green>
69 <pre>
70 &lt;LibType type=shared>
71 Shared libraries are dynamic!
72 &lt/LibType>
73 &lt;LibType type=debug_shared>
74 But the code still goes wrong
75 &lt/LibType>
76 </pre>
77 </font>
78 To build two shared objects - one with and one without debug information
79 <br>
80 The comments you put between the beginning and end tags will be echoed to the
81 screen at build time
82 <p>
83 <li>Empty Group
84 Sometimes the default builds arn't wanted at all. Switch them off with
85 <p>
86 <font color=green>
87 <pre>
88 &lt;AssociateGroup>
89 none
90 &lt;/AssociateGroup>
91 </pre>
92 </font>
93 <p>
94 <h2>Avoiding Processing Parts of BuildFiles</h2>
95 Anything between &lt;ignore> and &lt/ignore> tags will be excluded
96 from processing during the build. This is a convenient mechanism to cut
97 out sections of the BuildFile and is not intended for comments. Comments
98 should be provided where apppropriate e.g. in between &lt;binb> and &lt/bin>
99 tags.
100 </body>