1 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
2 |
|
3 |
<!--Converted with jLaTeX2HTML 2002 (1.62) JA patch-1.4
|
4 |
patched version by: Kenshi Muto, Debian Project.
|
5 |
LaTeX2HTML 2002 (1.62),
|
6 |
original version by: Nikos Drakos, CBLU, University of Leeds
|
7 |
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
|
8 |
* with significant contributions from:
|
9 |
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
|
10 |
<HTML>
|
11 |
<HEAD>
|
12 |
<TITLE>3.2.1 The Project BuildFile</TITLE>
|
13 |
<META NAME="description" CONTENT="3.2.1 The Project BuildFile">
|
14 |
<META NAME="keywords" CONTENT="SCRAM">
|
15 |
<META NAME="resource-type" CONTENT="document">
|
16 |
<META NAME="distribution" CONTENT="global">
|
17 |
|
18 |
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
|
19 |
<META NAME="Generator" CONTENT="jLaTeX2HTML v2002 JA patch-1.4">
|
20 |
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
|
21 |
|
22 |
<LINK REL="STYLESHEET" HREF="SCRAM.css">
|
23 |
|
24 |
<LINK REL="next" HREF="node29.html">
|
25 |
<LINK REL="previous" HREF="node25.html">
|
26 |
<LINK REL="up" HREF="node25.html">
|
27 |
<LINK REL="next" HREF="node27.html">
|
28 |
</HEAD>
|
29 |
|
30 |
<BODY bgcolor="beige" >
|
31 |
<!--Navigation Panel-->
|
32 |
<A NAME="tex2html707"
|
33 |
HREF="node27.html">
|
34 |
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
|
35 |
SRC="file:/usr/share/latex2html/icons/next.png"></A>
|
36 |
<A NAME="tex2html701"
|
37 |
HREF="node25.html">
|
38 |
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
|
39 |
SRC="file:/usr/share/latex2html/icons/up.png"></A>
|
40 |
<A NAME="tex2html695"
|
41 |
HREF="node25.html">
|
42 |
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
|
43 |
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
|
44 |
<A NAME="tex2html703"
|
45 |
HREF="node2.html">
|
46 |
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
|
47 |
SRC="file:/usr/share/latex2html/icons/contents.png"></A>
|
48 |
<A NAME="tex2html705"
|
49 |
HREF="node85.html">
|
50 |
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
|
51 |
SRC="file:/usr/share/latex2html/icons/index.png"></A>
|
52 |
<BR>
|
53 |
<B> Next:</B> <A NAME="tex2html708"
|
54 |
HREF="node27.html">3.2.1.0.1 ClassPath Example:</A>
|
55 |
<B> Up:</B> <A NAME="tex2html702"
|
56 |
HREF="node25.html">3.2 The SCRAM Build</A>
|
57 |
<B> Previous:</B> <A NAME="tex2html696"
|
58 |
HREF="node25.html">3.2 The SCRAM Build</A>
|
59 |
  <B> <A NAME="tex2html704"
|
60 |
HREF="node2.html">Contents</A></B>
|
61 |
  <B> <A NAME="tex2html706"
