source: CMT/v1r20p20081118/mgr/requirements @ 668

Last change on this file since 668 was 469, checked in by rybkin, 16 years ago

See C.L. 370

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