ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/doc/html/BuildFileExamples.html
Revision: 1.4
Committed: Wed Apr 14 09:40:46 1999 UTC (26 years, 1 month ago) by williamc
Content type: text/html
Branch: MAIN
CVS Tags: ProtoEnd, V0_9_2, V0_9_1, V0_9
Branch point for: V0_9branch
Changes since 1.3: +8 -2 lines
Log Message:
Update Doc a little

File Contents

# Content
1 <h1>BuildFile Examples</h1>
2 <p>
3 The Default Build is configured at the project level. The default can be
4 overridden or parameters passed to the default build rules through the
5 BuildFile.
6
7 <p>
8 Examples of different build files are shown below
9 <ol>
10 <li>The Binary Executable<p>
11 The binary building rules require explicit specification of the binary targets
12 e.g.
13 <p>
14 <font color=green>
15 <pre>
16 &lt;External ref=cmsim>
17 &lt;External ref=X11>
18 &lt;Use ref=CARF>
19 &lt;Lib name=examplelib></lib>
20 &lt;bin file=example1.cpp>
21 You can write between bin tags some documentation to describe what the binary
22 does
23 &lt;/bin>
24 &lt;bin file=example2.cpp name=mytestexe>
25 Here we call the final binary a different name from the default.
26 &lt;/bin>
27 &lt;/Use>
28 &lt;/External>
29 &lt;/External>
30 </pre>
31 </font>
32 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
33 external libraries cmsim and X11 as well as a local package from the same
34 project called CARF <p>
35 <em><b>Note: Theres still much work to be done here</b></em><br>
36 <ul>
37 <li> &lt;/External> and &lt;/Use> tags do not remove the
38 external package as you might expect.
39 <li> Anything Outside of the bin tags will be included in the
40 GNUmakefile. This allows you the full functionality of gmake
41 to make up for any inadequacies. Hopefully as full scram
42 binary functionality is achieved this will be phased out
43 </ul>
44 <p>
45 <li>The library BuildFile
46 The only time you might want to override this is to exclude some files from a
47 build or include external package headers or assign the module to a group.
48 <br>e.g.<p>
49 <font color=green>
50 <pre>
51 &lt;Group name=G3>
52 skip_files := FakeClusterizer.cc SigmaClusterizer.cc
53 </pre>
54 </font>
55 <li>Empty Group
56 Sometimes the default builds arn't wanted at all. Switch them off with
57 <p>
58 <font color=green>
59 <pre>
60 &lt;AssociateGroup>
61 none
62 &lt;/AssociateGroup>
63 </pre>
64 </font>