|
62 |
HREF="node85.html">Index</A></B>
|
63 |
<BR>
|
64 |
<BR>
|
65 |
<!--End of Navigation Panel-->
|
66 |
|
67 |
<H2><A NAME="SECTION00421000000000000000"></A><A NAME="sec:projectbuildfile"></A>
|
68 |
<BR>
|
69 |
3.2.1 The Project BuildFile
|
70 |
</H2>
|
71 |
<A NAME="1850"></A>
|
72 |
A single file in each project describes the relationship between the current
|
73 |
location in the directory tree and the build actions that should be
|
74 |
performed there. This file is <TT>config/BuildFile</TT> and is parsed
|
75 |
first by the build system and resourced by all other
|
76 |
<TT>BuildFile</TT>s in the source tree. It is also referred to as
|
77 |
the top-level project <TT>BuildFile</TT>.<A NAME="1851"></A>
|
78 |
In addition to the markup tags described earlier, there are several
|
79 |
tags that are used only in this <TT>BuildFile</TT> to provide global
|
80 |
settings like storage locations.
|
81 |
<SMALL>SCRAM</SMALL> build actions are, by default, mapped to the structure of the
|
82 |
source code tree. A number of makefiles called <I>structure
|
83 |
makefiles</I><A NAME="746"></A> are contained in every project
|
84 |
<TT>config</TT> directory and these provide default build targets when combined with default
|
85 |
<TT>lib</TT> and <TT>bin</TT> rules provided by the <SMALL>SCRAM</SMALL> makefiles
|
86 |
which are included in the <SMALL>SCRAM</SMALL> <TT>src</TT> directory.
|
87 |
The global mapping of structure makefiles to a location is controlled
|
88 |
using <<TT>ClassPath</TT>> tags.
|
89 |
The syntax is
|
90 |
<A NAME="1852"></A><A NAME="1853"></A>
|
91 |
<P>
|
92 |
|
93 |
<UL>
|
94 |
<<TT>ClassPath</TT>
|
95 |
path=[<I>pattern_match</I>]+<I>BuildFile_name</I>/.../>
|
96 |
</LI>
|
97 |
</UL>
|
98 |
<P>
|
99 |
<BR><HR>
|
100 |
<!--Table of Child-Links-->
|
101 |
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
|
102 |
|
103 |
<UL>
|
104 |
<LI><UL>
|
105 |
<LI><A NAME="tex2html709"
|
106 |
HREF="node27.html">3.2.1.0.1 <I>ClassPath Example</I>:</A>
|
107 |
<LI><A NAME="tex2html710"
|
108 |
HREF="node28.html">3.2.1.0.2 <I>ProductStore Example</I>:</A>
|
109 |
</UL></UL>
|
110 |
<!--End of Table of Child-Links-->
|
111 |
<HR>
|
112 |
<!--Navigation Panel-->
|
113 |
<A NAME="tex2html707"
|
114 |
HREF="node27.html">
|
115 |
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
|
116 |
SRC="file:/usr/share/latex2html/icons/next.png"></A>
|
117 |
<A NAME="tex2html701"
|
118 |
HREF="node25.html">
|
119 |
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
|
120 |
SRC="file:/usr/share/latex2html/icons/up.png"></A>
|
121 |
<A NAME="tex2html695"
|
122 |
HREF="node25.html">
|
123 |
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
|
124 |
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
|
125 |
<A NAME="tex2html703"
|
126 |
HREF="node2.html">
|
127 |
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
|
128 |
SRC="file:/usr/share/latex2html/icons/contents.png"></A>
|
129 |
<A NAME="tex2html705"
|
130 |
HREF="node85.html">
|
131 |
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
|
132 |
SRC="file:/usr/share/latex2html/icons/index.png"></A>
|
133 |
<BR>
|
134 |
<B> Next:</B> <A NAME="tex2html708"
|
135 |
HREF="node27.html">3.2.1.0.1 ClassPath Example:</A>
|
136 |
<B> Up:</B> <A NAME="tex2html702"
|
137 |
HREF="node25.html">3.2 The SCRAM Build</A>
|
138 |
<B> Previous:</B> <A NAME="tex2html696"
|
139 |
HREF="node25.html">3.2 The SCRAM Build</A>
|
140 |
  <B> <A NAME="tex2html704"
|
141 |
HREF="node2.html">Contents</A></B>
|
142 |
  <B> <A NAME="tex2html706"
|
143 |
HREF="node85.html">Index</A></B>
|
144 |
<!--End of Navigation Panel-->
|
145 |
<ADDRESS>
|
146 |
scram-developers@cern.ch
|
147 |
</ADDRESS>
|
148 |
</BODY>
|
149 |
</HTML>
|