1 | package CMT |
---|
2 | |
---|
3 | author arnault@lal.in2p3.fr |
---|
4 | |
---|
5 | macro CMTrelease 14 |
---|
6 | |
---|
7 | tag OSF1 Unix |
---|
8 | tag Linux Unix |
---|
9 | tag HP-UX Unix |
---|
10 | tag Darwin Unix |
---|
11 | tag LynxOS Unix |
---|
12 | tag AIX Unix |
---|
13 | tag SunOS Unix |
---|
14 | |
---|
15 | tag CYGWIN_NT-5.1 Unix CYGWIN |
---|
16 | |
---|
17 | tag alpha OSF1 |
---|
18 | tag alpha_dux40 alpha |
---|
19 | tag alpha-debug alpha debug |
---|
20 | |
---|
21 | tag LynxOS-VGPW2 LynxOS |
---|
22 | tag LynxOS-PowerPC LynxOS |
---|
23 | tag RIO806X LynxOS |
---|
24 | tag VMTR2X LynxOS |
---|
25 | |
---|
26 | tag hp9000s780 HP-UX |
---|
27 | tag hp9000s700 HP-UX |
---|
28 | tag hp700_ux101 HP-UX |
---|
29 | tag hp_ux102 HP-UX |
---|
30 | |
---|
31 | tag Linux-i686 Linux |
---|
32 | tag i386_redhat51 Linux |
---|
33 | tag i386_linux22 Linux |
---|
34 | |
---|
35 | tag rs_aix42 AIX |
---|
36 | |
---|
37 | tag sun4u SunOS |
---|
38 | tag sun4x_57 SunOS |
---|
39 | |
---|
40 | # Alternate possible tags for VisualC |
---|
41 | tag VisualC WIN32 |
---|
42 | tag VisualC Win32 |
---|
43 | tag WIN32 VisualC |
---|
44 | |
---|
45 | # Some alternate definitions for debug on VisualC |
---|
46 | tag VisualCdbg WIN32 windebug |
---|
47 | tag VisualD WIN32 windebug |
---|
48 | tag VisualDbg WIN32 windebug |
---|
49 | tag VisualDebug WIN32 windebug |
---|
50 | tag VisualD VisualC windebug |
---|
51 | tag VisualDbg VisualC windebug |
---|
52 | tag Win32Debug VisualC windebug |
---|
53 | |
---|
54 | # VSNET tags # |
---|
55 | tag VC7 vsnet |
---|
56 | tag VC7debug vsnet windebug |
---|
57 | |
---|
58 | # |
---|
59 | # Automatic detection of some system features. |
---|
60 | # |
---|
61 | |
---|
62 | macro cmt_hardware_query_command "uname -m" \ |
---|
63 | Darwin "uname -p" \ |
---|
64 | SunOS "uname -p" \ |
---|
65 | HP-UX "uname -m | sed -e 's#/##g'" |
---|
66 | |
---|
67 | macro cmt_system_version_query_command "uname -r " \ |
---|
68 | Linux "${CMTROOT}/mgr/cmt_linux_version.sh" \ |
---|
69 | SunOS "uname -r | sed -e 's#^#sunos#'" \ |
---|
70 | OSF1 "uname -r | sed -e 's#^#OSF#'" \ |
---|
71 | Darwin "uname -r | sed -e 's#^#darwin#'" \ |
---|
72 | HP-UX "uname -r | sed -e 's#^#hpux#'" \ |
---|
73 | CYGWIN "uname -r | sed -e 's#[(].*##' -e 's#^#Cygwin#'" \ |
---|
74 | LynxOS "uname -r | sed -e 's#^#LynxOS#'" |
---|
75 | |
---|
76 | macro_append cmt_system_version_query_command " | ${CMTROOT}/mgr/cmt_filter_version.sh" \ |
---|
77 | WIN32 "" |
---|
78 | |
---|
79 | macro cmt_compiler_version_query_command "${CMTROOT}/mgr/cmt_gcc_version.sh | grep '^gcc'" \ |
---|
80 | Linux "${CMTROOT}/mgr/cmt_gcc_version.sh" \ |
---|
81 | SunOS "${CMTROOT}/mgr/cmt_CC_version.sh" \ |
---|
82 | OSF1 "${CMTROOT}/mgr/cmt_cxx_version.sh" \ |
---|
83 | Darwin "${CMTROOT}/mgr/cmt_dcc_version.sh" \ |
---|
84 | HP-UX "echo aCC" \ |
---|
85 | LynxOS "${CMTROOT}/mgr/cmt_gcc_version.sh" |
---|
86 | |
---|
87 | macro_append cmt_compiler_version_query_command " | ${CMTROOT}/mgr/cmt_filter_version.sh" \ |
---|
88 | WIN32 "" |
---|
89 | |
---|
90 | macro cmt_hardware `$(cmt_hardware_query_command)` WIN32 "WIN32" |
---|
91 | macro cmt_system_version `$(cmt_system_version_query_command)` WIN32 "" |
---|
92 | macro cmt_compiler_version `$(cmt_compiler_version_query_command)` WIN32 "" |
---|
93 | |
---|
94 | # |
---|
95 | # Global PATH variables management |
---|
96 | # |
---|
97 | |
---|
98 | path_remove PATH "CMT/v" \ |
---|
99 | WIN32 "CMT\v" |
---|
100 | |
---|
101 | path_prepend PATH "${CMTROOT}/${CMTBIN}" \ |
---|
102 | WIN32 "%CMTROOT%\%CMTBIN%" |
---|
103 | |
---|
104 | path_remove CLASSPATH "CMT" |
---|
105 | path_append CLASSPATH "${CMTROOT}/java" \ |
---|
106 | WIN32 "%CMTROOT%\java" |
---|
107 | |
---|
108 | path_append include "" |
---|
109 | path_append lib "" |
---|
110 | |
---|
111 | macro debug_option "-g" \ |
---|
112 | SunOS "-G" \ |
---|
113 | WIN32 "/G" |
---|
114 | |
---|
115 | # |
---|
116 | # C environment |
---|
117 | # |
---|
118 | |
---|
119 | macro cc "gcc" \ |
---|
120 | insure "insure" \ |
---|
121 | alpha "cc" \ |
---|
122 | alphat "cc" \ |
---|
123 | HP-UX "aCC" \ |
---|
124 | hp700_ux101 "gcc" \ |
---|
125 | AIX "xlc" \ |
---|
126 | SunOS "cc" \ |
---|
127 | VisualC "cl.exe" \ |
---|
128 | Darwin "cc" |
---|
129 | |
---|
130 | macro cdebugflags "" \ |
---|
131 | debug "$(debug_option)" |
---|
132 | |
---|
133 | macro cflags "" \ |
---|
134 | LynxOS-VGPW2 "-X" \ |
---|
135 | insure "-std1" \ |
---|
136 | HP-UX "+Z" \ |
---|
137 | hp700_ux101 "-fpic -ansi" \ |
---|
138 | alpha "-std1" \ |
---|
139 | alphat "-std1" \ |
---|
140 | SunOS "-KPIC" \ |
---|
141 | VisualC '/nologo /DWIN32 /MD /W3 $(includes) /c' |
---|
142 | |
---|
143 | macro pp_cflags "" \ |
---|
144 | LynxOS-VGPW2 "-DVGPW2" \ |
---|
145 | HP-UX "-D_HPUX_SOURCE" \ |
---|
146 | alphat "-DCTHREADS" \ |
---|
147 | AIX "-D_ALL_SOURCE -D_BSD" \ |
---|
148 | Linux "-Di586" |
---|
149 | |
---|
150 | macro ccomp "$(cc) -c $(includes) $(cdebugflags) $(cflags) $(pp_cflags)" \ |
---|
151 | VisualC "cl.exe $(cdebugflags) $(cflags) $(pp_cflags)" |
---|
152 | |
---|
153 | macro clinkflags "" |
---|
154 | |
---|
155 | macro clink "$(cc) $(clinkflags) $(cdebugflags)" \ |
---|
156 | VisualC "link.exe /nologo /machine:IX86 " |
---|
157 | |
---|
158 | |
---|
159 | # |
---|
160 | # Developper Studio environment |
---|
161 | # |
---|
162 | |
---|
163 | macro msdevdll "" \ |
---|
164 | VisualC "/dll" |
---|
165 | |
---|
166 | macro msdevdllflags "" \ |
---|
167 | VisualC '/MT /D "_USRDLL" /D "WDLL_EXPORTS"' \ |
---|
168 | VisualD '/MTd /D "_USRDLL" /D "WDLL_EXPORTS"' |
---|
169 | |
---|
170 | macro vsCONFIG "" \ |
---|
171 | VC7 "Release" \ |
---|
172 | VC7debug "Debug" |
---|
173 | |
---|
174 | macro vsOptimize "" \ |
---|
175 | VC7 "2" \ |
---|
176 | VC7debug "0" |
---|
177 | |
---|
178 | |
---|
179 | # |
---|
180 | # C++ environment |
---|
181 | # |
---|
182 | |
---|
183 | macro ppcmd "-I" \ |
---|
184 | rs_aix41 "-WF,-I" \ |
---|
185 | VisualC "/I " |
---|
186 | |
---|
187 | macro preproc "g++ -MD -c " \ |
---|
188 | insure "insure" \ |
---|
189 | alpha "cxx" \ |
---|
190 | OSF1 "g++" \ |
---|
191 | HP-UX "aCC" \ |
---|
192 | hp700_ux101 "g++" \ |
---|
193 | hp_ux102 "aCC" \ |
---|
194 | AIX "xlC" \ |
---|
195 | Linux "c++ -MD -c " \ |
---|
196 | SunOS "CC" \ |
---|
197 | VisualC "cl.exe" \ |
---|
198 | Darwin "c++" |
---|
199 | |
---|
200 | macro cpp "g++" \ |
---|
201 | insure "insure" \ |
---|
202 | alpha "cxx" \ |
---|
203 | OSF1 "g++" \ |
---|
204 | HP-UX "aCC" \ |
---|
205 | hp700_ux101 "g++" \ |
---|
206 | hp_ux102 "aCC" \ |
---|
207 | AIX "xlC" \ |
---|
208 | Linux "c++" \ |
---|
209 | SunOS "CC" \ |
---|
210 | VisualC "cl.exe" \ |
---|
211 | Darwin "c++" |
---|
212 | |
---|
213 | macro cppdebugflags "" \ |
---|
214 | debug "$(debug_option)" |
---|
215 | |
---|
216 | macro cppflags "" \ |
---|
217 | alpha "-nocompress -std arm -msg_quiet" \ |
---|
218 | OSF1 "-fpic" \ |
---|
219 | hp9000s780 "+Z" \ |
---|
220 | hp700_ux101 "-fpic" \ |
---|
221 | HP-UX "+Z -Wc,-ansi_for_scope,on" \ |
---|
222 | hp_ux102 "-z +p -Wc,-ansi_for_scope,on +O2 +Onoinitcheck" \ |
---|
223 | Linux "-pipe -ansi -pedantic -W -Wall -Wwrite-strings -Wpointer-arith -Woverloaded-virtual " \ |
---|
224 | SunOS "-KPIC" \ |
---|
225 | VisualC '/nologo /DWIN32 /MD /W3 $(includes) /c /EHsc' |
---|
226 | |
---|
227 | macro pp_cppflags "" \ |
---|
228 | HP-UX "-D_HPUX_SOURCE" \ |
---|
229 | Linux "-D_GNU_SOURCE" |
---|
230 | |
---|
231 | macro cppcomp "$(cpp) -c $(includes) $(cppdebugflags) $(cppflags) $(pp_cppflags)" \ |
---|
232 | VisualC "cl.exe $(cppdebugflags) $(cppflags) $(pp_cppflags)" |
---|
233 | |
---|
234 | macro cpplinkflags "" |
---|
235 | |
---|
236 | macro cpplink "$(cpp) $(cpplinkflags) $(cppdebugflags)" \ |
---|
237 | VisualC "link.exe /nologo /machine:I386" |
---|
238 | |
---|
239 | macro cpp_linkopts "" \ |
---|
240 | OSF1 " -lstdc++ " \ |
---|
241 | alpha " /usr/lib/cmplrs/cxx/libcxx.a -lcxxstd -lexc -lm " \ |
---|
242 | alphat " /usr/lib/cmplrs/cxx/libcxx.a -lcxxstd -lexc -lm " |
---|
243 | |
---|
244 | # |
---|
245 | # Fortran environment |
---|
246 | # |
---|
247 | |
---|
248 | macro for "f77" \ |
---|
249 | HP-UX "fort77" \ |
---|
250 | rs_aix41 "xlf" \ |
---|
251 | Linux "g77" |
---|
252 | |
---|
253 | macro fflags "$(debug_option)" \ |
---|
254 | VisualC "" |
---|
255 | |
---|
256 | macro fcomp "$(for) -c $(fincludes) $(fflags) $(pp_fflags)" \ |
---|
257 | VisualC "" |
---|
258 | |
---|
259 | macro flink "$(for) $(flinkflags)" |
---|
260 | |
---|
261 | # |
---|
262 | # Java environment |
---|
263 | # |
---|
264 | |
---|
265 | macro javacomp "javac -classpath $(src):$(CLASSPATH) " |
---|
266 | macro javacopy "cp" VisualC "copy" |
---|
267 | macro jar "jar" |
---|
268 | |
---|
269 | # |
---|
270 | # X11 environment |
---|
271 | # |
---|
272 | |
---|
273 | macro X11_cflags "-I/usr/include" \ |
---|
274 | HP-UX "-I/usr/include/X11R5" \ |
---|
275 | SunOS "-I/usr/motif/usr/include" \ |
---|
276 | VisualC "" |
---|
277 | |
---|
278 | macro Xm_cflags "-I/usr/include" \ |
---|
279 | HP-UX "-I/usr/include/Motif1.2" \ |
---|
280 | SunOS "-I/usr/motif/usr/include" \ |
---|
281 | VisualC "" |
---|
282 | |
---|
283 | #### hp9000s700 "/usr/lib/Motif1.2/libXm.sl /usr/lib/X11R5/libXt.sl /usr/lib/X11R5/libX11.sl" |
---|
284 | |
---|
285 | macro X_linkopts ""\ |
---|
286 | alpha "-lXm -lXmu -lXt -lXext -lX11 -ldnet_stub -lm -lots"\ |
---|
287 | OSF1 "-lXm -lXmu -lXt -lXext -lX11 -ldnet_stub -lm -lots"\ |
---|
288 | insure "-lXm -lXmu -lXt -lXext -lX11 -ldnet_stub -lm -lots"\ |
---|
289 | HP-UX "-L/usr/lib -lXm -L/usr/contrib/X11R6/lib -lXmu -lXt -lXext -lX11" \ |
---|
290 | SunOS "-L/usr/motif/usr/lib -lXm -lXt -lX11 -lm"\ |
---|
291 | LynxOS "-lXt -lX11 -lm"\ |
---|
292 | Linux "-L/usr/X11R6/lib -lXm -lXt -lXext -lX11 -lm"\ |
---|
293 | RIO806X "-lXm -lXt -lXext -lX11 -lm"\ |
---|
294 | VGPW2 "-lXm -lXt -lXext -lX11 -lm"\ |
---|
295 | m68k "-lXm -lXt -lXext -lX11 -lm"\ |
---|
296 | IRIX "/usr/lib/libXm.so /usr/lib/libXt.so /usr/lib/libX11.so -lm -lPW"\ |
---|
297 | AIX "/usr/lib/libXm.a /usr/lib/libXt.a /usr/lib/libX11.a -lm" \ |
---|
298 | VisualC "" |
---|
299 | |
---|
300 | # |
---|
301 | # Lex environment |
---|
302 | # |
---|
303 | |
---|
304 | macro lexflags "" |
---|
305 | macro lex "lex $(lexflags)" \ |
---|
306 | i686 "flex $(lexflags)" |
---|
307 | |
---|
308 | # |
---|
309 | # Yacc environment |
---|
310 | # |
---|
311 | |
---|
312 | macro yaccflags " -l -d " \ |
---|
313 | VisualC "" |
---|
314 | |
---|
315 | macro yacc "yacc $(yaccflags)" |
---|
316 | |
---|
317 | # |
---|
318 | # Archive environment |
---|
319 | # |
---|
320 | |
---|
321 | macro ar "ar -clr" \ |
---|
322 | SunOS "ar clr" \ |
---|
323 | VGPW2 "ar clr" \ |
---|
324 | m68k "ar clr" \ |
---|
325 | LynxOS "ar clr" \ |
---|
326 | RIO806X "ar clr" \ |
---|
327 | Linux "ar r" \ |
---|
328 | VisualC "lib.exe /nologo " |
---|
329 | |
---|
330 | macro ranlib "ranlib" \ |
---|
331 | SunOS "ar ts" \ |
---|
332 | VGPW2 "ar ts" \ |
---|
333 | m68k "ranlib" \ |
---|
334 | RIO806X "ranlib" \ |
---|
335 | LynxOS "ar ts" \ |
---|
336 | IRIX "ar ts" |
---|
337 | |
---|
338 | macro make_shlib "echo" \ |
---|
339 | HP-UX "${CMTROOT}/mgr/cmt_make_shlib_common.sh extract" \ |
---|
340 | OSF1 "${CMTROOT}/mgr/cmt_make_shlib_common.sh noextract" \ |
---|
341 | Linux "${CMTROOT}/mgr/cmt_make_shlib_common.sh extract" \ |
---|
342 | SunOS "${CMTROOT}/mgr/cmt_make_shlib_common.sh extract" \ |
---|
343 | Darwin "${CMTROOT}/mgr/cmt_make_shlib_common.sh extract" \ |
---|
344 | VisualC "%CMTROOT%\mgr\cmt_make_shlib.bat" |
---|
345 | |
---|
346 | macro shlibsuffix "" \ |
---|
347 | HP-UX "sl" \ |
---|
348 | OSF1 "so" \ |
---|
349 | SunOS "so" \ |
---|
350 | Linux "so" \ |
---|
351 | Darwin "dylib" |
---|
352 | |
---|
353 | macro shlibbuilder "" \ |
---|
354 | HP-UX "aCC" \ |
---|
355 | OSF1 "ld" \ |
---|
356 | SunOS "CC" \ |
---|
357 | Linux "g++" \ |
---|
358 | Darwin "c++" |
---|
359 | |
---|
360 | macro shlibflags "" \ |
---|
361 | HP-UX "-Wl,-a,shared -b +Z -q -Wl,+s -Wl,+vallcompatwarnings" \ |
---|
362 | OSF1 "-shared -expect_unresolved '*'" \ |
---|
363 | Linux "-shared" \ |
---|
364 | SunOS "$(debug_option)" \ |
---|
365 | VisualC "" \ |
---|
366 | Darwin "-dynamiclib -flat_namespace -undefined suppress " |
---|
367 | |
---|
368 | macro symlink "/bin/ln -fs " \ |
---|
369 | VisualC "" |
---|
370 | |
---|
371 | macro symunlink "/bin/rm -f " \ |
---|
372 | VisualC "" |
---|
373 | |
---|
374 | macro build_library_links "$(cmtexe) build library_links -quiet -tag=$(tags)" |
---|
375 | macro remove_library_links "$(cmtexe) remove library_links -quiet -tag=$(tags)" |
---|
376 | |
---|
377 | # |
---|
378 | # Prototype and dependency generation |
---|
379 | # |
---|
380 | |
---|
381 | macro cmtexe "${CMTROOT}/${CMTBIN}/cmt.exe" \ |
---|
382 | WIN32 "%CMTROOT%\%CMTBIN%\cmt.exe" |
---|
383 | |
---|
384 | macro tags "$(CMTEXTRATAGS)" |
---|
385 | |
---|
386 | macro build_prototype "$(cmtexe) build prototype" |
---|
387 | macro build_dependencies "$(cmtexe) -quiet -tag=$(tags) build dependencies" |
---|
388 | macro build_triggers "$(cmtexe) build triggers" |
---|
389 | |
---|
390 | macro implied_library_prefix "-l" \ |
---|
391 | LynxOS "$(<PACKAGE>ROOT)/$(bin)/lib" |
---|
392 | |
---|
393 | # VisualC "$(<PACKAGE>ROOT)/$(bin)/" \ |
---|
394 | |
---|
395 | macro implied_library_suffix "" \ |
---|
396 | VisualC ".lib" \ |
---|
397 | LynxOS ".a" |
---|
398 | |
---|
399 | # |
---|
400 | # Generic environments |
---|
401 | # |
---|
402 | |
---|
403 | macro SHELL "/bin/sh" WIN32 "cmd" |
---|
404 | |
---|
405 | macro src "../src/" WIN32 "..\src\" |
---|
406 | macro doc "../doc/" WIN32 "..\doc\" |
---|
407 | macro inc "../src/" WIN32 "..\src\" |
---|
408 | macro mgr "../mgr/" WIN32 "..\mgr\" |
---|
409 | ##macro javabin "../classes/" |
---|
410 | |
---|
411 | macro application_suffix ".exe" |
---|
412 | macro library_prefix "lib" WIN32 "" |
---|
413 | macro library_suffix "" |
---|
414 | |
---|
415 | macro lock_command "chmod -R a-w ../*" \ |
---|
416 | VisualC "attrib /S /D +R ..\*" |
---|
417 | |
---|
418 | macro unlock_command "chmod -R g+w ../*" \ |
---|
419 | VisualC "attrib /S /D -R ..\*" |
---|
420 | |
---|
421 | macro preprocessor_command "" \ |
---|
422 | VisualC "" |
---|
423 | |
---|
424 | macro_append MAKEFLAGS " --no-print-directory " |
---|
425 | |
---|
426 | #macro_prepend constituents " configclean " |
---|
427 | |
---|
428 | # |
---|
429 | # Remote definitions |
---|
430 | # |
---|
431 | |
---|
432 | macro gmake_hosts "lx1 rsplus lxtest as7 dxplus ax7 hp2 aleph hp1 hpplus papou1-fe atlas" |
---|
433 | |
---|
434 | macro make_hosts "virgo-control1 rio0a vmpc38a" |
---|
435 | |
---|
436 | macro everywhere "hosts" \ |
---|
437 | LAL "as7 lx1 virgo-control1 papou1-fe hp2 aleph hp1" \ |
---|
438 | LHCb "lxtest hpplus dxplus rsplus" \ |
---|
439 | Atlas "lxplus sundev" \ |
---|
440 | Cascina "ax7 vmpc38a rio0a" |
---|
441 | |
---|
442 | |
---|
443 | # |
---|
444 | # Fragments |
---|
445 | # |
---|
446 | |
---|
447 | make_fragment make_header |
---|
448 | make_fragment library_header |
---|
449 | make_fragment application_header |
---|
450 | make_fragment document_header |
---|
451 | make_fragment java_header |
---|
452 | make_fragment jar_header |
---|
453 | make_fragment protos_header |
---|
454 | make_fragment buildproto |
---|
455 | make_fragment library |
---|
456 | make_fragment library_no_share |
---|
457 | make_fragment application |
---|
458 | make_fragment jar |
---|
459 | make_fragment java |
---|
460 | make_fragment java_copy |
---|
461 | make_fragment cleanup_header |
---|
462 | make_fragment cleanup |
---|
463 | make_fragment cleanup_library |
---|
464 | make_fragment cleanup_application |
---|
465 | make_fragment cleanup_java |
---|
466 | make_fragment cleanup_objects |
---|
467 | |
---|
468 | make_fragment fortran |
---|
469 | make_fragment c |
---|
470 | make_fragment cpp |
---|
471 | make_fragment lex |
---|
472 | make_fragment yacc |
---|
473 | |
---|
474 | make_fragment fortran_library |
---|
475 | make_fragment c_library |
---|
476 | make_fragment cpp_library |
---|
477 | make_fragment lex_library |
---|
478 | make_fragment yacc_library |
---|
479 | |
---|
480 | make_fragment dsw_header |
---|
481 | make_fragment dsw_project |
---|
482 | make_fragment dsw_trailer |
---|
483 | make_fragment dsw_all_project_header |
---|
484 | make_fragment dsw_all_project_dependency |
---|
485 | make_fragment dsw_all_project_trailer |
---|
486 | |
---|
487 | make_fragment dsp_library_header |
---|
488 | make_fragment dsp_shared_library_header |
---|
489 | make_fragment dsp_application_header |
---|
490 | make_fragment dsp_windows_header |
---|
491 | make_fragment dsp_contents |
---|
492 | make_fragment dsp_trailer |
---|
493 | make_fragment dsp_all |
---|
494 | |
---|
495 | # vsnet fragments |
---|
496 | make_fragment vcproj_library_header |
---|
497 | make_fragment vcproj_application_header |
---|
498 | make_fragment vcproj_all |
---|
499 | make_fragment vcproj_trailer |
---|
500 | make_fragment vcproj_contents |
---|
501 | make_fragment vcproj_directory_header |
---|
502 | make_fragment vcproj_directory_trailer |
---|
503 | |
---|
504 | make_fragment sln_header |
---|
505 | make_fragment sln_project |
---|
506 | make_fragment sln_trailer |
---|
507 | make_fragment sln_project_config |
---|
508 | make_fragment sln_dependency_project |
---|
509 | |
---|
510 | make_fragment sln_dependency_header |
---|
511 | make_fragment sln_dependency_trailer |
---|
512 | |
---|
513 | #### all packages have same GUID, and the "all" project as well |
---|
514 | |
---|
515 | macro GUID_all "" vsnet {DD1EDB1B-B098-44F8-8012-3039B5A56FEF} |
---|
516 | macro package_GUID "" vsnet {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942} |
---|
517 | |
---|
518 | make_fragment make_setup |
---|
519 | make_fragment make_setup_header |
---|
520 | |
---|
521 | make_fragment constituents_header |
---|
522 | make_fragment group |
---|
523 | make_fragment constituent |
---|
524 | make_fragment constituents_trailer |
---|
525 | |
---|
526 | make_fragment dependencies |
---|
527 | make_fragment dependencies_and_triggers |
---|
528 | |
---|
529 | make_fragment readme_header |
---|
530 | make_fragment readme |
---|
531 | make_fragment readme_doc |
---|
532 | make_fragment readme_use |
---|
533 | make_fragment readme_trailer |
---|
534 | |
---|
535 | make_fragment tex -header=tex_header -suffix=ps |
---|
536 | |
---|
537 | make_fragment check_application |
---|
538 | make_fragment check_java |
---|
539 | make_fragment check_application_header |
---|
540 | |
---|
541 | make_fragment application_launcher -header=application_launcher_header |
---|
542 | |
---|
543 | make_fragment install_includes -header=install_includes_header |
---|
544 | |
---|
545 | macro install_command "cp " \ |
---|
546 | WIN32 "xcopy /S /E /Y " |
---|
547 | |
---|
548 | macro uninstall_command "/bin/rm -f " \ |
---|
549 | WIN32 "del " |
---|
550 | |
---|
551 | |
---|
552 | |
---|
553 | macro cmt_install_area_command "ln -s " \ |
---|
554 | WIN32 "xcopy /S /E /Y " |
---|
555 | |
---|
556 | macro cmt_uninstall_area_command "/bin/rm -f " \ |
---|
557 | WIN32 "del " |
---|
558 | |
---|
559 | |
---|
560 | macro cmt_install_action "$(CMTROOT)/mgr/cmt_install_action.sh" \ |
---|
561 | WIN32 "$(CMTROOT)\mgr\cmt_install_action.bat" |
---|
562 | |
---|
563 | macro cmt_installdir_action "$(CMTROOT)/mgr/cmt_installdir_action.sh" \ |
---|
564 | WIN32 "$(CMTROOT)\mgr\cmt_installdir_action.bat" |
---|
565 | |
---|
566 | macro cmt_uninstall_action "$(CMTROOT)/mgr/cmt_uninstall_action.sh" \ |
---|
567 | WIN32 "$(CMTROOT)\mgr\cmt_uninstall_action.bat" |
---|
568 | |
---|
569 | macro cmt_uninstalldir_action "$(CMTROOT)/mgr/cmt_uninstalldir_action.sh" \ |
---|
570 | WIN32 "$(CMTROOT)\mgr\cmt_uninstalldir_action.bat" |
---|
571 | |
---|
572 | macro cmt_installdir_excludes "" WIN32 "$(CMTROOT)\mgr\cmt_installdir_excludes.txt" |
---|
573 | |
---|
574 | |
---|
575 | |
---|
576 | macro mkdir "mkdir" \ |
---|
577 | LynxOS "mkdir -f" |
---|
578 | |
---|
579 | #----------------------------------------------------------------- |
---|
580 | # Generic copy facility |
---|
581 | # It is customized through the parameter: |
---|
582 | # install_dir="<path where to install the sources>" |
---|
583 | # |
---|
584 | make_fragment installer -header=installer_header |
---|
585 | |
---|
586 | |
---|
587 | #----------------------------------------------------------------- |
---|
588 | # Generic usage of the cmt expand model facility |
---|
589 | # the fragment is customized through the following parameters: |
---|
590 | # model="<model text string>" |
---|
591 | # out="<output file name>" |
---|
592 | # |
---|
593 | make_fragment generator -header=generator_header |
---|
594 | |
---|
595 | |
---|
596 | # |
---|
597 | # The supported languages |
---|
598 | # |
---|
599 | |
---|
600 | language fortran -suffix=f -suffix=F -preprocessor_command=$(ppcmd) -linker=$(flink) |
---|
601 | language c -suffix=c -prototypes -linker=$(clink) |
---|
602 | language c++ -suffix=C -suffix=cc -suffix=cxx -suffix=cpp -fragment=cpp -linker=$(cpplink) |
---|
603 | language java -suffix=java -linker=java |
---|
604 | language yacc -suffix=y -prototypes -linker=$(clink) |
---|
605 | language lex -suffix=l -prototypes -linker=$(clink) |
---|
606 | |
---|
607 | # |
---|
608 | # The CMTPATH patterns for installation areas |
---|
609 | # |
---|
610 | |
---|
611 | macro cmt_installarea_prefix "InstallArea" |
---|
612 | |
---|
613 | cmtpath_pattern \ |
---|
614 | path_remove PATH "$(cmt_installarea_prefix)" ; \ |
---|
615 | path_remove LD_LIBRARY_PATH "$(cmt_installarea_prefix)" ; \ |
---|
616 | path_remove CLASSPATH "$(cmt_installarea_prefix)" ; \ |
---|
617 | macro cmt_installarea_paths "$(cmt_installarea_prefix)/$(tag)/bin" ; \ |
---|
618 | macro_append cmt_installarea_paths " $(cmt_installarea_prefix)/$(tag)/lib" ; \ |
---|
619 | macro_append cmt_installarea_paths " $(cmt_installarea_prefix)/share/lib" ; \ |
---|
620 | macro_append cmt_installarea_paths " $(cmt_installarea_prefix)/share/bin" ; \ |
---|
621 | macro_prepend use_linkopts " $(cmt_installarea_linkopts) " ; \ |
---|
622 | macro_append shlibbuilder " $(cmt_installarea_linkopts) " |
---|
623 | |
---|
624 | cmtpath_pattern \ |
---|
625 | path_prepend PATH "<path>/$(cmt_installarea_prefix)/${tag}/bin" ; \ |
---|
626 | path_prepend PATH "" WIN32 "<path>/$(cmt_installarea_prefix)/${tag}/lib" ; \ |
---|
627 | path_prepend LD_LIBRARY_PATH "<path>/$(cmt_installarea_prefix)/${tag}/lib" WIN32 "" ; \ |
---|
628 | path_prepend CLASSPATH "<path>/$(cmt_installarea_prefix)/share/lib" ; \ |
---|
629 | path_prepend CLASSPATH "<path>/$(cmt_installarea_prefix)/share/bin" ; \ |
---|
630 | macro_prepend cmt_installarea_linkopts "" \ |
---|
631 | Unix " -L<path>/$(cmt_installarea_prefix)/$(tag)/lib " \ |
---|
632 | WIN32 " /LIBPATH:<path>/$(cmt_installarea_prefix)/$(tag)/lib " |
---|
633 | |
---|
634 | set NEWCMTCONFIG "${cmt_hardware}-${cmt_system_version}-${cmt_compiler_version}" |
---|
635 | |
---|
636 | # |
---|
637 | # The cmt constituent |
---|
638 | # |
---|
639 | |
---|
640 | application cmt cmt.cxx \ |
---|
641 | cmt_awk.cxx \ |
---|
642 | cmt_branch.cxx \ |
---|
643 | cmt_constituent.cxx \ |
---|
644 | cmt_deps_builder.cxx \ |
---|
645 | cmt_fragment.cxx \ |
---|
646 | cmt_generator.cxx \ |
---|
647 | cmt_include.cxx \ |
---|
648 | cmt_parser.cxx \ |
---|
649 | cmt_script.cxx \ |
---|
650 | cmt_string.cxx \ |
---|
651 | cmt_system.cxx \ |
---|
652 | cmt_tag.cxx \ |
---|
653 | cmt_use.cxx \ |
---|
654 | cmt_symbol.cxx \ |
---|
655 | cmt_error.cxx \ |
---|
656 | cmt_pattern.cxx \ |
---|
657 | cmt_language.cxx \ |
---|
658 | cmt_cvs.cxx \ |
---|
659 | cmt_group.cxx \ |
---|
660 | cmt_database.cxx \ |
---|
661 | cmt_lock.cxx \ |
---|
662 | cmt_triggers.cxx \ |
---|
663 | cmt_regexp.cxx \ |
---|
664 | cmt_model.cxx \ |
---|
665 | cmt_project.cxx \ |
---|
666 | cmt_syntax.cxx \ |
---|
667 | cmt_install_area.cxx \ |
---|
668 | cmt_cmtpath_pattern.cxx \ |
---|
669 | cmt_sequence.cxx \ |
---|
670 | cmt_generators.cxx |
---|
671 | |
---|
672 | private |
---|
673 | |
---|
674 | macro all_constituents cmt |
---|
675 | |
---|
676 | macro_append cpplink "" VisualC " advapi32.lib " |
---|
677 | |
---|
678 | |
---|