ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/SCRAM/doc/html/node21.html
Revision: 1.1
Committed: Mon Nov 18 17:50:01 2002 UTC (22 years, 6 months ago) by sashby
Content type: text/html
Branch: MAIN
CVS Tags: V1_pre0, V0_19_7
Branch point for: SCRAM_V1_BRANCH
Log Message:
Generated and added HTML documentation.

File Contents

# User Rev Content
1 sashby 1.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.1.2 The RequirementsDoc Class</TITLE>
13     <META NAME="description" CONTENT="3.1.2 The RequirementsDoc Class">
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="node23.html">
25     <LINK REL="previous" HREF="node19.html">
26     <LINK REL="up" HREF="node18.html">
27     <LINK REL="next" HREF="node22.html">
28     </HEAD>
29    
30     <BODY bgcolor="beige" >
31     <!--Navigation Panel-->
32     <A NAME="tex2html637"
33     HREF="node22.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="tex2html631"
37     HREF="node18.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="tex2html625"
41     HREF="node20.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="tex2html633"
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="tex2html635"
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="tex2html638"
54     HREF="node22.html">3.1.2.0.1 Example:</A>
55     <B> Up:</B> <A NAME="tex2html632"
56     HREF="node18.html">3.1 SCRAM Configuration Documents</A>
57     <B> Previous:</B> <A NAME="tex2html626"
58     HREF="node20.html">3.1.1.0.1 Example:</A>
59     &nbsp <B> <A NAME="tex2html634"
60     HREF="node2.html">Contents</A></B>
61     &nbsp <B> <A NAME="tex2html636"
62     HREF="node85.html">Index</A></B>
63     <BR>
64     <BR>
65     <!--End of Navigation Panel-->
66    
67     <H2><A NAME="SECTION00412000000000000000"></A><A NAME="sec:requirementsdocclass"></A>
68     <BR>
69     3.1.2 The RequirementsDoc Class
70     </H2>
71     <A NAME="1834"></A>
72    
73     <P>
74     To make external products available in a project area and be able to
75     link against external libraries, a requirements file is used. This
76     file starts with the statement<A NAME="516"></A>
77    
78     <UL>
79     &lt;<TT>doc</TT> type=<TT>BuildSystem::Requirements</TT>
80     version=<I>2.0</I>&gt;
81     </LI>
82     </UL>and specifies the external tools and their corresponding versions
83     that should be configured. The requirements file provides information
84     for <SMALL>SCRAM</SMALL>&nbsp;to use when downloading the tool descriptions from the
85     toolbox CVS repository. If more than one version of a tool is defined,
86     the first one is taken as the default. This can be overridden
87     by creating a file called <TT>External_dependencies</TT> in the
88     <A NAME="1835"></A>
89     configuration directory which contains the version of the tool which
90     is to become the default version.
91    
92     <P>
93     There must be at least a compiler defined for each architecture.
94     The following tags are available-
95    
96     <P>
97     <DL>
98     <DT><STRONG>&lt;<TT>require</TT> name=<I>name</I> version=<I>version</I> url=<I>url</I>&gt;&nbsp;&lt;/<TT>require</TT>&gt; </STRONG></DT>
99     <DD>
100     <BR>
101     Specify the name and version of a required tool. The URL should
102     point to a <TT>ToolDoc</TT> that describes the tool. Base URL tags
103     (&lt;<TT>base</TT>&gt; ...) can be used to modify the URL.
104     </DD>
105     <DT><STRONG>&lt;<TT>include</TT> url=<I>url</I>&gt; </STRONG></DT>
106     <DD>
107     <BR>
108     This is for URL document preprocessing.<TT>ActiveDocs</TT> provide
109     an equivalent of the <TT>C</TT>-preprocessor
110     <TT>#include</TT>
111     <A NAME="1836"></A>
112     directive that is web-aware. In this way, it is possible to assemble
113     a document from many components that are maintained at different
114     locations. A common configuration file containing multiple tool
115     &lt;<TT>require</TT>&gt; statements can be included in this way.
116     </DD>
117     <DT><STRONG>&lt;<TT>architecture</TT> name=<I>arch</I>&gt;&nbsp;&lt;/<TT>architecture</TT>&gt; </STRONG></DT>
118     <DD>
119     <BR><A NAME="545"></A>
120     <A NAME="546"></A>
121     <A NAME="1837"></A>
122     The <I>arch</I> is an architecture tag which limits certain
123     functionality only to a specific operating system. This
124     architecture is determined automatically by <SMALL>SCRAM</SMALL>&nbsp;: normally, this
125     is achieved using a program called <TT>uname</TT> which is available
126     on UNIX systems (including Linux). Internally, <SMALL>SCRAM</SMALL>&nbsp;sets a
127     variable called <TT>SCRAM_ARCH</TT> by concatenating the operating
128     system name with the version as reported by <TT>uname</TT>. For
129     example, on a Sun workstation running version 5.7 of the SunOS
130     operating system the <TT>SCRAM_ARCH</TT> will be
131     <TT>SunOS__5.7</TT>. On a PC running Linux, the operating system
132     version is just the kernel version. However, some confusion can
133     arise when using an older installation of Linux with an upgraded
134     kernel. In order to avoid this, the version of <TT>libc</TT> is also
135     checked to avoid ambiguity. If the architecture is initially
136     determined as <TT>Linux__2.4</TT> but the version of <TT>libc</TT>
137     installed is <TT>2.1.x</TT>, the architecture is set to
138     <TT>Linux__2.2</TT>. Presently, using <SMALL>SCRAM</SMALL>&nbsp;on a PC with RedHat
139     Linux 7.2 installed will result in an architecture flag of
140     <TT>Linux__2.4</TT> while on a PC with RedHat Linux 6.1
141     installed will result in an architecture flag of
142     <TT>Linux__2.2</TT>. In the above examples, the architecture
143     flags could be shortened to just <TT>SunOS__5</TT> or
144     <TT>Linux__2</TT> <A NAME="tex2html42"
145     HREF="#foot1838"><SUP>3.2</SUP></A> where some broad non-version specific requirements
146     are needed.
147     </DD>
148     <DT><STRONG>&lt;<TT>download</TT> url=<I>url</I>&gt; </STRONG></DT>
149     <DD>
150     <BR>
151     Specify a link to download information for the tool.
152     </DD>
153     <DT><STRONG>&lt;<TT>select</TT> name=<I>name</I>&gt; </STRONG></DT>
154     <DD>
155     <BR>
156     Select a tool from a list of available tools.
157     </DD>
158     <DT><STRONG>&lt;<TT>deselect</TT> name=<I>name</I>&gt; </STRONG></DT>
159     <DD>
160     <BR>
161     Deselect a tool from a set of available tools. Only those tools not
162     deselected will be available in the project area.
163     </DD>
164     </DL>
165    
166     <P>
167     <BR><HR><H4>Footnotes</H4>
168     <DL>
169     <DT><A NAME="foot1838">...Linux__2 </A><A
170     HREF="node21.html#tex2html42"><SUP>3.2</SUP></A></DT>
171     <DD>or even <TT>SunOS</TT> or
172     <TT>Linux</TT>
173    
174     </DD>
175     </DL>
176     <BR><HR>
177     <!--Table of Child-Links-->
178     <A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
179    
180     <UL>
181     <LI><UL>
182     <LI><A NAME="tex2html639"
183     HREF="node22.html">3.1.2.0.1 <I>Example</I>:</A>
184     </UL></UL>
185     <!--End of Table of Child-Links-->
186     <HR>
187     <!--Navigation Panel-->
188     <A NAME="tex2html637"
189     HREF="node22.html">
190     <IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
191     SRC="file:/usr/share/latex2html/icons/next.png"></A>
192     <A NAME="tex2html631"
193     HREF="node18.html">
194     <IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
195     SRC="file:/usr/share/latex2html/icons/up.png"></A>
196     <A NAME="tex2html625"
197     HREF="node20.html">
198     <IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
199     SRC="file:/usr/share/latex2html/icons/prev.png"></A>
200     <A NAME="tex2html633"
201     HREF="node2.html">
202     <IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
203     SRC="file:/usr/share/latex2html/icons/contents.png"></A>
204     <A NAME="tex2html635"
205     HREF="node85.html">
206     <IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
207     SRC="file:/usr/share/latex2html/icons/index.png"></A>
208     <BR>
209     <B> Next:</B> <A NAME="tex2html638"
210     HREF="node22.html">3.1.2.0.1 Example:</A>
211     <B> Up:</B> <A NAME="tex2html632"
212     HREF="node18.html">3.1 SCRAM Configuration Documents</A>
213     <B> Previous:</B> <A NAME="tex2html626"
214     HREF="node20.html">3.1.1.0.1 Example:</A>
215     &nbsp <B> <A NAME="tex2html634"
216     HREF="node2.html">Contents</A></B>
217     &nbsp <B> <A NAME="tex2html636"
218     HREF="node85.html">Index</A></B>
219     <!--End of Navigation Panel-->
220     <ADDRESS>
221     scram-developers@cern.ch
222     </ADDRESS>
223     </BODY>
224     </HTML>