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.3.2 Defining Groups</TITLE>
|
13 |
<META NAME="description" CONTENT="3.3.2 Defining Groups">
|
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="node33.html">
|
25 |
<LINK REL="previous" HREF="node31.html">
|
26 |
<LINK REL="up" HREF="node30.html">
|
27 |
<LINK REL="next" HREF="node33.html">
|
28 |
</HEAD>
|
29 |
|
30 |
<BODY bgcolor="beige" >
|
31 |
<!--Navigation Panel-->
|
32 |
<A NAME="tex2html792"
|
33 |
HREF="node33.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="tex2html786"
|
37 |
HREF="node30.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="tex2html780"
|
41 |
HREF="node31.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="tex2html788"
|
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="tex2html790"
|
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="tex2html793"
|
54 |
HREF="node33.html">3.3.3 Package Applications</A>
|
55 |
<B> Up:</B> <A NAME="tex2html787"
|
56 |
HREF="node30.html">3.3 Defining and Exporting</A>
|
57 |
<B> Previous:</B> <A NAME="tex2html781"
|
58 |
HREF="node31.html">3.3.1 Defining the Interface</A>
|
59 |
  <B> <A NAME="tex2html789"
|
60 |
HREF="node2.html">Contents</A></B>
|
61 |
  <B> <A NAME="tex2html791"
|
62 |
HREF="node85.html">Index</A></B>
|
63 |
<BR>
|
64 |
<BR>
|
65 |
<!--End of Navigation Panel-->
|
66 |
|
67 |
<H2><A NAME="SECTION00432000000000000000"></A><A NAME="sec:defininggroups"></A><A NAME="880"></A>
|
68 |
<BR>
|
69 |
3.3.2 Defining Groups
|
70 |
</H2>
|
71 |
A group can be include by using a <<TT>group</TT>...> statement
|
72 |
giving the name of the group to be included. In the above example a
|
73 |
group called <TT>Persistency</TT> was included in the <TT>myCARF</TT>
|
74 |
subsystem. This group was defined in the <TT>BuildFile</TT> for the
|
75 |
<TT>Utilities</TT> subsystem thus:
|
76 |
|
77 |
<P>
|
78 |
<PRE>
|
79 |
<export autoexport=false>
|
80 |
|
81 |
...other groups defined here....
|
82 |
|
83 |
ifdef GROUP_Persistency
|
84 |
<lib name=dbUtil></lib>
|
85 |
<lib name=ObjyUtil></lib>
|
86 |
<External ref=Objectivity></External>
|
87 |
<External ref=HepODBMS></External>
|
88 |
<External ref=zlib></External>
|
89 |
<Group name=BaseUtilities></Group>
|
90 |
endif
|
91 |
</export>
|
92 |
</PRE>
|
93 |
<P>
|
94 |
The <TT>ifdef</TT> syntax is similar to normal
|
95 |
makefile <TT>ifdef</TT> syntax with the block evaluated as true when
|
96 |
<TT>GROUP_Persistency</TT> is true. Whenever a statement like
|
97 |
<<TT>group</TT> name=<I>xxxx</I>> appears, <SMALL>SCRAM</SMALL> sets a
|
98 |
makefile variable <TT>GROUP_xxxx=true</TT> and this includes the
|
99 |
corresponding group definition in the default <SMALL>SCRAM</SMALL> makefile. Hence,
|
100 |
the <<TT>group</TT> name=Persistency> tag that appears in the
|
101 |
<TT>myCARF</TT> build file will include the above libraries and external tools.
|
102 |
A group definition can also use direct makefile statements which are
|
103 |
passed directly to <TT>gmake</TT>. Notice that the group tag must come
|
104 |
before the <<TT>use</TT>> tag for the subsystem in which the group
|
105 |
is defined.
|
106 |
|
107 |
<P>
|
108 |
<HR>
|
109 |
<!--Navigation Panel-->
|
110 |
<A NAME="tex2html792"
|
111 |
HREF="node33.html">
|
112 |
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
|
113 |
SRC="file:/usr/share/latex2html/icons/next.png"></A>
|
114 |
<A NAME="tex2html786"
|
115 |
HREF="node30.html">
|
116 |
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
|
117 |
SRC="file:/usr/share/latex2html/icons/up.png"></A>
|
118 |
<A NAME="tex2html780"
|
119 |
HREF="node31.html">
|
120 |
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
|
121 |
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
|
122 |
<A NAME="tex2html788"
|
123 |
HREF="node2.html">
|
124 |
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
|
125 |
SRC="file:/usr/share/latex2html/icons/contents.png"></A>
|
126 |
<A NAME="tex2html790"
|
127 |
HREF="node85.html">
|
128 |
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index"
|
129 |
SRC="file:/usr/share/latex2html/icons/index.png"></A>
|
130 |
<BR>
|
131 |
<B> Next:</B> <A NAME="tex2html793"
|
132 |
HREF="node33.html">3.3.3 Package Applications</A>
|
133 |
<B> Up:</B> <A NAME="tex2html787"
|
134 |
HREF="node30.html">3.3 Defining and Exporting</A>
|
135 |
<B> Previous:</B> <A NAME="tex2html781"
|
136 |
HREF="node31.html">3.3.1 Defining the Interface</A>
|
137 |
  <B> <A NAME="tex2html789"
|
138 |
HREF="node2.html">Contents</A></B>
|
139 |
  <B> <A NAME="tex2html791"
|
140 |
HREF="node85.html">Index</A></B>
|
141 |
<!--End of Navigation Panel-->
|
142 |
<ADDRESS>
|
143 |
scram-developers@cern.ch
|
144 |
</ADDRESS>
|
145 |
</BODY>
|
146 |
</HTML>
|