1 | /* Generated by mkjambase from Jambase */ |
---|
2 | char *jambase[] = { |
---|
3 | /* Jambase */ |
---|
4 | "if $(NT)\n", |
---|
5 | "{\n", |
---|
6 | "SLASH ?= \\\\ ;\n", |
---|
7 | "}\n", |
---|
8 | "SLASH ?= / ;\n", |
---|
9 | "rule find-to-root ( dir : patterns + )\n", |
---|
10 | "{\n", |
---|
11 | "local globs = [ GLOB $(dir) : $(patterns) ] ;\n", |
---|
12 | "while ! $(globs) && $(dir:P) != $(dir)\n", |
---|
13 | "{\n", |
---|
14 | "dir = $(dir:P) ;\n", |
---|
15 | "globs = [ GLOB $(dir) : $(patterns) ] ;\n", |
---|
16 | "}\n", |
---|
17 | "return $(globs) ;\n", |
---|
18 | "}\n", |
---|
19 | ".boost-build-file = ;\n", |
---|
20 | ".bootstrap-file = ;\n", |
---|
21 | "BOOST_BUILD_PATH.user-value = $(BOOST_BUILD_PATH) ;\n", |
---|
22 | "if ! $(BOOST_BUILD_PATH) && $(UNIX)\n", |
---|
23 | "{\n", |
---|
24 | "BOOST_BUILD_PATH = /usr/share/boost-build ;\n", |
---|
25 | "}\n", |
---|
26 | "rule _poke ( module-name ? : variables + : value * )\n", |
---|
27 | "{\n", |
---|
28 | "module $(<)\n", |
---|
29 | "{\n", |
---|
30 | "$(>) = $(3) ;\n", |
---|
31 | "}\n", |
---|
32 | "}\n", |
---|
33 | "rule boost-build ( dir ? )\n", |
---|
34 | "{\n", |
---|
35 | "if $(.bootstrap-file)\n", |
---|
36 | "{\n", |
---|
37 | "EXIT \"Error: Illegal attempt to re-bootstrap the build system by invoking\" ;\n", |
---|
38 | "ECHO ;\n", |
---|
39 | "ECHO \" 'boost-build\" $(dir) \";'\" ;\n", |
---|
40 | "ECHO ;\n", |
---|
41 | "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n", |
---|
42 | "}\n", |
---|
43 | "BOOST_BUILD_PATH = $(dir:R=$(.boost-build-file:D)) $(BOOST_BUILD_PATH) ;\n", |
---|
44 | "_poke .ENVIRON : BOOST_BUILD_PATH : $(BOOST_BUILD_PATH) ;\n", |
---|
45 | "local bootstrap-file =\n", |
---|
46 | "[ GLOB $(BOOST_BUILD_PATH) : bootstrap.jam ] ;\n", |
---|
47 | ".bootstrap-file = $(bootstrap-file[1]) ;\n", |
---|
48 | "if ! $(.bootstrap-file)\n", |
---|
49 | "{\n", |
---|
50 | "ECHO \"Unable to load Boost.Build: could not find build system.\" ;\n", |
---|
51 | "ECHO --------------------------------------------------------- ;\n", |
---|
52 | "ECHO \"$(.boost-build-file) attempted to load the build system by invoking\" ;\n", |
---|
53 | "ECHO ;\n", |
---|
54 | "ECHO \" 'boost-build\" $(dir) \";'\" ;\n", |
---|
55 | "ECHO ;\n", |
---|
56 | "ECHO \"but we were unable to find \\\"bootstrap.jam\\\" in the specified directory\" ;\n", |
---|
57 | "ECHO \"or in BOOST_BUILD_PATH (searching \"$(BOOST_BUILD_PATH:J=\", \")\").\" ;\n", |
---|
58 | "ECHO ;\n", |
---|
59 | "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n", |
---|
60 | "}\n", |
---|
61 | "if [ MATCH .*(--debug-configuration).* : $(ARGV) ]\n", |
---|
62 | "{\n", |
---|
63 | "ECHO \"notice: loading Boost.Build from\" \n", |
---|
64 | "[ NORMALIZE_PATH $(.bootstrap-file:D) ] ;\n", |
---|
65 | "}\n", |
---|
66 | "include $(.bootstrap-file) ;\n", |
---|
67 | "}\n", |
---|
68 | "if [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]\n", |
---|
69 | "|| $(BOOST_ROOT) # A temporary measure so Jam works with Boost.Build v1\n", |
---|
70 | "{\n", |
---|
71 | "local search-path = $(BOOST_BUILD_PATH) $(BOOST_ROOT) ;\n", |
---|
72 | "local boost-build-files =\n", |
---|
73 | "[ find-to-root [ PWD ] : boost-build.jam ]\n", |
---|
74 | "[ GLOB $(search-path) : boost-build.jam ] ;\n", |
---|
75 | ".boost-build-file = $(boost-build-files[1]) ;\n", |
---|
76 | "if ! $(.boost-build-file)\n", |
---|
77 | "{\n", |
---|
78 | "ECHO \"Unable to load Boost.Build: could not find \\\"boost-build.jam\\\"\" ;\n", |
---|
79 | "ECHO --------------------------------------------------------------- ;\n", |
---|
80 | "if ! [ MATCH .*(bjam).* : $(ARGV[1]:BL) ]\n", |
---|
81 | "{\n", |
---|
82 | "ECHO \"BOOST_ROOT must be set, either in the environment, or \" ;\n", |
---|
83 | "ECHO \"on the command-line with -sBOOST_ROOT=..., to the root\" ;\n", |
---|
84 | "ECHO \"of the boost installation.\" ;\n", |
---|
85 | "ECHO ;\n", |
---|
86 | "}\n", |
---|
87 | "ECHO \"Attempted search from\" [ PWD ] \"up to the root\" ;\n", |
---|
88 | "ECHO \"and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: \"$(search-path:J=\", \")\".\" ;\n", |
---|
89 | "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n", |
---|
90 | "}\n", |
---|
91 | "if [ MATCH .*(--debug-configuration).* : $(ARGV) ] \n", |
---|
92 | "{\n", |
---|
93 | "ECHO \"notice: found boost-build.jam at\" \n", |
---|
94 | "[ NORMALIZE_PATH $(.boost-build-file) ] ;\n", |
---|
95 | "}\n", |
---|
96 | "include $(.boost-build-file) ;\n", |
---|
97 | "if ! $(.bootstrap-file)\n", |
---|
98 | "{\n", |
---|
99 | "ECHO \"Unable to load Boost.Build\" ;\n", |
---|
100 | "ECHO -------------------------- ;\n", |
---|
101 | "ECHO \"\\\"$(.boost-build-file)\\\" was found by searching from\" [ PWD ] \"up to the root\" ;\n", |
---|
102 | "ECHO \"and in these directories from BOOST_BUILD_PATH and BOOST_ROOT: \"$(search-path:J=\", \")\".\" ;\n", |
---|
103 | "ECHO ;\n", |
---|
104 | "ECHO \"However, it failed to call the \\\"boost-build\\\" rule to indicate\" ;\n", |
---|
105 | "ECHO \"the location of the build system.\" ;\n", |
---|
106 | "ECHO ;\n", |
---|
107 | "EXIT \"Please consult the documentation at 'http://www.boost.org'.\" ;\n", |
---|
108 | "}\n", |
---|
109 | "}\n", |
---|
110 | "else\n", |
---|
111 | "{\n", |
---|
112 | "if $(NT)\n", |
---|
113 | "{\n", |
---|
114 | "local SUPPORTED_TOOLSETS = \"BORLANDC\" \"VC7\" \"VISUALC\" \"VISUALC16\" \"INTELC\" \"WATCOM\"\n", |
---|
115 | "\"MINGW\" \"LCC\" ;\n", |
---|
116 | "TOOLSET = \"\" ;\n", |
---|
117 | "if $(JAM_TOOLSET)\n", |
---|
118 | "{\n", |
---|
119 | "local t ;\n", |
---|
120 | "for t in $(SUPPORTED_TOOLSETS)\n", |
---|
121 | "{\n", |
---|
122 | "$(t) = $($(t):J=\" \") ; # reconstitute paths with spaces in them\n", |
---|
123 | "if $(t) = $(JAM_TOOLSET) { TOOLSET = $(t) ; }\n", |
---|
124 | "}\n", |
---|
125 | "if ! $(TOOLSET)\n", |
---|
126 | "{\n", |
---|
127 | "ECHO \"The JAM_TOOLSET environment variable is defined but its value\" ;\n", |
---|
128 | "ECHO \"is invalid, please use one of the following:\" ;\n", |
---|
129 | "ECHO ;\n", |
---|
130 | "for t in $(SUPPORTED_TOOLSETS) { ECHO \" \" $(t) ; }\n", |
---|
131 | "EXIT ;\n", |
---|
132 | "}\n", |
---|
133 | "}\n", |
---|
134 | "if ! $(TOOLSET)\n", |
---|
135 | "{\n", |
---|
136 | "if $(BCCROOT)\n", |
---|
137 | "{\n", |
---|
138 | "TOOLSET = BORLANDC ;\n", |
---|
139 | "BORLANDC = $(BCCROOT:J=\" \") ;\n", |
---|
140 | "}\n", |
---|
141 | "else if $(MSVC)\n", |
---|
142 | "{\n", |
---|
143 | "TOOLSET = VISUALC16 ;\n", |
---|
144 | "VISUALC16 = $(MSVC:J=\" \") ;\n", |
---|
145 | "}\n", |
---|
146 | "else if $(MSVCNT)\n", |
---|
147 | "{\n", |
---|
148 | "TOOLSET = VISUALC ;\n", |
---|
149 | "VISUALC = $(MSVCNT:J=\" \") ;\n", |
---|
150 | "}\n", |
---|
151 | "else if $(MSVCDir)\n", |
---|
152 | "{\n", |
---|
153 | "TOOLSET = VISUALC ;\n", |
---|
154 | "VISUALC = $(MSVCDir:J=\" \") ;\n", |
---|
155 | "}\n", |
---|
156 | "else if $(MINGW)\n", |
---|
157 | "{\n", |
---|
158 | "TOOLSET = MINGW ;\n", |
---|
159 | "}\n", |
---|
160 | "else\n", |
---|
161 | "{\n", |
---|
162 | "ECHO \"Jam cannot be run because, either:\" ;\n", |
---|
163 | "ECHO \" a. You didn't set BOOST_ROOT to indicate the root of your\" ;\n", |
---|
164 | "ECHO \" Boost installation.\" ;\n", |
---|
165 | "ECHO \" b. You are trying to use stock Jam but didn't indicate which\" ;\n", |
---|
166 | "ECHO \" compilation toolset to use. To do so, follow these simple\" ;\n", |
---|
167 | "ECHO \" instructions:\" ;\n", |
---|
168 | "ECHO ;\n", |
---|
169 | "ECHO \" - define one of the following environment variable, with the\" ;\n", |
---|
170 | "ECHO \" appropriate value according to this list:\" ;\n", |
---|
171 | "ECHO ;\n", |
---|
172 | "ECHO \" Variable Toolset Description\" ;\n", |
---|
173 | "ECHO ;\n", |
---|
174 | "ECHO \" BORLANDC Borland C++ BC++ install path\" ;\n", |
---|
175 | "ECHO \" VISUALC Microsoft Visual C++ VC++ install path\" ;\n", |
---|
176 | "ECHO \" VISUALC16 Microsoft Visual C++ 16 bit VC++ 16 bit install\" ;\n", |
---|
177 | "ECHO \" INTELC Intel C/C++ IC++ install path\" ;\n", |
---|
178 | "ECHO \" WATCOM Watcom C/C++ Watcom install path\" ;\n", |
---|
179 | "ECHO \" MINGW MinGW (gcc) MinGW install path\" ;\n", |
---|
180 | "ECHO \" LCC Win32-LCC LCC-Win32 install path\" ;\n", |
---|
181 | "ECHO ;\n", |
---|
182 | "ECHO \" - define the JAM_TOOLSET environment variable with the *name*\" ;\n", |
---|
183 | "ECHO \" of the toolset variable you want to use.\" ;\n", |
---|
184 | "ECHO ;\n", |
---|
185 | "ECHO \" e.g.: set VISUALC=C:\\\\Visual6\" ;\n", |
---|
186 | "ECHO \" set JAM_TOOLSET=VISUALC\" ;\n", |
---|
187 | "EXIT ;\n", |
---|
188 | "}\n", |
---|
189 | "}\n", |
---|
190 | "CP ?= copy ;\n", |
---|
191 | "RM ?= del /f/q ;\n", |
---|
192 | "SLASH ?= \\\\ ;\n", |
---|
193 | "SUFLIB ?= .lib ;\n", |
---|
194 | "SUFOBJ ?= .obj ;\n", |
---|
195 | "SUFEXE ?= .exe ;\n", |
---|
196 | "if $(TOOLSET) = BORLANDC\n", |
---|
197 | "{\n", |
---|
198 | "ECHO \"Compiler is Borland C++\" ;\n", |
---|
199 | "AR ?= tlib /C /P64 ;\n", |
---|
200 | "CC ?= bcc32 ;\n", |
---|
201 | "CCFLAGS ?= -q -y -d -v -w-par -w-ccc -w-rch -w-pro -w-aus ;\n", |
---|
202 | "C++ ?= bcc32 ;\n", |
---|
203 | "C++FLAGS ?= -q -y -d -v -w-par -w-ccc -w-rch -w-pro -w-aus -P ;\n", |
---|
204 | "LINK ?= $(CC) ;\n", |
---|
205 | "LINKFLAGS ?= $(CCFLAGS) ;\n", |
---|
206 | "STDLIBPATH ?= $(BORLANDC)\\\\lib ;\n", |
---|
207 | "STDHDRS ?= $(BORLANDC)\\\\include ;\n", |
---|
208 | "NOARSCAN ?= true ;\n", |
---|
209 | "}\n", |
---|
210 | "else if $(TOOLSET) = VISUALC16\n", |
---|
211 | "{\n", |
---|
212 | "ECHO \"Compiler is Microsoft Visual C++ 16 bit\" ;\n", |
---|
213 | "AR ?= lib /nologo ;\n", |
---|
214 | "CC ?= cl /nologo ;\n", |
---|
215 | "CCFLAGS ?= /D \\\"WIN\\\" ;\n", |
---|
216 | "C++ ?= $(CC) ;\n", |
---|
217 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
218 | "LINK ?= $(CC) ;\n", |
---|
219 | "LINKFLAGS ?= $(CCFLAGS) ;\n", |
---|
220 | "LINKLIBS ?= \n", |
---|
221 | "\\\"$(VISUALC16)\\\\lib\\\\mlibce.lib\\\"\n", |
---|
222 | "\\\"$(VISUALC16)\\\\lib\\\\oldnames.lib\\\"\n", |
---|
223 | ";\n", |
---|
224 | "LINKLIBS ?= ;\n", |
---|
225 | "NOARSCAN ?= true ;\n", |
---|
226 | "OPTIM ?= \"\" ;\n", |
---|
227 | "STDHDRS ?= $(VISUALC16)\\\\include ;\n", |
---|
228 | "UNDEFFLAG ?= \"/u _\" ;\n", |
---|
229 | "}\n", |
---|
230 | "else if $(TOOLSET) = VISUALC\n", |
---|
231 | "{\n", |
---|
232 | "ECHO \"Compiler is Microsoft Visual C++\" ;\n", |
---|
233 | "AR ?= lib ;\n", |
---|
234 | "AS ?= masm386 ;\n", |
---|
235 | "CC ?= cl /nologo ;\n", |
---|
236 | "CCFLAGS ?= \"\" ;\n", |
---|
237 | "C++ ?= $(CC) ;\n", |
---|
238 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
239 | "LINK ?= link /nologo ;\n", |
---|
240 | "LINKFLAGS ?= \"\" ;\n", |
---|
241 | "LINKLIBS ?= \\\"$(VISUALC)\\\\lib\\\\advapi32.lib\\\"\n", |
---|
242 | "\\\"$(VISUALC)\\\\lib\\\\gdi32.lib\\\"\n", |
---|
243 | "\\\"$(VISUALC)\\\\lib\\\\user32.lib\\\"\n", |
---|
244 | "\\\"$(VISUALC)\\\\lib\\\\kernel32.lib\\\" ;\n", |
---|
245 | "OPTIM ?= \"\" ;\n", |
---|
246 | "STDHDRS ?= $(VISUALC)\\\\include ;\n", |
---|
247 | "UNDEFFLAG ?= \"/u _\" ;\n", |
---|
248 | "}\n", |
---|
249 | "else if $(TOOLSET) = VC7\n", |
---|
250 | "{\n", |
---|
251 | "ECHO \"Compiler is Microsoft Visual C++ .NET\" ;\n", |
---|
252 | "AR ?= lib ;\n", |
---|
253 | "AS ?= masm386 ;\n", |
---|
254 | "CC ?= cl /nologo ;\n", |
---|
255 | "CCFLAGS ?= \"\" ;\n", |
---|
256 | "C++ ?= $(CC) ;\n", |
---|
257 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
258 | "LINK ?= link /nologo ;\n", |
---|
259 | "LINKFLAGS ?= \"\" ;\n", |
---|
260 | "LINKLIBS ?= \\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\advapi32.lib\\\"\n", |
---|
261 | "\\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\gdi32.lib\\\"\n", |
---|
262 | "\\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\user32.lib\\\"\n", |
---|
263 | "\\\"$(VISUALC)\\\\PlatformSDK\\\\lib\\\\kernel32.lib\\\" ;\n", |
---|
264 | "OPTIM ?= \"\" ;\n", |
---|
265 | "STDHDRS ?= \\\"$(VISUALC)\\\\include\\\"\n", |
---|
266 | "\\\"$(VISUALC)\\\\PlatformSDK\\\\include\\\" ;\n", |
---|
267 | "UNDEFFLAG ?= \"/u _\" ;\n", |
---|
268 | "}\n", |
---|
269 | "else if $(TOOLSET) = INTELC\n", |
---|
270 | "{\n", |
---|
271 | "ECHO \"Compiler is Intel C/C++\" ;\n", |
---|
272 | "if ! $(VISUALC)\n", |
---|
273 | "{\n", |
---|
274 | "ECHO \"As a special exception, when using the Intel C++ compiler, you need\" ;\n", |
---|
275 | "ECHO \"to define the VISUALC environment variable to indicate the location\" ;\n", |
---|
276 | "ECHO \"of your Visual C++ installation. Aborting..\" ;\n", |
---|
277 | "EXIT ;\n", |
---|
278 | "}\n", |
---|
279 | "AR ?= lib ;\n", |
---|
280 | "AS ?= masm386 ;\n", |
---|
281 | "CC ?= icl /nologo ;\n", |
---|
282 | "CCFLAGS ?= \"\" ;\n", |
---|
283 | "C++ ?= $(CC) ;\n", |
---|
284 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
285 | "LINK ?= link /nologo ;\n", |
---|
286 | "LINKFLAGS ?= \"\" ;\n", |
---|
287 | "LINKLIBS ?= $(VISUALC)\\\\lib\\\\advapi32.lib\n", |
---|
288 | "$(VISUALC)\\\\lib\\\\kernel32.lib\n", |
---|
289 | ";\n", |
---|
290 | "OPTIM ?= \"\" ;\n", |
---|
291 | "STDHDRS ?= $(INTELC)\\include $(VISUALC)\\\\include ;\n", |
---|
292 | "UNDEFFLAG ?= \"/u _\" ;\n", |
---|
293 | "}\n", |
---|
294 | "else if $(TOOLSET) = WATCOM\n", |
---|
295 | "{\n", |
---|
296 | "ECHO \"Compiler is Watcom C/C++\" ;\n", |
---|
297 | "AR ?= wlib ;\n", |
---|
298 | "CC ?= wcc386 ;\n", |
---|
299 | "CCFLAGS ?= /zq /DWIN32 /I$(WATCOM)\\\\h ; # zq=quiet\n", |
---|
300 | "C++ ?= wpp386 ;\n", |
---|
301 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
302 | "CP ?= copy ;\n", |
---|
303 | "DOT ?= . ;\n", |
---|
304 | "DOTDOT ?= .. ;\n", |
---|
305 | "LINK ?= wcl386 ;\n", |
---|
306 | "LINKFLAGS ?= /zq ; # zq=quiet\n", |
---|
307 | "LINKLIBS ?= ;\n", |
---|
308 | "MV ?= move ;\n", |
---|
309 | "NOARSCAN ?= true ;\n", |
---|
310 | "OPTIM ?= ;\n", |
---|
311 | "RM ?= del /f ;\n", |
---|
312 | "SLASH ?= \\\\ ;\n", |
---|
313 | "STDHDRS ?= $(WATCOM)\\\\h $(WATCOM)\\\\h\\\\nt ;\n", |
---|
314 | "SUFEXE ?= .exe ;\n", |
---|
315 | "SUFLIB ?= .lib ;\n", |
---|
316 | "SUFOBJ ?= .obj ;\n", |
---|
317 | "UNDEFFLAG ?= \"/u _\" ;\n", |
---|
318 | "}\n", |
---|
319 | "else if $(TOOLSET) = MINGW\n", |
---|
320 | "{\n", |
---|
321 | "ECHO \"Compiler is GCC with Mingw\" ;\n", |
---|
322 | "AR ?= ar -ru ;\n", |
---|
323 | "CC ?= gcc ;\n", |
---|
324 | "CCFLAGS ?= \"\" ;\n", |
---|
325 | "C++ ?= $(CC) ;\n", |
---|
326 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
327 | "LINK ?= $(CC) ;\n", |
---|
328 | "LINKFLAGS ?= \"\" ;\n", |
---|
329 | "LINKLIBS ?= \"\" ;\n", |
---|
330 | "OPTIM ?= ;\n", |
---|
331 | "SUFOBJ = .o ;\n", |
---|
332 | "SUFLIB = .a ;\n", |
---|
333 | "SLASH = / ;\n", |
---|
334 | "}\n", |
---|
335 | "else if $(TOOLSET) = LCC\n", |
---|
336 | "{\n", |
---|
337 | "ECHO \"Compiler is Win32-LCC\" ;\n", |
---|
338 | "AR ?= lcclib ;\n", |
---|
339 | "CC ?= lcc ;\n", |
---|
340 | "CCFLAGS ?= \"\" ;\n", |
---|
341 | "C++ ?= $(CC) ;\n", |
---|
342 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
343 | "LINK ?= lcclnk ;\n", |
---|
344 | "LINKFLAGS ?= \"\" ;\n", |
---|
345 | "LINKLIBS ?= \"\" ;\n", |
---|
346 | "OPTIM ?= ;\n", |
---|
347 | "NOARSCAN = true ;\n", |
---|
348 | "}\n", |
---|
349 | "else\n", |
---|
350 | "{\n", |
---|
351 | "EXIT On NT, set BCCROOT, MSVCNT, MINGW or MSVC to the root of the\n", |
---|
352 | "Borland or Microsoft directories. ;\n", |
---|
353 | "}\n", |
---|
354 | "}\n", |
---|
355 | "else if $(OS2)\n", |
---|
356 | "{\n", |
---|
357 | "local SUPPORTED_TOOLSETS = \"EMX\" \"WATCOM\" ;\n", |
---|
358 | "TOOLSET = \"\" ;\n", |
---|
359 | "if $(JAM_TOOLSET)\n", |
---|
360 | "{\n", |
---|
361 | "local t ;\n", |
---|
362 | "for t in $(SUPPORTED_TOOLSETS)\n", |
---|
363 | "{\n", |
---|
364 | "$(t) = $($(t):J=\" \") ; # reconstitute paths with spaces in them\n", |
---|
365 | "if $(t) = $(JAM_TOOLSET) { TOOLSET = $(t) ; }\n", |
---|
366 | "}\n", |
---|
367 | "if ! $(TOOLSET)\n", |
---|
368 | "{\n", |
---|
369 | "ECHO \"The JAM_TOOLSET environment variable is defined but its value\" ;\n", |
---|
370 | "ECHO \"is invalid, please use one of the following:\" ;\n", |
---|
371 | "ECHO ;\n", |
---|
372 | "for t in $(SUPPORTED_TOOLSETS) { ECHO \" \" $(t) ; }\n", |
---|
373 | "EXIT ;\n", |
---|
374 | "}\n", |
---|
375 | "}\n", |
---|
376 | "if ! $(TOOLSET)\n", |
---|
377 | "{\n", |
---|
378 | "if $(watcom)\n", |
---|
379 | "{\n", |
---|
380 | "WATCOM = $(watcom:J=\" \") ;\n", |
---|
381 | "TOOLSET = WATCOM ;\n", |
---|
382 | "}\n", |
---|
383 | "else\n", |
---|
384 | "{\n", |
---|
385 | "ECHO \"Jam cannot be run because you didn't indicate which compilation toolset\" ;\n", |
---|
386 | "ECHO \"to use. To do so, follow these simple instructions:\" ;\n", |
---|
387 | "ECHO ;\n", |
---|
388 | "ECHO \" - define one of the following environment variable, with the\" ;\n", |
---|
389 | "ECHO \" appropriate value according to this list:\" ;\n", |
---|
390 | "ECHO ;\n", |
---|
391 | "ECHO \" Variable Toolset Description\" ;\n", |
---|
392 | "ECHO ;\n", |
---|
393 | "ECHO \" WATCOM Watcom C/C++ Watcom install path\" ;\n", |
---|
394 | "ECHO \" EMX EMX (gcc) EMX install path\" ;\n", |
---|
395 | "ECHO \" VISUALAGE IBM Visual Age C/C++ VisualAge install path\" ;\n", |
---|
396 | "ECHO ;\n", |
---|
397 | "ECHO \" - define the JAM_TOOLSET environment variable with the *name*\" ;\n", |
---|
398 | "ECHO \" of the toolset variable you want to use.\" ;\n", |
---|
399 | "ECHO ;\n", |
---|
400 | "ECHO \" e.g.: set WATCOM=C:\\WATCOM\" ;\n", |
---|
401 | "ECHO \" set JAM_TOOLSET=WATCOM\" ;\n", |
---|
402 | "ECHO ;\n", |
---|
403 | "EXIT ;\n", |
---|
404 | "}\n", |
---|
405 | "}\n", |
---|
406 | "RM = del /f ;\n", |
---|
407 | "CP = copy ;\n", |
---|
408 | "MV ?= move ;\n", |
---|
409 | "DOT ?= . ;\n", |
---|
410 | "DOTDOT ?= .. ;\n", |
---|
411 | "SUFLIB ?= .lib ;\n", |
---|
412 | "SUFOBJ ?= .obj ;\n", |
---|
413 | "SUFEXE ?= .exe ;\n", |
---|
414 | "if $(TOOLSET) = WATCOM\n", |
---|
415 | "{\n", |
---|
416 | "AR ?= wlib ;\n", |
---|
417 | "BINDIR ?= \\\\os2\\\\apps ;\n", |
---|
418 | "CC ?= wcc386 ;\n", |
---|
419 | "CCFLAGS ?= /zq /DOS2 /I$(WATCOM)\\\\h ; # zq=quiet\n", |
---|
420 | "C++ ?= wpp386 ;\n", |
---|
421 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
422 | "LINK ?= wcl386 ;\n", |
---|
423 | "LINKFLAGS ?= /zq ; # zq=quiet\n", |
---|
424 | "LINKLIBS ?= ;\n", |
---|
425 | "NOARSCAN ?= true ;\n", |
---|
426 | "OPTIM ?= ;\n", |
---|
427 | "SLASH ?= \\\\ ;\n", |
---|
428 | "STDHDRS ?= $(WATCOM)\\\\h ;\n", |
---|
429 | "UNDEFFLAG ?= \"/u _\" ;\n", |
---|
430 | "}\n", |
---|
431 | "else if $(TOOLSET) = EMX\n", |
---|
432 | "{\n", |
---|
433 | "ECHO \"Compiler is GCC-EMX\" ;\n", |
---|
434 | "AR ?= ar -ru ;\n", |
---|
435 | "CC ?= gcc ;\n", |
---|
436 | "CCFLAGS ?= \"\" ;\n", |
---|
437 | "C++ ?= $(CC) ;\n", |
---|
438 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
439 | "LINK ?= $(CC) ;\n", |
---|
440 | "LINKFLAGS ?= \"\" ;\n", |
---|
441 | "LINKLIBS ?= \"\" ;\n", |
---|
442 | "OPTIM ?= ;\n", |
---|
443 | "SUFOBJ = .o ;\n", |
---|
444 | "SUFLIB = .a ;\n", |
---|
445 | "UNDEFFLAG ?= \"-U\" ;\n", |
---|
446 | "SLASH = / ;\n", |
---|
447 | "}\n", |
---|
448 | "else\n", |
---|
449 | "{\n", |
---|
450 | "EXIT \"Sorry, but the $(JAM_TOOLSET) toolset isn't supported for now\" ;\n", |
---|
451 | "}\n", |
---|
452 | "}\n", |
---|
453 | "else if $(VMS)\n", |
---|
454 | "{\n", |
---|
455 | "C++ ?= cxx ;\n", |
---|
456 | "C++FLAGS ?= ;\n", |
---|
457 | "CC ?= cc ;\n", |
---|
458 | "CCFLAGS ?= ;\n", |
---|
459 | "CHMOD ?= set file/prot= ;\n", |
---|
460 | "CP ?= copy/replace ;\n", |
---|
461 | "CRELIB ?= true ;\n", |
---|
462 | "DOT ?= [] ;\n", |
---|
463 | "DOTDOT ?= [-] ;\n", |
---|
464 | "EXEMODE ?= (w:e) ;\n", |
---|
465 | "FILEMODE ?= (w:r) ;\n", |
---|
466 | "HDRS ?= ;\n", |
---|
467 | "LINK ?= link ;\n", |
---|
468 | "LINKFLAGS ?= \"\" ;\n", |
---|
469 | "LINKLIBS ?= ;\n", |
---|
470 | "MKDIR ?= create/dir ;\n", |
---|
471 | "MV ?= rename ;\n", |
---|
472 | "OPTIM ?= \"\" ;\n", |
---|
473 | "RM ?= delete ;\n", |
---|
474 | "RUNVMS ?= mcr ;\n", |
---|
475 | "SHELLMODE ?= (w:er) ;\n", |
---|
476 | "SLASH ?= . ;\n", |
---|
477 | "STDHDRS ?= decc$library_include ;\n", |
---|
478 | "SUFEXE ?= .exe ;\n", |
---|
479 | "SUFLIB ?= .olb ;\n", |
---|
480 | "SUFOBJ ?= .obj ;\n", |
---|
481 | "switch $(OS) \n", |
---|
482 | "{\n", |
---|
483 | "case OPENVMS : CCFLAGS ?= /stand=vaxc ;\n", |
---|
484 | "case VMS : LINKLIBS ?= sys$library:vaxcrtl.olb/lib ;\n", |
---|
485 | "}\n", |
---|
486 | "}\n", |
---|
487 | "else if $(MAC)\n", |
---|
488 | "{\n", |
---|
489 | "local OPT ;\n", |
---|
490 | "CW ?= \"{CW}\" ;\n", |
---|
491 | "MACHDRS ?=\n", |
---|
492 | "\"$(UMACHDRS):Universal:Interfaces:CIncludes\"\n", |
---|
493 | "\"$(CW):MSL:MSL_C:MSL_Common:Include\"\n", |
---|
494 | "\"$(CW):MSL:MSL_C:MSL_MacOS:Include\" ;\n", |
---|
495 | "MACLIBS ?=\n", |
---|
496 | "\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Interfacelib\"\n", |
---|
497 | "\"$(CW):MacOS Support:Universal:Libraries:StubLibraries:Mathlib\" ;\n", |
---|
498 | "MPWLIBS ?= \n", |
---|
499 | "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib\"\n", |
---|
500 | "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW.Lib\" ;\n", |
---|
501 | "MPWNLLIBS ?= \n", |
---|
502 | "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL MPWCRuntime.lib\"\n", |
---|
503 | "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC MPW(NL).Lib\" ;\n", |
---|
504 | "SIOUXHDRS ?= ;\n", |
---|
505 | "SIOUXLIBS ?= \n", |
---|
506 | "\"$(CW):MacOS Support:Libraries:Runtime:Runtime PPC:MSL RuntimePPC.lib\"\n", |
---|
507 | "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL SIOUX.PPC.Lib\" \n", |
---|
508 | "\"$(CW):MSL:MSL_C:MSL_MacOS:Lib:PPC:MSL C.PPC.Lib\" ;\n", |
---|
509 | "C++ ?= mwcppc ;\n", |
---|
510 | "C++FLAGS ?= -w off -nomapcr ;\n", |
---|
511 | "CC ?= mwcppc ;\n", |
---|
512 | "CCFLAGS ?= -w off -nomapcr ;\n", |
---|
513 | "CP ?= duplicate -y ;\n", |
---|
514 | "DOT ?= \":\" ;\n", |
---|
515 | "DOTDOT ?= \"::\" ;\n", |
---|
516 | "HDRS ?= $(MACHDRS) $(MPWHDRS) ;\n", |
---|
517 | "LINK ?= mwlinkppc ;\n", |
---|
518 | "LINKFLAGS ?= -mpwtool -warn ; \n", |
---|
519 | "LINKLIBS ?= $(MACLIBS) $(MPWLIBS) ; \n", |
---|
520 | "MKDIR ?= newfolder ;\n", |
---|
521 | "MV ?= rename -y ;\n", |
---|
522 | "NOARSCAN ?= true ;\n", |
---|
523 | "OPTIM ?= ;\n", |
---|
524 | "RM ?= delete -y ;\n", |
---|
525 | "SLASH ?= \":\" ;\n", |
---|
526 | "STDHDRS ?= ; \n", |
---|
527 | "SUFLIB ?= .lib ;\n", |
---|
528 | "SUFOBJ ?= .o ;\n", |
---|
529 | "}\n", |
---|
530 | "else if $(OS) = BEOS && $(METROWERKS)\n", |
---|
531 | "{\n", |
---|
532 | "AR ?= mwld -xml -o ;\n", |
---|
533 | "BINDIR ?= /boot/apps ;\n", |
---|
534 | "CC ?= mwcc ;\n", |
---|
535 | "CCFLAGS ?= -nosyspath ;\n", |
---|
536 | "C++ ?= $(CC) ;\n", |
---|
537 | "C++FLAGS ?= -nosyspath ;\n", |
---|
538 | "FORTRAN ?= \"\" ;\n", |
---|
539 | "LIBDIR ?= /boot/develop/libraries ;\n", |
---|
540 | "LINK ?= mwld ;\n", |
---|
541 | "LINKFLAGS ?= \"\" ;\n", |
---|
542 | "MANDIR ?= /boot/documentation/\"Shell Tools\"/HTML ;\n", |
---|
543 | "NOARSCAN ?= true ;\n", |
---|
544 | "STDHDRS ?= /boot/develop/headers/posix ;\n", |
---|
545 | "}\n", |
---|
546 | "else if $(OS) = BEOS \n", |
---|
547 | "{\n", |
---|
548 | "BINDIR ?= /boot/apps ;\n", |
---|
549 | "CC ?= gcc ;\n", |
---|
550 | "C++ ?= $(CC) ;\n", |
---|
551 | "FORTRAN ?= \"\" ;\n", |
---|
552 | "LIBDIR ?= /boot/develop/libraries ;\n", |
---|
553 | "LINK ?= gcc ;\n", |
---|
554 | "LINKLIBS ?= -lnet ;\n", |
---|
555 | "NOARSCAN ?= true ;\n", |
---|
556 | "STDHDRS ?= /boot/develop/headers/posix ;\n", |
---|
557 | "}\n", |
---|
558 | "else if $(UNIX)\n", |
---|
559 | "{\n", |
---|
560 | "switch $(OS)\n", |
---|
561 | "{\n", |
---|
562 | "case AIX :\n", |
---|
563 | "LINKLIBS ?= -lbsd ;\n", |
---|
564 | "case AMIGA :\n", |
---|
565 | "CC ?= gcc ;\n", |
---|
566 | "YACC ?= \"bison -y\" ;\n", |
---|
567 | "case CYGWIN : \n", |
---|
568 | "CC ?= gcc ;\n", |
---|
569 | "CCFLAGS += -D__cygwin__ ;\n", |
---|
570 | "LEX ?= flex ;\n", |
---|
571 | "RANLIB ?= \"\" ;\n", |
---|
572 | "SUFEXE ?= .exe ;\n", |
---|
573 | "YACC ?= \"bison -y\" ;\n", |
---|
574 | "case DGUX :\n", |
---|
575 | "RANLIB ?= \"\" ;\n", |
---|
576 | "RELOCATE ?= true ;\n", |
---|
577 | "case HPUX :\n", |
---|
578 | "YACC = ;\n", |
---|
579 | "CFLAGS += -Ae ;\n", |
---|
580 | "CCFLAGS += -Ae ;\n", |
---|
581 | "RANLIB ?= \"\" ;\n", |
---|
582 | "case INTERIX :\n", |
---|
583 | "CC ?= gcc ;\n", |
---|
584 | "RANLIB ?= \"\" ;\n", |
---|
585 | "case IRIX :\n", |
---|
586 | "RANLIB ?= \"\" ;\n", |
---|
587 | "case MPEIX :\n", |
---|
588 | "CC ?= gcc ;\n", |
---|
589 | "C++ ?= gcc ;\n", |
---|
590 | "CCFLAGS += -D_POSIX_SOURCE ;\n", |
---|
591 | "HDRS += /usr/include ;\n", |
---|
592 | "RANLIB ?= \"\" ; \n", |
---|
593 | "NOARSCAN ?= true ;\n", |
---|
594 | "NOARUPDATE ?= true ;\n", |
---|
595 | "case MVS :\n", |
---|
596 | "RANLIB ?= \"\" ; \n", |
---|
597 | "case NEXT :\n", |
---|
598 | "AR ?= libtool -o ;\n", |
---|
599 | "RANLIB ?= \"\" ;\n", |
---|
600 | "case MACOSX :\n", |
---|
601 | "AR ?= libtool -o ;\n", |
---|
602 | "C++ ?= c++ ;\n", |
---|
603 | "MANDIR ?= /usr/local/share/man ;\n", |
---|
604 | "RANLIB ?= \"\" ;\n", |
---|
605 | "case NCR :\n", |
---|
606 | "RANLIB ?= \"\" ;\n", |
---|
607 | "case PTX :\n", |
---|
608 | "RANLIB ?= \"\" ;\n", |
---|
609 | "case QNX :\n", |
---|
610 | "AR ?= wlib ;\n", |
---|
611 | "CC ?= cc ;\n", |
---|
612 | "CCFLAGS ?= -Q ; # quiet\n", |
---|
613 | "C++ ?= $(CC) ;\n", |
---|
614 | "C++FLAGS ?= -Q ; # quiet\n", |
---|
615 | "LINK ?= $(CC) ;\n", |
---|
616 | "LINKFLAGS ?= -Q ; # quiet\n", |
---|
617 | "NOARSCAN ?= true ;\n", |
---|
618 | "RANLIB ?= \"\" ;\n", |
---|
619 | "case SCO :\n", |
---|
620 | "RANLIB ?= \"\" ;\n", |
---|
621 | "RELOCATE ?= true ;\n", |
---|
622 | "case SINIX :\n", |
---|
623 | "RANLIB ?= \"\" ;\n", |
---|
624 | "case SOLARIS :\n", |
---|
625 | "RANLIB ?= \"\" ;\n", |
---|
626 | "AR ?= \"/usr/ccs/bin/ar ru\" ;\n", |
---|
627 | "case UNICOS :\n", |
---|
628 | "NOARSCAN ?= true ;\n", |
---|
629 | "OPTIM ?= -O0 ;\n", |
---|
630 | "case UNIXWARE :\n", |
---|
631 | "RANLIB ?= \"\" ;\n", |
---|
632 | "RELOCATE ?= true ;\n", |
---|
633 | "}\n", |
---|
634 | "CCFLAGS ?= ;\n", |
---|
635 | "C++FLAGS ?= $(CCFLAGS) ;\n", |
---|
636 | "CHMOD ?= chmod ;\n", |
---|
637 | "CHGRP ?= chgrp ;\n", |
---|
638 | "CHOWN ?= chown ;\n", |
---|
639 | "LEX ?= lex ;\n", |
---|
640 | "LINKFLAGS ?= $(CCFLAGS) ;\n", |
---|
641 | "LINKLIBS ?= ;\n", |
---|
642 | "OPTIM ?= -O ;\n", |
---|
643 | "RANLIB ?= ranlib ;\n", |
---|
644 | "YACC ?= yacc ;\n", |
---|
645 | "YACCFILES ?= y.tab ;\n", |
---|
646 | "YACCFLAGS ?= -d ;\n", |
---|
647 | "}\n", |
---|
648 | "AR ?= ar ru ;\n", |
---|
649 | "AS ?= as ;\n", |
---|
650 | "ASFLAGS ?= ;\n", |
---|
651 | "AWK ?= awk ;\n", |
---|
652 | "BINDIR ?= /usr/local/bin ;\n", |
---|
653 | "C++ ?= cc ;\n", |
---|
654 | "C++FLAGS ?= ;\n", |
---|
655 | "CC ?= cc ;\n", |
---|
656 | "CCFLAGS ?= ;\n", |
---|
657 | "CP ?= cp -f ;\n", |
---|
658 | "CRELIB ?= ;\n", |
---|
659 | "DOT ?= . ;\n", |
---|
660 | "DOTDOT ?= .. ;\n", |
---|
661 | "EXEMODE ?= 711 ;\n", |
---|
662 | "FILEMODE ?= 644 ;\n", |
---|
663 | "FORTRAN ?= f77 ;\n", |
---|
664 | "FORTRANFLAGS ?= ;\n", |
---|
665 | "HDRS ?= ;\n", |
---|
666 | "INSTALLGRIST ?= installed ;\n", |
---|
667 | "JAMFILE ?= Jamfile ;\n", |
---|
668 | "JAMRULES ?= Jamrules ;\n", |
---|
669 | "LEX ?= ;\n", |
---|
670 | "LIBDIR ?= /usr/local/lib ;\n", |
---|
671 | "LINK ?= $(CC) ;\n", |
---|
672 | "LINKFLAGS ?= ;\n", |
---|
673 | "LINKLIBS ?= ;\n", |
---|
674 | "LN ?= ln ;\n", |
---|
675 | "MANDIR ?= /usr/local/man ;\n", |
---|
676 | "MKDIR ?= mkdir ;\n", |
---|
677 | "MV ?= mv -f ;\n", |
---|
678 | "OPTIM ?= ;\n", |
---|
679 | "RCP ?= rcp ;\n", |
---|
680 | "RM ?= rm -f ;\n", |
---|
681 | "RSH ?= rsh ;\n", |
---|
682 | "SED ?= sed ;\n", |
---|
683 | "SHELLHEADER ?= \"#!/bin/sh\" ;\n", |
---|
684 | "SHELLMODE ?= 755 ;\n", |
---|
685 | "SLASH ?= / ;\n", |
---|
686 | "STDHDRS ?= /usr/include ;\n", |
---|
687 | "SUFEXE ?= \"\" ;\n", |
---|
688 | "SUFLIB ?= .a ;\n", |
---|
689 | "SUFOBJ ?= .o ;\n", |
---|
690 | "UNDEFFLAG ?= \"-u _\" ;\n", |
---|
691 | "YACC ?= ;\n", |
---|
692 | "YACCFILES ?= ;\n", |
---|
693 | "YACCFLAGS ?= ;\n", |
---|
694 | "HDRPATTERN = \n", |
---|
695 | "\"^[ ]*#[ ]*include[ ]*[<\\\"]([^\\\">]*)[\\\">].*$\" ;\n", |
---|
696 | "OSFULL = $(OS)$(OSVER)$(OSPLAT) $(OS)$(OSPLAT) $(OS)$(OSVER) $(OS) ;\n", |
---|
697 | "DEPENDS all : shell files lib exe obj ;\n", |
---|
698 | "DEPENDS all shell files lib exe obj : first ;\n", |
---|
699 | "NOTFILE all first shell files lib exe obj dirs clean uninstall ;\n", |
---|
700 | "ALWAYS clean uninstall ;\n", |
---|
701 | "rule As\n", |
---|
702 | "{\n", |
---|
703 | "DEPENDS $(<) : $(>) ;\n", |
---|
704 | "ASFLAGS on $(<) += $(ASFLAGS) $(SUBDIRASFLAGS) ;\n", |
---|
705 | "}\n", |
---|
706 | "rule Bulk\n", |
---|
707 | "{\n", |
---|
708 | "local i ;\n", |
---|
709 | "for i in $(>)\n", |
---|
710 | "{\n", |
---|
711 | "File $(i:D=$(<)) : $(i) ;\n", |
---|
712 | "}\n", |
---|
713 | "}\n", |
---|
714 | "rule Cc\n", |
---|
715 | "{\n", |
---|
716 | "local _h ;\n", |
---|
717 | "DEPENDS $(<) : $(>) ;\n", |
---|
718 | "CCFLAGS on $(<) += $(CCFLAGS) $(SUBDIRCCFLAGS) ;\n", |
---|
719 | "if $(RELOCATE)\n", |
---|
720 | "{\n", |
---|
721 | "CcMv $(<) : $(>) ;\n", |
---|
722 | "}\n", |
---|
723 | "_h = $(SEARCH_SOURCE) $(HDRS) $(SUBDIRHDRS) ;\n", |
---|
724 | "if $(VMS) && $(_h)\n", |
---|
725 | "{\n", |
---|
726 | "SLASHINC on $(<) = \"/inc=(\" $(_h[1]) ,$(_h[2-]) \")\" ;\n", |
---|
727 | "}\n", |
---|
728 | "else if $(MAC) && $(_h)\n", |
---|
729 | "{\n", |
---|
730 | "local _i _j ;\n", |
---|
731 | "_j = $(_h[1]) ;\n", |
---|
732 | "for _i in $(_h[2-])\n", |
---|
733 | "{\n", |
---|
734 | "_j = $(_j),$(_i) ;\n", |
---|
735 | "}\n", |
---|
736 | "MACINC on $(<) = \\\"$(_j)\\\" ;\n", |
---|
737 | "}\n", |
---|
738 | "}\n", |
---|
739 | "rule C++\n", |
---|
740 | "{\n", |
---|
741 | "local _h ;\n", |
---|
742 | "DEPENDS $(<) : $(>) ;\n", |
---|
743 | "C++FLAGS on $(<) += $(C++FLAGS) $(SUBDIRC++FLAGS) ;\n", |
---|
744 | "if $(RELOCATE)\n", |
---|
745 | "{\n", |
---|
746 | "CcMv $(<) : $(>) ;\n", |
---|
747 | "}\n", |
---|
748 | "_h = $(SEARCH_SOURCE) $(HDRS) $(SUBDIRHDRS) ;\n", |
---|
749 | "if $(VMS) && $(_h)\n", |
---|
750 | "{\n", |
---|
751 | "SLASHINC on $(<) = \"/inc=(\" $(_h[1]) ,$(_h[2-]) \")\" ;\n", |
---|
752 | "}\n", |
---|
753 | "else if $(MAC) && $(_h)\n", |
---|
754 | "{\n", |
---|
755 | "local _i _j ;\n", |
---|
756 | "_j = $(_h[1]) ;\n", |
---|
757 | "for _i in $(_h[2-])\n", |
---|
758 | "{\n", |
---|
759 | "_j = $(_j),$(_i) ;\n", |
---|
760 | "}\n", |
---|
761 | "MACINC on $(<) = \\\"$(_j)\\\" ;\n", |
---|
762 | "}\n", |
---|
763 | "}\n", |
---|
764 | "rule Chmod\n", |
---|
765 | "{\n", |
---|
766 | "if $(CHMOD) { Chmod1 $(<) ; }\n", |
---|
767 | "}\n", |
---|
768 | "rule File\n", |
---|
769 | "{\n", |
---|
770 | "DEPENDS files : $(<) ;\n", |
---|
771 | "DEPENDS $(<) : $(>) ;\n", |
---|
772 | "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", |
---|
773 | "MODE on $(<) = $(FILEMODE) ;\n", |
---|
774 | "Chmod $(<) ;\n", |
---|
775 | "}\n", |
---|
776 | "rule Fortran\n", |
---|
777 | "{\n", |
---|
778 | "DEPENDS $(<) : $(>) ;\n", |
---|
779 | "}\n", |
---|
780 | "rule GenFile \n", |
---|
781 | "{\n", |
---|
782 | "local _t = [ FGristSourceFiles $(<) ] ;\n", |
---|
783 | "local _s = [ FAppendSuffix $(>[1]) : $(SUFEXE) ] ;\n", |
---|
784 | "Depends $(_t) : $(_s) $(>[2-]) ;\n", |
---|
785 | "GenFile1 $(_t) : $(_s) $(>[2-]) ;\n", |
---|
786 | "Clean clean : $(_t) ;\n", |
---|
787 | "}\n", |
---|
788 | "rule GenFile1\n", |
---|
789 | "{\n", |
---|
790 | "MakeLocate $(<) : $(LOCATE_SOURCE) ;\n", |
---|
791 | "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", |
---|
792 | "}\n", |
---|
793 | "rule HardLink\n", |
---|
794 | "{\n", |
---|
795 | "DEPENDS files : $(<) ;\n", |
---|
796 | "DEPENDS $(<) : $(>) ;\n", |
---|
797 | "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", |
---|
798 | "}\n", |
---|
799 | "rule HdrMacroFile\n", |
---|
800 | "{\n", |
---|
801 | "HDRMACRO $(<) ;\n", |
---|
802 | "}\n", |
---|
803 | "rule HdrRule\n", |
---|
804 | "{\n", |
---|
805 | "local s ;\n", |
---|
806 | "if $(HDRGRIST) \n", |
---|
807 | "{ \n", |
---|
808 | "s = $(>:G=$(HDRGRIST)) ;\n", |
---|
809 | "} else { \n", |
---|
810 | "s = $(>) ; \n", |
---|
811 | "}\n", |
---|
812 | "INCLUDES $(<) : $(s) ;\n", |
---|
813 | "SEARCH on $(s) = $(HDRSEARCH) ;\n", |
---|
814 | "NOCARE $(s) ;\n", |
---|
815 | "HDRSEARCH on $(s) = $(HDRSEARCH) ;\n", |
---|
816 | "HDRSCAN on $(s) = $(HDRSCAN) ;\n", |
---|
817 | "HDRRULE on $(s) = $(HDRRULE) ;\n", |
---|
818 | "HDRGRIST on $(s) = $(HDRGRIST) ;\n", |
---|
819 | "}\n", |
---|
820 | "rule InstallInto\n", |
---|
821 | "{\n", |
---|
822 | "local i t ;\n", |
---|
823 | "t = $(>:G=$(INSTALLGRIST)) ;\n", |
---|
824 | "Depends install : $(t) ;\n", |
---|
825 | "Clean uninstall : $(t) ;\n", |
---|
826 | "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", |
---|
827 | "MakeLocate $(t) : $(<) ;\n", |
---|
828 | "for i in $(>)\n", |
---|
829 | "{\n", |
---|
830 | "local tt = $(i:G=$(INSTALLGRIST)) ;\n", |
---|
831 | "Depends $(tt) : $(i) ;\n", |
---|
832 | "Install $(tt) : $(i) ;\n", |
---|
833 | "Chmod $(tt) ;\n", |
---|
834 | "if $(OWNER) && $(CHOWN) \n", |
---|
835 | "{ \n", |
---|
836 | "Chown $(tt) ;\n", |
---|
837 | "OWNER on $(tt) = $(OWNER) ;\n", |
---|
838 | "}\n", |
---|
839 | "if $(GROUP) && $(CHGRP) \n", |
---|
840 | "{ \n", |
---|
841 | "Chgrp $(tt) ;\n", |
---|
842 | "GROUP on $(tt) = $(GROUP) ;\n", |
---|
843 | "}\n", |
---|
844 | "}\n", |
---|
845 | "}\n", |
---|
846 | "rule InstallBin\n", |
---|
847 | "{\n", |
---|
848 | "local _t = [ FAppendSuffix $(>) : $(SUFEXE) ] ;\n", |
---|
849 | "InstallInto $(<) : $(_t) ;\n", |
---|
850 | "MODE on $(_t:G=installed) = $(EXEMODE) ;\n", |
---|
851 | "}\n", |
---|
852 | "rule InstallFile\n", |
---|
853 | "{\n", |
---|
854 | "InstallInto $(<) : $(>) ;\n", |
---|
855 | "MODE on $(>:G=installed) = $(FILEMODE) ;\n", |
---|
856 | "}\n", |
---|
857 | "rule InstallLib\n", |
---|
858 | "{\n", |
---|
859 | "InstallInto $(<) : $(>) ;\n", |
---|
860 | "MODE on $(>:G=installed) = $(FILEMODE) ;\n", |
---|
861 | "}\n", |
---|
862 | "rule InstallMan\n", |
---|
863 | "{\n", |
---|
864 | "local i s d ;\n", |
---|
865 | "for i in $(>)\n", |
---|
866 | "{\n", |
---|
867 | "switch $(i:S)\n", |
---|
868 | "{\n", |
---|
869 | "case .1 : s = 1 ; case .2 : s = 2 ; case .3 : s = 3 ;\n", |
---|
870 | "case .4 : s = 4 ; case .5 : s = 5 ; case .6 : s = 6 ;\n", |
---|
871 | "case .7 : s = 7 ; case .8 : s = 8 ; case .l : s = l ;\n", |
---|
872 | "case .n : s = n ; case .man : s = 1 ;\n", |
---|
873 | "}\n", |
---|
874 | "d = man$(s) ;\n", |
---|
875 | "InstallInto $(d:R=$(<)) : $(i) ;\n", |
---|
876 | "}\n", |
---|
877 | "MODE on $(>:G=installed) = $(FILEMODE) ;\n", |
---|
878 | "}\n", |
---|
879 | "rule InstallShell\n", |
---|
880 | "{\n", |
---|
881 | "InstallInto $(<) : $(>) ;\n", |
---|
882 | "MODE on $(>:G=installed) = $(SHELLMODE) ;\n", |
---|
883 | "}\n", |
---|
884 | "rule Lex\n", |
---|
885 | "{\n", |
---|
886 | "LexMv $(<) : $(>) ;\n", |
---|
887 | "DEPENDS $(<) : $(>) ;\n", |
---|
888 | "MakeLocate $(<) : $(LOCATE_SOURCE) ;\n", |
---|
889 | "Clean clean : $(<) ;\n", |
---|
890 | "}\n", |
---|
891 | "rule Library\n", |
---|
892 | "{\n", |
---|
893 | "LibraryFromObjects $(<) : $(>:S=$(SUFOBJ)) ;\n", |
---|
894 | "Objects $(>) ;\n", |
---|
895 | "}\n", |
---|
896 | "rule LibraryFromObjects\n", |
---|
897 | "{\n", |
---|
898 | "local _i _l _s ;\n", |
---|
899 | "_s = [ FGristFiles $(>) ] ;\n", |
---|
900 | "_l = $(<:S=$(SUFLIB)) ;\n", |
---|
901 | "if $(KEEPOBJS)\n", |
---|
902 | "{\n", |
---|
903 | "DEPENDS obj : $(_s) ;\n", |
---|
904 | "}\n", |
---|
905 | "else\n", |
---|
906 | "{\n", |
---|
907 | "DEPENDS lib : $(_l) ;\n", |
---|
908 | "}\n", |
---|
909 | "if ! $(_l:D)\n", |
---|
910 | "{\n", |
---|
911 | "MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ;\n", |
---|
912 | "}\n", |
---|
913 | "if $(NOARSCAN) \n", |
---|
914 | "{ \n", |
---|
915 | "DEPENDS $(_l) : $(_s) ;\n", |
---|
916 | "}\n", |
---|
917 | "else\n", |
---|
918 | "{\n", |
---|
919 | "DEPENDS $(_l) : $(_l)($(_s:BS)) ;\n", |
---|
920 | "for _i in $(_s)\n", |
---|
921 | "{\n", |
---|
922 | "DEPENDS $(_l)($(_i:BS)) : $(_i) ;\n", |
---|
923 | "}\n", |
---|
924 | "}\n", |
---|
925 | "Clean clean : $(_l) ;\n", |
---|
926 | "if $(CRELIB) { CreLib $(_l) : $(_s[1]) ; }\n", |
---|
927 | "Archive $(_l) : $(_s) ;\n", |
---|
928 | "if $(RANLIB) { Ranlib $(_l) ; }\n", |
---|
929 | "if ! ( $(NOARSCAN) || $(KEEPOBJS) ) { RmTemps $(_l) : $(_s) ; }\n", |
---|
930 | "}\n", |
---|
931 | "rule Link\n", |
---|
932 | "{\n", |
---|
933 | "MODE on $(<) = $(EXEMODE) ;\n", |
---|
934 | "Chmod $(<) ;\n", |
---|
935 | "}\n", |
---|
936 | "rule LinkLibraries\n", |
---|
937 | "{\n", |
---|
938 | "local _t = [ FAppendSuffix $(<) : $(SUFEXE) ] ;\n", |
---|
939 | "DEPENDS $(_t) : $(>:S=$(SUFLIB)) ;\n", |
---|
940 | "NEEDLIBS on $(_t) += $(>:S=$(SUFLIB)) ;\n", |
---|
941 | "}\n", |
---|
942 | "rule Main\n", |
---|
943 | "{\n", |
---|
944 | "MainFromObjects $(<) : $(>:S=$(SUFOBJ)) ;\n", |
---|
945 | "Objects $(>) ;\n", |
---|
946 | "}\n", |
---|
947 | "rule MainFromObjects\n", |
---|
948 | "{\n", |
---|
949 | "local _s _t ;\n", |
---|
950 | "_s = [ FGristFiles $(>) ] ;\n", |
---|
951 | "_t = [ FAppendSuffix $(<) : $(SUFEXE) ] ;\n", |
---|
952 | "if $(_t) != $(<)\n", |
---|
953 | "{\n", |
---|
954 | "DEPENDS $(<) : $(_t) ;\n", |
---|
955 | "NOTFILE $(<) ;\n", |
---|
956 | "}\n", |
---|
957 | "DEPENDS exe : $(_t) ;\n", |
---|
958 | "DEPENDS $(_t) : $(_s) ;\n", |
---|
959 | "MakeLocate $(_t) : $(LOCATE_TARGET) ;\n", |
---|
960 | "Clean clean : $(_t) ;\n", |
---|
961 | "Link $(_t) : $(_s) ;\n", |
---|
962 | "}\n", |
---|
963 | "rule MakeLocate\n", |
---|
964 | "{\n", |
---|
965 | "if $(>)\n", |
---|
966 | "{\n", |
---|
967 | "LOCATE on $(<) = $(>) ;\n", |
---|
968 | "Depends $(<) : $(>[1]) ;\n", |
---|
969 | "MkDir $(>[1]) ;\n", |
---|
970 | "}\n", |
---|
971 | "}\n", |
---|
972 | "rule MkDir\n", |
---|
973 | "{\n", |
---|
974 | "NOUPDATE $(<) ;\n", |
---|
975 | "if $(<) != $(DOT) && ! $($(<)-mkdir) \n", |
---|
976 | "{\n", |
---|
977 | "local s ;\n", |
---|
978 | "$(<)-mkdir = true ;\n", |
---|
979 | "MkDir1 $(<) ;\n", |
---|
980 | "Depends dirs : $(<) ;\n", |
---|
981 | "s = $(<:P) ;\n", |
---|
982 | "if $(NT)\n", |
---|
983 | "{\n", |
---|
984 | "switch $(s)\n", |
---|
985 | "{\n", |
---|
986 | "case *: : s = ;\n", |
---|
987 | "case *:\\\\ : s = ;\n", |
---|
988 | "}\n", |
---|
989 | "}\n", |
---|
990 | "if $(s) && $(s) != $(<)\n", |
---|
991 | "{\n", |
---|
992 | "Depends $(<) : $(s) ;\n", |
---|
993 | "MkDir $(s) ;\n", |
---|
994 | "}\n", |
---|
995 | "else if $(s)\n", |
---|
996 | "{\n", |
---|
997 | "NOTFILE $(s) ;\n", |
---|
998 | "}\n", |
---|
999 | "}\n", |
---|
1000 | "}\n", |
---|
1001 | "rule Object\n", |
---|
1002 | "{\n", |
---|
1003 | "local h ;\n", |
---|
1004 | "Clean clean : $(<) ;\n", |
---|
1005 | "MakeLocate $(<) : $(LOCATE_TARGET) ;\n", |
---|
1006 | "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", |
---|
1007 | "HDRS on $(<) = $(SEARCH_SOURCE) $(HDRS) $(SUBDIRHDRS) ;\n", |
---|
1008 | "if $(SEARCH_SOURCE)\n", |
---|
1009 | "{\n", |
---|
1010 | "h = $(SEARCH_SOURCE) ;\n", |
---|
1011 | "}\n", |
---|
1012 | "else\n", |
---|
1013 | "{\n", |
---|
1014 | "h = \"\" ;\n", |
---|
1015 | "}\n", |
---|
1016 | "HDRRULE on $(>) = HdrRule ;\n", |
---|
1017 | "HDRSCAN on $(>) = $(HDRPATTERN) ;\n", |
---|
1018 | "HDRSEARCH on $(>) = $(HDRS) $(SUBDIRHDRS) $(h) $(STDHDRS) ;\n", |
---|
1019 | "HDRGRIST on $(>) = $(HDRGRIST) ;\n", |
---|
1020 | "switch $(>:S)\n", |
---|
1021 | "{\n", |
---|
1022 | "case .asm : As $(<) : $(>) ;\n", |
---|
1023 | "case .c : Cc $(<) : $(>) ;\n", |
---|
1024 | "case .C : C++ $(<) : $(>) ;\n", |
---|
1025 | "case .cc : C++ $(<) : $(>) ;\n", |
---|
1026 | "case .cpp : C++ $(<) : $(>) ;\n", |
---|
1027 | "case .f : Fortran $(<) : $(>) ;\n", |
---|
1028 | "case .l : Cc $(<) : $(<:S=.c) ;\n", |
---|
1029 | "Lex $(<:S=.c) : $(>) ;\n", |
---|
1030 | "case .s : As $(<) : $(>) ;\n", |
---|
1031 | "case .y : Cc $(<) : $(<:S=.c) ;\n", |
---|
1032 | "Yacc $(<:S=.c) : $(>) ;\n", |
---|
1033 | "case * : UserObject $(<) : $(>) ;\n", |
---|
1034 | "}\n", |
---|
1035 | "}\n", |
---|
1036 | "rule ObjectCcFlags\n", |
---|
1037 | "{\n", |
---|
1038 | "CCFLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n", |
---|
1039 | "}\n", |
---|
1040 | "rule ObjectC++Flags\n", |
---|
1041 | "{\n", |
---|
1042 | "C++FLAGS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n", |
---|
1043 | "}\n", |
---|
1044 | "rule ObjectHdrs\n", |
---|
1045 | "{\n", |
---|
1046 | "HDRS on [ FGristFiles $(<:S=$(SUFOBJ)) ] += $(>) ;\n", |
---|
1047 | "}\n", |
---|
1048 | "rule Objects\n", |
---|
1049 | "{\n", |
---|
1050 | "local _i ;\n", |
---|
1051 | "for _i in [ FGristFiles $(<) ]\n", |
---|
1052 | "{\n", |
---|
1053 | "Object $(_i:S=$(SUFOBJ)) : $(_i) ;\n", |
---|
1054 | "DEPENDS obj : $(_i:S=$(SUFOBJ)) ;\n", |
---|
1055 | "}\n", |
---|
1056 | "}\n", |
---|
1057 | "rule RmTemps\n", |
---|
1058 | "{\n", |
---|
1059 | "TEMPORARY $(>) ;\n", |
---|
1060 | "}\n", |
---|
1061 | "rule Setuid\n", |
---|
1062 | "{\n", |
---|
1063 | "MODE on [ FAppendSuffix $(<) : $(SUFEXE) ] = 4711 ;\n", |
---|
1064 | "}\n", |
---|
1065 | "rule Shell\n", |
---|
1066 | "{\n", |
---|
1067 | "DEPENDS shell : $(<) ;\n", |
---|
1068 | "DEPENDS $(<) : $(>) ;\n", |
---|
1069 | "SEARCH on $(>) = $(SEARCH_SOURCE) ;\n", |
---|
1070 | "MODE on $(<) = $(SHELLMODE) ;\n", |
---|
1071 | "Clean clean : $(<) ;\n", |
---|
1072 | "Chmod $(<) ;\n", |
---|
1073 | "}\n", |
---|
1074 | "rule SubDir\n", |
---|
1075 | "{\n", |
---|
1076 | "local _r _s ;\n", |
---|
1077 | "if ! $($(<[1]))\n", |
---|
1078 | "{\n", |
---|
1079 | "if ! $(<[1])\n", |
---|
1080 | "{\n", |
---|
1081 | "EXIT SubDir syntax error ;\n", |
---|
1082 | "}\n", |
---|
1083 | "$(<[1]) = [ FSubDir $(<[2-]) ] ;\n", |
---|
1084 | "}\n", |
---|
1085 | "if ! $($(<[1])-included)\n", |
---|
1086 | "{\n", |
---|
1087 | "$(<[1])-included = TRUE ;\n", |
---|
1088 | "_r = $($(<[1])RULES) ;\n", |
---|
1089 | "if ! $(_r)\n", |
---|
1090 | "{\n", |
---|
1091 | "_r = $(JAMRULES:R=$($(<[1]))) ;\n", |
---|
1092 | "}\n", |
---|
1093 | "include $(_r) ;\n", |
---|
1094 | "}\n", |
---|
1095 | "_s = [ FDirName $(<[2-]) ] ;\n", |
---|
1096 | "SUBDIR = $(_s:R=$($(<[1]))) ;\n", |
---|
1097 | "SUBDIR_TOKENS = $(<[2-]) ;\n", |
---|
1098 | "SEARCH_SOURCE = $(SUBDIR) ;\n", |
---|
1099 | "LOCATE_SOURCE = $(ALL_LOCATE_TARGET) $(SUBDIR) ;\n", |
---|
1100 | "LOCATE_TARGET = $(ALL_LOCATE_TARGET) $(SUBDIR) ;\n", |
---|
1101 | "SOURCE_GRIST = [ FGrist $(<[2-]) ] ;\n", |
---|
1102 | "SUBDIRCCFLAGS = ;\n", |
---|
1103 | "SUBDIRC++FLAGS = ;\n", |
---|
1104 | "SUBDIRHDRS = ;\n", |
---|
1105 | "}\n", |
---|
1106 | "rule SubDirCcFlags\n", |
---|
1107 | "{\n", |
---|
1108 | "SUBDIRCCFLAGS += $(<) ;\n", |
---|
1109 | "}\n", |
---|
1110 | "rule SubDirC++Flags\n", |
---|
1111 | "{\n", |
---|
1112 | "SUBDIRC++FLAGS += $(<) ;\n", |
---|
1113 | "}\n", |
---|
1114 | "rule SubDirHdrs\n", |
---|
1115 | "{\n", |
---|
1116 | "SUBDIRHDRS += $(<) ;\n", |
---|
1117 | "}\n", |
---|
1118 | "rule SubInclude\n", |
---|
1119 | "{\n", |
---|
1120 | "local _s ;\n", |
---|
1121 | "if ! $($(<[1]))\n", |
---|
1122 | "{\n", |
---|
1123 | "EXIT Top level of source tree has not been set with $(<[1]) ;\n", |
---|
1124 | "}\n", |
---|
1125 | "_s = [ FDirName $(<[2-]) ] ;\n", |
---|
1126 | "include $(JAMFILE:D=$(_s):R=$($(<[1]))) ;\n", |
---|
1127 | "}\n", |
---|
1128 | "rule Undefines\n", |
---|
1129 | "{\n", |
---|
1130 | "UNDEFS on [ FAppendSuffix $(<) : $(SUFEXE) ] += $(UNDEFFLAG)$(>) ;\n", |
---|
1131 | "}\n", |
---|
1132 | "rule UserObject\n", |
---|
1133 | "{\n", |
---|
1134 | "EXIT \"Unknown suffix on\" $(>) \"- see UserObject rule in Jamfile(5).\" ;\n", |
---|
1135 | "}\n", |
---|
1136 | "rule Yacc\n", |
---|
1137 | "{\n", |
---|
1138 | "local _h ;\n", |
---|
1139 | "_h = $(<:BS=.h) ;\n", |
---|
1140 | "MakeLocate $(<) $(_h) : $(LOCATE_SOURCE) ;\n", |
---|
1141 | "if $(YACC)\n", |
---|
1142 | "{\n", |
---|
1143 | "DEPENDS $(<) $(_h) : $(>) ;\n", |
---|
1144 | "Yacc1 $(<) $(_h) : $(>) ;\n", |
---|
1145 | "YaccMv $(<) $(_h) : $(>) ;\n", |
---|
1146 | "Clean clean : $(<) $(_h) ;\n", |
---|
1147 | "}\n", |
---|
1148 | "INCLUDES $(<) : $(_h) ;\n", |
---|
1149 | "}\n", |
---|
1150 | "rule FGrist\n", |
---|
1151 | "{\n", |
---|
1152 | "local _g _i ;\n", |
---|
1153 | "_g = $(<[1]) ;\n", |
---|
1154 | "for _i in $(<[2-])\n", |
---|
1155 | "{\n", |
---|
1156 | "_g = $(_g)!$(_i) ;\n", |
---|
1157 | "}\n", |
---|
1158 | "return $(_g) ;\n", |
---|
1159 | "}\n", |
---|
1160 | "rule FGristFiles \n", |
---|
1161 | "{\n", |
---|
1162 | "if ! $(SOURCE_GRIST)\n", |
---|
1163 | "{\n", |
---|
1164 | "return $(<) ;\n", |
---|
1165 | "}\n", |
---|
1166 | "else \n", |
---|
1167 | "{\n", |
---|
1168 | "return $(<:G=$(SOURCE_GRIST)) ;\n", |
---|
1169 | "}\n", |
---|
1170 | "}\n", |
---|
1171 | "rule FGristSourceFiles\n", |
---|
1172 | "{\n", |
---|
1173 | "if ! $(SOURCE_GRIST)\n", |
---|
1174 | "{\n", |
---|
1175 | "return $(<) ;\n", |
---|
1176 | "}\n", |
---|
1177 | "else \n", |
---|
1178 | "{\n", |
---|
1179 | "local _i _o ;\n", |
---|
1180 | "for _i in $(<)\n", |
---|
1181 | "{\n", |
---|
1182 | "switch $(_i)\n", |
---|
1183 | "{\n", |
---|
1184 | "case *.h : _o += $(_i) ;\n", |
---|
1185 | "case * : _o += $(_i:G=$(SOURCE_GRIST)) ;\n", |
---|
1186 | "}\n", |
---|
1187 | "}\n", |
---|
1188 | "return $(_o) ;\n", |
---|
1189 | "}\n", |
---|
1190 | "}\n", |
---|
1191 | "rule FConcat\n", |
---|
1192 | "{\n", |
---|
1193 | "local _t _r ;\n", |
---|
1194 | "$(_r) = $(<[1]) ;\n", |
---|
1195 | "for _t in $(<[2-])\n", |
---|
1196 | "{\n", |
---|
1197 | "$(_r) = $(_r)$(_t) ;\n", |
---|
1198 | "}\n", |
---|
1199 | "return $(_r) ;\n", |
---|
1200 | "}\n", |
---|
1201 | "rule FSubDir\n", |
---|
1202 | "{\n", |
---|
1203 | "local _i _d ;\n", |
---|
1204 | "if ! $(<[1]) \n", |
---|
1205 | "{\n", |
---|
1206 | "_d = $(DOT) ;\n", |
---|
1207 | "} \n", |
---|
1208 | "else\n", |
---|
1209 | "{\n", |
---|
1210 | "_d = $(DOTDOT) ;\n", |
---|
1211 | "for _i in $(<[2-])\n", |
---|
1212 | "{\n", |
---|
1213 | "_d = $(_d:R=$(DOTDOT)) ;\n", |
---|
1214 | "}\n", |
---|
1215 | "}\n", |
---|
1216 | "return $(_d) ;\n", |
---|
1217 | "}\n", |
---|
1218 | "rule FDirName\n", |
---|
1219 | "{\n", |
---|
1220 | "local _s _i ;\n", |
---|
1221 | "if ! $(<)\n", |
---|
1222 | "{\n", |
---|
1223 | "_s = $(DOT) ;\n", |
---|
1224 | "}\n", |
---|
1225 | "else if $(VMS)\n", |
---|
1226 | "{\n", |
---|
1227 | "switch $(<[1])\n", |
---|
1228 | "{\n", |
---|
1229 | "case *:* : _s = $(<[1]) ;\n", |
---|
1230 | "case \\\\[*\\\\] : _s = $(<[1]) ;\n", |
---|
1231 | "case * : _s = [.$(<[1])] ;\n", |
---|
1232 | "}\n", |
---|
1233 | "for _i in [.$(<[2-])]\n", |
---|
1234 | "{\n", |
---|
1235 | "_s = $(_i:R=$(_s)) ;\n", |
---|
1236 | "}\n", |
---|
1237 | "}\n", |
---|
1238 | "else if $(MAC)\n", |
---|
1239 | "{\n", |
---|
1240 | "_s = $(DOT) ;\n", |
---|
1241 | "for _i in $(<)\n", |
---|
1242 | "{\n", |
---|
1243 | "_s = $(_i:R=$(_s)) ;\n", |
---|
1244 | "}\n", |
---|
1245 | "}\n", |
---|
1246 | "else\n", |
---|
1247 | "{\n", |
---|
1248 | "_s = $(<[1]) ; \n", |
---|
1249 | "for _i in $(<[2-])\n", |
---|
1250 | "{\n", |
---|
1251 | "_s = $(_i:R=$(_s)) ;\n", |
---|
1252 | "}\n", |
---|
1253 | "}\n", |
---|
1254 | "return $(_s) ;\n", |
---|
1255 | "}\n", |
---|
1256 | "rule _makeCommon\n", |
---|
1257 | "{\n", |
---|
1258 | "if $($(<)[1]) && $($(<)[1]) = $($(>)[1])\n", |
---|
1259 | "{\n", |
---|
1260 | "$(<) = $($(<)[2-]) ;\n", |
---|
1261 | "$(>) = $($(>)[2-]) ;\n", |
---|
1262 | "_makeCommon $(<) : $(>) ;\n", |
---|
1263 | "}\n", |
---|
1264 | "}\n", |
---|
1265 | "rule FRelPath\n", |
---|
1266 | "{\n", |
---|
1267 | "local _l _r ;\n", |
---|
1268 | "_l = $(<) ;\n", |
---|
1269 | "_r = $(>) ;\n", |
---|
1270 | "_makeCommon _l : _r ;\n", |
---|
1271 | "_l = [ FSubDir $(_l) ] ;\n", |
---|
1272 | "_r = [ FDirName $(_r) ] ;\n", |
---|
1273 | "if $(_r) = $(DOT) {\n", |
---|
1274 | "return $(_l) ;\n", |
---|
1275 | "} else {\n", |
---|
1276 | "return $(_r:R=$(_l)) ;\n", |
---|
1277 | "}\n", |
---|
1278 | "}\n", |
---|
1279 | "rule FAppendSuffix\n", |
---|
1280 | "{\n", |
---|
1281 | "if $(>)\n", |
---|
1282 | "{\n", |
---|
1283 | "local _i _o ;\n", |
---|
1284 | "for _i in $(<)\n", |
---|
1285 | "{\n", |
---|
1286 | "if $(_i:S)\n", |
---|
1287 | "{\n", |
---|
1288 | "_o += $(_i) ;\n", |
---|
1289 | "}\n", |
---|
1290 | "else\n", |
---|
1291 | "{\n", |
---|
1292 | "_o += $(_i:S=$(>)) ;\n", |
---|
1293 | "}\n", |
---|
1294 | "}\n", |
---|
1295 | "return $(_o) ;\n", |
---|
1296 | "}\n", |
---|
1297 | "else\n", |
---|
1298 | "{\n", |
---|
1299 | "return $(<) ;\n", |
---|
1300 | "}\n", |
---|
1301 | "}\n", |
---|
1302 | "rule unmakeDir\n", |
---|
1303 | "{\n", |
---|
1304 | "if $(>[1]:D) && $(>[1]:D) != $(>[1]) && $(>[1]:D) != \\\\\\\\ \n", |
---|
1305 | "{\n", |
---|
1306 | "unmakeDir $(<) : $(>[1]:D) $(>[1]:BS) $(>[2-]) ;\n", |
---|
1307 | "}\n", |
---|
1308 | "else\n", |
---|
1309 | "{\n", |
---|
1310 | "$(<) = $(>) ;\n", |
---|
1311 | "}\n", |
---|
1312 | "}\n", |
---|
1313 | "rule FConvertToSlashes\n", |
---|
1314 | "{\n", |
---|
1315 | "local _d, _s, _i ;\n", |
---|
1316 | "unmakeDir _d : $(<) ;\n", |
---|
1317 | "_s = $(_d[1]) ; \n", |
---|
1318 | "for _i in $(_d[2-])\n", |
---|
1319 | "{\n", |
---|
1320 | "_s = $(_s)/$(_i) ;\n", |
---|
1321 | "}\n", |
---|
1322 | "return $(_s) ;\n", |
---|
1323 | "}\n", |
---|
1324 | "actions updated together piecemeal Archive\n", |
---|
1325 | "{\n", |
---|
1326 | "$(AR) $(<) $(>)\n", |
---|
1327 | "}\n", |
---|
1328 | "actions As\n", |
---|
1329 | "{\n", |
---|
1330 | "$(AS) $(ASFLAGS) -I$(HDRS) -o $(<) $(>)\n", |
---|
1331 | "}\n", |
---|
1332 | "actions C++\n", |
---|
1333 | "{\n", |
---|
1334 | "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o $(<) $(>)\n", |
---|
1335 | "}\n", |
---|
1336 | "actions Cc\n", |
---|
1337 | "{\n", |
---|
1338 | "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o $(<) $(>)\n", |
---|
1339 | "}\n", |
---|
1340 | "actions Chgrp\n", |
---|
1341 | "{\n", |
---|
1342 | "$(CHGRP) $(GROUP) $(<)\n", |
---|
1343 | "}\n", |
---|
1344 | "actions Chmod1\n", |
---|
1345 | "{\n", |
---|
1346 | "$(CHMOD) $(MODE) $(<)\n", |
---|
1347 | "}\n", |
---|
1348 | "actions Chown\n", |
---|
1349 | "{\n", |
---|
1350 | "$(CHOWN) $(OWNER) $(<)\n", |
---|
1351 | "}\n", |
---|
1352 | "actions piecemeal together existing Clean\n", |
---|
1353 | "{\n", |
---|
1354 | "$(RM) $(>)\n", |
---|
1355 | "}\n", |
---|
1356 | "actions File\n", |
---|
1357 | "{\n", |
---|
1358 | "$(CP) $(>) $(<)\n", |
---|
1359 | "}\n", |
---|
1360 | "actions GenFile1\n", |
---|
1361 | "{\n", |
---|
1362 | "$(>[1]) $(<) $(>[2-])\n", |
---|
1363 | "}\n", |
---|
1364 | "actions Fortran\n", |
---|
1365 | "{\n", |
---|
1366 | "$(FORTRAN) $(FORTRANFLAGS) -o $(<) $(>)\n", |
---|
1367 | "}\n", |
---|
1368 | "actions HardLink\n", |
---|
1369 | "{\n", |
---|
1370 | "$(RM) $(<) && $(LN) $(>) $(<)\n", |
---|
1371 | "}\n", |
---|
1372 | "actions Install\n", |
---|
1373 | "{\n", |
---|
1374 | "$(CP) $(>) $(<) \n", |
---|
1375 | "}\n", |
---|
1376 | "actions Lex\n", |
---|
1377 | "{\n", |
---|
1378 | "$(LEX) $(>)\n", |
---|
1379 | "}\n", |
---|
1380 | "actions LexMv\n", |
---|
1381 | "{\n", |
---|
1382 | "$(MV) lex.yy.c $(<)\n", |
---|
1383 | "}\n", |
---|
1384 | "actions Link bind NEEDLIBS\n", |
---|
1385 | "{\n", |
---|
1386 | "$(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS) \n", |
---|
1387 | "}\n", |
---|
1388 | "actions MkDir1\n", |
---|
1389 | "{\n", |
---|
1390 | "$(MKDIR) $(<)\n", |
---|
1391 | "}\n", |
---|
1392 | "actions together Ranlib\n", |
---|
1393 | "{\n", |
---|
1394 | "$(RANLIB) $(<)\n", |
---|
1395 | "}\n", |
---|
1396 | "actions quietly updated piecemeal together RmTemps\n", |
---|
1397 | "{\n", |
---|
1398 | "$(RM) $(>)\n", |
---|
1399 | "}\n", |
---|
1400 | "actions Shell\n", |
---|
1401 | "{\n", |
---|
1402 | "$(AWK) '\n", |
---|
1403 | "NR == 1 { print \"$(SHELLHEADER)\" }\n", |
---|
1404 | "NR == 1 && /^[#:]/ { next }\n", |
---|
1405 | "/^##/ { next }\n", |
---|
1406 | "{ print }\n", |
---|
1407 | "' < $(>) > $(<)\n", |
---|
1408 | "}\n", |
---|
1409 | "actions Yacc1\n", |
---|
1410 | "{\n", |
---|
1411 | "$(YACC) $(YACCFLAGS) $(>)\n", |
---|
1412 | "}\n", |
---|
1413 | "actions YaccMv\n", |
---|
1414 | "{\n", |
---|
1415 | "$(MV) $(YACCFILES).c $(<[1])\n", |
---|
1416 | "$(MV) $(YACCFILES).h $(<[2])\n", |
---|
1417 | "}\n", |
---|
1418 | "if $(RELOCATE)\n", |
---|
1419 | "{\n", |
---|
1420 | "actions C++\n", |
---|
1421 | "{\n", |
---|
1422 | "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) $(>)\n", |
---|
1423 | "}\n", |
---|
1424 | "actions Cc\n", |
---|
1425 | "{\n", |
---|
1426 | "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) $(>)\n", |
---|
1427 | "}\n", |
---|
1428 | "actions ignore CcMv\n", |
---|
1429 | "{\n", |
---|
1430 | "[ $(<) != $(>:BS=$(SUFOBJ)) ] && $(MV) $(>:BS=$(SUFOBJ)) $(<)\n", |
---|
1431 | "}\n", |
---|
1432 | "}\n", |
---|
1433 | "if $(NOARUPDATE)\n", |
---|
1434 | "{\n", |
---|
1435 | "actions Archive\n", |
---|
1436 | "{\n", |
---|
1437 | "$(AR) $(<) $(>)\n", |
---|
1438 | "}\n", |
---|
1439 | "}\n", |
---|
1440 | "if $(NT)\n", |
---|
1441 | "{\n", |
---|
1442 | "if $(TOOLSET) = VISUALC || $(TOOLSET) = VC7 || $(TOOLSET) = INTELC\n", |
---|
1443 | "{\n", |
---|
1444 | "actions updated together piecemeal Archive\n", |
---|
1445 | "{\n", |
---|
1446 | "if exist $(<) set _$(<:B)_=$(<)\n", |
---|
1447 | "$(AR) /out:$(<) %_$(<:B)_% $(>)\n", |
---|
1448 | "}\n", |
---|
1449 | "actions As\n", |
---|
1450 | "{\n", |
---|
1451 | "$(AS) /Ml /p /v /w2 $(>) $(<) ,nul,nul;\n", |
---|
1452 | "}\n", |
---|
1453 | "actions Cc\n", |
---|
1454 | "{\n", |
---|
1455 | "$(CC) /c $(CCFLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) /I$(STDHDRS) $(>)\n", |
---|
1456 | "}\n", |
---|
1457 | "actions C++\n", |
---|
1458 | "{\n", |
---|
1459 | "$(C++) /c $(C++FLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) /I$(STDHDRS) /Tp$(>)\n", |
---|
1460 | "}\n", |
---|
1461 | "actions Link bind NEEDLIBS\n", |
---|
1462 | "{\n", |
---|
1463 | "$(LINK) $(LINKFLAGS) /out:$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", |
---|
1464 | "}\n", |
---|
1465 | "}\n", |
---|
1466 | "else if $(TOOLSET) = VISUALC16\n", |
---|
1467 | "{\n", |
---|
1468 | "actions updated together piecemeal Archive\n", |
---|
1469 | "{\n", |
---|
1470 | "$(AR) $(<) -+$(>)\n", |
---|
1471 | "}\n", |
---|
1472 | "actions Cc\n", |
---|
1473 | "{\n", |
---|
1474 | "$(CC) /c $(CCFLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) $(>)\n", |
---|
1475 | "}\n", |
---|
1476 | "actions C++\n", |
---|
1477 | "{\n", |
---|
1478 | "$(C++) /c $(C++FLAGS) $(OPTIM) /Fo$(<) /I$(HDRS) /Tp$(>)\n", |
---|
1479 | "}\n", |
---|
1480 | "actions Link bind NEEDLIBS\n", |
---|
1481 | "{\n", |
---|
1482 | "$(LINK) $(LINKFLAGS) /out:$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", |
---|
1483 | "}\n", |
---|
1484 | "}\n", |
---|
1485 | "else if $(TOOLSET) = BORLANDC\n", |
---|
1486 | "{\n", |
---|
1487 | "actions updated together piecemeal Archive\n", |
---|
1488 | "{\n", |
---|
1489 | "$(AR) $(<) -+$(>)\n", |
---|
1490 | "}\n", |
---|
1491 | "actions Link bind NEEDLIBS\n", |
---|
1492 | "{\n", |
---|
1493 | "$(LINK) -e$(<) $(LINKFLAGS) $(UNDEFS) -L$(LINKLIBS) $(NEEDLIBS) $(>)\n", |
---|
1494 | "}\n", |
---|
1495 | "actions C++\n", |
---|
1496 | "{\n", |
---|
1497 | "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n", |
---|
1498 | "}\n", |
---|
1499 | "actions Cc\n", |
---|
1500 | "{\n", |
---|
1501 | "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n", |
---|
1502 | "}\n", |
---|
1503 | "}\n", |
---|
1504 | "else if $(TOOLSET) = MINGW\n", |
---|
1505 | "{\n", |
---|
1506 | "actions together piecemeal Archive\n", |
---|
1507 | "{\n", |
---|
1508 | "$(AR) $(<) $(>:T)\n", |
---|
1509 | "}\n", |
---|
1510 | "actions Cc\n", |
---|
1511 | "{\n", |
---|
1512 | "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n", |
---|
1513 | "}\n", |
---|
1514 | "actions C++\n", |
---|
1515 | "{\n", |
---|
1516 | "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n", |
---|
1517 | "}\n", |
---|
1518 | "}\n", |
---|
1519 | "else if $(TOOLSET) = WATCOM\n", |
---|
1520 | "{\n", |
---|
1521 | "actions together piecemeal Archive\n", |
---|
1522 | "{\n", |
---|
1523 | "$(AR) $(<) +-$(>) \n", |
---|
1524 | "}\n", |
---|
1525 | "actions Cc\n", |
---|
1526 | "{\n", |
---|
1527 | "$(CC) $(CCFLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n", |
---|
1528 | "}\n", |
---|
1529 | "actions C++\n", |
---|
1530 | "{\n", |
---|
1531 | "$(C++) $(C++FLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n", |
---|
1532 | "}\n", |
---|
1533 | "actions Link bind NEEDLIBS\n", |
---|
1534 | "{\n", |
---|
1535 | "$(LINK) $(LINKFLAGS) /Fe=$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", |
---|
1536 | "}\n", |
---|
1537 | "actions Shell\n", |
---|
1538 | "{\n", |
---|
1539 | "$(CP) $(>) $(<)\n", |
---|
1540 | "}\n", |
---|
1541 | "}\n", |
---|
1542 | "else if $(TOOLSET) = LCC\n", |
---|
1543 | "{\n", |
---|
1544 | "actions together piecemeal Archive\n", |
---|
1545 | "{\n", |
---|
1546 | "$(AR) /out:$(<) $(>) \n", |
---|
1547 | "}\n", |
---|
1548 | "actions Cc\n", |
---|
1549 | "{\n", |
---|
1550 | "$(CC) $(CCFLAGS) $(OPTIM) -Fo$(<) -I$(HDRS) $(>)\n", |
---|
1551 | "}\n", |
---|
1552 | "actions Link bind NEEDLIBS\n", |
---|
1553 | "{\n", |
---|
1554 | "$(LINK) $(LINKFLAGS) -o $(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", |
---|
1555 | "}\n", |
---|
1556 | "actions Shell\n", |
---|
1557 | "{\n", |
---|
1558 | "$(CP) $(>) $(<)\n", |
---|
1559 | "}\n", |
---|
1560 | "}\n", |
---|
1561 | "}\n", |
---|
1562 | "else if $(OS2) \n", |
---|
1563 | "{\n", |
---|
1564 | "if $(TOOLSET) = WATCOM\n", |
---|
1565 | "{\n", |
---|
1566 | "actions together piecemeal Archive\n", |
---|
1567 | "{\n", |
---|
1568 | "$(AR) $(<) +-$(>) \n", |
---|
1569 | "}\n", |
---|
1570 | "actions Cc\n", |
---|
1571 | "{\n", |
---|
1572 | "$(CC) $(CCFLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n", |
---|
1573 | "}\n", |
---|
1574 | "actions C++\n", |
---|
1575 | "{\n", |
---|
1576 | "$(C++) $(C++FLAGS) $(OPTIM) /Fo=$(<) /I$(HDRS) $(>)\n", |
---|
1577 | "}\n", |
---|
1578 | "actions Link bind NEEDLIBS\n", |
---|
1579 | "{\n", |
---|
1580 | "$(LINK) $(LINKFLAGS) /Fe=$(<) $(UNDEFS) $(>) $(NEEDLIBS) $(LINKLIBS)\n", |
---|
1581 | "}\n", |
---|
1582 | "actions Shell\n", |
---|
1583 | "{\n", |
---|
1584 | "$(CP) $(>) $(<)\n", |
---|
1585 | "}\n", |
---|
1586 | "}\n", |
---|
1587 | "else if $(TOOLSET) = EMX\n", |
---|
1588 | "{\n", |
---|
1589 | "actions together piecemeal Archive\n", |
---|
1590 | "{\n", |
---|
1591 | "$(AR) $(<) $(>:T)\n", |
---|
1592 | "}\n", |
---|
1593 | "actions Cc\n", |
---|
1594 | "{\n", |
---|
1595 | "$(CC) -c $(CCFLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n", |
---|
1596 | "}\n", |
---|
1597 | "actions C++\n", |
---|
1598 | "{\n", |
---|
1599 | "$(C++) -c $(C++FLAGS) $(OPTIM) -I$(HDRS) -o$(<) $(>)\n", |
---|
1600 | "}\n", |
---|
1601 | "}\n", |
---|
1602 | "}\n", |
---|
1603 | "else if $(VMS)\n", |
---|
1604 | "{\n", |
---|
1605 | "actions updated together piecemeal Archive \n", |
---|
1606 | "{\n", |
---|
1607 | "lib/replace $(<) $(>[1]) ,$(>[2-])\n", |
---|
1608 | "}\n", |
---|
1609 | "actions Cc\n", |
---|
1610 | "{ \n", |
---|
1611 | "$(CC)/obj=$(<) $(CCFLAGS) $(OPTIM) $(SLASHINC) $(>) \n", |
---|
1612 | "}\n", |
---|
1613 | "actions C++\n", |
---|
1614 | "{ \n", |
---|
1615 | "$(C++)/obj=$(<) $(C++FLAGS) $(OPTIM) $(SLASHINC) $(>) \n", |
---|
1616 | "}\n", |
---|
1617 | "actions piecemeal together existing Clean\n", |
---|
1618 | "{\n", |
---|
1619 | "$(RM) $(>[1]);* ,$(>[2-]);*\n", |
---|
1620 | "}\n", |
---|
1621 | "actions together quietly CreLib\n", |
---|
1622 | "{\n", |
---|
1623 | "if f$search(\"$(<)\") .eqs. \"\" then lib/create $(<)\n", |
---|
1624 | "}\n", |
---|
1625 | "actions GenFile1\n", |
---|
1626 | "{\n", |
---|
1627 | "mcr $(>[1]) $(<) $(>[2-])\n", |
---|
1628 | "}\n", |
---|
1629 | "actions Link bind NEEDLIBS\n", |
---|
1630 | "{\n", |
---|
1631 | "$(LINK)/exe=$(<) $(LINKFLAGS) $(>[1]) ,$(>[2-]) ,$(NEEDLIBS)/lib ,$(LINKLIBS)\n", |
---|
1632 | "}\n", |
---|
1633 | "actions quietly updated piecemeal together RmTemps\n", |
---|
1634 | "{\n", |
---|
1635 | "$(RM) $(>[1]);* ,$(>[2-]);*\n", |
---|
1636 | "}\n", |
---|
1637 | "actions Shell\n", |
---|
1638 | "{\n", |
---|
1639 | "$(CP) $(>) $(<)\n", |
---|
1640 | "}\n", |
---|
1641 | "}\n", |
---|
1642 | "else if $(MAC)\n", |
---|
1643 | "{\n", |
---|
1644 | "actions together Archive \n", |
---|
1645 | "{\n", |
---|
1646 | "$(LINK) -library -o $(<) $(>)\n", |
---|
1647 | "}\n", |
---|
1648 | "actions Cc\n", |
---|
1649 | "{\n", |
---|
1650 | "set -e MWCincludes $(MACINC)\n", |
---|
1651 | "$(CC) -o $(<) $(CCFLAGS) $(OPTIM) $(>) \n", |
---|
1652 | "}\n", |
---|
1653 | "actions C++\n", |
---|
1654 | "{ \n", |
---|
1655 | "set -e MWCincludes $(MACINC)\n", |
---|
1656 | "$(CC) -o $(<) $(C++FLAGS) $(OPTIM) $(>) \n", |
---|
1657 | "}\n", |
---|
1658 | "actions Link bind NEEDLIBS\n", |
---|
1659 | "{\n", |
---|
1660 | "$(LINK) -o $(<) $(LINKFLAGS) $(>) $(NEEDLIBS) \"$(LINKLIBS)\"\n", |
---|
1661 | "}\n", |
---|
1662 | "}\n", |
---|
1663 | "rule BULK { Bulk $(<) : $(>) ; }\n", |
---|
1664 | "rule FILE { File $(<) : $(>) ; }\n", |
---|
1665 | "rule HDRRULE { HdrRule $(<) : $(>) ; }\n", |
---|
1666 | "rule INSTALL { Install $(<) : $(>) ; }\n", |
---|
1667 | "rule LIBRARY { Library $(<) : $(>) ; }\n", |
---|
1668 | "rule LIBS { LinkLibraries $(<) : $(>) ; }\n", |
---|
1669 | "rule LINK { Link $(<) : $(>) ; }\n", |
---|
1670 | "rule MAIN { Main $(<) : $(>) ; }\n", |
---|
1671 | "rule SETUID { Setuid $(<) ; }\n", |
---|
1672 | "rule SHELL { Shell $(<) : $(>) ; }\n", |
---|
1673 | "rule UNDEFINES { Undefines $(<) : $(>) ; }\n", |
---|
1674 | "rule INSTALLBIN { InstallBin $(BINDIR) : $(<) ; }\n", |
---|
1675 | "rule INSTALLLIB { InstallLib $(LIBDIR) : $(<) ; }\n", |
---|
1676 | "rule INSTALLMAN { InstallMan $(MANDIR) : $(<) ; }\n", |
---|
1677 | "rule addDirName { $(<) += [ FDirName $(>) ] ; }\n", |
---|
1678 | "rule makeDirName { $(<) = [ FDirName $(>) ] ; }\n", |
---|
1679 | "rule makeGristedName { $(<) = [ FGristSourceFiles $(>) ] ; }\n", |
---|
1680 | "rule makeRelPath { $(<[1]) = [ FRelPath $(<[2-]) : $(>) ] ; }\n", |
---|
1681 | "rule makeSuffixed { $(<[1]) = [ FAppendSuffix $(>) : $(<[2]) ] ; }\n", |
---|
1682 | "{\n", |
---|
1683 | "if $(JAMFILE) { include $(JAMFILE) ; }\n", |
---|
1684 | "}\n", |
---|
1685 | "}\n", |
---|
1686 | 0 }; |
---|