ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/doc/html/node64.html
Revision: 1.2
Committed: Fri Dec 10 13:52:38 2004 UTC (20 years, 5 months ago) by sashby
Content type: text/html
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +0 -0 lines
State: FILE REMOVED
Error occurred while calculating annotation data.
Log Message:
*** empty log message ***

File Contents

# Content
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>5.5 Brief Description of the Build Process</TITLE>
13 <META NAME="description" CONTENT="5.5 Brief Description of the Build Process">
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="previous" HREF="node58.html">
25 <LINK REL="up" HREF="node51.html">
26 <LINK REL="next" HREF="node65.html">
27 </HEAD>
28
29 <BODY bgcolor="beige" >
30 <!--Navigation Panel-->
31 <A NAME="tex2html1247"
32 HREF="node65.html">
33 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
34 SRC="file:/usr/share/latex2html/icons/next.png"></A>
35 <A NAME="tex2html1241"
36 HREF="node51.html">
37 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
38 SRC="file:/usr/share/latex2html/icons/up.png"></A>
39 <A NAME="tex2html1237"
40 HREF="node63.html">
41 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
42 SRC="file:/usr/share/latex2html/icons/prev.png"></A>
43 <A NAME="tex2html1243"
44 HREF="node2.html">
45 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
46 SRC="file:/usr/share/latex2html/icons/contents.png"></A>
47 <A NAME="tex2html1245"
48 HREF="node85.html">
49 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
50 SRC="file:/usr/share/latex2html/icons/index.png"></A>
51 <BR>
52 <B> Next:</B> <A NAME="tex2html1248"
53 HREF="node65.html">6. Quick Help Guide</A>
54 <B> Up:</B> <A NAME="tex2html1242"
55 HREF="node51.html">5. Using SCRAM as</A>
56 <B> Previous:</B> <A NAME="tex2html1238"
57 HREF="node63.html">5.4.3.0.2 Example B:</A>
58 &nbsp <B> <A NAME="tex2html1244"
59 HREF="node2.html">Contents</A></B>
60 &nbsp <B> <A NAME="tex2html1246"
61 HREF="node85.html">Index</A></B>
62 <BR>
63 <BR>
64 <!--End of Navigation Panel-->
65
66 <H1><A NAME="SECTION00650000000000000000"></A><A NAME="sec:buildprocess"></A><A NAME="1453"></A>
67 <BR>
68 5.5 Brief Description of the Build Process
69 </H1>
70
71 <P>
72 Assuming that the build area is clean (no builds have already been
73 performed) and that all tools are correctly set up, the actions taken
74 by <SMALL>SCRAM</SMALL>&nbsp;are as follows:
75
76 <P>
77
78 <UL>
79 <LI>Initially, <SMALL>SCRAM</SMALL>&nbsp;checks the current location to test if it is a
80 project area. If it isn't, an error message like
81
82 <P>
83 <PRE>
84 SCRAM error: Unable to locate the top of local release. Exitting.
85 </PRE>
86 <P>
87 will appear on <TT>STDERR</TT>.
88
89 <P>
90 </LI>
91 <LI>Tool settings are read and a makefile stub is created which
92 contains all relevant path information for all tools in makefile
93 syntax. The makefile stub is called <TT>clientmakefile</TT> and
94 is located in the directory <TT>tmp</TT> in the project area.
95
96 <P>
97 </LI>
98 <LI><SMALL>SCRAM</SMALL>&nbsp;parses the project <TT>BuildFile</TT>, creating a
99 corresponding makefile called <TT>BuildFile.mk</TT> located
100 under <TT>tmp/config</TT>. The <TT>ClassPath</TT> settings are
101 parsed to determine the appropriate build actions.
102
103 <P>
104 </LI>
105 <LI>A makefile is created according to the current directory.
106 The makefile is located in a directory under <TT>tmp/src</TT>
107 which has the same name as the current directory. This makefile
108 will be merged with appropriate makefiles determined from the
109 <TT>ClassPath</TT> and will include the makefile generated from
110 the project <TT>BuildFile</TT>. A list of subdirectories in
111 which build actions should occur is stored in a make variable
112 <TT>$(SUBDIRS)</TT>- the build order of various packages is
113 the same as the order in which the package directories appear in
114 this variable. To view the order, type <TT>scram b echo_SUBDIRS</TT>.
115
116 <P>
117 </LI>
118 <LI>Before running <TT>gmake</TT>, the generated makefiles are
119 merged with <TT>basics.mk</TT> from the <SMALL>SCRAM</SMALL>&nbsp;sources (which
120 also includes <TT>toolrules.mk</TT> which contains the rules
121 for compiling different file types and how to create libraries,
122 binaries or modules).
123
124 <P>
125 </LI>
126 <LI>The build runs: any extra makefile statements or compiler
127 flags are passed directly to <TT>gmake</TT>. The working directory for
128 compilation is <TT>/tmp/$(SCRAM_ARCH)</TT>. Errors and warnings
129 are reported directly to standard output.
130
131 <P>
132 </LI>
133 <LI>The build products are moved from the working directory to
134 the product storage areas.
135
136 <P>
137 </LI>
138 </UL>
139
140 <P>
141 <HR>
142 <!--Navigation Panel-->
143 <A NAME="tex2html1247"
144 HREF="node65.html">
145 <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
146 SRC="file:/usr/share/latex2html/icons/next.png"></A>
147 <A NAME="tex2html1241"
148 HREF="node51.html">
149 <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
150 SRC="file:/usr/share/latex2html/icons/up.png"></A>
151 <A NAME="tex2html1237"
152 HREF="node63.html">
153 <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
154 SRC="file:/usr/share/latex2html/icons/prev.png"></A>
155 <A NAME="tex2html1243"
156 HREF="node2.html">
157 <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
158 SRC="file:/usr/share/latex2html/icons/contents.png"></A>
159 <A NAME="tex2html1245"
160 HREF="node85.html">
161 <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
162 SRC="file:/usr/share/latex2html/icons/index.png"></A>
163 <BR>
164 <B> Next:</B> <A NAME="tex2html1248"
165 HREF="node65.html">6. Quick Help Guide</A>
166 <B> Up:</B> <A NAME="tex2html1242"
167 HREF="node51.html">5. Using SCRAM as</A>
168 <B> Previous:</B> <A NAME="tex2html1238"
169 HREF="node63.html">5.4.3.0.2 Example B:</A>
170 &nbsp <B> <A NAME="tex2html1244"
171 HREF="node2.html">Contents</A></B>
172 &nbsp <B> <A NAME="tex2html1246"
173 HREF="node85.html">Index</A></B>
174 <!--End of Navigation Panel-->
175 <ADDRESS>
176 scram-developers@cern.ch
177 </ADDRESS>
178 </BODY>
179 </HTML>